@charset "utf-8";

/* =Reset default browser CSS.
Based on work by Eric Meyer: //meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {border: 0;font-family: inherit;font-size: 100%;font-style: inherit;font-weight: inherit;margin: 0;outline: 0;padding: 0;vertical-align: baseline;}
:focus {outline: 0;}

ol, ul {list-style: none;}
table {border-collapse: separate;border-spacing: 0;}
caption, th, td {font-weight: normal;text-align: left;}
blockquote:before, blockquote:after,q:before, q:after {content: "";}
blockquote, q {quotes: "" "";}
a img {border: 0;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}
dt,dd,li   {text-indent: 0;}
strong	{font-weight:bold;}
p	{line-height:1.8;}
svg	{fill: currentColor; vertical-align:middle;}


body{
font: 19px/1.8 "游ゴシック", YuGothic, "游ゴシック体", "メイリオ","Meiryo",arial,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
font-weight:500;
color:#333;
-webkit-text-size-adjust: none;
}
@media only screen and (max-width: 899px){
	body{font-size:16px;}
}

html	{	
	font-size:20px;
	scroll-behavior:smooth;
}
@media only screen and (max-width:1433px){
	html	{font-size:1.3vw;}
}
@media only screen and (max-width:899px){
	html	{font-size:14px;}
}

img	{max-width:100%; height:auto; vertical-align: bottom; border:0;}
.center    {text-align:center;}
.aligncenter    {text-align:center;}
.right     {text-align:right;}
.left	{text-align:left;}
.alignleft {float:left; margin:0 20px 20px 0;}
.alignright{float:right; margin:0 0 20px 20px;}
.children  {margin-top:6px;}
.closeup   {font-weight:bold; color:#d5141c; }
.closeup_tx12 {font-size: 12px !important; color: #d5141c !important; line-height: 1.4;}
.closeup_tx14 {font-size: 14px !important; color: #d5141c !important; line-height: 1.4;}
.closeup_tx16 {font-size: 16px !important; color: #d5141c !important; line-height: 1.4;}
.closeup_tx18 {font-size: 18px !important; color: #d5141c !important; line-height: 1.4;}
.closeup_tx24 {font-size: 24px !important; color: #d5141c !important; line-height: 1.4;}
.mincho	{font-family:YuMincho,"游明朝体","Yu Mincho","Hiragino Mincho Pro","ＭＳ Ｐ明朝","MS PMincho","Sawarabi Mincho",serif;}

.tx10      {font-size:10px !important;}
.tx11      {font-size:11px !important;}
.tx12      {font-size:13px !important;}
.tx13      {font-size:12px !important;}
.tx14      {font-size:14px !important;}
.tx15      {font-size:15px !important;}
.tx16      {font-size:16px !important;}
.tx18      {font-size:18px !important;}
.tx20      {font-size:20px !important;}
.tx22      {font-size:22px !important;}
.tx24      {font-size:24px !important;}
.tx30      {font-size:30px !important;}
.tx40      {font-size:40px !important;}
.tx50      {font-size:50px !important;}
.tx110per      {font-size:110% !important;}
.tx120per      {font-size:120% !important;}

.pa_btm0   {padding-bottom: 0px !important; }
.pa_btm5   {padding-bottom: 5px !important; }
.pa_btm10  {padding-bottom: 10px !important; }
.pa_btm20  {padding-bottom: 20px !important; }
.pa_btm30  {padding-bottom: 30px !important; }

.pa_top10  {padding-top: 10px !important; }
.pa_top20  {padding-top: 20px !important; }
.pa_top30  {padding-top: 30px !important; }

.ma_btm0   {margin-bottom: 0px !important; }
.ma_btm5   {margin-bottom: 5px !important; }
.ma_btm10  {margin-bottom: 10px !important; }
.ma_btm20  {margin-bottom: 20px !important; }
.ma_btm30  {margin-bottom: 30px !important; }
.ma_btm40  {margin-bottom: 40px !important; }
.ma_btm45  {margin-bottom: 45px !important; }
.ma_btm50  {margin-bottom: 50px !important; }
.ma_btm60  {margin-bottom: 60px !important; }
.ma_btm70  {margin-bottom: 70px !important; }
.ma_btm80  {margin-bottom: 80px !important; }
.ma_btm90  {margin-bottom: 90px !important; }
.ma_btm100  {margin-bottom: 100px !important; }

.ma_right10 {margin-right: 10px !important; }
.ma_right20 {margin-right: 20px !important; }
.ma_right30 {margin-right: 30px !important; }

.ma_left10 {margin-left: 10px !important; }
.ma_left20 {margin-left: 20px !important; }
.ma_left30 {margin-left: 30px !important; }


.tx_uline {text-decoration: underline !important;}
.ul_dash {
    background: #E7F4FF none repeat scroll 0 0;
    border-bottom: 1px dashed #aaaaaa;
    line-height: 2;
}

.comingsoon {text-align: center;}
.comingsoon h2 {font-weight: bold; font-size: 250%;}
.title404_h1 {
    font-size: 250%;
    font-weight: bold;
    margin: 30px 0 0;
    text-align: center;
}
.title404_h2 {
    font-size: 130%;
    font-weight: normal !important;
    line-height: 1.4;
    margin-bottom: 10px !important;
	border-bottom: none !important;
}
@media only screen and (max-width:599px){
	.title404_h1 {font-size: 160% !important;}
	.title404_h2 {font-size: 120% !important;}
}
@media only screen and (min-width:500px){
	.br_sp	{display:none;}
	.br_pc	{display:block;}
	.img_sp	{display:none;}
	.img_pc	{display:inline;}
	.tx_ctol {text-align: center !important;} /* テキスト中央寄せ500px以上 */
}

@media only screen and (max-width:499px){
	.br_sp	{display:block;}
	.br_pc	{display:none;}
	.img_sp	{display:inline;}
	.img_pc	{display:none;}
	.tx_ctol {text-align: left !important;} /* テキスト左寄せ499px以下 */
}

/* テキスト強調 */
.marker_line {font-weight: 600;}
.marker_line.y {
    background: linear-gradient(transparent 60%, #fff600 0%);
}
.marker_line.b {
    background: linear-gradient(transparent 60%, #B2CAEB 0%);
}

/* -----------------------------------------------------------
		link
----------------------------------------------------------- */
a{
margin:0;
padding:0;
text-decoration:none;
outline:0;
vertical-align:baseline;
background:transparent;
font-size:100%;
color:#333;
/* hover effect */
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
-ms-transition: 0.5s;
transition: 0.5s;
}

a:hover, a:active{
outline: none;
color:#333;
}

a.linkify-keywords	{
	color:inherit;
	background:#fffc01a6;
}
a.linkify-keywords:hover	{
	color:inherit;
	background:#ffd701a6;
}

/**** Clearfix ****/
nav .panel:after, nav#mainNav:after, .newsTitle:after, .bg:after,.post:after,.pagecont:after, ul.post li:after,nav#mainNav .inner:after{content:""; display: table;clear: both;}
nav .panel,nav#mainNav,.newsTitle,.bg, .post, ul.post li,nav#mainNav .inner{zoom: 1;}

.clear hr { display: none; border: none; height:0px; }/*clearfix*/.clearfix { clear: both; min-height: 1px;/*IE7用…高さが設定されてあれば回避可能*/ zoom: 1; height:auto; background-color:transparent; }.clearfix:after { content: ".";  /* 新しい要素を作る */ display: block;  /* ブロチEけレベル要素に */ clear: both; height: 0; visibility: hidden; background-color:transparent; }.clearfix { min-height: 1px; }/*-WinIE6 and below *//* Hides from IE-mac \*/* html .clearfix { height: 1%; }/* End hide from IE-mac */


/* フォーム
------------------------------------------------------------*/
input[type="text"], input[type="email"], input[type="password"], input[type="tel"], input[type="number"] {
    padding: 0px;
    width: 48%;
    margin-bottom: 0;
    border: none;
	text-indent: 10px;
	font-size: inherit;
	color: inherit ;
	font: inherit ;
	line-height: 41px;
}
select {
    width: 50%;
    height: 38px;
	padding: 10px;
	display: block;
	position: relative;
	border: 2px solid #ccc;
}
.rtb-booking-form select{
	width: 100%;
}
select[multiple="multiple"] {
	height: 100px;
}
select[multiple="multiple"] option {
	height: 20px;
	line-height: 20px;
}
textarea{
    padding: 10px 0 0 10px;
    height: 350px;
    width: 98%;
    margin-bottom: 30px;
    font:inherit;
    overflow: auto;
    font-size: inherit;
	color: inherit ;
	font: inherit ;
}  
.rtb-booking-form textarea {
  width: 97% !important;
  max-width: none !important;
  height: 150px;
}
input[type="submit"], .action-button .be-button,
input[type="button"], input[type="submit"], input[type="reset"], input[type="file"]::-webkit-file-upload-button, button {
    border: none;
    cursor:pointer;
    display: inline-block;
    margin:0px 0 10px;
    text-decoration: none;  
    border-radius: 3px;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
	font-size: 100%;
	line-height: 1.0;
	padding: 20px 90px;
	text-transform: uppercase;
	letter-spacing: 1px;
    background: #333;
	color:#fff;
} 
input[type="text"], input[type="email"], input[type="password"], input[type="number"], textarea, select {
	border: 1px solid #ccc;
	background: #fff;
}
span.wpcf7-list-item {display: block !important;}

.wpcf7 .ajax-loader	{
	display:block !important;
	margin:10px auto !important;
}

/* iPhoneリセット*/
input[type="submit"], input[type="button"] { -webkit-appearance: none; }

input[type="submit"]:hover,input[type="reset"]:hover,input[type="button"]:hover{
background: #d5141c;
}

*:first-child+html input[type="submit"]{padding:3px;}

@media only screen and (max-width:699px){
    input[type="text"], input[type="email"], input[type="password"] {width: 98%;}
}

.form_age	{
	display: inline-block;
	width:6em !important;
	margin-right:10px;
}


/* コンテンツ内リンクボタン（#ff878d） */
.button01 {
	display: inline-block;
	height: 38px;
	text-align: center;
	text-decoration: none;
	line-height: 40px;
	outline: none;
	margin-bottom: 10px;
	font-size: 16px;
	border-radius: 5px;
	padding: 0 25px !important;
	border-bottom: medium none !important;
}
.button01::before,
.button01::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.button01,
.button01::before,
.button01::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.button01 {
	background-color: #89733f !important;
	color: #fff;
}
.button01:hover {
	background-color: #5c481b !important;
	color: #fff !important;
}

@media only screen and (max-width:400px){
	.button01 {font-size: 14px;}
}

/* -----------------------------------------------------------
		layout（共通）
----------------------------------------------------------- */
#bg_wrap	{}

#wrapper	{
width:90%;
max-width: 1260px;
margin:0 auto;
}
.inner{
margin:0 auto;
width:90%;
max-width: 1260px;
}
#wrapper > .inner	{
	width:100%;
}

#wrapper-full{
width:100%;
}

#outer	{
	top:0;
	left:0;
}
#outer-page	{
	margin-top:90px;
}
@media only screen and (max-width:1024px){
	#outer	{margin-top:80px;}
}
@media only screen and (max-width:899px){
	#outer	{margin-top:60px;}
}

#content{
float:left;
width:70%;
padding:20px 0 50px;
min-height: 700px;
}
#content.cont_fl_none	{
	float:none;
	margin-right:auto;
	margin-left:auto;
}

#content-t {
    width: 100%;
    padding: 20px 0 50px;
    min-height: 700px;
}
#content-full {
    width: 100%;
    padding: 0 0 50px;
}

#sidebar{
float:right;
width:27%;
padding:22px 0 50px;
}
#sidebar-home{
float:right;
width:27%;
padding:0 0 50px;
}

#sidebar-topics{
float:right;
width:27%;
padding:20px 0 50px;
}


/* リッチエディタ見出しクラス */
.editorbox h1	{font-size:180%; font-weight:bold; margin-bottom:10px;}
.editorbox h2	{font-size:160%; font-weight:bold; margin-bottom:10px;}
.editorbox h3	{font-size:130%; font-weight:bold; margin-bottom:10px;}
.editorbox h4	{font-size:110%; font-weight:bold; margin-bottom:10px;}
.editorbox h5	{font-size:100%; font-weight:bold; margin-bottom:10px;}
.editorbox h6	{font-size:90%; font-weight:bold; margin-bottom:10px;}
.editorbox p	{margin-bottom:10px;}

/* 4段組み */
.d-box4 {width:225px; height:auto; margin-right:20px; float:left;}
.d-box4_last {width:225px; height:auto; float:left;}

/* 3段組み */
.d-box3 {float:left; height:auto; margin-right:25px; width:185px;}
.d-box3_last {width:185px; height:auto; float:left;}

/* 2段組み */
.d-box2 {width:325px; height:auto; margin-right:30px; float:left;}
.d-box2_last {width:325px; height:auto; float:left;}

.dis_table	{display:table;}
.d-box-one-half	{width:50%; display:table-cell; overflow:hidden; vertical-align:middle; box-sizing:border-box;}
.d-box-one-third	{width:33%; float:left; overflow:hidden; vertical-align:middle; box-sizing:border-box;}
.d-box-two-third	{width:66%; float:left; overflow:hidden; vertical-align:middle; box-sizing:border-box;}
.d-box-one-fifth	{width:20%; float:left; overflow:hidden; vertical-align:middle; box-sizing:border-box;}
.d-box-one-fourth	{width:25%; float:left; overflow:hidden; vertical-align:middle; box-sizing:border-box;}
.d-box-three-fourth	{width:75%; float:left; overflow:hidden; vertical-align:middle; box-sizing:border-box;}
@media only screen and (max-width: 859px) {
	.d-box-one-third	{width:50%;}
	.d-box-two-third	{width:100%; display:block; margin-bottom:20px;}
	.d-box-one-fourth	{width:100%; display:block; margin-bottom:20px;}
	.d-box-three-fourth	{width:100%; display:block; margin-bottom:20px;}
}
@media only screen and (max-width: 767px) {
	.d-box-one-half	{width:100%; display:block; margin-bottom:20px; float: left;}
	.d-box-one-half img {max-width:auto;}
	.d-box-one-third	{width:100%; display:block; margin-bottom:20px;}
}

/* リストデザイン */
.li_disc li, .li_circle li, .li_square li, .li_decimal li, .li_decimal-lz li, .li_lower-latin li, .li_upper-latin li {list-style-position: outside; margin-bottom: 5px; line-height: 1.6;}
.li_disc ul, .li_circle ul, .li_square ul, .li_decimal ul, .li_decimal-lz ul, .li_lower-latin ul, .li_upper-latin ul {margin-left: 25px;}
.li_disc li	{list-style-type: disc;} /* 黒丸 */
.li_disc_sub li	{list-style-type: disc !important;} /* 黒丸 */
.li_circle li	{list-style-type: circle;} /* 白丸 */
.li_square li	{list-style-type: square;} /* 黒四角 */
.li_decimal li	{list-style-type: decimal;} /* 算用数字 */
.li_decimal-lz li	{list-style-type: decimal-leading-zero;} /* 先頭に0をつけた算用数字 */
.li_lower-latin li	{list-style-type: lower-latin;} /* 小文字のアルファベット */
.li_upper-latin li	{list-style-type: upper-latin;} /* 大文字のアルファベット */

/* パンくず */
#kuzu {padding:0; font-size:11px; height:20px; margin:10px 0; padding:5px 0; display: inline-block;}
#kuzu ul {list-style:none; padding:0; margin:0;}
#kuzu li {float:left; margin:0 5px 0 0; padding:0; }
#kuzu h1	{float:right;}
#kuzu br {display: none;}

/* 記事ループ
*****************************************************/
.list{
padding:10px 0;
border-bottom:1px dashed #dcdcdc;
}

.list:last-child{border:0;}

.post .list p{padding:0;}
.post iframe {
    width: 100%;
    margin: 0 auto;
    display: block;
}
.list span{padding-left:10px;}


/* タイポグラフィ
*****************************************************/
h1, h2, h3, h4, h5 {
    font-family: 'Noto Sans JP', "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "メイリオ","Meiryo",arial,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
    font-weight: 600;
}
.title	{
	margin:0 0 60px;
	position:relative;
}
.topics-template-page_tpfullwidth .title	{
	margin-bottom:0;
}
#pagetit_haveimg	{
	height:24vw;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -ms-flex-direction: column;
    -webkit-box-direction: column;
    -webkit-flex-direction: column;
    flex-direction: column;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
	padding-bottom:40px;
}
#pagetit_haveimg:before	{
	content:"";
	width:100%;
	height:8vw;
    background: #f5f5f5;
	position:absolute;
	bottom:0;
	z-index:-1;
}
#pagetit_noimg	{
    background: #f5f5f5;
	padding:40px 0;
}
.title .inner	{
	position:relative;
	z-index:2;
}
.title#pagetit_noimg .inner	{
}
.title h1 {
	font-weight:bold;
    font-size: 30px;
    padding-bottom: 5px;
    margin-bottom: 10px;
    text-align: left;
	position:relative;
}
.title h2	{
    font-size: 14px;
    text-align:left;
    line-height: 1.2;
}
.title h1::after {
    content: "";
    position: absolute;
    width: 2em;
    height: 3px;
    left: 0;
    bottom: 0;
	background:#d5141c;
}
.pagetit_img	{
	width:72%;
	position:absolute;
	right:0;
	top:0;
    aspect-ratio: 3 / 1;
	background-size:cover;
	background-position:center center;
}
@media only screen and (max-width:699px){
	#pagetit_haveimg	{height:36vw;}
	.pagetit_img	{aspect-ratio: 3 / 1.5;}
}
@media only screen and (max-width: 599px){
	#pagetit_haveimg:before	{height:50px;}
	.title h1	{font-size:24px; line-height: 1.4; padding-bottom: 15px;}
	.title h2	{font-size:12px;}
}

.single p	{margin-bottom:10px;}

/*.post ul{margin: 0 0 10px 10px;}

.post ul li{
margin-bottom:5px;
padding-left:15px;
background:url(//www.saloncms.com/template/default-image/images/bullet.png) no-repeat 0 8px;
}

.post ol{margin: 0 0 10px 30px;}

.post ol li{list-style:decimal;}*/

.post h1{
	margin:20px 0;
	padding:5px 0;
	font-size:180%;
	/* border-bottom:3px solid #000; */
}

.post h2 {
    margin: 5px 0;
    padding-bottom: 3px;
    font-size: 150%;
    font-weight: bold;
    border-bottom: 3px solid #515151;
}

.post h3{
	margin:10px 0;
	padding:10px 0;
	font-size:120%;
	font-weight:bold;
}

/* .post p{min-height: 1em;} */

.post blockquote {
clear:both;
padding:10px 0 10px 15px;
margin:10px 0 25px 30px;
border-left:5px solid #ccc;
}
 
.post blockquote p{padding:5px 0;}

.post table{
border: 1px #ccc solid;
border-collapse: collapse;
border-spacing: 0;
margin:10px 0 20px;
}

.post table th{
padding:10px;
border: #ccc solid;
border-width: 0 0 1px 1px;
background:#efede7;
}

.post table td{
padding:10px;
border: 1px #ccc solid;
border-width: 0 0 1px 1px;
background:#fff;
}

.post dt{font-weight:bold;}

.post dd{padding-bottom:10px;}

.post img{max-width:100%;height:auto;}

img.aligncenter {
display: block;
margin:5px auto;
}

img.alignleft{
margin: 0 30px 20px 0;
display:inline;
}
img.alignright{
margin: 0 0 20px 30px;
display:inline;
}

.alignright{float:right;}
.alignleft{float:left;}

#gallery-1 img{
border:1px solid #eaeaea !important;
padding:5px;
background:#fff;
}

#gallery-1 img:hover{background:#fffaef;}

.page-subtit	{font-size:27px; border-bottom:1px solid #000; padding:0 0 10px; margin:0 0 20px;}

#pagetop	{bottom: 20px; position: fixed; right: 20px; z-index:99;}
#pagetop a	{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
	width:40px;
	height:40px;
	background:rgba(0,0,0,0.5); 
	color:#fff; 
	text-align:center; 
	border-radius:50%;
}
#pagetop a span	{font-size:20px; line-height: 1.0; display:block;}

@media only screen and (max-width:899px){
	#pagetop	{bottom:55px; right:10px;}
}




/* -----------------------------------------------------------
		Header（共通）
----------------------------------------------------------- */

/* PC
------------------------------------------------------------*/
#header_line	{
-webkit-transition: 0.8s;
-moz-transition: 0.8s;
-o-transition: 0.8s;
-ms-transition: 0.8s;
transition: 0.8s;
}
#header_line.fixed	{background: rgba(255, 255, 255, 0.95);}

@media only screen and (min-width: 1025px){
#header_line	{width: 100%; background: rgba(255, 255, 255, 0) ; }
#headerUpper	{margin-bottom:20px;}
#headerUpper ul	{float:left;}
#headerUpper h1	{float:right; font-size:11px;}
#header	{width:95%; margin:0 auto; position:relative; padding:20px 0;}
#header_contents,#header_right	{
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex; 
	-ms-flex-direction: row;
	-webkit-box-direction: row;
	-webkit-flex-direction: row;
	flex-direction: row; 
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	align-items:center;
}
#header_contents	{
	justify-content:space-between;
}
#header_right	{
	margin:0;
	position:relative;
	padding:0;
	box-sizing:border-box;
	justify-content:flex-end;
}
#logo		{width:220px; margin:0; text-align:left;}
#sm_logo	{display:none;}
#mb_hd_connect	{display:none;}
	
.hd_top #logo a	{display:none;}
#header_line.hd_top.fixed #logo a	{display:block;}
}


/* iPadサイズ以下から
------------------------------------------------------------*/
@media only screen and (max-width:1024px){
#header_line	{ width: 100%; padding:0; margin:0; background: rgba(255,255,255,0); height:80px;}
#headerUpper	{margin-bottom:10px;}
#headerUpper ul	{float:left;}
#headerUpper h1	{float:right; font-size:11px;}
#header		{width:95%; margin:0 auto; position:relative; padding:10px 0;}
#header_contents, #mb_hd_connect ul	{
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex; 
	-ms-flex-direction: row;
	-webkit-box-direction: row;
	-webkit-flex-direction: row;
	flex-direction: row; 
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;		
}
#header_contents	{margin:0; height:60px; justify-content: space-between; align-items:center;}
#logo		{width:110px; margin:0; text-align:left;}
#header_right	{}
#header_right ul	{justify-content:flex-end;}
#header_right ul li i	{font-size:24px; display:block; padding:0;}
.md_hd_cncbt	{text-align:center;}
.md_hd_cncbt span	{font-size:10px;}
#mdh_bt_tel span, #mdh_bt_res span	{display:block;}
.md_hd_cncbt a	{display:block; width:45px; color:#fff; padding:8px 0; height:54px; box-sizing:border-box;}
}


#header_line	{position: fixed; top:0; left:0; z-index:3; z-index:9999;}
#header_line_inn	{max-width:1400px; margin:0 auto;}
.modal_on #header_line.fixed	{background:transparent;}

#headerUpper	{background:#000; color:#fff; padding:10px 0; }
#headerUpper a	{color:#fff;}
#headerUpper ul li	{display:inline-block; margin:0 30px 0 0; font-size:14px;}
#headerUpper ul li i	{font-size:20px;}

#header h1{
}

#header h2{
float:right;
padding:5px 0;
font-size:11px;
font-weight:normal;
text-align:right;
}


@media only screen and (max-width:899px){
	#header_line	{height:60px;}
	#header_contents	{height:40px;}
}

/* コンタクト
----------------------------------*/
.contact{
float:right;
padding:20px 0 0;
text-align:right;
color:#fff;
font-size:90%;
width: 240px;
}

.contact .tel{
margin-bottom:-3px;
font-size:180%;
}





/* -----------------------------------------------------------
		Header Button（共通）
----------------------------------------------------------- */
#header_connect	{padding:10px 0;}
#header_connect ul	{
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex; 
	-ms-flex-direction: row;
	-webkit-box-direction: row;
	-webkit-flex-direction: row;
	flex-direction: row; 
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: flex-end;
	align-items: center;
}
#header_connect li	{}
#header_connect li a	{
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex; 
	-ms-flex-direction: row;
	-webkit-box-direction: row;
	-webkit-flex-direction: row;
	flex-direction: row; 
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	align-content:center;
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "メイリオ","Meiryo",arial,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
}
#header_connect li p	{width:100%; text-align:center; font-family: 'Lato', sans-serif;}
#header_connect li img	{width:18px;}
#header_connect li svg	{margin: 0px 10px 0 0;}
#header_connect li i, #header_connect li span	{display:block; width: 100%;text-align: center;}
#header_connect li i	{font-size: 21px; margin: 3px 0 3px;}
#header_connect li span	{font-size:9px; line-height:1.0;}
#hd_reserve a	{
	background: #3f5973;
	color:#fff;
	padding:6px 40px;
	border:1px solid #3f5973;
}
#hd_reserve a:hover	{
	background:#5489d1;
	border-color:#5489d1;
}
#hd_seminar	{
	margin-left:10px;
}
#hd_seminar a	{
	background: #fff;
	color:#CD1E6D;
	padding:6px 40px;
	border:1px solid #CD1E6D;
}
#hd_seminar a:hover	{
	background:#fae8f0;
}
#hd_line	{
	margin-left:10px;
}
#hd_line a	{
	background:#08C755;
	color:#fff;
	padding:6px 20px;
	border:1px solid #08C755;
	width:217px;
	text-align:center;
	box-sizing:border-box;
}
#hd_line a:hover	{
	background:#01e639;
	border-color:#01e639;
	color:#fff;
}
#header_connect li#hd_menu	{margin-left:25px;}
#hd_menu a	{cursor:pointer;}	
#hd_menu p	{font-size:14px; margin-top:2px;}
.menubtn_pc div	{width:50px; height:40px; margin: 0; position:relative; }
.menubtn_pc div span	{width:100%; height:0; border-top:1px solid #707070; position: absolute; left:0; transform: rotate(0deg); transition: all .4s;}
.menubtn_pc div span:nth-of-type(1) {top: 0px;}
.menubtn_pc div span:nth-of-type(2) { top: 20px;}
.menubtn_pc div span:nth-of-type(3) { bottom: 0px;}
	
.modal_on #hd_menu .menubtn_pc div span:nth-of-type(1) {
	transform: translateY(20px) rotate(-45deg);
	top: 1px;
}
.modal_on #hd_menu .menubtn_pc div span:nth-of-type(2) {
	display:none;
}
.modal_on #hd_menu .menubtn_pc div span:nth-of-type(3) {
	transform: translateY(-20px) rotate(45deg);
	bottom: -3px;
}

#hd_reserve a, #hd_seminar a, #hd_line a	{
	transition:0.5s;
}
.modal_on #hd_reserve a, .modal_on #hd_seminar a, .modal_on #hd_line a	{
	display:none;
}


@media only screen and (min-width: 1025px){
}
@media only screen and (max-width: 1024px){
	.menubtn_pc div	{width:30px; height:26px;}
	.menubtn_pc div span:nth-of-type(2)	{top:13px;}
	.modal_on #hd_menu .menubtn_pc div span:nth-of-type(1)  {top: -10px;}
	.modal_on #hd_menu .menubtn_pc div span:nth-of-type(3)	{bottom:-5px;}
	#hd_reserve a, #hd_seminar a, #hd_line a	{max-width:170px; padding:6px 10px; box-sizing:border-box; font-size:14px;}
}
@media only screen and (max-width:959px){
}
@media only screen and (max-width:899px){
	#hd_reserve, #hd_seminar, #hd_line	{display:none;}
}
@media only screen and (max-width: 499px){
	#header_connect li	{margin-left:10px;}
	#header_connect li span.hd_sns_detail	{display:none;}	
}
@media only screen and (max-width: 349px){
	#header_connect li	{margin-left:5px;}
}





	

/* -----------------------------------------------------------
		共通部分可変調整
----------------------------------------------------------- */

/* 幅644px以下から ヘッダー等微調節
------------------------------------------------------------*/
@media only screen and (max-width: 644px){
	#mainNav{width:98%;}
	.contact{padding:0 0 20px; margin: 0 auto; text-align: center;}
	.contact p{text-align:center;}
	#headerInfo{width:250px;margin:0 auto;}
	img.alignright, img.alignleft{display: block;	margin:5px auto;}
	.alignright,.alignleft{float:none; margin: 0 0 20px 0;}
}



/* 959px以下から 1カラム表示
------------------------------------------------------------*/
@media only screen and (max-width: 959px){
  #wrapper, .inner{width:90%;}

	
	.contact{padding:10px 0 10px;}

  nav#mainNav{width:100%;}

	nav#mainNav ul{margin:0 auto;}
	nav#mainNav ul ul{padding:0;}

	nav div.panel{float:none; position:absolute; top:50px; z-index:9999;}
	
	#mainImg img{height:auto; padding:0;}

	#content, #content-t, #content-topics,#content-home, #sidebar, #sidebar-topics, #sidebar-home{clear:both;width:95%;float:none;margin:0 auto;padding:0 0 20px;}
	
	.banner{width:100%;margin:0 auto;text-align:center;}
  p.banner img{width:100%;height:auto;}
	section.widget_search{text-align:center;}
	#footer li{margin-bottom:10px;}
}




/* -----------------------------------------------------------
		Footer（共通）
----------------------------------------------------------- */
#footer{
	clear:both;
	width:100%;
	padding:20px 0;
	text-align:center;
	color:#222;
} 
#footer a	{
	color:#222;
}

#footer address	{font-size:11px;}

@media only screen and (max-width: 899px){
	#footer	{padding-bottom:60px;}
}

@media only screen and (min-width: 900px){
	#bottomLinks	{display:none;}
}

#bottomLinks	{position:fixed; bottom:0; left:0; width:100%; padding-top:7px; /*background:linear-gradient(to bottom, rgba(0,0,0,0), rgba(0,0,0,0.3) 40%);*/ z-index:3;}
#bottomLinks ul	{
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex; 
	-ms-flex-direction: row;
	-webkit-box-direction: row;
	-webkit-flex-direction: row;
	flex-direction: row; 
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	margin:0 2px;
}
#bottomLinks ul li	{
	width : 50% ;
	margin:0;
	padding:0 2px;
	box-sizing:border-box;
	-webkit-filter: drop-shadow(0px -2px 3px rgba(0,0,0,0.15));
	-moz-filter: drop-shadow(0px -2px 3px rgba(0,0,0,0.15));
    filter: drop-shadow(0px -2px 3px rgba(0,0,0,0.15));
}
#bottomLinks a	{
	font-size:13px; 
	padding:10px 0; 
	display:block; 
	text-align:center;
    background: #3f5973;
    color: #fff;
	border-bottom:none;
	border-radius:3px 3px 0 0;
}
#bottomLinks a#btm_bt_line	{
    background: #08C755;
}
#bottomLinks svg	{
	width:24px;
	height:24px;
	fill:#fff;
}
#bottomLinks a span{
	vertical-align:middle; 
	display:inline-block;
}
.btm_bt_icon	{
	margin-right:10px;
}

/* Floating Menu */
#fl_menu_top {z-index: 999; position: fixed; right: 0; top: 230px;}
#fl_menu_top ul li {margin-bottom: 5px;}

#bn_sm_reserve	{margin:20px 0; text-align:center;}

@media only screen and (min-width: 401px){
	#bn_sm_reserve	{display:none;}
}
@media only screen and (max-width: 400px){
	#fl_menu_top	{display:none;}
	#bn_sm_reserve	{display:block;}
}


/* -----------------------------------------------------------
		シールエクステ
----------------------------------------------------------- */

#mv	{
	position:relative;
	width: 100%;
	height: 100%;
	aspect-ratio:16 / 9;
}
#mv iframe	{
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.topcont	{
	padding:4rem 0;
}
.topcont_wht	{
	padding:1rem 0 4rem;
}
.tit_eg	{
	font-family: "Montserrat", sans-serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	letter-spacing:0.08em;
}
.tit_double	{
	text-align:center;
	margin-bottom:3rem;
}
.tit_db_egs	{
    font-size: 1rem;
    color: #3f5973;
}
.tit_db_jpl	{
    font-size: 1.7rem;
    line-height: 1.4;
}
.cta	{
	margin:2.5rem 0 0;
	text-align:center;
}
.bt_cta	{
    background: #3f5973;
    color: #fff;
	font-size:2rem;
	line-height:1.4;
	padding:0.8em 0;
	width:23em;
	max-width:100%;
	border-radius:10px;
	display: flex; 
	flex-direction: row; 
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	align-content:center;
	gap:0.3em 0.6em;
	margin:0 auto;
    box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.25);
}
.bt_cta:hover	{
	background:#5489d1;
	color:#fff;
}
.bt_cta svg	{
	width:1.0em;
	height:1.0em;
}
.bt_cta span	{
	font-weight:600;
}
#top_message	{
    text-align: center;
}
#top_message h1	{
    font-size: 2.4rem;
    line-height: 1.4;
    margin-bottom: 1em;
}
#top_message p	{
	font-size:120%;
}
#top_benefits	{
	background:#eeeeee;
}
.tp_bnft_inn	{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
	gap:2rem 3rem;
}
.tp_bnft_L	{
	text-align:left;
}
.tp_bnft_L p	{
	font-size:110%;
    color: #3f5973;
}
.tp_bnft_L h2	{
    font-size: 1.8rem;
    line-height: 1.4;
	margin-left:-1em;
	letter-spacing:-0.04em;
}
.tp_bnft_L h2 strong	{
	font-size:160%;
	font-weight:600;
}
.tp_bnft_list:not(:last-child)	{
	margin-bottom:2rem;
}
.tp_bnft_tit	{
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    margin-bottom: 0.5rem;
}
.tp_bnft_tit .tit_eg	{
	font-size:88%;
    line-height: 1.4;
}
.tp_bnft_tit h3	{
	font-size:1.8rem;
	font-weight:600;
	line-height:1.4;
}
.img_bnft_lipc	{
    letter-spacing: 0.04em;
    font-size: 0.7rem;
    width: 5rem;
    height: 5rem;
    background: #3f5973;
    color: #fff;
    position: relative;
    border-radius: 50%;
    text-align: center;
    box-sizing: border-box;
    margin-right: 1rem;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    align-content: center
}
.img_bnft_lipc span, .img_bnft_lipc strong	{
	line-height:1.0;
}
.img_bnft_lipc strong	{
	font-size:230%;
	font-weight:normal;
}
.tp_bnft_txt	{
	margin:0 0 0 6rem;
}


#recommended_scene	{
	background:#fff;
}
#recommended_scene strong	{
	color:#bfa05d;
}
.rec_box_responsive	{
	background:#f4f4f4;
	padding:2rem;
	border-radius:0.5rem;
	margin-top:-1rem;
}
.rec_item_responsive	{
	background:#fff;
	padding:1rem;
	border-radius:0.5rem;
	box-shadow:0 2px 6px rgba(0,0,0,0.05);
	margin-bottom:1rem;
}
.rec_item_responsive:last-child	{
	margin-bottom:0;
}
.rec_icon_responsive	{
	color:#bfa05d;
	font-size:1.3rem;
    padding-top: 0.2em;
	margin-right:0.5em;
}
.rec_title_responsive	{
    font-size: 1.2rem;
    color: #333;
    margin-bottom: 1em;
    line-height: 1.4;
    font-weight: bold;
    border-bottom: 2px solid #bfa05d;
    padding-bottom: 0.6rem;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
}
.rec_text_responsive	{
	padding:0 1rem 0 1.8rem;
}


#top_colors	{
	
}
#tp_clrs_list	{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
	margin-top:-1rem;
}
.tp_clrs_tit	{
	background:#f2f2f2;
	padding:1rem 0.5rem;
	border-radius:10px 10px 0 0;
	margin-bottom:1rem;
	text-align:center;
}
#tp_clrs_list h3	{
	font-size:120%;
	line-height:1.4;
	margin-bottom:0;
}
.tit_li_egs	{
    font-size: 88%;
    line-height: 1.4;
    color: #3f5973;
}
.tp_clrs0	{
	width:calc((100% / 3) - 2rem);
	margin:1rem;
	border-radius:10px;
    box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.25);
	box-sizing:border-box;
}
.slider-container{
    width: calc(100% - 2rem);
    margin: 0 auto 1rem;
}
.slider-nav .slick-slide{
    margin: 0.25rem;
    aspect-ratio: 1 / 1;
}
.slider-for img,.slider-nav img{
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}
#tp_clrs_list .slick-prev, #tp_clrs_list .slick-next	{
	position:absolute;
	width:20px;
	height:20px;
	top:50%;
}
#tp_clrs_list .slick-prev	{
	left:10px;
}
#tp_clrs_list .slick-next	{
	right:10px;
}
#tp_clrs_list .slick-prev:before,#tp_clrs_list .slick-next:before {
	content:"";
    position: absolute;
    padding: 0;
    font-family: "Font Awesome 5 Free";
    font-weight: 700;
    font-size: 20px;
    text-indent: 0;
    color: #fff;
    opacity: 1;
    filter:drop-shadow(1px 3px 5px rgba(0, 0, 0, 0.2));
}
#tp_clrs_list .slick-prev:before {
    content: "\f137";
    top: 0;
    left: 0
}
#tp_clrs_list .slick-next:before {
    content: "\f138";
    top: 0;
    right: 0
}

#top_quality	{
	background:#eeeeee;
    margin-top: 3rem;
}
#top_quality h2	{
    font-size: 1.6rem;
    line-height: 1.8;
    text-align: center;
    margin: -5.5rem 0 1em;
}
#top_quality h2 span	{
	font-size:140%;
}
.pnt0	{
	background:#fff;
	padding:2rem;
	border-radius:1rem;
    box-shadow: 3px 2px 6px rgba(0, 0, 0, 0.15);
}
.pnt0:not(:last-child)	{
	margin-bottom:3rem;
}
.pnt_tit	{
	border-bottom:1px solid #3f5973;
	text-align:center;
	padding:0 0 1rem;
	margin-bottom:1.5rem;
	position:relative;
}
.pnt_tit:before	{
	content:"";
	display:block;
	width:100%;
	height:1px;
	background:#3f5973;
	position:relative;
	top:1rem;
	left:0;
	z-index:0;
}
.pnt_titnum	{
	display:inline-block;
    letter-spacing: 0.04em;
	font-size:0.7rem;
    background: #fff;
    color: #3f5973;
    position: relative;
    text-align: center;
    box-sizing: border-box;
	font-size:1rem;
	margin:0 0 0.5em;
	padding:0 1em;
	line-height:1.0;
	position:relative;
	z-index:1;
}
.pnt_titnum strong	{
	font-size:230%;
	font-weight:normal;
}
.pnt0 h3	{
	font-size:150%;
	line-height:1.4;
}
.pnt0 .pnt_inn	{
    display: flex;
    flex-direction: row-reverse;
    flex-wrap: wrap;
    justify-content: space-between;
	gap:2rem;
}
.pnt0:nth-of-type(even) .pnt_inn	{
    flex-direction: row;
}
.pnt_txt	{
	flex:2;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
	justify-content:center;
}
.pnt_img	{
	width:35%;
	position:relative;
}
.pnt_img ul	{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1px;
}
.pnt_txt p	{
	line-height:2.0;
}
.pnt03txt	{
	position:relative;
	min-height:100%;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
	align-items:center;
}
.pnt03img	{
	width:10rem;
	margin-left:1rem;
}
.pnt03txt p	{
	flex:2;
}

.spec_list	{
	display: grid;
	grid-template-columns: 1fr 2fr;
	gap: 1px;
	max-width:900px;
	margin:0 auto;
}
.spec_list > *	{
  padding: 0.5em 1em;
  outline: solid 1px #888;
}
.spec_list dt	{
	background:#eee;
	text-align:center;
}
#top_faq{
	background:#f9f9f9;
	padding:60px 0;
}
.faq_list{
	margin-top:40px;
	text-align:left;
}
.faq_item{
	margin-bottom:30px;
	border-bottom:1px solid #ddd;
	padding-bottom:20px;
}
.faq_item:last-child	{
	border-bottom:none;
}
.faq_q{
	font-weight:bold;
	font-size:1.1em;
	line-height:1.6;
	color:#333;
	margin-bottom:10px;
	display:flex;
	align-items:flex-start;
}
.faq_a{
	line-height:1.6;
	display:flex;
	align-items:flex-start;
}
.faq_label{
	flex-shrink:0;
	margin-right:0.5em;
}
#form	{
	background:#eee;
	padding:0 0 4rem;
	/*margin:2rem 0 0;*/
	margin:0;
    scroll-margin-top: 109px;
}
.form_tit	{
	background:#3f5973;
	color:#fff;
	text-align:center;
	padding:2rem 0;
	margin:0 0 3rem;
	position:relative;
}
.form_tit:before	{
    content: "";
    display: block;
    position: absolute;
    bottom: calc(-2rem + 1px);
    left: 50%;
    margin-left: -0.5rem;
    border: 1rem solid transparent;
    border-top: 1rem solid #3f5973;
}
.form_tit .tit_eg	{
    font-size: 1rem;
	margin-bottom:0.5em;
}
.form_tit h2	{
    font-size: 2.15rem;
    line-height: 1.4;
}

.tp_bnft_inn {display:block;}
.tp_bnft_L {text-align:center; margin:0 0 2rem;}
.tp_bnft_Linn {display:inline-block; text-align:left;}
/*@media only screen and (max-width: 1024px){
	.tp_bnft_inn {display:block;}
	.tp_bnft_L {text-align:center; margin:0 0 2rem;}
	.tp_bnft_Linn {display:inline-block; text-align:left;}
}*/
@media only screen and (max-width: 1024px){
	#form	{scroll-margin-top: 80px;}
}
@media only screen and (max-width: 899px){
	.tp_clrs0	{width: calc((100% / 2) - 2rem);}
	#form	{scroll-margin-top: 60px;}
}
@media only screen and (max-width: 768px){
}
@media only screen and (max-width: 599px){
	.topcont	{padding: 3rem 0;}
	.topcont_wht	{padding:1rem 0 3rem;}
	.bt_cta	{font-size:1.6rem;}
	#top_message h1	{font-size: 1.8rem;}
	#top_message p	{font-size:100%; text-align:left;}
	.tp_bnft_L h2	{font-size:1.6rem;}
	.tp_bnft_txt	{margin:1em 1em 0;}
	.rec_box_responsive	{padding:1.4rem;}
	.rec_item_responsive	{padding:1.2rem;}
	.rec_text_responsive	{padding:0; font-size: 95%;}
	.rec_title_responsive	{font-size:1.15rem;}
	.tp_clrs0	{width:90%; margin:0 auto 2rem;}
	#top_quality	{margin-top:1rem;}
	#top_quality h2	{margin-top:-4.5rem;}
	.pnt0	{padding:15px 15px 2rem;}
	.pnt0 .pnt_inn	{display:block;}
	.pnt_img	{width:90%; max-width:300px; margin:2rem auto 0;}
	.pnt03txt	{display:block; clear:both;}
	.pnt03img	{width:90%; max-width:300px; margin:1rem auto 0;}
	#top_faq{padding:3rem 0;}
	.form_tit h2	{/*font-size:2rem;*/ font-size:1.8rem;}
	#form	{padding-bottom:3rem;}
}

/* -----------------------------------------------------------
		Utility
----------------------------------------------------------- */
#utility	{}
#utility dl	{margin-bottom:50px;}
#utility dl dt	{width:25%; padding:10px; box-sizing:border-box; float:left; clear:both; font-weight:bold;}
#utility dl dd	{padding:10px 10px 9px 25%;}
#utility dl dt span.tx12	{display:block; font-weight:normal; line-height:1.4;}
#utility dl dd h4	{font-size:100%; font-weight:bold; margin-bottom:5px;}
#u-gmap		{width:100%;}
#u-gmap iframe	{width:100%; height:300px;}
#rec_message	{margin:50px 0 0;}
#rec_message p	{margin-bottom:10px;}
#utility .lk-1colt dt	{width:100%; float:none;}
#utility .lk-1colt dd	{width:100%; padding:10px 10px 9px 10px;}
select[name="menu-year"], select[name="menu-month"]	{width:7em; display:inline-block;}
input[name="zip"]	{width:10em; display:inline-block;}


#form_message	{margin-bottom:30px;}
#form_contact .need    { background-color:#d5141c; color:#FFFFFF; font-size:11px; margin-right:5px; padding:3px 5px; border-radius: 3px; font-weight: normal;}
#form_contact .err     { background:#FF6868; color:#FFFFFF; }
#form_contact .comp    { background:#f3f3f3; padding:80px 0px 80px 0px; text-align: center; }
#privacy { height:120px; overflow-y:scroll; padding:10px; margin-bottom:10px; border: 1px solid #ccc; background:#fff;}
.wpcf7-spinner	{display:block !important; margin:0 auto !important;}

#rental dl dd	{border-color:#fff;}


@media only screen and (max-width: 1024px){
	#utility dl dt	{width:100%; padding:10px 10px 5px; box-sizing:border-box;}
	#utility dl dd	{padding:0 10px 10px; box-sizing:border-box;}
}
