html {
  font-size: 0.7320644217vw;
}

body {
  color: #111;
  display: block !important;
  font-family: "Noto Sans JP", sans-serif;
  font-feature-settings: "palt";
  font-size: clamp(12.25px, 1.4rem, 14px);
  letter-spacing: 0.1em;
  text-align: justify;
  word-break: break-all;
}

.wrap {
  overflow: hidden;
}

.header {
  position: fixed;
  transition-duration: 0.3s;
  width: 100%;
  z-index: 2;
}
.header > .inner {
  padding-left: clamp(12px, 2.4rem, 24px);
  padding-right: clamp(12px, 2.4rem, 24px);
}
.header > .inner > .inner02 {
  align-items: center;
  justify-content: space-between;
  padding-bottom: clamp(12px, 1.6rem, 16px);
  padding-top: clamp(12px, 1.6rem, 16px);
}
.header > .inner > .inner02 > .h-unit > .g-navi {
  margin-right: clamp(30px, 4rem, 40px);
}
.header.is-active {
  background-color: rgba(255, 255, 255, 0.95);
}

.mainvisual {
  background: url(../img/top/main.jpg) no-repeat center center/cover;
  padding-top: clamp(61.5px, 8.2rem, 82px);
}
.mainvisual > .inner {
  padding-left: clamp(12px, 2.4rem, 24px);
  padding-right: clamp(12px, 2.4rem, 24px);
}
.mainvisual > .inner > .inner02 {
  height: calc(100vh - 82px);
  position: relative;
}
.mainvisual > .inner > .inner02 > .box-A {
  bottom: clamp(30px, 4rem, 40px);
  left: 0;
  position: absolute;
}
.mainvisual > .inner > .inner02 > .box-A > .tit-A {
  margin-bottom: clamp(15px, 2rem, 20px);
}

.localmainvisual {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  margin-top: clamp(61.5px, 8.2rem, 82px);
}
.localmainvisual > .inner > .inner02 {
  height: clamp(300px, 40rem, 400px);
  margin-left: auto;
  margin-right: auto;
  position: relative;
  max-width: 1080px;
}
.localmainvisual > .inner > .inner02 > .head-A {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.localmainvisual.localmainvisual2 {
  color: #FFF;
}

.company .localmainvisual {
  background-image: url(../img/company/main.jpg);
}

.service .localmainvisual {
  background-image: url(../img/service/main.jpg);
}

.cases .localmainvisual {
  background-image: url(../img/cases/main.jpg);
}

.section > .inner {
  padding-left: clamp(12px, 2.4rem, 24px);
  padding-right: clamp(12px, 2.4rem, 24px);
}
.section > .inner > .inner02 {
  margin-left: auto;
  margin-right: auto;
  max-width: 1080px;
}

.topics-section > .inner > .inner02 {
  padding-bottom: clamp(60px, 8rem, 80px);
  padding-top: clamp(60px, 8rem, 80px);
}

.case .topics-section, .news .topics-section, .new .topics-section, .contact .topics-section, .privacy .topics-section {
  margin-top: clamp(61.5px, 8.2rem, 82px);
}

.contact-section > .inner {
  padding-bottom: clamp(120px, 16rem, 160px);
}
.contact-section > .inner > .inner02 {
  background-image: url(../img/common/back.jpg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  color: #FFF;
  height: clamp(285px, 38rem, 380px);
  position: relative;
  max-width: 1080px;
}
.contact-section > .inner > .inner02 > a {
  padding-bottom: clamp(12px, 6rem, 60px);
  padding-left: clamp(12px, 6rem, 60px);
  padding-right: clamp(12px, 6rem, 60px);
  padding-top: clamp(12px, 6rem, 60px);
}

.home-about-section > .inner {
  padding-bottom: clamp(100px, 20rem, 200px);
  padding-top: clamp(75px, 10rem, 100px);
}
@media screen and (min-width: 768px) {
  .home-about-section > .inner > .inner02 {
    background: url(../img/top/img01.jpeg) no-repeat right top;
    background-size: clamp(525px, 70rem, 700px);
  }
}
.home-about-section > .inner > .inner02 > .head-A {
  margin-bottom: clamp(30px, 4rem, 40px);
}
.home-about-section > .inner > .inner02 > .section-head > .txt {
  margin-bottom: clamp(60px, 8rem, 80px);
  max-width: 520px;
}
.home-about-section > .inner > .inner02 > .section-head > .btn-A {
  margin-bottom: clamp(75px, 10rem, 100px);
}

.home-service-section {
  overflow: hidden;
}
.home-service-section > .inner > .inner02 {
  padding-bottom: clamp(82.5px, 15rem, 150px);
  padding-top: clamp(82.5px, 15rem, 150px);
}

@media screen and (min-width: 768px) {
  .home-cases-section {
    background: url(../img/top/img02.jpg) no-repeat center bottom/100%;
  }
}
.home-cases-section > .inner > .inner02 {
  padding-bottom: clamp(75px, 15rem, 150px);
  padding-top: clamp(90px, 12rem, 120px);
}
.home-cases-section > .inner > .inner02 > .inner03 > .head-A {
  margin-bottom: clamp(37.5px, 5rem, 50px);
}
.home-cases-section > .inner > .inner02 > .inner03:nth-of-type(1) {
  margin-bottom: clamp(15px, 2rem, 20px);
}
@media screen and (min-width: 768px) {
  .home-cases-section > .inner > .inner02 > .inner03:nth-of-type(1) {
    margin-right: calc(50% - 50vw);
  }
}
.home-cases-section > .inner > .inner02 > .inner03:nth-of-type(2) {
  display: none;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}
@media screen and (min-width: 768px) {
  .home-cases-section > .inner > .inner02 > .inner03:nth-of-type(2) {
    display: block;
  }
}
.home-cases-section > .inner > .inner02 > .inner03:nth-of-type(2) > .list-D {
  margin-left: clamp(15px, 2rem, 20px);
}
.home-cases-section > .inner > .inner02 > .inner03 > .box-I {
  width: 100%;
}

.home-news-section > .inner > .inner02 {
  align-items: flex-start;
  padding-bottom: clamp(150px, 20rem, 200px);
  padding-top: clamp(90px, 12rem, 120px);
}
.home-news-section > .inner > .inner02 > .inner03:nth-of-type(1) {
  margin-bottom: clamp(37.5px, 5rem, 50px);
  width: 100%;
}
@media screen and (min-width: 768px) {
  .home-news-section > .inner > .inner02 > .inner03:nth-of-type(1) {
    margin-bottom: 0;
    width: clamp(285px, 38rem, 380px);
  }
}
.home-news-section > .inner > .inner02 > .inner03:nth-of-type(2) {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .home-news-section > .inner > .inner02 > .inner03:nth-of-type(2) {
    width: calc(100% - clamp(285px, 38rem, 380px));
  }
}
.home-news-section > .inner > .inner02 > .inner03 > .head-A {
  margin-bottom: clamp(60px, 8rem, 80px);
}

.company-greeting-section > .inner > .inner02 {
  padding-bottom: clamp(100px, 20rem, 200px);
}
.company-greeting-section > .inner > .inner02 > .box-E {
  margin-bottom: clamp(75px, 10rem, 100px);
}

.company-outline-section > .inner > .inner02 {
  padding-bottom: clamp(150px, 20rem, 200px);
}
.company-outline-section > .inner > .inner02 > .box-D {
  margin-bottom: clamp(75px, 10rem, 100px);
}
.company-outline-section > .inner > .inner02 > .map-A {
  margin-bottom: clamp(75px, 10rem, 100px);
}

.service-about-section > .inner > .inner02 {
  padding-bottom: clamp(105px, 14rem, 140px);
}

.service-cando-section > .inner > .inner02 {
  padding-bottom: clamp(105px, 14rem, 140px);
}
.service-cando-section > .inner > .inner02 > .head-A {
  margin-bottom: clamp(37.5px, 5rem, 50px);
}
.service-cando-section > .inner > .inner02 > .btn-A {
  margin-left: auto;
  margin-right: auto;
}

.service-case-section > .inner > .inner02 {
  padding-bottom: clamp(135px, 18rem, 180px);
  padding-top: clamp(45px, 6rem, 60px);
}
.service-case-section > .inner > .inner02 > .head-A {
  margin-bottom: clamp(37.5px, 5rem, 50px);
}

.service-flow-section > .inner > .inner02 {
  padding-bottom: clamp(150px, 20rem, 200px);
  padding-top: clamp(105px, 14rem, 140px);
}
.service-flow-section > .inner > .inner02 > .head-A {
  margin-bottom: clamp(75px, 10rem, 100px);
}

.service-strengths-section > .inner > .inner02 {
  padding-bottom: clamp(150px, 20rem, 200px);
  padding-top: clamp(105px, 14rem, 140px);
}
.service-strengths-section > .inner > .inner02 > .head-A {
  margin-bottom: clamp(75px, 10rem, 100px);
}

.cases-cases-section > .inner > .inner02 {
  padding-bottom: clamp(150px, 20rem, 200px);
}
@media screen and (min-width: 768px) {
  .cases-cases-section > .inner > .inner02 > .list-D > .item {
    width: calc(50% - 20px);
    max-width: none;
  }
}
@media screen and (min-width: 1240px) {
  .cases-cases-section > .inner > .inner02 > .list-D > .item {
    width: calc(33.333% - 20px);
  }
}

.case-article-section > .inner > .inner02 {
  padding-bottom: clamp(105px, 14rem, 140px);
}
.case-article-section > .inner > .inner02 > .box-G > .box-inner > .article-A {
  margin-bottom: clamp(50px, 10rem, 100px);
}
.case-article-section > .inner > .inner02 > .box-G > .box-inner > .btn-A {
  margin-bottom: clamp(100px, 20rem, 200px);
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 1240px) {
  .case-article-section > .inner > .inner02 > .box-G > .box-inner > .btn-A {
    margin-bottom: 0;
  }
}

.case-kanren-section > .inner > .inner02 {
  padding-bottom: clamp(150px, 20rem, 200px);
}

.news-news-section > .inner > .inner02 {
  padding-bottom: clamp(105px, 14rem, 140px);
}
.news-news-section > .inner > .inner02 > .head-A {
  margin-bottom: clamp(52.5px, 7rem, 70px);
}
.news-news-section > .inner > .inner02 > .list-E {
  margin-bottom: clamp(75px, 10rem, 100px);
}
.news-news-section > .inner > .inner02 > .btn-A {
  margin-left: auto;
  margin-right: auto;
}

.new-new-section > .inner > .inner02 {
  padding-bottom: clamp(105px, 14rem, 140px);
}
.new-new-section > .inner > .inner02 > .head-A {
  margin-bottom: clamp(45px, 6rem, 60px);
}
.new-new-section > .inner > .inner02 > .box-H {
  margin-bottom: clamp(105px, 14rem, 140px);
}
.new-new-section > .inner > .inner02 > .btn-A {
  margin-left: auto;
  margin-right: auto;
}

.contact-table-section > .inner > .inner02 {
  padding-bottom: clamp(120px, 16rem, 160px);
}
.contact-table-section > .inner > .inner02 > .head-A {
  margin-bottom: clamp(45px, 6rem, 60px);
}
.contact-table-section > .inner > .inner02 .table-C {
  margin-bottom: clamp(90px, 12rem, 120px);
}
.contact-table-section > .inner > .inner02 .check {
  margin-bottom: clamp(15px, 2rem, 20px);
  text-align: center;
}
.contact-table-section > .inner > .inner02 .submit-A {
  margin-left: auto;
  margin-right: auto;
}

.privacy-table-section > .inner > .inner02 {
  padding-bottom: clamp(120px, 16rem, 160px);
}
.privacy-table-section > .inner > .inner02 > .head-A {
  margin-bottom: clamp(45px, 6rem, 60px);
}
.privacy-table-section > .inner > .inner02 > .txt {
  margin-bottom: clamp(37.5px, 5rem, 50px);
}

.footer {
  background-color: #000;
  color: #FFF;
}
.footer > .inner {
  padding-left: clamp(18px, 2.4rem, 24px);
  padding-right: clamp(18px, 2.4rem, 24px);
}
.footer > .inner > .inner02 {
  align-items: flex-start;
  margin-left: auto;
  margin-right: auto;
  padding-top: clamp(60px, 8rem, 80px);
  max-width: 1200px;
}
.footer > .inner > .inner02 > .f-unit:nth-of-type(1) {
  margin-bottom: clamp(27px, 3.6rem, 36px);
  width: 100%;
}
@media screen and (min-width: 768px) {
  .footer > .inner > .inner02 > .f-unit:nth-of-type(1) {
    margin-bottom: 0;
    width: 145px;
  }
}
.footer > .inner > .inner02 > .f-unit:nth-of-type(1) > .f-ci {
  max-width: 220px;
  width: 72vw;
}
@media screen and (min-width: 768px) {
  .footer > .inner > .inner02 > .f-unit:nth-of-type(1) > .f-ci {
    width: 145px;
  }
}
.footer > .inner > .inner02 > .f-unit:nth-of-type(2) {
  align-items: flex-start;
  display: grid;
  gap: clamp(24px, 4vw, 40px) clamp(24px, 6vw, 56px);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: 100%;
}
@media screen and (min-width: 768px) {
  .footer > .inner > .inner02 > .f-unit:nth-of-type(2) {
    display: flex;
    flex-wrap: nowrap;
    justify-content: end;
    width: calc(100% - 145px);
  }
}
.footer > .inner > .inner02 > .f-unit:nth-of-type(2) > .f-list {
  margin-bottom: 0;
  max-width: none;
}
.footer > .inner > .inner02 > .f-unit:nth-of-type(2) > .f-list:last-child {
  margin-bottom: 0;
}
@media screen and (min-width: 768px) {
  .footer > .inner > .inner02 > .f-unit:nth-of-type(2) > .f-list {
    margin-bottom: 0;
    max-width: 130px;
    margin-right: clamp(52.5px, 7rem, 70px);
  }
  .footer > .inner > .inner02 > .f-unit:nth-of-type(2) > .f-list:last-child {
    margin-right: 0;
  }
}
.footer > .inner > .inner02 > .f-unit:nth-of-type(2) > .f-list > .item > a {
  padding-right: clamp(21px, 2.8rem, 28px);
}
.footer > .inner > .inner02 > .f-bottom {
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  margin-top: clamp(45px, 6rem, 60px);
  padding-top: clamp(30px, 4rem, 40px);
  padding-bottom: clamp(30px, 4rem, 40px);
  text-align: center;
  width: 100%;
}
.footer > .inner > .inner02 > .f-bottom > .f-privacy {
  margin-bottom: clamp(11.25px, 1.5rem, 15px);
}
.footer > .inner > .inner02 > .f-bottom > .f-privacy > a {
  color: rgba(255, 255, 255, 0.7);
}
.footer > .inner > .inner02 > .f-bottom > .copy {
  color: rgba(255, 255, 255, 0.5);
  font-size: clamp(10.5px, 1.2rem, 12px);
}

.ci {
  width: clamp(150px, 30rem, 300px);
}

.g-navi {
  font-size: clamp(11.375px, 1.3rem, 13px);
}
.g-navi > .list > .item {
  position: relative;
}
@media screen and (min-width: 1240px) {
  .g-navi > .list > .item {
    margin-right: clamp(24px, 3.2rem, 32px);
  }
  .g-navi > .list > .item:last-child {
    margin-right: 0;
  }
}
.g-navi {
  display: none;
}
@media screen and (min-width: 1240px) {
  .g-navi {
    display: block;
  }
}

.menubtn {
  border: 1px solid #CCC;
  border-radius: 50%;
  height: clamp(37.5px, 5rem, 50px);
  width: clamp(37.5px, 5rem, 50px);
}
.menubtn > a {
  position: relative;
}
.menubtn > a > .inner {
  bottom: 0;
  display: block;
  height: 11px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 10px;
}
.menubtn > a > .inner > span {
  background-color: #000;
  height: 1px;
  position: absolute;
  width: 100%;
}
.menubtn > a > .inner > span:nth-of-type(1) {
  top: 0;
}
.menubtn > a > .inner > span:nth-of-type(2) {
  bottom: 0;
  margin: auto 0;
  top: 0;
}
.menubtn > a > .inner > span:nth-of-type(3) {
  bottom: 0;
}

.sub-menu {
  padding-top: clamp(7.5px, 1rem, 10px);
  opacity: 0;
  pointer-events: none;
  position: absolute;
  transition-duration: 0.3s;
  width: 240px;
}
.sub-menu > .inner {
  background-color: #FFF;
}
.sub-menu > .inner > .list > .item {
  border-bottom: 1px solid #CCC;
}
.sub-menu > .inner > .list > .item:last-child {
  border-bottom: none;
}
.sub-menu > .inner > .list > .item > a {
  padding: clamp(7.5px, 1rem, 10px);
}
.sub-menu > .inner > .list > .item > a > .thumb {
  background-color: #ccc;
  aspect-ratio: 10/7;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  width: clamp(56.25px, 7.5rem, 75px);
}
.sub-menu > .inner > .list > .item > a > .item-inner {
  padding-left: clamp(7.5px, 1rem, 10px);
  width: calc(100% - clamp(56.25px, 7.5rem, 75px));
}
.sub-menu > .inner > .list > .item > a > .item-inner > * {
  display: block;
}
.sub-menu.is-open {
  opacity: 1;
  pointer-events: auto;
}

.sp-navi-box {
  background-color: rgba(255, 255, 255, 0.95);
  height: 100%;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1;
  opacity: 0;
  pointer-events: none;
  transition-duration: 0.3s;
}
.sp-navi-box.is-open {
  opacity: 1;
  pointer-events: auto;
}
.sp-navi-box > .box-inner {
  align-items: flex-start;
  margin-left: auto;
  margin-right: auto;
  padding-left: clamp(12px, 2.4rem, 24px);
  padding-right: clamp(12px, 2.4rem, 24px);
  padding-top: clamp(150px, 20rem, 200px);
  max-width: 1200px;
}
.sp-navi-box > .box-inner > .sp-ci {
  display: none;
  width: 300px;
}
@media screen and (min-width: 768px) {
  .sp-navi-box > .box-inner > .sp-ci {
    display: block;
  }
}
@media screen and (min-width: 768px) {
  .sp-navi-box > .box-inner > .box-inner02 {
    padding-left: clamp(150px, 20rem, 200px);
    padding-top: clamp(7.5px, 1rem, 10px);
    width: calc(100% - 300px);
  }
}
.sp-navi-box > .box-inner > .box-inner02 > .list {
  margin-bottom: clamp(75px, 10rem, 100px);
}
.sp-navi-box > .box-inner > .box-inner02 > .list > .item {
  margin-bottom: clamp(37.5px, 5rem, 50px);
  width: 50%;
}
.sp-navi-box > .box-inner > .box-inner02 > .list > .item > a > * {
  display: block;
}
.sp-navi-box > .box-inner > .box-inner02 > .list > .item > a > .en {
  color: #D25A3E;
  font-weight: 600;
}
.sp-navi-box > .box-inner > .box-inner02 > .list > .item > a > .ja {
  font-size: clamp(24px, 3.2rem, 32px);
  font-weight: 600;
}

.catch {
  margin-top: clamp(18px, 2.4rem, 24px);
}
.catch > * {
  display: block;
}
.catch > .en {
  font-size: clamp(73.5px, 9.8rem, 98px);
  font-weight: 900;
  line-height: 1.25;
  margin-bottom: clamp(22.5px, 3rem, 30px);
}
.catch > .ja {
  font-size: clamp(18px, 2.4rem, 24px);
  font-weight: 500;
}

.scroll {
  bottom: clamp(90px, 12rem, 120px);
  position: absolute;
  right: clamp(18px, 2.4rem, 24px);
}
@media screen and (min-width: 1240px) {
  .scroll {
    bottom: 40px;
  }
}
.scroll::after {
  background: url(../img/common/arr_l.svg) no-repeat center center/cover;
  content: "";
  display: block;
  height: clamp(60px, 8rem, 80px);
  margin: auto;
  width: clamp(6px, 0.8rem, 8px);
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  top: 0;
}

.topics {
  text-align: left;
}
.topics > .item {
  line-height: 1.75;
  margin-right: clamp(15px, 2rem, 20px);
  padding-right: clamp(15px, 2rem, 20px);
  position: relative;
}
.topics > .item::after {
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  content: "";
  display: block;
  height: clamp(7.5px, 1rem, 10px);
  margin: auto 0;
  width: clamp(7.5px, 1rem, 10px);
  position: absolute;
  bottom: 0;
  right: 0;
  top: 0;
  transform: rotate(-45deg);
}
.topics > .item:last-child {
  margin-right: 0;
  padding-right: 0;
}
.topics > .item:last-child::after {
  display: none;
}

.section.section-B {
  background-color: #000;
  color: #FFF;
}
.section.section-C {
  background-color: #F5F5F5;
}

.head-A > * {
  display: block;
}
.head-A > .en {
  font-size: clamp(63px, 9rem, 90px);
  font-weight: 900;
}
.head-A > .ja {
  font-size: clamp(12px, 1.6rem, 16px);
}

.head-B {
  border-bottom: 1px solid #000;
  padding-bottom: clamp(7.5px, 1rem, 10px);
}
.head-B > * {
  vertical-align: middle;
}
.head-B > .en {
  font-size: clamp(36px, 4.8rem, 48px);
  font-weight: 900;
  margin-right: clamp(15px, 2rem, 20px);
}
.head-B > .ja {
  font-size: clamp(12px, 1.6rem, 16px);
}

.head-C {
  font-size: clamp(30px, 4rem, 40px);
  font-weight: 600;
  line-height: 1.5;
}

.read-A {
  font-size: clamp(16.2px, 1.8rem, 18px);
  font-weight: 600;
  line-height: 1.75;
}

.txt {
  line-height: 1.75;
}

.txt-A {
  color: #fff;
  text-shadow: 1px 1px 0 #000, -1px 1px 0 #000, -1px -1px 0 #000, 1px -1px 0 #000;
}
.txt-A.txt-A- {
  color: #000;
  text-shadow: 1px 1px 0 #FFF, -1px 1px 0 #FFF, -1px -1px 0 #FFF, 1px -1px 0 #FFF;
}
.txt-A.txt-A-- {
  color: transparent;
}

.tit-A {
  border: 1px solid #000;
  display: inline-block;
  font-size: 10px;
  line-height: 17px;
  padding-left: 5px;
  padding-right: 5px;
}

.tit-B {
  font-size: clamp(13.5px, 1.8rem, 18px);
  font-weight: 600;
  line-height: 1.75;
}

.list-A {
  font-size: clamp(11.375px, 1.3rem, 13px);
}
.list-A > .item > .date {
  margin-right: clamp(22.5px, 3rem, 30px);
}

.list-B {
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .list-B {
    overflow: visible;
  }
}
.list-B .item {
  background-color: #FFF;
  color: #000;
  padding: clamp(15px, 2rem, 20px);
}
.list-B .item > .img {
  aspect-ratio: 13/9;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  width: 100%;
}
.list-B .item > .num {
  font-size: clamp(67.5px, 9rem, 90px);
  font-weight: 900;
  margin-top: -45px;
  text-align: right;
}
.list-B .item > .tit-B {
  margin-bottom: clamp(11.25px, 1.5rem, 15px);
}

.list-C {
  width: 175px;
}
.list-C > .item {
  background-color: #282828;
  border-radius: clamp(2.25px, 0.3rem, 3px);
  color: #777777;
  font-size: clamp(12px, 1.6rem, 16px);
  line-height: clamp(21px, 2.8rem, 28px);
  margin-bottom: clamp(3.75px, 0.5rem, 5px);
  padding-left: clamp(7.5px, 1rem, 10px);
  padding-right: clamp(7.5px, 1rem, 10px);
}
.list-C > .item:last-child {
  margin-bottom: 0;
}

.box-J > ul {
  width: 175px;
}
.box-J > ul > li {
  background-color: #282828;
  border-radius: clamp(2.25px, 0.3rem, 3px);
  color: #777777;
  cursor: pointer;
  font-size: clamp(12px, 1.6rem, 16px);
  line-height: clamp(21px, 2.8rem, 28px);
  margin-bottom: clamp(3.75px, 0.5rem, 5px);
  padding-left: clamp(7.5px, 1rem, 10px);
  padding-right: clamp(7.5px, 1rem, 10px);
  transition-duration: 0.3s;
}
.box-J > ul > li:last-child {
  margin-bottom: 0;
}
.box-J > ul > li.slick-active {
  background-color: #FFF;
  color: #000;
}

.box-K {
  background-color: #000;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding-bottom: clamp(75px, 10rem, 100px);
  padding-left: clamp(12px, 2.4rem, 24px);
  padding-right: clamp(12px, 2.4rem, 24px);
  padding-top: clamp(75px, 10rem, 100px);
}
.box-K > .list-K {
  margin-left: auto;
  margin-right: auto;
  max-width: 1080px;
  width: 100%;
}

.box-L {
  text-align: center;
}
.box-L > .txt-B {
  font-size: clamp(18px, 2.4rem, 24px);
  font-weight: 600;
  margin-bottom: clamp(37.5px, 5rem, 50px);
}
.box-L > .txt {
  margin-bottom: clamp(75px, 10rem, 100px);
}
.box-L > .btn-A {
  margin-left: auto;
  margin-right: auto;
  text-align: left;
}

.list-D .item {
  margin-bottom: clamp(15px, 2rem, 20px);
  margin-right: clamp(15px, 2rem, 20px);
  width: 100%;
}
.list-D .item:last-child {
  margin-bottom: 0;
}
@media screen and (min-width: 768px) {
  .list-D .item {
    margin-bottom: 0;
    max-width: 360px;
  }
}
.list-D .item > a {
  background-color: #FFF;
  padding: clamp(7.5px, 1rem, 10px);
}
.list-D .item > a > * {
  display: block;
}
.list-D .item > a > .thumb {
  aspect-ratio: 17/10;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  margin-bottom: clamp(7.5px, 1rem, 10px);
  width: 100%;
}
.list-D .item > a > .item-inner {
  padding: clamp(7.5px, 1rem, 10px);
}
.list-D .item > a > .item-inner > * {
  display: block;
}
.list-D .item > a > .item-inner > .cat-A {
  display: inline-block;
  margin-bottom: clamp(15px, 2rem, 20px);
}
.list-D .item > a > .item-inner > .cates-B {
  margin-bottom: clamp(15px, 2rem, 20px);
}
.list-D .item > a > .item-inner > .cates-B > .item {
  width: auto;
}
.list-D .item > a > .item-inner > .tit-B {
  margin-bottom: clamp(7.5px, 1rem, 10px);
}

.list-E {
  border-top: 1px solid #DDD;
}
.list-E > .item {
  border-bottom: 1px solid #DDD;
}
.list-E > .item > a {
  padding-bottom: clamp(7.5px, 1rem, 10px);
  padding-top: clamp(7.5px, 1rem, 10px);
}
.list-E > .item > a > * {
  vertical-align: top;
}
.list-E > .item > a > .date {
  line-height: 1.75;
  width: clamp(97.5px, 13rem, 130px);
}
.list-E > .item > a > .txt {
  width: calc(100% - clamp(97.5px, 13rem, 130px));
}

.list-F {
  align-items: flex-start !important;
}
.list-F > .item {
  margin-bottom: 20px;
  margin-right: 20px;
  width: calc(50% - 10px);
}
.list-F > .item:nth-of-type(even) {
  margin-right: 0;
}
@media screen and (min-width: 768px) {
  .list-F > .item {
    width: calc(25% - 15px);
  }
  .list-F > .item:nth-of-type(even) {
    margin-right: 20px;
  }
  .list-F > .item:nth-of-type(4n) {
    margin-right: 0;
  }
}
.list-F > .item > .thumb {
  aspect-ratio: 17/12;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  margin-bottom: clamp(7.5px, 1rem, 10px);
  width: 100%;
}
.list-F > .item > .tit-B {
  margin-bottom: clamp(7.5px, 1rem, 10px);
}

.list-G > .item {
  margin-bottom: clamp(37.5px, 5rem, 50px);
}
.list-G > .item:last-child {
  margin-bottom: 0;
}
.list-G > .item > .number {
  width: clamp(123.75px, 16.5rem, 165px);
}
.list-G > .item > .number > .inner {
  display: inline-block;
}
.list-G > .item > .number > .inner > * {
  display: block;
  text-align: center;
}
.list-G > .item > .number > .inner > .label {
  font-size: clamp(18px, 2.4rem, 24px);
  font-weight: 900;
}
.list-G > .item > .number > .inner > .num {
  font-size: clamp(48px, 6.4rem, 64px);
  font-weight: 600;
}
.list-G > .item > .thumb {
  aspect-ratio: 4/3;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  width: clamp(150px, 20rem, 200px);
}
@media screen and (min-width: 768px) {
  .list-G > .item > .item-inner {
    padding-left: clamp(75px, 10rem, 100px);
    width: calc(100% - clamp(273.75px, 36.5rem, 365px));
  }
}
.list-G > .item > .item-inner > .tit-B {
  margin-bottom: clamp(7.5px, 1rem, 10px);
  text-align: center;
}
@media screen and (min-width: 768px) {
  .list-G > .item > .item-inner > .tit-B {
    text-align: left;
  }
}

.list-H > .item {
  margin-bottom: clamp(52.5px, 7rem, 70px);
  position: relative;
}
.list-H > .item:last-child {
  margin-bottom: 0;
}
.list-H > .item > .number {
  color: #EEE;
  position: absolute;
  right: 0;
  top: 0;
}
.list-H > .item > .number > * {
  display: block;
  text-align: center;
}
.list-H > .item > .number > .label {
  font-size: clamp(45px, 6rem, 60px);
  font-weight: 900;
}
.list-H > .item > .number > .num {
  font-size: clamp(121.5px, 16.2rem, 162px);
  font-weight: 600;
}
.list-H > .item > .thumb {
  aspect-ratio: 101/71;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  margin-bottom: clamp(37.5px, 5rem, 50px);
  width: clamp(378.75px, 50.5rem, 505px);
}
@media screen and (min-width: 1240px) {
  .list-H > .item > .thumb {
    margin-bottom: 0;
  }
}
.list-H > .item > .item-inner {
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .list-H > .item > .item-inner {
    padding-left: clamp(75px, 10rem, 100px);
    width: calc(100% - clamp(378.75px, 50.5rem, 505px));
  }
}
.list-H > .item > .item-inner > .tit-B {
  margin-bottom: clamp(7.5px, 1rem, 10px);
}
.list-H > .item.fl- > .number {
  left: 0;
  right: auto;
}
.list-H > .item.fl- > .item-inner {
  padding-left: 0;
}
@media screen and (min-width: 768px) {
  .list-H > .item.fl- > .item-inner {
    padding-right: clamp(75px, 10rem, 100px);
  }
}

.list-I > .item {
  margin-bottom: clamp(15px, 2rem, 20px);
}
.list-I > .item:last-child {
  margin-bottom: 0;
}
.list-I > .item > a > .thumb {
  aspect-ratio: 1/1;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  width: 100px;
}
.list-I > .item > a > .inner {
  padding-left: clamp(15px, 2rem, 20px);
  width: calc(100% - 100px);
}
.list-I > .item > a > .inner > * {
  display: block;
}
.list-I > .item > a > .inner > .date {
  margin-bottom: 5px;
}
.list-I > .item > a > .inner > .txt {
  line-height: 1.5;
}

.list-J > .item {
  margin-bottom: clamp(37.5px, 5rem, 50px);
}
.list-J > .item:last-child {
  margin-bottom: 0;
}
.list-J > .item > .unit > .label {
  font-size: clamp(15px, 2rem, 20px);
  font-weight: 600;
  margin-bottom: clamp(15px, 2rem, 20px);
}
.list-J > .item > .unit > .item {
  line-height: 1.75;
}

.list-K > .item {
  margin-bottom: clamp(15px, 2rem, 20px);
}
.list-K > .item:last-child {
  margin-bottom: 0;
}
.list-K > .item > a {
  background-color: #FFF;
  color: #000;
  padding: clamp(15px, 2rem, 20px);
}
.list-K > .item > a > * {
  display: block;
}
.list-K > .item > a > .img {
  aspect-ratio: 23/16;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .list-K > .item > a > .img {
    width: clamp(345px, 46rem, 460px);
  }
}
.list-K > .item > a > .inner {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .list-K > .item > a > .inner {
    padding-left: clamp(37.5px, 5rem, 50px);
    padding-right: clamp(22.5px, 3rem, 30px);
    width: calc(100% - clamp(345px, 46rem, 460px));
  }
}
.list-K > .item > a > .inner > .head > .txt-A {
  font-size: clamp(67.5px, 9rem, 90px);
  font-weight: 600;
  margin-right: clamp(15px, 2rem, 20px);
}
.list-K > .item > a > .inner > .txt {
  display: block;
  width: 100%;
}

.f-list {
  max-width: 130px;
  width: 100%;
}
.f-list > .item {
  margin-bottom: clamp(15px, 2rem, 20px);
  width: 100%;
}
.f-list > .item:last-child {
  margin-bottom: 0;
}
.f-list > .item > a {
  display: block;
  position: relative;
}
.f-list > .item > a::after {
  background: url(../img/common/arr_w.svg) no-repeat center center/cover;
  content: "";
  display: block;
  height: clamp(11.25px, 1.5rem, 15px);
  margin: auto 0;
  width: clamp(11.25px, 1.5rem, 15px);
  position: absolute;
  bottom: 0;
  right: 0;
  top: 0;
}

.btn-A {
  border-bottom: 1px solid #000;
  max-width: clamp(187.5px, 25rem, 250px);
  width: 100%;
}
.btn-A > a {
  display: block;
  font-size: clamp(15px, 2rem, 20px);
  font-weight: 600;
  padding-bottom: clamp(7.5px, 1rem, 10px);
  padding-top: clamp(7.5px, 1rem, 10px);
  position: relative;
}
.btn-A > a::after {
  background: url(../img/common/arr.svg) no-repeat center center/cover;
  content: "";
  display: block;
  height: 15px;
  margin: auto 0;
  width: 15px;
  position: absolute;
  bottom: 0;
  right: 0;
  top: 0;
}
.btn-A.btn-A- {
  border-bottom: 1px solid #FFF;
}
.btn-A.btn-A- > a::after {
  background: url(../img/common/arr_w.svg) no-repeat center center/cover;
}

.btn-B {
  bottom: clamp(45px, 6rem, 60px);
  position: absolute;
  right: clamp(60px, 8rem, 80px);
}
.btn-B::after {
  background: url(../img/common/arr_w.svg) no-repeat center center/cover;
  content: "";
  display: block;
  height: 15px;
  left: 0;
  margin: auto;
  width: 15px;
  position: absolute;
  bottom: 0;
  right: 0;
  top: 0;
}

.btn-C > a {
  border-radius: clamp(3.75px, 0.5rem, 5px);
  background-color: #19387B;
  color: #FFF;
  padding-bottom: clamp(37.5px, 5rem, 50px);
  padding-left: clamp(37.5px, 5rem, 50px);
  padding-right: clamp(37.5px, 5rem, 50px);
  padding-top: clamp(37.5px, 5rem, 50px);
  position: relative;
}
.btn-C > a > * {
  display: block;
}
.btn-C > a > .en {
  color: #D25A3E;
  font-weight: 600;
}
.btn-C > a > .ja {
  font-size: clamp(24px, 3.2rem, 32px);
  font-weight: 600;
}
.btn-C > a::after {
  background: url(../img/common/arr_w.svg) no-repeat center center/cover;
  content: "";
  display: block;
  height: 25px;
  margin: auto 0;
  width: 25px;
  position: absolute;
  bottom: 0;
  right: clamp(37.5px, 5rem, 50px);
  top: 0;
}

.submit-A {
  border-bottom: 1px solid #000;
  display: block;
  font-size: clamp(15px, 2rem, 20px);
  font-weight: 600;
  padding-bottom: clamp(7.5px, 1rem, 10px);
  padding-top: clamp(7.5px, 1rem, 10px);
  position: relative;
  max-width: 190px;
}
.submit-A::after {
  background: url(../img/common/arr.svg) no-repeat center center/cover;
  content: "";
  display: block;
  height: 15px;
  margin: auto 0;
  width: 15px;
  position: absolute;
  bottom: 0;
  right: 0;
  top: 0;
}

.cat-A {
  border: 1px solid #CCC;
  border-radius: clamp(2.25px, 0.3rem, 3px);
  line-height: clamp(18px, 2.4rem, 24px);
  padding-left: clamp(7.5px, 1rem, 10px);
  padding-right: clamp(7.5px, 1rem, 10px);
}

.cat-B {
  background-color: #D9D9D9;
  line-height: clamp(18px, 2.4rem, 24px);
  padding-left: clamp(7.5px, 1rem, 10px);
  padding-right: clamp(7.5px, 1rem, 10px);
}

.cates-B > .item {
  margin-right: clamp(7.5px, 1rem, 10px);
}
.cates-B > .item:last-child {
  margin-right: 0;
}

.box-B {
  border: 1px dotted #000;
  border-radius: clamp(7.5px, 1rem, 10px);
  padding: clamp(30px, 4rem, 40px);
}
.box-B > .img {
  margin-bottom: clamp(30px, 4rem, 40px);
  margin-left: auto;
  margin-right: auto;
  max-width: 190px;
}
@media screen and (min-width: 768px) {
  .box-B > .img {
    margin-bottom: 0;
    width: clamp(142.5px, 19rem, 190px);
  }
}
@media screen and (min-width: 768px) {
  .box-B > .box-inner {
    padding-left: clamp(37.5px, 5rem, 50px);
    width: calc(100% - clamp(142.5px, 19rem, 190px));
  }
}
.box-B > .box-inner > .head-B {
  margin-bottom: clamp(11.25px, 1.5rem, 15px);
}
.box-B > .box-inner > .read-A {
  margin-bottom: clamp(7.5px, 1rem, 10px);
}

.box-C {
  position: relative;
}
.box-C > .box-inner {
  margin-bottom: clamp(37.5px, 5rem, 50px);
}
@media screen and (min-width: 768px) {
  .box-C > .box-inner {
    margin-left: auto;
    padding-left: clamp(60px, 8rem, 80px);
    width: calc(100% - clamp(420px, 56rem, 560px));
  }
}
.box-C > .box-inner > .head-A {
  margin-bottom: clamp(22.5px, 3rem, 30px);
}
.box-C > .box-inner > .txt {
  margin-bottom: clamp(56.25px, 7.5rem, 75px);
}
.box-C > .box-inner > .box-J {
  margin-bottom: clamp(40px, 16rem, 160px);
}
.box-C > .box-inner > .btn-A {
  display: none;
}
@media screen and (min-width: 768px) {
  .box-C > .box-inner > .btn-A {
    display: block;
  }
}
.box-C > .list-B {
  margin-bottom: clamp(30px, 4rem, 40px);
}
@media screen and (min-width: 768px) {
  .box-C > .list-B {
    margin-bottom: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: clamp(420px, 56rem, 560px);
  }
}
@media screen and (min-width: 768px) {
  .box-C > .btn-A {
    display: none;
  }
}

.box-D > .img {
  aspect-ratio: 7/10;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  margin-bottom: clamp(37.5px, 5rem, 50px);
  margin-left: auto;
  margin-right: auto;
  max-width: clamp(367.5px, 49rem, 490px);
  width: 100%;
  order: 2;
}
@media screen and (min-width: 768px) {
  .box-D > .img {
    order: 0;
  }
}
.box-D > .box-inner {
  order: 1;
}
@media screen and (min-width: 768px) {
  .box-D > .box-inner {
    padding-right: clamp(75px, 10rem, 100px);
    width: calc(100% - clamp(367.5px, 49rem, 490px));
    order: 0;
  }
}
.box-D > .box-inner > .head-A {
  margin-bottom: clamp(30px, 4rem, 40px);
}
.box-D > .box-inner > .txt {
  margin-bottom: clamp(75px, 10rem, 100px);
}
.box-D > .table-A {
  order: 3;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .box-D > .table-A {
    order: 0;
    padding-right: clamp(442.5px, 59rem, 590px);
  }
}

.box-E > .img {
  display: block;
  aspect-ratio: 37/45;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  margin-bottom: clamp(37.5px, 5rem, 50px);
  margin-left: auto;
  margin-right: auto;
  max-width: 280px;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .box-E > .img {
    width: clamp(277.5px, 37rem, 370px);
    max-width: none;
    margin-bottom: 0;
  }
}
@media screen and (min-width: 768px) {
  .box-E > .box-inner {
    padding-left: clamp(75px, 10rem, 100px);
    width: calc(100% - clamp(277.5px, 37rem, 370px));
  }
}
.box-E > .box-inner > .head-A {
  margin-bottom: clamp(30px, 4rem, 40px);
}

.box-F > .img {
  aspect-ratio: 101/71;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  margin-bottom: clamp(37.5px, 5rem, 50px);
  margin-left: auto;
  margin-right: auto;
  max-width: clamp(378.75px, 50.5rem, 505px);
  width: 100%;
  order: 2;
}
@media screen and (min-width: 1240px) {
  .box-F > .img {
    margin-bottom: 0;
    order: 0;
  }
}
.box-F > .box-inner {
  order: 1;
}
@media screen and (min-width: 1240px) {
  .box-F > .box-inner {
    padding-left: clamp(52.5px, 7rem, 70px);
    width: calc(100% - clamp(378.75px, 50.5rem, 505px));
    order: 0;
  }
}
.box-F > .box-inner > .head-A {
  margin-bottom: clamp(30px, 4rem, 40px);
}

.box-G {
  align-items: flex-start !important;
}
@media screen and (min-width: 1240px) {
  .box-G > .box-inner {
    padding-right: clamp(75px, 10rem, 100px);
    width: calc(100% - 300px);
  }
}
.box-G > .box-inner > .head-C {
  margin-bottom: clamp(15px, 2rem, 20px);
}
.box-G > .box-inner > .cates-B {
  margin-bottom: clamp(37.5px, 5rem, 50px);
}
@media screen and (min-width: 1240px) {
  .box-G > .list-I {
    width: 300px;
  }
}

.box-H > .head-C {
  margin-bottom: clamp(37.5px, 5rem, 50px);
}

.box-I > .box-inner:nth-of-type(1) {
  padding-right: clamp(30px, 4rem, 40px);
  margin-bottom: clamp(37.5px, 5rem, 50px);
  width: 100%;
}
@media screen and (min-width: 768px) {
  .box-I > .box-inner:nth-of-type(1) {
    margin-bottom: 0;
    width: 360px;
  }
}
.box-I > .box-inner:nth-of-type(1) > .head-A {
  margin-bottom: clamp(37.5px, 5rem, 50px);
}
.box-I > .box-inner:nth-of-type(2) {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .box-I > .box-inner:nth-of-type(2) {
    width: calc(100% - 360px);
  }
}

.table-A {
  border-top: 1px solid #DDD;
}
.table-A > .unit {
  border-bottom: 1px solid #DDD;
  align-items: flex-start;
  padding-bottom: clamp(11.25px, 1.5rem, 15px);
  padding-top: clamp(11.25px, 1.5rem, 15px);
}
.table-A > .unit > * {
  line-height: 1.75;
}
.table-A > .unit > .label {
  font-weight: 600;
  width: clamp(120px, 16rem, 160px);
}
.table-A > .unit > .item {
  width: calc(100% - clamp(120px, 16rem, 160px));
}

.table-B {
  align-items: stretch !important;
  justify-content: space-between;
}
.table-B > .unit {
  border-bottom: 1px solid #DDD;
  border-top: 1px solid #DDD;
  align-items: flex-start;
  padding-bottom: clamp(11.25px, 1.5rem, 15px);
  padding-top: clamp(11.25px, 1.5rem, 15px);
}
@media screen and (min-width: 768px) {
  .table-B > .unit {
    width: calc(50% - 50px);
  }
}
.table-B > .unit > * {
  line-height: 1.75;
}
.table-B > .unit > .label {
  font-weight: 600;
  width: clamp(120px, 16rem, 160px);
}
.table-B > .unit > .item {
  width: calc(100% - clamp(120px, 16rem, 160px));
}

.table-C > .unit {
  margin-bottom: clamp(22.5px, 3rem, 30px);
}
.table-C > .unit:last-child {
  margin-bottom: 0;
}
.table-C > .unit > .label {
  margin-bottom: clamp(7.5px, 1rem, 10px);
}
.table-C > .unit > .label > * {
  vertical-align: middle;
}
.table-C > .unit > .label .txt {
  margin-right: clamp(7.5px, 1rem, 10px);
}
.table-C > .unit > .label .req {
  background-color: #D90000;
  color: #FFF;
  font-size: clamp(12.25px, 1.4rem, 14px);
  line-height: 20px;
  padding-left: clamp(3.75px, 0.5rem, 5px);
  padding-right: clamp(3.75px, 0.5rem, 5px);
}
.table-C > .unit > .item > .list > .item {
  margin-right: clamp(22.5px, 3rem, 30px);
}
.table-C > .unit > .item > .list > .item:last-child {
  margin-right: 0;
}

.input-A {
  background-color: #F0F0F0;
  line-height: clamp(37.5px, 5rem, 50px);
  padding-left: clamp(3.75px, 0.5rem, 5px);
  padding-right: clamp(3.75px, 0.5rem, 5px);
  width: 100%;
}

.textarea-A {
  background-color: #F0F0F0;
  padding: clamp(3.75px, 0.5rem, 5px);
  height: clamp(262.5px, 35rem, 350px);
  width: 100%;
}

.radio-A {
  display: none;
}
.radio-A:checked + .label-A::after {
  display: block;
}

.label-A {
  padding-left: clamp(21px, 2.8rem, 28px);
  position: relative;
}
.label-A::before {
  background-color: #E5E5E5;
  border-radius: 50%;
  content: "";
  display: block;
  height: clamp(13.5px, 1.8rem, 18px);
  margin: auto 0;
  width: clamp(13.5px, 1.8rem, 18px);
  position: absolute;
  bottom: 0;
  left: 0;
  top: 0;
}
.label-A::after {
  background-color: #D5D5D5;
  border-radius: 50%;
  content: "";
  display: none;
  height: clamp(9.75px, 1.3rem, 13px);
  margin: auto 0;
  width: clamp(9.75px, 1.3rem, 13px);
  position: absolute;
  bottom: 0;
  left: clamp(1.6875px, 0.225rem, 2.25px);
  top: 0;
}

.check-B:checked + .label-B::after {
  display: block;
}

.label-B {
  padding-left: clamp(21px, 2.8rem, 28px);
  position: relative;
}
.label-B::before {
  background-color: #E5E5E5;
  content: "";
  display: block;
  height: clamp(13.5px, 1.8rem, 18px);
  margin: auto 0;
  width: clamp(13.5px, 1.8rem, 18px);
  position: absolute;
  bottom: 0;
  left: 0;
  top: 0;
}
.label-B::after {
  background-color: #D5D5D5;
  content: "";
  display: none;
  height: clamp(9.75px, 1.3rem, 13px);
  margin: auto 0;
  width: clamp(9.75px, 1.3rem, 13px);
  position: absolute;
  bottom: 0;
  left: clamp(1.6875px, 0.225rem, 2.25px);
  top: 0;
}

.map-A {
  height: clamp(300px, 40rem, 400px);
}

.article-A > p {
  line-height: 1.75;
  margin-bottom: clamp(30px, 4rem, 40px);
}
.article-A > p:last-child {
  margin-bottom: 0;
}

.block {
  width: clamp(108.75px, 14.5rem, 145px);
  height: clamp(108.75px, 14.5rem, 145px);
  margin: auto;
}

.circleText {
  overflow: visible;
  animation: rotation 18s linear infinite;
}
.circleText__circle {
  fill: none;
}
.circleText__text {
  fill: #000;
  font-size: 10px;
  letter-spacing: 0.05em;
}

@keyframes rotation {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.slide1 .item {
  margin-bottom: clamp(7.5px, 1rem, 10px);
  margin-top: clamp(7.5px, 1rem, 10px);
}
.slide1 .slick-list {
  overflow: visible;
}

.circleText__text2 {
  fill: #FFF !important;
  letter-spacing: 0.06em !important;
}

.fadeIn_up {
  opacity: 0;
  transform: translate(0, 50%);
  transition: 2s;
}

.fadeIn_up.is-show {
  transform: translate(0, 0);
  opacity: 1;
}

input[type=radio] {
  opacity: 0;
  visibility: hidden;
  position: absolute;
}

.wpcf7-radio {
  display: flex;
}
.wpcf7-radio .wpcf7-list-item {
  margin-right: clamp(22.5px, 3rem, 30px);
}
.wpcf7-radio .wpcf7-list-item:last-child {
  margin-right: 0;
}
.wpcf7-radio span.wpcf7-list-item-label {
  position: relative;
  display: flex;
  align-items: center;
  cursor: pointer;
}
.wpcf7-radio span.wpcf7-list-item-label::before {
  background-color: #E5E5E5;
  display: block;
  content: "";
  border-radius: 50%;
  width: clamp(13.5px, 1.8rem, 18px);
  height: clamp(13.5px, 1.8rem, 18px);
  margin-right: 10px;
}
.wpcf7-radio span.wpcf7-list-item-label::after {
  background-color: #D5D5D5;
  border-radius: 50%;
  content: "";
  display: none;
  height: clamp(9.75px, 1.3rem, 13px);
  margin: auto 0;
  width: clamp(9.75px, 1.3rem, 13px);
  position: absolute;
  bottom: 0;
  left: clamp(1.6875px, 0.225rem, 2.25px);
  top: 0;
}
.wpcf7-radio input[type=radio]:checked + span.wpcf7-list-item-label::after {
  display: block;
}

.check-B .wpcf7-list-item {
  margin-right: clamp(22.5px, 3rem, 30px);
}
.check-B .wpcf7-list-item:last-child {
  margin-right: 0;
}
.check-B span.wpcf7-list-item-label {
  position: relative;
  display: flex;
  align-items: center;
  cursor: pointer;
  justify-content: center;
}
.check-B span.wpcf7-list-item-label::before {
  background-color: #E5E5E5;
  display: block;
  content: "";
  width: clamp(13.5px, 1.8rem, 18px);
  height: clamp(13.5px, 1.8rem, 18px);
  margin-right: 10px;
}
.check-B span.wpcf7-list-item-label::after {
  background-color: #D5D5D5;
  content: "";
  display: none;
  height: clamp(9.75px, 1.3rem, 13px);
  margin: auto 0;
  width: clamp(9.75px, 1.3rem, 13px);
  position: absolute;
  bottom: 0;
  left: clamp(1.6875px, 0.225rem, 2.25px);
  top: 0;
}
.check-B input[type=checkbox]:checked + span.wpcf7-list-item-label::after {
  display: block;
}

.wpcf7-spinner {
  display: none !important;
}

.en {
  font-family: "Outfit", sans-serif;
  letter-spacing: 0em !important;
}

.bl {
  display: block;
  height: 100%;
  width: 100%;
}

.fl {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
}

.fl- {
  flex-direction: row-reverse;
}

.ib {
  letter-spacing: -0.4em;
}
.ib > * {
  display: inline-block;
  letter-spacing: 0.1em;
}

.is-hide {
  opacity: 0;
  pointer-events: none;
}

._sp {
  display: block;
}
@media screen and (min-width: 1240px) {
  ._sp {
    display: none;
  }
}

._pc {
  display: none;
}
@media screen and (min-width: 1240px) {
  ._pc {
    display: block;
  }
}
