@charset "utf-8";
/*
Theme Name: ADteaser 2023
Author: adgraphy
Author URI: http://adgraphy.jp
Version: 1.0
License: Adgraphy all rights reserved.
*/


/*------------------------------------------------
reset
--------------------------------------------------*/
html, body, header, footer, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, address , abbr, acronym, aress, article, aside, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp, section,
small, strike, strong, sub, sup, tt, var,
b, u, i, center, nav,
dl, dt, dd , ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
button, hr{
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size:inherit;
	background: transparent;
	font-weight:inherit;  
	text-decoration:none;
	font-family:inherit;
	color:inherit;
	box-sizing:border-box;
	font-style:normal;
	text-align:left;
	list-style: none;
	position:relative;
	line-height:inherit;
	word-break: break-all;
	letter-spacing: inherit;
	text-shadow: inherit;
}
html{
	font-size: 10px;
	word-break: normal;
	-webkit-text-size-adjust: 100%;
}
body{
	font-size: 1.8rem;
	position: relative;
	letter-spacing: 0.05em;
	line-height: 1;
}
body.scrollnone{
	overflow:hidden !important;
	height:100% !important;
}
img{
	vertical-align:bottom;
	max-width:100%;
    height: auto;
}
img.maxWidthNone{
	max-width:none;
}
p,th,td{
	line-break: strict;
    line-height: 2;
	word-break: normal !important;
	word-wrap: break-word;
}
a,
.pointer,
button,
input[type="submit"]{
    cursor: pointer;
    transition: opacity 0.3s ease;
	text-decoration: none;
}
a:hover,
.pointer:hover,
button:hover,
input[type="submit"]:hover{
    opacity: 0.6;
}
p > a{
	text-decoration: underline;
}
main{
	overflow: hidden;
}
.nolink{
	pointer-events: none;
}
@media only screen and (max-width: 810px) {
	a:hover,
	.pointer:hover,
	button:hover,
	input[type="submit"]:hover{
		opacity: 1;
		transition: none;
	}
}

/*------------------------------------------------
common
--------------------------------------------------*/
.absolute{
	position:absolute;
}
.absolute img,
img.absolute{
	max-width:none;
}
.flexSpace{
	display: -webkit-box; /*Android4.3*/
	display: -moz-box;    /*Firefox21*/
	display: -ms-flexbox; /*IE10*/
	display: -webkit-flex; /*PC-Safari,iOS8.4*/
	display: flex;
	-ms-flex-wrap:wrap;/*IE10*/
	-webkit-flex-wrap:wrap;/*PC-Safari,iOS8.4*/
	flex-wrap:wrap;
	-webkit-box-pack: justify; /*Android4.3*/
	-moz-box-pack: justify;    /*Firefox21*/
	-ms-flex-pack: justify;    /*IE10*/
	-webkit-justify-content: space-between; /*PC-Safari,iOS8.4*/
	justify-content: space-between;
}
.flexStart{
	display: -webkit-box; /*Android4.3*/
	display: -moz-box;    /*Firefox21*/
	display: -ms-flexbox; /*IE10*/
	display: -webkit-flex; /*PC-Safari,iOS8.4*/
	display: flex;
	-ms-flex-wrap:wrap;/*IE10*/
	-webkit-flex-wrap:wrap;/*PC-Safari,iOS8.4*/
	flex-wrap:wrap;
}
.flexCenter{
	display: -webkit-box; /*Android4.3*/
	display: -moz-box;    /*Firefox21*/
	display: -ms-flexbox; /*IE10*/
	display: -webkit-flex; /*PC-Safari,iOS8.4*/
	display: flex;
	-ms-flex-wrap:wrap;/*IE10*/
	-webkit-flex-wrap:wrap;/*PC-Safari,iOS8.4*/
	flex-wrap:wrap;
	-webkit-box-pack: center; /*Android4.3*/
	-moz-box-pack: center;    /*Firefox21*/
	-ms-flex-pack: center;    /*IE10*/
	-webkit-justify-content: center; /*PC-Safari,iOS8.4*/
	justify-content: center;
}
.flexEnd{
	display: -webkit-box; /*Android4.3*/
	display: -moz-box;    /*Firefox21*/
	display: -ms-flexbox; /*IE10*/
	display: -webkit-flex; /*PC-Safari,iOS8.4*/
	display: flex;
	-ms-flex-wrap:wrap;/*IE10*/
	-webkit-flex-wrap:wrap;/*PC-Safari,iOS8.4*/
	flex-wrap:wrap;
	-webkit-justify-content:flex-end;         /* Safari etc. */
	-ms-justify-content:flex-end;         /* IE10        */
	justify-content:flex-end;
}
.flexReverse{
	flex-direction: row-reverse;
}
.flexSpace.center,
.flexStart.center,
.flexEnd.center,
.flexCenter.center{
	align-items: center;
}
img.flLeft{
	float: left;
	max-width: none;
}
img.flRight{
	float: right;
	max-width: none;
}
.clearfix:after {
	content: "";
	display: block;
	clear: both;
}
.container1080{
	width: 1080px;
	margin-left: auto;
	margin-right: auto;
}
.container1280{
	width: 1280px;
	margin-left: auto;
	margin-right: auto;
	max-width: calc(100% - 40px);
	min-width: 1080px;
}
.objectfit{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.section{
	padding: 96px 0;
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: cover;
}
.section .image:after{
	content: "※写真はイメージです。";
	font-size: 1.6rem;
	display: block;
	background-color: #000;
	opacity: 0.6;
	color: #FFF;
	padding: 6px 16px;
	position: absolute;
	right: 0;
	bottom: -45px;
}
.scroll_fadein{
	opacity: 0;
	visibility: hidden;
}
@keyframes fadein{
	0%{
		opacity: 0;
	}
	100%{
		opacity: 1;
	}
}
body.scroll .scroll_fadein{
	opacity: 1;
	visibility: visible;
	animation: fadein 0.3s ease;
}
.boxshadow01{
	box-shadow: 8px 8px 6px rgba(0,0,0,0.7);
}

/*------------------------------------------------
margin
--------------------------------------------------*/
.mt8{ margin-top: 8px;}
.mt48{ margin-top: 48px;}
.mt64{ margin-top: 64px;}


/*------------------------------------------------
font
--------------------------------------------------*/
.fz16{ font-size: 1.6rem;}
.fz20{ font-size: 2rem;}
.fz28{ font-size: 2.8rem;}
.fz32{ font-size: 3.2rem;}
.lh150{ line-height: 1.5;}
.taCenter{ text-align: center;}


/*------------------------------------------------
header
--------------------------------------------------*/
#header{
	width: 100%;
	height: calc(100svh - 116px);
}
#header .image{
	width: 100%;
	height: 100%;
}
#header h1{
	position: absolute;
	width: 300px;
	height: 300px;
	padding: 50px;
	background-color: rgba(255,255,255,0.7);
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	z-index: 999;
}
#searchPanel{
	position: fixed;
	z-index: 999;
	top: calc(100svh - 116px);
	left: 0;
	height: 116px;
	background-color: #DEDAD2;
	padding-top: 15px;
	width: 100%;
}
.searchPanel_top a{
	display: inline-block;
	background: #B7282E url("lib/images/arrow_right01.png") no-repeat calc(100% - 16px) center;
	background-size: 7px;
	color: #FFF;
	line-height: 48px;
	padding: 0 36px;
	margin-left: 24px;
	text-align: center;
}
.searchPanel_bottom .tel{
	display: inline-block;
	margin: 0 10px;
	background: url("lib/images/icon_tel.png") no-repeat left center;
	background-size: 20px;
	padding-left: 24px;
	vertical-align: middle;
}
/*------------------------------------------------
content
--------------------------------------------------*/
#sec01{
	min-height: 867px;
}
#sec01::before{
	content: "";
	display: block;
	background: linear-gradient(to bottom, rgba(0,0,0,0.7),rgba(0,0,0,0));
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
#sec01 .image{
	width: 592px;
	margin-right: 0;
	margin-left: auto;
}
#sec02{
	background-size: cover;
}
#caution{
	padding: 24px 0;
}



/*------------------------------------------------
footer
--------------------------------------------------*/
#footer{
	padding: 96px 0 192px;
}
.footer_logo{
	width: 200px;
	margin: 0 auto;
}
#footer address span + span{
	display: inline-block;
	margin-left: 1em;
}
.totop{
	position: fixed;
	right: 20px;
	bottom: 136px;
	width: 50px;
	height: 50px;
	z-index: 999;
}
.totop a{
	display: block;
	width: 100%;
	height: 100%;
	background-size: 100%;
	text-indent: -9999px;
}
#sec01 *{
	color: #FFF;
}
#sec03{
	background-color: #DEDAD2;
}


/*------------------------------------------------
tab
--------------------------------------------------*/
.tab_inline,
.tab_block,
.tab_flex{
	display: none;
}
@media screen and (max-width: 810px){
	.tab_inline{ display: inline;}
	.tab_block{ display: block;}
	.tab_flex{ display: flex;}
	.tab_none{ display: none;}
	img{ width: 100%;}
	.container1080,
	.container1280{
		width: 100%;
		padding-left: 40px;
		padding-right: 40px;
		min-width: 0;
		max-width: none;
		margin-left: 0;
		margin-right: 0;
	}
	#header{
		height: calc(100svh - 326px);
	}
	#searchPanel{
		position: relative;
		top: auto;
		left: auto;
		height: auto;
		padding: 40px 0;
	}
	.searchPanel_top a{
		display: block;
		width: 100%;
		margin-top: 24px;
		margin-left: 0;
	}
	.searchPanel_bottom{
		margin-top: 24px;
	}
	.searchPanel_bottom .tel{
		display: inline-block;
		margin-top: 24px;
		margin-bottom: 24px;
	}
	.section{
		padding-top: 48px !important;
		padding-bottom: 96px !important;
		background-size: cover;
		background-position: center top;
	}
	.section p{
		text-align: left;
	}
	#sec01 .image{
		width: 100%;
		margin-left: 0;
		margin-right: 0;
		margin-top: 24px;
	}
}

/*------------------------------------------------
sp
--------------------------------------------------*/
.sp_inline,
.sp_block,
.sp_flex{
	display: none;
}
@media screen and (max-width: 480px){
	body{
		font-size: 1.5rem;
	}
	.fz28{ font-size: 2.4rem;}
	.sp_inline{ display: inline;}
	.sp_block{ display: block;}
	.sp_flex{ display: flex;}
	.sp_none{ display: none;}
	.container1080,
	.container1280{
		padding-left: 20px;
		padding-right: 20px;
	}
	#header{
		height: calc(100svh - 354px);
	}
	#header h1{
		width: 50%;
		height: auto;
		padding: 20px;
	}
	.searchPanel_top a{
		padding: 10px 0;
		font-size: 2.4rem;
		line-height: 1.4;
		text-align: center;
	}
	.section{
		min-height: 0 !important;
	}
	.fz32{
		font-size: 2.8rem;
	}
	.spPlan{
		position: fixed;
		z-index: 9999;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 60px;
	}
	.spPlan a{
		display: block;
		width: 100%;
		height: 60px;
		line-height: 56px;
		background-color: #B7282E;
		color: #FFF;
		text-align: center;
	}
	.spPlan a:before,
	.spPlan a:after{
		content: "";
		display: inline-block;
		height: 60px;
		vertical-align: top;
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 100%;
	}
	.spPlan a:before{
		background-image: url("lib/images/spPlan_calender.png");
		width: 22px;
		margin-right: 5px;
	}
	.spPlan a:after{
		background-image: url("lib/images/arrow_right01.png");
		width: 7px;
		margin-left: 10px;
	}
	.totop{
		bottom: 70px;
		right: 10px;
	}
	#footer address p span{
		display: block;
		text-align: center;
		margin-left: 0;
	}
	#footer address p br{
		display: none;
	}



	
	
	
	
	
	
	
	
	
	
}

