@charset "utf-8";
/* Author: Hosaka */
/* ---------------------------------------------------
	common
------------------------------------------------------ */
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, 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, a { margin: 0; padding: 0; border: 0; outline: 0; vertical-align: baseline; -webkit-box-sizing: border-box; box-sizing: border-box;}
ol, ul { list-style: none; }

body {font-family: "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; font-display: swap; font-size: 16px;}

#wrapper {width: 100%; margin: 0 auto; overflow: hidden;}

.container {width: 100%; max-width: 1200px; margin: 0 auto;}
.container:after {content: ""; clear: both; display: block;}

a {-webkit-transition: all ease 0.2s; -moz-transition: all ease 0.2s; -o-transition: all ease 0.2s; transition: all ease 0.2s; box-sizing: border-box;}
a:hover {opacity: .7;}

img {max-width: 100%; height: auto; line-height: 1; vertical-align: bottom;}
img.max {width: 100%;}

p {line-height: 1.8; margin: 0;}

.flexbox {display: -ms-flexbox; display: -webkit-box; display: flex; flex-wrap: wrap; align-items: top; justify-content: space-between;}
.flexbox.mid {align-items: center;}
.flexbox.center {justify-content: center;}
.flexbox.reverse {flex-direction: row-reverse;}
.flexbox.start {justify-content: flex-start;}

.flL {float: left;}
.flR {float: right;}

.taL {text-align: left;}
.taC {text-align: center ;}
.taR {text-align: right;}

.rel {position: relative;}

.mincho {font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}
.gothic {font-family: "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;}

.w20 {width: 20%;}
.w30 {width: 30%;}
.w70 {width: 70%;}
.w80 {width: 80%;}
.w1200 {max-width: 1200px;}

.txt-lll {font-size: 1.375em;}
.txt-ll {font-size: 1.25em;}
.txt-l {font-size: 1.125em;}
.txt-s {font-size: 0.875em;}
.txt-ss {font-size: 0.75em;}
.txt-sss {font-size: 0.625em;}

.tcol-red {color: #F00;}
.tcol-blue {color: #00F;}

.pc-only {display: block;}
.sp-only {display: none;}
.pc-block {display: block;}
.sp-block {display: none;}
.pc-inline {display: inline;}
.sp-inline {display: none;}


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

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

/* IE用対応 */
/*
_:-ms-fullscreen . {}
*/

@media screen and (max-width: 767px) {
	.container {max-width: 100%;}
	p {line-height: 1.4;}
	.w1200 {width: auto;}
	.pc-only {display: none !important;}
	.sp-only {display: block;}
	.pc-block {display: none !important;}
	.sp-block {display: block;}
	.pc-inline {display: none !important;}
	.sp-inline {display: inline;}
	.pc-hidden {display: block;}
}
/* スマホ横の対応 */
@media screen and (orientation: landscape) {
}

/* ---------------------------------------------------
	header
------------------------------------------------------ */
#header {width: 100%; height: 100px; position: relative; background: #eee; z-index: 1000;}
#header .h-container {display: flex; justify-content: space-between; align-items: center; height: 100%;}
#header .header-logo {width: 16.71875%;  max-width: 321px; color: #FFF; margin-left: 4.58%; position: relative; z-index: 5000;}
#header .header-logo a {display: block;}
#header .header-logo a img {max-height: 80px;}
#header .header-contents {display: flex; justify-content: space-between; align-items: center; margin-right: 4.58%;}

header.alogin {position: relative;}

@media screen and (max-width: 767px) {
#header {width: 100%; height: 80px; border-bottom: 1px solid #FFF;}
#header .header-logo {width: 70%;  max-width: 70%; margin-left: 0; padding: 15px;}
}

/* ---------------------------------------------------
	gnavi
------------------------------------------------------ */
.gnavi > ul {display: flex; justify-content: space-between; align-items: center; flex-wrap: nowrap; margin: 0; list-style: none; padding: 0 50px 0 0;}
.gnavi > ul > li {margin-right: 50px; margin-left: 0; padding: 0; list-style: none; color: #222; font-size: 20px; font-weight: bold; white-space: nowrap;}
.gnavi > ul > li:last-child {margin-right: 0;}
.gnavi > ul > li > a {color: #222; font-size: 20px; font-weight: bold; white-space: nowrap;}

.gnavi > ul > li > ul {display: none;}
.gnavi > ul > li > ul > li > a {background: #0062B1; color: #FFF; display: flex; justify-content: center; align-items: center;}

@media screen and (max-width: 767px) {
	.gnavi {display: none; width: 100vw; height: 100vh; background: rgba(14,34,57,0.95); position: fixed; top: 0; left: 0; z-index: 4000;}
	.gnavi > ul {display: block; padding: 100px 0 0 0; width: 100%;}
	.gnavi > ul > li {margin-right: 0; margin-left: 0;  padding: 0; border-bottom: 1px dotted #FFF;}
	.gnavi > ul > li > a {display: block; width: 100%; padding: 20px 0; text-align: center;}
}


/* ---------------------------------------------------
	btn_menu
------------------------------------------------------ */
.btn_menu {display: none; position: fixed; right: 15px; top: 10px; width: 100px; height: 100px; padding: 20px 20px 15px; cursor: pointer; text-align: center; z-index: 9999; background: #0E2239;}
.btn_menu .menu-trigger {display: inline-block; position: relative; width: 40px; height: 32px; box-sizing: border-box; transition: all .4s;}
.btn_menu .menu-trigger span {display: inline-block; transition: all .4s; box-sizing: border-box; position: absolute; left: 0; width: 100%; height: 3px; background-color: #FFF;}
.btn_menu .menu-trigger span:nth-of-type(1) {top: 0;}
.btn_menu .menu-trigger.active span:nth-of-type(1) {top: 4px;}
.btn_menu .menu-trigger span:nth-of-type(2) {top: 14px;}
.btn_menu .menu-trigger span:nth-of-type(3) {bottom: 0;}
.btn_menu .menu-trigger.active {-webkit-transform: rotate(180deg); transform: rotate(180deg);}
.btn_menu .menu-trigger.active span {}
.btn_menu .menu-trigger.active span:nth-of-type(1) {-webkit-transform: translateY(10px) rotate(-35deg); transform: translateY(10px) rotate(-35deg);}
.btn_menu .menu-trigger.active span:nth-of-type(2) {-webkit-transform: translateY(0) rotate(35deg); transform: translateY(0) rotate(35deg);}
.btn_menu .menu-trigger.active span:nth-of-type(3) {opacity: 0;}
.btn_menu .txt {color: #FFF; font-size: 12px; font-family: Arial, Helvetica, "sans-serif"; font-weight: bold; margin-top: 4px;}

@media screen and (max-width: 767px) {
	.btn_menu {display: block; width: 60px; height: 60px; padding: 10px 10px 15px;}
	.btn_menu .menu-trigger {width: 40px; height: 26px;}
	.btn_menu .menu-trigger span {height: 2px;}
	.btn_menu .menu-trigger span:nth-of-type(1) {top: 0;}
	.btn_menu .menu-trigger.active span:nth-of-type(1) {top: 2px;}
	.btn_menu .menu-trigger span:nth-of-type(2) {top: 12px;}
	.btn_menu .menu-trigger span:nth-of-type(3) {bottom: 0;}
}

/* ---------------------------------------------------
	side-contact
------------------------------------------------------ */

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

/* ---------------------------------------------------
	下層ページタイトル
------------------------------------------------------ */
.pagetit {width: 100%; height: 190px; position: relative; background: #FFF; text-align: center; box-shadow: 0 5px 8px rgba(0,0,0,0.15);}
.pagetit .page-title {margin: 0 auto; font-size: 40px; font-weight: bold; line-height: 1.5; color: #000; letter-spacing: 0.05em; padding-top: 60px;}

@media screen and (max-width: 767px) {
.pagetit {width: 100%; max-width: 100%; height: 100px;}
.pagetit .page-title {font-size: 20px; padding-top: 30px;}
}

/* ---------------------------------------------------
	パンくず
------------------------------------------------------ */
.topicpath_sec {
	position: relative;
}
.topicpath {position: absolute; right: 2.08%;  top: 30px; left: auto; width: auto; height: 600px; width: 9px; background: none;}
.page-title-wrapper + .topicpath_sec{top:0;}
.topicpath .acms-container {-ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;}
.topicpath-list { width: 100%; padding: 0; text-align: left;}
.topicpath-item { float: none; display: inline-block; background: none; padding: 0; font-size: 15px; line-height: 1.2; font-weight: 200; }
.topicpath-item a {display: inline;}
.topicpath-item:first-child { padding: 0;}
.topicpath-item:before { display: inline-block; content: "▼"; padding: 0 10px;}
.topicpath-item:first-child:before { display: inline-block; content: ""; padding: 0;}
.topicpath-link { font-size: 15px; font-weight: 200;}

.topicpath-list li:first-of-type > a{font-weight: 600;}
.topicpath-list li:last-of-type > a{font-weight: 500; border-right: 1px solid #000; color: #222;}
a.topicpath-link { letter-spacing: 0.15em;}
a.topicpath-link:visited {color: #222222;}

@media screen and (max-width: 767px) {
	.topicpath{display:none;}
}

/* ---------------------------------------------------
	pager
------------------------------------------------------ */
.pager {margin: 0 0 50px;}
.pager li {width: 50px; height: 50px; border-radius: 0; font-size: 20px; vertical-align: middle; background: #8D8D8E;}
.pager li:first-of-type{background-color: transparent;}
.pager li:last-of-type{background-color: transparent;}
.pager li.prev, .pager li.next {width: 50px; height: 50px; border: none; border-radius: 0; font-size: 20px; vertical-align: middle; background: none;}
.pager li.cur {background: #231815; color: #FFF; border-radius: 0; padding: 10px; font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;     line-height: 1.5em;}
.pager li a {display: inline-block; width: 100%; height: 100%; vertical-align: middle; color: #FFF; font-size: 20px;  font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; line-height: 1.5em;}
.pager-link {background: none; padding: 10px;}
.pager-link:active, .pager-link:focus, .pager-link:visited, .safety .pager-link:visited { color: #FFF;}
.pager-link:hover {background: #231815; color: #FFF; border-radius: 0; opacity: 1; }
.pager-link.arrow-btn img{vertical-align: middle; padding-bottom: 2px;}
.pager-link.arrow-btn{background:none;}
.pager li.prev .pager-link, .pager li.next .pager-link {background: none; color: #000; }
.pager li.prev .pager-link:hover, .pager li.next .pager-link:hover {background: none; color: #000; }

.serial-nav {width: 100%; max-width: 1200px; margin: 0 auto 50px;}
.serial-nav a {display: block; padding: 15px 30px; color: #000; font-weight: bold; padding: 20px;}
.serial-nav a:active, .serial-nav a:focus, .serial-nav a:hover, .serial-nav a:visited {color: #000;}
.serial-nav a:hover {text-decoration: none;}
.serial-nav-item a { border: 1px solid #000;}
.pager li .jump{display: flex; height: 100%; justify-content: center; align-items: flex-end; color: #FFF; padding-bottom: 8px;}

@media screen and (max-width: 767px) {
	.pager {margin: 0 0 25px;}
	.pager li {margin-bottom: 10px;}
	
	.serial-nav { display: flex; justify-content: space-between;}
	.serial-nav .serial-nav-item { width: 46%;}
	nav > ul.serial-nav {position: relative; justify-content: space-around;}
	nav > ul.serial-nav::after{display: none;}
	.serial-nav{display: flex; justify-content: space-evenly;}
}

/* ---------------------------------------------------
	子ブログindex
------------------------------------------------------ */

.koblog {width: 100%; max-width: 1200px; margin: 0 auto; padding: 50px 0; }
.koblog .koblog-card-wrap { display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: space-between; -ms-flex-wrap: wrap; flex-wrap: wrap; margin-top: 30px; }
.koblog .koblog-card-wrap::after{content: ""; width:33.44%; height: 0; display: inline-block;}
.koblog .koblog-card {max-width:376px; width: 33.44%; margin-right: 0; margin-bottom: 80px;}
.koblog .koblog-card:nth-child(4n) { margin-right: 0; }
.koblog .koblog-card .image {max-width: 100%; height: 180px; overflow: hidden; position: relative;}
.koblog .koblog-card .image 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;}
.koblog .koblog-card .date { -webkit-box-flex: 0; -ms-flex: none; flex: none; margin-right: 10px; font-size: 20px; font-size: 1.25rem; font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝",'Noto Serif JP', serif; line-height: 1; }
.koblog .koblog-card .category { -webkit-box-flex: 0; -ms-flex: none; flex: none; display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: center; -ms-flex-align: center; -webkit-box-align: center; align-items: center; height: 24px; min-width: 100px; padding: 0 10px; font-size: 14px; font-size: 0.875rem; color: #fff; background: #00469C; }
_:-ms-fullscreen, :root .koblog .koblog-card .category { padding-top: 4px; }
.koblog .koblog-card .title { margin-top: 24px; font-size: 1.25em; line-height: 1.6em;letter-spacing: 0.18em; color:#231815; margin-bottom: 20px;}
.koblog .koblog-card .text {font-size:1.058em; letter-spacing: 0.15em; color:#231815;}

@media screen and (max-width:1280px){
    .koblog .koblog-card{width:30%;}
    .koblog .koblog-card-wrap{padding: 0 20px;}
    .koblog .koblog-card-wrap::after{width:30%; content:"";}
}


@media screen and (max-width: 767px) {
.koblog { padding: 0 15px 60px; }
.koblog .koblog-card-wrap { display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: center; -ms-flex-wrap: wrap; flex-wrap: wrap; margin-top: 30px; }
.koblog .koblog-card { width: 100%; margin-bottom: 60px; }
.koblog .koblog-card:last-child { margin-right: 0; }
.koblog .koblog-card .koblog-card-inner {margin-top: 15px; }
.koblog .koblog-card img { width: 100%; }
.koblog .koblog-card .date { -webkit-box-flex: 0; -ms-flex: none; flex: none; margin-right: 10px; font-size: 18px; font-size: 1.125rem; font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "リュウミン R-KL", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝",'Noto Serif JP', serif; line-height: 1; }

.koblog .koblog-card .category { -webkit-box-flex: 0; -ms-flex: none; flex: none; display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: center; -ms-flex-align: center; -webkit-box-align: center; align-items: center; height: 24px; min-width: 100px; padding: 0 10px; font-size: 14px; font-size: 0.875rem; color: #fff; background: #00469C; }

.koblog .koblog-card .text { margin-top: 10px; }

.koblog .c-btn1 { margin-top: 25px; }
}

/* ---------------------------------------------------
	子ブログ（募集要項）
------------------------------------------------------ */
.koblog-job {width: 100%; max-width: 1200px; margin: 0 auto; padding: 50px 0 100px; }
.koblog-job .koblog-card-wrap { display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: space-between; -ms-flex-wrap: wrap; flex-wrap: wrap; margin-top: 30px; }
.koblog-job .koblog-card-wrap::after{content: ""; width:33.44%; height: 0; display: inline-block;}
.koblog-job .koblog-card {display: block; max-width: 373px; width: 31.0834%; margin-right: 0; margin-bottom: 40px;}
.koblog-job .koblog-card:nth-child(3n) { margin-right: 0; }
.koblog-job .koblog-card .image {max-width: 100%; height: 280px; overflow: hidden; position: relative;}
.koblog-job .koblog-card .image img {position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); min-width: 100%; min-height: 100%;  width: auto; height: auto;}
.koblog-job .koblog-card .image .job-category {position: absolute; top: 0; left: 0; background: #2EA7E0; display: flex; justify-content: center; align-items: center; font-size: 1.125em; font-weight: 500; letter-spacing: 0.21em; color: #FFF; min-width: 115px; height: 40px; padding: 0 10px;}
.koblog-job .koblog-card .koblog-card-inner {background: #E3EFF6; padding: 50px 20px;}
.koblog-job .koblog-card .koblog-card-inner .text {font-size:1.0625em; line-height: 1.8; letter-spacing: 0.06em; color: #000;}
.koblog-job .koblog-card .job-link {font-size:1.0625em; letter-spacing: 0.06em; color: #FFF; background: #2EA7E0; padding: 10px; display: flex; justify-content: flex-end; align-items: center; width:100%;}
.koblog-job .koblog-card .job-link::after {content: ""; display: inline-block; width: 8px; height: 13px; background: url("../images/common/icon-job-arrow.svg") no-repeat center center/contain; margin-left: 10px;}

@media screen and (max-width: 767px) {
	.koblog-job {width: 100%; max-width: 1200px; margin: 0 auto; padding: 50px 0; }
	.koblog-job .koblog-card-wrap { display: block; margin-top: 30px; padding: 0 10px;}
	.koblog-job .koblog-card-wrap::after{content: ""; display: none;}
	.koblog-job .koblog-card {max-width: 100%; width: 100%; margin-bottom: 40px;}
	.koblog-job .koblog-card:nth-child(3n) { margin-right: 0; }
	.koblog-job .koblog-card .image {max-width: 100%; height: 200px;}
	.koblog-job .koblog-card .image img {}
	.koblog-job .koblog-card .image .job-category {}
	.koblog-job .koblog-card .koblog-card-inner {padding: 30px 15px;}
	.koblog-job .koblog-card .koblog-card-inner .text {}
	.koblog-job .koblog-card .job-link {}
	.koblog-job .koblog-card .job-link::after {}
}

/* ---------------------------------------------------
	子ブログindex - news用
------------------------------------------------------ */

.koblog-news {width: 100%; max-width: 1200px; margin: 0 auto; padding: 50px 0; }
.koblog-news .koblog-card-wrap { display: block; margin-top: 30px; }
.koblog-news .koblog-card { width: 100%; display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: flex-start; -ms-flex-wrap: wrap; flex-wrap: wrap; padding: 10px 0;}
.koblog-news .koblog-card .image {width: 100px; height: 100px; overflow: hidden; position: relative; margin-right: 20px;}
.koblog-news .koblog-card .image 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;}
.koblog-news .koblog-card .koblog-card-inner { display: block; width: calc(100% - 120px); }
.koblog-news .koblog-card .meta { display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: start; -webkit-box-pack: start; justify-content: flex-start; -ms-flex-wrap: wrap; flex-wrap: wrap; width: 100%;}
.koblog-news .koblog-card .category { -webkit-box-flex: 0; -ms-flex: none; flex: none; display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: center; -ms-flex-align: center; -webkit-box-align: center; align-items: center; height: 24px; min-width: 100px; padding: 0 10px; font-size: 14px; font-size: 0.875rem; color: #fff; background: #00469C; margin-right: 20px;}
_:-ms-fullscreen, :root .koblog-news .koblog-card .category { padding-top: 4px; }
.koblog-news .koblog-card .date { -webkit-box-flex: 0; -ms-flex: none; flex: none; margin-right: 10px; font-size: 20px; font-size: 1.25rem; line-height: 1; }
.koblog-news .koblog-card .text { margin-top: 10px;}


@media screen and (max-width: 767px) {
	.koblog-news {width: 100%; max-width: 100%; margin: 0 auto; padding: 30px 0; }
	.koblog-news .koblog-card-wrap { display: block; margin-top: 10px; }
	.koblog-news .koblog-card { width: 100%; display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: flex-start; -ms-flex-wrap: wrap; flex-wrap: wrap; padding: 10px 0;}
	.koblog-news .koblog-card .image {width: 100px; height: 100px; overflow: hidden; position: relative; margin-right: 10px;}
	.koblog-news .koblog-card .image 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;}
	.koblog-news .koblog-card .koblog-card-inner { display: block; width: calc(100% - 110px); }
	.koblog-news .koblog-card .meta { display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: start; -webkit-box-pack: start; justify-content: flex-start; -ms-flex-wrap: wrap; flex-wrap: wrap; width: 100%;}
	.koblog-news .koblog-card .category { -webkit-box-flex: 0; -ms-flex: none; flex: none; display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: center; -ms-flex-align: center; -webkit-box-align: center; align-items: center; height: 24px; min-width: 100px; padding: 0 10px; font-size: 14px; font-size: 0.875rem; color: #fff; background: #00469C; margin-right: 20px;}
	.koblog-news .koblog-card .date { -webkit-box-flex: 0; -ms-flex: none; flex: none; margin-right: 10px; font-size: 20px; font-size: 1.25rem; line-height: 1; }
	.koblog-news .koblog-card .text { margin-top: 10px;}
}

/* ---------------------------------------------------
	404
------------------------------------------------------ */
#article-404 {}
#article-404.entry-title {text-align: center; margin: 50px 0; font-size: 2em;}

@media screen and (max-width: 767px) {
#article-404.entry-title {margin: 40px 0; font-size: 1.5em;}
}

/* ---------------------------------------------------
	お問い合わせ
------------------------------------------------------ */
.contact {}
.contact-box {width: 100%; max-width: 1200px; margin: 150px auto 0;}
.contact .contact-box,
.contact-entry .contact-box,
.contact-entry_test .contact-box{max-width: 960px;}
.contact-box .tel-box {width: 680px; margin: 0 auto 40px; padding: 30px 0 0; border: 1px solid #000; text-align: center;}
.contact-box .tel-box h2 {margin-bottom: 0;}
.entry-column .contact-box ul li {background: none; padding: 0;}
.contact-box .contact-no { font-size: 40px;}
.contact-box .fax {}
.contact-box .contact-no span {color: #BB4824;}
.contact-form, .contact-form-group {background: none;}
.contact-form-label {border-bottom: 1px solid #666 ;}
.contact-form-control {border-bottom: 1px solid #666 ;}
.contact-form-label{padding: 21px 15px;}
.contact-form-group:first-of-type .contact-form-label{border-top: 1px solid #666 ;}
.contact-form-group:first-of-type .contact-form-control {border-top: 1px solid #666 ;}
.contact-box input[type=date], .contact-box input[type=datetime-local], .contact-box input[type=datetime], .contact-box input[type=email], .contact-box input[type=month], .contact-box input[type=number], .contact-box input[type=password], .contact-box input[type=search], .contact-box input[type=tel], .contact-box input[type=text], .contact-box input[type=time], .contact-box input[type=url], .contact-box input[type=week] {padding: 5px;}
.contact-box select {min-height: 40px;}
.contact-box .acms-admin-form-radio {display: block; margin-bottom: 10px;}
.contact-box .radio-sub {display: inline-block; padding-left: 25px; margin-bottom: 10px;}
.form-btn-box {margin: 20px 10px; margin-bottom: 186px;}
.contact-box .btn-attention-block-large { position: relative; display: block; width: 100%; padding: 25px 50px; border: none; color: #000; font-weight: bold; text-align: left; text-decoration: none; background: url(../images/common/ico-arrow-cr@2x.png) no-repeat 85% 50% #FFF; background-size: 30px 30px; transition: all .25s ease; border-radius: 0; margin: auto;}
.contact-box .btn-attention-block-large:active, .contact-box .btn-attention-block-large:focus, .contact-box .btn-attention-block-large:hover {opacity: 0.8;}
.contact-box .btn-large { padding: 25px 30px; border-radius: 0; font-size: 18px;}
input, select { font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif; font-weight: 500;}
.contact .acms-admin-form-checkbox, .acms-admin-form-radio{
	margin-right: 0;
    display: flex;
	justify-content: center;
	padding: 0 10px;
}
.contact-box .btn-attention-block-large { background: #454545; color: #fff; font-size: 18px; letter-spacing: 0.1em; transition: 0.5s; min-width: 300px; width: 30%; text-align: center;}
input[type="submit"] { border-radius: 0; border-style: none;}

.label-any {margin: 0 5px; padding: 2px 8px; color: #fff; background: #666; border-radius: 3px; font-size: 12px; float: right;}
.label-required {float: right;}

@media screen and (max-width: 767px) {
.contact-box .tel-box {width: 94%;}
.contact-box .contact-no { font-size: 28px;}
.contact-box .fax { font-size: 20px;}
.contact-box .btn-attention-block-large{width:62%;}
.contact-box {margin-top: 110px;}
.form-btn-box {margin-bottom: 110px;}
}

#footer {position: relative; font-size: 18px; border-top: 5px solid #003F91;}
#footer .pagetop {display: none; position: fixed; right: 0; bottom: 30px; z-index: 1000;}
#footer .pagetop a {display: block;}
#footer .pagetop a:hover {transform: translateY(-3px);}
#footer .pagetop a:hover img {opacity: 1;}

#footer .f_row01 {padding: 45px 0 40px;}
#footer .f_row01 .f_logo {width: 48%; text-align: right;}
#footer .f_row01 .f_logo a:hover img {opacity: 1;}
#footer .f_row01 .f_address {width: 48%; font-size: 0.889em;}
#footer .f_copy {width: 100%; font-size: 0.667em; line-height: 1.4; text-align: center; padding-top: 20px;}

@media screen and (max-width: 1000px) {
    #footer .f_row01 {padding: 45px 0 40px;}
    #footer .f_row01 .f_logo {width: 42%;}
    #footer .f_row01 .f_address {width: 53%; font-size: 0.833em;}
}
@media screen and (max-width: 767px) {
    #footer .pagetop {width: 44px; bottom: 0;}
    #footer .pagetop a:hover {transform: translateY(0);}
    #footer .f_row01 {padding: 30px 0 20px;}
    #footer .f_row01 .f_logo {width: 100%; margin-bottom: 15px; text-align: center;}
    #footer .f_row01 .f_logo img {width: 240px;}
    #footer .f_row01 .f_address {width: 100%; font-size: 0.889em; text-align: center;}
    #footer .f_row01 .f_address.txt_break span {display: inline;}
    #footer .f_copy {font-size: 0.778em;}
}

/* ---------------------------------------------------
	ボタンリンク（3分割）
------------------------------------------------------ */
.btnlink {justify-content: flex-start; margin-bottom: 40px;}
.btnlink.row-l {justify-content: flex-start;}
.btnlink.row-c {justify-content: center; text-align: center;}
.btnlink.row-r {justify-content: flex-end; text-align: right;}
.btnlink .row_col { width: 360px; max-width: 30%; margin-right: 5%; margin-bottom: 20px;}
.btnlink .row_col:nth-of-type(3n) {margin-right: 0;}
.btnlink .row_col:last-of-type {margin-right: 0;}
.btnlink.num-1 .row_col { width: 100%; max-width: 100%; margin-right: 0;}
.btnlink.num-2 .row_col { width: 49%; max-width: 49%; margin-right: 2%;}
.btnlink.num-2 .row_col:nth-child(2n),
.btnlink.num-2 .row_col:last-child {margin-right: 0;}
.btnlink.num-3 .row_col { width: 32%; max-width: 32%; margin-right: 2%;}
.btnlink.num-3 .row_col:nth-child(3n),
.btnlink.num-3 .row_col:last-child {margin-right: 0;}
.btnlink.num-4 .row_col { width: 23.5%; max-width: 23.5%; margin-right: 2%;}
.btnlink.num-4 .row_col:nth-child(4n),
.btnlink.num-4 .row_col:last-child {margin-right: 0;}
.btnlink .row_col a { position: relative; display: inline-block; max-width: 100%; padding: 25px 50px; border: 1px solid #000; color: #FFFFFF; font-size: 1.125em; font-weight: 400; text-align: left; text-decoration: none; background-color: #231815; line-height: 1.6;}
.btnlink.num-3 .row_col a {width: 100%; letter-spacing: 0.21em; text-align: center;}
.btnlink.num-4 .row_col a {min-width: 280px; width: 100%;}
.btnlink .row_col a::after { content: ""; position: absolute; top: 50%; right: 30px; display: block; width: 9px; height: 15px; margin-top: -5px; background: url(../images/common/ico-arrow-cr@2x.png) no-repeat center; background-size: 100%;}
.btnlink .row_col.blank a::after { content: ""; position: absolute; top: 50%; right: 30px; display: block; width: 16px; height: 16px; margin-top: -8px; background: url(../images/common/ico-blank@2x.png) no-repeat center; background-size: 100%;}
.btnlink .row_col a.icon-pdf,
.btnlink .row_col.blank a[href$=".pdf"],
.btnlink .row_col a.icon-doc,
.btnlink .row_col.blank a[href$=".doc"],
.btnlink .row_col.blank a[href$=".docx"],
.btnlink .row_col a.icon-xls,
.btnlink .row_col.blank a[href$=".xls"],
.btnlink .row_col.blank a[href$=".xlsx"],
.btnlink .row_col a.icon-ppt,
.btnlink .row_col.blank a[href$=".ppt"],
.btnlink .row_col.blank a[href$=".pptx"],
.btnlink .row_col a.icon-file {padding: 25px 40px 25px 70px;}
.btnlink .row_col a.icon-pdf::before,
.btnlink .row_col.blank a[href$=".pdf"]::before {content: ""; display: block; position: absolute; top: 50%; left: 30px; width: 23.5px; height: 30px; margin-top: -15px; background: url(../images/common/ico-pdf.png) no-repeat center; background-size: 100%;}
.btnlink .row_col a.icon-doc::before,
.btnlink .row_col.blank a[href$=".doc"]::before,
.btnlink .row_col.blank a[href$=".docx"]::before {content: ""; display: block; position: absolute; top: 50%; left: 30px; width: 23.5px; height: 30px; margin-top: -15px; background: url(../images/common/ico-doc.png) no-repeat center; background-size: 100%;}
.btnlink .row_col a.icon-xls::before,
.btnlink .row_col.blank a[href$=".xls"]::before,
.btnlink .row_col.blank a[href$=".xlsx"]::before {content: ""; display: block; position: absolute; top: 50%; left: 30px; width: 23.5px; height: 30px; margin-top: -15px; background: url(../images/common/ico-xls.png) no-repeat center; background-size: 100%;}
.btnlink .row_col a.icon-ppt::before,
.btnlink .row_col.blank a[href$=".ppt"]::before,
.btnlink .row_col.blank a[href$=".pptx"]::before {content: ""; display: block; position: absolute; top: 50%; left: 30px; width: 23.5px; height: 30px; margin-top: -15px; background: url(../images/common/ico-ppt.png) no-repeat center; background-size: 100%;}
.btnlink .row_col a.icon-file::before {content: ""; display: block; position: absolute; top: 50%; left: 30px; width: 19px; height: 28px; margin-top: -14px; background: url(../images/common/ico-shorui.png) no-repeat center; background-size: 100%;}

.btnlink.btn_red .row_col a { padding: 10px 50px;  border: 1px solid #000; background-color: #C30D23; border: none; }
.btnlink.btn_red .row_col.blank a::after { background: url(../images/common/arrow_white.png) no-repeat center; width: 17px; height: 5px; top: 60%;}


@media screen and (max-width: 767px) {
    .btnlink {display: block; margin-bottom: 20px; padding: 0 10px;}
    .btnlink .row_col { width: 100%; max-width: 100%; margin-right: 0; margin-bottom: 10px;}
    .btnlink .row_col:last-of-type {margin-bottom: 0;}
	.btnlink.num-2 .row_col { width: 100%; max-width: 100%; margin-right: 0;}
	.btnlink.num-3 .row_col { width: 100%; max-width: 100%; margin-right: 0;}
	.btnlink.num-4 .row_col { width: 100%; max-width: 100%; margin-right: 0;}
    .btnlink .row_col a {padding: 10px 22px;}
    .btnlink .row_col a::after {right: 30px;}
    .btnlink .row_col.blank a::after {right: 25px;}
}

/* トップ以外のページヘッダー下 */
/*
.page-title-wrapper{margin-bottom: 240px;}
.recruit .page-title-wrapper{margin-bottom: 175px;}
.works .page-title-wrapper{margin-bottom: 0;}
*/
article.entry{padding-top: 240px;}
.recruit article.entry{padding-top: 175px;}
@media screen and (max-width:767px){
/*
	.page-title-wrapper{margin-bottom: 60px;}
	.recruit .page-title-wrapper{margin-bottom: 60px;}
*/
	article.entry{padding-top: 60px;}
	.recruit article.entry{padding-top: 60px;}
}


/* お問い合わせ */
.contact .contact-line,
.contact-entry .contact-line,
.contact-entry_test .contact-line{
    padding: 15px 20px;
    border: 2px solid #222;
    outline: 0;
    font-size: 15px;
    vertical-align: baseline;
    background: transparent;
    font-style: normal;
    color: #222;
	letter-spacing: 0;
}
.contact-entry_test .contact-line span{
    color: #c41134;
    font-size: 15px;
    font-weight: 600;
}
.contact .label-required,
.contact-entry .label-required,
.contact-entry_test .label-required {
	float: none;
	background: none;
	color: #c41134;
	padding: 0;
    margin: 0;
	margin-left: 10px;
}
.contact-entry .label-any,
.contact-entry_test .label-any{display: none;}
.cotact .contact-box textarea,
.contact-entry .contact-box textarea,
.contact-entry_test .contact-box textarea{border-radius: 0;}
.contact-entry .contact-form-control {font-size: 16px;}

.contact .acms-entry .contact-form-col:last-child, .contact-form-col:last-child{ padding: 0; width: 100%;}
@media screen and (min-width: 768px){
	.label-required {
		float: right;
	}
}

.contact .label-any{
	display: none;
}
.contact-form-label{
	background-color: #efefef;
	font-size: 15px;
}





.safety-card {display: flex; color: #231815; margin-bottom:30px; padding-bottom: 30px; border-bottom: 1px solid #898989;}
.safety-card .koblog-card-inner{color:#231815; width: 100%; position: relative;}
.safety-card p.image{max-width: 245px; margin-right: 40px; background: #FFF;}
.safety-card .date{font-size: 14px; letter-spacing: .05em; line-height: 1em; margin-bottom: 30px; color: #727171;}
.safety-card .title{font-size: 20px; letter-spacing: .14em; line-height: 1.75em; margin-bottom: 50px;}
.safety-card .text{font-size: 17px; letter-spacing: .12em; line-height: 1.75;}
.safety-card .reed{text-align: right; position: absolute; bottom: 0; right: 0;}
.safety-card .reed a{color: #222; text-decoration: underline; color: 231815; font-size: 15px;}

@media screen and (max-width:1440px){
	.safety-card{padding-left:20px; padding-right:20px}
}

@media screen and (max-width:767px){
	.safety-card{flex-wrap: wrap; padding-left:10px; padding-right:10px; justify-content: center;}
	.safety-card .koblog-card-inner{margin-top: 20px;}
	.safety-card p.image{max-width: 100%; text-align: center; margin-right: auto;}
	.safety-card .date{font-size: 20px; margin-bottom: 10px;}
	.safety-card .title{margin-bottom: 10px;}
	.safety-card .text{margin-bottom: 20px;}
	.safety-card .reed{position: relative;}
	
	.safety .entry-column .pager {padding: 0; margin-top: 50px;}
}