@charset "UTF-8";
/* CSS Document */
/*
1280
0.12rem	0.94vw
0.13rem	1.02vw
0.14rem	1.09vw
0.15rem	1.17vw
0.16rem	1.25vw
0.17rem	1.33vw
0.18rem	1.41vw
0.19rem	1.48vw
0.20rem	1.56vw
0.21rem	1.64vw
0.22rem	1.72vw
0.23rem	1.80vw
0.24rem	1.88vw
0.25rem	1.95vw
0.26rem	2.03vw
0.27rem	2.11vw
0.28rem	2.19vw
0.29rem	2.27vw
0.30rem	2.34vw
0.31rem	2.42vw
0.32rem	2.50vw
0.33rem	2.58vw
0.34rem	2.66vw
0.35rem	2.73vw
0.40rem	3.13vw
0.45rem	3.52vw
0.50rem	3.91vw
0.55rem	4.30vw
0.60rem	4.69vw
0.65rem	5.08vw
0.70rem	5.47vw
0.75rem	5.86vw
0.80rem	6.25vw
0.85rem	6.64vw

640
0.12rem 1.88vw
0.13rem 2.03vw
0.14rem 2.19vw
0.15rem 2.34vw
0.16rem 2.50vw
0.17rem 2.66vw
0.18rem 2.81vw
0.19rem 2.97vw
0.20rem 3.13vw
0.21rem 3.28vw
0.22rem 3.44vw
0.23rem 3.59vw
0.24rem 3.75vw
0.25rem 3.91vw
0.26rem 4.06vw
0.27rem 4.22vw
0.28rem 4.38vw
0.29rem 4.53vw
0.30rem 4.69vw
0.31rem 4.84vw
0.32rem 5.00vw
0.33rem 5.16vw
0.34rem 5.31vw
0.35rem 5.47vw
0.40rem 6.25vw
0.45rem 7.03vw
0.50rem 7.81vw
0.55rem 8.59vw
0.60rem 9.38vw
0.65rem 10.16vw
0.70rem 10.94vw
0.75rem 11.72vw
0.80rem 12.50vw
0.85rem 13.28vw



基本サイズ
w320の場合
8px 	2.5vw;
9px 	2.81vw;
10px 	3.125vw;
11px 	3.4375vw;
12px 	3.75vw;
13px 	4.0625vw;
14px 	4.375vw;
15px 	4.6875vw;
16px 	5vw;
17px 	5.31vw;
18px 	5.63vw;
19px 	5.94vw;
20px 	6.25vw;
21px 	6.56vw;
22px 	6.88vw;
23px 	7.19vw;
24px 	7.5vw;
25px 	7.81vw;
26px 	8.13vw;




基本サイズ 	値
12px 	75%
13px 	82%
14px 	88%
15px 	94%
16px 	100%

基本サイズ12px/75%
表示したいサイズ 	指定する値
10px 	84%
11px 	92%
12px 	100%
13px 	109%
14px 	117%
15px 	125%
16px 	134%
17px 	142%
18px 	150%
19px 	159%
20px 	167%
21px 	175%
22px 	184%
23px 	192%
24px 	200%
25px 	209%
26px 	217%

基本サイズ13px/82%
表示したいサイズ 	指定する値
10px 	77%
11px 	85%
12px 	93%
13px 	100%
14px 	108%
15px 	116%
16px 	124%
17px 	131%
18px 	139%
19px 	147%
20px 	154%
21px 	162%
22px 	170%
23px 	177%
24px 	185%
25px 	193%
26px 	200%

基本サイズ14px/88%
表示したいサイズ 	指定する値
10px 	72%
11px 	79%
12px 	86%
13px 	93%
14px 	100%
15px 	108%
16px 	115%
17px 	122%
18px 	129%
19px 	136%
20px 	143%
21px 	150%
22px 	158%
23px 	165%
24px 	172%
25px 	179%
26px 	186%
*/
/*=======================================
  共　通
=======================================*/
/*SP用共通明朝さわらびフォント
@import url(https://fonts.googleapis.com/earlyaccess/sawarabimincho.css);
font-family: "Sawarabi Mincho", serif;

Google Fonts + 日本語
https://googlefonts.github.io/japanese/

iPhoneで@importによるフォント指定が利かない
読み込みは<link>で行うこと
*/
/*SVG使用の際の注意点
backgroundで使用するばあい、IEでsvgのルートにwitdh,heightが
設定されていないと、background-positionで崩れる

SVGの比率を変更できるようにするには、SVGのルートに以下を記載
preserveAspectRatio="none"
*/
/*=============================
ブラウザ別フォントファイルフォーマット
woff:IE9以降多くのブラウザでサポート（IE8以前はEOT）
opentype:Android4.3など
src: url('xxx.eot'); IE9以上用
src: url('xxx.eot?#iefix') format('embedded-opentype'), IE8以前用
url('xxx.woff') format('woff'), モダンブラウザ用
url('xxx.ttf') format('truetype'); iOS, Android用
url('xxx.otf') format('opentype'); iOS, Android用
=============================*/


/*=============================
源ノ角ゴシック
使うときはhタグのbold解除して、あと太さフォント別にcss用意
=============================*/
@font-face {
	font-family: "SourceHanSans-Medium";
	font-style: normal;
	font-weight: 500;
	src: url('../fonts/SourceHanSans-Medium.woff') format('woff'),
	url('../fonts/SourceHanSans-Medium.otf') format('opentype')
}
@font-face {
	font-family: "SourceHanSans-Bold";
	font-style: normal;
	font-weight: 700;
	src: url('../fonts/SourceHanSans-Bold.woff') format('woff'),
	url('../fonts/SourceHanSans-Bold.otf') format('opentype')
}
/*
@font-face {
	font-family: "SourceHanSans-ExtraLight";
	font-style: normal;
	font-weight: 100;
	src: url('../fonts/SourceHanSans-ExtraLight.woff') format('woff'),
	url('../fonts/SourceHanSans-ExtraLight.otf') format('opentype')
}
@font-face {
	font-family: "SourceHanSans-Regular";
	font-style: normal;
	font-weight: 400;
	src: url('../fonts/SourceHanSans-Regular.woff') format('woff'),
	url('../fonts/SourceHanSans-Regular.otf') format('opentype')
}
@font-face {
	font-family: "SourceHanSans-Medium";
	font-style: normal;
	font-weight: 500;
	src: url('../fonts/SourceHanSans-Medium.woff') format('woff'),
	url('../fonts/SourceHanSans-Medium.otf') format('opentype')
}
@font-face {
	font-family: "SourceHanSans-Bold";
	font-style: normal;
	font-weight: 700;
	src: url('../fonts/SourceHanSans-Bold.woff') format('woff'),
	url('../fonts/SourceHanSans-Bold.otf') format('opentype')
}
*/

/*=============================
源ノ明朝
使うときはhタグのbold解除して、あと太さフォント別にcss用意
=============================*/
/*
@font-face {
	font-family: "SourceHanSerif-ExtraLight";
	font-style: normal;
	font-weight: 100;
	src: url('../fonts/SourceHanSerif-ExtraLight.woff') format('woff'),
	url('../fonts/SourceHanSerif-ExtraLight.otf') format('opentype')
}
@font-face {
	font-family: "SourceHanSerif-Regular";
	font-style: normal;
	font-weight: 400;
	src: url('../fonts/SourceHanSerif-Regular.woff') format('woff'),
	url('../fonts/SourceHanSerif-Regular.otf') format('opentype')
}
@font-face {
	font-family: "SourceHanSerif-Medium";
	font-style: normal;
	font-weight: 500;
	src: url('../fonts/SourceHanSerif-Medium.woff') format('woff'),
	url('../fonts/SourceHanSerif-Medium.otf') format('opentype')
}
@font-face {
	font-family: "SourceHanSerif-Bold";
	font-style: normal;
	font-weight: 700;
	src: url('../fonts/SourceHanSerif-Bold.woff') format('woff'),
	url('../fonts/SourceHanSerif-Bold.otf') format('opentype')
}
*/
/*=============================
フォント別太さ指定
=============================*/
.fgwb{font-family: "SourceHanSans-Bold"       !important; font-weight: 700 !important;}
/*
.fgwl{font-family: "SourceHanSans-ExtraLight" !important; font-weight: 100 !important;}
.fgwr{font-family: "SourceHanSans-Regular"    !important; font-weight: 400 !important;}
.fgwm{font-family: "SourceHanSans-Medium"     !important; font-weight: 500 !important;}
.fgwb{font-family: "SourceHanSans-Bold"       !important; font-weight: 700 !important;}

.fmwl{font-family: "SourceHanSerif-ExtraLight" !important; font-weight: 100 !important;}
.fmwr{font-family: "SourceHanSerif-Regular"    !important; font-weight: 400 !important;}
.fmwm{font-family: "SourceHanSerif-Medium"     !important; font-weight: 500 !important;}
.fmwb{font-family: "SourceHanSerif-Bold"       !important; font-weight: 700 !important;}
*/
/*=============================
ベースはコレbodyに設定
=============================*/
/*
font-family:"SourceHanSans-Regular", sans-serif;
font-weight: 400;
*/


html {
	background:#fff;
	color:#000066;
	font-size: 625%;/*rem用100px*/
}
body{
	font-size: 0.12em;/*rem用12px 以下rem chrome対策でem 以下fontsizeはremで1/100指定*/
	font-family:"SourceHanSans-Medium", sans-serif;
	font-weight: 500;
	/*font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;*/
	/*font-family:"游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic","Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: 500; win游ゴシック汚れ対策*/
	/*font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W6","Hiragino Mincho Pro","HG明朝E","ＭＳ Ｐ明朝",serif;*/
	/*HG明朝Eは13pxからアンチエイリアス、ただoffice2000以降が入ってないと表示されない。HG明朝Bもある"
	游明朝はMac*/
	line-height:1.0;
	letter-spacing:0px;
	-webkit-text-size-adjust: 100%;/*スマホ文字拡大対策*/
	background: url(../img/bg_body.png) top center;
}
	/*IE10以降に適用されるCSSハック（一応）*/
	/*@media all and (-ms-high-contrast:none){
	}*/
/*
Win10 Edgeは文字余白は他ブラウザと変わらない。
Win7 IE+Win10IEの遊ゴシック余白は同じ。
遊ゴシック対策はIE向けとWin7MSゴシックでOK
*/
/* --A-- */
a {
	cursor:pointer;
	text-decoration:none;
	color: #000066;
}
a:hover {
	text-decoration:underline;
}
/* --HEADLINE-- */
h1, h2, h3, h4, h5, h6 {
	font-size:100%;
	font-weight:normal;
	margin:0;
	max-height: 100%;/*android chrome対策*/
}
/* --OTHER TAGS-- */
p {
	margin-bottom:0;
	text-align:left;
	width:auto;
	max-height: 100%;/*android chrome対策*/
}
em, strong {
	font-weight:bold;
}
/* --clearfix-- */
.clf:after{
	content: ".";
	display: block;
	height: 0;
	font-size:0;
	clear: both;
	visibility:hidden;
}
.clf{
	display: inline-block;
}
	/* Hides from IE Mac */
	* html .clf{
		height: 1%;
	}
	.clf{
		display:block;
	}

.center{text-align:center;}
.left{text-align:left;}
.right{text-align:right;}
.Fright {float:right;}
.Fleft {float:left;}
.imgRight {float:right; margin:0px 0px 20px 20px ;}
.imgLeft {float:left; margin:0px 20px 20px 0px ;}
.vmTxt,
.vm{
	display: inline-block;
	position: relative;
	top:50%;
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}

.news .vmTxt, .vm {
	font-size: 12px;
	padding: 2px 6px;
}

	/*IE遊ゴずれ対応*/
	/*@media all and (-ms-high-contrast:none){
		a span.vmTxt{padding-top: 0.5em;}
	}*/
/*
.imgOpBt a:hover img{
	opacity:0.65;
	-moz-opacity:0.65;
	-khtml-opacity:0.65;
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=65); For IE 5-7
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=65)"; For IE 8
}*/

/*padding & margin
.pt0{padding-top:0px;}.pt5{padding-top:5px;}.pt10{padding-top:10px;}.pt15{padding-top:15px;}.pt20{padding-top:20px;}.pt25{padding-top:25px;}.pt30{padding-top:30px;}.pt35{padding-top:35px;}.pt40{padding-top:40px;}.pt45{padding-top:45px;}.pt50{padding-top:50px;}.pt55{padding-top:55px;}.pt60{padding-top:60px;}.pt65{padding-top:65px;}.pt70{padding-top:70px;}.pt75{padding-top:75px;}.pt80{padding-top:80px;}.pt85{padding-top:85px;}.pt90{padding-top:90px;}.pt95{padding-top:95px;}.pt100{padding-top:100px;}.pt105{padding-top:105px;}.pt110{padding-top:110px;}.pt115{padding-top:115px;}.pt120{padding-top:120px;}.pt125{padding-top:125px;}.pt130{padding-top:130px;}.pt135{padding-top:135px;}.pt140{padding-top:140px;}.pt145{padding-top:145px;}.pt150{padding-top:150px;}.pb0{padding-bottom:0px;}.pb5{padding-bottom:5px;}.pb10{padding-bottom:10px;}.pb15{padding-bottom:15px;}.pb20{padding-bottom:20px;}.pb25{padding-bottom:25px;}.pb30{padding-bottom:30px;}.pb35{padding-bottom:35px;}.pb40{padding-bottom:40px;}.pb45{padding-bottom:45px;}.pb50{padding-bottom:50px;}.pb55{padding-bottom:55px;}.pb60{padding-bottom:60px;}.pb65{padding-bottom:65px;}.pb70{padding-bottom:70px;}.pb75{padding-bottom:75px;}.pb80{padding-bottom:80px;}.pb85{padding-bottom:85px;}.pb90{padding-bottom:90px;}.pb95{padding-bottom:95px;}.pb100{padding-bottom:100px;}.pb105{padding-bottom:105px;}.pb110{padding-bottom:110px;}.pb115{padding-bottom:115px;}.pb120{padding-bottom:120px;}.pb125{padding-bottom:125px;}.pb130{padding-bottom:130px;}.pb135{padding-bottom:135px;}.pb140{padding-bottom:140px;}.pb145{padding-bottom:145px;}.pb150{padding-bottom:150px;}.ptb{padding-top:0; padding-bottom:0;}.pl5{padding-left:5px;}.pl10{padding-left:10px;}.pl15{padding-left:15px;}.pl20{padding-left:20px;}.pl25{padding-left:25px;}.pl30{padding-left:30px;}.pl35{padding-left:35px;}.pl40{padding-left:40px;}.pl45{padding-left:45px;}.pl50{padding-left:50px;}.pl55{padding-left:55px;}.pl60{padding-left:60px;}.pl65{padding-left:65px;}.pl70{padding-left:70px;}.pl75{padding-left:75px;}.pl80{padding-left:80px;}.pl85{padding-left:85px;}.pl90{padding-left:90px;}.pl95{padding-left:95px;}.pl100{padding-left:100px;}.pl105{padding-left:105px;}.pl110{padding-left:110px;}.pl115{padding-left:115px;}.pl120{padding-left:120px;}.pl125{padding-left:125px;}.pl130{padding-left:130px;}.pl135{padding-left:135px;}.pl140{padding-left:140px;}.pl145{padding-left:145px;}.pl150{padding-left:150px;}.pr5{padding-right:5px;}.pr10{padding-right:10px;}.pr15{padding-right:15px;}.pr20{padding-right:20px;}.pr25{padding-right:25px;}.pr30{padding-right:30px;}.pr35{padding-right:35px;}.pr40{padding-right:40px;}.pr45{padding-right:45px;}.pr50{padding-right:50px;}.pr55{padding-right:55px;}.pr60{padding-right:60px;}.pr65{padding-right:65px;}.pr70{padding-right:70px;}.pr75{padding-right:75px;}.pr80{padding-right:80px;}.pr85{padding-right:85px;}.pr90{padding-right:90px;}.pr95{padding-right:95px;}.pr100{padding-right:100px;}.pr105{padding-right:105px;}.pr110{padding-right:110px;}.pr115{padding-right:115px;}.pr120{padding-right:120px;}.pr125{padding-right:125px;}.pr130{padding-right:130px;}.pr135{padding-right:135px;}.pr140{padding-right:140px;}.pr145{padding-right:145px;}.pr150{padding-right:150px;}.mt0{margin-top:0px;}.mt5{margin-top:5px;}.mt10{margin-top:10px;}.mt15{margin-top:15px;}.mt20{margin-top:20px;}.mt25{margin-top:25px;}.mt30{margin-top:30px;}.mt35{margin-top:35px;}.mt40{margin-top:40px;}.mt45{margin-top:45px;}.mt50{margin-top:50px;}.mt55{margin-top:55px;}.mt60{margin-top:60px;}.mt65{margin-top:65px;}.mt70{margin-top:70px;}.mt75{margin-top:75px;}.mt80{margin-top:80px;}.mt85{margin-top:85px;}.mt90{margin-top:90px;}.mt95{margin-top:95px;}.mt100{margin-top:100px;}.mt105{margin-top:105px;}.mt110{margin-top:110px;}.mt115{margin-top:115px;}.mt120{margin-top:120px;}.mt125{margin-top:125px;}.mt130{margin-top:130px;}.mt135{margin-top:135px;}.mt140{margin-top:140px;}.mt145{margin-top:145px;}.mt150{margin-top:150px;}.mb0{margin-bottom:0px;}.mb5{margin-bottom:5px;}.mb10{margin-bottom:10px;}.mb15{margin-bottom:15px;}.mb20{margin-bottom:20px;}.mb25{margin-bottom:25px;}.mb30{margin-bottom:30px;}.mb35{margin-bottom:35px;}.mb40{margin-bottom:40px;}.mb45{margin-bottom:45px;}.mb50{margin-bottom:50px;}.mb55{margin-bottom:55px;}.mb60{margin-bottom:60px;}.mb65{margin-bottom:65px;}.mb70{margin-bottom:70px;}.mb75{margin-bottom:75px;}.mb80{margin-bottom:80px;}.mb85{margin-bottom:85px;}.mb90{margin-bottom:90px;}.mb95{margin-bottom:95px;}.mb100{margin-bottom:100px;}.mb105{margin-bottom:105px;}.mb110{margin-bottom:110px;}.mb115{margin-bottom:115px;}.mb120{margin-bottom:120px;}.mb125{margin-bottom:125px;}.mb130{margin-bottom:130px;}.mb135{margin-bottom:135px;}.mb140{margin-bottom:140px;}.mb145{margin-bottom:145px;}.mb150{margin-bottom:150px;}.ml5{margin-left:5px;}.ml10{margin-left:10px;}.ml15{margin-left:15px;}.ml20{margin-left:20px;}.ml25{margin-left:25px;}.ml30{margin-left:30px;}.ml35{margin-left:35px;}.ml40{margin-left:40px;}.ml45{margin-left:45px;}.ml50{margin-left:50px;}.ml55{margin-left:55px;}.ml60{margin-left:60px;}.ml65{margin-left:65px;}.ml70{margin-left:70px;}.ml75{margin-left:75px;}.ml80{margin-left:80px;}.ml85{margin-left:85px;}.ml90{margin-left:90px;}.ml95{margin-left:95px;}.ml100{margin-left:100px;}.ml105{margin-left:105px;}.ml110{margin-left:110px;}.ml115{margin-left:115px;}.ml120{margin-left:120px;}.ml125{margin-left:125px;}.ml130{margin-left:130px;}.ml135{margin-left:135px;}.ml140{margin-left:140px;}.ml145{margin-left:145px;}.ml150{margin-left:150px;}.mr5{margin-right:5px;}.mr10{margin-right:10px;}.mr15{margin-right:15px;}.mr20{margin-right:20px;}.mr25{margin-right:25px;}.mr30{margin-right:30px;}.mr35{margin-right:35px;}.mr40{margin-right:40px;}.mr45{margin-right:45px;}.mr50{margin-right:50px;}.mr55{margin-right:55px;}.mr60{margin-right:60px;}.mr65{margin-right:65px;}.mr70{margin-right:70px;}.mr75{margin-right:75px;}.mr80{margin-right:80px;}.mr85{margin-right:85px;}.mr90{margin-right:90px;}.mr95{margin-right:95px;}.mr100{margin-right:100px;}.mr105{margin-right:105px;}.mr110{margin-right:110px;}.mr115{margin-right:115px;}.mr120{margin-right:120px;}.mr125{margin-right:125px;}.mr130{margin-right:130px;}.mr135{margin-right:135px;}.mr140{margin-right:140px;}.mr145{margin-right:145px;}.mr150{margin-right:150px;}.mtb0{margin-top:0; margin-bottom:0;}
.fs8{font-size: 8px;}.fs9{font-size: 9px;}.fs10{font-size: 10px;}.fs11{font-size: 11px;}.fs12{font-size: 12px;}.fs13{font-size: 13px;}.fs14{font-size: 14px;}.fs15{font-size: 15px;}.fs16{font-size: 16px;}.fs17{font-size: 17px;}.fs18{font-size: 18px;}.fs19{font-size: 19px;}.fs20{font-size: 20px;}.fs21{font-size: 21px;}.fs22{font-size: 22px;}.fs23{font-size: 23px;}.fs24{font-size: 24px;}.fs25{font-size: 25px;}.fs26{font-size: 26px;}.fs27{font-size: 27px;}.fs28{font-size: 28px;}.fs29{font-size: 29px;}.fs30{font-size: 30px;}
*/

#backToTop{
	text-align: center;
	height: 70px;
	position: relative;
}
#backToTop a{
	display: inline-block;
	width: 15px;
	height: 15px;
	border-top: 1px solid #000;
	border-left: 1px solid #000;
	position: relative;
	top: 50%;
	-moz-transform: translateY(-50%) rotate(45deg);
	-webkit-transform: translateY(-50%) rotate(45deg);
	-o-transform: translateY(-50%) rotate(45deg);
	-ms-transform: translateY(-50%) rotate(45deg);
	transform: translateY(-50%) rotate(45deg);
}
#loaderOuter{
	position:fixed;
	width:100%;
	height:100%;
	z-index:499;
	background:#FFF;
}
#loader{
	position: fixed;
	top:50%;
	left:50%;
	z-index:90;
}
.fwb{font-weight: bold !important;}
.fwn{font-weight: normal !important;}
.txtInd{text-indent: -1em;padding-left: 1em;}
.bb1{border-bottom: 1px solid #000;}
.bt1{border-top: 1px solid #000;}
.posRe{position: relative;}
.posAb{position: absolute;}
.posFix{position: fixed;}
.lh2{line-height: 2.0;}
.sp{display: none !important;}
/*.pc{display: none !important;}*/

.noEvent{pointer-events:none}/*IE11以降（IE11ではaタグには利かない）*/

/*arrow
=============================*/
a .arrow,
a .arrow_l{
	position: absolute;
	top:0;
	left:0;
	width: 100%;
	height: 100%;
	-webkit-transition: all 0.25s ease;
	-moz-transition: all 0.25s ease;
	-ms-transition: all 0.25s ease;
	-o-transition: all 0.25s ease;
	transition: all 0.25s ease;
}
a .arrow_l{
	left:auto;
	right: 0;
}
a.on .arrow,
a.on .arrow_l{
	width: 110%;
	-webkit-transition: all 0.25s ease;
	-moz-transition: all 0.25s ease;
	-ms-transition: all 0.25s ease;
	-o-transition: all 0.25s ease;
	transition: all 0.25s ease;
}

a .arrow::before,
a .arrow::after,
a .arrow_l::before,
a .arrow_l::after{
	content: '';
	position: absolute;
}
a .arrow::before,
a .arrow_l::before{
	bottom:0;
	right:0;
	width: 100%;
	height: 1px;
}
a .arrow.abl::before,
a .arrow_l.abl::before{background: #000066;}
a .arrow.aw::before,
a .arrow_l.aw::before {background: #FFF;}
a .arrow::after{
	bottom:1px;
	right:0;
	width: 0.5vw;
	height: 0.5vw;
	max-width: 6px;
	max-height: 6px;
	-moz-transform-origin: right bottom;
	-webkit-transform-origin: right bottom;
	-o-transform-origin: right bottom;
	-ms-transform-origin: right bottom;
	transform-origin: right bottom;
	-moz-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
a .arrow_l::after{
	bottom:1px;
	left:0;
	width: 0.5vw;
	height: 0.5vw;
	max-width: 6px;
	max-height: 6px;
	-moz-transform-origin: left bottom;
	-webkit-transform-origin: left bottom;
	-o-transform-origin: left bottom;
	-ms-transform-origin: left bottom;
	transform-origin: left bottom;
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
a .arrow.asl::after{
	width: 1.17vw;
	height: 1.17vw;
	max-width: 15px;
	max-height: 15px;
}
a .arrow.abl::after{border-right: 1px solid #000066;}
a .arrow.aw::after{border-right: 1px solid #FFF;}
a .arrow_l.abl::after{border-left: 1px solid #000066;}
a .arrow_l.aw::after{border-left: 1px solid #FFF;}



.btAni a{
	display: block;
	width: 100%;
	height: 100%;
	position: relative;
}
.btAni.cbl a{
	color: #000066;
	-webkit-transition: color 0.35s ease;
	-moz-transition: color 0.35s ease;
	-ms-transition: color 0.35s ease;
	-o-transition: color 0.35s ease;
	transition: color 0.35s ease;
}
.btAni.cbl a.on{
	color: #FFF;
	-webkit-transition: color 0.35s ease;
	-moz-transition: color 0.35s ease;
	-ms-transition: color 0.35s ease;
	-o-transition: color 0.35s ease;
	transition: color 0.35s ease;
}
.btAni a::before{
	content: '';
	display: block;
	width: 0;
	height: 100%;
	position: absolute;
	top:0;
	left:0;
	-webkit-transition: width 0.35s ease;
	-moz-transition: width 0.35s ease;
	-ms-transition: width 0.35s ease;
	-o-transition: width 0.35s ease;
	transition: width 0.35s ease;
}
.btAni a.on::before{
	width: 100%;
	-webkit-transition: width 0.35s ease;
	-moz-transition: width 0.35s ease;
	-ms-transition: width 0.35s ease;
	-o-transition: width 0.35s ease;
	transition: width 0.35s ease;
}
.btAni.cb a::before{background: rgba(0,0,0,0.5);}
.btAni.cbl a::before{background: #000066;}
.btAni.cgreen a::before{background: #99bcc1;}

.pdfLink a{
	display: inline-block;
	background: url(../img/icon_pdf.svg) no-repeat left top/auto 2em;
	padding-left: 2.25em;
	line-height: 2em;
}

#container{overflow: hidden;}
/*deSVG
=============================*/
/*
.svgImg path{
	fill: #FFF;
}*/

/*=============================
header
=============================*/
header{
	position: absolute;
	top:0;
	left:0;
	width: 100%;
}
header .logo{
	position: absolute;
	top:20px;
	left:30px;
	z-index: 10;
}
header .logo a{
	display: inline-block;
	vertical-align: middle;
}
header .logo img.clogo{
	width: 130px;
	height: 47px;
}

/*recruit
=============================*/
header .logo img.txtlogo{
	width: 128px;
	height: 10px;
}


/*gnavBt
=============================*/
header #gnavBt {
	position: fixed;
	top:20px;
	right:20px;
	z-index:999;
}
header #gnavBt a{
	display: block;
	width: 55px;
	height: 55px;
	position: relative;
}
/*▼gnavBtアニメ*/
header #gnavBtBorder{
	z-index: 1;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-left: -15px;
	margin-top: -1px;
	display: block;
	width: 30px;
	height: 1px;
	background-color: #000;
	-webkit-transition: -webkit-transform 0.3s ease, top 0.3s ease;
	transition: transform 0.3s ease, top 0.3s ease;
}
header #gnavBtBorder:before {
	top: -8px;
	content: "";
	display: block;
	width: 30px;
	height: 1px;
	background-color: #000;
	position: absolute;
	z-index: -1;
	-webkit-transition: -webkit-transform 0.3s ease, top 0.3s ease, margin 0.2s ease;
	transition: transform 0.3s ease, top 0.3s ease, margin 0.2s ease;
}
header #gnavBtBorder:after {
	top: 8px;
	content: "";
	display: block;
	width: 30px;
	height: 1px;
	background-color: #000;
	position: absolute;
	z-index: -1;
	-webkit-transition: -webkit-transform 0.3s ease, top 0.3s ease, margin 0.2s ease;
	transition: transform 0.3s ease, top 0.3s ease, margin 0.2s ease;
}
header #gnavBt a:hover #gnavBtBorder:before {
	margin-top: -3px;
}
header #gnavBt a:hover #gnavBtBorder:after {
	margin-top: 3px;
}
header #gnavBt a.open #gnavBtBorder {
	background: none !important;
}
header #gnavBt a.open #gnavBtBorder:before {
	background-color: #FFF !important;
	top:0 !important;
	margin-top: 0 !important;
	-webkit-transform:rotate(45deg);
	-ms-transform:rotate(45deg);
	transform:rotate(45deg)
}
header #gnavBt a.open #gnavBtBorder:after {
	background-color: #FFF !important;
	top:0 !important;
	margin-top: 0 !important;
	-webkit-transform:rotate(-45deg);
	-ms-transform:rotate(-45deg);
	transform:rotate(-45deg)
}


/*gnav
=============================*/
/*remodal解除用*/
body.nolocked {padding-right: 0 !important;}
.gnav_wrapper{display: block !important;}

nav#gnav{
	position: fixed;
	top:0;
	right:0;
	width: 0;
	height: 100vh;
	background: rgba(0,0,0,0.9);
	-webkit-transition: all 0.25s ease;
	-moz-transition: all 0.25s ease;
	-ms-transition: all 0.25s ease;
	-o-transition: all 0.25s ease;
	transition: all 0.25s ease;
	overflow: hidden;
	z-index: 500;
}
nav#gnav.show{
	width: 385px;
	-webkit-transition: all 0.25s ease;
	-moz-transition: all 0.25s ease;
	-ms-transition: all 0.25s ease;
	-o-transition: all 0.25s ease;
	transition: all 0.25s ease;
}
nav#gnav .inner{
	width: 15vw;
	max-width: 195px;
	position: relative;
	top:50%;
	left: 50%;
	-moz-transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	-o-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	text-align: left;
	padding: 95px 0;
}
nav#gnav ul.gmenu{margin-bottom: 4.3vw;}
@media (min-width: 1280px) {
	nav#gnav ul.gmenu {margin-bottom: 55px;}
}
nav#gnav ul.gmenu li{
	margin-bottom: 2.1vw;
}
@media (min-width: 1280px) {
	nav#gnav ul.gmenu li{margin-bottom: 27px;}
}
nav#gnav ul.gmenu li:last-child{
	margin-bottom: 0;
}
nav#gnav ul.gmenu li a img{
	height: 1vw;
	max-height: 13px;
	width: auto;
	margin: 0;
}

nav#gnav ul.gmenu li .toggle-list {
	position: relative;
  margin: 0;
  padding: .5em 0;
  font-size: 1em;
  font-weight: 400;
  cursor: pointer;
	display: inline-block;
}
nav#gnav ul.gmenu li .toggle-list:hover{
    text-decoration:underline;
}
nav#gnav ul.gmenu li .toggle-list:after {
  content: "";
  position: absolute;
  right: -16px;
  top: 35%;
  transition: all 0.2s ease-in-out;

  display: block;
  width: 8px;
  height: 8px;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;

  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
nav#gnav ul.gmenu li .toggle-list.open:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 45%;
}
nav#gnav ul.gmenu li .sublist {
	padding: 1.5vw 8px 0;
	margin-bottom: 1.5vw;
}
nav#gnav ul.gmenu li .sublist .sublist-itm {
	padding: 0;
	margin-bottom: 1.5vw;
}

nav#gnav ul.etcMenu{margin-bottom: 4.7vw;}
nav#gnav ul.etcMenu li{
	margin-bottom: 1.95vw;
}
@media (min-width: 1280px) {
	nav#gnav ul.etcMenu{margin-bottom: 60px;}
	nav#gnav ul.etcMenu li{margin-bottom: 25px;}
}
nav#gnav ul.etcMenu li:last-child{
	margin-bottom: 0;
}
nav#gnav ul.etcMenu li a{
	font-size: 1.1vw;
	color: #FFF;
	text-decoration: none;
}
@media (min-width: 1280px) {
	nav#gnav ul.etcMenu li a{font-size: 0.14rem;}
}



nav#gnav ul.sns {
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
}
nav#gnav ul.sns li{
	max-width: 45px;
	max-height: 45px;
	margin-right: 6px;
	margin-bottom: 16px;
}
nav#gnav ul.sns li a img{
	width: auto;
	height: 3.5vw;
	max-height: 36px;
}
nav#gnav ul.sns li.twitter{
	margin-right: 2.7vw;
}
nav#gnav ul.sns li.it-navi {
	max-width: 100%;
	max-height: 45px;
}
nav#gnav ul.sns li.it-navi img{
	max-width: 160px;
	object-fit: contain;
}
@media (min-width: 1280px) {
	nav#gnav ul.sns li.twitter{
		margin-right: 35px;
	}
}


/*gnaRec
=============================*/
/*remodal解除用*/
body.nolocked {padding-right: 0 !important;}
.gnav_wrapper{display: block !important;}

nav#gnavRec{
	position: fixed;
	top:0;
	right:0;
	width: 0;
	height: 100vh;
	background: #000066;
	-webkit-transition: all 0.25s ease;
	-moz-transition: all 0.25s ease;
	-ms-transition: all 0.25s ease;
	-o-transition: all 0.25s ease;
	transition: all 0.25s ease;
	overflow: hidden;
	z-index: 500;
}
nav#gnavRec.show{
	width: 385px;
	-webkit-transition: all 0.25s ease;
	-moz-transition: all 0.25s ease;
	-ms-transition: all 0.25s ease;
	-o-transition: all 0.25s ease;
	transition: all 0.25s ease;
}
nav#gnavRec .inner{
	position: relative;
	top:50%;
	left: 50%;
	-moz-transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	-o-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	text-align: left;
}
nav#gnavRec .tit{
	width: 270px;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	position: relative;
	height: 10px;
	margin-bottom: 25px;
}
nav#gnavRec .tit::before,
nav#gnavRec .tit::after{
	content: '';
	position: absolute;
	top:50%;
	width: 55px;
	height: 1px;
	background: #FFF;
}
nav#gnavRec .tit::before{left:0;}
nav#gnavRec .tit::after {right:0;}


nav#gnavRec .tit img{
	height: 10px;
	width: auto;
}
nav#gnavRec ul.gmenu {margin-bottom: 60px;}
nav#gnavRec ul.gmenu li{
	margin-bottom: 25px;
	text-align: center;
}
nav#gnavRec ul.gmenu li:last-child{
	margin-bottom: 0;
}
nav#gnavRec ul.gmenu li a{
	font-size: 0.18rem;
	letter-spacing: 0.15em;
	text-decoration: none;
	color: #FFF;
	white-space: nowrap;
}
nav#gnavRec ul.gmenu li a.noLink{
	opacity: 0.5 !important;
	cursor: default;
}
nav#gnavRec ul.btArea li{
	text-align: center;
	margin-bottom: 20px;
}
nav#gnavRec ul.btArea li a{
	display: inline-block;
	width: 260px;
	height: 65px;
	position: relative;
	text-align: center;
}
nav#gnavRec ul.btArea li.btEnt a{
	background: #FFF;
}
nav#gnavRec ul.btArea li.btCsite a{
	border: 1px solid #FFF;
}
nav#gnavRec ul.btArea li a img{
	height: 10px;
	width: auto;
}
nav#gnavRec ul.btArea li a .arrow{
	top:50%;
	left:15px;
	width: 35px;
	height: 7px;
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	-webkit-transition: all 0.25s ease;
	-moz-transition: all 0.25s ease;
	-ms-transition: all 0.25s ease;
	-o-transition: all 0.25s ease;
	transition: all 0.25s ease;
}
nav#gnavRec ul.btArea li a.on .arrow{
	width: 45px;
	-webkit-transition: all 0.25s ease;
	-moz-transition: all 0.25s ease;
	-ms-transition: all 0.25s ease;
	-o-transition: all 0.25s ease;
	transition: all 0.25s ease;
}
/*gnav ani
=============================*/
/*
.remodal-wrapper{
	display: block !important;
	overflow: hidden !important;
	pointer-events:none !important;
}
.remodal-wrapper.show{
	pointer-events:auto !important;
}
.remodal-wrapper nav#gnav{
	position: fixed;
	top:0;
	right:0;
	width: 0;
	height: 100vh;
	overflow: hidden;
	background: rgba(0,0,0,0.9);
	-webkit-transition: all 0.25s ease;
	-moz-transition: all 0.25s ease;
	-ms-transition: all 0.25s ease;
	-o-transition: all 0.25s ease;
	transition: all 0.25s ease;
}
.remodal-wrapper.show nav#gnav{
	display: block;
	width: 385px;
	-webkit-transition: all 0.25s ease;
	-moz-transition: all 0.25s ease;
	-ms-transition: all 0.25s ease;
	-o-transition: all 0.25s ease;
	transition: all 0.25s ease;
}
nav#gnav #gmenu{
	width: 385px;
	position: relative;
	top: 50%;
	left:50%;
	-moz-transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	-o-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
}*/

/*
nav#gnav {
	visibility: hidden;
	position: fixed;
	top:0;
	left:0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.8);
	z-index: 200;
	-moz-perspective:1300px;
	-webkit-perspective: 1300px;
			perspective: 1300px;
	-webkit-transition: all 0.8s ease;
			transition: all 0.8s ease;
	-webkit-transform: scale(1.5);
	-ms-transform: scale(1.5);
		transform: scale(1.5);
	filter: alpha(opacity=000);
	opacity: 0.0;
}
nav#gnav.show {
	visibility: visible;
	-webkit-transform: scale(1.0);
	-ms-transform: scale(1.0);
		transform: scale(1.0);
	filter: alpha(opacity=100);
	opacity: 1.0;
}*/
/*
#gmenu li ul.subMenu{
	position: absolute;
	top:46px;
	left:0;
	text-align: left;
	background: #FFF;
	width: 210px;
	overflow: hidden;
	max-height: 0;
	-webkit-transition: all 0.25s ease;
	-moz-transition: all 0.25s ease;
	-ms-transition: all 0.25s ease;
	-o-transition: all 0.25s ease;
	transition: all 0.25s ease;
}
#gmenu li.open ul.subMenu{
	max-height :350px;
	-webkit-transition: all 0.75s ease-out;
	-moz-transition: all 0.75s ease-out;
	-ms-transition: all 0.75s ease-out;
	-o-transition: all 0.75s ease-out;
	transition: all 0.75s ease-out;
}
*/
/*=============================
footer
=============================*/
footer{
	border-top: 1px solid #EFEFEF;
	padding: 5.5vw 0;
}
footer > .inner{
	width: 80%;
	max-width: 1020px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}

footer #fnav{
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	padding-left: 20.31vw;
}
@media (min-width: 1280px) {
	footer #fnav{padding-left: 260px;}
}
footer ul.fmenu li{
	width: 16.53vw;
	max-width: 250px;
	margin-bottom: 1.56vw;
}
footer ul.fmenu.fmenu-s li{
	max-width: 180px;
}
/*　footer ul.fmenu:first-child li:nth-child(2){display: none;}　*/
footer ul.fmenu li a{
	font-size: 1vw;
	text-decoration: none;
	color: #000066;
	letter-spacing: 0.2em;
}
footer ul.fmenu.txtjp li a{
	font-size: 0.9vw;
	letter-spacing: 0;
}
@media (min-width: 1280px) {
	footer ul.fmenu li{margin-bottom: 20px;}
	footer ul.fmenu li a{font-size: 0.14rem;}
	footer ul.fmenu.txtjp li a{font-size: 0.12rem;}
}


footer ul.btList li{display: inline-block;}
footer ul.btList li.logo{
	position: absolute;
	top:0;
	left:0;
}
footer ul.btList li.logo img{
	width: auto;
	height: 4.92vw;
	max-height: 63px;
}
footer ul.btList li.sns{
	position: absolute;
	top:0;
	right:0;
	width: 10vw;
	max-width: 150px;
	display: flex;
	flex-wrap: wrap;
}
footer ul.btList li.sns p{
	position: relative;
	margin: 3px;
}
footer ul.btList li.sns p.twitter{margin-bottom: 1.2vw;}
footer ul.btList li.sns p.it-navi {
	margin-top: 12px;
	max-width: 100px;
}
footer ul.btList li.sns p.it-navi a {
	width: 100%;
}
footer ul.btList li.sns p.it-navi img {
	max-width: 136px;
	object-fit: contain;
}
@media (min-width: 1280px) {
	footer ul.btList li.sns p.twitter{margin-bottom: 15px;}
}
footer ul.btList li.sns img{
	width: auto;
	height: 2.66vw;
	max-height: 34px;
}

footer .f-bottom {
	display: flex;
	width: 80%;
	max-width: 1020px;
	justify-content: center;
	margin: 6.6vw auto 0;
}
footer .f-bottom div {
	margin: 0 24px;
}

footer #copyRight{
	text-align: center;
	margin-top: 1.5vw;
	font-size: 0.8vw;
	color: #000066;
}
@media (min-width: 1280px) {
	footer .f-bottom {
		margin-top: 85px;
	}
	footer #copyRight{
		font-size: 0.1rem;
	}
}
/*=============================
  カルーセル
=============================*/
/*
.carouselArea{
	position: relative;
}
.carouselArea .caroufredsel_wrapper {
	overflow: hidden;
}
.carouselArea .carousel img{
	display: block;
	float: left;
}
.carouselArea .prev{
	position: absolute;
	top:205px;
	left:0;
}
.carouselArea .next{
	position: absolute;
	top:205px;
	right:0;
}
.carouselArea .pager {
	text-align: center;
}
.carouselArea .pager a {
	background: url(../images/bt_pager_off.png) no-repeat;
	text-decoration: none;
	text-indent: -999px;
	display: inline-block;
	overflow: hidden;
	width: 20px;
	height: 20px;
	margin: 0 5px;
}
.carouselArea .pager a:hover,
.carouselArea .pager a.selected {
	background: url(../images/bt_pager_on.png) no-repeat;
}
*/

/*=============================
  etc
=============================*/
/*PC/スマホ縦
@media only screen and (orientation:portrait) {

}*/
/*PC/スマホ横
@media only screen and (orientation:landscape) {

}
*/
/*ボタン
ul.linkBtList{
	text-align: center;
}
ul.linkBtList li{
	display: inline-block;
	width: 320px;
	height: 60px;
	margin: 0px 30px;
}
ul.linkBtList li:first-child{margin-left: 0;}
ul.linkBtList li:last-child {margin-right: 0;}
ul.linkBtList li a{
	display: block;
	padding: 15px 0px;
	color: #FFF;
	font-size: 20px;
	font-weight: bold;
	background: #006469;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
	text-decoration: none;
	position: relative;
}*/
	/*IE10以降に適用されるCSSハック（一応）*/
	/*@media all and (-ms-high-contrast:none){
		ul.linkBtList li a{
			padding: 18px 0px 12px 0px;
		}
	}*/

/*三角
ul.linkBtList li a::after{
	content: '';
	position: absolute;
	top:50%;
	right: 15px;
	margin-top: -8px;
	width: 0;
	height: 0;
	border: 8px solid transparent;
	border-left: 8px solid #E5EA0A;
}*/

/*下線付きタイトル
.borderTit{
	font-size: 28px;
	color: #006469;
	padding-bottom: 20px;
	margin-bottom: 40px;
	text-align: center;
	position: relative;
}
.borderTit::after{
	content:'';
	position: absolute;
	bottom:0;
	left:50%;
	width: 70px;
	height: 1px;
	background: #666;
	margin-left: -35px;
}*/




	/*arrow
	content: '';
	position: absolute;
	top:50%;
	left: 0px;
	margin-top: -4px;
	width: 0;
	height: 0;
	border: 4px solid transparent;
	border-left: 6px solid #FFF;
	*/
	/*基準点
	-moz-transform-origin: 0% 0%;
	-webkit-transform-origin: 0% 0%;
	-o-transform-origin: 0% 0%;
	-ms-transform-origin: 0% 0%;
	transform-origin: 0% 0%;
	*/
	/*回転
	-moz-transform: rotate(-20deg);
	-webkit-transform: rotate(-20deg);
	-o-transform: rotate(-20deg);
	-ms-transform: rotate(-20deg);
	transform: rotate(-20deg);
	*/
	/*アニメーション
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-ms-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
	*/
	/*角丸
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;

	-webkit-border-radius: 0px 0px 5px 5px / 0px 0px 5px 5px;
	-moz-border-radius: 0px 0px 5px 5px / 0px 0px 5px 5px;
	border-radius: 0px 0px 5px 5px / 0px 0px 5px 5px;
	*/
	/*テキストシャドウ
	-moz-text-shadow:0px 0px 3px #666;
	-webkit-text-shadow:0px 0px 3px #666;
	text-shadow:0px 0px 3px #666;
	*/
	/*flex
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	*/
	/*テキスト行揃え
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
	*/
	/*テキスト改行しない
	white-space: nowrap;
	*/

	/*キーフレーム
	{
	//delay
	//-webkit-animation-delay: 0.5s;
	//animation-delay: 0.5s;

	-webkit-animation-duration: 1.5s;
	animation-duration: 1.5s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
	-webkit-animation-timing-function: linear;
	animation-timing-function: linear;
	//animation-timingのcubic-bezier
	//https://matthewlein.com/tools/ceaser
	/*http://easings.net/ja
	//easeOutCubic cubic-bezier(0.215, 0.610, 0.355, 1.000);
	//easeInOutExpo cubic-bezier(1.000, 0.000, 0.000, 1.000);

	-webkit-animation-name: scroll;
	animation-name: scroll;
	}
@-webkit-keyframes scroll {from {top:-35px;} to {top:35px;}}
@keyframes         scroll {from {top:-35px;} to {top:35px;}}
又は
@-webkit-keyframes scroll {
	0% {width: 0;}
	100% {width: 100%;}
}
@keyframes         scroll {
	0% {width: 0;}
	100% {width: 100%;}
}

*/
/*改行させない
	white-space: nowrap;
*/
/*上下中央01
.sample6Wrap{
	width: 100%;
	height: 100%;
	position: relative;
}
.sample6Wrap .sample6{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 100px;
	height: 100px;
}
*/
/*上下中央02（CSS3高さ幅不明で使用可）
	position: relative;
	top: 50%;
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
*/

/*=======================================
  ## 20250311 パンくずリストの設定
=======================================*/
.breadcrumb {
    display: flex;
	width: 80%;
    max-width: 1018px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 5px;
}
.breadcrumb > span {
    padding: 0 5px;
}
.breadcrumb > span:last-child {
    max-width: 250px;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}

/* 20250331 運営情報の記載 */
.footer-comany-info{
	margin-top: 30px;
}

.footer-comany-info__txt{
	font-size: 12px;
	line-height: 1.75em;
} 

.footer-comany-info__txt span{
	font-size: 14px;
}

/*=======================================
  ## 20250519 新規ページ作成について
=======================================*/
.content-top-txt{
	width: 80%;
	max-width: 1020px;
	margin: 0 auto 40px;
	font-size: 18px;
	text-align: center;
	line-height: 1.8em;
}
.service-top-txt>.inner {
	padding-top: 5.5vw;
	position: relative;
	width: 80%;
	max-width: 1020px;
	margin-left: auto;
	margin-right: auto;
}
.whowhat-worries p{
	margin: 30px 0;
}
.worries-area .worries-dot-txt{
	display: block;
	width: 40%;
	max-width: 1020px;
	margin: 0 auto;
	margin-bottom: 40px;
	padding: 20px;
	font-size: 18px;
	border: dotted 3px #000066;
	text-align: center;
}
.service-content-area{
	margin: 80px 0;
}
.service-content-list{
	display: flex;
	width: 80%;
	max-width: 1020px;
	margin: 0 auto;
	font-size: 18px;
	line-height: 1.8em;
}
.service-content-list > li{
	width: calc(95%/2);
}
.service-content-list > li:first-child{
	margin-right: 5%;
}
.service-content-list-in > li{
	margin-bottom: 30px;
}
.service-list-top-ttl{
	margin-bottom: 10px;
	padding: 10px;
	text-align: center;
	background: #F2F2F2;
}
.service-list-txt{
	font-size: 13px;
}
.service-list-ttl{
	margin-bottom: 10px;
	padding: 10px;
	text-align: center;
	border: solid 2px #000066;
}
.service-txt-indent{
	padding-left: 1em;
	text-indent: -1em;
	font-size: 13px;
}
.service-feature-area{
	margin: 0 0 80px;
}
.feature-content-list{
	width: 80%;
	max-width: 1020px;
	margin: 0 auto;
	padding: 40px;
	font-size: 18px;
	line-height: 1.8em;
	border: solid 2px #000066;
}
.feature-content-list li{
	margin-bottom: 40px;
}
.feature-content-list li:last-child{
	margin-bottom: 0;
}
.feature-content-ttl{
	margin-bottom: 10px;
	padding: 10px;
	text-align: center;
	background: #F2F2F2;
}
.service-flow-area{
	margin: 0 0 60px;
}
.service-flow-list{
	width: 50%;
	max-width: 1020px;
	margin: 0 auto;
	padding: 40px;
	font-size: 18px;
	line-height: 1.8em;
}
.service-flow-list li{
	position: relative;
	display: flex;
	margin-bottom: 40px;
	padding: 10px 60px;
	background: #F2F2F2;
}
.service-flow-list li:last-child{
	margin-bottom: 0;
}
.service-flow-list li::before{
	content: "";
	position: absolute;
	bottom: -85px;
	left: calc(50% - 30px);
	transform: translateY(-50%);
	border: 30px solid transparent;
	border-top: 20px solid #000066; 
}
.service-flow-list li:last-child::before{
	content: none;
}
.service-flow-list .step-txt{
	padding-right: 30px;
}
.question-content-area{
	margin-bottom: 80px;
}
.question-accordion {
	position: relative;
	width: 80%;
	max-width: 1020px;
	margin: 0 auto 30px;
	border: 2px solid #000066;
	font-size: 18px;
	line-height: 1.8em;
}
.question-accordion::before {
	position: absolute;
	content: "Q";
	top: 20px;
	left: 10px;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: 2em;
	height: 2em;
	background-color: #000066;
	color: #fff;
	border-radius: 50%;
	font-weight: bold;
	font-size: 1em;
	margin-right: 0.5em; 
}
.question-accordion summary {
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: relative;
	padding: 20px 2em 20px 60px;
	cursor: pointer;
}
.question-accordion summary::-webkit-details-marker {
	display: none;
}
.question-accordion summary::before,
.question-accordion summary::after {
	width: 2px;
	height: .9em;
	border-radius: 5px;
	background-color: #000066;
	content: '';
}
.question-accordion summary::before {
	position: absolute;
	right: 2em;
	rotate: 90deg;
}
.question-accordion summary::after {
	transition: rotate .3s;
}
.question-accordion[open] summary::after {
	rotate: 90deg;
}
.question-accordion p {
	transform: translateY(-10px);
	opacity: 0;
	margin: 0;
	padding: 20px 2em 20px 60px;
	transition: transform .5s, opacity .5s;
}
.question-accordion[open] p {
	transform: none;
	opacity: 1;
	position:relative;
}
/* ▼20250529 add */
.question-accordion[open] p::before {
	position: absolute;
	content: "A";
	top: 20px;
	left: 10px;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: 2em;
	height: 2em;
	background-color: #fff;
	color: #000066;
	border-radius: 50%;
	font-weight: bold;
	font-size: 1em;
	margin-right: 0.5em; 
    border: 2px solid #000066;
}
/* ▲20250529 add */
.service-top-txt>.inner::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 0;
	border: 1.2vw solid transparent;
	border-left: 1.2vw solid #000066;
	border-top: 1.2vw solid #000066;
}
.inquiry-bnr-area .inquiry-bnr-top-txt {
	display: block;
	width: 60%;
	max-width: 1020px;
	margin: 0 auto;
	margin-bottom: 20px;
	font-size: 18px;
	text-align: center;
}
.inquiry-bnr-area .inquiry-bnr-top-txt br{
	display: none;
}
#fnav.nav-retouch{
	display: block;
}
.fnav-in{
	display: flex;
}
.fmenu-width li{
	width: 100% !important;
	max-width: none !important;
}
.fmenu-width li:nth-child(n+2){
	padding-left: 20px;
}
@media (min-width: 1280px) {
	.service-top-txt>.inner {
		padding-top: 70px;
	}
	.service-top-txt>.inner::before {
		border: 15px solid transparent;
		border-left: 15px solid #000066;
		border-top: 15px solid #000066;
	}
	.fmenu-width li p {
		font-size: 0.14rem;
	}
}
.feature-article-ttl {
	margin-top: 20px;
}
.feature-content-list li.feature-article-listItem {
	padding-left: 20px;
	margin-bottom: 0;
}
.feature-content-list li.feature-article-listItem a {
	text-decoration: underline;
}
.feature-content-list li.feature-article-listItem::before {
	content: "・";
	display: inline-block;
	margin-left: -20px;
	padding-right: 2px;
}


/*=======================================
  ## 20250826 ハンバーガーメニュー
=======================================*/
nav#gnav.cmn-remodal.remodal {
    overflow: auto;
}
nav#gnav .inner.cmn-inner {
    max-width: inherit !important;
    width: 100%;
    height: 100%;
    padding: 40px 20px;
    box-sizing: border-box;
    position: initial;
    top: inherit;
    left: inherit;
    transform: inherit;
    overflow-y: scroll;
}
nav#gnav .inner.cmn-inner ul.gmenu {
    width: 100%;
}
nav#gnav .inner.cmn-inner ul.sns li.it-navi {
    width:100%;
}

nav#gnav ul.gmenu li.cmn-gmenu-list .toggle-list {
    font-size: 1vw;
    color: #ffffff;
    letter-spacing: 1px;
}
nav#gnav ul.gmenu li.cmn-gmenu-list .sublist .sublist-itm {}
nav#gnav ul.gmenu li.cmn-gmenu-list .sublist .sublist-itm a {
    font-size: 1vw;
    font-weight: 400;
    color: #ffffff;
    letter-spacing: 1px;
    line-height: 1.5;
}
nav#gnav ul.gmenu li.cmn-gmenu-list .sublist {
    padding: 1.5vw 10px 0;
}
nav#gnav ul.gmenu li.cmn-gmenu-list .sublist .sublist-itm.cmn-sublist-itm {
    padding-left: 10px;
}
@media(min-width:1280px) {
    nav#gnav ul.gmenu li.cmn-gmenu-list .toggle-list {
        font-size: 0.14rem;
        color: #ffffff;
        letter-spacing: 1px;
    }
    nav#gnav ul.gmenu li.cmn-gmenu-list .sublist .sublist-itm {}
    nav#gnav ul.gmenu li.cmn-gmenu-list .sublist .sublist-itm a {
        font-size: 0.14rem;
        color: #ffffff;
        letter-spacing: 1px;
        line-height: 1.5;
    }
    nav#gnav ul.gmenu li.cmn-gmenu-list .sublist {
        padding: 1.5vw 10px 0;
    }
    nav#gnav ul.gmenu li.cmn-gmenu-list .sublist .sublist-itm.cmn-sublist-itm {
        padding-left: 10px;
    }
}


/*=======================================
  ## 20250826 フッターメニュー
=======================================*/
footer #fnav.cmn-fnav {
    flex-wrap: wrap;
}
footer #fnav.cmn-fnav ul.fmenu.fmenu-s li {
    max-width: 155px;
}
footer #fnav.cmn-fnav ul.fmenu.cmn-fmenu-s ul {
    margin-top: 1.56vw;
}
footer #fnav.cmn-fnav ul.fmenu.cmn-fmenu-s li {
    width: 100%;
    margin-bottom: 1.56vw;
    max-width: inherit;
}
footer #fnav.cmn-fnav ul.fmenu.cmn-fmenu-s li ul li {
    padding-left: 15px;
}
@media(min-width:1280px) {
    footer #fnav.cmn-fnav {
        padding-left: 270px;
    }
    footer #fnav.cmn-fnav ul.fmenu.cmn-fmenu-s ul {
        margin-top: 20px;
    }
    footer #fnav.cmn-fnav ul.fmenu.cmn-fmenu-s li {
        width: 100%;
        margin-bottom: 20px;
        max-width: inherit;
    }
    footer #fnav.cmn-fnav ul.fmenu.cmn-fmenu-s li ul li {
        padding-left: 15px;
    }
}

.cmn-footer-comany-info.footer-comany-info {
    position: absolute;
    top: 60px;
}
.cmn-footer-comany-info.footer-comany-info .footer-comany-info__txt,
.cmn-footer-comany-info.footer-comany-info .footer-comany-info__txt span {
    font-size: 0.8vw;
}
.cmn-footer-comany-info.footer-comany-info span {}
@media(min-width:1280px) {
    .cmn-footer-comany-info.footer-comany-info {}
    .cmn-footer-comany-info.footer-comany-info .footer-comany-info__txt,
    .cmn-footer-comany-info.footer-comany-info .footer-comany-info__txt span {
        font-size: 0.11rem;
    }
    .cmn-footer-comany-info.footer-comany-info span {}
}