@charset "utf-8";
body,div,dl,dt,dd,ul,ol,li,p,h1,h2,h3,h4,h5,h6,th,td,pre,code,blockquote,form,fieldset,legend,input,textarea,figcaption,figure{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,caption,cite,code,dfn,em,th,var{font-style:normal;font-weight:normal}li{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit}input,textarea,select{*font-size:100%}legend{color:#FFF}hr{display:none}img{vertical-align:bottom}select,input,button,textarea{font-size:99%}table{font-size:inherit;font:100%;border-collapse:collapse;border-spacing:0}pre,code,kbd,samp,tt{font-family:monospace;*font-size:108%;line-height:100%}.hd{display:block;width:0;height:0;overflow:hidden}.cf:before,.cf:after{content:"";display:table}.cf:after{clear:both}.cf{*zoom:1}article,aside,details,figcaption,figure,footer,header,hgroup,hr,menu,nav,section,main{display:block}*{margin:0;padding:0;box-sizing:border-box;max-height:999999px;outline:none;}*:focus{outline:none;}button{background-color:transparent;border:none;cursor:pointer;outline:none;padding:0;}
body{
	-webkit-text-size-adjust:100%;
	background-color:#fff;
	color:var(--main-black-color);
	font-family:"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",meiryo,"ＭＳ Ｐゴシック",osaka,sans-serif;
	font-size:16px;
	font-weight:normal;
	word-wrap:break-word;
}
.glyph{
	font-family:sans-serif;
}
:root{
	--main-black-color:#323232;
	--bg-gray-color:#f2f2f2;
	--content-width:1088px;
}

a{color:var(--main-black-color)}
a:hover{text-decoration:none;}
.ah{transition:opacity .3s ease;}
.ah:hover{opacity:.8;}
::selection{
	background:var(--main-black-color);
	color:#fff;
}
::-moz-selection{
	background:var(--main-black-color);
	color:#fff;
}
@media screen and (max-width:768px){
	:root{
		--content-width:90%;
	}

	html{
		font-size:62.5%;
	}
	body{
		font-size:10px;
		font-size:1rem;
		min-width:320px;
	}
	.pc{display:none;}
	.ah:hover{opacity:1;}
	.is-modal{
		overflow: hidden;
	}
}
@media screen and (min-width:769px){
	.sp{display:none;}
}
.os{
	font-family:'Oswald', sans-serif;
}
#fullWrap{
	width:100%;
	min-width:1200px;
	position:relative;
	min-height:100vh;
	padding-top:80px;
}
@media screen and (max-width: 768px){
	#fullWrap {
		min-width:100%;
		padding-top:13.4375vw;
		overflow: hidden;
	}
}
.header{
	position:absolute;
	pointer-events:none;
	left:0;
	top:0;
	right:0;
	bottom:0;
	z-index:10000;
}
.header__inner{
	position:sticky;
	left:0;
	top:0;
	height:80px;
	pointer-events:auto;
}
.header__content{
	padding-left:40px;
	width:100%;
	height:80px;
	background:var(--main-black-color);
	display:flex;
	justify-content:space-between;
	align-items:center;
}
.header__content--logo{
	height:60px;
}
.header__content--logo img{
	display:block;
	height:60px;
	width:auto;
	image-rendering:-webkit-optimize-contrast;
}
.header__nav{
	display:flex;
	align-items:center;
}
.header__navLists{
	display:flex;
	padding-right:8px;
}
.header__navList{
	height:26px;
	margin-right:32px;
}
.header__navList a{
	display:block;
	height:26px;
	line-height:26px;
	color:#FFF;
	text-decoration:none;
	position:relative;
}
.header__navList a:before{
	content:'';
	content:"";
	display:block;
	position:absolute;
	top:50%;
	left:-8px;
	transform:translateY(-50%);
	width:6px;
	height:3px;
	background-color:#175dc3;
	transition:width .2s ease;
}
.header__navList a:hover:before,
.header__navList a.active:before{
	width:calc(100% + 16px);
}
.header__navList a.soon{
	pointer-events:none;
	color:#666;
}
.header__navList a .en{
	font-size:18px;
	font-weight:700;
}
.header__navList a .ja{
	display:none;
}
.header__navToHome{
	width:140px;
	height:80px;
}
.header__navToHome a{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	align-content:center;
	height:80px;
	background:#999;
	text-decoration:none;
	color:#FFF;
}
.header__navToHome a .en{
	font-size:18px;
	font-weight:700;
	display:block;
	height:25px;
	line-height:25px;
	padding-right:27px;
	background:url(../img/common/icon_tohome.svg) no-repeat right center / 16px auto;
}
.header__navToHome a .ja{
	width:100%;
	text-align:center;
	font-size:10px;
	line-height:15px;
}
.menuBtn {
	display: none;
}
@media screen and (max-width: 768px){
	.menuBtn {
		display: block;
		position: fixed;
		right:0;
		top:0;
		z-index:20000;
	}
	.menuBtn a {
		display: block;
		height:13.4375vw;
		width:13.4375vw;
		position: relative;
	}
	.menuBtn a:before {
		content:'';
		width:50%;
		height:25%;
		position:absolute;
		border-top:2px solid #FFF;
		border-bottom:2px solid #FFF;
		left:50%;
		top:50%;
		transform:translate(-50%,-50%);
		transition:all 0.2s ease;
	}
	.menuBtn a:after {
		content:'';
		position: absolute;
		width:50%;
		height:2px;
		background:#FFF;
		left:50%;
		top:50%;
		transform: translate(-50%,-50%);
		transition:all 0.2s ease;
	}
	.menuBtn a.is-active:before {
		height:2px;
		border:none;
		background:#FFF;
		transform: translate(-50%,-50%) rotate(45deg);
	}
	.menuBtn a.is-active:after {
		transform: translate(-50%,-50%) rotate(-45deg);
	}
	.header {
		position: fixed;
		overflow: auto;
		background:rgba(50,50,50,.95);
		pointer-events: auto;
		transform:translateX(100%);
		transition:all 0.3s ease;
	}
	.header.is-active {
		transform:translateX(0);
	}
	.header__inner{
		position:absolute;
		left:0;
		top:0;
		height:auto;
		width:100%;
	}
	.header__content{
		padding:15.625vw 5vw;
		width:100%;
		height:auto;
		display:block;
		background:transparent;
	}
	.header__content--logo{
		height:18.75vw;
	}
	.header__content--logo img{
		height:18.75vw;
		width:auto;
		margin:0 auto;
	}
	.header__nav{
		display:block;
		padding:12.5vw 0;
	}
	.header__navLists{
		display:block;
		padding-right:0;
	}
	.header__navList{
		height:auto;
		margin-right:0;
		padding-bottom:3vw;
	}
	.header__navList a{
		display:block;
		height:auto;
		line-height:1;
		color:#FFF;
		margin-bottom:9vw;
	}
	.header__navList a:before {
		display: none;
	}
	.header__navList a .en{
		font-size:2rem;
		width:100%;
		text-align: center;
		display: block;
		margin-bottom:2vw;
	}
	.header__navList a .ja{
		display: block;
		font-size:1.4rem;
		text-align:center;
		line-height:1.5;
	}
	.header__navToHome{
		width:100%;
		height:22vw;
	}
	.header__navToHome a{
		height:22vw;
	}
	.header__navToHome a .en{
		font-size:2rem;
		height:8vw;
		line-height:8vw;
		padding-right:7vw;
		background:url(../img/common/icon_tohome.svg) no-repeat right center / 5vw auto;
	}
	.header__navToHome a .ja{
		font-size:1.4rem;
		line-height:2rem;
	}
}
.breadcrumb{
	height:40px;
	background:var(--main-black-color);
}
.breadcrumb__lists{
	height:40px;
	width:var(--content-width);
	margin:0 auto;
	display:flex;
	align-items:center;
	display:flex;
}
.breadcrumb__list{
	flex-shrink:0;
	padding-right:16px;
	position:relative;
	display:flex;
	align-items:center;
}
.breadcrumb__list:not(:last-child):after{
	position:absolute;
	content:'';
	width:16px;
	height:10px;
	right:0;
	top:50%;
	margin-top:-6px;
	background:url(../img/common/arrow_r-w.svg) no-repeat center center / contain;
}
.breadcrumb__list a{
	text-decoration:none;
	color:#FFF;
	font-size:10px;
	line-height:1;
}
@media screen and (max-width: 768px) {
	.breadcrumb{
		position: fixed;
		left:0;
		top:0;
		height:13.4375vw;
		z-index:5000;
		width:100%;
		overflow: auto;
	}
	.breadcrumb__lists{
		height:13.4375vw;
	}
	.breadcrumb__list {
		padding-right:6vw;
	}
	.breadcrumb__list:last-child {
		padding-right:16.4375vw;
	}
	.breadcrumb__list:not(:last-child):after{
		width:6vw;
		height:3vw;
		top:50%;
		margin-top:-1.5vw;
	}
	.breadcrumb__list a{
		font-size:1.2rem;
	}
}
.general__btn{
	width:288px;
	height:57px;
	margin:0 auto;
}
.general__btn a{
	display:flex;
	position:relative;
	justify-content:center;
	align-items:center;
	text-decoration:none;
	color:#FFF;
	font-weight:700;
	background:#144185;
	box-shadow:2px 2px 0 0 rgb(0 0 0 / 10%);
	height:57px;
	font-size:14px;
}
.general__btn a:before{
	content:'';
	position:absolute;
	top:50%;
	right:20px;
	display:block;
	width:6px;
	height:10px;
	margin-top:-5px;
	background:url(../img/common/arrow_r-w.svg) no-repeat center center / contain;
}
.black__btn{
	width:288px;
	height:57px;
	margin:0 auto;
}
.black__btn a{
	display:flex;
	position:relative;
	justify-content:center;
	align-items:center;
	text-decoration:none;
	color:#FFF;
	font-weight:700;
	background:var(--main-black-color);
	box-shadow:2px 2px 0 0 rgb(0 0 0 / 10%);
	height:57px;
	font-size:14px;
}
.black__btn a:before{
	content:'';
	position:absolute;
	top:50%;
	right:20px;
	display:block;
	width:6px;
	height:10px;
	margin-top:-5px;
	background:url(../img/common/arrow_r-w.svg) no-repeat center center / contain;
}
.white__btn{
	width:288px;
	height:57px;
	margin:0 auto;
}
.white__btn a{
	display:flex;
	position:relative;
	justify-content:center;
	align-items:center;
	text-decoration:none;
	color:#144185;
	font-weight:700;
	background:#FFF;
	box-shadow:2px 2px 0 0 rgb(0 0 0 / 10%);
	height:57px;
	font-size:14px;
}
.white__btn a:before{
	content:'';
	position:absolute;
	top:50%;
	right:20px;
	display:block;
	width:6px;
	height:10px;
	margin-top:-5px;
	background:url(../img/common/arrow_r-b.svg) no-repeat center center / contain;
}
@media screen and (max-width: 768px){
	.general__btn,
	.black__btn,
	.white__btn{
		width:80%;
		height:16vw;
	}
	.general__btn a,
	.black__btn a,
	.white__btn a{
		height:16vw;
		font-size:1.4rem;
	}
	.general__btn a:before,
	.black__btn a:before,
	.white__btn a:before{
		top:50%;
		right:5vw;
		width:1.875vw;
		height:3.125vw;
		margin-top:-1.5677vw;
	}
}
.share{
	padding:30px 0;
}
.share__lists{
	display:flex;
	justify-content:center;
	align-items:flex-start;
	padding-right:30px;
}
.share__lists li{
	margin:0 5px;
}
.footer{}
.footer__top{
	background:var(--main-black-color);
}
.footer__nav{
	width:1200px;
	margin:0 auto;
	height:63px;
	display:flex;
	justify-content:center;
	align-items:center;
}
.footer__navLists{
	display:flex;
}
.footer__navLists li{
	display:block;
	margin:0 16px;
}
.footer__navLists li a{
	display:block;
	font-size:12px;
	color:#FFF;
	text-decoration:none;
}
.footer__snsLists{
	margin-left:44px;
	display:flex;
}
.footer__snsLists li{
	margin-right:32px;
}
.footer__snsLists li a{
	width:20px;
	height:20px;
	display:block;
}
.footer__snsList--twitter{
	background:url(../img/common/sns_tw_w.svg) no-repeat center center / contain;
}
.footer__snsList--youtube{
	background:url(../img/common/sns_yt_w.svg) no-repeat center center / contain;
}
.footer__snsList--instagram{
	background:url(../img/common/sns_ig_w.svg) no-repeat center center / contain;
}
.footer__bottom{
	position: relative;
	padding:24px;
	display:flex;
	justify-content:center;
}
.footer__bottom--policy {
	position: absolute;
	left:50px;
	display: flex;
	align-items: center;
	top:0;
	bottom:0;
	font-size:10px;
}
.footer__bottom--policy a{
	text-decoration: underline;
	color:#323232;
}
.footer__bottom--policy a:hover {
	text-decoration: none;
}
@media screen and (max-width:768px){
	.footer__bottom--policy {
		position:static;
		padding-bottom:1em;
		justify-content: center;
		width:100%;
		font-size:1.2rem
	}
}
.footer__bottom--copyright{
	font-size:10px;
	margin:0 10px;
}
@media screen and (max-width: 768px){
	.footer__nav{
		width:80%;
		padding:7vw 0;
		height:auto;
		flex-wrap: wrap;
		justify-content:flex-start;
		align-items:flex-start;
	}
	.footer__navLists{
		width: 100%;
		flex-wrap: wrap;
	}
	.footer__navLists li{
		display:block;
		width:50%;
		margin: 0
	}
	.footer__navLists li a{
		font-size:1.4rem;
		height:4rem;
		display: flex;
		align-items: center;
	}
	.footer__snsLists{
		margin-left:auto;
		margin-right: auto;
		padding-top:3vw;
		padding-bottom: 3vw;
	}
	.footer__snsLists li{
		margin-right:10vw;

	}
	.footer__snsLists li a{
		width:6vw;
		height:6vw;
	}
	.footer__bottom{
	position: relative;
		padding:7vw 2vw;
		display:flex;
		justify-content:center;
		flex-wrap: wrap;
	}
	.footer__bottom--copyright{
		font-size:1.2rem;
		margin:0;
		text-align: center;
	}
}
.subpageHead{
	height:220px;
	background:url(../img/common/sub_hero.jpg) no-repeat center center / cover;
}
.subpageHead__inner{
	width:var(--content-width);
	margin:0 auto;
	height:220px;
	display:flex;
	align-items:center;
}
.subpageHead__inner--title{
	display:flex;
	align-items:center;
	color:#FFF;
	line-height:1;
}
.subpageHead__inner--title .en{
	font-size:70px;
	padding-bottom:10px;
}
.subpageHead__inner--title .ja{
	padding-left:20px;
	white-space:nowrap;
}
@media screen and (max-width: 768px){
	.subpageHead{
		height:36.25vw;
	}
	.subpageHead__inner{
		height:36.25vw;
	}
	.subpageHead__inner--title{
		flex-wrap: wrap;
	}
	.subpageHead__inner--title .en{
		font-size:4.2rem;
		padding-bottom:10px;
	}
	.subpageHead__inner--title .ja{
		width:100%;
		padding-left:0;
		font-size:1.45rem;
		line-height:1.8;
		white-space:normal;
	}
}