/*
@include max-pc() {

}
@include mobile-tablet() {

}
@include sp-tablet() {

}
*/
:root {
  --font-eu: "Be Vietnam Pro", sans-serif;
  --font-title: "Montserrat", sans-serif;
  --font-ja: "Noto Sans JP", sans-serif;
  --font-numbers: "Jost", sans-serif;
  --font-color-base: #333333;
  --font-color-deep-blue: #0D2F62;
  --font-color-black: #000000;
  --font-color-soft-blue: #C8D5DF;
  --font-color-gray: #878C9E;
  --font-color-dark: #27272A;
  --font-color-white: #fff;
  --font-color-footer: #6C6F71;
  --font-color-accent-blue: #2F8ACB;
  --font-color-accent-red: #CB2F2F;
  --bg-base: #F0F2F4;
  --bg-main: #A9BCD5;
  --bg-accent-light: #DCEBF7;
  --bg-accent: #227BB6;
  --bg-gray: #878C9E;
  --bg-gray-blue: #D6DAE5;
  --bg-gray-dark: #888D9F;
  --bg-gray-blue-dark: #8A90A2;
  --bg-white: #fff;
  --bg-black: #27272A;
  --bg-sub-purple: #ABAFBB;
  --bg-sub-blue: #AABDD6;
  --bg-deep-blue: #0D2F62;
  --bg-light-blue: #B4C7DE;
  --bg-gray-blue-deep: #8B91A3;
  --border-sub-blue: #AABDD6;
  --border-sub-purple: #ABAFBB;
  --border-white: #fff;
  --border-black: #000;
  --border-soft-blue: #C8D5DF;
  --border-gray: #878C9E;
  --border-light-blue: #B2C5DB;
  --border-gray-blue-dark: #8A90A2;
  --border-accent-blue: #227BB6;
}

html {
  scroll-behavior: smooth;
}

body {
  background-color: #F0F2F4;
}

.header__container {
  --max-width: 1200px;
  max-width: var(--max-width);
  margin: 0 auto;
  align-items: center;
}
@media (max-width: 1240px) {
  .header__container {
    --max-width: 960px;
  }
}
@media (max-width: 1024px) {
  .header__container {
    --max-width: 780px;
  }
}
@media (max-width: 768px) {
  .header__container {
    --max-width: 84%;
  }
}
.header__breadcrumb-width {
  max-width: var(--max--width);
  margin: 0 auto;
  align-items: center;
  padding-top: 0.5rem;
}
@media (max-width: 768px) {
  .header__breadcrumb-width {
    --max--width: 84%;
  }
}
.header__breadcrumb-list {
  color: var(--font-color-dark);
  font-family: var(--font-ja);
  list-style: none;
  padding: 0;
}
.header__breadcrumb-list li {
  display: inline;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1em;
  font-family: var(--font-eu);
  margin-right: 0.25rem;
}
.header__breadcrumb-list li a {
  text-decoration: none;
  color: var(--font-color-gray);
}
.header__breadcrumb-list li:last-child {
  font-weight: 400;
  font-family: var(--font-ja);
}
.header__breadcrumb-list li + li::before {
  content: ">";
  margin-right: 0.5rem;
}
.header__breadcrumb--pc {
  height: 1.1875rem;
}
@media (max-width: 768px) {
  .header__breadcrumb--pc {
    display: none;
  }
}
.header__breadcrumb--pc .header__breadcrumb-list {
  margin: -8px 0 0 0;
}
.header__breadcrumb--pc .header__breadcrumb-list li {
  font-size: 0.9375rem;
  margin-right: 0.25rem;
}
.header__breadcrumb--sp {
  display: none;
}
@media (max-width: 768px) {
  .header__breadcrumb--sp {
    display: block;
  }
}
.header__hero {
  position: relative;
  z-index: 9;
  margin-top: -4rem;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
@media (max-width: 768px) {
  .header__hero {
    margin-top: -5.5rem;
  }
}
.header__hero-title {
  color: var(--font-color-dark);
  font-family: var(--font-title);
}
.header__hero-title span {
  display: inline;
  line-height: 1rem;
}
.header__hero-title-main {
  font-size: 5rem;
  font-weight: 500;
  font-family: var(--font-title);
  margin: 0;
  vertical-align: baseline;
}
@media (max-width: 1024px) {
  .header__hero-title-main {
    font-size: 4.5rem;
  }
}
@media (max-width: 768px) {
  .header__hero-title-main {
    font-size: clamp(2.5rem, 10.5vw, 5rem);
  }
}
.header__hero-title-sub {
  font-size: 1rem;
  font-weight: 400;
  font-family: var(--font-ja);
  margin-left: 2rem;
}
@media (max-width: 1024px) {
  .header__hero-title-sub {
    margin-left: 1rem;
  }
}
@media (max-width: 768px) {
  .header__hero-title-sub {
    margin-left: 0;
  }
}
.header__hero-title br {
  display: none;
}
@media (max-width: 768px) {
  .header__hero-title br {
    display: block;
  }
}