@charset "utf-8";

/* reset
---------------------------------------------------- */
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video {
margin:0; padding:0; border:0; outline:0; font-size:100%; font-weight:normal; font-style:normal; vertical-align:middle; background:transparent; }
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section { display:block; }
blockquote:before,blockquote:after,q:before,q:after { content:''; content:none; }
ol,ul { list-style:none;} 
table { border-collapse:collapse; border-spacing:0; width:100%; } 
caption,th { text-align:left; }
a { margin:0; padding:0; font-size:100%; vertical-align:baseline; background:transparent; }
input,select,textarea { font-family:inherit; vertical-align:baseline; font-size:100%; font-weight:normal; box-sizing:border-box; }
label { white-space:nowrap; }
img	{ vertical-align:middle; font-size:0; line-height:0; max-width:100%; }
iframe { max-width:100%; }
span,strong { vertical-align:baseline; }
strong { font-weight:bold; } 
body { -webkit-text-size-adjust:100%; }



/* baseSet
-------------------------------------------------------------------------------------------------------- */
/* common class */
.left		{ float:left; }
.right	{ float:right; }	
.tac		{ text-align:center; }
.tar		{ text-align:right; }
.mb10	{ margin-bottom:10px; }
.mb20	{ margin-bottom:20px; }
.mb30	{ margin-bottom:30px; }
.mb40	{ margin-bottom:40px; }
.mb50	{ margin-bottom:50px; }
.mb60	{ margin-bottom:60px; }
.mb600	{ margin-bottom:600px; }
@media screen and (max-width: 480px) {
.left		{ float:none; }
.right	{ float:none; }	

}


/* unique class */
body		{ color:#333; font:100%/1.6 "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; min-width:1000px; }
a				{ color:#326f98; outline:none; text-decoration:none; }
a:hover		{ text-decoration:none; }
.inner		{ padding:0 20px; margin:0 auto; width:960px; position:relative; }
.sectTitle	{ padding:20px 0 30px; color:#000; font-size:150%; font-weight:bold; border-top:#000 1px solid; }
.bold			{ color:#000; font-weight:bold; }
.linkBtn		{ margin:60px 0; }
.linkBtn	 a	{ display:block; padding:14px 0 10px; margin:0 auto; max-width:400px; text-align:center; color:#fff; background: url(../img/common/ico_ar_wh.png) no-repeat 94% center #326f98; }
.prevBtn		{ margin:60px; }
.prevBtn a	{ display:block; padding:14px 0 10px; margin:0 auto; max-width:400px; text-align:center; color:#326f98; background: url(../img/common/ico_prev_bl.png) no-repeat 10% center; border: 1px solid #326f98; }
@media screen and (max-width: 480px) {
body	{ font-size:14px; min-width:inherit; }
.inner		{ padding:0 10px; width:auto; }
.sectTitle	{ padding:10px 0 10px; font-size:150%; }
.linkBtn		{ margin:20px 0; }
.linkBtn	 a	{ background-position:96% center; }
.prevBtn		{ margin:30px; }
.prevBtn a	{ display:block; padding:14px 0 10px; margin:0 auto; max-width:400px; text-align:center; color:#326f98; background: url(../img/common/ico_prev_bl.png) no-repeat 10% center; border: 1px solid #326f98; }
}



/* header
-------------------------------------------------------------------------------------------------------- */
header							{ position:relative; }
header #logoBox			{ float:left; }
header #headline			{ padding:10px 0 10px; font-size:75%; line-height:1.2; }
header #logo				{ float:left; padding:0 0 20px; }
header #hNav				{ float:right; width:250px; margin:-10px 0 22px; }
header #hNav li			{ float:left; text-align:center; }
header #hNav li a		{ display:block; padding-top:30px; width:120px; font-size:75%; font-weight:bold; border-left:#d5d5d5 1px solid; background:no-repeat center top; box-sizing:border-box; }
header #hNav li:first-child a	{ background-image:url(../img/common/head_ico_contact.png); }
header #hNav li:last-child a		{ background-image:url(../img/common/head_ico_download.png); border-right:#d5d5d5 1px solid; }
header #hNav02			{ margin-top:-2px; float:right; padding-right:20px; }
header #hNav02 li		{ padding:2px 0 0; font-size:12px; font-weight:bold; }
header #hNav02 li a	{ padding-left:14px; background:url(../img/common/ico_ar_bl.png) no-repeat left center; background-size:6px; }
@media screen and (max-width: 480px) {
header							{ height:50px; border-bottom:#326f98 3px solid; }
header .inner				{ padding:0 5px; }
header #logoBox			{ float:none; }
header #headline			{ display:none; padding:10px 0 4px; width:60%; font-size:66%; }
header #logo				{ float:none; padding:14px 0 14px; width:250px; }
header #hNav				{ display:none; }
header #hNav02			{ display:none; }
}


#gNav							{ background-color:#326f98; }
#gNav #gMenuBtn		{ display:none; }
#gNav #gMenu			{ display:table; width:100%; text-align:center; height:60px; }
#gNav #gMenu > li			{ display:table-cell; width:16.66%; }
#gNav #gMenu li >	a			{ display:block; padding:20px 0 16px; color:#fff; text-decoration:none; }
#gNav #gMenu li:nth-child(2).focus,
#gNav #gMenu li:nth-child(4).focus,
#gNav #gMenu li:nth-child(6).focus		{ background-color:#333; }
#gNav #gMenu li.spMenu			{ display:none; }
#gNav #gMenu li .inBox				{ display:none; position:absolute; top:61px; left:0; padding:40px; width:100%; text-align:left; z-index:10; background-color:#333; box-sizing:border-box; }
#gNav #gMenu li .inBox .title		{ padding-bottom:20px; font-weight:bold; text-align:left; border-bottom:#666 1px solid; }
#gNav #gMenu li .inBox .title a	{ display:inline-block; padding-right:20px; font-size:20px; color:#fff; background:url(../img/common/ico_ar_wh.png) no-repeat right center; }
#gNav #gMenu li .inBox ul			{ margin-left:-3%; }
#gNav #gMenu li .inBox ul li		{ float:left; width:50%; padding-left:3%; box-sizing:border-box; }
#gNav #gMenu li .inBox ul li a			{ display:block; padding:14px 0; line-height:1.4;  border-bottom:#666 1px dotted;}
#gNav #gMenu li .inBox ul li a img	{ float:left; width:120px; height:80px; background-color:#fff; }
#gNav #gMenu li .inBox ul li a p		{ float:left; padding:16px 0 0 30px; background:url(../img/common/ico_ar_wh.png) no-repeat 14px 20px; }
@media screen and (max-width: 480px) {
#gNav .inner				{ padding:0; }
#gNav #gMenuBtn		{ display:block; position:absolute; top:-48px; right:4px; }
#gNav #gMenuBtn a	{ display:block; padding-top:40px; overflow:hidden; height:0; background:url(../img/common/btn_gmenubtn.png) no-repeat center center; background-size:contain; }
#gNav #gMenu			{ display:block; position:absolute; top:0; left:0; overflow:hidden; height:0; width:100%; z-index:2; -moz-transition: 0.5s; -webkit-transition: 0.5s; transition: 0.5s;  background:rgba(50,111,152,0.95); box-shadow:0 2px 5px rgba(0,0,0,0.3); }
#gNav #gMenu.view	{ height:auto; }
#gNav #gMenu > li			{ display: block; width:auto; border-bottom:#ccc 1px solid; }
#gNav #gMenu li >	a			{ font-weight:bold; }
#gNav #gMenu li.spMenu			{ display:block; }
#gNav #gMenu li .inBox				{ position: inherit; padding:0; width:100%; }
#gNav #gMenu li .inBox .title		{ display:none; }
#gNav #gMenu li .inBox ul			{ margin-left:0; border-top:#ccc 1px solid; }
#gNav #gMenu li .inBox ul li		{ padding:0 1%; border:none; }
#gNav #gMenu li .inBox ul li a			{ height:48px; padding:10px 0 10px; }
#gNav #gMenu li .inBox ul li a img	{ display:none; }
#gNav #gMenu li .inBox ul li a p		{ float:none; padding:0 0 0 16px; font-size:12px; background-position:4px 2px; background-size:8px; }
#gNav #gMenu li:nth-child(2) .inBox li a p		{ font-size:11px; }
#gNav #gMenu li:nth-child(4) .inBox li a p		{ line-height:50px; background-position:left center; }
#gNav #gMenu li:nth-child(6) .inBox li a p		{ line-height:50px; background-position:left center; }
}


/* contents
-------------------------------------------------------------------------------------------------------- */
#pageNav				{ padding:50px 0 0; margin-bottom:30px; line-height:1.4; border-bottom:#ddd 1px solid; }
#pageNav .title		{ float:left; font-size:40px; color:#326F98; font-family:"ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif; }
#pageNav ul			{ float:right; padding-top:10px; font-size:14px; line-height:1.2; }
#pageNav ul li			{ display:inline-block; text-align:center; }
#pageNav ul li a		{ display:block; color:#666; padding:16px 15px 14px; }
#pageNav ul li.act > a		{ font-weight:bold; color:#326F98; border-bottom:#326F98 4px solid;  }
@media screen and (max-width: 480px) {
#pageNav				{ padding:20px 0 0; margin-bottom:10px; }
#pageNav .inner		{ padding:0; }
#pageNav .title		{ float:none; font-size:32px; padding-left:10px; margin-bottom:4px; }
#pageNav ul			{ float:none; display:table; width:100%; padding-top:0; font-size:12px; line-height:1.2; }
#pageNav ul li			{ display:table-cell; }
#pageNav ul li a		{ display:block; padding:18px 8px 14px; border-bottom:#fff 4px solid; }
#pageNav ul li.act > a		{ font-weight:bold; color:#326F98; border-bottom:#326F98 4px solid;  }
}

#exactly				{ padding:60px 0; border-top:#ddd 1px solid; }
#exactly .inner		{ background: url(../img/common/p_exactly.png) no-repeat 97% center; }
#exactly .title		{ margin-bottom:20px; font-size:225%; color:#326f98; font-weight:bold; }
#exactly p			{ width:52%; }
@media screen and (max-width: 480px) {
#exactly				{ padding:20px 0; }
#exactly .inner		{ background: none; }
#exactly .title		{ margin-bottom:10px; font-size:20px; }
#exactly p			{ width:auto; }
}



#announce				{ padding:30px 0 40px; color:#fff; background-color:#326F98; }
#announce .title		{ margin-bottom:20px; text-align:center; color:#fff; font-size:32px; }
#announce .inBox	{ float:left; width:33.33%; padding-top:100px; background:no-repeat center top; border-right:#84A9C1 1px solid; box-sizing:border-box; }
#announce .inBox .sTitle		{ margin-bottom:10px; font-size:20px; text-align:center; }
#announce .inBox.first			{ background-image:url(../img/common/ico_tel.png); border-left:#84A9C1 1px solid; }
#announce .inBox.second	{ background-image:url(../img/common/ico_mail.png); }
#announce .inBox.third		{ background-image:url(../img/common/ico_download.png); }
#announce .inBox .txt			{ font-size:14px; line-height:1.3; text-align:center; }
#announce .inBox .tel			{ margin:10px 0; text-align:center; font-size:28px; font-weight:bold; line-height:1.2; }
#announce .inBox .tel a		{ color:#fff; }
#announce .inBox .tel span.memo	{ display:block; font-size:12px; }
#announce .inBox .linkBtn		{ margin:10px 0; }
#announce .inBox .linkBtn a	{ max-width:240px; color:#326f98; background-color:#fff; background-image:url(../img/common/ico_ar_bl.png); }
@media screen and (max-width: 480px) {
#announce				{ padding:20px 0 20px; }
#announce .title		{ margin-bottom:10px; text-align:center; color:#fff; font-size:18px; font-weight:bold; }
#announce .inBox	{ float:none; width:auto; padding:10px 0 4px 24%; text-align:left; background:no-repeat left top; border:none; border-bottom:#84A9C1 1px solid; }
#announce .inBox .sTitle		{ margin-bottom:4px; font-size:16px; text-align:left; font-weight:bold; }
#announce .inBox.first			{ border-left:none; border-top:#84A9C1 1px solid; }
#announce .inBox.first,
#announce .inBox.second,
#announce .inBox.third		{ background-size:20%; }
#announce .inBox .txt			{ font-size:12px; line-height:1.2; text-align:left; }
#announce .inBox .tel			{ margin:10px 0; text-align:left; font-size:20px; font-weight:bold; line-height:1.2; }
#announce .inBox .linkBtn		{ margin:10px 0; }
#announce .inBox .linkBtn a	{ margin:0; }
}



#pageTop	{ position: fixed; right:10px; bottom:10px; }
#pager				{}
#pager ul			{}
#pager ul li		{ float:left; margin-right:20px; text-align:center; }
#pager ul li a	{ display:block; padding:10px 10px 6px; width:40px; font-weight:bold; color:#326F98; border:#326F98 1px solid; box-sizing:border-box; }
#pager ul li.prev a	{ width:240px; background:url(../img/common/ico_prev_bl.png) no-repeat 10% center; }
#pager ul li.next a	{ width:240px; background:url(../img/common/ico_ar_bl.png) no-repeat 90% center; }
#pager ul li.act a		{ color:#fff; background-color:#326F98; }
#pager.detail ul li.next	{ float:right; }
@media screen and (max-width: 480px) {
#pager ul			{ position:relative; padding-bottom:60px; }
#pager ul li		{ margin:0 20px 20px 0; }

#pager ul li.prev		{ position:absolute; top:60px; left:0; margin:0; }
#pager ul li.prev a	{ width:140px; }
#pager ul li.next		{ position:absolute; top:60px; right:0; margin:0; }
#pager ul li.next a	{ width:140px; }



}



/* footer
-------------------------------------------------------------------------------------------------------- */
footer			{ padding:50px 0 30px; background-color:#333; }
footer .title	{ margin-bottom:30px; text-align:center; font-size:22px; color:#fff; }
footer #pList		{ margin-left:-1.25%; }
footer #pList li		{ float:left; padding-left:1.25%; margin-bottom:12px; /*width:16.66%;*/ width:25%; box-sizing:border-box; }
footer #fNav		{ padding:20px 0 10px; margin:30px 0; border-bottom:#aaa 1px solid; border-top:#aaa 1px solid; }
footer #fNav li		{ float:left; margin-bottom:10px; width:20%; }
footer #fNav li	 a	{ padding-left:16px; color:#fff; background:url(../img/common/ico_ar_wh.png) no-repeat left center;  }
footer #fLogo				{ float:left; }
footer #copyRight		{ float:right; padding-top:10px; font-size:75%; color:#999; }
footer #copyRight a	{ color:#999; }
@media screen and (max-width: 480px) {
footer			{ padding:20px 0; }
footer .title	{ margin-bottom:10px; text-align:center; font-size:22px; line-height:1.2; }
footer #pList li		{ margin-bottom:1.25%; width:50%; }
footer #fNav		{ padding:10px 0 0; margin:10px 0; }
footer #fNav li		{ float:left; margin-bottom:10px; width:50%; }
footer #fNav li	 a	{ padding-left:12px; background-size:6px; }
footer #fLogo				{ float:none; padding-top:10px; width:280px; }
footer #copyRight		{ float:none; padding-top:20px; font-size:60%; }
}

/* .formBox
-------------------------------------------------------------------------------------------------------- */
.status .day		{ display:inline-block; margin-right:10px; }
.status .cat		{ display:inline-block; font-size:12px; padding:2px 10px 0; margin-top:-4px; color:#fff; font-weight:normal; }
.status .cat.news			{ background-color:#326f98; }
.status .cat.products	{ background-color:#00b5ac; }
.status .cat a				{ color:#fff; }



/* .formBox
-------------------------------------------------------------------------------------------------------- */
.formBox							{ margin-bottom:200px; }
.formBox .formNav			{ padding:20px; margin-bottom:40px; background-color:#f0f0f0; }
.formBox .formNav li		{ float:left; margin-right:20px; }
.formBox .lead					{ margin-bottom:40px; }
.formBox .lead a				{ text-decoration:underline; }
.formBox .errTitle			{ font-weight:bold; color:#E3007F; }
.formBox .error				{ padding:10px; margin-bottom:40px; border:#E3007F 1px solid; }
.formBox .error li				{ color:#E3007F; }
.formBox table					{ border-top:#bfbfbf 1px dotted; }
.formBox table th			{ padding:20px 20px 16px; width:240px; vertical-align:top; border-bottom:#bfbfbf 1px dotted; }
.formBox table th span	{ display:inline-block; padding:1px 10px 0; margin:-2px 0 0 6px; font-size:10px; color:#fff; vertical-align:middle; background-color:#326F98; }
.formBox table td			{ padding:20px 20px 16px; border-bottom:#bfbfbf 1px dotted; }
.formBox table td input[type=text]				{ padding:6px 4px; width:400px; }
.formBox table td input.birth[type=text]		{ width:100px; }
.formBox table td input.zip[type=text]		{ margin-bottom:10px; width:140px; }
.formBox table td textarea							{ min-width:400px; min-height:120px; }
.formBox table td.labelBlock label				{ display:block; }
.formBox .thx				{}
.formBox .thx span		{ font-size:0.8em; }
@media screen and (max-width: 480px) {
.formBox							{ margin-bottom:40px; }
.formBox .formNav			{ padding:10px; margin-bottom:20px; }
.formBox .formNav li		{ width:90px; margin-right:2px; }
.formBox .formNav li:last-child	{ margin:0; }
.formBox .lead					{ margin-bottom:40px; }
.formBox .lead a				{ text-decoration:underline; }

.formBox .error				{ margin-bottom:20px; }

.formBox table					{ border-top:#bfbfbf 1px dotted; }
.formBox table th			{ display:block; padding:12px 0 10px; width:auto; border-bottom:none; }
.formBox table td			{ display:block; padding:0 10px 10px; }
.formBox table td input[type=text]				{ padding:6px 4px; width:100%; }
.formBox table td input.birth[type=text]		{ width:60px; }
.formBox table td input.zip[type=text]		{ margin-bottom:10px; width:100px; }
.formBox table td textarea							{ min-width:inherit; min-height:120px; width:100%; }
.formBox table td label								{ display:block; padding:10px 0; }
.formBox .thx				{}
.formBox .thx span		{ font-size:0.8em; }





}




/* clearfix
---------------------------------------------------- */
#gNav #gMenu li .inBox ul li a:after,
section:after,
.inner:after,
.inBox:after,
.clearfix:after { visibility:hidden; display:block; font-size:0; content:" "; clear:both; height:0; }


/* 20220210 add 
---------------------------------------------------- */
.cs1-brn img { width: 100%; height: auto;}
.u-only-sp { display: none;}
@media screen and (max-width: 480px) {
.u-only-sp { display: block;}
.u-only-pc { display: none;}
}


/* 20250626 add 
---------------------------------------------------- */
#gMenu .gMenu-sublist-id { font-size: 13px;}
#gNav #gMenu li .inBox { width: 1000px;}
#gMenu .link-recruit a { position: relative;}
#gMenu .link-recruit a::after { content: ""; display: block; position: absolute; top: calc(50% - -2px); transform: translateY(-50%); right: 22px; width: 14px; height: 14px; background-image: url(../img/common/icon-blank_wh.svg); background-position: center; background-repeat: no-repeat; background-size: contain;}
#fNav .link-recruit a { position: relative;}
#fNav .link-recruit a::after { content: ""; display: block; position: absolute; top: 50%; transform: translateY(-50%); right: -20px; width: 14px; height: 14px; background-image: url(../img/common/icon-blank_wh.svg); background-position: center; background-repeat: no-repeat; background-size: contain;}
@media screen and (max-width: 480px) {
#gNav #gMenu li .inBox { width: 100%;}
#gMenu .link-recruit a::after { right: 135px;}
}