@charset "utf-8";
/* CSS Document */

/* =========================
	body
========================= */
*, *:before, *:after {
    -webkit-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}
.clearfix:before,
.clearfix:after {
    content: " ";
	display: table;}
.clearfix:after {
    clear: both;
}
body{
	font-size: 13px;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 2em;
	letter-spacing:0.055em;
	color: #333;
	background:url(../img/all/background.jpg) repeat;
	-webkit-background-size: 500px auto;
	background-size: 500px auto;
}
p {	padding:0;	margin:0;}

img { margin: 0; padding: 0; width:100%; max-width: 100%; border: none; vertical-align:middle;}

a:link,
a:visited {	font-weight: bold; color: #811215;	text-decoration: none; word-break: break-all;}

a:focus { outline: none;}

table {
	width: 100%;
	word-break: break-all;
	border-collapse: separate;
	vertical-align: middle;
	}

th {
	width:50%;
	padding: 0.3em 1em;
	text-align:center;
	font-weight:bold;
	vertical-align: middle;
	background-color: rgba(128,46,55,.20);
}
td {
	width:50%;
	padding: 0.3em 1em;
	vertical-align: middle;
	border-top:none;
	background-color: rgba(128,46,55,.10);
}
.border_none{ border-bottom:none;}

.table_w100 th{
	display:block;
	width:100%;
}
.table_w100 td{
	display:block;
	width:100%;
}
ul {
	padding: 0 30px;
	color: #333;
}

div[data-role=navbar] ul li {
	overflow: hidden;
}

dl,dt,dd{ margin:0; padding:0;}

h1,h2,h3,h4,h5,h6{ margin:0; padding:0; font-size:100%; font-weight:normal;}
/*h2 img,h3 img,h4 img,h5 img,h6 img{ width:335px;}*/


/* =========================
	header
========================= */

/* =========================
	logo
========================= */

h1 {
	width: 100%;
	margin: 0;
	padding: 10px;
	line-height: 0;
	text-align: center;
	background:url(../img/all/header-bg.jpg) no-repeat top center;
	-webkit-background-size:cover;
	background-size:cover; 
}

h1 img {
	width: 100%;
	max-width: 151px;
}


/* =========================
	slider
========================= */
.slider_box {
	max-width: 800px;
	margin: 0 auto;
	line-height: 0;
	text-align: center;
    position: relative;
}
.otoku{
    position: absolute;
    top:9px;
    right:5px;
    z-index: 100;
}
.otoku p{
    width:auto;
    height:auto;
    display:grid;
    place-items: center;
    background:rgba(255,255,255,0.9);
    color:#2E2204;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.2;
    border-radius: 10px;
    text-align: center;
    padding:3px;
    backdrop-filter:blur(4px);
    filter: drop-shadow(0px 2px 5px rgba(0,0,0,0.1));
    border:2px solid rgba(212,153,0,0.70);
    letter-spacing: -0.05rem;
    font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}
.otoku p img{
    width:30%;
    height:auto;
}
/* =========================
	g_menu
========================= */
.g_menu {
	width: 100%;
	margin: 0;
	text-align: center;
	background: #000;
}

.g_menu a {
	display: inline-block;
	width: 50%;
	max-width: 320px;
	padding: 10px 0 10px 0;
}

.g_menu img {
	vertical-align:middle;
	max-width: 160px;
	
}

/* =========================
	menu
========================= */

.menu {
	margin: 0;
	background:#000;
	padding:0 20px 0 0;
	padding-bottom: 10px;
}

.menu ul {
	width: 100%;
	max-width: 750px;
	margin: 0 auto;
	padding: 0;
}

.menu ul li {
	line-height: 0;
	list-style: none;
}
.menu ul li a {
	display: block;
	padding: 12px 0;
	background: url(../img/menu/arrow.png) no-repeat 95% 50%;
	background-size: auto 20px;
	text-decoration: none;
}
.menu ul li a img{ width: 215px;}

.menu ul li.smenu{ border-bottom:none; background:none;}
.menu ul li.smenu a{
	padding: 8px 0;
	background: url(../img/menu/pc.png) no-repeat 95% 50%;
	background-size: 18px auto;
}
.menu ul li.smenu2 a{
	padding: 8px 0;
	background: url(../img/menu/new.png) no-repeat 95% 50%;
	background-size: 18px auto;
}
.menu ul li.smenu a img{ width:215px;}

/* =========================
	footer_menu
========================= */

.footer_menu {
	max-width: 750px;
	margin: 0 auto;
	padding: 20px;
	text-align: center;
	border-top: 4px solid #974f02;
    display: grid;
    grid-template-columns: minmax(0,1fr);
    gap:15px;
}
/*
.footer_menu p{ margin-bottom:10px;}
.footer_menu p:last-child{ margin-bottom:0;}
*/

/*pricelist-bn*/
.pricelist-sp-bn,.pricelist-sp-bn *{
    box-sizing: border-box;
}
.pricelist-sp-bn{
    display: grid;
    place-items: center;
    place-content: center;
    width: 100%;
    height: auto;
    margin-inline: auto;
    background: #000;
    border: clamp(1px,2vw,3px) solid #5b3157;
    grid-template-columns: minmax(0,1fr);
    grid-template-rows: minmax(0,1fr);
    cursor: pointer;
    transition: 0.5s ease-out;
    aspect-ratio: 350 / 83.5;
}
.pricelist-sp-bn h2{
    letter-spacing: 0.3em;
    display: grid;
    place-items: center;
    place-content: center;
    line-height: 1;
    font-size: clamp(32px,5.6vw,56px);
    font-weight: 800;
    font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    color: #740101;
 -webkit-text-stroke: 8px rgba(255,255,255,0.9);
 paint-order: stroke;
}
.pricelist-sp-bn > *{
    grid-column: 1 / -1;
    grid-row: 1 / -1;
    width: 100%;
    height: 100%;
    z-index: 1;
}
.pricelist-sp-bn > .bg-imgs{
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    grid-template-rows: minmax(0,1fr);
    overflow: hidden;
    z-index: 1;
    opacity: 0.6;
}
.pricelist-sp-bn > .bg-imgs > div{
    width:100%;
    height:100%;
    z-index: -1;
    overflow: hidden;
}
.pricelist-sp-bn > .bg-imgs > div:first-of-type{
    transform: translate(0px,0px) scale(1.2) rotate(0deg);
}
.pricelist-sp-bn > .bg-imgs > div:nth-of-type(2){
    transform: translate(35%,25px) scale(1.8) rotate(15deg);
}
.pricelist-sp-bn > .bg-imgs > div:nth-of-type(3){
    transform: translate(45%,25px) scale(1.8) rotate(15deg);
}

.pricelist-sp-bn > .bg-imgs img{
    width:100%;
    height:100%;
    object-fit: cover;
    z-index: -1;
}
.pricelist-sp-bn > .bg-imgs > div:nth-of-type(1) img{
    transform: translate(0px,0px) scale(1.2) rotate(0deg);
}
.pricelist-sp-bn > .bg-imgs > div:nth-of-type(2) img{
    transform: translate(-20%,-10%) scale(1) rotate(-15deg);
}
.pricelist-sp-bn > .bg-imgs > div:nth-of-type(3) img{
    transform: translateX(-30%) scale(0.8) rotate(-15deg);
}

.pricelist-sp-bn a{
    transition: 0.5s ease-out;
    z-index: 10;
}
.pricelist-sp-bn:has(a:hover){
    transition: 0.5s ease-out;
}
.pricelist-sp-bn:has(a:hover){
    opacity: 0.6;
}
.pricelist-sp-bn a:hover{
    text-decoration: none;
}

/* =========================
	f_menu
========================= */

.f_menu {
	margin: 0;
	padding: 10px 0;
	text-align:center;
	background:#000;
	border-bottom: 4px solid #974f02;
}

.f_menu:after {
	content: "";
	display: block;
	clear: both;
}
.f_menu img {
	vertical-align:middle;
	max-width:160px;
}

.f_menu ul {
	max-width: 750px;
	margin: 0 auto;
	padding: 0;
}

.f_menu li {
	float: left;
	width: 50%;
	line-height: 0;
	text-align: center;
	list-style: none;
}

/* =========================
	footer
========================= */

.footer {
	margin: 0;
	padding: 18px 0 0;
	color:#FFFFFF;
	background:url(../img/all/footer-back.jpg) no-repeat bottom center;
	-webkit-background-size:cover;
	background-size:cover;
	text-align:center;
}
.footer .f_logo{ max-width: 118px; margin: 0 auto;}

.footer_inner {
	width: 90%;
	max-width: 750px;
	margin: 0 auto;
}
.footer_inner span {
	display: inline-block;
	margin-right: 5px;
}

.footer_inner a,.footer_inner a:visited{ color:#fff;}

.copyright {
	font-size: 11px;
	text-align:center;
	background:#000;
}
/* =========================
	Contents
========================= */
.contents {
	width: 100%;
	max-width: 750px;
	margin: 0 auto;
	padding: 40px 20px 0 20px;
}
.contents-nop {
	width: 100%;
	max-width: 750px;
	margin: 0 auto;
	padding: 0 20px 0 20px;
}
.contents p,.contents-last p{ margin:0; padding:0;}

.box_inner{
	width: 100%;
	max-width: 750px;
	margin: 0 auto;
	padding: 0 20px;
	}

.link_btn{ text-align:center;}
.link_btn img{ width: 335px;}

.line-flower{
	background:url(../img/all/border-line.png) repeat-x top center;
	-webkit-background-size: 335px auto;
	background-size: 335px auto;
}

.shadow1{ box-shadow:2px 2px 4px rgba(0,0,0,0.3);}
.shadow2{ box-shadow:0px 4px 8px -4px rgba(0,0,0,0.5) inset;}

.serif{ font-family: "Times New Roman", "游明朝", YuMincho,"ヒラギノ明朝 Pr6 W6","Hiragino Mincho Pro","メイリオ", Meiryo, serif;}

.inner20{ padding: 0 20px;}
.inline span{ display:inline-block;}

/*---ボタン---*/
.btn-pink{
	width: 100%;
	background:url(../img/all/icon-arrow.png) no-repeat 95% 50% #9A5650;
	-webkit-background-size: auto 20px;
	background-size: auto 20px;
	text-align:center;
}
.btn-pink a,.btn-pink a:visited{
	color:#fff;
	font-size:14px;
	display:block;
	width: 100%;
	height: 100%;
	padding:4px;
	margin-bottom:3px;
	}
/*---lightbox---*/
ul.gallery{
	list-style:none;
	padding:0;
	margin:0;
	text-align:center;
}
ul.gallery li{
	width: 90px;
	display:inline-block;
	margin-bottom:6px;
}
/* =========================
	page
========================= */
.subpage{ }

.subpage .contents { padding: 40px 20px 0 20px;}

.subpage h2,.subpage h3,.subpage h2,.subpage h4{ margin:0; padding:0;}

.subpage .mainimage{
	height: 180px;
	width:100%;
	padding: 20px 0;
	position:relative;
	}

.subpage .page_title{
	position:absolute;
	bottom:20px;	
	}
.subpage .page_title img{

	}
.subpage .caution{ font-size:12px; color:#cba026; line-height: 1.7em;}
.radius{ border-radius:6px;}

.subpage .anchor_list{ list-style-type:none; padding:0;}
/*.subpage .contents01{ padding: 20px 0;}*/

@media screen and (max-width: 320px) {
}
/*------------------ index ------------------*/
#index .point_wp{
	border-top: 4px solid #000;
	border-bottom: 4px solid #000;
}

/*------------------ kani ------------------*/
#kani .slider_box {
	position:relative;
}
#kani .slider_box .page_title{
	position:absolute;
	z-index:999;
	top:30%;
	text-align:center;
	width: 100%;
}
#kani .slider_box .page_title img{ max-width: 335px;}

#kani .anchor-list .w3{ border-top: 4px solid #974f02;}
#kani .anchor-list .w3 p{
	float:left;
	width:33.33%;
}
#kani .anchor-list .w2 p{
	float:left;
	width:50%;
}
#kani .pri{
    padding: 8px 0.5rem 8px 1.5rem;
    background:rgba(255,255,255,0.5);
    box-shadow:1px 1px 0px rgba(0,0,0,0.1);
    line-height: 1.2;
    margin-top:10px;
}
#kani .pri h4{
    font-size: 20px;
    font-weight: 400;
}
#kani .pri p + p{
    font-size: 14px;
    line-height: 1.2;
}
#kani .pri h4 + p{
    font-size: 20px;
    color:#740101;
}

.kani2 .pri p{
    font-size: 20px;
    color:#740101;
    align-self: end;
}
.kani2  .pri p + p{
    font-size: 14px;
    line-height: 1.2;
}
.kani2 h2{
    display:grid;
    grid-template-columns: 1fr;
    align-items: center;
    font-size: 24px;
    color:#4D0B1B;
    border-bottom:2px solid #4D0B1B;
    font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    margin-bottom: 1rem;
    padding:10px 0px 0 80px;
    font-weight: 800;
    position: relative;
    background:url("../img/kani/contents_title_bk.png");
    background-position: bottom right -20px;
    background-size: cover;
    background-repeat: no-repeat;
    width: auto;
    height: clamp(70px,8vw,86px);
    vertical-align: middle;
}
.kani2 h2:before{
    content:url("../img/kani/contents_title_flower.png");
    position: absolute;
    bottom:0;
    left: 0px;
}
.kani2 h2 span{
    font-size: calc(100% * 0.8);
    text-shadow: 
    #fff 2px 0px 2px, #fff -2px 0px 2px,
    #fff 0px -2px 2px, #fff -2px 0px 2px,
    #fff 2px 2px 2px, #fff -2px 2px 2px,
    #fff 2px -2px 2px, #fff -2px -2px 2px,
    #fff 1px 2px 2px, #fff -1px 2px 2px,
    #fff 1px -2px 2px, #fff -1px -2px 2px,
    #fff 2px 1px 2px, #fff -2px 1px 2px,
    #fff 2px -1px 2px, #fff -2px -1px 2px,
    #fff 1px 1px 2px, #fff -1px 1px 2px,
    #fff 1px -1px 2px, #fff -1px -1px 2px;
}

/*------------------ cuisine ------------------*/
#cuisine .mainimage{ background:url(../img/cuisine/header.jpg) no-repeat top center; -webkit-background-size:cover; background-size:cover;}
.cuisine_intro{
    width:min(100%,670px);
    margin:0 auto;
}
.title_photo{
    display:flex;
}
.title_photo .cui-title{
    width:25%;
    height:auto;
}
.title_photo .cui-img{
    width:75%;
    height:auto;
}
.title_photo img{
    width:100%;
    height:auto;
}
.cuisine_intro:nth-of-type(even) .title_photo{
    flex-direction: row-reverse;
}

/*------------------ facilities ------------------*/
#facilities .mainimage{ background:url(../img/facilities/header.jpg) no-repeat top center; -webkit-background-size:cover; background-size:cover;}
#facilities .fac_bg{ border-top: 4px solid #000;}
#facilities .fac_bg .contents{ padding-top:0;}
#facilities .fac_bg p{ width:100%; text-align:center; padding: 20px 0 30px 0;}
#facilities .fac01{ background:url(../img/facilities/back_01.jpg) no-repeat top center; -webkit-background-size:cover; background-size:cover;}
#facilities .fac02{ background:url(../img/facilities/back_02.jpg) no-repeat top center; -webkit-background-size:cover; background-size:cover;}

/*------------------ tourism ------------------*/
#tourism .mainimage{ background:url(../img/tourism/header.jpg) no-repeat top center; -webkit-background-size:cover; background-size:cover;}
#tourism .map_wp{ border:15px solid #270606;}
#tourism .map_wp iframe{ vertical-align:bottom;}
/*------------------ access ------------------*/
#access .mainimage{ background:url(../img/access/header.jpg) no-repeat top center; -webkit-background-size:cover; background-size:cover;}
#access .map_wp{ border:15px solid #270606;}
#access .map_wp iframe{ vertical-align:bottom;}
/*------------------ movie ------------------*/
.movie_page h1{ position:relative;}
.movie_page .g_menu{
}
.movie_contents {
	width: 100%;
	margin: 0 auto;
	padding: 20px 20px;
}

.movie_contents p,
.movie_contents h2 {
	margin: 0 0 20px;
	text-align: center;
}

.movie_contents span {
	display: inline-block;
}

.movie_contents strong {
	display: inline-block;
	margin: 0 10px;
}

.movie {
	padding: 0;
}

.movie_box {
	max-width: 750px;
	margin: 0 auto;
}

/* =========================
	add
========================= */

/*------------------ float ------------------*/

.clear { clear: both;}
.float_left { float: left;}
.float_right { float: right;}
.img_left {
	width: 49%;
	float: left;
	margin: 1% 0;
	line-height: 0;
	text-align: left;
}

.img_right {
	width: 49%;
	float: right;
	margin: 1% 0;
	line-height: 0;
	text-align: right;
}


/*------------------ margin ------------------*/

.m0 { margin: 0 !important;}
.mt10 {	margin-top: 10px !important;}
.mt20 { margin-top: 20px !important;}
.mt30 { margin-top: 30px !important;}
.mt40 {	margin-top: 40px !important;}
.mt50 {	margin-top: 50px !important;}

.mb0{ margin-bottom:0px !important;}
.mb1{ margin-bottom:1em !important;}
.mb10{ margin-bottom:10px !important;}
.mb20{ margin-bottom:20px !important;}
.mb30{ margin-bottom:30px !important;}
.mb35{ margin-bottom:35px !important;}
.mb40{ margin-bottom:40px !important;}
.mb50{ margin-bottom:50px !important;}
.mb60{ margin-bottom:60px !important;}

.pb0{ padding-bottom:0 !important;}
.pb30{ padding-bottom:30px !important;}
.pb40{ padding-bottom:40px !important;}

/*------------------ text ------------------*/
.center { text-align: center;}
.left {	text-align: left;}
.right { text-align: right;}
.strong{ font-weight:bold;}
.strong_red{ font-size:30px; color:#990000; font-weight:bold;}
.serif{ font-family: "Times New Roman", "游明朝", YuMincho,"ヒラギノ明朝 Pr6 W6","Hiragino Mincho Pro","メイリオ", Meiryo, serif;}
.small{ font-size:12px; line-height: 1.5em;}
.big{ font-size:16px;}
.title_text{
	font-size: 16px;
	font-weight: bold;
	padding-bottom: 10px;
	border-bottom: 1px dotted #999;
	margin-bottom: 10px;
	color: #444;
	}

@media screen and (max-width: 320px) {
	.strong_red{ font-size:20px;}
}


@media screen and (min-width:768px){
    .sp_on{
        display:none;
    }
}
@media screen and (max-width:767px){
    .pc_on{
        display:none;
    }
}