/*============================
header
=============================*/
#header .h_nav {
    width: auto !important;
}
#header .h_nav .h_btn {
    width: 225px !important;
}
#header .h_nav .caption {
    font-size: 10px;
    font-weight: 700;
}
@media only screen and (max-width: 768px) {
    #header .head_m .h_nav {
        width: auto !important;
        padding-right: 40px;
    }
    #header .head_m .h_nav .menu_iconsp {
        height: 50px;
    }
}


/*============================
common
=============================*/
:root {
  --viewport: 750;
}
html {
  scroll-behavior: smooth;
}
ol,
ul {
  list-style: none;
}
ol:after,
ul:after {
  display: none;
}
.is-ib-pc {
  display: inline-block;
}
@media screen and (max-width: 768px){
  .is-ib-pc {
    display: none;
  }
}
.is-pc {
  display: block;
}
@media screen and (max-width: 768px){
  .is-pc {
    display: none;
  }
}
.is-gr-pc {
  display: grid;
}
@media screen and (max-width: 768px){
  .is-gr-pc {
    display: none;
  }
}
.is-fl-pc {
  display: flex;
}
@media screen and (max-width: 768px){
  .is-fl-pc {
    display: none;
  }
}
.is-sp {
  display: none;
}
@media screen and (max-width: 768px){
  .is-sp {
    display: block;
  }
}
.is-gr-sp {
  display: none;
}
@media screen and (max-width: 768px){
  .is-gr-sp {
    display: grid;
  }
}
@media screen and (max-width: 768px) {
  #wrapper {
    padding-bottom: calc(100vw / var(--viewport) * 106);
  }
}
#content {
  margin-bottom: 140px;
}
@media screen and (max-width: 768px){
  #content {
    margin-bottom: 0;
  }
}
#content .inner {
  width: 1140px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}
@media screen and (max-width: 768px){
  #content .inner {
    width: 100%;
    padding-left: calc(100vw / var(--viewport) * 40);
    padding-right: calc(100vw / var(--viewport) * 40);
  }
}
.cta {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 39px;
  margin-bottom: 85px;
}
@media screen and (max-width: 768px) {
  .cta {
    margin-top: calc(100vw / var(--viewport) * 40);
    margin-bottom: calc(100vw / var(--viewport) * 60);
  }
}
.flow + .cta {
  margin-top: 79px;
  margin-bottom: 137px;
}
@media screen and (max-width: 768px) {
  .flow + .cta {
    margin-top: calc(100vw / var(--viewport) * 55);
    margin-bottom: 0;
  }
}
.cta_lead {
  text-align: center;
  line-height: calc(61 / 42);
  font-size: 42px;
  font-weight: 700;
  color: #3E74CB;
}
@media screen and (max-width: 768px) {
  .cta_lead {
    font-size: calc(100vw / var(--viewport) * 42);
  }
}
.cta_lead:not(:last-child) {
  margin-bottom: 17px;
}
@media screen and (max-width: 768px) {
  .cta_lead:not(:last-child) {
    margin-bottom: calc(100vw / var(--viewport) * 17);
  }
}
.cta_button {
  position: relative;
  background: #3E74CB;
  border-radius: 20px;
  padding: 13px;
  width: 739px;
  text-align: center;
  line-height: calc(55 / 38);
  font-size: 38px;
  font-weight: 600;
  color: #FFF !important;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .cta_button {
    border-radius: calc(100vw / var(--viewport) * 20);
    padding: calc(100vw / var(--viewport) * 14);
    width: calc(100vw / var(--viewport) * 670);
    line-height: calc(51 / 36);
    font-size: calc(100vw / var(--viewport) * 36);
  }
}
.cta_button:not(:last-child) {
  margin-bottom: 22px;
}
@media screen and (max-width: 768px) {
  .cta_button:not(:last-child) {
    margin-bottom: calc(100vw / var(--viewport) * 22);
  }
}
.cta_button::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 40px;
  transform: translateY(-50%);
  background: url(/operation/aga/monitor/assets/img/button_arrow.svg) center/cover no-repeat;
  width: 47.74px;
  height: 10.11px;
}
@media screen and (max-width: 768px) {
  .cta_button::after {
    right: calc(100vw / var(--viewport) * 40);
    width: calc(100vw / var(--viewport) * 47.74);
    height: calc(100vw / var(--viewport) * 10.11);
  }
}
.cta_button .discount {
  display: block;
  margin-bottom: -9px;
  text-align: center;
  line-height: calc(47 / 30);
  font-size: 30px;
}
@media screen and (max-width: 768px) {
  .cta_button .discount {
    margin-bottom: calc(100vw / var(--viewport) * -4);
    line-height: calc(44 / 30);
    font-size: calc(100vw / var(--viewport) * 30);
  }
}
.cta_text {
  text-align: center;
  line-height: calc(40 / 28);
  font-size: 28px;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .cta_text {
    line-height: calc(53 / 32);
    font-size: calc(100vw / var(--viewport) * 32);
  }
}
.cta_link {
  color: #3E74CB !important;
  text-decoration: underline;
}
.fixed_cta_button {
  display: none;
}
@media screen and (max-width: 768px) {
  .fixed_cta_button {
    position: fixed;
    z-index: 1;
    bottom: 0;
    left: 0;
    display: block;
    background: #0077E1;
    padding: calc(100vw / var(--viewport) * 26);
    width: 100vw;
    text-align: center;
    line-height: calc(54 / 36);
    font-size: calc(100vw / var(--viewport) * 36);
    font-weight: 700;
    color: #FFF !important;
  }
}
@media screen and (max-width: 768px) {
  .contact_box {
    display: none;
  }
}


/*============================
main_visual
=============================*/
.main_visual {
  background: #00C0AF !important;
}
.main_visual_image {
  margin-left: auto;
  margin-right: auto;
  max-width: 1200px;
}


/*============================
introduction
=============================*/
.introduction {
  background: #000;
}
.introduction_container {
  position: relative;
}
.introduction_content {
  position: absolute;
  top: 48px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 18px;
}
@media screen and (max-width: 768px) {
  .introduction_content {
    top: calc(100vw / var(--viewport) * 50);
    gap: calc(100vw / var(--viewport) * 43);
  }
}
.introduction_title {
  width: 490.12px;
}
@media screen and (max-width: 768px) {
  .introduction_title {
    width: calc(100vw / var(--viewport) * 670);
  }
}
.introduction_list {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 32px;
}
@media screen and (max-width: 768px) {
  .introduction_list {
    flex-wrap: wrap;
    gap: calc(100vw / var(--viewport) * 14) calc(100vw / var(--viewport) * 47);
  }
}
.introduction_item {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #BBA171;
  border-radius: 50%;
  width: 124px;
  height: 124px;
  text-align: center;
  line-height: calc(24 / 18);
  font-size: 18px;
  font-weight: 600;
}
@media screen and (max-width: 768px) {
  .introduction_item {
    width: calc(100vw / var(--viewport) * 184);
    height: calc(100vw / var(--viewport) * 184);
    line-height: calc(35 / 26);
    font-size: calc(100vw / var(--viewport) * 26);
  }
}
@media screen and (max-width: 768px) {
  .introduction_image {
    margin-left: calc(100vw / var(--viewport) * -40);
    margin-right: calc(100vw / var(--viewport) * -40);
  }
}


/*============================
youtube
=============================*/
.youtube {
  background: #000;
  padding-top: 85px;
  padding-bottom: 90px;
  color: #FFF;
}
@media screen and (max-width: 768px) {
  .youtube {
    padding-top: calc(100vw / var(--viewport) * 65);
    padding-bottom: calc(100vw / var(--viewport) * 70);
  }
}
.youtube_title {
  text-align: center;
  line-height: calc(50 / 48);
  font-size: 48px;
  font-weight: 300;
  color: #BBA171;
}
@media screen and (max-width: 768px){
  .youtube_title {
    margin-left: calc(100vw / var(--viewport) * -5);
    margin-right: calc(100vw / var(--viewport) * -5);
    line-height: calc(62 / 60);
    font-size: calc(100vw / var(--viewport) * 60);
  }
}
.youtube_title:not(:last-child) {
  margin-bottom: 40px;
}
@media screen and (max-width: 768px){
  .youtube_title:not(:last-child) {
    margin-bottom: calc(100vw / var(--viewport) * 25);
  }
}
.youtube_title strong {
  font-weight: 700;
}
.youtube_text {
  line-height: calc(38 / 22);
  font-size: 22px;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px){
  .youtube_text {
    line-height: calc(42 / 24);
    font-size: calc(100vw / var(--viewport) * 24);
    letter-spacing: 0;
  }
}
.youtube_text:not(:last-child) {
  margin-bottom: 48px;
}
@media screen and (max-width: 768px){
  .youtube_text:not(:last-child) {
    margin-bottom: calc(100vw / var(--viewport) * 26);
  }
}
.youtube_banner {
  display: block;
}


/*============================
anchor
=============================*/
.anchor {
  padding-top: 90px;
  padding-bottom: 90px;
}
@media screen and (max-width: 768px) {
  .anchor {
    padding-top: calc(100vw / var(--viewport) * 70);
    padding-bottom: calc(100vw / var(--viewport) * 70);
  }
}
.anchor_list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}
@media screen and (max-width: 768px) {
  .anchor_list {
    grid-template-columns: repeat(2, 1fr);
    gap: calc(100vw / var(--viewport) * 19) calc(100vw / var(--viewport) * 20);
  }
}
.anchor_link {
  display: block;
  background: #3C3A39;
  padding-top: 17px;
  padding-bottom: 17px;
  text-align: center;
  line-height: calc(36 / 24);
  font-size: 24px;
  font-weight: 600;
  color: #FFF !important;
}
@media screen and (max-width: 768px) {
  .anchor_link {
    padding-top: calc(100vw / var(--viewport) * 34.5);
    padding-bottom: calc(100vw / var(--viewport) * 34.5);
    line-height: calc(41 / 27);
    font-size: calc(100vw / var(--viewport) * 27);
  }
}

/*============================
case
=============================*/
.case {
  background: #3C3A39;
  padding-top: 75px;
  padding-bottom: 87px;
  color: #FFF;
}
@media screen and (max-width: 768px) {
  .case {
    padding-top: calc(100vw / var(--viewport) * 65);
    padding-bottom: calc(100vw / var(--viewport) * 66);
  }
}
.case_title {
  text-align: center;
  line-height: calc(76 / 53);
  font-size: 53px;
  font-weight: 700;
  color: #BBA171;
}
@media screen and (max-width: 768px) {
  .case_title {
    line-height: calc(58 / 40);
    font-size: calc(100vw / var(--viewport) * 40);
  }
}
.case_title:not(:last-child) {
  margin-bottom: 47px;
}
@media screen and (max-width: 768px) {
  .case_title:not(:last-child) {
    margin-bottom: calc(100vw / var(--viewport) * 35);
  }
}
.case_comparison {
  display: grid;
  grid-template-columns: 1fr;
  gap: 25px;
  background: #FFF;
  padding: 37px 100px 101px;
}
@media screen and (max-width: 768px) {
  .case_comparison {
    gap: calc(100vw / var(--viewport) * 21);
    margin-left: calc(100vw / var(--viewport) * -40);
    margin-right: calc(100vw / var(--viewport) * -40);
    padding: calc(100vw / var(--viewport) * 27) calc(100vw / var(--viewport) * 40) calc(100vw / var(--viewport) * 61);
  }
}
.case_comparison:not(:last-child) {
  margin-bottom: 15px;
}
@media screen and (max-width: 768px) {
  .case_comparison:not(:last-child) {
    margin-bottom: calc(100vw / var(--viewport) * 26);
  }
}
.case_list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
.case_item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 25px;
}
@media screen and (max-width: 768px) {
  .case_item {
    gap: calc(100vw / var(--viewport) * 18);
  }
}
.case_label {
  text-align: center;
  line-height: calc(58 / 40);
  font-size: 40px;
  font-weight: 700;
  color: #000;
}
@media screen and (max-width: 768px) {
  .case_label {
    line-height: calc(46 / 32);
    font-size: calc(100vw / var(--viewport) * 32);
  }
}
.case_label_after {
  color: #BBA171;
}
.case_text {
  line-height: calc(24 / 13);
  font-size: 13px;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .case_text {
    line-height: calc(34 / 20);
    font-size: calc(100vw / var(--viewport) * 20);
  }
}
.case_text_bk {
    line-height: calc(24 / 13);
    font-size: 13px;
    letter-spacing: 0.1em;
    color: #000;
}
.ba_title {
    text-align: center;
    line-height: calc(61 / 42);
    font-size: 42px;
    font-weight: 700;
    color: #FFF;
}
.ba_title:not(:last-child) {
    margin: 40px 0;
}

@media screen and (max-width: 768px) {
    .case_text_bk {
        line-height: calc(34 / 20);
        font-size: calc(100vw / var(--viewport)* 20);
        color: #000;
    }
    .ba_title {
        line-height: calc(55 / 38);
        font-size: calc(100vw / var(--viewport)* 34);
    }
    .ba_title:not(:last-child) {
        margin-bottom: calc(100vw / var(--viewport)* 31);
    }
}


/*============================
folix
=============================*/
.folix {
  padding-top: 90px;
}
@media screen and (max-width: 768px){
  .folix {
    padding-top: calc(100vw / var(--viewport) * 70);
  }
}
.folix_banner {
  display: block;
}


/*============================
about
=============================*/
.about {
  padding-top: 72px;
  padding-bottom: 85px;
}
@media screen and (max-width: 768px){
  .about {
    padding-top: calc(100vw / var(--viewport) * 55);
    padding-bottom: calc(100vw / var(--viewport) * 62);
  }
}
.about_title {
  text-align: center;
  line-height: calc(76 / 53);
  font-size: 53px;
  font-weight: 700;
}
@media screen and (max-width: 768px){
  .about_title {
    line-height: calc(58 / 40);
    font-size: calc(100vw / var(--viewport) * 40);
  }
}
.about_title:not(:last-child) {
  margin-bottom: 32px;
}
@media screen and (max-width: 768px){
  .about_title:not(:last-child) {
    margin-bottom: calc(100vw / var(--viewport) * 24);
  }
}
.about_text {
  line-height: calc(38 / 22);
  font-size: 22px;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px){
  .about_text {
    line-height: calc(42 / 24);
    font-size: calc(100vw / var(--viewport) * 24);
    letter-spacing: 0;
  }
}


/*============================
privacy
=============================*/
.privacy {
  background: #3C3A39;
  padding-top: 78px;
  padding-bottom: 86px;
  color: #FFF;
}
@media screen and (max-width: 768px){
  .privacy {
    padding-top: calc(100vw / var(--viewport) * 60);
    padding-bottom: calc(100vw / var(--viewport) * 60);
  }
}
.privacy_title {
  text-align: center;
  line-height: calc(61 / 42);
  font-size: 42px;
  font-weight: 700;
  color: #FFF;
}
@media screen and (max-width: 768px){
  .privacy_title {
    line-height: calc(55 / 38);
    font-size: calc(100vw / var(--viewport) * 38);
  }
}
.privacy_title:not(:last-child) {
  margin-bottom: 40px;
}
@media screen and (max-width: 768px){
  .privacy_title:not(:last-child) {
    margin-bottom: calc(100vw / var(--viewport) * 31);
  }
}
.privacy_title strong {
  line-height: calc(76 / 53);
  font-size: 53px;
  color: #BBA171;
}
@media screen and (max-width: 768px){
  .privacy_title strong {
    line-height: calc(72 / 50);
    font-size: calc(100vw / var(--viewport) * 50);
  }
}
.privacy_contents {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 40px;
}
@media screen and (max-width: 768px) {
  .privacy_contents {
    gap: calc(100vw / var(--viewport) * 40);
  }
}
.privacy_contents:not(:last-child) {
  margin-bottom: 22px;
}
@media screen and (max-width: 768px) {
  .privacy_contents:not(:last-child) {
    margin-bottom: calc(100vw / var(--viewport) * 24);
  }
}
.privacy_content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 51px;
  background: #FFF;
  padding: 31px 111px 93px;
  width: 530px;
  color: #000;
}
@media screen and (max-width: 768px) {
  .privacy_content {
    gap: calc(100vw / var(--viewport) * 22);
    padding: calc(100vw / var(--viewport) * 17) calc(100vw / var(--viewport) * 40) calc(100vw / var(--viewport) * 29);
    width: calc(100vw / var(--viewport) * 315);
  }
}
.privacy_content_full {
  gap: 25px;
  padding: 31px 71px 62px;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .privacy_content_full {
    gap: calc(100vw / var(--viewport) * 35);
    padding: calc(100vw / var(--viewport) * 30) calc(100vw / var(--viewport) * 40) calc(100vw / var(--viewport) * 41);
  }
}
.privacy_subtitle {
  text-align: center;
  line-height: calc(46 / 32);
  font-size: 32px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .privacy_subtitle {
    line-height: calc(37 / 26);
    font-size: calc(100vw / var(--viewport) * 26);
  }
}
@media screen and (max-width: 768px) {
  .privacy_content_full .privacy_subtitle {
    line-height: calc(46 / 32);
    font-size: calc(100vw / var(--viewport) * 32);
  }
}
.privacy_image {
  width: 308px;
}
@media screen and (max-width: 768px) {
  .privacy_image {
    width: calc(100vw / var(--viewport) * 210);
  }
}
.privacy_content_full .privacy_image {
  width: 958px;
}
@media screen and (max-width: 768px) {
  .privacy_content_full .privacy_image {
    width: calc(100vw / var(--viewport) * 590);
  }
}
.privacy_text {
  line-height: calc(38 / 22);
  font-size: 22px;
  font-weight: 600;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .privacy_text {
    line-height: calc(42 / 24);
    font-size: calc(100vw / var(--viewport) * 24);
  }
}


/*============================
price
=============================*/
.price {
  padding-top: 77px;
}
@media screen and (max-width: 768px){
  .price {
    padding-top: calc(100vw / var(--viewport) * 57);
  }
}
.price_title {
  text-align: center;
  line-height: calc(61 / 42);
  font-size: 42px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .price_title {
    line-height: calc(61 / 42);
    font-size: calc(100vw / var(--viewport) * 42);
  }
}
.price_title:not(:last-child) {
  margin-bottom: 5px;
}
@media screen and (max-width: 768px) {
  .price_title:not(:last-child) {
    margin-bottom: calc(100vw / var(--viewport) * 5);
  }
}
.price_eyebrow {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 5px;
}
@media screen and (max-width: 768px) {
  .price_eyebrow {
    gap: calc(100vw / var(--viewport) * 5);
  }
}
.price_eyebrow strong {
  transform: skewX(-10deg);
  line-height: 1;
  font-family: "din-2014", sans-serif;
  font-size: 110px;
  font-weight: 700;
  color: #BBA171;
}
@media screen and (max-width: 768px) {
  .price_eyebrow strong {
    font-size: calc(100vw / var(--viewport) * 110);
  }
}
.price_eyebrow .off {
  width: 184px;
}
@media screen and (max-width: 768px) {
  .price_eyebrow .off {
    width: calc(100vw / var(--viewport) * 184);
  }
}
.price_lead {
  text-align: center;
  line-height: calc(61 / 42);
  font-size: 42px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .price_lead {
    line-height: calc(56 / 42);
    font-size: calc(100vw / var(--viewport) * 42);
  }
}
.price_lead:not(:last-child) {
  margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
  .price_lead:not(:last-child) {
    margin-bottom: calc(100vw / var(--viewport) * 20);
  }
}
.price_name {
  margin-left: auto;
  margin-right: auto;
  width: 604.2px;
}
@media screen and (max-width: 768px) {
  .price_name {
    width: calc(100vw / var(--viewport) * 604.2);
  }
}
.price_name:not(:last-child) {
  margin-bottom: 50px;
}
@media screen and (max-width: 768px) {
  .price_name:not(:last-child) {
    margin-bottom: calc(100vw / var(--viewport) * 30);
  }
}
.price_image:not(:last-child) {
  margin-bottom: 35px;
}
@media screen and (max-width: 768px) {
  .price_image:not(:last-child) {
    margin-bottom: calc(100vw / var(--viewport) * 25);
  }
}
.price_price {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 11px;
}
@media screen and (max-width: 768px) {
  .price_price {
    gap: calc(100vw / var(--viewport) * 12);
  }
}
.price_price:not(:last-child) {
  margin-bottom: 10px;
  padding-bottom: 15px;
  border-bottom: 1px solid #000;
}
@media screen and (max-width: 768px) {
  .price_price:not(:last-child) {
    margin-bottom: calc(100vw / var(--viewport) * 10);
    padding-bottom: calc(100vw / var(--viewport) * 10);
  }
}
.price_price_label {
  line-height: calc(61 / 42);
  font-size: 42px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .price_price_label {
    line-height: calc(58 / 40);
    font-size: calc(100vw / var(--viewport) * 40);
  }
}
.price_price_count {
  background: #000;
  border-radius: 4px;
  padding: 1.5px 8px;
  line-height: calc(35 / 24);
  font-size: 24px;
  font-weight: 700;
  color: #FFF;
}
@media screen and (max-width: 768px) {
  .price_price_count {
    border-radius: calc(100vw / var(--viewport) * 4);
    padding: calc(100vw / var(--viewport) * 1) calc(100vw / var(--viewport) * 8);
    line-height: calc(34 / 23);
    font-size: calc(100vw / var(--viewport) * 23);
  }
}
.price_price_price {
  display: flex;
  align-items: center;
}
.price_price_price strong {
  line-height: 1;
  font-family: "din-2014", sans-serif;
  font-size: 102px;
  font-weight: 600;
  color: #3E74CB;
}
@media screen and (max-width: 768px) {
  .price_price_price strong {
    font-size: calc(100vw / var(--viewport) * 98);
  }
}
.price_price_price .tax {
  line-height: calc(35 / 26);
  font-size: 26px;
  color: #3E74CB;
  writing-mode: vertical-rl;
}
@media screen and (max-width: 768px) {
  .price_price_price .tax {
    line-height: calc(35 / 26);
    font-size: calc(100vw / var(--viewport) * 26);
  }
}
.price_discount {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 5px;
}
@media screen and (max-width: 768px) {
  .price_discount {
    gap: calc(100vw / var(--viewport) * 5);
  }
}
.price_discount_label {
  line-height: calc(58 / 40);
  font-size: 40px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .price_discount_label {
    line-height: calc(58 / 40);
    font-size: calc(100vw / var(--viewport) * 40);
  }
}
.price_discount_price {
  display: flex;
  align-items: center;
}
.price_discount_price strong {
  line-height: 1;
  font-family: "din-2014", sans-serif;
  font-size: 77px;
  font-weight: 600;
  color: #A00000;
}
@media screen and (max-width: 768px) {
  .price_discount_price strong {
    font-size: calc(100vw / var(--viewport) * 77);
  }
}
.price_discount_price .tax {
  line-height: calc(30 / 21);
  font-size: 21px;
  color: #A00000;
  writing-mode: vertical-rl;
}
@media screen and (max-width: 768px) {
  .price_discount_price .tax {
    line-height: calc(30 / 21);
    font-size: calc(100vw / var(--viewport) * 21);
  }
}
.price_discount_discount {
  line-height: calc(58 / 40);
  font-size: 40px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .price_discount_discount {
    line-height: calc(58 / 40);
    font-size: calc(100vw / var(--viewport) * 40);
  }
}


/*============================
conditions
=============================*/
.conditions {
  background: #3C3A39;
  padding-top: 78px;
  padding-bottom: 80px;
  color: #FFF;
}
@media screen and (max-width: 768px){
  .conditions {
    padding-top: calc(100vw / var(--viewport) * 60);
    padding-bottom: calc(100vw / var(--viewport) * 69);
  }
}
.conditions_title {
  text-align: center;
  line-height: calc(61 / 42);
  font-size: 42px;
  font-weight: 700;
  color: #FFF;
}
@media screen and (max-width: 768px){
  .conditions_title {
    line-height: calc(55 / 38);
    font-size: calc(100vw / var(--viewport) * 38);
  }
}
.conditions_title:not(:last-child) {
  margin-bottom: 40px;
}
@media screen and (max-width: 768px){
  .conditions_title:not(:last-child) {
    margin-bottom: calc(100vw / var(--viewport) * 31);
  }
}
.conditions_title strong {
  line-height: calc(76 / 53);
  font-size: 53px;
  color: #BBA171;
}
@media screen and (max-width: 768px){
  .conditions_title strong {
    line-height: calc(72 / 50);
    font-size: calc(100vw / var(--viewport) * 50);
  }
}
.conditions_point {
  background: #FFF;
  padding: 32px 100px 68px;
  color: #000;
}
@media screen and (max-width: 768px) {
  .conditions_point {
    padding: calc(100vw / var(--viewport) * 30) calc(100vw / var(--viewport) * 40) calc(100vw / var(--viewport) * 48);
  }
}
.conditions_point_title {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 7px;
  line-height: calc(73 / 44);
  font-size: 44px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .conditions_point_title {
    gap: 0;
    font-size: calc(100vw / var(--viewport) * 44);
  }
}
.conditions_point_title:not(:last-child) {
  margin-bottom: 33px;
}
@media screen and (max-width: 768px) {
  .conditions_point_title:not(:last-child) {
    margin-bottom: calc(100vw / var(--viewport) * 30);
  }
}
.conditions_point_title .point {
  display: flex;
  justify-content: center;
  align-items: baseline;
  gap: 8px;
  line-height: calc(66 / 52);
  font-size: 52px;
  font-weight: 600;
  color: #BBA170;
}
@media screen and (max-width: 768px) {
  .conditions_point_title .point {
    font-size: calc(100vw / var(--viewport) * 52);
  }
}
.conditions_point_title .number {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 3px;
  line-height: 1;
  font-size: 74px;
}
@media screen and (max-width: 768px) {
  .conditions_point_title .number {
    gap: calc(100vw / var(--viewport) * 3);
    font-size: calc(100vw / var(--viewport) * 74);
  }
}
.conditions_point_title .to {
  line-height: calc(74 / 60);
  font-size: 60px;
}
@media screen and (max-width: 768px) {
  .conditions_point_title .to {
    line-height: calc(74 / 50);
    font-size: calc(100vw / var(--viewport) * 50);
  }
}
.conditions_list {
  display: flex;
  justify-content: space-between;
  gap: 16px;
}
@media screen and (max-width: 768px) {
  .conditions_list {
    flex-wrap: wrap;
    gap: calc(100vw / var(--viewport) * 15) calc(100vw / var(--viewport) * 16);
  }
}
.conditions_item {
  display: flex;
  flex-direction: column;
  align-items: center;
  background: #EFEFEF;
  width: calc((100% - 16px * 2) / 3);
}
@media screen and (max-width: 768px) {
  .conditions_item {
    width: calc(100vw / var(--viewport) * 287);
  }
}
@media screen and (max-width: 768px) {
  .conditions_item:nth-child(3) {
    width: 100%;
  }
}
.conditions_item:not(:last-child) {
  margin-bottom: 15px;
}
@media screen and (max-width: 768px) {
  .conditions_item:not(:last-child) {
    margin-bottom: 0;
  }
}
.conditions_label {
  display: flex;
  flex-direction: column;
  align-items: center;
  background: #3C3A39;
  width: 100%;
  padding: 26px;
  line-height: calc(57 / 34);
  font-size: 34px;
  font-weight: 700;
  color: #FFF;
}
@media screen and (max-width: 768px) {
  .conditions_label {
    gap: 0;
    padding: calc(100vw / var(--viewport) * 20);
    font-size: calc(100vw / var(--viewport) * 34);
  }
}
.conditions_label .point {
  display: flex;
  justify-content: center;
  align-items: baseline;
  gap: 3px;
  line-height: calc(37 / 29);
  font-size: 29px;
  font-weight: 600;
  color: #BBA170;
}
@media screen and (max-width: 768px) {
  .conditions_label .point {
    gap: calc(100vw / var(--viewport) * 3);
    font-size: calc(100vw / var(--viewport) * 29);
  }
}
.conditions_label .number {
  line-height: 1;
  font-size: 39px;
}
@media screen and (max-width: 768px) {
  .conditions_label .number {
    font-size: calc(100vw / var(--viewport) * 39);
  }
}
.conditions_detail {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 31px 14px 20px;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .conditions_detail {
    gap: calc(100vw / var(--viewport) * 8);
    padding: calc(100vw / var(--viewport) * 33) calc(100vw / var(--viewport) * 14) calc(100vw / var(--viewport) * 32);
  }
}
@media screen and (max-width: 768px) {
  .conditions_item:nth-child(3) .conditions_detail {
    padding: calc(100vw / var(--viewport) * 34) calc(100vw / var(--viewport) * 14) calc(100vw / var(--viewport) * 36);
  }
}
.conditions_image_text {
  display: flex;
  flex-direction: column;
  gap: 23px;
}
@media screen and (max-width: 768px) {
  .conditions_image_text {
    gap: calc(100vw / var(--viewport) * 18);
  }
}
@media screen and (max-width: 768px) {
  .conditions_item:nth-child(3) .conditions_image_text {
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: calc(100vw / var(--viewport) * 58);
  }
}
.conditions_image {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 167px;
}
@media screen and (max-width: 768px) {
  .conditions_image {
    height: auto;
  }
}
.conditions_item:nth-child(1) .conditions_image img {
  width: 194px;
}
@media screen and (max-width: 768px) {
  .conditions_item:nth-child(1) .conditions_image img {
    width: calc(100vw / var(--viewport) * 194);
  }
}
.conditions_item:nth-child(2) .conditions_image img {
  width: 167px;
}
@media screen and (max-width: 768px) {
  .conditions_item:nth-child(2) .conditions_image img {
    width: calc(100vw / var(--viewport) * 167);
  }
}
.conditions_item:nth-child(3) .conditions_image img {
  width: 148px;
}
@media screen and (max-width: 768px) {
  .conditions_item:nth-child(3) .conditions_image img {
    width: calc(100vw / var(--viewport) * 148);
  }
}
.conditions_condition {
  text-align: center;
  line-height: calc(44 / 29);
  font-size: 29px;
  font-weight: 600;
}
@media screen and (max-width: 768px) {
  .conditions_condition {
    line-height: calc(50 / 32);
    font-size: calc(100vw / var(--viewport) * 32);
  }
}
.conditions_condition em {
  font-style: normal;
  color: #BBA170;
}
.conditions_condition strong {
  line-height: 1;
  font-family: "din-2014", sans-serif;
  font-size: 58px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .conditions_condition strong {
    font-size: calc(100vw / var(--viewport) * 65);
  }
}
.conditions_condition strong.aga {
  letter-spacing: 0.03em;
}
.conditions_condition em .to {
  font-weight: 700;
}
.conditions_note {
  line-height: calc(28 / 16);
  font-size: 16px;
}
@media screen and (max-width: 768px) {
  .conditions_note {
    line-height: calc(28 / 20);
    font-size: calc(100vw / var(--viewport) * 20);
  }
}
.conditions_reference {
  background: #EFEFEF;
  padding-top: 34px;
}
@media screen and (max-width: 768px) {
  .conditions_reference {
    padding-top: 0;
    padding-bottom: calc(100vw / var(--viewport) * 32);
  }
}
.conditions_reference:not(:last-child) {
  margin-bottom: 32px;
}
@media screen and (max-width: 768px) {
  .conditions_reference:not(:last-child) {
    margin-bottom: calc(100vw / var(--viewport) * 28);
  }
}
.conditions_reference_title {
  text-align: center;
  line-height: calc(52 / 35);
  font-size: 35px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .conditions_reference_title {
    line-height: calc(50 / 36);
    font-size: calc(100vw / var(--viewport) * 36);
  }
}
.conditions_reference_title:not(:last-child) {
  margin-bottom: 22px;
}
@media screen and (max-width: 768px) {
  .conditions_reference_title:not(:last-child) {
    margin-bottom: calc(100vw / var(--viewport) * 16);
  }
}
.conditions_reference_container {
  position: relative;
}
@media screen and (max-width: 768px) {
  .conditions_reference_container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: calc(100vw / var(--viewport) * 24);
  }
}
.conditions_reference_image {
  margin-left: 8px;
  width: 614px;
}
@media screen and (max-width: 768px) {
  .conditions_reference_image {
    margin-left: auto;
    margin-right: auto;
    width: calc(100vw / var(--viewport) * 565);
  }
}
.conditions_reference_list {
  position: absolute;
  top: 50%;
  right: 36px;
  transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  .conditions_reference_list {
    position: static;
    transform: none;
  }
}
.conditions_reference_item {
  line-height: calc(46 / 22);
  font-size: 22px;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .conditions_reference_item {
    line-height: calc(50 / 30);
    font-size: calc(100vw / var(--viewport) * 30);
  }
}
.conditions_text {
  text-align: center;
  line-height: calc(44 / 24);
  font-size: 24px;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .conditions_text {
    line-height: calc(40 / 26);
    font-size: calc(100vw / var(--viewport) * 26);
  }
}
.conditions_text strong {
  line-height: calc(70 / 34);
  font-size: 34px;
  font-weight: 700;
  color: #BBA171;
}
@media screen and (max-width: 768px) {
  .conditions_text strong {
    line-height: calc(60 / 36);
    font-size: calc(100vw / var(--viewport) * 36);
  }
}


/*============================
attention
=============================*/
.attention {
  background: #EFEFEF;
  padding-top: 78px;
  padding-bottom: 85px;
}
@media screen and (max-width: 768px){
  .attention {
    padding-top: calc(100vw / var(--viewport) * 60);
    padding-bottom: calc(100vw / var(--viewport) * 66);
  }
}
.attention_container {
  display: flex;
  flex-direction: column;
  gap: 41px;
  padding-left: 100px;
  padding-right: 100px;
}
@media screen and (max-width: 768px){
  .attention_container {
    gap: calc(100vw / var(--viewport) * 28);
    padding-left: 0;
    padding-right: 0;
  }
}
.attention_content:not(:last-child) {
  border-bottom: 1px solid #707070;
  padding-bottom: 50px;
}
@media screen and (max-width: 768px){
  .attention_content:not(:last-child) {
    padding-bottom: calc(100vw / var(--viewport) * 41);
  }
}
.attention_title {
  text-align: center;
  line-height: calc(60 / 36);
  font-size: 36px;
  font-weight: 700;
}
@media screen and (max-width: 768px){
  .attention_title {
    line-height: calc(58 / 40);
    font-size: calc(100vw / var(--viewport) * 40);
  }
}
.attention_title:not(:last-child) {
  margin-bottom: 32px;
}
@media screen and (max-width: 768px){
  .attention_title:not(:last-child) {
    margin-bottom: calc(100vw / var(--viewport) * 23);
  }
}
.attention_list:not(:last-child) {
  margin-bottom: 47px;
}
@media screen and (max-width: 768px){
  .attention_list:not(:last-child) {
    margin-bottom: calc(100vw / var(--viewport) * 35);
  }
}
.attention_item {
  position: relative;
  padding-left: 1em;
  line-height: calc(38 / 21);
  font-size: 21px;
}
@media screen and (max-width: 768px){
  .attention_item {
    line-height: calc(42 / 24);
    font-size: calc(100vw / var(--viewport) * 24);
  }
}
.attention_item::before {
  content: "・";
  position: absolute;
  left: 0;
}
.attention_clinic_list {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 9px 12px;
}
@media screen and (max-width: 768px){
  .attention_clinic_list {
    grid-template-columns: repeat(3, 1fr);
    gap: calc(100vw / var(--viewport) * 12);
  }
}
.attention_clinic_link {
  display: block;
  background: #036EA8;
  padding: 5px;
  text-align: center;
  line-height: calc(35 / 22);
  font-size: 22px;
  font-weight: 500;
  color: #FFF !important;
  letter-spacing: 0.035em;
}
@media screen and (max-width: 768px){
  .attention_clinic_link {
    padding: calc(100vw / var(--viewport) * 6.5);
    line-height: calc(43 / 31);
    font-size: calc(100vw / var(--viewport) * 31);
  }
}


/*============================
marking
=============================*/
.marking {
  padding-top: 78px;
  padding-bottom: 80px;
}
@media screen and (max-width: 768px){
  .marking {
    padding-top: calc(100vw / var(--viewport) * 53);
    padding-bottom: calc(100vw / var(--viewport) * 60);
  }
}
.marking_title {
  text-align: center;
  line-height: calc(60 / 36);
  font-size: 36px;
  font-weight: 700;
}
@media screen and (max-width: 768px){
  .marking_title {
    line-height: calc(58 / 40);
    font-size: calc(100vw / var(--viewport) * 40);
  }
}
.marking_title:not(:last-child) {
  margin-bottom: 32px;
}
@media screen and (max-width: 768px){
  .marking_title:not(:last-child) {
    margin-bottom: calc(100vw / var(--viewport) * 25);
  }
}
.marking_text {
  line-height: calc(38 / 21);
  font-size: 21px;
}
@media screen and (max-width: 768px){
  .marking_text {
    line-height: calc(42 / 24);
    font-size: calc(100vw / var(--viewport) * 24);
  }
}
.marking_text:not(:last-child) {
  margin-bottom: 40px;
}
@media screen and (max-width: 768px){
  .marking_text:not(:last-child) {
    margin-bottom: calc(100vw / var(--viewport) * 30);
  }
}
.marking_list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 40px;
}
@media screen and (max-width: 768px) {
  .marking_list {
    grid-template-columns: 1fr;
    gap: calc(100vw / var(--viewport) * 50);
  }
}
.marking_label {
  background: #3C3A39;
  text-align: center;
  line-height: calc(60 / 28);
  font-size: 28px;
  font-weight: 600;
  color: #FFF;
}
@media screen and (max-width: 768px) {
  .marking_label {
    line-height: calc(76 / 35);
    font-size: calc(100vw / var(--viewport) * 35);
  }
}
.marking_image:not(:last-child) {
  margin-bottom: 12px;
}
@media screen and (max-width: 768px) {
  .marking_image:not(:last-child) {
    margin-bottom: calc(100vw / var(--viewport) * 18);
  }
}
.marking_explanation {
  line-height: calc(38 / 21);
  font-size: 21px;
}
@media screen and (max-width: 768px) {
  .marking_explanation {
    line-height: calc(42 / 24);
    font-size: calc(100vw / var(--viewport) * 24);
  }
}


/*============================
flow
=============================*/
.flow {
  background: #3C3A39;
  padding-top: 78px;
  padding-bottom: 85px;
  color: #FFF;
}
@media screen and (max-width: 768px){
  .flow {
    padding-top: calc(100vw / var(--viewport) * 60);
    padding-bottom: calc(100vw / var(--viewport) * 60);
  }
}
.flow_eyebrow {
  text-align: center;
  line-height: calc(61 / 42);
  font-size: 42px;
  font-weight: 700;
}
@media screen and (max-width: 768px){
  .flow_eyebrow {
    line-height: calc(55 / 38);
    font-size: calc(100vw / var(--viewport) * 38);
  }
}
.flow_title {
  text-align: center;
  line-height: calc(76 / 53);
  font-size: 53px;
  font-weight: 700;
  color: #BBA171;
}
@media screen and (max-width: 768px){
  .flow_title {
    line-height: calc(72 / 50);
    font-size: calc(100vw / var(--viewport) * 50);
  }
}
.flow_title:not(:last-child) {
  margin-bottom: 42px;
}
@media screen and (max-width: 768px){
  .flow_title:not(:last-child) {
    margin-bottom: calc(100vw / var(--viewport) * 34);
  }
}
.flow_list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
}
@media screen and (max-width: 768px) {
  .flow_list {
    grid-template-columns: repeat(2, 1fr);
    gap: calc(100vw / var(--viewport) * 30) calc(100vw / var(--viewport) * 38);
  }
}
.flow_item {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.flow_step {
  position: relative;
  margin-right: 34px;
  background: #BBA171;
  padding-left: 34px;
  text-align: center;
  line-height: calc(63 / 38);
  font-size: 38px;
  font-weight: 600;
  color: #000;
}
@media screen and (max-width: 768px){
  .flow_step {
    margin-right: calc(100vw / var(--viewport) * 32);
    padding-left: calc(100vw / var(--viewport) * 32);
    line-height: calc(58 / 35);
    font-size: calc(100vw / var(--viewport) * 35);
  }
}
.flow_step::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  transform: translateX(100%);
  background: #BBA171;
  width: 34px;
  height: 100%;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
}
@media screen and (max-width: 768px){
  .flow_step::after {
    width: calc(100vw / var(--viewport) * 32);
  }
}
.flow_step_after {
  margin-right: 0;
  padding-left: 0;
}
.flow_step_after::after {
  display: none;
}
.flow_image:not(:last-child) {
  margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
  .flow_image:not(:last-child) {
    margin-bottom: calc(100vw / var(--viewport) * 8);
  }
}
.flow_label {
  text-align: center;
  line-height: calc(50 / 24);
  font-size: 24px;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .flow_label {
    margin-left: -0.5em;
    margin-right: -0.5em;
    line-height: calc(50 / 24);
    font-size: calc(100vw / var(--viewport) * 24);
  }
}
