/* IMPORT CSS */
@import url("grid.css");

img {
	max-width:100%;
	height: auto;/*高さ自動*/
}
a {
    display:block;
    color: #333;
    text-decoration-line: none;
}
a:hover {
	color: #333;
}
.btm20{
	margin-bottom: 20px;
}
.color_white{
	color: #fff!important;
}




@media (min-width: 550px){
.sp_on{
	display: none;

}
.pc_on{
	display: block;
}
}

@media screen and (max-width: 768px){
.sp_on{
	display: block;

}
.pc_on{
	display: none;
}
}


/*ヘッダー
-------------------------------------*/
.header {
  display: flex;
  justify-content: space-between;
	padding: 0;
	margin: auto;
}

@media screen and (max-width: 768px){
.header {
  display: block;
  justify-content: space-between;
	padding: 0rem;
	margin: auto;
}

}



.header_logo .head{
}

.header_logo{
	width: 200px;
    /*コレ*/display:flex;
    /*コレ*/align-items: center;
}



.header-box {
	margin-left: auto;
	margin-top: 8px;
}

.nav{
	width: 700px;
}


.mainimg {
	position: relative;
}

.mainimg .title_box {
  position: absolute;
  top: 50%; /*親要素を起点に上から50%*/
  transform: translateY(-50%); /*要素の大きさの半分ずつを戻す*/
  -webkit-transform: translateY(-50%);
	text-align: center;
	margin: auto;
	display: block;
	width: 100%;
}

.mainimg .title_box h1{
    text-align: center;
    color: #fff;
    font-size: 60px;
    font-weight: normal;
}

.mainimg .title_box .h1_sub{
    text-align: center;
    color: #fff;
    font-size: 20px;
    font-weight: normal;
}
@media screen and (max-width: 768px){
	
.mainimg .title_box {
  position: absolute;
  top: 40%; /*親要素を起点に上から50%*/
  transform: translateY(-40%); /*要素の大きさの半分ずつを戻す*/
  -webkit-transform: translateY(-40%);
	text-align: center;
	margin: auto;
	display: block;
	width: 100%;
}

	
	
.mainimg .title_box h1{
    text-align: center;
    color: #fff;
    font-size: 40px;
    font-weight: normal;
}

.mainimg .title_box .h1_sub{
    text-align: center;
    color: #fff;
    font-size: 15px;
    font-weight: normal;
}
}



.mainimg .title{margin:  20px auto;text-align: center; font-size:42px;}
.mainimg .text_box{
	width: 100vw;
	margin-top: 0px;
	margin-right: auto;
	margin-bottom: 0;
	margin-left: auto;
	position: absolute;
	z-index: 10;
	top: 0px;
	text-align: center;
	padding-top: 50px;
}
.mainimg .text_box h1{margin:20px auto 60px auto;text-align: center; color:#fff; font-size:42px; font-weight: normal; letter-spacing: 3px; text-shadow:0px 0px 10px #000000;}
.mainimg .text_box .title{
	color: #fff;
	text-shadow: 0px 0px 10px #000000;
	font-size: 35px;
	margin: 0 0 25px 0;
	font-family : 'Playfair Display','Noto Serif JP', sans-serif ,"Times New Roman", "游明朝", YuMincho,"ヒラギノ明朝 Pr6 W6";
}
.mainimg .text_box p{
	color: #fff;
	text-shadow: 0px 0px 10px #000000;
	font-size: 18px;
	margin: 0 0 15px 0;
}
.mainimg .text_box .day{
	margin: 0 0 10px 0;
	font-size: 26px;
}
.mainimg .text_box .tel{border:#fff 2px solid; padding:20px; display:inline-block; box-shadow: 0px 0px 5px rgba(0,0,0,0.5) ; font-size: 36px;}
.mainimg .text_box .tel .text{color:#fff; text-shadow:0px 0px 10px #000000; font-size:16px; margin:0 0 10px 0;}
.mainimg .text_box .tel .number{color:#fff; text-shadow:0px 0px 10px #000000; font-size:36px; margin:0 0 10px 40px; position: relative;}
.mainimg .text_box .tel .number::before {content:url(../img/tel_icon.png); position: absolute; left:-40px; top:-1px;}




.contact-button {
	padding: 1rem;
	border: 2px solid #000;
}




body {
  margin: 0;
	display: none;
}

/* Navbar & Navmenu color */
:root {
  --background-navbar: rgba(55, 55, 55, 0.98);
}

.header {
	
  /*ヘッダ固定の場合挿入　background: var(--background-navbar);*/
  position: fixed;
  width: 100%;
	z-index: 1000000000000000000000000000;
	height: 76px;
}

/* Nav items */
.menu {
    list-style: none;
    position: absolute;
    width: 100%;
    height: auto;
    top: 0;
    /* 固定ヘッダの場合　margin-top: 76px;*/
    margin-top: 0px;
    padding: 0 0 10px 0;
    clear: both;
/*背景*/background-color: rgba(73,41,10,0.90);
    transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
    transform: scale(1, 0);
    transform-origin: top;
}

/* Hamburger menu button */
.menu-btn:checked ~ .menu {
  transform: scale(1, 1);
  transform-origin: top;
  transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
}

/* Hamburger menbu text */
.menu a {
  text-decoration: none;
  font-weight: 500;
  letter-spacing: 2px;
  font-size: 16px;
  text-transform: capitalize;
  color: #fff;
  opacity: 0;
  transition: 0.5s;
}

.menu li {
  border-top: 1px solid #FFFFFF;
  padding: 15px 0;
  margin: 0 54px;
  opacity: 0;
  transition: 0.5s;
}
.menu li:nth-child(1) {
  border-top: 0px solid #FFFFFF;
}
.menu-btn:checked ~ .menu a,
.menu-btn:checked ~ .menu li {
  opacity: 1;
  transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.2s;
}

.menu-btn {
  display: none;
}

.menu-icon {
display: inline-block;
   /* position: relative;*/
    cursor: pointer;
    padding: 24px 14px;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    right: 0;
    position: absolute;
	z-index: 2000000;   
/*背景*/background-color: #49290A;
}

.navicon {
  background: #fff;
  display: block;
  height: 3px;
  width: 26px;
  position: relative;
  transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
}

.navicon:before,
.navicon:after {
  content: "";
  display: block;
  height: 100%;
  width: 100%;
  position: absolute;
  background: #fff;
  transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
}

.navicon:before {
  top: 9px;
}

.navicon:after {
  bottom: 9px;
}

/* Hamburger Menu Animation Start */
.menu-btn:checked ~ .menu-icon .navicon:before {
  transform: rotate(-45deg);
}

.menu-btn:checked ~ .menu-icon .navicon:after {
  transform: rotate(45deg);
}

.menu-btn:checked ~ .menu-icon:not(.steps) .navicon:before {
  top: 0;
}
.menu-btn:checked ~ .menu-icon:not(.steps) .navicon:after {
  bottom: 0;
}

.menu-btn:checked ~ .menu-icon .navicon {
  background: rgba(0, 0, 0, 0);
  transition: 0.2192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
}
/* Hamburger Menu Animation End */

/* Navbar Container */
.navtext-container {
  width: 100%;
  height: 76px;
  position: absolute;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
}

/* Navbar Text */
.navtext {
  position: absolute;
  text-transform: uppercase;
  color: #ddd;
  letter-spacing: 4px;
  font-size: 20px;
}


@media screen and (min-width: 768px){

}

@media screen and (max-width: 768px){
	
}
    
/*メイン画像
-------------------------------------*/
.mainimg img {
    width: 100vw;
}

/*メインコンテンツ
-------------------------------------*/
main {
	margin-top: 0rem;
	margin-bottom: 50px;
	margin-left: 0;
	margin-right: 0px;
}
section {
	/*margin: 5rem 0;*/
	padding: 4rem 0;
	position: relative;
}
.gray-back {
	position: relative;
	z-index: 10;
	background-image: url(../img/bg_w2.gif);
	background-repeat: repeat;
}

/*キャッチコピー
-------------------------------------*/
.catch {
    text-align: center;
}
h2 {
  position: relative;
  padding: 1.5rem;
  text-align: center;
  margin-bottom: 1.5em;
}

h2:before {
  position: absolute;
  bottom: -10px;
  left: calc(50% - 30px);
  width: 60px;
  height: 3px;
  content: '';
  border-radius: 3px;
  background: #000;
}
h3{
  padding: 0px 0 10px 0;
  border-bottom: 6px double #000;
}




.under {
}
.under_mini {
	font-size: 16px;
}
.center {
	text-align: center;
	margin-top: 0px;
}

/*申し込みの流れ
-------------------------------------*/
.flow.row {
	margin-bottom: 5rem;
}

/*フッター
-------------------------------------*/
footer {
	background-color: #f7f7f7;
	margin: 0px;
	padding-top: 0;
	padding-right: rem;
	padding-bottom: 0;
	padding-left: rem;
}
footer h4 {
    border-bottom: 3px solid #ccc;
}

/*お問い合わせ
-------------------------------------*/
.contact-box {
	border: 1px solid #ccc;
	text-align: center;
	padding: 2rem 0;
}
.table {
	margin:　0;
}
.table th {
	width: 250px;
}

/*コピーライト
-------------------------------------*/
.copyright {
	text-align: center;
	padding: 1rem 0;

/*背景*/background-color: #49290A;
	color: #FFF;
	font-size: 11px;
}
.copyright a {
    color: #fff;
    text-decoration: none;
	display: inline;
}

/*ページトップへ戻るボタン
-------------------------------------*/

#page_top{
  width: 75px;
  height: 75px;
  position: fixed;
  right: 0;
  bottom: -150px;
/*背景*/background-color: #49290A;
 /* opacity: 0.6;*/
  border-radius: 50%;
	margin-right: 20px;
z-index: 1000;
}
#page_top a{
  position: relative;
  display: block;
  width: 75px;
  height: 75px;
  text-decoration: none;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f106';
  font-size: 45px;
  color: #fff;
  position: absolute;
  width: 75px;
  height: 75px;
  top: -5px;
  bottom: 0;
  right: 0;
  left: 0;
  text-align: center;
}


#pagetop a:hover {
    background: #666;
}

/* 幅768px以下の表示
-------------------------------------*/
@media screen and (max-width: 800px){
	
iframe {

vertical-align:bottom;}
/*ヘッダー
-------------------------------------*/
.header-box {
	display: none;
}	
/*お問い合わせ
-------------------------------------*/
.table th {
	width: 100%;
	display: block;
	padding-left: 10px;
}	
.table td {
	display: block;
}
 
.text{
	padding-right: 10px;
	padding-left: 10px;
	text-align: left;
}
}




/*スライドショー
-------------------------------------*/

.fade {
	max-width: 1000px;
	margin: 0px auto;
	padding: 0;
	height: auto;
}
.fade img{ width: 100%;}

.fade .slick-next { right: 20px; z-index: 99;}
.fade .slick-prev { left: 20px; z-index: 100;}




#wrap{
  background-color: #333;
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100vh;
}
#slider,#slider02,#slider03{
	max-width: 960px;
	margin: 0 auto 10px;
	padding: 0;
	height: auto;
}
.slide-item,.slide-item02,.slide-item03 img{
    width: 100%;
	position: relative;
	display: block;
  }  




#thumbnail-list,#thumbnail-list02,#thumbnail-list03{
	
max-width: 1000px;
	text-align: center;
  margin: 0 auto;
  flex-wrap:wrap;
}
#thumbnail-list img,#thumbnail-list02 img,#thumbnail-list03 img{
	
    width: 100px;
	max-width:100px;
	height: auto;/*高さ自動*/

}
.thumbnail-item,.thumbnail-item02,.thumbnail-item03{
	display: inline-block;
  cursor:pointer;
	padding: 0px;
	width: 100px;
	margin-top: 0px;
	margin-right: 5px;
	margin-bottom: 0px;
	margin-left: 5px;
  }
}






.center_slide { margin: 0 0 0px;}
.center_slide img { width: 100%; height: auto;}
.center_slide .slick-next { right: 20px; z-index: 99;}
.center_slide .slick-prev { left: 15px; z-index: 100;}


.center_slide {
	margin: 0 0 0px;
}
.center_slide img { width: 100%; height: auto;}
.center_slide .slick-next { right: 20px; z-index: 99;}
.center_slide .slick-prev { left: 15px; z-index: 100;}
.double{
	width: 100%;
	text-align: center;
	margin: 0px;
	padding: 0px;
}

.double h4 {
	font-size: 17px;
  position: relative;
	margin-top: 25px;
  padding: 1em 0;
}
.double h4::before,
.double h4::after {
  position: absolute;
  left: 0;
  content: '';
  width: 100%;
  height: 6px;
  box-sizing: border-box;
}
.double h4::before {
  top: 0;
  border-top: 2px solid #ccc;
  border-bottom: 1px solid #ccc;
}
.double h4::after {
  bottom: 0;
  border-top: 1px solid #ccc;
  border-bottom: 2px solid #ccc;
}
.container p strong{
font-size: 25px;
    line-height: 25px;
	
}
.footer_address{
	padding: 20px 0;
}
.banner{
	text-align: center;
}


/*====== 9-1-1 縦線が動いてスクロールを促す =======*/

/*スクロールダウン全体の場所*/
.scrolldown1{
    /*描画位置※位置は適宜調整してください*/
	position:absolute;
	left:50%;
	bottom: -95px;
    /*全体の高さ*/
	height:50px;
}

/*Scrollテキストの描写*/
.scrolldown1 span{
    /*描画位置*/
    position: absolute;
    left: -20px;
    top: -25px;
    /*テキストの形状*/
    color: #eee;
    letter-spacing: 0.05em;
	font-family: system-ui;
}

/* 線の描写 */
.scrolldown1::after{
	content: "";
    /*描画位置*/
	position: absolute;
	top: 0;
    /*線の形状*/
	width: 1px;
	height: 30px;
	background: #eee;
    /*線の動き1.4秒かけて動く。永遠にループ*/
	animation: pathmove 1.4s ease-in-out infinite;
	opacity:0;
}

/*高さ・位置・透過が変化して線が上から下に動く*/
@keyframes pathmove{
	0%{
		height:0;
		top:0;
		opacity: 0;
	}
	30%{
		height:30px;
		opacity: 1;
	}
	100%{
		height:0;
		top:50px;
		opacity: 0;
	}
}



/* メインギャラリー */
.full div {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  height: 100vh;
  margin: 0;
}

.full div::before{
  /* 透過した黒を上から重ねるイメージ */
  background-color: rgba(0,0,0,0.2);
  /* 自由に位置指定 */
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: ' ';
}
.full div.img01 {
  background-image: url(../img/mainimg01.jpg);
}
.full div.img02 {
  background-image: url(../img/mainimg02.jpg);
}
.full div.img03 {
  background-image: url(../img/mainimg03.jpg);
}
.full div.img04 {
  background-image: url(../img/mainimg04.jpg);
}
.full div.img05 {
  background-image: url(../img/mainimg05.jpg);
}
.full div.img06 {
  background-image: url(../img/mainimg06.jpg);
}
.full .slick-dots {
  bottom: 5%;
  z-index: +1;
}
/* メインギャラリー */
.footer_logo{
	line-height: 25px;
	text-align: center;
}
.footer_sub{
	font-size: 14px;
}


.w960{
max-width: 960px;
	width: 100%;
	margin: auto;
}

.defo_table{
width: 100%;
    border-left: #222 1px solid;
    border-top: #222 1px solid;
    padding: 0px;
    margin: 0 auto 10px auto;
    border-collapse: collapse;
    border-spacing: 0;
	font-size: 13px;
}
.defo_table th {
    border-bottom: #222 1px solid;
    border-right: #222 1px solid;
    padding: 15px;
    text-align: left;
    background: #F4F4E3;
}
.defo_table td {
    border-bottom: #222 1px solid;
    border-right: #222 1px solid;
    padding: 15px;
    text-align: left;
}
table.w28 th {
    width: 20%;
}
table.w28 td {
    width: 80%;
}
table.w37 th {
    width: 30%;
}
table.w37 td {
    width: 70%;
}
@media screen and (max-width: 800px){


.w960{
max-width: 960px;
	width: 100%;
	margin: auto;
    padding: 10px 10px;
}
	
.defo_table{
width: 100%;
    border-left: #222 1px solid;
    border-top: #222 1px solid;
    margin: 0 auto 10px auto;
    border-collapse: collapse;
    border-spacing: 0;
	font-size: 13px;
}
.defo_table th {
    border-bottom: #222 1px solid;
    border-right: #222 1px solid;
    padding: 15px;
    text-align: left;
    background: #F4F4E3;
	display: block;
}
.defo_table td {
    border-bottom: #222 1px solid;
    border-right: #222 1px solid;
    padding: 15px;
    text-align: left;
	display: block;
}
table.w28 th,table.w37 th {
    width: 100%;
}
table.w28 td,table.w37 td {
    width: 100%;
}
}


/* プルダウン */
 .accordion {
  width: 100%;
  /*max-width: 360px;*/
  margin: 30px auto 20px;
  background: #FFF;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
 }

.accordion .link {
  cursor: pointer;
  display: block;
  padding: 15px 15px 15px 15px;
  color: #4D4D4D;
  font-size: 14px;
  font-weight: 700;
  border: 1px solid #CCC;
  position: relative;
  -webkit-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
/*
.accordion li:last-child .link {
  border-bottom: 0;
}*/
#accordion{
padding-bottom: 0rem;
}
.accordion li i {
  position: absolute;
  top: 35%;
  left: 12px;
  font-size: 18px;
  color: #595959;
  -webkit-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}

.accordion li i.fa-chevron-down {
  right: 12px;
  left: auto;
  font-size: 16px;
}

.accordion li.open .link {
  color: #b63b4d;
}

.accordion li.open i {
  color: #b63b4d;
}
.accordion li.open i.fa-chevron-down {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}

.accordion li.default .submenu {display: block;}
/**
 * Submenu
 -----------------------------*/
 .submenu {
  display: none;
  padding: 15px 15px 15px 15px;
  font-size: 14px;
	 border-left: 1px solid #CCC;
	 border-right: 1px solid #CCC;
	 border-bottom: 1px solid #CCC;
 }

 .submenu li {
  border-bottom: 1px solid #4b4a5e;
 }

 .submenu a {
  display: block;
  text-decoration: none;
  color: #d9d9d9;
  padding: 12px;
  padding-left: 42px;
  -webkit-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all 0.25s ease;
 }

 .submenu a:hover {
  background: #b63b4d;
  color: #FFF;
 }









.tel{
  display: flex;
  justify-content: center;
}





.caption{
	background-color: rgba(0,0,0,0.8);
	font-size: 25px;
	color: #fff;
	position: absolute;
	bottom: 25px;
	right: 0;
	display: block;
	padding: 5px 15px 5px 15px;
}


.tel_tead{border:#fff 2px solid; margin-top: 25px; margin-bottom: 0px; padding:15px 15px 15px 15px; display:inline-block; box-shadow: 0px 0px 5px rgba(0,0,0,0.5) ; font-size: 36px;}
.tel_tead a{
	color: #FFF;}
.tel_tead .text{color:#fff; text-shadow:0px 0px 10px #000000; font-size:16px; margin:0px; text-align: center;}
.tel_tead .number{    color: #fff;
    text-shadow: 0px 0px 10px #000000;
    font-size: 30px;
    margin: 0 0 0px 40px;
    position: relative;
    line-height: 20px;}
.tel_tead .number::before {content:url(../img/tel_icon.png); position: absolute; left:-40px; top:-5px;}

.banner a{
	display: contents!important;
}

@media screen and (max-width: 800px){

.caption{
	background-color: rgba(0,0,0,0.8);
	font-size: 20px;
	color: #fff;
	position: absolute;
	bottom: 20px;
	right: 0;
	display: block;
	padding: 5px 10px 5px 10px;
}
}




/*プランRSS*/
.plan_rss{display:flex; flex-wrap: wrap; justify-content:space-between; max-width: 1200px; margin: auto; padding-bottom: 50px;}
.plan_rss .mini {    width: 32%;
    padding: 0px;
    display: flex;
    flex-wrap: wrap;}
.plan_rss .mini .plan_img {width:100%; order:1;}
.plan_rss .mini .plan_img img{display: block; width:100%; height:auto;}
.plan_rss .mini .plan_text {width:100%; text-align: left; order:2;}
.plan_rss .mini .plan_text a{font-size:18px; text-decoration: none;}
.plan_rss .mini .plan_text h4{
    font-size: 18px;
    margin: 15px 0;
    border-bottom: 2px solid #333333;
	margin-bottom: 5px;
	padding-bottom: 10px;
}
.plan_rss .mini .plan_text p{font-size:14px;}


@media only screen and (max-width: 800px){
.plan_rss{display:flex; flex-wrap: wrap; justify-content:space-between; width:100%;}
.plan_rss .mini {width:auto; padding:20px;}
.plan_rss .mini .plan_img img{display: block; width:100%; height: auto;}
.plan_rss .mini .plan_text {text-align: left;}
.plan_rss .mini .plan_text a{font-size:16px; text-decoration: none;}
.plan_rss .mini .plan_text h4{
    font-size: 16px;
    margin: 15px 0;
    border-bottom: 2px solid #333333;
	margin-bottom: 5px;
	padding-bottom: 10px;
	}
.plan_rss .mini .plan_text p{font-size:14px;}
	
	
}



















/******************　検索窓関連ここから　******************/


.search{
	background-color: #CD6769;
}

form{
	padding-bottom: 0px!important;
}

#plan_search{
	background-color: #BCDAFF;
	padding: 25px;
}


.form_box .form_title{
	text-align: center;
}
.form_box .form_title h3{
  position: relative;
  display: inline-block;
  margin-bottom: 10px;
font-size: 25px;
	border: none;
}


.form_box .form_title h3:before {
  content: '';
  position: absolute;
  bottom: -5px;
  display: inline-block;
  width: 60px;
  height: 2px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: black;
  border-radius: 2px;
}


#plan_search .search_box{
	width: 100%;
	max-width: 1200px;
	margin: auto;
}


.plan_form{max-width:1100px;
	margin: auto;}
.plan_form .form_box{display: flex; flex-wrap: wrap; justify-content:space-between;}
.plan_form .title{margin:0 0 5px 0; padding:0; text-align: center; font-size:14px;}
.plan_form span{margin:0 10px 0 0;}
.plan_form select{position: relative;border-radius: 1px;border: 1px solid #bfbfbf; background: #ffffff; padding:10px; line-height: 16px;
    font-size: 13px;}
.plan_form input{position: relative;border-radius: 1px;border: 1px solid #bfbfbf; background: #ffffff; padding:10px;}
.plan_form .check_in {width:auto; text-align: center;}
.plan_form .check_in input{width:100px; cursor: pointer;}
.plan_form .undecided {width:auto; text-align: center;}
.plan_form .undecided input{margin:14px 0 0 0px;}
.plan_form .guests{width:auto; text-align: center;}
.plan_form .guests select{width:100px;}
.plan_form .type {width:auto; text-align: center;}
.plan_form .type select{width:100px;}
.plan_form .price {width:auto; text-align: center;}
.plan_form .price span {width:10px; text-align: center; margin:0;}
.plan_form .search_btn .btn{width:100px; margin:32px auto; padding:10px 0 10px 0; background:#1c5068; background-position:right 15px center; border:none; color:#fff; font-size:18px; cursor: pointer; line-height: 16px;}
.plan_form .option-input{position:relative;  cursor: pointer;}
.plan_form .option-input:before { position: absolute; z-index: 1; top: 0.125rem; left: 0.1875rem; width: 0.75rem; height: 0.375rem; content: ''; -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75); transition: transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75); -webkit-transform: rotate(-45deg) scale(0, 0); transform: rotate(-45deg) scale(0, 0); border: 2px solid #330301; border-top-style: none; border-right-style: none; display: none;}
.plan_form .option-input:checked:before { -webkit-transform: rotate(-45deg) scale(1, 1); transform: rotate(-45deg) scale(1, 1);}
.plan_form .option-input:after { position: absolute; top: -0.125rem; left: 0; width: 1.5rem; height: 1.5rem; content: ''; cursor: pointer; }
/******************　検索窓関連ここまで　******************/

@media only screen and (max-width: 1000px){

	
/******************　検索窓関連ここから　******************/

#plan_search{
	background-color: #BCDAFF;
	padding: 0px;
}


.form_box .form_title{
	text-align: center;
    display: block;
    width: 100%;
}
.form_box .form_title h3{
  position: relative;
  display: inline-block;
  margin-bottom: 10px;
	font-size: 25px;
}


.form_box .form_title h3:before {
  content: '';
  position: absolute;
  bottom: -5px;
  display: inline-block;
  width: 60px;
  height: 2px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: black;
  border-radius: 2px;
}


#plan_search .search_box{
	width: 95%;
	max-width: 600px;
	margin: auto;
	padding: 15px 0;
}


.plan_form{max-width:800px;
	margin: auto;}
	.plan_form form{
    padding-bottom: 0rem;
	}
	
	
.plan_form .form_box{display: flex; flex-wrap: wrap; justify-content:space-between;}
.plan_form .title{margin:0 0 5px 0; padding:0; text-align: center; font-size:14px;}
.plan_form span{margin:0 10px 0 0;}
.plan_form select{position: relative;border-radius: 1px;border: 1px solid #bfbfbf; background: #ffffff; padding:10px; width: 45.5%;}
.plan_form input{position: relative;border-radius: 1px;border: 1px solid #bfbfbf; background: #ffffff; padding:10px;}
.plan_form .check_in {width:50%; text-align: center;}
.plan_form .check_in input{width:90%; cursor: pointer;}
.plan_form .undecided {width:50%; text-align: center;}
.plan_form .undecided input{margin:14px 0 0 0px;}
.plan_form .guests{width:50%; text-align: center;}
.plan_form .guests select{width:90%;}
.plan_form .type {width:50%; text-align: center;}
.plan_form .type select{width:90%;}
.plan_form .price {width:100%; text-align: center;}
.plan_form .price span {width:10px; text-align: center; margin:0;}


.plan_form .search_btn {
	text-align: center;
    display: block;
    width: 100%;}
.plan_form .search_btn .btn{width:100%; margin:20px auto; padding:10px 0 10px 0; background:#1c5068; background-position:right 15px center; border:none; color:#fff; font-size:18px; cursor: pointer;}
.plan_form .option-input{position:relative;  cursor: pointer;}
.plan_form .option-input:before { position: absolute; z-index: 1; top: 0.125rem; left: 0.1875rem; width: 0.75rem; height: 0.375rem; content: ''; -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75); transition: transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75); -webkit-transform: rotate(-45deg) scale(0, 0); transform: rotate(-45deg) scale(0, 0); border: 2px solid #330301; border-top-style: none; border-right-style: none; display: none;}
.plan_form .option-input:checked:before { -webkit-transform: rotate(-45deg) scale(1, 1); transform: rotate(-45deg) scale(1, 1);}
.plan_form .option-input:after { position: absolute; top: -0.125rem; left: 0; width: 1.5rem; height: 1.5rem; content: ''; cursor: pointer; }
/******************　検索窓関連ここまで　******************/
}




@media only screen and (max-width: 876px){
.plan_form .price {width:100%; text-align: center;}
.plan_form .price select {
    width: 46%;
}
}








.sns {
	
    display: flex;
    justify-content: center;
    align-items: center;
}


.sns a {
	margin: 0px 5px;
	padding: 0px 5px;
}




.indent {
	padding-left:1em;
	text-indent:-1em;
	display: block;
}







.midashi_tokusyu {

display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
position: relative;
border-top: 6px double black;
border-bottom: 6px double black;
line-height: 2;
	max-width: 900px;
	margin: 10px auto 40px;
	font-weight: bold;
	font-size: 30px;
	color: #2B2B2B
}
.midashi_tokusyu::before{
content: “”;
position: absolute;
top: -15px;
left: 20px;
width: 60px;
height: 80px;
background-color: #898787;
z-index: -1;
}





.sub_midashi{
	font-size: 2.5rem;
}

@media (min-width: 550px) {
.sub_midashi{
	font-size: 3rem;
}
}
.sub_midashi{
 position: relative;
 display: flex;
 justify-content: center;
 align-items: center;
 flex-direction : column;
	margin-top: 8rem;
 margin-bottom: 2em;
	border-bottom: 0;
}
/*縦下線*/
.sub_midashi::before{
 content: '';
 position: absolute;
 display: inline-block;
 width: 1px;
 height: 20px;
 bottom: -30px;
 left: 50%;
 -webkit-transform: translateX(-50%);
 transform: translateX(-50%);
 background-color:currentColor !important;
 /*Lightning見出しデザイン設定のCSS対策*/
 top:unset;
 border: unset;
 margin-left: unset;
 margin-right:unset;
}



.button001 a {
    background: #38B677;
    border-radius: 3px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    max-width: 280px;
    padding: 10px 25px;
    color: #fff;
    transition: 0.3s ease-in-out;
    font-weight: 500;
}
.button001 a:after {
    content: '';
    width: 5px;
    height: 5px;
    border-top: 3px solid #FFF;
    border-right: 3px solid #FFF;
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 50%;
    right: 20px;
    border-radius: 1px;
    transition: 0.3s ease-in-out;
}



.line_box {
  position: relative;
	padding-bottom: 0px;
}

.line_box::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 2px;
  background: #111111;
  left: 50%; /* 中央に配置 */
  transform: translateX(-50%);  
	z-index: 0; /* これで線を後ろに */

}

.line_box li {  
	position: relative;
	border: 1px solid #000;
	margin: 25px;
	background-color: #fff;
	z-index: 10;
	padding-top: 15px;
	padding-bottom: 15px;
}


.qa-8 dd {
    padding: 0em 1em;
	margin-bottom: 3rem;
    color: #333333;
	text-align: left;
	font-weight: 500;
}

.qa-8 dt::before,
.qa-8 dd::before {
    margin-right: .4em;
}

.qa-8 dt::before {
    content: "Q.";
}

.qa-8 dt {
    margin: 0 0 0.5em;
    padding: 0.8em 1em;
    background-color: #f2f2f2;
    color: #333333;
	text-align: left;
	font-weight: bold;
}

.qa-8 dd::before {
    content: "A.";
}

