/* 1rem = 16px
    1px = 0.0625rem(1/16)
    PCbasewidth = 1380px(1280+50+50)
    PC : 1px = 1/1380*100vw = 0.072vw
    SPbasewidth = 750px
    SP : 1px = 1/750*100vw = 0.133vw
    Max screen size = 100% */
/* ======================================================== */
/*      PC Common
/* ======================================================== */
.intro {
  font-size: 1.063rem;
  letter-spacing: 0.1em;
  color: #474748;
  margin-top: 2.925rem;
  text-align: center;
  font-weight: 600;
}

.link_btn01 a {
  width: 100%;
  min-height: 5.625rem;
  background: #0031c6;
  font-size: 1.25rem;
  text-align: center;
  padding: 0.5em 3.125rem 0.5em 0.5em;
  position: relative;
  margin: 0 auto;
  letter-spacing: 0.15em;
  color: #fefefe;
  font-weight: 500;
  border: 1px solid #0031c6;
  display: flex;
  align-items: center;
  justify-content: center;
}
.link_btn01 a .letter {
  fill: #ffffff;
}
.link_btn01 a:hover {
  background-color: #FFFFFF;
  color: #0031c6;
}
.link_btn01 a:hover .letter {
  fill: #0031c6;
}
.link_btn01 a:hover .arrow02 {
  background-color: #0031c6;
}
.link_btn01 a:hover .arrow02:before, .link_btn01 a:hover .arrow02:after {
  background-color: #0031c6;
}
.link_btn01 .arrow01 {
  position: absolute;
  right: 1.563rem;
  top: 50%;
  transform: translateY(-50%);
  display: block;
  width: 1.188rem;
  height: 1.188rem;
  border: solid 1px #FFFFFF;
  background-color: #0031c6;
}
.link_btn01 .arrow01:before, .link_btn01 .arrow01:after {
  content: "";
  position: absolute;
  top: calc( 50% - 0.044rem );
  right: 0.313rem;
  width: 0.438rem;
  height: 0.088rem;
  border-radius: 9999px;
  background-color: #ffffff;
  transform-origin: calc( 100% - 0.044rem ) 50%;
}
.link_btn01 .arrow01:before {
  transform: rotate(49.4deg);
}
.link_btn01 .arrow01:after {
  transform: rotate(-49.4deg);
}
.link_btn01 .arrow02 {
  position: absolute;
  right: 1.563rem;
  top: 50%;
  transform: translateY(-50%);
  display: block;
  width: 0.813rem;
  height: 0.088rem;
  border-radius: 9999px;
  background-color: #ffffff;
}
.link_btn01 .arrow02:before, .link_btn01 .arrow02:after {
  content: "";
  position: absolute;
  top: calc( 50% - 0.044rem );
  right: 0;
  width: 0.463rem;
  height: 0.088rem;
  border-radius: 9999px;
  background-color: #ffffff;
  transform-origin: calc( 100% - 0.044rem ) 50%;
}
.link_btn01 .arrow02:before {
  transform: rotate(51.35deg);
}
.link_btn01 .arrow02:after {
  transform: rotate(-51.35deg);
}

.more_btn {
  margin-top: 4.888rem;
}
.more_btn a {
  font-size: 1.125rem;
  letter-spacing: 0.05em;
  text-align: center;
  color: #0031c6;
  width: 25rem;
  height: 3.438rem;
  border: 1px solid #0031c6;
  position: relative;
  font-weight: 600;
  background-color: #FFFFFF;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: auto;
  margin-right: auto;
  cursor: pointer;
  transition: all 0.4s ease-out;
}
.more_btn a:before, .more_btn a:after {
  content: "";
  position: absolute;
  top: 40%;
  transform: translateY(-40%);
  right: 1.688rem;
  width: 0.088rem;
  height: 0.594rem;
  border-radius: 9999px;
  background-color: #0031c6;
  transform-origin: 50% calc(100% - 0.044rem);
  transition: all 0.4s ease-out;
}
.more_btn a:before {
  transform: rotate(45deg);
}
.more_btn a:after {
  transform: rotate(-45deg);
}
.more_btn a:hover {
  background-color: #0031c6;
  color: #FFFFFF;
}
.more_btn a:hover:after, .more_btn a:hover:before {
  background-color: #FFFFFF;
}

.ttl_en .letter {
  fill: #231815;
}

/* ======================================================== */
/*      PC Corporate main
/* ======================================================== */
/* .mv
/* -------------------------------------------------------- */
.mv {
  background: linear-gradient(90deg, rgba(90, 174, 184, 0.15) 0%, rgba(179, 201, 124, 0.15) 50.28%, rgba(215, 123, 118, 0.15) 99.98%);
}
.mv > div:first-child {
  width: 100%;
  aspect-ratio: 1920 / 977;
}
.mv_catch01 {
  font-size: 1.875rem;
  letter-spacing: 0.05em;
  text-align: center;
  color: #285ece;
  margin-top: 2.569rem;
  font-weight: 600;
}
.mv_note {
  font-size: 0.688rem;
  letter-spacing: 0.1em;
  text-align: center;
  margin-top: 1.238rem;
}

/* .srvc
/* -------------------------------------------------------- */
.srvc {
  padding-top: 5.094rem;
  padding-bottom: 8.113rem;
  background: linear-gradient(90deg, rgba(90, 174, 184, 0.15) 0%, rgba(179, 201, 124, 0.15) 50.28%, rgba(215, 123, 118, 0.15) 99.98%);
}
.srvc .ttl_en {
  width: 16.678rem;
}
.srvc_air {
  margin-top: 3.106rem;
  width: 19.141%;
  margin-left: auto;
  margin-right: auto;
}
.srvc_item_lead {
  width: 8.331rem;
  margin-left: auto;
  margin-right: auto;
}
.srvc_item_sttl {
  margin-top: 1.113rem;
  width: 22.891rem;
  margin-left: auto;
  margin-right: auto;
}
.srvc_item_wrp {
  margin-top: 2.031rem;
  position: relative;
}
.srvc_item_img02 {
  position: absolute;
  top: 0;
  left: 16.146%;
  width: 33.854%;
}
.srvc_item_link {
  position: absolute;
  top: 80.167%;
  left: 17.538%;
  width: 66.154%;
}
.srvc_item_new {
  position: absolute;
  top: 2.222%;
  right: 1.823%;
  width: 6.771%;
}
.srvc_item_catch {
  position: absolute;
  top: 34.111%;
  right: 2.224%;
  width: 20.254%;
}
.srvc .link_btn01 {
  position: absolute;
  bottom: 5.111%;
  right: 23.198%;
  width: 20.833%;
}
.srvc .link_btn01 a {
  min-height: auto;
  aspect-ratio: 400/90;
}
.srvc .link_btn01 svg {
  height: 0.913rem;
}
.srvc .srvc_cle {
  margin-top: 4.706rem;
}
.srvc .srvc_pro {
  margin-top: 4.15rem;
}
.srvc .srvc_pro .srvc_item_sttl {
  width: 20.433rem;
}
.srvc .srvc_pro .srvc_item_wrp {
  margin-top: 2.363rem;
}
.srvc .srvc_pro .srvc_item_img02 {
  left: auto;
  right: 16.146%;
}
.srvc .srvc_pro .srvc_item_new {
  right: auto;
  left: 1.823%;
}
.srvc .srvc_pro .srvc_item_catch {
  right: auto;
  left: 14.057%;
  top: 6.667%;
  width: 15.035%;
}
.srvc .srvc_pro .link_btn01 {
  right: auto;
  left: 22.005%;
}
.srvc .srvc_evo {
  margin-top: 4.744rem;
}
.srvc .srvc_evo .srvc_item_sttl {
  width: 20.464rem;
}
.srvc .srvc_evo .srvc_item_wrp {
  margin-top: 2.744rem;
}
.srvc .srvc_evo .srvc_item_catch {
  right: 5%;
  top: 56.089%;
  width: 17.459%;
}
.srvc_newitems {
  margin-top: 7.913rem;
  font-size: 2.625rem;
  letter-spacing: 0.1em;
  text-align: center;
  color: #000;
  font-weight: 600;
}

/* .impl
/* -------------------------------------------------------- */
.impl {
  margin-top: 5.938rem;
  padding-top: 2.5rem;
}
.impl .ttl_en {
  max-width: 54.083rem;
}
.impl_achv {
  margin-top: 4.075rem;
  padding-top: 6.106rem;
  padding-bottom: 4.475rem;
  background-color: #0031c6;
}
.impl_achv_sttl {
  font-size: 1.875rem;
  letter-spacing: 0.1em;
  text-align: center;
  color: #fff;
  font-weight: 600;
}
.impl_achv_list {
  margin-top: 5.006rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
.impl_achv_list > li {
  width: 23.594%;
  min-height: 12.688rem;
  background-color: #FFFFFF;
  border-radius: 0.561rem;
  padding: 2.213rem 0.625rem 1.513rem;
}
.impl_achv_item {
  font-size: 1.309rem;
  letter-spacing: 0.1em;
  text-align: center;
  font-weight: 600;
}
.impl_achv_num {
  margin-top: 1.563rem;
}
.impl_achv_num img {
  height: 3.75rem;
}
.impl_achv_date {
  margin-top: 1.469rem;
  font-size: 1rem;
  letter-spacing: 0.05em;
  text-align: center;
  font-weight: 500;
}
.impl .slider01 {
  margin-top: 5.063rem;
}
.impl_map {
  margin-top: 5rem;
  position: relative;
  aspect-ratio: 1380/1000;
}
.impl_map_txt01 {
  font-size: 1.75rem;
  letter-spacing: 0.05em;
  line-height: 1.714;
  font-weight: 600;
}
.impl_map_txt02 {
  margin-top: 2.375rem;
  font-size: 1.25rem;
  letter-spacing: 0.05em;
  line-height: 2;
  width: 39.844%;
  text-align: justify;
}
.impl_map_wrp {
  position: absolute;
  top: 3.4%;
  left: 15.942%;
  width: 63.25rem;
  max-width: 84%;
  aspect-ratio: 1012/961;
}
.impl_map_bg {
  width: 82.905%;
}
.impl_map_img01, .impl_map_img02, .impl_map_img03, .impl_map_txt03 {
  position: absolute;
}
.impl_map_img01 {
  top: 32.674%;
  left: 2.174%;
  width: 25.233%;
}
.impl_map_img02 {
  top: 29.969%;
  left: 67.292%;
  width: 16.897%;
}
.impl_map_img03 {
  top: 75.442%;
  left: 64.328%;
  width: 35.62%;
}
.impl_map_txt03 {
  font-size: 1.75rem;
  letter-spacing: 0.05em;
  line-height: 1.714;
  text-align: right;
  color: #000;
  top: 84.8%;
  left: 40.072%;
  font-weight: 500;
}

/* .bsns
/* -------------------------------------------------------- */
.bsns {
  padding-top: 2.5rem;
  margin-top: 3.75rem;
}
.bsns_envr_txt01 {
  font-size: 2.625rem;
  letter-spacing: 0.05em;
  text-align: center;
  font-weight: 600;
}
.bsns_envr_wrp {
  margin-top: 4.063rem;
  padding-top: 3.125rem;
  background: url("../images/corporate/bsns_envr_bg.webp") no-repeat top center/cover;
  min-height: 53.125rem;
}
@media only screen and (-webkit-min-device-pixel-ratio: 2) {
  .bsns_envr_wrp {
    background-image: url("../images/corporate/bsns_envr_bg@2x.webp");
  }
}
.bsns_envr_txt02 {
  font-size: 2.188rem;
  letter-spacing: 0.1em;
  line-height: 1.829;
  text-align: center;
  color: #fff;
  font-weight: 600;
}
.bsns_envr_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  margin-left: auto;
  margin-right: auto;
  width: 89.844%;
  margin-top: 2.5rem;
}
.bsns_envr_list > div {
  width: 30.957%;
}
.bsns_envr_list dd {
  margin-top: 2.063rem;
  width: 87.079%;
  min-height: 9.25rem;
  font-size: 1.125rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.556;
  text-align: center;
  color: #fff;
  border-bottom: solid 1px #FFFFFF;
  border-top: solid 1px #FFFFFF;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  align-content: center;
}
.bsns_envr_list dd p {
  width: 100%;
}
.bsns_envr_list dd .font-M {
  font-size: 0.969rem;
  letter-spacing: -0.05em;
  font-weight: 500;
  margin-top: 0.625rem;
}
.bsns_envr_list dd .font-S {
  font-size: 0.875rem;
  font-weight: 500;
  margin-top: 0.313rem;
}
.bsns_envr_sprt {
  background-color: rgba(244, 247, 255, 0.9);
  margin-top: -8.875rem;
  max-width: 59.375rem;
  min-height: 21.875rem;
  margin-left: auto;
  margin-right: auto;
  padding-top: 3.75rem;
}
.bsns_envr_txt03 {
  font-size: 1.438rem;
  letter-spacing: 0.1em;
  line-height: 1.957;
  color: #000;
  text-align: center;
  font-weight: 600;
}
.bsns_envr .link_btn01 {
  width: 25rem;
  margin-top: 3.375rem;
  margin-left: auto;
  margin-right: auto;
}
.bsns_agnc {
  margin-top: 5rem;
}
.bsns_agnc_txt01 {
  font-size: 2.625rem;
  letter-spacing: 0.1em;
  text-align: center;
  color: #000;
  font-weight: 500;
}
.bsns_agnc_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  margin-left: auto;
  margin-right: auto;
  width: 92.188%;
  margin-top: 2.5rem;
}
.bsns_agnc_list > li:first-child {
  width: 41.102%;
}
.bsns_agnc_list > li:first-child .bsns_agnc_txt, .bsns_agnc_list > li:first-child .bsns_agnc_ttl {
  width: 64.742%;
  margin-left: 18.557%;
}
.bsns_agnc_list > li:nth-child(2) {
  margin-right: auto;
}
.bsns_agnc_list > li:nth-child(2), .bsns_agnc_list > li:nth-child(3) {
  width: 26.61%;
}
.bsns_agnc_list > li:nth-child(2) .bsns_agnc_img, .bsns_agnc_list > li:nth-child(3) .bsns_agnc_img {
  padding-top: 3.563rem;
}
.bsns_agnc_img {
  height: 23.438rem;
}
.bsns_agnc_ttl {
  font-size: 1.5rem;
  font-weight: 500;
  margin-top: -1.5rem;
}
.bsns_agnc_txt {
  font-size: 1rem;
  letter-spacing: 0.03em;
  line-height: 1.75;
  margin-top: 1.25rem;
  text-align: justify;
}
.bsns_agnc_txt li {
  text-indent: -1em;
  margin-left: 1em;
}

/* .clmn
/* -------------------------------------------------------- */
.clmn {
  margin-top: 7.875rem;
  padding-top: 5.938rem;
  padding-bottom: 5.313rem;
  background-color: #eef6f7;
}
.clmn .ttl_en {
  width: 16.568rem;
}
.clmn_wrp {
  max-width: calc( 1420px + 100 / ( 1420 + 100 ) * 100% );
  width: 100%;
  padding-left: calc( 50 / ( 1420 + 100 ) * 100% );
  padding-right: calc( 50 / ( 1420 + 100 ) * 100% );
  margin-left: auto;
  margin-right: auto;
}
.clmn_list {
  margin-top: 3.125rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
.clmn_list > li {
  width: 25%;
  padding-top: 2.813rem;
  padding-bottom: 3.438rem;
  border-right: 1px solid #928178;
}
.clmn_list > li > a {
  width: 81.69%;
  margin-left: auto;
  margin-right: auto;
  line-height: 1.6;
  letter-spacing: 0.1em;
  font-weight: 600;
  display: block;
}
.clmn_list > li:first-child {
  border-left: 1px solid #928178;
}
.clmn_ttl {
  font-size: 0.875rem;
  margin-top: 1.25rem;
  font-weight: 800;
}
.clmn_txt {
  font-size: 0.938rem;
  margin-top: 0.625rem;
}
.clmn_date {
  font-size: 0.75rem;
  margin-top: 0.313rem;
}
.clmn_read {
  margin-top: 0.938rem;
  font-size: 0.938rem;
  letter-spacing: 0.1em;
  color: #0031c6;
  text-decoration: none;
}
.clmn .arrow {
  position: relative;
  display: inline-block;
  width: 1.25rem;
  height: 0.088rem;
  border-radius: 9999px;
  background-color: #0031c6;
  margin-left: 0.625rem;
  top: -0.25rem;
}
.clmn .arrow:before, .clmn .arrow:after {
  content: "";
  position: absolute;
  top: calc(50% - 0.044rem);
  right: 0;
  width: 0.725rem;
  height: 0.088rem;
  border-radius: 9999px;
  background-color: #0031c6;
  transform-origin: calc(100% - 0.044rem) 50%;
}
.clmn .arrow:before {
  transform: rotate(48.8deg);
}
.clmn .arrow:after {
  transform: rotate(-48.8deg);
}
.clmn .nopost {
  margin-top: 5rem;
  text-align: center;
  width: 100%;
  padding-top: 0;
  border: none;
}
.clmn .nopost:first-child {
  border: none;
}

/* .news
/* -------------------------------------------------------- */
.news {
  padding-top: 2.5rem;
  margin-top: 8.125rem;
}
.news .ttl_en {
  width: 11.441rem;
}
.news_list {
  margin-left: auto;
  margin-right: auto;
  width: 84.375%;
  margin-top: 3.375rem;
}
.news_list > li a {
  border-bottom: solid 1px #4564cc;
  padding-top: 1.563rem;
  padding-bottom: 1.563rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  color: #231815;
}
.news_list > li a:hover .news_list_ctg {
  background-color: #0031c6;
  color: #FFFFFF;
}
.news_list > li a:hover .news_list_ttl {
  text-decoration: underline;
}
.news_list > li:first-child a {
  border-top: 1px solid #0031c6;
}
.news_list_ctg {
  font-size: 1rem;
  letter-spacing: 0.05em;
  text-align: center;
  color: #0031c6;
  width: 12.037%;
  height: 2.5rem;
  border: 1px solid #0031c6;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: 3.056%;
  margin-right: 4.444%;
  font-weight: 600;
  transition: all 0.4s ease-out;
}
.news_list_ttl {
  font-size: 1rem;
  letter-spacing: 0.1em;
  line-height: 2.125;
  width: 77.778%;
}
.news .nopost {
  margin-top: 5rem;
  text-align: center;
}

/* .cmpn
/* -------------------------------------------------------- */
.cmpn {
  padding-top: 2.5rem;
  margin-top: 8.75rem;
}
.cmpn .ttl_en {
  width: 19.714rem;
}
.cmpn_grtn {
  margin-top: 6.25rem;
  width: 76.563%;
  margin-left: auto;
  margin-right: auto;
}
.cmpn_grtn:nth-of-type(n+2) {
  margin-top: 11.25rem;
}
.cmpn_grtn_wrp {
  margin-top: 5rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
.cmpn_lead {
  font-size: 1.875rem;
  letter-spacing: 0.1em;
}
.cmpn_txt {
  width: 64.286%;
  font-size: 1rem;
  letter-spacing: 0.05em;
  line-height: 2.25;
  text-align: justify;
}
.cmpn_img {
  width: 27.551%;
}
.cmpn_name {
  margin-top: 2.5rem;
  font-size: 1.875rem;
  letter-spacing: 0.05em;
  text-align: right;
  font-weight: 500;
}
.cmpn_name span {
  font-size: 1rem;
  margin-right: 0.625rem;
  display: inline-block;
  vertical-align: middle;
  margin-top: -0.313rem;
}
.cmpn_prof {
  margin-top: 13.438rem;
}
.cmpn_prof > div {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
.cmpn_prof_list {
  width: 50%;
  font-size: 1rem;
  line-height: 2.2;
  letter-spacing: 0.05em;
  border-right: 1px solid #0031C6;
  border-top: 1px solid #0031C6;
}
.cmpn_prof_list > div {
  display: flex;
  justify-content: space-between;
}
.cmpn_prof_list > div:last-child dt {
  border-bottom: 1px solid #0031C6;
}
.cmpn_prof_list dt {
  width: 30%;
  background: #0031C6;
  border-right: 1px solid #0031C6;
  border-bottom: 1px solid #FFFFFF;
  padding: 1.063rem 1.563rem;
  font-weight: 600;
  color: #FFFFFF;
}
.cmpn_prof_list dd {
  width: 70%;
  padding: 0.438rem 1.563rem;
  display: flex;
  align-items: center;
  border-bottom: 1px solid #0031C6;
}
.cmpn_prof_list .hgt01 {
  min-height: 4.5rem;
}
.cmpn_prof_list .hgt02 {
  min-height: 9rem;
}
.cmpn_prof_list .officer dd {
  line-height: 1.6;
}

/* .flng
/* -------------------------------------------------------- */
.flng {
  position: relative;
  aspect-ratio: 1920/1150;
  background: url("../images/corporate/flng_bg.webp") no-repeat top center/cover;
}
@media only screen and (-webkit-min-device-pixel-ratio: 2) {
  .flng {
    background-image: url("../images/corporate/flng_bg@2x.webp");
  }
}
.flng_txt {
  position: absolute;
  top: 31.304%;
  left: 21.354%;
  width: 21.615%;
}

/* .hsty
/* -------------------------------------------------------- */
.hsty .ttl_en {
  width: 16.726rem;
}
.hsty_list {
  width: 90.625%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 4.063rem;
  border-top: 2px solid #0031c6;
}
.hsty_list > div {
  border-bottom: 1px solid #0031c6;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
}
.hsty_list dt {
  width: 20.259%;
  font-size: 2.5rem;
  color: #0031c6;
  font-family: Arial, Helvetica, "sans-serif";
  text-align: center;
}
.hsty_list dd {
  width: 79.741%;
  font-size: 1rem;
  letter-spacing: 0.2em;
  line-height: 150%;
  padding: 0.938rem 4.741%;
  border-left: 1px solid #0031c6;
}

/* .onln
/* -------------------------------------------------------- */
.onln {
  margin-top: 11.081rem;
}
.onln_ttl {
  max-width: 35.75rem;
  font-size: 1.875rem;
  letter-spacing: 0.05em;
  font-weight: 600;
  position: relative;
  text-align: center;
  font-style: italic;
  margin-left: auto;
  margin-right: auto;
}
.onln_ttl:before, .onln_ttl:after {
  content: "";
  height: 1px;
  width: 4.728rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  display: block;
  background-color: #231815;
}
.onln_ttl:before {
  left: 0;
}
.onln_ttl:after {
  right: 0;
}
.onln_list {
  margin-top: 3.125rem;
  width: 65.134%;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
.onln_list li {
  width: 47.498%;
}
.onln_list li img {
  margin-left: auto;
  margin-right: auto;
}
.onln_list li:first-child svg {
  width: 8.429rem;
}
.onln_list li:nth-child(2) svg {
  width: 6.126rem;
}
.onln .link_btn01 a {
  min-height: 4.5rem;
}

/* .contact
/* -------------------------------------------------------- */
.contact_thanks {
  font-size: 1.313rem;
  line-height: 2.5;
  text-align: center;
}

@media screen and (max-width: 790px) {
  /* ======================================================== */
  /*      SP Common
  /* ======================================================== */
  .intro {
    font-size: 1.75rem;
    letter-spacing: 0.05em;
    color: #231815;
    margin-top: 2.813rem;
    font-weight: 400;
    line-height: 1.786;
  }

  .link_btn01 a {
    min-height: 5.875rem;
    font-size: 1.5rem;
    letter-spacing: 0.1em;
    padding: 0.2em 5rem 0.2em 1.875rem;
    /*.arrow {
    	right: px(40);
    	width: px(21.4);
    	height: px(2);
    	background-color: aqua;
    	&:before,
    	&:after {
    		content: "";
    		position: absolute;
    		top: calc(50% - 0.063rem );
    		right: 0;
    		width: px(13);
    		height: px(2);
    		transform-origin: calc(100% - 0.063rem ) 50%;
    		background-color: crimson;
    	}
    	&:before {
    		transform: rotate(47.95deg);
    	}
    	&:after {
    		transform: rotate(-47.95deg);
    	}
    }*/
  }
  .link_btn01 a .arrow01 {
    right: 2.125rem;
    width: 2.375rem;
    height: 2.375rem;
    border: solid 0.125rem #FFFFFF;
  }
  .link_btn01 a .arrow01:before, .link_btn01 a .arrow01:after {
    top: calc( 50% - 0.075rem );
    right: 0.75rem;
    width: 0.744rem;
    height: 0.15rem;
    transform-origin: calc( 100% - 0.075rem ) 50%;
  }
  .link_btn01 a .arrow01:before {
    transform: rotate(45deg);
  }
  .link_btn01 a .arrow01:after {
    transform: rotate(-45deg);
  }
  .link_btn01 a .arrow02 {
    width: 1.313rem;
    height: 0.125rem;
  }
  .link_btn01 a .arrow02:before, .link_btn01 a .arrow02:after {
    top: calc( 50% - 0.075rem );
    width: 0.744rem;
    height: 0.15rem;
    transform-origin: calc( 100% - 0.075rem ) 50%;
  }
  .link_btn01 a .arrow02:before {
    transform: rotate(49.1deg);
  }
  .link_btn01 a .arrow02:after {
    transform: rotate(-49.1deg);
  }

  /* ======================================================== */
  /*      SP Corporate main 
  /* ======================================================== */
  /* .header
  /* -------------------------------------------------------- */
  .coporate .gnav li a {
    color: #231815;
  }

  /* .mv
  /* -------------------------------------------------------- */
  .mv_catch01 {
    margin-top: 2.569rem;
    font-size: 2.813rem;
    letter-spacing: 0.1em;
    line-height: 1.844;
    color: #000;
    margin-top: 3.75rem;
  }
  .mv_note {
    font-size: 1.375rem;
    margin-top: 1.563rem;
    line-height: 1.818;
  }

  /* .srvc
  /* -------------------------------------------------------- */
  .srvc {
    padding-top: 0;
    padding-bottom: 0;
    background: none;
  }
  .srvc > .contwrp {
    background: linear-gradient(90deg, rgba(90, 174, 184, 0.15) 0%, rgba(179, 201, 124, 0.15) 50.28%, rgba(215, 123, 118, 0.15) 99.98%);
    padding-bottom: 7.125rem;
    padding-top: 6.25rem;
  }
  .srvc .ttl_en {
    width: 21.46rem;
  }
  .srvc_air {
    margin-top: 3.75rem;
    width: 20.431rem;
  }
  .srvc_item {
    background-color: #EDEFEF;
    padding-top: 4.375rem;
    padding-bottom: 7.75rem;
  }
  .srvc_item_lead {
    width: 24.528%;
  }
  .srvc_item_sttl {
    margin-top: 1.063rem;
    width: 53.912%;
  }
  .srvc_item_wrp {
    margin-top: 3.363rem;
    position: static;
  }
  .srvc_item_img01 {
    position: relative;
  }
  .srvc_item_img02 {
    position: static;
    margin-top: 4.063rem;
    width: 84%;
    margin-left: auto;
    margin-right: auto;
  }
  .srvc_item_link {
    position: static;
    width: 95.238%;
    margin-top: 2.188rem;
    margin-left: auto;
    margin-right: auto;
  }
  .srvc_item_new {
    top: 2.889%;
    left: 3.6%;
    right: auto;
    width: 28.6%;
  }
  .srvc_item_catch {
    top: 60.689%;
    left: 9.627%;
    width: 62.219%;
  }
  .srvc .link_btn01 {
    position: static;
    margin-top: 4.625rem;
    width: 84.615%;
    margin-left: auto;
    margin-right: auto;
  }
  .srvc .link_btn01 a {
    aspect-ratio: auto;
    min-height: 5.875rem;
  }
  .srvc .link_btn01 svg {
    height: 1.274rem;
  }
  .srvc .srvc_cle {
    margin-top: 5.875rem;
  }
  .srvc .srvc_pro {
    margin-top: 5.875rem;
  }
  .srvc .srvc_pro .srvc_item_sttl {
    width: 42.036%;
  }
  .srvc .srvc_pro .srvc_item_wrp {
    margin-top: 3.363rem;
  }
  .srvc .srvc_pro .srvc_item_new {
    left: 3.6%;
  }
  .srvc .srvc_pro .srvc_item_catch {
    left: 46.08%;
    top: 18.478%;
    width: 46.187%;
  }
  .srvc .srvc_evo {
    margin-top: 5.875rem;
  }
  .srvc .srvc_evo .srvc_item_sttl {
    width: 45.152%;
  }
  .srvc .srvc_evo .srvc_item_wrp {
    margin-top: 3.363rem;
  }
  .srvc .srvc_evo .srvc_item_catch {
    left: 38.16%;
    top: 57.944%;
    width: 53.633%;
  }

  /* .impl
  /* -------------------------------------------------------- */
  .impl {
    margin-top: 5.313rem;
  }
  .impl .ttl_en {
    max-width: 38.503rem;
  }
  .impl_achv {
    margin-top: 7.5rem;
    padding-top: 6.25rem;
    padding-bottom: 9.063rem;
  }
  .impl_achv_sttl {
    font-size: 2.625rem;
    line-height: 1.905;
  }
  .impl_achv_list {
    margin-top: 4.375rem;
    justify-content: center;
    grid-row-gap: 3.313rem;
    width: 82.456%;
  }
  .impl_achv_list > li {
    width: 100%;
    min-height: 19.758rem;
    border-radius: 0.876rem;
    padding: 3.125rem 0.625rem 2.375rem;
  }
  .impl_achv_item {
    font-size: 2.188rem;
  }
  .impl_achv_num {
    margin-top: 2.813rem;
  }
  .impl_achv_num img {
    height: 5.545rem;
  }
  .impl_achv_date {
    margin-top: 2.188rem;
    font-size: 1.375rem;
  }
  .impl .slider01 {
    margin-top: 6.5rem;
  }
  .impl .slider01 .slick-slide {
    margin-right: 1.25rem;
  }
  .impl_map {
    margin-top: 6.25rem;
    position: static;
    aspect-ratio: auto;
  }
  .impl_map_txt01 {
    font-size: 2.625rem;
    letter-spacing: 0.1em;
    line-height: 1.905;
  }
  .impl_map_txt02 {
    margin-top: 3.75rem;
    font-size: 1.75rem;
    letter-spacing: 0.1em;
    line-height: 1.893;
    width: 100%;
    color: #474748;
    font-weight: 500;
  }
  .impl_map_wrp {
    position: relative;
    margin-top: 6.25rem;
    width: 110.462%;
    top: 0;
    left: 0;
    margin-left: -5.231%;
    margin-right: -5.231%;
    aspect-ratio: 718/1043;
    max-width: 110.462%;
  }
  .impl_map_bg {
    width: 100%;
  }
  .impl_map_img01 {
    top: 2.972%;
    left: 5.014%;
    width: 35.565%;
  }
  .impl_map_img02 {
    top: 50.527%;
    left: 71.866%;
    width: 27.082%;
  }
  .impl_map_img03 {
    top: 82.454%;
    left: 16.017%;
    width: 51.532%;
  }
  .impl_map_txt03 {
    position: static;
    font-size: 2.5rem;
    line-height: 2;
    text-align: center;
    color: #0031c6;
    font-weight: 500;
    margin-top: 6.563rem;
  }

  /* .bsns
  /* -------------------------------------------------------- */
  .bsns_envr {
    margin-top: 2.5rem;
  }
  .bsns_envr_txt01 {
    letter-spacing: 0.05em;
    line-height: 1.905;
  }
  .bsns_envr_wrp {
    margin-top: 3.125rem;
    padding-bottom: 6rem;
    background: url("../images/corporate/bsns_envr_bg_sp.webp") no-repeat top center/cover;
    min-height: auto;
  }
}
@media screen and (max-width: 790px) and (min-width: 591px) {
  .bsns_envr_wrp {
    background-image: url("../images/corporate/bsns_envr_bg_sp@2x.webp");
  }
}
@media screen and (max-width: 790px) {
  .bsns_envr_txt02 {
    letter-spacing: 0.05em;
  }
  .bsns_envr_list {
    width: 92.308%;
    margin-top: 1.875rem;
  }
  .bsns_envr_list > div {
    width: 100%;
  }
  .bsns_envr_list > div:nth-child(n+2) {
    margin-top: 2.188rem;
  }
  .bsns_envr_list > div:nth-child(n+2):nth-child(2) dd {
    width: 100%;
  }
  .bsns_envr_list > div:nth-child(n+2):nth-child(3) dd {
    width: 91.667%;
  }
  .bsns_envr_list dt {
    width: 80.167%;
    margin-left: auto;
    margin-right: auto;
  }
  .bsns_envr_list dd {
    margin-top: 1.081rem;
    width: 75%;
    min-height: auto;
    font-size: 1.75rem;
    line-height: 1.643;
    border-bottom: solid 0.094rem #FFFFFF;
    border-top: solid 0.094rem #FFFFFF;
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }
  .bsns_envr_list dd .font-M {
    font-size: 1.375rem;
    letter-spacing: 0.1em;
    line-height: 1.636;
    margin-top: 0.938rem;
  }
  .bsns_envr_list dd .font-S {
    font-size: 1.375rem;
    margin-top: 0.938rem;
  }
  .bsns_envr_sprt {
    margin-top: 0;
    min-height: auto;
    padding-top: 5rem;
    padding-bottom: 7.25rem;
  }
  .bsns_envr_txt03 {
    font-size: 2.5rem;
    line-height: 1.95;
    color: #231815;
  }
  .bsns_envr .link_btn01 {
    width: 84.615%;
    margin-top: 4.375rem;
  }
  .bsns_agnc {
    margin-top: 6.25rem;
  }
  .bsns_agnc_txt01 {
    color: #e9443e;
    line-height: 1.905;
    font-weight: 700;
  }
  .bsns_agnc_list {
    width: 92.308%;
    margin-top: 2.5rem;
  }
  .bsns_agnc_list > li:first-child {
    width: 100%;
  }
  .bsns_agnc_list > li:first-child .bsns_agnc_txt, .bsns_agnc_list > li:first-child .bsns_agnc_ttl {
    width: 100%;
    margin-left: 0;
  }
  .bsns_agnc_list > li:first-child .bsns_agnc_img {
    margin-left: -12.5%;
    margin-right: -12.5%;
    width: 125%;
  }
  .bsns_agnc_list > li:first-child .bsns_agnc_ttl {
    margin-top: -3.438rem;
  }
  .bsns_agnc_list > li:nth-child(2) {
    margin-right: auto;
  }
  .bsns_agnc_list > li:nth-child(2), .bsns_agnc_list > li:nth-child(3) {
    width: 100%;
  }
  .bsns_agnc_list > li:nth-child(2) .bsns_agnc_img, .bsns_agnc_list > li:nth-child(3) .bsns_agnc_img {
    padding-top: 0;
  }
  .bsns_agnc_list > li:nth-child(n+2) {
    margin-top: 5rem;
  }
  .bsns_agnc_img {
    height: auto;
  }
  .bsns_agnc_ttl {
    font-size: 2.625rem;
    letter-spacing: 0.1em;
    line-height: 1.905;
    margin-top: 3.125rem;
  }
  .bsns_agnc_txt {
    font-size: 1.75rem;
    letter-spacing: 0.08em;
    line-height: 1.893;
    margin-top: 1.875rem;
    color: #474748;
    font-weight: 600;
  }

  /* .clmn
  /* -------------------------------------------------------- */
  .clmn {
    margin-top: 5rem;
    padding-top: 7.75rem;
    padding-bottom: 11.563rem;
    background: linear-gradient(90deg, rgba(90, 174, 184, 0.15) 0%, rgba(179, 201, 124, 0.15) 50.28%, rgba(215, 123, 118, 0.15) 99.98%);
  }
  .clmn .ttl_en {
    width: 18.338rem;
  }
  .clmn_wrp {
    max-width: auto;
    padding-left: calc( 75 / 750  * 100% );
    padding-right: calc( 75 / 750  * 100% );
  }
  .clmn_list {
    width: 91.667%;
    margin-top: 5rem;
    margin-left: auto;
    margin-right: auto;
  }
  .clmn_list > li {
    width: 100%;
    border-right: none;
    padding-top: 0;
    padding-bottom: 0;
  }
  .clmn_list > li:nth-child(n+2) {
    margin-top: 5.188rem;
  }
  .clmn_list > li > a {
    width: 100%;
  }
  .clmn_list > li:first-child {
    border-left: none;
  }
  .clmn_ttl, .clmn_txt, .clmn_date, .clmn_read {
    margin-left: 2.813rem;
    margin-right: 2.813rem;
  }
  .clmn_ttl {
    font-size: 1.519rem;
    margin-top: 2.188rem;
    font-weight: 800;
  }
  .clmn_txt {
    font-size: 1.688rem;
  }
  .clmn_date {
    font-size: 1.406rem;
    margin-top: 0.625rem;
  }
  .clmn_read {
    margin-top: 1.563rem;
    font-size: 1.625rem;
  }
  .clmn .arrow {
    width: 2.125rem;
    height: 0.163rem;
    margin-left: 1rem;
    top: -0.375rem;
  }
  .clmn .arrow:before, .clmn .arrow:after {
    top: calc(50% - 0.081rem);
    right: 0;
    width: 1.213rem;
    height: 0.163rem;
    transform-origin: calc(100% - 0.081rem) 50%;
  }
  .clmn .arrow:before {
    transform: rotate(45deg);
  }
  .clmn .arrow:after {
    transform: rotate(-45deg);
  }
  .clmn .link_btn01 {
    width: 84.615%;
    margin-top: 10.625rem;
    margin-left: auto;
    margin-right: auto;
  }

  /* .news
  /* -------------------------------------------------------- */
  .news {
    margin-top: 7.688rem;
    padding-top: 8.625rem;
    padding-bottom: 9.375rem;
    background-color: #F4F7FF;
  }
  .news .ttl_en {
    width: 11.441rem;
  }
  .news_list {
    width: 100%;
    margin-top: 5.625rem;
  }
  .news_list > li a {
    padding-top: 3.438rem;
    padding-bottom: 3.125rem;
    border-bottom: solid 0.125rem #4564cc;
  }
  .news_list > li:first-child a {
    border-top: 0.125rem solid #0031c6;
  }
  .news_list_ctg {
    font-size: 1.375rem;
    width: 28%;
    height: 3.125rem;
    margin-left: 0;
    margin-right: 1.625rem;
    border: 0.125rem solid #0031c6;
  }
  .news_list_date {
    font-size: 1.563rem;
    letter-spacing: 0.05em;
    line-height: 1.88;
    font-weight: 600;
  }
  .news_list_ttl {
    font-size: 1.563rem;
    letter-spacing: 0.05em;
    line-height: 1.88;
    width: 100%;
    margin-top: 1.875rem;
  }
  .news .link_btn01 {
    width: 84.615%;
    margin-top: 6.875rem;
    margin-left: auto;
    margin-right: auto;
  }

  /* .cmpn
  /* -------------------------------------------------------- */
  .cmpn {
    margin-top: 5rem;
  }
  .cmpn .ttl_en {
    width: 21.122rem;
  }
  .cmpn_grtn {
    margin-top: 6.25rem;
    padding-top: 5rem;
    width: 100%;
    border-top: 0.125rem solid #0031c6;
  }
  .cmpn_grtn:nth-child(n+2) {
    margin-top: 5rem;
  }
  .cmpn_grtn_wrp {
    margin-top: 4.375rem;
  }
  .cmpn_lead {
    font-size: 2.625rem;
    letter-spacing: 0.05em;
    line-height: 1.667;
    font-weight: 500;
  }
  .cmpn_txt {
    width: 100%;
    font-size: 1.75rem;
    letter-spacing: 0.03em;
    line-height: 2.143;
    order: 2;
    margin-top: 4.375rem;
  }
  .cmpn_img {
    width: 76.923%;
    order: 1;
    margin-left: auto;
    margin-right: auto;
  }
  .cmpn_name {
    font-size: 2.688rem;
    letter-spacing: 0.2em;
    line-height: 0.6;
  }
  .cmpn_name span {
    font-size: 1.375rem;
    display: block;
  }
  .cmpn_prof {
    margin-top: 6.25rem;
  }
  .cmpn_prof_ttl {
    font-size: 2.375rem;
    letter-spacing: 0.2em;
    text-align: center;
    width: 100%;
  }
  .cmpn_prof_list {
    width: 100%;
    font-size: 1.375rem;
    line-height: 1.8;
    border-right: 0.125rem solid #0031C6;
    border-top: 0.125rem solid #0031C6;
  }
  .cmpn_prof_list:first-of-type {
    margin-top: 3.125rem;
  }
  .cmpn_prof_list:first-of-type > div:last-child dt {
    border-bottom: 0.125rem solid #FFFFFF;
  }
  .cmpn_prof_list:last-of-type {
    border-top: none;
  }
  .cmpn_prof_list dt {
    width: 22%;
    padding: 1.313rem 0.75rem;
    letter-spacing: 0.1em;
    border-bottom: 0.125rem solid #FFFFFF;
    font-weight: 500;
  }
  .cmpn_prof_list dd {
    width: 78%;
    padding: 1.313rem 0.75rem;
    letter-spacing: 0.025em;
    border-bottom: 0.125rem solid #0031C6;
  }
  .cmpn_prof_list .hgt01 {
    min-height: auto;
  }
  .cmpn_prof_list .hgt02 {
    min-height: auto;
  }

  /* .flng
  /* -------------------------------------------------------- */
  .flng {
    margin-top: 6.438rem;
    aspect-ratio: 750/1888;
    background: url("../images/corporate/flng_bg_sp.webp") no-repeat top center/100%, linear-gradient(90deg, rgba(90, 174, 184, 0.1) 0%, rgba(179, 201, 124, 0.1) 50.28%, rgba(215, 123, 118, 0.1) 99.98%);
  }
}
@media screen and (max-width: 790px) and (min-width: 591px) {
  .flng {
    background-image: url("../images/corporate/flng_bg_sp@2x.webp");
  }
}
@media screen and (max-width: 790px) {
  .flng_txt {
    top: 52.966%;
    left: 7.333%;
    width: 85.333%;
  }

  /* .hsty
  /* -------------------------------------------------------- */
  .hsty {
    margin-top: 7.938rem;
  }
  .hsty .ttl_en {
    width: 17.92rem;
  }
  .hsty_list {
    width: 100%;
    margin-top: 5rem;
    border-top: 1px solid #0031c6;
  }
  .hsty_list dt {
    width: 100%;
    font-size: 2.5rem;
    text-align: left;
    padding-top: 1.875rem;
  }
  .hsty_list dd {
    width: 100%;
    font-size: 1.688rem;
    letter-spacing: 0;
    padding: 0.625rem 0 2.188rem 0;
    border-left: none;
    line-height: 1.8;
  }

  /* .onln
  /* -------------------------------------------------------- */
  .onln {
    margin-top: 9.375rem;
  }
  .onln_ttl {
    font-size: 2.125rem;
  }
  .onln_ttl:before, .onln_ttl:after {
    height: 0.125rem;
    width: 3.063rem;
  }
  .onln_list {
    margin-top: 3.75rem;
    width: 84.615%;
  }
  .onln_list li {
    width: 100%;
  }
  .onln_list li:first-child svg {
    width: 11.671rem;
  }
  .onln_list li:nth-child(2) {
    margin-top: 3.125rem;
  }
  .onln_list li:nth-child(2) svg {
    width: 8.481rem;
  }
  .onln .link_btn01 a {
    min-height: 5.938rem;
  }
}
