.typography--db {
  font-family: "UD Shin Go DemiBold", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.typography--b {
  font-family: "UD Shin Go Bold", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.typography--r {
  font-family: "UD Shin Go Regular", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.typography--m {
  font-family: "UD Shin Go Medium", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.typography--w3 {
  font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
}

.content__primary-heading, .content__secondary-heading, .content__tertiary-heading {
  font-weight: 600;
}

.kv__catch {
  font-weight: normal;
}

ul.repletion {
  list-style-type: none;
  padding: 0;
  margin: 0;
}

ul.repletion li {
  position: relative;
  padding-left: 16px;
  text-align: left;
}

ul.repletion-normal li::before {
  content: "※";
  position: absolute;
  left: 0;
  top: 0; 
  text-align: left; 
}

ul.repletion-1 li::before {
  content: "※1";
  position: absolute;
  left: 0;
  top: 0; 
  text-align: left; 
}

ul.repletion-2 li::before {
  content: "※2";
  position: absolute;
  left: 0;
  top: 0; 
  text-align: left; 
}

@media screen and (min-width: 771px) {
  /* 共通要素 */

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

  .product-sp {
    display: none !important;
  }

  p {
    line-height: 1.65;
  }

  .annotation {
    font-size: 0.75rem;
  }

  /* KV要素 */

  .kv {
    position: relative;
    width: 100%;
    max-height: 460px;
    max-width: 1920px;
    padding: 60px 60px 67px;
    box-sizing: border-box;
    background-image: url(/jp/-/media/medicom/open-karte-cloud/open-karte-cloud_pc_kv.jpg);
    background-size: cover;
    background-position: center;
    margin: 0 auto;
    overflow: hidden;
  }

  .kv__feature {
    max-width: 1440px;
    margin: 0 auto;
  }

  .kv__detail {
    display: block;
    width: 224px;
  }

  .kv__logo {
    display: block;
    margin-top: 20px;
    width: 533px;
  }

  .kv__catch {
    font-family: "UD Shin Go DemiBold", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 25px;
    line-height: 1;
    color: #252525;
  }

  .kv-form .kv__catch {
    margin-top: 50px;
  }

  .kv__catch > span {
    color: #016e7e;
  }

  .kv__point {
    margin-top: 40px;
    display: flex;
    column-gap: 32px;
  }

  .kv__point-text {
    font-family: "UD Shin Go Medium", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 1rem;
    border-left: 3px solid #0195ea;
    line-height: 26.4px;
    padding-left: 10px;
  }

  .kv__point-text--emphasis {
    font-family: "UD Shin Go Bold", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 1.5rem;
  }

  .kv__img {
    position: absolute;
    top: 1.5vw;
    right: 250px;
    width: 550px;
    height: 330px;
  }

  .kv-form .kv__img {
    top: 55%;
    transform: translateY(-50%);
  }

  .kv__btn {
    margin-top: max(38px, 2.64vw);
    display: flex;
    justify-content: space-between;
    width: 540px;
  }

  .kv__btn > a:hover {
    opacity: 0.8;
  }

  .kv__repletion ul.repletion {
    text-align: center;
  }

  .kv__repletion ul.repletion li {
    display: inline;
  }

  ul.repletion-normal li {
    position: relative;
    padding-left: 16px;
    text-align: left;
  }

  ul.repletion-1 li, ul.repletion-2 li {
    position: relative;
    padding-left: 24px;
    text-align: left;
  }


  a.kv__btn--orange {
    position: relative;
    display: inline-block;
    color: #fff;
    font-size: 18px;
    font-family: "UD Shin Go DemiBold", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    line-height: 1;
    background-color: #da7c10;
    width: 254px;
    height: 49px;
    box-sizing: border-box;
    padding: 16px 0 15px 19px;
    border-radius: 10px;
  }

  a.kv__btn--green {
    position: relative;
    display: inline-block;
    color: #fff;
    font-size: 18px;
    font-family: "UD Shin Go DemiBold", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    line-height: 1;
    background-color: #08a593;
    width: 254px;
    height: 49px;
    box-sizing: border-box;
    padding: 16px 0 15px 64px;
    border-radius: 10px;
  }

  .fas::before {
    content: url(/jp/-/media/medicom/mchsf/side-detail.svg);
  }

  .fa-position-right {
    position: absolute;
    top: calc(50% - 0.55em);
    right: 0.5rem;
  }

  .btn_ballon-orange {
    color: #cc640a;
    background-image: url(/jp/-/media/medicom/mcck2/balloon-orange.svg);
    background-size: contain;
    padding-top: 10.7px;
    position: relative;
    padding-left: 11.8px;
  }

  .btn_ballon-orange span {
    font-size: 18px;
    position: absolute;
    top: 7.2px;
    left: 46px;
  }

  .btn_ballon-green {
    color: #068476;
    background-image: url(/jp/-/media/medicom/mcck2/balloon-green.svg);
    padding-top: 10px;
  }

  .btn_ballon-orange,
  .btn_ballon-green {
    margin: 0 auto -20px;
    display: block;
    width: 220px;
    height: 40px;
    font-size: 12px;
    text-align: center;
    background-repeat: no-repeat;
    background-size: cover;
    box-sizing: border-box;
    position: relative;
    z-index: 1;
    line-height: 1;
  }

  .kv-btn-box {
    margin: 0 auto 100px;
    padding: 60px 0;
    background-color: #f6f6f6;
  }

  .kv-btn-box .repletion {
    margin-top: 20px;
    text-align: center;
  }

  .kv-btn-inner {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    column-gap: 32px;
  }

  .kv-btn {
    padding: 0 30px;
    align-items: center;
    display: flex;
    gap: 10px;
    text-align: center;
    justify-content: space-between;
    box-sizing: border-box;
    width: 345px;
    height: 75px;
    border-radius: 15px;
    font-size: 20px;
    line-height: 1;
  }

  .orange {
    background-color: #da7c10;
    color: #fff;
  }

  .green {
    background-color: #08a593;
    color: #fff;
  }

  .kv-btn--img {
    width: 30px;
  }

  .kv-btn i {
    font-weight: 900;
    font-size: 24px;
    line-height: 0.8;
    width: 10px;
  }

  /* アンカーリンク */

  .content__anchor-link {
    padding-top: 40px;
    font-size: 14px;
    line-height: 1.6;
    border-top: 1px solid #e4e7eb;
  }

  .content__anchor-link ul {
    display: flex;
    justify-content: left;
    column-gap: 80px;
    flex-wrap: wrap;
  }

  .content__anchor-link ul li a {
    color: #0056a8;
  }

  .link-down::before {
    content: "";
    width: 14px;
    height: 14px;
    background: url(/jp/-/media/medicom/mcck2/arrow-down.svg) no-repeat;
    display: inline-block;
    transform: translateY(2.1px);
  }

  /* 販売終了用コンテンツ */

  .content__note {
    border: solid 1px #ff0004;
    padding: 30px 30px;
    margin-top: 60px;
    margin-bottom: 60px;
    text-align: center;
    color: #ff0000;
    font-size: 16px;
    line-height: 26.4px;
    font-family: "UD Shin Go Regular", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  }

  /* h要素 */

  .content__primary-heading {
    margin-bottom: 30px;
    padding: 1.1px 0;
    padding-left: 56px;
    color: #252525;
    font-family: "UD Shin Go Bold", sans-serif;
    font-size: 32px;
    font-weight: 600;
    line-height: 1.4;
    border-top: #0195ea 3px solid;
    border-bottom: #0195ea 3px solid;
    position: relative;
  }

  .content__primary-heading::before {
    content: "";
    display: block;
    width: 46px;
    height: calc(100% + 3px);
    background: center no-repeat url(/jp/-/media/medicom/mchsf/checkmark.svg);
    background-color: #0195ea;
    text-align: center;
    position: absolute;
    top: -1px;
    left: 0;
  }

  .content__secondary-heading {
    font-size: 24px;
    font-weight: 600;
    font-family: "UD Shin Go Bold", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    border-bottom: #0195ea solid 3px;
    padding-bottom: 5.2px;
    margin-bottom: 30px;
    line-height: 1.4;
    display: flex;
    justify-content: left;
  }

  .content__tertiary-heading {
    display: block;
    margin-bottom: 25px;
    padding-bottom: 6.8px;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.4;
    color: #171718;
    border-bottom: 2px solid #e4e7eb;
    font-family: "UD Shin Go Bold", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  }

  /* コンテンツボックス */

  .content__movie {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 56.21%;
    margin-top: 20px;
    margin-bottom: 60px;
  }

  .content__movie iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }

  .content__img {
    margin: 0 auto;
    display: block;
    margin-top: 25px;
  }

  .content__img--center {
    width: 497px;
    margin: 25px auto 60px;
    border: 1px solid #cccccc;
  }

  .content__box--row {
    display: flex;
    justify-content: space-between;
  }

  .row-box {
    width: calc(50% - 21px);
    display: block;
  }

  .row-box img {
    margin: 0 auto;
    display: block;
  }

  .row-box--three-division {
    width: calc(33% - 17px);
    display: flex;
    flex-direction: column;
  }

  .row-box--three-division img {
    margin-top: auto;
  }

  .row-img {
    width: calc(50% - 21px);
    object-fit: contain;
  }

  .row-box__title {
    font-size: 14px;
  }

  .caption {
    font-size: 12px;
  }

  /* リンク */

  .content__link {
    color: #0056a8;
  }

  .content__link--under_line {
    color: #0056a8;
    text-decoration: underline;
  }

  .content__link--arrow {
    color: #0056a8;
    text-decoration: underline;
    display: block;
  }

  .content__link--arrow::before {
    content: "＞";
    display: inline-block;
    transform: scale(0.6, 1);
    padding-right: 0.3em;
  }

  /* 補足 */
  .repletion {
    font-size: 0.75rem;
    line-height: 1.4;
  }

  /* コンテンツ内マージン */

  .content__img + .content__secondary-heading {
    margin-top: 60px;
  }

  .content__img + .content__link--arrow {
    margin-top: 30px;
  }

  p + .content__box--row {
    margin-top: 50px;
  }

  p + .content__box--img {
    margin-top: 25px;
  }

  p + .repletion {
    margin-top: 30px;
  }

  .row-box--three-division p + .repletion {
    margin-top: 5px;
  }

  .content__box--row + .content__secondary-heading {
    margin-top: 60px;
  }

  .content__box--row + .content__primary-heading {
    margin-top: 60px;
  }

  .content__box--row + .content__box--row {
    margin-top: 25px;
  }

  .content__box--row + .content__link--arrow {
    margin-top: 30px;
  }

  .content__box--row + .content__tertiary-heading {
    margin-top: 50px;
  }

  .row-box img + p {
    margin-top: 25px;
  }

  .row-box p + p {
    margin-top: 30px;
  }

  .row-box--three-division p {
    margin-bottom: 25px;
  }

  .content__link--arrow + .content__primary-heading {
    margin-top: 80px;
  }

  .content__link--arrow + .content__secondary-heading {
    margin-top: 60px;
  }

  .content__link--arrow + .content__link--arrow {
    margin-top: 30px;
  }

  .content__link--arrow + .caption {
    margin-top: 80px;
  }

  .caption + .caption {
    margin-top: 12px;
  }
}

@media screen and (min-width: 771px) and (max-width: 1440px) {
  .annotation {
    font-size: 0.75rem;
  }

   /* KV要素 */

  .kv {
    position: relative;
    width: 100%;
    max-height: 460px;
    max-width: 1920px;
    padding: 4.17vw 4.17vw 4.65vw;
    box-sizing: border-box;
    background-image: url(/jp/-/media/medicom/open-karte-cloud/open-karte-cloud_pc_kv.jpg);
    background-size: cover;
    background-position: center;
    margin: 0 auto;
    overflow: hidden;
  }

  .kv__detail {
    display: block;
    width: 15.56vw;
  }

  .kv__logo {
    display: block;
    margin-top: 20px;
    width: 29.72vw;
  }

  .kv__catch {
    font-family: "UD Shin Go DemiBold", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 1.74vw;
    line-height: 1;
    color: #252525;
  }

  .kv__catch > span {
    color: #016e7e;
  }

  .kv__point {
    margin-top: 2.78vw;
    display: flex;
    column-gap: 2.22vw;
  }

  .kv__point-text {
    font-family: "UD Shin Go Medium", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 1.11vw;
    border-left: 0.21vw solid #0195ea;
    line-height: 1.83vw;
    padding-left: 0.69vw;
  }

  .kv__point-text--emphasis {
    font-family: "UD Shin Go Bold", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 1.5em;
  }

  .kv__img {
    position: absolute;
    top: 2.33vw;
    right: 17.361vw;
    width: 29.44vw;
  }

  .kv-form .kv__img {
    top: 55%;
    transform: translateY(-50%);
  }

  .kv-btn-box {
    padding: 4.17vw 0;
  }

  .kv-btn-box .repletion {
    margin-top: 1.39vw;
    font-size: 0.83vw;
  }

  .kv-btn-inner {
    column-gap: 2.22vw;
  }

  .kv-btn {
    padding: 0 2.08vw;
    gap: 0.69vw;
    width: 23.96vw;
    height: 5.21vw;
    border-radius: 1.04vw;
    font-size: 1.39vw;
  }

  .kv-btn--img {
    width: 2.08vw;
  }

  .kv-btn i {
    font-size: 1.67vw;
    width: 0.69vw;
  }

  .kv__repletion ul.repletion {
    text-align: center;
  }

  .kv__repletion ul.repletion li {
    display: inline;
  }

  ul.repletion-normal li {
    position: relative;
    padding-left: 16px;
    text-align: left;
  }

  ul.repletion-1 li, ul.repletion-2 li {
    position: relative;
    padding-left: 24px;
    text-align: left;
  }

  .btn_ballon-orange {
    padding-top: 0.74vw;
    padding-left: 0.82vw;
  }

  .btn_ballon-orange span {
    font-size: 1.25vw;
    top: 0.5vw;
    left: 3.19vw;
  }

  .btn_ballon-green {
    padding-top: 0.69vw;
  }

  .btn_ballon-orange,
  .btn_ballon-green {
    margin: 0 auto calc(-1 * 1.39vw);
    width: 15.28vw;
    height: 2.78vw;
    font-size: 0.83vw;
  }
}

@media screen and (max-width: 770px) {
  /* 共通要素 */
  .frame > article {
    padding: 0 4.69vw;
  }

  .bg-modal {
    display: none;
  }

  .product-pc {
    display: initial !important;
  }

  .product-pc {
    display: none !important;
  }

  p {
    line-height: 1.65;
    font-size: 4.38vw;
  }

  .article__content {
    margin-bottom: 150px;
  }

  .annotation {
    font-size: 3.75vw;
  }

  /* KV要素 */

  .kv {
    position: relative;
    width: 100%;
    background-image: url(/jp/-/media/medicom/open-karte-cloud/open-karte-cloud_sp_kv.png);
    background-repeat: no-repeat;
    background-size: 100%;
    margin: 0 auto;
    overflow: hidden;
  }

  .kv__feature {
    padding: 30px 6vw 63px;
  }

  .kv-form .kv__feature {
    padding: 8.75vw 6vw 22vw;
  }

  .kv__detail {
    display: block;
    width: 51.25%;
  }

  .kv__logo {
    margin-top: 20px;
    width: 70.31%;
  }

  .kv__catch {
    font-family: "UD Shin Go DemiBold", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 3.73vw;
    line-height: 1.4;
    color: #252525;
  }

  .kv__catch > span {
    color: #016e7e;
    display: block;
  }

  .kv__point {
    margin-top: 40px;
    display: flex;
    gap: 5vw;
    flex-direction: column;
    width: 100%;
  }

  .kv__point-text {
    font-family: "UD Shin Go Medium", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 3.73vw;
    border-left: 0.94vw solid #0195ea;
    line-height: 1.4;
    padding-left: 3.13vw;
  }

  .kv__point-text--emphasis {
    font-family: "UD Shin Go Bold", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 4.06vw;
  }

  .fas::before {
    content: url(/jp/-/media/medicom/mchsf/side-detail.svg);
  }

  .fa-position-right {
    position: absolute;
    top: calc(50% - 0.55em);
    right: 0.5rem;
  }

  .kv-btn-box {
    box-sizing: border-box;
    margin: 0 auto 18.75vw;
    padding: 6.25vw 4.69vw;
    justify-content: center;
    background-color: #f6f6f6;
  }

  .kv-btn-box .repletion {
    margin-top: 4.69vw;
  }

  .kv-btn-inner {
    display: flex;
    flex-wrap: wrap;
    row-gap: 4.69vw;
  }

  .btn_ballon-orange {
    color: #cc640a;
    background-image: url(/jp/-/media/medicom/mcck2/balloon-orange.svg);
    background-size: contain;
    padding-top: 3.34vw;
    position: relative;
    padding-left: 3.69vw;
  }

  .btn_ballon-orange span {
    font-size: 5.63vw;
    position: absolute;
    top: 2.25vw;
    left: 14.38vw;
  }

  .btn_ballon-green {
    color: #068476;
    background-image: url(/jp/-/media/medicom/mcck2/balloon-green.svg);
    padding-top: 3.13vw;
  }

  .btn_ballon-orange,
  .btn_ballon-green {
    margin: 0 auto -6.25vw;
    display: block;
    width: 68.75vw;
    height: 12.5vw;
    font-size: 3.75vw;
    text-align: center;
    background-repeat: no-repeat;
    background-size: contain;
    box-sizing: border-box;
    position: relative;
    z-index: 1;
    line-height: 1;
  }

  .kv-btn {
    padding: 0 6.25vw;
    align-items: center;
    display: flex;
    gap: 3.13vw;
    text-align: center;
    justify-content: space-between;
    box-sizing: border-box;
    width: calc(100vw - 9.38vw);
    height: 20vw;
    border-radius: 3.13vw;
    font-size: 4.27vw;
    line-height: 1;
  }

  .orange {
    background-color: #da7c10;
    color: #fff;
  }

  .green {
    background-color: #08a593;
    color: #fff;
  }

  .kv-btn--img {
    width: 7.5vw;
  }

  .kv-btn i {
    font-weight: 900;
    font-size: 7.5vw;
    line-height: 0.8;
    width: 3.13vw;
  }

  ul.repletion-normal li {
    position: relative;
    padding-left: 16px;
    text-align: left;
  }

  ul.repletion-1 li, ul.repletion-2 li {
    position: relative;
    padding-left: 26px;
    text-align: left;
  }

  /* アンカーリンク */

  .content__anchor-link {
    padding-top: 15px;
    font-size: 4.38vw;
    line-height: 1.6;
    border-top: 1px solid #e4e7eb;
  }

  .content__anchor-link ul {
    display: flex;
    flex-direction: column;
  }

  .content__anchor-link ul li {
    margin-top: 15px;
    line-height: 1;
  }

  .content__anchor-link ul li a {
    color: #0056a8;
  }

  .link-down::before {
    content: "";
    width: 4.69vw;
    height: 4.69vw;
    background: url(/jp/-/media/medicom/mcck2/arrow-down.svg) no-repeat;
    display: inline-block;
    transform: translateY(2.1px);
    background-size: cover;
  }

  /* 販売終了用コンテンツ */

  .content__note {
    border: solid 1px #ff0004;
    padding: 15px;
    margin-top: 40px;
    margin-bottom: 40px;
    text-align: center;
    color: #ff0000;
    font-size: 4.38vw;
    font-family: "UD Shin Go Regular", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  }

  /* h要素 */

  .content__primary-heading {
    border-top: #0195ea 0.94vw solid;
    border-bottom: #0195ea 0.94vw solid;
    font-family: "UD Shin Go Bold", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: calc(22 / 320 * 100vw);
    display: block;
    position: relative;
    padding: 1.56vw;
    padding-left: 14.4vw;
    line-height: 1.4;
    margin-bottom: 30px;
  }

  .content__primary-heading::before {
    content: "";
    background-image: url(/jp/-/media/medicom/mchsf/checkmark.svg);
    position: absolute;
    background-color: #0195ea;
    text-align: center;
    width: 11.73vw;
    left: 0;
    top: 0;
    height: 100%;
    background-repeat: no-repeat;
    background-position: center;
    background-origin: content-box;
  }

  .content__secondary-heading {
    font-size: calc(18 / 320 * 100vw);
    font-family: "UD Shin Go Bold", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    border-bottom: #0195ea solid 0.94vw;
    padding-bottom: 1.56vw;
    margin-bottom: 6.67vw;
    line-height: 1.4;
    display: flex;
    justify-content: left;
  }

  .content__tertiary-heading {
    display: block;
    margin-bottom: 4vw;
    padding-bottom: 1.88vw;
    font-size: calc(15 / 320 * 100vw);
    line-height: 1.4;
    color: #171718;
    border-bottom: 0.63vw solid #e4e7eb;
    font-family: "UD Shin Go Bold", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  }

  /* コンテンツボックス */

  .content__movie {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 56.21%;
    margin-top: 25px;
    margin-bottom: 60px;
  }

  .content__movie iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }

  .content__img {
    margin: 0 auto;
    display: block;
    margin-top: 25px;
  }

  .content__img--center {
    border: 1px solid #cccccc;
    margin-top: 25px;
    margin-bottom: 60px;
  }

  .content__box--row p + .row-box__img {
    margin-top: 10px;
  }

  .row-img {
    display: block;
  }

  .row-box__title {
    font-size: 12px;
    line-height: 1;
  }

  .caption {
    font-size: 3.75vw;
  }

  /* リンク */

  .content__link {
    color: #0056a8;
  }

  .content__link--under_line {
    color: #0056a8;
    text-decoration: underline;
  }

  .content__link--arrow {
    color: #0056a8;
    text-decoration: underline;
    display: block;
    font-size: 4.38vw;
  }

  .content__link--arrow::before {
    content: "＞";
    display: inline-block;
    transform: scale(0.6, 1);
    padding-right: 0.3em;
  }

  /* 補足 */
  .repletion {
    font-size: 3.75vw;
    line-height: 1.4;
  }

  /* コンテンツ内マージン */

  .content__img + .content__secondary-heading {
    margin-top: 60px;
  }

  .content__img + .content__link--arrow {
    margin-top: 25px;
  }

  p + .content__box--row {
    margin-top: 30px;
  }

  p + .content__box--img {
    margin-top: 25px;
  }

  p + .repletion {
    margin-top: 25px;
  }

  .content__box--row + .content__secondary-heading {
    margin-top: 60px;
  }

  .content__box--row + .content__primary-heading {
    margin-top: 80px;
  }

  .content__box--row + .content__box--row {
    margin-top: 25px;
  }

  .content__box--row + .content__link--arrow {
    margin-top: 30px;
  }

  .content__box--img + .content__link--arrow {
    margin-top: 25px;
  }

  .content__box--row + .content__tertiary-heading {
    margin-top: 50px;
  }

  .row-box + .row-box {
    margin-top: 25px;
  }

  .row-box + .row-img {
    margin-top: 25px;
  }

  .row-box img + p {
    margin-top: 25px;
  }

  .row-box p + p {
    margin-top: 25px;
  }

  .row-img + .row-img {
    margin-top: 25px;
  }

  .row-img + .row-box {
    margin-top: 30px;
  }

  .row-box--three-division p {
    margin-bottom: 25px;
  }

  .row-box--three-division + .row-box--three-division {
    margin-top: 50px;
  }

  .content__link--arrow + .content__primary-heading {
    margin-top: 80px;
  }

  .content__link--arrow + .content__secondary-heading {
    margin-top: 60px;
  }

  .content__link--arrow + .content__link--arrow {
    margin-top: 30px;
  }

  .content__link--arrow + .caption {
    margin-top: 80px;
  }

  .caption + .caption {
    margin-top: 12px;
  }
}

@media screen and (min-width: 580px) and (max-width: 770px) {
  .kv__img {
    width: 65vw;
    position: absolute;
    top: 22vw;
    left: 46vw;
  }
}

@media screen and (max-width: 579px) {
  .kv__img {
    width: 65vw;
    position: absolute;
    top: 28vw;
    left: 46vw;
  }
}

/*
   Modal
============================================================================= */

.bg-modal {
  display: none;
  position: fixed;
  z-index: 10;
  top: 0;
  left: 0;
  width: 100%;
  opacity: 0.9;
  background-color: #fff;
  filter: alpha(opacity=90);
}

.modal {
  display: none;
  position: fixed;
  z-index: 10;
  top: 50%;
  left: 50%;
}

.modal img {
  max-width: 100000px;
}

.link-modal.has-icon {
  display: block;
  position: relative;
  z-index: 0;
}

.link-modal.has-icon:before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 10px;
  right: 10px;
  width: 20px;
  height: 20px;
  background-position: 0 -378px;
  background-image: url(/~/media/images/sprite/common-2x.png);
  -webkit-background-size: 32px 694px;
  background-size: 32px 694px;
}

.link-modal.has-icon:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  border: 1px solid #cccccc;
  -webkit-transition: border-width 100ms linear 0ms;
  transition: border-width 100ms linear 0ms;
}

.link-modal.has-icon:hover:after {
  border: 4px solid #0056a8;
}

.link-modal.has-icon img {
  position: relative;
  z-index: -1;
}

.btn-modal-close {
  display: block;
  position: absolute;
  top: -42px;
  right: -42px;
  width: 32px;
  height: 32px;
  background-position: 0 -582px;
  background-image: url(/~/media/images/sprite/common-2x.png);
  -webkit-background-size: 32px 694px;
  background-size: 32px 694px;
}

@media only screen and (-webkit-min-device-pixel-ratio: 1.5) {
  .link-modal.has-icon:before {
    width: 20px;
    height: 20px;
    background-position: 0 -378px;
  }

  .btn-modal-close {
    width: 32px;
    height: 32px;
    background-position: 0 -582px;
  }
}

@media screen and (max-width: 800px) {
  .link-modal.has-icon:hover:after {
    border: 0;
  }
}

@media screen and (max-width: 650px) {
  .link-modal.has-icon:before {
    display: none;
  }
}

.kv__feature{
  font-weight: 600;
}

.kv-btn-inner{
  font-weight: 600;
}
