/*! Writen  by SCSS */
.sec_main {
  padding-top: 41.88%;
  position: relative;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-image: url("../images/top/main_bg.jpg");
  line-height: 0; }
  @media screen and (max-width: 480px) {
    .sec_main {
      padding-top: 180.68%;
      background-image: url("../images/top/main_bg_sp.jpg"); } }
  .sec_main .main_cap {
    position: absolute;
    left: 0;
    bottom: 0;
    padding: 5px;
    font-size: 10px;
    color: #333;
    line-height: 1;
    text-shadow: 0px 0px 0px rgba(255, 255, 255, 0.8), 0px 0px 1px rgba(255, 255, 255, 0.8), 0px 0px 2px rgba(255, 255, 255, 0.8), 0px 0px 3px rgba(255, 255, 255, 0.8), 0px 0px 4px rgba(255, 255, 255, 0.8), 0px 0px 5px rgba(255, 255, 255, 0.8); }
    @media screen and (max-width: 480px) {
      .sec_main .main_cap {
        left: auto;
        right: 0;
        color: #fff;
        text-shadow: 0px 0px 0px rgba(0, 0, 0, 0.8), 0px 0px 1px rgba(0, 0, 0, 0.8), 0px 0px 2px rgba(0, 0, 0, 0.8), 0px 0px 3px rgba(0, 0, 0, 0.8), 0px 0px 4px rgba(0, 0, 0, 0.8), 0px 0px 5px rgba(0, 0, 0, 0.8); } }
  .sec_main .main_text_list .item {
    position: absolute;
    z-index: 1;
    bottom: 5.38%;
    transition-property: transform,opacity;
    transition-duration: 1s;
    transition-timing-function: ease-in-out;
    opacity: 0;
    transform: translateY(20px); }
    .loaded .sec_main .main_text_list .item {
      opacity: 1;
      transform: translateY(0); }
  .sec_main .main_text_list .item01 {
    width: 14.38%;
    left: 8.75%;
    transition-delay: 1.4s; }
    @media screen and (max-width: 480px) {
      .sec_main .main_text_list .item01 {
        width: 39.14%;
        left: 8.46%;
        bottom: 36.1%; } }
  .sec_main .main_text_list .item02 {
    width: 15.82%;
    left: 23.75%;
    transition-delay: 1.6s; }
    @media screen and (max-width: 480px) {
      .sec_main .main_text_list .item02 {
        width: 38.65%;
        left: 51.21%;
        bottom: 35.97%; } }
  .sec_main .main_text_list .item03 {
    width: 12.25%;
    left: 40.63%;
    transition-delay: 1.8s; }
    @media screen and (max-width: 480px) {
      .sec_main .main_text_list .item03 {
        width: 43.97%;
        left: 6.77%;
        bottom: 24.74%; } }
  .sec_main .main_text_list .item04 {
    width: 11.82%;
    left: 53.75%;
    transition-delay: 2s; }
    @media screen and (max-width: 480px) {
      .sec_main .main_text_list .item04 {
        width: 21.74%;
        left: 75.13%;
        bottom: 21.66%; } }
  .sec_main .main_logo {
    position: absolute;
    z-index: 2;
    width: 17.69%;
    bottom: 1.5%;
    right: 3.25%;
    transition-property: transform,opacity;
    transition-duration: 1s;
    transition-timing-function: ease-in-out;
    opacity: 0;
    transform: translateY(20px); }
    @media screen and (max-width: 480px) {
      .sec_main .main_logo {
        width: 44.21%;
        top: 3.35%;
        right: 27.78%; } }
    .loaded .sec_main .main_logo {
      opacity: 1;
      transform: translateY(0); }
  .sec_main .main_head {
    position: absolute;
    width: 49.38%;
    top: 8.96%;
    left: 8.75%;
    transition-property: transform,opacity;
    transition-duration: 1s;
    transition-timing-function: ease-in-out;
    opacity: 0;
    transform: translateY(20px);
    transition-delay: 0.4s; }
    @media screen and (max-width: 480px) {
      .sec_main .main_head {
        width: 90.83%;
        top: 17.38%;
        left: 0;
        right: 0;
        margin-inline: auto; } }
    .loaded .sec_main .main_head {
      opacity: 1;
      transform: translateY(0); }
  .sec_main .main_lead {
    position: absolute;
    width: 42.44%;
    top: 42.54%;
    left: 8.75%;
    transition-property: transform,opacity;
    transition-duration: 1s;
    transition-timing-function: ease-in-out;
    opacity: 0;
    transform: translateY(20px);
    transition-delay: 0.6s; }
    @media screen and (max-width: 480px) {
      .sec_main .main_lead {
        width: 61.6%;
        top: 31.69%;
        left: 0;
        right: 0;
        margin-inline: auto; } }
    .loaded .sec_main .main_lead {
      opacity: 1;
      transform: translateY(0); }
  .sec_main .main_bg_text {
    position: absolute;
    width: 27.88%;
    top: 55.23%;
    left: 8.75%;
    transition-property: transform,opacity;
    transition-duration: 1s;
    transition-timing-function: ease-in-out;
    opacity: 0;
    transform: translateY(20px);
    transition-delay: 0.8s; }
    @media screen and (max-width: 480px) {
      .sec_main .main_bg_text {
        width: 72.47%;
        top: 43.72%;
        left: 0;
        right: 0;
        margin-inline: auto; } }
    .loaded .sec_main .main_bg_text {
      opacity: 1;
      transform: translateY(0); }
    .sec_main .main_bg_text a {
      display: block;
      line-height: 0;
      position: relative;
      overflow: hidden;
      transition: opacity 0.3s ease-in-out; }
      @media (hover: hover) {
        .sec_main .main_bg_text a:hover {
          opacity: 0.7; } }
      .sec_main .main_bg_text a::after {
        display: block;
        position: absolute;
        left: -100%;
        top: 0;
        content: "";
        width: 120%;
        height: 100%;
        transform: skew(-25deg);
        mix-blend-mode: overlay;
        background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 25%, rgba(255, 255, 255, 0.8) 50%, rgba(255, 255, 255, 0) 75%, rgba(255, 255, 255, 0) 100%);
        animation: shiny 6s infinite linear 0s; }
  .sec_main .main_image {
    position: absolute;
    width: 33.5%;
    bottom: 0;
    right: 5%;
    transition-property: transform,opacity;
    transition-duration: 1s;
    transition-timing-function: ease-in-out;
    opacity: 0;
    transform: translateY(20px);
    transition-delay: 0.4s; }
    @media screen and (max-width: 480px) {
      .sec_main .main_image {
        width: 100%;
        right: 0; } }
    .loaded .sec_main .main_image {
      opacity: 1;
      transform: translateY(0); }
  .sec_main .main_sub_image {
    position: absolute;
    transition-property: filter,opacity;
    transition-duration: 2s;
    transition-timing-function: ease-in-out;
    opacity: 0;
    filter: brightness(500%); }
    .loaded .sec_main .main_sub_image {
      opacity: 1;
      filter: brightness(100%); }
  .sec_main .main_sub_image_01 {
    width: 7.88%;
    top: 0;
    left: 0;
    transition-delay: 2.2s; }
    @media screen and (max-width: 480px) {
      .sec_main .main_sub_image_01 {
        width: 25.13%; } }
  .sec_main .main_sub_image_02 {
    width: 25.25%;
    top: 0;
    left: 62.26%;
    transition-delay: 2.4s; }
    @media screen and (max-width: 480px) {
      .sec_main .main_sub_image_02 {
        width: 25.13%;
        left: auto;
        right: 0; } }
  .sec_main .main_sub_image_03,
  .sec_main .main_sub_image_04,
  .sec_main .main_sub_image_05,
  .sec_main .main_sub_image_06,
  .sec_main .main_sub_image_07 {
    width: 6.25%; }
    @media screen and (max-width: 480px) {
      .sec_main .main_sub_image_03,
      .sec_main .main_sub_image_04,
      .sec_main .main_sub_image_05,
      .sec_main .main_sub_image_06,
      .sec_main .main_sub_image_07 {
        display: none; } }
  .sec_main .main_sub_image_03 {
    top: 29.56%;
    left: 62.26%;
    transition-delay: 3.6s; }
  .sec_main .main_sub_image_04 {
    top: 44.48%;
    left: 56.01%;
    transition-delay: 3.2s; }
  .sec_main .main_sub_image_05 {
    top: 29.56%;
    right: 6.25%;
    transition-delay: 2.6s; }
  .sec_main .main_sub_image_06 {
    top: 29.56%;
    right: 0;
    transition-delay: 3.4s; }
  .sec_main .main_sub_image_07 {
    top: 44.48%;
    right: 0;
    transition-delay: 3s; }

@keyframes shiny {
  0% {
    left: -100%; }
  20%,100% {
    left: 100%; } }
.sec_info {
  padding-top: clamp(25px, 3.34%, 40px);
  padding-bottom: clamp(25px, 3.34%, 40px);
  color: #fff;
  background: url("../images/top/bottom_bg.png") center/cover no-repeat; }
  .sec_info .info_lead {
    text-align: center;
    font-size: clamp(14px, 1.77vw, 22px);
    line-height: 1.6;
    margin-bottom: 1em; }
  .sec_info .btns {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 560px;
    margin: 0 auto 20px;
    gap: 20px 0; }
    @media screen and (max-width: 480px) {
      .sec_info .btns {
        gap: 10px 0; } }
    .sec_info .btns .entry_button {
      width: 100%; }
      .sec_info .btns .entry_button a {
        color: #333;
        font-size: clamp(20px, 2.25vw, 28px);
        display: block;
        text-align: center;
        transition: opacity 0.3s ease-in-out;
        background: url("../images/top/button_entry_bg.jpg") center/cover no-repeat;
        padding: 0.2em; }
        @media (hover: hover) {
          .sec_info .btns .entry_button a:hover {
            opacity: 0.7; } }
    .sec_info .btns .map_button {
      width: 48%; }
      @media screen and (max-width: 480px) {
        .sec_info .btns .map_button {
          width: 49%; } }
      .sec_info .btns .map_button a {
        text-align: center;
        display: block;
        font-size: clamp(14px, 1.53vw, 19px);
        line-height: 1;
        background: #fff;
        color: #333;
        border: 2px solid;
        padding: 0.6em 0.2em;
        transition: opacity 0.3s ease-in-out; }
        @media (hover: hover) {
          .sec_info .btns .map_button a:hover {
            opacity: 0.7; } }
        .sec_info .btns .map_button a span {
          line-height: 1;
          display: block; }
          .sec_info .btns .map_button a span.en {
            font-size: 60%;
            margin-bottom: 3px; }
    .sec_info .btns .outline_button {
      width: 48%; }
      @media screen and (max-width: 480px) {
        .sec_info .btns .outline_button {
          width: 49%; } }
      .sec_info .btns .outline_button a {
        text-align: center;
        display: block;
        font-size: clamp(14px, 1.53vw, 19px);
        line-height: 1;
        background: #fff;
        color: #333;
        border: 2px solid;
        padding: 0.6em 0.2em;
        transition: opacity 0.3s ease-in-out; }
        @media (hover: hover) {
          .sec_info .btns .outline_button a:hover {
            opacity: 0.7; } }
        .sec_info .btns .outline_button a span {
          display: block;
          line-height: 1; }
          .sec_info .btns .outline_button a span.en {
            font-size: 60%;
            margin-bottom: 3px; }
  .sec_info .tel_wrap {
    width: fit-content;
    margin-inline: auto; }
    .sec_info .tel_wrap .tel_head {
      font-size: clamp(12px, 1.53vw, 19px);
      margin-bottom: 0.5em; }
    .sec_info .tel_wrap .tel_bottom {
      display: flex;
      align-items: center;
      gap: 0 2.5%; }
      @media screen and (max-width: 480px) {
        .sec_info .tel_wrap .tel_bottom {
          flex-direction: column;
          gap: 10px 0; } }
      .sec_info .tel_wrap .tel_bottom .tel {
        max-width: 510px; }
      .sec_info .tel_wrap .tel_bottom .tel_sub {
        font-size: clamp(11px, 1.29vw, 16px);
        line-height: 1.57;
        flex-shrink: 0; }

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