@charset "UTF-8";

@import url('//fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@900&display=swap');
@import url('//fonts.googleapis.com/css2?family=Oswald:wght@400;600&display=swap');
@import url('//fonts.googleapis.com/css2?family=Inter:wght@700&display=swap');


/*
base #333
blue #1b2b57

font-family: 'Oswald', sans-serif;
font-weight: 400;
font-weight: 600;
font-family: 'Noto Sans JP', sans-serif;
font-weight: 900;
*/


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


// Common


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



body { font-family: 'Hiragino Kaku Gothic Pro','ヒラギノ角ゴ Pro W3','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif; font-size: 1.6rem; color: #333; line-height: 2; }
@media screen and (max-width: 767px) {
	body { font-size: 1.4rem; }
}



.noscrpt p { padding: 5px; background: #1b2b57; font-weight: bold; text-align: center; }

.mincho { font-family: yu-mincho-pr6n,"游明朝体",YuMincho,"Yu Mincho","ヒラギノ明朝 Pro W3","Hiragino Mincho Pro","ＭＳ Ｐ明朝","MS PMincho",serif; }
.gothic { font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; }
.tategaki { -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; display: inline-block; text-align: left; }
.roboto { font-family: Roboto, 'Roboto', sans-serif; letter-spacing: 0.05em; }
.noto { font-family: 'Noto Sans JP', sans-serif; letter-spacing: 0.14em; }
.inter { font-family: 'Inter', sans-serif; letter-spacing: 0.05em; }



.txtsmall { font-size: 1.4rem; }
.txtbig.s1 { font-size: 2.4rem; }
.txtbig.s2 { font-size: 2.0rem; }
@media screen and (max-width: 767px) {
	.txtbig.s1,
	.txtbig.s2 { font-size: 1.8rem; }
}

.txtblue { color: #1b2b57; }
.txtskyblue { color: #7CD0F1; }
.txtblack { color: #333; }
.txtwhite { color: #fff; }
.txtlight { color: #f7f7f7; }
.txtgrey { color: #aaa; }
.txtred { color: #BD0A0F; }
.txtyellow { color: #ffff00; }

.bgblue { background: #1b2b57; }
.bgskyblue { background: #7CD0F1; }
.bgblack { background: #333; }
.bgwhite { background: #fff; }
.bglight { background: #f7f7f7; }
.bggrey { background: #aaa; }
.bgred { background: #BD0A0F; }
.bgyellow { background: #ffff00; }

.borderblue { border: 1px solid #1b2b57; }
.borderskyblue { border: 1px solid #7CD0F1; }
.borderblack { border: 1px solid #333; }
.borderwhite { border: 1px solid #fff; }
.borderlight { border: 1px solid #f7f7f7; }
.bordergrey { border: 1px solid #aaa; }
.borderyellow { border: 1px solid #ffff00; }
.borderred { border: 1px solid #BD0A0F; }

.markerblue { background: linear-gradient(transparent 60%, #1b2b57 0%); }
.markerskyblue { background: linear-gradient(transparent 60%, #7CD0F1 0%); }
.markerblack { background: linear-gradient(transparent 60%, #333 0%); }
.markerwhite { background: linear-gradient(transparent 60%, #fff 0%); }
.markerlight { background: linear-gradient(transparent 60%, #f7f7f7 0%); }
.markergrey { background: linear-gradient(transparent 60%, #aaa 0%); }
.markerred { background: linear-gradient(transparent 60%, #BD0A0F 0%); }
.markeryellow { background: linear-gradient(transparent 60%, #ffff00 0%); }

blockquote:before, blockquote:after,
q:before, q:after { content: ''; content: none; }
blockquote{ border-left: 4px solid #ccc; padding-left: 10px; font-style: italic; color: #aaa; }
blockquote p { font-style: italic; }

.iframe { clear: both; text-align: center; position: relative; width: 100%; padding-top: 56.25%; }
.iframe iframe { position: absolute; top: 0; right: 0; width: 100% !important; height: 100% !important; }

p.indent,
ul.indent li,
ol.indent li { padding-left: 1em!important; text-indent: -1em; }

p.caution,
ul.caution li { padding-left: 1em!important; text-indent: -1em; }
p.caution:before,
ul.caution li:before { content:"※"!important; }

ul.none li,
.editbody ul.none li { padding-left: 0!important; text-indent: 0!important; }
ul.none li:before { content: ""!important; }

ul.inbrock li { display: inline-block; margin-right: 1em; }
ul.inbrock li:last-child { margin-right: 0; }
@media screen and (max-width: 639px){
	ul.inbrock li { display: block; }
}

ul.dotlist li { padding-left: 1em!important; text-indent: -1em; }
ul.dotlist li:before { content:"●"!important; color: #1b2b57; font-size: 0.7em; margin-right: 0.3em; }


a { transition: 0.3s; text-decoration: none; color: inherit; }
a.btn, button { transition: 0.6s; color: inherit; }
a.opacity:hover, a.opacity:active { opacity: 0.7; color: #333; }
@media screen and (max-width: 640px) {
	a { transition: none; }
	a.opacity:hover, a.opacity:active { opacity: 1; }
}

.btnbox { text-align: center; }
.btnbox a, .btnbox button { text-align: center; margin: 0 5px 10px; }
@media screen and (max-width: 767px) {
}

table.base, table.type1 { width: 100%; margin: 10px 0; margin-bottom: 5px; }

table.base th, table.base td,
table.type1 th, table.type1 td { padding: 20px 2%; line-height: 1.5; border: 1px solid #ccc; }

table.type1 thead th { background: #eee; text-align: center; }
table.type1 tbody th { background: #f7f7f7; }

.secwrap { padding: 80px 0; }
.secwrap.min { padding: 40px 0; }
.secwrap.wide { padding: 120px 0 140px; }
.secwrap.fin { margin-bottom: 80px; }
.secwrap>.section:last-child { margin-bottom: 0; }
@media screen and (max-width: 1040px){
}
@media screen and (max-width: 767px){
	.secwrap { padding: 60px 0; }
	.secwrap.wide { padding: 80px 0 80px; }
}
@media screen and (max-width: 767px){
}

.greysection{ background: #f7f7f7; }


.section { margin-bottom: 160px; }
.section.middle { margin-bottom: 130px; }
.section.fin { margin-bottom: 100px; }
.section:last-child { margin-bottom: 0; }
@media screen and (max-width: 1040px){
	.section { margin-bottom: 140px; }
	.section.middle { margin-bottom: 100px; }
	.section.fin { margin-bottom: 80px; }
}
@media screen and (max-width: 767px){
	.section { margin-bottom: 100px; }
	.section.middle { margin-bottom: 80px; }
	.section.fin { margin-bottom: 60px; }
}

.insec{ margin-bottom: 50px; }
.insec.middle{ margin-bottom: 80px; }
.insec.wide{ margin-bottom: 100px; }
.insec:last-child { margin-bottom: 0; }
@media screen and (max-width: 1040px){
	.insec.wide { margin-bottom: 80px; }
	.insec.middle{ margin-bottom: 60px; }
}
@media screen and (max-width: 767px){
	.insec{ margin-bottom: 40px; }
	.insec.middle{ margin-bottom: 50px; }
	.insec.wide { margin-bottom: 60px; }
}



.incnt { max-width: 1040px; width: 88%; margin: 0 auto; position: relative; }
.incnt.min { max-width: 880px; }
.incnt.wide { max-width: 1180px; }
.incnt.wider { max-width: 1300px; }
.incnt.fix { max-width: none; width: calc(100% - 120px); margin: 0 60px; }
.incnt.max { max-width: none; width: 100%; }
@media screen and (max-width: 1040px){
	.incnt, .incnt.max, .incnt.wider, .incnt.wide, .incnt.min { width: 88%; }
}
@media screen and (max-width: 767px){
	.incnt, .incnt.max, .incnt.wider, .incnt.wide, .incnt.min, .incnt.fix { width: 88%; margin: 0 auto; }
	.incnt.none { width: 100%; }
}

.bgbox { background: #f7f7f7; padding: 40px 60px; }
.bgbox.white { background: #fff; }
.bgbox.blue { background: #1b2b57;}
.bgbox.min { padding: 40px; }
.bgbox.wide { padding: 60px; }
@media screen and (max-width: 767px) {
	.bgbox, .bgbox.wide { padding: 60px; }
}
@media screen and (max-width: 639px) {
	.bgbox, .bgbox.wide { padding: 40px 8%; }
}

.borderbox { border: 1px solid #1b2b57; padding: 40px 60px; box-sizing: border-box; }
.borderbox.black { background: #333; }
.borderbox.min { padding: 40px; }
.borderbox.wide { padding: 60px; }
@media screen and (max-width: 767px) {
	.borderbox, .borderbox.wide { padding: 60px; }
}
@media screen and (max-width: 639px) {
	.borderbox { padding: 8%; }
}


.copy {margin-bottom: 20px;line-height: 1.8;font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;letter-spacing: 0.15em;font-feature-settings : "palt";font-size: 4rem;font-weight: bold;}
.copy span{ font-weight: bold; }
.copy.type2{ font-size: 3.2rem; }
body:not(#index) .copy.type2{ margin-bottom: 50px; }
@media screen and (max-width: 1280px) {
	.copy { font-size: 3rem; }
}
@media screen and (max-width: 1040px) {
	.copy { font-size: 2.2rem; text-align: center; }
	.copy.type2{ font-size: 2rem; }
	body:not(#index) .copy.type2{ margin-bottom: 20px; }
}


.titlebeforelinebox{ text-align: center; padding-top: 70px; position: relative; }
.titlebeforelinebox::before{content: "";background: #1b2b57;width: 1px;height: 47px;top: 0;left: 0;right: 0;margin-left: auto;margin-right: auto;display: inline-block;position: absolute;}
@media screen and (max-width: 1040px) {
}
@media screen and (max-width: 767px) {
	.titlebeforelinebox{ padding-top: 40px; }
	.titlebeforelinebox::before{height: 30px;}
}
@media screen and (max-width: 639px) {
}
@media screen and (max-width: 500px) {
}

.bottomlink{ margin-top: 40px; }
@media screen and (max-width: 1040px) {
	.bottomlink{ text-align: center; }
}
@media screen and (max-width: 767px) {
}
@media screen and (max-width: 639px) {
}
@media screen and (max-width: 500px) {
}

.linkbtn{ font-size: 1.8rem; background: #1b2b57; font-weight: bold; font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; border: 1px solid #1b2b57; letter-spacing: 0.1em; padding: 10px 75px; box-sizing: border-box; display: inline-block; min-width: 330px; max-width: 100%; text-align: center; position: relative; color: #fff; }
.linkbtn:before,
.linkbtn:after{ content: ""; display: inline-block; width: 40px; height: 6px; position: absolute; top: 0; bottom: 0; right: 15px; margin-top: auto; margin-bottom: auto; transition: .4s; }
.linkbtn:before{ background: url(../img/common/arr1.svg) no-repeat; background-size: contain; }
.linkbtn:after{ background: url(../img/common/arr1_blue.svg) no-repeat; background-size: contain; opacity: 0; }
.linkbtn:hover{ background: #fff; color: #1b2b57; }
.linkbtn:hover:before,
.linkbtn:hover:after{ right: 10px; }
.linkbtn:hover:after{ opacity: 1; }
.linkbtn:hover:before{ opacity: 0; }

.linkbtn._white{ background: #fff; border: 1px solid #fff; color: #262626; }
.linkbtn._white:before{ background: url(../img/common/arr1_black.svg) no-repeat; background-size: contain; }
.linkbtn._white:after{ background: url(../img/common/arr1.svg) no-repeat; background-size: contain; opacity: 0; }
.linkbtn._white:hover{ background: #262626; border: 1px solid #262626; color: #fff; }
.linkbtn._white:hover:after{ opacity: 1; }
.linkbtn._white:hover:before{ opacity: 0; }
@media screen and (max-width: 1040px) {
}
@media screen and (max-width: 767px) {
	.linkbtn{font-size: 1.6rem;min-width: inherit;width: 100%;max-width: 330px;padding: 10px 55px;}
	.linkbtn:before,
	.linkbtn:after{ width: 30px; height: 6px; right: 10px; }
	.linkbtn:hover:before,
	.linkbtn:hover:after{ right: 8px; }
}
@media screen and (max-width: 639px) {
}
@media screen and (max-width: 500px) {
	.linkbtn{ font-size: 1.5rem; }
}


.caselist{ display: flex; flex-direction: row; flex-wrap: wrap; margin-left: -25px; overflow: hidden; margin-bottom: -30px; }
.caselist>li{margin-left: 25px;width: calc(33.33% - 25px);display: flex;margin-bottom: 30px;}
.caselist>li>.inwrap{display: flex;flex-direction: column;width: 100%;}
.caselist .imgbox{width: 100%;height: 280px;position: relative;overflow: hidden;}
.caselist .imgbox>img{object-fit: cover;font-family: 'object-fit: cover;';width: 100%;height: 100%;z-index: -1;transition: .4s;}
.caselist .titlebox{ background: #fff; padding: 20px 8%; text-align: center; }
.caselist .titlebox .title{ font-weight: bold; }
.caselist .imgbox>.arr{ background: #1b2b57; position: absolute; bottom: 0; right: 0; width: 72px; height: 58px; }
.caselist .imgbox>.arr{ transition: .4s; }
.caselist .imgbox>.arr:before,
.caselist .imgbox>.arr:after{ content: ""; display: inline-block; width: 40px; height: 6px; position: absolute; top: 0; bottom: 0; right: 0; left: 0; margin: auto; transition: .4s; }
.caselist .imgbox>.arr:before{ background: url(../img/common/arr1.svg) no-repeat; background-size: contain; }
.caselist .imgbox>.arr:after{ background: url(../img/common/arr1_blue.svg) no-repeat; background-size: contain; opacity: 0; }
.caselist>li>.inwrap:hover .arr{ background: #fff; }
.caselist>li>.inwrap:hover .arr:after{ opacity: 1; }
.caselist>li>.inwrap:hover .arr:before{ opacity: 0; }
.caselist>li>.inwrap:hover .imgbox>img{ transform: scale(1.1); }
@media screen and (max-width: 1040px) {
	.caselist>li{ width: calc(50% - 25px); }
}
@media screen and (max-width: 767px) {
	.caselist{ display: block; margin-left: 0; }
	.caselist>li{ margin-left: 0; width: 100%; display: block; }
	.caselist>li>.inwrap{ display: block; }
	.caselist .imgbox{ height: 240px; }
}
@media screen and (max-width: 639px) {
}
@media screen and (max-width: 500px) {
}



.newslist>li{border-bottom: 1px solid #1b2b57;padding-bottom: 20px;margin-bottom: 20px;}
.newslist>li:last-child{border-bottom: 0;padding-bottom: 0;margin-bottom: 0;}
.newslist>li>dl{ display: flex; flex-direction: row; }
.newslist>li>dl>dt{ font-family: 'Inter', sans-serif; font-weight: bold; font-size: 1.8rem; color: #1b2b57; flex-shrink: 0; width: 150px; padding-right: 40px; box-sizing: border-box; }
.newslist>li>dl>dd{ padding-top: 2px; }
.newslist>li>dl>dd>a:hover{ opacity: 0.8; }
@media screen and (max-width: 1040px) {
}
@media screen and (max-width: 767px) {
	.newslist>li>dl{ display: block; }
	.newslist>li>dl>dt{ width: 100%; padding-right: 0; margin-bottom: 5px; font-size: 1.6rem; }
	.newslist>li>dl>dd{ padding-top: 0; }
}
@media screen and (max-width: 639px) {
}
@media screen and (max-width: 500px) {
}

.sectitlebox{ color: #1b2b57; text-align: center; margin-bottom: 60px; }
.sectitlebox .jntitle{font-weight: bold;font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;font-size: 3.6rem;line-height: 1.6;margin-bottom: 10px;letter-spacing: 0.15em;text-indent: 0.15em;}
.sectitlebox .jntitle span{ font-weight: bold; }
.sectitlebox .entitle>.inwrap{ font-family: 'Inter', sans-serif; font-weight: bold; font-size: 1.5rem; padding-bottom: 2px; position: relative; text-decoration: underline;letter-spacing: 0.05em; }
@media screen and (max-width: 1040px) {
	.sectitlebox{ margin-bottom: 40px; }
}
@media screen and (max-width: 767px) {
	.sectitlebox .jntitle{ font-size: 2.8rem; }
}
@media screen and (max-width: 639px) {
}
@media screen and (max-width: 500px) {
	.sectitlebox .jntitle{ font-size: 2.4rem; }
}



.recordslist>li{ padding-bottom: 45px; margin-bottom: 45px; border-bottom: 1px solid #1b2b57; padding-left: 8%; padding-right: 8%; }
.recordslist>li:last-child{ padding-bottom: 0; margin-bottom: 0; border-bottom: 0; }
.recordslist>li>dl{ display: flex; flex-direction: row; }
.recordslist>li>dl>dt{ font-weight: bold; font-size: 2.4rem; font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; color: #1b2b57; letter-spacing: 0.1em; line-height: 1.6; padding-right: 4%; flex-shrink: 0; width: 285px; box-sizing: border-box; }
.recordslist>li>dl>dd{ width: 100%; }
.recordslist>li>dl>dd .rlul{ columns: 2 auto; }
@media screen and (max-width: 1040px) {
	.recordslist>li{ padding-right: 0; }
	.recordslist>li>dl{ display: block; }
	.recordslist>li>dl>dt{ padding-right: 6%; width: 100%; margin-bottom: 30px; text-align: center; font-size: 2rem; }
}
@media screen and (max-width: 767px) { 
}
@media screen and (max-width: 639px) { 
}
@media screen and (max-width: 500px) { 
	.recordslist>li{ padding-bottom: 30px; margin-bottom: 30px; padding-left: 6%; padding-right: 6%; }
	.recordslist>li>dl>dt{ padding-right: 0; margin-bottom: 20px; }
	.recordslist>li>dl>dd .rlul{ columns: auto; }
}



.nametxt{  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; margin-top: 35px; text-align: right; margin-left: -10px; letter-spacing: 0.1em; }
.nametxt .headunit{ display: inline-block; vertical-align: middle; font-weight: bold; font-size: 1.8rem; margin-left: 10px; }
.nametxt .headunit span{ font-weight: bold; }
.nametxt .name{ display: inline-block; vertical-align: middle; font-weight: bold; font-size: 2.4rem; margin-left: 10px; }
@media screen and (max-width: 1040px) {
}
@media screen and (max-width: 767px) {
	.nametxt .headunit{ font-size: 1.6rem; line-height: 1.8; }
	.nametxt .name{ font-size: 2rem; }
}
@media screen and (max-width: 639px) {
}
@media screen and (max-width: 500px) {
}


.dllist{ border-top: 1px solid #1b2b57; }
.dllist>li{ border-bottom: 1px solid #1b2b57; }
.dllist>li>dl{ display: flex; flex-direction: row; }
.dllist>li>dl>dt,
.dllist>li>dl>dd{box-sizing: border-box;padding: 23px 0;}
.dllist>li:first-child>dl>dt::after,
.dllist>li>dl>dt::before{ content: ""; background: #262626; width: 100%; height: 2px; position: absolute; left: 0; }
.dllist>li:first-child>dl>dt::after{ top: -1px; }
.dllist>li>dl>dt::before{ bottom: -1px; }
.dllist>li>dl>dt{width: 182px;position: relative;padding-right: 20px; box-sizing: border-box; flex-shrink: 0; }
.dllist>li>dl>dd{ padding-left: 20px; width: 100%; }
@media screen and (max-width: 1040px) {
}
@media screen and (max-width: 767px) {
	.dllist>li>dl>dt{ width: 30%; }
}
@media screen and (max-width: 639px) {
}
@media screen and (max-width: 500px) {
}





.businessbnrlist{display: flex;flex-direction: row;margin-left: -30px;width: calc(100% + 30px);}
.businessbnrlist .titlebox{ display: flex; flex-direction: row; margin-bottom: 50px; }
.businessbnrlist .titlebox .topsectitlebox{ flex-shrink: 0; margin-bottom: 0; margin-right: 40px; margin-top: -10px; }
.businessbnrlist ._main,
.businessbnrlist ._sub{margin-left: 30px;width: calc(50% - 30px);display: flex;}
.businessbnrlist .txtbox{background: rgba(27, 43, 87, 0.2);padding: 80px 10% 60px;display: flex;flex-direction: column;justify-content: center;width: 100%;box-sizing: border-box;position: relative;z-index: 10;}
.businessbnrlist a.inwrap{ position: relative; color: #fff; overflow: hidden; }
.businessbnrlist .titlebox{margin-bottom: 40px;flex-direction: column;align-items: center;}
.businessbnrlist .titlebox .subtitle{ text-align: center; }
.businessbnrlist .titlebox .subtitle>.inwrap{ display: inline-block; padding-left: 25px; padding-right: 25px; position: relative; font-weight: bold; font-size: 1.8rem; }
.businessbnrlist .titlebox .subtitle>.inwrap:before,
.businessbnrlist .titlebox .subtitle>.inwrap:after{content: "";width: 14px;height: 3px;border-radius: 2px;background: #fff;display: inline-block;position: absolute;bottom: 0;left: 0;transform: rotate(60deg);top: 0;margin-top: auto;margin-bottom: auto;}
.businessbnrlist .titlebox .subtitle>.inwrap:after{right: 0;transform: rotate(-60deg);left: auto;}
.businessbnrlist .titlebox .maintitle{font-weight: bold;font-size: 3.2rem;letter-spacing: 0.2em;margin-bottom: 10px;line-height: 1.4;}
.businessbnrlist ._main .titlebox .maintitle{ letter-spacing: 0; }
.businessbnrlist ._main .txt{ text-align: center; }
.businessbnrlist .titlebox .entitle{font-weight: bold;font-size: 2.4rem;letter-spacing: 0;}
.businessbnrlist .arr{ background: #1b2b57; position: absolute; bottom: 0; right: 0; width: 72px; height: 58px; }
.businessbnrlist .arr{ transition: .4s; }
.businessbnrlist .arr:before,
.businessbnrlist .arr:after{ content: ""; display: inline-block; width: 40px; height: 6px; position: absolute; top: 0; bottom: 0; right: 0; left: 0; margin: auto; transition: .4s; }
.businessbnrlist .arr:before{ background: url(../img/common/arr1.svg) no-repeat; background-size: contain; }
.businessbnrlist .arr:after{ background: url(../img/common/arr1_blue.svg) no-repeat; background-size: contain; opacity: 0; }
.businessbnrlist a.inwrap:hover .arr{ background: #fff; }
.businessbnrlist a.inwrap:hover .arr:after{ opacity: 1; }
.businessbnrlist a.inwrap:hover .arr:before{ opacity: 0; }
.businessbnrlist .bg{position: absolute;top: 0;bottom: 0;left: 0;right: 0;object-fit: cover;font-family: 'object-fit: cover;';width: 100%;height: 100%;transition: .4s;}
.businessbnrlist a.inwrap:hover .bg{ transform: scale(1.1); }
.businessbnrlist ._main>.inwrap,
.businessbnrlist ._sub .list2>li>.inwrap{position: relative;display: flex;width: 100%;}
.businessbnrlist ._sub .list2{ width: 100%; }
.businessbnrlist._onesub ._main{min-height: 272px;display: flex;width: 58%;flex-shrink: 0;}
.businessbnrlist:not(._onesub) ._main{min-height: 575px;display: flex;}
.businessbnrlist._onesub ._sub .list2,
.businessbnrlist._onesub ._sub .list2>li{display: flex;width: 100%;}
.businessbnrlist:not(._onesub):not(._subonly) ._sub .list2{margin-bottom: -30px;overflow: hidden;}
.businessbnrlist:not(._onesub):not(._subonly) ._sub .list2>li{margin-bottom: 30px;height: calc(50% - 30px);display: flex;}
.businessbnrlist ._sub .list2>li .titlebox{ margin-bottom: 0; }
.businessbnrlist._subonly{ margin-left: 0; }
.businessbnrlist._subonly ._sub{margin-left: 0;width: 100%;}
.businessbnrlist._subonly ._sub .list2{margin-left: -20px;overflow: hidden;flex-direction: row;display: flex;}
.businessbnrlist._subonly ._sub .list2>li{margin-left: 20px;width: calc(50% - 20px);}
@media screen and (max-width: 1040px) {
	.businessbnrlist .titlebox{display: block;text-align: center;}
	.businessbnrlist .titlebox .txt{ text-align: left; }
	.businessbnrlist .titlebox .topsectitlebox{ margin-right: 0; margin-top: 0; margin-bottom: 30px; }
	.businessbnrlist .titlebox .subtitle{ margin-bottom: 10px; }
	.businessbnrlist .titlebox .maintitle{ font-size: 2.8rem; }
	.businessbnrlist .titlebox .entitle{ font-size: 2rem; }
	.businessbnrlist:not(._onesub):not(._subonly) ._sub .list2{ margin-bottom: -20px; }
	.businessbnrlist:not(._onesub):not(._subonly) ._sub .list2>li{ margin-bottom: 20px; height: calc(50% - 20px); }
	.businessbnrlist{ margin-left: -20px; }
	.businessbnrlist ._main,
	.businessbnrlist ._sub{ margin-left: 20px; width: calc(50% - 20px); }
	.businessbnrlist:not(._onesub) ._main{ min-height: inherit; }
}
@media screen and (max-width: 767px) {
	.businessbnrlist{ display: block; margin-left: 0; width: 100%;}
	.businessbnrlist ._main,
	.businessbnrlist ._sub{ margin-left: 0; width: 100%; display: block; }
	.businessbnrlist ._main{ min-height: inherit; margin-bottom: 20px; }
	.businessbnrlist ._sub .list2>li{ height: auto; }
	.businessbnrlist ._main a.inwrap,
	.businessbnrlist ._sub .list2>li a.inwrap{display: flex;align-items: center;justify-content: center;}
	.businessbnrlist .txtbox{ padding: 70px 8% 80px; }
	.businessbnrlist._subonly ._sub .list2{margin-left: 0;flex-direction: column;margin-bottom: -20px;}
	.businessbnrlist._subonly ._sub .list2>li{margin-left: 0;width: 100%;margin-bottom: 20px;}
	.businessbnrlist._onesub ._main{width: 100%}
	.businessbnrlist .titlebox .maintitle{ font-size: 2.4rem; margin-bottom: 3px; }
	.businessbnrlist .titlebox .subtitle>.inwrap{ font-size: 1.6rem; }
}
@media screen and (max-width: 639px) {
	.businessbnrlist ._main .txt{ text-align: left; }
}
@media screen and (max-width: 500px) {
}








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


Base


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



#header {width: 100%;z-index: 100;position: absolute;top: 0;left: 0;right: 0;}
#header .logo{display: flex;flex-direction: column;justify-content: center;height: 100%;}
#htop {display: flex;flex-direction: row;background: #fff;position: relative;box-sizing: border-box;justify-content: space-between;height: 100px;padding-left: 30px;}
#htop .cap {font-size: 1.4rem;color: #333;line-height: 1.8;text-align: right;font-weight: bold;margin-bottom: 5px;}
#htop .rightbox {display: flex;flex-direction: column;width: 100%;padding-right: 200px;position: relative;justify-content: flex-end;box-sizing: border-box;padding-left: 2%;}
.esgbcp {margin-left: -30px;display: flex;flex-direction: row;justify-content: flex-end;}
.esgbcp li {margin-left: 30px;}
.esgbcp li>.inwrap { display: flex; flex-direction: row; }
.esgbcp li>.inwrap div.imgbox {display: flex;flex-direction: column;justify-content: center;overflow: hidden;height: 100px;}
.esgbcp li._esg>.inwrap div.imgbox img {width: 115px;margin-top: 0;}
.esgbcp li._esg2>.inwrap div.imgbox img {width: 100px;margin-top: 0;}
.esgbcp li._bcp>.inwrap div.imgbox img {width: 77px;}
.esgbcp li>.inwrap div.txtbox {display: flex;flex-direction: column;justify-content: center;margin-left: 10px;line-height: 1.8;}
.esgbcp li>.inwrap div.txtbox p.title {font-weight: bold;transition: .4s;font-size: 1.4rem;}
.esgbcp li>.inwrap div.txtbox p.txt{font-size: 1.2rem;padding-left: 10px;text-decoration: underline;margin-top: 2px;}
.esgbcp li>a.inwrap:hover div.txtbox p.title{ color: #1b2b57; }

#htop .toplinklist{display: flex;flex-direction: row;position: absolute;top: 0;bottom: 0;right: 0;}
#htop .toplinklist>li{ display: flex; }
#htop .toplinklist>li>a{padding: 5px 10px;color: #fff;display: flex;align-items: center;width: 165px;justify-content: center;box-sizing: border-box;}
#htop .toplinklist>li>a>.txt{display: flex;padding-left: 30px;position: relative;min-height: 32px;line-height: 1.4;align-items: center;letter-spacing: 0.1rem;}
#htop .toplinklist>li>a>.txt>svg{position: absolute;top: 0;bottom: 0;left: 0;margin-top: auto;margin-bottom: auto;}
#htop .toplinklist>li>a>.txt>svg{ transition: .4s; }
#htop .toplinklist>li:nth-child(1)>a{ background: #1b2b57; }
#htop .toplinklist>li:nth-child(1)>a>.txt>svg{ width: 22px; height: 22px; }
#htop .toplinklist>li:nth-child(1)>a>.txt{font-size: 1.3rem;}
#htop .toplinklist>li:nth-child(2)>a{ background: #262626; }
#htop .toplinklist>li:nth-child(2)>a>.txt>svg{ width: 24px; height: 20px; }
#htop .toplinklist>li:nth-child(2)>a>.txt{font-family: 'Inter', sans-serif;font-weight: bold;font-size: 1.8rem;padding-left: 33px;}
#htop .toplinklist>li:nth-child(1)>a:hover,
#htop .toplinklist>li:nth-child(2)>a:hover{ background: #D5DCF0; }
#htop .toplinklist>li:nth-child(1)>a:hover{ color: #1b2b57; }
#htop .toplinklist>li:nth-child(2)>a:hover{ color: #262626; }
#htop .toplinklist>li:nth-child(1)>a:hover svg .st0{fill:#1b2b57;}
#htop .toplinklist>li:nth-child(2)>a:hover svg .st0{fill:#262626;}
#htop~.sidebox{padding-top: 45px;text-align: right;}
#header .logobox .logo img{width: 290px;}
/* #header.fixed { position: fixed; top: 0; background: #fff; background: rgba(255,255,255,0.97); animation: navfit 0.5s ease-out 0s 1 normal both; }
#header.fixed .mainbox { height: 80px; }
#header.fixed .logo img { width: 180px; } */
@media screen and (max-width: 1280px) {
	#htop{ display: none; }
	#header .logobox{ display: block; position: absolute; top: 60px; left: 60px; }
}
@media screen and (max-width: 767px) {
	#header .logobox{ top: 40px; left: 6%; }
}
@media screen and (max-width: 500px) {
	#header .logobox .logo img{ width: 230px; }
}
@keyframes navfit {
  0% { transform: translate(0px, -50px); }
  100% { transform: translate(0px, 0px);  }
}




.gnavlist._static {display: flex;justify-content: flex-end;color: #1b2b57;}
.gnavlist._static .navbox{ display: flex; flex-direction: row; justify-content: center; text-align: right; }
.gnavlist._static .navbox .main{ display: flex; }
.gnavlist._static li {display: flex;position: relative;align-items: center;margin-left: 1.3em;}
.gnavlist._static li:first-child,
.gnavlist._static li._1{ display: none; }
.gnavlist._static .hassub span { font-weight: bold; }
.gnavlist._static .hassub span._1{ text-align: center }
.gnavlist._static li a,
.gnavlist._static li p {text-decoration: none;position: relative;vertical-align: middle;cursor: pointer;text-align: center;line-height: 1.6;transition: .3s;letter-spacing: 0.1em;overflow: hidden;padding-bottom: 15px;padding-top: 10px;}
.gnavlist._static li a>span,
.gnavlist._static li p>span{ font-weight: bold; }
.gnavlist._static .main li ._fixed{ display: none; }
.gnavlist._fixed .main li ._fixed{ display: none; }
.gnavlist._static .main li a:before{ content: ""; background: #666666; display: inline-block; position: absolute; bottom: 0; left: 0; width: 0; height: 1px; transition: .3s }
.gnavlist._static .main li a:hover{ color: #666666; }
.gnavlist._static .main li a:hover:before { width: 100% }

.gnavlist._static .main>li.hassub{ position: relative; }
.gnavlist._static .main li>div.sub {opacity: 0;position: absolute;top: 51px;left: 50%;margin-left: -125px;min-width: 250px;box-sizing: border-box;padding: 30px 20px;z-index: 1000;background: #666666;color: #fff;text-align: center;transition: .3s;visibility: hidden;}
.gnavlist._static .main li>div.sub>ul{margin-left: -20px;display: block;text-align: center;}
.gnavlist._static .main li>div.sub>ul>li{ display: inline-block; text-align: left; margin-left: 20px }
.gnavlist._static .main li>div.sub a{ color: #fff }
.gnavlist._static .main li>div.sub a:hover{ color: #cccccc; }
.gnavlist._static .main li:hover>div.sub{ opacity: 1; visibility: visible; }

.gnavlist._static .bg .inwrap{ position: absolute; left: 0; top: 0; width: 100vw; height: 100vh; z-index: 2; background-color: #00a7db; opacity: 0; visibility: hidden; transition: all .6s; cursor: pointer; display: none; }

.gnavlist._fixed{ font-size: 1.6rem; text-align: left; }
.gnavlist._fixed{z-index: 100000000;position: fixed;top: 0;bottom: 0;right: -850px;transition: all .7s ease-out;width: 850px;display: block;overflow-y: scroll;visibility: hidden;pointer-events: none;padding-top: 200px;background: #1B2B57; scrollbar-width: none; -ms-overflow-style: none; }
.gnavlist._fixed::-webkit-scrollbar { display:none; }
.gnavlist._fixed .navbox{position: relative;z-index: 10;padding: 0 80px;width: 100%;box-sizing: border-box;}
.gnavlist._fixed .main li:first-child,
.gnavlist._fixed .main li._1{ display: block }

.gnavlist._fixed .bg{ position: absolute; top: 0px; right: 0px; bottom: 0px; left: 0px;  }
.gnavlist._fixed .bg .whitebg{ position: absolute; left: 0; top: 0; width: 100vw; height: 100vh; z-index: 2; background: #00a7db; cursor: default; opacity: 1; visibility: visible; display: block; }
.gnavlist._fixed.is-open{ pointer-events: auto; right: 0 }

.gnavlist._fixed .main li.sub{ display: block; }

/* sub */
.gnavlist._fixed .main{ height: auto; display: block; }
.gnavlist._fixed .main ul{display: block;line-height: 1.4;}
.gnavlist._fixed .main li{display: block;margin-left: 0;margin-bottom: 15px;color: #fff;height: auto;}
.gnavlist._fixed .main li a,
.gnavlist._fixed .main li p,
.gnavlist._fixed ._contact{font-family: 'Inter', sans-serif;letter-spacing: 0;font-weight: bold;color: #fff;line-height: 1.2;}
.gnavlist._fixed .main li:first-child a,
.gnavlist._fixed .main li:first-child p,
.gnavlist._fixed ._contact{ font-size: 3.6rem; }
.gnavlist._fixed .main li:not(:first-child) a,
.gnavlist._fixed .main li:not(:first-child) p{ font-size: 3rem; }
.gnavlist._fixed .main li a:hover{ opacity: 0.5; }
.gnavlist._fixed .main li a span,
.gnavlist._fixed .main li p span{font-weight: bold;}
.gnavlist._fixed .main li a:before{ content: none }
.gnavlist._fixed .main li a:hover{ color: #fff }
.gnavlist._fixed .main li:nth-child(n+4){ margin-bottom: 20px; }


.gnavlist._fixed .main li>div.sub {opacity: 1;visibility: visible;text-align: left;}
.gnavlist._fixed .main li>div.sub>ul{ margin-left: -30px; text-align: left }
.gnavlist._fixed .main li>div.sub>ul>li{ display: inline-block; margin-left: 30px; font-weight: bold; font-size: 1.8em; margin-bottom: 0; }
.gnavlist._fixed .main li>div.sub>ul>li:last-child{ border-bottom: 0 }
.gnavlist._fixed .main li>div.sub a{padding: 0;font-weight: normal;font-size: 1.8rem;letter-spacing: 0.1em; font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; }
.gnavlist._fixed .main li>div.sub a:hover{ color: #fff; }
.gnavlist._fixed .main li>div.sub{ border-top: 0 }

.gnavlist._fixed ._contact{ margin-top: 40px; }
.gnavlist._fixed ._contact>a{padding-left: 60px;color: #fff;position: relative;display: inline-block;}
.gnavlist._fixed ._contact>a>svg{ position: absolute; top: 0; bottom: 0; left: 0; margin-top: auto; margin-bottom: auto; width: 48px; height: 38px; }
.gnavlist._fixed ._contact>a:hover{ opacity: 0.5; }

.gnavlist._fixed .bottomtxt{margin-top: 120px;margin-bottom: 30px; margin-left: -20px; }
.gnavlist._fixed .bottomtxt ._policy{ display: inline-block; vertical-align: middle; margin-left: 20px; }
.gnavlist._fixed .bottomtxt ._policy>a{ color: #fff; text-decoration: underline; }
.gnavlist._fixed .bottomtxt ._policy>a:hover{ opacity: 0.5; }
.gnavlist._fixed .bottomtxt .cr{ color: #fff; display: inline-block; vertical-align: middle; margin-left: 20px; }

.gnavlist.is-open{ opacity: 1; visibility: visible; }
.gnavlist.is-open .inwrap{opacity: 1;visibility: visible;background: #1B2B57;width: 100%;height: 100%;}

.gnavlist .esgbcp {margin-left: -0;display: block;margin-top: 50px;}
.gnavlist .esgbcp li {margin-left: 0;}
.gnavlist .esgbcp li:not(:last-child){ margin-bottom: 20px; }
.gnavlist .esgbcp li>.inwrap{background: #fff;padding: 5px;color: #1b2b57;width: 100%;box-sizing: border-box;}
.gnavlist .esgbcp li._bcp>.inwrap{ padding: 20px; box-sizing: border-box; }
.gnavlist .esgbcp li._bcp>.inwrap .imgbox{ padding-right: 20px; box-sizing: border-box; }
.gnavlist .esgbcp li._bcp>.inwrap .txtbox{ margin-left: 0; }
.gnavlist .esgbcp li>.inwrap div.imgbox {overflow: none;height: auto;width: 120px;align-items: center;}

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


	.gnavlist._static{ display: none; }
	.gnavlist._fixed{right: -70%;width: 70%;padding-top: 150px; }
	.gnavlist._fixed .navbox{ padding: 0 8%; }
	.gnavlist._fixed .main li>div.sub a{ font-size: 1.6rem; }
	.gnavlist._fixed .bottomtxt{ margin-top: 100px; }
	.gnavlist._fixed .main li:first-child a,
	.gnavlist._fixed .main li:first-child p,
	.gnavlist._fixed ._contact{ font-size: 3.2rem; }
	.gnavlist._fixed .main li:not(:first-child) a,
	.gnavlist._fixed .main li:not(:first-child) p{ font-size: 2.6rem; }
}
@media screen and (max-width: 767px){
	.gnavlist._fixed{right: -100%;width: 100%;padding-top: 100px; }
	.gnavlist._fixed ._contact>a{ padding-left: 40px; }
	.gnavlist._fixed ._contact>a>svg{ width: 30px; height: 24px; }
	.gnavlist._fixed .main li:first-child a,
	.gnavlist._fixed .main li:first-child p,
	.gnavlist._fixed ._contact{ font-size: 2.6rem; }
	.gnavlist._fixed .main li:not(:first-child) a,
	.gnavlist._fixed .main li:not(:first-child) p{ font-size: 2rem; }
	.gnavlist._fixed .main li>div.sub>ul{ margin-left: -20px; }
	.gnavlist._fixed .main li>div.sub>ul>li{ margin-left: 20px; }
}
@media screen and (max-width: 639px){
}
@media screen and (max-width: 479px){
}


#menubtn {position: absolute;top: 120px;right: 48px;display: block;background: transparent;width: 100px;height: 100px;transition: .6s;cursor: pointer;z-index: 100000000001;}
#menubtn a {text-decoration: none;position: relative;display: block;height: 100%;width: 100%;background: transparent;transition: .6s;}
#menubtn a .line { width: 62px; height: 1px; background: #fff; position: absolute; left: 0; -webkit-transition: all 0.3s; transition: all 0.3s; display: inline-block; left: 0; right: 0; margin-left: auto; margin-right: auto; }
#menubtn a .line:nth-child(1) { top: 44px; }
#menubtn a .line:nth-child(2) { bottom: 44px; }
#menubtn.active a{ background: transparent; }
#menubtn.active a .line { background: #fff }
#menubtn.active a .line:nth-child(1) { transform: translateY(6px) rotate(-25deg); }
#menubtn.active a .line:nth-child(2) { transform: translateY(-6px) rotate(25deg); }
#header.scroll #menubtn{ top: -60px; }
#header.fixed #menubtn{ top: 30px; position: fixed; }
#header.fixed #menubtn a{ background: rgba(0,0,0,.3); }
.gnavlist._fixed.is-open~#menubtn{ top: 30px; }
.gnavlist._fixed.is-open~#menubtn a{ background: rgba(0,0,0,.3); }
@media screen and (max-width: 1280px){
	#menubtn {top: 30px;position: fixed;}
	#header.scroll #menubtn{ top:30px; }
	#header.fixed #menubtn{ top: 30px; }
}
@media screen and (max-width: 767px){
	#menubtn {top: 25px;position: fixed;}
	#header.scroll #menubtn{ top:25px; }
	#header.fixed #menubtn{ top: 25px; }
	.gnavlist._fixed.is-open~#menubtn{ top: 25px; }
	#menubtn {right: 6%;width: 60px;height: 60px;}
	#menubtn a .line{ width: 50px; }
	#menubtn a .line:nth-child(1) { top: 24px; }
	#menubtn a .line:nth-child(2) { bottom: 24px; }
	#menubtn.active a .line:nth-child(1) { transform: translateY(5px) rotate(-25deg); }
	#menubtn.active a .line:nth-child(2) { transform: translateY(-5px) rotate(25deg); }
}




body:not(#index) #mainv { height: 600px; position: relative; width: 100%; margin-bottom: 15px; }
body:not(#index) #mainv .txtbox{color: #fff;height: 100%;}
body:not(#index) #mainv .txtbox>.incnt{height: 100%;}
body:not(#index) #mainv .txtbox>.incnt>.inwrap{display: flex;flex-direction: column;padding-bottom: 60px;justify-content: flex-end;height: 100%;box-sizing: border-box; text-align: left;}
body:not(#index) #mainv .txtbox .entitle{ font-family: 'Inter', sans-serif; letter-spacing: 0; font-weight: bold; font-size: 8.4rem; color: #fff; line-height: 1.2; }
body:not(#index) #mainv .txtbox .jntitle{font-weight: normal;font-size: 2.8rem;letter-spacing: 0.1em;font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;font-weight: bold;}
body:not(#index) #mainv .txtbox .subtitle>.inwrap{ display: inline-block; padding-left: 25px; padding-right: 25px; position: relative; font-weight: bold; font-size: 2.4rem; text-align: center; }
body:not(#index) #mainv .txtbox .subtitle>.inwrap span{ font-weight: bold; }
body:not(#index) #mainv .txtbox .subtitle>.inwrap:before,
body:not(#index) #mainv .txtbox .subtitle>.inwrap:after{content: "";width: 19px;height: 3px;border-radius: 2px;background: #fff;display: inline-block;position: absolute;bottom: 0;left: 0;transform: rotate(60deg);top: 0;margin-top: auto;margin-bottom: auto;}
body:not(#index) #mainv .txtbox .subtitle>.inwrap:after{right: 0;transform: rotate(-60deg);left: auto;}
body:not(#index) #mainv .bg{position: absolute;top: 0;bottom: 0;left: 0;right: 0;object-fit: cover;font-family: 'object-fit: cover;';z-index: -1;width: 100%;height: 100%;}
body:not(#index)#contact #mainv .bg{ object-position: 14%; }
@media screen and (max-width: 1040px) {
	body:not(#index) #mainv { height: 500px; }
	body:not(#index) #mainv .txtbox .entitle{ font-size: 6.4rem; }
}
@media screen and (max-width: 767px) {
	body:not(#index) #mainv { height: 400px; }
	body:not(#index) #mainv .txtbox .entitle{ font-size: 5.4rem; }
	body:not(#index) #mainv .txtbox .jntitle{ font-size: 2.4rem; }
	body:not(#index) #mainv .txtbox .subtitle>.inwrap{ font-size: 1.8rem; }
}
@media screen and (max-width: 639px) {
	body:not(#index) #mainv .txtbox .entitle{ font-size: 4.4rem; }
	body:not(#index) #mainv .txtbox .jntitle{ font-size: 2rem; }
	body:not(#index) #mainv .txtbox .subtitle>.inwrap{ font-size: 1.4rem; line-height: 1.6; }
}
@media screen and (max-width: 500px) {
}


#pankuzu { line-height: 1.4; text-align: right; }
#pankuzu ol li { display:inline; font-size: 1.4rem; }
#pankuzu ol li:before { content:">"; display: inline-block; margin: 0 5px 0 3px }
#pankuzu ol li:first-child:before { display: none; }
#pankuzu ol li:first-child img{width: 14px;height: 14px;margin-bottom: 3px;}
#pankuzu ol li a{ text-decoration: none; }
#pankuzu ol li a:hover { opacity: 0.7; transition: 0.3s; }
@media screen and (max-width: 767px) {
	#pankuzu{ display: none; }
}


#index #main{margin-bottom: 150px;}
body:not(#index) #main { padding-top: 100px; }
@media screen and (max-width: 1040px) {
	body:not(#index) #main{ padding-top: 80px; }
}
@media screen and (max-width: 767px) {
	#index #main{ margin-bottom: 80px; }
	body:not(#index) #main { padding-top: 60px; }
}



/* #footer .contactbox>ul{ display: flex; flex-direction: row; } */
/* #footer .contactbox>ul>li{ width: 50%; } */
#footer .contactbox>ul>li>.inwrap{ padding: 60px 8% 50px; color: #fff; display: flex; align-items: center; justify-content: center; flex-direction: column; text-align: center; min-height: 290px; box-sizing: border-box; }
#footer .contactbox>ul>li>.inwrap .title{ font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; font-weight: bold; font-size: 2.4rem; letter-spacing: 0.1em; margin-bottom: 10px; }
#footer .contactbox>ul>li>.inwrap .link .mainlink>.inwrap{ font-family: 'Inter', sans-serif; font-weight: bold; font-size: 3.6rem; color: #fff; position: relative; line-height: 1.4; }
#footer .contactbox>ul>li>.inwrap .link .mainlink>.inwrap>svg{ position: absolute; top: 0; bottom: 0; left: 0; margin-top: auto; margin-bottom: auto; }
#footer .contactbox>ul>li>.inwrap .link .opentime{ font-size: 1.8rem; letter-spacing: 0.1em; }
#footer .contactbox>ul>li:nth-child(1)>.inwrap{ background: #1b2b57; }
#footer .contactbox>ul>li:nth-child(1)>.inwrap .link .mainlink>.inwrap{ padding-left: 40px; }
#footer .contactbox>ul>li:nth-child(1)>.inwrap .link .mainlink>.inwrap>svg{ width: 32px; height: 32px; }
#footer .contactbox>ul>li:nth-child(1)>.inwrap:hover{ background: #191919; }
#footer .contactbox>ul>li:nth-child(2)>.inwrap{ background: #191919; }
#footer .contactbox>ul>li:nth-child(2)>.inwrap .link .mainlink>.inwrap{ padding-left: 45px; }
#footer .contactbox>ul>li:nth-child(2)>.inwrap .link .mainlink>.inwrap>svg{ width: 34px; height: 28px; }
#footer .contactbox>ul>li:nth-child(2)>.inwrap .link .mainlink>.inwrap:hover{ opacity: 0.6; }
#footer .incnt.wider{max-width: inherit;margin-left: 8%;margin-right: 6%;}
@media screen and (max-width: 1040px) {
	#footer .contactbox>ul{ display: block; }
	#footer .contactbox>ul>li{ width: 100%; }
	#footer .contactbox>ul>li>.inwrap{ min-height: inherit; }
	#footer .incnt.wider{margin-left: auto; margin-right: auto;}
}
@media screen and (max-width: 767px) {
	#footer .contactbox>ul>li>.inwrap .title{ font-size: 2rem; }
	#footer .contactbox>ul>li>.inwrap .link .mainlink>.inwrap{ font-size: 2.8rem; }
	#footer .contactbox>ul>li>.inwrap .link .opentime{ font-size: 1.4rem; margin-top: 5px; }
	#footer .contactbox>ul>li:nth-child(1)>.inwrap .link .mainlink>.inwrap{ padding-left: 30px; }
	#footer .contactbox>ul>li:nth-child(1)>.inwrap .link .mainlink>.inwrap>svg{ width: 20px; height: 20px; }
	#footer .contactbox>ul>li:nth-child(2)>.inwrap .link .mainlink>.inwrap{ padding-left: 35px; }
	#footer .contactbox>ul>li:nth-child(2)>.inwrap .link .mainlink>.inwrap>svg{ width: 22px; height: 18px; }
}
@media screen and (max-width: 639px) {
}
@media screen and (max-width: 500px) {
}


#footer .footerinfo{ background: #f7f7f7; padding: 90px 0 20px; }
#footer .footerinfo>.incnt>.inwrap{ display: flex; flex-direction: row; }
#footer .footerinfo .infobox{ flex-shrink: 0; margin-right: 8%; }
#footer .footerinfo .infobox .logo{ margin-bottom: 40px; }
#footer .footerinfo .infobox .logo img{ max-width: 302px; width: 96%; }
#footer .footerinfo .infobox .inbox { display:flex; align-items: center; margin-top: 40px;}
#footer .footerinfo .infobox .inbox img{ max-width: 95px; width: 96%; margin-right: 20px;}
#footer .footerinfo .fnav{width: 100%;margin-top: -10px;}
#footer .footerinfo .fnav .mainlist>li .main,
#footer .footerinfo .fnav .mainlist{ margin-left: -30px; text-align: right; margin-bottom: -30px; overflow: hidden; }
#footer .footerinfo .fnav .mainlist>li .main>li,
#footer .footerinfo .fnav .mainlist>li{ margin-left: 30px; display: inline-block; vertical-align: top; margin-bottom: 30px; text-align: left; }
#footer .footerinfo .fnav .mainlist>li .main a,
#footer .footerinfo .fnav .mainlist>li>p>a,
#footer .footerinfo .fnav .mainlist>li>p{ font-family: 'Inter', sans-serif; font-weight: bold; font-size: 2.4rem; color: #1b2b57; }
#footer .footerinfo .fnav .mainlist>li .main{ display: flex; flex-direction: row; }
#footer .footerinfo .fnav a:hover{ opacity: 0.6; }
#footer .footerinfo .sublink{ margin-left: -10px; text-align: right; margin-top: 50px; }
#footer .footerinfo .sublink .txt{ display: inline-block; vertical-align: middle; margin-left: 10px; font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; font-weight: bold;  }
#footer .footerinfo .sublink .link{ display: inline-block; vertical-align: middle; margin-left: 10px; }
#footer .footerinfo .sublink .link:before{content: "";margin-right: 10px;background: url(../img/common/arr1_blue.svg) no-repeat;width: 40px;height: 6px;display: inline-block;vertical-align: 6px;}
#footer .footerinfo .sublink .link>a{ font-family: 'Inter', sans-serif; font-weight: bold; font-size: 2rem; color: #1b2b57; }
#footer .footerinfo .sublink .link>a:hover{ opacity: 0.6; }
@media screen and (max-width: 1200px) {
	#footer .footerinfo{ padding: 60px 0 30px; }
	#footer .footerinfo .infobox{ margin-right: 0%; }
	#footer .footerinfo>.incnt>.inwrap{display: block;margin-left: auto;margin-right: auto;text-align: center;}
	#footer .footerinfo .infobox .inbox { justify-content:center; }
	#footer .footerinfo .infobox .inbox p { text-align:left; }
	#footer .footerinfo .fnav{ display: none; }
	#footer .footerinfo .sublink{ text-align: center; }
}
@media screen and (max-width: 767px) {
	#footer .footerinfo .infobox .inbox img{ max-width: 80px; width: 96%; margin-right: 15px;}
}
@media screen and (max-width: 639px) {
}
@media screen and (max-width: 500px) {
	#footer .footerinfo .sublink{ margin-left: 0; }
	#footer .footerinfo .sublink .txt{ margin-left: 0; text-align: left; }
	#footer .footerinfo .sublink .link{ margin-left: 0; }
}


#footer .bottomribbon{ background: #1b2b57; padding: 20px 0; }
#footer .bottomribbon>.incnt>.inwrap{ display: flex; flex-direction: row; justify-content: space-between; }
#footer .bottomribbon .linklist{margin-left: -20px;flex-shrink: 0;}
#footer .bottomribbon .linklist>li{ margin-left: 20px; display: inline-block; vertical-align: middle; }
#footer .bottomribbon .linklist>li>a{ color: #fff; }
#footer .bottomribbon .linklist>li>a:hover{ opacity: 0.6; }
#footer .bottomribbon .cr{ font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;  }
#footer .flinks{text-align: center;margin-left: -20px;color: #fff;letter-spacing: 0.1em;width: 100%;box-sizing: border-box;padding-right: 130px;}
#footer .flinks>li{ display: inline-block; vertical-align: middle; margin-left: 20px; }
#footer .flinks>li>a{ text-decoration: underline; }
@media screen and (max-width: 1040px) {
	#footer .bottomribbon .linklist{ display: none; }
	#footer .bottomribbon>.incnt>.inwrap{ display: block; text-align: center; }
	#footer .flinks{ padding-right: 0; }
}
@media screen and (max-width: 767px) {
}
@media screen and (max-width: 639px) {
}
@media screen and (max-width: 500px) {
}





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


// Static Class


/////////////////////////////////////////////*/
.tl { text-align: left!important; }
.tc { text-align: center!important; }
.tr { text-align: right!important; }

.tcspl{ text-align: center; }
@media screen and (max-width: 767px) {
	.tcspl{ text-align: left; }
}

.inb { display: inline-block; }
.palt { font-feature-settings : "palt"; letter-spacing: 0.05em; }
.bold,
.bold span,
.bold li { font-weight: bold!important; }
.normal,
.normal span { font-weight: normal!important; }
.underline { text-decoration: underline!important; }
.linethrough { text-decoration: line-through!important; }

a.tel { text-decoration: none; cursor: default; }
a.tel:hover{ color: initial; }

.bt0{ border-top:0!important; }
.bb0{ border-bottom:0!important; }
.br0{ border-right:0!important; }
.bl0{ border-left:0!important; }
.b0{ border:0!important; }

.pt0 { padding-top: 0px !important; }
.pb0 { padding-bottom: 0px !important; }
.pl0 { padding-left: 0px !important; }
.pr0 { padding-right: 0px !important; }
.mt0 { margin-top: 0px !important; }
.mb0 { margin-bottom: 0px !important; }
.ml0 { margin-left: 0px !important; }
.mr0 { margin-right: 0px !important; }
.pt10 { padding-top: 10px !important; }
.pb10 { padding-bottom: 10px !important; }
.pl10 { padding-left: 10px !important; }
.pr10 { padding-right: 10px !important; }
.mt10 { margin-top: 10px !important; }
.mb10 { margin-bottom: 10px !important; }
.ml10 { margin-left: 10px !important; }
.mr10 { margin-right: 10px !important; }
.pt15 { padding-top: 15px !important; }
.pb15 { padding-bottom: 15px !important; }
.pl15 { padding-left: 15px !important; }
.pr15 { padding-right: 15px !important; }
.mt15 { margin-top: 15px !important; }
.mb15 { margin-bottom: 15px !important; }
.ml15 { margin-left: 15px !important; }
.mr15 { margin-right: 15px !important; }
.pt20 { padding-top: 20px !important; }
.pb20 { padding-bottom: 20px !important; }
.pl20 { padding-left: 20px !important; }
.pr20 { padding-right: 20px !important; }
.mt20 { margin-top: 20px !important; }
.mb20 { margin-bottom: 20px !important; }
.ml20 { margin-left: 20px !important; }
.mr20 { margin-right: 20px !important; }
.pt30 { padding-top: 30px !important; }
.pb30 { padding-bottom: 30px !important; }
.pl30 { padding-left: 30px !important; }
.pr30 { padding-right: 30px !important; }
.mt30 { margin-top: 30px !important; }
.mb30 { margin-bottom: 30px !important; }
.ml30 { margin-left: 30px !important; }
.mr30 { margin-right: 30px !important; }
.pt40 { padding-top: 40px !important; }
.pb40 { padding-bottom: 40px !important; }
.pl40 { padding-left: 40px !important; }
.pr40 { padding-right: 40px !important; }
.mt40 { margin-top: 40px !important; }
.mb40 { margin-bottom: 40px !important; }
.ml40 { margin-left: 40px !important; }
.mr40 { margin-right: 40px !important; }
.pt50 { padding-top: 50px !important; }
.pb50 { padding-bottom: 50px !important; }
.pl50 { padding-left: 50px !important; }
.pr50 { padding-right: 50px !important; }
.mt50 { margin-top: 50px !important; }
.mb50 { margin-bottom: 50px !important; }
.ml50 { margin-left: 50px !important; }
.mr50 { margin-right: 50px !important; }
.pt60 { padding-top: 60px !important; }
.pb60 { padding-bottom: 60px !important; }
.pl60 { padding-left: 60px !important; }
.pr60 { padding-right: 60px !important; }
.mt60 { margin-top: 60px !important; }
.mb60 { margin-bottom: 60px !important; }
.ml60 { margin-left: 60px !important; }
.mr60 { margin-right: 60px !important; }
.pt70 { padding-top: 70px !important; }
.pb70 { padding-bottom: 70px !important; }
.pl70 { padding-left: 70px !important; }
.pr70 { padding-right: 70px !important; }
.mt70 { margin-top: 70px !important; }
.mb70 { margin-bottom: 70px !important; }
.ml70 { margin-left: 70px !important; }
.mr70 { margin-right: 70px !important; }
.pt80 { padding-top: 80px !important; }
.pb80 { padding-bottom: 80px !important; }
.pl80 { padding-left: 80px !important; }
.pr80 { padding-right: 80px !important; }
.mt80 { margin-top: 80px !important; }
.mb80 { margin-bottom: 80px !important; }
.ml80 { margin-left: 80px !important; }
.mr80 { margin-right: 80px !important; }
.pt90 { padding-top: 90px !important; }
.pb90 { padding-bottom: 90px !important; }
.pl90 { padding-left: 90px !important; }
.pr90 { padding-right: 90px !important; }
.mt90 { margin-top: 90px !important; }
.mb90 { margin-bottom: 90px !important; }
.ml90 { margin-left: 90px !important; }
.mr90 { margin-right: 90px !important; }
.pt100 { padding-top: 100px !important; }
.pb100 { padding-bottom: 100px !important; }
.pl100 { padding-left: 100px !important; }
.pr100 { padding-right: 100px !important; }
.mt100 { margin-top: 100px !important; }
.mb100 { margin-bottom: 100px !important; }
.ml100 { margin-left: 100px !important; }
.mr100 { margin-right: 100px !important; }

.para-1 { margin-top: 10px!important; }
.para-2 { margin-top: 20px!important; }
.para-3 { margin-top: 30px!important; } @media screen and (max-width: 767px) { .para-3 { margin-top: 20px!important; } }
.para-4 { margin-top: 40px!important; } @media screen and (max-width: 767px) { .para-4 { margin-top: 30px!important; } }
.para-5 { margin-top: 50px!important; } @media screen and (max-width: 767px) { .para-5 { margin-top: 30px!important; } }
.para-6 { margin-top: 60px!important; } @media screen and (max-width: 767px) { .para-6 { margin-top: 40px!important; } }
.para-7 { margin-top: 70px!important; } @media screen and (max-width: 767px) { .para-7 { margin-top: 50px!important; } }
.para-8 { margin-top: 80px!important; } @media screen and (max-width: 767px) { .para-8 { margin-top: 50px!important; } }
.para-9 { margin-top: 90px!important; } @media screen and (max-width: 767px) { .para-9 { margin-top: 60px!important; } }
.para-10 { margin-top: 100px!important; } @media screen and (max-width: 767px) { .para-10 { margin-top: 60px!important; } }
.para-12 { margin-top: 120px!important; } @media screen and (max-width: 767px) { .para-12 { margin-top: 80px!important; } }
.para-14 { margin-top: 140px!important; } @media screen and (max-width: 767px) { .para-14 { margin-top: 80px!important; } }
.para-16 { margin-top: 160px!important; } @media screen and (max-width: 767px) { .para-16 { margin-top: 100px!important; } }
.para-18 { margin-top: 180px!important; } @media screen and (max-width: 767px) { .para-18 { margin-top: 100px!important; } }
.para-20 { margin-top: 200px!important; } @media screen and (max-width: 767px) { .para-20 { margin-top: 120px!important; } }
.para1 { margin-bottom: 10px!important; }
.para2 { margin-bottom: 20px!important; }
.para3 { margin-bottom: 30px!important; } @media screen and (max-width: 767px) { .para3 { margin-bottom: 20px!important; } }
.para4 { margin-bottom: 40px!important; } @media screen and (max-width: 767px) { .para4 { margin-bottom: 30px!important; } }
.para5 { margin-bottom: 50px!important; } @media screen and (max-width: 767px) { .para5 { margin-bottom: 30px!important; } }
.para6 { margin-bottom: 60px!important; } @media screen and (max-width: 767px) { .para6 { margin-bottom: 40px!important; } }
.para7 { margin-bottom: 70px!important; } @media screen and (max-width: 767px) { .para7 { margin-bottom: 50px!important; } }
.para8 { margin-bottom: 80px!important; } @media screen and (max-width: 767px) { .para8 { margin-bottom: 50px!important; } }
.para9 { margin-bottom: 90px!important; } @media screen and (max-width: 767px) { .para9 { margin-bottom: 60px!important; } }
.para10 { margin-bottom: 100px!important; } @media screen and (max-width: 767px) { .para10 { margin-bottom: 60px!important; } }
.para12 { margin-bottom: 120px!important; } @media screen and (max-width: 767px) { .para12 { margin-bottom: 80px!important; } }
.para14 { margin-bottom: 140px!important; } @media screen and (max-width: 767px) { .para14 { margin-bottom: 80px!important; } }
.para16 { margin-bottom: 160px!important; } @media screen and (max-width: 767px) { .para16 { margin-bottom: 100px!important; } }
.para18 { margin-bottom: 180px!important; } @media screen and (max-width: 767px) { .para18 { margin-bottom: 100px!important; } }
.para20 { margin-bottom: 200px!important; } @media screen and (max-width: 767px) { .para20 { margin-bottom: 120px!important; } }

.pad5 { padding: 5px; }
.pad10 { padding: 10px; }
.pad20 { padding: 20px; }
.pad30 { padding: 30px; }
.pad40 { padding: 40px; }
.pad50 { padding: 50px; }
.pad60 { padding: 60px; }
.pad70 { padding: 70px; }
.pad80 { padding: 80px; }
.pad90 { padding: 90px; }
.pad100 { padding: 100px; }
.pad120 { padding: 120px; }
.pad140 { padding: 140px; }
.pad160 { padding: 160px; }
.pad180 { padding: 180px; }
.pad200 { padding: 200px; }
.pad4 { padding: 4%; }
.pad6 { padding: 6%; }
.pad8 { padding: 8%; }
@media screen and (max-width: 767px){
	.pad20 { padding: 4%; }
	.pad30 { padding: 6%; }
	.pad40, .pad50, .pad60 { padding: 8%; }
	.pad70, .pad80, .pad90, .pad100 { padding: 12%; }
	.pad120, .pad140, .pad160, .pad180, .pad200 { padding: 16%; }

}
.w-10 { width: 10%; }
.w-20 { width: 20%; }
.w-30 { width: 30%; }
.w-40 { width: 40%; }
.w-45 { width: 45%; }
.w-50 { width: 50%; }
.w-55 { width: 55%; }
.w-60 { width: 60%; }
.w-70 { width: 70%; }
.w-80 { width: 80%; }
.w-90 { width: 90%; }

img.max200 { max-width: 200px; }
img.max300 { max-width: 300px; }
img.max400 { max-width: 400px; }
img.max450 { max-width: 450px; }
img.max500 { max-width: 500px; }
img.max600 { max-width: 600px; }
img.max700 { max-width: 700px; }
@media screen and (max-width: 767px) {
	img.max200, img.max300, img.max400, img.max450, img.max500, img.max600, img.max700 { display: block; margin-left: auto; margin-right: auto;  }
}

.ud0 { padding-top: 0px!important; padding-bottom: 0px!important; }
.ud5 { padding-top: 5px!important; padding-bottom: 5px!important; }
.ud10 { padding-top: 10px!important; padding-bottom: 10px!important; }
.ud20 { padding-top: 20px!important; padding-bottom: 20px!important; }
.ud30 { padding-top: 30px!important; padding-bottom: 30px!important; }
.ud40 { padding-top: 40px!important; padding-bottom: 40px!important; }
.ud60 { padding-top: 60px!important; padding-bottom: 60px!important; }
.ud80 { padding-top: 80px!important; padding-bottom: 80px!important; }
.ud100 { padding-top: 100px!important; padding-bottom: 100px!important; }
.ud120 { padding-top: 120px!important; padding-bottom: 120px!important; }
.ud140 { padding-top: 140px!important; padding-bottom: 140px!important; }
.ud160 { padding-top: 160px!important; padding-bottom: 160px!important; }
.ud180 { padding-top: 180px!important; padding-bottom: 180px!important; }
.ud200 { padding-top: 200px!important; padding-bottom: 200px!important; }
@media screen and (max-width: 767px){
	.ud20, .ud30 { padding-top: 20px!important; padding-bottom: 20px!important; }
	.ud40, .ud60 { padding-top: 40px!important; padding-bottom: 40px!important; }
	.ud80, .ud100 { padding-top: 60px!important; padding-bottom: 60px!important; }
	.ud120, .ud140 { padding-top: 80px!important; padding-bottom: 80px!important; }
	.ud160, .ud180, .ud200 { padding-top: 100px!important; padding-bottom: 100px!important; }
}

.tablethide { display: block; }
.tablethide.inb { display: inline-block; }
.tablethide.inline { display: inline; }
.tabletblock { display: none; }
@media screen and (max-width: 1040px) {
	.tablethide { display: none !important; }
	.tabletblock { display: block; }
	.tabletblock.inb { display: inline-block; }
	.tabletblock.inline { display: inline; }
}

.middlehide { display: block; }
.middlehide.inblock { display: inline-block; }
.middlehide.inline { display: inline; }
.middleblock { display: none; }
@media screen and (max-width: 767px) {
	.middlehide { display: none !important; }
	.middleblock { display: block; }
	.middleblock.inblock { display: inline-block; }
	.middleblock.inline { display: inline; }
}

.landhide { display: block; }
.landhide.inblock { display: inline-block; }
.landhide.inline { display: inline; }
.landblock { display: none; }
@media screen and (max-width: 639px) {
	.landhide { display: none !important; }
	.landblock { display: block; }
	.landblock.inblock { display: inline-block; }
	.landblock.inline { display: inline; }
}

.sphide { display: block; }
.sphide.inblock { display: inline-block; }
.sphide.inline { display: inline; }
.spblock { display: none; }
@media screen and (max-width: 500px) {
	.sphide { display: none !important; }
	.spblock { display: block; }
	.spblock.inblock { display: inline-block; }
	.spblock.inline { display: inline; }
}

.porthide { display: block; }
.porthide.inblock { display: inline-block; }
.porthide.inline { display: inline; }
.portblock { display: none; }
@media screen and (max-width: 400px) {
	.porthide { display: none !important; }
	.portblock { display: block; }
	.portblock.inblock { display: inline-block; }
	.portblock.inline { display: inline; }
}