@charset "utf-8";



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

#top・wp・contact構築時に欲しいパーツ集

必要最低限なパーツのみ残しています。
下層展開構築時のパーツは適宜チップスから取得し追加してください。

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

.langlist{ font-size: 1.4rem; }
.langlist>li{ display: inline-block; margin-left: 2px; }
.langlist>li::before{ content: "/"; margin-right: 2px; }
.langlist>li:first-child:before{ content: none; }
.langlist>li>a:hover{ opacity: 0.8; }
@media screen and (max-width: 1040px){
}
@media screen and (max-width: 767px){
}
@media screen and (max-width: 500px){
}

.contacticonlink>.inwrap{ display: flex; align-items: center; justify-content: center; width: 80px; height: 80px; border: 1px solid #fff; border-radius: 50%; }
.contacticonlink>.inwrap .st0{ transition:.4s; }
.contacticonlink>.inwrap:hover{ background: #fff; }
.contacticonlink>.inwrap:hover svg{ transform: scale(1.04); }
.contacticonlink>.inwrap:hover .st0{fill:#002348;}
@media screen and (max-width: 1040px){
}
@media screen and (max-width: 767px){
}
@media screen and (max-width: 500px){
	.contacticonlink>.inwrap{ width: 70px; height: 70px; }
}


.sarabnrlink>.inwrap .sub{ text-align: center; margin-bottom: 3px; }
.sarabnrlink>.inwrap .sub>.inwrap{ display: inline-block; padding-left: 10px; padding-right: 10px; font-size: 1.4rem; position: relative; }
.sarabnrlink>.inwrap .sub>.inwrap::before,
.sarabnrlink>.inwrap .sub>.inwrap::after{content: "";background: #fff;width: 1px;height: 14px;position: absolute;bottom: 8px;}
.sarabnrlink>.inwrap .sub>.inwrap::before{ left: 0; transform: rotate(-45deg); }
.sarabnrlink>.inwrap .sub>.inwrap::after{ right: 0; transform: rotate(45deg); }
.sarabnrlink>.inwrap .mainbox{ display: flex; flex-direction: row; position: relative; }
.sarabnrlink>.inwrap .mainbox .txtbox{ width: 100%; background: #002348; color: #fff; display: flex; align-items: center; justify-content: center; flex-direction: column; line-height: 1.4; }
.sarabnrlink>.inwrap .mainbox .txtbox .jn{ font-size: 2.4rem; }
.sarabnrlink>.inwrap .mainbox .imgbox{ flex-shrink: 0; overflow: hidden; }
.sarabnrlink>.inwrap .mainbox .imgbox img{ transition: .4s; }
.sarabnrlink>.inwrap:hover .mainbox .imgbox img{ transform: scale(1.04); }
.sarabnrlink>.inwrap .mainbox>.closebtn{ display: inline-block; position: absolute; top: -16px; left: -16px; }
.sarabnrlink>.inwrap .mainbox>.closebtn svg .closebtn_st0.st0,
.sarabnrlink>.inwrap .mainbox>.closebtn svg .closebtn_st1.st1{transition: .4s;}
.sarabnrlink>.inwrap:hover .mainbox>.closebtn svg .closebtn_st0.st0{fill:#191919;}
.sarabnrlink>.inwrap:hover .mainbox>.closebtn svg .closebtn_st1.st1{fill:#fff;stroke:#fff}
@media screen and (max-width: 1040px){
}
@media screen and (max-width: 767px){
	.sarabnrlink>.inwrap .mainbox .txtbox .jn{ font-size: 1.8rem; }
}
@media screen and (max-width: 500px){
}


.sectitlebox{line-height: 1.8;margin-bottom: 30px;color: #002348;}
.sectitlebox .jn{font-size: 3.2rem;line-height: 1.6;}
@media screen and (max-width: 1040px){
	.sectitlebox{ text-align: center; }
	.sectitlebox .jn{ font-size: 2.6rem; }
}
@media screen and (max-width: 767px){
}
@media screen and (max-width: 500px){
	.sectitlebox{ margin-bottom: 25px; }
	.sectitlebox .jn{ font-size: 2.4rem; }
}

.copy{ font-size: 3.2rem; line-height: 1.8; text-align: center; margin-bottom: 30px; }
.copy._top{ margin-bottom: 70px; }
.copy._1{ font-size: 2rem; }
@media screen and (max-width: 1040px){
	.copy{ font-size: 2.6rem; }
	.copy._top{ margin-bottom: 50px; }
}
@media screen and (max-width: 767px){
	.copy{ font-size: 2.4rem; margin-bottom: 25px; }
}
@media screen and (max-width: 500px){
	.copy{ font-size: 2.2rem; }
}

.newslist{ display: flex; flex-direction: row; flex-wrap: wrap; margin-left: -30px; margin-bottom: -30px; overflow: hidden; }
.newslist>li{ margin-left: 30px; width: calc(33.33% - 30px); margin-bottom: 30px; }
#news .newslist>li{ width: calc(50% - 30px); }
.newslist>li>.inwrap{ display: flex; flex-direction: column; }
.newslist>li>.inwrap .imgbox{ height: 200px; margin-bottom: 25px; overflow: hidden; position: relative; }
.newslist>li>.inwrap .imgbox .newicon{display: inline-block;background: #e9e300;line-height: 1;width: 58px;position: absolute;top: 0;left: 0;text-align: center;padding: 6px 4px 4px;letter-spacing: 0.1em;text-indent: 0.1em;}
.newslist>li>.inwrap .imgbox img{ transition: .4s; width : 100%; height : 100%; -o-object-fit : cover; object-fit : cover; }
.newslist>li>.inwrap .txtbox .date{ margin-bottom: 5px; }
.newslist>li>.inwrap .txtbox .title{ transition: .4s; }
.newslist>li>.inwrap:hover .imgbox img{ transform: scale(1.04); }
.newslist>li>.inwrap:hover .txtbox .title{ color: #00507e; }
@media screen and (max-width: 1040px){
	.newslist>li{ width: calc(50% - 30px); }
	.newslist>li>.inwrap .imgbox{height: calc(50px + 20vw);}
}
@media screen and (max-width: 767px){
	.newslist{ display: block; margin-left: 0; }
	.newslist>li{ margin-left: 0; width: 100%!important; }
	.newslist>li>.inwrap .imgbox{ margin-bottom: 20px; height: calc(30px + 50vw);}
}
@media screen and (max-width: 500px){
}


.btnlink{border: 1px solid #002348;display: inline-block;padding: 23px 72px;color: #002348;}
.btnlink>.inwrap{ display: inline-block; position: relative; padding-left: 5px; padding-right: 18px; }
.btnlink>.inwrap::after,
.btnlink>.inwrap::before{ content: ""; background: url(../img/common/arr.svg) no-repeat; background-size: contain; width: 16px; height: 8px; display: inline-block; margin-left: 2px; vertical-align: 2px; transition: .4s; position: absolute; top: 0; bottom: 0; margin-top: auto; margin-bottom: auto; right: 0; }
.btnlink>.inwrap::before{ background: url(../img/common/arr_white.svg) no-repeat; background-size: contain; opacity: 0; }
.btnlink:hover{ background: #002348; color: #fff; }
.btnlink:hover>.inwrap::after,
.btnlink:hover>.inwrap::before{ right: -5px; }
.btnlink:hover>.inwrap::before{ opacity: 1; }
.btnlink:hover>.inwrap::after{ opacity: 0; }
@media screen and (max-width: 1040px){
}
@media screen and (max-width: 767px){
	.btnlink{padding: 18px 60px;}
}
@media screen and (max-width: 500px){
}

.bnrlist{ display: flex; flex-direction: row; flex-wrap: wrap; margin-left: -40px; margin-bottom: -30px; }
.bnrlist>li{ margin-left: 40px; margin-bottom: 30px; width: calc(50% - 40px); display: flex; }
.bnrlist>li>.inwrap{ display: flex; flex-direction: row; position: relative; width: 100%; padding-top: 45px; padding-bottom: 45px; min-height: 240px; overflow: hidden; }
.bnrlist>li>.inwrap .txtbox{  z-index: 2; display: flex; flex-direction: column; align-items: center; justify-content: center; color: #fff; width: 100%; }
.bnrlist>li>.inwrap .txtbox .jn{ font-size: 2.4rem; position: relative; width: 100%; text-align: center; padding-bottom: 15px; margin-bottom: 5px; }
.bnrlist>li>.inwrap .txtbox .jn:after{ content: ""; background: #fff; display: inline-block; position: absolute; bottom: 0; left: 0; right: 0; margin-left: auto; margin-right: auto; width: 40%; height: 1px; }
.bnrlist>li>.inwrap .txtbox .en{ font-size: 1.4rem; }
.bnrlist>li>.inwrap .bg{ position: absolute; top: 0; bottom: 0; left: 0; right: 0; z-index: 1; transition: .4s; }
.bnrlist>li>.inwrap:hover .bg{ transform: scale(1.04); }
body.langen .bnrlist>li>.inwrap .txtbox .jn{ padding-bottom: 0; margin-bottom: 0; font-size: 3.2rem; }
body.langen .bnrlist>li>.inwrap .txtbox .jn:after{ content: none; }
@media screen and (max-width: 1040px){
	.bnrlist{ display: block; margin-left: 0; width: 88%; margin-left: auto; margin-right: auto; }
	.bnrlist>li{ margin-left: 0; width: 100%; display: block; }
	.bnrlist>li>.inwrap{ min-height: 200px; }
}
@media screen and (max-width: 767px){
	.bnrlist{ margin-bottom: -20px; width: 100%; }
	.bnrlist>li{ margin-bottom: 20px; }
	.bnrlist>li>.inwrap .txtbox .jn{ font-size: 2rem; padding-bottom: 10px; }
	.bnrlist>li>.inwrap{ min-height: inherit; }
	body.langen .bnrlist>li>.inwrap .txtbox .jn{ font-size: 2.4rem; }
}
@media screen and (max-width: 500px){
}





/* input */
form input[type="text"],
form input[type="tel"],
form input[type="email"],
form input[type="password"],
form input[type="number"],
form textarea { border: 1px solid #002348; background: #fff!important; line-height: 2; padding: 18px 15px; font-size: 100%; height: 60px; width: 100%; transition: 0.3s; letter-spacing: 1.6; font-family : "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif; }
form textarea {height: 188px;width: 100%;resize: vertical;display: block;}
form input[type="text"]:focus,
form input[type="tel"]:focus,
form input[type="email"]:focus,
form input[type="password"]:focus,
form input[type="number"]:focus,
form textarea:focus { border: 1px solid #002348; }
form input[type="text"]:read-only,
form input[type="tel"]:read-only,
form input[type="email"]:read-only,
form input[type="password"]:read-only,
form input[type="number"]:read-only,
form textarea:read-only { background: #eee!important; }
@media screen and (max-width: 767px) {
	form input[type="text"],
	form input[type="tel"],
	form input[type="email"],
	form input[type="password"],
	form input[type="number"] { padding: 18px 12px; height: 60px; }
	form textarea{ height: 240px; }
}

/* other */
input::placeholder, textarea::placeholder { color: #ccc!important; }
p.ermsg { color: #002348; line-height: 1.8; margin-top:10px; }
p.ermsg + p.ermsg { margin-top:0; }
.required {color: #fff;line-height: 1;margin-left: 10px;letter-spacing: 0;}
ul.list.error { margin-bottom: 60px; }
ul.list.error li { margin-bottom: 5px; color: #002348;}
@media screen and (max-width: 767px) {
}

/* size */
form .short { width: 300px!important;}
form .middle { width: 500px!important;}
@media screen and (max-width: 767px) {
	form .short { width: 100%!important;}
	form .middle { width: 100%!important;}
}


/* checkbox */
form input[type="checkbox"] { width: 16px; height: 16px; border:1px solid #002348; background-color: #fff!important; cursor: pointer; background-size: 16px 16px!important; font-size: 0; transition: 0.3s; margin-right: 5px; vertical-align: -2px; }
form input[type="checkbox"].checked,
form input[type="checkbox"]:checked { background-color: #002348!important; border:1px solid #002348; }
form input[type="checkbox"].checked:before,
form input[type="checkbox"]:checked:before,
form input[type="checkbox"].checked:after,
form input[type="checkbox"]:checked:after { content:none!important; }

/* radio */
form input[type="radio"] { width: 18px; height: 18px; border-radius: 50%; border:1px solid #002348; background-color: #fff!important; cursor: pointer; background-size: 18px 18px!important; font-size: 0; transition: 0.3s; margin-right: 5px; vertical-align: -3px; }
form input[type="radio"].checked,
form input[type="radio"]:checked { background-color: #002348!important; border: 1px solid #002348; }
form input[type="radio"].checked:before,
form input[type="radio"]:checked:before,
form input[type="radio"].checked:after,
form input[type="radio"]:checked:after { content:none!important; }

/* date */
input[type="date"]:focus { outline: 0; }
input[type="date"]::-webkit-inner-spin-button,
input[type="date"]::-webkit-clear-button{ -webkit-appearance: none; }
input[type="date"]::-webkit-calendar-picker-indicator { opacity: 0; height: 60px; width: 60px; right: 0; cursor: pointer; }
input[type="date"] {position: relative;width: 210px;height: 60px;border: 0;background: transparent;box-sizing: border-box;font-size: 1.5rem;color: #191919;font-family : "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;letter-spacing: 0.1em;padding-left: 15px;}

/* daybox */
.datebox .dateinput{ margin-top: 5px; margin-left: -15px; }
.datebox .dateinput .daybox,
.datebox .dateinput .datetime{ display: inline-block; vertical-align: top; margin-left: 15px; margin-top: 5px; }
.datebox .dateinput input{ width: 100%; }
form .daybox label { position: relative; width: 266px; height: 60px; border: 1px solid #ffffff; background: #fff; }
form .daybox label::before { content: ""; background: #002348; width: 60px; height: 58px; top: 0; right: 0; position: absolute; z-index: 1; border-left: 1px solid #ffffff; }
form .daybox label::after {content: "";background: url(../img/common/schedule.svg) no-repeat;background-size: contain;width: 24px;height: 26px;display: inline-block;position: absolute;top: 0;bottom: 0;margin-top: auto;margin-bottom: auto;right: 18px;z-index: 2;}
.datebox .dateinput .datetime .selectbox{width: 215px;}
@media screen and (max-width: 767px) { 
	.datebox>li:not(:last-child){margin-bottom: 15px;}
	form .daybox label,
	.datebox .dateinput .datetime .selectbox { width: 100%; }	
	.datebox .dateinput .daybox,
	.datebox .dateinput .datetime{ display: block; }
}

/* selectbox */
form .selectbox { height: 60px; width: 385px; position: relative; display: inline-block; z-index: 1; border: 1px solid #002348; background: #fff; }
form .selectbox::before { content: ""; background: #cccccc; width: 60px; height: 58px; top: 0; right: 0; position: absolute; z-index: -1; border-left: 1px solid #002348; }
form .selectbox::after { content: "";background: linear-gradient(to left top, transparent 50%, rgb(255, 255, 255) 51%) right top / 50% 100% no-repeat, linear-gradient(to right top, transparent 50%, rgb(255, 255, 255) 51%) left bottom / 50% 100% no-repeat;width: 10px;height: 8px;display: inline-block;position: absolute;top: 0;bottom: 0;margin-top: auto;margin-bottom: auto;z-index: -1;right: 25px; }
form .selectbox select {width: 100%; height: 100%; padding: 0 15px; padding-right: 60px; position: relative; font-family : "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif; letter-spacing: 0.1em; }
@media screen and (max-width: 767px) { 
	form .selectbox { width: 100%; }
}

/* btnbox */
.btnbox { text-align: center; width: 100%; margin-top: 10px; }
.btnbox ul { margin-left: -20px; margin-top: -10px; overflow: hidden; text-align: center; }
.btnbox ul>li { margin-left: 20px; margin-top: 10px; display: inline-block; vertical-align: middle; }
#article.wp form .btnbox ul>li input[type="submit"].btnlink {width: 400px;display: block;}

form input[type="submit"] { font-family : "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif; }
@media screen and (max-width: 767px) {
	.btnbox{ margin-top: 20px; }
	.btnbox ul { margin-left: 0; }
	.btnbox ul>li { margin-left: 0; display: block; }
	.btnbox ul>li label{ width: 100%; }
	#article.wp form .btnbox ul>li input[type="submit"].btnlink{ width: 100%; }
}


.btn{display: inline-block;background: #002348;color: #fff;font-size: 2rem;line-height: 1.4;text-align: center;min-width: 400px;width: 100%;padding: 35px 20px;letter-spacing: 0.1em;border: 1px solid #002348;}
.btn:hover{ background: #fff; color: #002348; }
@media screen and (max-width: 1040px){
	.btn{ font-size: 1.6rem; }
}
@media screen and (max-width: 767px){
	.btn{ min-width: inherit; width: 100%; padding-top: 23px; padding-bottom: 23px; }
}
@media screen and (max-width: 500px){
}



form ul.formlist>li { margin-bottom: 20px; }
form ul.formlist>li dl {display: flex;justify-content: space-between;}
form ul.formlist>li dt {width: 200px;flex-shrink: 0;background: #002348;padding: 14px 20px 12px;color: #fff;text-align: center;}
form ul.formlist>li dd { width: 100%; }
/* form ul.formlist>li dd input{ height: 100%; } */

form .privacycheck {padding: 45px 0 ;text-align: center;}
form .privacycheck a { text-decoration: underline; }
form .privacycheck a:hover { text-decoration: none; }
@media screen and (max-width: 767px) { 
	form .privacycheck { padding: 15px 0; text-align: center; }
	form ul.formlist>li dl { display: block; }
	form ul.formlist>li dt {width: 100%;}
}
@media screen and (max-width: 500px) { 
	form .privacycheck{ letter-spacing: 0.1em; }
}

.wpcf7-response-output { width: 100%; font-size: 20px; border: 1px solid #002348!important; color: #002348; font-weight: bold; text-align: center; padding: 20px 6%!important; margin: 0 0 40px!important; }
@media screen and (max-width: 767px) {
	.wpcf7-response-output { padding: 6%!important; font-size: 1.6rem; }
}
span.wpcf7-not-valid-tip { margin: 5px 0; color: #002348; font-weight: bold; }
span.wpcf7-not-valid-tip:before {content:"！"; }
form ul.formlist>li.mail dd input:first-child+span.wpcf7-not-valid-tip{ margin-top: -5px; margin-bottom: 10px; }

.wpcf7-spinner{ position: absolute!important; bottom: -40px; right: 0; }




#sarabnr>.incnt{ max-width: 914px; }
#sarabnr>.incnt>.inwrap{ border: 1px solid #002348; display: flex; flex-direction: row; }
#sarabnr .txtbox{width: 100%;padding: 70px 30px 80px;padding-left: 70px;color: #002348;}
#sarabnr .txtbox .sub{ text-align: center; margin-bottom: 40px; }
#sarabnr .txtbox .sub>.inwrap{ display: inline-block; padding-left: 10px; padding-right: 10px; font-size: 1.4rem; position: relative; }
#sarabnr .txtbox .sub>.inwrap::before,
#sarabnr .txtbox .sub>.inwrap::after{content: "";background: #002348;width: 1px;height: 14px;position: absolute;bottom: 8px;}
#sarabnr .txtbox .sub>.inwrap::before{ left: 0; transform: rotate(-45deg); }
#sarabnr .txtbox .sub>.inwrap::after{ right: 0; transform: rotate(45deg); }
#sarabnr .txtbox .mainbox{ display: flex;flex-direction: row;  }
#sarabnr .txtbox .mainbox .titlebox{ border-right: 1px solid #002348; padding-right: 40px; margin-right: 40px; display: flex; flex-direction: column; justify-content: center; flex-shrink: 0; text-align: center; }
#sarabnr .txtbox .mainbox .titlebox .jn{ font-size: 3.6rem; letter-spacing: 0.2em; line-height: 1.4; }
#sarabnr .txtbox .mainbox .txt{  display: flex; flex-direction: column; justify-content: center; }
#sarabnr .txtbox .mainbox .txt .jn{ font-size: 2rem; line-height: 1.8; margin-bottom: 5px; }
#sarabnr .txtbox .mainbox .txt .en{ font-size: 1.4rem; }
#sarabnr .imgbox{flex-shrink: 0;width: 35%;overflow: hidden;}
#sarabnr .imgbox img{ transition: .4s; transform: scale(1.06); }
#sarabnr>.incnt>.inwrap>.arr{ background: #002348; width: 49px; height: 49px; position: absolute; bottom: 0; right: 0; display: flex; align-items: center; justify-content: center; transition: .4s; }
#sarabnr>.incnt>.inwrap>.arr::before{ content: ""; background: url(../img/common/arr_white.svg) no-repeat; background-size: contain; width: 18px; height: 10px; display: inline-block; }
#sarabnr>.incnt>.inwrap:hover .imgbox img{ transform: scale(1.1); }
#sarabnr>.incnt>.inwrap:hover>.arr{ background: #00507e; }
@media screen and (max-width: 1040px){
	#sarabnr>.incnt>.inwrap{ display: block; }
	#sarabnr .txtbox{ padding: 50px 8% 50px;padding-left: 8%;}
	#sarabnr .imgbox{width: 100%;height: 300px;}
}
@media screen and (max-width: 767px){
	#sarabnr .txtbox { padding-bottom: 40px; }
	#sarabnr .txtbox .mainbox{ display: block; }
	#sarabnr .txtbox .sub{ margin-bottom: 20px; }
	#sarabnr .txtbox .mainbox .titlebox{ border-right: none; padding-right: 0; margin-right: 0;border-bottom: 1px solid #002348; padding-bottom: 25px; margin-bottom: 30px; display: block }
	#sarabnr .txtbox .mainbox .titlebox .jn{ font-size: 3rem;  }
	#sarabnr .txtbox .mainbox .txt{  display: block; text-align: center; }
	#sarabnr .txtbox .mainbox .txt .jn{ font-size: 1.8rem; margin-bottom: 5px; }
}
@media screen and (max-width: 500px){
	#sarabnr .txtbox{ padding: 40px 8% 35px;}
	#sarabnr .txtbox .mainbox .txt .jn{ font-size: 1.6rem; }
	#sarabnr .txtbox .mainbox .txt .jn+.en{ font-size: 1.2rem; margin-top: 5px; }
}



.businesstxt{font-size: 2.4rem;color: #fff;background: #002348;text-align: center;padding: 22px 20px 23px;margin-top: 60px;}
@media screen and (max-width: 1040px) {
	.businesstxt{font-size: 2rem;padding: 15px 6%;margin-top: 40px;}
}
@media screen and (max-width: 767px) {
	.businesstxt{font-size: 1.8rem;}
}