@media (min-width: 1280px) {

    a {
        &:hover {
            cursor: pointer;
        }
    }

    /*ヘッダー */

    header {

        .swiper,
        .top-header {

            .swiper-wrapper,
            .header-wrapper {


                .swiper-slide,
                .slide-slide {
                    height: 65vh;


                    div {
                        margin-top: 360px;
                        margin-right: 90px;
                        max-width: 620px;

                        p {
                            font-size: 44px;
                            padding: 10px 15px;
                            margin: 10px 0px 20px 0px;

                            span {
                                font-size: 52px;
                            }
                        }

                        .slide-slide-p {
                            bottom: 50px;
                            right: 0;
                            font-size: 40px;
                            line-height: 75px;
                            height: 75px;
                        }
                    }
                }

                .slide-slide {
                    div {
                        margin-top: 0px;
                        margin-right: -53px;
                    }
                }

                &:nth-of-type(2),
                &:nth-of-type(5) {
                    .swiper-slide {
                        background-position-y: 0px;

                    }
                }

                .first-slide {
                    background-position-y: center;
                }
            }

            .swiper-button-prev,
            .swiper-button-next {
                width: 90px;
                height: 90px;
                border: 1px solid #22B6A4;
                transition: 0.5s;

                &:hover {
                    background-color: #22B6A4;
                    transition: 0.5s;
                    border: 1px solid white;

                    span {
                        &::before {
                            transition: 0.5s;
                            border-left: 20px solid white;

                        }
                    }
                }

                span {
                    &::before {
                        width: 30px;
                        height: 30px;
                        border-top: 15px solid transparent;
                        border-bottom: 15px solid transparent;
                        border-left: 20px solid #22B6A4;
                        top: -15px;
                        right: -25px;
                    }
                }
            }

            .swiper-button-prev {
                span {
                    &::before {
                        right: -8px;
                    }
                }
            }
        }


        /*ヘッダーページ 共通 */

        .top-header {
            .header-wrapper {
                .header-slide {
                    height: 50vh;

                    div {
                        transform: translateY(350px);

                        p {
                            font-size: 28px;

                            span {
                                font-size: 32px;
                            }
                        }
                    }
                }
            }
        }
    }


    /*サブタイトル*/
    .subtitle {


        &::before {
            width: 20px;
            height: 20px;
            left: -35px;
        }

        &::after {
            width: 20px;
            height: 20px;
            right: -35px;
        }
    }

    /*ヘッダーハンバーガー */
    .hamburger-menu {
        background-image: linear-gradient(rgba(34, 182, 164, 0), rgba(34, 182, 164, 0)), url(../images/hamburger.png);
        background-position-y: bottom;

        .hamburger-menu-content {
            background-color: rgba(34, 182, 164, 0.8);
            display: flex;
            width: 50%;
            height: 100vh;
            margin-left: -50%;

            div {
                display: flex;
                flex-direction: column;
                justify-content: center;
                padding: 0px 0px;
                margin-left: 0%;

                &::before {
                    top: 20%;

                    width: 25vw;
                }

                &::after {
                    bottom: 20%;

                    width: 24.6vw;
                }

                a {
                    position: relative;
                    transition: 0.3s linear;
                    padding: 0px 20px;
                    z-index: 0;
                    margin: 0 auto;

                    &::before {
                        position: absolute;
                        content: "";
                        width: 0;
                        height: 30px;
                        bottom: -5px;
                        left: 0;
                        background-color: white;
                        transition: 0.3s linear;
                        z-index: -1;
                    }

                    &:hover {
                        color: #22B6A4;
                        transition: 0.3s linear;

                        &::before {
                            width: 100%;
                            transition: 0.3s linear;
                        }
                    }
                }
            }
        }
    }

    /*ヘッダーハンバーガー */

    @keyframes slide-in-from-right {
        from {
            width: 50vw;
            opacity: 0;
        }

        to {
            width: 27.5vw;
            opacity: 1;
        }
    }

    @keyframes slide-in-from-left {
        from {
            width: 50vw;
            opacity: 0;
        }

        to {
            width: 27.5vw;
            opacity: 1;
        }
    }




    /*ヘッダーボタン*/

    .top-button {
        width: 130px;
        height: 130px;
        z-index: 1000;
        transition-duration: .3s;

        &:hover {
            opacity: .8;
        }

        &.active {
            +.hamburger-menu {
                opacity: 1;

                &::before {
                    width: 27.5vw;
                }

                &::after {
                    width: 27.5vw;
                }
            }

            button {
                margin-top: 15px;

                span {
                    width: 50px;
                    padding-top: 12px;

                    &:nth-of-type(1) {
                        transform: translate(-4px, 12px) rotate(45deg);
                    }

                    &:nth-of-type(3) {
                        transform: translate(3px, -15px) rotate(-45deg);
                    }
                }
            }
        }


        h1 {
            font-size: 24px;
            padding-top: 30px;

            &::before {
                width: 120px;
                height: 120px;
                top: 5px;
                left: 5px;

            }
        }

        button {
            margin-top: 15px;

            span {
                width: 50px;
                padding-top: 12px;
            }
        }
    }


    /*ボタン*/

    .button {
        position: relative;
        display: inline-block;
        width: 300px;
        height: 60px;
        line-height: 60px;
        font-size: 20px;
        text-align: center;
        overflow: hidden;
        text-decoration: none;
        transition: 0.6s linear;

        &::before {
            transition: 0.6s linear;
            top: 23px;
            z-index: 2;
            border-left: 12px solid white;
        }

        &:hover {
            color: #22B6A4;

            span {
                height: 60px;
                width: 100%;
                cursor: pointer;
                background-color: white;
                color: #22B6A4;
            }

            &::before {
                right: 5px;
                border-left: 12px solid #22B6A4;
            }
        }

        &:active {
            &::before {
                right: 15px;
            }
        }

        span {
            &:not(.bg) {
                position: relative;
                z-index: 1;
            }

            &.bg {
                position: absolute;
                top: 0;
                left: 0;
                width: 0;
                height: 100%;
                background-color: white;
                transition: 0.6s linear;
            }
        }
    }

    @keyframes color {
        0% {
            color: #f9f8f8;
        }

        70% {
            color: #f9f8f8;
        }

        100% {
            color: #22B6A4;
        }
    }


    /*戻るボタン*/
    .back-button {
        position: relative;
        display: inline-block;
        width: 330px;
        height: 65px;
        line-height: 65px;
        font-size: 20px;
        text-align: center;
        overflow: hidden;
        text-decoration: none;
        transition: 0.3s linear;


        &::before {
            transition: 0.3s linear;
            top: 25px;
            z-index: 1;
            border-right: 12px solid white;
        }

        &::after {
            content: '';
            position: absolute;
            top: 5px;
            right: 5px;
            width: 0;
            height: 55px;
            border: 2px solid #22B6A4;
            z-index: 0;
            transition: width 0.3s linear;
            box-sizing: border-box;
        }

        &:hover {
            color: #22B6A4;

            span {
                width: 100%;
            }

            &::before {
                right: 5px;
                border-right: 12px solid #22B6A4;
            }

            &::after {
                position: absolute;
                content: '';
                top: 5px;
                right: 5px;
                width: 320px;
                height: 55px;
                z-index: 1;
                transition: 0.3s linear;
                border: 2px solid #22B6A4;
            }
        }

        &:active {
            &::before {
                border-right-color: white;
            }
        }


        span {
            position: absolute;
            top: 0;
            right: 0;
            width: 0;
            height: 100%;
            background-color: white;
            z-index: -1;
            transition: 0.3s linear;

            &:hover {
                height: 60px;
                width: 100%;
                cursor: pointer;
                background-color: white;
                color: #22B6A4;
                z-index: -1;


            }
        }
    }



    /*メイン*/

    main {



        /*ボタン */
        .back-button {
            transition: 0.3s linear;

            &::before {
                transition: 0.3s linear;
            }

            &:hover {
                transition: 0.3s linear;

                &::before {
                    transition: 0.3s linear;
                    left: 20px;
                }
            }
        }


        /* 本院の３つの魅力 */
        .top-three-points {
            padding-top: 80px;
            padding-bottom: 80px;

            .top-three-title-round {
                width: 300px;

                &::before,
                &::after {
                    width: 20px;
                    height: 20px;
                }

                h2 {
                    width: 300px;
                    font-size: 24px;
                    padding-top: 20px;
                    padding-bottom: 20px;

                    span {
                        font-size: 36px;
                    }

                    &::before,
                    &::after {
                        width: 20px;
                        height: 20px;
                    }
                }
            }

            .top-three-subtitle {
                padding-top: 10px;
                padding-bottom: 40px;
                font-size: 32px;
            }

            .top-three-contents {
                max-width: 1200px;

                .top-three-section {

                    &:nth-of-type(1),
                    &:nth-of-type(2),
                    &:nth-of-type(3) {
                        width: 350px;
                        height: 270px;

                        &::before {
                            width: 320px;
                            height: 245px;
                        }

                        div {
                            width: 250px;



                            p {
                                line-height: 22px;

                                &:nth-of-type(1) {
                                    font-size: 28px;
                                    text-align: center;
                                }

                                &:nth-of-type(2) {

                                    font-size: 18px;
                                    text-align: center;

                                    span {
                                        font-size: 28px;
                                    }
                                }
                            }
                        }
                    }

                    &:nth-of-type(1) {
                        div {
                            p {
                                &:nth-of-type(1) {
                                    transform: translateY(0px);
                                }

                                &:nth-of-type(2) {
                                    transform: translateY(-12px);
                                }
                            }
                        }
                    }

                    &:nth-of-type(2) {
                        div {
                            p {
                                line-height: 22px;

                                &:nth-of-type(1) {
                                    transform: translateY(-9px);
                                }

                                &:nth-of-type(2) {
                                    width: 230px;
                                    transform: translateY(0px);
                                    line-height: 22px;

                                    span {
                                        font-size: 20px;
                                    }

                                    br {
                                        display: block;
                                    }
                                }
                            }

                        }
                    }

                    &:nth-of-type(3) {
                        div {
                            p {
                                &:nth-of-type(1) {
                                    transform: translateY(9px);
                                }

                                &:nth-of-type(2) {
                                    line-height: 22px;

                                    span {
                                        font-size: 20px;
                                    }

                                }
                            }
                        }
                    }

                }
            }
        }



        /*ヘッダーTOPのオパシティ */
        .opening {
            &:not(.already-shown) {
                animation: 4s opacity2 forwards;

                p {
                    font-size: 96px;
                    animation: 7s fade forwards;

                }
            }
        }


        /*治療方法 */

        .top-way {
            padding: 80px 0px;

            .top-way-content {
                padding-top: 60px;
                padding-bottom: 130px;

                p {
                    width: 645px;
                    font-size: 18px;
                    line-height: 32px;
                    margin-top: 60px;

                    &::after {
                        width: 160px;
                        height: 160px;
                        right: -150px;
                    }
                }

                .top-three-title-round {
                    width: 320px;

                    &::before,
                    &::after {
                        right: 0px;
                        bottom: -85px;
                        width: 20px;
                        height: 20px;
                    }

                    h2 {
                        width: 320px;
                        font-size: 24px;
                        padding-top: 20px;
                        padding-bottom: 20px;

                        span {
                            font-size: 36px;
                        }

                        &::before,
                        &::after {
                            width: 20px;
                            height: 20px;
                        }
                    }

                }

                div {
                    &::before {
                        height: 400px;
                        top: -330px;
                        left: -180px;
                    }

                    &::after {
                        position: absolute;
                        content: "";
                        top: -330px;
                        right: -178px;
                        width: 3px;
                        height: 220px;
                        border-left: 3px solid var(--honin-dark-green);
                    }
                }
            }


        }




        /* トップップお知らせ */

        .top-news {
            padding: 80px 0px;
            padding-bottom: 0px;

            .top-three-title-round {
                width: 320px;

                &::before,
                &::after {

                    width: 20px;
                    height: 20px;
                }

                h2 {
                    width: 320px;
                    font-size: 24px;
                    padding-top: 20px;
                    padding-bottom: 20px;

                    span {
                        font-size: 36px;
                    }

                    &::before,
                    &::after {
                        width: 20px;
                        height: 20px;
                    }
                }

            }

            .top-news-content {

                &:nth-of-type(2) {
                    max-width: 1100px;
                    transition: 0.3s linear;

                    a {
                        width: 200px;
                        font-size: 18px;
                        transition: 0.3s linear;
                        position: relative;
                        z-index: 1;

                        &::after {
                            position: absolute;
                            content: "";
                            width: 0;
                            height: 40px;
                            top: 0px;
                            left: 0;
                            background-color: var(--honin-dark-green);
                            transition: 0.3s linear;
                            z-index: -1;
                            border-radius: 5px;
                        }

                        &:hover {
                            color: #f9f8f8;
                            transition: 0.3s linear;
                            z-index: 1;

                            &::before {
                                transition: 0.3s linear;
                                right: 5px;
                                border-left: 12px solid white;
                            }

                            &::after {
                                width: 100%;
                                transition: 0.3s linear;
                            }
                        }






                    }


                    .top-news-section {
                        position: relative;
                        padding-bottom: 80px;

                        &:nth-of-type(1) {
                            position: relative;

                            &::before {
                                position: absolute;
                                content: "";
                                top: 20px;
                                left: -58px;
                                width: 1px;
                                height: 280px;
                                background-color: var(--honin-dark-green);
                            }

                        }

                        &:nth-of-type(3) {
                            position: relative;

                            &::after {
                                position: absolute;
                                content: "";
                                top: 20px;
                                right: -58px;
                                width: 1px;
                                height: 280px;
                                background-color: var(--honin-dark-green);
                            }

                        }

                        &:nth-of-type(even) {
                            border-left: none;
                            position: relative;
                            padding-left: 0px;

                            &::before {
                                position: absolute;
                                content: "";
                                top: 20px;
                                left: -42px;
                                width: 1px;
                                height: 280px;
                                background-color: var(--honin-dark-green);
                            }

                            &::after {
                                position: absolute;
                                content: "";
                                top: 20px;
                                right: -47px;
                                width: 1px;
                                height: 280px;
                                background-color: var(--honin-dark-green);
                            }
                        }

                        h3 {
                            font-size: 20px;
                            margin-top: 30px;
                        }

                        p {
                            font-size: 18px;
                            margin-top: 20px;
                            margin-bottom: 40px;
                        }

                        a {
                            &::before {
                                transition: 0.3s linear;
                            }
                        }

                    }
                }
            }

            .button {
                margin-top: 50px;

            }
        }



        /*トップメニュー */

        .top-menu {
            .top-three-title-round {
                width: 320px;

                &::before,
                &::after {

                    width: 20px;
                    height: 20px;
                }

                h2 {
                    width: 320px;
                    font-size: 24px;
                    padding-top: 20px;
                    padding-bottom: 20px;

                    span {
                        font-size: 36px;
                    }

                    &::before,
                    &::after {
                        width: 20px;
                        height: 20px;
                    }

                }
            }

            .top-news-section {
                a {
                    transition: 0.3s linear;
                    z-index: 1;

                    &::after {
                        position: absolute;
                        content: "";
                        width: 0;
                        height: 40px;
                        top: 0px;
                        left: 0;
                        background-color: var(--honin-dark-green);
                        transition: 0.3s linear;
                        z-index: -1;
                        border-radius: 5px;
                    }

                    &:hover {
                        color: #f9f8f8;
                        transition: 0.3s linear;
                        z-index: 1;

                        &::before {
                            transition: 0.3s linear;
                            right: 5px;
                            border-left: 12px solid white;
                        }

                        &::after {
                            width: 100%;
                            transition: 0.3s linear;
                        }
                    }
                }
            }
        }


        /*トップスタッフ紹介*/
        .top-staff {
            padding-top: 80px;
            padding-bottom: 80px;

            .top-three-title-round {
                width: 320px;

                &::before,
                &::after {

                    width: 20px;
                    height: 20px;
                }

                h2 {
                    width: 320px;
                    font-size: 24px;
                    padding-top: 20px;
                    padding-bottom: 20px;

                    span {
                        font-size: 36px;
                    }

                    &::before,
                    &::after {
                        width: 20px;
                        height: 20px;
                    }

                }
            }

            .swiper2 {
                .swiper-wrapper {
                    display: flex;
                    justify-content: center;
                    flex-wrap: wrap;
                    gap: 0px;
                    transform: none;
                    max-width: 1100px;
                    margin: 0 auto;

                    .swiper-slide {
                        margin-top: -70px;
                        width: auto;

                        div {
                            width: 300px;
                            margin: 0 auto;
                            position: relative;



                            img {
                                border-radius: 28px;
                                width: 210px;
                                height: 210px;
                                object-fit: cover;
                            }

                        }

                    }

                }

                .top-swiper-button {
                    max-width: 300px;
                    width: 100%;
                    margin: 0 auto;


                    .swiper-button-prev,
                    .swiper-button-next {
                        display: none;

                    }



                }

                .swiper-bullet {
                    display: none;
                }
            }
        }













        /*メニューページ*/
        .menu {
            padding: 80px 0px;

            .top-three-title-round {
                width: 320px;

                &::before,
                &::after {

                    width: 20px;
                    height: 20px;
                }

                h2 {
                    width: 320px;
                    font-size: 24px;
                    padding-top: 20px;
                    padding-bottom: 20px;

                    span {
                        font-size: 36px;
                    }

                    &::before,
                    &::after {
                        width: 20px;
                        height: 20px;
                    }

                }
            }

            .menu-content {

                .menu-section {
                    display: flex;
                    justify-content: space-evenly;
                    width: 1100px;
                    padding: 0px 0px;

                    div {
                        margin-bottom: 0px;
                        width: 310px;
                        line-height: 5px;
                    }

                    img {
                        width: 305px;
                        height: 250px;
                        margin-top: 30px;
                        margin-bottom: 30px;
                    }

                    .menu-sentence {
                        width: 330px;
                    }

                    a {


                        transition: 0.3s linear;

                        &::before {
                            transition: 0.3s linear;
                        }

                        &::after {
                            position: absolute;
                            content: "";
                            width: 0%;
                            height: 100%;
                            top: 0;
                            left: 0;
                            background-color: var(--honin-dark-green);
                            transition: 0.3s linear;
                            z-index: -1;
                        }

                        span {
                            transition: 0.3s linear;
                        }

                        &:hover {

                            transition: 0.3s linear;

                            &::before {
                                border-left: 12px solid white;
                                transition: 0.3s linear;
                            }

                            &::after {
                                width: 100%;
                                border-radius: 4px;
                            }

                            span {
                                transition: 0.3s linear;
                                color: #f9f8f8;


                            }

                        }

                    }

                    .menu-pc {
                        display: flex;
                        flex-direction: column;
                        justify-content: space-between;

                        a {
                            transform: translate(-305px, -65px);
                        }
                    }

                }

                &:nth-of-type(odd) {
                    .menu-section {
                        border: 5px solid #22B6A4;

                    }
                }

            }
        }



        /*あんまマッサージページ*/
        /*本院の３つの魅力 */
        .massage {

            /* コンセプトセクションのスタイル 料金スタイル */
            .massage-concept,
            .massage-price-section,
            .massage-question-concept {

                padding: 80px 0px;
                padding-bottom: 40px;

                p {
                    font-size: 24px;
                }

                .top-three-title-round {
                    width: 320px;

                    &::before,
                    &::after {

                        width: 20px;
                        height: 20px;
                    }

                    h2 {
                        width: 320px;
                        font-size: 24px;
                        padding-top: 20px;
                        padding-bottom: 20px;

                        span {
                            font-size: 36px;
                        }

                        &::before,
                        &::after {
                            width: 20px;
                            height: 20px;
                        }
                    }

                }

                .massage-concept-section {
                    gap: 120px;
                    max-width: 1080px;

                    img {
                        width: 490px;
                        height: 290px;
                    }

                    p {
                        width: 470px;
                    }

                    h3 {
                        text-align: right;
                    }
                }

            }


            /* 料金スタイル */


            .massage-price-section {
                padding-bottom: 0px;
                padding-bottom: 80px;


                .massage-flex {

                    width: 1080px;
                    margin: 0 auto;

                    img {
                        width: 490px;
                        height: 220px;
                        margin-left: 0px;
                        margin-bottom: 0px;
                        transform: translateX(0px);
                    }

                    div {
                        margin-left: 0px;
                        padding-left: 0px;
                        width: 50%;

                        p {
                            line-height: 36px;
                            font-size: 40px;

                            span {
                                font-size: 28px;
                            }

                            .upt {
                                font-size: 24px;
                                line-height: 36px;
                                transform: translateX(-16px);
                            }
                        }

                    }

                }

                div {
                    width: 1080px;
                }
            }


            /*美顔鍼*/
            .beauty {
                padding-bottom: 110px;
            }

            /* 質疑応答 */
            .massage-question {


                .subtitle {
                    margin-bottom: 40px;
                }

                .accordion-header,
                .accordion-content {
                    p {
                        font-size: 18px;
                    }
                }
            }

        }


        /*お問い合わせ*/
        .inquery {
            .top-three-title-round {
                width: 320px;

                &::before,
                &::after {

                    width: 20px;
                    height: 20px;
                }

                h2 {
                    width: 320px;
                    font-size: 24px;
                    padding-top: 20px;
                    padding-bottom: 20px;

                    span {
                        font-size: 36px;
                    }

                    &::before,
                    &::after {
                        width: 20px;
                        height: 20px;
                    }
                }

            }

            .inquery-concept {
                padding-top: 80px;
                padding-bottom: 80px;

                p {
                    width: 700px;
                    font-size: 18px;
                    line-height: 30px;

                    &::before,
                    &::after {
                        height: 170px;
                        top: -10px;
                        left: -130px;
                    }

                    &::after {
                        top: -60px;
                        left: -70px;
                    }

                    span {
                        &::before,
                        &::after {
                            height: 170px;
                            right: -130px;
                            bottom: -10px;
                        }

                        &::after {
                            right: -70px;
                            bottom: -60px;
                        }
                    }
                }

            }

            .inquery-calling {
                padding: 80px 0px;

                .calling-content {
                    display: flex;
                    justify-content: space-evenly;
                    margin: 0 auto;
                    max-width: 1080px;

                    div {
                        margin-top: 0px;
                        width: 50%;

                        &:nth-of-type(1) {
                            display: flex;
                            align-items: center;
                            flex-direction: column;
                            justify-content: center;

                            .subtitle {
                                font-size: 28px;

                                &::before {
                                    top: 0px;
                                    left: 32px;

                                }

                                &::after {
                                    top: 0px;
                                    left: 345px;
                                }
                            }
                        }

                        &:nth-of-type(2) {
                            border-left: 1px solid var(--honin-dark-green);

                            div {
                                width: 400px;
                                margin: 0 auto;
                            }
                        }

                        a {
                            font-size: 36px;
                            line-height: 60px;

                            img {
                                margin-top: 0px;
                                width: 60px;
                                height: 60px;
                                transition: 0.3s linear;
                            }

                            &:hover {
                                img {
                                    transition: 0.3s linear;
                                    transform: rotate(30deg);
                                }
                            }
                        }

                        p {
                            font-size: 18px;

                            br {
                                display: none;
                            }

                            &:nth-of-type(2) {
                                margin-top: 10px;
                            }
                        }

                        img {
                            width: 120px;
                            height: 120px;
                            margin-top: 20px;
                        }
                    }



                    h3 {
                        font-size: 28px;
                        width: 240px;

                        &::before,
                        &::after {
                            top: 5px;
                            left: -15px;
                        }

                        &::after {
                            right: -255px;
                        }
                    }

                    p {
                        width: 400px;
                    }
                }
            }
        }



        /*お知らせ*/
        .news {
            padding: 80px 0px;

            .top-three-title-round {
                width: 320px;

                &::before,
                &::after {

                    width: 20px;
                    height: 20px;
                }

                h2 {
                    width: 320px;
                    font-size: 24px;
                    padding-top: 20px;
                    padding-bottom: 20px;

                    span {
                        font-size: 36px;
                    }

                    &::before,
                    &::after {
                        width: 20px;
                        height: 20px;
                    }

                }
            }

            .news-flex {
                display: flex;
                max-width: 1280px;
                margin: 0 auto;
            }

            .news-container {
                max-width: 1080px;
                order: 2;

                .news-content {
                    width: 300px;

                    &::before {
                        height: 350px;
                    }

                    &:nth-of-type(1),
                    &:nth-of-type(4),
                    &:nth-of-type(7) {
                        &::before {
                            display: none;
                        }
                    }

                    &:nth-of-type(2n) {
                        &::after {
                            display: none;
                        }
                    }

                    &:nth-of-type(3),
                    &:nth-of-type(5),
                    &:last-of-type {
                        position: relative;

                        &::after {
                            position: absolute;
                            content: "";
                            top: 23px;
                            right: -23px;
                            width: 1px;
                            height: 350px;
                            border-left: 1px solid var(--honin-dark-green);
                        }
                    }

                    &:nth-of-type(5) {
                        &::after {
                            top: 23px;
                            right: -423px;
                        }
                    }

                    &:nth-of-type(6) {
                        position: relative;

                        &::after {
                            position: absolute;
                            content: "";
                            top: 23px;
                            right: -23px;
                            width: 1px;
                            height: 350px;
                            border-left: 1px solid var(--honin-dark-green);
                        }
                    }

                    .news-content-section {
                        width: 300px;

                        img {
                            width: 250px;
                        }

                        .news-section {
                            width: 250px;
                            margin: 0 auto;

                            .news-section-first {


                                h3 {
                                    font-size: 20px;
                                }
                            }

                            .news-section-second {
                                flex-direction: column;

                                p {
                                    font-size: 18px;
                                    width: 100%;
                                    margin-bottom: 20px;
                                }

                                a {
                                    width: 200px;
                                    margin: 0 auto;
                                    transition: 0.3s linear;
                                    font-size: 20px;
                                    position: relative;
                                    z-index: 1;


                                    &::before {
                                        transition: 0.3s linear;
                                    }

                                    &::after {
                                        position: absolute;
                                        content: "";
                                        width: 0;
                                        height: 35px;
                                        top: 0px;
                                        left: 0;
                                        background-color: var(--honin-dark-green);
                                        transition: 0.5s linear;
                                        z-index: -1;
                                        border-radius: 5px;
                                    }

                                    &:hover {
                                        color: #f9f8f8;
                                        transition: 0.3s linear;
                                        z-index: 1;
                                        background-color: white;


                                        &::before {
                                            transition: 0.3s linear;
                                            right: 5px;
                                            border-left: 12px solid white;
                                        }

                                        &::after {
                                            width: 100%;
                                            transition: 0.3s linear;
                                        }
                                    }

                                }
                            }
                        }
                    }
                }
            }

            .news-container-choice {
                flex-direction: column;
                margin-left: 150px;

                .news-topic-category,
                .news-topic-date {
                    div {
                        dt {
                            transition: 0.3s linear;
                            font-size: 20px;

                            &:hover {
                                transition: 0.3s linear;
                                cursor: pointer;
                                background-color: var(--honin-dark-green);
                                color: white;

                            }
                        }
                    }
                }

            }

            .wp-pagenavi {
                .current {
                    margin: 17px;
                    font-size: 20px;
                }

                a {
                    font-size: 20px;
                    margin: 17px;

                    &:hover {
                        color: white;
                        background-color: var(--honin-dark-green);
                        transition: 0.5s;
                        cursor: pointer;
                    }
                }

                .nextpostslink {
                    width: 20px;
                    height: 0px;
                    transform: translate(10px, 17%);
                    border: 13px solid transparent;
                    border-left: 18px solid var(--honin-dark-green);
                    transition: 0.3s linear;

                    &:hover {
                        background-color: transparent;
                        transition: 0.3s linear;
                        transform: translate(25px, 17%);
                    }
                }

                .previouspostslink {
                    width: 20px;
                    height: 0px;
                    transform: translate(-5px, 30%);
                    border: 13px solid transparent;
                    border-right: 18px solid var(--honin-dark-green);
                    transition: 0.3s linear;

                    &:hover {
                        background-color: transparent;
                        transition: 0.3s linear;
                        transform: translate(-20px, 20%);
                    }
                }
            }

        }

        /*トピック*/
        .topic {
            padding: 80px 0px;

            .top-three-title-round {
                width: 320px;

                &::before,
                &::after {

                    width: 20px;
                    height: 20px;
                }

                h2 {
                    width: 320px;
                    font-size: 24px;
                    padding-top: 20px;
                    padding-bottom: 20px;

                    span {
                        font-size: 36px;
                    }

                    &::before,
                    &::after {
                        width: 20px;
                        height: 20px;
                    }

                }
            }

            .topic-flex {
                display: flex;
                max-width: 1280px;
                margin: 0 auto;
                justify-content: space-around;

                .topic-container {
                    order: 2;



                    .topic-content {
                        .topic-section {
                            max-width: 620px;
                            padding-bottom: 0px;
                            margin-top: 10px;

                            .topic-section-first {
                                line-height: 38px;
                                display: flex;

                                h3 {
                                    font-size: 22px;
                                }

                                form {
                                    dt {
                                        width: 90px;

                                        button {
                                            width: 90px;
                                            height: 40px;
                                            font-size: 18px;
                                        }
                                    }
                                }
                            }


                            p {
                                line-height: 40px;
                                width: 620px;

                                &:nth-last-of-type(1) {
                                    width: 440px;
                                    margin-top: 40px;
                                }
                            }

                            .topic-section-second {
                                p {
                                    line-height: 45px;
                                    text-align: center;
                                    margin-top: 10px;
                                    transform: translate(70px, 0px);
                                }
                            }
                        }

                        .topic-content-section {
                            .topic-container-img {
                                gap: 50px;
                                margin-top: 25px;

                                img {
                                    width: 450px;
                                    height: 275px;
                                }
                            }


                        }

                        p {
                            font-size: 20px;

                            &:nth-last-of-type(1) {
                                width: 580px;
                                margin-top: 30px;
                            }
                        }
                    }
                }
            }

            .topic-container-choice {
                position: relative;
                max-width: 1280px;
                margin: 0 auto;



                .topic-category,
                .topic-date {
                    div {
                        dt {
                            padding-top: 5px;
                            transition: 0.3s linear;
                            font-size: 20px;

                            &:hover {
                                transition: 0.3s linear;
                                cursor: pointer;
                                background-color: var(--honin-dark-green);
                                color: white;

                            }
                        }
                    }
                }
            }

        }


        /*スタッフ*/
        .staff {
            padding-top: 80px;
            padding-bottom: 80px;

            .top-three-title-round {
                width: 320px;
                margin-bottom: 60px;

                &::before,
                &::after {

                    width: 20px;
                    height: 20px;
                }

                h2 {
                    width: 320px;
                    font-size: 24px;
                    padding-top: 20px;
                    padding-bottom: 20px;

                    span {
                        font-size: 36px;
                    }

                    &::before,
                    &::after {
                        width: 20px;
                        height: 20px;
                    }

                }
            }

            .staff-container-flex {
                display: flex;
                justify-content: space-around;
                max-width: 1280px;
                margin: 0 auto;

                .staff-flex {
                    order: 1;
                    margin: 0 auto;

                    .staff-container {
                        .staff-first {
                            width: 900px;
                            margin: 0 auto;

                            &::before {
                                width: 900px;
                            }

                            .staff-introduce {
                                &::after {
                                    width: 750px;
                                    left: 85px;
                                }

                                .staff-self {
                                    &::after {
                                        left: 275px;
                                        bottom: 3px;
                                    }
                                }

                                .staff-text {
                                    width: 450px;
                                    padding-top: 50px;
                                    line-height: 32px;
                                }
                            }

                            .staff-introduce2-first,
                            .staff-introduce2-second {
                                img {
                                    width: 380px;
                                    height: 380px;
                                }

                                div {
                                    dl {
                                        margin-top: 30px;

                                        dt {
                                            font-size: 24px;

                                            &:nth-of-type(1) {
                                                font-size: 20px;
                                            }
                                        }

                                        dd {
                                            margin-top: 40px;
                                            font-size: 24px;

                                            &:nth-of-type(1) {
                                                font-size: 18px;
                                                line-height: 32px;
                                                width: 450px;
                                                margin-top: 30px;
                                            }
                                        }

                                    }
                                }
                            }
                        }
                    }
                }
            }

            .staff-introduce-choice {
                width: 300px;
                margin: 0 auto;
                margin-left: 0;
                margin-top: 0;

                div {
                    width: 170px;
                    line-height: 57px;

                    button {
                        height: 133px;
                        line-height: 55px;

                        &::before,
                        &::after {
                            height: 130px;
                        }

                        &:hover {
                            background-color: white;
                            transition: 0.5s linear;
                            color: white;
                            border: none;

                            &::before {
                                background-color: white;
                                border-color: var(--honin-dark-green);
                            }

                            &::after {
                                background-color: var(--honin-dark-green);
                            }
                        }
                    }
                }
            }
        }

    }

    /*フッター*/

    footer {
        display: flex;
        justify-content: center;
        padding: 80px 0px;


        div {
            width: 100%;
            margin: 0 auto;
        }

        .footer-title {
            display: flex;
            flex-direction: row;
            justify-content: center;

            h2 {
                width: 130px;
                height: 130px;
                line-height: 130px;
                font-size: 28px;

                &::before {
                    top: 5px;
                    left: 5px;
                    width: 120px;
                    height: 120px;
                }
            }

            a {
                position: relative;
                display: inline-flex;
                padding: 0px 20px;
                color: #fff;
                text-decoration: none;
                background-color: transparent;
                border: 2px solid transparent;

                img {
                    z-index: 1;
                }

                p {
                    z-index: 1;
                }

                &::before {
                    z-index: 1;
                    transform: translateX(-27px);
                    opacity: 0;
                    transition: 0.3s linear;
                }

                &::after {
                    content: "";
                    position: absolute;
                    top: 0;
                    left: 0;
                    height: 60px;
                    width: 200px;
                    background-color: #00C300;
                    border: 1px solid white;
                    border-radius: 8px;
                    z-index: 0;
                    transition: transform 0.3s linear;
                    transform-origin: left center;
                    transform: scaleX(1);
                }

                &:hover {
                    &::before {
                        transform: translateX(0px);
                        transition: 0.3s linear;
                        right: 0px;
                        opacity: 1;
                    }

                    &::after {
                        transform: scaleX(1.3);
                    }
                }
            }
        }

        .footer-open {
            border-bottom: none;
            width: 100%;

            p {
                font-size: 20px;
                margin: 40px 0px;

                a {
                    font-size: 28px;
                }

            }

            img {
                width: 400px;
            }
        }

        .footer-map {
            position: relative;


            &::before {
                position: absolute;
                content: "";
                top: -40px;
                left: 0;
                width: 1px;
                height: 520px;
                background-color: white;
            }

            &::after {
                position: absolute;
                content: "";
                top: -40px;
                right: 0;
                width: 1px;
                height: 520px;
                background-color: white;
            }

            iframe {
                width: 90%;
                height: 280px;
                margin: 0 auto;
            }

            div {
                p {
                    font-size: 20px;
                    line-height: 12px;
                }
            }
        }

        ul {
            border: none;
            width: 100%;
            flex-direction: column;
            margin-top: 60px;

            li {
                font-size: 20px;
                line-height: 67px;

                a {
                    position: relative;
                    transition: 0.3s linear;
                    padding: 5px 20px;

                    &::before {
                        position: absolute;
                        content: "";
                        width: 0;
                        height: 30px;
                        bottom: 0px;
                        left: 0;
                        background-color: white;
                        transition: 0.3s linear;
                        z-index: -1;
                    }

                    &:hover {
                        transition: 0.3s linear;

                        &::before {
                            width: 100%;
                            transition: 0.3s linear;
                        }
                    }
                }
            }
        }

        .footer-copyright {

            small {
                position: relative;
                top: 75px;
                right: 350%;
                width: 305px;
                margin: 0 auto;
                display: block;
            }

            a {
                transition: 0.3s linear;

                &:hover {
                    transition: 0.3s linear;
                    background-color: #22B6A4;

                    span {
                        border-top: 2px solid white;
                        border-left: 2px solid white;

                    }
                }
            }
        }

    }
}


@media (min-width: 1501px) {
    main {
        .top-staff {
            .swiper2 {
                .swiper-wrapper {
                    max-width: 1280px;
                }
            }
        }

        .news {
            .news-container-choice {
                margin-right: 0px;

            }

            .news-flex {
                max-width: 1500px;
            }

            .news-container {
                max-width: 1200px;

                .news-content {
                    width: 350px;

                    .news-content-section {
                        .news-section {
                            .news-section-second {
                                a {
                                    height: 40px;
                                    line-height: 40px;

                                    &::before {
                                        top: 13px;
                                    }

                                    &::after {
                                        height: 40px;
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}