@charset "utf-8";
html, body {
 width: 100%;
}
body, div, pre, p, blockquote, form, fieldset, input, textarea, select, option, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, embed, object {
 padding: 0;
 vertical-align: baseline;
 font-size: 100%;
 margin: 0;
font-family: 'Plus Jakarta Display', Arial, Helvetica, sans-serif;
 font-weight: 500;
 letter-spacing: 0.05em;
}
* {
 margin: 0;
 padding: 0;
 box-sizing: border-box;
}
img.hv {
 transition: all .3s;
}
img.hv:hover {
 opacity: 0.8;
 transition: all .3s;
}
body {
	font-family: 'Plus Jakarta Display', Arial, Helvetica, sans-serif;
 font-weight: 500;
 background-color: #FFFFFF;
}
#wrapper {
 clear: both;
 width: 100%;
 padding: 0px 0px 0px 0px;
}
/* pc / sp */
.pc_only {
 display: block;
}
.sp_only {
 display: none;
}
/*-----------------------------------*/
#header_nav {
 width: 100%;
 min-width: 1280px;
 display: flex;
 justify-content: space-between;
 padding: 0px 0px 0px;
 margin: 0px auto 100px;
}
header h1 {
 width: 30%;
 font-size: 1.5vw;
 font-family: 'Plus Jakarta Display', Arial, Helvetica, sans-serif;
 font-weight: 700;
 color: #000000;
 white-space: nowrap;
 line-height: 3.2vw;
 letter-spacing: 0.05em;
 padding: 15px 0px 0px 2%;
}
header h1::before {
 content: '';
 float: left;
 width: 56px;
 height: 50px;
 background: url("../../images/logo.png") no-repeat;
 background-size: 100% auto;
 margin-right: 10px;
}
header h1 a {
 color: #000000;
 font-family: 'Plus Jakarta Display', Arial, Helvetica, sans-serif;
 font-weight: 700;
 transition: all .3s;
}
header h1 a:hover {
 opacity: 0.6;
 text-decoration: none;
 transition: all .3s;
}
nav {
 width: 70%;
 padding: 0px 0px 0px 0px;
}
nav ul {
 float: right;
 padding: 25px 0px 0px 0px;
}
nav ul li {
 display: inline-block;
 margin: 0px 12px 0px;
}
nav ul li a {
 display: inline-block;
 font-size: 16px;
 font-family: 'Plus Jakarta Display', Arial, Helvetica, sans-serif;
 font-weight: 700;
 color: #0f2e67;
 transition: all .3s;
}
nav ul li a:hover {
 color: #FFFFFF;
 text-decoration: none;
 transition: all .3s;
}
#h_tel {
 float: right;
 margin-left: 25px;
}
#lang {
 width: 88px;
 position: absolute;
 top: 100px;
 right: 0px;
 text-align: center;
 background-color: rgba(4, 24, 55, 0.77);
 padding: 20px 0px 25px 0px;
}
#lang ol {
 width: 70%;
 font-size: 15px;
 margin: 2px auto 0px;
}
#lang ol li {
 color: #CCCCCC;
 list-style-type: none;
 line-height: 1.6em;
 padding: 5px 0px;
 border-bottom: 1px solid #bbc4cd;
}
#lang ol li a {
 font-weight: bold;
 color: #FFFFFF;
}
#lang ol li a:hover {
 text-decoration: none;
 color: #FFF700;
}
#mainvisual {
 clear: both;
 overflow: hidden;
 width: 100%;
 margin: 0px auto;
}
#mainvisual h2 {
 font-size: 45px;
 font-family: 'Plus Jakarta Display', Arial, Helvetica, sans-serif;
 font-weight: 900;
 font-style: italic;
 line-height: 1.5em;
 color: #000000;
 margin: 0px 0px 180px 6%;
}
#head_news {
 float: right;
 display: flex;
 width: 50%;
 color: #FFFFFF;
 padding: 20px 0px 20px 0px;
 background-color: rgba(4, 24, 55, 0.8);
}
#head_news dt {
 width: 20%;
 text-align: center;
 font-size: 20px;
 line-height: 2.0vw;
 border-right: 1px solid #9ea9b9;
}
#head_news dd {
 width: 80%;
 font-size: 15px;
 line-height: 2.0vw;
 padding: 0px 0px 0px 26px;
 text-align: left;
}
#head_news dd a span {
 margin-right: 15px;
}
#head_news dd a {
 color: #FFFFFF;
}
#head_news dd a:hover {
 color: #FFEE00;
 text-decoration: none;
 transition: all .3s;
}
/*-----------------------------------*/
#container {
 clear: both;
 overflow: hidden;
 width: 100%;
 background-image: url("../../images/bg_mon01.gif"), url("../../images/bg_mon02.gif");
 background-repeat: no-repeat;
 background-position: top left, top right;
}
.sec {
 clear: both;
 width: 1280px;
 position: relative;
 margin: 0px auto 40px;
}
.flex {
 display: flex;
 justify-content: space-between;
}
#top_height {
 min-height: 940px;
}
#topblock {
 width: 45%;
}
#topblock p {
 font-size: 18px;
 color: #555555;
 line-height: 2.2em;
 margin-bottom: 20px;
 padding-top: 80px;
}
#topblock p.caps {
 font-size: 14px;
 color: #787878;
}
#top_photo {
 width: 50%;
}
#top_photo img {
 display: block;
 position: absolute;
}
img#tp_01 {
 top: 30px;
 right: -7%;
 z-index: 1;
}
img#tp_02 {
 top: 560px;
 right: 460px;
 z-index: 2;
}
img#tp_03 {
 top: 630px;
 right: 0px;
 z-index: 3;
}
#concept {
 background-color: #FFFFFF;
 padding: 0px 0px 0px 0px;
}
.b_photo {
 position: absolute;
 top: 0px;
 left: 0px;
}
.b_photo p {
 clear: both;
 overflow: hidden;
 font-size: 13px;
 color: #787878;
}
.b_text {
 float: right;
 width: 706px;
 padding: 72px 80px 50px 130px;
 background-color: #f4f4f4;
 margin: 60px 0px 50px 0px;
}
.b_text h3 {
 clear: both;
 width: 100%;
 font-size: 48px;
 text-align: center;
 font-family: 'Plus Jakarta Display', Arial, Helvetica, sans-serif;
 font-weight: 700;
 margin-bottom: 30px;
}
.b_text h3 span {
 display: block;
 font-size: 15px;
}
.b_text p {
 font-size: 16px;
 line-height: 2.0em;
 margin-bottom: 40px;
}
#service {
 clear: both;
 width: 100%;
 background: url("../../images/bg_mon03.gif") no-repeat right 32px;
}
h3.common {
 clear: both;
 width: 100%;
 text-align: center;
 font-size: 40px;
 color: #353535;
 font-family: 'Plus Jakarta Display', Arial, Helvetica, sans-serif;
 font-weight: 700;
 margin: 0px 0px 40px 0px;
}
h3.common span {
 display: block;
 font-size: 16px;
 color: #0a234b;
}
.s_sec {
 width: 1200px;
 margin: 0px auto 40px;
}
.sbox {
 width: 580px;
 padding: 10px;
 border: 1px solid #0e2961;
}
.sbox_in {
 height: 470px;
 padding: 25px 20px 20px 30px;
 border: 1px solid #6a7089;
 background-color: #FFFFFF;
}
.sbox_in h4 {
 font-size: 32px;
 font-family: 'Plus Jakarta Display', Arial, Helvetica, sans-serif;
 font-weight: 700;
 padding: 30px 0px 40px 0px;
 margin-bottom: 25px;
 letter-spacing: 0.05em;
 background: url("../../images/h4_bar.gif") no-repeat 0px bottom;
}
.sbox_in p {
 clear: both;
 font-size: 16px;
 line-height: 1.7em;
 color: #353535;
 margin-bottom: 30px;
}
.thumbnail {
 float: right;
 margin-bottom: 20px;
}
#facility {
 clear: both;
 overflow: hidden;
 width: 100%;
 padding: 100px 0px 100px 0px;
 background: url("../../images/bg_image01.jpg") no-repeat 0px bottom;
 background-size: 100% auto;
}
.wbox {
 float: right;
 width: 520px;
 padding: 50px 50px 30px 50px;
 background-color: rgba(255, 255, 255, 0.9);
}
.wbox h3 {
 width: 340px;
 font-size: 38px;
 font-family: 'Plus Jakarta Display', Arial, Helvetica, sans-serif;
 font-weight: 700;
 text-align: center;
 padding: 0px 0px 0px 0px;
 margin: 0px auto 20px;
}
.wbox p {
 font-size: 16px;
 line-height: 1.7em;
 text-align: center;
 margin-bottom: 30px;
}
#container2 {
 clear: both;
 overflow: hidden;
 width: 100%;
 background-image: url("../../images/bg_mon04_left.gif"), url("../../images/bg_mon04_right.gif");
 background-repeat: no-repeat;
 background-position: top left, top right;
 padding: 80px 0px 0px 0px;
}
.description {
 text-align: center;
	font-size: 17px;
 padding: 10px 0px 40px 0px;
}
.newslist {
 display: block;
 width: 400px;
 color: #353535;
 border: 1px solid #c1c1c1;
 transition: all .3s;
}
.newslist:hover {
 opacity: 0.8;
 text-decoration: none;
 transition: all .3s;
}
.newslist img {
 margin-bottom: 10px;
}
.newslist div {
 clear: both;
 overflow: hidden;
 width: 90%;
 margin: 0px auto 20px;
}
.newslist p {
 font-size: 15px;
 font-weight: 500;
 line-height: 1.3em;
 margin-bottom: 18px;
}
.cat {
 float: left;
 width: 36%;
 font-size: 12px;
 text-align: center;
 color: #FFFFFF;
 padding: 3px 10px 6px;
 background-color: #44413e;
}
.date {
 float: right;
 width: 50%;
 text-align: right;
 font-size: 13px;
 font-weight: bold;
 color: #252525;
 padding: 3px 10px 6px;
}
/*-----------------------------------*/
#last {
 clear: both;
 overflow: hidden;
 width: 100%;
 color: #FFFFFF;
 text-align: center;
 padding: 45px 0px 50px 0px;
 background: url("../../images/intel_left.png"), url("../../images/intel_right.png"), url("../../images/bg_intel.jpg");
 background-repeat: no-repeat;
 background-position: left top, right bottom, top center;
 background-size: auto auto, auto auto, 100% auto;
}
#flogo {
 clear: both;
 width: 460px;
 font-size: 17px;
 font-weight: 700;
 color: #FFFFFF;
 padding: 0px 0px 20px 0px;
 margin: 0px auto 20px;
 border-bottom: 3px double #FFFFFF;
}
#flogo img {
 display: block;
 width: 100px;
 margin: 0px auto 10px;
}
#ftel {
 font-size: 30px;
 font-family: 'Plus Jakarta Display', Arial, Helvetica, sans-serif;
 font-weight: 700;
}
#ftel::before {
 	content: '　';
	width: 30px;
	height: auto;
	background: url("../../images/ic_tel.png") no-repeat 0px 9px;
	background-size: 30px auto;
	margin-right: 6px;
}
#ftel a {
 color: #FFFFFF;
}
#last span {
 display: block;
 font-size: 14px;
 margin-bottom: 30px;
}
/*-----------------------------------*/
#footer {
 clear: both;
 overflow: hidden;
 width: 100%;
 color: #FFFFFF;
 background-color: #19273d;
}
#footer_inner {
 clear: both;
 display: flex;
 justify-content: space-between;
 width: 1280px;
 padding: 30px 0px;
 margin: 0px auto;
}
#footer_left {
 width: 66%;
 border-right: 3px double #475264;
}
#footer_right {
 width: 32%;
 padding: 10px 0px 0px 40px;
}
#footer_left #home {
 font-size: 18px;
 font-family: 'Plus Jakarta Display', Arial, Helvetica, sans-serif;
 font-weight: 700;
 margin-bottom: 15px;
}
#footer_left #home a {
 color: #FFFFFF;
 transition: all .3s;
}
#footer_left #home a:hover {
 text-decoration: none;
 color: #FFEE00;
 transition: all .3s;
}
#footer_left ul {
 float: left;
 width: 32%;
 margin-left: 1%;
}
#footer_left ul li {
 margin: 0px 0px 10px 0px;
}
#footer_left ul li.sub {
 margin: 0px 0px 10px 30px;
}
#footer_left ul li a {
 color: #FFFFFF;
 font-size: 15px;
 font-family: 'Plus Jakarta Display', Arial, Helvetica, sans-serif;
 font-weight: 700;
 line-height: 1.8em;
 padding: 0px 0px 0px 30px;
 margin: 0px 0px 0px 0px;
 background: url("../../images/ic_menu.png") no-repeat 0px center;
 transition: all .3s;
}
#footer_left ul li.sub a {
 color: #FFFFFF;
 font-size: 14px;
 line-height: 1.8em;
 padding: 0px 0px 0px 0px;
 margin: 0px 0px 15px 0px;
 background: none;
}
#footer_left ul li a:hover {
 text-decoration: none;
 color: #FFEE00;
 background: url("../../images/ic_menu.png") no-repeat 6px center;
 transition: all .3s;
}
#footer_left ul li.sub a:hover {
 background: none;
}
#footer_right p {
 font-size: 14px;
 font-family: 'Plus Jakarta Display', Arial, Helvetica, sans-serif;
 font-weight: 400;
 line-height: 1.5em;
 margin-bottom: 30px;
}
#footer_right p a {
 color: #FFFFFF;
}
#footer_right p#fname {
 font-size: 16px;
 font-family: 'Plus Jakarta Display', Arial, Helvetica, sans-serif;
 font-weight: 700;
 margin-bottom: 20px;
}
#footer_right div a {
 clear: both;
 display: block;
 width: 240px;
 color: #FFF;
 font-size: 16px;
 border: 1px solid #FFF;
 border-radius: 25px;
 padding: 8px 0px 13px;
 text-align: center;
 letter-spacing: 0.025em;
 position: relative;
 -webkit-transition: all .3s;
 transition: all .3s;
}
#footer_right div a::after {
 content: "";
 width: 22px;
 height: 34px;
 position: absolute;
 top: 8px;
 left: 10%;
 background: url("../../images/ic_map.png") no-repeat 0px 0px;
 -webkit-transition: all .3s;
 transition: all .3s;
}
#footer_right div a:hover {
 text-decoration: none;
 color: #19273d;
 -webkit-transition: all .3s;
 transition: all .3s;
 background-color: #FFFFFF;
}
#footer_right div a:hover::after {
 content: "";
 width: 22px;
 height: 34px;
 position: absolute;
 top: 8px;
 left: 10%;
 background: url("../../images/ic_map_hv.png") no-repeat 0px 0px;
 -webkit-transition: all .3s;
 transition: all .3s;
}
#copyright {
 clear: both;
 overflow: hidden;
 width: 1280px;
 margin: 0px auto;
 border-top: 1px solid #8c939e;
 font-family: 'Plus Jakarta Display', Arial, Helvetica, sans-serif;
 font-weight: 700;
 text-align: center;
 font-size: 14px;
 color: #FFFFFF;
 padding: 30px 0px;
}
/*-----------------------------------*/
.button {
 clear: both;
}
.button a {
 display: block;
 width: 260px;
 color: #FFFFFF;
 font-size: 16px;
 font-family: 'Plus Jakarta Display', Arial, Helvetica, sans-serif;
 font-weight: 700;
 text-align: center;
 box-sizing: border-box;
 padding: 18px 0px;
 letter-spacing: 0.2em;
 margin: 0px auto 50px;
 background: url("../../images/arr.png") no-repeat 185px 25px #1e4178;
 transition: all .3s;
}
.button a:hover {
 text-decoration: none;
 background: url("../../images/arr.png") no-repeat 195px 25px #1e4178;
 transition: all .3s;
}
/**/
.button_form {
 clear: both;
}
.button_form a {
 display: block;
 width: 270px;
 color: #1e4178;
 font-size: 16px;
 font-family: 'Plus Jakarta Display', Arial, Helvetica, sans-serif;
 font-weight: 700;
 text-align: center;
 box-sizing: border-box;
 padding: 18px 0px 18px 0px;
 margin: 0px auto 50px;
 background: url("../../images/ic_mail.png") no-repeat 30px 21px #FFFFFF;
 background-size: 20px auto;
 transition: all .3s;
}
.button_form a:hover {
 opacity: 0.9;
 text-decoration: none;
 color: #FFFFFF;
 background: url("../../images/ic_mail_hv.png") no-repeat 34px 21px #232323;
 background-size: 20px auto;
 transition: all .3s;
}