/* CSS Document */

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@500;700&family=Barlow+Condensed:wght@400;600&family=Shippori+Mincho:wght@500&display=swap');

/*
72ポイント＝96ピクセル
3pt=4px
9pt=12px
10.5pt=14px
12pt=16px
13.5pt=18px
15pt=20px
*/

/*
横幅
1280~			:PC
1000~1280	:PC
375~1000	:スマホ
	 ~375		:スマホ
*/
html,.font_sizebase{font-size:12pt;}
@media screen and (max-width: 999px) {
	html{}
}
html *{
	/*
	background-position:left top;
	background-repeat:no-repeat;
	*/
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	word-break: break-all;
	/*
	line-height:normal;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	*/
}
body {
	margin: 0px;
	padding: 0px;
	font-size:100%;
	font-family: 'Noto Sans JP','游ゴシック', YuGothic, 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, sans-serif;
	line-height:normal;
	/* overflow-x: hidden; */
}
body,.col_base{color:#333;}
body > div[align=center]{
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}
h1,h2,h3,h4,h5,h6,p,form,hr{
	margin: 0px;
	padding: 0px;
}
span{display: inline-block;}
a{color:inherit;text-decoration:none;}
a:hover{
	/* color:#FF0; */
	/* text-decoration: underline; */
}
a img{border:none;}
.bright:hover,.bright:hover img{
	/*
	filter:alpha(opacity=70);
	-moz-opacity:0.70;
	opacity:0.70;
	
	filter: brightness(105%) contrast(105%);
	*/
	-webkit-filter: brightness(115%);
  -moz-filter: brightness(115%);
  -o-filter: brightness(115%);
  -ms-filter:brightness(115%);
  filter: brightness(115%);
}
.bright.BN110:hover,.bright.BN110:hover img{
	-webkit-filter: brightness(110%);
  -moz-filter: brightness(110%);
  -o-filter: brightness(110%);
  -ms-filter:brightness(110%);
  filter: brightness(110%);
}
.bright.BN105:hover,.bright.BN105:hover img{
	-webkit-filter: brightness(105%);
  -moz-filter: brightness(105%);
  -o-filter: brightness(105%);
  -ms-filter:brightness(105%);
  filter: brightness(105%);
}
.bright:hover > * img{
	-webkit-filter:none;
  -moz-filter:none;
  -o-filter:none;
  -ms-filter:none;
  filter:none;
}
ul,li{
	margin: 0px;
	padding: 0px;
	list-style-type: none;
}
ul:after,
ul::after{clear:both;}
hr{
	/* border-top:solid 1px rgba(0,0,0,0.25); */
	border-top:solid 1px #C8C8C8;
	border-bottom:none;
	border-left:none;
	border-right:none;
	margin:1em auto;
	padding:0;
}
hr.dashline{
	border-top:dashed 1px rgba(0,0,0,0.5);
	margin:3em auto;
}
img{max-width:100%;min-width:10px;display:block;}
img[src*=".svg"],svg{width: 100%;}
.anchor{
	position:absolute;
	top:-80px;
	left:0;
}
/*
@media screen and (max-width: 999px) {
	.anchor{top:-92px;}
}
*/

/* ----- */

svg[data-name="arrow-hmenu"]{}
svg[data-name="arrow-hmenu"] .cls-1{
	fill:none;
	stroke:#333;
	stroke-linecap:round;
	stroke-miterlimit:10;
	stroke-width:2px;
}
header:not(.bg_clear) *:hover > svg[data-name="arrow-hmenu"] .cls-1{stroke:#00a4da;}
header.bg_clear svg[data-name="arrow-hmenu"] .cls-1{stroke:#fff;}
svg[data-name="icon-mail"]{}
svg[data-name="icon-mail"] .cls-1{fill:#333;}
header:not(.bg_clear) *:hover > svg[data-name="icon-mail"] .cls-1{fill:#00a4da;}
header.bg_clear svg[data-name="icon-mail"] .cls-1{fill:#fff;}

/* ----- */

.H_head{min-height:80px;}

header{
	background-color: rgba(255,255,255,1);
	position: fixed;
	top:0;
	left:0;
	width:100%;
	z-index: 1000;
	padding: 0 30px;
}
header.bg_clear{
	background-color: rgba(255,255,255,0);
	color:#FFF;
}
header > *.H_head{
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	z-index: 2;
}
header .logo{
	display: block;
	background-image: url(../images/common/logo_wh.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
}
header .logo img{height:40px;}
header.bg_clear .logo img{opacity: 0;}
header .menu{
	display: flex;
	margin-left: auto;
	font-size: 14px;
}
header .menu li{
	position: relative;
	margin-right: 0.5em;
}
header .menu li a{
	display: flex;
	padding: 0.25em 1em;
}
header:not(.bg_clear) .menu li a:hover{color:#00a4da;}
header .menu li a svg{
	width:1em;
	margin-left: 0.5em;
}
header .menu li .pop{
	position: absolute;
	top:100%;
	left:0;
	width:100%;
	transform: scaleY(0);
	transform-origin: center top;
	display: flex;
	flex-direction: column;
}
header .menu li:hover .pop{transform: scaleY(1);}
header .menu li:hover .pop a{margin-top: 1px;}
header:not(.bg_clear) .menu li .pop a{background-color: rgba(255,255,255,0.9);}
header .contact{
	display: flex;
	justify-content: space-between;
	align-items: center;
	border: solid 1px #333;
	width:130px;
	font-size: 12px;
	padding: 0.5em;
}
header.bg_clear .contact{border-color:#fff;}
header .contact > div{margin: auto;}
header .contact svg{
	width:auto;
	height:1em;
	margin-right: 0.5em;
}
header:not(.bg_clear) .contact:hover{color:#00a4da;}
header:not(.bg_clear) .contact:hover{border-color:#00a4da;}
@media screen and (min-width: 1000px) {
	header .menubtn,
	header .accbox{display: none;}
}
@media screen and (max-width: 999px) {
	header{padding-right: 0;}
	header.active .logo img{opacity: 0;}
	header .menu,
	header .contact{display: none;}
	header .menubtn{
		flex-direction: column;
		cursor: pointer;
		display: flex;
		justify-content: center;
    align-items: center;
		min-width: 80px;
		height:80px;
	}
	header .menubtn > *{
		width:38px;
		height:28px;
		position: relative;
	}
	header .menubtn > *,
	header .menubtn span{
		-webkit-transition: 0.15s ease, background-color 0.3s;
		-moz-transition: 0.15s ease, background-color 0.3s;
		-o-transition: 0.15s ease, background-color 0.3s;
		-ms-transition: 0.15s ease, background-color 0.3s;
		transition: 0.15s ease, background-color 0.3s;
	}
	header .menubtn span{
		position: absolute;
		left: 0;
		right: 0;
		margin:auto;
		display:block;
		width: 100%;
		height: 2px;
		background-color: #333;
	}
	header.bg_clear .menubtn span,
	header.active .menubtn span{background-color: #fff;}
	header .menubtn span:nth-of-type(1){
		top: 0;
		bottom:100%;
	}
	header .menubtn span:nth-of-type(2){
		top: 0;
		bottom: 0;
		opacity:1;
	}
	header:not(.active) .menubtn span:nth-of-type(2){
		right: 50%;
    width: 75%;
	}
	header .menubtn span:nth-of-type(3){
		top:100%;
		bottom: 0;
	}
	header:not(.active) .menubtn span:nth-of-type(3){
		right: 100%;
    width: 50%;
	}
	header.active .menubtn span:nth-of-type(1){
		bottom: 0;
 		-webkit-transform:rotate(45deg);
 		transform:rotate(45deg);
	}
	header.active .menubtn span:nth-of-type(2){
		opacity:0;
	}
	header.active .menubtn span:nth-of-type(3){
		top: 0;
 		-webkit-transform:rotate(-45deg);
 		transform:rotate(-45deg);
	}
	header .accbox{
		position: absolute;
		top:0;
		left:0;
		width:100%;
		height:100vh;
		max-height:100vh;
		overflow: auto;
		transform: scaleY(0);
		transform-origin: center top;
		-webkit-transition: 0.25s ease, background-color 0.5s;
		-moz-transition: 0.25s ease, background-color 0.5s;
		-o-transition: 0.25s ease, background-color 0.5s;
		-ms-transition: 0.25s ease, background-color 0.5s;
		transition: 0.25s ease, background-color 0.5s;
		display: flex;
		flex-direction: column;
		background-image: url(../images/common/bg-spmenu.png);
		background-position: center top;
		background-repeat: no-repeat;
		background-size: cover;
		padding: 80px 30px 0;
		/*
		background-blend-mode: multiply;
		*/
		color:#fff;
	}
	header.active .accbox{transform: scaleY(1);}
	header .tel{
		border-top: solid 1px #fff;
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 25px 0;
	}
	header .tel a{
		display: flex;
		align-items: center;
		font-size: 200%;
	}
	header .tel a img{
		width:52px;
		margin-right: 8px;
	}
}

/* モーション関連 */
header.motion_start{
	-webkit-transition:background-color 0.6s ease , color 0.6s ease;
	-moz-transition:background-color 0.6s ease , color 0.6s ease;
	-o-transition:background-color 0.6s ease , color 0.6s ease;
	-ms-transition:background-color 0.6s ease , color 0.6s ease;
	transition:background-color 0.6s ease , color 0.6s ease;
}
header.motion_start svg > *{
	-webkit-transition:fill 0.6s ease , stroke 0.6s ease;
	-moz-transition:fill 0.6s ease , stroke 0.6s ease;
	-o-transition:fill 0.6s ease , stroke 0.6s ease;
	-ms-transition:fill 0.6s ease , stroke 0.6s ease;
	transition:fill 0.6s ease , stroke 0.6s ease;
}
header.motion_start .logo img{
	-webkit-transition:opacity 0.6s ease;
	-moz-transition:opacity 0.6s ease;
	-o-transition:opacity 0.6s ease;
	-ms-transition:opacity 0.6s ease;
	transition:opacity 0.6s ease;
}
header.motion_start .contact{
	-webkit-transition:border 0.6s ease;
	-moz-transition:border 0.6s ease;
	-o-transition:border 0.6s ease;
	-ms-transition:border 0.6s ease;
	transition:border 0.6s ease;
}
header .menu li .pop{
	-webkit-transition:transform 0.15s ease;
	-moz-transition:transform 0.15s ease;
	-o-transition:transform 0.15s ease;
	-ms-transition:transform 0.15s ease;
	transition:transform 0.15s ease;
}

.c_box{padding: 0 25px;}
@media screen and (max-width: 999px) {
	.c_box{padding: 0 30px;}
}

.pan{}
.pan > div{
	padding: 80px 0 54px;
	font-size: 75%;
	text-align: left;
	color:#969696;
}
.pan .arrow{
	display: inline-block;
	padding: 0 0.25em;
}
@media screen and (max-width: 999px) {
	.pan > div{
		padding: 1rem 0 1rem;
	}
}

.c_subt{
	display: flex;
	justify-content: center;
	align-items: center;
	font-style: italic;
}
.c_subt.white{color:#fff;}
.c_subt > *{
	display: flex;
	flex-direction: column;
	align-items: center;
}
.c_subt.left > *,
.c_subt.left_full > *{align-items: flex-start;}
.c_subt.left_full{
	justify-content: flex-start;
}
.c_subt.left_full.andline{
	border-bottom: solid 1px #E3E3E3;
	padding-bottom: 1rem;
	margin-bottom: 1rem;
}
.c_subt h1{font-size: 48px;}
.c_subt h2{font-size: 36px;}
.c_subt .en{font-size: 18px;}
.c_subt h1 + .en{
	font-size: 20px;
	margin: 0.25em 0;
}
.c_subt:not(.white) .en{color:#00a4da;}
/*
.b_menu .c_subt .en{
	margin: 0.5em 0;
	font-size: 20px;
}
*/
.c_subt hr{
	width:50px;
	border-top:solid 3px #00a4da;
	margin: 12px 0 0;
}
.c_subt h1 ~ hr{margin-top: 16px;}
.c_subt.white hr{border-color: #fff;}
@media screen and (max-width: 999px) {}

.c_subt2{
	font-size: 20px;
	padding-bottom: 10px;
	margin-bottom: 10px;
	border-bottom: solid 1px #E3E3E3;
	text-align: left;
}

.c_arrow_link{
	display: inline-flex;
	border-bottom: solid 1px #333;
	padding: 0.25em 0.5em;
}
.c_arrow_link.white{
	color:#fff;
	border-color:#fff;
}

.ptitle_set{margin-bottom: 100px;}
.ptitle_set .bg{
	position: relative;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	z-index: 1;
}
.ptitle_set .bg > *[class*="_vanish"]{
	position: absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	z-index: -2;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.ptitle_set .bg.top,
.ptitle_set .bg.top > *[class*="_vanish"]{background-position: center top;}
.ptitle_set img{
	position: absolute;
	top: -100px;
	right: 0;
	width:230px;
	z-index: -1;
	mix-blend-mode: multiply;
}
.ptitle_set .dark{background-color: rgba(0,0,0,0.50);}
.ptitle_set .Wbase{
	margin-right: 0!important;
	min-height:350px;
	display: flex;
	justify-content: center;
	align-items: center;
}
@media screen and (min-width: 1000px) {
	.ptitle_set{padding-right: calc((100% - 950px)/2);}
}
@media screen and (max-width: 999px) {
	.ptitle_set{margin-bottom: 50px;}
	.ptitle_set img{
		width:100px;
		top: -45px;
		right: 30px;
	}
	.ptitle_set .Wbase{min-height: 240px;}
}

.c_tbl1{
	width:100%;	
	border-top:solid 1px #E3E3E3;
	border-collapse: collapse;
}
.c_subt + .c_tbl1{margin-top: 30px;}
.c_tbl1 tr > *{
	border-bottom:solid 1px #E3E3E3;
	padding-top: 1em;
	padding-bottom: 1em;
	text-align: left;
	vertical-align: top;
}
.c_tbl1 th{color:#00A1D7;}
.c_tbl1.th_colK th{color: inherit;}
@media screen and (min-width: 1000px) {
	.c_tbl1 th{
		background-color: rgba(0,164,218,0.10);
		width:10em;
		padding-left: 2em;
	}
	.c_tbl1.th7 th{width:7em;}
	.c_tbl1.th7_5 th{width:7.5em;}
	.c_tbl1 td{padding-left: 4em;}
	.c_tbl1.td_pad2 td{padding-left: 2em;}
}
@media screen and (max-width: 999px) {
	.c_tbl1 tr{
		display: flex;
		flex-direction: column;
		align-items: flex-start;
	}
	.c_tbl1 tr > *{padding: 0.5em;}
	.c_tbl1 th{
		border-bottom: none;
		padding-bottom: 0;
	}
	.c_tbl1 td{
		width:100%;
		padding-top: 0;
	}
}

.b_menu{
	display: flex;
	justify-content: space-between;
	background-color: #000;
}
.b_menu > *{
	flex-grow: 1;
	position: relative;
	z-index: 2;
	display: flex;
	overflow: hidden;
	min-height: 300px;
}
.b_menu .bg{
	position: absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	z-index: -1;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	opacity: 0.5;
	-webkit-transition:transform 0.6s ease;
	-moz-transition:transform 0.6s ease;
	-o-transition:transform 0.6s ease;
	-ms-transition:transform 0.6s ease;
	transition:transform 0.6s ease;
}
.b_menu a[href*="company."] .bg{background-image: url(../images/bmenu/company.jpg);}
.b_menu a[href*="business."] .bg{background-image: url(../images/bmenu/business.jpg);}
.b_menu a[href*="recruit."] .bg{background-image: url(../images/bmenu/recruit.jpg);}
.b_menu a:hover .bg{transform: scale(1.1);}
.b_menu .text{
	width:100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
@media screen and (min-width: 1000px) {
	.b_menu > *{width:50%;}
	.b_menu .text{max-width: 475px;}
	/*
	.b_menu > *:nth-of-type(1) .bg{background-position: right center;}
	.b_menu > *:nth-of-type(2) .bg{background-position: left center;}
	*/
	.b_menu > *:nth-of-type(1) .text{margin-left: auto;}
	.b_menu > *:nth-of-type(2) .text{margin-right: auto;}
}
@media screen and (max-width: 999px) {
	.b_menu{flex-direction: column;}
}

footer{margin-top: auto;}
footer .bg > *{
	background-image: url(../images/common/foot-bg-smoke-pc.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
footer .bg > * > *{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	min-height: 450px;
}
footer .pagetop{
	width:100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 1em 0;
}
footer .pagetop img{
	width:0.75em;
	margin-bottom: 0.25em;
}
footer .menu,
header .accbox ul{
	display: flex;
	justify-content: space-between;
	text-align: left;
}
footer .menu li,
header .accbox ul li{
	display: flex;
	flex-direction: column;
	font-size: 14px;
}
footer .menu li h4,
header .accbox ul li h4{
	font-size: 1rem;
	font-weight: normal;
	border-bottom: solid 1px #FFF;
	padding-bottom: 6px;
	margin-bottom: 4px;
	min-width: 10em;
}
footer .menu li h4 ~ div,
header .accbox ul li h4 ~ div{
	margin-top: 6px;
	padding-left: 1em;
	display: flex;
}
footer .menu li h4 ~ div > *:nth-child(1),
header .accbox ul li h4 ~ div > *:nth-child(1){
	width:1.25em;
	min-width: 1.25em;
}
footer .info{
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-top: solid 1px #FFF;
	padding: 30px 0;
}
footer .info .logo img{height:46px;}
footer .info .text{
	text-align: left;
	font-size: 14px;
}
footer .info .tel{
	font-size: 36px;
}
footer .copy{
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 20px;
	font-size: 75%;
}
@media screen and (max-width: 999px) {
	footer .bg > *{
		background-image: url(../images/common/foot-bg-smoke-sp.png);
		/* min-height: 1050px; */
	}
	footer .menu,
	header .accbox ul{
		flex-direction: column;
    align-items: center;
	}
	footer .menu li,
	header .accbox ul li{margin-bottom: 30px;}
	footer .menu{margin: 1em auto;}
	footer .menu li{min-height: 4em;}
	footer .info{
		flex-direction: column;
		align-items: flex-start;
		margin: auto;
	}
	footer .info .text{margin-top: 1.5rem;}
	footer .info .tel{margin-top: 1rem;}
}


/* 横幅下限 */
body > div[align=center],
header,
footer{min-width:375px;}
body > div[align=center]{overflow-x: hidden;}


/* ----- */

.pc_vanish{}
.sp_vanish{}
.im_vanish{display:none!important;}
.pc_br_del{}
.sp_br_del{}
.vanish_branch{}
.vanish_branch_onoff{}
@media screen and (min-width: 1000px) {
	.pc_vanish,
	.pc_br_del br,
	.pc_div_del div,
	.vanish_branch img[src*="-sp."],
	.vanish_branch_onoff img[src*="-sp."]{display:none!important;}
}
@media screen and (max-width: 999px) {
	.sp_vanish,
	.sp_br_del br,
	.sp_div_del div,
	.vanish_branch img[src*="-pc."],
	.vanish_branch_onoff img:not([src*="-sp."]){display:none!important;}
}
.v_hidden{visibility:hidden;}

.motion,
.motion.chain_child > *{
	-webkit-transition: 0.6s ease;
	-moz-transition: 0.6s ease;
	-o-transition: 0.6s ease;
	-ms-transition: 0.6s ease;
	transition: 0.6s ease;
}
.motion:not(.moved),
.motion.chain_child:not(.moved) > *{
	opacity:0;
}
.motion.normal:not(.moved),
.motion.normal.chain_child:not(.moved) > *{
	transform: translateY(30px);
}
.show{
	transform:translateX(0)!important;
	transform:translateY(0)!important;
	filter:alpha(opacity=100)!important;
	-moz-opacity:1!important;
	opacity:1!important;
}

.W100per{width:100%;}
.Wbase{
	width:100%;
	max-width:1000px;
	margin: auto;
}
.Wbase.W780{max-width:780px;}
.Wbase.W950{max-width:950px;}
.Wbase.W1180{max-width:1180px;}
.Wbase.W1280{max-width:1280px;}
@media screen and (max-width: 999px) {
}

.mgnLRAuto{margin-left:auto; margin-right:auto;}
.mgnAuto{margin:auto;}
.sp_mgnLRAuto,
.sp_mgnAuto{}
@media screen and (max-width: 999px) {
	.sp_mgnLRAuto{margin-left:auto; margin-right:auto;}
	.sp_mgnAuto{margin:auto;}
}

.fontP050{font-size:50%;}
.fontP060{font-size:60%;}
.fontP070{font-size:70%;}
.fontP075{font-size:75%;}
.fontP080{font-size:80%;}
.fontP087{font-size:87.75%;}
.fontP090{font-size:90%;}
.fontP100{font-size:100%;}
.fontP110{font-size:110%;}
.fontP115{font-size:115%;}
.fontP120{font-size:120%;}
.fontP125{font-size:125%;}
.fontP130{font-size:130%;}
.fontP140{font-size:140%;}
.fontP150{font-size:150%;}
.fontP160{font-size:160%;}
.fontP170{font-size:170%;}
.fontP175{font-size:175%;}
.fontP180{font-size:180%;}
.fontP190{font-size:190%;}
.fontP200{font-size:200%;}
.fontP225{font-size:225%;}
.fontP250{font-size:250%;}
.fontP300{font-size:300%;}
.fontP400{font-size:400%;}
.sp_fontP050{}
.sp_fontP060{}
.sp_fontP070{}
.sp_fontP075{}
.sp_fontP080{}
.sp_fontP087{}
.sp_fontP090{}
.sp_fontP100{}
.sp_fontP110{}
.sp_fontP115{}
.sp_fontP120{}
.sp_fontP125{}
.sp_fontP130{}
.sp_fontP140{}
.sp_fontP150{}
.sp_fontP160{}
.sp_fontP170{}
.sp_fontP175{}
.sp_fontP180{}
.sp_fontP190{}
.sp_fontP200{}
.sp_fontP250{}
.sp_fontP300{}
@media screen and (max-width: 999px) {
	.sp_fontP050{font-size:50%;}
	.sp_fontP060{font-size:60%;}
	.sp_fontP070{font-size:70%;}
	.sp_fontP075{font-size:75%;}
	.sp_fontP080{font-size:80%;}
	.sp_fontP087{font-size:87.75%;}
	.sp_fontP090{font-size:90%;}
	.sp_fontP100{font-size:100%;}
	.sp_fontP110{font-size:110%;}
	.sp_fontP115{font-size:115%;}
	.sp_fontP120{font-size:120%;}
	.sp_fontP125{font-size:125%;}
	.sp_fontP130{font-size:130%;}
	.sp_fontP140{font-size:140%;}
	.sp_fontP150{font-size:150%;}
	.sp_fontP160{font-size:160%;}
	.sp_fontP170{font-size:170%;}
	.sp_fontP175{font-size:175%;}
	.sp_fontP180{font-size:180%;}
	.sp_fontP190{font-size:190%;}
	.sp_fontP200{font-size:200%;}
	.sp_fontP225{font-size:225%;}
	.sp_fontP250{font-size:250%;}
	.sp_fontP300{font-size:300%;}
}

.font_W80{transform:scale(0.80,1);margin:0 -0.1em;}

.font_weight100{font-weight:100;}
.font_thin{font-weight:normal;}
.font_bold{font-weight:bold;}
.font_gothic{
	/* font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; */
	font-family:"ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.font_min{
	/* font-family:"ＭＳ Ｐ明朝","細明朝体","ヒラギノ明朝 Pro W3",serif; */
	font-family:"ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}
.font_meiryo{font-family:"メイリオ", Meiryo, sans-serif;}
.font_kakugo{font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;}
.font_yugo{font-family:"游ゴシック体", "Yu Gothic", YuGothic,"メイリオ", sans-serif;}
.font_barlow{
	font-family: 'Barlow Condensed', sans-serif;
	font-weight: 400;
}
.font_barlow.bold{
	font-weight: 600;
}
.font_min_shippori{
	font-family: 'Shippori Mincho', serif;
	font-weight: 500;
}

.LH100,.LH100 *{line-height:100%;}
.LH125,.LH125 *{line-height:125%;}
.LH133,.LH133 *{line-height:133%;}
.LH150,.LH150 *{line-height:150%;}
.LH175,.LH175 *{line-height:175%;}
.LH200,.LH200 *{line-height:200%;}
.LH_normal,.LH_normal *{line-height:normal;}
.LH_inherit,.LH_inherit *{line-height:inherit;}
@media screen and (max-width: 999px) {
	.sp_LH100,.sp_LH100 *{line-height:100%;}
	.sp_LH150,.sp_LH150 *{line-height:150%;}
	.sp_LH200,.sp_LH200 *{line-height:200%;}
}

.LH150.mgnTmn{margin-top:-0.25em;}
.LH175.mgnTmn{margin-top:-0.375em;}
.LH200.mgnTmn{margin-top:-0.5em;}
/*
.LH150.mgnTmn{margin-top:-0.125em;}
.LH200.mgnTmn{margin-top:-0.25em;}
*/
.LS0_1em{letter-spacing:0.1em; margin-right:-0.1em;}
.LS0_25em{letter-spacing:0.25em; margin-right:-0.25em;}
.LS0_5em{letter-spacing:0.5em; margin-right:-0.5em;}
.LS1em{letter-spacing:1em; margin-right:-1em;}

.indent_mn0_5np{
	text-indent:-0.5em;
}
.indent_mn{
	text-indent:-1em;
	padding-left:1em;
}
.indent_mn1_25{
	text-indent:-1.25em;
	padding-left:1.25em;
}

.dpB{display:block;}
.dpI{display:inline;}
.dpIB{display:inline-block;}
.dpN{display:none;}
.dpF{display:flex;}
@media screen and (max-width: 999px) {
	.sp_dpIB{display:inline-block;}
	.sp_dpB{display:block;}
}

.floatL,
.floatL_pc{float:left;}
.floatR,
.floatR_pc{float:right;}
.clear{clear:both;}
@media screen and (max-width: 999px) {
	.floatL_pc,
	.floatR_pc{float:none;}
	.floatL_sp{float:left;}
	.floatR_sp{float:right;}
}

.textL{text-align:left;}
.textR{text-align:right;}
.textC{text-align:center;}
.textJ{text-align:justify;
text-align-last:justify;
text-justify:distribute;}
.sp_textL{}
.sp_textC{}
@media screen and (max-width: 999px) {
	.sp_textL{text-align:left;}
	.sp_textC{text-align:center;}
}
.deco_underline{text-decoration:underline;}
.cur_pointer{cursor:pointer;}
.va_middle > *{vertical-align: middle;}
.va_bottom > *{vertical-align: text-bottom;}

.bg_cover,.bg_cover *{
	background-position:center center;
	background-repeat:no-repeat;
	background-size:cover;
}
.bg_coverT,.bg_coverT *{
	background-position:center top;
	background-repeat:no-repeat;
	background-size:cover;
}
.bg_coverB,.bg_coverB *{
	background-position:center bottom;
	background-repeat:no-repeat;
	background-size:cover;
}
.bg_contain,.bg_contain *{
	background-position:center center;
	background-repeat:no-repeat;
	background-size:contain;
}
.bg_containT,.bg_containT *{
	background-position:center top;
	background-repeat:no-repeat;
	background-size:contain;
}
.bg_containB,.bg_containB *{
	background-position:center bottom;
	background-repeat:no-repeat;
	background-size:contain;
}
.bg_W90,.bg_W90 *{
	background-position:center center;
	background-repeat:no-repeat;
	background-size:90% auto;
}
@media screen and (max-width: 999px) {
}
/* Edge のみ*/
/*
@supports (-ms-ime-align:auto) {
	.bg_H120_edge,.bg_H120_edge *{
		background-size:auto 120%;
	}
}
*/

/*
要素まるごとブレンド
mix-blend-mode: multiply;

背景色ブレンド（同一タグ内のみ）
background-blend-mode: multiply;
*/

.col_000{color:#000;}
.col_F00{color:#F00;}
.col_FFF{color:#FFF;}
.col_0AD{color:#00a4da;}/* 水色 */

.bg_clear{background-color:transparent;}
.bg_000{background-color:#000;}
.bg_FFF{background-color:#FFF;}

.bg_white_grad{
	background:-moz-linear-gradient(left, #FFFFFF, rgba(255,255,255,0));
  background:-webkit-linear-gradient(left, #FFFFFF, rgba(255,255,255,0));
  background:linear-gradient(to right, #FFFFFF, rgba(255,255,255,0));
}
.bg_btn_grad{
	background:-moz-linear-gradient(-45deg, #009fff, #8316bd);
  background:-webkit-linear-gradient(-45deg, #009fff, #8316bd);
  background:linear-gradient(135deg, #009fff, #8316bd);
}
.bg_btn_grad:hover .ov_white{
	background-color: rgba(255,255,255,0.3);
}
.bg_footer_grad{
	background:-moz-linear-gradient(-30deg, #507ea1 0.6%, #31536f 33%, #173046 64%, #0d2236 80%);
  background:-webkit-linear-gradient(-30deg, #507ea1 0.6%, #31536f 33%, #173046 64%, #0d2236 80%);
  background:linear-gradient(120deg, #507ea1 0.6%, #31536f 33%, #173046 64%, #0d2236 80%);
}


.pc_tblbreak{}
.sp_tblbreak{}
@media screen and (min-width: 1000px) {
	.pc_tblbreak,
	.pc_tblbreak tbody,
	.pc_tblbreak tr,
	.pc_tblbreak th,
	.pc_tblbreak td{display:block;}
}
@media screen and (max-width: 999px) {
	.sp_tblbreak,
	.sp_tblbreak tbody,
	.sp_tblbreak tr,
	.sp_tblbreak th,
	.sp_tblbreak td{display:block;}
	.sp_tblbreak_limited,
	.sp_tblbreak_limited > tbody,
	.sp_tblbreak_limited > tbody > tr,
	.sp_tblbreak_limited > tr,
	.sp_tblbreak_limited > tbody > tr > th,
	.sp_tblbreak_limited > tr > th,
	.sp_tblbreak_limited > tbody > tr > td,
	.sp_tblbreak_limited > tr > td{display:block;}
}

.pos_rel{position:relative;}
.pos_abs{position:absolute;}
.pos_fix{position:fixed;}

.pos_abs.mgnAuto{
	top:0;
	bottom:0;
	left:0;
	right:0;
	height:auto;
}

.radius05{
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;}
.radius10{
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;}
.radius20{
	border-radius: 20px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;}
.radius30{
	border-radius: 30px;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;}
.radius50{
	border-radius: 50px;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;}
.radius100per{
	border-radius: 100%;
	-webkit-border-radius: 100%;
	-moz-border-radius: 100%;}

.shadow01{
	box-shadow: 1px 1px 0px 0px rgba(0,0,0,0.2);
	-webkit-box-shadow: 1px 1px 0px 0px rgba(0,0,0,0.2);
	-moz-box-shadow: 1px 1px 0px 0px rgba(0,0,0,0.2);}
.shadow02{
	box-shadow: 2px 2px 0px 0px rgba(0,0,0,0.2);
	-webkit-box-shadow: 2px 2px 0px 0px rgba(0,0,0,0.2);
	-moz-box-shadow: 2px 2px 0px 0px rgba(0,0,0,0.2);}
.shadow04{
	box-shadow: 4px 4px 0px 0px rgba(0,0,0,0.2);
	-webkit-box-shadow: 4px 4px 0px 0px rgba(0,0,0,0.2);
	-moz-box-shadow: 4px 4px 0px 0px rgba(0,0,0,0.2);}
.shadow01bo{
	box-shadow: 1px 1px 2px 0px rgba(0,0,0,0.5);
	-webkit-box-shadow: 1px 1px 2px 0px rgba(0,0,0,0.5);
	-moz-box-shadow: 1px 1px 2px 0px rgba(0,0,0,0.5);}
.shadow04bo{
	box-shadow: 4px 4px 4px 0px rgba(0,0,0,0.2);
	-webkit-box-shadow: 4px 4px 4px 0px rgba(0,0,0,0.2);
	-moz-box-shadow: 4px 4px 4px 0px rgba(0,0,0,0.2);}
.shadow_bottom{position: relative;}
.shadow_bottom::after{
	content: '';
	position: absolute;
	bottom: -25px;
	left:0;
	width:100%;
	height: 50px;
	z-index: -1;
	background:-moz-radial-gradient(closest-side,rgba(0,0,0,0.5),rgba(0,0,0,0));
  background:-webkit-radial-gradient(closest-side,rgba(0,0,0,0.5),rgba(0,0,0,0));
	background: radial-gradient(closest-side,rgba(0,0,0,0.5),rgba(0,0,0,0));
	border-radius: 100%;
	-webkit-border-radius: 100%;
	-moz-border-radius: 100%;
}

.rotation90{
	-moz-transform:	rotate(90deg);
	-webkit-transform: rotate(90deg);
	-ms-transform:	 rotate(90deg);
	transform:		 rotate(90deg);
}

.borderbox,.borderbox *{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}


/* 印刷用CSS */
/*
@media print{
  印刷用CSSの定義を指定する
}
※印刷時は
「@media screen and (min-width: 1000px)」
「@media screen and (max-width: 999px)」内のスタイルは効かなくなる
*/
@media print{
	body > div .H_head,
	.pc_vanish{
		display:none!important;
	}
	header{position:relative;}
}