@charset "utf-8";

@font-face{
	font-family:'Noto Sans JP';
	font-style:normal;
	font-weight:200;
	font-display:swap;
	src:url(../fonts/NotoSansCJKjp/NotoSansCJKjp-Light.woff2) format('woff2'),
		 url(../fonts/NotoSansCJKjp/NotoSansCJKjp-Light.woff) format('woff'),
		 url(../fonts/NotoSansCJKjp/NotoSansCJKjp-Light.otf) format('opentype');
}
@font-face{
	font-family:'Noto Sans JP';
	font-style:normal;
	font-weight:400;
	font-display:swap;
	src:url(../fonts/NotoSansCJKjp/NotoSansCJKjp-Regular.woff2) format('woff2'),
		 url(../fonts/NotoSansCJKjp/NotoSansCJKjp-Regular.woff) format('woff'),
		 url(../fonts/NotoSansCJKjp/NotoSansCJKjp-Regular.otf) format('opentype');
}
@font-face{
	font-family:'Noto Sans JP';
	font-style:normal;
	font-weight:500;
	font-display:swap;
	src:url(../fonts/NotoSansCJKjp/NotoSansCJKjp-Medium.woff2) format('woff2'),
		 url(../fonts/NotoSansCJKjp/NotoSansCJKjp-Medium.woff) format('woff'),
		 url(../fonts/NotoSansCJKjp/NotoSansCJKjp-Medium.otf) format('opentype');
}
@font-face{
	font-family:'Noto Sans JP';
	font-style:normal;
	font-weight:700;
	font-display:swap;
	src:url(../fonts/NotoSansCJKjp/NotoSansCJKjp-Bold.woff2) format('woff2'),
		 url(../fonts/NotoSansCJKjp/NotoSansCJKjp-Bold.woff) format('woff'),
		 url(../fonts/NotoSansCJKjp/NotoSansCJKjp-Bold.otf) format('opentype');
}

/*==============================
	基本設定
==============================*/
body{
	color:#1d1d1d;
	font-size:12px;
	font-family:'Noto Sans JP', sans-serif;
	margin:0;
	padding:0;
	text-align:left;
	background:#fff;
	-webkit-text-size-adjust:100%;
	position:relative;
	word-break:break-all;
	min-width: 1240px;
}
@media only screen and (max-width:767px){
	body{
		min-width: auto;
	}
}

body *, body *::before, body *::after{box-sizing:border-box;}
img{vertical-align:bottom;}
h1,h2,h3,h4,h5,h6{font-weight:normal;}
th{
	font-weight:normal;
	text-align:left;
}

/*font layout*/
.fBold{font-weight:bold;}
.f900{font-weight: 900;}
.f500{font-weight: 500;}
.fBran{
	font-family: brandon-grotesque, sans-serif;
	font-style: normal;
}

a{text-decoration: none;}
/*rollover*/
.ro a:hover,
a.ro:hover,
a .ro:hover{ filter:alpha(opacity=80);opacity:0.8; }
.ro a,
a.ro,
a .ro{
	-webkit-transition: all 0.2s ease-out;
	-moz-transition: all 0.2s ease-out;
	-ms-transition: all 0.2s ease-out;
	transition: all 0.2s ease-out;
}

/*rollover(brightnessによる変化)*/
.brt a:hover,a.brt:hover,a .brt:hover{ -webkit-filter: brightness(1.1);filter: brightness(1.1); }
.brt a,
a.brt,
a .brt{
	-webkit-transition: all 0.2s ease-out;
	-moz-transition: all 0.2s ease-out;
	-ms-transition: all 0.2s ease-out;
	transition: all 0.2s ease-out;
}

/*ro無効化*/
.ro .no_ro a:hover,
.ro a.no_ro:hover{ filter:alpha(opacity=100);opacity:1; }

/*========================================
	レスポンシブ用(不要な場合は削除)
========================================*/
.spOnly,
.brSp,
.imgSp{
	display:none;
}
@media only screen and (max-width:767px){
	.spNone,
	.brPc,
	.imgPc{
		display:none;
	}
	.spOnly{
		display:block;
	}
	.brSp,
	.imgSp{
		display:inline;
	}
	.imgR{
		width:100%;
		height:auto;
	}
}

/*-----------------------------------------------
	imgCover
-----------------------------------------------*/
/* imgCover */
.imgCover,
.imgCover2{
	position:relative;
}
.imgCover img{
	width:auto;
	height:auto;
	max-width:100%;
	max-height:100%;
	display:block;
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	margin:auto;
}
.imgCover2 img {
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	object-fit:cover;
	font-family:'object-fit:cover;';
}

/*-----------------------------------------------
	container
-----------------------------------------------*/
.wrapper1600{
	width: 1600px;
	max-width: calc(100% - 40px);
	margin: 0 auto;
}
.wrapper1280{
	width: 1280px;
	max-width: calc(100% - 40px);
	margin: 0 auto;
}
@media only screen and (max-width:767px){
	.wrapper1600,
	.wrapper1280{
		width: 100%;
		max-width: none;
	}
	.spWrapper{
		width: 92%;
		margin: 0 auto;
	}
}

/*-----------------------------------------------
	header
-----------------------------------------------*/
#header .wrapper{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	height: 110px;
}
#header .boxLogo,
#header .boxBtn{
	display: -webkit-flex;
	display: flex;
	align-items: center;
	-webkit-align-items: center;
}
#header .boxLogo .logo01,
#header .boxLogo .logo02{
	margin-left: 30px;
}
@media only screen and (max-width:767px){
	#header .wrapper{
		height: 60px;
	}
	#header .boxLogo{
		-webkit-justify-content: center;
		justify-content: center;
		width: 100%;
	}
	#header .boxLogo .logo01,
	#header .boxLogo .logo02{
		margin: 0 13px
	}
	#header .boxLogo .logo01 img{
		width: 113px;
		height: auto;
	}
	#header .boxLogo .logo02 img{
		width: 82px;
		height: auto;
	}
	#header .boxBtn{
		display: none;
	}
}

/*-----------------------------------------------
	footer
-----------------------------------------------*/
#footer{
	background: #363636;
	text-align: center;
	margin-top: 45px;
	padding: 100px 0;
}
#footer .txt{
	padding: 40px 0 35px;
	font-size: 16px;
	font-weight: 200;
	line-height: 40px;
	letter-spacing: 1px;
	color: #FFF;
}
#footer .snsList,
#footer .inner{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	align-items: flex-end;
	-webkit-align-items: flex-end;
}
#footer .snsList li{
	padding: 0 10px;
}
#footer .inner{
	padding: 70px 0 100px;
}
#footer .inner .btn{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	align-items: center;
	-webkit-align-items: center;
	width: 400px;
	height: 100px;
	border-radius: 4px;
	background: #FFF;
	margin: 0 20px;
}
#footer .inner .txtIn{
	position: relative;
	font-size: 16px;
	line-height: 26px;
	letter-spacing: 1px;
	color: #1d1d1d;
}
#footer .inner .txtIn::after{
	content: "";
	position: absolute;
	top: -5px;
    right: -18px;
	width: 12px;
	height: 12px;
	background: center / 12px auto no-repeat url(../img/icoBlank.gif);
}
#footer .txtCopy{
	font-size: 13px;
	font-weight: 200;
	color: #FFF;
	font-family:Verdana,'Droid Sans','Noto Sans JP','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3','メイリオ', 'Meiryo','ＭＳ ゴシック',sans-serif;
}
@media only screen and (max-width:767px){
	#footer{
		padding: 30px 0 100px;
	}
	#footer .logo img{
		width: 140px;
		height: auto;
	}
	#footer .txt {
		padding: 20px 0 25px;
		font-size: 12px;
		font-weight: 200;
		line-height: 2;
		letter-spacing: 0px;
	}
	#footer .inner{
		display: block;
		padding: 25px 0;
	}
	#footer .inner .btn{
		width: 200px;
		height: 50px;
		margin: 5px auto;
	}
	#footer .inner .txtIn {
		font-size: 12px;
		line-height: 1.4;
		letter-spacing: 1px;
	}
	#footer .inner .txtIn::after{
		background-size: 8px auto;
		right: -14px;
	}
	#footer .txtCopy{
		font-size: 11px;
	}
}
/*-----------------------------------------------
	cmnBtn
-----------------------------------------------*/
.cmnBtn{
	display: block;
	width: 560px;
	height: 100px;
	border-radius: 50px;
	padding-top: 40px;
	margin: 0 auto;
	background: 91% center / 10px 16px no-repeat url(../img/icoArrow.png) #000;
}
.cmnBtn .txtIn{
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 0.5px;
	color: #FFF;
}
@media only screen and (max-width:767px){
	.cmnBtn{
		width: 300px;
		height: 60px;
		padding-top: 12px;
		background: 94% center / 8px auto no-repeat url(../img/icoArrow.png) #000;
	}
	.cmnBtn .txtIn{
		font-size: 13px;
		line-height: 1.4;
	}
}
/*-----------------------------------------------
	secFixedNav
-----------------------------------------------*/
.secFixedNav{
	display: none;
}
@media only screen and (max-width:767px){
	.secFixedNav{
		display: block;
		position: fixed;
		bottom: 0;
		left: 0;
		right: 0;
		z-index: 100;
		transform: translateY(100%);
		-webkit-transform: translateY(100%);
		transition: all 0.2s ease-out;
		-webkit-transition: all 0.2s ease-out;
	}
	.secFixedNav.on{
		transform: none;
		-webkit-transform: none;
	}
	.secFixedNav .wrapper{
		display: -webkit-flex;
		display: flex;
		text-align: center;
	}
	.secFixedNav .btn{
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: center;
		justify-content: center;
		align-items: center;
		-webkit-align-items: center;
		height: 70px;
	}
	.secFixedNav .btn01{
		width: 25%;
		background: #363636;
	}
	.secFixedNav .btn02{
		width: 37.5%;
	}
	.secFixedNav .bgYellow{
		background: #ffde00;
		color: #1d1d1d;
	}
	.secFixedNav .bgOrange{
		background: #ff9100;
		color: #FFF;
	}
	.secFixedNav .txt01{
		padding-bottom: 5px;
		font-size: 11px;
		letter-spacing: 1px;
	}
	.secFixedNav .txt02{
		font-size: 14px;
		letter-spacing: 1px;
	}
}