@charset "utf-8" ;

/*
■DEBUG
******************************/
#log {
  background-color: pink;
  color: blue;
  padding: 1%;
  position: fixed;
  left: 1%;
  bottom: 1%;
  z-index: 10;
  width: 300px;
  font-size: 12px;
  text-align: left;
  overflow: hidden;
  opacity: 0.9;
  display: none;
    font-family: consolas;
    z-index: 9999;
}
.test #log {
  display: block;
}
.test .scrollwrap {

}
.test .scrollwrap.flg_init1 {
    /* border: 5px solid blue; */
}
.test .scrollwrap.flg_init2 .container {
    /* border: 5px dashed red; */
}


/*
■top
******************************/

.pg_top header .inner1000 {
    max-width: unset;
    margin: unset;
    padding: unset;
    overflow: unset;
}
.pg_top header .gmenu {
    display: none;
}
.pg_top header .hm.pcnone {
    display: unset!important;
}

header {
    position: fixed;
    left: 0;
    top: 0;
    background: unset;
    width: 100%;
    padding: 2% 2%;
    z-index: 10;
    /* z-index: 2; */
    opacity: 0;
    transition: opacity 0.5s;
}
header::after {
    content: none;
}
header .header_logo {
    width: calc((213/1000)*100%);
}
/**add**/
.video_off header {
    opacity: 1;
}


main {
    padding: 0%;
}

.container_video {
    /* display: flex!important;
    justify-content: center;
    align-items: center; delete1015*/
    position: fixed;
    top: 0;
    left: 0;
    z-index: 0;
    /* z-index: 10; */
    width: 100%;
    height: 100vh;
    transition: opacity 0.8s 0s ease-in;
}
.container_video.pcnone {
    display: none!important;
}
.wrap_video {
    position: relative;
    /**add**/
    width: 100vw;
    height: 100vh;
    overflow: hidden;
    /* display: flex!important;
    justify-content: center;
    align-items: center; */
    z-index: 10;
}
.container_video video {
    /* border-radius: 10%; */
    position: absolute;
    left: 0;
    top: 0;
    transition: opacity 1.2s 0s ease-in;
    /**add**/
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    min-width: 100%;
    min-height: 100%;
    z-index: 10;
    object-fit: cover;
}


.container_video .logo,
.container_video .moji {
    /**add**/
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto auto;
    /* z-index: 0; */
}
.container_video .wrap_moji {
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: 1;
}
.video_off .container_video .wrap_moji {
    opacity: 1;
}
.container_video .moji01 {
    top: 19%;
    right: 8%;
}
.container_video .moji02 {
    top: 19%;
    right: 17%;
}
.container_video .moji03 {
    top: 19%;
    right: 73%;
}
.container_video .moji04 {
    top: 19%;
    right: 83%;
}

/**フェードイン/フェードアウト**/
.container_video,
.container_video *,
.container {
    transition: opacity 2s;
}
.container.opacity_fadeout {
    opacity: 0;
}
.opacity_fadeout .moji {
    opacity: 0!important;
    transition: opacity 1s 0s!important;
}
.opacity_fadeout .logo {
    opacity: 0.05!important;
    transition: opacity 1s 0!important;
}
.opacity_fadein .moji,
.opacity_fadein .logo {
    opacity: 1!important;
    transition: opacity 1s 0!important;
}

/**スクロール位置によってロゴとスクロールアイコンを非表示**/
.scroll_to_hide header .header_logo {
    opacity: 0;
}
.scroll_to_hide .icon_scroll {
    display: none!important;
}

/**video containerの初期化：非表示**/
.container_video .logo {
    opacity: 1;
    transition: opacity 2s 0s;
}
.container_video .moji {
    opacity: 1;
    transition: opacity 2s 1s;
}
.container_video .container_video_init_hidden.logo,
.container_video .container_video_init_hidden.moji {
    /* visibility: hidden; */
    opacity: 0;
}

/**slide containerの初期化：非表示**/
.container_init_hidden {
    /* visibility: hidden; */
    opacity: 0;
}


.icon_scroll {
    position: fixed;
    left: 5%;
    top: 50%;
    z-index: 20;
    display: none;
    font-size: 1.5rem;
    text-shadow: 0px 0px 2px #fff;
}
.icon_scroll::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    height: 1px;
    width: 50px;
    background: gray;
    margin: auto;
    animation: 1.6s cubic-bezier(.65,0,.35,1) scrollAction infinite;
    position: absolute;
    left:-300%;
}
@keyframes scrollAction {
0% {
    transform: scaleX(0);
    transform-origin: right;
}

49% {
    transform: scale(1);
    transform-origin: right;
}
51% {
    transform: scale(1);
    transform-origin: left;
}
100% {
    transform: scaleX(0);
    transform-origin: left;
}
}/**@keyframes**/

/* 点滅 */
@keyframes blinking {
    0% {
    opacity: 0;
    }
    100% {
    opacity: 1;
    }
}
/* 要素にアニメーションを適用 */
.blink {
    animation: blinking 0.7s ease-in-out infinite alternate;
}


/**add20251007**/
main .scrollwrap {
    width: 100%;
    height: 100dvh;
    height: 100vh;
    position: relative;
    overflow-y: hidden;
    overflow-x: scroll;
}
/**add20251029**/
main .scrollwrap {
    opacity: 0;
    transition: opacity 2s;
}
main .scrollwrap.flg_init3 {
    opacity: 1;
}



main .container {
    /* background: #fef9f5; */

    display: flex;
    align-items: stretch;
    flex-direction: row-reverse;
    justify-content: flex-end;
    width: 6800px;
    width: max-content;
}
/**追加仕様：slide内左右余白を50px合計100pxとる**/
main .container .slide {
    position: relative;
    max-width: 1000px;
    max-width: 1100px;
    /* max-height: 800px; */
    width: 100%;

    height: auto;
    height: 98vh;
    height: 99vh;
    height: 100vh; /**for safari**/

    width: auto;
    display: flex;
    align-items: center;
    width: 1100px;
}
main .container .slide::before {
    content: "";
    background-image: url(../img/top/bg.png);
    display: block;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: 0 bottom;
    background-size: contain;
    position: absolute;
}
main .container .slide .fg {
    position: absolute;
    left: 0;
    top: 0;
}
main .container .slide.nobg::before {
    content: unset;
}
main .container .slide.s2::before {
    background-image: url(../img/top/bg_s2.png);
}
main .container .slide .wrap_cont {
    position: relative;
    z-index: 1;
    height: max-content; /**これで子要素の相対位置がズレないようにしておく**/
    margin: 0 auto;
}

/**リンク設定は共通**/
main .btn_link {
    color: #009192;
    font-family: "Noto Serif JP", serif;
    font-size: 1.6rem;
    font-size: 100%;
    font-weight: bold;
    border: 2px solid #009192;
    background-color: #fff;
    padding: 0.8% 2.5%;
    padding: 3.6% 1.0% 1.0%;

    padding: 2.5rem 0.6rem 2rem 0.6rem;
    /* padding-bottom: 1rem; */
    border-radius: 99px;
    position: absolute;
    writing-mode: vertical-rl;
    white-space: nowrap;
    z-index: 10;
    letter-spacing: -0.05em; /**iphone7**/
}

/**debug**/
main .container.test .slide {
    outline: 5px dashed red;
}
main .container.test .slide::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: 0 bottom;
    background-size: contain;
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0.2;
    background-size: 100%;
}
main .container.test .slide.s0::after {
    content: none;
}
main .container.test .slide.s2::after {
    background-image: url(./img/top/_test/B_2.png);
}
main .container.test .slide.s3::after {
    background-image: url(./img/top/_test/B_3.png);
}
main .container.test .slide.s6::after {
    /* background-image: url(./img/top/_test/B_6_s6_logo_w800.png); */
}

main .container .slide.s0 {
    position: relative;
    width: 1000px;
    width: 1500px;
    /* width: 100%; */
    display: flex;
    justify-content: center;
    max-width: unset;
}

main .container .slide.s0 .test {
    color: deeppink;
    font-size: 3rem;
}
main .container .slide.s3 .wrap_cont {
    /* display: flex; */
    /* flex-direction: row-reverse; */
}
/**20251010off
main .container .slide.s3 .wrap_cont .lr_l {
    display: flex;
    flex-direction: column;
}
main .container .slide .wrap_cont .btn_area {
    position: relative;
}

main .container .slide.s3 .btn_link03 {
    color: #af9d4b;
    border-color: #af9d4b;
}
main .container .slide.s3 .btn_link01 {
    right: 36%;
    bottom: 8%;
}
main .container .slide.s3 .btn_link02 {
    right: 64%;
    bottom: 49%;
}
main .container .slide.s3 .btn_link03 {
    right: 83%;
    bottom: 5%;
}
**/
main .container .slide.s3 .wrap_cont {
    max-height: 800px;
    font-family: "Noto Serif JP", serif;
}
main .container .slide.s3 .wrap_cont .s3_box {
    position: absolute;
    display: flex;
    align-items: flex-start;
}
main .container .slide.s3 .wrap_cont .s3_box01 {
    /* background-color: pink;opacity: 0.8; */
    width: 40%;
    right: 4%;
    top: 14%;
    height: 81%;
    flex-direction: column;
}
main .container .slide.s3 .wrap_cont .s3_box02 {
    /* background-color: yellow;opacity: 0.8; */
    width: 50%;
    left: 3%;
    top: 14%;
    padding-top: 1%;
    flex-direction: row-reverse;
    height: 39%;
}
main .container .slide.s3 .wrap_cont .s3_box03 {
    /* background-color: skyblue;opacity: 0.8; */
    width: 51%;
    left: 4%;
    top: 64%;
    height: 31%;
}
main .container .slide.s3 .wrap_cont .s3_box .box_text {
    width: 100%;
    writing-mode: vertical-rl;
    position: relative;
}
main .container .slide.s3 .wrap_cont .s3_box .box_text .ttl {
    font-size: 2.7rem;
    margin-left: 5%;
    font-weight: bold;
}
main .container .slide.s3 .wrap_cont .s3_box .box_text .sttl {
    font-size: 2.0rem;
    margin-left: 4%;
}
main .container .slide.s3 .wrap_cont .s3_box .box_text .text {
    line-height: 1.6;
    font-size: 1.5rem;
}

main .container .slide.s3 .wrap_cont .s3_box01 .image {
    width: 100%;
}
main .container .slide.s3 .wrap_cont .s3_box01 .box_text {
    padding-right: 8%;
    height: 38%;
}
main .container .slide.s3 .wrap_cont .s3_box01 .box_text {
    padding-right: 8%;
}
main .container .slide.s3 .wrap_cont .s3_box01 .box_text .text {
    margin-left: 10%;
}
main .container .slide.s3 .wrap_cont .s3_box02 .box_text .text {
    margin-left: 5%;
}
main .container .slide.s3 .wrap_cont .s3_box03 .box_text .text {
    margin-left: 5%;
}

main .container .slide.s3 .btn_link01 {
    position: sticky;
    top: 98%;
}
main .container .slide.s3 .btn_link02 {
    position: sticky;
    top: 98%;
}
main .container .slide.s3 .btn_link03 {
    color: #af9d4b;
    border-color: #af9d4b;
    position: sticky;
    top: 98%;
}


main .container .slide.s4 .wrap_cont .btn_img {
    position: absolute;
}
main .container .slide.s4 .wrap_cont .btn_img01 {
    right: calc((149/1000)*100%);
    top: calc((117/800)*100%);
    width: calc((259/1000)*100%);
}
main .container .slide.s4 .wrap_cont .btn_img02 {
    right: calc((448/1000)*100%);
    top: calc((284/800)*100%);
    width: calc((237/1000)*100%);
}
main .container .slide.s4 .wrap_cont .btn_img03 {
    right: calc((723/1000)*100%);
    top: calc((156/800)*100%);
    width: calc((212/1000)*100%);
}
main .container .slide.s4 .wrap_cont .btn_img04 {
    right: calc((59/1000)*100%);
    top: calc((485/800)*100%);
    width: calc((306/1000)*100%);
}
main .container .slide.s4 .wrap_cont .btn_img05 {
    right: calc((544/1000)*100%);
    top: calc((515/800)*100%);
    width: calc((236/1000)*100%);
}
main .container .slide.s4 .wrap_cont .btn_link01 {
    /* border: 2px dashed red; */
}
main .container .slide.s4 .wrap_cont .btn_link01 {
    right: calc((893/1000)*100%);
    top: calc((525/800)*100%);
}

/**
    border: 2px dashed red;
}
/**
background: #EBF6E4;
background: linear-gradient(90deg,rgba(235, 246, 228, 1) 0%, rgba(160, 242, 242, 1) 100%);
**/
main .container .slide.s5 .wrap_cont .box_link {
    position: absolute;
}
main .container .slide.s5 .wrap_cont .box_link01 * {
    /* border: 2px dashed red; */
}
main .container .slide.s5 .wrap_cont .box_link01 {
    top: 8.8%;
    left: 0;
    right: 0;
    width: 86%;
    width: 73%;
    height: auto;
    /* height: 41%; */
    max-width: 860px;
    /* background-color: blue; */
    /* padding-right: 13%; */
    /* padding-top: 5%; */
    margin: 0 auto;
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
    padding: 6% 5%;

    width: calc((860 / 1000) * 100%);
    /* padding: calc((50 / 1000) * 100%) calc((50 / 1000) * 100%); */
    border-radius: 3rem;
}
main .container .slide.s5 .wrap_cont .box_link01 .btn_img {
    /* position: absolute; */
    float: right;
    width: calc((193/860)*100%);
    width: calc((220/860)*100%);
    width: calc((246/860)*100%);
    /* writing-mode: vertical-rl;
    text-orientation: upright;
    font-feature-settings: initial; */
    display: flex;
    flex-direction: column-reverse;
    align-items: flex-start; /**for safari**/
    flex-direction: row;
}
main .container .slide.s5 .wrap_cont .box_link01 span {
    font-family: "Noto Serif JP", serif;
    font-weight: bold;
    font-size: 1.6rem;
    writing-mode: vertical-rl;
    text-orientation: upright;
    font-feature-settings: initial;
}
main .container .slide.s5 .wrap_cont .box_link01 span.ttl {
    writing-mode: vertical-rl;
    text-orientation: upright;
    font-feature-settings: initial;
    font-size: 2.7rem;
    float: right;
}
main .container .slide.s5 .wrap_cont .box_link01 .btn_img + .btn_img {
    /* margin-right: 11%; */
    /* margin-right: 8%; */
}
main .container .slide.s5 .wrap_cont .btn_img01 {
    /* right: calc((200/1000)*100%); */
    /* top: calc((119/800)*100%); */
    /* width: calc((193/860)*100%); */
}
main .container .slide.s5 .wrap_cont .btn_img02 {
    /* right: calc((443/1000)*100%); */
    /* top: calc((119/800)*100%); */
    /* width: calc((193/860)*100%); */
}
main .container .slide.s5 .wrap_cont .btn_img03 {
    /* right: calc((686/1000)*100%); */
    /* top: calc((119/800)*100%); */
    /* width: calc((193/860)*100%); */
}

main .container .slide.s5 .wrap_cont .info {
    background-color: pink;
    background-color: #fff;
    width: calc((860/1000)*100%);
    padding: calc((50/1000)*100%) calc((50/1000)*100%) ;
    margin: 0 auto;
    left: 0;
    right: 0;
    top: 58%;
    border-radius: 50px;
    border-radius: 3rem;
    display: flex;
    justify-content: flex-start;
}
main .container .slide.s5 .wrap_cont .info .post_box {
    width: 90%;
    overflow-y: auto;
    height: 10rem;
    height: 8em;
}
main .container .slide.s5 .wrap_cont .info .title_info {
    width: calc((24/860)*100%);
    margin: 0% 10% 0% 0;
}
main .container .slide.s5 .wrap_cont .info .post_box li + li {
    margin-top: 2%;
}
main .container .slide.s5 .wrap_cont .info .post_box a {
    display: block;
    width: 100%;
    position: relative;
    color: #009192;
    font-family: "Noto Serif JP", serif;
    font-size: 1.6rem;
    font-size: clamp(1.0rem, 115%, 1.6rem);
}
main .container .slide.s5 .wrap_cont .info .post_box a::after {
    content: "＞";
    color: #009192;
    font-weight: bold;
    position: absolute;
    right: 3%;
    top: 0;
    bottom: 0;
    display: flex;
    align-items: center;
}
main .container .slide.s5 .wrap_cont .info .post_box a .category {
    border: 1px solid #009192;
    border-radius: 99px;
    font-size: 1.4rem;
    padding: 0% 2%;
    margin: 0% 2%;
}
main .container .slide.s5 .wrap_cont .info .post_box a .title {
    color: #222;
    padding-right: 1em;
}

main .container .slide.s6 {
    position: relative;
    max-width: 800px;
    max-width: 1000px;
    /* max-height: 800px; */
    width: 100%;
    height: auto;
    background-color: #009192;
    color: #fff;
    z-index: 20;
}
main .container .slide .slide_base_img {
    /* height: 98vh; ★0925オフ*/
    /* min-height: 100vh; */
    max-width: 1000px;
}
main .container .slide.s6 .wrap_cont {
    /* height: 98vh; */
}
main .container .slide.s6 .wrap_cont .box_lr {
    display: flex;
    /* position: absolute;
    top: 0;
    left: 0;
    top: 0;
    bottom: 0; */
    width: 100%;
    width: 800px;
    width: 1000px;
    height: 98vh;
}

main .container .slide.s6 .wrap_cont .lr_l {
    width: 50%;
    max-width: 400px;
    max-width: 500px;
    /* background-color: pink; */
    /* padding-top: 52%; */
    /* padding-top: 38vh; */
    text-align: center;
    position: relative;
}
main .container .slide.s6 .wrap_cont .lr_l .sbox {
    position: absolute;
    left: 0;
    right: 0;
    top:0;
    bottom: 0;
    margin: auto auto;
    height: fit-content;
    /* border: 5px dashed pink; */
}
main .container .slide.s6 .wrap_cont .lr_l .img_logo {
    width: clac((110/400)*100%);
}
main .container .slide.s6 .wrap_cont .lr_l a {
    margin: 0 auto;
    display: block;
    width: 40%;
    margin: 5% auto;
    /* margin: 3vh auto; */
}
main .container .slide.s6 .wrap_cont .lr_l a.link01 {
    /* padding: 3% 5%;
    padding: 3% 0%;
    border: 1px solid #fff; */
    padding: 0.5em 2em;
    background-color: #f08c1d;
    border-radius: 99px;
}
main .container .slide.s6 .wrap_cont .lr_l a.link02 {
    padding: 2% 5%;
    padding: 2% 0%;
}
main .container .slide.s6 .wrap_cont .lr_l .cr {
    position: absolute;
    bottom: 2%;
    left: 0%;
    right: 0%;
    font-size: 1.0rem;
}

main .container .slide.s6 .wrap_cont .lr_r {
    width: 50%;
    max-width: 400px;
    max-width: 500px;
    /* background-color: orange; */
    display: flex;
    flex-wrap: wrap;
    flex-direction: row-reverse;
    /* padding: 13% 0% 5% 0%; */
}
main .container .slide.s6 .wrap_cont .lr_r .grp_list {
    width: 50%;
    height: 50%;
    height: 50vh;
    border-left: 1px solid #46afb1;
    border-bottom: 1px solid #46afb1;
    padding-left: 9%;
    padding-top: 17%;
}
main .container .slide.s6 .wrap_cont .lr_r .grp_list .ttl {
    margin-bottom: 5%;
}
main .container .slide.s6 .wrap_cont .lr_r .grp_list ul {
    padding-left: 0%;
}
main .container .slide.s6 .wrap_cont .lr_r .grp_list li {
    font-size: 1.2rem;
    margin-bottom: 6%;
}
main .container .slide.s6 .wrap_cont .lr_r .grp_list li::before {
    content: "－";
    padding-right: 0.5rem;
}


@media screen and (max-width: 1000px) {
    html {
        font-size: 60%;
    }


}/**@end**/


/** SP **/
/**@media screen and (max-width: 480px){ **/
@media screen and (max-width: 767px) {

    .container_video.spnone {
        display: none!important;
    }
    .container_video.pcnone {
        display: flex!important;
    }

    .container_video {
        height: 100dvh;
    }

    .container_video .wrap_moji {
        height: 100dvh;
    }

        header .header_logo {
            width: 40%
        }
    .hm {
        width: 9%;
    }
    ul.hm_menu {
        width: 100vw;
        min-width: unset;
        max-width: 100vw;
    }

    .icon_scroll {
        left: 8%
    }
    /**add20251014**/
    main .scrollwrap {
        height: 100dvh;
    }

    main .container {
        /* width: 800vw; */
    }

    main .container .slide {
        /* height: 100dvh; */
        max-height: unset;
        max-width: 100vw;
        width: auto; /**0924高さに合わせる**/
        display: flex; /**0924上下中央**/
        align-items: center;
        max-width: 110vw;
        width: 110vw;
    }

    main .container .slide .slide_base_img {
        /* max-height: 100dvh; */
        width: 100%;
        width: auto; /**0924高さに合わせる**/
        /* height: 100dvh; */
        max-height: 800px;
        max-height: 100dvh;
        max-width: 100vw;
    }

    main .container .slide::before {
        background-size: 150%;
    }
    main .container .wrap_cont .box_layout {
        position: absolute;
        display: flex;
        flex-direction: column;
        justify-content: center;
        top: 0;
        left: 0;
    }
    /**リンク設定は共通**/
    main .btn_link {
        /* padding: 2.6% 0.6% 5.0%; */
        font-size: 94%;
    }

    main .container .slide.s0 {
        /* max-width: 100vw; */
        /* width: 100vw; */
        max-width: 110vw;
        width: 110vw;
    }
/**
    main .container .slide.s3 .btn_link01 {
        right: 86%;
        bottom: 62%;
    }
    main .container .slide.s3 .btn_link02 {
        right: 16%;
        bottom: 25%;
    }
    main .container .slide.s3 .btn_link03 {
        right: 86%;
        bottom: 7%;
    }
**/
    main .container_video .logo, main .container_video .moji {
        top: 6%;
    }
    main .container .slide.s3 .wrap_cont {
        max-height: 100dvh;
    }
    main .container .slide.s3 .wrap_cont .s3_box .box_text .ttl {
        font-size: 2.4rem;
        margin-left: unset;
    }
    main .container .slide.s3 .wrap_cont .s3_box01 {
        flex-direction: row-reverse;
        width: 100%;
        top: 6%;
        right: unset;
        height: 37%;
        padding-right: 0%;
    }
    main .container .slide.s3 .wrap_cont .s3_box01 .image {
        width: 65%;
    }
    main .container .slide.s3 .wrap_cont .s3_box01 .box_text {
        height: 100%;
        padding-right: unset;
        padding-top: 8%;
    }
    main .container .slide.s3 .wrap_cont .s3_box01 .text {
        display: none;
    }
    main .container .slide.s3 .wrap_cont .s3_box02 {
        width: 100%;
        top: 43%;
        left: unset;
        height: 30%;
        padding-top: unset;
    }
    main .container .slide.s3 .wrap_cont .s3_box02 .image {
        width: 46%;
    }
    main .container .slide.s3 .wrap_cont .s3_box02 .box_text {
        width: 27%;
        padding-top: 10%;
        padding-right: 6%;
        height: 100%;
        text-align: right;
    }
    main .container .slide.s3 .wrap_cont .s3_box02 .text {
        display: none;
    }
    main .container .slide.s3 .wrap_cont .s3_box03 {
        width: 100%;
        top: 73%;
        left: unset;
        height: 30%;
        flex-direction: row-reverse;
    }
    main .container .slide.s3 .wrap_cont .s3_box03 .image {
        width: 38%;
    }
    main .container .slide.s3 .wrap_cont .s3_box03 .box_text {
        width: 58%;
        padding-right: 36%;
    }
    main .container .slide.s3 .wrap_cont .s3_box03 .text {
        display: none;
    }
    main .container .slide.s3 .wrap_cont .s3_box .box_text .sttl {
        font-size: 1.7rem;
    }
    main .container .slide.s3 .wrap_cont .s3_box .box_text .sttl,
    main .container .slide.s3 .wrap_cont .s3_box .box_text .ttl {
        margin-left: 5%;
    }
    main .container .slide.s3 .wrap_cont .s3_box01 .box_text .ttl {
        margin-left: unset;
    }


    main .container .slide.s4 .wrap_cont .btn_img01 {
        right: calc((115/640)*100%);
        top: calc((112/1138)*100%);
        top: calc((152/1138)*100%);
        width: calc((259/640)*100%);
    }
    main .container .slide.s4 .wrap_cont .btn_img02 {
        right: calc((375/640)*100%);
        top: calc((287/1138)*100%);
        top: calc((327/1138)*100%);
        width: calc((237/640)*100%);
    }
    main .container .slide.s4 .wrap_cont .btn_img03 {
        right: calc((38/640)*100%);
        top: calc((423/1138)*100%);
        top: calc((463/1138)*100%);
        width: calc((212/640)*100%);
    }
    main .container .slide.s4 .wrap_cont .btn_img04 {
        right: calc((281/640)*100%);
        top: calc((538/1138)*100%);
        top: calc((578/1138)*100%);
        width: calc((306/640)*100%);
    }
    main .container .slide.s4 .wrap_cont .btn_img05 {
        right: calc((122/640)*100%);
        top: calc((787/1138)*100%);
        top: calc((827/1138)*100%);
        width: calc((236/640)*100%);
    }
    main .container .slide.s4 .wrap_cont .btn_link01 {
        right: calc((545 / 640) * 100%);
        top: calc((830 / 1138) * 100%);
    }

    main .container .slide.s5,
    main .container .slide.s5 .wrap_cont, 
    main .container .slide.s5 .wrap_cont .slide_base_img {
        /* border: 2px dashed blue; */
    }
    main .container .slide.s5 .wrap_cont .slide_base_img {
        top: calc(((0 + 10) * 1%));
    }
    main .container .slide.s5 .wrap_cont .box_link01 {
        top: 9.9%;
        /* top: 19.9%; */
        width: 91%;
        /* padding-right: 19%; */
        /* padding-right: 5%; */
        /* padding-top: 7%; */
        /* padding-left: 5%; */
        display: block;
    }
    /**for safari**/
    ::-webkit-full-page-media, :future, :root main .container .slide.s5 .wrap_cont .box_link01 {
        /* height: 31%; */
    }
    ::-webkit-full-page-media, :future, :root main .container .slide.s5 .wrap_cont .box_link01 .btn_img {
        /* margin-right: unset; */
    }
    ::-webkit-full-page-media, :future, :root main .container .slide.s5 .wrap_cont .box_link01 .btn_img01 + .btn_img01 {

    }
    main .container .slide.s5 .wrap_cont .box_link01 span.ttl {
        font-size: 2.4rem;
        font-size: calc((1vw / 1dvh) * 5rem);
    }
    main .container .slide.s5 .wrap_cont .box_link01 .btn_img {
        width: calc((172/580)*100%);
        width: 40%;
        width: 36%;
        margin-right: 8%;
    }
    main .container .slide.s5 .wrap_cont .box_link01 .btn_img02,
    main .container .slide.s5 .wrap_cont .box_link01 .btn_img03 {
        writing-mode: unset;
        display: unset;
    }
    main .container .slide.s5 .wrap_cont .box_link01 .btn_img02 span,
    main .container .slide.s5 .wrap_cont .box_link01 .btn_img03 span {
        writing-mode: unset;
        text-orientation: unset;
        font-feature-settings: unset;
    }
    main .container .slide.s5 .wrap_cont .box_link01 .btn_img span {
        font-size: 1.8rem;
        font-size: clamp(1.1rem, 70%, 1.4rem);
        font-family: "Noto Serif JP", serif;
    }
    main .container .slide.s5 .wrap_cont .box_link01 .btn_img01 span {
        font-size: clamp(1.4rem, 80%, 1.6rem);
    }
    main .container .slide.s5 .wrap_cont .box_link01 .btn_img + .btn_img {
        margin-right: 0%;
        border: 1px solid #009192;
        background-color: #fff;
        padding: 7% 0%;
        text-align: center;
        width: 50%;
        width: 40%;
        float: left;
        margin-bottom: 8%;
        margin-bottom: 5%;
        border-radius: 2rem;
    }

    main .container .slide.s5 .wrap_cont .info {
        top: 50%;
        width: calc((580/640)*100%);
        padding: calc((50/580)*100%) calc((50/580)*100%);
    }
    main .container .slide.s5 .wrap_cont .info .title_info {
        width: calc((33 / 580) * 100%);
        margin-right: 7%;
    }
    main .container .slide.s5 .wrap_cont .info .post_box {
        border-top: 1px solid #009192;
        border-bottom: 1px solid #009192;
        height: 14em;
    }
    main .container .slide.s5 .wrap_cont .info .post_box li {
        padding: 5% 0;
        border-bottom: 1px solid #009192;
    }
    main .container .slide.s5 .wrap_cont .info .post_box a {
        font-size: clamp(1.1rem, 70%, 1.4rem);
    }
    main .container .slide.s5 .wrap_cont .info .post_box a .title {
        display: block;
    }
    main .container .slide.s5 .wrap_cont .info .post_box a .category {
        font-size: clamp(1.0rem, 70%, 1.2rem);
    }

    main .container .slide.s6 {
        max-width: max-content;
    }
    main .container .slide.s6 .wrap_cont {
        /* height: 100dvh; */
    }

    main .container .slide.s6 .wrap_cont .lr_l {
        max-width: unset;
        width: 50%;
    }
    main .container .slide.s6 .wrap_cont .lr_r {
        max-width: unset;
        width: 50%;
    }
    main .container .slide.s6 .wrap_cont .lr_r .grp_list {
        /* height: 50dvh; */
        height: 50dvh;
        padding-top: 9dvh;
        padding-left: 5%;
    }
    main .container .slide.s6 .wrap_cont .lr_r .grp_list ul {
        width: 10em;
        width: auto;
    }
    main .container .slide.s6 .wrap_cont .lr_r .grp_list li {
        margin-bottom: 0.2dvh;
        margin-bottom: 1.0dvh;
    }

}/**@end**/

/** SP2 **/
@media screen and (max-width: 480px){


}/**@end**/


/**タッチデバイス：タブレット＋スマートフォン**/
@media (hover: none) and (any-pointer: coarse){
main .container .slide {
    height: 100dvh;
}
main .container .slide.s6 .wrap_cont .box_lr {
    height: 100dvh;
    max-width: 200vw;
}

}/**@end**/

/**高さが低いSP用**/
@media screen and (max-height: 650px){
    main .container_video .logo, main .container_video .moji {
        top: 13%;
    }

}/**@end**/


/** PC 大ディスプレイ 2560pxOK（67%縮小表示で見える画角）**/
/**追加仕様：slide内左右余白を50px合計100pxとる**/
@media screen and (min-width: 2000px){
main .container .slide {
    max-width: 1300px;
    width: 100%;
    overflow: hidden;
}
main .container .slide .slide_base_img.spnone {
    max-width: 1200px;
    width: 100%;
    width: clamp(1000px, 50vw, 1200px);
    display: block!important;
}
main .container .slide.s0 {
    width: 1200px;
}



}/**@end**/