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


/* ---------------------------------------------------------------------------------------------

　   header

--------------------------------------------------------------------------------------------- */

/* ----------

　   ページタイトル

---------- */

.pageheader{
	/*position: relative;*/
	width: 100%;
	background-image: url("../img/sample001.jpg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	padding: 0;
	}
.pageheader.ttl_bg___about{/*古洞の森について*/
	background-image: url("../img/pagettl_bg___about.jpg");
	}
.pageheader.ttl_bg___service{/*場内のご案内*/
	background-image: url("../img/pagettl_bg___service0.jpg");
	}
.pageheader.ttl_bg___onsen{/*天然温泉*/
	background-image: url("../img/pagettl_bg___onsen0.jpg");
	}
.pageheader.ttl_bg___gardenf{/*ガーデンf*/
	background-image: url("../img/pagettl_bg___gardenf01.jpg");
	}
.pageheader.ttl_bg___cabin{/*キャビン*/
	background-image: url("../img/pagettl_bg___cabin0.jpg");
	}
.pageheader.ttl_bg___bbq{/*バーベキュー*/
	background-image: url("../img/pagettl_bg___bbq0.jpg");
	}
.pageheader.ttl_bg___camp{/*キャンプ*/
	background-image: url("../img/pagettl_bg___camp0.jpg");
	}
.pageheader.ttl_bg___bardwaching{/*バードウォッチング*/
	background-image: url("../img/pagettl_bg___bardwaching0.jpg");
	}
.pageheader.ttl_bg___tenbodai{/*展望台*/
	background-image: url("../img/pagettl_bg___tenbodai0.jpg");
	}
.pageheader.ttl_bg___service1{/*ただいま準備中1*/
	background-image: url("../img/pagettl_bg___service1.jpg");
	}
.pageheader.ttl_bg___service2{/*ただいま準備中2*/
	background-image: url("../img/pagettl_bg___service2.jpg");
	}
.pageheader.ttl_bg___service3{/*ただいま準備中3*/
	background-image: url("../img/pagettl_bg___service3.jpg");
	}
.pageheader.ttl_bg___outline{/*会社概要*/
	background-image: url("../img/pagettl_bg___outline.jpg");
	}
.pageheader.ttl_bg___access{/*交通アクセス*/
	background-image: url("../img/pagettl_bg___access.jpg");
	}
.pageheader.ttl_bg___map{/*場内マップ*/
	background-image: url("../img/pagettl_bg___map.jpg");
	}
.pageheader.ttl_bg___contact,
.pageheader.ttl_bg___privacypolicy,
.pageheader.ttl_bg___thanks{/*お問合せ・個人情報保護方針・送信完了*/
	background-image: url("../img/pagettl_bg___contact0.jpg");
	}

.pageheader.ttl_bg___news{/*お知らせ*/
	background-image: url("../img/pagettl_bg___news0.jpg");
	}



.pageheader__wrap{
	position: relative;
	width: 100%;
	max-width: calc(1200px + 3rem);
	height: 20rem;
	margin: auto;
	}


.ttl_wrap{
	position: absolute;
	bottom: 0;
	left: 0;
	background: #fff;
	padding: 2.5rem 2rem 2rem 3rem;
	width: 50%;
	}

/*タイトル*/
.page_ttl{
	color: #50be50;
	font-size: 1.8rem;
	letter-spacing: 1px;
	margin: 0;
	}

/*英字*/
.page_slug{
	color: #50be50;
    font-size: 1rem;
	letter-spacing: 2px;
	line-height: 115%;
	}

	@media only screen and (max-width: 1100px) {}
	@media only screen and (max-width: 900px) {}
	@media only screen and (max-width: 767px) {}
	@media only screen and (max-width: 600px) {
		.pageheader__wrap{
			height: 15rem;
			}
		.ttl_wrap{
			padding: 1.5rem 1rem 0.5rem 2rem;
			width: 70%;
			}
		/*タイトル*/
		.page_ttl{
			font-size: 1.3rem;
			line-height: 100%;
			}
		/*英字*/
		.page_slug{
			font-size: 0.9rem;
			letter-spacing: 2px;
			line-height: 105%;
			}
		}
	@media only screen and (max-width: 480px) {
		.ttl_wrap{
			padding: 1.5rem 1rem 0 2rem;
			width: 70%;
			}
		/*タイトル*/
		.page_ttl{
			font-size: 1.2rem;
			}
		}
	@media only screen and (max-width: 260px) {}








/* ----------

　   揺れる葉っぱ

---------- */

.leaf_wrap .leaf001{
	position: absolute;
	z-index: 10;
	right: 5%;
	top: 1rem;
	width: 100%;
	max-width: 300px;
	}
.leaf_wrap .leaf001 img{
	width: 100%;
	height: auto;
	}

	@media only screen and (max-width: 767px) {
		.leaf_wrap .leaf001{
			right: 2%;
			top: 0.5rem;
			}
		.leaf_wrap .leaf001 img{
			width: 90%;
			}
		}
	@media only screen and (max-width: 600px) {
		.leaf_wrap .leaf001{
			right: -10%;
			top: -2.5rem;
			}
		.leaf_wrap .leaf001 img{
			width: 80%;
			}
		}
	@media only screen and (max-width: 480px) {
		.leaf_wrap .leaf001{
			right: -25%;
			top: -2rem;
			}
		.leaf_wrap .leaf001 img{
			width: 60%;
			}
		}
	@media only screen and (max-width: 360px) {
		.leaf_wrap .leaf001{
			right: -30%;
			top: -2rem;
			}
		.leaf_wrap .leaf001 img{
			width: 55%;
			}
		}
	@media only screen and (max-width: 260px) {}











/* ----------

　   パンくず

---------- */

.pan {
	color:  #777;
	font-size:		0.8rem;
	padding: 2rem 0 0 0;
	}
.pan:after {
	content: " "; 
	display: block;
	clear: both;
	}

.pan ul{
	margin-bottom: inherit!important;
	text-indent: inherit!important;
	padding-left: inherit!important;
	}
.pan ul li{
	float: left;
	list-style: none;
	}
.pan ul li:before{
	content: '\00A0>\00A0';
	}
.pan ul li:first-child:before{
	content: none;
	}
.pan a {	
	color:			#000;
	text-decoration:none;
	}
.pan a:hover {
	color:			#555;
	text-decoration:underline;
	}
.pan .post{
	float:none;
	}
	@media only screen and (max-width: 900px) {
		.pan{
    		word-break :break-all;
            margin:	0 auto 0.5rem auto;
			}
		}
	@media only screen and (max-width: 540px) {}




/* ---------------------------------------------------------------------------------------------

　   main

--------------------------------------------------------------------------------------------- */

main#main{
	padding-bottom: 3rem;
	}

section.container{
	background-color: #fff;
	border-radius: 30px;
	padding: 2.2rem 3rem 3.2rem 3rem;
	margin-bottom: 4rem;
	width: 92%;
	}

	@media only screen and (max-width: 767px) {
		section.container{
			border-radius: 10px;
			padding: 2rem 2rem 2rem 2rem;
			margin-bottom: 2rem;
			}
		}
	@media only screen and (max-width: 540px) {
		section.container{
			padding: 2rem 1.5rem 2rem 1.5rem;
			}
		}
	@media only screen and (max-width: 480px) {}
	@media only screen and (max-width: 360px) {}
	@media only screen and (max-width: 260px) {}


.widthover{
	width: 100vw!important;
	margin: 1rem calc(50% - 50vw) 1rem calc(50% - 50vw)!important;
	}

.widthover img{
	border-radius: 0!important;
	}

.widthover .column2 .inner{
	width: 49.8%;
	}
	@media only screen and (max-width: 1100px) {}
	@media only screen and (max-width: 900px) {}
	@media only screen and (max-width: 767px) {
		.widthover .column2{
			display: flex;
			justify-content:space-between;
			}
		}
	@media only screen and (max-width: 480px) {
		.widthover .column2{
			display: block;
			justify-content:center;
			}
		.widthover .column2 .inner{
			width: 100%;
			}
		}
		}
	@media only screen and (max-width: 480px) {}
	@media only screen and (max-width: 360px) {}
	@media only screen and (max-width: 260px) {}








/* ---------------------------------------------------------------------------------------------

　   ページ内 ナビメニュー

--------------------------------------------------------------------------------------------- */

.pagemenu{}

.pagemenu a{}

.pagemenu a img{
    width: auto;
    max-width: 90%!important;
    height: auto;
}


.subnamenu{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: stretch;
    width: 100%;
	max-width: 1120px;
    margin: 0 auto 40px auto;
}

.subnamenu .item{
    display: flex;
    align-items: stretch;
    width: 24%;
}

.subnamenu .item a{
    display: block;
    background: #62dce6;
    border-radius: 3px;
    color: #fff;
    font-size: 0.95em;
    line-height: 120%;
    text-align: center;
    padding: 12px;
    margin-bottom: 10px;
    width: 100%;
}
.subnamenu .item a:hover{
    background: #fff;
    color: #0054a7;
}
	@media only screen and (max-width: 767px) {
         .subnamenu{
            justify-content:space-around;
            margin: 0 auto 40px auto;
            }
        .subnamenu .item{
            width: 48%;
            }
        }
	@media only screen and (max-width: 520px) {
        .subnamenu{
            margin: 20px auto;
            }
        .subnamenu .item a{
            font-size: 0.85em;
            padding: 8px;
            margin-bottom: 8px;
            }
        }
	@media only screen and (max-width: 360px) {
        .subnamenu{
            margin: 15px auto;
            }
        .subnamenu .item a{
            font-size: 0.8em;
            padding: 7px;
            margin-bottom: 7px;
            }
        }




/* ---------------------------------------------------------------------------------------------

　   見出し

--------------------------------------------------------------------------------------------- */

.tex h1,h2{
	font-size:160%;
	}
h3{
	font-size:150%;
	}
h4{
	font-size:125%;
	}
h5{
	font-size:115%;
	}


.tex h1,h2,h3,h4{
	clear:both;
	float: none;
	}
.tex h1::after,h2::after ,h3::after ,h4::after {
	content: " "; 
	display: block;
	clear: both;
	}

.tex h1,
h2,
h3{
	margin-top: 1rem;
	margin-bottom: 1rem;
	font-weight: 600;
	}
h4,
h5{
	margin-top: 0.75rem;
	margin-bottom: 0.75rem;
	font-weight: 600;
	}

	@media only screen and (max-width: 480px) {
		.tex h1,h2{
			font-size:140%;
			}
		h3{
			font-size:120%;
			}
		h4,
		h5{
			font-size:110%;
			}
		}
	@media only screen and (max-width: 360px) {
		.tex h1,h2{
			font-size:120%;
			}
		}
	@media only screen and (max-width: 260px) {}





/*----------

　見出し(大) 下線2色

----------*/

.ttl_underbar{
    position: relative;
    display: block;
    text-align: center;
    line-height: 130%;
    margin: 3rem auto;
    padding-bottom: 30px;
    clear: both;
}

.ttl_underbar::after{
    content:'';
    background: url("../img/ttl_underbar.svg") no-repeat center center;
    display: inline-block;
    width: 120px;
    height: 2.25px;
    position:absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    -webkit- transform: translateX(-50%);
}
	@media only screen and (max-width: 767px) {
        .ttl_underbar::after{
            bottom: 20px;
        }
    }
	@media only screen and (max-width: 520px) {
        .ttl_underbar{
            margin-top: 25px;
            padding-bottom: 35px;
        }
    }

/*----------

　見出し(吹き出し) 両サイド斜め線

----------*/



/*----------

　タイトルの下側に線

----------*/
.ttl_bdr_bottom{
	border-bottom: solid 1px #ccc;
	line-height: 150%;
	padding-bottom: 0.5rem;
	margin-bottom:1rem;
	position: relative;
	float: none;
	clear: both;
	}
.ttl_bdr_bottom::after {
	content: " "; 
	display: block;
	clear: both;
	}
.ttl_bdr_bottom a{
	text-decoration: none!important;
	transition: .2s;
	}
.ttl_bdr_bottom a:hover{
	opacity: .7;
	}
	@media only screen and (max-width: 767px) {
		.ttl_bdr_bottom{
			padding-bottom: 10px;
			margin-top: 15px;
			margin-bottom: 10px;
			}
		}
	@media only screen and (max-width: 650px) {
		.ttl_bdr_bottom{}
		.ttl_bdr_bottom::before{
			width: 24px;
			height: 30px;
			margin-left: -30px;
			top:-4px;
			}
		}
	@media only screen and (max-width: 400px) {
		.ttl_bdr_bottom{
			margin-top: 12px;
			padding-bottom: 8px;
			}
		}

/*----------

　タイトルの左側に縦線

----------*/
.ttl_bdr_left{
	color: #50be50;
    font-weight: bold;
	margin-top: 1.2rem;
    margin-bottom: 2rem;
	line-height: 130%;
	padding: 0 0 0 1rem;
	border-left: 3px solid #50be50;
    clear:both;
	float: none;
	}
.ttl_bdr_left::after {
	content: " "; 
	display: block;
	clear: both;
	}


/*----------

　タイトルの両端に横線

----------*/
.ttl_bdr_bothside{
    color: #222;
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
    -webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin-top: 1.2rem;
	margin-bottom: 1rem;
    text-align: center;
    clear:both;
	float: none;
	}
.ttl_bdr_bothside::before,
.ttl_bdr_bothside::after {
    border-top: 1px solid #222;
    content: "";
    width: 5em; /* 線の長さ */
	}
.ttl_bdr_bothside::before {
    margin-right: 1em; /* 文字の右隣 */
	}
.ttl_bdr_bothside::after {
    margin-left: 1em; /* 文字の左隣 */
	content: " "; 
	display: block;
	clear: both;
	}
	@media only screen and (max-width: 900px) {
		.ttl_bdr_bothside::before,
		.ttl_bdr_bothside::after {
			width: 3em;
			}
		.ttl_bdr_bothside::before {
			margin-right: 0.5em;
			}
		.ttl_bdr_bothside::after {
			margin-left: 0.5em;
			}
		}

	@media only screen and (max-width: 767px) {
		.ttl_bdr_bothside::before,
		.ttl_bdr_bothside::after {
			width: 2em;
			}
		.ttl_bdr_bothside::before {
			margin-right: 0.4em;
			}
		.ttl_bdr_bothside::after {
			margin-left: 0.4em;
			}
		}
	@media only screen and (max-width: 540px) {
		}
	@media only screen and (max-width: 480px) {}
	@media only screen and (max-width: 360px) {
		.ttl_bdr_bothside::before,
		.ttl_bdr_bothside::after {
			width: 1.5em;
			}
		.ttl_bdr_bothside::before {
			margin-right: 0.3em;
			}
		.ttl_bdr_bothside::after {
			margin-left: 0.3em;
			}
		}
	@media only screen and (max-width: 260px) {}




/*----------

　タイトルの右側に横線

----------*/
.ttl_bdr_right{
    color: #222;
    display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
    -webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
    clear:both;
	float: none;
    margin-bottom: 15px;
    }
.ttl_bdr_right:after {
    border-top: 1px solid #777;
    content: "";
    -webkit-box-flex:1;
	-ms-flex-positive:1;
	flex-grow:1;
	display: block;
	clear: both;
    }
.ttl_bdr_right:after {
    margin-left: 0.5rem;
    }







/*----------

　左側にアイコン

----------*/

.ttl_note_left{
	margin-left: 45px;
	margin-top: 1rem;
	margin-bottom: 1rem;
	float: none;
	clear: both;
	}
.ttl_note_left::before{
	content: '';
	display: inline-block;
	background-image: url("../img/icon_note.svg");
	background-size: contain;
	width: 25px;
	height: 26px;
	margin-left: -35px;
	margin-right: 10px;
	position: relative;
	top: 3px;
	}





/* ---------------------------------------------------------------------------------------------

　   リード分

--------------------------------------------------------------------------------------------- */

.tex .lead{
	text-align: center;
	font-size: 120%;
	line-height: 200%;
	margin: 1rem auto;
	}

.tex .lead p{}





/* ---------------------------------------------------------------------------------------------

　   2列・3列カラム

--------------------------------------------------------------------------------------------- */

.column2,
.column3,
.column4{
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	justify-content:space-between;
	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
	}

.column2 .inner{
	margin-bottom: 0.5rem;
	}

.column2 .inner{
	width: 48%;
	margin-top: 0;
	}




.column3 .inner{
	margin-bottom: 0.5rem;
	}
.column3 .inner{
	width: 32%;
	}
.column3::after{
  content:"";
  display: block;
  width:32%;
}





.column4 .inner{
	margin-bottom: 0.5rem;
	}
.column4 .inner{
	width: 24%;
	}
.column4::before{
  content:"";
  display: block;
  width:24%;
  order:1;
}
.column4::after{
  content:"";
  display: block;
  width:24%;
}

	@media only screen and (max-width: 767px) {
		.column2{
			display: block;
			justify-content: center;
			}
		.column2 .inner{
			width:100%;
			}
		.column3 .inner{
			width: 48%;
			}
        .column4 .inner{
			width: 48%;
			}
		}
	@media only screen and (max-width: 540px) {
		.column3 .inner,
        .column4 .inner{
			width: 49%;
			margin-bottom: 0.2rem;
			}
		}






/* ---------------------------------------------------------------------------------------------

　   ボックス

--------------------------------------------------------------------------------------------- */

/*デフォルト*/
.box{
    display: inline-block;
	padding: 0.8rem 2rem;
    margin: 0.5rem 0;
	line-height: 150%;
	}
.box.bx_large{
    display: block;
	padding: 1.2rem 2.2rem 2rem 2.2rem;
    margin: 1rem 0;
	}
.box p{
    word-break: break-all;
	}
.box.dash{
	display: block;
	border: dashed 1px #2cb07e;
	border-radius: 0.2rem;
	}
.box.white{
	display: block;
	background-color:#fff;
	border-radius: 0.2rem;
	}
.box.baige{
	display: block;
	background-color:#F5F4F0;
	border-radius: 0.2rem;
	}
.box.green{
	display: block;
	background-color:#50be50;
	border-radius: 0.2rem;
	color: #fff;
	}
	@media only screen and (max-width: 767px) {
        .box{
            padding: 12px 15px;
            }
		}
	@media only screen and (max-width: 540px) {
        .box.bx_large{
			padding: 0.75rem 1.25rem 1rem 1.25rem;
			}
		}




/*数値表記用*/
.box.point{
    display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
    border-radius: 0;
	padding: 0;
	font-size: 90%;
}
.box.point .box_heading{
	border: solid 1px #222;
	color: #fff;
    text-align: center;
    background-color: #222;
    padding: 5px 15px;
    border-radius: 3px 0 0 3px;
}
.box.point .box_body{
    text-align: left!important;
    border: solid 1px #222;
    padding: 5px 15px;
     border-radius: 0 3px 3px 0;
}


/* ---------------------------------------------------------------------------------------------

　   table

--------------------------------------------------------------------------------------------- */

/*----------

　テーブル 実線

----------*/
table.tbl_border{
	width:100%;
	table-layout: fixed;
	/*font-size: 1.1em;*/
	margin:1rem 0 1rem 0!important;
	border-collapse:collapse;
	}
table.tbl_border th{
    align-items: center;
	vertical-align: middle;
    word-break:keep-all!important;
    word-wrap: normal;
    width: 25%;
    }
table.tbl_border td{
	vertical-align: middle;
    word-break: break-all!important;
    word-wrap: break-all!important;
    width: 75%;
    }

table.tbl_border.base{
	width:100%;
	table-layout: fixed;
	border-top:1px solid #cccccc;
	border-left:1px solid #cccccc;
	margin:1rem 0 1rem 0!important;
	border-collapse:collapse;
	}
table.tbl_border.base th{
    background:#F7F7F7;
	text-align:center;
	padding:10px;
	border-bottom:1px solid #cccccc;
	border-right:1px solid #cccccc;
	word-break: break-all!important;
	}
table.tbl_border.base td{
	padding:12px;
	border-bottom:1px solid #cccccc;
	border-right:1px solid #cccccc;
	}

table.tbl_border.base{
    width: 100%;
	border-collapse: collapse;
	table-layout: fixed;
	}

table.tbl_border.solid{
	border-top:1px solid #cccccc;
    margin:1rem 0 1rem 0!important;
	}
table.tbl_border.solid th{
	text-align:center;
	padding:1.5rem 1rem;
	border-bottom:1px solid #cccccc;
	}
table.tbl_border.solid td{
	padding:1.5rem 1rem;
	border-bottom:1px solid #cccccc;
	}

/*----------

　テーブル 点線

----------*/
table.tbl_border.dash{
	border-top:1px dashed #81A07A;
	}
table.tbl_border.dash th{
	text-align:center;
	padding:25px 10px;
	border-bottom:1px dashed #81A07A;
    width: 25%;
	}
table.tbl_border.dash td{
	padding:25px 10px;
	border-bottom:1px dashed #81A07A;
    width: 75%;
	}
    @media screen and (max-width: 767px) {
        /*テーブル 実線*/
        table.tbl_border{
            /*font-size: 0.95em!important;*/
            line-height: 140%;
            margin:5px 0 20px 0;
            }
        table.tbl_border th,
        table.tbl_border td{
            padding:1rem!important;
			line-height: 170%;
            }
        }
    @media screen and (max-width: 520px) {
        /*テーブル 実線*/
        table.tbl_border{
            /*font-size: 0.9em!important;*/
            }
        }
    @media screen and (max-width: 320px) {
        /*テーブル 実線*/
        table.tbl_border{
            /*font-size: 0.85em!important;*/
            }
        }


/* ---------------------------------------------------------------------------------------------

　   list

--------------------------------------------------------------------------------------------- */

ul{
	margin-bottom: 1rem;
	text-indent: -1em;
	padding-left: 1em;
	}

/*リスト*/
ul.list_circle{
    font-size: 100%;
	}
ul.list_circle li{
    margin-left: 1rem;
    text-indent: -1rem;
    margin-top: 0.5rem;
	}
ul.list_circle li::before{
    content: '●';
    color: #222;
	font-size: 160%;
	margin-right: 0.1rem;
	}





/* olのスタイル */
ol.list_circle {
  margin: 0;
  padding: 0;
  list-style: none; /* デフォルトの数字を非表示に */
  counter-reset: li;
}

/* ol内のliのスタイル */
ol.list_circle li {
  position: relative;
  font-size: 16px;
  padding-left: 1.5em;
  line-height: 1.5;
}

/* 2つ目以降のliにmargin-topを指定 */
ol.list_circle li:not(:first-child) {
  margin-top: 0.5em;
}

/* 数字のスタイル */
ol.list_circle li::before {
  counter-increment: li;
  content: counter(li);
  position: absolute;
  left: 0;
  top: 2px; /* 数字のY軸線上の位置を調整 */
  display: block;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #222;
  font-size: 12px;
  color: #fff;
  line-height: 20px;
  text-align: center;
}



/* ---------------------------------------------------------------------------------------------

　   TEX

--------------------------------------------------------------------------------------------- */
.tex {
	width: 100%;
	line-height:	240%;
	}
.tex:after{
	content: " "; 
	display: block;
	clear: both;
	}
.tex p{
	font-size: 100%;
	}
/*.tex p,
.tex table{
	line-height: 200%;
	}*/
.content a,
.tex a{
	text-decoration:underline;
	}
.content a:hover,
.tex a:hover{
	text-decoration:none;
	}
.content img,
.tex img{
	border: 0;
	border-radius: 5px;
	max-width: 100%;
	height: auto;
	}
.content img a,
.tex img a{
	border: 0;
	}
.content a:hover img,
.tex a:hover img{
	opacity:0.75;
	filter:alpha(opacity=75);
	-ms-filter: "alpha( opacity=75 )";
	}
	@media only screen and (max-width: 767px) {
		}
	@media only screen and (max-width: 540px) {s
		}

/*赤色文字*/
.red{
	color:#E90206;
	}

.tiny{/*小さい文字*/
    font-size: 0.85em!important;
    margin: 5px 0;
    word-break: break-all;
}
	@media only screen and (max-width: 767px) {
        .tiny{
            font-size: 0.75em!important;
            line-height: 150%!important;
            margin-top: 8px;
            }
        .box .tiny{
            margin: 0;
            }
		}
	@media only screen and (max-width: 400px) {
        .tiny{
            font-size: 0.7em!important;
            margin-top: 6px;
            }
		}


/*画像のキャプション*/
.wp-caption{
	border: 0;
	max-width: 100%;
	height: auto;
	}
.wp-caption-text{
	color: #777;
	font-size: 70%!important;
	text-align: right;
	margin: 0.3rem 0 0.5rem 0;
	line-height: 130%;
	}


/* ---------------------------------------------------------------------------------------------

　   フロート設定

--------------------------------------------------------------------------------------------- */

.aligncenter {
    display:		block;
	float:			none;
	clear: both;
    margin-left:	auto;
    margin-right:	auto;
	text-align: center;
	}
.alignright {
	float:			right;
    margin-left:	1rem;
    margin-right:	0;
    margin-bottom:	1rem;
    display:		inline;
	clear:			none;
	}
.alignleft {
	float:			left;
	margin-left:	0;
	margin-right:	1rem;
	margin-bottom:	1rem;
	display:		inline;
	clear:			none;
	}
.alignnone {
    margin-left:	0;
    margin-right:	0;
    margin-bottom:	1rem;
	clear:			none;
	}

	@media screen and (max-width: 900px){
        .alignright,
        .alignleft,
        .alignnone,
        .aligncenter {
            display:		block;
            margin-left:	auto;
            margin-right:	auto;
            clear:			both;
            }
        .alignright {
            float:			none;
            }
        .alignleft {
            float:			none;
            }
        .aligncenter {
            clear:			both;
            display:		block;
            margin-left:	auto;
            margin-right:	auto;
            }
        }



/* ---------------------------------------------------------------------------------------------

　   ボタン

--------------------------------------------------------------------------------------------- */

/*ボタン センター揃え*/
.btn_wrap{
	text-align: center!important;
	}
.btn_wrap a{
	margin-left: auto!important;
	margin-right: auto!important;
	}
	@media only screen and (max-width: 1100px) {}
	@media only screen and (max-width: 900px) {}
	@media only screen and (max-width: 767px) {}
	@media only screen and (max-width: 600px) {}
	@media only screen and (max-width: 480px) {}
	@media only screen and (max-width: 360px) {}
	@media only screen and (max-width: 260px) {}




/* ---------------------------------------------------------------------------------------------

　   お知らせ

--------------------------------------------------------------------------------------------- */

.entry{
	width: 100%;
	padding: 0 0 7rem 0;
	margin: 0 0 7rem 0;
	}
.entry:last-child{
	border-bottom: none;
	}
	@media only screen and (max-width: 767px) {
		.entry{}
		}
	@media only screen and (max-width: 600px) {
		}

/*----------

　カテゴリー（一覧）ページ

----------*/

/*エントリータイトル*/
.entry .entry_ttl{
    font-size:150%;
    margin-bottom: 0.2rem;
	}
.entry .entry_ttl a{
    text-decoration: none;
	color: inherit;
	}
.entry .entry_ttl a:hover{
    text-decoration: none!important;
	color: #50be50;
	}
/*日付*/
.entry .date{
	display: inline-block;
	font-size: 0.8rem;
	font-weight: 400;
	line-height: 100%;
	text-transform:lowercase;
	margin: 0 0 8px 0;
	}
.entry .tx {
	margin-top: 2rem;
    line-height: 200%;
	}
.entry .tx:after {
	content: " "; 
	display: block;
	clear: both;
	}
	@media only screen and (max-width: 767px) {/* スマホ幅 */
        /*エントリータイトル*/
        .entry .entry_ttl{
            font-size:130%;
            /*padding-bottom: 6px!important;
            margin-bottom: 12px;*/
            }
		.entry .tx{
			margin: 20px 0px 20px 0px;
			padding: 0px;
			}
		}
	@media only screen and (max-width: 520px) {
		.entry .date{
            font-weight: normal;
			}
        /*エントリータイトル*/
        .entry .entry_ttl{
            /*padding-bottom: 15px;*/
            }
		}
.entry .tx a {
	color: #777;
	text-decoration: none;
	}
.entry .tx a:hover {
	color: #777;
	text-decoration: underline;
	}


/* ---------------------------------------------------------------------------------------------

　   「このページを編集する」ボタン

--------------------------------------------------------------------------------------------- */

.postmetadata a{
	margin: 5px 0 50px 0;
	padding: 12px 22px 14px 22px;
	color: #ffffff;
	display: inline-block;
	background-color: #222;
	border-radius: 3px;
    font-family: 'Noto Sans JP', sans-serif;
	text-decoration: none;
	}
.postmetadata a:hover{
	opacity: .8;
	}
	@media only screen and (max-width: 767px) {
			.postmetadata a{
				margin: 10px 0;
				}
			}
	@media only screen and (max-width: 600px) {
			.postmetadata a{
				margin: 5px 0;
				padding: 5px 17px 3px 15px;
				}
			}



/* ---------------------------------------------------------------------------------------------

　   ページネーション スタイル

--------------------------------------------------------------------------------------------- */

.pagenation {
	font-size: 90%;
    margin: 0;
	padding: 0;
	display:block;
	clear:both;text-align: center;
	}
.pagenation:after,
.pagenation ul:after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden;
	}
.pagenation ul {
    margin: 0;
	}
.pagenation li {
    float: left;
    list-style: none outside none;
    margin-right: 1.5rem;
	line-height: 100%;
	}
.pagenation li a {
    border:1px solid #cccccc;
	border-radius: 5px;
	color: #777;
    display: inline;
    padding: 0.5rem 1rem;
    text-decoration: none;
    /*text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);*/
	}
.pagenation li.active a{
	background-color: #cccccc;
	color: #fff;
    cursor: not-allowed;
	}
.pagenation li a:hover {
    background-color: #cccccc;
    color: #FFFFFF;
    opacity: 0.8;
    -webkit-transition-duration: 500ms;
	-moz-transition-duration: 500ms;
	-ms-transition-duration: 500ms;
    -o-transition-duration: 500ms;
    transition-duration: 500ms;
    -webkit-transition-property: all;
	-moz-transition-property: all;
	-ms-transition-property: all;
    -o-transition-property: all;
    transition-property: all;
    -webkit-transition-timing-function: ease;
	-moz-transition-timing-function: ease;
	-ms-transition-timing-function: ease;
    -o-transition-timing-function: ease;
    transition-timing-function: ease;
	}
	@media only screen and (max-width: 650px) {
			.pagenation{
				padding: 10px 20px 40px 0px;
				}
			}






/* ---------------------------------------------------------------------------------------------

　   お問い合わせ　contact

--------------------------------------------------------------------------------------------- */

/*お電話でのお問い合わせ*/
.contact_tel{}

.contact_tel .phone{
    color:#222;
    font-size: 2.8em;
    line-height: 100%;
    margin-top: 5px;
    }
.contact_tel .phone i{
    font-size: 0.75em;
    margin-right: 5px;
    }
.contact_tel .phone a{
    text-decoration: none;
    }

.contact_tel .tx{
    line-height: 100%;
    margin: 3px 0 20px 0;
    }

.contact_tel .btn{
    padding: 24px;
    min-width: 260px;
    width: 50%;
    }
.contact_tel .btn span {
    font-size: 1.1em;
    }


/*メールフォーム でのお問い合わせ*/
.form{}
.form table th{
	padding: 20px;
	width: 30%;
	}
.form table td{
	padding: 20px;
	width: 70%;
}

.form .wpcf7-text,
.form .wpcf7-email,
.form .wpcf7-textarea,
.form .wpcf7-date{
	border:solid 1px #ccc;
	border-radius: 3px;
	padding: 10px 10px;
	font-size: 100%;
	/*width: 100%;*/
	}

.form .wpcf7-select{
	border:solid 1px #ddd;
	border-radius: 3px;
	padding: 5px 10px;
	font-size: 100%;
	/*width: 100%;*/
	}

.select_menu{
	margin-bottom: 1.2rem;
	}

.select_menu .wpcf7-select{
	margin-bottom: 0.5rem;
	}


.form .wpcf7-acceptance .form-submit{
    border:solid 1px #ccc;
    }



.form input.wpcf7-submit{
	background: #fff;
	border: solid 1px #777;
	color: #222!important;
	font-size: 1.3em;
	font-weight: normal;
	border-radius: 50px;
	margin: 30px auto 20px auto;
	padding: 12px 20px;
	width: 50%;
	display: block;
    text-align: center;
	}
.form input.wpcf7-submit:hover{
	background: #777;
	color: #fff!important;
	border: solid 1px #777;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	}
.form input.wpcf7-submit:active{
	background: #777;
	color: #fff;
	}

/*リンク*/
.form a{
	color: #777;
	font-weight: bold;
	text-decoration: underline;
	}
.form a:hover{
	text-decoration: none;
	}

/*必須印*/
.form em{
	background: #d9534f;
	border-radius: 2px;
	color: #fff;
	font-size: 12px;
	font-style: normal;
	font-weight: bold;
	padding: 3px 6px  4px 6px;
	margin-left: 6px;
	}

.form .tiny{
	line-height: 160%!important;
	}
.form .tiny.red{
	font-weight: bold;
	margin: 0!important;
	}



.wpcf7-radio .wpcf7-list-item{
	display: block;
	}



	@media only screen and (max-width: 900px) {
		.form table th{
			width: 20%!important;
			}
		.form table td{
			width: 80%!important;
			}
		}
	@media only screen and (max-width: 767px) {
		.form .radio_btn{
			display: block;
			}
		.form table{
			font-size:0.95em;
			}
		.form table th{
            display: block;
			padding: 15px 5px 5px 5px!important;
			width: 100%!important;
			border-bottom: none!important;
            text-align: left!important;
			}
		.form table th br{
            display: none!important;
			}
		.form table td{
            display: block;
			padding: 5px 5px 15px 5px!important;
			width: 100%!important;
			/*border-bottom:none!important;*/
			}
        .form input.submit_button,
        .form #div_btn input.bt{
            font-size: 1.1em;
            margin: 20px auto;
            padding: 8px 20px;
            width: 90%;
            }
        /*必須印*/
		.form em{
			font-size: 10px;
			margin-left: 2px;
			padding: 2px 4px  2px 4px;
            position: relative;
            top: -2px;
			}
		}





/*------------------------------

　完了画面 -section-

------------------------------*/

.sec__complete{}

.sec_comp__announce{
	text-align: center;
	}

/*-----テキスト ご予約ありがとうございます-----*/
.title__bdr_both{
	position: relative;
	text-align: center;
	color: #222;
	font-weight: bold;
	margin-bottom: 1rem;
	}
.title__bdr_both::before,
.title__bdr_both::after {
	position: relative;
	display: inline-block;
	content: "";
	background: #222;
	width: 1px;
	height: 1rem;
	margin: 0 0.6rem;
	margin-top: 0;
	vertical-align: middle;
	}
.title__bdr_both::before {
	transform: rotate(-35deg);
	}
.title__bdr_both::after {
	transform: rotate(35deg);
	}

/*-----説明文-----*/
.sec_comp__tx{
	font-weight: bold;
	line-height: 170%;
	margin: 1rem 2rem;
	}
	@media only screen and (max-width: 540px) {
		/*--説明文--*/
		.sec_comp__tx br{
			display: none;
			}
		}







/* ---------------------------------------------------------------------------------------------

　   下層ページ ページ上部テンプレート

--------------------------------------------------------------------------------------------- */

/*----- カテゴリーリンク-----*/

/*全体*/
.page_link__wrap{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 2rem;
	}

.page_link__wrap::before{
	content:"";
	display: block;
	width:24%;
	order:1;
	}
.page_link__wrap::after{
	content:"";
	display: block;
	width:24%;
	}

.page_link__wrap .item{
	text-align: center;
	width: 24%;
	margin-bottom: 0.5rem;
	}

.page_link__wrap a{
	display: block;
	border: solid 1px #50be50;
	border-radius: 3px;
	color: #50be50;
	font-size: 90%;
	padding: 0.7rem;
	text-decoration: none;
	}

	@media only screen and (max-width: 900px) {
		.page_link__wrap::after{
			content:"";
			display: block;
			width:32%;
			}
		.page_link__wrap .item{
			width: 32%;
			}
		.page_link__wrap a{
			font-size: 90%;
			padding: 1.1em 0.2em;
			}
        }
	@media only screen and (max-width: 767px) {}
	@media only screen and (max-width: 540px) {
		.page_link__wrap .item{
			width: 49%;
			margin-bottom: 0.3rem;
			}
		.page_link__wrap a{
			font-size: 85%;
			padding: 0.5em 0.5em;
			}
        }
	@media only screen and (max-width: 480px) {
		}
	@media only screen and (max-width: 360px) {
		}
	@media only screen and (max-width: 320px) {
		}








/*----- イメージ・キャッチ -----*/

.page_lead__wrap{
	margin-bottom: 4rem;
	}


.page_lead__wrap .ph{}
.page_lead__wrap .ph img{}

.page_lead__wrap .tag{
	font-size: 90%;
	font-family: "EB Garamond";
	font-weight: normal;
	letter-spacing: 2px;
	}
.page_lead__wrap .tag::after{
	display: block;
	content: '';
	width: 2.8rem;
	height: 1px;
	background: #000;
	margin: 0.75rem 0 2rem 0;
	}

.page_lead__wrap .catch{
	font-size: 140%;
	font-weight: 600;
	line-height: 170%;
	padding: 0.5rem 0;
    margin-bottom: 1.8rem;
	}

.page_lead__wrap .tx{}


	@media only screen and (max-width: 900px) {
		}
	@media only screen and (max-width: 767px) {
		}
	@media only screen and (max-width: 640px) {
		}
	@media only screen and (max-width: 540px) {
		.page_lead__wrap .catch{
			font-size: 120%;
			line-height: 160%;
			}
		}
	@media only screen and (max-width: 480px) {
		}
	@media only screen and (max-width: 360px) {
		}
	@media only screen and (max-width: 260px) {}








.page_desc{
	display: flex;
	padding: 2rem 0;
	}
.page_desc:nth-of-type(odd){/*逆順*/
	flex-direction: row-reverse;
	}

.page_desc .item{
	position: relative;
	width: 52%;
	}
.page_desc .item_wrap{
	width: 85%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
	}

.page_desc .catch{
	font-size: 130%;
	font-weight: 600;
	margin-bottom: 1rem;
	}
.page_desc .tx{
	font-size: 95%;
	line-height: 200%;
	}

.page_desc .ph{
	width: 48%;
	}
.page_desc .ph img{
	margin: 0;
	}

	@media only screen and (max-width: 1020px) {
		.page_desc .item_wrap{
			width: 80%;
			}
		}
	@media only screen and (max-width: 900px) {
		.page_desc{
			display: block;
			padding: 3rem 0;
			}
		.page_desc .item{
			position: inherit;
			width: 92%;
			margin: 0 auto 1rem auto;
			}
		.page_desc .item_wrap{
			width: 100%;
			position: inherit;
			top: inherit;
			left: inherit;
			transform: translateY(0%) translateX(0%);
			-webkit- transform: translateY(0%) translateX(0%);
			}
		.page_desc .ph{
			width: 100%;
			}
		}
	@media only screen and (max-width: 767px) {
		.page_desc{
			padding: 2rem 0;
			}
		}
	@media only screen and (max-width: 540px) {
		.page_desc .catch{
			font-size: 120%;
			}
		}
	@media only screen and (max-width: 480px) {}
	@media only screen and (max-width: 360px) {}
	@media only screen and (max-width: 260px) {}











.page_point{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	}

.page_point .inner{
	width: 31%;
	margin-bottom: 3rem;
	}

.page_point .tag{
	font-family: "EB Garamond";
	font-weight: 400;
	letter-spacing: 1px;
	}
.page_point .point{
	font-size: 85%;
	margin-right: 0.2rem;
	}
.page_point .num{
	font-size: 110%;
	}

.page_point img{}

.page_point .ttl{
	color: #50be50;
	font-size: 115%;
	font-weight: 600;
	line-height: 160%;
	margin-bottom: 0.5rem;
	}

.page_point .tx{
	font-size: 85%;
	line-height: 200%;
	}

	@media only screen and (max-width: 900px) {
		.page_point .inner{
			width: 48.5%;
			}
		}
	@media only screen and (max-width: 767px) {}
	@media only screen and (max-width: 540px) {
		.page_point .inner{
			width: 48%;
			}
		.page_point .ttl{
			font-size: 110%;
			}
		}
	@media only screen and (max-width: 480px) {}
	@media only screen and (max-width: 360px) {}
	@media only screen and (max-width: 260px) {}











.page_bnr{}

.page_bnr .item{
	width: 80%;
	margin: 0 auto 5rem auto;
	}

.page_bnr .item a{
	display: flex;
	text-decoration: none;
	border:solid 1px #ccc;
	line-height: 100%;
	}

.page_bnr .ph{
	width: 300px;
	height: calc(300px - 3vw);
	margin-right: 3rem;
	}
.page_bnr .ph img{
	margin: 0;
	width: auto;
	height: 100%;
	object-fit: cover;
	border-radius: 0;
	}


.page_bnr .ttl{
	margin-bottom: 0.8rem;
	}

.page_bnr .tx{
	width: 70%;
	padding: 3rem 3rem;
	}

.page_bnr .en{
	font-size: 80%;
	letter-spacing: 1px;
	}
.page_bnr .en::before{
	content: '-';
	margin-right: 0.5rem;
	}

.page_bnr .detail{
	margin-top: 1.5rem;
	line-height: 190%;
	}

	@media only screen and (max-width: 1020px) {
		.page_bnr .item{
			width: 92%;
			margin: 0 auto 4rem auto;
			}
		.page_bnr .ph{
			margin-right: 1rem;
			}
		}
	@media only screen and (max-width: 900px) {
		.page_bnr .ph{
			width: 250px;
			height: calc(250px - 3vw);
			}
		.page_bnr .tx{
			padding: 2rem 2rem;
			}
		}
	@media only screen and (max-width: 767px) {
		.page_bnr .detail{
			margin-top: 1rem;
			font-size: 90%;
			}
		.page_bnr .ph{
			width: 220px;
			height: 180px;
			margin-right: 0;
			}
		.page_bnr .tx{
			padding: 1.5rem 2rem;
			}
		}
	@media only screen and (max-width: 600px) {
		.page_bnr .item a{
			display: block;
			text-decoration: none;
			border:solid 1px #ccc;
			line-height: 100%;
			}
		.page_bnr .ph{
			width: 100%;
			margin-bottom: 0.5rem;
			}
		.page_bnr .ph img{
			margin: 0 auto;
			width: 100%;
			height: 200px;
			object-fit: contain;
			}
		.page_bnr .tx{
			width: 100%;
			}
		}
	@media only screen and (max-width: 540px) {}
	@media only screen and (max-width: 480px) {}
	@media only screen and (max-width: 360px) {}
	@media only screen and (max-width: 260px) {}











/* ---------------------------------------------------------------------------------------------

　   ギャラリー 施工例

--------------------------------------------------------------------------------------------- */

/*----------

　ギャラリー 一覧（アーカイブ）ページ

----------*/


/*----------

　ギャラリー 詳細ページ

----------*/
.gallery_wrap{
	margin: 3rem 0 4rem 0;
	}
.sec_gallery a{
	text-decoration: none!important;
	}







/* ---------------------------------------------------------------------------------------------

　  スライダー

--------------------------------------------------------------------------------------------- */

.slider___wrap{
	margin: 0 0 3rem 0;
	}

.thumbnail_slider{
	margin-bottom: 1rem;
	}
.thumbnail {
    position: relative;
	}
.thumbnail_content .slick-slide {
    text-align: center;
    vertical-align: middle;
	}

.thumbnail_content {
    position: relative;
	text-align: center;
	}
.thumbnail_content img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
	border-radius: 3px;
	}



.slick-slider .fa-angle-left {
    position: absolute;
    top: 35%;
    transform: translate(0, -35%);
    left: 1.5rem;
    z-index: 2;
    color: #fff;
    padding: 5px 9px 5px 10px;
    background-color: rgba(0, 0, 0, 0.4);
	transition: .3s;
	}
.slick-slider .fa-angle-right {
    position: absolute;
    top: 35%;
    transform: translate(0, -35%);
    right: 1.5rem;
    z-index: 2;
    color: #fff;
    padding: 5px 9px 5px 10px;
    background-color: rgba(0, 0, 0, 0.4);
	transition: .3s;
	}
.fa-angle-right:hover,
.fa-angle-left:hover {
    opacity: 0.7;
	}

	@media only screen and (max-width: 767px) {
		.slick-slider .fa-angle-left {
			left: 0.5rem;
			}
		.slick-slider .fa-angle-right {
			right: 0.5rem;
			}
		}
	@media only screen and (max-width: 480px) {
		.slick-slider .fa-angle-left {
			left: 0;
			}
		.slick-slider .fa-angle-right {
			right: 0;
			}
		}






.thumbnail_nav___list{
	display: flex;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 10;
	}
.thumbnail_item{
	margin: 0 0.25rem;
	height:100%;
	}
.thumbnail_nav___list img{
	width: 100%;
    height: 150px;
	object-fit: cover;
	}

	@media only screen and (max-width: 767px) {
		.thumbnail_nav___list img{
			height: 110px;
			}
		}
	@media only screen and (max-width: 540px) {
		.thumbnail_nav___list img{
			height: 90px;
			}
		}



/*
.thumbnail_nav{}
.thumbnail_nav___list{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	}
.thumbnail_nav___list::before{
  content:"";
  display: block;
  width:24.5%;
  order:1;
	}
.thumbnail_nav___list::after{
  content:"";
  display: block;
  width:24.5%;
	}

.thumbnail_item{
	width: 24.5%;
	height: 120px;
	margin-bottom: 0.5rem;
	overflow: hidden;
	border-radius: 3px;object-fit: cover;
	object-position: 50% 50%!important;
	transition: .3s;
	}
.thumbnail_item img{
	object-fit:cover;
	border-radius:0!important;
	}
.thumbnail_item:hover{
	opacity: .7;
	}

	@media only screen and (max-width: 767px) {
		.thumbnail_item{
			height: 100px;
			}
		}
	@media only screen and (max-width: 640px) {
		.thumbnail_item{
			height: 85px;
			}
		}
	@media only screen and (max-width: 540px) {
		.thumbnail_item{
			height: 70px;
			}
		}
	@media only screen and (max-width: 480px) {
		.thumbnail_item{
			height: 60px;
			border-radius: 1px;object-fit: cover;
			}
		}
	@media only screen and (max-width: 260px) {}
*/







.dots-wrap {
    display: flex;
    justify-content: center;
	margin: 2.5rem auto;
	}

.dots-wrap li {
    width: 30px;
    height: 2px;
    margin: 0 3px;
    background: #ccc;
    cursor: pointer;
	}

.dots-wrap li:hover,
.dots-wrap li.slick-active {
    background: #000;
	}
.dots-wrap li button {
    display: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
    padding: 0;
    border: none;
    background-color: transparent;
	}

	@media only screen and (max-width: 767px) {
		.dots-wrap li {
			width: 20px;
			margin: 0 2px;
			}
		}
	@media only screen and (max-width: 540px) {}
	@media only screen and (max-width: 480px) {
		.dots-wrap li {
			width: 14px;
			height: 2px;
			}
		}
	@media only screen and (max-width: 360px) {}
	@media only screen and (max-width: 260px) {}













/*スライダー
.gallery_image__main{
	width: auto;
	height: 100%;
	margin: 1.5rem 0;
	text-align: center;
	}
.gallery_image__main span{}
.gallery_image__main img{
	width: 100%;
	height: 65vw;
	object-fit: cover;
	margin: 0 auto;
	}

.gallery_image__nav{
	display: flex;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 10;
	}
.gallery_image__nav span{
	margin: 0 0.25rem;
	height:100%;
	}
.gallery_image__nav img{
	width: 100%;
    height: 150px;
	object-fit: cover;
	}

	@media only screen and (max-width: 767px) {
		.gallery_image__nav img{
			height: 110px;
			}
		}
	@media only screen and (max-width: 540px) {
		.gallery_image__nav img{
			height: 90px;
			}
		}
	@media only screen and (max-width: 480px) {}
	@media only screen and (max-width: 360px) {}
	@media only screen and (max-width: 260px) {}






.slick-next{
	top:40%!important;
	right:1rem!important;
	}
.slick-prev{
	top:40%!important;
	left:1rem!important;
	}
.slick-arrow{
	z-index:2!important;
	}

	@media only screen and (max-width: 767px) {}
	@media only screen and (max-width: 540px) {
		.slick-next{
			right:0.5rem!important;
			}
		.slick-prev{
			left:0.5rem!important;
			}
		}
	@media only screen and (max-width: 480px) {}
	@media only screen and (max-width: 360px) {}
	@media only screen and (max-width: 260px) {}

*/















.gallery_tag__wrap{
	margin-top: 5rem;
	display: flex;
	}

.gallery_tag__header{
	float: left;
	font-family: "EB Garamond";
	font-weight: 400;
	line-height: 120%;
	margin-right: 0.75rem;
	white-space: nowrap;
	}

.gallery_tag__list{}

.gallery_tag__wrap .item{
	display: inline-block;
	float: left;
	font-size: 75%;
	font-family: "EB Garamond";
	font-weight: 400;
	line-height: 170%;
	margin-right: 1.5rem;
	}
.gallery_tag__wrap .item::before{
	content: '#';
	font-size: 150%;
	font-family: "EB Garamond";
	font-weight: 400;
	}

.gallery_tag__wrap a{}

	@media only screen and (max-width: 767px) {}
	@media only screen and (max-width: 540px) {
		.gallery_tag__wrap .item{
			font-size: 95%;
			margin-right: 1.8rem;
			}
		}
	@media only screen and (max-width: 480px) {}
	@media only screen and (max-width: 360px) {}
	@media only screen and (max-width: 260px) {}



/* ---------------------------------------------------------------------------------------------

　   プラン例

--------------------------------------------------------------------------------------------- */

.plan__wrap{}

.plan__wrap .column2{
	
	}

.plan__wrap .inner{
	text-align: center;
	margin-bottom: 4rem;
	}

.plan__wrap .logo{
	margin: 2rem 0 1.5rem 0;
	}

.plan__wrap .logo img{
	width: auto;
	height: 2.5rem;
	}

.plan__wrap .tx{
	line-height: 180%;
	}

.plan__wrap .btn{
	padding: 0.5rem;
	margin-top: 1.5rem;
	}


	@media only screen and (max-width: 767px) {
		.plan__wrap .inner{
			margin-bottom: 2rem;
			}
		}
	@media only screen and (max-width: 540px) {}
	@media only screen and (max-width: 480px) {}
	@media only screen and (max-width: 360px) {}
	@media only screen and (max-width: 260px) {}





/* ---------------------------------------------------------------------------------------------

　   ページ内リンク ズレ補正

--------------------------------------------------------------------------------------------- */

a.anchor{
    display: block;
    padding-top: 4.5rem;
    margin-top: -4.5rem;
	}



/* ---------------------------------------------------------------------------------------------

　   youtube　埋め込み

--------------------------------------------------------------------------------------------- */

.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}





/* ---------------------------------------------------------------------------------------------

　   スタッフ紹介

--------------------------------------------------------------------------------------------- */

.sec_staff{}



/* ------------------------------

　　スタッフ紹介 詳細ページ

------------------------------*/

.staff_detail{}

.staff_detail___wrap{
	position: relative;
	height: 500px;
	width: 100%;
	max-width: 1020px;
	margin: 0 auto 3.5rem auto;
	}


.staff_detail .ph{
	position: absolute;
	height: 500px;
	width: 77%;
	overflow: hidden;
	}
.staff_detail .ph img{
	height: 100%;
	width: auto;
	object-fit: cover;
	}


.staff_detail .tx{
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
	background: #fff;
	width: 32%;
	padding: 2.2rem 2.5rem 2rem 2.5rem;
	line-height: 150%;
	}
.staff_detail .position{
	font-size: 0.9rem;
	margin-bottom: 0.4rem;
	}
.staff_detail .name{
	font-size: 1.6rem;
	margin-right: 0.5rem;
	}
.staff_detail .ruby{
	font-size: 0.9rem;
	letter-spacing: 1px;
	}


.staff_detail .license{
	margin-top: 1.7rem;
	}
.staff_detail .career{
	margin-top: 1rem;
	}

.staff_detail .license .ttl,
.staff_detail .career .ttl{
	font-size: 0.95rem;
	margin-bottom: 0.2rem;
	}

.staff_detail .license .detail,
.staff_detail .career .detail{
	font-size: 0.85rem;
	}

.staff_detail .license span,
.staff_detail .career span{
	display: block;
	}
.staff_detail .license span::before,
.staff_detail .career span::before{
	content: '-';
	font-weight: normal;
	margin-right: 0.35rem;
	}


.staff_detail .comment{
	margin-bottom: 5rem;
	}
	@media only screen and (max-width: 900px) {
		.staff_detail .tx{
			width: 38%;
			padding: 2rem 2.2rem 2rem 2.2rem;
			}
		}
	@media only screen and (max-width: 767px) {
		.staff_detail___wrap{
			position: inherit;
			height: inherit;
			margin-bottom: -2rem;
			}
		.staff_detail .ph{
			position: inherit;
			height: 15rem;
			width: 100%;
			overflow:auto;
			}
		
		.staff_detail .ph img{
			height: auto;
			width: 100%;
			object-fit:cover;
			}

		.staff_detail .tx{
			position: relative;
			right: inherit;
			left: 5%;
			top: -2rem;
			transform: none;
			-webkit- transform: none;
			width: 85%;
			padding: 1.5rem 2.2rem;
			}
		
		.staff_detail .name{
			display: inline;
			}
		.staff_detail .ruby{
			display: inline;
			}
		.staff_detail .license,
		.staff_detail .career{
			display: flex;
			}

		}
	@media only screen and (max-width: 540px) {
		.staff_detail .name{
			font-size: 1.4rem;
			}
		.staff_detail .ruby{
			font-size: 0.85rem;
			}

		.staff_detail .license .ttl,
		.staff_detail .career .ttl{
			font-size: 0.8rem;
			font-weight: bold;
			margin-right: 0.5rem;
			}
		.staff_detail .license .detail,
		.staff_detail .career .detail{
			font-size: 0.8rem;
			}
		}
	@media only screen and (max-width: 480px) {}
	@media only screen and (max-width: 360px) {}
	@media only screen and (max-width: 260px) {}














/* ------------------------------

　　スタッフ紹介 一覧

------------------------------*/

.sec_staff__wrap{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	}
.sec_staff__wrap::after{
	content:"";
	display: block;
	width:30%;
	}

.sec_staff__wrap .item{
	width: 30%;
	margin-bottom: 5rem;
	text-align: center;
	}
.sec_staff__wrap a{
	text-decoration: none;
	}


.sec_staff__wrap .ph{
	position: relative;
	width: 100%;
	padding-top: 100%;
	border-radius: 50%;
    overflow: hidden;
	margin-bottom: 1rem;
	}
.sec_staff__wrap .ph img{
    position: absolute;
    top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
    object-fit: cover;
	width: 100%;
    height: 100%;
	}

/*役職名*/
.sec_staff__wrap .position{
	font-size: 0.9rem;
	line-height: 120%;
	letter-spacing: 1px;
	padding: 0.75rem 0;
	}

/*名前*/
.sec_staff__wrap .name{
	font-size: 1.4rem;
	line-height: 120%;
	letter-spacing: 1px;
	margin: 0.5rem 0 0 0;
	}

/*ふりがな*/
.sec_staff__wrap .ruby{
	font-size: 0.8rem;
	line-height: 120%;
	letter-spacing: 1px;
	margin: 0.4rem 0 0.75rem 0;
	}

.sec_staff__wrap .readmore{}
.sec_staff__wrap .readmore a{
	font-size: 0.9rem;
	margin: 0!important;
	}

	@media only screen and (max-width: 900px) {
		.sec_staff__wrap .item{
			width: 46%;
			margin-bottom: 3rem;
			}
		.sec_staff__wrap .ph{
			margin-bottom: 0.5rem;
			}
		}
	@media only screen and (max-width: 767px) {}
		@media only screen and (max-width: 540px) {
		.sec_staff__wrap .item{
			margin-bottom: 2rem;
			}
		.sec_staff__wrap .ph{
			margin-bottom: 0;
			}
		/*役職名*/
		.sec_staff__wrap .position{
			font-size: 0.8rem;
			padding: 0.85rem 0 0.4rem 0;
			}
		/*名前*/
		.sec_staff__wrap .name{
			font-size: 1.2rem;
			margin: 0.1rem 0 0 0;
			}
			/*ふりがな*/
		.sec_staff__wrap .ruby{
			font-size: 0.7rem;
			margin: 0.2rem 0 0.75rem 0;
			}
		}
	@media only screen and (max-width: 480px) {}
	@media only screen and (max-width: 360px) {}
	@media only screen and (max-width: 260px) {}





