@charset "UTF-8";
/* -- COMMON -- */
@import url("https://fonts.googleapis.com/css2?family=Work+Sans:wght@500&display=swap");
@import url("https://fonts.googleapis.com/icon?family=Material+Icons");
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;500;600;700&display=swap');
/* -- DEFAULT -- */
@media (min-width: 768px){
    a[href^="tel:"]{pointer-events: none;}
}
* {
  min-height: 0%;
}

*, *:before, *:after {
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

body {
  padding: 0;
  margin: 0;
}

h1, h2, h3, h4, h5, p, em, span, figure, figcaption, dl, dt, dd {
  margin: 0;
  padding: 0;
}

em, span, a {
  font-size: inherit;
}

a {
  border: none;
  text-decoration: none;
}

ul, li {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

figure {
  margin: 0;
  padding: 0;
}

img {
  vertical-align: bottom;
}

input, button, select, textarea {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  border: none;
  outline: none;
  max-width: 100%;
}

body {
  z-index: 1;
}

* {
  font-size: 16px;
  font-style: normal;
  color: #333333;
  vertical-align: bottom;
}

@media only screen and (max-width: 767px) {
  *{font-size: 14px; line-height: 1.7;}
}

b, strong{font-weight: bold !important;}

*:not(.material-icons, .sans) {
  font-weight: 400;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", 'Noto Serif JP', serif;
}

.sans,
.sans * {
  font-weight: 400;
  font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic ProN", "Lato", "Yu Gothic", "YuGothic", "Meiryo", メイリオ, "ＭＳ Ｐゴシック", Helvetica, Arial, sans-serif;
}

.fontWs {
  font-family: "Work Sans", sans-serif;
  font-weight: 500;
}

.txt {
  font-size: 16px;
  line-height: 1.8em;
}
@media only screen and (max-width: 767px) {
  .txt {
    font-size: 14px;
    line-height: 1.7;
  }
}

.txt2,
.txt2 *{
  line-height: 2;
}
@media only screen and (max-width: 767px) {
  .txt2,
  .txt2 *{
    line-height: 1.7;
  }
}
.txtS{
  font-size: 14px;
}
@media only screen and (max-width: 767px) {
  .txtS{
    font-size: 12px;
  }
}
.cap {
  font-size: 10px;
}
.capBig,
.capBig *{
  font-size: 12px;
  line-height: 1.6;
}
@media only screen and (max-width: 767px) {
  .capBig,
  .capBig *{
    font-size: 10px;
  }
}
.indent {
  text-indent: 1em;
}

a {
  transition: all 0.3s;
  -webkit-transition: all 0.3s;
}

a.imgLink:hover {
  opacity: 0.8;
}

a.txtLink{
  text-decoration: underline;
  color: #0d8080;
}
a.txtLink:hover{opacity: .8;}

.bold{font-weight: bold;}

.icPdf::after {content: ''; display: inline-block; width: 20px; height: 22px; background: url(../img/common/ic_pdf.png); background-size: 100% 100%; margin-left: 5px; vertical-align: middle;}
.icLinkOut::after {content: ''; display: inline-block; width: 18px; height: 18px; background: url(../img/common/ic_link_out.png); background-size: 100% 100%; margin-left: 7px; vertical-align: middle; position: relative; top: -3px;}

.off a {
  opacity: 0.5;
  pointer-events: none;
}

.material-icons {
  font-size: 1.3em;
  font-family: "Material Icons";
}

.hide {
  display: none;
}
.sp {
  display: none;
}
@media only screen and (max-width: 767px) {
  body.fixed {
    overflow: hidden;
  }
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
}
.txtGr,
.txtGr * {
  color: #009333;
}

.txtGr2,
.txtGr2 * {
  color: #0D8080;
}

.txtGr3,
.txtGr3 * {
  color: #06A0B5;
}

.txtRd,
.txtRd * {
  color: #BB272D;
}

.txtRd2,
.txtRd2 * {
  color: #ff3300;
}
.txtRight{text-align: right;}

.mt10 {
  margin-top: 10px;
}
.mt20 {
  margin-top: 20px;
}
.mt40 {
  margin-top: 40px;
}
.mt100_80 {
  margin-top: 100px;
}
@media only screen and (max-width: 767px) {
  .mt100_80 {
    margin-top: 80px;
  }
}
.mt80_60 {
  margin-top: 80px;
}
@media only screen and (max-width: 767px) {
  .mt80_60 {
    margin-top: 60px;
  }
}
.mt60_40 {
  margin-top: 60px;
}
@media only screen and (max-width: 767px) {
  .mt60_40 {
    margin-top: 40px;
  }
}
.mt40_20 {
  margin-top: 40px;
}
@media only screen and (max-width: 767px) {
  .mt40_20 {
    margin-top: 20px;
  }
}

.mb80_60 {
  margin-bottom: 80px;
}
@media only screen and (max-width: 767px) {
  .mb80_60 {
    margin-bottom: 60px;
  }
}
.mb60_40 {
  margin-bottom: 60px;
}
@media only screen and (max-width: 767px) {
  .mb60_40 {
    margin-bottom: 40px;
  }
}

.core {
  max-width: 1020px;
  width: calc(100% - 40px);
  margin-left: auto;
  margin-right: auto;
}
.coreWide {
  max-width: 1200px;
  width: calc(100% - 40px);
  margin-left: auto;
  margin-right: auto;
}

.flexbox {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
@media only screen and (min-width: 768px) {
  .flexpc {
    display: flex;
    justify-content: space-between;
  }
}
@media only screen and (max-width: 767px) {
  .flexsp {
    display: flex;
    justify-content: center;
  }
}

.colL {
  order: 1;
}
.colR {
  order: 2;
}

.align-ct {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .align-ctpc {
    text-align: center;
  }
}
@media only screen and (max-width: 767px) {
  .align-ctsp {
    text-align: center;
  }
}
.align-left{text-align: left !important;}

.imgBox {
  text-align: center;
}

figure {
  display: inline-block;
}
figure.imgCapBox {
  position: relative;
}
figure.imgCapBox figcaption {
  position: absolute;
  right: 10px;
  bottom: 10px;
  font-size: 12px;
  text-align: right;
  margin-top: 0.3em;
}
figure.imgCapBox figcaption.wh {
  color: white;
}
figure[class*=inCap] {
  position: relative;
}
figure[class*=inCap] figcaption {
  font-size: 10px;
  color: #fff;
  margin-top: 0;
  position: absolute;
  bottom: 5px;
  right: 5px;
  left: 5px;
}
figure.inCapL figcaption {
  text-align: left;
}
figure.inCapR figcaption {
  text-align: right;
}

img:not(.wdImg) {
  max-width: 100%;
}

figure.wdImg,
figure.wdImg img,
img.wdImg {
  width: 100%;
  max-width: none;
}

.anchor:before {
  content: "";
  display: block;
  padding-top: 65px;
  margin-top: -65px;
}

.anchorLink{position: relative;}
.anchorLink > div{position: absolute; top: -96px; left: 0;}

@media only screen and (max-width: 767px) {
  .anchorLink > div{top: -56px;}
}

/* megaNav*/
.megaNav a.icLout:after{content: ''; width: 12px; height: 12px; background: url("../img/common/ic_link_out_black.svg") no-repeat center center/100% auto; display: inline-block; margin-left: 6px; position: relative; top: 1px;}
.megaNav a.icLout:hover:after{background: url("../img/common/ic_link_out_green.svg") no-repeat center center/100% auto; }
.megaNav a:hover{color: #009333;}
.megaNav a.isActive{color: #009333; pointer-events: none;}

.navPage *{font-size: 16px; line-height: 1.5;}
.navPage a:hover{color: #009333;}

.navPage .navRow:not(:last-of-type){margin-bottom: 10px;}
.navPage .navRow2:not(:last-of-type){margin-bottom: 30px;}
.navPage .navTit{border-bottom: 1px solid #009333; padding-bottom: 8px; margin-bottom: 10px;}
.navPage .navChild *{font-size: 14px; line-height: 1.5;}
.navPage .navChild li:not(:last-of-type){margin-bottom: 7px;}
.navPage .navChild ul{margin: 9px 0 9px 1em;}
.navPage .navSns{display: flex; justify-content: space-between; width: 240px;}
.navLinkNone{pointer-events: none;}

@media only screen and (min-width: 768px) {
  .navPage{display: flex; justify-content: space-between; align-items: flex-start; flex-wrap: wrap;}
  .navPage .navItem{margin-bottom: 40px;}
  .navPage .navCol{max-width: 200px; width: 23%;}
  .navPage .navCol:nth-of-type(1) .navItem:nth-of-type(1){margin-bottom: 60px;}
  .navPage .navCol:nth-of-type(3) .navItem:nth-of-type(1){margin-bottom: 30px;}
  .navPage .navCol:nth-of-type(5){width: 100%; margin-right: 0; max-width: 100%;}
  .navPage .navCol:nth-of-type(5){display: flex; justify-content: space-between; align-items: center;}
  .navPage .navLink{display: flex; flex-wrap: wrap; width: calc(100% - 160px);}
  .navPage .navLink li:not(:last-of-type):after{content: '／'; display: inline-block; padding: 0 0.5em;}  
}

@media only screen and (max-width: 767px) {
  .navPage .navItem{margin-bottom: 20px;}
  .navPage .navItem1{border-bottom: 1px solid #009333; padding-bottom: 8px;}
  .navPage .navItem1 a{display: block;}
  .navPage .navTitSp{border-bottom: 1px solid #009333; padding-bottom: 8px; margin-bottom: 10px; position: relative;}
  .navPage .navTitSp:after{content: ''; position: absolute; top: 4px; right: 3px; border: solid #009333; border-width: 0 1px 1px 0; display: inline-block; padding: 4px; transform: rotate(45deg); -webkit-transform: rotate(45deg); transition: .3s;}
  .navPage .navTitSp.isShow:after{transform: rotate(-135deg); -webkit-transform: rotate(-135deg); top: 8px;}
  .navPage .navCol:not(:last-of-type) .navChild{display: none;}  
  .navPage .navCol:nth-of-type(4) .navChild *{font-size: 16px;}
  .navPage .navSns{margin-top: 20px;}
}

.navBtnReq{border: 1px solid #009333; color: #009333; display: block; padding: 12px 0 11px; text-align: center;}
.navBtnReq:hover{background: #009333; color: #fff !important; opacity: 1;}
.navBtnSite{background: #28C9B5; position: relative; display: block; padding: 20px 0; text-align: center;}
.navBtnSite span{text-align: left; color: #fff !important; display: inline-block; line-height: 1.5;}
.navBtnSite:hover{opacity: 1; background: #06a0b5;}

@media only screen and (min-width: 768px) {
  .navBtnReq{margin-bottom: 20px;}
  .navBtnSite:before{content: ''; position: absolute; top: 7px; left: 7px; bottom: 7px; right: 7px; border: 1px solid #fff;}
}

@media only screen and (max-width: 767px) {
  .navBtn{display: flex; justify-content: space-between; align-items: flex-start;}
  .navBtn a{width: 48%;}
  .navBtnSite{padding: 13px 0 12px;}
}

.navHead{color: #009333; font-weight: bold;}

.navVisitor{display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 50px;}
.navVisitor .navCol{width: 19.75%;}
.navVisitor .navCol:nth-of-type(2){width: 21%;}
.navVisitor .navTit{font-size: 14px; line-height: 1.5;}
.navVisitor .navTit:after{content: ''; border: solid #009333; border-width: 0 1px 1px 0; display: inline-block; padding: 3px; transform: rotate(45deg); -webkit-transform: rotate(45deg); margin-left: 8px; line-height: 1; position: relative; top: -3px; transition: .3s;}
.navVisitor .navTit.isShow:after{transform: rotate(-135deg); -webkit-transform: rotate(-135deg); top: 0;}
.navVisitor .navChild{padding-top: 10px; display: none;}
.navVisitor .navChild *{font-size: 12px; line-height: 1.5;}
.navVisitor .navChild li{margin-top: 7px;}

@media only screen and (max-width: 1023px) and (min-width: 768px) {
  .navVisitor .navCol{width: calc(20% - 16px);}
  .navVisitor .navCol:not(:last-of-type){margin-right: 20px;}
}

@media only screen and (max-width: 767px) {
  .navVisitor{flex-wrap: wrap; justify-content: flex-end; margin-bottom: 0;}  
  .navVisitor .navCol{margin-bottom: 20px;}
  .navVisitor .navCol:nth-of-type(2n+1){width: 44%;}
  .navVisitor .navCol:nth-of-type(2n),
  .navVisitor .navCol:nth-of-type(5){width: 56%;}
  .navVisitor .navTit{font-size: 16px;}
}

.navFoot{display: flex; justify-content: center; flex-wrap: wrap;}
.navFoot li{margin: 0 15px;}
.navFoot a{font-size: min(4vw,14px);}
.navFoot a:before{content: ''; border: solid #009333; border-width: 0 1px 1px 0; display: inline-block; padding: 3px; transform: rotate(-45deg); -webkit-transform: rotate(-45deg); margin: 0 8px 0 0; position: relative; top: -2px;}

@media only screen and (max-width: 767px) {
  .navFoot{justify-content: flex-start;}
  .navFoot li{margin: 0; width: 50%;}  
}

/* Header */
header{position: fixed; top: 0; left: 0;  width: 100%; background: #fff; z-index: 500; height: 96px; display: flex; justify-content: space-between; align-items: center;}
header:before{content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 96px; background: #fff; display: none; z-index: 270;}
header.isShow:before{display: block;}
h1{margin-left: 35px; position: relative; z-index: 300;}

@media only screen and (max-width: 1200px) {
  h1{margin-left: 20px;}
}
@media only screen and (max-width: 767px) {
  header,
  header:before{height: 56px;}
  h1 img{width: 180px;}
}

/* Btn Menu*/
.btnMenu{background: #009333; position: absolute; z-index: 300; top: 0; right: 0;}
.btnMenu:hover{background: #0D8080;}
.btnMenu span{height: 1px; position: absolute; background: #fff; display: block; transition: .3s;}

.btnMenu.isClose span:nth-of-type(1){transform: rotate(35deg); -webkit-transform: rotate(35deg);}
.btnMenu.isClose span:nth-of-type(2){opacity: 0;}
.btnMenu.isClose span:nth-of-type(3){transform: rotate(-35deg); -webkit-transform: rotate(-35deg);}

@media only screen and (min-width: 768px) {
  .btnMenu{width: 125px; height: 96px;}
  .btnMenu span{width: 50px; left: 38px;}
  .btnMenu span:nth-of-type(1){top: 33px;}
  .btnMenu span:nth-of-type(2){top: 47px;}
  .btnMenu span:nth-of-type(3){top: 61px;}
  .btnMenu.isClose span:nth-of-type(1),
  .btnMenu.isClose span:nth-of-type(3){top: 47px;}
}

@media only screen and (max-width: 767px) {
  .btnMenu{width: 74px; height: 56px;}
  .btnMenu span{width: 30px; left: 22px;}
  .btnMenu span:nth-of-type(1){top: 18px;}
  .btnMenu span:nth-of-type(2){top: 27px;}
  .btnMenu span:nth-of-type(3){top: 36px;}
  .btnMenu.isClose span:nth-of-type(1),
  .btnMenu.isClose span:nth-of-type(3){top: 27px;}
}

/* Btn Overview */
.btnOverv{border: 1px solid #999999; font-size: 13px; line-height: 1.8; text-align: center; width: 230px; height: 25px; position: absolute; top: 15px; right: 185px; color: #333333;}
.btnOverv:after{content: ''; position: absolute; top: 10px; right: 12px; border: solid #999999; border-width: 0 1px 1px 0; display: inline-block; padding: 2px; transform: rotate(-45deg); -webkit-transform: rotate(-45deg);}
.btnOverv:hover{background: #999; color: #fff;}
.btnOverv:hover:after{border: solid #fff; border-width: 0 1px 1px 0;}

@media only screen and (max-width: 1200px) {
  .btnOverv{right: 150px;}
}

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

/* Gnav */
.gNav{position: absolute; top: 41px; left: 0; z-index: 200; width: 100%; padding: 0 125px 0 280px; display: flex; justify-content: flex-end;}
.gNavOverlay{background: rgba(0,0,0,.5); position: fixed; top: 96px; bottom: 0; right: 0; left: 0; z-index: 180; display: none;}
.gNavItem{margin-right: 60px;}
.gNavItem > a{cursor: pointer; letter-spacing: 0.1em; position: relative; display: block; height: 55px; padding: 10px 0 0 0;}
.gNavItem > a:hover{color: #0D8080;}
.gNavItem > a.gNavLink.isActive{color: #0D8080; pointer-events: none;}

.gNavTit.isActive{color: #0D8080;}
.gNavTit:after{content: ''; position: absolute; bottom: 0; left: 0; right: 0; margin: 0 auto; transition: .3s; opacity: 0;
 width: 0; height: 0; border-left: 12px solid transparent; border-right: 12px solid transparent; border-bottom: 19px solid #0D8080;}
.gNavTit.isShow:after{opacity: 1;}

.gNavOuter{display: none; background: #0D8080; position: absolute; top: 100%; left: 0; right: 0; width: 100%; padding: 20px;}
.gNavOuter *{color: #fff; font-weight: bold; letter-spacing: 0.1em;}
.gNavInner{max-width: 980px; margin: 0 auto; display: flex;}
.gNavTop{margin: 50px 0; width: 36%;}
.gNavTop a{width: 200px; border: 1px solid #fff; padding: 5px 0; text-align: center; display: block;}
.gNavTop a.isActive{background: #fff; color: #0D8080; pointer-events: none;}
.gNavTop a:hover{background: #fff; color: #0D8080;}
.gNavBig{font-size: 18px;}
.gNavSmall{margin-left: 1.2em;}
.gNavChild{display: flex; width: 64%;}
.gNavChild li:not(:last-of-type){margin-right: 15%;}
.gNavChild li p:not(:first-of-type){margin-top: 3px;}
.gNavChild a.isActive{opacity: .7; text-decoration: underline; pointer-events: none;}
.gNavChild a:hover{opacity: .7; text-decoration: underline;}
.gNavChild a.icLout:after{content: ''; width: 14px; height: 14px; background: url("../img/common/ic_link_out_white.svg") no-repeat center center/100% auto; display: inline-block; margin-left: 6px; position: relative; top: 1px;}

@media only screen and (max-width: 1200px) {
  .gNavItem{margin-right: 25px;}
}

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

/* Menu */
.menu{background: #fff; position: fixed; top: 0; left: 0; width: 100%; height: 100%; overflow: auto; z-index: 250; display: none;}
.menu .megaNav{padding: 140px 0 50px 0;}
.menu .navHead{margin-bottom: 10px;}
.menu .navVisitor{padding: 20px 0; border-bottom: 1px solid #009333; border-top: 1px solid #009333;}

@media only screen and (max-width: 767px) {
  .menu .megaNav{padding: 80px 0 50px 0;}
  .menu .navVisitor{border-bottom: none;}
}

/* Footer */
.footerWrap{padding: 40px 0;}
.footerLogo{margin-bottom: 50px;}
.copyright{font-size: 12px; line-height: 1.5; text-align: center; color: #fff; background: #009333; padding: 10px 0;}

footer .navHead{position: relative; margin-bottom: 20px;}
footer .navHead:after{content: ''; position: absolute; top: 50%; right: 0; width: calc(100% - 10.5em); height: 1px; background: #009333;}

footer .navPage{padding-bottom: 40px;}

@media only screen and (max-width: 1399px) and (min-width: 768px) {
  footer{padding-bottom: 90px;}
}
@media only screen and (max-width: 767px) {
  footer{padding-bottom: 50px;}
  .footerLogo{text-align: center;}
}

/* Relative Link*/
.relink{background: #ececec; padding: 30px 0; text-align: center;}
.relinkTit{font-size: 28px; line-height: 1; color: #009333; margin-bottom: 30px;}
.relinkBnr a:hover,
.relinkBnr2 a:hover{opacity: .7;}

@media only screen and (min-width: 768px) {
  .relinkBnr{display: flex; flex-wrap: wrap; justify-content: space-between;}
  .relinkBnr li{width: 31.7%; margin: 0 2.45% 2.45% 0;}
  .relinkBnr li:nth-of-type(3n){margin-right: 0;}
  
  .relinkBnr2{display: flex; flex-wrap: wrap; justify-content: space-between;}
  .relinkBnr2 li{width: 49%;}
}

@media only screen and (max-width: 767px) {
  .relinkBnr li,
  .relinkBnr2 li{width: 100%; margin: 0 0 20px;}
  .relinkBnr img,
  .relinkBnr2 img{width: 100%;}
}

/* lowerpage */
.lowerpage .mvWrap {
  margin-bottom: 80px;
}
@media only screen and (max-width: 767px) {
  .lowerpage .mvWrap {
    margin-bottom: 40px;
  }
}
.lowerpage .pageTitBar {
  display: block;
  padding: 0px 20px 30px;
  margin-bottom: 60px;
}
.lowerpage .pageTitBar > div {
  align-items: center;
}
.lowerpage .pageTitBar .lowerTit02 {
  font-size: 30px;
  color: white;
}
.lowerpage .pageTitBar .titEn {
  font-size: 23px;
  color: white;
}
@media only screen and (max-width: 767px) {
  .lowerpage .pageTitBar {
    padding: 10px 20px;
    margin-bottom: 60px;
  }
  .lowerpage .pageTitBar .lowerTit02 {
    font-size: 20px;
  }
  .lowerpage .pageTitBar .titEn {
    font-size: 16px;
    text-align: right;
  }
}
.lowerpage .main {
  padding-bottom: 80px;
}
@media only screen and (max-width: 767px) {
  .lowerpage .main {
    padding-bottom: 50px;
  }
}
.lowerpage .lower-tit01 {
  display: block;
  color: white;
  font-size: 26px;
  margin-bottom: 40px;
  width: 360px;
  text-align: center;
  transform: translateX(-80px);
}
@media only screen and (max-width: 767px) {
  .lowerpage .lower-tit01 {
    font-size: 12px;
    min-width: 110px;
    width: auto;
    display: inline-block;
    padding: 0 20px;
    transform: translateX(-10px);
  }
}
.lowerpage .lower-tit02 {
  font-size: 32px;
  margin-bottom: 40px;
}
.lowerpage .lower-tit03 {
  font-size: 20px;
  margin-bottom: 10px;
}
@media only screen and (max-width: 767px) {
  .lowerpage .lower-tit01,
  .lowerpage .lower-tit02 {
    font-size: 18px;
    margin-bottom: 30px;
  }
  .lowerpage .lower-tit03 {
    font-size: 16px;
  }
}

body {
  overflow-x: hidden;
}

body,
.hdWrap {
  max-width: 100vw;
}

.fadeIn {
  opacity: 0;
  transform: translateY(0);
  transition: all 1s;
}
.fadeInUp {
  opacity: 0;
  transform: translateY(20px);
  transition: all 1s;
}
.fadeInDown {
  opacity: 0;
  transform: translateY(-20px);
  transition: all 1s;
}
.fadeInRight {
  opacity: 0;
  transform: translateX(20px);
  transition: all 1s;
}
.fadeInLeft {
  opacity: 0;
  transform: translateX(-20px);
  transition: all 1s;
}

.lodingfade {
  -webkit-animation: lodingfade 1s ease both;
  animation: lodingfade 1s ease both;
}

@-webkit-keyframes lodingfade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes lodingfade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* main */
.imgL .imgCol {
  order: 1;
}
.imgL .txtCol {
  order: 2;
}
.imgR .txtCol {
  order: 1;
}
.imgR .imgCol {
  order: 2;
}

.wrapper {
  margin-top: 95px;
}
@media only screen and (max-width: 767px) {
  .wrapper {
    margin-top: 55px;
  }
}

.sliderWrap .slick-prev,
.sliderWrap .slick-next {
  border-top: 1px solid white;
  border-right: 1px solid white;
}
.sliderWrap .slick-prev:before,
.sliderWrap .slick-next:before {
  content: none;
}
.sliderWrap .slick-prev {
  transform: rotate(-135deg);
}
.sliderWrap .slick-next {
  transform: rotate(45deg);
}

/* -------
	media
------- */
@media only screen and (min-width: 1081px) {
  .mdv {
    display: none !important;
  }
}
@media only screen and (max-width: 1080px) {
  .wdv {
    display: none !important;
  }
}
@media only screen and (min-width: 768px) {
  .spv {
    display: none !important;
  }
}
@media only screen and (max-width: 767px) {
  .pcv {
    display: none !important;
  }
}
/*# sourceMappingURL=common.css.map */

.container {max-width: 1010px; width: calc(100% - 40px); margin: 0 auto;}
.container1100 {max-width: 1100px; width: calc(100% - 40px); margin: 0 auto;}
.main {padding: 80px 0 120px;}

@media only screen and (max-width: 767px) {
  .main {padding: 50px 0 70px; overflow: hidden;}
}

.mv {position: relative; border-bottom: 10px solid #0d8080;}
.mv:before{content: ''; height: 27.6vw; display: block; width: 100%;}
.mvTitWrap {position: absolute; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); left: 0; right: 0; margin: 0 auto; width: 570px; height: 180px; background: rgba(7, 94, 17, 0.8); display: flex; flex-wrap: wrap; align-items: center; justify-content: space-around;}
.mvTit {font-size: 36px; font-weight: bold; color: #fff; line-height: 1.3; text-align: center;}
.mvTit span {display: block; color: #fff;}
.mvTitS {font-size: 18px; line-height: 1.5; font-weight: bold; padding-bottom: 0.2em;}
.mvTitM {font-size: 26px; line-height: 1.5; font-weight: bold;}

/* MEDIA */
@media only screen and (max-width: 1080px) {
  .mvTitWrap {height: 110px; width: 330px;}
  .mvTit {font-size: 20px;}
  .mvTitS {font-size: 14px; padding-bottom: 0;}
  .mvTitM {font-size: 16px;}
}

@media only screen and (max-width: 767px) {
  .mv{border-bottom: 7px solid #0d8080;}
  .mv:before{height: 200px;}
  .mvTitWrap{position: static; width: 100%; height: 76px; transform: translateY(0); -webkit-transform: translateY(0); background: #009333;}
}

/* floatBnr*/
.floatBnr{z-index: 100; position: fixed;}

@media only screen and (min-width: 1400px) {
  .floatBnr {top: 96px; right: 0; width: 125px; height: calc(100vh - 96px); min-height: 480px; max-height: 660px; border: 1px solid #0d8080; background: rgba(255, 255, 255, 0.8); display: flex; flex-direction: column; justify-content: center; align-items: center;}
  .floatBnr a {line-height: 1em; font-size: 18px; padding: 20px 0; letter-spacing: 0.2em; writing-mode: vertical-rl; word-break: keep-all;}
  .floatBnr a:not(:first-of-type) {border-top: 1px solid #009333;}
  .floatBnr a:hover{color: #009333;}
}

@media only screen and (max-width: 1399px) and (min-width: 768px) {
  .floatBnr{bottom: 0; left: 0; right: 0; margin: 0 auto; width: 650px; border: 1px solid #0d8080; background: #fff; display: flex; justify-content: center; box-shadow: rgba(13, 128, 128, 0.3) 0px 5px 15px;}
  .floatBnr a {line-height: 1em; font-size: 18px; padding: 30px 20px; letter-spacing: 0.2em; position: relative;}
  .floatBnr a:not(:last-of-type):after{content: ''; position: absolute; right: 0; top: 30px; bottom: 30px; background: #009333; width: 1px;}  
  .floatBnr a:hover{color: #009333;}
}

@media only screen and (max-width: 767px) {
  .floatBnr{bottom: 0; left: 0; width: 100%; background: #fff; padding: 1px; display: flex; justify-content: space-between;}
  .floatBnr a{width: calc((100% - 2px) / 3); height: 75px; font-size: 13px; line-height: 1.1; display: flex; flex-direction: column; align-items: center; justify-content: space-evenly; flex-wrap: wrap; text-align: center; color: #fff; font-family: 'Noto Sans JP', sans-serif;}
  .floatBnr a:before{ content: '';}
  .floatBnr a br{height: 0;}
  .floatBnr_app{width: calc(20.2% - 3px) !important;}
  .floatBnr_am { background: #69d4c4;}
  .floatBnr_req { background: #47a0b4;}
  .floatBnr_cap { background: #269632;}
  .floatBnr_app:before{width: 16px; height: 20px; background: url("../img/common/fbnr_ic01.svg") no-repeat top left/100% auto;}
  .floatBnr_am:before{width: 37px; height: 22px; background: url("../img/common/fbnr_ic02.svg") no-repeat top left/100% auto;}
  .floatBnr_req:before{width: 25px; height: 25px; background: url("../img/common/fbnr_ic04.svg") no-repeat top left/100% auto;}
  .floatBnr_cap:before{width: 20px; height: 22px; background: url("../img/common/fbnr_ic03.svg") no-repeat top left/100% auto;}
  .floatBnr_cap{letter-spacing: -0.1em;}
}

/* List Btn */
[class*="listBtn"]{display: flex; flex-wrap: wrap;}
[class*="listBtn"] li {position: relative; overflow: hidden;}
[class*="listBtn"] li::after { content: ""; position:absolute; width:40px; height:40px; transform:rotate(45deg); background-color:#fff; right: -20px; top: -20px; border: 2px solid #0d8080; z-index: 2;}
[class*="listBtn"] li a {border: 2px solid #0d8080; position: relative; display: flex; align-items: center; line-height: 1.5; padding: 0 25px 8px 28px; transition: all 0.2s; text-decoration: none !important; height: 82px;}
[class*="listBtn"] li a::before {content: ""; position: absolute; right: 15px; top: calc(50% - 8px); padding: 8px 8px 0 0; border-top: 1px solid #0D8080; border-right: 1px solid #0D8080; transform: rotate(45deg);}
[class*="listBtn"] li a::after {content: ''; width: 100%; height: 5px; position: absolute; left: 0; bottom: 5px; background: #0d8080;}
[class*="listBtn"] li a:hover {background: #d9f9f9;}

[class*="listBtn"] li.soon{pointer-events: none;}
[class*="listBtn"] li.soon:before{content: 'Coming Soon'; background: rgba(13,128,128,.6); position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1; color: #fff; display: flex; justify-content: center; align-items: center; letter-spacing: 0.02em; padding-bottom: 10px; font-size: 18px;}

[class*="listBtn2"] li{width: 48%; margin-bottom: 3%; margin-right: 4%;}
[class*="listBtn2"] li:nth-of-type(2n){margin-right: 0;}

.listBtn2T{margin-bottom: 120px;}
.listBtn2BS{max-width: 730px; margin: 120px auto 0;}

[class*="listBtn3"] li{width: 32%; margin-bottom: 2%; margin-right: 2%;}
[class*="listBtn3"] li:nth-of-type(3n){margin-right: 0;}
.listBtn3B{margin-top: 120px;}

[class*="listBtn1"] li{width: 100%; margin: 0 auto; max-width: 480px;}

[class*="listBtnF"] li{width: 100%;}
[class*="listBtnF"] li a{background: #0d8080;}
[class*="listBtnF"] li a::after {background: #fff;}
[class*="listBtnF"] li a::before {border-color: #fff;}
[class*="listBtnF"] li a span {color: #fff;}
[class*="listBtnF"] li a:hover {background: #129c9c;}
.listBtnFB {margin-top: 120px;}

@media only screen and (max-width: 767px) {
  [class*="listBtn"] li {width: 100% !important; margin: 0 0 20px !important;}
  [class*="listBtn"] li a {padding: 0 25px 8px 15px;}
  .listBtn2T{margin-bottom: 80px;}
  .listBtn2BS{margin: 80px auto 0;}
  .listBtn3B{margin-top: 80px;}
  .listBtnFB {margin-top: 80px;}
}

.titleBig{font-size: 25px; line-height: 1.6; font-weight: bold; text-align: center; margin-bottom: 15px;}
.title{font-size: 20px; line-height: 1.6; font-weight: bold; margin-bottom: 10px;}
.titleLine{font-size: 25px; line-height: 1.6; font-weight: bold; padding-bottom: 10px; margin-bottom: 40px; position: relative; text-align: center;}
.titleLine:after{content: ''; width: 50px; height: 2px; background: #000; position: absolute; bottom: 0; left: 0; right: 0; margin: 0 auto; display: block;}
.title2{font-size: 18px; line-height: 1.6; font-weight: bold; margin-bottom: 10px;}

@media only screen and (max-width: 767px) {
  .titleBig{font-size: 18px;}
  .titleLine{font-size: 22px;}
  .title{font-size: 18px;}
  .title2{font-size: 16px;}
}

[class*="listLink"] li a{text-decoration: underline; color: #0d8080;}
[class*="listLink"] li a:hover{opacity: .7;}
.listLink li{position: relative; padding-left: 1.5em; margin-top: 8px;}
.listLink li:before{content: '→'; display: inline-block; position: absolute; top: 0; left: 0;}

.listLink2 li{position: relative; padding-left: 1.2em; margin-top: 8px;}
.listLink2 li:before{content: '・'; position: absolute; top: 0; left: 0;}


.icScroll{display: none;}

@media only screen and (max-width: 767px) {
  .spScroll{overflow-x: auto; -webkit-overflow-scrolling: touch; padding-bottom: 10px;}
  .spScroll::-webkit-scrollbar {height: 4px;}
  .spScroll::-webkit-scrollbar-track {background: #eee;}
  .spScroll::-webkit-scrollbar-thumb {background: #aaa; border: none;}
  .spScroll::-webkit-scrollbar-thumb:hover {background: #999;}  
  
  .icScroll{text-align: center; display: flex; align-items: center; justify-content: flex-end; font-size: 14px; font-weight: 500; margin-top: 15px;}
  .icScroll:before{content: ''; background: url("../img/common/ic_scroll.png") no-repeat top left/100% auto; width: 32px; height: 28px; margin-right: 10px;}
}
