.fontInter {
  font-family: "Raleway", sans-serif;
}

body {
  font-family: "Noto Sans JP", sans-serif;
  max-width: 100%;
  overflow-x: hidden;
}

body.navOn {
  overflow: hidden;
  width: 100%;
  height: 100%;
}

body * {
  letter-spacing: 0.05em;
  line-height: 140%;
}

.bodyIn {
  position: relative;
  overflow: hidden;
}

.wrapWidth {
  margin: 0 auto;
}

.commonWidth {
  margin: 0 auto;
}

.inWidth {
  margin: 0 auto;
}

@media only screen and (max-width: 767px) {
  body {
    background: linear-gradient(to right, #ffffff 0%, #ffffff min(4vw, 10px), #f5f5f5 min(4vw, 10px), #f5f5f5 100%);
  }
  .wrapWidth {
    width: min(94vw, 366px);
  }
  .commonWidth {
    width: min(86vw, 350px);
  }
  .inWidth {
    width: min(84%, 330px);
  }
}
@media print, screen and (min-width: 768px) {
  body {
    background: linear-gradient(to right, #ffffff 0%, #ffffff min(4vw, 100px), #f5f5f5 min(4vw, 100px), #f5f5f5 100%);
  }
  .wrapWidth {
    width: min(96vw, 1280px);
  }
  .commonWidth {
    width: min(88vw, 1100px);
  }
  .commonWidthPc {
    width: min(88vw, 1100px);
    margin: 0 auto;
  }
  .inWidth {
    width: min(88vw, 900px);
  }
}
.bodyIn .mainContent {
  position: relative;
}

.pageTitleArea .pnkzArea {
  text-align: right;
  font-weight: 500;
}
.pageTitleArea .pnkzArea span.pnkzList {
  color: #2D2E61;
}
.pageTitleArea .pnkzArea a.pnkzList {
  color: #A2A2A2;
}
.pageTitleArea .pnkzArea .pnkzArrow {
  color: #A2A2A2;
}

.sectionTitle {
  position: relative;
}
.sectionTitle::before {
  content: "";
  background: url(../images/title_bg.svg) right center repeat-x;
  position: absolute;
}
.sectionTitle .titleEn {
  color: #2D2E61;
  border-bottom: solid 1px #2D2E61;
  font-family: "Raleway", sans-serif;
  font-weight: bold;
  line-height: 100%;
  letter-spacing: 0.07em;
  width: -moz-fit-content;
  width: fit-content;
}
.sectionTitle .titleJp {
  font-weight: bold;
  line-height: 100%;
  letter-spacing: 0.04em;
  display: flex;
  align-items: center;
}

.commonSecTitle .titleEn {
  font-weight: 800;
  color: #ffffff;
  line-height: 1;
  font-family: "Raleway", sans-serif;
  letter-spacing: -0.03em;
  white-space: nowrap;
}
.commonSecTitle .titleJp {
  color: #2D2E61;
  font-weight: bold;
  line-height: 1.6;
}

.commonBtn {
  border-radius: 100px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  height: 60px;
  padding: 0 24px;
  background: #ffffff;
}
.commonBtn .text {
  color: #2D2E61;
  font-weight: 500;
  font-size: 15px;
}
.commonBtn .icon {
  background: url(../images/btn_icon_blue.svg) center center no-repeat;
  background-size: contain;
  width: 49px;
  height: 14px;
}
.commonBtn.blue {
  background: #2D2E61;
}
.commonBtn.blue .text {
  color: #ffffff;
}
.commonBtn.blue .icon {
  background-image: url(../images/btn_icon_white.svg);
}

@media only screen and (max-width: 767px) {
  .mainContent {
    padding-bottom: 80px;
    padding-top: 60px;
  }
  .pageTitleArea {
    padding: 40px 0 32px 0;
  }
  .pageTitleArea .pnkzArea {
    -moz-column-gap: 6px;
         column-gap: 6px;
    font-size: 14px;
    padding: 16px 0 0 0;
  }
  .sectionTitle::before {
    height: 48px;
    background-size: auto 48px;
    width: calc((100vw - min(86vw, 350px)) / 2);
    left: calc((min(86vw, 350px) - 100vw) / 2 - 4px);
  }
  .sectionTitle .titleEn {
    font-size: 15px;
    padding: 0 0 2px 0;
  }
  .sectionTitle .titleJp {
    margin: 6px 0 0 0;
    font-size: 24px;
    -moz-column-gap: 8px;
         column-gap: 8px;
  }
  .commonSecTitle .titleEn {
    font-size: clamp(29px, 12.31vw, 48px);
    margin-left: -2px;
  }
  .commonSecTitle .titleJp {
    font-size: clamp(14px, 4.36vw, 17px);
    margin-top: -12px;
    letter-spacing: -0.02em;
  }
}
@media print, screen and (min-width: 768px) {
  .mainContent {
    padding-bottom: 120px;
    padding-top: 100px;
  }
  .pageTitleArea {
    padding: 90px 0 60px 0;
  }
  .pageTitleArea .pnkzArea {
    -moz-column-gap: 10px;
         column-gap: 10px;
    font-size: clamp(14px, 1.25vw, 16px);
    padding: 20px 0 0 0;
  }
  .sectionTitle::before {
    height: 83px;
    width: calc((100vw - min(88vw, 1100px)) / 2);
    left: calc((min(88vw, 1100px) - 100vw) / 2 - 15px);
  }
  .sectionTitle .titleEn {
    font-size: 16px;
    padding: 0 0 2px 0;
  }
  .sectionTitle .titleJp {
    margin: 18px 0 0 0;
    font-size: 28px;
    -moz-column-gap: 12px;
         column-gap: 12px;
  }
  .commonSecTitle .titleEn {
    font-size: clamp(60px, 7.81vw, 100px);
    margin-left: -4px;
  }
  .commonSecTitle .titleJp {
    font-size: 24px;
    margin-top: -24px;
  }
}
.secHeader {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 30;
  width: 100%;
  border-bottom: solid 1px #d7d7d7;
}
.secHeader .secHeaderIn {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #f5f5f5;
  transition: height 0.3s;
}
.secHeader .secHeaderIn .linkArea {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.secHeader .secHeaderIn .linkArea .headerLink {
  color: #000000;
  font-weight: 500;
}
.secHeader .secHeaderIn .linkArea .headerButton {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: linear-gradient(to right, #D10F16 20%, #ED1C24 100%);
  border-radius: 100px;
  font-weight: 500;
  color: #ffffff;
}
.secHeader .secHeaderIn .linkArea .headerButton .icon {
  background: url(../images/arrow_right_white.svg) center center no-repeat;
  background-size: contain;
  width: 8px;
  height: 8px;
}

@media only screen and (max-width: 767px) {
  .secHeader .secHeaderIn {
    height: 60px;
    padding: 0 12px;
  }
  .secHeader .secHeaderIn .logoArea {
    width: min(70vw, 300px);
  }
  .secHeader .secHeaderIn .linkArea {
    display: none;
  }
  .menuArea {
    position: fixed;
    height: 60px;
    aspect-ratio: 1/1;
    top: 0;
    right: 0;
    z-index: 70;
  }
  .menuArea .menuButton {
    display: block;
    background: #2D2E61;
    width: 100%;
    height: 100%;
  }
  .menuArea .menuButton span {
    display: inline-block;
    transition: transform 0.4s;
    box-sizing: border-box;
    position: absolute;
    left: calc((100% - 26px) / 2);
    width: 26px;
    height: 2px;
    background-color: #ffffff;
  }
  .menuArea .menuButton span:nth-of-type(1) {
    top: 34%;
  }
  .menuArea .menuButton span:nth-of-type(2) {
    top: calc(50% - 1px);
  }
  .menuArea .menuButton span:nth-of-type(3) {
    top: 64%;
  }
}
@media print, screen and (min-width: 768px) {
  .secHeader .secHeaderIn {
    height: 100px;
    padding: 0 30px 0 20px;
  }
  .secHeader .secHeaderIn .logoArea {
    width: min(28vw, 360px);
  }
  .secHeader .secHeaderIn .linkArea {
    -moz-column-gap: min(2.78vw, 40px);
         column-gap: min(2.78vw, 40px);
  }
  .secHeader .secHeaderIn .linkArea .headerLink {
    font-size: clamp(14px, 1.17vw, 15px);
  }
  .secHeader .secHeaderIn .linkArea .headerButton {
    width: clamp(140px, 13vw, 186px);
    aspect-ratio: 186/50;
    padding-left: min(1.66vw, 24px);
    padding-right: min(1.46vw, 21px);
  }
  .secHeader .secHeaderIn .linkArea .headerButton .text {
    font-size: clamp(14px, 1.17vw, 15px);
  }
  .secHeader.under .secHeaderIn {
    height: 68px;
  }
  .menuArea {
    display: none;
  }
}
body.navOn #menuButton span:nth-of-type(1) {
  transform: translateY(10px) rotate(-45deg);
}
body.navOn #menuButton span:nth-of-type(2) {
  opacity: 0;
}
body.navOn #menuButton span:nth-of-type(3) {
  transform: translateY(-10px) rotate(45deg);
}

.globalNavWrap {
  display: none;
}

.globalNav {
  background: #2D2E61;
  height: 100vh;
}
.globalNav .globalNavInner {
  padding: 74px 24px 32px 24px;
  margin: 0 auto;
}
.globalNav .navLinkArea {
  padding: 0px 0 40px 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: 22px;
}
.globalNav .navLinkArea .linkList {
  font-size: clamp(14px, 4.62vw, 18px);
  color: #ffffff;
  font-weight: 500;
}
.globalNav .navLinkArea .linkButton {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: linear-gradient(to right, #D10F16 20%, #ED1C24 100%);
  border-radius: 100px;
  font-weight: 500;
  color: #ffffff;
  width: 180px;
  height: 50px;
  padding: 0 20px;
}
.globalNav .navLinkArea .linkButton .icon {
  background: url(../images/arrow_right_white.svg) center center no-repeat;
  background-size: contain;
  width: 8px;
  height: 8px;
}

body.navOn .globalNavWrap {
  display: block;
}

.bottomContactArea .imgArea {
  display: flex;
  justify-content: space-between;
}
.bottomContactArea .imgArea .imgItem {
  width: 33.34%;
}
.bottomContactArea .imgArea .imgItem img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center top;
     object-position: center top;
}
.bottomContactArea .contactArea {
  position: relative;
  background: linear-gradient(to right, #D10F16 20%, #ED1C24 100%);
  border-radius: 10px;
}
.bottomContactArea .contactArea .contactIn {
  position: relative;
}
.bottomContactArea .contactArea .contactIn .imgCol {
  position: absolute;
  z-index: 0;
  bottom: 0px;
  left: 0;
}
.bottomContactArea .contactArea .contactIn .textCol {
  color: #ffffff;
}
.bottomContactArea .contactArea .contactIn .textCol .titleRow {
  display: flex;
  align-items: center;
}
.bottomContactArea .contactArea .contactIn .textCol .titleRow .title {
  font-family: "Raleway", sans-serif;
  font-weight: bold;
  line-height: 100%;
  letter-spacing: 0.07em;
}
.bottomContactArea .contactArea .contactIn .textCol .captionRow {
  line-height: 200%;
  font-weight: 500;
}
@media only screen and (max-width: 767px) {
  .bottomContactArea .imgArea .imgItem {
    height: 100px;
  }
  .bottomContactArea .contactArea {
    margin-top: -20px;
  }
  .bottomContactArea .contactArea .contactIn {
    padding: 16px 12px 16px 60px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    row-gap: 24px;
  }
  .bottomContactArea .contactArea .contactIn .imgCol {
    left: -12px;
    width: 66px;
  }
  .bottomContactArea .contactArea .contactIn .textCol {
    width: 100%;
  }
  .bottomContactArea .contactArea .contactIn .textCol .titleRow {
    -moz-column-gap: 6px;
         column-gap: 6px;
  }
  .bottomContactArea .contactArea .contactIn .textCol .titleRow .title {
    font-size: clamp(18px, 7.69vw, 30px);
  }
  .bottomContactArea .contactArea .contactIn .textCol .titleRow .icon {
    width: min(25%, 60px);
  }
  .bottomContactArea .contactArea .contactIn .textCol .captionRow {
    padding: 8px 0 0 0;
    line-height: 160%;
    font-size: 14px;
  }
  .bottomContactArea .contactArea .contactIn .btnCol {
    width: min(100%, 240px);
  }
  .bottomContactArea .contactArea .contactIn .btnCol .commonBtn .text {
    font-size: 13px;
  }
  .bottomContactArea .contactArea .contactIn .btnCol .commonBtn .icon {
    width: min(40px, 20%, 50px);
  }
}
@media print, screen and (min-width: 768px) {
  .bottomContactArea .imgArea .imgItem {
    height: min(28vw, 400px);
  }
  .bottomContactArea .contactArea {
    margin-top: max(-10.42vw, -150px);
  }
  .bottomContactArea .contactArea .contactIn {
    padding: min(5.42vw, 78px) 10.9% min(5.6vw, 80px) 17.46%;
    display: flex;
    justify-content: space-around;
    align-items: center;
    flex-wrap: wrap;
    row-gap: 24px;
  }
  .bottomContactArea .contactArea .contactIn .imgCol {
    left: 5.9%;
    width: 10.9%;
  }
  .bottomContactArea .contactArea .contactIn .textCol {
    width: clamp(350px, 53%, 410px);
  }
  .bottomContactArea .contactArea .contactIn .textCol .titleRow {
    -moz-column-gap: min(1.39vw, 20px);
         column-gap: min(1.39vw, 20px);
  }
  .bottomContactArea .contactArea .contactIn .textCol .titleRow .title {
    font-size: clamp(36px, 4.69vw, 60px);
  }
  .bottomContactArea .contactArea .contactIn .textCol .captionRow {
    padding: 22px 0 0 0;
    font-size: clamp(14px, 1.17vw, 15px);
  }
  .bottomContactArea .contactArea .contactIn .btnCol {
    width: 272px;
  }
}
.secFooter .secFooterIn .infoCol {
  font-weight: 500;
}
.secFooter .secFooterIn .linkCol {
  display: flex;
  flex-wrap: wrap;
}
.secFooter .secFooterIn .linkCol .linkItem {
  color: #000000;
  font-weight: bold;
}

@media only screen and (max-width: 767px) {
  .secFooter {
    padding: 40px 0 60px 0;
  }
  .secFooter .secFooterIn {
    display: flex;
    flex-direction: column;
    font-size: 14px;
    row-gap: 32px;
  }
  .secFooter .secFooterIn .infoCol .logo {
    width: min(75%, 280px);
    padding: 0 0 16px 0;
  }
  .secFooter .secFooterIn .infoCol .zip {
    padding: 0 0 4px 0;
  }
  .secFooter .secFooterIn .infoCol .address {
    padding: 0 0 4px 0;
  }
  .secFooter .secFooterIn .linkCol {
    row-gap: 20px;
  }
  .secFooter .secFooterIn .linkCol .linkItem {
    width: 50%;
  }
}
@media print, screen and (min-width: 768px) {
  .secFooter {
    padding: 60px 0 58px 0;
  }
  .secFooter .secFooterIn {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    font-size: clamp(14px, 1.17vw, 15px);
  }
  .secFooter .secFooterIn .infoCol {
    width: 40%;
  }
  .secFooter .secFooterIn .infoCol .logo {
    padding: 0 0 20px 0;
  }
  .secFooter .secFooterIn .infoCol .zip {
    padding: 0 0 6px 0;
  }
  .secFooter .secFooterIn .infoCol .address {
    padding: 0 0 6px 0;
  }
  .secFooter .secFooterIn .linkCol {
    width: 60%;
    -moz-column-gap: min(2.78vw, 40px);
         column-gap: min(2.78vw, 40px);
    row-gap: 20px;
    justify-content: flex-end;
  }
}/*# sourceMappingURL=common.css.map */