.main-visual::before {
  position: absolute;
  display: block;
  content: "";
  background-image: url("/wp-content/ncPackage/img/page/top/firstview-smp.png?ugeygqzlw"); }
@media (max-width: 767px) {
  .main-visual::before {
    top: 10vw;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
    width: 70%;
    aspect-ratio: 430 / 472;
    background-size: contain;
    background-position: top center;
    background-repeat: no-repeat; }
  .main-visual .slider-item {
    height: auto !important;
    aspect-ratio: 375/641; }
  .main-visual-slider__inner {
    top: 75%; }
  .main-visual__title, .main-visual__message {
    color: #fff; } }
@media (min-width: 768px) {
  .main-visual .slick-list {
    width: calc(100% - 32px); } }
@media (min-width: 1200px) {
  .main-visual .slick-list {
    width: calc((50% - 590px) + 1180px); } }
@media (min-width: 768px) {
  .main-visual {
    width: 100vw;
    aspect-ratio: 1400 / 415; }
    .main-visual::before {
      bottom: 0;
      left: 50%;
      z-index: 2;
      width: min(47.5%, 590px);
      height: 100%;
      background-size: auto 65%;
      background-position: bottom right;
      background-repeat: no-repeat; }
    .main-visual .header-image-slider {
      background-color: #fff; }
      .main-visual .header-image-slider::before {
        position: absolute;
        top: 0;
        left: 0;
        z-index: 2;
        display: block;
        content: "";
        width: calc(47% - 590px);
        height: 100%;
        background-image: url("/wp-content/ncPackage/img/common/bg-puzzle-l.png?ugeygqzm0");
        background-size: 100% auto;
        background-position: bottom left;
        background-repeat: no-repeat; }
      .main-visual .header-image-slider__item {
        left: auto;
        width: 70%;
        height: 100%;
        background-position: center; }
    .main-visual .slick-slider {
      display: flex;
      justify-content: flex-end; }
    .main-visual .slider-item {
      position: relative;
      width: 100vw !important;
      height: auto !important;
      aspect-ratio: 1400 / 450; }
    .main-visual__overlay {
      visibility: visible; }
    .main-visual .js-main-visual-inner {
      position: absolute;
      left: 0;
      bottom: 0;
      z-index: 10;
      display: flex;
      align-items: center;
      width: 30%;
      height: 100%; }
      .main-visual .js-main-visual-inner::before {
        position: absolute;
        left: 0;
        bottom: 0;
        z-index: 9;
        display: block;
        content: "";
        width: 100%;
        height: 100%;
        background-color: #fff; }
    .main-visual .l-content__sm {
      position: absolute;
      z-index: 20;
      width: 100%; }
    .main-visual__title, .main-visual__message {
      text-align: justify; }
      .main-visual__title p, .main-visual__message p {
        margin-bottom: 0; }
      .main-visual__title span, .main-visual__message span {
        color: #2a97cc; }
    .main-visual__title {
      font-size: 3vw; }
    .main-visual__message {
      font-size: 0.9vw;
      margin: 0; }
    .main-visual__btn {
      margin-top: 1.5vw;
      width: 70%; }
      .main-visual__btn a {
        width: 100%;
        padding: 0.5vw 0;
        font-size: 0.9vw; } }

.c-section-widget__header {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center; }
.c-section-widget__title {
  position: relative; }
  .c-section-widget__title::after {
    display: block;
    content: "";
    width: 200px;
    height: 4px;
    margin: auto;
    background: linear-gradient(to right, #FFF026, #FFDE37); }
.c-section-widget__sub-title {
  margin-top: 0.5em; }

.ncButton {
  margin-top: calc(8px * 8); }

@media (max-width: 767px) {
  #shortcod_section-3 picture.-ls_small {
    margin-bottom: 5vw; }
  #shortcod_section-3 .ncButton a {
    display: block;
    width: min(80%, 300px);
    margin: 1em auto; }
    #shortcod_section-3 .ncButton a img {
      width: 100%; } }
#shortcod_section-3 video {
  margin-top: 64px; }

#shortcod_section-4 {
  background-repeat: no-repeat;
  background-image: url("/wp-content/ncPackage/img/common/bg-puzzle-r.png"), url("/wp-content/ncPackage/img/common/bg-puzzle-l.png");
  background-position: right top, left bottom; }
  #shortcod_section-4 img {
    border-radius: 0; }
  @media (min-width: 768px) {
    #shortcod_section-4 {
      background-size: calc(47% - 590px) auto; } }
  @media (max-width: 767px) {
    #shortcod_section-4 {
      background-size: 40vw; } }
  @media (min-width: 768px) {
    #shortcod_section-4 .image_area {
      position: relative;
      aspect-ratio: 736/400; }
    #shortcod_section-4 .image_title {
      position: relative;
      z-index: 1; }
    #shortcod_section-4 .image_back {
      position: absolute;
      z-index: 0;
      top: 60%;
      transform: translateY(-50%);
      width: 100%; } }

#shortcod_section-12 .ncRows_title {
  font-size: inherit; }
#shortcod_section-12 .-half {
  justify-content: space-around; }
  @media (min-width: 768px) {
    #shortcod_section-12 .-half {
      margin-bottom: calc(8px * 5); }
      #shortcod_section-12 .-half .ncColumns_panel {
        width: min(80%, 350px) !important; }
      #shortcod_section-12 .-half .ncRows_image {
        width: min(50%, 250px); } }
#shortcod_section-12 .ncRows_image picture {
  display: flex;
  justify-content: center; }

#shortcod_section-5 .ncColumns_panel.-large {
  display: flex;
  flex-direction: column;
  justify-content: center; }
#shortcod_section-5 h3 {
  text-align: justify; }
  @media (min-width: 768px) {
    #shortcod_section-5 h3 {
      margin-bottom: calc(8px * 3); } }
  #shortcod_section-5 h3 .ico_num {
    width: fit-content;
    height: 1em;
    margin-bottom: 1em; }
@media (max-width: 767px) {
  #shortcod_section-5 .ncColumns {
    margin-top: 2.5em; } }

#shortcod_section-6,
#shortcod_section-14 {
  background-color: #fff;
  background-repeat: no-repeat;
  background-image: url("/wp-content/ncPackage/img/common/bg-puzzle-r.png"), url("/wp-content/ncPackage/img/common/bg-puzzle-l.png");
  background-position: right top, left bottom; }
  @media (min-width: 768px) {
    #shortcod_section-6,
    #shortcod_section-14 {
      background-size: calc(47% - 590px) auto; } }
  @media (max-width: 767px) {
    #shortcod_section-6,
    #shortcod_section-14 {
      background-size: 40vw; } }
  #shortcod_section-6 .slider_item,
  #shortcod_section-14 .slider_item {
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.16);
    border-radius: 20px;
    overflow: hidden;
    padding: 0;
    margin: 0 calc(8px * 2); }
  #shortcod_section-6 .slider_thumbnail,
  #shortcod_section-14 .slider_thumbnail {
    aspect-ratio: 366/274; }
    #shortcod_section-6 .slider_thumbnail img,
    #shortcod_section-14 .slider_thumbnail img {
      object-fit: cover;
      width: 100%;
      height: 100%;
      height: 100%; }
  #shortcod_section-6 .slider_info,
  #shortcod_section-14 .slider_info {
    padding: 2em; }
  #shortcod_section-6 .slider_location,
  #shortcod_section-14 .slider_location {
    font-size: 90%; }
  #shortcod_section-6 .slider_title,
  #shortcod_section-14 .slider_title {
    font-size: 105%;
    font-weight: bold;
    margin-bottom: 1em; }
  @media (min-width: 768px) {
    #shortcod_section-6 .ncSlider,
    #shortcod_section-14 .ncSlider {
      padding-left: calc(8px * 8);
      padding-right: calc(8px * 8); } }
  #shortcod_section-6 .ncSlider a,
  #shortcod_section-14 .ncSlider a {
    color: #333;
    transition: ease .3s; }
    #shortcod_section-6 .ncSlider a:hover,
    #shortcod_section-14 .ncSlider a:hover {
      transform: translateY(2px);
      opacity: .8; }
  #shortcod_section-6 .ncSlider .slick-dots li button,
  #shortcod_section-14 .ncSlider .slick-dots li button {
    border: none;
    width: 15px;
    height: 15px; }
  #shortcod_section-6 .slick-arrow,
  #shortcod_section-14 .slick-arrow {
    border: 0; }
    #shortcod_section-6 .slick-arrow::before,
    #shortcod_section-14 .slick-arrow::before {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      display: block;
      width: calc(8px * 4) !important;
      height: calc(8px * 4) !important;
      background-color: #2a97cc;
      border-radius: 50%;
      content: "" !important; }
    #shortcod_section-6 .slick-arrow::after,
    #shortcod_section-14 .slick-arrow::after {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      display: block;
      width: 8px !important;
      height: 8px !important;
      background-color: #fff;
      background-size: !important;
      content: ""; }
    #shortcod_section-6 .slick-arrow:hover::before,
    #shortcod_section-14 .slick-arrow:hover::before {
      background-color: #757575; }
  #shortcod_section-6 .slick-prev,
  #shortcod_section-14 .slick-prev {
    transform: translate(22%, -50%) rotate(0); }
    #shortcod_section-6 .slick-prev::after,
    #shortcod_section-14 .slick-prev::after {
      mask-image: url("/wp-content/ncPackage/module/icon/chevron-left.svg?ugeygqzma");
      mask-repeat: no-repeat;
      mask-position: center;
      mask-size: contain; }
  #shortcod_section-6 .slick-next,
  #shortcod_section-14 .slick-next {
    transform: translate(-22%, -50%) rotate(0);
    transform: translate(-50%, 5%) rotate(0); }
    #shortcod_section-6 .slick-next::after,
    #shortcod_section-14 .slick-next::after {
      mask-image: url("/wp-content/ncPackage/module/icon/chevron-right.svg?ugeygqzmj");
      mask-repeat: no-repeat;
      mask-position: center;
      mask-size: contain; }

#shortcod_section-8 {
  background-repeat: no-repeat;
  background-image: url("/wp-content/ncPackage/img/common/bg-puzzle-r.png"), url("/wp-content/ncPackage/img/common/bg-puzzle-l.png");
  background-position: right top, left bottom; }
  @media (min-width: 768px) {
    #shortcod_section-8 {
      background-size: calc(47% - 590px) auto; } }
  @media (max-width: 767px) {
    #shortcod_section-8 {
      background-size: 40vw; } }
  #shortcod_section-8 picture {
    aspect-ratio: 1/1;
    margin-bottom: 1em;
    border-radius: 20px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.16);
    overflow: hidden; }
    #shortcod_section-8 picture img {
      width: 100%;
      height: 100%;
      max-width: initial;
      object-fit: cover; }
  #shortcod_section-8 .ncColumns {
    counter-reset: number 0; }
    #shortcod_section-8 .ncColumns_panel {
      position: relative; }
      #shortcod_section-8 .ncColumns_panel:not(:last-of-type)::before {
        position: absolute;
        display: block;
        content: "";
        aspect-ratio: 3/5;
        background-image: url("/wp-content/ncPackage/img/page/top/icon_next.svg?ugeygqzmo");
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center; }
      #shortcod_section-8 .ncColumns_panel::after {
        position: absolute;
        top: 40px;
        left: 40px;
        transform: translate(-50%, -50%);
        display: flex;
        justify-content: center;
        align-items: center;
        aspect-ratio: 1/1;
        width: 50px;
        background-color: #2a97cc;
        border-radius: 50%;
        color: #fff;
        counter-increment: number 1;
        content: counter(number,decimal-leading-zero);
        line-height: 1;
        font-weight: bold; }
  @media (min-width: 768px) {
    #shortcod_section-8 .ncColumns_panel:not(:last-of-type)::before {
      top: 33%;
      right: -16%;
      width: 20px;
      transform: translate(-50%, -50%); } }
  @media (max-width: 767px) {
    #shortcod_section-8 .ncColumns_panel {
      display: flex;
      justify-content: space-between; }
      #shortcod_section-8 .ncColumns_panel:not(:last-of-type) {
        margin-bottom: 5vw; }
        #shortcod_section-8 .ncColumns_panel:not(:last-of-type)::before {
          bottom: -10vw;
          right: 50%;
          width: 3.5vw;
          transform: translate(-50%, -50%) rotate(90deg); }
    #shortcod_section-8 picture {
      width: 40%; }
    #shortcod_section-8 .ncRows {
      width: 55%; } }

.ncAccordion_panel {
  align-items: center;
  background-color: #fff;
  border: solid 1px #ddd;
  border-radius: calc(8px * 2.5);
  margin-bottom: calc(8px * 2);
  padding: calc(8px * 2) calc(8px * 3); }
  .ncAccordion_panel .jenre {
    display: block;
    font-size: 75%; }
.ncAccordion_switch, .ncAccordion_content {
  padding-left: calc(8px * 4);
  background-size: calc(8px * 3);
  background-repeat: no-repeat; }
.ncAccordion_switch {
  min-height: 3em;
  align-items: center;
  background-image: url("/wp-content/ncPackage/img/common/icon_q.svg?ugeygqzmu");
  background-position: center left; }
  .ncAccordion_switch::after {
    background-color: #2a97cc !important; }
.ncAccordion_content {
  margin-top: calc(8px * 2);
  border-top: solid 1px #ddd;
  padding-top: calc(8px * 2);
  background-image: url("/wp-content/ncPackage/img/common/icon_a.svg?ugeygqzmw");
  background-position: top calc(8px * 2) left; }
