@charset "UTF-8";
/* CSS Document */

/* ////////////////////////////////////

色早見表

文字色ベース　#4D4D4D
青　#003DAD
赤　#E30000
背景薄いグレー　#F5F5F5

//////////////////////////////////// */



body {
	margin:0;
	padding:0;
	font-family: 'Noto Sans Japanese', serif;
	font-weight: 300;
	color: #4D4D4D;
	font-size: 13px;
	letter-spacing:0.05em;
	position: relative;
	background-image:url(../img/bg_01.svg);
	background-repeat:repeat;
	background-size:50px 50px;
}

/* ////////////////////////////////////
コンテンツ共通 ////////////////////////
//////////////////////////////////// */

a {
	color: #4d4d4d;
	text-decoration:none;
}

a:hover {
	color: #E30000;
	text-decoration:none;
	transition:0.5s;
	cursor:pointer;
}

a,
a::before,
a::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

a:active {
	color: #CCC;
	text-decoration:none;
	transition:0.5s;
}

a img:hover {
	opacity:0.4;
	text-decoration:none;
	transition:0.5s;
}

/* 選択テキスト */
::selection {
	background:#EDEDED; /* Safari */
}

::-moz-selection {
	background:#EDEDED; /* Firefox */
}

ul{
	font-size:0;
}

li{
	list-style:none;
}


/* ////////////////////////////////////
文字スタイル共通 ////////////////////////
//////////////////////////////////// */

h2{
	font-size:28px;
	color:#4D4D4D;
	margin:20px 0 20px 0;
	font-family:"ヒラギノ明朝 Pro W3" , "ＭＳ Ｐ明朝", "MS PMincho", "Hiragino Mincho Pro", serif;
	line-height:175%;
	letter-spacing:0.1rem;
}

h2.substyle{
	font-size:28px;
	color:#4D4D4D;
	margin:20px 0 20px 0;
	font-family:"ヒラギノ明朝 Pro W3" , "ＭＳ Ｐ明朝", "MS PMincho", "Hiragino Mincho Pro", serif;
	line-height:175%;
	letter-spacing:0.1rem;
}


h3 {
	font-size:18px;
	line-height:1.75rem;
	margin:0 0 10px 0;
	font-weight:300;
}


h4{
}


p{
	line-height:185%;
	font-weight:300;
}

p.textbox-eijititle{
	color:#FFF;
	font-size:21px;
	font-weight:400;
	letter-spacing:0rem;
	line-height:1rem;
}

p.textbox-title {
	color:#FFF;
	font-size:54px;
	letter-spacing:0.2rem;
	font-family:"ヒラギノ明朝 Pro W3" , "ＭＳ Ｐ明朝", "MS PMincho", "Hiragino Mincho Pro", serif;
	font-weight:bold;
}

p.textbox-title-substyle {
	color:#FFF;
	font-size:54px;
	letter-spacing:0.2rem;
	font-family:"ヒラギノ明朝 Pro W3" , "ＭＳ Ｐ明朝", "MS PMincho", "Hiragino Mincho Pro", serif;
	font-weight:bold;
}

p.textbopx-contents {
	color:#FFF;
	font-size:21px;
	font-weight:400;
	letter-spacing:0.1rem;
}

p.center-box-title {
	font-size:48px;
	font-weight:200;
	letter-spacing:0.1rem;
}

p.center-box-eiji {
	font-weight:300;
	letter-spacing:0.1rem;
}

p.contes-title {
	font-size:21px;
	line-height:1rem;
	padding:5px 0 0 0;
}

p.contents-subtitle {
	font-size:12px;
	line-height:1rem;
	margin:-10px 0 0 0;
}

p.fs-36 {
	font-size:36px;
	font-weight:200;
	line-height:50px;
}

p.lh175 {
	line-height:175% !important;
}

p.justify {
	text-align:justify;
}

p.mincho {
	font-family:"ヒラギノ明朝 Pro W3" , "ＭＳ Ｐ明朝", "MS PMincho", "Hiragino Mincho Pro", serif;
}

p.feed-title {
	font-size:14px;
	line-height:1.5rem;
}

p.feed-title-big {
	font-size:24px;
	line-height:1.5rem;
	padding:10px 0 0 0;
}

p.feed-date {
	font-size:11px;
	line-height:1rem;
	margin:-10px 0 0 0;
}

p.contets-16 {
	font-size:16px;
	line-height:1rem;
}

.bluebold {
	color:#003DAD !important;
	font-weight:700 !important;
}

.mini {
	font-size: 9px;
}
@media screen and (max-width: 1079px) {


p.contes-title {
	font-size:18px;
	line-height:1rem;
	padding:5px 0 0 0;
}

p.contents-subtitle {
	font-size:11px;
	line-height:1rem;
	margin:-10px 0 0 0;
}

p.textbox-title-substyle {
	font-size:36px;
	margin-bottom:10px;
}

}

@media screen and (max-width: 767px) {

h2{
	font-size:21px;
}

p.fs-36 {
	font-size:28px;
	line-height:40px;
}

p.textbox-title-substyle {
	font-size:36px;
	margin-bottom:10px;
}

p.feed-title-big {
	font-size:21px;
}


}

@media screen and (max-width: 599px) {


h2{
	font-size:17px;
}

h3 {
	font-size:17px;
}


p.contes-title {
	font-size:21px;
	line-height:1rem;
	padding:5px 0 0 0;
}

p.contents-subtitle {
	font-size:12px;
	line-height:1rem;
	margin:-10px 0 0 0;
}

p.fs-36 {
	font-size:21px;
	line-height:40px;
}

}

@media screen and (max-width: 399px) {

	h2{
	font-size:15px;
}
}


strong{
	font-weight:500;
}

.mt10 {
	margin-top:10px !important;
}

.mt20 {
	margin-top:20px !important;
}

.mt30 {
	margin-top:30px !important;
}

.mt50 {
	margin-top:50px !important;
}

.mt90 {
	margin-top:64px;
}

.mt-70 {
	margin-top:-70px !important;
}

.mt-26 {
	margin-top:-26px;
}

.mt-13 {
	margin-top:-13px;
}

.mt0{
	margin-top:0px !important;
}

.mb10 {
	margin-bottom:10px !important;
}

.mb20 {
	margin-bottom:20px !important;
}

.mb30 {
	margin-bottom:30px !important;
}

.mb50 {
	margin-bottom:50px !important;
}

.mb60 {
	margin-bottom:60px !important;
}

.mb80 {
	margin-bottom:80px !important;
}

.ml0 {
	margin-left:0px !important;
}

.ml5 {
	margin-left:5%;
}

.pa-right {
	position:absolute;
	right:0;
	top:0;
}

.text-wh {
	color:#FFFFFF !important;
}

.text-gray {
	color:#4d4d4d !important;
}

.text-red {
	color:#E30000 !important;
}

.block {
	display:block !important;
}

.demical {
	width:100%;
}

.demical li {
	list-style:decimal;
	margin:5px auto 5px 20px;
	font-size:13px;
	line-height:175%;
}

.ullist {
	width:100%;
}

.ullist li{
	padding:10px 0;
	border-bottom:1px dotted #ddd;
	font-size:13px;
	line-height:200%;
}

.ullist li:last-child {
	border-bottom:none;
}

.minheihgt800 {
	height:1050px;
}

@media screen and (max-width: 1079px) {

	.mt90 {
	margin-top:44px;
}

.minheihgt800 {
	height:auto;
}

}

@media screen and (max-width: 767px) {

p.textbox-eijititle{
	font-size:14px;
}

p.textbox-title {
	font-size:32px;
}

p.textbopx-contents {
	font-size:14px;
	letter-spacing:0rem;
}

p.center-box-title {
	font-size:36px;
}

.clearbox{
	clear:both;
	width:100%;
	height:1px;
	position:relative;
	display:block;
}

.mb30 {
	margin-bottom:20px;
}

.mt90 {
	margin-top:24px;
}

}

@media screen and (max-width: 599px) {

	.mb30 {
	margin-bottom:15px;
}

}

.fullwide {
	width:100%;
	margin:30px 0;
}

ol {
	box-sizing:border-box;
	padding-left:40px;
}

.suji-list li{
	list-style-type: decimal;
	font-size:24px;
	color:#4D4D4D;
	margin:20px 0 20px 0;
	font-family:"ヒラギノ明朝 Pro W3" , "ＭＳ Ｐ明朝", "MS PMincho", "Hiragino Mincho Pro", serif;
	line-height:175%;
	letter-spacing:0.05rem;

}


.list-disc li {
	list-style-type: disc;
	font-size:13px;
	color:#4D4D4D;
	margin:5px 0 5px 20px;
	line-height:175%;
	letter-spacing:0.05rem;
}

.list-disc {
	margin-top:10px;
}

.list-decimal {
	margin-top:10px;
}

.list-decimal li {
	list-style-type: decimal;
	font-size:13px;
	color:#4D4D4D;
	margin:5px 0 5px 20px;
	line-height:175%;
	letter-spacing:0.05rem;
}

@media screen and (max-width: 767px) {
.suji-list li{
	font-size:21px;
}
}

@media screen and (max-width: 599px) {
.suji-list li{
	font-size:17px;
}
}

.material-symbols-outlined {
	vertical-align: middle;
	line-height: inherit;
	font-variation-settings:
  'FILL' 0,
  'wght' 400,
  'GRAD' 0,
  'opsz' 24
}

.effect span.material-symbols-outlined,
.effect span.mini {
	width: auto;
	position: relative;
}

/* ////////////////////////////////////
アンカーー位置調整 //////////////////
//////////////////////////////////// */

.anchorlink {
	position: relative;
	top: -170px;
	display: block;
}


@media screen and (max-width: 1023px) {

.anchorlink {
	position: relative;
	top: -150px;
	display: block;
}
}

@media screen and (max-width: 767px) {
.anchorlink {
	position: relative;
	top: -100px;
	display: block;
}
}


/* ////////////////////////////////////
ボタンまとめ ////////////////////////
//////////////////////////////////// */

/* 白ボタン */

.button-wh {
	display: inline-block;
	width: 240px;
	height: 46px;
	color: #fff;
	text-align:left;
	text-decoration: none;
	line-height: 44px;
	outline: none;
	font-weight:300;
	margin:30px 0 0 0;
	padding:0 20px;
	background-color: rgba(255,255,255,0.0);
	box-sizing:border-box;
	position:relative;
}

.button-wh:hover {
	background-color: rgba(255,255,255,1.0);
	border: 2px solid #FFF;
	color: #4D4D4D;
	line-height: 44px;
}
.button-wh {
	border: 2px solid #FFF;
	color: #EFFF;
}

.button-wh::before,
.button-wh::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.button-wh,
.button-wh::before,
.button-wh::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

i.button-wh-more {
	position:absolute;
	right:15px;
	background-image:url(../img/btn_more_wh.svg);
	background-repeat:no-repeat;
	background-size:16 13;
	background-position:center;
}

.button-wh:hover i.button-wh-more {
	position:absolute;
	right:10px;
	background-image:url(../img/btn_more_gray.svg);
	background-repeat:no-repeat;
	background-size:16 13;
	background-position:center;
}

i.button-wh-more,
i.button-wh-more::before,
i.button-wh-more::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
	content:"　";
	line-height:12px;
	margin-top:16px;
}

/* 白地赤文字ボタン */

.button-whwhred {
	display: inline-block;
	width: 240px;
	height: 46px;
	color: #fff;
	text-align:left;
	text-decoration: none;
	line-height: 44px;
	outline: none;
	font-weight:300;
	margin:0 0 0 0;
	padding:0 20px;
	background-color: rgba(255,255,255,0.0);
	box-sizing:border-box;
	position:relative;
}

.recruit-company-textbox .button-whwhred {
	height: auto;
}

.button-whwhred:hover {
	background-color: rgba(255,255,255,1.0);
	border: 2px solid #FFF;
	color: #E30000;
	line-height: 44px;
}
.button-whwhred {
	border: 2px solid #FFF;
	color: #EFFF;
}

.button-whwhred::before,
.button-whwhred::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.button-whwhred,
.button-whwhred::before,
.button-whwhred::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

i.button-whwhred-more {
	position:absolute;
	right:15px;
	background-image:url(../img/btn_more_wh.svg);
	background-repeat:no-repeat;
	background-size:16 13;
	background-position:center;
}

.button-whwhred:hover i.button-whwhred-more {
	position:absolute;
	right:10px;
	background-image:url(../img/btn_more_red.svg);
	background-repeat:no-repeat;
	background-size:16 13;
	background-position:center;
}

i.button-whwhred-more,
i.button-whwhred-more::before,
i.button-whwhred-more::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
	content:"　";
	line-height:12px;
	margin-top:16px;
}


/* 青ボタン */

.button-bl {
	display: inline-block;
	width: 240px;
	height: 46px;
	color: #003DAD;
	text-align:left;
	text-decoration: none;
	line-height: 44px;
	outline: none;
	font-weight:300;
	margin:30px 0 0 0;
	padding:0 20px;
	background-color: rgba(255,255,255,0.0);
	box-sizing:border-box;
	position:relative;
}

.button-bl:hover {
	background-color: #003DAD;
	border: 2px solid #003DAD;
	color: #fff;
	line-height: 44px;
}
.button-bl {
	border: 2px solid #003DAD;
	color: #003DAD;
}

.button-bl::before,
.button-bl::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.button-bl,
.button-bl::before,
.button-bl::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

.button-bl-more {
	position:absolute;
	right:15px;
	background-image:url(../img/btn_more_blue.svg);
	background-repeat:no-repeat;
	background-size:16 13;
	background-position:center;
}

.button-bl:hover i.button-bl-more {
	position:absolute;
	right:10px;
	background-image:url(../img/btn_more_wh.svg);
	background-repeat:no-repeat;
	background-size:16 13;
	background-position:center;
}

i.button-bl-more,
i.button-bl-more::before,
i.button-bl-more::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
	content:"　";
	line-height:12px;
	margin-top:16px;
}


/* グレイボタン */

.button-gray {
	display: inline-block;
	width: 240px;
	height: 46px;
	color: #4D4D4D;
	text-align:left;
	text-decoration: none;
	line-height: 44px;
	outline: none;
	font-weight:300;
	margin:30px 0 0 0;
	padding:0 20px;
	background-color: rgba(255,255,255,0.0);
	box-sizing:border-box;
	position:relative;
}

.button-gray:hover {
	background-color: #4D4D4D;
	border: 2px solid #4D4D4D;
	color: #fff;
	line-height: 44px;
}
.button-gray {
	border: 2px solid #4D4D4D;
	color: #4D4D4D;
}

.button-gray::before,
.button-gray::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.button-gray,
.button-gray::before,
.button-gray::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

.button-gray-more {
	position:absolute;
	right:15px;
	background-image:url(../img/btn_more_gray.svg);
	background-repeat:no-repeat;
	background-size:16 13;
	background-position:center;
}

.button-gray:hover i.button-gray-more {
	position:absolute;
	right:10px;
	background-image:url(../img/btn_more_wh.svg);
	background-repeat:no-repeat;
	background-size:16 13;
	background-position:center;
}

i.button-gray-more,
i.button-gray-more::before,
i.button-gray-more::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
	content:"　";
	line-height:12px;
	margin-top:16px;
}

/* グレイボタンレスポンシブ */

.button-gray-reponsive {
	display: inline-block;
	width: 100%;
	height: 46px;
	color: #4D4D4D;
	text-align:left;
	text-decoration: none;
	line-height: 44px;
	outline: none;
	font-weight:300;
	margin:0 0 0 0;
	padding:0 20px;
	background-color: rgba(255,255,255,0.0);
	box-sizing:border-box;
	position:relative;
}

.button-gray-reponsive:hover {
	background-color: #E30000;
	border: 2px solid #E30000;
	color: #fff;
	line-height: 44px;
}
.button-gray-reponsive {
	border: 2px solid #4D4D4D;
	color: #4D4D4D;
}

.button-gray-reponsive::before,
.button-gray-reponsive::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.button-gray-reponsive,
.button-gray-reponsive::before,
.button-gray-reponsive::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

i.button-gray-reponsive-more {
	position:absolute;
	right:15px;
	background-image:url(../img/btn_more_gray.svg);
	background-repeat:no-repeat;
	background-size:16 13;
	background-position:center;
}

.button-gray-reponsive:hover i.button-gray-reponsive-more {
	position:absolute;
	right:10px;
	background-image:url(../img/btn_more_wh.svg);
	background-repeat:no-repeat;
	background-size:16 13;
	background-position:center;
}

i.button-gray-reponsive-more,
i.button-gray-reponsive-more::before,
i.button-gray-reponsive-more::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
	content:"　";
	line-height:12px;
	margin-top:16px;
}


/* 白-赤ボタン */

.button-whred {
	display: inline-block;
	width: 240px;
	height: 46px;
	color: #4D4D4D;
	text-align:left;
	text-decoration: none;
	line-height: 44px;
	outline: none;
	font-weight:300;
	margin:0;
	padding:0 20px;
	background-color: #FFF;
	box-sizing:border-box;
	position:relative;
}

.button-whred:hover {
	background-color: #E30000;
	border: 2px solid #E30000;
	color: #FFF;
	line-height: 44px;
}
.button-whred {
	border: 2px solid #FFF;
	color: #4D4D4D;
}

.button-whred::before,
.button-whred::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.button-whred,
.button-whred::before,
.button-whred::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

i.button-whred-more {
	position:absolute;
	right:15px;
	background-image:url(../img/btn_more_gray.svg);
	background-repeat:no-repeat;
	background-size:16 13;
	background-position:center;
}

.button-whred:hover i.button-whred-more {
	position:absolute;
	right:10px;
	background-image:url(../img/btn_more_wh.svg);
	background-repeat:no-repeat;
	background-size:16 13;
	background-position:center;
}

i.button-whred-more,
i.button-whred-more::before,
i.button-whred-more::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
	content:"　";
	line-height:12px;
	margin-top:16px;
}


/* エントリーボタン */
.btn_entry_whr {
	background-color: #fff;
	border: 2px solid #fff;
	color: #e30000;
}

.btn_entry_whr:hover {
	background-color: #e30000;
	border: 2px solid #e30000;
	color: #fff;
	line-height: 44px;
}

.btn_entry_rwh:hover {
	background-color: #003DAD;
	border: 2px solid #003DAD;
	color: #fff;
}

.btn_entry_whr i {
	background-image:url(../img/btn_more_red.svg);
}

.btn_entry_whr:hover i,.btn_entry_rb i {
	background-image: url(../img/btn_more_wh.svg) !important;
}

.btn_entry_rb {
	background-color: #E30000;
	border: 2px solid #E30000;
	color: #fff;
	width: 94%;
}

.box-inner-1020 .btn_entry_ob {
	background-color: #FF5400;
	border: 2px solid #FF5400;
}

.entry_large {
	width: 40%;
	height: 110px !important;
	color: #fff;
	font-size: 180%;
	text-align: center !important;
	margin: 0 auto;
	display: block;
	line-height: 110px;
}

.entry_large:hover {
	line-height: 110px;
}

.entry_large i {
	background-image: url(../img/btn_more_wh.svg) !important;
	top: 35px;
	right: 20px;
}

.entry_large.btn_entry_ob {
	line-height: 25px;
	padding-top: 30px;
	font-size: 160%;
}

.btn_entry_rb:hover,.entry_large:hover {
	background-color: #003DAD;
	border: 2px solid #003DAD;
}

@media screen and (max-width: 899px) {
.btn_entry_rb {
	width: 50%;
}
.entry_large.btn_entry_ob {
	width: 60%;
}
}

@media screen and (max-width: 599px) {
.entry_large i {
	right: 10px !important;
}
.btn_entry_rb {
	width: 90%;
}
.entry_large.btn_entry_ob {
	width: 90%;
}
}

.wh-text-box-blue .btn_entry_rb {
	width: 100%;
}
.wh-text-box-blue .entry_large i {
	background-image: url(../img/btn_more_wh.svg) !important;
	top: 50px;
	right: 30px;
}
/* /エントリーボタン */




@media screen and (max-width: 1079px) {

.button-whred {
	width: 100%;
}
}


.text-btn {
	padding:5px 10px;
	background-color:#F5F5F5;
	color:#4D4D4D;
	border-radius:2px;
	font-size:11px;
	margin:10px 0;
}

.text-btn:hover {
	padding:5px 10px;
	background-color:#E30000;
	color:#FFF;
	border-radius:2px;
}

.text-btn,
.text-btn::before,
.text-btn::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

i.blanklink {
	margin-left:5px;
	line-height:40px;
	background-image:url(../img/icon_blanklink_gray.svg);
	background-size:13px 11px;
	background-repeat:no-repeat;
	background-position:center;
}

a:hover i.blanklink {
	background-image:url(../img/icon_blanklink_red.svg);
}

i.blanklink ,
i.blanklink::before,
i.blanklink::after {
	content:"　";
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}



/* ////////////////////////////////////
ナビ・ヘッダー ////////////////////////
//////////////////////////////////// */


/* ナビエリア */

div#navarea{
}

div#navwrap{
}

@media screen and (min-width: 1079px) {

.sp {display:none !important;}
/* グローバルナビ */

nav {
	background-color: rgba(255,255,255,1.0);
    width: 100%;
    height: 90px;
	position:fixed;
	top:0px;
	z-index:200;
}
nav.fixed {
    position: fixed;
    top: 0;
    width: 100% !important;
    z-index: 10000;
}
nav .box {
	width:100%;
	position:relative;
	margin:auto;
	padding:0px 0px 0px 30px;
	box-sizing:border-box;
	z-index:11;
}
nav h1 {
	width:30%;
	height: 90px;
	max-width:350px;
	float:left;
	align-content: center;
}
nav h1 img {
	width:100%;
}
nav ul#menu {
	width:60%;
	max-width:800px;
	float:right;
}

nav ul#menu li.item {
	width:16.666%;
	max-width:160px;
	float:left;
	text-align:center;
	overflow:hidden;
	font-size:17px;
}
nav ul#menu li.item a {
	display:block;
	height:90px;
	line-height:90px;

}
nav ul#menu li:hover > a {
    background-color: #003DAD;
	color:#fff;
	position:relative;
}
nav ul#menu li:hover > a:before {
    /*content: "\f078";
    font-family: FontAwesome;*/
	font-size:10px;
	position:absolute;
	bottom:-35px;
	left:50%;
	margin:0 0 0 -6px;
}
nav ul#menu li a:hover {
    background-color: #003DAD;
	color:#fff;
}
nav .nav-child {
    position: absolute;
    left: 0;
    top: 90px;
    width: 100%;
    height: 0;
    overflow: hidden;
    background-color:  #003DAD;
    -moz-transition: all 0.2s ease-in-out 0s;
    -o-transition: all 0.2s ease-in-out 0s;
    -webkit-transition: all 0.2s ease-in-out;
    -webkit-transition-delay: 0s;
    transition: all 0.2s ease-in-out 0s;
	color:#fff;
}
nav ul#menu .inbox li:hover > a {
    background-color: #E30000;
	position:relative;
}
nav ul#menu li:hover .inbox{
    overflow:visible !important;
}
nav ul#menu li .inbox li a,
nav ul#menu li .inbox a {
	opacity: 0;
}
nav ul#menu li:hover .inbox li a,
nav ul#menu li:hover .inbox a {
	opacity: 1;
}
nav .nav-child02 {
    position: absolute;
	z-index:9999;
    left: 0;
    top: 60px;
    width: 100%;
    height: 0;
    overflow: hidden;
    background-color: #003DAD;
    -moz-transition: all 0.2s ease-in-out 0s;
    -o-transition: all 0.2s ease-in-out 0s;
    -webkit-transition: all 0.2s ease-in-out;
    -webkit-transition-delay: 0s;
    transition: all 0.2s ease-in-out 0s;
	color:#fff;
}
nav ul#menu li .nav-child li:hover .nav-child02 {
  height: 60px;
}
nav ul#menu li:hover .nav-child {
  height: 60px;
}
nav ul#menu .nav-child ul {
  width: 1024px;
  margin: 0 auto;
  text-align: center;
  clear:both;
  overflow:hidden;
  height:60px;
}
nav ul#menu .nav-child ul li {
  display: inline-block;
  font-size:14px;
}
nav ul#menu .nav-child ul li a {
	color:#fff;
	display:block;
	padding:0 20px;
  height:60px;
  	  line-height:60px !important;

}
nav ul#menu .nav-child ul li a:hover {
	color:#FFF;
}
}

@media screen and (max-width: 1079px) {
.pc {display:none !important;}
.bx-controls-direction {
	display:none;
}

/* ヘッダー */
#spHead {
	width:100%;
	position:fixed;
	top:0;
	z-index:9999;
    background-color: rgba(255,255,255,1.0);
	height:50px;
	padding:10px 0 ;
}
#spHead h1 {
	position:absolute;
	top:10px;
	left:10px;
	z-index:9999;
}
#spHead h1 img {
	height:50px;
}
}

@media screen and (max-width: 767px) {
/* ヘッダー */
#spHead {
	width:100%;
	position:fixed;
	top:0;
	z-index:9999;
    background-color: rgba(255,255,255,1.0);
	height:30px;
	padding:10px 0 ;
}
#spHead h1 {
	width:20%;
	position:absolute;
	top:10px;
	left:10px;
}
#spHead h1 img {
	height:30px;
}
}


/* ////////////////////////////////////
TOPメインビジュアル ////////////////////////
//////////////////////////////////// */

@media screen and (max-width: 767px) {
div#slidearea{
	position:relative;
	margin-top:-39px;
	display:block;
}

div#movie{
	display:none;
}
}
@media screen and (min-width: 768px) {
/* --PC版でもスライドエリアを表示する
div#slidearea{
	display:none;
}
*/

/* --PC版でもムービーは非表示にする　--*/
div#movie{
	display:none;
}

div#movie{
	display:none; /* --PC版でもムービーは非表示にする　--*/
	position:relative;
	width:100%;
	height:100%;
	overflow:hidden;
}

div#movie div.back_visual {
	display:none; /* --PC版でもムービーは非表示にする　--*/
	width:100%;
	height:100%;
	overflow:hidden;
}

div#movie div.back_visual video{
	position:absolute;
	right: 0;
	left: 0;
	min-width: 100%;
	min-height: 100%;
	width: auto;
	height: auto;
}
}

/* ////////////////////////////////////
TOP改修 ////////////////////////
//////////////////////////////////// */
div.recruit_top {
	position: relative;
	height: 500px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
}

/* ////////////////////////////////////
メッセージ ////////////////////////
//////////////////////////////////// */


div#massagewrap{
	position:absolute;
	width:571px;
	top:50%;
	left:50%;
	z-index:2;
	margin:auto;
}

div#massagewrap div#massage{
	position:relative;
	width:571px;
	height:115px;
	margin:0px auto 0px auto;
	margin-top:-77px;
	margin-left:-285.5px;
}

div#massagewrap span#massage #messageimg{
	position:absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin:auto;
}

@media screen and (max-width: 767px) {

div#massagewrap{
	position:absolute;
	width:480px;
	top:50%;
	left:50%;
	z-index:2;
	margin:auto;
}

div#massagewrap div#massage{
	position:relative;
	width:480px;
	height:96px;
	margin:0px auto 0px auto;
	margin-top:-68px;
	margin-left:-240px;
}

div#massagewrap span#massage #messageimg{
	position:absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin:auto;
}

}

@media screen and (max-width: 599px) {

div#massagewrap{
	position:absolute;
	width:190px;
	top:50%;
	left:50%;
	z-index:2;
	margin:auto;
}

div#massagewrap div#massage{
	position:relative;
	width:280px;
	height:56px;
	margin:0px auto 0px auto;
	margin-top:-44px;
	margin-left:-140px;
}

div#massagewrap span#massage #messageimg{
	position:absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin:auto;
}

}


/* ////////////////////////////////////
メイン ////////////////////////
//////////////////////////////////// */

main{
	width:100%;
	margin:0 auto;
	padding:0;
	position:relative;
	display:block;
}

.parallax {
	overflow-x:hidden;
	overflow-y:hidden;
	-webkit-perspective:300px;
	-moz-perspective:300px;
	-ms-perspective:300px;
	-o-perspective:300px;
	perspective:300px;

}

.layer-fore {
	-webkit-transform:translateZ(90px) scale(.7);
	-moz-transform:translateZ(90px) scale(.7);
	-ms-transform:translateZ(90px) scale(.7);
	-o-transform:translateZ(90px) scale(.7);
	transform:translateZ(90px) scale(.7);
	z-index:4;
}

.layer-base {
	-webkit-transform:translateZ(0);
	-moz-transform:translateZ(0);
	-ms-transform:translateZ(0);
	-o-transform:translateZ(0);
	transform:translateZ(0);
	z-index:3;
}

.layer-back {
	-webkit-transform:translateZ(-300px) scale(2);
	-moz-transform:translateZ(-300px) scale(2);
	-ms-transform:translateZ(-300px) scale(2);
	-o-transform:translateZ(-300px) scale(2);
	transform:translateZ(-300px) scale(2);
	z-index:2;
}


/* 背景画像ボックス　*/
.top-bgimg-box {
	width:100%;
	height:500px;
	position:relative;
	overflow:hidden;
}

/* Mac OSのみ */
.mac {
	.recruit-btimg-box {
		background-image:url(../img/recruit_001.jpg);
		background-position: 50% 50%;
		background-repeat:no-repeat;
		background-size:cover;
		margin-top: 90px; /* 追記 */
	}
}

.recruit-btimg-box {
	background-image:url(../img/recruit_001.jpg);
	background-position: 50% 50%;
	background-repeat:no-repeat;
	background-size:cover;
	background-attachment:fixed;
	margin-top: 90px; /* 追記 */
}

@media screen and (max-width: 767px) {
	.recruit-btimg-box {
		margin-top: 0px; /* 追記 */
	}
}

.business-btimg-box {
	background-image:url(../img/business001.jpg);
	background-position: 50% 50%;
	background-repeat:no-repeat;
	background-size:cover;
	background-attachment:fixed;
}

@media screen and (max-width: 1024px) {
.recruit-btimg-box {
	background-attachment:scroll;
	}
.business-btimg-box {
	background-attachment:scroll;
}

.business-btimg-box {
	background-attachment:scroll;
}

.bgbl-box-inner {
    height: 500px !important;
    background-image: url(../img/recruit_staff.png);
    background-repeat: no-repeat;
    background-position: center bottom;
}
.top-bgimg-box {
    width: 100%;
    height: 500px;
    position: relative;
    overflow: hidden;
}

}

@media only screen and (max-width: 1079px) {
.recruit-message {
    max-width: 90%;
    height: 600px !important;
    margin: 0 auto;
    background-image: url(../img/president01_475_mini.png);
    background-repeat: no-repeat;
    background-position: left bottom;
}

}


.top-bgimg-box-cover {
	width:100%;
	height:500px;
	background-color: rgba(0,0,0,0.3);
}

.top-bgimg-box img {
	width:100%;
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	margin:auto;
}

.innerbox-1020{
	width:1020px;
	margin:0 auto;
	position:relative;
}


.center-textbox {
	position: absolute;
	left: 50%;
	top: 45%;
	bottom: auto;
	right: auto;
	-webkit-transform: translateX(-50%) translateY(-50%);
	-moz-transform: translateX(-50%) translateY(-50%);
	-ms-transform: translateX(-50%) translateY(-50%);
	-o-transform: translateX(-50%) translateY(-50%);
	transform: translateX(-50%) translateY(-50%);
	text-align: center;
}

.right-textbox {
	position:relative;
	width:480px;
	top:42px;
	left:540px;
	right:0;
}

.left-textbox {
	position:relative;
	width:480px;
	top:90px;
	left:0;
}

.effect span {
	width:100%;
	transition: 1.0s;
	transition-delay: 0s;
	font-style:normal;
	position:absolute;
}
.effect div {
  transition: 1.0s;
 /*transition-delay: 1.0s;*/

}

.box-100vh {
	height:100vh !important;
}

.style-pab {
	position:absolute !important;
}

@media screen and (max-width: 1079px) {

.innerbox-1020{
	max-width:1020px;
	width:100%;
	text-align:center;
}

.right-textbox {
	width:80%;
	top:75px;
	left:-50%;
	right:0;
	margin:0 auto;
}

.left-textbox {
	width:80%;
	top:90px;
	left:-50%;
	right:0;
	margin:0 auto;
}

.style-pab {
	position:absolute !important;
	left:0 !important;
}

}

div#main-contents{
	width:1020px;
	margin:0 auto;
	padding:0 30px;
	position:relative;
}


@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
main{
	width:1020px;
	margin-left:auto;
	margin-right:auto;
	padding:0 30px;
	position:relative;
	display:block;
}
}

@media all and (-ms-high-contrast:none){
  *::-ms-backdrop, main{
	width:940px;
	margin-left:auto;
	margin-right:auto;
	padding:0 40px;
	position:relative;
	display:block;
}
}


/* ////////////////////////////////////
トップページお知らせ ////////////////////////
//////////////////////////////////// */

.bg-gray {
	background-color:#F5F5F5;
}

.text-cneter {
	text-align:center;
}

.center-box {
	width:100%;
	position:relative;
}

.center-box-inner {
	width:1020px;
	padding:100px 0px;
	margin:0 auto;
	position:relative;
}

.news-feed-top {
	width:100%;
	position:relative;
	margin:0px auto 0 auto;
}

.news-feed-top ul {
	font-size:13px;
	text-align:left;
}

.news-feed-top ul li {
	width:100%;
	background-color:#FFF;
	line-height:1.75rem;
	padding:15px 0;
	margin:0 0 10px 0;
}

.news-feed-top ul li a {
	width:100%;
	line-height:1.75rem;
}

.news-feed-date {
	width:25%;
	padding:0 0 0 100px;
	box-sizing:border-box;
	display:inline-flex;
	vertical-align:top;
}

.news-feed-title {
	width:70%;
	padding:0 20px 0 0;
	box-sizing:border-box;
	display:inline-block;
	vertical-align:top;
}

.feed-icon-new {
	background-image:url(../img/icon_new.svg);
	background-repeat:no-repeat;
	background-size:48px 20px;
	background-position:center;
	display:inline-block;
	width:48px;
	margin:0 10px 0 0;
}

@media screen and (max-width: 1079px) {

.center-box-inner {
	max-width:1020px;
	width: calc(100% - 30px);
    margin: 0 15px;
}

.news-feed-top {
	/*width:90%;*/
}

.news-feed-top ul {
	font-size:13px;
	text-align:left;
}

.news-feed-top ul li {
	width:100%;
	background-color:#FFF;
	line-height:1.75rem;
	padding:15px 0;
	margin:0 0 10px 0;
}

.news-feed-top ul li a {
	width:100%;
	line-height:1.75rem;
}

.news-feed-date {
	width:100%;
	padding:0 20px 10px 20px;
	box-sizing:border-box;
	display:block;
}

.news-feed-title {
	width:100%;
	padding:10px 20px 0 20px;
	box-sizing:border-box;
	display:block;
	border-top:1px solid #F5F5F5;
}

.feed-icon-new {
	background-image:url(../img/icon_new.svg);
	background-repeat:no-repeat;
	background-size:48px 20px;
	background-position:center;
	display:inline-block;
	width:48px;
	margin:0 10px 0 0;
}


}

@media screen and (max-width: 767px) {

.news-feed-top ul {
	font-size:12px;
	text-align:left;
}

}


/* ////////////////////////////////////
トップページ業務実績 ////////////////////////
//////////////////////////////////// */

.center-box-inner-1080 {
	width:1080px;
	padding:70px 0px;
	margin:0 auto;
	position:relative;
	text-align:center;
}


.work-list {
	width:100%;
	display:inline-block;
	text-align:left;
	margin:30px 0 0 0 ;
}

.work-list li {
	width:28.1%;
	margin:0 2.5% 5% 2.5%;
	display:inline-block;
	border-top:solid 5px #003DAD;
	font-size:13px;
	vertical-align:top;
	background-color:#FFF;
	box-sizing:border-box;
}

.work-list li:hover {
	border-top:solid 5px #E30000;
}

.work-list li,
.work-list li::before,
.work-list li::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

.work-list-thum-mask {
	width:100%;
	padding-top: 60%; /* 高さを幅の60%に固定 */
	overflow:hidden;
	position:relative;
	display: block;
}

.work-list-thum-mask img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%;
	height: auto;
}

.work-list li p{
	margin:0 0 10px 0;
}

.work-list-text-box {
	width:100%;
	padding:15px;
	box-sizing:border-box;
}

.work-cate {
	background-color:#E30000;
	color:#FFF;
	padding:5px 7px;
	border-radius:2px;
	font-size:11px;
	display:inline-block;
	margin:0 5px 5px 0;
}

.work-cate:hover {
	background-color:#4d4d4d;
	color:#FFF;
}

.work-cate,
.work-cate::before,
.work-cate::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

div.text-box-480 {
	width:60%;
	margin:0 auto;
}


@media screen and (max-width: 1079px) {

.center-box-inner-1080 {
	width:95%;
	padding:70px 0px;
	margin:0 auto;
	position:relative;
	text-align:center;
}


.work-list {
	width:100%;
	display:inline-block;
	text-align:left;
	margin:30px 0 0 0 ;
}


}

@media screen and (max-width: 899px) {

.center-box-inner-1080 {
	width:100%;
	padding:60px 0px;
}

.work-list {
	width:95%;
	display:inline-block;
	text-align:left;
	margin:30px auto 0 auto ;
}

.work-list li {
	width:44.75%;
	margin:0 2.5% 5% 2.5%;
	display:inline-block;
	border-top:solid 5px #003DAD;
	font-size:13px;
	vertical-align:top;
	background-color:#FFF;
	box-sizing:border-box;
}

.btn_list_recruit {
	width: 90%;
	margin: 0 0 30px 0;
}

}

@media screen and (max-width: 599px) {

.center-box-inner-1080 {
	padding:50px 0px;
}

.work-list {
	width:90%;
	display:inline-block;
	text-align:left;
	margin:30px auto 0 auto ;
}

.work-list li {
	width:100%;
	margin:0 0 50px 0;
	display:block;
	border-top:solid 5px #003DAD;
	font-size:13px;
	vertical-align:top;
	background-color:#FFF;
	box-sizing:border-box;
}

div.text-box-480 {
	width:80%;
	margin:0 auto;
}


}


/* ////////////////////////////////////
パンくず ////////////////////////
//////////////////////////////////// */

/* フッター上パンくずリスト */

.pagertop-box {
	width:100%;
	position: relative;
	text-align:right;
	color:#4D4D4D;
	box-sizing:border-box;
	line-height:1.75rem;
	margin:15px 0 0 0;
	z-index: 10;
}

.pagertop-box-innner {
	width:1020px;
	margin:0 auto;
}

.pagertop {
	line-height:1rem;
	font-size:12px;
}

.pagertop a {
	color:#4D4D4D;
}

@media screen and (max-width: 1079px) {
.pagertop-box-innner {
	width:90%;
}
}

/* フッター上パンくずリスト */

.pager-box {
	width:100%;
	text-align:left;
	background-color:#003DAD;
	color:#FFF;
	padding:10px 0;
	box-sizing:border-box;
}

.pager-box-innner {
	width:1020px;
	margin:0 auto;
}

.pager {
	line-height:1rem;
	font-size:12px;
}

.pager a {
	color:#FFF;
}

@media screen and (max-width: 1079px) {
.pager-box-innner {
	width:90%;
}
}


/* ////////////////////////////////////
フッター ////////////////////////
//////////////////////////////////// */

footer{
	width:100%;
	background-color:#FFF;
}

div.foot-box{
	width:1020px;
	position:relative;
	margin:auto;
	padding:35px 0 35px 0;
	z-index:10
}

/* スペーサー */

div.spacer{
	width:100%;
	margin:10px 0 10px 0;
	height:5px;
}

.spacer-border {
	width:100%;
	margin:30px 0 35px 0;
	height:1px;
	border-bottom:1px dotted #ddd;
}

.spacer-m30 {
	width:100%;
	margin:30px 0 30px 0;
	height:1px;
}

.spacer-m40 {
	width:100%;
	margin:40px 0 40px 0;
	height:1px;
}

/* コピーライト */

p.copyright{
	font-size:11px;
	letter-spacing:0em;
	line-height:1;
	position:absolute;
	right:0;
}

/* フッターナビ */

p.footnav{
	font-size:11px;
	position:absolute;
	left:0;
	margin-top:-10px;
	line-height:1;
}

@media screen and (max-width: 399px) {
	p.footnav{
	font-size:10px;
	letter-spacing:0rem;
}
}


@media screen and (max-width: 1079px) {

footer{
	padding-bottom:35px;
}


div.foot-box{
	width:90%;
	position:relative;
	margin:auto;
	padding:35px 0;
	z-index:10;
	box-sizing:border-box;
}

p.copyright{
	left:0;
	margin:20px 0 0 0;
}

}


/* ////////////////////////////////////
コンテンツページ共通 ////////////////////////
//////////////////////////////////// */


/* コンテンツページトップ画像 */

.page-topimg-box {
	width:100%;
	height:240px;
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center;
	margin:90px 0 0 0;
}

.page-topimg-cover {
	width:100%;
	height:240px;
	background-color: rgba(0,0,0,0.3);
}

.page-topimg-inner {
	width:100%;
	position:relative;
	margin:0 auto;
	padding:50px 0 0 0;
	text-align:center;
}

@media screen and (max-width: 1079px) {
.page-topimg-box {
	margin:70px 0 0 0;
}
}

@media screen and (max-width: 767px) {
.page-topimg-box {
	margin:50px 0 0 0;
}
}

/* ページ每トップ画像を設定 */
.companypage {
	background-image:url(../img/mainimg_002.jpg);
}
.businesspage {
	background-image:url(../img/obiimg_003C.jpg);
}

.workspage {
	background-image:url(../img/business001.jpg);
}

.newspage {
	background-image:url(../img/mainimg_003.jpg);
}

.staffpage {
	background-image:url(../img/obiimg_002.jpg);
}

.entrypage {
	background-image:url(../img/obiimg_004.jpg);
}

.taiyopage {
	background-image:url(../img/mainimg_004.jpg);
}

/* 扉リスト3カラム */


.contents-list {
	width:100%;
	display:inline-block;
	text-align:left;
	margin:0;
}

.contents-list li {
	width:28%;
	margin:0 2.5% 5% 2.5%;
	padding:10px 0 0 0;
	display:inline-block;
	border-top:solid 5px #003DAD;
	font-size:13px;
	vertical-align:top;
	background-color:#FFF;
	box-sizing:border-box;
}

.contents-list li:hover {
	border-top:solid 5px #E30000;
}

.contents-list li,
.contents-list li::before,
.contents-list li::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

.contents-list-thum-mask {
	width:100%;
	height:62.5%;
	overflow:hidden;
	position:relative;
}

.contents-list-thum-mask img {
	width:100%;
}

.contents-list li p {
	margin:0 0 10px 0;
}

.contents-list-text-box {
	width:100%;
	padding:15px;
	box-sizing:border-box;
}

.contents-cate {
	background-color:#E30000;
	color:#FFF;
	border-radius:20px;
	line-height:40px;
	width:40px;
	height:40px;
	font-size:18px;
	font-weight:500;
	display:inline-block;
	text-align:center;
}

.contents-cate:hover {
	background-color:#4d4d4d;
}

.contents-cate,
.contents-cate::before,
.contents-cate::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

.contents-text {
	display:inline-block;
	vertical-align:top;
	margin:0 0 0 10px;
}


@media screen and (max-width: 1079px) {


.contents-list {
	width:100%;
	display:inline-block;
	text-align:left;
	margin:30px 0 0 0 ;
}


}

@media screen and (max-width: 899px) {

.contents-list {
	width:95%;
	display:inline-block;
	text-align:left;
	margin:30px auto 0 auto ;
}

.contents-list li {
	width:44.9%;
	margin:0 2.5% 5% 2.5%;
	padding:10px 0 0 0;
	display:inline-block;
	border-top:solid 5px #003DAD;
	font-size:13px;
	vertical-align:top;
	background-color:#FFF;
	box-sizing:border-box;
}

}

@media screen and (max-width: 599px) {

.contents-list {
	width:90%;
	display:inline-block;
	text-align:left;
	margin:30px auto 0 auto ;
}

.contents-list li {
	width:100%;
	margin:0 0 50px 0;
	padding:10px 0 0 0;
	display:block;
	box-sizing:border-box;
}

}

/*　2カラムレイアウト */

.twocolumn-box-inner-1080 {
	width:1020px;
	padding:70px 0px;
	margin:0 auto;
	position:relative;
	text-align:left;
}


/*　2カラム-コンテンツ */

.twocolumn-contents-box {
	width:720px;
	text-align:left;
	position:relative;
	background-color:#FFF;
	border-top:5px solid #003DAD;
	padding:40px;
	box-sizing:border-box;
	margin-left: auto;
}

.twocolumn-contents-inner {
	width:100%;
	position:relative;
}

.twocolumn-contents-inner img {
	width:100%;
}

.twocolumn-contents-inner p a img {
	width:100%;
	height:auto;
}

div.twocolumn-contents-box > div > p > img {
	width:100%;
	height:auto;

}
.contents-cate-twocolumn {
	background-color:#E30000;
	color:#FFF;
	border-radius:25px;
	line-height:50px;
	width:50px;
	height:50px;
	font-size:20px;
	font-weight:500;
	display:inline-block;
	text-align:center;
}

.contents-cate-twocolumn:hover {
	background-color:#4d4d4d;
}

.contents-cate-twocolumn,
.contents-cate-twocolumn::before,
.contents-cate-twocolumn::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

.contents-text-twocolumn {
	display:inline-block;
	vertical-align:top;
	margin:0 0 0 10px;
}

.sign {
	width:100%;
	margin:40px 0 0 0;
	text-align:right;
}

/*　2カラム-サイドナビ */

.side-nav-box {
	width: 240px;
	position:absolute;
	left: 0;
	top:70px;
	margin:0 0 100px 0;
}

.side-nav-box ul li {
	display:block;
	margin:0 0 5px 0;
	font-size:13px;
}

.cat-item a {
	font-size:12px;
	display: block;
	width: 240px;
	height: 46px;
	text-align:left;
	text-decoration: none;
	line-height: 44px;
	outline: none;
	font-weight:300;
	margin:0 0 5px 0;
	padding:0 20px;
	background-color: #FFF;
	box-sizing:border-box;
	position:relative;
}

.side-nav-bllist a {
	font-size:13px;
	display: block;
	width: 240px;
	height: 46px;
	color: #FFF;
	text-align:left;
	text-decoration: none;
	line-height: 44px;
	outline: none;
	font-weight:300;
	margin:0 0 5px 0;
	padding:0 20px;
	background-color: #003DAD;
	box-sizing:border-box;
	position:relative;
}

@media screen and (max-width: 1079px) {

.twocolumn-box-inner-1080 {
	width:90%;
	padding:70px 0px;
	margin:0 auto;
	position:relative;
	text-align:center;
}


.twocolumn-contents-box {
	width:100%;
	text-align:left;
	position:relative;
	background-color:#FFF;
	border-top:5px solid #003DAD;
	padding:40px;
	box-sizing:border-box;
	margin-left: auto;
}



.twocolumn-contents-inner {
	width:100%;
	position:relative;
}

/*　2カラム-サイドナビ */

.side-nav-box {
	width:100%;
	position:relative;
	margin:0px auto 100px auto;
	padding-bottom:0;
}

.side-nav-box ul li {
	display:block;
	margin:0 0 5px 0;
	font-size:13px;
}

.cat-item a {
	font-size:13px;
	display: block;
	width: 100%;
	height: 46px;
	text-align:left;
	text-decoration: none;
	line-height: 44px;
	outline: none;
	font-weight:300;
	margin:0 0 5px 0;
	padding:0 20px;
	background-color: #FFF;
	box-sizing:border-box;
	position:relative;
}

.side-nav-bllist a {
	font-size:13px;
	display: block;
	width: 100%;
	height: 46px;
	color: #FFF;
	text-align:left;
	text-decoration: none;
	line-height: 44px;
	outline: none;
	font-weight:300;
	margin:0 0 5px 0;
	padding:0 20px;
	background-color: #003DAD;
	box-sizing:border-box;
	position:relative;
}

}

@media screen and (max-width: 767px) {

.twocolumn-box-inner-1080 {
	padding:50px 0px;
}

.twocolumn-contents-box {
	padding:7%;
}

.contents-cate-twocolumn {
	background-color:#E30000;
	color:#FFF;
	border-radius:20px;
	line-height:40px;
	width:40px;
	height:40px;
	font-size:20px;
	font-weight:500;
	display:inline-block;
	text-align:center;
}

}


@media screen and (max-width: 599px) {

.twocolumn-box-inner-1080 {
	padding:30px 0px;
}

.twocolumn-contents-box {
	padding:5%;
}
}


/*　テーブル */

table {
	width: 100%;
	box-sizing:border-box;
	line-height:1.75rem;
	margin:10px 0;
	border-top: 1px solid #ddd;
}

th, td {
	padding: 10px 15px;
	border-bottom: 1px solid #ddd;
}

th {
    background: #f5f5f5;
	width: 30%;
	text-align: left;
}

.goukei {
	font-size:1.05rem;
	font-weight:500;
}

td .mention-img {
	width:45% !important;
	margin:10px 5% 10px 0;
	display:inline-block;
	vertical-align:top;
}

@media only screen and (max-width:599px){
table	{
	margin:0 auto;
	border:none;
}

table th,
table td{
	width: 100%;
	display: block;
	border-top: none;
	box-sizing:border-box;
	border:none;
 }

.mention-img {
	width:100%;
	margin:10px auto;
	display:block;
}

}

/*　テーブル表彰実績 */

.mention-table {
	width: 100%;
	box-sizing:border-box;
	line-height:1.75rem;
	margin:10px 0;
	border-top: 1px solid #ddd;
	display:table;
}

.mention-table th, td {
	padding: 10px 15px;
	border-bottom: 1px solid #ddd;
}

.mention-table th {
	width:30%;
}

.mention-table td {
	width:70%;
}




/* ////////////////////////////////////
事業案内ページ ////////////////////////
//////////////////////////////////// */

.business-contents-box {
	width:100%;
}

.business-contents-box ul {
	font-size:0;
}

.business-contents-box ul li {
	width:50%;
	height:400px;
	display: inline-block;
	*display: inline;
	*zoom: 1;
	background-repeat:no-repeat;
	background-position:center;
	text-align:center;
	position:relative;
}

.business-contents-box ul li .bgi-cover {
	width:100%;
	height:400px;
	background-color: rgba(0,0,0,0.4);
	position:relative;
}

.business-contents-box ul li .bgi-cover:hover {
	background-color: rgba(0,0,0,0.1);
}

.business-contents-box ul li .bgi-cover,
.business-contents-box ul li .bgi-cover::before,
.business-contents-box ul li .bgi-cover::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

.bgi-textbox {
	width:100%;
	margin:auto;
	display:block;
	text-align:center;
}

.bgi-textbox .contents-cate-twocolumn {
	margin:110px 0 10px 0;
}

.bgi-textbox .contents-text-twocolumn {
	display:block;
}

.bgi-textbox .contents-text-twocolumn p {
	margin:5px 0;
}

.bgi-servay {
	background-image:url(../img/survey001.jpg);
	background-size:cover;
}

.bgi-consultant {
	background-image:url(../img/consultant001.jpg);
	background-size:cover;
}

.bgi-recompense {
	background-image:url(../img/recompense01.jpg);
	background-size:cover;
}

.bgi-architecture {
	background-image:url(../img/architecture01.jpg);
	background-size:cover;
}

.bgi-reseach {
	background-image:url(../img/reseach01.jpg);
	background-size:cover;
}

.bgi-works {
	background-image:url(../img/works_kumanoohashi01.jpg);
	background-size:cover;
}

@media only screen and (max-width:1079px){

.business-contents-box ul li {
	height:300px;
}

.business-contents-box ul li .bgi-cover {
	height:300px;
}

.bgi-textbox .contents-cate-twocolumn {
	margin:80px 0 10px 0;
}

}

@media only screen and (max-width:767px){

.business-contents-box ul li {
	width:100%;
	height:240px;
	display: block;
	*zoom: 1;
	background-repeat:no-repeat;
	background-position:center;
	text-align:center;
	position:relative;
}

.business-contents-box ul li .bgi-cover {
	height:240px;
}

.bgi-textbox .contents-cate-twocolumn {
	margin:60px 0 10px 0;
}

.bgi-textbox .contents-text-twocolumn p {
	margin:0px 0;
}


}


/* ////////////////////////////////////
事業所一覧 ////////////////////////
//////////////////////////////////// */


.twocolumn-box-640 {
	width:100%;
}

img.twocolumn-box-640-img {
	width:47%;
	display:inline-block;
	vertical-align:top;
}

div.twocolumn-box-640-img {
	width:47%;
	display:inline-block;
	vertical-align:top;
}

.twocolumn-box-640-textbox {
	width:47%;
	margin-left:4%;
	display:inline-block;
	vertical-align:top;
}

.twocolumn-box-640 P {
	margin:0 0 15px 0;
}

@media only screen and (max-width:767px){

img.twocolumn-box-640-img {
	width:100%;
	display:block;
}

div.twocolumn-box-640-img {
	width:100%;
	display:block;
	padding:0 0 30px 0;
	border-bottom:1px dotted #ddd;
}

.twocolumn-box-640-textbox {
	width:100%;
	margin:20px 0 0 0;
	display:block;
	vertical-align:top;
}

.twocolumn-box-640 P {
	margin:0 0 15px 0;
}

}

/* ////////////////////////////////////
リクルート ////////////////////////
//////////////////////////////////// */


.bgbl-box {
	background-color:#003DAD;
}

.bggray-box {
	background-color:#4D4D4D;
}

.bgbl-box-inner {
	height:500px;
	background-image:url(../img/recruit_staff.png);
	background-repeat:no-repeat;
	background-position:right bottom;
}

.right-img {
	position:absolute;
	right:0;
	bottom:0;
}

.recruit-message {
	max-width:1020px;
	height:500px;
	margin:0 auto;
	background-image:url(../img/president01_475.png);
	background-repeat:no-repeat;
	background-position:left bottom;
}

.recruit-message  .right-textbox {
	width:480px;
	display:inline-block;
	margin:200px 60px 0 60px;
	text-align:left;
}

@media only screen and (max-width:1079px){

.recruit-message {
	max-width:90%;
	height:500px;
	margin:0 auto;
	background-image:url(../img/president01_475_mini.png);
	background-repeat:no-repeat;
	background-position:left bottom;
}

.recruit-message  .right-textbox {
	width:90%;
	display:inline-block;
	margin:170px auto 0 auto;
	text-align:center;
}

.bgbl-box-inner {
	height:600px;
	background-image:url(../img/recruit_staff.png);
	background-repeat:no-repeat;
	background-position:center bottom;
}
}

@media only screen and (max-width:767px){

.recruit-message  .right-textbox {
	width:90%;
	display:inline-block;
	margin:100px auto 0 auto;
}

}

.recruit-company-box{
	width:1020px;
	height:750px;
	margin:0 auto;
	position:relative;
}

.recruit-company-rightbox {
	width:50%;
	height:225px;
	display: inline-block;
	*display: inline;
	*zoom: 1;
	color:#FFF;
	font-size:13px;
	background-color:#E30000;
	vertical-align:top;
	text-align:center;
	position:absolute;
	left:0;
}

.recruit-company-leftbox {
	width:50%;
	height:225px;
	display: inline-block;
	*display: inline;
	*zoom: 1;
	color:#FFF;
	font-size:13px;
	background-color:#E30000;
	vertical-align:top;
	text-align:center;
	position:absolute;
	right:0;
}

.recruit-company-rightleftbox {
	width:50%;
	height:225px;
	display: inline-block;
	*display: inline;
	*zoom: 1;
	color:#FFF;
	font-size:13px;
	background-color:#E30000;
	vertical-align:top;
	text-align:center;
	position:absolute;
	left:0;
	margin:225px 0 0 0;
}

.recruit-company-leftrightbox {
	width:50%;
	height:225px;
	display: inline-block;
	*display: inline;
	*zoom: 1;
	color:#FFF;
	font-size:13px;
	background-color:#E30000;
	vertical-align:top;
	text-align:center;
	position:absolute;
	right:0;
	margin:225px 0 0 0;
}

.recruit-company-rightbox2 {
	width:50%;
	height:225px;
	display: inline-block;
	*display: inline;
	*zoom: 1;
	color:#FFF;
	font-size:13px;
	background-color:#E30000;
	vertical-align:top;
	text-align:center;
	position:absolute;
	left:0;
	margin:450px 0 0 0;
}

.recruit-company-leftbox2 {
	width:50%;
	height:225px;
	display: inline-block;
	*display: inline;
	*zoom: 1;
	color:#FFF;
	font-size:13px;
	background-color:#E30000;
	vertical-align:top;
	text-align:center;
	position:absolute;
	right:0;
	margin:450px 0 0 0;
}



@media only screen and (max-width:767px){

.recruit-company-box{
	width:1020px;
	height:1400px;
	margin:0 auto;
	position:relative;
}

.recruit-company-rightbox {
	width:100%;
	height:225px;
	display: block;
	text-align:center;
	position:relative;
	margin:0 0 0 0;
}

.recruit-company-leftbox {
	width:100%;
	height:225px;
	display: block;
	text-align:center;
	position:relative;
	margin:-50px 0 0 0;
}

.recruit-company-rightleftbox {
	width:100%;
	height:225px;
	display: block;
	text-align:center;
	position:relative;
	margin:-50px 0 0 0;
}

.recruit-company-leftrightbox {
	width:100%;
	height:225px;
	display: block;
	text-align:center;
	position:relative;
	margin:0 0 0 0;
}

.recruit-company-rightbox2 {
	width:100%;
	height:225px;
	display: block;
	text-align:center;
	position:relative;
	margin:0 0 0 0;
}

.recruit-company-leftbox2 {
	width:100%;
	height:225px;
	display: block;
	text-align:center;
	position:relative;
	margin:-50px 0 0 0;
}

.recruit-company-textbox {
	width:100%;
	position:relative;
	margin:50px auto 0 auto;
}

.recruit-company-textbox {
	width:100%;
	position:relative;
	padding:40px 0 0 0;
}

}

.recruit-company-box ul {
	width:100%;
}

.recruit-company-box ul li {
	width:50%;
	height:225px;
	display: inline-block;
	*display: inline;
	*zoom: 1;
	color:#FFF;
	font-size:13px;
	background-color:#E30000;
	vertical-align:top;
	text-align:center;
}

.recruit-company-textbox {
	width:100%;
	position:relative;
	margin:0px auto 0 auto;
}
.recruit-company-textbox .work {
	width:100%;
	position:relative;
	margin:30px auto 0 auto;
}

.recruit-company-box-imgmask {
	width:100%;
	height:225px;
	overflow:hidden;
}

.recruit-company-box-imgmask img {
	width:100%;
	min-height:225px;
}

@media only screen and (max-width:1079px){

.recruit-company-box{
	width:90%;
	margin:0 auto;
	position:relative;
}

.recruit-company-textbox {
	width:100%;
	position:relative;
	margin:45px auto 0 auto;
}

}

@media only screen and (max-width:767px){

.recruit-company-box ul li {
	width:100%;
	height:225px;
	display:block;
	color:#FFF;
	font-size:13px;
	background-color:#E30000;
	text-align:center;
	margin:0;
}

}


/* ボタンリスト */

.btn-list {
	width:100%;
	display:inline-block;
	text-align:left;
	margin:0;
}

.btn-list li {
	width:28%;
	margin:0 2.5% 5% 2.5%;
	display:inline-block;
	font-size:13px;
	vertical-align:top;
	box-sizing:border-box;
}

@media screen and (max-width: 1079px) {


.btn-list {
	width:100%;
	display:inline-block;
	text-align:left;
	margin:30px 0 0 0 ;
}


}

@media screen and (max-width: 899px) {

.btn-list {
	width:95%;
	display:inline-block;
	text-align:left;
	margin:30px auto 0 auto ;
}

.btn-list li {
	width:44.9%;
	margin:0 2.5% 5% 2.5%;
	display:inline-block;
	font-size:13px;
	vertical-align:top;
	box-sizing:border-box;
}


}

@media screen and (max-width: 599px) {

.btn-list {
	width:90%;
	display:inline-block;
	text-align:left;
}

.btn-list li {
	width:100%;
	margin:0 0 5% 0;
	display:block;
	box-sizing:border-box;
}

.recruit-button li {
	margin:0 0 10px 0 !important;
}

}

.box-inner-1020 {
	width:100%;
	max-width:1020px;
	margin:0 auto;
}

.topimg-1020-mask {
	width:100%;
	height:450px;
	position:relative;
	overflow:hidden;
}

.topimg-1020-mask img.topimg-1020 {
	position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  height: auto;
}

.recruit-text-box-list {
	width:28.3%;
	padding: 10px 20px 20px 20px;
	box-sizing:border-box;
	border-top:5px solid #003DAD;
	background-color:#FFF;
	text-align:left;
	position:absolute;
	margin:-230px 0 0 5%;
}

.recruit-text-box-list li {
	display:block;
	padding:15px 0;
	border-bottom:1px solid #ddd;
}

.recruit-text-box-list li p {
	display:block;
	width:100%;
}


/* 吹き出し共通 */
.bubble {
	width:100%;
	display:inline-block;
	position: relative;
	padding:40px 40px;
	border-radius:0px;
	background: #003DAD;
	box-sizing:border-box;
	margin: -100px auto 50px auto;
	z-index:2;
	text-align:center;
}
.bubble:after {
	position: absolute;
	content: " ";
	height: 0;
	width: 0;
}
/* 上中央 */
.bubble-top:after {
	bottom: 100%;
	left: 50%;
	border:20px solid transparent;
	border-bottom:20px solid #003DAD;
	margin-left: -20px;
}
/* 下中央 */
.bubble-bottom:after {
 top: 100%;
 left: 50%;
 border:10px solid transparent;
 border-top:10px solid #fff;
 margin-left: -10px;
}
/* 左中央*/
.bubble-left:after {
 right: 100%;
 top: 50%;
 border:10px solid transparent;
 border-right:10px solid #fff;
 margin-top: -10px;
}
/* 右中央 */
.bubble-right:after {
 left: 100%;
 top: 50%;
 border:10px solid transparent;
 border-left:10px solid #fff;
 margin-top: -10px;
}
/* 下三角半分 */
.bubble-half-bottom:after {
 top: 100%;
 left: 5%;
 border-top:10px solid #fff;
 border-right:10px solid transparent;
}
/* 上三角半分 */
.bubble-half-top:after {
 bottom: 100%;
 left: 5%;
 border-bottom:10px solid #fff;
 border-right:10px solid transparent;
}
/* 左三角半分 */
.bubble-half-left:after {
 right: 100%;
 top: 10%;
 border-top:10px solid #fff;
 border-left:10px solid transparent;
}
/* 右三角半分 */
.bubble-half-right:after {
 left: 100%;
 top: 10%;
 border-top:10px solid #fff;
 border-right:10px solid transparent;
}

.wh-text-box {
	width:100%;
	text-align:left;
	background-color:#fff;
	padding:5%;
	box-sizing:border-box;
	position:relative;
	margin:100px 0 0 0;
}

.wh-text-box-blue {
	width:100%;
	text-align:left;
	background-color:#fff;
	padding:5%;
	box-sizing:border-box;
	position:relative;
	border-top:5px solid #003DAD;
	margin:0 auto;
}

.clear-text-box {
	width:100%;
	text-align:left;
	padding:5% 0;
	position:relative;
	margin:0 atuo;
}

.contents-index {
	font-size:24px;
	font-weight:500;
	color:#003DAD;
	border-bottom:3px solid #003DAD;
	padding:5px 0;
	margin:0 0 20px 0;
}

.twocolumn-box-left {
	width:47.5%;
	background-color:#fff;
	padding:5%;
	box-sizing:border-box;
	display:inline-block;
	vertical-align:top;

}

.twocolumn-box-right {
	width:47.5%;
	background-color:#fff;
	padding:5%;
	box-sizing:border-box;
	display:inline-block;
	vertical-align:top;
	margin-left:5%;
}

.twocolumn-box-left img,
.twocolumn-box-right img {
	width:100%;
	margin:0 0 20px 0;
}

/*　テーブル スケジュール */

table.schedule {
	width: 100%;
	box-sizing:border-box;
	line-height:1.75rem;
	margin:10px 0 0 0 ;
	background: #FFF;
	border:none;
	border-top: 1px dotted #ddd;
}

table.schedule th, td {
	padding: 10px 15px;
	border-bottom: 1px dotted #ddd;
}

table.schedule th {
	width: 20%;
	text-align: left;
	background:#FFF;
	font-weight:300;
}

@media only screen and (max-width:599px){
table.schedule	{
	margin:0 auto;
	border:none;
}

table.schedule th {
	background-color:#F5F5F5;
}
table.schedule th,
table.schedule td{
	width: 100%;
	display: block;
	border-top: none;
	box-sizing:border-box;
	border:none;
 }
}

@media screen and (max-width: 1079px) {

/*.box-inner-1020 img.topimg-1020 {
	width:90%;
	z-index:0;
	margin:0 auto;
}*/

.topimg-1020-mask {
	width:90%;
	margin:0 auto;
}

.recruit-text-box-list {
	margin:-230px 0 0 10%;
}

.bubble {
	width:100%;
	margin: -80px auto 50px auto;
}

.wh-text-box {
	width:90%;
	margin:80px auto 0 auto;
}

.wh-text-box-blue {
	width:90%;
	margin:0 auto;
}

.clear-text-box {
	width:90%;
	padding:5%;
	margin:0 atuo;
}

}

@media screen and (max-width: 767px) {

.topimg-1020-mask {
	height:350px;
}

.wh-text-box {
	width:90%;
	margin:100px auto 0 auto;
}

.bubble {
	width:100%;
	margin: -70px auto 30px auto;
}

}

@media screen and (max-width: 599px) {

.topimg-1020-mask {
	height:300px;
}

.recruit-text-box-list {
	width:40%;
	padding: 0 20px 20px 20px;
	box-sizing:border-box;
	border-top:5px solid #003DAD;
	background-color:#FFF;
	text-align:left;
	position:absolute;
	margin:-230px 0 0 10%;
}

.wh-text-box {
	margin:80px auto 0 auto;
}

.twocolumn-box-left {
	width:100%;
	background-color:#fff;
	padding:5%;
	box-sizing:border-box;
	display:block;
	margin:0 0 5% 0;

}

.twocolumn-box-right {
	width:100%;
	background-color:#fff;
	padding:5%;
	box-sizing:border-box;
	display:block;
	margin-left:0;
}

.bubble {
	width:100%;
	margin: -50px auto 30px auto;
}

}

@media screen and (max-width: 479px) {

.recruit-text-box-list {
	margin:-230px 0 0 10%;
}

.wh-text-box {
	margin:80px auto 0 auto;
}

}


/* ////////////////////////////////////
アコーディオン ////////////////////////
//////////////////////////////////// */


div.accordion {
	width: 100%;
}

div.accordion > ul > li > a {
	display: block;
	color: #4D4D4D;
	font-size: 16px;
	text-decoration: none;
	background-color: #F5F5F5;
	border-bottom: 1px solid #fff;
	cursor: pointer;
	padding: 20px 30px 20px 20px;
	position: relative;
	line-height:30px;
}
div.accordion > ul > li > a:after, div.accordion > ul > li > a.active:after{
	font-size: 10px;
	position: absolute;
	right: 12px;
	top: 16px;
	color:#4D4D4D;
}
div.accordion ul li a:hover {
	background-color:#003DAD;
	color:#FFF;
}
div.accordion > ul > li > a:hover {
	color:#FFF;
}
div.accordion > ul > li > a:after{
	content: "▼";
}
div.accordion > ul > li > a.active:after{
	content: "▲";
}
div.accordion > ul > li > a:hover:after{
	content: "▼";
	color:#FFF;
}
div.accordion > ul > li > a.active:hover:after{
	content: "▲";
	color:#FFF;
}
div.accordion > ul > li > ul {
	display: none;
	color:#4D4D4D;
	padding:2.5%;
	box-sizing:border-box;
}
div.accordion > ul > li > ul > li > a{
	display: block;
	color: #4D4D4D;
	font-size: 14px;
	background-color: #FFF;
	padding: 6px 12px;
	position: relative;
}
div.accordion > ul > li > ul > li {
	display: block;
	color: #4D4D4D;
	font-size: 14px;
	background-color: #FFF;
	padding: 6px 12px;
	position: relative;
}
div.accordion > ul > li > ul > li > a:hover{
}

div.accordion ul li {
	margin:0 0 10px 0 ;
}

.faq-icon {
	background-color:#003DAD;
	color:#FFF;
	border-radius:15px;
	line-height:30px;
	width:30px;
	height:30px;
	font-size:14px;
	font-weight:500;
	display:inline-block;
	text-align:center;
	margin:0 10px 0 0;
	vertical-align:top;
}

.answer {
	background-color:#E30000;
}

.faq-title {
	width:74%;
	display:inline-block;
	vertical-align:top;
	margin:0 0 0 0px;
	line-height:30px;
}

div.accordion ul li a:hover .faq-icon {
	background-color:#FFF;
	color:#003DAD;
}


/* ////////////////////////////////////
サイトマップ////////////////////////
//////////////////////////////////// */

.link-inline {
	margin: 0 20px 0 0 ;
}


/* ////////////////////////////////////
３カラム ////////////////////////
//////////////////////////////////// */


.threecolumn-contents-title{
	width:720px;
	box-sizing:border-box;
	text-align:left;
	border-left:5px solid #003DAD;
	padding:15px 20px;
	margin: 0 0 10px auto;
	background-color:#FFF;
}

.threecolumn-contents-box {
	width: 720px;
	box-sizing: border-box;
	text-align: left;
	margin: 0 0 60px auto;
}

.threecolumn-contents-inner {
	width:105%;
	margin:0 0 0 -2.5%;
}

@media screen and (max-width: 1079px) {

.threecolumn-contents-title{
	width:100%;
	box-sizing:border-box;
	text-align:left;
	padding:15px 20px;
	margin: 0 auto 10px auto;
}

.threecolumn-contents-box {
	width:100%;
	box-sizing:border-box;
	text-align:left;
	margin: 0 auto 0px auto;
}

}

@media screen and (max-width: 599px) {
.threecolumn-contents-box {
	width:100%;
	box-sizing:border-box;
	text-align:left;
	margin: 0 auto 60px auto;
}
.threecolumn-contents-inner {
	width:100%;
	margin:0 0 0 0%;
}

}

@media screen and (max-width: 899px) {

.threecolumn-contents-box .threecolumn-contents-inner .work-list {
	width:100%;
}

}

@media screen and (max-width: 599px) {


.threecolumn-contents-box .threecolumn-contents-inner .work-list {
	width:100%;
}

}


/* ////////////////////////////////////
リンクページ ////////////////////////
//////////////////////////////////// */

.type-link{
	width:100%;
	border-top:1px dotted #ddd;
}

.type-link li {
	width:100%;
	font-size:14px;
	border-bottom:1px dotted #ddd;
	padding:10px 0;
	line-height:175%;
}

/* ////////////////////////////////////
スクロールボタン ////////////////////////
//////////////////////////////////// */

#page-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
	z-index:999;
}

#page-top a img:hover {
	-webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -o-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
}

#page-top a img,
#page-top a img::before,
#page-top a img::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

/* ----------------------------------------------------------------------------------
定義リスト
---------------------------------------------------------------------------------- */

dl.application-list{
	width:100%;
	margin:0 auto 50px auto;
	position:relative;
	text-align:left;
}
dt {
  float:left;
  clear:left;
  width:20%;
  margin:0 0 0 0;
  font-weight:400;
  text-align:right;
  line-height:40px;
}
dd {
  width:75%;
  margin:0 0 20px 25%;
  padding:0 0 0 0;
  line-height:40px;
}

dd.checkboxarea {
	background-color:#F5F5F5;
	line-height:40px;
	padding:0 10px;
	box-sizing:border-box;
}

dd:last-child {
  margin:0 0 0px 25%;
}

dd:only-child {
  margin:0 0 0px 25%;
}

dd.graybox-dd {
  width:59%;
  padding:2% 3%;
  margin:0 0 20px 25%;
  background-color:#F5F5F5;
}

ul.text-decimal-list{
	padding:0 0 0 3%;
}

ul.text-decimal-list li {
	list-style:decimal;
}

ul.document-img-list {
	width:100%;
	font-size:0;
}

ul.document-img-list li{
	width:47%;
	margin:0 4% 0 0;
	display:inline-block;
	vertical-align:top;
	font-size:13px;
}

ul.document-img-list li:last-child{
	margin:0 0 0 0;
}

ul.document-img-list li a img {
	width:100%;
	border:1px solid #ccc;
	margin-bottom:10px;
}

ul.document-img-list li a img:hover {
	opacity:0.6;
	transition:0.4s;
}

/*ul.document-img-list li a span.img-list-down {
	width:100%;
	background-image:url(../img/download_miniicon.svg);
	background-repeat:no-repeat;
	background-position:right;
	background-size:9px 12px;
}*/


@media only screen and (max-width: 767px) {

dl.application-list{
	width:100%;
	margin:0 auto 50px auto;
	position:relative;
	text-align:left;
}
dt {
  float:none;
  clear:none;
  width:100%;
  margin:0 0 10px 0;
  font-weight:400;
  text-align:left;
  line-height:1.75rem;
}
dd {
  width:100%;
  margin:0 0 20px 0;
  padding:0 0 0 0;
  line-height:1.75rem;
  text-align: justify;
  text-justify: inter-ideograph;
}

dd:last-child {
  margin:0 0 0px 0;
}

dd:only-child {
  margin:0 0 0px 0;
}

dd.graybox-dd {
  width:94%;
  padding:2% 3%;
  margin:0 0 20px 0;
  background-color:#F5F5F5;
}

ul.text-decimal-list{
	padding:2% 4% 2% 8%;
}

ul.text-decimal-list li {
	list-style:decimal;
	letter-spacing:0em;
}

ul.document-img-list {
	width:100%;
}

ul.document-img-list li{
	width:47%;
	margin:0 4% 0 0;
	display:inline-block;
	vertical-align:top;
}

ul.document-img-list li:last-child{
	margin:0 0 0 0;
}

ul.document-img-list li a img {
	width:100%;
	border:1px solid #ccc;
	margin-bottom:10px;
}

ul.document-img-list li a img:hover {
	opacity:0.6;
	transition:0.4s;
}

}

span.required {
	background:#E30000;
	color:#FFF;
	font-size:10px;
	font-weight:400;
	line-height:1rem;
	padding:.15rem .3rem;
	margin:0 0 0 7px;
}

p.dl-title {
	width:100%;
	font-size: 17px;
	font-weight: 500;
	letter-spacing: 0.1em;
	margin:0 auto 25px auto;
	text-align:center;
}

.spacer-boder-dotte {
	width:100%;
	height:1px;
	margin:0 auto 40px auto;
	padding:45px 0 0 0;
	position:relative;
	display:block;
	clear:both;
	border-bottom:1px dotted #ddd;
}


/* ----------------------------------------------------------------------------------
 form
---------------------------------------------------------------------------------- */


input.input_s {
	width:96%;
	padding:0 2%;
	margin:2px 0;
	height:40px;
	border:none;
	background-color:#F5F5F5;
}

input.input_s:hover {
	background-color:#FAFAFA;
	transition:0.4s;
}

textarea.textarea {
	width:96%;
	padding:2% 2%;
	margin:0 0;
	height:150px;
	border:none;
	background-color:#F5F5F5;
	resize: vertical;
}

textarea.textare:hover {
	background-color:#FAFAFA;
	transition:0.4s;
}

textarea.h-200 {
	height:200px
}

textarea.h-250 {
	height:250px
}

input.submit {
	display: inline-block;
	width: 240px;
	height: 44px;
	/* line-height:38px; */
	text-align: center;
	text-decoration: none;
	outline: none;
	font-size:13px;
	font-weight:400;
	margin:10px auto 0 auto;
	background-color: #FFF;
	cursor:pointer;
	border: 2px solid #000;
	color: #4D4D4D;
	box-sizing:border-box;
}

input.submit:hover {
	background-color: #E30000;
	border: 2px solid #E30000;
	color: #fff;
	/* line-height: 38px; */
}

input.submit::before,
input.submit::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
input.submit,
input.submit::before,
input.submit::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}


/* select */

.select-wrap{
position:relative;
overflow:hidden;
display:inline-block;
width:100%;
height:40px;
background-color:#FFF;
color:#4D4D4D;
}

.select-wrap select{
-webkit-appearance:none;
-moz-appearance:none;
appearance:none;
appearance:none;
position:relative;
z-index:2;
display:block;
width:200%;/* fallback non calc support */
width:-webkit-calc(100% + 5em);
margin:0;
padding: 0px 35px 0px 20px;
background:transparent;
border:0;
outline:none;
font-size:13px !important;
line-height:1.5;
color:#4D4D4D;
}

.select-wrap-gray{
position:relative;
overflow:hidden;
display:inline-block;
width:100%;
height:30px;
background-color:#F5F5F5;
color:#4D4D4D;
}

.select-wrap-gray select{
-webkit-appearance:none;
-moz-appearance:none;
appearance:none;
appearance:none;
position:relative;
z-index:2;
display:block;
width:200%;/* fallback non calc support */
width:-webkit-calc(100% + 5em);
margin:0;
padding:5px 35px 0px 10px;
background:transparent;
border:0;
outline:none;
font-size:12px !important;
line-height:1rem;
color:#4D4D4D;
height:40px;
box-sizing:border-box;
}


.entypo-down-open-mini:before{
position:absolute;
z-index:1;
top:50%;
right:12px;
right:.75rem;
margin-top:-8px;
margin-top:-.5rem;
font-size:13px !important;
line-height:1;
color:#4D4D4D;
}

@media only screen and (max-width: 767px) {
	input.submit {
	display: inline-block;
	width: 240px;
	height: 46px;
	text-align: center;
	text-decoration: none;
	line-height: 38px;
	outline: none;
	font-size:13px;
	font-weight:400;
	margin:10px auto 20px auto;
	background-color: #FFF;
	cursor:pointer;
}
}

.uploadButton {
    display:inline-block;
    position:relative;
    overflow:hidden;
    background:#F5F5F5;
    color:#4D4D4D;
    text-align:center;
    width:96%;
	padding:2% 2%;
    cursor:pointer;
}
.uploadButton:hover {
    background:#FAFAFA;
}
.uploadButton input[type=file] {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    cursor:pointer;
    opacity:0;
}

.uploadValue {
    display:none;
    background:#CCC;
    padding:3px;
    color:#4D4D4D;
	border:none;
}

/* ////////////////////////////////////
ページネーション ////////////////////////
//////////////////////////////////// */


.pagination {
	margin: 80px 2.5% ;
	color:#4D4D4D;
	font-size:13px;
	font-weight:400;
}
@media screen and (max-width: 599px) {
.pagination{
	margin: 80px 0 ;
}
}
a.page-numbers,
.pagination .current{
    background: #FFF;
	color:#4D4D4D;
    width:40px;
	text-align:center;
	line-height: 40px;
	display: inline-block;
    margin:0 2px;
    text-decoration: none;
}
.pagination a{
    background: #E30000;
    color: #FFF;
	width:40px;
	text-align:center;
	line-height: 40px;
    margin:0 2px;
	display: inline-block;
}
.pagination a:hover,
.pagination a page-numbers:hover {
	 background: #E30000;
	 color: #fff;
	 cursor:pointer;
  opacity: 1.0;
  filter: alpha(opacity=100);
  -moz-opacity: 1.0;
	 transition: 0.4s;
}

div.pagination li {
	display:none !important;
}

/*
nav.pagination{
	width:616px;
	text-align:left;
	position:relative;
	margin:20px 0 80px 0;
}

div.nav-links{
	position:absolute;
	left:0;
}

h2.screen-reader-text{
	display:none;
}

.nav-prevpost a {
	background: #fff;
    border: solid 1px #ccc;
    padding:5px 8px;
    margin:0 2px;
    text-decoration: none;
	border-radius: 3px;
	margin:0px 7px;
}
.nav-nextpost a {
	background: #fff;
    border: solid 1px #ccc;
    padding:5px 8px;
    margin:0 2px;
    text-decoration: none;
	border-radius: 3px;
	margin:0px 7px;
}
.nav-prevpost a:hover {
	background: #4F5155;
	 border: solid 1px #4F5155;
	 color: #fff;
	 cursor:pointer;
	 opacity: 1.0;
	 filter: alpha(opacity=100);
	 -moz-opacity: 1.0;
	 transition: 0.4s;
}
.nav-nextpost a:hover {
	background: #4F5155;
	 border: solid 1px #4F5155;
	 color: #fff;
	 cursor:pointer;
	 opacity: 1.0;
	 filter: alpha(opacity=100);
	 -moz-opacity: 1.0;
	 transition: 0.4s;
}
*/

/* ----------------------------------------------------------------------------------
シングルページ　ページネーション
---------------------------------------------------------------------------------- */

div.page-link-wrap{
	width:150px;
	position:relative;
	margin:60px 0 0 auto;
	text-align:center;
}

@media only screen and (max-width:1079px) {

div.page-link-wrap{
	width:100%;
	margin:60px auto 0px auto;
	text-align:center;
}

}

ul.page-link-list{
	font-size:0;
}

ul.page-link-list li{
	display:inline-block;
	margin:0 20px;
	vertical-align:middle;
	padding:10px 0;
}

ul.page-link-list li:first-child{
	margin:0 20px 0 0;
}

ul.page-link-list li:last-child{
	margin:0 0 0 20px;
}

div.btn-prev {
	left: 10px;
	width: 14px;
	height: 14px;
	border-top: 1px solid #003DAD;
	border-right: 1px solid #003DAD;
	-webkit-transform: rotate(225deg);
	transform: rotate(225deg);
}

div.btn-next {
	right: 10px;
	width: 14px;
	height: 14px;
	border-top: 1px solid #003DAD;
	border-right: 1px solid #003DAD;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.nav-prevpost a{
	display:block;
    text-decoration: none;
	cursor:pointer;
}

.nav-nextpost a {
	display:block;
	text-decoration: none;
	cursor:pointer;
}

.nav-backindex a {
    text-decoration: none;
	cursor:pointer;
	width:20px;
	height:20px;
	z-index:10;
}

.nav-backindex a img{
}

span.nav-prevpost a:hover {
	 cursor:pointer;
	 opacity: 0.5;
	 filter: alpha(opacity=50);
	 -moz-opacity: 0.5;
	 transition: 0.5s;
}
span.nav-nextpost a:hover {
	 opacity: 0.5;
	 filter: alpha(opacity=50);
	 -moz-opacity: 0.5;
	 transition: 0.4s;
}
span.nav-backindex a img:hover {
	 opacity: 0.5;
	 filter: alpha(opacity=50);
	 -moz-opacity: 0.5;
	 transition: 0.4s;
}

span.nav-nextpost a::before,
span.nav-nextpost a::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
span.nav-nextpost a,
span.nav-nextpost a::before,
span.nav-nextpost a::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

span.nav-nextpost a::before,
span.nav-nextpost a::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
span.nav-nextpost a,
span.nav-nextpost a::before,
span.nav-nextpost a::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

.nav-backindex a img::before,
.nav-backindex a img::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.nav-backindex a img,
.nav-backindex a img::before,
.nav-backindex a img::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

/* ----------------------------------------------------------------------------------
カテゴリ　ページネーション
---------------------------------------------------------------------------------- */



ul#pagination {
    list-style-type: none;
    overflow: hidden;
    padding: 0 10px;
    margin: 15px 0 15px 1.25%;
	font-size:13px;
	position:relative;
}

ul#pagination li {
	font-size:13px;
	display:inline-block;
	margin:0 10px 0 0;
}
ul#pagination li a {
    display: block;
    padding:8px 13px;
    background-color: #FFF;
    color: #4d4d4d;
}

ul#pagination li a:hover {
    display: block;
    padding:8px 13px;
    background-color:  #E30000;
    color: #FFF;
}

ul#pagination.posts li {
	font-size:13px;
	display:inline-block;
}
ul#pagination.posts li a {
    display: block;
    padding: 3px 5px;
    border: 1px solid #aaa;
    border-radius: 3px;
    background-color: #FFF;
    color: #4d4d4d;
}
ul#pagination.posts li a:hover {
    background-color: #E30000;
}
ul#pagination.post li.next,
ul#pagination.posts li.prev {
    float: left;
}
ul#pagination.post li.prev,
ul#pagination.posts li.next {
    float: right;
}
