/*clearfix*/
/*flex*/
/*flex*/
@media screen and (max-width: 644px) {
  .none_pad section:nth-child(n+2) {
    padding: 40px 6vw;
  }
}

@media print, screen and (min-width: 1281px) { /*{overPC}*/
  .TBSP, .TB, .TBl, .TBs, .SP, .SP_bl {
    display: none !important;
  }
  .PCTB, .PC, .PCs {
    display: inherit;
  }
  .PC_inbl {
    display: inline-block !important;
  }
  .PC_bl {
    display: block !important;
  }
  .PC_tj {
    text-align: justify !important;
  }
  .PC_tj * {
    display: inline !important;
  }
  .PC_tl {
    text-align: left !important;
  }
}
@media screen and (min-width: 801px) and (max-width: 1280px) { /*{TB}*/
  .PCl, .PC, .PCs, .SP, .SP_bl {
    display: none !important;
  }
  .PCTB, .TBSP, .TB, .TBl, .TBs {
    display: inherit;
  }
  .TB_inbl {
    display: inline-block !important;
  }
  .TB_bl {
    display: block !important;
  }
  .TB_tj {
    text-align: justify !important;
  }
  .TB_tj * {
    display: inline !important;
  }
  .TB_tl {
    text-align: left !important;
  }
}
@media screen and (max-width: 800px) { /*{SP}*/
  .PCTB, .PCl, .PC, .PCs, .TB, .TBl, .TBs {
    display: none;
  }
  .TBSP, .SP {
    display: inherit;
  }
  .SP_inbl {
    display: inline-block !important;
  }
  .SP_bl {
    display: block !important;
  }
  .SP_none {
    display: none !important;
  }
  .SP_tj {
    text-align: justify !important;
  }
  .SP_tj * {
    display: inline !important;
  }
  .SP_tl {
    text-align: left !important;
  }
}
html.black .contsSecWrap {
  padding-top: 0px !important;
}

html.oneColumn .contsSecWrap {
  background-color: #111111;
}
html.oneColumn .contsSecWrap .sec_com {
  padding-top: 0px;
  padding-bottom: 0px;
}
html.oneColumn .contsSecWrap .sec_header {
  position: relative;
}
html.oneColumn .contsSecWrap .sec_header img {
  width: 100%;
}
html.oneColumn .contsSecWrap .sec_kvtxt {
  position: absolute;
  bottom: 15px;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 644px) {
  html.oneColumn .contsSecWrap .sec_kvtxt {
    bottom: 10px;
  }
}
html.oneColumn .contsSecWrap .sec_kvtxt.-sec04 {
  width: 29.11%;
}
html.oneColumn .contsSecWrap .sec_kvtxt.-sec05 {
  width: 39.41%;
}
html.oneColumn .contsSecWrap .sec_kvtxt.-sec06 {
  width: 63.21%;
}
@media screen and (max-width: 644px) {
  html.oneColumn .contsSecWrap .sec_bg_img {
    height: 410px;
  }
}
@media screen and (max-width: 644px) {
  html.oneColumn .contsSecWrap .sec_bg_img img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%;
  }
}
html.oneColumn .contsSecWrap .sec_contents01 {
  margin-left: -6vw;
  margin-right: -6vw;
  box-sizing: border-box;
  padding: 80px 6vw;
  background: #415463;
}
@media screen and (max-width: 644px) {
  html.oneColumn .contsSecWrap .sec_contents01 {
    padding: 40px 6vw;
  }
}
html.oneColumn .contsSecWrap .sec_contents02 {
  margin-left: -6vw;
  margin-right: -6vw;
  box-sizing: border-box;
  padding: 70px 6vw;
  background: #fff;
  color: #231815;
}
@media screen and (max-width: 644px) {
  html.oneColumn .contsSecWrap .sec_contents02 {
    padding: 35px 6vw;
  }
}
html.oneColumn .contsSecWrap .sec_contents02 p {
  color: #231815;
}
html.oneColumn .contsSecWrap .sec_contents02 p small {
  color: #231815;
}
html.oneColumn .contsSecWrap .sec_contents02_flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0px 5.32%;
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 45px;
}
@media screen and (max-width: 644px) {
  html.oneColumn .contsSecWrap .sec_contents02_flex {
    display: block;
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 644px) {
  html.oneColumn .contsSecWrap .sec_contents02_flex .numBox {
    margin-bottom: 10px;
  }
}
html.oneColumn .contsSecWrap .sec_contents02_flex .numBox.-sec01 {
  width: 21.66%;
}
@media screen and (max-width: 644px) {
  html.oneColumn .contsSecWrap .sec_contents02_flex .numBox.-sec01 {
    width: 40%;
    max-width: 260px;
  }
}
html.oneColumn .contsSecWrap .sec_contents02_flex .numBox.-sec02 {
  width: 27.91%;
}
@media screen and (max-width: 644px) {
  html.oneColumn .contsSecWrap .sec_contents02_flex .numBox.-sec02 {
    width: 40%;
    max-width: 335px;
  }
}
html.oneColumn .contsSecWrap .sec_contents02_flex .numBox.-sec03 {
  width: 21.66%;
}
@media screen and (max-width: 644px) {
  html.oneColumn .contsSecWrap .sec_contents02_flex .numBox.-sec03 {
    width: 40%;
    max-width: 260px;
  }
}
html.oneColumn .contsSecWrap .sec_contents02_flex .txtBox {
  flex: 1;
}
html.oneColumn .contsSecWrap .sec_txt01 {
  position: absolute;
  width: 16.12%;
  top: 0px;
  left: 7.1%;
}
@media screen and (max-width: 644px) {
  html.oneColumn .contsSecWrap .sec_txt01 {
    width: 95px;
    left: 0px;
  }
}
html.oneColumn .contsSecWrap .sec_txt01.-sec06 {
  right: 24.5%;
  left: auto;
}
@media screen and (max-width: 644px) {
  html.oneColumn .contsSecWrap .sec_txt01.-sec06 {
    right: 120px;
  }
}
html.oneColumn .contsSecWrap .sec_txt02 {
  text-align: justify;
  text-align: left;
  font-size: 22px;
  line-height: 1.59;
  letter-spacing: 0em;
}
@media screen and (max-width: 991px) {
  html.oneColumn .contsSecWrap .sec_txt02 {
    font-size: 14px;
  }
}
html.oneColumn .contsSecWrap .sec_txt02 strong {
  color: #e9546b;
  font-size: 1.27em;
}
html.oneColumn .contsSecWrap .sec_txt02.-tc {
  text-align: center;
}
@media screen and (max-width: 800px) {
  html.oneColumn .contsSecWrap .sec_txt02.-tc {
    text-align: justify;
    text-align: left;
  }
}
html.oneColumn .contsSecWrap .sec_txt02.-white {
  color: #fff;
}
html.oneColumn .contsSecWrap .sec_txt03 {
  text-align: center;
  font-size: 22px;
  line-height: 2;
  font-size: min(1.37vw, 22px);
}
@media screen and (max-width: 991px) {
  html.oneColumn .contsSecWrap .sec_txt03 {
    font-size: 14px;
  }
}
@media screen and (max-width: 800px) {
  html.oneColumn .contsSecWrap .sec_txt03 {
    text-align: justify;
    text-align: left;
  }
}
html.oneColumn .contsSecWrap .sec_txt03 strong {
  font-size: 1.36em;
  color: #fff9b1;
  line-height: 1;
}
html.oneColumn .contsSecWrap .sec_tit01 {
  position: absolute;
  width: 18.82%;
  top: 50px;
  right: 0px;
}
@media screen and (max-width: 644px) {
  html.oneColumn .contsSecWrap .sec_tit01 {
    width: 110px;
    top: 25px;
  }
}
html.oneColumn .contsSecWrap .sec_tit01.-sec02 {
  top: 0px;
  transform: translateY(-20%);
}
html.oneColumn .contsSecWrap .sec_tit02 {
  font-size: 38px;
  line-height: 1.65;
  text-align: justify;
  text-align: left;
  margin-bottom: 10px;
}
@media screen and (max-width: 991px) {
  html.oneColumn .contsSecWrap .sec_tit02 {
    font-size: 24px;
  }
}
@media screen and (max-width: 644px) {
  html.oneColumn .contsSecWrap .sec_tit02 {
    font-size: 22px;
  }
}
html.oneColumn .contsSecWrap .sec_tit02 strong {
  color: #e9546b;
  font-size: 1.26em;
  display: inline-block;
}
html.oneColumn .contsSecWrap .sec_tit02.-tc {
  text-align: center;
}
html.oneColumn .contsSecWrap .sec_tit02.-mbWide {
  margin-bottom: 45px;
}
@media screen and (max-width: 644px) {
  html.oneColumn .contsSecWrap .sec_tit02.-mbWide {
    margin-bottom: 20px;
  }
}
html.oneColumn .contsSecWrap .sec_tit03 {
  text-align: center;
  font-size: min(2.43vw, 39px);
  letter-spacing: 0em;
  margin-bottom: 30px;
}
@media screen and (max-width: 991px) {
  html.oneColumn .contsSecWrap .sec_tit03 {
    font-size: 24px;
  }
}
@media screen and (max-width: 644px) {
  html.oneColumn .contsSecWrap .sec_tit03 {
    font-size: 22px;
  }
}
html.oneColumn .contsSecWrap .sec_tit03 strong {
  color: #fff9b1;
  display: inline-block;
}
html.oneColumn .contsSecWrap .sec_graph {
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}
html.oneColumn .contsSecWrap .sec_graph + .caption {
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}

.sec_kv {
  padding-top: 65px;
  position: relative;
  width: 100%;
}
@media screen and (max-width: 644px) {
  .sec_kv {
    padding-top: 120px;
  }
}
@media screen and (max-width: 644px) {
  .sec_kv .bg figure {
    height: 52vw;
  }
}
.sec_kv .bg figure img {
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.sec_kv .kv_txt_wrap {
  position: absolute;
  top: 110px;
  left: 0px;
  width: 100%;
}
@media screen and (max-width: 644px) {
  .sec_kv .kv_txt_wrap {
    top: 150px;
  }
}
.sec_kv .tit01 {
  width: 21.56%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 10px;
}
@media screen and (max-width: 644px) {
  .sec_kv .tit01 {
    width: 33%;
  }
}
.sec_kv .txt01 {
  width: 30.18%;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 644px) {
  .sec_kv .txt01 {
    width: 33%;
  }
}
.sec_kv img {
  width: 100%;
}

.sec01 .sec01_contents01 {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 991px) {
  .sec01 .sec01_contents01 {
    display: block;
    padding: 30px 0px;
  }
}
.sec01 .sec01_contents01::after {
  display: block;
  content: "";
  position: absolute;
  background: #040000;
  width: 100vw;
  bottom: 0px;
  top: 0px;
  left: 50%;
  transform: translateX(-50%);
}
.sec01 .sec01_contents01 .txtBox {
  position: relative;
  z-index: 1;
  width: 68.53%;
}
@media screen and (max-width: 991px) {
  .sec01 .sec01_contents01 .txtBox {
    width: 100%;
  }
}
.sec01 .sec01_contents01 .imgBox {
  position: relative;
  z-index: 1;
  width: 29.68%;
}
@media screen and (max-width: 991px) {
  .sec01 .sec01_contents01 .imgBox {
    width: 100%;
    max-width: 418px;
    margin-left: auto;
    margin-right: auto;
  }
}

.sec02 .sec02_flex {
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  margin-bottom: 55px;
}
@media screen and (max-width: 644px) {
  .sec02 .sec02_flex {
    gap: 15px;
    margin-bottom: 25px;
  }
}
.sec02 .sec02_flex figure {
  flex: 1;
}
.sec02 .access {
  width: 100%;
  max-width: 1240px;
  margin-left: auto;
  margin-right: auto;
}

.sec04 .tit01 {
  font-size: 45px;
  line-height: 1.22;
  letter-spacing: 0.04em;
  margin-bottom: 75px;
}
@media screen and (max-width: 991px) {
  .sec04 .tit01 {
    font-size: 28px;
  }
}
@media screen and (max-width: 644px) {
  .sec04 .tit01 {
    margin-bottom: 30px;
  }
}
.sec04 .tit01 strong {
  font-size: 1.26em;
  color: #e9546b;
}
.sec04 .sec04_imgWrap {
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 75px;
}
@media screen and (max-width: 644px) {
  .sec04 .sec04_imgWrap {
    display: block;
    margin-bottom: 30px;
  }
}
.sec04 .sec04_imgWrap .img09 {
  width: 43.33%;
}
@media screen and (max-width: 644px) {
  .sec04 .sec04_imgWrap .img09 {
    width: 100%;
    margin-bottom: 10px;
  }
}
.sec04 .sec04_imgWrap .img10 {
  width: 55%;
}
@media screen and (max-width: 644px) {
  .sec04 .sec04_imgWrap .img10 {
    width: 100%;
  }
}

.sec05 .sec05_bgBox {
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
  background-color: #415463;
  padding: 50px 55px;
  color: #fff;
  margin-bottom: 45px;
}
@media screen and (max-width: 800px) {
  .sec05 .sec05_bgBox {
    padding: 20px;
  }
}
@media screen and (max-width: 644px) {
  .sec05 .sec05_bgBox {
    margin-bottom: 20px;
  }
}
.sec05 .imgList {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 5px;
}
@media screen and (max-width: 644px) {
  .sec05 .imgList {
    gap: 10px 0px;
  }
}
.sec05 .imgList li {
  width: 32.27%;
}
@media screen and (max-width: 644px) {
  .sec05 .imgList li {
    width: 48%;
  }
}
.sec05 .imgList li figure {
  margin-bottom: 5px;
}
.sec05 .imgList li .txt01 {
  font-size: 15px;
  color: #fff !important;
  line-height: 1;
}
@media screen and (max-width: 991px) {
  .sec05 .imgList li .txt01 {
    font-size: 14px;
  }
}
.sec05 .imgList li .txt01 small {
  color: #fff !important;
}
.sec05 .tit01 {
  font-size: 48px;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 991px) {
  .sec05 .tit01 {
    font-size: 38px;
  }
}
.sec05 .txt02 {
  font-size: 18px;
  line-height: 1.27;
}
@media screen and (max-width: 991px) {
  .sec05 .txt02 {
    font-size: 15px;
  }
}

.sec06 .sec06_article {
  width: 100%;
  max-width: 1205px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 991px) {
  .sec06 .sec06_article {
    flex-direction: column;
    gap: 20px;
  }
}
.sec06 .sec06_article + .sec06_article {
  margin-top: 50px;
}
@media screen and (max-width: 644px) {
  .sec06 .sec06_article + .sec06_article {
    margin-top: 25px;
  }
}
.sec06 .sec06_article + .caption {
  width: 100%;
  max-width: 1205px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 1em;
}
.sec06 .sec06_article .imgBox {
  width: 59.75%;
}
@media screen and (max-width: 991px) {
  .sec06 .sec06_article .imgBox {
    width: 100%;
  }
}
.sec06 .sec06_article .txtBox {
  width: 33.6%;
}
@media screen and (max-width: 991px) {
  .sec06 .sec06_article .txtBox {
    width: 100%;
  }
}
.sec06 .sec06_article .tit01 {
  font-size: 30px;
  color: #231815;
  line-height: 1.3;
}
@media screen and (max-width: 991px) {
  .sec06 .sec06_article .tit01 {
    font-size: 20px;
  }
}
.sec06 .sec06_article .tit01 .floor {
  font-size: 1.6em;
  color: #e9546b;
  margin-right: 0.26em;
}
.sec06 .sec06_article .txt01 {
  font-size: 18px;
  line-height: 1.61;
}
@media screen and (max-width: 991px) {
  .sec06 .sec06_article .txt01 {
    font-size: 15px;
  }
}

.sec07 {
  background-color: #fff;
}
.sec07 .sec07_header {
  position: relative;
}
.sec07 .sec07_header img {
  width: 100%;
}
.sec07 .tit01 {
  left: auto;
  right: 7.1%;
  transform: translateY(-10%);
}
@media screen and (max-width: 644px) {
  .sec07 .tit01 {
    right: 0px;
  }
}
.sec07 .sec07_contents01 {
  margin-left: -6vw;
  margin-right: -6vw;
  box-sizing: border-box;
  padding: 65px 6vw;
  background: #415463;
}
@media screen and (max-width: 644px) {
  .sec07 .sec07_contents01 {
    padding: 30px 6vw;
  }
}
.sec07 .tit02 {
  text-align: center;
  font-size: 51px;
  margin-bottom: 60px;
}
@media screen and (max-width: 991px) {
  .sec07 .tit02 {
    font-size: 30px;
  }
}
@media screen and (max-width: 644px) {
  .sec07 .tit02 {
    margin-bottom: 30px;
    font-size: 28px;
  }
}
.sec07 .tit02 span {
  display: inline-block;
  font-size: 0.68em;
  border-bottom: solid 3px #fff;
}
.sec07 .sec07_article_wrap {
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-wrap: wrap;
  gap: 35px 15px;
  margin-bottom: 95px;
}
@media screen and (max-width: 991px) {
  .sec07 .sec07_article_wrap {
    flex-direction: column;
  }
}
@media screen and (max-width: 644px) {
  .sec07 .sec07_article_wrap {
    gap: 30px 15px;
    margin-bottom: 40px;
  }
}
.sec07 .sec07_article {
  width: calc((100% - 15px) / 2);
  display: flex;
  flex-wrap: wrap;
  position: relative;
}
@media screen and (max-width: 991px) {
  .sec07 .sec07_article {
    width: 100%;
  }
}
@media screen and (max-width: 644px) {
  .sec07 .sec07_article {
    display: block;
  }
}
.sec07 .sec07_article::before {
  display: block;
  content: "";
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background-color: rgba(98, 122, 134, 0.36);
  mix-blend-mode: multiply;
}
.sec07 .sec07_article .txtBox {
  width: 52.03%;
  position: relative;
  z-index: 1;
  box-sizing: border-box;
  padding: 20px;
}
@media screen and (max-width: 644px) {
  .sec07 .sec07_article .txtBox {
    width: 100%;
  }
}
.sec07 .sec07_article .imgBox {
  width: 47.96%;
}
@media screen and (max-width: 644px) {
  .sec07 .sec07_article .imgBox {
    width: 100%;
  }
}
.sec07 .sec07_article .imgBox img {
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.sec07 .sec07_article .imgBox .sec07_imgcap {
  top: 100%;
  bottom: auto;
  color: #fff;
}
.sec07 .tit03 {
  font-size: 21px;
  line-height: 1.52;
  letter-spacing: -0.05em;
}
@media screen and (max-width: 991px) {
  .sec07 .tit03 {
    font-size: 18px;
  }
}
.sec07 .txt01 {
  font-size: 16px;
  line-height: 1.5;
}
@media screen and (max-width: 991px) {
  .sec07 .txt01 {
    font-size: 14px;
  }
}
.sec07 .txt02 {
  text-align: center;
  font-size: 47px;
  line-height: 1.17;
}
@media screen and (max-width: 991px) {
  .sec07 .txt02 {
    font-size: 30px;
  }
}
.sec07 .txt02 strong {
  font-size: 1.12em;
  color: #fff9b1;
}
.sec07 .txt03 {
  font-size: 36px;
  text-align: center;
}
@media screen and (max-width: 991px) {
  .sec07 .txt03 {
    font-size: 24px;
  }
}
.sec07 .txt04 {
  background-color: #804355;
  text-align: center;
  padding: 20px 0px !important;
  font-size: min(46px, 2.87vw);
  letter-spacing: 0em;
  margin-bottom: 115px;
}
@media screen and (max-width: 991px) {
  .sec07 .txt04 {
    font-size: 24px;
    line-height: 1.4;
  }
}
@media screen and (max-width: 644px) {
  .sec07 .txt04 {
    margin-bottom: 50px;
  }
}
.sec07 .btn {
  display: block;
  width: 100%;
  max-width: 935px;
  margin-left: auto;
  margin-right: auto;
  background: #695511;
  border-radius: 18px;
  padding: 50px 0px 35px;
  font-size: 52px;
  line-height: 1;
  color: #fff;
}
@media screen and (max-width: 991px) {
  .sec07 .btn {
    font-size: 38px;
  }
}
@media screen and (max-width: 644px) {
  .sec07 .btn {
    padding: 25px 0px;
    font-size: 24px;
  }
}
.sec07 .btn span {
  display: block;
  font-size: 0.65em;
  margin-bottom: 15px;
}