@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;700&display=swap');

/*------------------------------------------------------

	リセット

------------------------------------------------------*/

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, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	font-style: normal;
	font-weight: 500;
	vertical-align: baseline;
	background: transparent;
}
body { line-height: 1;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block;}
ul { list-style: none;}
blockquote, q { quotes: none;}
blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none;}
a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
table { border-collapse: collapse; border-spacing: 0;}
hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #E0E0E0;
	margin: 0;
	padding: 0;
}
input, select { vertical-align: middle;}
img {
	max-width: 100%;
	height: auto;
	border: none;
	vertical-align: top;
	-webkit-backface-visibility: hidden;
	image-rendering: -webkit-optimize-contrast;
}
*, *:before, *:after { box-sizing: border-box;}


/*------------------------------------------------------

	グローバル

------------------------------------------------------*/

body {
	font-family: "Hiragino Maru Gothic W4 JIS2004", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
	color: #000;
	font-size: 1em;
	line-height: 1.8;
	position: relative;
	min-width: 1030px;
}

body.cn { font-family: 'Noto Sans SC', sans-serif; font-weight: 400;}

p { margin-bottom: 25px;}
p:last-child { margin-bottom: 0px;}

a { color: #000; text-decoration: none;}
a:hover, a:active { color: #999;}

/* 文字装飾 */
.fo06 { font-size: 0.6em !important;}
.fo07 { font-size: 0.7em !important;}
.fo075 { font-size: 0.75em !important;}
.fo08 { font-size: 0.8em !important;}
.fo085 { font-size: 0.85em !important;}
.fo09 { font-size: 0.9em !important;}
.fo11 { font-size: 1.1em !important;}
.fo115 { font-size: 1.15em !important;}
.fo12 { font-size: 1.2em !important;}
.fo125 { font-size: 1.25em !important;}
.fo13 { font-size: 1.3em !important;}
.fo14 { font-size: 1.4em !important;}
.fo15 { font-size: 1.5em !important;}
.fo16 { font-size: 1.6em !important;}
.fo17 { font-size: 1.7em !important;}
.fo18 { font-size: 1.8em !important;}

.lh12 { line-height: 1.2;}
.lh14 { line-height: 1.4;}
.lh16 { line-height: 1.6;}
.lh18 { line-height: 1.8;}
.lh20 { line-height: 2;}
.lh23 { line-height: 2.3;}

.fo_mincho { font-family: 'Shippori Mincho', serif;}
.fo_mincho.bold, .fo_mincho .bold { font-weight: 700;}
.fo_times { font-family: "Times New Roman", Times, 'Shippori Mincho', serif;}

.cn .fo_mincho { font-family: 'Noto Serif SC', serif;}

.fo_white { color: #FFFFFF;}
/* 企業名変更につき、文字色の変更 2025-07-30
.fo_red { color: #D81A22;}
*/
.fo_red { color: #005BAC;}
.fo_red_old { color: #D81A22;}
.fo_orange { color: #CC4C4C;}
.fo_blue { color: #141D4B;}
.fo_gray { color: #C2CCDE;}

/* ボックス */
.container { max-width: 1030px; padding: 0px 15px; margin: 0px auto;}
.container02 { max-width: 1230px; padding: 0px 15px; margin: 0px auto;}

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

.pos_rel { position: relative;}
.pos_ab { position: absolute;}

.bold { font-weight: bold;}

.ta_center { text-align: center;}
.ta_right { text-align: right;}
.ta_left { text-align: left;}
.ta_right-s_center { text-align: right;}
.ta_left-s_center { text-align: left;}
.ta_center-s_left { text-align: center;}

.back_white { background-color: #fff !important;}
.back_gray { background-color: #F2F2F2 !important;}
.back_blue { background-color: #3B63BA !important;}

.back_grad { background: linear-gradient(to bottom, #5B7DC7 0%, #2550AD 50%, #5B7DC7 100%);}

@media (min-width: 861px) {
	.hidden_l { display: none !important;}
}

/* リスト */
ol { padding-left: 2em;}
ol li { list-style: outside decimal;}

.list_indent { padding-left: 1em;}
.list_indent li { text-indent: -1em;}

.list_disc { padding-left: 1em;}
.list_disc li { list-style: outside disc;}

/* margin */
.mb00 { margin-bottom: 0px !important;}
.mb05 { margin-bottom: 5px !important;}
.mb10 { margin-bottom: 10px !important;}
.mb15 { margin-bottom: 15px !important;}
.mb20 { margin-bottom: 20px !important;}
.mb25 { margin-bottom: 25px !important;}
.mb30 { margin-bottom: 30px !important;}
.mb40 { margin-bottom: 40px !important;}
.mb50 { margin-bottom: 50px !important;}
.mb60 { margin-bottom: 60px !important;}
.mb80 { margin-bottom: 80px !important;}

.mb30-15 { margin-bottom: 30px !important;}
.mb40-20 { margin-bottom: 40px !important;}
.mb60-30 { margin-bottom: 60px !important;}
.mb80-40 { margin-bottom: 80px !important;}
.mb100-60 { margin-bottom: 100px !important;}
.mb120-60 { margin-bottom: 120px !important;}
.mb160-80 { margin-bottom: 160px !important;}

/* clearFix */
.clearFix { zoom: 100%;}
.clearFix:after {
	content: "";
	clear: both;
	height: 0;
	display: block;
	visibility: hidden;
}

/* ------------------------
	ヘッダー
------------------------ */

.header { display: flex; justify-content: space-between; align-items: center; padding: 15px 0px 15px 2%;}
.header h1 { width: 13%;}
.header .box01, .gn { display: flex; align-items: center;}

.show-above-1500px {display: none !important;}
.hide-above-1500px {display: block !important;}

.head_mabuchi{transition: 0.3s;}
.head_mabuchi:hover{opacity: 0.7;}

@media (min-width: 1500px) {
    .show-above-1500px {display: block !important;}
    .hide-above-1500px {display: none !important;}
    .header h1 { width: 25%;}
}

@media (max-width: 1300px) {.head_mabuchi{display: none !important}}

.gn > li { margin-left: 1em;}
.gn > li > a, .gn > li > span { display: block; position: relative; color: #141D4B; height: 3em;}
.gn > li > a span, .gn > li > span span { position: absolute; top: 0px; left: 0px; transition: 0.2s; display: block; width: 100%; text-align: center; line-height: 3em;}
.gn .ja { opacity: 0;}
.gn a:hover .en, .gn > li > span:hover .en { opacity: 0;}
.gn a:hover .ja, .gn > li > span:hover .ja { opacity: 1;}
.gn > li:nth-child(1) { width: 6em;}
.gn > li:nth-child(2) { width: 4em;}
.gn > li:nth-child(3) { width: 4em;}
.gn > li:nth-child(4) { width: 4em;}
.gn > li:nth-child(5) { width: 4em;}
.gn > li:nth-child(6) { width: 4em;}

.gn.en > li { width: auto !important;}
.gn.en > li > a span, .gn.en > li > span span { position: static; opacity: 1 !important;}
.gn.en a:hover .en, .gn.en > li > span:hover .en { opacity: 0.7 !important;}

/* ドロップダウンメニュー */
.gn .dd {
	position: relative;
	z-index: 999999;
	cursor: pointer;
}
.gn .dd ul {
	width: 11em;
	border-top: solid 3px #005BAC;
	background: rgba(255,255,255,0.8);
	position: absolute;
	display: none;
	padding: 0.5em 1em;
	left: 50%;
	transform: translateX(-50%);
	text-align: left;
	line-height: 1.8;
}
.gn .dd a { display: block; color: #141D4B; padding: 0.3em 0px; font-weight: 700;}
.gn .dd li:not(:last-child) a { border-bottom: solid 1px #808080;}
.gn .dd a:hover { color: #005BAC;}

.header .btn_area01 a { display: block; width: 9em; color: #fff; background: #005BAC; border-radius: 50px; position: relative; text-align: center; padding: 6px; margin-left: 2em;}
.header .btn_area01 span { position: absolute; display: block; left: 50%; top: 50%; transform: translate(-50%,-50%); background: #005BAC; width: 6em; transition: 0.3s; opacity: 0;}
.header .btn_area01 a:hover span { opacity: 1;}

.header .btn_area02 { border: solid 1px #808080; border-right: none; border-top-left-radius: 60px; border-bottom-left-radius: 60px; padding: 0.3em 1em 0.3em 2em; margin-left: 1em;}
.header .btn_area02 li { display: inline;}
.header .btn_area02 li:not(:last-child):after { content: " | "; letter-spacing: 0.2em;}
.header .btn_area02 a { color: #808080; text-decoration: none;}
.header .btn_area02 a:hover { color: #ccc;}

@media only screen and (max-width: 1250px) {
	.header { padding: 13px 0px 13px 15px;}
	.header h1 { width: 23%;}
	.header .box01 { font-size: 0.95em;}
	.header .btn_area02 { padding: 0.3em 0.7em 0.3em 1em;}
	.header .btn_area01 a { margin-left: 1em; width: 8em;}
	.gn > li { margin-left: 0.7em;}
}


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

/*.footer .bg01 { background: url("../images/common/footer_bg01.jpg") no-repeat center center; background-size: cover; padding: 200px 0px; font-size: 4.2em;}*/

.footer .bg02 {  background: url("../images/common/footer_bg01.jpg") no-repeat center center; background-size: cover; padding: 200px 0px;}
.footer .bg02 .container {}
.footer .bg02 .container .back_white {display: flex; justify-content: space-between;}
.footer .bg02 .box01 { display: flex; flex-flow: column; justify-content: center;margin: 0 auto;}
.footer .bg02 .box02 { width: 750px; display: flex; align-items: center; padding: 40px 0px;}
.footer .bg02 .box02 li { width: 50%;}
.footer .bg02 .box02 li:first-of-type { border-right: solid 1px #333333;}
.footer .bg02 a { display: table; margin: auto; color: #005bab; text-decoration: none; padding: 1em 0px 1em 3.2em;}
.footer .bg02 .tel { font-size: 2em; letter-spacing: 0.05em;}
.footer .bg02 a:before { content: ""; position: absolute; background-repeat: no-repeat; background-size: 100% auto; background-position: center center; height: 3em; left: 0px; top: 50%; transform: translateY(-50%);}
.footer .bg02 li:first-of-type a:before { background-image: url("../images/common/ico_tel.svg"); width: 2em;}
.footer .bg02 li:last-child a:before { background-image: url("../images/common/ico_mail.svg"); width: 2.5em}

.footer .img01 { padding: 40px 15px;}

.footer .bg03 { background: #141D4B; padding: 60px 0px 15px;}
.footer .bg03 a { color: #fff; text-decoration: none;}
.footer .bg03 a:hover { opacity: 0.7;}
.footer .bg03 .box01 { display: flex; justify-content: space-between;}
.footer_nav { display: flex;}
.footer_nav > ul { margin-left: 4em;}
.footer_nav li { margin-bottom: 10px;}
.footer_nav > ul ul { margin-top: 10px;}

.pagetop { position: fixed; right: 30px; bottom: 0px; padding-bottom: 60px; z-index: 9999;}

.footer_mabuchi{transition: 0.3s;}
.footer_mabuchi:hover{opacity: 0.7;}

/*------------------------------------------------------

	トップページ

------------------------------------------------------*/

.video_wrap video { width: 100%; vertical-align: bottom;}
.video_wrap .text01 { width: 50%; left: 7%; top: 50%; transform: translateY(-50%);}
.top_text { background: #005BAC; margin-top: -1px; font-size: 2.2em; letter-spacing: 0.01em; padding: 0.1em 0px;}

.top_sec01 { background: url("../images/top/top_sec01_bg.jpg") no-repeat center center; background-size: cover; padding: 150px 0px 250px;}
.top_sec01 h2 { font-size: 3.2em; letter-spacing: 0.01em;}

.top_sec02 { background: linear-gradient(to bottom, #5B7DC7 0%, #2550AD 50%, #5B7DC7 100%); padding: 150px 0px;}
.top_sec02 .bg01 { right: 0px; mix-blend-mode: screen; top: 500px;}
.top_sec02 .bg02 { right: -460px; mix-blend-mode: screen; top: 27%;}
.top_sec02 .bg03 { left: 0px; mix-blend-mode: screen; top: 65%;}
.top_sec02 .bg04 { right: -400px; mix-blend-mode: multiply; bottom: 0px;}

.top_sec02 h2 { font-size: 4.3em;}

.top_sec02 .box01 { max-width: 1230px; margin: auto; padding: 0px 15px; z-index: 500; display: flex;}

.top_sec02 nav { width: 180px;}
.top_sec02 nav ul { position: sticky; top: 60px;}
.top_sec02 nav a { opacity: 0.4; display: block;}
.top_sec02 nav a.select, .top_sec02 nav a:hover { opacity: 1; color: #fff;}

.top_sec02 .main { width: calc(100% - 180px); margin-left: auto; padding-left: 8%; border-left: solid 1px #fff;}
.top_sec02 .main:before, .top_sec02 .main:after {
	content: "";
	position: absolute;
	left: -3.5px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 3px 10px 3px;
	border-color: transparent transparent #ffffff transparent;	
}
.top_sec02 .main:before { top: -8px;}
.top_sec02 .main:after { bottom: -8px; transform: rotate(180deg);}

.top_en_ttl { font-size: 7em; line-height: 1; display: table; border-bottom: solid 1px #fff; padding-bottom: 0.1em; min-width: 3.8em;}
.top_en_ttl:before, .top_en_ttl:after {
	content: "";
	position: absolute;
	bottom: -3px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 3px 10px 3px 0;
	border-color: transparent #ffffff transparent transparent;	
}
.top_en_ttl:before { left: -8px;}
.top_en_ttl:after { right: -8px; transform: rotate(180deg);}

.top_sec02 .sec01 .text01 { font-size: 2.3em;}
.top_sec02 .sec01 .box02 { display: flex; flex-wrap: wrap; justify-content: space-between;}
.top_sec02 .sec01 .box02 section { width: 48%; margin-bottom: 20px;}
.top_sec02 .sec01 dl { background: #141D4B; display: flex; justify-content: space-between; align-items: center; padding: 15px 20px;}
.top_sec02 .sec01 .num { font-size: 2.3em; line-height: 1; display: inline-block; vertical-align: middle; margin: -0.23em 0px 0px 0.2em; font-weight: 700;}
.top_sec02 .sec01 dd { font-size: 2em; line-height: 1; font-weight: 700;}
.top_sec02 .sec01 .box02 section:nth-of-type(6) dd { letter-spacing: -0.05em;}
.top_sec02 .sec01 .box_inner { padding: 20px 25px 30px;}
.top_sec02 .sec01 h4 { color: #3B63BA; font-size: 1.45em; line-height: 1.6; display: flex; align-items: center; height: 3.2em; }

.en .top_sec02 .sec01 dl { font-size: 0.9em; justify-content: flex-start;}
.en .top_sec02 .sec01 dt { width: 5.5rem;}
.en .top_sec02 .sec01 dd { width: calc(100% - 6rem); text-align: right;}

.top_sec02 .btn_area01 { display: flex; justify-content: space-between; align-items: center;}
.top_sec02 .btn_area01 .text { max-width: 420px;}

.top_sec02 .hr { border-bottom: solid 1px #fff;}
.top_sec02 .hr:before, .top_sec02 .hr:after {
	content: "";
	position: absolute;
	bottom: -3px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 3px 10px 3px 0;
	border-color: transparent #ffffff transparent transparent;
	z-index: 9999;
	display: block;
}
.top_sec02 .hr:before { left: -8px;}
.top_sec02 .hr:after { right: -8px; transform: rotate(180deg);}

.top_sec02 .sec02 .box03 { display: flex; justify-content: space-between;}
.top_sec02 .sec02 .box03 section { width: 48%;}

.top_sec02 .box04 { background: rgba(255,255,255,0.2); backdrop-filter: blur(30px) brightness(1.15); padding: 5%;}
.top_sec02 .box04 h4 { font-size: 1.8em;}
.top_sec02 .box04 ul { display: flex; justify-content: center; flex-wrap: wrap;}
.top_sec02 .box04 li { margin: 0px 15px 30px;}

.top_heading01 { background: #406FC4; background-blend-mode: multiply; font-size: 1.65em; padding: 0.5em 0.7em;}

.top_sec02 .sec03 { background: rgba(255,255,255,0.2); backdrop-filter: blur(30px) brightness(1.15); display: flex; justify-content: space-between; padding: 20px;}
.top_sec02 .sec03 .box_inner { display: flex; flex-flow: column; justify-content: space-between; width: 35%; padding: 20px;}
.top_sec02 .sec03 figure { width: 60%;}

.top_sec03 { display: flex; justify-content: space-between;}
.top_sec03 .box01 { display: flex; flex-flow: column; justify-content: space-between;}
.top_sec03 .box01 .more_btn a { border: solid 1px #005BAC; color: #005BAC;}
/*
.top_sec03 .box01 .more_btn a:after { background-image: url("../images/common/ico_arrow02.svg");}
*/
.top_sec03 dl { display: table; width: 100%; border-bottom: solid 1px #D1D1D1; padding: 1.3em 0px;}
.top_sec03 dl:first-of-type { border-top: solid 1px #D1D1D1;}
.top_sec03 dl > * { display: table-cell; vertical-align: top;}
.top_sec03 dt { width: 7em;}
.top_sec03 .box02 { width: 750px;}


/*------------------------------------------------------

	下層ページ

------------------------------------------------------*/

/* 共通 */
.show_sp { display: none;}
.over_hidden { overflow: clip;}

.more_btn a { display: inline-block; color: #3B63BA; border: solid 1px #4564B4; text-decoration: none; background: #fff; min-width: 200px; line-height: 1.6; padding: 1em 4em 1em 2em; transition: 0.3s; text-align: left; position: relative; border-radius: 60px; font-weight: bold;}
.more_btn a:after { content: ""; position: absolute; background: url("../images/common/ico_arrow01.svg") no-repeat center center; background-size: 100% auto; width: 1.6em; height: 1.6em; right: 1em; top: 50%; transform: translateY(-50%);}
.more_btn a:hover { transform: translateX(5px);}

.heading_large { font-size: 2.2em; line-height: 1.4; font-weight: 700;}

.heading_btmline { font-size: 2.2em; line-height: 1.4; font-weight: 700; padding-bottom: 1em;}
.heading_btmline:after { content: ""; position: absolute; max-width: 500px; width: 100%; height: 6px; background: url("../images/common/line01.svg") no-repeat center center; background-size: 100% auto; left: 0px; bottom: 0px;}
.heading_btmline.fo_white:after { background-image: url("../images/common/line01_white.svg");}

.list_check li { position: relative; padding-left: 1.3em;}
.list_check li:before { content: ""; position: absolute; background: url("../images/common/ico_check.svg") no-repeat center center; background-size: 100% auto; width: 0.8em; height: 0.8em; left: 0px; top: 0.55em;}

.pagettl { background-repeat: no-repeat; background-size: cover; font-size: 1.3em; padding: 120px 0px;}
.pagettl.news { background: url("../images/news_bg.jpg") no-repeat right center #141D4B; background-size: auto 100%; padding: 50px 0px 40px; text-shadow: 0px 0px 5px #141D4B;}
.pagettl h2 { font-size: 2.9em; line-height: 1;}


/* ------------------------
	value
------------------------ */

.value_pagettl { background: url("../images/value/val_mainimage.png") no-repeat left center, linear-gradient(to bottom, #3B63BA 0%, #5B7DC7 100%); background-blend-mode: screen; background-size: auto 100%, auto; font-size: 1.3em; padding: 9% 0px; text-shadow: 0px 0px 5px #3B63BA, 0px 0px 5px #3B63BA, 0px 0px 5px #3B63BA, 0px 0px 5px #3B63BA;}
.value_pagettl .container02 { display: flex; justify-content: flex-end;}
.value_pagettl h2 { font-size: 2.8em;}

.sticky_box { max-width: 1230px; margin: auto; padding: 0px 15px; z-index: 500; display: flex;}

.sticky_box nav { width: 180px;}
.sticky_box nav ul { position: sticky; top: 10px;}
.sticky_box nav li > span { display: block;}
.sticky_box nav a { opacity: 0.3; display: block;}
.sticky_box nav a.select, .sticky_box nav a:hover { opacity: 1; color: #141D4B;}
.sticky_box nav ul ul a { position: relative; padding-left: 2em;}
.sticky_box nav ul ul a:before { content: ""; position: absolute; left: 1em; height: 1px; background: #141D4B; width: 0.7em; top: 50%;}

.sticky_box.news nav ul { position: static;}
.sticky_box.news nav li { margin-bottom: 15px !important;}
.sticky_box.news nav a { opacity: 1; color: #141D4B;}
.sticky_box.news nav a:hover { opacity: 0.3;}

.sticky_box .main { width: calc(100% - 180px); margin-left: auto; padding-left: 8%; border-left: solid 1px #141D4B;}
.sticky_box .main:before, .sticky_box .main:after {
	content: "";
	position: absolute;
	left: -3.5px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 3px 10px 3px;
	border-color: transparent transparent #141D4B transparent;	
}
.sticky_box .main:before { top: -8px;}
.sticky_box .main:after { bottom: -8px; transform: rotate(180deg);}

.value_wrap { padding: 150px 0px;}
.value_wrap.news { padding: 80px 0px;}

.ttl_dl { display: table; width: 100%; font-size: 1.4em; line-height: 1.2;}
.ttl_dl > * { display: table-cell; vertical-align: middle;}
.ttl_dl dt { width: 2.5em;}
.ttl_dl dt .num { font-size: 2.6em; line-height: 1;}
.ttl_dl dd { font-size: 1.6em; padding-left: 1em;}

.value_wrap .sticky_box nav li { margin-bottom: 15%;}


/* ------------------------
	injection
------------------------ */

.inj_wrap { padding: 80px 0px;}
.inj_wrap .box01 { display: flex; justify-content: space-between; flex-wrap: wrap;}
.inj_wrap .box01 section { width: 32%; padding: 2.5%; margin-bottom: 40px;}

.inj_wrap .list01 { display: flex; justify-content: space-between; flex-wrap: wrap;}
.inj_wrap .list01 li { width: 46%; margin-bottom: 80px;}


/* ------------------------
	high
------------------------ */

.high_bg01 { padding: 150px 0px;}

.high_sec01 .box01 { display: flex; justify-content: space-between;}
.high_sec01 .box01 .box_inner { width: 45%;}
.high_sec01 .box01 > figure { width: 50%;}
.high_sec01 .box01 > figure img { max-width: initial;}

.high_sec01 .box02 { background: rgba(255,255,255,0.2); backdrop-filter: blur(30px) brightness(1.1); padding: 5% 10%;}
.high_sec01 .box02 ul { display: flex; flex-wrap: wrap; margin: auto -1.5%;}
.high_sec01 .box02 li { width: 30.3333%; margin: 0px 1.5% 60px;}

.high_sec01 .box03 { background: rgba(255,255,255,0.05); border: solid 1px #fff; max-width: 900px; margin: auto; display: flex; justify-content: space-between; align-items: center; padding: 4%;}
.high_sec01 .box03 h4 { width: 30%;}
.high_sec01 .box03 .box_inner { width: 65%;}

.high_sec03 { padding: 130px 0px;}
.high_sec03 .container { max-width: 1130px;}
.high_sec03 .back_white { padding: 6% 9%;}
.high_sec03 .back_white h5 { background: #3B63BA; padding: 0.5em 0.8em;}
.high_sec03 a { color: #3B63BA; text-decoration: underline;}
.high_sec03 a:hover { opacity: 0.8; text-decoration: none;}


/* ------------------------
	one
------------------------ */

.one_sec01 { padding: 100px 0px;}
.one_sec01 .container02 { display: flex; justify-content: space-between;}
.one_sec01 .box_inner { width: 43%;}
.one_sec01 .container02 > figure { width: 50%;}
.one_sec01 .container02 > figure img { max-width: initial;}


/* ------------------------
	quality
------------------------ */

.qua_head .container { max-width: 1180px; display: flex; justify-content: space-between; padding: 100px 15px;}
.qua_head .box_inner { width: 45%;}
.qua_head figure { width: 50%; padding: 15px 4%;}

.qua_sec02 figure { padding: 4%;}
.qua_sec04 figure { padding: 7%;}
.qua_sec05 .back_white { display: flex; justify-content: space-between; flex-wrap: wrap; padding: 50px 5% 0px;}
.qua_sec05 .back_white div { margin-bottom: 5%;}
.qua_sec05 .back_white div:nth-child(1) { width: 57%;}
.qua_sec05 .back_white div:nth-child(2) { width: 33%;}
.qua_sec05 .back_white div:nth-child(3) { width: 48%;}
.qua_sec05 .back_white div:nth-child(4) { width: 48%;}

.qua_sec06 .box01 { display: flex; flex-wrap: wrap; justify-content: space-between;}
.qua_sec06 .box01 section { width: 47%;}


/* ------------------------
	solution
------------------------ */

.sol_head { background: url("../images/injection/solution/sol_sec01_bg.svg") no-repeat calc(100% + 200px) center #3B63BA; background-size: 500px auto; background-blend-mode: multiply; padding: 100px 0px 150px;}
.sol_head .heading_large { line-height: 1.6;}

.sol_sec h3 { padding: 0.6em;}
.sub_dl { background: #3B63BA; padding: 1em 1em 1em 2.5em; display: flex; align-items: flex-start;}
.sub_dl dt { width: 4em; text-align: center;}
.sub_dl dd { width: calc(100% - 4em); padding-left: 1em;}
.sol_sec .text01 { background: #141D4B; font-size: 1.8em; padding: 0.8em 1.5em;}
.sol_sec .box_inner { padding: 5%;}
.sol_sec .img_list { display: flex; justify-content: space-between;}
.sol_sec .img_list li { width: 48.5%;}
.sub_dl02 { display: flex; align-items: flex-start;}
.sub_dl02 dt { background: #005BAC; width: 4em; text-align: center;}
.sub_dl02 dd { width: calc(100% - 4.8em); padding-left: 1.2em;}
.sol_sec .text02 { padding: 1.3em 2em;}


/* ------------------------
	mold
------------------------ */

.mold_head { padding: 100px 0px;}
.mold_head .box01 { display: flex; justify-content: space-between;}
.mold_head .box01 > div { width: 45%;}
.mold_head .box02 { background: rgba(255,255,255,0.05); border: solid 1px #fff; max-width: 700px; margin: auto; padding: 4% 10%;}

.mold_sec01 .img_list { display: flex; justify-content: space-between;}
.mold_sec01 .img_list li { width: 48%;}

.table_bordered { background: #fff; width: 100%; border: solid 1px #707070;}
.table_bordered th, .table_bordered td { border: solid 1px #707070; vertical-align: middle; padding: 0.5em 0.8em;}
.table_bordered th { background: rgba(59,99,186,0.3); text-align: center; font-weight: bold;}

.mold_sec03 .box01 { display: flex; justify-content: space-between;}
.mold_sec03 .box01 .box_inner { width: 55%;}
.mold_sec03 .box01 .img_list { width: 40%;}
.mold_sec03 .box01 .img_list li { margin-bottom: 20px;}


/* ------------------------
	company
------------------------ */

.table_bordered02 { width: 100%;}
.table_bordered02 th, .table_bordered02 td { border-bottom: solid 1px #161E48; vertical-align: top; padding: 0.8em 0px;}
.table_bordered02 th { text-align: left; width: 8em;}
.en .table_bordered02 th { padding-right: 1em;}

.com_sec04 .box01 { padding: 30px;}
.com_sec04 .box02 { display: flex; justify-content: space-between;}
.com_sec04 .box03 { display: flex; width: 80%;}
.com_sec04 .box03 figure { width: 30%;}
.com_sec04 .box03 .box_inner { width: 360px; margin-left: 30px;}
.com_sec04 .sec01 .box03 h5 { border-bottom: solid 1px rgba(20,29,75,0.3); padding-bottom: 0.5em;}
.com_sec04 .box03 .more_btn a { padding: 0.4em 1.5em; min-width: 175px;}
.com_sec04.cn .box03 .more_btn a { min-width: 190px;}
.com_sec04.en .box03 .more_btn a { min-width: 210px;}
.com_sec04 .map iframe { width: 100%; vertical-align: bottom; height: 280px;}

.com_sec04 .sec02 .box01 { padding: 20px 20px 30px;}
.com_sec04 .sec02 .icon { width: 60px; margin-top: -30px;}
.com_sec04 .sec02 .icon img:not(:last-child) { margin-bottom: 10px;}
.com_sec04 .sec02 .box03 .box_inner { display: flex; flex-flow: column; justify-content: space-between;}


/* ------------------------
	oversea
------------------------ */

.over_sec h3 { display: flex; justify-content: space-between; align-items: center;}
.over_sec h3 img { width: 60px; mix-blend-mode: multiply; margin-left: 10px; vertical-align: middle;}
.over_sec .map iframe { width: 100%; vertical-align: top; height: 300px;}
.over_sec .more_btn a { width: 100%; max-width: 290px;}
	

/* ------------------------
	facility
------------------------ */

.table_bordered .sum { background: #EFEFEF;}
.table550 { max-width: 550px;}

.fac_sec01 .table01 th { width: 25%;}
.fac_sec01 .table02 th { width: 50%;}

.fac_sec02 .box01 { display: flex; justify-content: space-between;}
.fac_sec02 .box01 .box_inner { width: 550px;}
.fac_sec02 .box01 figure { width: calc(95% - 550px);}


/* ------------------------
	recruit
------------------------ */

.rec_head h3 { padding: 60px 15px 0px}
.rec_head .container { max-width: 930px;}

.rec_sec01 .box01 { padding: 25px 25px 25px 0px; display: flex; justify-content: space-between; align-items: center;}
.rec_sec01 .box01 h4 { width: 33%;}
.rec_sec01 .box01 .box_inner { width: 67%;}

.rec_sec02 .table_bordered02 { border-top: solid 1px #161E48;}

.rec_sec03 .btn_area a { display: block; text-decoration: none; color: #fff; font-size: 1.9em; background: url("../images/recruit/rec_btn_bg.png") no-repeat left center #005BAC; background-blend-mode: screen; border-radius: 10px; padding: 30px; background-size: auto 100%; position: relative;}
.rec_sec03 .btn_area a:after { content: ""; position: absolute; background: url("../images/recruit/btn_icon.svg") no-repeat center center; background-size: 100% auto; width: 28px; height: 28px; right: 30px; top: 50%; transform: translateY(-50%);}


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

.contact_wrap .box01 { width: 750px; margin: auto; display: flex; align-items: center; padding: 40px 0px;}
.contact_wrap .box01 li { width: 50%;}
.contact_wrap .box01 li:first-child { border-right: solid 1px #D1D1D1;}
.contact_wrap .box01 a { display: table; margin: auto; color: #005BAC; text-decoration: none; padding: 1em 0px 1em 3.2em;}
.contact_wrap .box01 .tel { font-size: 2em; letter-spacing: 0.05em;}
.contact_wrap .box01 a:before { content: ""; position: absolute; background-repeat: no-repeat; background-size: 100% auto; background-position: center center; height: 3em; left: 0px; top: 50%; transform: translateY(-50%);}
.contact_wrap .box01 li:first-child a:before { background-image: url("../images/common/ico_tel_red.svg"); width: 2em;}
.contact_wrap .box01 li:last-child a:before { background-image: url("../images/common/ico_fax.svg"); width: 2em}

.contact_sec dl { display: table; width: 100%; padding-bottom: 25px; margin-bottom: 25px; border-bottom: solid 1px #E0E0E0;}
.contact_sec dl.data { border-bottom: none; padding-bottom: 0px;}
.contact_sec .data_box { padding-bottom: 25px; margin-bottom: 25px; border-bottom: solid 1px #E0E0E0;}
.contact_sec dl > * { display: table-cell; vertical-align: top;}
.contact_sec dt { width: 250px; padding-top: 10px; font-size: 1.15em; line-height: 1.2; font-weight: bold;}
.contact_sec .hissu { display: inline-block; vertical-align: middle; color: #fff; background: #D81A22; font-size: 0.8rem; padding: 2px 0.4em; line-height: 1.4; border-radius: 3px; margin-left: 1em;}
input[type="text"], input[type="email"], input[type="number"], textarea, select {
	font-family: "Hiragino Maru Gothic W4 JIS2004", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 17px;
	padding: 0.5em 0.7em;
	background-color: #fff;
	border: solid 1px #D9D9D9;
	border-radius: 3px;
	vertical-align: bottom;
	max-width: 100%;
}
.contact_sec input[type="text"], .contact_sec input[type="email"], .contact_sec textarea { width: 100%;}
.contact_sec .width_auto input[type="text"] { width: auto;}

.contact_sec .btn_area input {
	display: inline-block;
	width: 250px;
	font-family: "Hiragino Maru Gothic W4 JIS2004", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
	color: #fff;
	font-size: 1.1em;
	font-weight: bold;
	text-decoration: none;
	text-align: center;
	background: #FF6200;
	border: none;
	border-radius: 60px;
	padding: 20px;
	outline: none;
	cursor: pointer;
	margin: 0px 10px 15px;
	-webkit-appearance: none;
	transition: 0.3s;
}
.contact_sec .btn_area input:hover { opacity: 0.7;}
.contact_sec .btn_area input:focus { outline: 0;}

.mwform-checkbox-field label, .mwform-radio-field label { display: inline-block;}

.mw_wp_form .error {
	background-color: #F7CCE6;
	border: #ee4d89 solid 1px;
	border-radius: 3px;
	color: #EE4D89;
	display: inline-block;
	vertical-align: middle;
	font-size: 75%;
	padding: 3px 5px 2px;
	margin-left: 5px;
}

.mw_wp_form_confirm .confirm_hidden { display: none;}
.mw_wp_form_confirm .contact_sec dt, .mw_wp_form_confirm .contact_sec .check_wrap { padding-top: 0px;}


/* ------------------------
	topics
------------------------ */

.news_art dl { border-bottom: solid 1px #707070; padding-bottom: 1em; margin-bottom: 1em;}

.blog_content p { margin-bottom: 25px;}
.blog_content h1, .blog_content h2, .blog_content h3, .blog_content h4, .blog_content h5, .blog_content h6 { font-weight: bold; font-size: 1.3em; line-height: 1.4; margin-bottom: 30px; clear: both;}
.blog_content blockquote { border: solid 1px #707070; background: #fff; padding: 1.5em 2em; margin-bottom: 40px; clear: both;}
.blog_content blockquote p:last-child { margin-bottom: 0px;}
.blog_content ul { margin-bottom: 30px;}
.blog_content li { position: relative; padding-left: 1.2em;}
.blog_content li:before { content: ""; position: absolute; background: #3c3c3c; width: 0.65em; height: 0.65em; border-radius: 100%; left: 0px; top: 0.5em;}
.blog_content table { width: 100%;}
.blog_content td { border: solid 1px #707070; padding: 0.1em 0.6em; width: 33.3333%;}
.blog_content tr:first-child td{ background: #FAAFAF; font-weight: bold; text-align: center; padding: 0.25em;}

/*WP用 投稿表示*/
img.alignnone { margin: 20px auto;}
img.aligncenter { display: block; margin: 20px auto;}
img.alignright { margin: 20px 0 20px 20px; float: right;}
img.alignleft { margin: 20px 20px 20px 0; float: left;}


.more_btn.post a { border: none; min-width: 270px; padding: 1em; text-align: center;}
.more_btn.post a:after { right: auto; left: 1.5em; top: 50%; transform: translateY(-50%) scale(-1,1); width: 1.75em; height: 1.75em;}
.more_btn.post a:hover { transform: translateX(-5px);}

/* ページャー(アーカイブ) */
.pagination span.current, .pagination a {
	margin: 0px 8px 10px;
	display: inline-block;
	vertical-align: middle;
	text-align: center;
	text-decoration: none;
	background-color: #D8D8D8;
	color: #000;
	min-width: 30px;
	height: 30px;
	font-weight: bold;
	line-height: 30px;
	padding: 0px 10px;
}
.pagination span.current, .pagination a:hover { background-color: #141D4B; color: #fff;}
.pagination .number { margin-right: 1em; margin-bottom: 10px;}

