@charset "UTF-8";
*, *::before, *::after { box-sizing: border-box; }

html { font-size: 62.5%; }
@media screen and (max-width: 750px) { html { font-size: 1.33333vw; } }

body { font-family: "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO"; font-size: 1.6rem; color: #222222; }
body.active { height: 100%; overflow: hidden; }

@media screen and (max-width: 750px) { body { font-size: 2.8rem; }
  .site-main { width: 100%; } }
a[href^="tel:"] { pointer-events: none; cursor: default; }
@media screen and (max-width: 750px) { a[href^="tel:"] { pointer-events: auto; cursor: pointer; } }

img { max-width: 100%; }

.wrapper { display: flex; flex-wrap: wrap; justify-content: space-between; row-gap: 11rem; padding-top: 11rem; padding-bottom: 10rem; }

.wrapper .main { width: 73%; }

.wrapper .aside { width: 22%; }

@media screen and (max-width: 750px) { .wrapper .main { width: 100%; }
  .wrapper .aside { width: 100%; } }
.main { overflow: hidden; }

.sec { padding-top: 14rem; padding-bottom: 14rem; }

@media screen and (max-width: 750px) { .sec { padding-top: 9rem; padding-bottom: 9rem; } }
.font-furuta { font-family: "futura-pt", sans-serif !important; }

.js-fadein { opacity: 0; transform: translateY(50px); transition: transform 0.3s ease-out, opacity 0.3s ease-out; }
.js-fadein.view { transform: translateY(0); opacity: 1; }

.js-fadein.js-fadein-right { transform: translateX(50px); }
.js-fadein.js-fadein-right.view { transform: translateX(0); }

.js-fadein.js-fadein-left { transform: translate(50px, 50px); }
.js-fadein.js-fadein-left.view { transform: translate(0, 0); }

.js-fadein.js-fadein-left-row { transform: translateX(-50px); }
.js-fadein.js-fadein-left-row.view { transform: translate(0, 0); }

.aside_ttl { font-family: "futura-pt", sans-serif; font-size: 2rem; font-weight: 500; letter-spacing: 0.1em; text-transform: uppercase; margin-bottom: 1.5rem; }

@media screen and (max-width: 750px) { .aside_ttl { font-size: 4rem; margin-bottom: 3rem; } }
.aside_category_list { display: grid; row-gap: 2rem; }

.cat-item a { display: block; color: #ffffff; text-decoration: none; border-radius: 0.5rem; padding: 1.5rem 2rem; transition: opacity 0.3s ease; }
.cat-item a:hover { opacity: 0.8; }
.cat-item.cat-item-1 a { background-color: #a2c336; }
.cat-item.cat-item-3 a { background-color: #1d4394; }
.cat-item.cat-item-2 a { background-color: #009ee5; }

@media screen and (max-width: 750px) { .aside_category_list { row-gap: 3rem; }
  .cat-item a { border-radius: 1rem; padding: 2rem 2rem; } }
.footer { background-color: #ededed; }

.footer_inner { display: flex; justify-content: space-between; column-gap: 2rem; padding-top: 8rem; padding-bottom: 7rem; }

.fooetr_logo { display: inline-block; margin-bottom: 1.5rem; transition: opacity 0.3s ease; }
.fooetr_logo:hover { opacity: 0.8; }
.fooetr_logo img { width: 30rem; }

.footer_txt { font-size: 1.4rem; }

.footer-nav { display: grid; grid-template-columns: repeat(2, 1fr); gap: 3.5rem 4rem; }

.footer-nav_link { color: inherit; text-decoration: none; transition: color 0.3s ease; }
.footer-nav_link:hover { color: #a2c336; }
.footer-nav_link::before { content: "▶︎"; color: #a2c336; margin-right: 0.5rem; }

.footer-sns { display: flex; justify-content: center; column-gap: 1.6rem; margin-bottom: 6.5rem; }

.footer-sns_link { display: flex; justify-content: center; align-items: center; font-size: 2rem; width: 5.4rem; height: 5.4rem; color: #ffffff; text-decoration: none; background-color: #a2c336; border-radius: 100%; transition: opacity 0.3s ease; }
.footer-sns_link:hover { opacity: 0.8; }

.drone-footer .footer-nav, .diving-footer .footer-nav { grid-template-columns: repeat(3, 1fr); }

@media screen and (max-width: 750px) { .footer_inner { flex-direction: column; row-gap: 8rem; }
  .footer_left { text-align: center; }
  .fooetr_logo { margin-bottom: 3rem; }
  .fooetr_logo img { width: auto; height: 4rem; }
  .footer-nav { display: grid; grid-template-columns: repeat(2, 1fr); gap: 5rem 1rem; }
  .drone-footer .footer-nav, .diving-footer .footer-nav { grid-template-columns: repeat(2, 1fr); }
  .footer-sns { column-gap: 2rem; }
  .footer-sns_link { font-size: 3rem; width: 8rem; height: 8rem; } }
.copyright { font-size: 1.3rem; color: #ffffff; text-align: center; line-height: 1; background-color: #c2c2c2; padding: 1.6rem 1.6rem; margin: 0; }

@media screen and (max-width: 750px) { .copyright { font-size: 2rem; padding: 1.5rem 5rem; } }
.drone-footer .copyright { background-color: #009ee5; }
@media screen and (max-width: 750px) { .drone-footer .footer-nav_item:nth-child(1) { order: 1; }
  .drone-footer .footer-nav_item:nth-child(2) { order: 7; }
  .drone-footer .footer-nav_item:nth-child(3) { order: 6; }
  .drone-footer .footer-nav_item:nth-child(4) { order: 3; }
  .drone-footer .footer-nav_item:nth-child(5) { order: 2; }
  .drone-footer .footer-nav_item:nth-child(6) { order: 8; }
  .drone-footer .footer-nav_item:nth-child(7) { order: 5; }
  .drone-footer .footer-nav_item:nth-child(8) { order: 4; } }

.diving-footer .copyright { background-color: #1d4394; }
@media screen and (max-width: 750px) { .diving-footer .footer-nav_item:nth-child(1) { order: 1; }
  .diving-footer .footer-nav_item:nth-child(2) { order: 7; }
  .diving-footer .footer-nav_item:nth-child(3) { order: 4; }
  .diving-footer .footer-nav_item:nth-child(4) { order: 3; }
  .diving-footer .footer-nav_item:nth-child(5) { order: 9; }
  .diving-footer .footer-nav_item:nth-child(6) { order: 6; }
  .diving-footer .footer-nav_item:nth-child(7) { order: 5; }
  .diving-footer .footer-nav_item:nth-child(8) { order: 2; }
  .diving-footer .footer-nav_item:nth-child(9) { order: 8; } }

.header { top: 0; left: 0; right: 0; z-index: 990; transition: background-color 0.3s ease, box-shadow 0.3s ease; }

.home .header, .page-drone .header, .page-diving .header { position: fixed; }

body:not(.home, .page-drone, .page-diving) .header { position: sticky; background-color: #ffffff; box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16); }

.header_inner { position: relative; width: 100%; display: flex; align-items: center; }

.header_logo { display: flex; justify-content: center; align-items: center; margin-bottom: 0; margin-left: 2rem; }
.header_logo a { width: 25rem; height: 4rem; transition: opacity 0.3s ease; background-position: center center; background-size: contain; background-image: url(../images/common/logo_white.svg); background-repeat: no-repeat; }
.header_logo a:hover { opacity: 0.8; }

body:not(.home, .page-template-page-tmp-drone, .page-template-page-tmp-diving) .header_logo a { background-image: url(../images/common/logo_black.svg); }

.page-template-page-tmp-drone .header_logo a { width: 35.3rem; background-image: url(../images/common/drone_logo_white.svg); }
.page-template-page-tmp-drone.page-drone-child .header_logo a { background-image: url(../images/common/drone_logo_black.svg); }

.page-template-page-tmp-diving .header_logo a { width: 35.5rem; background-image: url(../images/common/diving_logo_white.svg); }
.page-template-page-tmp-diving.page-diving-child .header_logo a { background-image: url(../images/common/diving_logo_black.svg); }

.header-btn { display: none; position: relative; width: 7rem; height: 7rem; background-color: transparent; border: none; outline: none; }
.header-btn span { position: absolute; top: 50%; left: 50%; display: block; width: 7rem; height: 0.4rem; background-color: #222222; transition: transform 0.3s ease; }
.header-btn span:nth-child(1) { transform: translate(-50%, calc(-50% - 0.7rem)); }
.header-btn span:nth-child(2) { transform: translate(-50%, calc(-50% + 0.7rem)); }
.header-btn.active span:nth-child(1) { transform: translate(-50%, -50%) rotate(45deg); }
.header-btn.active span:nth-child(2) { transform: translate(-50%, -50%) rotate(-45deg); }

.sp-nav { display: none; position: fixed; top: 8rem; left: 100%; width: 100%; height: 100vh; background-color: #ffffff; padding-left: 5rem; padding-right: 5rem; z-index: 998; transition: left 0.3s ease; }
.sp-nav.active { left: 0; }

.sp-nav_menu { border-top: solid 1px #c2c2c2; margin-top: 5rem; }

.sp-nav_link { display: block; color: inherit; text-decoration: none; border-bottom: solid 1px #c2c2c2; padding: 2.5rem 3rem; }
.sp-nav_link::before { content: "▶︎"; color: #a2c336; margin-right: 1em; }

.home .header.fixed, .page-drone .header.fixed, .page-diving .header.fixed { background-color: #ffffff; box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16); }

.home .header.fixed .header_logo a { background-image: url(../images/common/logo_black.svg); }

.page-template-page-tmp-drone .header.fixed .header_logo a { background-image: url(../images/common/drone_logo_black.svg); }

.page-template-page-tmp-diving .header.fixed .header_logo a { background-image: url(../images/common/diving_logo_black.svg); }

@media screen and (max-width: 1024px) { .header_inner { justify-content: space-between; padding: 0.5rem 1.5rem; }
  .header_logo { margin-left: 0; }
  .header-btn { display: block; }
  .sp-nav { display: block; top: 9rem; } }
@media screen and (max-width: 750px) { .header { position: sticky; background-color: #ffffff; box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16); }
  .header_inner { padding: 1rem 2rem; }
  .header_logo a { width: 25rem; height: 4rem; background-image: url(../images/common/logo_black.svg); } }
.gnav { flex-grow: 1; display: flex; justify-content: flex-end; align-items: center; column-gap: 5.5rem; }

.gnav_menu { display: flex; justify-content: flex-end; align-items: center; column-gap: 4rem; }

.gnav_link { color: #ffffff; text-decoration: none; display: block; transition: color 0.3s ease; }
.gnav_link i { font-size: 2rem; }
.gnav_link:hover { color: #009ee5; }

.home .header.fixed .gnav_link, .page-drone .header.fixed .gnav_link, .page-diving .header.fixed .gnav_link, body:not(.home, .page-drone, .page-diving) .gnav_link { color: #222222; }
.home .header.fixed .gnav_link:hover, .page-drone .header.fixed .gnav_link:hover, .page-diving .header.fixed .gnav_link:hover, body:not(.home, .page-drone, .page-diving) .gnav_link:hover { color: #009ee5; }

.gnav_btn { display: flex; justify-content: center; align-items: center; width: 15rem; height: 9rem; color: #ffffff; text-decoration: none; background-color: #a2c336; transition: opacity 0.3s ease; }
.gnav_btn:hover { opacity: 0.8; }

@media screen and (max-width: 1024px) { .gnav { display: none; } }
@media screen and (max-width: 1500px) { .page-template-page-tmp-diving .gnav { column-gap: 2rem; }
  .page-template-page-tmp-diving .gnav_menu { column-gap: 2rem; } }
@media screen and (max-width: 1340px) { .page-template-page-tmp-diving .header_logo a { width: 28rem; }
  .page-template-page-tmp-diving .gnav_menu { column-gap: 1rem; }
  .page-template-page-tmp-diving .gnav_item { line-height: 1; }
  .page-template-page-tmp-diving .gnav_link { font-size: 1.2rem; } }
@media screen and (max-width: 1260px) { .page-template-page-tmp-drone .header_logo a { width: 28rem; }
  .page-template-page-tmp-drone .gnav { column-gap: 2rem; }
  .page-template-page-tmp-drone .gnav_menu { column-gap: 2rem; } }
@media screen and (max-width: 1024px) { .page-template-page-tmp-diving .header_logo a { background-image: url(../images/common/diving_logo_black.svg); width: 35.5rem; }
  .page-template-page-tmp-drone .header_logo a { background-image: url(../images/common/drone_logo_black.svg); width: 35.5rem; } }
.bg-logo { position: relative; }
.bg-logo::before { content: ""; position: absolute; top: 5%; right: -9%; display: inline-block; vertical-align: middle; width: min(calc(100vw * 800 / 1440), 800px); height: min(calc(100vw * 712 / 1440), 712px); background-position: center center; background-size: contain; background-image: url(../images/common/bg_logo.svg); background-repeat: no-repeat; z-index: -1; }

@media screen and (max-width: 750px) { .bg-logo::before { content: none; } }
.bg-wave { position: relative; }
.bg-wave img { width: 100%; }

.bg-wave_txt { position: absolute; top: 25%; left: 50%; font-size: 3.6rem; line-height: calc(70 / 36); letter-spacing: 0.1em; margin-bottom: 0; transform: translateX(-50%); }

@media screen and (max-width: 750px) { .bg-wave { position: relative; }
  .bg-wave img { width: auto; height: 34.7rem; object-fit: cover; margin-bottom: 9rem; }
  .bg-wave_txt { position: unset; font-size: 4.2rem; line-height: calc(70 / 42); transform: unset; } }
.card_list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 4rem 4rem; }

.card { display: flex; flex-direction: column; color: #ffffff; text-decoration: none; }

.card_img { position: relative; }
.card_img img { position: relative; display: block; width: 100%; height: auto; aspect-ratio: 530 / 300; }

.card_ttl { position: absolute; bottom: 0; left: 1rem; font-family: "futura-pt", sans-serif; font-size: 8rem; font-weight: 500; line-height: 1; color: rgba(255, 255, 255, 0.8); }

.card_ttl span { display: inline-block; font-size: 2rem; line-height: 3rem; letter-spacing: -0.1em; margin-left: 2rem; }

.card_txt { font-size: 2.2rem; line-height: calc(40 / 22); letter-spacing: 0.1em; background-color: #a2c336; padding: 0.5rem 1rem; }

@media screen and (max-width: 750px) { .card_list { grid-template-columns: repeat(1, 1fr); }
  .cards { flex-direction: column; row-gap: 5rem; }
  .card_img img { aspect-ratio: 650 / 290; }
  .card_ttl { font-size: 9rem; letter-spacing: 0.1em; }
  .card_txt { font-size: 3.2rem; line-height: calc(40 / 32); } }
.feature_list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 4rem 4rem; margin-bottom: 6rem; }

.feature_item { grid-column: auto/span 1; display: flex; flex-wrap: wrap; align-items: center; gap: 2rem 3rem; background-color: #ffffff; padding: 3rem 3rem; }

.feature_item_img { width: 20rem; height: auto; }

.feature_item_ttl { width: calc(100% - 23rem); font-size: 2.4rem; color: #1d4394; line-height: calc(40 / 24); letter-spacing: 0.1em; }

.feature_item_txt { line-height: calc(30 / 16); }
.feature_item_txt span { color: #1d4394; text-decoration: underline; }

.feature_item.-large { grid-column: auto/span 2; flex-wrap: nowrap; }

.feature_item.-large .feature_item_img { flex-shrink: 0; }

@media screen and (max-width: 1130px) { .feature_item { gap: 2rem 1.5rem; }
  .feature_item_img { width: 42%; }
  .feature_item_ttl { width: calc(58% - 1.5rem); font-size: 2rem; } }
@media screen and (min-width: 751px) and (max-width: 1130px) { .feature_item.-large .feature_item_img { flex-shrink: initial; width: 19%; }
  .feature_item.-large .feature_item_ttl { width: calc(28% - 1.5rem); }
  .feature_item.-large .feature_item_txt { width: calc(53% - 1.5rem); } }
@media screen and (max-width: 800px) { .feature_item_ttl { font-size: 1.8rem; } }
@media screen and (max-width: 750px) { .feature_list { grid-template-columns: repeat(1, 1fr); }
  .feature_item { gap: 2rem 3rem; }
  .feature_item_img { width: 40%; }
  .feature_item_img img { width: 100%; }
  .feature_item_ttl { font-size: 3.5rem; color: #1d4394; line-height: calc(40 / 24); letter-spacing: 0.1em; width: calc(58% - 3rem); }
  .feature_item.-large { grid-column: unset; flex-wrap: wrap; } }
form table { width: 100%; border-collapse: collapse; border-top: solid 1px #999999; margin-bottom: 8rem; }

form table tr { border-bottom: solid 1px #999999; }

form table th { width: 33%; text-align: start; background-color: #e4f5fd; padding: 2rem 3rem; }

form table td { background-color: #ffffff; padding: 2rem 2rem; }

input[type="text"], textarea { width: 100%; line-height: 1.5; background-color: #eeeeee; border: none; border-radius: 0.5rem; padding: 1rem 1rem; }

input[type="submit"] { position: relative; display: flex; justify-content: center; align-items: center; width: 100%; max-width: 43rem; height: 7rem; font-size: 1.6rem; color: #fff; text-decoration: none; border: none; background-color: #a2c336; border-radius: 1rem; cursor: pointer; transition: opacity .3s ease; padding-left: 3rem; }
input[type="submit"]::after { content: "▶︎"; margin-left: 1em; transition: transform .3s ease; }
@media (hover: hover) { input[type="submit"]:hover { opacity: .8; } }

.wpcf7-radio { display: flex; flex-direction: column; row-gap: 0.5rem; }

span.req, span.unreq { display: inline-block; margin-left: 3.5rem; padding: 0 1rem; }

span.req { color: #ffffff; background-color: #009ee5; }
span.req::before { content: "必須"; }

span.unreq { color: inherit; background-color: #ededed; }
span.unreq::before { content: "任意"; }

@media (min-width: 751px) and (max-width: 1280px) { span.req, span.unreq { margin-left: 1rem; } }
@media screen and (max-width: 750px) { form table th { display: block; width: 100%; padding: 3rem; }
  form table td { display: block; width: 100%; }
  .mwform-radio-field { display: block; margin-bottom: 2rem; }
  .mwform-radio-field:last-of-type { margin-bottom: 0; }
  .mwform-radio-field.horizontal-item + .horizontal-item { margin-left: 0; }
  textarea { min-height: 30rem; }
  input[type="submit"] { width: 100%; max-width: none; height: 8.8rem; font-size: 3.2rem; padding-left: 6.5rem; } }
.loading { position: fixed; top: 0; bottom: 0; left: 0; right: 0; display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; background-color: #ffffff; overflow: hidden; z-index: 999; }

.loading.active { animation: opacity 2s forwards 2s; }

.loading_icon { width: 10rem; height: 10rem; animation: rotate 2s linear infinite; }

.loading_icon.active { animation: rotate-scale 4s linear infinite; }

@keyframes rotate { 0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); } }
@keyframes rotate-scale { from { transform: rotate(0deg) scale(1); }
  to { transform: rotate(720deg) scale(50); } }
@keyframes opacity { from { opacity: 1; visibility: visible; }
  to { opacity: 0; visibility: hidden; } }
.merit_box { text-align: center; background-color: rgba(0, 158, 229, 0.2); border-radius: 1rem; padding: 3.5rem 1.5rem; }

.merit_ttl { display: flex; justify-content: center; align-items: center; column-gap: 0.7rem; font-size: 3rem; font-weight: bold; color: #1d4394; margin-bottom: 4rem; }
.merit_ttl::before, .merit_ttl::after { content: ""; display: inline-block; vertical-align: middle; width: 3.7rem; height: 3.5rem; background-position: center center; background-size: contain; background-repeat: no-repeat; }
.merit_ttl::before { background-image: url(../images/common/icon_merit_left.svg); }
.merit_ttl::after { background-image: url(../images/common/icon_merit_right.svg); }

.merit_list { display: inline-flex; flex-direction: column; row-gap: 2rem; text-align: start; }

.merit_item { display: flex; column-gap: 2rem; font-size: 2.4rem; line-height: calc(40 / 24); letter-spacing: 0.1em; }
.merit_item::before { content: ""; flex-shrink: 0; display: inline-block; vertical-align: middle; width: 5rem; height: 4.3rem; background-position: center center; background-size: contain; background-image: url(../images/common/icon_check.svg); background-repeat: no-repeat; }

.merit_imgs_list { display: flex; gap: 1rem 1rem; }

.merit_imgs_item { flex: 1; display: flex; flex-direction: column; align-items: center; row-gap: 1rem; }

.merit_imgs_item_txt { font-size: 1.1em; color: #1d4394; text-align: center; line-height: calc(30 / 18); letter-spacing: 0.1em; }

.merit_row { display: flex; justify-content: space-between; gap: 1rem; max-width: 94rem; margin: 0 auto; }

.merit_img { flex-shrink: 0; }
.merit_img img { margin: 0 auto; }

@media screen and (max-width: 750px) { .merit_box { padding: 7rem 3rem; margin-bottom: 5rem; }
  .merit_list { row-gap: 4rem; }
  .merit_ttl { font-size: 3.6rem; line-height: calc(48 / 36); letter-spacing: 0.1em; margin-bottom: 5rem; }
  .merit_ttl::before, .merit_ttl::after { width: 4.6rem; height: 4.3rem; }
  .merit_item { column-gap: 0.7rem; font-size: 3.6rem; line-height: calc(50 / 36); }
  .merit_item::before { width: 6rem; height: 5rem; }
  .merit_imgs_list { flex-wrap: wrap; gap: 3rem; }
  .merit_imgs_item { min-width: 45%; }
  .merit_imgs_item_img { text-align: center; }
  .merit_imgs_item_img img { width: 60%; margin: auto; }
  .merit_imgs_item_txt { font-size: 2.4rem; }
  .merit_row { flex-direction: column; row-gap: 6rem; } }
.ttl { font-size: 5rem; font-weight: 500; color: #1d4394; text-align: center; letter-spacing: 0.1em; margin-bottom: 6rem; }

@media screen and (max-width: 750px) { .ttl { font-size: 6rem; margin-bottom: 4rem; } }
.sec_ttl { font-size: 3.6rem; font-weight: 400; text-align: center; line-height: calc(70 / 36); letter-spacing: 0.1em; margin-bottom: 8rem; }

@media screen and (max-width: 750px) { .sec_ttl { font-size: 3.8rem; line-height: calc(70 / 42); } }
.pagetop { position: fixed; bottom: 2rem; right: 2rem; display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 0.5rem; font-family: "futura-pt", sans-serif; font-size: 1.2rem; color: inherit; text-decoration: none; opacity: 0; transition: opacity 0.3s ease, bottom 0.3s; z-index: 990; }
.pagetop img { width: 4rem; }

.drone-pagetop img { width: 6rem; }

.diving-pagetop img { width: 6rem; }

@media (hover: hover) { .pagetop:hover { bottom: 3rem; } }
@media screen and (max-width: 750px) { .pagetop { font-size: 2rem; bottom: 17rem; }
  .pagetop img { width: 6rem; }
  .diving-pagetop, .drone-pagetop { bottom: 15rem; } }
.btn_wrapper { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; }

.btn { position: relative; display: flex; justify-content: center; align-items: center; width: 100%; max-width: 43rem; height: 7rem; font-size: 1.6rem; color: #ffffff; text-decoration: none; background-color: #a2c336; border-radius: 1rem; cursor: pointer; transition: opacity 0.3s ease; }
.btn::after { content: "▶︎"; margin-left: 1em; transition: transform 0.3s ease; }
.btn:hover { opacity: 0.8; }
.btn:hover::after { transform: translateX(0.4rem); }

@media screen and (max-width: 750px) { .btn { width: 100%; max-width: none; height: auto; min-height: 8.8rem; font-size: 3.2rem; padding: 2rem; text-align: center; }
  .btn::after { position: absolute; right: 1.5rem; margin-left: 0; } }
.breadcrumbs { padding-top: 1.5rem; padding-bottom: 1.5rem; }
.breadcrumbs * { display: inline; }
.breadcrumbs > span { color: inherit; text-decoration: none; transition: color 0.3s ease; }
.breadcrumbs > span i { margin-right: 0.5rem; }
.breadcrumbs > span a { color: inherit; text-decoration: none; transition: color 0.3s ease; text-decoration: none; }
.breadcrumbs > span a:hover { color: #009ee5; }

.page-template-page-tmp-diving .breadcrumbs > span:nth-child(1), .page-template-page-tmp-diving .breadcrumbs > span:nth-child(2), .page-template-page-tmp-drone .breadcrumbs > span:nth-child(1), .page-template-page-tmp-drone .breadcrumbs > span:nth-child(2) { display: none; }
.page-template-page-tmp-diving .breadcrumbs > span:nth-child(3)::before, .page-template-page-tmp-drone .breadcrumbs > span:nth-child(3)::before { content: "\f015"; font-family: "Font Awesome 6 Free"; font-weight: bold; margin-right: 0.5rem; }

.container { width: 100%; max-width: 1130px; padding-left: 1.5rem; padding-right: 1.5rem; margin-left: auto; margin-right: auto; }

@media screen and (max-width: 750px) { .container { padding-left: 5rem; padding-right: 5rem; } }
.fixed-nav { position: sticky; bottom: 0; left: 0; right: 0; z-index: 999; }

.fixed-nav_menu { display: flex; }

.fixed-nav_item { flex: 1; }

.fixed-nav_link { display: flex; flex-direction: column; justify-content: center; align-items: center; row-gap: 1.5rem; font-family: "futura-pt", sans-serif; font-size: 2rem; font-weight: 600; color: #ffffff; text-decoration: none; background-color: #009ee5; text-transform: capitalize; padding-top: 2rem; padding-bottom: 2rem; }
.fixed-nav_link > img { height: 4rem; }
.fixed-nav_link i { font-size: 4rem; }

.fixed-nav_menu .fixed-nav_item:not(:last-child) .fixed-nav_link { border-right: solid 1px #ffffff; }

.diving-fixed-nav .fixed-nav_link { background-color: #1d4394; }

.table { width: 100%; border-collapse: collapse; }
.table tr { border-bottom: solid 1px #c2c2c2; }
.table tr:first-child { border-bottom: solid 1px #c2c2c2; }
.table th, .table td { line-height: 1.8; padding: 1.9rem 2rem 1.9rem 4rem; }
.table th { text-align: start; background-color: rgba(255, 255, 255, 0.5); }

@media screen and (max-width: 750px) { .table th, .table td { font-size: 3rem; line-height: calc(45 / 32); padding: 1.5rem 2rem; }
  .table td { padding-right: .5rem; }
  .table th { min-width: 18rem; text-align: start; } }
.detail_ttl { font-size: 3rem; color: #ffffff; line-height: calc(40 / 30); letter-spacing: 0.1em; text-align: center; padding: 3rem 1.5rem; }

.detail_body { padding: 4.5rem 5rem 6rem; }

.detail_subttl { font-size: 2.4rem; text-align: center; line-height: calc(40 / 24); letter-spacing: 0.1em; margin-bottom: 2rem; }

.detail_lead { line-height: calc(40 / 16); margin-bottom: 3.5rem; }

.detail_banner { display: flex; margin-bottom: 4.5rem; }

.detail_banner_ttl { flex-shrink: 0; display: flex; flex-direction: column; justify-content: center; align-items: center; row-gap: 2rem; color: #ffffff; padding: 1rem 3rem; }

.detail_banner_ttl_main { font-family: "futura-pt", sans-serif; font-size: 3rem; font-weight: 500; line-height: calc(40 / 30); }

.detail_banner_ttl_txt { text-align: center; line-height: calc(30 / 16); letter-spacing: 0.1em; }

.detail_banner_body { flex-grow: 1; background-color: #ffffff; padding: 1.5rem 3rem; }

.detail_banner_price { display: flex; flex-wrap: wrap; column-gap: 3rem; border-bottom: solid 1px #707070; padding-bottom: 1rem; margin-bottom: 1rem; }

.detail_banner_price p { font-size: 1.8rem; line-height: calc(40 / 18); letter-spacing: 0.1em; }

.detail_banner_price p strong { font-size: 3rem; margin-left: 0.5rem; margin-right: 0.5rem; }

.detail_banner_price p span { font-size: 1.3rem; color: #ffffff; vertical-align: super; letter-spacing: 0; background-color: #e8744f; border-radius: 100vh; padding: 0.5rem 0.7rem; }

.detail_banner_txt { line-height: calc(30 / 16); }

.detail_table { width: 100%; border-collapse: collapse; border-top: solid 1px #707070; border-bottom: solid 1px #707070; margin-bottom: 6rem; }
.detail_table tr:not(:last-of-type) { border-bottom: solid 1px #707070; }
.detail_table th { width: 20%; border-right: solid 1px #707070; padding: 1.4rem 1rem; }
.detail_table td { line-height: calc(30 / 16); padding: 1.4rem 4rem; }
.detail_table td hr { margin: 2rem 0; }
.detail_table ul li { position: relative; padding-left: 2.2rem; }
.detail_table ul li::before { content: "●"; color: #009ee5; position: absolute; left: 0; }

.detail_images { display: flex; gap: 4rem; }

.detail_image { flex: 1; display: flex; align-items: flex-start; column-gap: 3rem; }

.detail_image_ttl { display: flex; justify-content: center; align-items: center; min-width: 11rem; height: auto; color: #ffffff; text-align: center; background-color: #009ee5; border-radius: 100%; aspect-ratio: 1/1; line-height: calc(30 / 16); }

.detail_image_img p { margin-top: 1rem; text-align: center; }

.detail_row { display: flex; justify-content: space-between; margin-bottom: 5rem; }

.detail_row_img { width: 36%; }

.detail_row_txt { width: 60%; line-height: calc(40 / 16); }

@media screen and (max-width: 750px) { .detail_ttl { font-size: 4rem; }
  .detail_body { padding: 4.5rem 3.5rem 6rem; }
  .detail_subttl { font-size: 3.2rem; }
  .detail_banner { flex-direction: column; }
  .detail_banner_ttl { padding: 3rem 3.5rem; row-gap: 1rem; }
  .detail_banner_ttl_main { font-size: 4.2rem; }
  .detail_banner_price { justify-content: center; }
  .detail_banner_price p { font-size: 2rem; }
  .detail_banner_price p strong { font-size: 4.2rem; }
  .detail_banner_price p span { font-size: 2rem; }
  .detail_table th, .detail_table td { display: block; width: 100%; }
  .detail_table th { border-right: none; padding: 3rem 3rem 1rem; }
  .detail_table td { padding: 1rem 3rem 3rem; }
  .detail_table td hr { margin: 3rem 0; }
  .detail_table ul li { padding-left: 3.8rem; line-height: 1.65; margin-bottom: 1rem; }
  .detail_table ul li:last-of-type { margin-bottom: 0; }
  .detail_images { flex-direction: column; row-gap: 6rem; }
  .detail_image { flex-direction: column; align-items: center; row-gap: 2rem; }
  .detail_image_ttl { width: 30%; }
  .detail_image_img img { margin: auto; }
  .detail_row { flex-direction: column; row-gap: 4rem; }
  .detail_row_img, .detail_row_txt { width: 100%; } }
.difference { background-color: rgba(0, 158, 229, 0.2); padding-top: 16rem; padding-bottom: 12rem; }

.difference_ttl { font-size: 3.6rem; line-height: calc(70 / 36); letter-spacing: 0.1em; text-align: center; margin-bottom: 4rem; }

.difference_list { display: grid; row-gap: min(calc(100vw * 290 / 1440), 290px); padding-top: 12rem; padding-bottom: 24rem; margin-bottom: 7rem; }

.difference_item { position: relative; display: flex; height: min(calc(100vw * 540 / 1440), 540px); }
.difference_item::before { content: ""; position: absolute; top: 50%; left: 50%; width: 100vw; height: min(calc(100vw * 540 / 1440), 540px); background-color: rgba(255, 255, 255, 0.7); transform: translate(-50%, -50%); }
.difference_item::after { content: ""; position: absolute; display: inline-block; vertical-align: middle; width: min(calc(100vw * 800 / 1440), 800px); height: min(calc(100vw * 712 / 1440), 712px); background-position: center center; background-size: contain; background-image: url(../images/common/bg_logo.svg); background-repeat: no-repeat; z-index: -1; }

.difference_img { position: absolute; top: 50%; left: 0; right: 0; width: 100vw; margin: 0 calc(50% - 50vw); transform: translateY(calc(-50% + 6rem)); z-index: 1; }

.difference_img img { max-width: 50vw; }

.difference_content { position: relative; display: flex; flex-direction: column; justify-content: center; width: 50%; padding: 1rem 0; z-index: 2; }

.difference_item_ttl { display: flex; flex-direction: column; row-gap: 1rem; font-size: 3rem; color: #1d4394; line-height: calc(60 / 30); letter-spacing: 0.1em; margin-bottom: 3rem; }
.difference_item_ttl::after { content: attr(subtext); font-family: "futura-pt", sans-serif; font-size: 3rem; font-weight: 500; color: #009ee5; line-height: calc(40 / 30); }

.difference_item_txt { line-height: calc(40 / 16); }

.difference_list > .difference_item:nth-of-type(odd)::after { top: -55%; right: -53%; }
.difference_list > .difference_item:nth-of-type(odd) .difference_img img { margin: 0 auto 0 0; transform: translateX(-4rem); }
.difference_list > .difference_item:nth-of-type(odd) .difference_content { margin: 0 0 0 auto; }

.difference_list > .difference_item:nth-of-type(even)::after { bottom: -91%; left: -53%; }
.difference_list > .difference_item:nth-of-type(even) .difference_img img { margin: 0 0 0 auto; transform: translateX(4rem); }
.difference_list > .difference_item:nth-of-type(even) .difference_content { margin: 0 auto 0 0; }

@media (max-width: 1023px) { .difference_list { row-gap: 6rem; padding-top: 0; padding-bottom: 0; margin-bottom: 6rem; }
  .difference_item { flex-direction: column; row-gap: 3.6rem; height: auto; }
  .difference_item::before, .difference_item::after { content: none; }
  .difference_img { position: relative; top: unset; left: auto; right: auto; width: 81rem; height: 81rem; margin: unset; transform: unset; }
  .difference_img img { width: 81rem; height: 81rem; max-width: none; object-fit: cover; }
  .difference_content { position: relative; display: flex; flex-direction: column; justify-content: center; width: calc(100vw - 10rem); padding: 1rem 0; margin: 0; z-index: 2; }
  .difference_item_ttl { row-gap: 2rem; row-gap: 0.5rem; margin-bottom: 2rem; }
  .difference_list > .difference_item:nth-of-type(odd) .difference_img img { transform: translateX(-19%); }
  .difference_list > .difference_item:nth-of-type(odd) .difference_content { margin: 0; }
  .difference_list > .difference_item:nth-of-type(even) .difference_img img { transform: translateX(0); }
  .difference_list > .difference_item:nth-of-type(even) .difference_content { margin: 0; } }
@media screen and (max-width: 750px) { .difference { padding-top: 12rem; padding-bottom: 13rem; }
  .difference_list { row-gap: 4rem; }
  .difference_ttl { font-size: 4.2rem; line-height: calc(70 / 42); margin-bottom: 7rem; }
  .difference_item_ttl { font-size: 3.4rem; line-height: calc(60 / 36); margin-bottom: 2rem; }
  .difference_item_ttl::after { font-size: 6rem; font-weight: bold; line-height: calc(60 / 40); }
  .difference_item_txt { font-size: 3.2rem; line-height: calc(55 / 32); } }
.difference_points { display: flex; justify-content: center; align-items: center; gap: 3.3rem; margin-bottom: 7rem; }

.difference_point { position: relative; display: flex; justify-content: center; align-items: center; text-align: center; width: 25%; max-width: 25rem; font-size: 2.4rem; font-weight: 600; color: #ffffff; line-height: calc(40 / 24); letter-spacing: 0.1em; border-radius: 100%; }
.difference_point::before { content: ""; display: block; padding-top: 100%; }

.difference_points .difference_point:nth-child(odd) { background-color: #1d4394; }

.difference_points .difference_point:nth-child(even) { background-color: #009ee5; }

@media (max-width: 1023px) { .difference_points { flex-wrap: wrap; gap: 4rem 5rem; }
  .difference_point { flex: 1; width: auto; min-width: 40%; max-width: unset; } }
@media screen and (max-width: 750px) { .difference_points { margin-bottom: 8rem; }
  .difference_point { font-size: 2.8rem; line-height: calc(50 / 30); } }
.faq_ttl { display: flex; align-items: center; font-size: 1.8rem; line-height: 1.5; letter-spacing: 0.1em; color: #ffffff; background-color: #009ee5; border-radius: 1rem; cursor: pointer; padding: 0.4rem 2rem; margin-bottom: 1.6rem; }
.faq_ttl::before { content: "Q"; font-size: 3.6rem; margin-right: 2rem; }

.faq_ttl_icon { flex-shrink: 0; position: relative; display: inline-block; width: 3rem; height: auto; aspect-ratio: 1/1; background-color: #ffffff; border-radius: 0.5rem; margin: 0 0 0 auto; }
.faq_ttl_icon::before, .faq_ttl_icon::after { content: ""; display: block; position: absolute; top: 50%; left: 50%; width: 1.2rem; height: 0.2rem; background-color: #009ee5; }
.faq_ttl_icon::before { transform: translate(-50%, -50%); }
.faq_ttl_icon::after { transform: translate(-50%, -50%) rotate(90deg) scale(1); transition: transform 0.3s ease; transform-origin: center; }

.faq_txt { line-height: calc(40 / 16); margin-bottom: 5.3rem; display: none; }

.faq_ttl.close .faq_ttl_icon::after { transform: translate(-50%, -50%) rotate(90deg) scale(0); }

@media screen and (max-width: 750px) { .faq_ttl { font-size: 2.8rem; padding: 1.5rem 2rem; }
  .faq_txt { line-height: 1.65; }
  .faq_ttl_icon { width: 4rem; }
  .faq_ttl_icon::before, .faq_ttl_icon::after { width: 3rem; } }
.feature-point_list { counter-reset: counter; display: grid; row-gap: 5rem; margin-bottom: 8rem; }

.feature-point_item { display: flex; align-items: flex-start; column-gap: 5rem; }

.feature-point_item_num { flex-shrink: 0; display: flex; flex-direction: column; justify-content: center; align-items: center; row-gap: 0.8rem; font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif; color: #ffffff; line-height: 1; width: 15rem; height: auto; background-color: #1d4394; border-radius: 100%; aspect-ratio: 1/1; }
.feature-point_item_num::before { content: "Point"; font-size: 2.4rem; }
.feature-point_item_num::after { counter-increment: counter 1; content: "" counter(counter); font-size: 5rem; }

.feature-point_item_content { margin-top: -1rem; }

.feature-point_item_ttl { font-family: "futura-pt", sans-serif; font-size: 7rem; font-weight: 500; color: #009ee5; line-height: calc(60 / 40); margin-bottom: -0.5rem; }

.feature-point_item_subttl { font-size: 2.4rem; color: #1d4394; line-height: calc(40 / 24); letter-spacing: 0.1em; margin-bottom: 2.5rem; }

.feature-point_item_txt { line-height: calc(40 / 16); }

@media screen and (max-width: 750px) { .feature-point_ttl { font-size: 4.2rem; }
  .feature-point_item { flex-direction: column; row-gap: 1rem; }
  .feature-point_item_subttl { font-size: 2.8rem; margin-left: 18rem; }
  .feature-point_item_num { position: absolute; }
  .feature-point_item_ttl { margin-left: 18rem; line-height: 1; margin-bottom: 1.5rem; } }
.flow_list { display: grid; row-gap: 9rem; max-width: 84rem; margin: 0 auto 9rem; }

.flow_item { position: relative; display: flex; flex-direction: column; }
.flow_item:not(:last-of-type)::after { content: ""; position: absolute; top: calc(100% + 3rem); left: 50%; width: 0; height: 0; border-style: solid; border-width: 3rem 3rem 0 3rem; border-color: #a2c336 transparent transparent transparent; transform: translateX(-50%); }

.flow_item_ttl { font-size: 2.4rem; line-height: 1.5; letter-spacing: 0.1em; color: #ffffff; text-align: center; background-color: #1d4394; padding: 1.2rem 1rem; }

.flow_item_txt { text-align: center; line-height: calc(30 / 16); background-color: #ffffff; padding: 2.5rem 3rem; }
.flow_item_txt a { color: #009ee5; }

@media screen and (max-width: 750px) { .flow_ttl { font-size: 4.2rem; }
  .flow_item_ttl { font-size: 3.2rem; } }
.page-levelup .page-header { background-image: url(../images/diving-levelup/bg_page-header.jpg); }

.diving-aow { padding-top: 12rem; padding-bottom: 10rem; }
.diving-aow::before { top: 30%; }

.diving-aow_mainttl { font-family: "futura-pt", sans-serif; font-size: 6rem; font-weight: 500; color: #009ee5; text-align: center; letter-spacing: 0.05em; margin-bottom: 0.5rem; }

.diving-aow_subttl { font-size: 2.4rem; text-align: center; letter-spacing: 0.1em; margin-bottom: 2.5rem; }

.diving-aow_lead { text-align: center; line-height: calc(40 / 16); }

.page-levelup #detail01, .page-levelup #detail02 { padding-bottom: 8rem; }

.page-levelup #detail03 { padding-bottom: 18rem; }

.diving-aow_endtxt { color: #1d4394; line-height: calc(30 / 16); text-align: center; margin-bottom: 5rem; }

.diving-fundive { overflow: hidden; padding-bottom: 12rem; }
.diving-fundive::before { top: 37%; }

.diving-fundive_mainttl { font-family: "futura-pt", sans-serif; font-size: 6rem; font-weight: 500; color: #009ee5; text-align: center; letter-spacing: 0.05em; margin-bottom: 0; }

.diving-fundive_subttl { font-size: 2.4rem; text-align: center; letter-spacing: 0.1em; margin-bottom: 3rem; }

.diving-fundive_lead { text-align: center; line-height: calc(40 / 16); margin-bottom: 7rem; }

@media screen and (max-width: 750px) { .diving-aow_lead, .diving-fundive_lead { text-align: left; } }
.mv { position: relative; width: 100%; height: 100vh; background-position: center 0%; background-size: cover; background-repeat: no-repeat; }

.mv_content { position: absolute; top: 54.7%; left: 17.5%; }

.mv_ttl { font-family: "futura-pt", sans-serif; font-size: min(calc(100vw * 100 / 1280), 10rem); font-weight: 900; color: #ffffff; line-height: calc(130 / 100); letter-spacing: 0.02em; }

.mv_scroll { position: absolute; bottom: 0.5rem; left: 50%; display: inline-flex; flex-direction: column; justify-content: center; align-items: center; row-gap: 0.5rem; font-weight: 600; color: #ffffff; text-decoration: none; transform: translateX(-50%); }
.mv_scroll::after { content: ""; display: inline-block; vertical-align: middle; width: 1.2rem; height: 7.4rem; background-position: center center; background-size: contain; background-image: url(../images/common/icon_scroll.svg); background-repeat: no-repeat; }

.mv_slide img { width: 100vw; height: 100vh; object-fit: cover; }

@keyframes zoomUp { 0% { transform: scale(1); }
  100% { transform: scale(1.15); } }
.add-animation { animation: zoomUp 10s linear 0s normal both; }

@media (max-width: 1280px) { .mv_content { left: 50%; transform: translateX(-50%); } }
@media screen and (max-width: 750px) { .mv_ttl { font-size: 10rem; } }
.mission { background-position: center bottom; background-size: cover; background-repeat: no-repeat; }

.mission_ttl { font-size: 3.6rem; text-align: center; line-height: calc(70 / 36); letter-spacing: 0.1em; margin-bottom: 5rem; }

.mission_txt { text-align: center; line-height: calc(40 / 16); }
.mission_txt:not(:last-of-type) { margin-bottom: 4rem; }
.mission_txt:last-of-type { margin-bottom: 8.5rem; }
.mission_txt span { font-size: 2rem; line-height: calc(50 / 20); }

@media screen and (max-width: 750px) { .mission { padding-bottom: 23rem; }
  .mission_ttl { font-size: 4.2rem; line-height: calc(70 / 42); margin-bottom: 6.2rem; }
  .mission_txt { font-size: 3.2rem; line-height: calc(55 / 32); text-align: start; }
  .mission_txt:not(:last-of-type) { margin-bottom: 5.3rem; }
  .mission_txt:last-of-type { margin-bottom: 7.6rem; }
  .mission_txt span { font-size: 3.2rem; line-height: calc(55 / 32); } }
.top-news { padding-top: 8rem; padding-bottom: 7rem; }

.top-news_wrap { width: 100%; margin-bottom: 6rem; }

.top-news_list { display: flex; column-gap: 2.5rem; }
.top-news_list > * { flex: 1; max-width: 350px; }

.top-news_list .slick-next { top: 35%; right: 2rem; width: 5rem; height: 7rem; z-index: 10; }
.top-news_list .slick-next::before { content: ""; display: inline-block; vertical-align: middle; width: 5rem; height: 7rem; background-position: center center; background-size: contain; background-image: url(../images/common/icon_slick_right.svg); background-repeat: no-repeat; }

@media screen and (max-width: 750px) { .top-news { padding-top: 8.5rem; padding-bottom: 7rem; }
  .top-news_wrap { width: calc(100vw - 5rem); margin-right: calc(50% - 50vw); margin-bottom: 5rem; }
  .top-news .slick-list { padding-right: 16rem !important; }
  .top-news .news_link { margin: 0 1.5rem; }
  .top-news_list > * { max-width: inherit; } }
.news-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 6rem 5rem; }

@media screen and (max-width: 750px) { .news-list { grid-template-columns: repeat(1, 1fr); } }
.wrapper .news_link { padding: 0 0; }

.page-header { width: 100%; background-position: center center; background-size: cover; background-image: url(../images/common/bg_page-header.jpg); background-repeat: no-repeat; }

.page-header_ttl { display: flex; flex-direction: column; justify-content: center; align-items: center; font-family: "futura-pt", sans-serif; color: #ffffff; height: 40rem; }

.page-header_ttl_main { position: relative; font-size: 7rem; font-weight: 700; text-transform: uppercase; padding-bottom: 1.5rem; margin-bottom: 1.5rem; }
.page-header_ttl_main::before { content: ""; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); width: 10rem; height: 3px; background-color: #ffffff; }

.page-header_ttl_sub { font-size: 1.6rem; font-weight: 400; }

@media screen and (max-width: 750px) { .page-header_ttl { height: 30rem; }
  .page-header_ttl_sub { font-size: 2.8rem; } }
.news_link { display: flex; flex-direction: column; color: inherit; text-decoration: none; background-color: #ffffff; padding: 3rem 2.5rem 2.5rem; transition: opacity 0.3s ease; }

.news_link_thumbnail { margin-bottom: 1rem; overflow: hidden; }
.news_link_thumbnail img { width: 100%; height: auto; aspect-ratio: 3/2; transition: transform 0.3s ease; }

.news_link_ttl { font-size: 1.6rem; font-weight: 400; margin-bottom: 2.2rem; }

.news_link .tag-list { margin-bottom: 1rem; }

@media (hover: hover) { .news_link:hover { opacity: 0.8; }
  .news_link:hover .news_link_thumbnail img { transform: scale(1.1); } }
@media screen and (max-width: 750px) { .news_link { padding: 3rem 3rem; }
  .news_link_thumbnail { margin-bottom: 3.5rem; }
  .news_link_thumbnail img { aspect-ratio: 4.5/3; }
  .news_link_ttl { font-size: 2.8rem; font-weight: 600; margin-bottom: 3rem; }
  .news_link .tag-list { margin-bottom: .5rem; } }
.tag-list { display: flex; flex-wrap: wrap; gap: 0.8rem 0.8rem; }

.tag { font-size: 1.2rem; color: #ffffff; background-color: #009ee5; padding: 0.5rem 1rem; line-height: 1; white-space: nowrap; border-radius: 0.3rem; }
.tag.drone { background-color: #009ee5; }
.tag.diving { background-color: #1d4394; }
.tag.news { background-color: #a2c336; }

@media screen and (max-width: 750px) { .tag-list { gap: 1.5rem 1.5rem; }
  .tag { font-size: 2rem; padding: 0.8rem 1.2rem; } }
.time { font-size: 1.4rem; font-weight: 400; }

@media screen and (max-width: 750px) { .time { font-size: 2.4rem; } }
.news_post { border: solid 1px #c2c2c2; padding: 4rem 4rem 3rem; margin-bottom: 1.5rem; }

.news_post_meta { display: flex; flex-wrap: wrap; align-items: center; column-gap: 1rem; margin-bottom: 2rem; }
.news_post_meta .time { margin-right: 1.5rem; }

.news_post_ttl { font-family: "futura-pt", sans-serif; font-size: 2.8rem; font-weight: 600; margin-bottom: 3.5rem; }

.news_post_thumbnail { margin-bottom: 5.5rem; }
.news_post_thumbnail img { width: 100%; }

.news_post_content { min-height: 31rem; line-height: 2.5; }
.news_post_content > *:not(:last-child) { margin-bottom: 2em; }
.news_post_content > *:last-child { margin-bottom: 5rem; }

.news_post_sns { display: flex; column-gap: 1rem; }

.news_post_sns_link { display: flex; justify-content: center; align-items: center; width: 3.4rem; height: 3.4rem; color: #ffffff; text-decoration: none; background-color: #c2c2c2; border-radius: 100%; transition: opacity 0.3s ease; }
.news_post_sns_link:hover { opacity: 0.8; }

.news_post_links { position: relative; }
.news_post_links .center { position: absolute; left: 50%; top: 0; transform: translateY(0%) translateX(-50%); }
.news_post_links a { color: inherit; text-decoration: none; transition: color 0.3s ease; }
.news_post_links a:hover { color: #009ee5; }
.news_post_links .nav-next { float: right; }
.news_post_links .nav-previous { float: left; }
.news_post_links .navigation.post-navigation::after { content: ""; display: block; clear: both; }

@media screen and (max-width: 750px) { .news_post_ttl { font-size: 4rem; }
  .news_post_accent span { width: 5rem; height: 5rem; }
  .news_post_sns { column-gap: 3rem; }
  .news_post_sns_link { width: 6.4rem; height: 6.4rem; } }
.top_lead { padding-top: 12.8rem; padding-bottom: 0; }

@media screen and (max-width: 750px) { .top_lead { padding-top: 10rem; }
  .top_lead .sec_ttl { text-align: start; } }
.top-drone, .top-diving { position: relative; background-position: center bottom; background-size: 100% auto; background-repeat: no-repeat; }
.top-drone > *, .top-diving > * { position: relative; z-index: 1; }

.top-drone_ttl, .top-diving_ttl { display: flex; flex-direction: column; row-gap: 1.5rem; font-size: min(calc(100vw * 24 / 1440), 24px); font-weight: 600; line-height: 1; letter-spacing: 0.1em; }
.top-drone_ttl::after, .top-diving_ttl::after { text-transform: uppercase; font-family: "futura-pt", sans-serif; font-size: min(calc(100vw * 110 / 1440), 110px); font-weight: 500; letter-spacing: 0.1em; }

.top-drone_ttl { align-items: flex-end; }
.top-drone_ttl::after { content: "drone"; color: #009ee5; }

.top-diving_ttl { align-items: flex-start; }
.top-diving_ttl::after { content: "diving"; color: #1d4394; }

.home .flex.col-2 { display: flex; column-gap: 5rem; }
.home .flex.col-2 .item { width: 100%; }

@media screen and (max-width: 750px) { .home .flex.col-2 { flex-wrap: wrap; row-gap: 5rem; }
  .home .flex.col-2 .item { width: 100%; }
  .top-drone_ttl, .top-diving_ttl { width: 100%; align-items: center; font-size: 4.2rem; font-weight: 600; row-gap: 2.5rem; }
  .top-drone_ttl::before, .top-diving_ttl::before { text-transform: uppercase; font-family: "futura-pt", sans-serif; font-size: 13.5rem; font-weight: 500; letter-spacing: 0.1em; }
  .top-drone_ttl::after, .top-diving_ttl::after { content: none; }
  .top-drone_ttl::before { content: "drone"; color: #009ee5; }
  .top-diving_ttl::before { content: "diving"; color: #1d4394; } }
.top-drone_row, .top-diving_row { display: flex; justify-content: space-between; }

.top-drone { background-image: url(../images/top/bg_top-drone.png); padding-top: 10rem; padding-bottom: 8rem; }

.top-drone_img { position: absolute; bottom: 0; right: 5%; display: block; width: min(calc(100vw * 590 / 1600), 590px); }

.top-drone_row { margin-bottom: 7rem; }

.top-drone_left { position: relative; margin-left: calc(50% - 50vw); width: calc(50vw - 6rem); }
.top-drone_left::before { content: ""; position: absolute; top: 28%; left: 90%; display: inline-block; vertical-align: middle; width: min(calc(100vw * 300 / 1600), 30rem); height: min(calc(100vw * 300 / 1600), 30rem); background-position: center center; background-size: contain; background-image: url(../images/top/ndmc_logo.png); background-repeat: no-repeat; }
.top-drone_left img { width: 100%; aspect-ratio: 900/600; object-fit: cover; }

.top-drone_right { width: calc(50% - 6rem); display: flex; flex-direction: column; justify-content: space-between; align-items: flex-end; padding-top: 4rem; }
.top-drone_right img { width: min(calc(100vw * 375 / 1600), 375px); }

.top-drone_content { display: flex; column-gap: 4rem; margin-bottom: 8rem; }

.top-drone_content_img { flex-shrink: 0; width: min(calc(100vw * 200 / 1600), 200px); }

.top-drone_content_txt { flex-grow: 1; font-size: 1.6rem; line-height: 2.5; }

.top-drone_content_txt_main { font-size: 2.4rem; font-weight: 600; color: #ffffff; line-height: 1.7; margin-bottom: 2.5rem; }

@media (max-width: 1600px) { .top-drone_img { right: -5%; } }
@media (min-width: 751px) and (max-width: 1280px) { .top-drone_content_txt_main { color: inherit; } }
@media screen and (max-width: 750px) { .top-drone { background-image: url(../images/top/bg_top-drone_sp.png); }
  .top-drone_img { bottom: 20rem; right: -9rem; width: 60rem; }
  .top-drone_row { flex-direction: column; margin-bottom: 8rem; }
  .top-drone_left { margin: 0 calc(50% - 50vw); width: 100vw; }
  .top-drone_left::before { content: ""; position: absolute; top: 100%; left: 5rem; width: 30rem; height: 30rem; transform: translateY(-10rem); }
  .top-drone_right { width: 100%; flex-wrap: wrap; flex-direction: row; justify-content: flex-end; padding-top: 4rem; }
  .top-drone_right img { display: block; width: 33.5rem; margin-bottom: 10rem; }
  .top-drone_content { flex-direction: column-reverse; row-gap: 5rem; padding-bottom: 17.5rem; margin-bottom: 3.5rem; }
  .top-drone_content_img { width: 30rem; }
  .top-drone_content_img img { width: 100%; }
  .top-drone_content_txt { font-size: 3.2rem; line-height: calc(55 / 32); }
  .top-drone_content_txt_main { font-size: inherit; font-weight: inherit; color: inherit; line-height: inherit; margin-bottom: 3rem; } }
.top-diving { background-image: url(../images/top/bg_top_diving.png); padding-bottom: 10rem; }

.top-diving_row { align-items: flex-end; margin-bottom: 8rem; }

.top-diving_left { width: calc(50% - 6rem); }

.top-diving_right { position: relative; margin-right: calc(50% - 50vw); width: calc(50vw - 6rem); }
.top-diving_right::before { content: ""; position: absolute; top: 7%; right: 102%; display: inline-block; vertical-align: middle; width: 24rem; height: 24rem; background-position: center center; background-size: contain; background-image: url(../images/top/padi_logo.png); background-repeat: no-repeat; z-index: 1; }

.top-diving_content { position: relative; display: flex; justify-content: space-between; margin-bottom: 1rem; }

.top-diving_content_img { width: 72%; margin-left: calc(50% - 50vw); margin-right: 3rem; }
.top-diving_content_img img { margin: 0 0 0 auto; }

.top-diving_content_txt { width: 57%; font-size: 1.6rem; line-height: 2.5; }

.top-diving_content_txt_main { font-size: 2.4rem; font-weight: 600; color: #ffffff; line-height: 1.7; margin-bottom: 2.5rem; }

@media (min-width: 751px) and (max-width: 1280px) { .top-diving_right::before { top: 5%; right: 102%; width: calc(100vw * 240 / 1280); height: calc(100vw * 240 / 1280); }
  .top-diving_ttl { font-size: calc(100vw * 24 / 1280); }
  .top-diving_ttl::after { font-size: calc(100vw * 100 / 1280); }
  .top-diving_content_txt_main { color: inherit; } }
@media screen and (max-width: 750px) { .top-diving { background-image: url(../images/top/bg_top_diving_sp.png); }
  .top-diving_row { flex-direction: column-reverse; row-gap: 2rem; margin-bottom: 6.5rem; }
  .top-diving_left { width: 100%; }
  .top-diving_right { position: relative; margin: 0 calc(50% - 50vw); width: 100vw; margin-bottom: 26rem; }
  .top-diving_right::before { content: ""; position: absolute; top: 100%; left: 50%; right: auto; width: 30rem; height: 30rem; transform: translate(-50%, -10rem); }
  .top-diving_content { flex-wrap: wrap; flex-direction: column-reverse; margin-bottom: 3rem; }
  .top-diving_content_img { width: 100%; padding: 0 3rem; margin-left: 0; margin-bottom: 1rem; margin-right: 0; }
  .top-diving_content_img img { width: 100%; }
  .top-diving_content_txt { width: 100%; font-size: 3.2rem; line-height: calc(55 / 32); }
  .top-diving_content_txt_main { font-size: 3.2rem; font-weight: inherit; color: inherit; line-height: calc(55 / 32); margin-bottom: 2rem; } }
.company { background-position: center center; background-size: cover; background-image: url(../images/top/bg_company.jpg); background-repeat: no-repeat; padding-bottom: 10rem; }

.company .ttl { margin-bottom: 5rem; }

@media screen and (max-width: 750px) { .company { padding-top: 13rem; }
  .company .ttl { font-size: 6.5rem; margin-bottom: 5rem; } }
.contact-top_txt { max-width: 710px; text-align: center; line-height: calc(40 / 16); margin: 0 auto 8rem; }

.contact-top_txt > a { color: inherit; text-underline-offset: 0.3em; }

.contact-top_box { border: solid 1px #1d4394; padding-top: 5rem; }

.contact-top_box_ttl { display: flex; justify-content: center; align-items: center; column-gap: 3rem; font-size: 3rem; font-weight: 600; color: #1d4394; margin-bottom: 4.5rem; }
.contact-top_box_ttl::before, .contact-top_box_ttl::after { content: ""; display: inline-block; vertical-align: middle; width: 3.7rem; height: 3.5rem; background-position: center center; background-size: contain; background-repeat: no-repeat; }
.contact-top_box_ttl::before { background-image: url(../images/common/icon_merit_left.svg); }
.contact-top_box_ttl::after { background-image: url(../images/common/icon_merit_right.svg); }

.contact-top_box_list { max-width: 1000px; padding-left: 1.5rem; padding-right: 1.5rem; margin: 0 auto 3rem; }

.contact-top_box_list li { display: flex; line-height: calc(30 / 16); }
.contact-top_box_list li::before { flex-shrink: 0; content: "●"; color: #009ee5; margin-right: .5rem; }

.contact-top_privacy > dt { font-size: 2rem; line-height: 2; letter-spacing: 0.1em; color: #ffffff; background-color: #1d4394; cursor: pointer; }

.contact-top_privacy > dt p { display: flex; justify-content: space-between; max-width: 1000px; padding: 0.5rem 1.5rem; margin: 0 auto; }

.contact-top_privacy_icon { flex-shrink: 0; position: relative; display: inline-block; width: 2rem; height: auto; aspect-ratio: 1/1; }
.contact-top_privacy_icon::before, .contact-top_privacy_icon::after { content: ""; display: block; position: absolute; top: 50%; left: 50%; width: 1.6rem; height: 0.2rem; background-color: #ffffff; }
.contact-top_privacy_icon::before { transform: translate(-50%, -50%); }
.contact-top_privacy_icon::after { transform: translate(-50%, -50%) rotate(90deg) scale(0); transition: transform 0.3s ease; transform-origin: center; }

.contact-top_privacy > dt.close .contact-top_privacy_icon::after { transform: translate(-50%, -50%) rotate(90deg) scale(1); }

.contact-top_privacy > dd { padding-top: 5rem; max-width: 1000px; padding: 3rem 1.5rem 5rem; margin: 0 auto; }

.contact-top_privacy > dd p { line-height: calc(30 / 16); }

.contact-top_privacy_ttl { font-size: 2rem; font-weight: 600; color: #1d4394; line-height: 2; letter-spacing: 0.1em; margin-top: 2rem; margin-bottom: 0; }

@media screen and (max-width: 750px) { .contact-top_box_ttl { font-size: 3.6rem; }
  .contact-top_box_ttl::before, .contact-top_box_ttl::after { width: 4.6rem; height: 4.3rem; }
  .contact-top_privacy > dt { font-size: 3rem; }
  .contact-top_privacy_ttl { font-size: 3rem; }
  .contact-top_box_list { padding-left: 3rem; padding-right: 3rem; }
  .contact-top_box_list li::before { margin-right: 1rem; }
  .contact-top_privacy > dd { padding: 3rem 3rem 5rem; }
  .contact-top_privacy > dt p { padding: 1.5rem 3rem; } }
.contact-form { padding-top: 16rem; padding-bottom: 16rem; }

.drone-home-mv .mv_content { top: auto; bottom: 25%; left: 11%; }

@media (max-width: 1440px) { .drone-home-mv .mv_content { left: 0; } }
@media (max-width: 1280px) { .drone-home-mv .mv_content { transform: inherit; } }
.drone-mission { background-image: url(../images/drone-home/bg_mission.jpg); padding-top: 12rem; padding-bottom: 13rem; }
.drone-mission::before { top: 14%; }

@media screen and (max-width: 750px) { .drone-mission { padding-top: 10rem; padding-bottom: 23rem; } }
.drone-license { position: relative; padding-bottom: 23rem; }

.drone-license_icon { position: relative; z-index: 1; }
.drone-license_icon::before { content: ""; position: absolute; top: 0; left: 10%; display: inline-block; vertical-align: middle; width: min(calc(100vw * 369 / 1280), 369px); height: min(calc(100vw * 243 / 1280), 243px); background-position: center center; background-size: contain; background-image: url(../images/drone-home/img_license_before.png); background-repeat: no-repeat; transform: translateY(-60%); z-index: 1; }

.drone-license .bg-wave_txt { top: 31%; color: #ffffff; }

.drone-license_row { display: flex; align-items: center; margin-bottom: 4rem; }

.drone-license_text { flex-shrink: 0; width: 100%; max-width: 80rem; }

.drone-license_text p { line-height: calc(40 / 16); }

.drone-license_img { flex-shrink: 0; }

.drone-license_img img { transform: translateX(4%); max-height: 39rem; }

@media (max-width: 1280px) { .drone-license .bg-wave { margin-bottom: 5rem; }
  .drone-license_row { flex-direction: column; }
  .drone-license_text { width: auto; }
  .drone-license_img { width: 100%; }
  .drone-license_img img { margin: 0 0 0 auto; transform: translateX(0); } }
@media screen and (max-width: 750px) { .drone-license { padding-bottom: 30rem; }
  .drone-license_icon::before { left: 0; width: 36.9rem; height: 24.3rem; }
  .drone-license_text p { font-size: 3.2rem; line-height: calc(55 / 32); }
  .drone-license_img img { margin: 0 auto; transform: translateX(8%); }
  .drone-license .bg-wave_txt { color: #222222; } }
.drone-professional { position: relative; padding-top: 22rem; padding-bottom: 15rem; }

.drone-professional_ttl { position: absolute; top: 0; left: 50%; transform: translate(-50%, -50%); }

.drone-professional_row { display: flex; column-gap: 4rem; margin-bottom: 6rem; }

.drone-professional_imgs { display: flex; flex-direction: column; row-gap: 1.5rem; }

.drone-professional_content_ttl { font-size: 3.6rem; color: #1d4394; line-height: calc(60 / 36); letter-spacing: 0.1em; margin-bottom: 3.5rem; }

.drone-professional_txt { line-height: calc(40 / 16); }
.drone-professional_txt:not(:last-of-type) { margin-bottom: 2rem; }

@media screen and (max-width: 750px) { .drone-professional { padding-top: 24rem; padding-bottom: 10rem; }
  .drone-professional_row { flex-direction: column-reverse; row-gap: 4rem; }
  .drone-professional_imgs { flex-direction: row; column-gap: 5rem; }
  .drone-professional_img { flex: 1; }
  .drone-professional_img img { width: 100%; max-width: none; }
  .drone-professional_content_ttl { font-size: 4.2rem; line-height: calc(70 / 42); margin-bottom: 6.2rem; }
  .drone-professional_txt { font-size: 3.2rem; line-height: calc(55 / 32); }
  .drone-professional_txt:not(:last-of-type) { margin-bottom: 3.7rem; } }
.page-school .page-header { background-image: url(../images/drone-school/bg_page-header.jpg); }

.drone-desc { padding-top: 12.5rem; padding-bottom: 7rem; }
.drone-desc::before { top: 11%; }

.drone-desc_img { margin-bottom: 7rem; }
.drone-desc_img img { margin: 0 auto; }

.drone-desc_row { display: flex; column-gap: 3rem; margin-bottom: 6rem; }

.drone-desc_row_imgs { flex-shrink: 0; display: flex; column-gap: 2rem; }

.drone-desc_row_txt { line-height: calc(40 / 16); margin-bottom: 2.4rem; }

.drone-desc_row_btn { display: inline-block; color: #009ee5; text-decoration: none; line-height: calc(30 / 16); border: solid 1px #009ee5; border-radius: 1rem; padding: 0.6rem 2rem; transition: all 0.3s ease; }
.drone-desc_row_btn::after { content: "▶︎"; margin-left: 0.8em; }
.drone-desc_row_btn:hover { color: #ffffff; background-color: #009ee5; }

.drone-desc_juida { display: flex; align-items: center; column-gap: 4rem; border-top: solid 0.5rem #1d4394; border-bottom: solid 0.5rem #1d4394; padding: 2.7rem 1rem 3.5rem 3rem; }

.drone-desc_juida_content_ttl { font-size: 2rem; color: #1d4394; line-height: calc(40 / 20); letter-spacing: 0.1em; margin-bottom: 1.3rem; }

.drone-desc_juida_content_txt { line-height: calc(30 / 16); }
.drone-desc_juida_content_txt span { color: #1d4394; text-decoration: underline; }

.drone-desc_juida_img { flex-shrink: 0; max-width: 45%; }

.page-school .feature { padding-top: 8.5rem; padding-bottom: 10rem; }

.drone-desc_info { display: flex; align-items: center; column-gap: 5.7rem; border-top: solid 0.5rem #1d4394; border-bottom: solid 0.5rem #1d4394; padding: 3rem 3rem; }

.drone-desc_info_content_ttl { font-size: 2rem; color: #1d4394; line-height: calc(40 / 20); letter-spacing: 0.1em; margin-bottom: 1rem; }

.drone-desc_info_content_txt, .drone-desc_info_content_add { line-height: calc(30 / 16); }

.drone-desc_info_content_txt { margin-bottom: 2em; }

.drone-desc_info_imgs { flex-shrink: 0; width: 58%; display: flex; gap: 0; }

@media (min-width: 751px) and (max-width: 1280px) { .drone-desc_info_imgs { width: auto; flex-direction: column; } }
@media screen and (max-width: 750px) { .drone-desc_row { flex-direction: column; row-gap: 3rem; }
  .drone-desc_juida { flex-direction: column; row-gap: 4rem; padding: 4rem 3.5rem; }
  .drone-desc_juida_content_ttl { font-size: 2.8rem; }
  .drone-desc_info { flex-direction: column; row-gap: 3rem; padding: 4rem 3.5rem; }
  .drone-desc_info_content_ttl { font-size: 2.8rem; }
  .drone-desc_info_imgs { width: 100%; }
  .drone-desc_row_imgs { justify-content: center; } }
.drone-feature { padding-bottom: 15rem; }
.drone-feature::before { top: 32%; }

.drone-feature .btn_wrapper { gap: 8rem; margin-bottom: 9rem; }

@media screen and (max-width: 750px) { .drone-feature .btn_wrapper { gap: 4rem; } }
.drone-flow { padding-top: 15.5rem; padding-bottom: 14rem; }

.drone-acquisition { padding-top: 14.5rem; padding-bottom: 16.5rem; overflow: hidden; }

.drone-acquisition_ttl { font-size: 3.6rem; font-weight: bold; text-align: center; line-height: calc(70 / 36); letter-spacing: 0.1em; margin-bottom: 8.5rem; }

.drone-acquisition_list { display: grid; row-gap: 37rem; }

.drone-acquisition_item { position: relative; display: flex; column-gap: 5rem; }
.drone-acquisition_item::before { content: ""; position: absolute; width: min(calc(100vw * 900 / 1440), 90rem); height: auto; aspect-ratio: 1/1; opacity: 0.15; border-radius: 100%; z-index: -1; }
.drone-acquisition_item > * { flex: 1; }

.drone-acquisition_item_ttl { font-size: 2.4rem; color: #1d4394; line-height: calc(40 / 24); letter-spacing: 0.1em; margin-bottom: 2rem; }

.drone-acquisition_item_txt { line-height: calc(40 / 16); margin-bottom: 3.5rem; }

.drone-acquisition_item_subttl { font-size: 2rem; color: #1d4394; line-height: calc(40 / 20); letter-spacing: 0.1em; margin-bottom: 0.5rem; }

.drone-acquisition_item ol { counter-reset: counter; list-style: none; margin-bottom: 2.5rem; }

.drone-acquisition_item ol > li { position: relative; line-height: calc(40 / 16); padding-left: 2em; font-weight: bold; }

.drone-acquisition_item ol > li::before { counter-increment: counter 1; content: counter(counter) "）"; position: absolute; top: 0; left: 0; }

.drone-acquisition_item_btn { display: inline-block; color: #009ee5; text-decoration: none; line-height: calc(28.8 / 16); background-color: transparent; border: solid 1px #009ee5; border-radius: 1rem; padding: 0.7rem 4rem; transition: all 0.3s ease; }
.drone-acquisition_item_btn::after { content: "▶︎"; margin-left: 0.8em; }
.drone-acquisition_item_btn:hover { color: #ffffff; background-color: #009ee5; }

.drone-acquisition_list .drone-acquisition_item:nth-of-type(odd) { flex-direction: row-reverse; }
.drone-acquisition_list .drone-acquisition_item:nth-of-type(odd)::before { background-color: #009ee5; top: -64%; left: 60%; }

.drone-acquisition_list .drone-acquisition_item:nth-of-type(even) { flex-direction: row; }
.drone-acquisition_list .drone-acquisition_item:nth-of-type(even)::before { background-color: #1d4394; top: -42%; right: 59%; }

@media screen and (max-width: 750px) { .drone-acquisition_ttl { font-size: 4.2rem; }
  .drone-acquisition_list { row-gap: 10rem; }
  .drone-acquisition_item { row-gap: 4rem; }
  .drone-acquisition_item::before { content: none; }
  .drone-acquisition_item_ttl { font-size: 3.2rem; }
  .drone-acquisition_item_subttl { font-size: 2.8rem; }
  .drone-acquisition_list .drone-acquisition_item:nth-of-type(odd) { flex-direction: column-reverse; }
  .drone-acquisition_list .drone-acquisition_item:nth-of-type(even) { flex-direction: column-reverse; }
  .drone-acquisition_item_img img { margin: auto; }
  .drone-acquisition_item_btn { width: 100%; text-align: center; padding: 1.5rem 4rem; }
  .drone-desc_row_btn { width: 100%; text-align: center; padding: 1.5rem 4rem; }
  .drone-acquisition_item ol > li { line-height: 2; margin-bottom: 1rem; }
  .drone-acquisition_item ol > li:last-of-type { margin-bottom: 0; } }
.drone-faq { padding-top: 15rem; padding-bottom: 9rem; }

.page-course .page-header { background-image: url(../images/drone-school/bg_page-header.jpg); }

.drone-course_lead { padding-top: 14rem; padding-bottom: 14rem; }

.drone-course_lead_banner { margin-bottom: 12rem; }

.drone-course_lead_txt { text-align: center; line-height: calc(40 / 16); margin-bottom: 7rem; }

.drone-course_lead .btn_wrapper { gap: 4rem 8rem; margin-bottom: 11rem; }

.drone-course_lead .feature_item { background-color: #e4f5fd; border-radius: 1rem; }

section.drone-course .drone-desc_merit.-large .drone-desc_merit_img { background-color: #1d4394; }

#course01 { margin-bottom: 16rem; }

.drone-course_cta { padding-top: 7.4rem; padding-bottom: 14rem; }

.drone-course_cta_ttl { font-size: 2.4rem; color: #1d4394; line-height: calc(30 / 16); text-align: center; margin-bottom: 4rem; }

@media screen and (max-width: 750px) { .drone-course_cta_ttl { font-size: 3.2rem; } }
.page-service .page-header { background-image: url(../images/drone-service/bg_page-header.jpg); }

.drone-service-top { padding-top: 12.5rem; padding-bottom: 9rem; }
.drone-service-top::before { top: 12%; }

.drone-service-top_ttl { font-size: 3.6rem; line-height: calc(70 / 36); letter-spacing: 0.1em; text-align: center; margin-bottom: 7rem; }

.drone-service-top_lead { max-width: 87.6rem; line-height: calc(40 / 16); text-align: center; margin: 0 auto 8.5rem; }

@media screen and (max-width: 750px) { .drone-service-top::before { content: none; }
  .drone-service-top_ttl { font-size: 4.2rem; } }
.drone-service-top .merit_box { padding-top: 5.5rem; padding-bottom: 5.5rem; }

.drone-service-example { padding-top: 11rem; padding-bottom: 14rem; }

.example_list { display: flex; gap: 4rem 4rem; margin-bottom: 6.5rem; }

.example_item { flex: 1; background-color: #ffffff; border-radius: 1rem; padding: 4rem 5rem; }

.example_item_ttl { font-size: 2.4rem; color: #1d4394; line-height: calc(40 / 24); letter-spacing: 0.1em; text-align: center; margin-bottom: 3rem; }

.example_item_list li { font-size: 1.1em; line-height: calc(40 / 18); letter-spacing: 0.1em; position: relative; padding-left: 2.2rem; }
.example_item_list li::before { content: "●"; color: #009ee5; position: absolute; left: 0; }

.example_txt { font-size: 2.4rem; color: #1d4394; line-height: calc(40 / 24); letter-spacing: 0.1em; text-align: center; margin-bottom: 6rem; }

@media screen and (max-width: 750px) { .example_ttl { font-size: 4.2rem; }
  .example_list { flex-direction: column; }
  .example_item_ttl { font-size: 3.5rem; }
  .example_item_list li { font-size: 2.8rem; padding-left: 3.8rem; line-height: 1.65; margin-bottom: 1rem; }
  .example_item_list li:last-of-type { margin-bottom: 0; }
  .example_txt { font-size: 3.2rem; } }
.drone-service-price { padding-bottom: 15rem; }
.drone-service-price::before { top: 25%; }

.drone-service-price_lead { text-align: center; line-height: calc(40 / 16); margin-bottom: 6.5rem; }

@media screen and (max-width: 750px) { .drone-service-price::before { content: none; }
  .drone-service-price_ttl { font-size: 4.2rem; } }
.price_plans { display: flex; column-gap: 4rem; margin-bottom: 5rem; }

.price_plan { flex: 1; display: flex; flex-direction: column; }

.price_plan_ttl { text-align: center; font-size: 3rem; color: #ffffff; text-align: center; line-height: calc(40 / 30); letter-spacing: 0.1em; padding: 3rem 1rem; }

.price_plan_body { text-align: center; background-color: #ededed; padding: 4.5rem 3rem 3.5rem; }

.price_plan_price { font-size: 3rem; line-height: calc(40 / 30); letter-spacing: 0.1em; border-bottom: solid 1px #707070; padding-bottom: 4rem; }

.price_plan_list { display: inline-block; padding-top: 3rem; padding-bottom: 3.5rem; }

.price_plan_list li { display: block; font-size: 1.1em; line-height: calc(40 / 18); text-align: start; }
.price_plan_list li::before { content: "●"; color: #009ee5; margin-right: .5rem; }

.price_plan_option_ttl { font-size: 2rem; color: #009ee5; border-top: solid 1px #707070; padding-top: 3rem; margin-bottom: 1.5rem; }

.price_plan_option_txt { line-height: calc(40 / 16); }

@media screen and (max-width: 750px) { .price_plans { flex-direction: column; row-gap: 4rem; }
  .price_plan_ttl { font-size: 4rem; }
  .price_plan_price { font-size: 3.5rem; }
  .price_plan_list li { font-size: 2.8rem; margin-right: 1rem; }
  .price_plan_option_ttl { font-size: 3.2rem; } }
.price_row { display: flex; border-top: solid 1px #707070; border-bottom: solid 1px #707070; }

.price_row_left { background-color: #e5f5fd; display: flex; justify-content: center; align-items: center; padding: 2.5rem 1rem; min-width: 25rem; }

.price_row_ttl { font-size: 2rem; line-height: calc(40 / 20); letter-spacing: 0.1em; text-align: center; }

.price_row_center { flex-shrink: 0; flex-grow: 1; position: relative; line-height: calc(40 / 16); padding: 3rem 5rem; display: flex; align-items: center; }
.price_row_center::after { content: ""; position: absolute; top: 50%; right: 0; width: 1px; height: calc(100% - 4rem); background-color: #707070; transform: translateY(-50%); }

.price_row_right { display: flex; justify-content: center; align-items: center; min-width: 36rem; line-height: calc(40 / 16); padding: 1rem 1rem; }

.price_row_right ul li::before { content: "●"; color: #009ee5; margin-right: .5rem; }

@media (max-width: 1440px) { .price_row_left { min-width: unset; }
  .price_row_center { flex-shrink: unset; padding: 3rem 1.5rem; }
  .price_row_right { min-width: unset; } }
@media screen and (max-width: 750px) { .price_row { flex-direction: column; }
  .price_row_ttl { font-size: 3.2rem; }
  .price_row_center { font-size: 2.5rem; padding: 3rem 2rem; }
  .price_row_center::after { top: auto; bottom: 0; left: 50%; right: auto; width: calc(100% - 4rem); height: 1px; transform: translateX(-50%); }
  .price_row_right ul li::before { margin-right: 1rem; } }
.drone-service-price_txt { line-height: calc(40 / 16); margin-bottom: 5rem; }

.drone-service-price .btn_wrapper { margin-bottom: 11rem; }

.drone-service-faq { padding-top: 15rem; padding-bottom: 8rem; }

.drone-service-faq_ttl { font-size: 3.6rem; line-height: calc(70 / 36); letter-spacing: 0.1em; text-align: center; margin-bottom: 7rem; }

.drone-service-faq .faq_ttl { background-color: #1d4394; }

.drone-service-faq .faq_ttl_icon::before, .drone-service-faq .faq_ttl_icon::after { background-color: #1d4394; }

@media screen and (max-width: 750px) { .drone-service-faq_ttl { font-size: 4.2rem; } }
.diving-home-mv .mv_content { top: 36%; left: auto; right: -13%; }

@media (max-width: 1280px) { .diving-home-mv .mv_content { left: 50%; right: auto; }
  .diving-home-mv .mv_content img { margin: 0 0 0 auto; } }
.diving-mission { background-image: url(../images/diving-home/bg_mission.png); padding-top: 11rem; padding-bottom: 13rem; }
.diving-mission::before { top: 14%; }

@media screen and (max-width: 750px) { .diving-mission { padding-top: 10rem; padding-bottom: 26rem; } }
.diving-what { padding-bottom: 16rem; }

.diving-what_icon { position: relative; z-index: 1; }
.diving-what_icon::before { content: ""; position: absolute; top: 0; left: 7%; display: inline-block; vertical-align: middle; width: 52rem; height: 29rem; background-position: center center; background-size: contain; background-image: url(../images/diving-home/diver.png); background-repeat: no-repeat; transform: translateY(-50%); z-index: 1; }

.diving-what .bg-wave { margin-bottom: 7.5rem; }
.diving-what .bg-wave::before { content: ""; position: absolute; bottom: -15%; left: 59%; display: inline-block; vertical-align: middle; width: min(calc(100vw * 240 / 1440), 24rem); height: min(calc(100vw * 240 / 1440), 24rem); background-position: center center; background-size: contain; background-image: url(../images/diving-home/padi_logo.png); background-repeat: no-repeat; }

.diving-what .bg-wave_txt { top: 33%; color: #ffffff; text-align: center; }

.diving-what_row { display: flex; align-items: flex-end; margin-bottom: 9rem; }

.diving-what_text p { line-height: calc(40 / 16); }

.diving-what_img { flex-shrink: 0; padding-right: 4%; }

.diving-what_banners { display: grid; row-gap: 3.6rem; }

@media screen and (max-width: 750px) { .diving-what { padding-bottom: 13rem; }
  .diving-what_icon::before { left: 5%; transform: translateY(-58%); }
  .diving-what .bg-wave { margin-bottom: 6rem; }
  .diving-what .bg-wave::before { top: 32%; bottom: auto; left: 61%; width: 24rem; height: 24rem; }
  .diving-home .bg-wave img { margin-bottom: 12rem; }
  .diving-what .bg-wave_txt { font-size: 3.8rem; color: inherit; padding-left: 3rem; padding-right: 3rem; } }
@media (max-width: 1440px) { .diving-what_row { flex-direction: column; row-gap: 8rem; }
  .diving-what_text { width: auto; line-height: calc(55 / 32); }
  .diving-what_img { width: 100%; text-align: center; }
  .diving-what_img img { transform: translateX(0); } }
@media screen and (max-width: 750px) { .diving-what_text p { font-size: 3.2rem; line-height: calc(55 / 32); }
  .diving-what_img img { margin: 0 auto; } }
.diving-course { padding-top: 15rem; padding-bottom: 15rem; }

.diving-course .sec_ttl { margin-bottom: 7rem; }

.diving-course_lead { text-align: center; line-height: calc(40 / 16); margin-bottom: 9rem; }

@media screen and (max-width: 750px) { .diving-course { padding-top: 15rem; }
  .diving-course_ttl { font-size: 4.2rem; line-height: calc(70 / 42); margin-bottom: 8rem; }
  .diving-course_lead { font-size: 3.2rem; text-align: start; line-height: calc(55 / 32); letter-spacing: -0.02em; margin-bottom: 5rem; } }
.diving-difference { background-color: rgba(0, 158, 229, 0.2); }

.page-licence .page-header { background-image: url(../images/diving-licence/bg_page-header.jpg); }

.diving-lead::before { top: 10%; }

.diving-lead .merit_list { row-gap: 1rem; }

.diving-lead .merit_item { letter-spacing: unset; }

.diving-lead_padi { display: flex; align-items: center; border-top: solid 5px #009ee5; border-bottom: solid 5px #009ee5; padding: 2rem 3rem; }

.diving-lead_padi_ttl { font-size: 2rem; font-weight: 600; color: #1d4394; letter-spacing: 0.1em; line-height: calc(40 / 20); margin-bottom: 2rem; }

.diving-lead_padi_txt { line-height: calc(30 / 16); }

@media screen and (max-width: 750px) { .diving-lead_padi { flex-direction: column; }
  .diving-lead_padi_ttl { font-size: 3.2rem; } }
.page-licence #detail01 { padding-bottom: 6rem; }

.page-licence .feature { background-color: #cdecfa; padding-top: 8.5rem; padding-bottom: 12rem; }

.diving_info { display: flex; align-items: center; column-gap: 5.7rem; border-top: solid 0.5rem #1d4394; border-bottom: solid 0.5rem #1d4394; padding: 3rem 3rem; }

.diving_info_content_ttl { font-size: 2rem; color: #1d4394; line-height: calc(40 / 20); letter-spacing: 0.1em; margin-bottom: 1rem; }

.diving_info_content_txt, .diving_info_content_add { line-height: calc(30 / 16); }

.diving_info_content_txt { margin-bottom: 2em; }

.diving_info_imgs { flex-shrink: 0; width: 58%; display: flex; gap: 0; }

@media screen and (max-width: 750px) { .diving_info { flex-direction: column; row-gap: 3rem; padding: 4rem 3.5rem; }
  .diving_info_content_ttl { font-size: 2.8rem; }
  .diving_info_imgs { width: 100%; } }
.diving-feature { padding-bottom: 15rem; }
.diving-feature::before { content: ""; top: 32%; }

.diving-flow { background-color: #cdecfa; padding-top: 15rem; padding-bottom: 15rem; }

.diving-faq { padding-top: 15rem; padding-bottom: 15rem; }

.page-trial .page-header { background-image: url(../images/diving-trial/bg_page-header.jpg); }

.diving-trialcourse { padding-top: 14rem; padding-bottom: 12rem; }

.diving-trialcourse .merit_box { padding-top: 3rem; padding-bottom: 3rem; }

.diving-trialcourse .merit_list { row-gap: 1.5rem; }

.page-trial #detail01 { padding-bottom: 19rem; }

.page-efr .page-header { background-image: url(../images/diving-efr/bg_page-header.jpg); }

.diving-efrcourse { padding-top: 13rem; padding-bottom: 9rem; }
.diving-efrcourse::before { top: 13%; }

.diving-efrcourse_row { display: flex; justify-content: space-between; margin-bottom: 6rem; }

.diving-efrcourse_img { flex-shrink: 0; width: 36%; }

.diving-efrcourse_content { width: 59%; }

.diving-efrcourse .sec_ttl { text-align: start; margin-bottom: 3rem; }

.diving-efrcourse_txt { line-height: calc(40 / 16); }

@media screen and (max-width: 750px) { .diving-efrcourse_row { flex-direction: column; row-gap: 8rem; }
  .diving-efrcourse_img, .diving-efrcourse_content { width: 100%; }
  .diving-efrcourse_img img, .diving-efrcourse_content img { margin: auto; } }
.diving-efrcourse .merit_item { letter-spacing: 0; }

.page-efr #detail01 { padding-bottom: 13rem; }

.c-white { color: #ffffff !important; }

.bg-white { background-color: #ffffff !important; }

.c-black { color: #222222 !important; }

.bg-black { background-color: #222222 !important; }

.c-skyblue { color: #009ee5 !important; }

.bg-skyblue { background-color: #009ee5 !important; }

.c-navy { color: #1d4394 !important; }

.bg-navy { background-color: #1d4394 !important; }

.c-green { color: #a2c336 !important; }

.bg-green { background-color: #a2c336 !important; }

.c-light { color: #ededed !important; }

.bg-light { background-color: #ededed !important; }

.c-orange { color: #e8744f !important; }

.bg-orange { background-color: #e8744f !important; }

.sp { display: none !important; }

@media screen and (max-width: 750px) { .pc { display: none !important; }
  .sp { display: block !important; } }
.pt-0 { padding-top: 0rem !important; }

.pt-5 { padding-top: 0.5rem !important; }

.pt-10 { padding-top: 1rem !important; }

.pt-15 { padding-top: 1.5rem !important; }

.pt-20 { padding-top: 2rem !important; }

.pt-25 { padding-top: 2.5rem !important; }

.pt-30 { padding-top: 3rem !important; }

.pt-35 { padding-top: 3.5rem !important; }

.pt-40 { padding-top: 4rem !important; }

.pt-45 { padding-top: 4.5rem !important; }

.pt-50 { padding-top: 5rem !important; }

.pt-55 { padding-top: 5.5rem !important; }

.pt-60 { padding-top: 6rem !important; }

.pt-65 { padding-top: 6.5rem !important; }

.pt-70 { padding-top: 7rem !important; }

.pt-75 { padding-top: 7.5rem !important; }

.pt-80 { padding-top: 8rem !important; }

.pt-85 { padding-top: 8.5rem !important; }

.pt-90 { padding-top: 9rem !important; }

.pt-95 { padding-top: 9.5rem !important; }

.pt-100 { padding-top: 10rem !important; }

.pb-0 { padding-bottom: 0rem !important; }

.pb-5 { padding-bottom: 0.5rem !important; }

.pb-10 { padding-bottom: 1rem !important; }

.pb-15 { padding-bottom: 1.5rem !important; }

.pb-20 { padding-bottom: 2rem !important; }

.pb-25 { padding-bottom: 2.5rem !important; }

.pb-30 { padding-bottom: 3rem !important; }

.pb-35 { padding-bottom: 3.5rem !important; }

.pb-40 { padding-bottom: 4rem !important; }

.pb-45 { padding-bottom: 4.5rem !important; }

.pb-50 { padding-bottom: 5rem !important; }

.pb-55 { padding-bottom: 5.5rem !important; }

.pb-60 { padding-bottom: 6rem !important; }

.pb-65 { padding-bottom: 6.5rem !important; }

.pb-70 { padding-bottom: 7rem !important; }

.pb-75 { padding-bottom: 7.5rem !important; }

.pb-80 { padding-bottom: 8rem !important; }

.pb-85 { padding-bottom: 8.5rem !important; }

.pb-90 { padding-bottom: 9rem !important; }

.pb-95 { padding-bottom: 9.5rem !important; }

.pb-100 { padding-bottom: 10rem !important; }

.mt-0 { margin-top: 0rem !important; }

.mt-5 { margin-top: 0.5rem !important; }

.mt-10 { margin-top: 1rem !important; }

.mt-15 { margin-top: 1.5rem !important; }

.mt-20 { margin-top: 2rem !important; }

.mt-25 { margin-top: 2.5rem !important; }

.mt-30 { margin-top: 3rem !important; }

.mt-35 { margin-top: 3.5rem !important; }

.mt-40 { margin-top: 4rem !important; }

.mt-45 { margin-top: 4.5rem !important; }

.mt-50 { margin-top: 5rem !important; }

.mt-55 { margin-top: 5.5rem !important; }

.mt-60 { margin-top: 6rem !important; }

.mt-65 { margin-top: 6.5rem !important; }

.mt-70 { margin-top: 7rem !important; }

.mt-75 { margin-top: 7.5rem !important; }

.mt-80 { margin-top: 8rem !important; }

.mt-85 { margin-top: 8.5rem !important; }

.mt-90 { margin-top: 9rem !important; }

.mt-95 { margin-top: 9.5rem !important; }

.mt-100 { margin-top: 10rem !important; }

.mb-0 { margin-bottom: 0rem !important; }

.mb-5 { margin-bottom: 0.5rem !important; }

.mb-10 { margin-bottom: 1rem !important; }

.mb-15 { margin-bottom: 1.5rem !important; }

.mb-20 { margin-bottom: 2rem !important; }

.mb-25 { margin-bottom: 2.5rem !important; }

.mb-30 { margin-bottom: 3rem !important; }

.mb-35 { margin-bottom: 3.5rem !important; }

.mb-40 { margin-bottom: 4rem !important; }

.mb-45 { margin-bottom: 4.5rem !important; }

.mb-50 { margin-bottom: 5rem !important; }

.mb-55 { margin-bottom: 5.5rem !important; }

.mb-60 { margin-bottom: 6rem !important; }

.mb-65 { margin-bottom: 6.5rem !important; }

.mb-70 { margin-bottom: 7rem !important; }

.mb-75 { margin-bottom: 7.5rem !important; }

.mb-80 { margin-bottom: 8rem !important; }

.mb-85 { margin-bottom: 8.5rem !important; }

.mb-90 { margin-bottom: 9rem !important; }

.mb-95 { margin-bottom: 9.5rem !important; }

.mb-100 { margin-bottom: 10rem !important; }

.top-news_list .slick-prev { top: 35%; left: -2rem; width: 5rem; height: 7rem; z-index: 10; }
.top-news_list .slick-prev::before { content: ""; display: inline-block; vertical-align: middle; width: 5rem; height: 7rem; background-position: center center; background-size: contain; background-image: url(../images/common/icon_slick_left.svg); background-repeat: no-repeat; }

/*# sourceMappingURL=style.css.map */
