@charset "UTF-8";

/* --------------------------------------------------------------
common
-------------------------------------------------------------- */

/* --------------------------------------------------------------
basesize:font-size:14px

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%
-------------------------------------------------------------- */

a { outline: none; }

.alt { display: none;}

.clear { clear: both;}

.flL { float: left!important; }
.flR { float: right!important; }
.clear { clear: both!important; }

.alC { text-align: center!important; }
.alR { text-align: right!important; }
.alL { text-align: left!important; }

.red,
.msg { color:#f00;}

/* clearfix
----------------------------------------------------*/
.cf{
	zoom: 1; /* for IE 5.5-7 */
}

.cf:after { /* for modern browser */
	content: ".";
	display: block;
	visibility: hidden;
	height: 0;
	font-size: 0.1em;
	line-height: 0;
	clear: both;
}


/* margin
----------------------------------------------------*/
.mt0 { margin-top: 0px !important; }
.mt5 { margin-top: 5px !important; }
.mt10 { margin-top: 10px !important; }
.mt15 { margin-top: 15px !important; }
.mt20 { margin-top: 20px !important; }
.mt25 { margin-top: 25px !important; }
.mt30 { margin-top: 30px !important; }
.mt35 { margin-top: 35px !important; }
.mt40 { margin-top: 40px !important; }
.mt45 { margin-top: 45px !important; }
.mt50 { margin-top: 50px !important; }

.mr0 { margin-right: 0px !important; }
.mr5 { margin-right: 5px !important; }
.mr10 { margin-right: 10px !important; }
.mr15 { margin-right: 15px !important; }
.mr20 { margin-right: 20px !important; }
.mr25 { margin-right: 25px !important; }
.mr30 { margin-right: 30px !important; }
.mr35 { margin-right: 35px !important; }
.mr40 { margin-right: 40px !important; }
.mr45 { margin-right: 45px !important; }
.mr50 { margin-right: 50px !important; }

.mb0 { margin-bottom: 0px !important; }
.mb5 { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb25 { margin-bottom: 25px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb35 { margin-bottom: 35px !important; }
.mb40 { margin-bottom: 40px !important; }
.mb45 { margin-bottom: 45px !important; }
.mb50 { margin-bottom: 50px !important; }
.mb55 { margin-bottom: 55px !important; }

.ml0 { margin-left: 0px !important; }
.ml5 { margin-left: 5px !important; }
.ml8 { margin-left: 7px !important; }
.ml10 { margin-left: 10px !important; }
.ml15 { margin-left: 15px !important; }
.ml20 { margin-left: 20px !important; }
.ml25 { margin-left: 25px !important; }
.ml30 { margin-left: 30px !important; }
.ml35 { margin-left: 35px !important; }
.ml40 { margin-left: 40px !important; }
.ml45 { margin-left: 45px !important; }
.ml50 { margin-left: 50px !important; }


/* padding
----------------------------------------------------*/
.pt0 { padding-top: 0px !important; }
.pt5 { padding-top: 5px !important; }
.pt10 { padding-top: 10px !important; }
.pt15 { padding-top: 15px !important; }
.pt20 { padding-top: 20px !important; }
.pt25 { padding-top: 25px !important; }
.pt30 { padding-top: 30px !important; }
.pt35 { padding-top: 35px !important; }
.pt40 { padding-top: 40px !important; }
.pt45 { padding-top: 45px !important; }
.pt50 { padding-top: 50px !important; }

.pr0 { padding-right: 0px !important; }
.pr5 { padding-right: 5px !important; }
.pr10 { padding-right: 10px !important; }
.pr15 { padding-right: 15px !important; }
.pr20 { padding-right: 20px !important; }
.pr25 { padding-right: 25px !important; }
.pr30 { padding-right: 30px !important; }
.pr35 { padding-right: 35px !important; }
.pr40 { padding-right: 40px !important; }
.pr45 { padding-right: 45px !important; }
.pr50 { padding-right: 50px !important; }

.pb0 { padding-bottom: 0px !important; }
.pb5 { padding-bottom: 5px !important; }
.pb10 { padding-bottom: 10px !important; }
.pb15 { padding-bottom: 15px !important; }
.pb20 { padding-bottom: 20px !important; }
.pb25 { padding-bottom: 25px !important; }
.pb30 { padding-bottom: 30px !important; }
.pb35 { padding-bottom: 35px !important; }
.pb40 { padding-bottom: 40px !important; }
.pb45 { padding-bottom: 45px !important; }
.pb50 { padding-bottom: 50px !important; }

.pl0 { padding-left: 0px !important; }
.pl5 { padding-left: 5px !important; }
.pl10 { padding-left: 10px !important; }
.pl15 { padding-left: 15px !important; }
.pl20 { padding-left: 20px !important; }
.pl25 { padding-left: 25px !important; }
.pl30 { padding-left: 30px !important; }
.pl35 { padding-left: 35px !important; }
.pl40 { padding-left: 40px !important; }
.pl45 { padding-left: 45px !important; }
.pl50 { padding-left: 50px !important; }

/* width
----------------------------------------------------*/
.w50 { width:50px!important; }
.w100 { width:100px!important; }
.w150 { width:150px!important; }
.w160 { width:160px!important; }
.w170 { width:170px!important; }
.w200 { width:200px!important; }
.w220 { width:220px!important; }
.w240 { width:240px!important; }
.w250 { width:250px!important; }
.w300 { width:300px!important; }
.w350 { width:350px!important; }
.w360 { width:360px!important; }
.w400 { width:400px!important; }
.w450 { width:450px!important; }
.w480 { width:480px!important; }
.w500 { width:500px!important; }
.w550 { width:550px!important; }
.w600 { width:600px!important; }

/* fontsize
----------------------------------------------------*/

.fs10{font-size:10px!important;}
.fs12{font-size:12px!important;}
.fs14{font-size:14px!important;}
.fs16{font-size:16px!important;}
.fs18{font-size:18px!important;}
.fs20{font-size:20px!important;}
.fs24{font-size:24px!important;}
.fs28{font-size:28px!important;}

a:hover img,
input.bt:hover{
	filter: alpha(opacity=70);
	-moz-opacity:0.70;
	opacity:0.70;
	}

.error{
	color:#f00;
	}

body {
line-height:1.5;
padding:0;
margin:0;
color: #333;
font-family:'Meiryo', 'メイリオ', Verdana, 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Osaka, 'ＭＳ Ｐゴシック', "MS P Gothic" ,sans-serif;
font-size:14px;
}

ul,li,h1,h2,h3,h4,h5,p,dl,dt,dd,a,img,div,form,input,span {
margin: 0;
padding: 0;
}

img,div {
border: 0;
}

ul,li {
list-style:none;
}

a         {text-decoration:underline;}
a:link    {color:#0000de;text-decoration:underline;}
a:visited {color:#441188;text-decoration:underline;}

a:hover,
a:focus,
a:active   {color:#0055ff;text-decoration:underline;}

a .pdf {
	position:relative;
	top:2px;
	margin:0 0 0 5px;
	}

/* --------------------------------------------------------------
header
-------------------------------------------------------------- */

header {
	height:95px;
	}

header .inner {
	width:990px;
	margin:0 auto;
	position:relative;
	}

header .inner h1 {
	position:absolute;
	top:20px;
	left:20px;
	}

header .inner h1 a:hover img {
	filter: alpha(opacity=100);
	-moz-opacity:1;
	opacity:1;
	}

header .inner p {
	position:absolute;
	top:55px;
	left:305px;
	font-size:14px;
	}

header .inner .rightArea {
	float:right;
	width:490px;
	position:relative;
	padding:10px 0 0 0;
	}

header .inner .rightArea .topBlock {
	padding:0 0 8px 0;
	}

header .inner .rightArea dl {
	background:#eeeeee;
	border-radius:20px;
	width:140px;
	float:right;
	padding:5px 11px 5px 90px;
	position:relative;
	margin-left: 10px;
	}

header .inner .rightArea dl dt {
	position:absolute;
	top: 5px;
	left:15px;
	font-size:86%;
	padding:4px 8px 0 0;
	vertical-align:middle;
	font-size:12px;
	}

header .inner .rightArea dl dd {
	float:left;
	padding:0 4px 0 0;
	width:42px;
	height:24px;
	}

header .inner .rightArea dl dd a {
	float:left;
	display:block;
	width:42px;
	height:24px;
	}

header .inner .rightArea dl dd a span {
	display:none;
	}

header .inner .rightArea dl dd.fontS a {
	background:url(/common/image/bg_font_s.gif) 0 -24px no-repeat
	}

header .inner .rightArea dl dd.fontM a {
	background:url(/common/image/bg_font_m.gif) 0 -24px no-repeat
	}

header .inner .rightArea dl dd.fontL a {
	background:url(/common/image/bg_font_l.gif) 0 -24px no-repeat
	}

header .inner .rightArea dl dd.fontS a:hover,
header .inner .rightArea dl dd.fontM a:hover,
header .inner .rightArea dl dd.fontL a:hover,
header .inner .rightArea dl dd.current a {
	background-position:0 0;
	}
	
header .inner .rightArea .topBlock .searchArea {
	padding-top:8px;
	font-size:12px;
	}

header .inner .rightArea .topBlock .searchArea form input.txt {
	width:170px;
	}

/* --------------------------------------------------------------
header .inner .rightArea form {
	background:#eeeeee;
	border-radius:20px;
	width:200px;
	float:right;
	padding:5px 20px;
	}

header .inner .rightArea form .searchArea {
	background:#fff;
	border-radius:5px;
	padding:4px 5px;
	}

header .inner .rightArea form input.txt {
	border:none;
	width:170px;
	font-size:12px;
	display:block;
	float:left;
	}

header .inner .rightArea form input.bt {
	position:relative;
	top:1px;
	display:block;
	float:right;
	}
-------------------------------------------------------------- */

header .inner .rightArea .btmBlock ul{
	float:left;
	margin:8px 0 0 0;
	}

header .inner .rightArea .btmBlock ul li{
	float:left;
	padding:0 16px 0 0;
	line-height:0;
	}

header .inner .rightArea .btmBlock ul li.last{
	padding:0;
	}

header .inner .rightArea .btmBlock a.bt{
	float:right;
	}

/* --------------------------------------------------------------
#gnavi
-------------------------------------------------------------- */

#gnavi {
	background:#009db8;
	height:40px;
	padding:10px 0 0 0;
	margin:0 0 15px 0;
	}

#gnavi ul {
	width:990px;
	margin:0 auto;
	}

#gnavi ul li {
	float:left;
	padding:0 10px 0 0;
	}

#gnavi ul li.gnavi04 {
	padding:0;
	}

#gnavi ul li a {
	display:block;
	background:url(/common/image/bg_gnavi.png) 0 0 no-repeat;
	width:240px;
	height:40px;
	}

#gnavi ul li a span {
	display:none;
	}

#gnavi ul li.gnavi01 a:hover,
#gnavi ul.index li.gnavi01 a {
	background-position:0 -40px;
	}

#gnavi ul li.gnavi02 a {
	background-position:-250px 0;
	}

#gnavi ul li.gnavi02 a:hover,
 #gnavi ul.corporation  li.gnavi02 a {
	background-position:-250px -40px;
	}

#gnavi ul li.gnavi03 a {
	background-position:-500px 0;
	}

#gnavi ul li.gnavi03 a:hover,
#gnavi ul.company li.gnavi03 a {
	background-position:-500px -40px;
	}

#gnavi ul li.gnavi04 a {
	background-position:-750px 0;
	}

#gnavi ul li.gnavi04 a:hover,
#gnavi ul.recruit li.gnavi04 a {
	background-position:-750px -40px;
	}

/* --------------------------------------------------------------
flame
-------------------------------------------------------------- */

#wrapper {
	width:990px;
	margin:0 auto 50px auto;
	}

#left {
	float:left;
	width:220px;
	}

#main {
	float:right;
	width:740px;
	}

.breadCrumb {
	font-size:86%;
	margin:0 0 15px 0;
	}

.breadCrumb li {
	font-weight:bold;
	float: left;
	margin-right: 10px;
	}

.breadCrumb li a {
	font-weight:normal;
	background: url(/common/image/bg_breadcrumbs.png) no-repeat right center;
	padding-right: 14px;
	}

/* --------------------------------------------------------------
.cautionArea
-------------------------------------------------------------- */

.cautionArea {
	border:solid 1px #ccc;
	margin:0 0 15px 0;
	padding:2px;
	display:table;
	}

.cautionArea .cautionTitle {
	display:table-cell;
	background-color:#e30037;
	vertical-align: middle;
	}
    
.cautionArea .cautionTitle h2 img {
	vertical-align: middle;
	}

.cautionArea .cautionList {
	display:table-cell;
	vertical-align: middle;
	}
	
.cautionArea .cautionList ul {
	float:right;
	width:800px;
	margin:6px 10px;
	}

.cautionArea .cautionList ul li {
	background:url(/common/image/icon_caution.gif) 0 5px no-repeat;
	padding:0 0 0 10px;
	}

/* --------------------------------------------------------------
footer
-------------------------------------------------------------- */

footer {
	background:#eee;
	padding:20px 0;
	font-size:86%;
	}

footer a:link {
	color:#333;
	text-decoration:none;
	}

footer a:hover {
	color:#105ffe;
	}

footer .inner {
	width:990px;
	margin:0 auto;
	}

footer .inner .leftArea {
	float:left;
	width:750px;
	}

footer .inner .leftArea .topBlock {
	margin:0 0 20px 0;
	}

footer .inner .leftArea .topBlock p img {
	display:block;
	}

footer .inner .leftArea .topBlock p.logo {
	float:left;
	width:295px;
	background:url(/common/image/bg_border02.gif) right center no-repeat;
	}

footer .inner .leftArea .topBlock p.txt {
	float:right;
	width:425px;
	color:#666;
	font-size:12px;
	}

footer .inner .leftArea nav ul {
	float:left;
	margin:0 30px 0 0;
	font-size:12px;
	}

footer .inner .leftArea nav ul li {
	background:url(/common/image/icon_link.png) 0 5px no-repeat;
	padding:0 0 0 15px;
	line-height:2;
	}

footer .inner .rightArea {
	float:right;
	width:200px;
	}

footer .inner .rightArea dt {
	font-weight:bold;
	font-size:117%;
	color:#666;
	font-size:14px;
	}

footer .inner .rightArea dd {
	color:#bbb;
	font-size:12px;
	}

.copy {
	width:990px;
	margin:5px auto;
	font-size:86%;
	}

body:not(.is-loaded) {
	overflow: hidden;
}

body:not(.is-loaded)::before {
	content: "";
	position: fixed;
	inset: 0;
	z-index: 99;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	background-color: white;
	transition: 1s ease-out;
}

body:not(.is-loaded)::after {
	content: "\f1ce";
	position: fixed;
	top: calc(50% - 1.5rem);
	left: calc(50% - 1rem);
	z-index: 99;
	color: var(--primary-color);
	font-size: 2rem;
	font-family: 'Font Awesome 6 Free';
  font-style: normal;
  font-weight: 900;
	text-align: center;
	animation-name: fa-spin;
  animation-delay: var(--fa-animation-delay, 0);
  animation-direction: var(--fa-animation-direction, normal);
  animation-duration: var(--fa-animation-duration, 2s);
  animation-iteration-count: var(--fa-animation-iteration-count, infinite);
  animation-timing-function: var(--fa-animation-timing, linear);
	transition: 1s ease-out;
}

@media all and (-ms-high-contrast: none) {
  body:not(.is-loaded) {
		overflow: auto;
	}

	body:not(.is-loaded)::before,
	body:not(.is-loaded)::after {
		display: none;
	}
}