@charset "UTF-8";
/* CSS Document */

/* ========================================
  Base / Reset Helpers
======================================== */
*{
  margin: 0px;
  padding: 0px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
}
body {
  font-family: 'Noto Sans JP','Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
  background-color: #FFF;
  color: #333;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  /*-webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";*/
  letter-spacing: 0em;
}
body{

}
::selection {
  background:#333;
  color: #FFF;/* Safari */
}

::-moz-selection {
  background:#333;
  color: #FFF;/* Firefox */
}
.clearfix {
  clear: both;
}
.onPc{
  display:block !important;
}
.onSmt{
  display:none !important;
}
.headclearfix {
  clear: both;
  width:100%;
  height:1px;
  display:block;
  float:left;
  margin-bottom:-1px;
}
a{
  color: #999;
}
a:hover{
  color: #22ac38;
}
a img.linkimg{
  background:none!important;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
a:hover img.linkimg{
  opacity:0.7;
  filter:alpha(opacity=70);
  -ms-filter: "alpha( opacity=70 )";
  background:none!important;
}
.imgRound{
  border-radius: 16px;
}
.imgshadow{
  box-shadow: 0 12px 10px -6px rgba(0,0,0,.3);
}

/* ========================================
  Utility: Spacing
======================================== */
.mt0{ margin-top:0;}
.mt05{ margin-top:5px;}
.mt10{ margin-top:10px;}
.mt15{ margin-top:15px;}
.mt20{ margin-top:20px;}
.mt25{ margin-top:25px;}
.mt30{ margin-top:30px;}
.mt40{ margin-top:40px;}
.mt50{ margin-top:50px;}
.mt60{ margin-top:60px;}
.mt70{ margin-top:70px;}
.mt80{ margin-top:80px;}
.mt90{ margin-top:90px;}
.mt100{ margin-top:100px;}
.mt110{ margin-top:110px;}
.mt120{ margin-top:120px;}
.mt130{ margin-top:130px;}
.mt140{ margin-top:140px;}
.mt150{ margin-top:150px;}
.mt160{ margin-top:160px;}

.mr0{ margin-right:0;}
.mr05{ margin-right:5px;}
.mr10{ margin-right:10px;}
.mr15{ margin-right:15px;}
.mr20{ margin-right:20px;}
.mr30{ margin-right:30px;}
.mr60{ margin-right:60px;}

.mb0{ margin-bottom:0;}
.mb05{ margin-bottom:5px;}
.mb10{ margin-bottom:10px;}
.mb15{ margin-bottom:15px;}
.mb20{ margin-bottom:20px;}
.mb25{ margin-bottom:25px;}
.mb30{ margin-bottom:30px;}
.mb40{ margin-bottom:40px;}
.mb50{ margin-bottom:50px;}
.mb60{ margin-bottom:60px;}
.mb70{ margin-bottom:70px;}
.mb80{ margin-bottom:80px;}
.mb90{ margin-bottom:90px;}
.mb100{ margin-bottom:100px;}
.mb110{ margin-bottom:110px;}
.mb120{ margin-bottom:120px;}
.mb130{ margin-bottom:130px;}
.mb140{ margin-bottom:140px;}
.mb150{ margin-bottom:150px;}
.mb160{ margin-bottom:160px;}
.mb170{ margin-bottom:170px;}
.mb180{ margin-bottom:180px;}

.ml0{ margin-left:0;}
.ml05{ margin-left:5px;}
.ml10{ margin-left:10px;}
.ml15{ margin-left:15px;}
.ml20{ margin-left:20px;}
.ml30{ margin-left:30px;}
.ml150{ margin-left:150px;}

.mW05{ margin:0 5px;}
.mW10{ margin:0 10px;}
.mW15{ margin:0 15px;}
.mW20{ margin:0 20px;}
.mW30{ margin:0 30px;}

.pt0{ padding-top:0;}
.pt02{ padding-top:2px;}
.pt03{ padding-top:3px;}
.pt04{ padding-top:4px;}
.pt05{ padding-top:5px;}
.pt10{ padding-top:10px;}
.pt15{ padding-top:15px;}
.pt20{ padding-top:20px;}
.pt30{ padding-top:30px;}
.pt40{ padding-top:40px;}
.pt50{ padding-top:50px;}
.pt60{ padding-top:60px;}
.pt70{ padding-top:70px;}
.pt80{ padding-top:80px;}
.pt90{ padding-top:90px;}
.pt100{ padding-top:100px;}

.pr0{ padding-right:0;}
.pr05{ padding-right:5px;}
.pr10{ padding-right:10px;}
.pr15{ padding-right:15px;}
.pr20{ padding-right:20px;}
.pr30{ padding-right:30px;}
.pr40{ padding-right:40px;}
.pr50{ padding-right:50px;}
.pr60{ padding-right:60px;}
.pr70{ padding-right:70px;}
.pr80{ padding-right:80px;}
.pr90{ padding-right:90px;}
.pr100{ padding-right:100px;}
.pr110{ padding-right:110px;}
.pr120{ padding-right:120px;}

.pb0{ padding-bottom:0;}
.pb03{ padding-bottom:3px;}
.pb04{ padding-bottom:4px;}
.pb05{ padding-bottom:5px;}
.pb07{ padding-bottom:7px;}
.pb10{ padding-bottom:10px;}
.pb15{ padding-bottom:15px;}
.pb20{ padding-bottom:20px;}
.pb30{ padding-bottom:30px;}
.pb40{ padding-bottom:40px;}
.pb50{ padding-bottom:50px;}
.pb60{ padding-bottom:60px;}
.pb70{ padding-bottom:70px;}
.pb80{ padding-bottom:80px;}
.pb90{ padding-bottom:90px;}
.pb100{ padding-bottom:100px;}

.pl0{ padding-left:0;}
.pl05{ padding-left:5px;}
.pl10{ padding-left:10px;}
.pl15{ padding-left:15px;}
.pl20{ padding-left:20px;}
.pl30{ padding-left:30px;}
.pl40{ padding-left:40px;}
.pl50{ padding-left:50px;}
.pl60{ padding-left:60px;}
.pl70{ padding-left:70px;}
.pl80{ padding-left:80px;}
.pl90{ padding-left:90px;}
.pl100{ padding-left:100px;}
.pl110{ padding-left:110px;}
.pl120{ padding-left:120px;}

.pW05{ padding:0 5px;}
.pW10{ padding:0 10px;}
.pW15{ padding:0 15px;}
.pW20{ padding:0 20px;}
.pW30{ padding:0 30px;}

.pd05{ padding: 5px;}
.pd10{ padding: 10px;}
.pd15{ padding: 15px;}
.pd20{ padding: 20px;}
.pd30{ padding: 30px;}
.pd40{ padding: 40px;}
.pd50{ padding: 50px;}
.pd60{ padding: 60px;}
/* ========================================
  Utility: Layout / Typography
======================================== */
.bd800{font-weight: 800;}
.bd700{font-weight: 700;}
.bd600{font-weight: 600;}
.bd500{font-weight: 500;}
.bd400{font-weight: 400;}
.bd300{font-weight: 300;}

.lh10{line-height: 1.0em;}
.lh12{line-height: 1.2em;}
.lh14{line-height: 1.4em;}
.lh16{line-height: 1.6em;}
.lh18{line-height: 1.8em;}
.lh20{line-height: 2.0em;}
.lh22{line-height: 2.2em;}
.lh25{line-height: 2.5em;}
.lh30{line-height: 3.0em;}

.text10{font-size:10px;}
.text11{font-size:11px;}
.text12{font-size:12px;}
.text13{font-size:13px;}
.text14{font-size:14px;}
.text15{font-size:15px;}
.text16{font-size:16px;}
.text17{font-size:17px;}
.text18{font-size:18px;}
.text19{font-size:19px;}
.text20{font-size:20px;}
.text22{font-size:22px;}
.text24{font-size:24px;}
.text26{font-size:26px;}
.text28{font-size:28px;}
.text30{font-size:30px;}
.text32{font-size:32px;}
.text34{font-size:34px;}
.text36{font-size:36px;}
.text38{font-size:38px;}
.text40{font-size:40px;}
.text42{font-size:42px;}
.text48{font-size:48px;}
.text60{font-size:60px;}

.alignLeft{text-align: left;}
.alignRight{text-align: right;}
.alignCenter{text-align: center;}

.font20{font-size: 2.0em;}
.font15{font-size: 1.5em;}
.font14{font-size: 1.4em;}
.font13{font-size: 1.3em;}
.font12{font-size: 1.2em;}
.font11{font-size: 1.1em;}
.font10{font-size: 1.0em;}
.font09{font-size: 0.9em;}
.font08{font-size: 0.8em;}
.font07{font-size: 0.7em;}
.font06{font-size: 0.6em;}
.font05{font-size: 0.5em;}
.font04{font-size: 0.4em;}
.font03{font-size: 0.3em;}

.flex {
  display: flex;
  width: 100%;
  height: auto;
  flex-flow: row wrap;
  box-sizing: border-box;
}
.itemCenter{align-items: center;}
.between{justify-content: space-between;}
.justifyCenter{justify-content: center;}
.flex.between::after {
  /*content: "";
  display: block;
  width: 30%;
  height: 0;*/
}

.box1080{
  width:100%;
  height:auto;
  margin: 0 auto;
  max-width: 1160px;
  box-sizing: border-box;
  padding-left: 40px;
  padding-right: 40px;
  position: relative;
}
.box800{
  width:100%;
  height:auto;
  margin: 0 auto;
  max-width: 880px;
  box-sizing: border-box;
  padding-left: 40px;
  padding-right: 40px;
  position: relative;

}
.box1280{
  width:100%;
  height:auto;
  margin: 0 auto;
  max-width:1320px;
  padding-left: 40px;
  padding-right: 40px;
  box-sizing: border-box;
  position: relative;
}

.box1600{
  width:100%;
  display:table;
  height:auto;
  margin: 0 auto;
  max-width:1680px;
  box-sizing: border-box;
  padding-left: 40px;
  padding-right: 40px;
  position: relative;

}
.box1600Pd{
  width:100%;
  display:table;
  height:auto;
  margin: 0 auto;
  max-width:1600px;
  box-sizing: border-box;
  padding-left: 40px;
  padding-right: 40px;
  padding-top: 60px;
  padding-bottom: 60px;
}
.headLogo{
  width: auto;
  height: auto;
  display:block;
  position: relative;
  transition-property: all;
  transition: 0.2s ease;
  opacity:1.0;
  float: left;
  display: flex;
  align-items: center;
}

.headLogo img{
  height: 30px;
  width:auto;
  display: block;
  transition-property: all;
  transition: 0.2s ease;
}
/*.topHead .headLogo img{
  filter: brightness(0) invert(1);
}
.topHead.on .headLogo img{
  filter: brightness(1) invert(0);
}*/

.contentBox {
  height: auto;
  width: 100%;
  margin: 0 auto;
  display:table;
  position: relative;
}

.ph100{
  width:100%;
  height:auto;
  display:inline-block;
  position: relative;
  z-index: 0;
}
.ph100 img{
  width:100%;
  height:auto;
  float:left;
  z-index: 0;
  position: relative;
}
.ph80{
  width:100%;
  height:auto;
  float:left;
  display:inline-block;
  position: relative;
  box-sizing: border-box;
  z-index: 0;
  text-align: center;
}
.ph80 img{
  width:80%;
  height:auto;
  z-index: 0;
  position: relative;
}

.moreBtn{
  width:100%;
  height:auto;
  float:left;
  display:flex;
  text-align:center;
  position: relative;
  justify-content: center;
}

.moreBtn a,.moreBtn span{
  width: 100%;
  height: 80px;
  display: flex;
  line-height: 1;
  font-size: 30px;
  color: #FFF;
  text-decoration: none;
  transition-property: all;
  transition: 0.2s ease;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  font-weight: 600;
  position: relative;
  letter-spacing: 0.03em;
  max-width: 600px;
  border-radius: 4px;
  align-items: center;
  justify-content: center;
  background-color: #00A68C;
}
.moreBtn a i{

}
/*.moreBtn a::before{
  content: '';
  font-size: 20px;
  line-height: 1;
  opacity: .75;
  color: white;
  position: absolute;
  top: calc(50% - 3.5px);
  right: 20px;
  width: 6px;
  height: 6px;
  border-right: 2px solid #FFF;
  border-bottom: 2px solid #FFF;
  transform: rotate(-45deg);
  transition: all ease 0.1s;
}*/
.moreBtn a:hover{
  opacity: 0.8;
}
.moreBtn.t-left{
  justify-content: flex-start;
}
.moreBtn.t-right{
  justify-content: flex-end;
}
.moreBtn.t-big a{
  max-width: 400px;
  height: 70px;
}
.moreBtn.t-min a{
  max-width: 100px;
  height: 30px;
  font-size: 11px;
}
.moreBtn.t-min a::before{
  right: 10px;
}

.goTopBtn{
  width:60px;
  height:60px;
  display:inline-block;
  position:fixed;
  right:20px;
  bottom:-90px;
  z-index:100;
  transition-property: all;
  transition: 0.6s ease;
  box-sizing: border-box;
  padding: 15px;
  background-color: #00A68C;
  border-radius: 8px;
}
.goTopBtn::before {

}
.goTopBtn::after {

}
.goTopBtn a{
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 101;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  transition-property: all;
  transition: 0.2s ease;
}
.goTopBtn.on{
  bottom:20px;
}
.goTopBtn.on:hover{

}
.goTopBtn img{
  width:100%;
  height:auto;

}
.goTopBtn img:hover{

}

.bd{
  font-weight: bold;
}

.fontEn{
  font-family: "Figtree", sans-serif;
  font-optical-sizing: auto;
}
.fontEn02{
}
.fontJp{
}
.pageMt{
  margin-top: 80px;
}
.bc {
  color: #333;
  display: inline-block;
  float: left;
  font-size: 11px;
  height: auto;
  letter-spacing: 0.08em;
  line-height: 20px;
  margin-bottom: 10px;
  margin-top: 10px;
  width: 100%;
  box-sizing: border-box;
}
.bc a {
  color: #666;
  text-decoration: underline;
}
.bc a:hover {
  color: #22ac38;
  text-decoration: underline;
}
.c-gold{
  color: #B5801F;
}
.c-gold02{
  color: #D9A82E;
}

.c-navy{
  color: #08245E;
}
.c-blue{
  color: #1047B5;
}
.c-red{
  color: #E5004F;
}
.c-org{
  color: #F75C04;
}
.c-blue02{
  color: #007FF5;
}
.c-grn{
  color: #34A753;
}
.wht{
  color: #FFF;
}

#menuButton{
  display: none;
}
#overlay{
  display: none;
}

.formBox {
  display: block;
  float: left;
  height: auto;

  width: 100%;
  margin-left:0%;
  margin-right:0%;
  margin-bottom: 40px;
  background-color: #fff;
  padding: 40px;
  border-radius: 16px;
  box-sizing: border-box;
}
.formBox dl {
  display: block;
  float: left;
  height: auto;
  width: 100%;
  margin-bottom:20px;
}

.formBox dt {
  box-sizing: border-box;
  display: inline-block;
  float: left;
  font-size: 16px;
  font-weight: bold;
  height: auto;
  line-height: 26px;
  padding: 24px 0px 0px;
  width: 25%;
  letter-spacing: 0;
}
.formBox dd {
  box-sizing: border-box;
  display: inline-block;
  float: left;
  font-size: 16px;
  height: auto;
  letter-spacing: 0.1em;
  line-height: 40px;
  padding-bottom: 0px;
  padding-left: 20px;
  padding-top: 17px;
  width: 75%;
}
.fm_form {
  border: 0px solid #f2f2f2;
  border-radius: 0;
  font-size: 16px;
  line-height: 38px;
  padding-left: 15px;
  width: 80%;
  background-color: #eee;
  border-radius: 8px;
  height: 50px;
}
.fm_formFull {
  border: 0px solid #f2f2f2;
  border-radius: 8px;
  font-size: 16px;
  line-height: 38px;
  padding-left: 15px;
  width: 100%;
  background-color: #eee;
  height: 50px;
}
.fm_formS {
  border: 0px solid #f2f2f2;
  border-radius: 8px;
  font-size: 16px;
  line-height: 38px;
  padding-left: 15px;
  width: 30%;
  margin-right: 15px;
  background-color: #eee;
  height: 50px;
}
.fm_formXs {
  border: 0px solid #f2f2f2;
  border-radius: 8px;
  font-size: 16px;
  line-height: 38px;
  padding-left: 15px;
  width: 80px;
  margin-right: 15px;
  background-color: #eee;
  height: 50px;
}
.pRed {

  color: #e74c3c;
  font-size: 10px;
  margin-left: 5px;
}
.fm_formL {
  border: 0px solid #666;
  background-color: #eee;
  border-radius: 8px;
  box-sizing: border-box;
  font-size: 16px;
  height: 160px;
  line-height: 1.5em;
  padding: 10px;
  width: 90%;

}
.formBtn {
  display: block;
  float: left;
  height: auto;
  margin-top: 40px;
  text-align: center;
  width: 100%;
  position: relative;
}
.fm_btn {
  border: 0px solid #930f49;
  color: #FFF;
  cursor: pointer;
  font-size: 20px;
  height: auto;
  line-height: 20px;
  text-transform: uppercase;
  transition: all 0.2s ease 0s;
  width: 360px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-appearance: none;
  padding: 25px 0;
  font-weight: bold;
  background-color: #00af3f;
  border-radius:40px;
}
.fm_btn:hover{
  opacity:0.7;
  filter:alpha(opacity=70);
  -ms-filter: "alpha( opacity=70 )";
}
.fm_btn02 {
  border: 0px solid #666;

  color: #FFF;
  cursor: pointer;
  font-size: 16px;
  font-weight: bold;
  text-transform: uppercase;
  line-height: 20px;
  width: 200px;
  height: auto;
  transition-property: all;
  transition: 0.2s ease;
  letter-spacing: 0.1em;
  padding: 25px 0;
  background-color: #666;
  margin-right: 10px;
}
.fm_btn02:hover{
  opacity:0.7;
  filter:alpha(opacity=70);
  -ms-filter: "alpha( opacity=70 )";
}
input::-webkit-input-placeholder {
  color: #aaa;
  font-weight: normal;
}
input:-ms-input-placeholder {
  color: #aaa;
  font-weight: normal;
}
input::-moz-placeholder {
  color: #aaa;
  font-weight: normal;
}
textarea::-webkit-input-placeholder {
  color: #aaa;
  font-weight: normal;
}
textarea:-ms-input-placeholder {
  color: #aaa;
  font-weight: normal;
}
textarea::-moz-placeholder {
  color: #aaa;
  font-weight: normal;
}

select.fm_select {
  border-radius: 8px;
  font-size: 16px;
  line-height: 38px;
  height: 50px;
  width: auto;
  border: 0px solid #333;
  -webkit-appearance: none;
  appearance: none;
  padding-left: 15px;
  padding-right: 30px;
  background-image: url("../images/icon_dropdown_sankaku.png");
  background-size: 10px auto;
  background-position: 96% center;
  background-repeat: no-repeat;
  background-color: #eee;
  min-width: 140px;
}

.box20{
  width: 20%;
  height: auto;
  float: left;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
}
.box30{
  width: 30%;
  height: auto;
  float: left;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
}
.box40{
  width: 40%;
  height: auto;
  float: left;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
}
.box45{
  width: 45%;
  height: auto;
  float: left;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
}
.box50{
  width: 50%;
  height: auto;
  float: left;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
}
.box55{
  width: 55%;
  height: auto;
  float: left;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
}
.box60{
  width: 60%;
  height: auto;
  float: left;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
}
.box70{
  width: 70%;
  height: auto;
  float: left;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
}
.box80{
  width: 80%;
  height: auto;
  float: left;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
}
.box1280HalfLeft {
  width: 100%;
  float: right;
  box-sizing: border-box;
  position: relative;
  max-width: 640px;
  padding-left: 40px;
}

.bgGrey{
  background-color: #eeeeee;
}

.whtBox{
  width: 100%;
  height: auto;
  float: left;
  box-sizing: border-box;
  position: relative;
  background-color: #FFF;
  border-radius: 16px;
}
.boxShadow{
  box-shadow: 0 2px 6px rgba(0,0,0,0.20);
}
.fontMc{
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
}
.flex.between.column3{
  justify-content: space-between;
}
.flex.between.column3::after {
  content: "";
  display: block;
  width: 30%;
  height: 0;
}
.flex.between.column3.t-gb::after {
  width: calc(33.3333% - 30px);
}
.flex.between.column3.t-rc::after {
  width: 32.3333%;
}

.imgShadow{
  box-shadow: 0 1px 5px rgba(0,0,0,0.20);
}

.dotLine{
  position: relative;
  border-bottom: #ea6c91 4px dotted;
}
.dotLine.t-blue{
  border-bottom-color: #0068b7;
}
.ls0{
  letter-spacing: 0;
}

.lineBox{
  width: 100%;
  height: auto;
  float: left;
  box-sizing: border-box;
  position: relative;
  padding: 30px;
  border: #d2d2d2 1px solid;
}
ul.dotList{
  width: 100%;
  height: auto;
  float: left;
  box-sizing: border-box;
  position: relative;
  display: flex;
  flex-wrap: wrap;
}
ul.dotList li{
  width: 100%;
  height: auto;
  float: left;
  box-sizing: border-box;
  position: relative;
  font-size: 18px;
  line-height: 1.8;
  padding-left: 1em;
  margin-bottom: 15px;
}
ul.dotList li::before{
  content: '';
  width: 8px;
  height: 8px;
  position: absolute;
  top: 13px;
  left: 0;
  background-color: #B5801F;
  border-radius: 100%;

}
ul.dotList li:last-child{
  margin-bottom: 0px;
}
ul.dotList.t-blue li::before{
  background-color: #2da0e0;
}
ul.dotList li a{
  color: #000;
}
ul.dotList li a:hover{
  color: #2da0e0;
}
ul.dotList li.w-full{
  width: 100%;
}
ul.dotList.t-half li{
  width: 50%;
}
ul.dotList.t-about li::before{
  top: 14px;
}
ul.dotList.t-min li{
  font-size: 16px;
  margin-bottom: 5px;
}
ul.dotList.t-min li::before{
  top: 12px;
}
.iconTitle{
  display: flex;
  align-items: center;
}

.barTitle{
  display: block;
  float: left;
  height: auto;
  width: 100%;
  font-size: 30px;
  font-size: 20px;
  line-height: 1.6em;
  box-sizing: border-box;
  padding: 6px 20px;
  background-color: #22ac38;
  color: #FFF;
  border-radius: 8px;
  font-weight: bold;
  letter-spacing: 0;
}

.header .flex{
  justify-content: space-between;
}

.header .box1600{
  max-width: 100%;

}

span.ulSky {
  background: rgba(0, 0, 0, 0) linear-gradient(transparent 50%, #029fe7 50%) repeat scroll 0 0px;
}
span.ulYlw {
  background: rgba(0, 0, 0, 0) linear-gradient(transparent 50%, #f7f0b2 50%) repeat scroll 0 0px;
}

/* ========================================
  HEADER
======================================== */
.header {
  width: 100%;
  height: 90px;
  display: flex;
  position: fixed;
  top: 0px;
  left: 0px;
  z-index: 1000;
  background-color: #FFF;
  transition-property: all;
  transition: 0.2s ease;
  box-sizing: border-box;
  align-items: center;
  box-shadow: 0 0 4px rgba(0,0,0,0.10);
}
.headerCta{
  width: auto;
  display: flex;
  align-items: center;
  column-gap: 10px;
}
.headerCta a{
  width: 320px;
  height: 60px;
  font-size: 16px;
  font-weight: 600;
  background-color: #062b77;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #FFF;
  border-radius: 40px;
  text-decoration: none;
  transition-property: all;
  transition: 0.2s ease;
}
.headerCta a img{
  width: 30px;
  height: 30px;
  margin-right: 6px;
  transition-property: all;
  transition: 0.2s ease;
}
.headerCta a.button-primary{
  background-image: -webkit-linear-gradient(270deg,rgba(6,43,119,1.00) 0%,rgba(4,29,82,1.00) 100%);
  background-image: -moz-linear-gradient(270deg,rgba(6,43,119,1.00) 0%,rgba(4,29,82,1.00) 100%);
  background-image: linear-gradient(180deg,rgba(6,43,119,1.00) 0%,rgba(4,29,82,1.00) 100%);
}
.headerCta a.button-outline{
  background-color: #FFF;
  color: #B5801F;
  border: #B5801F 3px solid;
  width: 260px;
}
.headerCta a:hover{
  opacity: 0.8;
}
.headerCta a.button-outline:hover{
  background-color: #B5801F;
  color: #FFF;
}
.headerCta a.button-outline:hover img{
  filter: brightness(0) invert(1);
}
/* ========================================
  FOOTER
======================================== */
.footBox {
  height: auto;
  width: 100%;
  margin: 0 auto;
  display: table;
  background-color: #E9EBF0;
  padding-bottom: 80px;
  padding-top: 80px;
}
.footMenu{
  width: 50%;
  height: auto;
  float: left;
  box-sizing: border-box;
  position: relative;
}
.footMenu ul{
  width: 100%;
  height: auto;
  float: left;
  box-sizing: border-box;
  position: relative;
  display: flex;
  flex-wrap: wrap;
}
.footMenu ul li {
  width: 50%;
  height: auto;
  float: left;
  box-sizing: border-box;
  position: relative;
  margin-bottom: 15px;

}
.footMenu ul li a {
  width: 100%;
  height: auto;
  float: left;
  box-sizing: border-box;
  position: relative;
  font-size: 14px;
  line-height: 1.6em;
  color: #666666;
  text-decoration: none;
  font-weight: 500;
}
.footMenu ul li a:hover {
  text-decoration: underline;
  color: #02aa39;
}

.footLogo{
  width: 100%;
  height: auto;
  float: left;
  box-sizing: border-box;
  position: relative;
}
.footLogo img{
  width: 100%;
  height: auto;
  max-width: 240px;
}
.footBottomLink{
  display: 100%;
  display: flex;
  flex-wrap: wrap;
}
.footBottomLink li{
  margin-right: 20px;
}
.footBottomLink li a{
  color: #7c7c7c;
  text-decoration: none;
  font-size: 14px;
  line-height: 1.4;
  margin-right: 20px;
}
.footBottomLink li a:hover{
  color: #333;
  text-decoration: underline;
}

.copyright{
  width:100%;
  height:auto;
  float:left;
  display:inline-block;
  text-align:right;
  font-size:14px;
  line-height:20px;
  font-weight: 500;
  color: #999;
  letter-spacing: 0em;
}
.copyright a{

}
.copyright a:hover{

}
/* ========================================
  FV
======================================== */
.heroImage{
  width: 100%;
  /*height: calc(100vh - 130px);	*/
  box-sizing: border-box;
  position: relative;
  /*display: flex;
  align-items: center;
  justify-content: center;*/
  margin-left: auto;
  margin-right: auto;
  /*max-height: 620px;*/
  margin-top: 80px;
  background-image: url("../images/fv/fv_bg.jpg");
  background-size: cover;
  background-position:center center;
  background-repeat: no-repeat;
  padding-bottom: 40px;
}
/* ========================================
  CTA
======================================== */
.fullCta{
  width: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.fullCta a{
  width: calc(50% - 15px);
  height: 110px;
  font-size: 26px;
  font-weight: 600;
  background-color: #062b77;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #FFF;
  border-radius: 60px;
  text-decoration: none;
  transition-property: all;
  transition: 0.2s ease;
}
.fullCta a img{
  width: 50px;
  height: 50px;
  margin-right: 10px;
  transition-property: all;
  transition: 0.2s ease;
}
.fullCta a.button-primary{
  background-image: -webkit-linear-gradient(270deg,rgba(6,43,119,1.00) 0%,rgba(4,29,82,1.00) 100%);
  background-image: -moz-linear-gradient(270deg,rgba(6,43,119,1.00) 0%,rgba(4,29,82,1.00) 100%);
  background-image: linear-gradient(180deg,rgba(6,43,119,1.00) 0%,rgba(4,29,82,1.00) 100%);
}
.fullCta a.button-outline{
  background-color: #FFF;
  color: #B5801F;
  border: #B5801F 6px solid;
}
.fullCta a.button-outline.nonBd{
  border-width: 0;
}
.fullCta a:hover{
  opacity: 0.8;
}
.fullCta a.button-outline:hover{
  background-color: #B5801F;
  color: #FFF;
}
.fullCta a.button-outline:hover img{
  filter: brightness(0) invert(1);
}
.bgCta{
  background-image: url("../images/bg/bg_cta.jpg");
  background-size: cover;
  background-position:right center;
  background-repeat: no-repeat;
}
/* ========================================
  COMPANY LOGO SLIDER
======================================== */

.companyFukidashi{
  width: 100%;
  display: flex;
  justify-content: center;
  margin-bottom: 40px;
}
.companyFukidashi div{
  background-color: #F1F3F9;
  color: #062B76;
  font-size: 18px;
  line-height: 1.1;
  padding: 10px 20px;
  font-weight: 600;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.companyFukidashi div:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 75%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 20px solid #F1F3F9;
}
.companyFukidashi div span.text1000{
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 800;
  font-size: 56px;
  top: -3px;
  margin-left: 5px;
}
.companyFukidashi div span.subText{
  font-size: 1.4em;
  margin-right: 5px;
  top: 0px;
  font-weight: 700;
}
/* スライダー全体 */
.slider-wrapper {
  display: flex; /* スライドのグループを横並び */
  overflow: hidden; /* はみ出たスライドを隠す */
}
.slider {
  animation: scroll-left 60s infinite linear .5s both;
  display: flex;
  margin-bottom: 60px;
}
/* スライド */
.slide {
  /* width: calc(100vw / 7); */
  width: 235px;
  list-style: none;
  text-align: center;
  padding-right: 50px;
}
/* スライドの画像 */
.slide img {
  display: block;
  width: 100%;
  height: auto;
}
/* CSSアニメーション */
@keyframes scroll-left {
  from {
    transform: translateX(0);
  }
to {
  transform: translateX(-100%);
}
}
/* ========================================
  ABOUT COMPANY
======================================== */
.bgAbout{
  background-image: url("../images/bg/bg_about_dattjapan.jpg");
  background-size: 100% auto;
  background-position:center top;
  background-repeat: no-repeat;
}

/* ========================================
  STORM AI
======================================== */
.bgStormAi{
  background-color: #071121;
  background-image: -webkit-linear-gradient(90deg,rgba(31,51,87,1.00) 0%,rgba(7,17,33,1.00) 100%);
  background-image: -moz-linear-gradient(90deg,rgba(31,51,87,1.00) 0%,rgba(7,17,33,1.00) 100%);
  background-image: linear-gradient(0deg,rgba(31,51,87,1.00) 0%,rgba(7,17,33,1.00) 100%);
}
.saBox{
  width: 24%;
  border: #007FF5 2px solid;
  border-radius: 16px;
  padding: 20px;
}
.stomAiSecTitle{
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.stomAiSecTitle::before{
  content: '';
  width: 100%;
  height: 2px;
  position: absolute;
  top: calc(50% - 1px);
  left: 0;
  background-color: #007FF5;
  z-index: 0;
}
.stomAiSecTitle span{
  width: 90%;
  max-width: 500px;
  height: 60px;
  border: #007FF5 2px solid;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 28px;
  color: #FFF;
  font-weight: 600;
  background-color:#112038;
  border-radius: 40px;
  z-index: 10;
}
.whtLineBox{
  width: 100%;
  height: auto;
  float: left;
  box-sizing: border-box;
  position: relative;
  border: #FFF 2px solid;
  border-radius: 16px;
}
.saBaseBox{
  width: 32.3333%;
  background-color: #112038;
  padding: 20px;
  border-radius: 8px;
  display: flex;
  margin-bottom: 15px;
}
.saIcon{
  width: 80px;
}
.saIcon img{
  width: 100%;
  height: auto;
}
.saInfo{
  width: calc(100% - 80px);
  padding-left: 20px;
}
/* ========================================
  BASE LIST
======================================== */
.areaBox{
  width: 32.3333%;
  background-color: #F2F6FB;
  padding: 20px;
  border-radius: 8px;
  margin-bottom: 15px;
}
.areaNumber{
  width: 28px;
  height: 28px;
  background-color: #00276B;
  color: #FFF;
  font-weight: 600;
  font-family: "Figtree", sans-serif;
  display: flex;
  line-height: 1;
  align-items: center;
  justify-content: center;
  margin-right: 10px;
  border-radius: 4px;
  font-size: 16px;
}
/*拠点一覧*/

.bgBlue{
  background-color: #152860;
}

/* ========================================
  PROBLEM
======================================== */
.nayamiTitle{
  width: auto;
  margin: 0 auto;
  line-height: 1.2;
  letter-spacing: 0.03em;
}
.nayamiTitle::before{
  content: '';
  width: 100px;
  height: 150px;
  position: absolute;
  left: calc(50% - 360px);
  top: 40px;
  background-image: url("../images/service/sankaku_left.png");
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
.nayamiTitle::after{
  content: '';
  width: 100px;
  height: 150px;
  position: absolute;
  right: calc(50% - 360px);
  top: 40px;
  background-image: url("../images/service/sankaku_right.png");
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
.bgLblue{
  background-color: #EDF0F5;
}
.bgNavy{
  background-color: #08245E;
}

/* ========================================
  SERVICE / FEATURE
======================================== */
.serviceLogo{
  width: 100%;
  text-align: center;
}
.serviceLogo img{
  width: 100%;
  height: auto;
  max-width: 989px;
}
.aboutSerivceBox{
  width: 100%;
  background-color: #15295F;
  border-radius: 16px;
  padding: 60px 40px 40px;
  align-items: center;
}
.asBox{
  width: 19%;
  text-align: center;
}
.asBox::before{
  content: '';
  width: 38px;
  height: 38px;
  position: absolute;
  right: -22px;
  top: calc(50% - 19px);
  background-image: url("../images/service/right_arrow_blue.png");
  background-size: 100% auto;
  background-position:center center;
  background-repeat: no-repeat;
}
.asBox.nonArrow::before{
  display: none;
}
.asBox img{
  width: 90%;
  height: auto;
  max-width: 150px;
}
.sfBox{
  width: 31.3333%;
  background-color: #fff;
  border: #C9B25D 2px solid;
  border-radius: 16px;
  padding: 20px;
  z-index: 1;
}
.bgMerit{
  background-image: url("../images/bg/merit-section-bg.webp");
  background-size: cover;
  background-position:center center;
  background-repeat: no-repeat;
}
.mrtBox{
  width: 25%;
  padding: 10px;
}
.secNavy{
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.secNavy span{
  width: 40px;
  height: 2px;
  background-color: #08245E;
}
.sfIcon{
  width: 100%;
  text-align: center;
}
.sfIcon img{
  width: 120px;
  height: auto;
}
.bgUseCase{
  background-image: url("../images/bg/about-bg-tech-grid.png");
  background-size: cover;
  background-position:center bottom;
  background-repeat: no-repeat;
}
.ucBox{
  width: 31.3333%;
  background-color: #fff;
  border: #FFF 4px solid;
  border-radius: 16px;
  margin-bottom: 30px;
}
.ucBox.t-half{
  width: 49%;
}
.ucBox .ph100 img{
  border-radius: 16px 16px 0 0;
}
.ucInfo{
  width: 100%;
  padding: 15px 15px 20px;
}

.bgHeiyou{
  background-image: url("../images/bg/bg_heiyou.png");
  background-size: cover;
  background-position:center center;
  background-repeat: no-repeat;
}

/* ========================================
  CHECK LIST / LABELS
======================================== */
.featureTag span{
  width: 130px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 15px;
  font-size: 14px;
  line-height: 1;
  color:#08245E;
  background-color: #FFE168;
  border-radius: 20px;
  font-weight: 700;
  font-family: "Figtree", sans-serif;
}
.featureTagEx{
  position: absolute;
  width: auto;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 15px;
  font-size: 14px;
  line-height: 1;
  color:#08245E;
  background-color: #FFE168;
  border-radius: 20px;
  font-weight: 700;
  font-family: "Figtree", sans-serif;
  top: -10px;
  left: -10px;
}
.checkList{
  width: 100%;

}
.checkList li{
  font-size: 16px;
  line-height: 1.8;
  padding-left: 36px;
  background-image: url("../images/common/check_gold.png");
  background-size: 28px 28px;
  background-position:left top;
  background-repeat: no-repeat;
  margin-bottom: 15px;
}
.checkListTop{
  width: 100%;

}
.checkListTop li{
  font-size: 36px;
  line-height: 1.4;
  padding-left: 50px;
  background-image: url("../images/service/check_2color.png");
  background-size: 40px 40px;
  background-position:left 10px;
  background-repeat: no-repeat;
  margin-bottom: 15px;
  font-weight: 600;
  color: #1047B5;
}
.checkListTop li span{
  font-size: 24px;
  color: #08245E;
}

.whtBox.t-blue{
  background-color: #031440;
  box-shadow: 0 0 10px rgba(255,255,255,0.50);
}

/* ========================================
  FLOW / FAQ
======================================== */
.boxText{
  background-color: #08245E;
  padding: 5px 10px;
}
.boxTextMaru{
  background-color: #08245E;
  padding: 5px 15px;
  border-radius: 30px;
}
.flowBox{
  width: 100%;
  background-color: #FFF;
  padding: 20px;
  display: flex;
  align-items: center;
  margin-bottom: 60px;
  border-radius: 16px;
  box-shadow: 0 0 6px rgba(0,0,0,0.20);
}
.flowBox::before {
  content: "";
  position: absolute;
  top: calc(100% + 15px);
  left: 50%;
  margin-left: -25px;
  border: 25px solid transparent;
  border-top: 30px solid #08245E;
}
.flowBox.nonArrow::before {
  display: none;
}
.flowImg{
  width: 120px;
}
.flowImg img{
  width: 100%;
  height: auto;
}
.flowInfo{
  width: calc(100% - 120px);
  padding-left: 40px;
}
.boxStep{
  background-color: #08245E;
  color: #FFF;
  padding: 6px 20px;
  font-weight: 600;
  font-family: "Figtree", sans-serif;
  border-radius: 20px;
  margin-right: 36px;
}
.boxStep::before{
  content: '';
  width: 3px;
  height: 24px;
  background-color: #FFE168;
  position: absolute;
  top: 2px;
  right: -20px;
}
.faqList{
  width: 100%;
  border-bottom: #D9D9D9 2px dotted;
  padding-bottom: 40px;
  margin-bottom: 40px;
}
.faqList dt{
  width: 100%;
  font-size: 18px;
  line-height: 1.6;
  color: #08245E;
  font-weight: 600;
  padding-left: 80px;
  padding-top: 14px;
  min-height: 60px;
  margin-bottom: 20px;
}
.faqList dt::before{
  content: "Q";
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #08245E;
  color: #FFF;
  font-weight: 500;
  font-family: "Figtree", sans-serif;
  font-size: 36px;
  line-height: 1;
  border-radius: 4px;
  position: absolute;
  top: 0;
  left: 0;
}
.faqList dd{
  width: 100%;
  font-size: 16px;
  line-height: 1.6;
  padding-left: 80px;
  padding-top: 15px;
  min-height: 60px;
  margin-bottom: 20px;
}
.faqList dd::before{
  content: "A";
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #08245E;
  font-weight: 500;
  font-family: "Figtree", sans-serif;
  font-size: 36px;
  line-height: 1;
  border-radius: 4px;
  position: absolute;
  border: #08245E 1px solid;
  top: 0;
  left: 0;
}
.faqList.nonBd{
  border-bottom-width: 0;
  margin-bottom: 0;
}

.bgGridLine{
  background-image: url("../images/bg/bg_crossline.png");
  background-size: 1600px auto;
  background-position:center top;
  background-repeat: repeat;
}
.bgNayami{
  background-image: url("../images/bg/bg_nayami.webp");
  background-size: cover;
  background-position:center top;
  background-repeat: no-repeat;
}

.bigArrow{
  width: 110px;
  height: 156px;
  background-image: url("../images/service/big_arrow.png");
  background-size: 110px auto;
  background-position:center center;
  background-repeat: repeat;
  position: absolute;
  z-index: 10;
  left: calc(50% - 55px);
  bottom: -98px;
}

/* ========================================
  SECTION BACKGROUNDS / DECORATION
======================================== */
.bgHL{
  background-image: url("../images/bg/bg_01.jpg");
  background-size: 1416px auto;
  background-position:center top;
  background-repeat: repeat;
  padding-top: 120px;
}
.bgKairo{
  background-image: url("../images/bg/bg_02.jpg");
  background-size: cover;
  background-position:center top;
  background-repeat: repeat;
}
.serviceFlowTitle{
  width: 460px;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #1047B5;
  color: #FFF;
  font-weight: 600;
  font-size: 42px;
  border-radius: 50px;
  position: absolute;
  z-index: 10;
  left: calc(50% - 230px);
  top: -40px;
}
.serviceFlowTitle .dotText::before{
  content: '';
  width: 8px;
  height: 8px;
  background-color: #F75C04;
  border-radius: 100%;
  position: absolute;
  top: -10px;
  left: 20px;
}
.serviceFlowTitle .dotText::after{
  content: '';
  width: 8px;
  height: 8px;
  background-color: #F75C04;
  border-radius: 100%;
  position: absolute;
  top: -10px;
  left: 55px;
}
.sfNumber{
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #F75C04;
  color: #FFF;
  font-weight: 600;
  font-size: 26px;
  line-height: 1;
  border-radius: 50px;
  font-family: "Figtree", sans-serif;
  position: absolute;
  top: -20px;
  left: -20px;
}
.bgflowBorder::before{
  content: '';
  width: 100%;
  height: 4px;
  background-color: #F75C04;
  position: absolute;
  top: calc(50% - 2px);
  left: 0;
  z-index: 0;
}
.ucNumber{
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #F75C04;
  color: #FFF;
  font-weight: 600;
  font-size: 26px;
  line-height: 1;
  border-radius: 15px 0 0 0;
  font-family: "Figtree", sans-serif;
  position: absolute;
  top: 0px;
  left: 0px;
  z-index: 10;
}

/* ========================================
  STORM AI PARTNERS
======================================== */
.partnerLogo{
  width: 50%;
}
.pLogo{
  width: 100%;
  text-align: center;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.pLogo img{
  width: auto;
  height: 60px;
}
.pLogo.dj{
  padding-top: 10px;
}
.pLogo.dj img{
  width: auto;
  height: 36px;
}
.partnerX{
  width: 36px;
  height: 36px;
  position: absolute;
  top: calc(50% - 18px);
  right: -18px;
  background-image: url("../images/storm-ai/x.png");
  background-size: 30px auto;
  background-position:center center;
  background-repeat: no-repeat;
}

/* ========================================
  CASE / PARALLEL OPERATION
======================================== */
.jireiLogo{
  width: 100%;
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}
.jireiLogo span{
  font-size: 16px;
  font-weight: 600;
  margin-left: 10px;
}
.jireiLogo img{
  width: auto;
  height: 41px;
}
.boxText.t-sky{
  background-color: #F2F6FB;
  color: #08245E;
}
.heiyouList{
  width: 100%;
}
.heiyouList li{
  width: 100%;
  font-size: 16px;
  line-height: 1.8;
  padding-left: 55px;
  background-image: url("../images/common/check_wht.png");
  background-size: 40px 40px;
  background-position: left 7px;
  background-repeat: no-repeat;
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: #FFF 2px dotted;
}

/* ========================================
  FIXED BANNER
======================================== */
.fixedBanner{
  width: 300px;
  height: auto;
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 100;
  border-radius: 8px;
  box-shadow: 0 0 6px rgba(0,0,0,0.15);
  background-color: #FFF;
}
.fixedBanner .ph100 img{
  border-radius: 8px 8px 0 0;
}
.fixBnBtn{
  width: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background-color: #FFF;
  height: 65px;
  padding: 0 10px;
  border-radius:0 0 8px 8px;
}
.fixBnBtn a{
  width: calc(50% - 5px);
  height: 40px;
  font-size: 12px;
  font-weight: 600;
  background-color: #062b77;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #FFF;
  border-radius: 60px;
  text-decoration: none;
  transition-property: all;
  transition: 0.2s ease;
}
.fixBnBtn a img{
  width: 18px;
  height: 18px;
  margin-right: 3px;
  transition-property: all;
  transition: 0.2s ease;
}
.fixBnBtn a.button-primary{
  background-image: -webkit-linear-gradient(270deg,rgba(6,43,119,1.00) 0%,rgba(4,29,82,1.00) 100%);
  background-image: -moz-linear-gradient(270deg,rgba(6,43,119,1.00) 0%,rgba(4,29,82,1.00) 100%);
  background-image: linear-gradient(180deg,rgba(6,43,119,1.00) 0%,rgba(4,29,82,1.00) 100%);
}
.fixBnBtn a.button-outline{
  background-color: #FFF;
  color: #B5801F;
  border: #B5801F 2px solid;
}
.fixBnBtn a:hover{
  opacity: 0.8;
}
.fixBnBtn a.button-outline:hover{
  background-color: #B5801F;
  color: #FFF;
}
.fixBnBtn a.button-outline:hover img{
  filter: brightness(0) invert(1);
}
.closeBtn{
  width: 24px;
  height: 24px;
  position: absolute;
  top: -4px;
  right: -4px;
  z-index: 110;
  box-shadow: 0 0 6px rgba(0,0,0,0.15);
  border-radius: 100%;
}
.closeBtn img{
  width: 100%;
  height: auto;
}
.dotText::before{
  content: '';
  width: 8px;
  height: 8px;
  background-color: #B5801F;
  border-radius: 100%;
  position: absolute;
  top: 4px;
  left: calc(50% - 4px);
}

/* ========================================
  SERVICE DETAIL
======================================== */
.nayamiList{
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-bottom: 20px;
}
.nayamiList dt{
  width: 120px;

}
.nayamiList dt img{
  width: 100%;
  height: auto;
}
.nayamiList dd{
  width: calc(100% - 120px);
  padding-left: 30px;
}
.arrowSection{
  background-image: url("../images/service/arrow_section.png");
  background-size: 100% 100%;
  background-position:center center;
  background-repeat: no-repeat;
  top: -130px;
  margin-bottom: -300px;
  z-index: 1;
}
.kaiketuSec{
  width: calc(100% - 240px);
}
.kaiketuBox{
  width: 31.333%;
}
.aboutChara{
  width: 240px;
  bottom: -160px;
  padding-left: 10px;
}
.aboutChara img{
  width: 100%;
  height: auto;
}
.aboutServiceTitle{
  width: calc(100% - 240px);
  top: 30px;
  z-index: 10;
  padding-left: 20px;
  margin-top: -30px;
}
.aboutServiceTitle img{
  width: 100%;
  height: auto;
}
.kouritsuBox{
  width: 32.333%;
  background-color: #E9EFF8;
  border-radius: 16px;
  padding: 30px 20px;
}
.kouritsuBox.w-full{
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
.ft01Left{
  width: 140px;
}
.ft01Right{
  width: calc(100% - 140px);
  padding-left: 20px;
}
.documentList{
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.documentList li{
  height: 50px;
  display: flex;
  font-size: 14px;
  align-items: center;
  padding: 0 15px;
  background-color: #FFF;
  border-radius: 0px;
  margin-right: 10px;
  font-weight: 500;
}
.documentList li img{
  width: 36px;
  height: 36px;
  margin-right: 5px;
}
.bgYlw{
  background-color: #FFD83B;
}
.c-ylw{
  color: #FFD83B;
}
.ufBox{
  width: 22%;
  background-color: #FFF;
  border-radius: 16px;

}
.ufBox::before {
  content: '';
  width: 42px;
  height: 42px;
  position: absolute;
  right: -32px;
  top: calc(50% - 21px);
  background-image: url("../images/service/right_arrow_blue.png");
  background-size: 100% auto;
  background-position: center center;
  background-repeat: no-repeat;
}
.ufBox.nonArrow::before {
  display: none;
}
.ufTitle{
  width: 100%;
  height: 60px;
  background-color: #8391AE;
  color: #FFF;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  line-height: 1.2;
  border-radius: 16px 16px 0 0;
}
.ufTitle.t02{
  background-color: #08245E;
  color: #CCA764;
}
.ufTitle.t03{
  background-color: #08245E;
  color: #FFF;
}
.ufInfo{
  width: 100%;
  padding: 20px;
}
.fixlh{
  min-height: 2.8em;
  display: flex;
  align-items: center;
  justify-content: center;
}
.sankakuSec{
  width: 100%;
  height: 80px;
  background-image: url("../images/common/sankaku_sec.png");
  background-size: 100% 80px;
  background-position: center bottom;
  background-repeat: no-repeat;
}
.charaFukidashi{
  width: 50%;
  position: absolute;
  top: -180px;
  right: 0;
  padding-left: 20px;
}
.charaFukidashi img{
  width: 100%;
  height: auto;
}
.jireiCompany{
  width: 100%;

}
.jireiCompany span {
  width: 200px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 15px;
  font-size: 18px;
  line-height: 1;
  color: #FFF;
  background-color:#08245E;
  border-radius: 20px;
}
.kouritsuBox .sfIcon img {
  width: 140px;
  height: auto;
}
.mark-list-contain {
  display: flex;
  justify-content: center;
}
.mark-list-contain ul {
  display: flex;
  gap: 24px;
  background: #fff;
  border-radius: 8px;
  padding: 14px 20px;
  width: 100%;
  flex-wrap: wrap;
  align-items: center;
}
.mark-list-contain ul li a{
  transition: 0.2s ease;
}
.mark-list-contain ul li a img {
  transition: 0.2s ease;
  height: 50px;
  max-width: 100%;
}
.mark-list-contain ul li a:hover{
  opacity: 0.8;
}
.sns_list {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-top: 25px;
  gap: 9px;
}
.sns_list li a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 45px;
  width: 45px;
  border-radius: 6px;
  text-decoration: none;
  background: #fff;
  transition: 0.2s ease;
}
.sns_list li a:hover {
  opacity: 0.8;
}
.sns_list a img {
  width: 20px;
  height: auto;
}
