@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');
}
@font-face{
	font-family:'Noto Sans JP';
	font-style:normal;
	font-weight:900;
	font-display:swap;
	src:url(../fonts/NotoSansCJKjp/NotoSansCJKjp-Black.woff2) format('woff2'),
		 url(../fonts/NotoSansCJKjp/NotoSansCJKjp-Black.woff) format('woff'),
		 url(../fonts/NotoSansCJKjp/NotoSansCJKjp-Black.otf) format('opentype');
}
@font-face {
	font-family: 'Noto Serif Japanese';
	font-style: normal;
	font-weight: 400;
	src: url(../fonts/NotoSerifCJKjp/NotoSerifCJKjp-Regular.woff2) format('woff2'),
		 url(../fonts/NotoSerifCJKjp/NotoSerifCJKjp-Regular.woff) format('woff'),
		 url(../fonts/NotoSerifCJKjp/NotoSerifCJKjp-Regular.otf) format('opentype');
}
@font-face {
	font-family: 'Noto Serif Japanese';
	font-style: normal;
	font-weight: 700;
	src: url(../fonts/NotoSerifCJKjp/NotoSerifCJKjp-Bold.woff2) format('woff2'),
		 url(../fonts/NotoSerifCJKjp/NotoSerifCJKjp-Bold.woff) format('woff'),
		 url(../fonts/NotoSerifCJKjp/NotoSerifCJKjp-Bold.otf) format('opentype');
}

/*==============================
	基本設定
==============================*/
body{
	color:#000;
	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;
}

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;}
.fSerif{font-family:'Noto Serif Japanese', serif;}
.f900{font-weight: 900;}
.f500{font-weight: 500;}
.f200{font-weight: 200;}

/*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;
	text-decoration: none;
}

/*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){
	body{min-width: 0;}
	.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;';
}

/*-----------------------------------------------
	contents
-----------------------------------------------*/
.wrapper1600{
	max-width: 1600px;
	width: 96%;
	margin: 0 auto;
}
.wrapper1400{
	max-width:1400px;
    width: 92%;
	margin:0 auto;
}
.wrapper1200{
	max-width:1200px;
	width: 90%;
	margin:0 auto;
}
@media only screen and (max-width:767px){
	.wrapper1600,
	.wrapper1400,
	.wrapper1200{
        width:100%;
    }
}


/*-----------------------------------------------
	header
-----------------------------------------------*/
#header{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	width: 94%;
	max-width: 1800px;
	margin: 0 auto;
	padding-top: 60px;
	z-index: 1;
}
#header .inner{
	display: -webkit-flex;
	display: flex;
	align-items: center;
	-webkit-align-items: center;
}
#header .txt{
	border-left: solid 1px #fff;
	padding-left: 20px;
	margin-left: 20px;
	font-size: 15px;
	line-height: 22px;
	letter-spacing: 0.5px;
	font-weight: 200;
	color: #fff;
}
#header.fBlack .txt{
	color: #000;
	border-color: #000;
}
@media only screen and (max-width:767px){
	#header{
		padding-top: 15px;
	}
	#header .inner{
		display: block;
	}
	#header .logo img{
		width: 145px;
		height: auto;
	}
	#header .txt{
		border: none;
		padding: 10px 0 0;
		margin: 0;
		font-size: 11px;
		line-height: 1;
		letter-spacing: 0;
	}
}

/*-----------------------------------------------
	footer
-----------------------------------------------*/
#footer{
	height: 60px;
	padding-top: 24px;
	background: #3f3a37;
}
#footer .txtCopy{
	font-size: 12px;
	color: #FFF;
	text-align: center;
	letter-spacing: 1px;
}
@media only screen and (max-width:767px){
	#footer {
		height: 50px;
		padding: 18px 0;
	}
	#footer .txtCopy {
		font-size: 11px;
		letter-spacing: 0;
	}
}