﻿@charset "utf-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
/* CSS Document */
body {
    	margin: 0;
    	font-size: 16px;
    	line-height: 1.6;
}
*{
	padding: 0;
	margin: 0;
	box-sizing: border-box;
	}
a{
	transition: all 0.3s ease;
}
img{
	max-width: 100%;
}
.br-sp{
	display:none;
}
:where(.c-entry__content>:not(.alignleft):not(.alignright):not(.alignfull)){
	max-width: inherit;
}
.home .c-container{
	padding: 0;
}
.home .c-container .c-container,
.home footer .c-container{
	padding: 0 1rem;
}
@media (max-width: 781px) {
	.br-pc{
		display:none;
	}
	.br-sp{
		display:block;
	}
}
/* =======================================
    header
======================================= */
.l-header{
	position: fixed;
	width: 100%;
	color: #fff;
	background: transparent;
}
.l-header .c-container{
	display: flex;
	justify-content: space-between;
}
.c-section.p-section-front-page-content{
	padding-top: 0;
}
.c-site-branding__title .custom-logo {
    	width: 100px;
}
@media (min-width: 1024px){
	[data-scrolled=true] .l-header--sticky-overlay-colored-lg{
		background-color: rgb(0,0,0,0.4);
	}
	.l-center-header[data-has-global-nav=true] .l-center-header__row:first-child{
		margin-top: 1rem;
	}
}
@media (max-width: 1023px) {
	.l-header{
		background: rgba(0, 0, 0, .4);
	}
	.l-center-header__row{
		width: 100%;
	}
	.l-header h1{
		text-align: left;
	}
	.l-header .c-hamburger-btn__bar{
		background-color: #fff;
	}
	.c-drawer{
		background-color: rgba(0, 0, 0, .8);
	}
}
@media (min-width: 64em){
	.c-site-branding__title .custom-logo {
		width:130px;
	}
}
/* =======================================
    index
======================================= */
.mainview{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	background-image: url(img/bg-mainview.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	padding-top: 49.5% !important;
	background-position: center;
}
.mainview img{
	position: absolute;
	top: 50%;
	width: 30%;
	max-width: 25%;
	margin-top: -215px;
}
.wp-block-snow-monkey-blocks-box.smb-box.preopen{
	max-width:650px;
}
.wp-block-snow-monkey-blocks-box.smb-box.preopen span{
	font-family: serif;
    	font-weight: 600;
}
.index-intro{
	padding: 1rem 2rem 4rem;
	max-width:1280px !important;
}
.index-intro img{
	display: block;
	max-width: 430px;
	margin: 0 auto;
}
.index-intro h2{
	font-family:serif;
	border-bottom: solid 1px;
}
.index-slider{
	width: 100%;
}
.index-slider .spider__canvas{
	width: 100%;
}
.p-entry-content .index-hamanako{
	padding: 4rem 0 0;
	margin-bottom: 6rem;
	max-width:1280px !important;

}
.index-hamanako .wp-block-media-text__content .h2-sub{
	position: relative;
	background-color: transparent;
	border-left: none;
	padding-top: 110px;
	padding-left: 6rem;
	margin-left: -6rem;
	font-size:1.25rem;
}
.index-hamanako .h2-sub::before,
.index-terace .h2-sub::before{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 94px;
	height: 94px;
	background-image: url(img/icon-2f.svg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	background-color: rgba(255, 255, 255, .5);
	border: solid 1px;
}
.index-hamanako .wp-block-media-text__content>h2{
	border-bottom: solid 1px #000;
	margin-top: 1rem;
}
.p-entry-content .index-terace{
	margin-bottom: 12rem;
	max-width:1280px !important;
}
.index-terace .wp-block-media-text__content .h2-sub{
	position: relative;
	text-align: right;
	background-color: transparent;
	border-left: none;
	padding-top: 110px;
	padding-right: 9rem;
	margin-right: -9rem;
	font-size:1.25rem;
}
.index-terace .h2-sub::before{
	left: inherit;
	right: 75px;
	background-image: url(img/icon-3f.svg);
}
.index-terace .wp-block-media-text__content>h2{
	border-bottom: solid 1px #000;
	margin-top: 1rem;
    	text-align: right;
}
.index-terace p,
.index-terace .wp-block-button{
	text-align: right;
}

.btn-slide a{
	position: relative;
  	overflow: hidden;
    	/*アニメーションの指定*/
	transition: ease .2s;
}
/*ボタン内spanの形状*/
.btn-slide a span {
  	position: relative;
  	z-index: 3;/*z-indexの数値をあげて文字を背景よりも手前に表示*/
  	color:#333;
}

.btn-slide a:hover span{
  	color:#fff;
}

/*== 背景が流れる（斜め） */
.bg-slide a::before {
  	content: '';
    	/*絶対配置で位置を指定*/
  	position: absolute;
  	top: 0;
  	left: -130%;
    	/*色や形状*/
  	background:#333;
  	width:120%;
  	height: 100%;
  	transform: skewX(-25deg);
}

/*hoverした時のアニメーション*/
.bg-slide a:hover::before {
  	animation: skewanime .5s forwards;/*アニメーションの名前と速度を定義*/
}

@keyframes skewanime {
  	100% {
    		left:-10%;/*画面の見えていない左から右へ移動する終了地点*/
  	}
}

.index-location{
	position: relative;
	width: 100%;
	margin-bottom: 6rem;
}
.index-location p{
	position: absolute;
	top: -300px;
	left: 75%;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 184px;
	height: 390px;
	font-size: 2rem !important;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	color: #fff !important;
	background-color: rgba(66, 33, 11, .7);
	margin-left: 200px;
}
.wp-block-cover, .wp-block-cover-image{
	overflow:visible!important;
}
.index-map{
	display: flex;
	width: 100%;
	padding: 4rem 0;
}
.index-map iframe{
	width: 55%;
}
.index-map-right{
	flex-grow: 1;
	padding-left: 2rem;
}
.index-map-name{
	display: inline-block;
	font-size: 2.75rem;
	margin-right: 1rem;
}
.index-map-name02{
	font-size: 1.5rem;
}
address{
	font-style: inherit;
}
.index-map address{
	margin: 1.5rem 0;
}
.index-map-phone{
	margin-bottom:1rem;
}
.index-map-phone a{
	font-size: 1.4rem;
    	color: #333;
    	text-decoration-line: none;
    	padding-left: 1.3rem;
    	font-weight: 600;
	position: relative;
}
.index-map-phone a:before{
	content: "";
	position: absolute;
	top: -5px;
	left: 0;
	display: block;
	background-repeat: no-repeat;
	background-position: center center;
	background-image: url(img/icon-phone.svg);
    	width: 20px;
    	height: 36px;
}
.index-map-phone span{
	margin-right: 0.5rem;
	font-size: 1.25rem;
    font-weight: 600;
}
.index-map-phone span.small{
	font-size: 0.8rem;
    font-weight: 500;
}
.btn-map{
	display: block;
	width: 100%;
	max-width: 20rem;
	text-align: center;
	color: #000;
	text-decoration: none;
	border: solid 1px #000;
	padding: .75rem 1rem;
	margin-top: 1.5rem;
}
.btn-map:hover{
	background-color: rgba(0, 0, 0, .2);
}
.osusume-list ul{
    list-style-type: none;
    display: flex;
    justify-content: center;
    gap: 1rem;
}
.osusume-list li{
	width:48%;
	position: relative;
}
.osusume-list li p{
position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 1.65rem;
    width: 100%;
    text-align: center;
    color: white;
    z-index: 2;
    font-weight: 700;
}
.osusume-list li a:after {
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgb(0 0 0 / 50%);
}
.osusume-list li a:hover:after {
    background-color: rgb(0 0 0 / 35%);
}
.title-index-info{
	font-size: 3rem;
	text-align: center;
}
.p-entry-content>h2.title-index-info{
	background-color: transparent;
	border-left: none;
}
.c-meta__item.c-meta__item--author,
.c-entry__footer,
.p-comments.c-entry-aside,
.p-trackbacks.c-entry-aside{
	display:none;
}
.wp-block-snow-monkey-blocks-recent-posts{
	max-width:1100px;
	padding:0 10px;
}
@media (max-width: 1024px) {
	.mainview img{
		top: 10%;
		margin-top: 0;
	}
	.index-location p{
		left: 72%;
		width: 140px;
		height: 300px;
		font-size: 1.5rem !important;
		margin-left: 0;
	}
}
@media (max-width: 960px) {
	.index-intro{
		display: flex;
		flex-direction: column-reverse;
	}
	.index-intro h2{
		font-size: 1.5rem !important;
		margin-bottom: 1rem;
	}
	.index-hamanako{
		display: flex;
		flex-direction: column;
	}
	.index-hamanako p{
		margin-right:1rem;
	}
	.index-hamanako .wp-block-media-text__content{
		width: 100%;
	}
	.index-hamanako .wp-block-media-text__content .h2-sub{
		padding-top: 60px;
		padding-left: 0;
		margin-left: 0;
		font-size:1.125rem;
	}
	.index-terace .wp-block-media-text__content .h2-sub{
		padding-top: 60px;
		padding-right: 0;
		margin-right: 0;
		font-size:1.125rem;
		text-align: left;
	}
	.index-hamanako .h2-sub::before,
	.index-terace .h2-sub::before{
		top: -10px;
		width: 60px;
		height: 60px;
	}
	.index-hamanako .wp-block-media-text__content>h2,
	.index-terace .wp-block-media-text__content>h2{
		font-size: 1.5rem !important;
		text-align: left;
	}
	.index-terace{
		display: flex;
		flex-direction: column-reverse;
	}
	.index-terace .wp-block-media-text__content{
		width: 100%;
		margin-right: 0 !important;
		text-align: left;
		margin-left: 1.8rem;
    		margin-left: calc(var(--_space, 1.8rem) * 1 * var(--_margin-scale, 1));
	}
	.index-terace .h2-sub::before{
		right: inherit;
		left: 0;
	}
	.index-terace p, .index-terace .wp-block-button{
		text-align:left;
		margin-right: 1rem;
	}
	.index-map-name{
		font-size: 1.75rem;
	}
	.index-map-name02{
		font-size: 1.125rem;
	}
	.index-map-phone a{
		display:block;
	}
	.index-map-phone p{
		margin-bottom:7px;
	}
	.title-index-info{
		font-size: 2rem;
	}
}
@media (max-width: 768px) {
	.mainview{
		padding-top: 100% !important;
	}
	.mainview img{
		top: 21%;
		width: 40%;
		max-width: 35%;
	}
	.index-intro{
		padding: 1rem;
	}
	.index-hamanako{
		padding-top: 1rem;
		margin-bottom: 0;
	}
	.index-terace{
		margin-bottom: 5rem;
	}
	.index-map{
		flex-wrap: wrap;
		padding: 0;
	}
	.index-map iframe{
		width: 100%;
		margin-bottom: 1rem;
	}
	.index-map-right{
		padding: 0 1rem;
	}
	.title-index-info{
		font-size: 1.5rem;
	}
}
@media (max-width: 600px) {
	.post-5 .wp-block-media-text.is-stacked-on-mobile:not(.has-media-on-the-right) .wp-block-media-text__content {
    		margin-left: 1.8rem;
    		margin-left: calc(var(--_space, 1.8rem) * 1 * var(--_margin-scale, 1));
	}
	.post-5 .wp-block-media-text.is-stacked-on-mobile.has-media-on-the-right>:first-child,
	.post-5 .wp-block-media-text.is-stacked-on-mobile:not(.has-media-on-the-right)>:not(:first-child) {
    		margin-top:0 !important;
	}
	.index-intro .wp-block-media-text__media{
		margin-bottom:2rem;
	}
}
@media (max-width: 540px) {
	.index-location p{
		left: inherit;
		right: 1rem;
		width: 110px;
		height: 240px;
		font-size: 1.25rem !important;
		top: -250px;
	}
}
/* =======================================
    footer
======================================= */
.l-footer{
	color: #000;
	background-color: #d3d3d3;
}
.footer{
	display: flex;
	justify-content: space-between;
}
.fot-name{
	display: block;
	font-size: 2rem;
}
.fot-right{
	text-align: right;
}
.fot-nav{
	padding: 0;
	margin: 0;
}
.fot-nav li{
	display: inline-block;
	margin-left: 2rem;
}
.fot-nav li:first-child{
	margin-left: 0;
}
.fot-nav a{
	color: #000;
	text-decoration: none;
}
.fot-nav a:hover{
	text-decoration: underline;
}
.fot-insta{
	display: block;
    	width: 40px;
    	margin-left: auto;
    	margin-bottom: 1rem;
}
.fot-phone{
	pointer-events: none;
	text-decoration: none;
	font-size: 2rem;
	color: #000;
	margin-left: 10px;
}
@media (max-width: 768px) {
	.footer{
		flex-direction: column;
		align-items: center;
	}
	.fot-left{
		margin-bottom: 2rem;
	}
	.fot-nav{
		margin-bottom:1rem;
	}
	.fot-phone{
		pointer-events: auto;
		font-size: 1.25rem;
		display: block;
		width: 100%;
		max-width: 20rem;
		text-align: center;
		border: solid 1px #000;
		border-radius: 5px;
		padding: .25rem 1rem;
		margin-bottom: 2rem;
	}
}
/* =======================================
    page
======================================= */
.c-entry__header{
	display: flex;
	justify-content: center;
	align-items: center;
	height: 400px;
	color: #fff;
	background-image: url(img/bg-header.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}
/* =======================================
    concept
======================================= */
.concept-bentenjima{
	justify-content: flex-end;
}
.concept-bentenjima .wp-block-media-text__content{
	max-width: 550px;
	padding-right: 2rem !important;
	padding-left: 1rem !important;
	margin-right: 0 !important;
}
.concept-food .wp-block-media-text__content{
	max-width: 550px;
	padding-left: 2rem !important;
	padding-right: 1rem !important;
	margin-left: 0 !important;
}
.concept-bentenjima h2,
.concept-food h2{
	background-color: transparent !important;
	border-left: none !important;
}
.concept-img img{
	width: 100%;
}
@media (max-width: 960px) {
	.concept-bentenjima,
	.concept-food{
		display: flex;
		flex-direction: column;
	}
	.concept-bentenjima .wp-block-media-text__media,
	.concept-food .wp-block-media-text__media{
		margin-bottom: 1.5rem;
	}
	.concept-bentenjima .wp-block-media-text__content{
		max-width: none;
		padding-right: 1rem !important;
		margin: 0 !important;
	}
	.concept-food .wp-block-media-text__content{
		max-width: none;
		padding-left: 1rem !important;
		margin: 0 !important;
	}
}
/* =======================================
    RESTAURANT
======================================= */
.res-list{
	padding: 2rem;
}
@media (max-width: 768px) {
	.res-list{
		padding: 2rem 1rem;
	}
}

/* =======================================
    徳浜名湖別邸
======================================= */
.obi-slide{
	display:none;
}
.toku-menu h2{
	position: relative;
	display: inline-block;
	padding: 0 55px;
}
.toku-menu h2::before{
	content: "";
	position: absolute;
	top: 50%;
	display: inline-block;
	width: 45px;
	height: 1px;
	background-color: black;
	left:0;
}
.toku-menu h2::after{
	content: "";
	position: absolute;
	top: 50%;
	display: inline-block;
	width: 45px;
	height: 1px;
	background-color: black;
	right:0;
	margin-top: 0;
}
.box-kaiseki{
	max-width:850px;
}

@media (max-width: 600px){
	.wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__content {
		margin-top:1.8rem;
    		margin-top: calc(var(--_space, 1.8rem) * 1 * var(--_margin-scale, 1));
	}
}

/* =======================================
    HAMANAKO TARRACE
======================================= */
.hamanako-menu .wp-block-snow-monkey-blocks-price-menu.smb-price-menu.hamanako-menu-inner{
	max-width: 700px;
}
.btn-hkterrace{
	margin-top:4rem;
}
.btn-hkterrace a{
	width: 400px;
    padding: 1rem 3rem;
    font-size: 1.125rem;
    background-color: black;
    box-shadow: 0px 0px 5px 0px #777777;
}
.hamanako-menu h2{
	position: relative;
  	display: inline-block;
  	padding: 0 55px;
}

.hamanako-menu h2::before{
  	content: "";
  	position: absolute;
  	top: 50%;
  	display: inline-block;
  	width: 45px;
  	height: 1px;
  	background-color: black;
	left:0;
}

.hamanako-menu h2::after{
	content: "";
	position: absolute;
	top: 50%;
	display: inline-block;
	width: 45px;
	height: 1px;
	background-color: black;
	right:0;
	margin-top: 0;
}
@media (max-width: 480px) {
	.btn-hkterrace a{
		width: 100%;
	}
}
/* =======================================
    記事一覧
======================================= */
.blog .c-entry__body,
.archive .c-entry__body{
	max-width:1200px;
	margin:4rem auto;
}
.blog .c-entry__content.p-entry-content,
.archive .c-entry__content.p-entry-content{
	max-width:1200px;
	margin:0 auto;
}

@media (min-width: 1024px) {
	.c-entries__item{
		flex: 0 1 25%;
	}
}
/* =======================================
    記事詳細
======================================= */
.post .c-entry__body{
	max-width:1000px;
	margin:4rem auto;
}
.post .c-entry__content.p-entry-content{
	max-width:1000px;
	margin:0 auto;
}
.archive-back{
    	margin: 3rem auto;
    	text-align: center;
    	display: block;
    	width: 200px;
    	color: #fff;
    	text-decoration-line: none;
    	background-color: #bfbfbf;
    	padding: 0.8rem;
}
.archive-back:hover{
	color: #333;
}
.post .c-entry__body{
	padding: 0 1rem;
}
/* =======================================
    CONTACT
======================================= */
.snow-monkey-form{
	max-width: 960px;
	padding: 2rem 1rem;
}
.contact-text{
	max-width:910px;
    	padding-left: 7px;
}
.smf-form{
	border-top: solid 1px #ccc;
	padding-bottom: 2rem;
}
.wp-block-snow-monkey-forms-item{
	display: flex;
	align-items: center;
	border-bottom: solid 1px #ccc;
	padding: 1rem;
}
.wp-block-snow-monkey-forms-item:nth-of-type(2n){
	background-color: #efefef;
}
.smf-form .smf-item .smf-text-control__control{
	width: 300px;
}
.smf-item__col--label{
	width: 150px;
}
.smf-item__col--controls{
	flex: 1;
}
.nin .smf-text-control{
	display: inline-block;
}
.nin .smf-text-control::after{
	content: "人";
	display: inline-block;
	vertical-align: middle;
	margin-left: .5rem;
}
.smf-action{
	text-align:center;
}
.smf-action .smf-button-control__control{
	background-color: white;
    	background-image: none;
    	width: 220px;
    	padding: 10px;
    	font-weight: 600;
}
.smf-action .smf-button-control__control:hover{
	background-color:#ededed;
}

.post-377 .c-entry__content.p-entry-content{
	margin:4rem auto 8rem;
}
.post-377 .is-style-outline>:where(.wp-block-button__link){
	border: 1px solid;
}
@media (max-width: 640px) {
	.wp-block-snow-monkey-forms-item{
		align-items: stretch;
		flex-direction: column;
	}
	.smf-form .smf-item .smf-text-control__control{
		width: 100%;
	}
}
/* =======================================
    プライバシーポリシー
======================================= */
.post-3 .c-entry__content.p-entry-content{
    	max-width: 1000px;
    	margin: 3rem auto;
}
/* =======================================
    中日ショッパー企画
======================================= */
.shopper-present h2{
	background-color: #ad2535;
    	padding: 2rem;
    	font-size: 2.4rem;
    	max-width: 500px;
    	margin: 0 auto;
    	color: white;
}
.shopper-drink{
	max-width:600px;
}
.wp-block-snow-monkey-blocks-section.smb-section.smb-section--fit.shopper-contact{
	padding: 2rem 10px;
    	border: solid 1px gray;
    	max-width: 500px;
}
@media (max-width: 640px) {
	.shopper-present h2 {
		font-size:1.6rem;
	}
}