/*共通*/
.l-primary .p-entry__body p {
	margin-bottom: 0;
	line-height: 1.5;
}

.l-primary .p-entry__body ul {
	margin: 0;
	list-style: none;
}

.l-primary .p-entry__body ul li {
	list-style-type: none;
}

.l-contents .p-entry__body a:hover {
	text-decoration: none;
}

.l-main .l-contents {
	margin-top: 0;
}

.l-main .p-breadcrumb {
	margin-bottom: 20px;
}

.article {
	padding: 80px 0;
}

.description {
	margin-top: 60px;
}

.l-main .p-entry__body img {
	width: 100%;
}

/*各種タイトル*/
.p-page-header__title{
  color: #36220B;
  height: auto;
  line-height: 1.5;
  font-size: 60px;
}

.footprint{
  width: 30px;
  height: 30px;
  display: inline-block;
  vertical-align: middle;
  flex-shrink: 0;
  background: url('/wp-content/uploads/2026/04/icon_footprint_brown.png') no-repeat center / contain;
}

@media (max-width: 768px) {
	.footprint{
		width: 24px;
		height: 24px;
	}
}

.sub-ttl{
  display: inline-flex;
  gap: 6px;
  align-items: center;
  justify-content: center;
  margin-bottom: 8px;
  width: 100%;
  height: auto;
}

.sub-ttl_text{
  font-size: 24px !important;
  color: #907A44;
  margin-bottom: 0 !important;
}

@media (max-width: 768px) {
	.sub-ttl_text{
		font-size: 20px;
	}
}

.p-page-header__inner{
margin-bottom: 16px;
}

.page_ttl{
  font-size: 60px !important;
  text-align: center;
  color: #36220B;	
}

@media (max-width: 768px) {
	.page_ttl{
		font-size: 36px !important;
		margin-bottom: 20px !important;
	}
}

.column-content__ttl{
	font-size: 20px !important;
	color: #36220B;
}

@media (max-width: 768px) {
	.column-content__ttl{
	font-size: 18px !important;
}
}

.main-title-area::before {
	background-image: url("https://2026040612024765x34c.conohawing.com/wp-content/uploads/2026/05/mv_cafe.jpg");
}

/*斜線つきタイトル*/
.slash-heading {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.5em;
	margin-bottom: 40px;
	font-weight: bold;
	font-size: 20px;
	line-height: 1.75;
}

@media (max-width: 768px) {
	.slash-heading {
		font-size: 18px;
	}
}

.slash-heading::before,
.slash-heading::after {
  content: ""; 
  display: block;
  width: 1px;
  height: 60px;
  background: #b89a7a;
  flex-shrink: 0;
}

/* ＼ */
.slash-heading::before {
  transform: rotate(-30deg);
}

/* ／ */
.slash-heading::after {
    transform: rotate(30deg);
}

.l-primary .title-box--white .title-ja::after {
	border-width: 11px 8px 0 8px;
}

/*左右振り分け配置箇所*/
.column {
    display: flex;
    align-items: center;
    gap: 40px;
}

@media (max-width: 768px) {
    .column {
        display: block;
    }
}

.column-image {
    width: 40%;
}

@media (max-width: 768px) {
    .column-image {
    width: 100%;
    margin-bottom: 20px;
}
}

.column-content {
	width: 60%;
}

@media (max-width: 768px) {
    .column-content {
    width: 100%;
}
}

.column:not(:first-child) {
    margin-top: 40px;
}

.column:nth-child(even) {
    flex-direction: row-reverse;
}

.column-content__heading {
    padding-bottom: 20px;
    margin-bottom: 30px;
    font-size: 20px;
    border-bottom: solid 1px #907A44;
}

.column-content .column-content__heading h4 {
	margin-bottom: 0;
}

.column-content__sub {
	display: block;
    margin-bottom: 12px;
    color: #907A44;
    font-size: 18px;
}

.column-content__paragraph{
	line-height: 1.8 !important;
}

/*概要部分*/
.cafe-overview-area {
	padding-bottom: 260px;
}

@media (max-width: 768px) {
	.cafe-overview-area {
		padding-bottom: 160px;
	}
}

.new-line {
    display: none;
}

@media (max-width: 768px) {
    .new-line {
        display: block;
    }
}

/*menu*/
.menu-area {
    position: relative;
	padding: 80px 0 160px;
	background: #EBEAE1;
}

.menu-area::before {
    content: "";
    position: absolute;
    top: -180px;
    left: 0;
    width: 100%;
    height: 180px;
    background-image: url(/wp-content/uploads/2026/04/curve_beige_1.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: center;
    pointer-events: none;
}

@media (max-width: 768px) {
	.menu-area::before {
		top: 0;
        background-size: contain;
        background-position: bottom;
        transform: translateY(-100%);
	}
}

@media (max-width: 1110px) and (min-width: 768px) {
	.menu-area::before {
		top: 0;
        background-size: contain;
        background-position: bottom;
        transform: translateY(-100%);
	}
}

.menu-contener {
	margin-top: 60px;
}

.menu-category:not(:last-child) {
	margin-bottom: 60px;
}

@media (max-width: 768px) {
	.menu-category:not(:last-child) {
		margin-bottom: 40px;
	}
}

@media (max-width: 768px) {
	.menu-category a.link-button {
		margin-top: 30px;
	}
}

.menu-box {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px;
}

@media (max-width: 768px) {
    .menu-box {
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}
}

.menu-main {
	display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column: 1 / 5;
    gap: 24px;
}

@media (max-width: 768px) {
	.menu-main {
		gap: 15px
	}
}

.menu-image__main {
    display: flex;
    grid-column: 1 / 5;
    gap: 40px;
}

.menu-description {
    grid-column: 1 / 5;
	line-height: 1.8 !important;
}

/*メニュー（小）*/
.menu-box-list {
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
	grid-column: 1 / 5;
}

@media (max-width: 768px) {
	.menu-box-list {
		gap: 16px;
	}
}

.menu-box-item {
	width: calc(100% / 4 - (40px - 40px / 4));
    padding: 20px;
    background: #F7F5F2;
    border-radius: 4px;
    text-align: center;
    font-size: 16px;
}

@media (max-width: 768px) {
	.menu-box-item {
		width: calc(100% / 2 - (16px - 16px / 2));
		padding: 12px;
	}
}

.menu-image__sub {
    margin-bottom: 16px;
}

.menu-price {
    font-size: 16px;
}

.l-primary .p-entry__body .menu-list {
	margin-bottom: 20px; 
}

.menu-section {
	margin-bottom: 40px;
}

.menu-flex {
  display: flex;
  gap: 40px;
  align-items: center;
  margin-bottom: 30px;
}

@media (max-width: 768px) {
	.menu-flex {
	flex-direction: column;
	gap: 20px;
	margin-bottom: 24px;
	}
}

.menu-flex.reverse {
  flex-direction: row-reverse;
}

.menu-text {
  flex: 1;
}

.p-entry__body .menu-text h5 {
  font-size: 20px;
}

@media (max-width: 768px) {
  .p-entry__body .menu-text h5 {
    font-size: 18px;
	 margin-bottom: 16px;
  }
}

.menu-image {
  flex: 1;
}

.menu-image img {
  width: 100%;
}

.menu-list.is-multi li {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

@media (max-width: 768px) {
	.menu-list.is-multi li {
		flex-direction: column;
		align-items: baseline;
		gap: 8px;
	}
}

.menu-list.is-multi .outline-value {
  display: flex;
  gap: 30px;
}

.menu-list .outline-value span {
  white-space: nowrap;
}

/*アニメーション部分*/
.dogs-area {
  background: #F7F5F2;
}

.top-dogs__box {
  overflow: hidden;
  width: 100%;
  margin-top: -100px;
}

.top-dogs__track {
  display: flex;
  width: max-content;
  animation: marquee 20s linear infinite;
  align-items: flex-start;
}

.top-dogs__item {
  width: 25vw;
  flex-shrink: 0;
  padding: 0 15px;
}

.top-dogs__item:nth-child(even) {
  margin-top: 30px;
}

.top-dogs__item:nth-child(odd) {
  margin-top: 0;
}

.top-dogs__item img {
  width: 100%;
  height: auto;
  display: block;
}

@keyframes marquee {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/*貸切利用について*/

.description{
	line-height: 1.8 !important;
}

.private-booking {
	margin: 30px 0 120px;
}

.private-booking-price {
	display: flex;
	gap: 60px;
}

@media (max-width: 768px) {
	.private-booking-price {
		flex-direction: column;
		gap: 40px;		
	}
}

.private-booking__box {
    width: 100%;
}

.private-booking-area .private-booking__box .private-booking__list {
	margin: 24px 0 30px;
}

.private-booking__item {
	display: flex;
	justify-content: space-between;
	gap: 20px;
	padding: 20px 0;
	border-top: solid 1px #DBD9CC;
	font-size: 20px;
}

@media (max-width: 768px) {
	.private-booking__item {
		font-size: 18px;
	}
}

.private-booking__item:last-child {
	border-bottom: solid 1px #DBD9CC;
}

.private-booking__item.extension {
	padding: 16px 0;
	font-size: 16px;
}

@media (max-width: 768px) {
	.private-booking__item.extension {
		font-size: 14px;
	}
}

.private-booking__price {
    font-weight: bold;
}

.note {
	padding-left: 8px;
	font-size: 16px;
	color: #36220B99;
}

@media (max-width: 768px) {
	.note {
		font-size: 14px;
	}
}

@media (max-width: 768px) {
	.private-booking__item:not(.extension) .note {
		display: block;
		padding-left: 0;
	}
}

.supplement {
	color: #36220B99;
}

.supplement p:not(:last-child) {
	margin-bottom: 16px;
}

/*ご予約方法*/
.reservation {
	margin-top: 80px;
}

@media (max-width: 768px) {
	.reservation {
		margin-top: 120px;
	}
}

/*インスタグラムボタン*/
.instagram-button {
	margin-top: 120px;
	text-align: center;
}

.instagram-button .link-button {
	margin: auto;
}

.slash-heading__text{
	color: #36220B;
}

/*ご利用時のお願い*/
.l-primary .p-entry__body .request-box {
	margin: 20px 0 30px;
	padding: 30px;
	border: solid 1px #DBD9CC;
}

.please-p{
	line-height: 1.8 !important;
}

@media (max-width: 768px) {
	.request-box {
	margin: 20px 0 30px;
	padding: 20px;
}
}

.l-primary .p-entry__body .request-box li {
	line-height: 1.9;
	color: #36220B;
}

/*お知らせボタン*/
.news_btn01{
  position: relative;
  display: inline-flex;
	height: 60px;
	text-align: center;
  text-decoration: none;
	background:  #36220B;
	margin-top: 20px;
	border-radius: 4px;
	gap: 12px;
	align-items: center;
	padding: 8px 30px;
}

.news_btn01 > span{
	font-size: 20px;
	color: #FFF;
	font-weight: 600;
}

.news_btn01:hover{
 opacity: 0.6;
 text-decoration: none !important;
}

.news_btn-arrow{
  display: inline-block;
	width: 20px;
	height: 20px;
	vertical-align: middle;
	flex-shrink: 0;
	background: url('/wp-content/uploads/2026/04/icon_circle_arrow_right.png') no-repeat center / contain;

}