@charset "UTF-8";
/* Font Size ----- */
/* :root {
    //color settings
    //original
    --color-txt: #222b37;
    --color-white: #fff;
    --color-yellow: #ffe200;
    --color-blue: #00a2d2;
    --color-gray: #e7ecf0;

    //color role
    --color-main: var(--color-txt) !important;
    --color-accent: var(--color-yellow) !important;
    --color-sub: var(--color-blue) !important;
    --color-base : var(--color-gray) !important;
} */
.f-primary {
  font-family: "Dela Gothic One", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.f-secondary {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-style: normal;
}

@media screen and (min-width:768px) {
  .ls-sm-0 {
    line-height: 1em;
  }
  .ls-sm-1 {
    line-height: 1.5em;
  }
  .ls-sm-2 {
    line-height: 1.8em;
  }
  .ls-sm-3 {
    line-height: 2.1em;
  }
  .ls-sm-4 {
    line-height: 2.4em;
  }
  .ls-sm-5 {
    line-height: 3em;
  }
}
@media screen and (min-width:992px) {
  .ls-md-0 {
    line-height: 1em;
  }
  .ls-md-1 {
    line-height: 1.5em;
  }
  .ls-md-2 {
    line-height: 1.8em;
  }
  .ls-md-3 {
    line-height: 2.1em;
  }
  .ls-md-4 {
    line-height: 2.4em;
  }
  .ls-md-5 {
    line-height: 3em;
  }
}
@media screen and (min-width:1200px) {
  .ls-lg-0 {
    line-height: 1em;
  }
  .ls-lg-1 {
    line-height: 1.5em;
  }
  .ls-lg-2 {
    line-height: 1.8em;
  }
  .ls-lg-3 {
    line-height: 2.1em;
  }
  .ls-lg-4 {
    line-height: 2.4em;
  }
  .ls-lg-5 {
    line-height: 3em;
  }
}
@media screen and (min-width:1470px) {
  .ls-xl-0 {
    line-height: 1em;
  }
  .ls-xl-1 {
    line-height: 1.5em;
  }
  .ls-xl-2 {
    line-height: 1.8em;
  }
  .ls-xl-3 {
    line-height: 2.1em;
  }
  .ls-xl-4 {
    line-height: 2.4em;
  }
  .ls-xl-5 {
    line-height: 3em;
  }
}
.ls-0 {
  line-height: 1em !important;
}
@media screen and (max-width:1469px) {
  .ls-0-lg-0 {
    line-height: 1em;
  }
  .ls-0-lg-1 {
    line-height: 1.5em;
  }
  .ls-0-lg-2 {
    line-height: 1.8em;
  }
  .ls-0-lg-3 {
    line-height: 2.1em;
  }
  .ls-0-lg-4 {
    line-height: 2.4em;
  }
  .ls-0-lg-5 {
    line-height: 3em;
  }
}
@media screen and (max-width:1199px) {
  .ls-0-md-0 {
    line-height: 1em;
  }
  .ls-0-md-1 {
    line-height: 1.5em;
  }
  .ls-0-md-2 {
    line-height: 1.8em;
  }
  .ls-0-md-3 {
    line-height: 2.1em;
  }
  .ls-0-md-4 {
    line-height: 2.4em;
  }
  .ls-0-md-5 {
    line-height: 3em;
  }
}
@media screen and (max-width:991px) {
  .ls-0-sm-0 {
    line-height: 1em;
  }
  .ls-0-sm-1 {
    line-height: 1.5em;
  }
  .ls-0-sm-2 {
    line-height: 1.8em;
  }
  .ls-0-sm-3 {
    line-height: 2.1em;
  }
  .ls-0-sm-4 {
    line-height: 2.4em;
  }
  .ls-0-sm-5 {
    line-height: 3em;
  }
}
.ls-1 {
  line-height: 1.5em !important;
}
.ls-2 {
  line-height: 1.8em !important;
}
.ls-3 {
  line-height: 2.1em !important;
}
.ls-4 {
  line-height: 2.4em !important;
}
.ls-5 {
  line-height: 3em !important;
}
@media screen and (max-width:767px) {
  .ls-xs-0 {
    line-height: 1em;
  }
  .ls-xs-1 {
    line-height: 1.5em;
  }
  .ls-xs-2 {
    line-height: 1.8em;
  }
  .ls-xs-3 {
    line-height: 2.1em;
  }
  .ls-xs-4 {
    line-height: 2.4em;
  }
  .ls-xs-5 {
    line-height: 3em;
  }
}

.ma-auto {
  margin-right: auto;
  margin-left: auto;
}

.ml-auto {
  margin-left: auto;
}

.mr-auto {
  margin-right: auto;
}

.ma-auto {
  margin-right: auto;
  margin-left: auto;
}

@media (max-width: 767px) {
  .sp-ma-auto {
    margin-right: auto;
    margin-left: auto;
  }
}
@media (max-width: 991px) {
  .tab-ma-auto {
    margin-right: auto;
    margin-left: auto;
  }
}
.ml-auto {
  margin-left: auto;
}

.mr-auto {
  margin-top: auto;
}

.clearfix {
  content: "";
  display: table;
}

/* color ----- */
.accent {
  color: #ffe200;
}

.bg-accent {
  background-color: #ffe200;
}

.sub {
  color: #00a2d2;
}

.bg-sub {
  background-color: #00a2d2;
}

.fff {
  color: #fff;
}

.bg-fff {
  background-color: #fff;
}

.black {
  color: #222b37;
}

.bg-black {
  background-color: #222b37;
}

.base {
  color: #e7ecf0;
}

.bg-base {
  background-color: #e7ecf0;
}

/* outline ----- */
.container {
  position: relative;
  padding-left: 30px;
  padding-right: 30px;
  margin-left: auto;
  margin-right: auto;
}
.container:after {
  display: block;
  clear: both;
  content: "";
}
@media screen and (min-width:768px) {
  .container {
    width: 650px;
    padding-left: 15px;
    padding-right: 15px;
  }
}
@media screen and (min-width:992px) {
  .container {
    width: 870px;
  }
}
@media screen and (min-width:1200px) {
  .container {
    width: 1070px;
  }
}
@media screen and (min-width:1367px) {
  .container {
    width: 1170px;
  }
}
@media screen and (min-width:1470px) {
  .container.-wide {
    width: 1440px;
  }
}

/* display ----- */
.block {
  display: block !important;
}

.inline-block {
  display: inline-block !important;
}

.inline {
  display: inline !important;
}

.relative {
  position: relative !important;
}

/* link ----- */
.link {
  display: block;
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.link:hover {
  text-decoration: none;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}

/* visible hidden ----- */
.visible-xl, .visible-lg, .visible-md, .visible-sm, .visible-xs {
  display: none !important;
}
@media screen and (min-width:1200px) {
  .visible-lg {
    display: block !important;
  }
}
@media screen and (min-width:1470px) {
  .visible-xl {
    display: block !important;
  }
}
@media screen and (min-width:992px) and (max-width:1199px) {
  .visible-md {
    display: block !important;
  }
}
@media screen and (min-width:768px) and (max-width:991px) {
  .visible-sm {
    display: block !important;
  }
}
@media screen and (max-width:767px) {
  .visible-xs {
    display: block !important;
  }
}

.hidden {
  display: none !important;
}
@media screen and (min-width:1200px) {
  .hidden-lg {
    display: none !important;
  }
}
@media screen and (min-width:1470px) {
  .hidden-xl {
    display: none !important;
  }
}
@media screen and (min-width:992px) and (max-width:1199px) {
  .hidden-md {
    display: none !important;
  }
}
@media screen and (min-width:768px) and (max-width:991px) {
  .hidden-sm {
    display: none !important;
  }
}
@media screen and (max-width:767px) {
  .hidden-xs {
    display: none !important;
  }
}

/* Text Bring ----- */
.xtAc {
  text-align: center !important;
}
.xtAl {
  text-align: left !important;
}
.xtAr {
  text-align: right !important;
}
.xtAj {
  text-align: justify !important;
}

@media screen and (min-width:768px) {
  .tAc {
    text-align: center !important;
  }
}
@media screen and (min-width:1470px) {
  .tAc-xl {
    text-align: center !important;
  }
}
@media screen and (min-width:1200px) and (max-width:1469px) {
  .tAc-lg {
    text-align: center !important;
  }
}
@media screen and (min-width:992px) and (max-width:1399px) {
  .tAc-md {
    text-align: center !important;
  }
}
@media screen and (min-width:768px) and (max-width:991px) {
  .tAc-sm {
    text-align: center !important;
  }
}
@media screen and (max-width:767px) {
  .tAc-xs {
    text-align: center !important;
  }
}
@media screen and (min-width:768px) {
  .tAl {
    text-align: left !important;
  }
}
@media screen and (min-width:1470px) {
  .tAl-xl {
    text-align: left !important;
  }
}
@media screen and (min-width:1200px) and (max-width:1469px) {
  .tAl-lg {
    text-align: left !important;
  }
}
@media screen and (min-width:992px) and (max-width:1399px) {
  .tAl-md {
    text-align: left !important;
  }
}
@media screen and (min-width:768px) and (max-width:991px) {
  .tAl-sm {
    text-align: left !important;
  }
}
@media screen and (max-width:767px) {
  .tAl-xs {
    text-align: left !important;
  }
}
@media screen and (min-width:768px) {
  .tAr {
    text-align: right !important;
  }
}
@media screen and (min-width:1470px) {
  .tAr-xl {
    text-align: right !important;
  }
}
@media screen and (min-width:1200px) and (max-width:1469px) {
  .tAr-lg {
    text-align: right !important;
  }
}
@media screen and (min-width:992px) and (max-width:1399px) {
  .tAr-md {
    text-align: right !important;
  }
}
@media screen and (min-width:768px) and (max-width:991px) {
  .tAr-sm {
    text-align: right !important;
  }
}
@media screen and (max-width:767px) {
  .tAr-xs {
    text-align: right !important;
  }
}

/* Font Weight ----- */
.font-l {
  font-weight: 300;
}
.font-r {
  font-weight: 400;
}
.font-m {
  font-weight: 500;
}
.font-sb {
  font-weight: 600;
}
.font-b {
  font-weight: 700;
}

/* Force Imaging ----- */
.space {
  padding-top: 8.571vw;
}
.space-half {
  padding-top: 4.285vw;
}
.space-mini {
  padding-top: 2vw;
}
.space-ptit {
  padding-top: 0.857vw;
}
@media screen and (min-width:768px) {
  .space {
    padding-top: 45px;
  }
  .space-half {
    padding-top: 20px;
  }
  .space-mini {
    padding-top: 10px;
  }
  .space-ptit {
    padding-top: 5px;
  }
}
@media screen and (min-width:992px) {
  .space {
    padding-top: 60px;
  }
  .space-half {
    padding-top: 30px;
  }
  .space-mini {
    padding-top: 15px;
  }
  .space-ptit {
    padding-top: 7px;
  }
}

.pt-0 {
  padding-top: 0 !important;
}
@media screen and (min-width:768px) and (max-width:991px) {
  .pt-0-sm {
    padding-top: 0 !important;
  }
}
@media screen and (min-width:992px) and (max-width:1199px) {
  .pt-0-md {
    padding-top: 0 !important;
  }
}
@media screen and (min-width:1200px) {
  .pt-0-lg {
    padding-top: 0 !important;
  }
}
@media screen and (min-width:1470px) {
  .pt-0-xlg {
    padding-top: 0 !important;
  }
}
@media screen and (max-width:767px) {
  .pt-0-xs {
    padding-top: 0 !important;
  }
}
.pl-0 {
  padding-left: 0 !important;
}
@media screen and (min-width:768px) and (max-width:991px) {
  .pl-0-sm {
    padding-left: 0 !important;
  }
}
@media screen and (min-width:992px) and (max-width:1199px) {
  .pl-0-md {
    padding-left: 0 !important;
  }
}
@media screen and (min-width:1200px) {
  .pl-0-lg {
    padding-left: 0 !important;
  }
}
@media screen and (min-width:1470px) {
  .pl-0-xlg {
    padding-left: 0 !important;
  }
}
@media screen and (max-width:767px) {
  .pl-0-xs {
    padding-left: 0 !important;
  }
}
.pr-0 {
  padding-right: 0 !important;
}
@media screen and (min-width:768px) and (max-width:991px) {
  .pr-0-sm {
    padding-right: 0 !important;
  }
}
@media screen and (min-width:992px) and (max-width:1199px) {
  .pr-0-md {
    padding-right: 0 !important;
  }
}
@media screen and (min-width:1200px) {
  .pr-0-lg {
    padding-right: 0 !important;
  }
}
@media screen and (min-width:1470px) {
  .pr-0-xlg {
    padding-right: 0 !important;
  }
}
@media screen and (max-width:767px) {
  .pr-0-xs {
    padding-right: 0 !important;
  }
}
.pb-0 {
  padding-bottom: 0 !important;
}
@media screen and (min-width:768px) and (max-width:991px) {
  .pb-0-sm {
    padding-bottom: 0 !important;
  }
}
@media screen and (min-width:992px) and (max-width:1199px) {
  .pb-0-md {
    padding-bottom: 0 !important;
  }
}
@media screen and (min-width:1200px) {
  .pb-0-lg {
    padding-bottom: 0 !important;
  }
}
@media screen and (min-width:1470px) {
  .pb-0-xlg {
    padding-bottom: 0 !important;
  }
}
@media screen and (max-width:767px) {
  .pb-0-xs {
    padding-bottom: 0 !important;
  }
}

.mt-0 {
  margin-top: 0 !important;
}
@media screen and (min-width:768px) and (max-width:991px) {
  .mt-0-sm {
    margin-top: 0 !important;
  }
}
@media screen and (min-width:992px) and (max-width:1199px) {
  .mt-0-md {
    margin-top: 0 !important;
  }
}
@media screen and (min-width:1200px) {
  .mt-0-lg {
    margin-top: 0 !important;
  }
}
@media screen and (min-width:1470px) {
  .mt-0-xlg {
    margin-top: 0 !important;
  }
}
@media screen and (max-width:767px) {
  .mt-0-xs {
    margin-top: 0 !important;
  }
}
.ml-0 {
  margin-left: 0 !important;
}
@media screen and (min-width:768px) and (max-width:991px) {
  .ml-0-sm {
    margin-left: 0 !important;
  }
}
@media screen and (min-width:992px) and (max-width:1199px) {
  .ml-0-md {
    margin-left: 0 !important;
  }
}
@media screen and (min-width:1200px) {
  .ml-0-lg {
    margin-left: 0 !important;
  }
}
@media screen and (min-width:1470px) {
  .ml-0-xlg {
    margin-left: 0 !important;
  }
}
@media screen and (max-width:767px) {
  .ml-0-xs {
    margin-left: 0 !important;
  }
}
.mr-0 {
  margin-right: 0 !important;
}
@media screen and (min-width:768px) and (max-width:991px) {
  .mr-0-sm {
    margin-right: 0 !important;
  }
}
@media screen and (min-width:992px) and (max-width:1199px) {
  .mr-0-md {
    margin-right: 0 !important;
  }
}
@media screen and (min-width:1200px) {
  .mr-0-lg {
    margin-right: 0 !important;
  }
}
@media screen and (min-width:1470px) {
  .mr-0-xlg {
    margin-right: 0 !important;
  }
}
@media screen and (max-width:767px) {
  .mr-0-xs {
    margin-right: 0 !important;
  }
}
.mb-0 {
  margin-bottom: 0 !important;
}
@media screen and (min-width:768px) and (max-width:991px) {
  .mb-0-sm {
    margin-bottom: 0 !important;
  }
}
@media screen and (min-width:992px) and (max-width:1199px) {
  .mb-0-md {
    margin-bottom: 0 !important;
  }
}
@media screen and (min-width:1200px) {
  .mb-0-lg {
    margin-bottom: 0 !important;
  }
}
@media screen and (min-width:1470px) {
  .mb-0-xlg {
    margin-bottom: 0 !important;
  }
}
@media screen and (max-width:767px) {
  .mb-0-xs {
    margin-bottom: 0 !important;
  }
}

@media screen and (min-width:768px) and (max-width:990px) {
  body {
    font-size: 0.875em;
  }
}
/* Font Size ----- */
[class*=font-8] {
  font-size: 0.8rem;
}

[class*=font-9] {
  font-size: 0.9rem;
}

[class*=font-10] {
  font-size: 1rem;
}

[class*=font-11] {
  font-size: 1.1rem;
}

[class*=font-12] {
  font-size: 1.2rem;
}

[class*=font-13] {
  font-size: 1.3rem;
}

[class*=font-14] {
  font-size: 1.4rem;
}

[class*=font-15] {
  font-size: 1.5rem;
}

[class*=font-16] {
  font-size: 1.6rem;
}

[class*=font-17] {
  font-size: 1.7rem;
}

[class*=font-18] {
  font-size: 1.8rem;
}

[class*=font-19] {
  font-size: 1.9rem;
}

[class*=font-20] {
  font-size: 2rem;
}

[class*=font-21] {
  font-size: 2.1rem;
}

[class*=font-22] {
  font-size: 2.2rem;
}

[class*=font-23] {
  font-size: 2.3rem;
}

[class*=font-24] {
  font-size: 2.4rem;
}

[class*=font-25] {
  font-size: 2.5rem;
}

[class*=font-26] {
  font-size: 2.6rem;
}

[class*=font-27] {
  font-size: 2.7rem;
}

[class*=font-28] {
  font-size: 2.8rem;
}

[class*=font-29] {
  font-size: 2.9rem;
}

[class*=font-30] {
  font-size: 3rem;
}

[class*=font-31] {
  font-size: 3.1rem;
}

[class*=font-32] {
  font-size: 3.2rem;
}

[class*=font-33] {
  font-size: 3.3rem;
}

[class*=font-34] {
  font-size: 3.4rem;
}

[class*=font-35] {
  font-size: 3.5rem;
}

[class*=font-36] {
  font-size: 3.6rem;
}

[class*=font-37] {
  font-size: 3.7rem;
}

[class*=font-38] {
  font-size: 3.8rem;
}

[class*=font-39] {
  font-size: 3.9rem;
}

[class*=font-40] {
  font-size: 4rem;
}

[class*=font-41] {
  font-size: 4.1rem;
}

[class*=font-42] {
  font-size: 4.2rem;
}

[class*=font-43] {
  font-size: 4.3rem;
}

[class*=font-44] {
  font-size: 4.4rem;
}

[class*=font-45] {
  font-size: 4.5rem;
}

[class*=font-46] {
  font-size: 4.6rem;
}

[class*=font-47] {
  font-size: 4.7rem;
}

[class*=font-48] {
  font-size: 4.8rem;
}

[class*=font-49] {
  font-size: 4.9rem;
}

[class*=font-50] {
  font-size: 5rem;
}

[class*=font-51] {
  font-size: 5.1rem;
}

[class*=font-52] {
  font-size: 5.2rem;
}

[class*=font-53] {
  font-size: 5.3rem;
}

[class*=font-54] {
  font-size: 5.4rem;
}

[class*=font-55] {
  font-size: 5.5rem;
}

[class*=font-56] {
  font-size: 5.6rem;
}

[class*=font-57] {
  font-size: 5.7rem;
}

[class*=font-58] {
  font-size: 5.8rem;
}

[class*=font-59] {
  font-size: 5.9rem;
}

[class*=font-60] {
  font-size: 6rem;
}

[class*=font-61] {
  font-size: 6.1rem;
}

[class*=font-62] {
  font-size: 6.2rem;
}

[class*=font-63] {
  font-size: 6.3rem;
}

[class*=font-64] {
  font-size: 6.4rem;
}

[class*=font-65] {
  font-size: 6.5rem;
}

[class*=font-66] {
  font-size: 6.6rem;
}

[class*=font-67] {
  font-size: 6.7rem;
}

[class*=font-68] {
  font-size: 6.8rem;
}

[class*=font-69] {
  font-size: 6.9rem;
}

[class*=font-70] {
  font-size: 7rem;
}

[class*=font-71] {
  font-size: 7.1rem;
}

[class*=font-72] {
  font-size: 7.2rem;
}

[class*=font-73] {
  font-size: 7.3rem;
}

[class*=font-74] {
  font-size: 7.4rem;
}

[class*=font-75] {
  font-size: 7.5rem;
}

[class*=font-76] {
  font-size: 7.6rem;
}

[class*=font-77] {
  font-size: 7.7rem;
}

[class*=font-78] {
  font-size: 7.8rem;
}

[class*=font-79] {
  font-size: 7.9rem;
}

[class*=font-80] {
  font-size: 8rem;
}

[class*=font-81] {
  font-size: 8.1rem;
}

[class*=font-82] {
  font-size: 8.2rem;
}

[class*=font-83] {
  font-size: 8.3rem;
}

[class*=font-84] {
  font-size: 8.4rem;
}

[class*=font-85] {
  font-size: 8.5rem;
}

[class*=font-86] {
  font-size: 8.6rem;
}

[class*=font-87] {
  font-size: 8.7rem;
}

[class*=font-88] {
  font-size: 8.8rem;
}

[class*=font-89] {
  font-size: 8.9rem;
}

[class*=font-90] {
  font-size: 9rem;
}

[class*=font-91] {
  font-size: 9.1rem;
}

[class*=font-92] {
  font-size: 9.2rem;
}

[class*=font-93] {
  font-size: 9.3rem;
}

[class*=font-94] {
  font-size: 9.4rem;
}

[class*=font-95] {
  font-size: 9.5rem;
}

[class*=font-96] {
  font-size: 9.6rem;
}

[class*=font-97] {
  font-size: 9.7rem;
}

[class*=font-98] {
  font-size: 9.8rem;
}

[class*=font-99] {
  font-size: 9.9rem;
}

[class*=font-100] {
  font-size: 10rem;
}

[class*=font-101] {
  font-size: 10.1rem;
}

[class*=font-102] {
  font-size: 10.2rem;
}

[class*=font-103] {
  font-size: 10.3rem;
}

[class*=font-104] {
  font-size: 10.4rem;
}

[class*=font-105] {
  font-size: 10.5rem;
}

[class*=font-106] {
  font-size: 10.6rem;
}

[class*=font-107] {
  font-size: 10.7rem;
}

[class*=font-108] {
  font-size: 10.8rem;
}

[class*=font-109] {
  font-size: 10.9rem;
}

[class*=font-110] {
  font-size: 11rem;
}

[class*=font-111] {
  font-size: 11.1rem;
}

[class*=font-112] {
  font-size: 11.2rem;
}

[class*=font-113] {
  font-size: 11.3rem;
}

[class*=font-114] {
  font-size: 11.4rem;
}

[class*=font-115] {
  font-size: 11.5rem;
}

[class*=font-116] {
  font-size: 11.6rem;
}

[class*=font-117] {
  font-size: 11.7rem;
}

[class*=font-118] {
  font-size: 11.8rem;
}

[class*=font-119] {
  font-size: 11.9rem;
}

[class*=font-120] {
  font-size: 12rem;
}

[class*=font-121] {
  font-size: 12.1rem;
}

[class*=font-122] {
  font-size: 12.2rem;
}

[class*=font-123] {
  font-size: 12.3rem;
}

[class*=font-124] {
  font-size: 12.4rem;
}

[class*=font-125] {
  font-size: 12.5rem;
}

[class*=font-126] {
  font-size: 12.6rem;
}

[class*=font-127] {
  font-size: 12.7rem;
}

[class*=font-128] {
  font-size: 12.8rem;
}

[class*=font-129] {
  font-size: 12.9rem;
}

[class*=font-130] {
  font-size: 13rem;
}

[class*=font-131] {
  font-size: 13.1rem;
}

[class*=font-132] {
  font-size: 13.2rem;
}

[class*=font-133] {
  font-size: 13.3rem;
}

[class*=font-134] {
  font-size: 13.4rem;
}

[class*=font-135] {
  font-size: 13.5rem;
}

[class*=font-136] {
  font-size: 13.6rem;
}

[class*=font-137] {
  font-size: 13.7rem;
}

[class*=font-138] {
  font-size: 13.8rem;
}

[class*=font-139] {
  font-size: 13.9rem;
}

[class*=font-140] {
  font-size: 14rem;
}

[class*=font-141] {
  font-size: 14.1rem;
}

[class*=font-142] {
  font-size: 14.2rem;
}

[class*=font-143] {
  font-size: 14.3rem;
}

[class*=font-144] {
  font-size: 14.4rem;
}

[class*=font-145] {
  font-size: 14.5rem;
}

[class*=font-146] {
  font-size: 14.6rem;
}

[class*=font-147] {
  font-size: 14.7rem;
}

[class*=font-148] {
  font-size: 14.8rem;
}

[class*=font-149] {
  font-size: 14.9rem;
}

[class*=font-150] {
  font-size: 15rem;
}

[class*=font-151] {
  font-size: 15.1rem;
}

[class*=font-152] {
  font-size: 15.2rem;
}

[class*=font-153] {
  font-size: 15.3rem;
}

[class*=font-154] {
  font-size: 15.4rem;
}

[class*=font-155] {
  font-size: 15.5rem;
}

[class*=font-156] {
  font-size: 15.6rem;
}

[class*=font-157] {
  font-size: 15.7rem;
}

[class*=font-158] {
  font-size: 15.8rem;
}

[class*=font-159] {
  font-size: 15.9rem;
}

[class*=font-160] {
  font-size: 16rem;
}

[class*=font-161] {
  font-size: 16.1rem;
}

[class*=font-162] {
  font-size: 16.2rem;
}

[class*=font-163] {
  font-size: 16.3rem;
}

[class*=font-164] {
  font-size: 16.4rem;
}

[class*=font-165] {
  font-size: 16.5rem;
}

[class*=font-166] {
  font-size: 16.6rem;
}

[class*=font-167] {
  font-size: 16.7rem;
}

[class*=font-168] {
  font-size: 16.8rem;
}

[class*=font-169] {
  font-size: 16.9rem;
}

[class*=font-170] {
  font-size: 17rem;
}

[class*=font-171] {
  font-size: 17.1rem;
}

[class*=font-172] {
  font-size: 17.2rem;
}

[class*=font-173] {
  font-size: 17.3rem;
}

[class*=font-174] {
  font-size: 17.4rem;
}

[class*=font-175] {
  font-size: 17.5rem;
}

[class*=font-176] {
  font-size: 17.6rem;
}

[class*=font-177] {
  font-size: 17.7rem;
}

[class*=font-178] {
  font-size: 17.8rem;
}

[class*=font-179] {
  font-size: 17.9rem;
}

[class*=font-180] {
  font-size: 18rem;
}

[class*=font-181] {
  font-size: 18.1rem;
}

[class*=font-182] {
  font-size: 18.2rem;
}

[class*=font-183] {
  font-size: 18.3rem;
}

[class*=font-184] {
  font-size: 18.4rem;
}

[class*=font-185] {
  font-size: 18.5rem;
}

[class*=font-186] {
  font-size: 18.6rem;
}

[class*=font-187] {
  font-size: 18.7rem;
}

[class*=font-188] {
  font-size: 18.8rem;
}

[class*=font-189] {
  font-size: 18.9rem;
}

[class*=font-190] {
  font-size: 19rem;
}

[class*=font-191] {
  font-size: 19.1rem;
}

[class*=font-192] {
  font-size: 19.2rem;
}

[class*=font-193] {
  font-size: 19.3rem;
}

[class*=font-194] {
  font-size: 19.4rem;
}

[class*=font-195] {
  font-size: 19.5rem;
}

[class*=font-196] {
  font-size: 19.6rem;
}

[class*=font-197] {
  font-size: 19.7rem;
}

[class*=font-198] {
  font-size: 19.8rem;
}

[class*=font-199] {
  font-size: 19.9rem;
}

[class*=font-200] {
  font-size: 20rem;
}

@media screen and (max-width:1469px) {
  [class*=font][class*=_dt-8] {
    font-size: 0.8rem;
  }
  [class*=font][class*=_dt-9] {
    font-size: 0.9rem;
  }
  [class*=font][class*=_dt-10] {
    font-size: 1rem;
  }
  [class*=font][class*=_dt-11] {
    font-size: 1.1rem;
  }
  [class*=font][class*=_dt-12] {
    font-size: 1.2rem;
  }
  [class*=font][class*=_dt-13] {
    font-size: 1.3rem;
  }
  [class*=font][class*=_dt-14] {
    font-size: 1.4rem;
  }
  [class*=font][class*=_dt-15] {
    font-size: 1.5rem;
  }
  [class*=font][class*=_dt-16] {
    font-size: 1.6rem;
  }
  [class*=font][class*=_dt-17] {
    font-size: 1.7rem;
  }
  [class*=font][class*=_dt-18] {
    font-size: 1.8rem;
  }
  [class*=font][class*=_dt-19] {
    font-size: 1.9rem;
  }
  [class*=font][class*=_dt-20] {
    font-size: 2rem;
  }
  [class*=font][class*=_dt-21] {
    font-size: 2.1rem;
  }
  [class*=font][class*=_dt-22] {
    font-size: 2.2rem;
  }
  [class*=font][class*=_dt-23] {
    font-size: 2.3rem;
  }
  [class*=font][class*=_dt-24] {
    font-size: 2.4rem;
  }
  [class*=font][class*=_dt-25] {
    font-size: 2.5rem;
  }
  [class*=font][class*=_dt-26] {
    font-size: 2.6rem;
  }
  [class*=font][class*=_dt-27] {
    font-size: 2.7rem;
  }
  [class*=font][class*=_dt-28] {
    font-size: 2.8rem;
  }
  [class*=font][class*=_dt-29] {
    font-size: 2.9rem;
  }
  [class*=font][class*=_dt-30] {
    font-size: 3rem;
  }
  [class*=font][class*=_dt-31] {
    font-size: 3.1rem;
  }
  [class*=font][class*=_dt-32] {
    font-size: 3.2rem;
  }
  [class*=font][class*=_dt-33] {
    font-size: 3.3rem;
  }
  [class*=font][class*=_dt-34] {
    font-size: 3.4rem;
  }
  [class*=font][class*=_dt-35] {
    font-size: 3.5rem;
  }
  [class*=font][class*=_dt-36] {
    font-size: 3.6rem;
  }
  [class*=font][class*=_dt-37] {
    font-size: 3.7rem;
  }
  [class*=font][class*=_dt-38] {
    font-size: 3.8rem;
  }
  [class*=font][class*=_dt-39] {
    font-size: 3.9rem;
  }
  [class*=font][class*=_dt-40] {
    font-size: 4rem;
  }
  [class*=font][class*=_dt-41] {
    font-size: 4.1rem;
  }
  [class*=font][class*=_dt-42] {
    font-size: 4.2rem;
  }
  [class*=font][class*=_dt-43] {
    font-size: 4.3rem;
  }
  [class*=font][class*=_dt-44] {
    font-size: 4.4rem;
  }
  [class*=font][class*=_dt-45] {
    font-size: 4.5rem;
  }
  [class*=font][class*=_dt-46] {
    font-size: 4.6rem;
  }
  [class*=font][class*=_dt-47] {
    font-size: 4.7rem;
  }
  [class*=font][class*=_dt-48] {
    font-size: 4.8rem;
  }
  [class*=font][class*=_dt-49] {
    font-size: 4.9rem;
  }
  [class*=font][class*=_dt-50] {
    font-size: 5rem;
  }
  [class*=font][class*=_dt-51] {
    font-size: 5.1rem;
  }
  [class*=font][class*=_dt-52] {
    font-size: 5.2rem;
  }
  [class*=font][class*=_dt-53] {
    font-size: 5.3rem;
  }
  [class*=font][class*=_dt-54] {
    font-size: 5.4rem;
  }
  [class*=font][class*=_dt-55] {
    font-size: 5.5rem;
  }
  [class*=font][class*=_dt-56] {
    font-size: 5.6rem;
  }
  [class*=font][class*=_dt-57] {
    font-size: 5.7rem;
  }
  [class*=font][class*=_dt-58] {
    font-size: 5.8rem;
  }
  [class*=font][class*=_dt-59] {
    font-size: 5.9rem;
  }
  [class*=font][class*=_dt-60] {
    font-size: 6rem;
  }
  [class*=font][class*=_dt-61] {
    font-size: 6.1rem;
  }
  [class*=font][class*=_dt-62] {
    font-size: 6.2rem;
  }
  [class*=font][class*=_dt-63] {
    font-size: 6.3rem;
  }
  [class*=font][class*=_dt-64] {
    font-size: 6.4rem;
  }
  [class*=font][class*=_dt-65] {
    font-size: 6.5rem;
  }
  [class*=font][class*=_dt-66] {
    font-size: 6.6rem;
  }
  [class*=font][class*=_dt-67] {
    font-size: 6.7rem;
  }
  [class*=font][class*=_dt-68] {
    font-size: 6.8rem;
  }
  [class*=font][class*=_dt-69] {
    font-size: 6.9rem;
  }
  [class*=font][class*=_dt-70] {
    font-size: 7rem;
  }
  [class*=font][class*=_dt-71] {
    font-size: 7.1rem;
  }
  [class*=font][class*=_dt-72] {
    font-size: 7.2rem;
  }
  [class*=font][class*=_dt-73] {
    font-size: 7.3rem;
  }
  [class*=font][class*=_dt-74] {
    font-size: 7.4rem;
  }
  [class*=font][class*=_dt-75] {
    font-size: 7.5rem;
  }
  [class*=font][class*=_dt-76] {
    font-size: 7.6rem;
  }
  [class*=font][class*=_dt-77] {
    font-size: 7.7rem;
  }
  [class*=font][class*=_dt-78] {
    font-size: 7.8rem;
  }
  [class*=font][class*=_dt-79] {
    font-size: 7.9rem;
  }
  [class*=font][class*=_dt-80] {
    font-size: 8rem;
  }
  [class*=font][class*=_dt-81] {
    font-size: 8.1rem;
  }
  [class*=font][class*=_dt-82] {
    font-size: 8.2rem;
  }
  [class*=font][class*=_dt-83] {
    font-size: 8.3rem;
  }
  [class*=font][class*=_dt-84] {
    font-size: 8.4rem;
  }
  [class*=font][class*=_dt-85] {
    font-size: 8.5rem;
  }
  [class*=font][class*=_dt-86] {
    font-size: 8.6rem;
  }
  [class*=font][class*=_dt-87] {
    font-size: 8.7rem;
  }
  [class*=font][class*=_dt-88] {
    font-size: 8.8rem;
  }
  [class*=font][class*=_dt-89] {
    font-size: 8.9rem;
  }
  [class*=font][class*=_dt-90] {
    font-size: 9rem;
  }
  [class*=font][class*=_dt-91] {
    font-size: 9.1rem;
  }
  [class*=font][class*=_dt-92] {
    font-size: 9.2rem;
  }
  [class*=font][class*=_dt-93] {
    font-size: 9.3rem;
  }
  [class*=font][class*=_dt-94] {
    font-size: 9.4rem;
  }
  [class*=font][class*=_dt-95] {
    font-size: 9.5rem;
  }
  [class*=font][class*=_dt-96] {
    font-size: 9.6rem;
  }
  [class*=font][class*=_dt-97] {
    font-size: 9.7rem;
  }
  [class*=font][class*=_dt-98] {
    font-size: 9.8rem;
  }
  [class*=font][class*=_dt-99] {
    font-size: 9.9rem;
  }
  [class*=font][class*=_dt-100] {
    font-size: 10rem;
  }
  [class*=font][class*=_dt-101] {
    font-size: 10.1rem;
  }
  [class*=font][class*=_dt-102] {
    font-size: 10.2rem;
  }
  [class*=font][class*=_dt-103] {
    font-size: 10.3rem;
  }
  [class*=font][class*=_dt-104] {
    font-size: 10.4rem;
  }
  [class*=font][class*=_dt-105] {
    font-size: 10.5rem;
  }
  [class*=font][class*=_dt-106] {
    font-size: 10.6rem;
  }
  [class*=font][class*=_dt-107] {
    font-size: 10.7rem;
  }
  [class*=font][class*=_dt-108] {
    font-size: 10.8rem;
  }
  [class*=font][class*=_dt-109] {
    font-size: 10.9rem;
  }
  [class*=font][class*=_dt-110] {
    font-size: 11rem;
  }
  [class*=font][class*=_dt-111] {
    font-size: 11.1rem;
  }
  [class*=font][class*=_dt-112] {
    font-size: 11.2rem;
  }
  [class*=font][class*=_dt-113] {
    font-size: 11.3rem;
  }
  [class*=font][class*=_dt-114] {
    font-size: 11.4rem;
  }
  [class*=font][class*=_dt-115] {
    font-size: 11.5rem;
  }
  [class*=font][class*=_dt-116] {
    font-size: 11.6rem;
  }
  [class*=font][class*=_dt-117] {
    font-size: 11.7rem;
  }
  [class*=font][class*=_dt-118] {
    font-size: 11.8rem;
  }
  [class*=font][class*=_dt-119] {
    font-size: 11.9rem;
  }
  [class*=font][class*=_dt-120] {
    font-size: 12rem;
  }
  [class*=font][class*=_dt-121] {
    font-size: 12.1rem;
  }
  [class*=font][class*=_dt-122] {
    font-size: 12.2rem;
  }
  [class*=font][class*=_dt-123] {
    font-size: 12.3rem;
  }
  [class*=font][class*=_dt-124] {
    font-size: 12.4rem;
  }
  [class*=font][class*=_dt-125] {
    font-size: 12.5rem;
  }
  [class*=font][class*=_dt-126] {
    font-size: 12.6rem;
  }
  [class*=font][class*=_dt-127] {
    font-size: 12.7rem;
  }
  [class*=font][class*=_dt-128] {
    font-size: 12.8rem;
  }
  [class*=font][class*=_dt-129] {
    font-size: 12.9rem;
  }
  [class*=font][class*=_dt-130] {
    font-size: 13rem;
  }
  [class*=font][class*=_dt-131] {
    font-size: 13.1rem;
  }
  [class*=font][class*=_dt-132] {
    font-size: 13.2rem;
  }
  [class*=font][class*=_dt-133] {
    font-size: 13.3rem;
  }
  [class*=font][class*=_dt-134] {
    font-size: 13.4rem;
  }
  [class*=font][class*=_dt-135] {
    font-size: 13.5rem;
  }
  [class*=font][class*=_dt-136] {
    font-size: 13.6rem;
  }
  [class*=font][class*=_dt-137] {
    font-size: 13.7rem;
  }
  [class*=font][class*=_dt-138] {
    font-size: 13.8rem;
  }
  [class*=font][class*=_dt-139] {
    font-size: 13.9rem;
  }
  [class*=font][class*=_dt-140] {
    font-size: 14rem;
  }
  [class*=font][class*=_dt-141] {
    font-size: 14.1rem;
  }
  [class*=font][class*=_dt-142] {
    font-size: 14.2rem;
  }
  [class*=font][class*=_dt-143] {
    font-size: 14.3rem;
  }
  [class*=font][class*=_dt-144] {
    font-size: 14.4rem;
  }
  [class*=font][class*=_dt-145] {
    font-size: 14.5rem;
  }
  [class*=font][class*=_dt-146] {
    font-size: 14.6rem;
  }
  [class*=font][class*=_dt-147] {
    font-size: 14.7rem;
  }
  [class*=font][class*=_dt-148] {
    font-size: 14.8rem;
  }
  [class*=font][class*=_dt-149] {
    font-size: 14.9rem;
  }
  [class*=font][class*=_dt-150] {
    font-size: 15rem;
  }
  [class*=font][class*=_dt-151] {
    font-size: 15.1rem;
  }
  [class*=font][class*=_dt-152] {
    font-size: 15.2rem;
  }
  [class*=font][class*=_dt-153] {
    font-size: 15.3rem;
  }
  [class*=font][class*=_dt-154] {
    font-size: 15.4rem;
  }
  [class*=font][class*=_dt-155] {
    font-size: 15.5rem;
  }
  [class*=font][class*=_dt-156] {
    font-size: 15.6rem;
  }
  [class*=font][class*=_dt-157] {
    font-size: 15.7rem;
  }
  [class*=font][class*=_dt-158] {
    font-size: 15.8rem;
  }
  [class*=font][class*=_dt-159] {
    font-size: 15.9rem;
  }
  [class*=font][class*=_dt-160] {
    font-size: 16rem;
  }
  [class*=font][class*=_dt-161] {
    font-size: 16.1rem;
  }
  [class*=font][class*=_dt-162] {
    font-size: 16.2rem;
  }
  [class*=font][class*=_dt-163] {
    font-size: 16.3rem;
  }
  [class*=font][class*=_dt-164] {
    font-size: 16.4rem;
  }
  [class*=font][class*=_dt-165] {
    font-size: 16.5rem;
  }
  [class*=font][class*=_dt-166] {
    font-size: 16.6rem;
  }
  [class*=font][class*=_dt-167] {
    font-size: 16.7rem;
  }
  [class*=font][class*=_dt-168] {
    font-size: 16.8rem;
  }
  [class*=font][class*=_dt-169] {
    font-size: 16.9rem;
  }
  [class*=font][class*=_dt-170] {
    font-size: 17rem;
  }
  [class*=font][class*=_dt-171] {
    font-size: 17.1rem;
  }
  [class*=font][class*=_dt-172] {
    font-size: 17.2rem;
  }
  [class*=font][class*=_dt-173] {
    font-size: 17.3rem;
  }
  [class*=font][class*=_dt-174] {
    font-size: 17.4rem;
  }
  [class*=font][class*=_dt-175] {
    font-size: 17.5rem;
  }
  [class*=font][class*=_dt-176] {
    font-size: 17.6rem;
  }
  [class*=font][class*=_dt-177] {
    font-size: 17.7rem;
  }
  [class*=font][class*=_dt-178] {
    font-size: 17.8rem;
  }
  [class*=font][class*=_dt-179] {
    font-size: 17.9rem;
  }
  [class*=font][class*=_dt-180] {
    font-size: 18rem;
  }
  [class*=font][class*=_dt-181] {
    font-size: 18.1rem;
  }
  [class*=font][class*=_dt-182] {
    font-size: 18.2rem;
  }
  [class*=font][class*=_dt-183] {
    font-size: 18.3rem;
  }
  [class*=font][class*=_dt-184] {
    font-size: 18.4rem;
  }
  [class*=font][class*=_dt-185] {
    font-size: 18.5rem;
  }
  [class*=font][class*=_dt-186] {
    font-size: 18.6rem;
  }
  [class*=font][class*=_dt-187] {
    font-size: 18.7rem;
  }
  [class*=font][class*=_dt-188] {
    font-size: 18.8rem;
  }
  [class*=font][class*=_dt-189] {
    font-size: 18.9rem;
  }
  [class*=font][class*=_dt-190] {
    font-size: 19rem;
  }
  [class*=font][class*=_dt-191] {
    font-size: 19.1rem;
  }
  [class*=font][class*=_dt-192] {
    font-size: 19.2rem;
  }
  [class*=font][class*=_dt-193] {
    font-size: 19.3rem;
  }
  [class*=font][class*=_dt-194] {
    font-size: 19.4rem;
  }
  [class*=font][class*=_dt-195] {
    font-size: 19.5rem;
  }
  [class*=font][class*=_dt-196] {
    font-size: 19.6rem;
  }
  [class*=font][class*=_dt-197] {
    font-size: 19.7rem;
  }
  [class*=font][class*=_dt-198] {
    font-size: 19.8rem;
  }
  [class*=font][class*=_dt-199] {
    font-size: 19.9rem;
  }
  [class*=font][class*=_dt-200] {
    font-size: 20rem;
  }
}
@media screen and (max-width:1199px) {
  [class*=font][class*=_lt-8] {
    font-size: 0.8rem;
  }
  [class*=font][class*=_lt-9] {
    font-size: 0.9rem;
  }
  [class*=font][class*=_lt-10] {
    font-size: 1rem;
  }
  [class*=font][class*=_lt-11] {
    font-size: 1.1rem;
  }
  [class*=font][class*=_lt-12] {
    font-size: 1.2rem;
  }
  [class*=font][class*=_lt-13] {
    font-size: 1.3rem;
  }
  [class*=font][class*=_lt-14] {
    font-size: 1.4rem;
  }
  [class*=font][class*=_lt-15] {
    font-size: 1.5rem;
  }
  [class*=font][class*=_lt-16] {
    font-size: 1.6rem;
  }
  [class*=font][class*=_lt-17] {
    font-size: 1.7rem;
  }
  [class*=font][class*=_lt-18] {
    font-size: 1.8rem;
  }
  [class*=font][class*=_lt-19] {
    font-size: 1.9rem;
  }
  [class*=font][class*=_lt-20] {
    font-size: 2rem;
  }
  [class*=font][class*=_lt-21] {
    font-size: 2.1rem;
  }
  [class*=font][class*=_lt-22] {
    font-size: 2.2rem;
  }
  [class*=font][class*=_lt-23] {
    font-size: 2.3rem;
  }
  [class*=font][class*=_lt-24] {
    font-size: 2.4rem;
  }
  [class*=font][class*=_lt-25] {
    font-size: 2.5rem;
  }
  [class*=font][class*=_lt-26] {
    font-size: 2.6rem;
  }
  [class*=font][class*=_lt-27] {
    font-size: 2.7rem;
  }
  [class*=font][class*=_lt-28] {
    font-size: 2.8rem;
  }
  [class*=font][class*=_lt-29] {
    font-size: 2.9rem;
  }
  [class*=font][class*=_lt-30] {
    font-size: 3rem;
  }
  [class*=font][class*=_lt-31] {
    font-size: 3.1rem;
  }
  [class*=font][class*=_lt-32] {
    font-size: 3.2rem;
  }
  [class*=font][class*=_lt-33] {
    font-size: 3.3rem;
  }
  [class*=font][class*=_lt-34] {
    font-size: 3.4rem;
  }
  [class*=font][class*=_lt-35] {
    font-size: 3.5rem;
  }
  [class*=font][class*=_lt-36] {
    font-size: 3.6rem;
  }
  [class*=font][class*=_lt-37] {
    font-size: 3.7rem;
  }
  [class*=font][class*=_lt-38] {
    font-size: 3.8rem;
  }
  [class*=font][class*=_lt-39] {
    font-size: 3.9rem;
  }
  [class*=font][class*=_lt-40] {
    font-size: 4rem;
  }
  [class*=font][class*=_lt-41] {
    font-size: 4.1rem;
  }
  [class*=font][class*=_lt-42] {
    font-size: 4.2rem;
  }
  [class*=font][class*=_lt-43] {
    font-size: 4.3rem;
  }
  [class*=font][class*=_lt-44] {
    font-size: 4.4rem;
  }
  [class*=font][class*=_lt-45] {
    font-size: 4.5rem;
  }
  [class*=font][class*=_lt-46] {
    font-size: 4.6rem;
  }
  [class*=font][class*=_lt-47] {
    font-size: 4.7rem;
  }
  [class*=font][class*=_lt-48] {
    font-size: 4.8rem;
  }
  [class*=font][class*=_lt-49] {
    font-size: 4.9rem;
  }
  [class*=font][class*=_lt-50] {
    font-size: 5rem;
  }
  [class*=font][class*=_lt-51] {
    font-size: 5.1rem;
  }
  [class*=font][class*=_lt-52] {
    font-size: 5.2rem;
  }
  [class*=font][class*=_lt-53] {
    font-size: 5.3rem;
  }
  [class*=font][class*=_lt-54] {
    font-size: 5.4rem;
  }
  [class*=font][class*=_lt-55] {
    font-size: 5.5rem;
  }
  [class*=font][class*=_lt-56] {
    font-size: 5.6rem;
  }
  [class*=font][class*=_lt-57] {
    font-size: 5.7rem;
  }
  [class*=font][class*=_lt-58] {
    font-size: 5.8rem;
  }
  [class*=font][class*=_lt-59] {
    font-size: 5.9rem;
  }
  [class*=font][class*=_lt-60] {
    font-size: 6rem;
  }
  [class*=font][class*=_lt-61] {
    font-size: 6.1rem;
  }
  [class*=font][class*=_lt-62] {
    font-size: 6.2rem;
  }
  [class*=font][class*=_lt-63] {
    font-size: 6.3rem;
  }
  [class*=font][class*=_lt-64] {
    font-size: 6.4rem;
  }
  [class*=font][class*=_lt-65] {
    font-size: 6.5rem;
  }
  [class*=font][class*=_lt-66] {
    font-size: 6.6rem;
  }
  [class*=font][class*=_lt-67] {
    font-size: 6.7rem;
  }
  [class*=font][class*=_lt-68] {
    font-size: 6.8rem;
  }
  [class*=font][class*=_lt-69] {
    font-size: 6.9rem;
  }
  [class*=font][class*=_lt-70] {
    font-size: 7rem;
  }
  [class*=font][class*=_lt-71] {
    font-size: 7.1rem;
  }
  [class*=font][class*=_lt-72] {
    font-size: 7.2rem;
  }
  [class*=font][class*=_lt-73] {
    font-size: 7.3rem;
  }
  [class*=font][class*=_lt-74] {
    font-size: 7.4rem;
  }
  [class*=font][class*=_lt-75] {
    font-size: 7.5rem;
  }
  [class*=font][class*=_lt-76] {
    font-size: 7.6rem;
  }
  [class*=font][class*=_lt-77] {
    font-size: 7.7rem;
  }
  [class*=font][class*=_lt-78] {
    font-size: 7.8rem;
  }
  [class*=font][class*=_lt-79] {
    font-size: 7.9rem;
  }
  [class*=font][class*=_lt-80] {
    font-size: 8rem;
  }
  [class*=font][class*=_lt-81] {
    font-size: 8.1rem;
  }
  [class*=font][class*=_lt-82] {
    font-size: 8.2rem;
  }
  [class*=font][class*=_lt-83] {
    font-size: 8.3rem;
  }
  [class*=font][class*=_lt-84] {
    font-size: 8.4rem;
  }
  [class*=font][class*=_lt-85] {
    font-size: 8.5rem;
  }
  [class*=font][class*=_lt-86] {
    font-size: 8.6rem;
  }
  [class*=font][class*=_lt-87] {
    font-size: 8.7rem;
  }
  [class*=font][class*=_lt-88] {
    font-size: 8.8rem;
  }
  [class*=font][class*=_lt-89] {
    font-size: 8.9rem;
  }
  [class*=font][class*=_lt-90] {
    font-size: 9rem;
  }
  [class*=font][class*=_lt-91] {
    font-size: 9.1rem;
  }
  [class*=font][class*=_lt-92] {
    font-size: 9.2rem;
  }
  [class*=font][class*=_lt-93] {
    font-size: 9.3rem;
  }
  [class*=font][class*=_lt-94] {
    font-size: 9.4rem;
  }
  [class*=font][class*=_lt-95] {
    font-size: 9.5rem;
  }
  [class*=font][class*=_lt-96] {
    font-size: 9.6rem;
  }
  [class*=font][class*=_lt-97] {
    font-size: 9.7rem;
  }
  [class*=font][class*=_lt-98] {
    font-size: 9.8rem;
  }
  [class*=font][class*=_lt-99] {
    font-size: 9.9rem;
  }
  [class*=font][class*=_lt-100] {
    font-size: 10rem;
  }
  [class*=font][class*=_lt-101] {
    font-size: 10.1rem;
  }
  [class*=font][class*=_lt-102] {
    font-size: 10.2rem;
  }
  [class*=font][class*=_lt-103] {
    font-size: 10.3rem;
  }
  [class*=font][class*=_lt-104] {
    font-size: 10.4rem;
  }
  [class*=font][class*=_lt-105] {
    font-size: 10.5rem;
  }
  [class*=font][class*=_lt-106] {
    font-size: 10.6rem;
  }
  [class*=font][class*=_lt-107] {
    font-size: 10.7rem;
  }
  [class*=font][class*=_lt-108] {
    font-size: 10.8rem;
  }
  [class*=font][class*=_lt-109] {
    font-size: 10.9rem;
  }
  [class*=font][class*=_lt-110] {
    font-size: 11rem;
  }
  [class*=font][class*=_lt-111] {
    font-size: 11.1rem;
  }
  [class*=font][class*=_lt-112] {
    font-size: 11.2rem;
  }
  [class*=font][class*=_lt-113] {
    font-size: 11.3rem;
  }
  [class*=font][class*=_lt-114] {
    font-size: 11.4rem;
  }
  [class*=font][class*=_lt-115] {
    font-size: 11.5rem;
  }
  [class*=font][class*=_lt-116] {
    font-size: 11.6rem;
  }
  [class*=font][class*=_lt-117] {
    font-size: 11.7rem;
  }
  [class*=font][class*=_lt-118] {
    font-size: 11.8rem;
  }
  [class*=font][class*=_lt-119] {
    font-size: 11.9rem;
  }
  [class*=font][class*=_lt-120] {
    font-size: 12rem;
  }
  [class*=font][class*=_lt-121] {
    font-size: 12.1rem;
  }
  [class*=font][class*=_lt-122] {
    font-size: 12.2rem;
  }
  [class*=font][class*=_lt-123] {
    font-size: 12.3rem;
  }
  [class*=font][class*=_lt-124] {
    font-size: 12.4rem;
  }
  [class*=font][class*=_lt-125] {
    font-size: 12.5rem;
  }
  [class*=font][class*=_lt-126] {
    font-size: 12.6rem;
  }
  [class*=font][class*=_lt-127] {
    font-size: 12.7rem;
  }
  [class*=font][class*=_lt-128] {
    font-size: 12.8rem;
  }
  [class*=font][class*=_lt-129] {
    font-size: 12.9rem;
  }
  [class*=font][class*=_lt-130] {
    font-size: 13rem;
  }
  [class*=font][class*=_lt-131] {
    font-size: 13.1rem;
  }
  [class*=font][class*=_lt-132] {
    font-size: 13.2rem;
  }
  [class*=font][class*=_lt-133] {
    font-size: 13.3rem;
  }
  [class*=font][class*=_lt-134] {
    font-size: 13.4rem;
  }
  [class*=font][class*=_lt-135] {
    font-size: 13.5rem;
  }
  [class*=font][class*=_lt-136] {
    font-size: 13.6rem;
  }
  [class*=font][class*=_lt-137] {
    font-size: 13.7rem;
  }
  [class*=font][class*=_lt-138] {
    font-size: 13.8rem;
  }
  [class*=font][class*=_lt-139] {
    font-size: 13.9rem;
  }
  [class*=font][class*=_lt-140] {
    font-size: 14rem;
  }
  [class*=font][class*=_lt-141] {
    font-size: 14.1rem;
  }
  [class*=font][class*=_lt-142] {
    font-size: 14.2rem;
  }
  [class*=font][class*=_lt-143] {
    font-size: 14.3rem;
  }
  [class*=font][class*=_lt-144] {
    font-size: 14.4rem;
  }
  [class*=font][class*=_lt-145] {
    font-size: 14.5rem;
  }
  [class*=font][class*=_lt-146] {
    font-size: 14.6rem;
  }
  [class*=font][class*=_lt-147] {
    font-size: 14.7rem;
  }
  [class*=font][class*=_lt-148] {
    font-size: 14.8rem;
  }
  [class*=font][class*=_lt-149] {
    font-size: 14.9rem;
  }
  [class*=font][class*=_lt-150] {
    font-size: 15rem;
  }
  [class*=font][class*=_lt-151] {
    font-size: 15.1rem;
  }
  [class*=font][class*=_lt-152] {
    font-size: 15.2rem;
  }
  [class*=font][class*=_lt-153] {
    font-size: 15.3rem;
  }
  [class*=font][class*=_lt-154] {
    font-size: 15.4rem;
  }
  [class*=font][class*=_lt-155] {
    font-size: 15.5rem;
  }
  [class*=font][class*=_lt-156] {
    font-size: 15.6rem;
  }
  [class*=font][class*=_lt-157] {
    font-size: 15.7rem;
  }
  [class*=font][class*=_lt-158] {
    font-size: 15.8rem;
  }
  [class*=font][class*=_lt-159] {
    font-size: 15.9rem;
  }
  [class*=font][class*=_lt-160] {
    font-size: 16rem;
  }
  [class*=font][class*=_lt-161] {
    font-size: 16.1rem;
  }
  [class*=font][class*=_lt-162] {
    font-size: 16.2rem;
  }
  [class*=font][class*=_lt-163] {
    font-size: 16.3rem;
  }
  [class*=font][class*=_lt-164] {
    font-size: 16.4rem;
  }
  [class*=font][class*=_lt-165] {
    font-size: 16.5rem;
  }
  [class*=font][class*=_lt-166] {
    font-size: 16.6rem;
  }
  [class*=font][class*=_lt-167] {
    font-size: 16.7rem;
  }
  [class*=font][class*=_lt-168] {
    font-size: 16.8rem;
  }
  [class*=font][class*=_lt-169] {
    font-size: 16.9rem;
  }
  [class*=font][class*=_lt-170] {
    font-size: 17rem;
  }
  [class*=font][class*=_lt-171] {
    font-size: 17.1rem;
  }
  [class*=font][class*=_lt-172] {
    font-size: 17.2rem;
  }
  [class*=font][class*=_lt-173] {
    font-size: 17.3rem;
  }
  [class*=font][class*=_lt-174] {
    font-size: 17.4rem;
  }
  [class*=font][class*=_lt-175] {
    font-size: 17.5rem;
  }
  [class*=font][class*=_lt-176] {
    font-size: 17.6rem;
  }
  [class*=font][class*=_lt-177] {
    font-size: 17.7rem;
  }
  [class*=font][class*=_lt-178] {
    font-size: 17.8rem;
  }
  [class*=font][class*=_lt-179] {
    font-size: 17.9rem;
  }
  [class*=font][class*=_lt-180] {
    font-size: 18rem;
  }
  [class*=font][class*=_lt-181] {
    font-size: 18.1rem;
  }
  [class*=font][class*=_lt-182] {
    font-size: 18.2rem;
  }
  [class*=font][class*=_lt-183] {
    font-size: 18.3rem;
  }
  [class*=font][class*=_lt-184] {
    font-size: 18.4rem;
  }
  [class*=font][class*=_lt-185] {
    font-size: 18.5rem;
  }
  [class*=font][class*=_lt-186] {
    font-size: 18.6rem;
  }
  [class*=font][class*=_lt-187] {
    font-size: 18.7rem;
  }
  [class*=font][class*=_lt-188] {
    font-size: 18.8rem;
  }
  [class*=font][class*=_lt-189] {
    font-size: 18.9rem;
  }
  [class*=font][class*=_lt-190] {
    font-size: 19rem;
  }
  [class*=font][class*=_lt-191] {
    font-size: 19.1rem;
  }
  [class*=font][class*=_lt-192] {
    font-size: 19.2rem;
  }
  [class*=font][class*=_lt-193] {
    font-size: 19.3rem;
  }
  [class*=font][class*=_lt-194] {
    font-size: 19.4rem;
  }
  [class*=font][class*=_lt-195] {
    font-size: 19.5rem;
  }
  [class*=font][class*=_lt-196] {
    font-size: 19.6rem;
  }
  [class*=font][class*=_lt-197] {
    font-size: 19.7rem;
  }
  [class*=font][class*=_lt-198] {
    font-size: 19.8rem;
  }
  [class*=font][class*=_lt-199] {
    font-size: 19.9rem;
  }
  [class*=font][class*=_lt-200] {
    font-size: 20rem;
  }
}
@media screen and (max-width:991px) {
  [class*=font][class*=_tb-8] {
    font-size: 0.8rem;
  }
  [class*=font][class*=_tb-9] {
    font-size: 0.9rem;
  }
  [class*=font][class*=_tb-10] {
    font-size: 1rem;
  }
  [class*=font][class*=_tb-11] {
    font-size: 1.1rem;
  }
  [class*=font][class*=_tb-12] {
    font-size: 1.2rem;
  }
  [class*=font][class*=_tb-13] {
    font-size: 1.3rem;
  }
  [class*=font][class*=_tb-14] {
    font-size: 1.4rem;
  }
  [class*=font][class*=_tb-15] {
    font-size: 1.5rem;
  }
  [class*=font][class*=_tb-16] {
    font-size: 1.6rem;
  }
  [class*=font][class*=_tb-17] {
    font-size: 1.7rem;
  }
  [class*=font][class*=_tb-18] {
    font-size: 1.8rem;
  }
  [class*=font][class*=_tb-19] {
    font-size: 1.9rem;
  }
  [class*=font][class*=_tb-20] {
    font-size: 2rem;
  }
  [class*=font][class*=_tb-21] {
    font-size: 2.1rem;
  }
  [class*=font][class*=_tb-22] {
    font-size: 2.2rem;
  }
  [class*=font][class*=_tb-23] {
    font-size: 2.3rem;
  }
  [class*=font][class*=_tb-24] {
    font-size: 2.4rem;
  }
  [class*=font][class*=_tb-25] {
    font-size: 2.5rem;
  }
  [class*=font][class*=_tb-26] {
    font-size: 2.6rem;
  }
  [class*=font][class*=_tb-27] {
    font-size: 2.7rem;
  }
  [class*=font][class*=_tb-28] {
    font-size: 2.8rem;
  }
  [class*=font][class*=_tb-29] {
    font-size: 2.9rem;
  }
  [class*=font][class*=_tb-30] {
    font-size: 3rem;
  }
  [class*=font][class*=_tb-31] {
    font-size: 3.1rem;
  }
  [class*=font][class*=_tb-32] {
    font-size: 3.2rem;
  }
  [class*=font][class*=_tb-33] {
    font-size: 3.3rem;
  }
  [class*=font][class*=_tb-34] {
    font-size: 3.4rem;
  }
  [class*=font][class*=_tb-35] {
    font-size: 3.5rem;
  }
  [class*=font][class*=_tb-36] {
    font-size: 3.6rem;
  }
  [class*=font][class*=_tb-37] {
    font-size: 3.7rem;
  }
  [class*=font][class*=_tb-38] {
    font-size: 3.8rem;
  }
  [class*=font][class*=_tb-39] {
    font-size: 3.9rem;
  }
  [class*=font][class*=_tb-40] {
    font-size: 4rem;
  }
  [class*=font][class*=_tb-41] {
    font-size: 4.1rem;
  }
  [class*=font][class*=_tb-42] {
    font-size: 4.2rem;
  }
  [class*=font][class*=_tb-43] {
    font-size: 4.3rem;
  }
  [class*=font][class*=_tb-44] {
    font-size: 4.4rem;
  }
  [class*=font][class*=_tb-45] {
    font-size: 4.5rem;
  }
  [class*=font][class*=_tb-46] {
    font-size: 4.6rem;
  }
  [class*=font][class*=_tb-47] {
    font-size: 4.7rem;
  }
  [class*=font][class*=_tb-48] {
    font-size: 4.8rem;
  }
  [class*=font][class*=_tb-49] {
    font-size: 4.9rem;
  }
  [class*=font][class*=_tb-50] {
    font-size: 5rem;
  }
  [class*=font][class*=_tb-51] {
    font-size: 5.1rem;
  }
  [class*=font][class*=_tb-52] {
    font-size: 5.2rem;
  }
  [class*=font][class*=_tb-53] {
    font-size: 5.3rem;
  }
  [class*=font][class*=_tb-54] {
    font-size: 5.4rem;
  }
  [class*=font][class*=_tb-55] {
    font-size: 5.5rem;
  }
  [class*=font][class*=_tb-56] {
    font-size: 5.6rem;
  }
  [class*=font][class*=_tb-57] {
    font-size: 5.7rem;
  }
  [class*=font][class*=_tb-58] {
    font-size: 5.8rem;
  }
  [class*=font][class*=_tb-59] {
    font-size: 5.9rem;
  }
  [class*=font][class*=_tb-60] {
    font-size: 6rem;
  }
  [class*=font][class*=_tb-61] {
    font-size: 6.1rem;
  }
  [class*=font][class*=_tb-62] {
    font-size: 6.2rem;
  }
  [class*=font][class*=_tb-63] {
    font-size: 6.3rem;
  }
  [class*=font][class*=_tb-64] {
    font-size: 6.4rem;
  }
  [class*=font][class*=_tb-65] {
    font-size: 6.5rem;
  }
  [class*=font][class*=_tb-66] {
    font-size: 6.6rem;
  }
  [class*=font][class*=_tb-67] {
    font-size: 6.7rem;
  }
  [class*=font][class*=_tb-68] {
    font-size: 6.8rem;
  }
  [class*=font][class*=_tb-69] {
    font-size: 6.9rem;
  }
  [class*=font][class*=_tb-70] {
    font-size: 7rem;
  }
  [class*=font][class*=_tb-71] {
    font-size: 7.1rem;
  }
  [class*=font][class*=_tb-72] {
    font-size: 7.2rem;
  }
  [class*=font][class*=_tb-73] {
    font-size: 7.3rem;
  }
  [class*=font][class*=_tb-74] {
    font-size: 7.4rem;
  }
  [class*=font][class*=_tb-75] {
    font-size: 7.5rem;
  }
  [class*=font][class*=_tb-76] {
    font-size: 7.6rem;
  }
  [class*=font][class*=_tb-77] {
    font-size: 7.7rem;
  }
  [class*=font][class*=_tb-78] {
    font-size: 7.8rem;
  }
  [class*=font][class*=_tb-79] {
    font-size: 7.9rem;
  }
  [class*=font][class*=_tb-80] {
    font-size: 8rem;
  }
  [class*=font][class*=_tb-81] {
    font-size: 8.1rem;
  }
  [class*=font][class*=_tb-82] {
    font-size: 8.2rem;
  }
  [class*=font][class*=_tb-83] {
    font-size: 8.3rem;
  }
  [class*=font][class*=_tb-84] {
    font-size: 8.4rem;
  }
  [class*=font][class*=_tb-85] {
    font-size: 8.5rem;
  }
  [class*=font][class*=_tb-86] {
    font-size: 8.6rem;
  }
  [class*=font][class*=_tb-87] {
    font-size: 8.7rem;
  }
  [class*=font][class*=_tb-88] {
    font-size: 8.8rem;
  }
  [class*=font][class*=_tb-89] {
    font-size: 8.9rem;
  }
  [class*=font][class*=_tb-90] {
    font-size: 9rem;
  }
  [class*=font][class*=_tb-91] {
    font-size: 9.1rem;
  }
  [class*=font][class*=_tb-92] {
    font-size: 9.2rem;
  }
  [class*=font][class*=_tb-93] {
    font-size: 9.3rem;
  }
  [class*=font][class*=_tb-94] {
    font-size: 9.4rem;
  }
  [class*=font][class*=_tb-95] {
    font-size: 9.5rem;
  }
  [class*=font][class*=_tb-96] {
    font-size: 9.6rem;
  }
  [class*=font][class*=_tb-97] {
    font-size: 9.7rem;
  }
  [class*=font][class*=_tb-98] {
    font-size: 9.8rem;
  }
  [class*=font][class*=_tb-99] {
    font-size: 9.9rem;
  }
  [class*=font][class*=_tb-100] {
    font-size: 10rem;
  }
  [class*=font][class*=_tb-101] {
    font-size: 10.1rem;
  }
  [class*=font][class*=_tb-102] {
    font-size: 10.2rem;
  }
  [class*=font][class*=_tb-103] {
    font-size: 10.3rem;
  }
  [class*=font][class*=_tb-104] {
    font-size: 10.4rem;
  }
  [class*=font][class*=_tb-105] {
    font-size: 10.5rem;
  }
  [class*=font][class*=_tb-106] {
    font-size: 10.6rem;
  }
  [class*=font][class*=_tb-107] {
    font-size: 10.7rem;
  }
  [class*=font][class*=_tb-108] {
    font-size: 10.8rem;
  }
  [class*=font][class*=_tb-109] {
    font-size: 10.9rem;
  }
  [class*=font][class*=_tb-110] {
    font-size: 11rem;
  }
  [class*=font][class*=_tb-111] {
    font-size: 11.1rem;
  }
  [class*=font][class*=_tb-112] {
    font-size: 11.2rem;
  }
  [class*=font][class*=_tb-113] {
    font-size: 11.3rem;
  }
  [class*=font][class*=_tb-114] {
    font-size: 11.4rem;
  }
  [class*=font][class*=_tb-115] {
    font-size: 11.5rem;
  }
  [class*=font][class*=_tb-116] {
    font-size: 11.6rem;
  }
  [class*=font][class*=_tb-117] {
    font-size: 11.7rem;
  }
  [class*=font][class*=_tb-118] {
    font-size: 11.8rem;
  }
  [class*=font][class*=_tb-119] {
    font-size: 11.9rem;
  }
  [class*=font][class*=_tb-120] {
    font-size: 12rem;
  }
  [class*=font][class*=_tb-121] {
    font-size: 12.1rem;
  }
  [class*=font][class*=_tb-122] {
    font-size: 12.2rem;
  }
  [class*=font][class*=_tb-123] {
    font-size: 12.3rem;
  }
  [class*=font][class*=_tb-124] {
    font-size: 12.4rem;
  }
  [class*=font][class*=_tb-125] {
    font-size: 12.5rem;
  }
  [class*=font][class*=_tb-126] {
    font-size: 12.6rem;
  }
  [class*=font][class*=_tb-127] {
    font-size: 12.7rem;
  }
  [class*=font][class*=_tb-128] {
    font-size: 12.8rem;
  }
  [class*=font][class*=_tb-129] {
    font-size: 12.9rem;
  }
  [class*=font][class*=_tb-130] {
    font-size: 13rem;
  }
  [class*=font][class*=_tb-131] {
    font-size: 13.1rem;
  }
  [class*=font][class*=_tb-132] {
    font-size: 13.2rem;
  }
  [class*=font][class*=_tb-133] {
    font-size: 13.3rem;
  }
  [class*=font][class*=_tb-134] {
    font-size: 13.4rem;
  }
  [class*=font][class*=_tb-135] {
    font-size: 13.5rem;
  }
  [class*=font][class*=_tb-136] {
    font-size: 13.6rem;
  }
  [class*=font][class*=_tb-137] {
    font-size: 13.7rem;
  }
  [class*=font][class*=_tb-138] {
    font-size: 13.8rem;
  }
  [class*=font][class*=_tb-139] {
    font-size: 13.9rem;
  }
  [class*=font][class*=_tb-140] {
    font-size: 14rem;
  }
  [class*=font][class*=_tb-141] {
    font-size: 14.1rem;
  }
  [class*=font][class*=_tb-142] {
    font-size: 14.2rem;
  }
  [class*=font][class*=_tb-143] {
    font-size: 14.3rem;
  }
  [class*=font][class*=_tb-144] {
    font-size: 14.4rem;
  }
  [class*=font][class*=_tb-145] {
    font-size: 14.5rem;
  }
  [class*=font][class*=_tb-146] {
    font-size: 14.6rem;
  }
  [class*=font][class*=_tb-147] {
    font-size: 14.7rem;
  }
  [class*=font][class*=_tb-148] {
    font-size: 14.8rem;
  }
  [class*=font][class*=_tb-149] {
    font-size: 14.9rem;
  }
  [class*=font][class*=_tb-150] {
    font-size: 15rem;
  }
  [class*=font][class*=_tb-151] {
    font-size: 15.1rem;
  }
  [class*=font][class*=_tb-152] {
    font-size: 15.2rem;
  }
  [class*=font][class*=_tb-153] {
    font-size: 15.3rem;
  }
  [class*=font][class*=_tb-154] {
    font-size: 15.4rem;
  }
  [class*=font][class*=_tb-155] {
    font-size: 15.5rem;
  }
  [class*=font][class*=_tb-156] {
    font-size: 15.6rem;
  }
  [class*=font][class*=_tb-157] {
    font-size: 15.7rem;
  }
  [class*=font][class*=_tb-158] {
    font-size: 15.8rem;
  }
  [class*=font][class*=_tb-159] {
    font-size: 15.9rem;
  }
  [class*=font][class*=_tb-160] {
    font-size: 16rem;
  }
  [class*=font][class*=_tb-161] {
    font-size: 16.1rem;
  }
  [class*=font][class*=_tb-162] {
    font-size: 16.2rem;
  }
  [class*=font][class*=_tb-163] {
    font-size: 16.3rem;
  }
  [class*=font][class*=_tb-164] {
    font-size: 16.4rem;
  }
  [class*=font][class*=_tb-165] {
    font-size: 16.5rem;
  }
  [class*=font][class*=_tb-166] {
    font-size: 16.6rem;
  }
  [class*=font][class*=_tb-167] {
    font-size: 16.7rem;
  }
  [class*=font][class*=_tb-168] {
    font-size: 16.8rem;
  }
  [class*=font][class*=_tb-169] {
    font-size: 16.9rem;
  }
  [class*=font][class*=_tb-170] {
    font-size: 17rem;
  }
  [class*=font][class*=_tb-171] {
    font-size: 17.1rem;
  }
  [class*=font][class*=_tb-172] {
    font-size: 17.2rem;
  }
  [class*=font][class*=_tb-173] {
    font-size: 17.3rem;
  }
  [class*=font][class*=_tb-174] {
    font-size: 17.4rem;
  }
  [class*=font][class*=_tb-175] {
    font-size: 17.5rem;
  }
  [class*=font][class*=_tb-176] {
    font-size: 17.6rem;
  }
  [class*=font][class*=_tb-177] {
    font-size: 17.7rem;
  }
  [class*=font][class*=_tb-178] {
    font-size: 17.8rem;
  }
  [class*=font][class*=_tb-179] {
    font-size: 17.9rem;
  }
  [class*=font][class*=_tb-180] {
    font-size: 18rem;
  }
  [class*=font][class*=_tb-181] {
    font-size: 18.1rem;
  }
  [class*=font][class*=_tb-182] {
    font-size: 18.2rem;
  }
  [class*=font][class*=_tb-183] {
    font-size: 18.3rem;
  }
  [class*=font][class*=_tb-184] {
    font-size: 18.4rem;
  }
  [class*=font][class*=_tb-185] {
    font-size: 18.5rem;
  }
  [class*=font][class*=_tb-186] {
    font-size: 18.6rem;
  }
  [class*=font][class*=_tb-187] {
    font-size: 18.7rem;
  }
  [class*=font][class*=_tb-188] {
    font-size: 18.8rem;
  }
  [class*=font][class*=_tb-189] {
    font-size: 18.9rem;
  }
  [class*=font][class*=_tb-190] {
    font-size: 19rem;
  }
  [class*=font][class*=_tb-191] {
    font-size: 19.1rem;
  }
  [class*=font][class*=_tb-192] {
    font-size: 19.2rem;
  }
  [class*=font][class*=_tb-193] {
    font-size: 19.3rem;
  }
  [class*=font][class*=_tb-194] {
    font-size: 19.4rem;
  }
  [class*=font][class*=_tb-195] {
    font-size: 19.5rem;
  }
  [class*=font][class*=_tb-196] {
    font-size: 19.6rem;
  }
  [class*=font][class*=_tb-197] {
    font-size: 19.7rem;
  }
  [class*=font][class*=_tb-198] {
    font-size: 19.8rem;
  }
  [class*=font][class*=_tb-199] {
    font-size: 19.9rem;
  }
  [class*=font][class*=_tb-200] {
    font-size: 20rem;
  }
}
@media screen and (max-width:767px) {
  [class*=font][class*=_sp-8] {
    font-size: 0.8rem;
  }
  [class*=font][class*=_sp-9] {
    font-size: 0.9rem;
  }
  [class*=font][class*=_sp-10] {
    font-size: 1rem;
  }
  [class*=font][class*=_sp-11] {
    font-size: 1.1rem;
  }
  [class*=font][class*=_sp-12] {
    font-size: 1.2rem;
  }
  [class*=font][class*=_sp-13] {
    font-size: 1.3rem;
  }
  [class*=font][class*=_sp-14] {
    font-size: 1.4rem;
  }
  [class*=font][class*=_sp-15] {
    font-size: 1.5rem;
  }
  [class*=font][class*=_sp-16] {
    font-size: 1.6rem;
  }
  [class*=font][class*=_sp-17] {
    font-size: 1.7rem;
  }
  [class*=font][class*=_sp-18] {
    font-size: 1.8rem;
  }
  [class*=font][class*=_sp-19] {
    font-size: 1.9rem;
  }
  [class*=font][class*=_sp-20] {
    font-size: 2rem;
  }
  [class*=font][class*=_sp-21] {
    font-size: 2.1rem;
  }
  [class*=font][class*=_sp-22] {
    font-size: 2.2rem;
  }
  [class*=font][class*=_sp-23] {
    font-size: 2.3rem;
  }
  [class*=font][class*=_sp-24] {
    font-size: 2.4rem;
  }
  [class*=font][class*=_sp-25] {
    font-size: 2.5rem;
  }
  [class*=font][class*=_sp-26] {
    font-size: 2.6rem;
  }
  [class*=font][class*=_sp-27] {
    font-size: 2.7rem;
  }
  [class*=font][class*=_sp-28] {
    font-size: 2.8rem;
  }
  [class*=font][class*=_sp-29] {
    font-size: 2.9rem;
  }
  [class*=font][class*=_sp-30] {
    font-size: 3rem;
  }
  [class*=font][class*=_sp-31] {
    font-size: 3.1rem;
  }
  [class*=font][class*=_sp-32] {
    font-size: 3.2rem;
  }
  [class*=font][class*=_sp-33] {
    font-size: 3.3rem;
  }
  [class*=font][class*=_sp-34] {
    font-size: 3.4rem;
  }
  [class*=font][class*=_sp-35] {
    font-size: 3.5rem;
  }
  [class*=font][class*=_sp-36] {
    font-size: 3.6rem;
  }
  [class*=font][class*=_sp-37] {
    font-size: 3.7rem;
  }
  [class*=font][class*=_sp-38] {
    font-size: 3.8rem;
  }
  [class*=font][class*=_sp-39] {
    font-size: 3.9rem;
  }
  [class*=font][class*=_sp-40] {
    font-size: 4rem;
  }
  [class*=font][class*=_sp-41] {
    font-size: 4.1rem;
  }
  [class*=font][class*=_sp-42] {
    font-size: 4.2rem;
  }
  [class*=font][class*=_sp-43] {
    font-size: 4.3rem;
  }
  [class*=font][class*=_sp-44] {
    font-size: 4.4rem;
  }
  [class*=font][class*=_sp-45] {
    font-size: 4.5rem;
  }
  [class*=font][class*=_sp-46] {
    font-size: 4.6rem;
  }
  [class*=font][class*=_sp-47] {
    font-size: 4.7rem;
  }
  [class*=font][class*=_sp-48] {
    font-size: 4.8rem;
  }
  [class*=font][class*=_sp-49] {
    font-size: 4.9rem;
  }
  [class*=font][class*=_sp-50] {
    font-size: 5rem;
  }
  [class*=font][class*=_sp-51] {
    font-size: 5.1rem;
  }
  [class*=font][class*=_sp-52] {
    font-size: 5.2rem;
  }
  [class*=font][class*=_sp-53] {
    font-size: 5.3rem;
  }
  [class*=font][class*=_sp-54] {
    font-size: 5.4rem;
  }
  [class*=font][class*=_sp-55] {
    font-size: 5.5rem;
  }
  [class*=font][class*=_sp-56] {
    font-size: 5.6rem;
  }
  [class*=font][class*=_sp-57] {
    font-size: 5.7rem;
  }
  [class*=font][class*=_sp-58] {
    font-size: 5.8rem;
  }
  [class*=font][class*=_sp-59] {
    font-size: 5.9rem;
  }
  [class*=font][class*=_sp-60] {
    font-size: 6rem;
  }
  [class*=font][class*=_sp-61] {
    font-size: 6.1rem;
  }
  [class*=font][class*=_sp-62] {
    font-size: 6.2rem;
  }
  [class*=font][class*=_sp-63] {
    font-size: 6.3rem;
  }
  [class*=font][class*=_sp-64] {
    font-size: 6.4rem;
  }
  [class*=font][class*=_sp-65] {
    font-size: 6.5rem;
  }
  [class*=font][class*=_sp-66] {
    font-size: 6.6rem;
  }
  [class*=font][class*=_sp-67] {
    font-size: 6.7rem;
  }
  [class*=font][class*=_sp-68] {
    font-size: 6.8rem;
  }
  [class*=font][class*=_sp-69] {
    font-size: 6.9rem;
  }
  [class*=font][class*=_sp-70] {
    font-size: 7rem;
  }
  [class*=font][class*=_sp-71] {
    font-size: 7.1rem;
  }
  [class*=font][class*=_sp-72] {
    font-size: 7.2rem;
  }
  [class*=font][class*=_sp-73] {
    font-size: 7.3rem;
  }
  [class*=font][class*=_sp-74] {
    font-size: 7.4rem;
  }
  [class*=font][class*=_sp-75] {
    font-size: 7.5rem;
  }
  [class*=font][class*=_sp-76] {
    font-size: 7.6rem;
  }
  [class*=font][class*=_sp-77] {
    font-size: 7.7rem;
  }
  [class*=font][class*=_sp-78] {
    font-size: 7.8rem;
  }
  [class*=font][class*=_sp-79] {
    font-size: 7.9rem;
  }
  [class*=font][class*=_sp-80] {
    font-size: 8rem;
  }
  [class*=font][class*=_sp-81] {
    font-size: 8.1rem;
  }
  [class*=font][class*=_sp-82] {
    font-size: 8.2rem;
  }
  [class*=font][class*=_sp-83] {
    font-size: 8.3rem;
  }
  [class*=font][class*=_sp-84] {
    font-size: 8.4rem;
  }
  [class*=font][class*=_sp-85] {
    font-size: 8.5rem;
  }
  [class*=font][class*=_sp-86] {
    font-size: 8.6rem;
  }
  [class*=font][class*=_sp-87] {
    font-size: 8.7rem;
  }
  [class*=font][class*=_sp-88] {
    font-size: 8.8rem;
  }
  [class*=font][class*=_sp-89] {
    font-size: 8.9rem;
  }
  [class*=font][class*=_sp-90] {
    font-size: 9rem;
  }
  [class*=font][class*=_sp-91] {
    font-size: 9.1rem;
  }
  [class*=font][class*=_sp-92] {
    font-size: 9.2rem;
  }
  [class*=font][class*=_sp-93] {
    font-size: 9.3rem;
  }
  [class*=font][class*=_sp-94] {
    font-size: 9.4rem;
  }
  [class*=font][class*=_sp-95] {
    font-size: 9.5rem;
  }
  [class*=font][class*=_sp-96] {
    font-size: 9.6rem;
  }
  [class*=font][class*=_sp-97] {
    font-size: 9.7rem;
  }
  [class*=font][class*=_sp-98] {
    font-size: 9.8rem;
  }
  [class*=font][class*=_sp-99] {
    font-size: 9.9rem;
  }
  [class*=font][class*=_sp-100] {
    font-size: 10rem;
  }
  [class*=font][class*=_sp-101] {
    font-size: 10.1rem;
  }
  [class*=font][class*=_sp-102] {
    font-size: 10.2rem;
  }
  [class*=font][class*=_sp-103] {
    font-size: 10.3rem;
  }
  [class*=font][class*=_sp-104] {
    font-size: 10.4rem;
  }
  [class*=font][class*=_sp-105] {
    font-size: 10.5rem;
  }
  [class*=font][class*=_sp-106] {
    font-size: 10.6rem;
  }
  [class*=font][class*=_sp-107] {
    font-size: 10.7rem;
  }
  [class*=font][class*=_sp-108] {
    font-size: 10.8rem;
  }
  [class*=font][class*=_sp-109] {
    font-size: 10.9rem;
  }
  [class*=font][class*=_sp-110] {
    font-size: 11rem;
  }
  [class*=font][class*=_sp-111] {
    font-size: 11.1rem;
  }
  [class*=font][class*=_sp-112] {
    font-size: 11.2rem;
  }
  [class*=font][class*=_sp-113] {
    font-size: 11.3rem;
  }
  [class*=font][class*=_sp-114] {
    font-size: 11.4rem;
  }
  [class*=font][class*=_sp-115] {
    font-size: 11.5rem;
  }
  [class*=font][class*=_sp-116] {
    font-size: 11.6rem;
  }
  [class*=font][class*=_sp-117] {
    font-size: 11.7rem;
  }
  [class*=font][class*=_sp-118] {
    font-size: 11.8rem;
  }
  [class*=font][class*=_sp-119] {
    font-size: 11.9rem;
  }
  [class*=font][class*=_sp-120] {
    font-size: 12rem;
  }
  [class*=font][class*=_sp-121] {
    font-size: 12.1rem;
  }
  [class*=font][class*=_sp-122] {
    font-size: 12.2rem;
  }
  [class*=font][class*=_sp-123] {
    font-size: 12.3rem;
  }
  [class*=font][class*=_sp-124] {
    font-size: 12.4rem;
  }
  [class*=font][class*=_sp-125] {
    font-size: 12.5rem;
  }
  [class*=font][class*=_sp-126] {
    font-size: 12.6rem;
  }
  [class*=font][class*=_sp-127] {
    font-size: 12.7rem;
  }
  [class*=font][class*=_sp-128] {
    font-size: 12.8rem;
  }
  [class*=font][class*=_sp-129] {
    font-size: 12.9rem;
  }
  [class*=font][class*=_sp-130] {
    font-size: 13rem;
  }
  [class*=font][class*=_sp-131] {
    font-size: 13.1rem;
  }
  [class*=font][class*=_sp-132] {
    font-size: 13.2rem;
  }
  [class*=font][class*=_sp-133] {
    font-size: 13.3rem;
  }
  [class*=font][class*=_sp-134] {
    font-size: 13.4rem;
  }
  [class*=font][class*=_sp-135] {
    font-size: 13.5rem;
  }
  [class*=font][class*=_sp-136] {
    font-size: 13.6rem;
  }
  [class*=font][class*=_sp-137] {
    font-size: 13.7rem;
  }
  [class*=font][class*=_sp-138] {
    font-size: 13.8rem;
  }
  [class*=font][class*=_sp-139] {
    font-size: 13.9rem;
  }
  [class*=font][class*=_sp-140] {
    font-size: 14rem;
  }
  [class*=font][class*=_sp-141] {
    font-size: 14.1rem;
  }
  [class*=font][class*=_sp-142] {
    font-size: 14.2rem;
  }
  [class*=font][class*=_sp-143] {
    font-size: 14.3rem;
  }
  [class*=font][class*=_sp-144] {
    font-size: 14.4rem;
  }
  [class*=font][class*=_sp-145] {
    font-size: 14.5rem;
  }
  [class*=font][class*=_sp-146] {
    font-size: 14.6rem;
  }
  [class*=font][class*=_sp-147] {
    font-size: 14.7rem;
  }
  [class*=font][class*=_sp-148] {
    font-size: 14.8rem;
  }
  [class*=font][class*=_sp-149] {
    font-size: 14.9rem;
  }
  [class*=font][class*=_sp-150] {
    font-size: 15rem;
  }
  [class*=font][class*=_sp-151] {
    font-size: 15.1rem;
  }
  [class*=font][class*=_sp-152] {
    font-size: 15.2rem;
  }
  [class*=font][class*=_sp-153] {
    font-size: 15.3rem;
  }
  [class*=font][class*=_sp-154] {
    font-size: 15.4rem;
  }
  [class*=font][class*=_sp-155] {
    font-size: 15.5rem;
  }
  [class*=font][class*=_sp-156] {
    font-size: 15.6rem;
  }
  [class*=font][class*=_sp-157] {
    font-size: 15.7rem;
  }
  [class*=font][class*=_sp-158] {
    font-size: 15.8rem;
  }
  [class*=font][class*=_sp-159] {
    font-size: 15.9rem;
  }
  [class*=font][class*=_sp-160] {
    font-size: 16rem;
  }
  [class*=font][class*=_sp-161] {
    font-size: 16.1rem;
  }
  [class*=font][class*=_sp-162] {
    font-size: 16.2rem;
  }
  [class*=font][class*=_sp-163] {
    font-size: 16.3rem;
  }
  [class*=font][class*=_sp-164] {
    font-size: 16.4rem;
  }
  [class*=font][class*=_sp-165] {
    font-size: 16.5rem;
  }
  [class*=font][class*=_sp-166] {
    font-size: 16.6rem;
  }
  [class*=font][class*=_sp-167] {
    font-size: 16.7rem;
  }
  [class*=font][class*=_sp-168] {
    font-size: 16.8rem;
  }
  [class*=font][class*=_sp-169] {
    font-size: 16.9rem;
  }
  [class*=font][class*=_sp-170] {
    font-size: 17rem;
  }
  [class*=font][class*=_sp-171] {
    font-size: 17.1rem;
  }
  [class*=font][class*=_sp-172] {
    font-size: 17.2rem;
  }
  [class*=font][class*=_sp-173] {
    font-size: 17.3rem;
  }
  [class*=font][class*=_sp-174] {
    font-size: 17.4rem;
  }
  [class*=font][class*=_sp-175] {
    font-size: 17.5rem;
  }
  [class*=font][class*=_sp-176] {
    font-size: 17.6rem;
  }
  [class*=font][class*=_sp-177] {
    font-size: 17.7rem;
  }
  [class*=font][class*=_sp-178] {
    font-size: 17.8rem;
  }
  [class*=font][class*=_sp-179] {
    font-size: 17.9rem;
  }
  [class*=font][class*=_sp-180] {
    font-size: 18rem;
  }
  [class*=font][class*=_sp-181] {
    font-size: 18.1rem;
  }
  [class*=font][class*=_sp-182] {
    font-size: 18.2rem;
  }
  [class*=font][class*=_sp-183] {
    font-size: 18.3rem;
  }
  [class*=font][class*=_sp-184] {
    font-size: 18.4rem;
  }
  [class*=font][class*=_sp-185] {
    font-size: 18.5rem;
  }
  [class*=font][class*=_sp-186] {
    font-size: 18.6rem;
  }
  [class*=font][class*=_sp-187] {
    font-size: 18.7rem;
  }
  [class*=font][class*=_sp-188] {
    font-size: 18.8rem;
  }
  [class*=font][class*=_sp-189] {
    font-size: 18.9rem;
  }
  [class*=font][class*=_sp-190] {
    font-size: 19rem;
  }
  [class*=font][class*=_sp-191] {
    font-size: 19.1rem;
  }
  [class*=font][class*=_sp-192] {
    font-size: 19.2rem;
  }
  [class*=font][class*=_sp-193] {
    font-size: 19.3rem;
  }
  [class*=font][class*=_sp-194] {
    font-size: 19.4rem;
  }
  [class*=font][class*=_sp-195] {
    font-size: 19.5rem;
  }
  [class*=font][class*=_sp-196] {
    font-size: 19.6rem;
  }
  [class*=font][class*=_sp-197] {
    font-size: 19.7rem;
  }
  [class*=font][class*=_sp-198] {
    font-size: 19.8rem;
  }
  [class*=font][class*=_sp-199] {
    font-size: 19.9rem;
  }
  [class*=font][class*=_sp-200] {
    font-size: 20rem;
  }
}

.block-box {
  position: relative;
  padding-top: 17.142vw;
  padding-bottom: 17.142vw;
}
@media screen and (min-width:768px) {
  .block-box {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
@media screen and (min-width:992px) {
  .block-box {
    padding-top: 90px;
    padding-bottom: 90px;
  }
}
@media screen and (min-width:1200px) {
  .block-box {
    padding-top: 120px;
    padding-bottom: 120px;
  }
}

/*
**
Template style
*/
/* Suggested order:
 * display
 * list-style
 * position
 * float
 * clear
 * width
 * height
 * margin
 * padding
 * border
 * background
 * color
 * font
 * text-decoration
 * text-align
 * vertical-align
 * white-space
 * other text
 * content
 *
 */
/*==================================================

** functions 
==================================================*/
html {
  scroll-behavior: smooth;
  overflow-y: scroll;
  scroll-margin-top: 80px;
  font-size: 62.5%;
}
html.is-loading body {
  opacity: 0;
  visibility: hidden;
  -webkit-animation: forceVisible 0s 3s forwards;
          animation: forceVisible 0s 3s forwards;
}
html body {
  color: #222b37;
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: 0.05em;
  font-weight: 400;
  overflow: hidden;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-style: normal;
  opacity: 1;
  visibility: visible;
  -webkit-transition: opacity 0.6s ease;
  transition: opacity 0.6s ease;
}
html .index-page,
html .about {
  overflow-x: hidden;
}

/*==================================================

** keyframes
==================================================*/
@-webkit-keyframes forceVisible {
  to {
    opacity: 1;
    visibility: visible;
  }
}
@keyframes forceVisible {
  to {
    opacity: 1;
    visibility: visible;
  }
}
/*==================================================

** object fit
==================================================*/
.ofi {
  width: 100%;
  max-width: 100%;
}
.ofi.-cover {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  font-family: "object-fit: cover; object-position: center;";
}
.ofi.-contain {
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  font-family: "object-fit: contain; object-position: center;";
}

/*==================================================

** common
==================================================*/
.link:not(.no-huwa) {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.link:not(.no-huwa):hover {
  text-decoration: none;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}

/*==================================================

** btn
==================================================*/
.btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 2rem;
  border-radius: 100vmax;
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content;
}
@media screen and (max-width:767px) {
  .btn {
    padding: 1.4rem 2.2rem;
  }
}
.btn.-main {
  padding: 1rem 3rem;
}
.btn.-main .btn-txt {
  text-shadow: 0 -1.5em 0 #fff, 0 0 0 #fff;
}
.btn.-main .circle {
  background-color: #fff;
}
.btn.-main .circle::after {
  background-color: #00a2d2;
}
.btn.-main:hover .btn-txt {
  text-shadow: 0 0 0 #fff, 0 1.5em 0 #fff;
}
.btn.-sub {
  padding: clamp(1rem, 1vw, 1.5rem) clamp(2rem, 1.8vw, 2.5rem);
}
.btn.-sub .btn-txt {
  text-shadow: 0 -1.5em 0 #222b37, 0 0 0 #222b37;
}
.btn.-sub .circle {
  background-color: #222b37;
}
.btn.-sub .circle::after {
  background-color: #fff;
}
.btn.-sub:hover .btn-txt {
  text-shadow: 0 0 0 #222b37, 0 1.5em 0 #222b37;
}
.btn.-recruit {
  padding: 1rem 3rem;
}
.btn.-recruit .btn-txt {
  text-shadow: 0 -1.5em 0 #00a2d2, 0 0 0 #00a2d2;
}
.btn.-recruit:hover .btn-txt {
  text-shadow: 0 0 0 #ffe200, 0 1.5em 0 #ffe200;
}
.btn.-underPage {
  padding: clamp(1.5rem, 1vw, 1.5rem) clamp(2rem, 1.8vw, 2.5rem);
  border: solid 1px #222b37;
}
.btn.-underPage .btn-txt {
  text-shadow: 0 -1.5em 0 #222b37, 0 0 0 #222b37;
  font-size: 1.4rem;
}
@media screen and (min-width:992px) {
  .btn.-underPage .btn-txt {
    font-size: 1.6rem;
  }
}
.btn.-underPage:hover .btn-txt {
  text-shadow: 0 0 0 #222b37, 0 1.5em 0 #222b37;
}
.btn-txt {
  line-height: 1.6;
  overflow: hidden;
  color: transparent;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
.btn .circle {
  width: 0.6lh;
  aspect-ratio: 1;
  border-radius: 50%;
  position: relative;
}
.btn .circle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 35%;
  aspect-ratio: 1;
  border-radius: 50%;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
.btn .external-link {
  width: 0.4lh;
  aspect-ratio: 1;
  background: url(../img/common/external-link.svg) no-repeat center/contain;
}
.btn:hover .circle::after {
  width: 75%;
}

/*==================================================

** ttl
==================================================*/
.main-ttl {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width:767px) {
  .main-ttl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
.main-ttl__sub {
  font-size: clamp(6.5rem, 8vw, 13rem);
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  overflow: hidden;
  text-transform: uppercase;
}
@media screen and (max-width:767px) {
  .main-ttl__sub {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
@media screen and (max-width:767px) {
  .main-ttl__sub.-pc {
    display: none;
  }
}
.main-ttl__sub.-sp {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (min-width:768px) {
  .main-ttl__sub.-sp {
    display: none;
  }
}
.main-ttl__sub span {
  display: inline-block;
  will-change: transform;
}
.main-ttl__main {
  font-size: 2.5rem;
  letter-spacing: 0;
  line-height: 1;
  white-space: nowrap;
  overflow: hidden;
  margin-top: -10px;
  padding-top: 10px;
}
@media screen and (min-width:768px) {
  .main-ttl__main {
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
    font-size: clamp(1.4rem, 1.6vw, 2.5rem);
    position: absolute;
    top: 57%;
    right: 0;
    -webkit-transform: translate(120%, -50%);
            transform: translate(120%, -50%);
  }
}
.main-ttl__main span {
  display: inline-block;
  will-change: transform;
}

/* ここからテーブル */
.block-table {
  max-width: 948px;
  width: 100%;
  margin: 0 auto;
  background-color: var(--color-white);
  border-collapse: collapse;
  border-bottom: 2px solid var(--color-txt);
}
.block-table .table-row:first-child {
  background-color: var(--color-txt);
  color: var(--color-white);
  font-weight: 7;
}
.block-table .table-row:first-child > .table-ttl + .table-ttl {
  border-left: 1px solid var(--color-white);
}
.block-table .table-row:not(:first-child) > .table-txt + .table-txt {
  border-left: 1px solid var(--color-txt);
}
.block-table .table-row:nth-child(n+1) + .table-row {
  border-top: 1px solid var(--color-txt);
}
.block-table .table-row .table-ttl,
.block-table .table-row .table-txt {
  line-height: 1.8;
}
.block-table .table-row .table-ttl {
  text-align: left;
  padding: 17px 20px;
}
@media screen and (min-width: 768px) {
  .block-table .table-row .table-ttl {
    padding: 15px 20px;
  }
}
@media screen and (min-width: 992px) {
  .block-table .table-row .table-ttl {
    padding: 15px 40px;
  }
}
.block-table .table-row .table-txt {
  padding: 24px 20px;
}
@media screen and (min-width: 992px) {
  .block-table .table-row .table-txt {
    padding: 26px 40px;
  }
}
.block-table .table-row > *:first-child {
  width: 140px;
}
@media screen and (min-width: 992px) {
  .block-table .table-row > *:first-child {
    width: 216px;
  }
}
.block-table .table-row > *:not(:first-child) {
  width: calc(100% - 140px);
}
@media screen and (min-width: 992px) {
  .block-table .table-row > *:not(:first-child) {
    width: calc(100% - 216px);
  }
}
@media screen and (max-width: 767px) {
  .block-table.-var2 .table-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .block-table.-var2 .table-row:nth-child(n+1) + .table-row {
    border: none;
  }
}
@media screen and (max-width: 767px) {
  .block-table.-var2 .table-row .table-ttl,
  .block-table.-var2 .table-row .table-txt {
    width: 100%;
  }
}
.block-table.-var2 .table-row .table-ttl {
  background-color: var(--color-txt);
  color: var(--color-white);
}
.block-table.-var2 .table-row .table-txt {
  background-color: var(--color-white);
  color: var(--color-txt);
}
.block-table.-var2 .table-row + .table-row .table-ttl {
  border-top: 1px solid var(--color-white);
}
.block-table.-var2 .table-row + .table-row .table-txt {
  border-top: 1px solid var(--color-txt);
}
.block-table.-var2 .table-row:first-child {
  border-top: 2px solid var(--color-txt);
  background-color: var(--color-white);
}

@media (max-width: 767px) {
  .table-scroll {
    width: 100%;
  }
  .table-scroll {
    overflow: auto;
    white-space: nowrap;
  }
  .table-scroll::-webkit-scrollbar {
    height: 5px;
  }
  .table-scroll::-webkit-scrollbar-track {
    background: #F1F1F1;
  }
  .table-scroll::-webkit-scrollbar-thumb {
    background: #BCBCBC;
  }
}
.txt-annotation {
  font-size: 12px;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  line-height: 1.6;
  display: block;
  padding-bottom: 3px;
}
@media screen and (min-width: 768px) {
  .txt-annotation {
    display: none;
  }
}

.table-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 767px) {
  .table-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.table-wrap .table-row > *:nth-child(2) {
  width: 140px;
}
@media screen and (min-width: 768px) {
  .table-wrap .table-row > *:nth-child(2) {
    text-align: center;
  }
}
.table-wrap .table-row > *:first-child {
  width: calc(100% - 140px);
}
@media screen and (max-width: 767px) {
  .table-wrap .block-table:first-child {
    border-bottom: 0;
  }
}
@media screen and (max-width: 767px) {
  .table-wrap .block-table + .block-table .table-row:first-child {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  .table-wrap .block-table + .block-table .table-ttl {
    border-left: 1px solid var(--color-white);
  }
}
@media screen and (min-width: 768px) {
  .table-wrap .block-table + .block-table .table-txt {
    border-left: 1px solid var(--color-txt);
  }
}

/*==================================================

** header
==================================================*/
.header {
  z-index: 12;
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
}
.header-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
  background-color: #fff;
}
@media screen and (max-width:991px) {
  .header-inner {
    margin-block: 1rem 0;
    margin-inline: 1rem;
    background-color: #00a2d2;
    border-radius: 7px;
    overflow: hidden;
  }
}
.header-logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0;
}
.header-logo .link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  padding: 1.2rem 2rem;
  width: 180px;
}
@media screen and (min-width:768px) {
  .header-logo .link {
    padding: 1.5rem 2rem;
    width: 200px;
  }
}
@media screen and (min-width:992px) {
  .header-logo .link {
    padding: 0.9vw 1.2vw;
    width: 14vw;
    background-color: #00a2d2;
    height: 87px;
  }
}
.header-logo img {
  image-rendering: -webkit-optimize-contrast;
}

.gnav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  position: relative;
  gap: 3rem;
}
@media screen and (max-width:991px) {
  .gnav {
    display: none;
  }
}
@media screen and (min-width:992px) {
  .gnav {
    height: 87px;
  }
}
.gnav .menu-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 3rem;
}
.gnav .menu-list .list-child {
  position: relative;
}
.gnav .menu-list .list-child-menu {
  display: block;
}
@media screen and (min-width:992px) {
  .gnav .menu-list .list-child-menu {
    display: none;
  }
}
.gnav .menu-list .link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1.2rem;
  font-weight: bold;
  font-size: 1.8rem;
  font-family: "Dela Gothic One", sans-serif;
  font-weight: 400;
  font-style: normal;
  color: #222b37;
  position: relative;
  z-index: 1;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
@media screen and (min-width:992px) {
  .gnav .menu-list .link {
    font-size: 1.1vw;
    gap: 0.75vw;
  }
}
.gnav .menu-list .link:hover {
  color: #00a2d2;
  text-shadow: 0px 0px 3px rgba(231, 236, 240, 0.6);
}
.gnav .menu-list .link:hover .arrow {
  background-color: #00a2d2;
  -webkit-box-shadow: 0px 0px 3px rgba(231, 236, 240, 0.6);
          box-shadow: 0px 0px 3px rgba(231, 236, 240, 0.6);
}
.gnav .menu-list .link:hover .line {
  width: 100%;
  -webkit-box-shadow: 0px 0px 3px rgba(231, 236, 240, 0.6);
          box-shadow: 0px 0px 3px rgba(231, 236, 240, 0.6);
}
.gnav .menu-list .link .arrow {
  background-color: #222b37;
  height: 0.5lh;
  aspect-ratio: 1;
  border-radius: 50%;
  position: relative;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
.gnav .menu-list .link .arrow span {
  color: #fff;
  line-height: 1;
  width: 0.3lh;
  aspect-ratio: 1;
  border: 0.1em solid currentColor;
  border-left: 0;
  border-bottom: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transform: translate(-60%, -50%) rotate(45deg);
          transform: translate(-60%, -50%) rotate(45deg);
  position: absolute;
  top: 50%;
  left: 50%;
}
.gnav .menu-list .link .line {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 2px;
  background-color: #00a2d2;
  -webkit-transition: 0.3s cubic-bezier(0.4, 0, 1, 1);
  transition: 0.3s cubic-bezier(0.4, 0, 1, 1);
}
.gnav__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  font-size: 3rem;
  padding: 0rem 4rem;
  background-color: #ffe200;
  color: #00a2d2;
  font-family: "Dela Gothic One", sans-serif;
  font-weight: 400;
  font-style: normal;
  height: 100%;
  overflow: hidden;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
@media screen and (min-width:992px) {
  .gnav__btn {
    font-size: 1.75vw;
    padding: 0rem 2.45vw;
  }
}
.gnav__btn:hover {
  color: #ffe200;
  background-color: #00a2d2;
}

.menuBtn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  cursor: pointer;
  padding: 2rem;
  z-index: 999;
  border: none;
}
@media screen and (min-width:992px) {
  .menuBtn {
    display: none;
  }
}
.menuBtn__lines {
  position: relative;
  width: 3.6rem;
  aspect-ratio: 27/20;
}
@media screen and (max-width:767px) {
  .menuBtn__lines {
    width: 3rem;
  }
}
.menuBtn__lines span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: #fff;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
.menuBtn__lines span:nth-of-type(1) {
  top: 0;
}
.menuBtn__lines span:nth-of-type(2) {
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.menuBtn__lines span:nth-of-type(3) {
  bottom: 0;
}
.menuBtn__txt {
  color: var(--color-deep-purple);
  line-height: 1;
  font-weight: bold;
  font-size: 1.4rem;
}
.menuBtn.-is-open .menuBtn__lines span:nth-of-type(1) {
  -webkit-transform: translateY(1.2rem) rotate(35deg);
          transform: translateY(1.2rem) rotate(35deg);
}
@media screen and (max-width:767px) {
  .menuBtn.-is-open .menuBtn__lines span:nth-of-type(1) {
    -webkit-transform: translateY(1rem) rotate(35deg);
            transform: translateY(1rem) rotate(35deg);
  }
}
.menuBtn.-is-open .menuBtn__lines span:nth-of-type(2) {
  opacity: 0;
}
.menuBtn.-is-open .menuBtn__lines span:nth-of-type(3) {
  -webkit-transform: translateY(-1.1rem) rotate(-35deg);
          transform: translateY(-1.1rem) rotate(-35deg);
}
@media screen and (max-width:767px) {
  .menuBtn.-is-open .menuBtn__lines span:nth-of-type(3) {
    -webkit-transform: translateY(-0.9rem) rotate(-35deg);
            transform: translateY(-0.9rem) rotate(-35deg);
  }
}

.hamburgerMenu {
  position: absolute;
  top: 1.5rem;
  left: 50%;
  width: calc(100vw - 2rem);
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  display: none;
  pointer-events: none;
  z-index: -1;
}
.hamburgerMenu.-is-open {
  pointer-events: auto;
  display: block;
}
.hamburgerMenu-content {
  background-color: #fff;
  border: solid 1px rgba(0, 0, 0, 0.08);
  padding: 8.5rem 3rem 5rem;
  overflow: auto;
  border-radius: 7px;
  height: 100%;
  will-change: clip-path;
}
.hamburgerMenu-content .menu-list .list-child {
  overflow: hidden;
}
.hamburgerMenu-content .menu-list .link {
  padding: 15px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1.5rem;
  color: #00a2d2;
  position: relative;
  font-family: "Dela Gothic One", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-weight: bold;
  font-size: 2rem;
  letter-spacing: 0.1em;
}
.hamburgerMenu-content .menu-list .link .arrow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 2.5rem;
  aspect-ratio: 1;
  background-color: #00a2d2;
  border-radius: 50%;
}
@media screen and (min-width:992px) {
  .hamburgerMenu-content .menu-list .link .arrow {
    display: none;
  }
}
.hamburgerMenu-content .menu-list .link .arrow span {
  display: inline-block;
  position: relative;
  width: 8px;
  aspect-ratio: 1;
  -webkit-transform: translateX(-25%) rotate(45deg);
          transform: translateX(-25%) rotate(45deg);
}
.hamburgerMenu-content .menu-list .link .arrow span::before, .hamburgerMenu-content .menu-list .link .arrow span::after {
  content: "";
  position: absolute;
  background: #fff;
  border-radius: 100vmax;
}
.hamburgerMenu-content .menu-list .link .arrow span::before {
  top: 0;
  left: 0;
  right: 0;
  height: 1.5px;
}
.hamburgerMenu-content .menu-list .link .arrow span::after {
  top: 0;
  right: 0;
  bottom: 0;
  width: 1.5px;
}
.hamburgerMenu-content .menu-list .link .line {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #00a2d2;
}
.hamburgerMenu__btn {
  margin-top: 3rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  font-size: 3rem;
  padding: 0rem 4rem;
  background-color: #ffe200;
  font-family: "Dela Gothic One", sans-serif;
  font-weight: 400;
  font-style: normal;
  color: #00a2d2;
  font-weight: 400;
  font-style: normal;
  border-radius: 100vmax;
}

.hamburgerMenuOverlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  opacity: 0;
  visibility: hidden;
  z-index: -1;
}
.hamburgerMenuOverlay.active {
  opacity: 1;
  visibility: visible;
}

/*==================================================

** recruit header
==================================================*/
.header-recruit__inner {
  margin: 0;
  border-radius: 0;
  background-color: transparent;
  padding-right: 2rem;
}
@media screen and (max-width:767px) {
  .header-recruit__inner {
    padding-right: 1rem;
  }
}
.header-recruit .recruit-logo {
  margin: 0;
}
.header-recruit .recruit-logo .link {
  height: auto;
  background: #00a2d2;
  padding: 1.5rem 2rem;
  border-bottom-right-radius: 15px;
  width: 180px;
}
@media screen and (min-width:768px) {
  .header-recruit .recruit-logo .link {
    width: 200px;
  }
}
@media screen and (min-width:992px) {
  .header-recruit .recruit-logo .link {
    padding: 0.9vw 1.2vw;
    width: 20rem;
  }
}
.header-recruit .recruit-actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 16px;
}
.header-recruit .recruit-entry {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #ffe200;
  color: #00a2d2;
  font-family: "Dela Gothic One", sans-serif;
  font-weight: 400;
  font-style: normal;
  padding: 1.5rem 4rem;
  border-radius: 100vmax;
  font-size: 2.2rem;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  line-height: 1;
}
@media screen and (max-width:767px) {
  .header-recruit .recruit-entry {
    display: none;
  }
}
.header-recruit .recruit-entry:hover {
  color: #ffe200;
  background-color: #00a2d2;
}
.header-recruit .menuBtn__recruit {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  width: 9.5rem;
  aspect-ratio: 19/10;
  padding: 0;
  background-color: #222b37;
  border-radius: 100vmax;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: none;
}
@media screen and (max-width:767px) {
  .header-recruit .menuBtn__recruit {
    width: 8.5rem;
  }
}
.header-recruit .menuBtn__recruit.-is-open .menuBtn__lines span:nth-of-type(1) {
  -webkit-transform: translateY(0.5rem) rotate(25deg);
          transform: translateY(0.5rem) rotate(25deg);
}
.header-recruit .menuBtn__recruit.-is-open .menuBtn__lines span:nth-of-type(2) {
  opacity: 1;
  -webkit-transform: translateY(-0.5rem) rotate(-25deg);
          transform: translateY(-0.5rem) rotate(-25deg);
}
@media screen and (max-width:767px) {
  .header-recruit .menuBtn__recruit.-is-open .menuBtn__lines span:nth-of-type(2) {
    -webkit-transform: translateY(-0.4rem) rotate(-25deg);
            transform: translateY(-0.4rem) rotate(-25deg);
  }
}
.header-recruit .menuBtn__recruit .menuBtn__lines {
  width: 35%;
  aspect-ratio: 5/2;
}
.header-recruit .menuBtn__recruit .menuBtn__lines span {
  background-color: #fff;
  height: 3px;
  border-radius: 100vmax;
  width: 100%;
  top: unset;
  -webkit-transform: unset;
          transform: unset;
}
.header-recruit .menuBtn__recruit .menuBtn__lines span:nth-of-type(1) {
  top: 0;
}
.header-recruit .menuBtn__recruit .menuBtn__lines span:nth-of-type(2) {
  bottom: 0;
}
.header-recruit .hamburgerMenu {
  top: 0;
  left: unset;
  right: 0;
  width: 50rem;
  -webkit-transform: unset;
          transform: unset;
}
@media screen and (max-width:767px) {
  .header-recruit .hamburgerMenu {
    width: 100%;
  }
}
.header-recruit .hamburgerMenu-container {
  max-height: 100vh;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  overflow-y: scroll;
}
.header-recruit .hamburgerMenu-content {
  padding: 6rem 4rem;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
@media screen and (max-width:767px) {
  .header-recruit .hamburgerMenu-content {
    padding: 8.5rem 3rem 5rem;
  }
}
.header-recruit .hamburgerMenu-content .hamburgerMenu__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (min-width:768px) {
  .header-recruit .hamburgerMenu-content .hamburgerMenu__btn {
    display: none;
  }
}

/*==================================================

** footer
==================================================*/
.footer {
  position: relative;
  overflow: hidden;
  color: #fff;
  background: url(../img/common/footer-bg.svg) no-repeat top center/cover;
}
.footer__inner {
  position: relative;
  z-index: 2;
}
.footer__catch {
  text-align: center;
}
@media screen and (min-width:768px) and (max-width:991px) {
  .footer__catch {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
  }
}
.footer__catch-line {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: clamp(5px, 0.8vw, 10px);
  font-size: clamp(32px, 5vw, 64px);
  letter-spacing: 0.04em;
  font-weight: 700;
  font-family: "Dela Gothic One", sans-serif;
  font-weight: 400;
  font-style: normal;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
@media screen and (max-width:767px) {
  .footer__catch-line {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    font-size: 4.5rem;
  }
}
.footer__catch-text {
  color: #fff;
}
@media screen and (max-width:767px) {
  .footer__catch-text {
    line-height: 1;
  }
}
.footer__catch-strong {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(5px, 0.8vw, 10px);
}
.footer__catch-strong .img {
  width: clamp(10rem, 14vw, 20rem);
}
@media screen and (max-width:767px) {
  .footer__catch-strong .img {
    width: 18rem;
  }
}
.footer__catch-strong .img img {
  width: 100%;
  height: auto;
}
.footer__content {
  display: grid;
  gap: clamp(40px, 6vw, 80px);
  grid-template-columns: 1fr;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
@media screen and (min-width:992px) {
  .footer__content {
    grid-template-columns: 260px 1fr;
  }
}
@media screen and (min-width:1200px) {
  .footer__content {
    grid-template-columns: minmax(280px, 360px) 1fr;
  }
}
.footer__brand {
  display: grid;
  gap: clamp(16px, 3vw, 26px);
  -ms-flex-line-pack: start;
      align-content: start;
  text-align: left;
}
@media screen and (max-width:991px) {
  .footer__brand {
    justify-items: center;
    text-align: center;
  }
}
.footer__brand-mark {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  max-width: 300px;
}
@media screen and (max-width:767px) {
  .footer__brand-mark {
    max-width: 220px;
  }
}
@media screen and (min-width:1200px) {
  .footer__brand-mark {
    width: 80%;
  }
}
.footer__details {
  color: #fff;
  font-size: 1.4rem;
  line-height: 1.8;
  letter-spacing: 0.07em;
}
.footer__company {
  font-weight: 700;
  margin-bottom: 0.4em;
}
.footer__sns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2rem;
}
.footer__sns li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.footer__banner {
  width: 100%;
  max-width: 300px;
  border-radius: 5px;
  overflow: hidden;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
@media screen and (min-width:1200px) {
  .footer__banner {
    width: 80%;
  }
}
.footer__banner:hover {
  opacity: 0.7;
}
.footer__sns-link {
  height: 3rem;
  aspect-ratio: 1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transition: 0.25s ease;
  transition: 0.25s ease;
}
.footer__sns-link img {
  width: auto;
  height: 100%;
  display: block;
}
.footer__sns-link:hover {
  opacity: 0.7;
}
.footer__nav {
  gap: clamp(24px, 3vw, 40px);
}
@media screen and (max-width:991px) {
  .footer__nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media screen and (max-width:767px) {
  .footer__nav {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    gap: 0;
  }
}
@media screen and (min-width:992px) {
  .footer__nav {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: clamp(24px, 2vw, 32px);
  }
}
.footer__nav-col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  gap: 2rem;
}
@media screen and (max-width:767px) {
  .footer__nav-col {
    gap: 0;
  }
}
@media screen and (max-width:767px) {
  .footer__nav-col > * {
    gap: 0;
    padding-block: 12px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  }
}
.footer__nav-col:last-child > *:last-child {
  border-bottom: 0;
}
.footer__nav-group {
  display: grid;
  gap: 8px;
}
@media screen and (max-width:767px) {
  .footer__nav-group {
    gap: 0;
  }
}
.footer__nav-head {
  color: #fff;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-decoration: none;
  font-size: clamp(18px, 1.2vw, 17px);
  line-height: 1.6;
  display: inline-block;
}
@media screen and (max-width:767px) {
  .footer__nav-head.-link-only {
    padding-right: 0;
  }
}
.footer__nav-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 6px;
}
.footer__nav-list a {
  color: rgba(255, 255, 255, 0.8);
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  text-decoration: none;
  -webkit-transition: 0.25s ease;
  transition: 0.25s ease;
}
.footer__nav-list a:hover {
  color: #fff;
  -webkit-transform: translateX(2px);
          transform: translateX(2px);
}
@media screen and (max-width:767px) {
  .footer__nav-list {
    max-height: none;
    overflow: visible;
    -webkit-transition: none;
    transition: none;
  }
}
@media screen and (max-width:767px) {
  .footer__nav-group > .footer__nav-head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 8px;
    padding-right: 12px;
    position: relative;
  }
  .footer__nav-group > .footer__nav-head::after {
    content: "";
    width: 7px;
    aspect-ratio: 1;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    -webkit-transition: -webkit-transform 0.25s ease;
    transition: -webkit-transform 0.25s ease;
    transition: transform 0.25s ease;
    transition: transform 0.25s ease, -webkit-transform 0.25s ease;
  }
  .footer__nav-group .footer__nav-list {
    max-height: 0;
    overflow: hidden;
    -webkit-transition: max-height 0.3s ease;
    transition: max-height 0.3s ease;
  }
  .footer__nav-group.is-open > .footer__nav-head::after {
    -webkit-transform: rotate(-135deg);
            transform: rotate(-135deg);
  }
  .footer__nav-group.is-open .footer__nav-list {
    margin-top: 6px;
  }
}
.footer__copyright {
  text-align: center;
  color: #fff;
  font-size: 1.2rem;
  letter-spacing: 0.08em;
  font-weight: 500;
}

/*==================================================

** contact section
==================================================*/
.common-contact {
  background: var(--color-sub);
}
@media screen and (min-width:768px) and (max-width:991px) {
  .common-contact .container {
    width: 95%;
  }
}
@media screen and (max-width:767px) {
  .common-contact__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    gap: 3rem;
  }
}
@media screen and (min-width:768px) {
  .common-contact__list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 3%;
  }
}
.common-contact__child {
  display: grid;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2rem;
  background: #fff;
  border-radius: 12px;
  -webkit-box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.15);
          box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.15);
  padding-block: 4rem 5rem;
  position: relative;
  opacity: 0;
}
@media screen and (min-width:768px) {
  .common-contact__child {
    grid-template-rows: subgrid;
    grid-row: span 2;
  }
}
.common-contact__child.-is-active {
  -webkit-animation: bounding 0.6s ease forwards;
          animation: bounding 0.6s ease forwards;
}
@media screen and (max-width:767px) {
  .common-contact__child.-is-active {
    -webkit-animation: bounding-sp 0.6s ease forwards;
            animation: bounding-sp 0.6s ease forwards;
  }
}
@media screen and (min-width:768px) {
  .common-contact__child.-is-active:nth-child(2) {
    -webkit-animation-delay: 0.4s;
            animation-delay: 0.4s;
  }
}
@media screen and (min-width:768px) {
  .common-contact__child.-is-active:nth-child(3) {
    -webkit-animation-delay: 0.8s;
            animation-delay: 0.8s;
  }
}
.common-contact__child .ribbon {
  position: absolute;
  top: -15px;
  left: -13px;
}
.common-contact__child .ribbon span {
  display: inline-block;
  position: relative;
  padding: 13px 20px;
  font-size: 18px;
  line-height: 1;
  color: #FFF;
  background: var(--color-accent);
}
.common-contact__child .ribbon span:before {
  position: absolute;
  content: "";
  top: 100%;
  left: 0;
  border: none;
  border-bottom: solid 11px transparent;
  border-right: solid 13px rgb(246, 130, 0); /*折り返し部分*/
}
.common-contact__child .ribbon span::after {
  content: "";
  position: absolute;
  top: 0;
  left: calc(100% - 0.5px);
  border-bottom: 44px solid transparent;
  border-left: 23px solid var(--color-accent);
}
.common-contact__child .txt {
  text-align: center;
}
.common-contact__child .txt > * {
  font-weight: 500;
}
.common-contact__child .txt .ttl {
  font-size: 3rem;
  line-height: 1.6;
}
@media screen and (min-width:768px) {
  .common-contact__child .txt .ttl {
    font-size: 2rem;
  }
}
@media screen and (min-width:992px) {
  .common-contact__child .txt .ttl {
    font-size: 2.4rem;
  }
}
@media screen and (min-width:1200px) {
  .common-contact__child .txt .ttl {
    font-size: 3.6rem;
  }
}
.common-contact__child .txt .description {
  font-size: 1.6rem;
  margin-top: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (min-width:768px) {
  .common-contact__child .txt .description {
    font-size: 1.2rem;
  }
}
@media screen and (min-width:992px) {
  .common-contact__child .txt .description {
    font-size: 1.4rem;
  }
}
@media screen and (min-width:1200px) {
  .common-contact__child .txt .description {
    font-size: 2rem;
  }
}
@media screen and (min-width:768px) {
  .common-contact.-another .common-contact__list {
    grid-template-columns: repeat(2, 1fr);
  }
}
.common-contact.-another .another-contact__lead {
  text-align: center;
  margin-bottom: 6rem;
}
.common-contact.-another .another-contact__subttl {
  color: #fff;
  font-size: clamp(1.8rem, 2vw, 2rem);
  letter-spacing: 0.1em;
  font-weight: 500;
}
.common-contact.-another .another-contact__title {
  color: #fff;
  font-size: clamp(2.2rem, 3vw, 3.6rem);
  letter-spacing: 0.1em;
  line-height: 1.8;
  font-weight: 500;
}
.common-contact.-another .common-contact__child .txt .description {
  font-size: 1.6rem;
}
.common-contact.-another .btn.-main {
  max-width: 300px;
}

/*==================================================

** fullscreen
==================================================*/
/* 共通 */
.fullscreen {
  width: 100%;
  height: 25rem;
  position: relative;
  background: #00a2d2;
  overflow: hidden;
}
@media screen and (min-width:768px) {
  .fullscreen {
    height: calc(30rem + 8vw);
  }
}
.fullscreen .circle-fullscreen {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  pointer-events: none;
  position: absolute;
  top: 50%;
  left: 50%;
  /* transform: translate(-50%,-50%); */
  height: 70vw;
  aspect-ratio: 1;
}
@media screen and (max-width:767px) {
  .fullscreen .circle-fullscreen {
    height: 95vw;
  }
}
.fullscreen .circle-fullscreen__static {
  position: relative;
  width: 100%;
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle at center, transparent 0% 49%, #0094c3 49% 100%);
}
.fullscreen .circle-fullscreen__static span {
  width: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  /* transform: translate(-50%,-50%) !important; */
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle at center, transparent 0% 38%, #0094c3 38% 100%);
}
.fullscreen-inner {
  position: absolute;
  top: 55%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.fullscreen-inner .main-ttl {
  margin-inline: auto;
}
.fullscreen-inner .main-ttl .ttl {
  margin-block: 0;
  font-family: "Dela Gothic One", sans-serif;
  font-weight: 400;
  font-style: normal;
  color: #fff;
  font-size: clamp(3.6rem, 7vw, 8.6rem);
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  overflow: hidden;
  margin-top: -1rem;
  padding-top: 1rem;
}
@media screen and (max-width:767px) {
  .fullscreen-inner .main-ttl .ttl {
    font-size: 2.8rem;
  }
}

/*==================================================

** crumbs
==================================================*/
#breadcrumbs {
  padding: 15px 30px;
  max-width: 1400px;
  margin: 0 auto;
}
#breadcrumbs .breadcrumbs-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.5rem;
  overflow: auto;
  padding-bottom: 10px;
}
@media screen and (max-width:767px) {
  #breadcrumbs .breadcrumbs-inner {
    gap: 0.7rem;
  }
}
#breadcrumbs .breadcrumbs-inner span, #breadcrumbs .breadcrumbs-inner a {
  line-height: 1;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
  font-weight: 500;
  white-space: nowrap;
}
#breadcrumbs .breadcrumbs-inner span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.5rem;
}
@media screen and (max-width:767px) {
  #breadcrumbs .breadcrumbs-inner span {
    gap: 0.7rem;
  }
}
#breadcrumbs .breadcrumbs-inner span::after {
  content: "";
  height: 0.5lh;
  aspect-ratio: 1;
  border: 0.1em solid #222b37;
  border-left: 0;
  border-bottom: 0;
  -webkit-transform: translateX(-25%) rotate(45deg);
          transform: translateX(-25%) rotate(45deg);
}
#breadcrumbs .breadcrumbs-inner span:last-child span::after {
  display: none;
}
#breadcrumbs .breadcrumbs-inner span:last-child::after {
  display: none;
}
#breadcrumbs .breadcrumbs-inner span > a {
  color: #222b37;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
#breadcrumbs .breadcrumbs-inner span > a:hover {
  color: #00a2d2;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
#breadcrumbs .breadcrumbs-inner span > span {
  color: #00a2d2;
}
#breadcrumbs {
  /* @include mq(0, 768) {
    +* {
      padding-top: 20px;
    }
  } */
}

/*==================================================

** news
==================================================*/
.with-sidebar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width:767px) {
  .with-sidebar {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media screen and (max-width:991px) {
  .with-sidebar.menu-single {
    gap: 50px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.with-sidebar .main-column {
  width: 69%;
}
@media screen and (max-width:767px) {
  .with-sidebar .main-column {
    width: 100%;
  }
}
@media screen and (max-width:991px) {
  .with-sidebar .main-column.menu-contents {
    width: 100%;
  }
}
@media screen and (max-width:991px) {
  .with-sidebar .main-column.menu-contents + .sidebar {
    width: 100%;
  }
}
.with-sidebar .sidebar {
  width: 23%;
}
@media screen and (max-width:767px) {
  .with-sidebar .sidebar {
    width: 100%;
    margin-top: 70px;
  }
}

.imgbox + .single-body {
  margin-top: 40px;
}
@media screen and (max-width:991px) {
  .imgbox + .single-body {
    margin-top: 30px;
  }
}
@media screen and (max-width:767px) {
  .imgbox + .single-body {
    margin-top: 22px;
  }
}

.ttl + .single-body {
  margin-top: 20px;
}
@media screen and (max-width:767px) {
  .ttl + .single-body {
    margin-top: 10px;
  }
}

.anchor-inner {
  width: 100%;
  max-width: 1200px;
  margin-inline: auto;
}
@media screen and (max-width:767px) {
  .anchor-inner {
    padding-inline: 3rem;
  }
}
@media screen and (min-width:768px) {
  .anchor-inner {
    width: 85%;
  }
}
@media screen and (min-width:992px) {
  .anchor-inner {
    width: 80%;
  }
}
@media screen and (min-width:1200px) {
  .anchor-inner {
    width: 60%;
  }
}
.anchor-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2rem 0;
}
.anchor-item {
  width: 25%;
}
@media screen and (max-width:767px) {
  .anchor-item {
    width: 50%;
  }
  .anchor-item:nth-child(even) .anchor-link {
    border-right: solid 1px #d5d7d9;
  }
}
.anchor-item + .anchor-item .anchor-link {
  border-left: solid 1px #d5d7d9;
}
.anchor-item:first-child .anchor-link {
  border-left: solid 1px #d5d7d9;
}
.anchor-item:last-child .anchor-link, .anchor-item:nth-child(4) .anchor-link {
  border-right: solid 1px #d5d7d9;
}
.anchor-link {
  padding-block: 1.3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1.5rem;
  font-weight: 500;
  color: #222b37;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  position: relative;
}
.anchor-link:hover {
  color: #00a2d2;
  /* &::before{
      transform: scaleY(1);
      transform-origin: bottom;
  } */
}
.anchor-link:hover::after {
  color: #00a2d2;
}
.anchor-link span {
  position: relative;
}
.anchor-link::after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  color: #222b37;
  line-height: 1;
  height: 0.5lh;
  aspect-ratio: 1;
  border: 2px solid currentColor;
  border-left: 0;
  border-bottom: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transform: translateY(-25%) rotate(135deg);
          transform: translateY(-25%) rotate(135deg);
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
.anchor-link {
  /* &::before {
      position: absolute;
      top: 0;
      left: 0;
      content: "";
      display: block;
      width: 100%;
      height: 100%;
      background: $sub;
      transform: scaleY(0);
      transform-origin: top;
      transition: all 0.5s ease;
      transition-property: transform;
  } */
}

.accordion-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2rem;
}

.accordion {
  width: 100%;
  border-radius: 15px;
  overflow: hidden;
  background: #fff;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.05);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.05);
}
.accordion__head {
  background-color: #00a2d2 !important;
  color: #fff;
  padding: 1.5rem 2.5rem 1.5rem 2rem;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-radius: 15px;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  list-style: none;
}
@media screen and (max-width:767px) {
  .accordion__head {
    padding: 1.5rem;
  }
}
.accordion__head::-webkit-details-marker {
  display: none;
}
.accordion__head:hover {
  opacity: 0.9;
}
.accordion__head:focus {
  outline: none;
}
.accordion__title {
  font-size: clamp(1.4rem, 1.174rem + 1.032vw, 2.4rem);
  font-weight: 700;
  margin: 0;
}
.accordion__icon {
  position: relative;
  width: 12px;
  height: 12px;
  display: block;
  -webkit-transition: -webkit-transform 0.4s ease;
  transition: -webkit-transform 0.4s ease;
  transition: transform 0.4s ease;
  transition: transform 0.4s ease, -webkit-transform 0.4s ease;
}
.accordion__icon::before, .accordion__icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background-color: #fff;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.accordion__icon::before {
  width: 100%;
  height: 2px;
}
.accordion__icon::after {
  width: 2px;
  height: 100%;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
.accordion.is-opened .accordion__head {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.accordion.is-opened .accordion__icon {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.accordion.is-opened .accordion__icon::after {
  opacity: 0;
}
.accordion .accordion__body {
  height: 0;
  opacity: 0;
  overflow: hidden;
}
.accordion .accordion__inner {
  padding: 4rem 5rem 6rem;
  background-color: #fff;
}
@media screen and (max-width:767px) {
  .accordion .accordion__inner {
    padding: 1rem 2rem 4rem;
  }
}
.accordion .dl {
  margin-bottom: 4rem;
}
@media screen and (max-width:767px) {
  .accordion .dl {
    margin-bottom: 3rem;
  }
}
.accordion .dl__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-bottom: 1px solid #d5d7d9;
  padding-block: 2rem;
}
@media screen and (max-width:767px) {
  .accordion .dl__row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0.5rem;
  }
}
.accordion .dl dt {
  width: 25%;
  font-weight: 700;
  color: #00a2d2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  line-height: 1.6;
}
@media screen and (max-width:767px) {
  .accordion .dl dt {
    width: 100%;
  }
}
.accordion .dl dd {
  width: 75%;
  margin: 0;
  line-height: 1.8;
  color: #333;
}
@media screen and (max-width:767px) {
  .accordion .dl dd {
    width: 100%;
  }
}
@media screen and (max-width:767px) {
  .accordion .dl dt, .accordion .dl dd {
    font-size: 1.4rem;
  }
}
.accordion__btn-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
}
.accordion__close-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 2rem;
}
@media screen and (max-width:767px) {
  .accordion__close-wrap {
    margin-bottom: 1.5rem;
  }
}
.accordion .btn-close {
  background: none;
  border: none;
  cursor: pointer;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  font-size: 1.6rem;
  font-weight: 700;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
@media screen and (max-width:767px) {
  .accordion .btn-close {
    font-size: 1.4rem;
  }
}
.accordion .btn-close .icon {
  display: inline-block;
  vertical-align: middle;
  color: #333;
  line-height: 1;
  width: 1em;
  height: 0.1em;
  background: currentColor;
  border-radius: 0.1em;
  position: relative;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.accordion .btn-close .icon::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: inherit;
  border-radius: inherit;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.accordion .btn-close:hover {
  opacity: 0.6;
}

.section__ttl {
  text-align: center;
}
.section__ttl-main {
  font-size: clamp(2.4rem, 2.039rem + 1.652vw, 4rem);
  line-height: 1;
  font-family: "Dela Gothic One", sans-serif;
  font-weight: 400;
  font-style: normal;
}
.section__ttl-sub {
  font-size: clamp(1.6rem, 1.51rem + 0.413vw, 2rem);
  line-height: 1;
  margin-top: 0.8rem;
  color: #00a2d2;
  font-family: "Dela Gothic One", sans-serif;
  font-weight: 400;
  font-style: normal;
}
@media screen and (min-width:768px) {
  .section__ttl-sub {
    margin-top: 1rem;
  }
}

.single-body h2,
.single-body h3 {
  line-height: 1.6;
}
.single-body h2 {
  font-size: clamp(22px, 2.196193265vw, 30px);
  border-bottom: 1px solid var(--color-main);
  padding-bottom: 0.3em;
  letter-spacing: 0.1em;
  line-height: 1.4;
  font-weight: 400;
}
.single-body h3 {
  font-size: clamp(20px, 1.9033674963vw, 26px);
  letter-spacing: 0.1em;
  line-height: 1.4;
  font-weight: 400;
  position: relative;
  padding-left: 1em;
}
.single-body h3::before {
  content: "";
  display: inline-block;
  width: 0.4em;
  height: 0.4em;
  border-radius: 0.5em;
  overflow: hidden;
  background-color: var(--color-main);
  position: absolute;
  left: 0;
  top: clamp(10px, 1.0248901903vw, 14px);
}
.single-body h4 {
  font-weight: 400;
  font-size: 16px;
}
@media screen and (min-width: 768px) {
  .single-body h4 {
    font-size: 18px;
  }
}
.single-body h5 {
  font-size: 16px;
}
@media screen and (max-width:991px) {
  .single-body h5 {
    font-size: 14px;
  }
}
.single-body hr {
  background-color: var(--color-pale);
  margin: 30px 0;
  border: none;
  height: 1px;
}
@media screen and (min-width: 768px) {
  .single-body hr {
    margin: 50px 0;
  }
}
.single-body p,
.single-body li {
  font-size: 16px;
  margin-top: 10px;
}
@media screen and (max-width:767px) {
  .single-body p,
  .single-body li {
    font-size: 14px;
    margin-top: 6px;
  }
}
.single-body * + h2 {
  margin-top: 40px;
}
@media screen and (min-width: 768px) {
  .single-body * + h2 {
    margin-top: 50px;
  }
}
.single-body * + h3 {
  margin-top: 30px;
}
@media screen and (min-width: 768px) {
  .single-body * + h3 {
    margin-top: 40px;
  }
}
.single-body * + h4,
.single-body * + h5 {
  margin-top: 15px;
}
@media screen and (min-width: 768px) {
  .single-body * + h4,
  .single-body * + h5 {
    margin-top: 20px;
  }
}
.single-body img {
  height: auto;
  max-width: 100%;
}
.single-body .alignright {
  display: block;
  margin-left: 18px;
  float: right;
}
.single-body .alignleft {
  display: block;
  margin-right: 18px;
  float: left;
}
.single-body .aligncenter {
  display: block;
  margin: 0 auto !important;
}
.single-body div {
  max-width: 100%;
}
.single-body ul,
.single-body ol {
  padding-left: 1.3em;
}
.single-body ul {
  list-style-type: disc;
}
.single-body ol {
  list-style-type: decimal;
}
.single-body strong {
  font-weight: bold;
}
.single-body em {
  font-style: italic;
}
.single-body del {
  text-decoration: line-through;
}
.single-body a {
  text-decoration: underline;
  color: var(--color-main);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.single-body a:hover {
  opacity: 0.7;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
.single-body blockquote p {
  font-size: 20px;
  position: relative;
  padding: calc(3% + 15px);
}
@media screen and (max-width:991px) {
  .single-body blockquote p {
    font-size: 18px;
  }
}
@media screen and (max-width:767px) {
  .single-body blockquote p {
    padding: 10px;
    font-size: 16px;
    padding: 25px;
  }
}
.single-body blockquote p::before {
  content: "";
  font-family: "dashicons";
  content: "\f122";
  color: rgba(var(--color-rgb-txt), 0.4);
  font-size: 30px;
  display: inline-block;
  line-height: 1;
  position: absolute;
  top: 0;
  left: 0;
  padding: 10px;
}
@media screen and (max-width:991px) {
  .single-body blockquote p::before {
    font-size: 22px;
  }
}
@media screen and (max-width:767px) {
  .single-body blockquote p::before {
    font-size: 18px;
  }
}
.single-body .youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.single-body .youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}
.single-body iframe {
  max-width: 100%;
}

/*==================================================

** policy page
==================================================*/
#policy .policy-content {
  display: grid;
  gap: clamp(24px, 5vw, 48px);
}
#policy .policy-content > h2 {
  font-weight: 600;
  font-size: clamp(2.6rem, 5vw, 3.4rem);
  letter-spacing: 0.12em;
  color: #00a2d2;
  font-family: "Dela Gothic One", sans-serif;
  font-weight: 400;
  font-style: normal;
  border: none;
  padding-bottom: 0;
  position: relative;
  margin-top: 0;
  margin-inline: auto;
}
#policy .policy-content > section:empty {
  display: none;
  padding: 0;
}
#policy .policy-content h3 {
  font-family: "Dela Gothic One", sans-serif;
  font-weight: 400;
  font-style: normal;
  color: #222b37;
  font-weight: 400;
  font-size: clamp(1.8rem, 3.5vw, 2.4rem);
  letter-spacing: 0.08em;
  padding-left: 0;
  margin: 0 0 0.5em;
}
#policy .policy-content h3::before {
  content: none;
}
#policy .policy-content p {
  margin: 0;
  font-size: 1.6rem;
}
#policy .policy-content p + p,
#policy .policy-content p + ul,
#policy .policy-content ul + p {
  margin-top: 0.8em;
}
#policy .policy-content ul {
  list-style: none;
  padding-left: 0;
  margin: 0.5em 0 0;
  display: grid;
  gap: 0.8rem;
}
#policy .policy-content li {
  position: relative;
  padding-left: 1.8rem;
  font-weight: 500;
}
#policy .policy-content li::before {
  content: "";
  width: 0.65rem;
  height: 0.65rem;
  border-radius: 50%;
  background: #00a2d2;
  position: absolute;
  left: 0;
  top: 0.9em;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

/*==================================================

** 施工実績カルーセル
==================================================*/
.works-section {
  position: relative;
}
.works-section.-is-active::before {
  -webkit-animation: bounding 0.6s ease forwards;
          animation: bounding 0.6s ease forwards;
}
.works-section::before {
  content: "";
  position: absolute;
  top: -2rem;
  right: 5%;
  background: url(../img/top/works-illust.svg);
  background-repeat: no-repeat;
  background-size: contain;
  width: 15rem;
  aspect-ratio: 281/189;
  z-index: 1;
  opacity: 0;
}
@media screen and (min-width:768px) {
  .works-section::before {
    top: -7rem;
    width: 21rem;
  }
}
@media screen and (min-width:992px) {
  .works-section::before {
    top: -8vw;
    right: 10%;
    width: 21vw;
  }
}
.works-section__bg {
  position: relative;
  padding-bottom: 7rem;
}
@media screen and (max-width:767px) {
  .works-section__bg {
    padding-block: 7rem;
  }
}
.works-section__bg::before, .works-section__bg::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 20vw;
}
@media screen and (max-width:767px) {
  .works-section__bg::before, .works-section__bg::after {
    width: 15rem;
  }
}
.works-section__bg::before {
  top: -6rem;
  left: 0;
  background: url(../img/top/works-bg01.svg) no-repeat center/contain;
  aspect-ratio: 279/329;
}
.works-section__bg::after {
  bottom: 0;
  right: 0;
  background: url(../img/top/works-bg02.svg) no-repeat center/contain;
  aspect-ratio: 349/279;
}
.works-section__slider {
  margin-block: 2rem 4rem;
}
@media screen and (min-width:768px) {
  .works-section__slider {
    margin-block: 5.6rem;
  }
}
.works-section__slider .splide__track {
  overflow: visible;
}
.works-section__slider .splide__list {
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
.works-section__slider .splide__slide {
  height: auto;
}
.works-section__slider .works-card {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  background-color: #fff;
  border-radius: 12px;
  -webkit-box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.15);
          box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.15);
  overflow: hidden;
  height: 100%;
  -webkit-transition: -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
  transition: -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  transition: transform 0.3s ease, box-shadow 0.3s ease, -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
}
.works-section__slider .works-card:hover {
  -webkit-transform: translateY(-6px);
          transform: translateY(-6px);
  -webkit-box-shadow: 0 20px 36px rgba(33, 32, 31, 0.16);
          box-shadow: 0 20px 36px rgba(33, 32, 31, 0.16);
}
.works-section__slider .works-card__image {
  position: relative;
  width: 100%;
  aspect-ratio: 16/10;
  overflow: hidden;
  background: #efeff0;
}
.works-section__slider .works-card__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.works-section__slider .works-card__badge {
  position: absolute;
  top: 0;
  left: 0;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-inline: 2rem 2.5rem;
  border-top-right-radius: 100vmax;
  border-bottom-right-radius: 100vmax;
  font-size: 1.3rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  color: #fff;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background: #ccc;
}
.works-section__slider .works-card__badge.-corporate {
  background: #f6a05f;
}
.works-section__slider .works-card__badge.-general {
  background: #7d80ce;
}
.works-section__slider .works-card__body {
  padding: 24px 24px 28px;
  text-align: center;
  position: relative;
}
@media screen and (min-width:768px) {
  .works-section__slider .works-card__body {
    padding: 28px 32px 36px;
  }
}
.works-section__slider .works-card__title {
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: 0.06em;
}
.works-section__slider .works-card__meta {
  font-size: 1.4rem;
  font-weight: 500;
  letter-spacing: 0.04em;
}

/*==================================================

** タブボタン
==================================================*/
.tab__inner {
  display: grid;
  gap: 0.5rem;
  width: 100%;
  margin-inline: auto;
}
@media screen and (max-width:767px) {
  .tab__inner {
    grid-template-columns: 1fr;
  }
}
.tab__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 0.8em;
  padding: 2.5rem;
  border-radius: 12px;
  background: #eae9fb;
  color: var(--color-deep-purple);
  font-weight: 700;
  line-height: 1;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
.tab__item:hover, .tab__item:focus-visible {
  -webkit-transform: translateY(-2px);
          transform: translateY(-2px);
  -webkit-box-shadow: 0 16px 32px rgba(125, 128, 206, 0.28);
          box-shadow: 0 16px 32px rgba(125, 128, 206, 0.28);
  background: var(--color-deep-purple);
  color: #fff;
}
.tab__item:hover .arrow::before, .tab__item:hover .arrow::after, .tab__item:focus-visible .arrow::before, .tab__item:focus-visible .arrow::after {
  background: #fff;
}
.tab__item .arrow {
  display: inline-block;
  vertical-align: middle;
  color: var(--color-deep-purple);
  line-height: 1;
  position: relative;
  width: 1rem;
  aspect-ratio: 1;
  -webkit-transform: translateX(-25%) rotate(135deg);
          transform: translateX(-25%) rotate(135deg);
}
.tab__item .arrow::before, .tab__item .arrow::after {
  content: "";
  position: absolute;
  background: currentColor;
  border-radius: 100vmax;
}
.tab__item .arrow::before {
  top: 0;
  left: 0;
  right: 0;
  height: 0.1em;
}
.tab__item .arrow::after {
  top: 0;
  right: 0;
  bottom: 0;
  width: 0.1em;
}
.tab__label {
  display: inline-block;
}

/*==================================================

** FAQ
==================================================*/
.faq {
  background-color: #fff;
}
.faq__list {
  display: grid;
  gap: clamp(1rem, 2vw, 1.8rem);
}
.faq__summary {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  list-style: none;
  padding: clamp(1.6rem, 2.8vw, 2.2rem) clamp(1.6rem, 3vw, 3rem);
  cursor: pointer;
  color: var(--color-deep-purple);
  font-weight: 500;
  border-radius: 12px;
  background: #eae9fb;
  overflow: hidden;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
.faq__summary::-webkit-details-marker {
  display: none;
}
.faq__summary::marker {
  display: none;
}
.faq__summary:hover, .faq__summary:focus {
  background: var(--color-deep-purple);
  color: #fff;
}
.faq__summary:hover .faq__icon svg, .faq__summary:focus .faq__icon svg {
  color: #fff;
}
.faq__question {
  font-size: clamp(1.5rem, 2vw, 1.9rem);
  line-height: 1.6;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.faq__badge {
  width: clamp(3.2rem, 4vw, 4rem);
  aspect-ratio: 1;
  border-radius: 50%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  position: relative;
}
.faq__badge > span {
  position: absolute;
  top: 53%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-size: 2rem;
  font-weight: 600;
  line-height: 1;
}
@media screen and (max-width:767px) {
  .faq__badge > span {
    top: 55%;
    font-size: 1.6rem;
  }
}
.faq__badge.-question {
  background-color: #fff;
}
.faq__badge.-question > span {
  color: var(--color-deep-purple);
}
.faq__badge.-answer {
  background-color: var(--color-accent);
}
.faq__badge.-answer > span {
  color: #fff;
}
.faq__icon {
  width: clamp(2.4rem, 3vw, 2.8rem);
  aspect-ratio: 1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
.faq__icon svg {
  width: 100%;
  height: auto;
  display: block;
  color: var(--color-deep-purple);
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
.faq__icon svg path {
  stroke-width: 1.5px;
}
.faq__content {
  height: 0;
  overflow: hidden;
  opacity: 0;
  padding: 0 clamp(1.6rem, 3vw, 3rem);
}
.faq__answer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.5rem;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (max-width:767px) {
  .faq__answer {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.faq__text {
  width: 100%;
  line-height: 2.2;
  font-size: 1.6rem;
}
.faq__text > * + * {
  margin-top: 1.2rem;
}
.faq__text img,
.faq__text video {
  width: 100%;
  height: auto;
  border-radius: 12px;
}
.faq__text ul,
.faq__text ol {
  padding-left: 1.2em;
  list-style-position: outside;
}
.faq__text table {
  width: 100%;
  border-collapse: collapse;
  font-size: 1.4rem;
}
.faq__text table th,
.faq__text table td {
  padding: 0.8rem;
  border: 1px solid #ddd;
}
.faq__text hr {
  color: #efeff0;
  border: solid 1px #efeff0;
}
.faq__item.is-opened .faq__content {
  height: auto;
  opacity: 1;
  padding-block: clamp(1.4rem, 2.5vw, 2.4rem);
}
.faq__item.is-opened .faq__icon svg {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.faq__empty {
  text-align: center;
  color: #555;
  font-size: 1.5rem;
  padding: 4rem 0;
}

.widget_title {
  font-size: 18px;
  background-color: var(--color-main);
  color: var(--color-white);
  text-align: center;
  padding: 6px 0;
  position: relative;
  border-radius: 3px;
  overflow: hidden;
}
@media screen and (max-width:1199px) {
  .widget_title {
    font-size: 16px;
  }
}
@media screen and (max-width:991px) {
  .widget_title {
    padding: 4px 0;
  }
}

.sidebar_editable + .sidebar_editable {
  margin-top: 40px;
}
@media screen and (max-width:767px) {
  .sidebar_editable + .sidebar_editable {
    margin-top: 20px;
  }
}
.sidebar_editable li {
  font-size: 16px;
}
.sidebar_editable li + li {
  border-top: 1px dotted var(--color-txt-pink);
}
.sidebar_editable li a {
  position: relative;
  padding: 14px 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  display: block;
  background-color: transparent;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  position: relative;
  padding-left: 24px;
  text-decoration: none;
}
.sidebar_editable li a::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 3px;
  overflow: hidden;
  background-color: var(--color-pink);
  /* border: 1px solid;
  border-color: var(--color-main) var(--color-main) transparent transparent;
  transform: rotate(45deg); */
  position: absolute;
  top: 28px;
  left: 7px;
}
.sidebar_editable li a:hover {
  background-color: rgba(var(--color-rgb-main), 0.1);
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
.sidebar_editable details[open] summary {
  background-color: transparent;
}
.sidebar_editable details[open] .aco-icon::before, .sidebar_editable details[open] .aco-icon::after {
  background-color: var(--color-main);
}
.sidebar_editable summary {
  padding: 8px 20px;
  border-radius: 0;
  background-color: transparent;
}
.sidebar_editable .aco-content {
  border-top: 1px solid var(--color-pale-pink);
}
.sidebar_editable .summary-ttl h3 {
  font-size: 16px;
  color: var(--color-txt);
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-style: normal;
}
.sidebar_editable .aco-icon::before, .sidebar_editable .aco-icon::after {
  background-color: var(--color-main);
}

a.wp-block-button__link {
  background-color: var(--color-main);
  color: var(--color-white);
  text-decoration: none;
}

.cat-item-none {
  display: none;
}

.archive-wrap .ttl,
.archive-wrap .txt,
.single-wrap .ttl,
.single-wrap .txt {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.archive-wrap .ttl,
.single-wrap .ttl {
  font-size: 22px;
  letter-spacing: 0.1em;
  margin-top: 8px;
  line-height: 1.4;
  font-weight: 400;
}
@media screen and (max-width:991px) {
  .archive-wrap .ttl,
  .single-wrap .ttl {
    font-size: 20px;
  }
}
@media screen and (max-width:767px) {
  .archive-wrap .ttl,
  .single-wrap .ttl {
    font-size: 18px;
  }
}
.archive-wrap .txt,
.single-wrap .txt {
  font-size: 16px;
  line-height: 2.2;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
@media screen and (max-width:991px) {
  .archive-wrap .txt,
  .single-wrap .txt {
    font-size: 14px;
  }
}
.archive-wrap .information-list > .list-child + .list-child,
.single-wrap .information-list > .list-child + .list-child {
  border-top: 1px dotted var(--color-pale);
}
.archive-wrap .information-list .link,
.single-wrap .information-list .link {
  padding: 5% 0 4%;
  display: block;
}
@media screen and (max-width:767px) {
  .archive-wrap .information-list .link,
  .single-wrap .information-list .link {
    padding: 8% 0 6%;
  }
}
.archive-wrap .information-list .link:hover .ttl,
.archive-wrap .information-list .link:hover .txt,
.archive-wrap .information-list .link:hover .time,
.single-wrap .information-list .link:hover .ttl,
.single-wrap .information-list .link:hover .txt,
.single-wrap .information-list .link:hover .time {
  color: var(--color-main);
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
.archive-wrap .information-list .link:hover .cat,
.single-wrap .information-list .link:hover .cat {
  background-color: var(--color-main);
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}

.wp-pagenavi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 60px;
}
@media screen and (max-width:767px) {
  .wp-pagenavi {
    margin-top: 40px;
  }
}
.wp-pagenavi a,
.wp-pagenavi span {
  padding: 0;
  margin: 0;
}
.wp-pagenavi a + a,
.wp-pagenavi a + span,
.wp-pagenavi span + a,
.wp-pagenavi span + span {
  margin-left: 10px !important;
}
.wp-pagenavi .pages,
.wp-pagenavi .extend {
  display: none;
}
.wp-pagenavi .page,
.wp-pagenavi .current {
  display: inline-block;
  font-size: 15px;
  width: 31px;
  height: 31px;
  line-height: 31px;
  text-align: center;
}
.wp-pagenavi .current {
  background-color: var(--color-main);
  color: var(--color-white);
}
.wp-pagenavi .page {
  background-color: var(--color-pale);
  color: var(--color-txt);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.wp-pagenavi .page:hover {
  background-color: rgba(var(--color-rgb-main), 0.45);
  color: var(--color-white);
}
.wp-pagenavi .page:active, .wp-pagenavi .page:visited {
  background-color: var(--color-pale);
  color: var(--color-txt);
}
.wp-pagenavi .first,
.wp-pagenavi .last {
  display: block;
  height: 33px;
  line-height: 53px;
  border: none;
  position: relative;
  text-decoration: none;
}
.wp-pagenavi .first::before,
.wp-pagenavi .last::before {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  border: 2px solid;
  border-color: var(--color-main) var(--color-main) transparent transparent;
  -webkit-transform: rotate(45deg) translateY(-50%);
  transform: rotate(45deg) translateY(-50%);
  position: absolute;
  top: 50%;
}
.wp-pagenavi .first:hover, .wp-pagenavi .first:active,
.wp-pagenavi .last:hover,
.wp-pagenavi .last:active {
  text-decoration: none;
  color: var(--color-main);
}
.wp-pagenavi .first {
  padding-left: 24px;
}
.wp-pagenavi .first::before {
  content: "";
  display: block;
  width: 4px;
  height: 4px;
  border: 1px solid;
  border-color: transparent transparent var(--color-main) var(--color-main);
  -webkit-transform: rotate(45deg) translateY(-50%);
  transform: rotate(45deg) translateY(-50%);
  position: absolute;
  left: 0;
}
.wp-pagenavi .last {
  padding-right: 24px;
}
.wp-pagenavi .last::before {
  right: 0;
}

.single-navigation {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 30px -1.5% -1.5%;
}
@media screen and (min-width: 768px) {
  .single-navigation {
    margin: 60px -1.5% -1.5%;
  }
}
.single-navigation .btn {
  width: 200px;
  padding: 1.5%;
}
.single-navigation .btn a,
.single-navigation .btn span {
  font-weight: 400;
  position: relative;
  border-radius: 3px;
  overflow: hidden;
}
.single-navigation .btn a::before,
.single-navigation .btn span::before {
  content: "";
  display: block;
  background: #f39a86;
  background: linear-gradient(45deg, rgb(243, 154, 134) 4%, rgb(243, 154, 134) 50%, rgb(253, 189, 115) 100%);
  width: 200%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  z-index: -1;
}
.single-navigation .btn.-prev a,
.single-navigation .btn.-prev span {
  position: relative;
}
.single-navigation .btn.-prev a::after,
.single-navigation .btn.-prev span::after {
  content: "";
  width: 16px;
  height: 16px;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-image: url(../img/common/ic-arrow_ol.svg);
          mask-image: url(../img/common/ic-arrow_ol.svg);
  background-color: var(--color-white);
  -webkit-transform: translateY(-50%) rotate(180deg);
          transform: translateY(-50%) rotate(180deg);
  top: 50%;
  display: inline-block;
  position: absolute;
  left: 19px;
}
@media screen and (min-width: 768px) {
  .single-navigation .btn.-prev a::after,
  .single-navigation .btn.-prev span::after {
    left: 16px;
  }
}
@media screen and (min-width: 992px) {
  .single-navigation .btn.-prev a::after,
  .single-navigation .btn.-prev span::after {
    left: 10px;
  }
}
.single-navigation .btn.-next a,
.single-navigation .btn.-next span {
  position: relative;
}
.single-navigation .btn.-next a::after,
.single-navigation .btn.-next span::after {
  content: "";
  width: 16px;
  height: 16px;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-image: url(../img/common/ic-arrow_ol.svg);
          mask-image: url(../img/common/ic-arrow_ol.svg);
  background-color: var(--color-white);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  top: 50%;
  display: inline-block;
  position: absolute;
  right: 19px;
}
@media screen and (min-width: 768px) {
  .single-navigation .btn.-next a::after,
  .single-navigation .btn.-next span::after {
    right: 16px;
  }
}
@media screen and (min-width: 992px) {
  .single-navigation .btn.-next a::after,
  .single-navigation .btn.-next span::after {
    right: 10px;
  }
}
@media screen and (max-width: 767px) {
  .single-navigation .btn.-prev, .single-navigation .btn.-next {
    width: 50%;
  }
}
.single-navigation .btn.-back {
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
  position: relative;
  width: 100%;
}
.single-navigation .btn.-back::after {
  content: "";
  width: 16px;
  height: 16px;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-image: url(../img/common/ic-arrow_ol.svg);
          mask-image: url(../img/common/ic-arrow_ol.svg);
  background-color: var(--color-white);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  top: 50%;
  right: 25px;
  display: inline-block;
  position: absolute;
}
@media screen and (min-width: 768px) {
  .single-navigation .btn.-back {
    width: 400px;
  }
}
@media screen and (min-width: 992px) {
  .single-navigation .btn.-back {
    -webkit-box-ordinal-group: auto;
        -ms-flex-order: auto;
            order: auto;
  }
}
.single-navigation .btn > a,
.single-navigation .btn span {
  padding: 14px 20px;
  text-align: center;
  font-size: 14px;
  display: block;
  text-decoration: none;
}
@media screen and (min-width: 768px) {
  .single-navigation .btn > a,
  .single-navigation .btn span {
    font-size: 16px;
  }
}
.single-navigation .btn a {
  color: var(--color-white);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.single-navigation .btn a:hover::before {
  left: -100%;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.single-navigation .btn span {
  background-color: var(--color-pale-pink);
  color: var(--color-txt);
}
.single-navigation .btn span::after {
  background-color: var(--color-txt) !important;
}

.archive-wrap .main-column:not(.mt-0) {
  margin-top: -3%;
}
@media screen and (max-width:767px) {
  .archive-wrap .main-column {
    margin-top: 0;
  }
}
.archive-wrap .main-column .news-item {
  padding-left: 0;
}
.archive-wrap .main-column .news-item .link {
  display: grid;
  grid-template-columns: 1fr;
  padding-right: 0;
}
@media screen and (min-width: 768px) {
  .archive-wrap .main-column .news-item .link {
    grid-template-columns: 220px 1fr;
  }
  .archive-wrap .main-column .news-item .link .news-info {
    grid-template-columns: 90px 1fr;
  }
}
.archive-wrap .main-column .news-item .link::before {
  content: none;
}
.archive-wrap .main-column .news-item .link .ttl {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.archive-wrap .main-column .news-item .link:hover .ttl {
  color: var(--color-txt-pink);
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
.archive-wrap .main-column .news-item .ofi {
  aspect-ratio: 1/1;
}

.single-wrap .main-column .news-item .ttl {
  width: 100%;
}
.single-wrap .ttl {
  padding-bottom: 10px;
}
@media screen and (max-width:991px) {
  .single-wrap .ttl {
    padding-bottom: 20px;
  }
}
@media screen and (max-width:767px) {
  .single-wrap .ttl {
    padding-bottom: 10px;
  }
}
.single-wrap .imgbox {
  margin-top: 30px;
}
@media screen and (max-width:767px) {
  .single-wrap .imgbox {
    margin-top: 10px;
  }
}

.info-contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin: -2.5%;
  padding-top: 6px;
}
.info-contents .imgbox {
  width: 25%;
}
@media screen and (max-width:767px) {
  .info-contents .imgbox {
    width: 35%;
  }
}
.info-contents .eyecatch {
  position: relative;
  overflow: hidden;
  padding-top: 100%;
}
.info-contents .eyecatch .ofi {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  font-family: "object-fit: cover; object-position: center;";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.info-contents .txt.-with-img {
  width: 75%;
  width: 100%;
}
.info-contents .imgbox,
.info-contents .txt {
  padding: 2.5%;
}
.table.-main {
  width: 100%;
}
.table.-main .table-child + .table-child .table-row {
  border-top: 1px solid var(--color-white);
}
.table.-main .table-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.table.-main .table-ttl,
.table.-main .table-txt {
  display: block;
  width: 100%;
  padding: 15px 20px;
}
@media screen and (min-width: 768px) {
  .table.-main .table-ttl,
  .table.-main .table-txt {
    padding: 20px 34px 18px;
  }
}
.table.-main .table-ttl {
  background-color: var(--color-main);
  color: var(--color-white);
  font-weight: 400;
  font-size: 16px;
  line-height: 1.8;
  letter-spacing: 0.05em;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (min-width: 768px) {
  .table.-main .table-ttl {
    width: 180px;
  }
}
@media screen and (min-width: 992px) {
  .table.-main .table-ttl {
    width: 280px;
  }
}
.table.-main .table-txt {
  font-size: 16px;
  background-color: var(--color-pale-pink);
}
@media screen and (min-width: 768px) {
  .table.-main .table-txt {
    width: calc(100% - 180px);
  }
}
@media screen and (min-width: 992px) {
  .table.-main .table-txt {
    width: calc(100% - 280px);
  }
}

/* ここからモーダル */
.modal-btn {
  background-color: var(--color-white);
  color: var(--color-main);
  font-weight: 500;
  text-align: center;
  position: relative;
  border: 2px solid var(--color-main);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 60px;
  overflow: hidden;
  padding: 6px 5px 6px 7px;
  cursor: pointer;
}

.jobs-popup {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: -2.4%;
}
@media screen and (max-width: 767px) {
  .jobs-popup {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.jobs-popup .imgbox-outer,
.jobs-popup .txtbox {
  width: 100%;
  padding: 2.4%;
}
@media screen and (min-width: 768px) {
  .jobs-popup .imgbox-outer,
  .jobs-popup .txtbox {
    width: 50%;
  }
}
.jobs-popup .imgbox {
  position: relative;
  overflow: hidden;
  padding-top: 70%;
}
.jobs-popup .imgbox .ofi {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  font-family: "object-fit: cover; object-position: center;";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.jobs-popup .ttl {
  font-size: clamp(24px, 2.2693997072vw, 31px);
  font-weight: 500;
  letter-spacing: 0.05em;
  border-bottom: 2px solid var(--color-main);
  padding-bottom: 0.4em;
}
.jobs-popup .ttl + .txt-basic {
  padding-top: 10px;
}
@media screen and (max-width: 767px) {
  .jobs-popup .btn-inner {
    margin-right: auto;
    margin-left: auto;
  }
}

.modalArea {
  /* サイトによってここの数値は調整 */
  top: 0;
  left: 0;
  width: 100vw;
  height: 100%;
  -webkit-transition: 0.4s;
  transition: 0.4s;
  position: fixed;
  z-index: 10;
}
.modalArea:not(.-is-show) {
  visibility: hidden;
  /* displayではなくvisibility */
  opacity: 0;
}

.modalBg {
  width: 100vw;
  height: 100%;
  background-color: rgba(var(--color-rgb-blue), 0.8);
}

.modalWrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 80%;
  max-width: 900px;
  background-color: #fff;
  padding: 6%;
}
@media screen and (min-width: 768px) {
  .modalWrapper {
    overflow: auto;
    padding: 3%;
  }
}

.closeModal {
  position: absolute;
  cursor: pointer;
  top: -28px;
  right: -24px;
  width: 20px;
  height: 20px;
}
@media screen and (min-width: 768px) {
  .closeModal {
    top: 1.5rem;
    right: 1.5rem;
    width: 30px;
    height: 30px;
  }
}
.closeModal::before, .closeModal::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2px;
  height: 20px;
  background: var(--color-white);
}
@media screen and (min-width: 768px) {
  .closeModal::before, .closeModal::after {
    background: var(--color-txt);
    height: 30px;
  }
}
.closeModal::before {
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
}
.closeModal::after {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}

/* ここまでモーダル */
/* ここからアコーディオン */
.faq-q {
  font-size: clamp(16px, 1.317715959vw, 18px);
  letter-spacing: 0.05em;
  line-height: 1;
  color: var(--color-deep-pink);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  display: inline-block;
  padding-right: 0.5em;
}

details {
  overflow: hidden;
}

details[open] summary {
  /* background-color: var(--color-main);
  color: var(--color-white); */
}
details[open] .faq-q {
  color: var(--color-white);
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
details[open] .aco-icon::before, details[open] .aco-icon::after {
  background-color: var(--color-white);
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
details[open] .aco-icon::after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}

summary {
  /* display: list-item;以外を指定してデフォルトの三角形アイコンを消します */
  display: block;
}

summary::-webkit-details-marker {
  /* display: list-item;以外を指定してデフォルトの三角形アイコンを消します */
  display: none;
}

summary {
  letter-spacing: 0.05em;
  border-radius: 6px;
  background-color: var(--color-pale-orange);
  color: var(--color-txt);
  padding: 3% 6%;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media screen and (min-width: 768px) {
  summary {
    border-radius: 8px;
    padding: 0.8% 2.7%;
  }
}
summary:hover {
  background-color: var(--color-pale-pink);
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}

.summary-ttl {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1em;
  gap: 10px;
  font-weight: 400 !important;
  font-size: clamp(16px, 1.317715959vw, 18px);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  place-items: center left;
}
.summary-ttl h3 {
  font-weight: 400 !important;
}

.aco-icon {
  width: 0.875em;
  height: 0.875em;
  display: inline-block;
  position: relative;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}
.aco-icon::before, .aco-icon::after {
  content: "";
  position: absolute;
  background-color: var(--color-main);
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.aco-icon::before {
  width: 100%;
  height: 1px;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.aco-icon::after {
  height: 100%;
  width: 1px;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.aco-box {
  overflow: hidden;
  height: auto;
}

.aco-content p a {
  text-decoration: underline !important;
}

.faq-item .aco-box a {
  text-decoration: underline;
}

/* ここまでアコーディオン */
.tab-container {
  display: grid;
  gap: 0;
  width: 100%;
}

.tab-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 10px;
}
@media screen and (min-width: 768px) {
  .tab-list {
    gap: 15px;
  }
}

.tab-button {
  text-align: center;
  background: #EAD9D4;
  color: var(--color-white);
  border: none;
  cursor: pointer;
  font-weight: 400;
  font-size: 1rem;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  border-radius: 3px 3px 0 0;
  min-width: 140px;
  padding: 0.6rem 1.5rem;
}
@media screen and (max-width: 767px) {
  .tab-button {
    width: calc(50% - 5px);
  }
}
@media screen and (min-width: 768px) {
  .tab-button {
    padding: 1rem 1.5rem;
    min-width: 240px;
  }
}

.tab-button[aria-selected=true] {
  background: var(--color-main);
}

.tab-button[aria-selected=false]:hover {
  -webkit-filter: saturate(2);
          filter: saturate(2);
}

.tab-panel {
  background: var(--color-pale-pink);
  opacity: 0;
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
  display: none;
  padding: 9% 7%;
}
@media screen and (min-width: 768px) {
  .tab-panel {
    padding: 5% 6%;
  }
}

.tab-panel.active {
  display: block;
  opacity: 1;
}

.sub-tabs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 10px;
}
@media screen and (min-width: 768px) {
  .sub-tabs {
    gap: 15px;
  }
}

.sub-tab-button {
  border-radius: calc(infinity * 1px);
  font-size: 14px;
  letter-spacing: 0.1em;
  background-color: var(--color-white);
  border: 1px solid var(--color-txt);
  cursor: pointer;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  padding: 6px 20px;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .sub-tab-button {
    padding: 10px 30px;
  }
}
.sub-tab-button:hover {
  background-color: var(--color-pale-pink);
}

.sub-tab-button.active {
  background-color: var(--color-main);
  color: var(--color-white);
}

.sub-tab-content {
  display: none;
  opacity: 0;
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}

.menu-sub-tab {
  background-color: var(--color-white);
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(20px, 2.9282576867vw, 40px);
  padding: 9%;
}
@media screen and (min-width: 768px) {
  .menu-sub-tab {
    padding: 7% 9%;
  }
}

.ptit-ttl {
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-txt-pink);
  font-weight: 400;
}

.sub-tab-content.active {
  display: block;
  opacity: 1;
}

.worries-btns-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(../img/top/beauty-face.png);
  padding-bottom: 7%;
  padding-top: 3%;
}
@media screen and (min-width: 768px) {
  .worries-btns-block {
    max-width: 448px;
    margin: 0 auto;
  }
}

.worries-tab-btns {
  /* display: grid;
  grid-template-columns: 90px 1fr 90px; */
  /* 
  display: flex;
  flex-wrap: wrap; */
  width: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.worries-tab-btns:nth-child(2n) {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.worries-tab-btns .sub-tab-button {
  border-radius: 4px;
  padding: 5px;
  width: 100%;
  width: clamp(80px, 18.2529335072vw, 140px);
}
@media screen and (min-width: 768px) {
  .worries-tab-btns .sub-tab-button {
    width: 120px;
  }
}
.worries-tab-btns {
  /* .list-child {
    &:nth-child(2n - 1) {
      //grid-column: 1;
    }

    &:nth-child(2n) {
      //grid-column: 3;
      margin-left: auto;
      position: relative;
      display: flex;
      justify-content: flex-end;
      align-items: center;
    }
  } */
}

.menu-tab-list {
  display: grid;
  grid-template-columns: 1fr;
}
.menu-tab-list .list-col {
  padding: 0;
}
@media screen and (min-width: 992px) {
  .menu-tab-list .list-col:nth-child(2n) {
    border-top: 1px solid #F4F2F1;
  }
}
.menu-tab-list .list-col .link {
  padding: 14px 0;
  border-bottom: 1px solid #F4F2F1;
  color: var(--color-txt);
  font-size: 1rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
  position: relative;
  padding-right: 1.5em;
}
.menu-tab-list .list-col .link:hover {
  background-color: var(--color-pale-pink);
}
.menu-tab-list .list-col .link {
  /* &::before {
    content: '';
    width: 6px;
    height: 6px;
    border-radius: calc(infinity * 1px);
    background-color: var(--color-txt);
    position: absolute;
    left: 0;
    top: 24px;
  } */
}
.menu-tab-list .list-col .link::after {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  position: absolute;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  top: 50%;
  right: 0;
  -webkit-mask-image: url(../img/common/ic-arrow_ol.svg);
          mask-image: url(../img/common/ic-arrow_ol.svg);
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: var(--color-txt-pink);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.menu-tab-list .list-col .list-item:last-child {
  border-bottom: none;
}
@media screen and (min-width: 992px) {
  .menu-tab-list {
    grid-template-columns: 1fr 1fr;
  }
  .menu-tab-list:has(.-solo) {
    grid-template-columns: 1fr;
  }
  .menu-tab-list:has(.-solo) .list-col {
    padding-right: 0;
  }
  .menu-tab-list .list-col {
    padding-right: 10%;
    position: relative;
  }
  .menu-tab-list .list-col:nth-child(2n) {
    border-right: none;
    padding-right: 0;
    padding-left: 10%;
    border-top: none;
  }
  .menu-tab-list .list-col:nth-child(2n)::before {
    content: "";
    width: 1px;
    height: 100%;
    background-color: #F4F2F1;
    position: absolute;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    left: 0;
    top: 50%;
  }
}

.parallax-gradation {
  position: relative;
}
.parallax-gradation::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: -1px;
  left: 0;
  background: #ffffff;
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(255, 255, 255, 0)), to(rgb(255, 255, 255)));
  background: linear-gradient(0deg, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 100%);
  display: block;
}

.parallax-wrap {
  position: relative;
  padding-top: 33.3vh;
}
@media screen and (min-width: 768px) {
  .parallax-wrap {
    padding-top: 37vw;
  }
}

.parallax-clip {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: -1;
}

.parallax-img {
  position: absolute;
  /* fixed → absolute */
  top: 0;
  left: 0;
  width: 100%;
  height: 150%;
  /* 少し大きめにしてズレ防止 */
  background-size: cover;
  background-position: center;
  background-image: url(../img/top/parallax.jpg);
  will-change: transform;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.cases-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 15px;
}
@media screen and (min-width: 768px) {
  .cases-list {
    gap: 49px;
    grid-template-columns: 1fr 1fr 1fr;
  }
}

.case-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  container-type: inline-size;
}
.case-item .imgbox {
  aspect-ratio: 1/1;
}
.case-item .ttl {
  background-color: var(--color-white);
  font-size: clamp(16px, 1.4641288433vw, 20px);
  position: relative;
  letter-spacing: 0.1em;
  line-height: 1.6;
  padding: 10px 20px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.case-item .ttl::before {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  position: absolute;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  top: 50%;
  right: 20px;
  -webkit-mask-image: url(../img/common/ic-arrow_ol.svg);
          mask-image: url(../img/common/ic-arrow_ol.svg);
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: var(--color-txt);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.case-item:hover .ttl {
  background-color: var(--color-main);
  color: var(--color-white);
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
.case-item:hover .ttl::before {
  background-color: var(--color-white);
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}

.top-doctor-block {
  overflow: hidden;
}

.top-doctor-coontent {
  position: relative;
  display: grid;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  grid-template-columns: 1fr;
  gap: 30px;
}
@media screen and (min-width: 992px) {
  .top-doctor-coontent {
    grid-template-columns: 1.03fr 0.9fr;
    gap: 40px;
  }
}
.top-doctor-coontent .headline {
  font-size: clamp(22px, 1.9033674963vw, 26px);
  line-height: 1.8;
  margin-bottom: 10px;
}
@media screen and (min-width: 992px) {
  .top-doctor-coontent .headline {
    margin-bottom: 15px;
  }
}
.top-doctor-coontent .txtbox {
  width: 100%;
  container-type: inline-size;
}
.top-doctor-coontent .txtbox::before {
  content: "";
  background-image: url(../img/top/doctor-bg.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: 100cqi;
  height: 100cqi;
  display: block;
  position: absolute;
  bottom: 5%;
  right: -12%;
  z-index: -1;
  opacity: 0;
}
.top-doctor-coontent .txtbox.-is-active::before {
  -webkit-animation-name: fade-up;
          animation-name: fade-up;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
}
.top-doctor-coontent .imgbox {
  position: relative;
  width: 100%;
  height: 100%;
}
@media screen and (min-width:768px) and (max-width:990px) {
  .top-doctor-coontent .imgbox {
    width: 80%;
    margin: 0 auto;
  }
}

.sign {
  text-align: right;
  font-size: 22px;
  line-height: 1.8;
  letter-spacing: 0.1em;
  padding-top: 10px;
}
.sign .position {
  font-size: 14px;
  display: inline-block;
  padding-right: 1em;
}

.other-btns {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
}
@media screen and (min-width: 768px) {
  .other-btns {
    gap: 31px;
    grid-template-columns: 1fr 1fr;
  }
}

.other-btn {
  background: var(--color-main);
  background: -webkit-gradient(linear, left top, right top, from(rgb(243, 154, 134)), to(rgb(253, 189, 115)));
  background: linear-gradient(90deg, rgb(243, 154, 134) 0%, rgb(253, 189, 115) 100%);
  border-radius: 3px;
}
.other-btn .link {
  margin: 1px;
  position: relative;
  font-size: clamp(18px, 1.756954612vw, 24px);
  line-height: 1;
  letter-spacing: 0.1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 15px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  container-type: inline-block;
  padding: 28px 22px;
  background-color: var(--color-white);
  border-radius: 2px;
}
@media screen and (min-width: 768px) {
  .other-btn .link {
    padding: 42px 30px;
  }
}
.other-btn .link .ja {
  font-size: clamp(10px, 1.0248901903vw, 14px);
  margin-top: 4px;
}
@media screen and (min-width: 768px) {
  .other-btn .link .ja {
    margin-top: 2px;
  }
}
.other-btn .link::before {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  position: absolute;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  top: 50%;
  -webkit-mask-image: url(../img/common/ic-arrow_ol.svg);
          mask-image: url(../img/common/ic-arrow_ol.svg);
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: var(--color-txt);
  right: 20px;
}
@media screen and (min-width: 768px) {
  .other-btn .link::before {
    right: 30px;
  }
}
.other-btn .link:hover {
  background-color: rgba(255, 255, 255, 0.8);
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}

.top-column-block {
  grid-template-columns: 1fr;
  display: grid;
  gap: 2rem;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
.top-column-block .left-column {
  display: contents;
  /* left-columnの箱をレイアウト上なくす */
}
.top-column-block .main-ttl {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  /* 1番目 */
}
.top-column-block .news-list {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  /* 2番目 */
}
.top-column-block .btn.-main {
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
  /* 3番目 */
}
@media screen and (min-width: 992px) {
  .top-column-block {
    grid-template-columns: auto 1fr;
    /* 2カラムレイアウト */
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0 clamp(30px, 7.3206442167vw, 100px);
    /* カラム間の隙間 */
  }
  .top-column-block .left-column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    /* これで上下中央揃え */
    height: 100%;
  }
  .top-column-block .main-ttl {
    text-align: left;
  }
  .top-column-block .main-ttl .sub {
    text-align: left;
  }
}

.news-list:has(.news-item:hover) .news-item:not(:hover) .link {
  opacity: 0.3;
}

.news-item {
  padding: unset;
}
.news-item .link {
  display: grid;
  gap: 0.5em 1.5em;
  -webkit-border-after: dotted 1px var(--color-main);
          border-block-end: dotted 1px var(--color-main);
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  grid-template-columns: -webkit-max-content -webkit-max-content;
  grid-template-columns: max-content max-content;
  padding-block: 1lh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding-right: 24px;
}
@media screen and (min-width: 768px) {
  .news-item .link {
    padding-block: 1.5lh;
  }
}
.news-item .link::before {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  position: absolute;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  top: 50%;
  -webkit-mask-image: url(../img/common/ic-arrow_ol.svg);
          mask-image: url(../img/common/ic-arrow_ol.svg);
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: var(--color-txt);
  right: 0;
}
.news-item .time,
.news-item .cat {
  line-height: 1;
  letter-spacing: 0.1em;
}
.news-item .time {
  font-size: 14px;
}
.news-item .cat-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 5px;
}
.news-item .cat {
  background-color: var(--color-pale-pink);
  font-size: 12px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0;
  padding: 0.5em 1em;
}
.news-item .ttl {
  letter-spacing: 0.1em;
  line-height: 1.8;
  width: 100%;
}
@media screen and (min-width: 992px) {
  .news-item .ttl {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}

.news-info {
  display: grid;
  place-items: center start;
  grid-template-columns: 90px 1fr;
}
@media screen and (min-width: 768px) {
  .news-info {
    grid-template-columns: 100px 1fr;
  }
}

.gmap-box {
  display: grid;
  gap: clamp(20px, 3.6603221083vw, 50px);
  grid-template-columns: 1fr;
}
@media screen and (min-width: 768px) {
  .gmap-box {
    grid-template-columns: 0.83fr 1.17fr;
  }
}
.gmap-box .gmap {
  padding-top: 71%;
}
.gmap-box .btn {
  margin-top: 10px;
}
@media screen and (min-width: 768px) {
  .gmap-box .btn .btn-inner {
    width: 166px;
  }
}

.normal-list > .list-child {
  position: relative;
  padding-left: 1em;
  line-height: 1.8;
}
.normal-list > .list-child::before {
  content: "";
  width: 0.25em;
  height: 0.25em;
  border-radius: calc(infinity * 1px);
  background-color: var(--color-txt);
  position: absolute;
  left: 0;
  top: 0.8em;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.transportation-list > .list-child + .list-child {
  padding-top: 35px;
}
@media screen and (min-width: 768px) {
  .transportation-list > .list-child + .list-child {
    padding-top: 50px;
  }
}
.transportation-list .transportation-ttl {
  display: grid;
  grid-template-columns: clamp(40px, 3.6603221083vw, 50px) 1fr;
  gap: 10px;
  place-items: center left;
  letter-spacing: 0.1em;
  line-height: 1.8;
  font-size: 18px;
  margin-bottom: 5px;
}
@media screen and (min-width: 768px) {
  .transportation-list .transportation-ttl {
    margin-bottom: 10px;
  }
}
.transportation-list .transportation-ttl .ic {
  background-color: var(--color-pale-pink);
  border-radius: calc(infinity * 1px);
  overflow: hidden;
}

.detail-contents {
  display: grid;
  gap: clamp(24px, 3.6603221083vw, 50px);
  grid-template-columns: 1fr;
}
@media screen and (min-width: 768px) {
  .detail-contents {
    grid-template-columns: 1fr 1fr;
  }
}

.detail-content .detail-ttl {
  font-size: 16px;
  border-bottom: 1px solid var(--color-main);
  padding-bottom: 10px;
  margin-bottom: 10px;
  font-weight: 400;
}

.definition-list + .definition-list {
  padding-top: 10px;
}
.definition-list .ttl {
  color: var(--color-txt-pink);
}

.clinic-hours-contents {
  display: grid;
  gap: clamp(20px, 3.6603221083vw, 50px);
  grid-template-columns: 1fr;
}
@media screen and (min-width: 768px) {
  .clinic-hours-contents {
    grid-template-columns: 0.925fr 1.075fr;
  }
}
.clinic-hours-contents .clinic-hours {
  padding: 0;
}
.clinic-hours-contents .attention-list > .list-child {
  font-size: 16px;
  line-height: 1.8;
  letter-spacing: 0.05em;
}

.-gradation-up-bg {
  position: relative;
}
.-gradation-up-bg::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 75px;
  background: #FBF4F2;
  background: -webkit-gradient(linear, left bottom, left top, from(rgb(251, 244, 242)), to(rgb(255, 255, 255)));
  background: linear-gradient(0deg, rgb(251, 244, 242) 0%, rgb(255, 255, 255) 100%);
}
@media screen and (min-width: 768px) {
  .-gradation-up-bg::before {
    height: 80px;
  }
}
@media screen and (min-width: 992px) {
  .-gradation-up-bg::before {
    height: 120px;
  }
}

.doctor-list > .list-child {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
}
@media screen and (min-width: 768px) {
  .doctor-list > .list-child {
    gap: clamp(20px, 3.6603221083vw, 50px) clamp(20px, 2.9282576867vw, 40px);
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: 1fr auto;
  }
}
.doctor-list > .list-child + .list-child {
  margin-top: clamp(60px, 7.3206442167vw, 100px);
}
@media screen and (max-width: 767px) {
  .doctor-list .txtbox {
    display: contents;
  }
}
@media screen and (min-width: 768px) {
  .doctor-list .txtbox {
    grid-area: 1/1/2/2;
  }
}
.doctor-list .txtbox .name {
  letter-spacing: 0.1em;
  line-height: 1.6;
  font-size: clamp(24px, 2.4890190337vw, 34px);
}
@media screen and (max-width: 767px) {
  .doctor-list .txtbox .name {
    -webkit-box-ordinal-group: -2;
        -ms-flex-order: -3;
            order: -3;
  }
}
.doctor-list .txtbox .title {
  font-size: 14px;
  color: var(--color-gray);
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .doctor-list .txtbox .title {
    -webkit-box-ordinal-group: -1;
        -ms-flex-order: -2;
            order: -2;
  }
  .doctor-list .txtbox .title + .doctor-item {
    margin-top: 20px;
  }
}
@media screen and (max-width: 767px) {
  .doctor-list .imgbox {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
    margin-top: 15px;
  }
}
@media screen and (min-width: 768px) {
  .doctor-list .imgbox {
    grid-area: 1/2/2/3;
  }
}
@media screen and (max-width: 767px) {
  .doctor-list .aco-ttl {
    margin-top: 15px;
  }
}
@media screen and (min-width: 768px) {
  .doctor-list .aco-ttl {
    grid-area: 2/1/3/3;
  }
}
.doctor-list .doctor-item {
  margin-top: 15px;
}
@media screen and (min-width: 768px) {
  .doctor-list .doctor-item {
    margin-top: 30px;
  }
}
@media screen and (min-width: 768px) {
  .doctor-list summary {
    padding: 1.8% 2.7%;
  }
}
@media screen and (min-width: 768px) {
  .doctor-list .aco-label {
    font-size: clamp(16px, 1.4641288433vw, 20px);
  }
}

.doctor-item .regular-ttl + .txt-basic {
  padding-top: 5px;
}

.three-column-block {
  display: grid;
  gap: clamp(50px, 4.39238653vw, 60px);
  grid-template-columns: 1fr;
  place-items: start center;
}
@media screen and (min-width: 768px) {
  .three-column-block {
    grid-template-columns: repeat(3, 1fr);
  }
}

.promise-box {
  display: grid;
  grid-template-columns: 1fr;
  place-items: start center;
  gap: clamp(16px, 1.4641288433vw, 20px);
}
.promise-box .imgbox {
  width: clamp(60%, 16.1054172767vw, 220px);
  aspect-ratio: 1/1;
}
.promise-box .headline {
  font-size: clamp(18px, 1.4641288433vw, 20px);
}
.promise-box .headline + .txt-basic {
  margin-top: 6px;
}

.flow-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(40px, 4.831625183vw, 66px);
  max-width: 700px;
  margin: 0 auto;
}

.flow-item {
  display: grid;
  grid-template-columns: auto;
  gap: 15px;
}
.flow-item .flow-ttl {
  display: grid;
  grid-template-columns: auto 1fr;
  letter-spacing: 0.1em;
  font-size: 20px;
  gap: 16px;
  line-height: 1.6;
  font-size: clamp(20px, 1.9033674963vw, 26px);
  gap: clamp(16px, 1.4641288433vw, 20px);
}
.flow-item .flow-ttl .ttl {
  margin-top: 7px;
}
.flow-item .num-box {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 5px;
  font-family: "Dela Gothic One", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0;
  color: var(--color-main);
  place-items: center;
  font-size: 40px;
  line-height: 40px;
  font-size: clamp(40px, 3.6603221083vw, 50px);
  line-height: 1;
  /*  @include tab {
    font-size: 50px;
    line-height: 50px;
  } */
}
.flow-item .step {
  border-top: 1px solid rgba(235, 152, 134, 0.5);
  border-bottom: 1px solid rgba(235, 152, 134, 0.5);
  letter-spacing: 0.07em;
  font-size: clamp(14px, 1.1713030747vw, 16px);
  line-height: 1;
  line-height: 16px;
  padding: clamp(4px, 0.439238653vw, 6px) 0 clamp(2px, 0.5124450952vw, 3px);
  margin-top: clamp(7px, 0.7320644217vw, 10px);
  /*  font-size: 14px;
  line-height: 14px;
  padding: 4px 0 3px;
  margin-top: 7px;

  @include tab {
    font-size: 16px;
    line-height: 16px;
    padding: 6px 0;
    margin-top: 10px;
  } */
}
.flow-item .add-txtbox {
  background-color: var(--color-white);
  padding: 7% 8%;
}
@media screen and (min-width: 768px) {
  .flow-item .add-txtbox {
    padding: 4% 6%;
  }
}
.flow-item .flow-add-ttl {
  font-size: 16px;
  line-height: 1.6;
  letter-spacing: 0.1em;
}
.flow-item .flow-add-ttl + .flow-add-txt {
  margin-top: 10px;
}
.flow-item .flow-add-txt {
  font-size: 14px;
  line-height: 1.8;
  letter-spacing: 0.1em;
}

.icon-content {
  display: grid;
  grid-template-columns: 1fr;
  place-items: center;
  gap: clamp(20px, 2.196193265vw, 30px);
  padding: 10%;
}
@media screen and (min-width: 768px) {
  .icon-content {
    grid-template-columns: clamp(20%, 11.7130307467vw, 160px) 1fr;
    padding: 4% 6%;
  }
}
.icon-content .imgbox {
  aspect-ratio: 1/1;
}
@media screen and (max-width: 767px) {
  .icon-content .imgbox {
    max-width: 80%;
    margin: 0 auto;
  }
}
.icon-content .attention {
  margin-top: 10px;
}

.attention {
  font-size: 12px;
  display: inline-block;
}

.circle-shape {
  overflow: hidden;
  border-radius: calc(infinity * 1px);
}

.payment-list .imgbox {
  border: 1px solid var(--color-beige);
  padding: 1% 5%;
}
@media screen and (min-width: 768px) {
  .payment-list .imgbox {
    padding: 3% 5%;
  }
}
.payment-list .ofi {
  height: clamp(50px, 5.8565153734vw, 80px);
  max-width: 100%;
  -o-object-position: left center;
     object-position: left center;
}

.faq-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(15px, 1.317715959vw, 18px);
}

.normal-box {
  padding: 7% 9%;
}
@media screen and (min-width: 768px) {
  .normal-box {
    padding: 3% 4%;
  }
}

rt {
  padding-bottom: 0.5em;
}

.ttl-underline {
  font-size: clamp(22px, 2.196193265vw, 30px);
  border-bottom: 1px solid var(--color-main);
  padding-bottom: 0.3em;
  letter-spacing: 0.1em;
  line-height: 1.4;
  font-weight: 400;
}

.ttl-dot {
  font-size: clamp(20px, 1.9033674963vw, 26px);
  letter-spacing: 0.1em;
  line-height: 1.4;
  font-weight: 400;
  position: relative;
  padding-left: 1em;
}
.ttl-dot::before {
  content: "";
  display: inline-block;
  width: 0.4em;
  height: 0.4em;
  border-radius: 0.5em;
  overflow: hidden;
  background-color: var(--color-main);
  position: absolute;
  left: 0;
  top: clamp(10px, 1.0248901903vw, 14px);
}

.price-content .ttl-dot {
  margin-top: 50px;
}

.price-box > .list-child + .list-child {
  border-top: 1px solid var(--color-pale);
}

@media screen and (min-width: 768px) {
  .price-item {
    gap: 15px;
    display: grid;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    grid-template-columns: auto 40%;
  }
}
@media screen and (min-width: 992px) {
  .price-item {
    grid-template-columns: auto 30%;
  }
}
.price-item .price-ttl {
  color: var(--color-txt-pink);
  line-height: 1.6;
  letter-spacing: 0.05em;
  font-weight: 400;
  padding: 20px 0 0;
  font-size: 18px;
}
@media screen and (min-width: 768px) {
  .price-item .price-ttl {
    padding: 23px 0 18px;
  }
}

.price-set {
  padding: 0 0 18px;
}
@media screen and (min-width: 768px) {
  .price-set {
    padding: 17px 0 18px;
  }
}

.second-column {
  padding: 2px 0;
}
@media screen and (max-width: 767px) {
  .second-column {
    grid-template-columns: 1fr -webkit-max-content;
    grid-template-columns: 1fr max-content;
  }
}
.second-column {
  display: grid;
  grid-template-columns: 60% auto;
}

@media screen and (min-width: 768px) {
  .price.txt-basic {
    text-align: right;
  }
}

.fz12 {
  font-size: 12px;
}

.side-following-content {
  overflow: hidden;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  border-radius: 5px;
  background-color: var(--color-pale-pink);
}
@media screen and (max-width: 767px) {
  .side-following-content {
    margin-top: 30px !important;
  }
}
@media screen and (min-width: 992px) {
  .side-following-content {
    border-radius: 20px;
    padding: 26px 30px;
    -webkit-box-shadow: 4px 4px 14px rgba(175, 103, 86, 0.2);
            box-shadow: 4px 4px 14px rgba(175, 103, 86, 0.2);
    position: sticky;
    top: 90px;
    background-color: var(--color-white);
  }
}
.side-following-content .toc-dropdown {
  display: none;
  position: relative;
}
.side-following-content .toc-dropdown::after {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  position: absolute;
  -webkit-transform: translateY(-50%) rotate(90deg);
          transform: translateY(-50%) rotate(90deg);
  top: 50%;
  right: 20px;
  -webkit-mask-image: url(../img/common/ic-arrow_ol.svg);
          mask-image: url(../img/common/ic-arrow_ol.svg);
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: var(--color-txt-pink);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.side-following-content select {
  border: none;
  background-color: transparent;
  width: 100%;
  height: auto;
  padding: 16px 18px;
}
@media screen and (max-width:991px) {
  .side-following-content {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
  }
}
.side-following-content .side-following-list {
  display: none;
}
@media screen and (min-width: 992px) {
  .side-following-content .side-following-list {
    display: block;
  }
}
.side-following-content .toc-dropdown {
  display: block;
}
@media screen and (min-width: 992px) {
  .side-following-content .toc-dropdown {
    display: none;
  }
}
.side-following-content {
  /* アクセシビリティ用の隠しラベル */
}
.side-following-content .sr-only {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.side-following-list .link {
  font-size: 14px;
  padding: 5px;
  padding-left: 14px;
  position: relative;
  letter-spacing: 0.1em;
  line-height: 1.4;
}
.side-following-list .link::before {
  content: "";
  display: inline-block;
  background-color: #FAE8E3;
  width: 8px;
  height: 8px;
  border-radius: 8px;
  overflow: hidden;
  position: absolute;
  left: 0;
  top: 11px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.side-following-list .link:hover::before {
  background-color: var(--color-main);
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}

.menu-contents .main-headline {
  margin: 0;
  font-size: clamp(26px, 2.7818448023vw, 38px);
  letter-spacing: 0.1em;
  line-height: 1.6;
}
.menu-contents .flow-item .add-txtbox {
  background-color: var(--color-pale-pink);
}
.menu-contents .cases-list {
  gap: 16px;
}
.menu-contents .case-item .ttl {
  background-color: var(--color-pale);
  padding: 10px 30px 10px 14px;
  font-size: 16px;
}
.menu-contents .case-item .ttl::before {
  right: 14px;
}
.menu-contents .case-item:hover .ttl {
  background-color: var(--color-main);
}

.menu-content {
  padding-top: 60px;
  margin-top: 0 !important;
}
@media screen and (min-width: 768px) {
  .menu-content {
    padding-top: 100px;
  }
}

.menu-cat-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 15px;
}
.menu-cat-list .cat {
  border-radius: 50px;
  overflow: hidden;
  border: 1px solid var(--color-txt-pink);
  color: var(--color-txt-pink);
  font-size: 14px;
  line-height: 1.6;
  letter-spacing: 0.05em;
  padding: 3px 16px 4px;
}
.menu-cat-list .cat:hover {
  background-color: var(--color-main);
  color: var(--color-white);
}

.check-list > .list-child {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  cursor: pointer;
  padding-left: 30px;
  font-size: 18px;
  letter-spacing: 0.05em;
  line-height: 1.6;
}
.check-list > .list-child + .list-child {
  margin-top: 15px;
}
.check-list > .list-child::before, .check-list > .list-child::after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  top: 15px;
}
.check-list > .list-child::before {
  background-color: var(--color-main);
  border-radius: 1px;
  width: 16px;
  height: 16px;
  left: 0;
}
.check-list > .list-child::after {
  border-right: 2px solid var(--color-white);
  border-bottom: 2px solid var(--color-white);
  height: 10px;
  left: 6px;
  margin-top: -6px;
  position: absolute;
  top: 15px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  width: 5px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.imgbox-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.5rem;
}
@media screen and (min-width: 768px) {
  .imgbox-list {
    gap: 3rem;
    grid-template-columns: 1fr 1fr;
  }
}
.imgbox-list .imgbox {
  position: relative;
  overflow: hidden;
  padding-top: 65.7142857143%;
}
.imgbox-list .imgbox .ofi {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  font-family: "object-fit: cover; object-position: center;";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.imgbox-list .txt-basic {
  margin-top: 20px;
}
.imgbox-list .imgbox-ttl {
  color: var(--color-txt-pink);
  line-height: 1.6;
  letter-spacing: 0.01em;
  font-size: clamp(18px, 1.4641288433vw, 20px);
  margin-top: 20px;
}
.imgbox-list .txt-basic {
  margin-top: 10px;
}

.overview-list > .list-child {
  margin-top: 15px;
}
.overview-list .overview-list-ttl {
  color: var(--color-txt-pink);
  font-size: 18px;
  letter-spacing: 0.05em;
  line-height: 1.6;
  font-weight: 400;
}

.about-concept-block .main-ttl {
  font-size: clamp(36px, 3.2210834553vw, 44px);
  position: relative;
  line-height: 1.4;
  font-family: "Dela Gothic One", sans-serif;
  font-weight: 400;
  font-style: normal;
}
.about-concept-block .main-ttl .sub {
  font-size: clamp(14px, 1.1713030747vw, 16px);
  margin-top: 10px;
}
@media screen and (min-width: 768px) {
  .about-concept-block .main-ttl .sub {
    margin-top: 15px;
  }
}
.about-concept-block .main-ttl::before {
  content: "";
  position: absolute;
  display: block;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  background-image: url(../img/about/huwa.png);
  opacity: 0.3;
  -webkit-transform: translateX(-50%) translateY(-50%);
          transform: translateX(-50%) translateY(-50%);
  left: 50%;
  top: 50%;
  z-index: -1;
  width: 100vw;
  height: 100vw;
}
@media screen and (min-width: 768px) {
  .about-concept-block .main-ttl::before {
    width: 50vw;
    height: 50vw;
  }
}

.about-concept-box + .about-concept-box {
  margin-top: 50px;
}
@media screen and (min-width: 992px) {
  .about-concept-box + .about-concept-box {
    margin-top: 120px;
  }
}
.about-concept-box .imgbox {
  opacity: 0;
}
.about-concept-box.-is-active .imgboxs::before {
  -webkit-animation-name: fade-up-4;
          animation-name: fade-up-4;
  -webkit-animation-duration: 2s;
          animation-duration: 2s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-delay: 2s;
          animation-delay: 2s;
}
.about-concept-box.-is-active .imgbox {
  -webkit-animation-name: fade-up;
          animation-name: fade-up;
  -webkit-animation-duration: 2s;
          animation-duration: 2s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-delay: 1s;
          animation-delay: 1s;
}
.about-concept-box.-is-active .-img-03 {
  -webkit-animation-delay: 1.5s;
          animation-delay: 1.5s;
}
.about-concept-box:not(.-solo) {
  position: relative;
  display: grid;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  grid-template-columns: 1fr;
  gap: 50px;
}
@media screen and (min-width: 992px) {
  .about-concept-box:not(.-solo) {
    grid-template-columns: 1.03fr 0.9fr;
    gap: 76px;
  }
}
.about-concept-box .imgboxs {
  position: relative;
}
.about-concept-box .imgboxs::before {
  content: "";
  position: absolute;
  display: block;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  background-image: url(../img/about/huwa.png);
  opacity: 0;
  -webkit-transform: translateX(-50%) translateY(-50%);
          transform: translateX(-50%) translateY(-50%);
  left: 50%;
  top: 50%;
  z-index: -1;
  width: 100vw;
  height: 100vw;
}
@media screen and (min-width: 992px) {
  .about-concept-box .imgboxs::before {
    width: 50vw;
    height: 50vw;
  }
}
.about-concept-box .headline {
  font-size: clamp(24px, 2.196193265vw, 30px);
  line-height: 1.6;
}
@media screen and (min-width: 992px) {
  .about-concept-box .headline {
    margin-bottom: 10px;
  }
}
.about-concept-box.-concept-box-01 {
  margin-top: 100px;
}
@media screen and (min-width: 992px) {
  .about-concept-box.-concept-box-01 {
    margin-top: 147px;
  }
}
.about-concept-box.-concept-box-01 .imgboxs::before {
  left: 12%;
  top: 68%;
}
.about-concept-box.-concept-box-02 .imgboxs {
  height: clamp(80%, 28vw, 382px);
  container-type: inline-size;
  padding-bottom: 3%;
}
@media screen and (min-width: 992px) {
  .about-concept-box.-concept-box-02 .imgboxs {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    padding-bottom: 0;
  }
}
.about-concept-box.-concept-box-02 .imgboxs::before {
  left: 85%;
  top: 90%;
}
@media screen and (min-width: 992px) {
  .about-concept-box.-concept-box-02 .imgboxs::before {
    left: 65%;
    top: 60%;
  }
}
.about-concept-box.-concept-box-02 .imgbox {
  position: relative;
}
@media screen and (min-width: 992px) {
  .about-concept-box.-concept-box-02 .imgbox {
    position: absolute;
  }
}
.about-concept-box.-concept-box-02 .-img-02 {
  width: 92cqi;
  aspect-ratio: 414/300;
  top: 0;
  left: 0;
}
.about-concept-box.-concept-box-02 .-img-03 {
  width: 46.8cqi;
  aspect-ratio: 1/1;
  margin-top: -33%;
  margin-left: auto;
}
@media screen and (min-width: 992px) {
  .about-concept-box.-concept-box-02 .-img-03 {
    margin: 0;
    bottom: 0;
    right: -2vw;
  }
}
@media screen and (min-width: 992px) {
  .about-concept-box.-concept-box-03 .txtbox {
    text-align: center;
  }
}

.belief-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.belief-list .num {
  color: var(--color-main);
  font-size: clamp(24px, 2.4890190337vw, 34px);
  width: clamp(50px, 4.39238653vw, 60px);
  height: clamp(50px, 4.39238653vw, 60px);
  background-color: var(--color-white);
  border-radius: calc(infinity * 1px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  line-height: 1;
  position: relative;
  margin: 0 auto;
}
.belief-list .num::after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transform: translateX(-50%) translateY(100%);
          transform: translateX(-50%) translateY(100%);
  left: 50%;
  bottom: 0;
  background-color: var(--color-white);
  width: 9px;
  height: 7px;
  clip-path: polygon(0 0, 100% 0%, 50% 100%);
}
.belief-list .belief-ttl {
  position: relative;
  padding-bottom: 10px;
  font-size: clamp(22px, 1.9033674963vw, 26px);
  margin-top: 15px;
  line-height: 1.6;
}
.belief-list .belief-ttl::after {
  content: "";
  width: 100%;
  height: 1px;
  background: -webkit-gradient(linear, left top, right top, from(rgb(243, 154, 134)), to(rgb(253, 189, 115)));
  background: linear-gradient(90deg, rgb(243, 154, 134) 0%, rgb(253, 189, 115) 100%);
  display: inline-block;
  position: absolute;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  left: 50%;
  bottom: 0;
}

.banner-section__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem 1.5rem;
}
@media screen and (min-width:768px) {
  .banner-section__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (min-width:992px) {
  .banner-section__grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
.banner-section__link {
  border-radius: 15px;
  overflow: hidden;
  position: relative;
}
@media screen and (max-width:767px) {
  .banner-section__link {
    aspect-ratio: 7/3;
  }
}
.banner-section__link::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.2)), to(rgba(0, 0, 0, 0.7)));
  background-image: linear-gradient(180deg, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.7));
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  opacity: 1;
}
.banner-section__link::after {
  content: "";
  position: absolute;
  inset: 0;
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 159, 208, 0.2)), to(rgba(0, 159, 208, 0.7)));
  background-image: linear-gradient(180deg, rgba(0, 159, 208, 0.2), rgba(0, 159, 208, 0.7));
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  opacity: 0;
}
.banner-section__link .img {
  width: 100%;
  height: auto;
}
@media screen and (max-width:767px) {
  .banner-section__link .img img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    z-index: -1;
  }
}
.banner-section__link .txt {
  position: absolute;
  bottom: 3rem;
  left: 3rem;
  width: calc(100% - 6rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 2rem;
  z-index: 1;
}
@media screen and (max-width:767px) {
  .banner-section__link .txt {
    bottom: 2.5rem;
    left: 2.5rem;
  }
}
.banner-section__link .txt span {
  line-height: 1;
}
.banner-section__link .circle {
  width: 2.3rem;
  aspect-ratio: 1;
  border-radius: 50%;
  position: relative;
  border: solid 7px #fff;
}
.banner-section__link:hover::before {
  opacity: 0;
}
.banner-section__link:hover::after {
  opacity: 1;
}/*# sourceMappingURL=style.css.map */