@charset "utf-8";
/* CSS Document */
/*-----共通設定-----*/

html {
    font-size: 62.5%;
}

p {
    font-size: 1.6rem;
}

img {
    max-width: 100%;
}

/* パソコンで見たときは"pc"のclassがついた画像が表示される */
/*.pc { display: block !important; }*/
@media screen and (min-width:640px) {
    .sp {
        display: none !important;
    }

    .br-sp {
        display: none;
    }
}

/*-----共通設定ここまで-----*/



/**/
/**/
/**/
/**/
/**/
/*-----基本的にはここから下のコードを編集します。-----*/
/*-----振り分け番号のアルファベット(FV-)を検索をして下さい(ctrl+F)-----*/
/**/
/**/
/**/
/**/
/**/
/**/
/**/



/*スクロールボタン設定*/
html {
    scroll-behavior: smooth;
}

/* ボタン全体 */
#page_top {
    width: 100px;
    height: 100px;
    position: fixed;
    right: 10px;
    bottom: 10px;
    background: #008b46;
    border-radius: 50%;
    z-index: 1;
}

/* Font Awesome */
#page_top::before {
    position: absolute;
    top: 20%;
    left: 25%;
    content: '';
    /*何も入れない*/
    display: inline-block;
    width: 55px;
    /*画像の幅*/
    height: 55px;
    /*画像の高さ*/
    background-image: url(../img/angle-up-solid_white.svg);
    background-size: contain;
    vertical-align: middle;
    background-repeat: no-repeat;

}

/**/
/**/
/**/
/*header*/
/******* ヘッダーのスタイル ********/
header {
    position: fixed;
    /*** ← fixedで固定 ***/
    width: 100%;
    height: 60px;
    background: #008b46;
    padding: 20px 30px 20px 0;
    box-sizing: border-box;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    z-index: 1;
    justify-content: flex-end;
}

header .nav .menu li a {
    color: #ffffff;
    font-weight: bold;
    text-decoration: none;
    font-size: 2.4rem;
}

/*はじめは非表示*/
.content {
    opacity: 0;
}

.content.inview {
    animation-name: fade-in;
    animation-duration: .5s;
    animation-timing-function: ease-in-out;
    animation-delay: .4s;
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-fill-mode: forwards;
}

@keyframes fade-in {
    0% {
        transform: translateY(-40px);
        /*上から*/
    }

    100% {
        transform: translateY(0px);
        opacity: 1;
    }
}

/*header項目追加*/
ul.menu {
    display: flex;
}

.header-tel:before,
.header-golftel::before {
    content: '';
    /*何も入れない*/
    display: inline-block;
    width: 30px;
    /*画像の幅*/
    height: 30px;
    /*画像の高さ*/
    background-image: url("../img/tel.png");
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: top;
    margin-right: 5px;
}

.header-form:before {
    content: '';
    /*何も入れない*/
    display: inline-block;
    width: 30px;
    /*画像の幅*/
    height: 30px;
    /*画像の高さ*/
    background-image: url("../img/people.png");
    background-repeat: no-repeat;
    background-size: contain;
    vertical-align: top;
    margin-right: 5px;
}

.header-tel,
.header-form,
.header-golftel {
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.header-tel,
.header-form {
    border-right: 1px solid #ffffff
}

li.header-form {
    padding: 0 20px;
}

li.header-tel {
    padding-right: 20px;
}

li.header-golftel {
    padding-left: 20px;
}



/**/
/**/
/**/
/*firstview<!--FV-->*/
/**/
/**/
/**/
#firstview {
    position: relative;
}

#firstview .pc {
    width: 100%;
}

.btn-top img {
    max-width: 100%;
}

/**/
/**/
/**/
/*<!--FVここまで-->*/
/**/
/**/
/**/





/**/
/**/
/**/
/*targeting<!--TG-->*/
/**/
/**/
/**/
#targeting {
    background-color: #d3e3ab;
    text-align: center;
}

.targeting-wrapper {
    padding: 7.6rem 1.5rem 5.6rem 1.5rem;
    /*max-width: 1173px;*/
    margin: 0 auto;
}

.targeting-tittle img {
    margin-bottom: 3.4rem;
}

.targeting-tittle p {
    font-size: 2.1rem;
    line-height: 1.7;
}

.targeting-btn.btn {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin-top: -5%;
}

.targeting-btn img {
    align-self: center;
}

.btn-text {
    margin-bottom: 1.5rem;
}

.btn-bg {
    margin-bottom: 3.0rem;
}

/**/
/**/
/**/
/*targeting<!--TGここまで-->*/
/**/
/**/
/**/



/**/
/**/
/**/
/*pr<!--PR-->*/
/**/
/**/
/**/
#pr {
    background: url("../img/pr-bg.png")no-repeat center center / cover;
    text-align: center;
}

.pr-wrapper {
    max-width: 1000px;
    margin: 0 auto;
    padding: 9.3rem 1.5rem 12.5rem 1.5rem;
}

.pr-tittle h2 {
    font-size: 4.0rem;
    margin-bottom: 6.8rem;
    font-weight: bold;
}

.pr-tittle-line {
    border-bottom: 11px solid #fff000;
}

.pr-tittle-color {
    color: #006833;
}

.pr-tittle p {
    font-size: 2.2rem;
    text-align: left;
    line-height: 1.7;
    margin-bottom: 5.4rem;
    color: #000000;

}

.pr-area02 {
    margin-top: 7.0rem;
}

.pr-box {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 5rem;
}

.pr-box p {
    font-size: 1.8rem;
    background-color: #e3450b;
    color: #ffffff;
    width: 480px;
    border-radius: 3.0rem;
    padding: 1.9rem 0;
    margin-bottom: 2.3rem;
    font-weight: bold;
}

.pr-tittle h2 {
    line-height: 2;
}

.pr-area01-top,
.pr-area01-bottom {
    display: flex;
    justify-content: center;
    gap: 2rem;
    margin-bottom: 4rem;
    padding: 1.0rem;
}

.pr-area01-top img,
.pr-area01-bottom img {
    width: 50%;
}

.pr-box p:nth-child(2n + 1) {
    background-color: #009fe6;
}

/**/
/**/
/**/
/*pr<!--PRここまで-->*/
/**/
/**/
/**/




/**/
/**/
/**/
/*gallery<!--GL-->*/
/**/
/**/
/**/
#gallery {
    background-color: #d3e3ab;
    text-align: center;
    padding-bottom: 9.3rem;
}

.gallery-wrapper {
    max-width: 1128px;
    margin: 0 auto;
    background: #cbd44f;
    box-shadow: 0px 5px 15px 0px rgba(113, 153, 113, 0.5);
    padding: 0 1.5rem 0 1.5rem;

}

.gallery-tittle-box h1 {
    font-size: 4.0rem;
    margin-bottom: 6.0rem;
    font-weight: bold;
}

.gallery-tittle-box h1 span {
    border-bottom: 11px solid #fff000;
}

.gallery-tittle-box p {
    margin-bottom: 3.0rem;
    line-height: 1.7;
}

.gallery-tittle-box img {
    margin-bottom: 5.0rem;
}

.gallery-area-in {
    background-color: #ffffff;
    max-width: 1060px;
    margin: 0 auto;
    padding: 13.0rem 6.0rem 0 6.0rem;
}

.gallery-area-top,
.gallery-area-bottom {
    display: flex;
    justify-content: center;
    gap: 1.0rem;
}

.gallery-box {
    position: relative;
    margin-bottom: 5.0rem;
}

.gallery-pic {
    margin-bottom: 6.0rem;
}

.gallery-area-bottom p {
    font-size: 1.2rem;
    text-align: left;
}

.gallery-area-top p {
    font-size: 1.2rem;
    text-align: center;
}

.gallery-box p:nth-of-type(-n+3) {
    margin-bottom: 0.7rem;
}

.gallery-name {
    position: absolute;
    bottom: 20%;
    height: auto;
    width: 80%;
    left: 7%;
}

.gallery-box02 img {
    margin-bottom: 1.0rem;
}

.gallery-mintittle {
    font-size: 1.8rem;
}

.gallery-mintext {
    font-size: 1.6rem;
    line-height: 1.3;
}

.gallery-btn.btn {
    display: flex;
    flex-direction: column;
    margin-top: 4.0rem;
}

.gallery-btn img {
    align-self: center;
}

.gallery-btn-text {
    margin-bottom: 1.6rem;
}

.btn-box.gallery-btn {
    margin-top: 5rem;
}

.gallery-box02 {
    width: 33.333%;
}

/**/
/**/
/**/
/*gallery<!--GLここまで-->*/
/**/
/**/
/**/








/**/
/**/
/**/
/*list<!--LI＋備考-->*/
/**/
/**/
/**/
#list {
    background: url("../img/list-bg.png")no-repeat bottom center / cover;
    text-align: center;
}

.list-wrapper {
    padding: 10.0rem 1.5rem 14.5rem 1.5rem;
}

.list-tittle p {
    margin: 3.0rem 1.5rem 6.0rem 1.5rem;
    font-size: 2.2rem;
}

.list-area {
    margin-bottom: 5.0rem;
}

/**/
/**/
/**/
/*list<!--LI＋備考-->*/
/**/
/**/
/**/






/**/
/**/
/**/
/*Q&A<!--QA-->*/
/**/
/**/
/**/
#qa {
    text-align: center;
}

.qa-wrapper {
    padding: 8.3rem 1.5rem 15.2rem 1.5rem;

}

.qa-area {
    background-color: #d3e3ab;
    max-width: 1300px;
    margin: 12.8rem auto 0;
    border-radius: 5.8rem;
    padding: 9.6rem 12.4rem 13.4rem 12.4rem;
    position: relative;
}

.qa-area:before {
    position: absolute;
    top: 40px;
    left: 40px;
    width: 100%;
    height: 100%;
    z-index: -1;
    border-radius: 5.8rem;
    background-color: #fff;
    background-image:
        radial-gradient(#ffecf8 10%, transparent 10%),
        radial-gradient(#ffecf8 10%, transparent 10%);
    background-size: 40px 40px;
    background-position: 0 0, 20px 20px;
}

.qa-box:nth-of-type(-n+4) {
    border-bottom: 2px solid #a8b152;
    padding-bottom: 3.0rem;
    margin-bottom: 5.9rem;
}

.qa-item-q {
    display: flex;
}

.qa-q {
    font-size: 2.7rem;
    background-color: #e3450b;
    width: 43px;
    height: 43px;
    border-radius: 50%;
    color: #ffffff;
    line-height: 1.5;
}

.qa-q-text {
    font-size: 2.2rem;
    border-bottom: 2px dotted #fff;
    margin-bottom: 2.0rem;
    margin-left: 2.2rem;
    text-align: left;
    width: 960px;
    line-height: 1.7;
    letter-spacing: -0.05em;
    font-weight: bold;
}

.qa-item-a {
    display: flex;
}

.qa-a {
    font-size: 2.7rem;
    background-color: #009fe6;
    width: 43px;
    height: 43px;
    border-radius: 50%;
    color: #ffffff;
    line-height: 1.5;
}

.qa-a-text {
    font-size: 1.8rem;
    padding-left: 2.2rem;
    text-align: left;
    max-width: 1000px;
    line-height: 1.7;
}

/**/
/**/
/**/
/*Q&A<!--QAここまで-->*/
/**/
/**/
/**/








/**/
/**/
/**/
/*closing<!--CL+備考-->*/
/**/
/**/
/**/

.closing-area01 {
    background: url("../img/closing-bg.jpg")no-repeat center center / cover;
    position: relative;
    padding: 8.0rem 0;
}

/*.closing-area01 .pc{
    width: 100%;
}*/
.closing-area01-box {
    display: flex;
    justify-content: center;
    padding: 0 1.5rem;
    max-width: 1500px;
    margin: 6.0rem auto 0 auto;
}

.closign-right {
    margin-left: 7rem;
}

.closing-wrapper02 {
    background-color: #006833;
}

.closing-box {
    max-width: 800px;
    margin: 0 auto;
    padding: 4.4rem 1.5rem 4.0rem 1.5rem;
}

.closing-text p {
    font-size: 2.2rem;
    color: #fff;
}

.closing-tel {
    font-size: 3.8rem;
    color: #ffffff;
}

.closing-copyright {
    padding: 2.5rem 0;
    background-color: #e5e7d5;
}

.closing-copyright p {
    font-size: 1.4rem;
    color: #063f0d;
    text-align: center;
}

.btn-box.closing-btn-box {
    text-align: center;
    margin-top: 1.5rem;
}

img.closing-btn-text {
    margin-bottom: 1.5rem;
}

.closing-item {
    display: flex;
    justify-content: center;
    gap: 1.0rem;
    align-items: center;
    margin-bottom: 1.0rem;
}

/**/
/**/
/**/
/*closing<!--CL+備考ここまで-->*/
/**/
/**/
/**/





/* 640px〜959px：タブレット
------------------------------ */
@media screen and (min-width:640px) and (max-width:959px) {
    .br-pc {
        display: none;
    }

    /*pr*/
    .pr-wrapper {
        padding: 9.3rem 1.5rem 6.0rem 1.5rem;
    }

    .pr-box {
        justify-content: center;
    }

    .pr-orange {
        order: 2;
    }

    .pr-blue {
        order: 1;
    }

    /*gallery*/
    .gallery-box {
        max-width: 100%;
    }

    /* qa */
    .qa-area {
        padding: 7rem 6rem 7rem 6rem;
    }
}


.block {
    background-color: gray;
    height: 100vh;
    position: relative;
}

.block h1 {
    font-size: 6.0rem;
    text-align: center;
    font-weight: bold;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 80%;
    height: 3.2rem;
}










/* 〜640px：スマホ
------------------------------ */


@media (max-width: 639px) {

    /* スマホで見たときは"sp"のclassがついた画像が表示される */
    /*.pc { display: block !important; }*/
    .pc {
        display: none !important;
    }

    .br-pc {
        display: none;
    }

    /**/
    /**/
    /**/
    /**/
    /**/
    /*-----基本的にはここから下のコードを編集します。-----*/
    /*-----振り分け番号のアルファベット(TV-)を検索をして下さい(ctrl+F)-----*/
    /**/
    /**/
    /**/
    /**/
    /**/
    /**/
    /**/



    /**/
    /**/
    /**/
    /*firstview<!--FV-->*/
    /**/
    /**/
    /**/
    #firstview .btn-top {
        width: 60%;
        bottom: 4%;
        right: 20%;
    }

    /**/
    /**/
    /**/
    /*<!--FVここまで-->*/
    /**/
    /**/
    /**/





    /**/
    /**/
    /**/
    /*targeting<!--TG-->*/
    /**/
    /**/
    /**/
    .targeting-wrapper {
        padding: 2.8rem 2.0rem 3.0rem 2.0rem;
    }

    .targeting-tittle img {
        margin-bottom: 1.5rem;
    }

    .targeting-tittle p {
        font-size: 1.5rem;
        text-align: left;
        max-width: 330px;
        margin: 0 auto;
    }

    .btn-text {
        margin-bottom: 0;
    }

    /**/
    /**/
    /**/
    /*targeting<!--TGここまで-->*/
    /**/
    /**/
    /**/



    /**/
    /**/
    /**/
    /*pr<!--PR-->*/
    /**/
    /**/
    /**/
    #pr {
        background: url("../img/pr-bg-sp.png")no-repeat center center / cover;
    }

    .pr-wrapper {
        padding: 2.5rem 2.0rem 2.5rem 2.0rem;
    }

    .pr-tittle h2 {
        font-size: 2.0rem;
        margin-bottom: 2.3rem;
        line-height: 1.7;
    }

    .pr-tittle-line {
        border-bottom: 6px solid #fff000;
    }

    .pr-tittle-color {
        font-size: 3.0rem;
    }

    .pr-tittle p {
        font-size: 1.5rem;
        margin-bottom: 2.7rem;
    }

    .pr-area01 .sp:nth-of-type(-n+5) {
        margin-bottom: 2.4rem;
    }

    .pr-area02 {
        margin-top: 2.2rem;
    }

    .pr-box {
        margin-top: 1.0rem;
    }

    .pr-box p {
        font-size: 1.2rem;
        max-width: 375px;
        margin: 0 auto;
        padding: 1.1rem 0;
        margin-bottom: 0.9rem;
    }

    .pr-area01-top,
    .pr-area01-bottom {
        display: none;
    }

    .pr-blue {
        order: 1;
    }

    .pr-orange {
        order: 2;
    }

    /**/
    /**/
    /**/
    /*pr<!--PRここまで-->*/
    /**/
    /**/
    /**/




    /**/
    /**/
    /**/
    /*gallery<!--GL-->*/
    /**/
    /**/
    /**/
    #gallery {
        padding: 0 1.5rem 3.2rem 1.5rem;
    }

    .gallery-wrapper {
        padding: 0 1.0rem 0 1.0rem;
    }

    .gallery-tittle-box h1 {
        font-size: 1.8rem;
        margin-bottom: 2.3rem;
        line-height: 2.0;
    }

    .gallery-tittle-box h1 span {
        font-size: 2.2rem;
        border-bottom: 5px solid #fff000;
    }

    .gallery-tittle-box p {
        margin-bottom: 1.9rem;
        line-height: 1.7;
        text-align: left;
    }

    .gallery-tittle-box img {
        margin-bottom: 2.5rem;
    }

    .gallery-area-in {
        padding: 2.8rem 2.3rem 2.0rem 2.3rem;
    }

    .gallery-box {
        max-width: 100%;
        margin-bottom: 0 !important;
    }

    .gallery-box:nth-of-type(-n+5) {
        margin-bottom: 3.5rem !important;
    }

    .gallery-pic {
        margin-bottom: 5.0rem;
    }

    .gallery-box p {
        font-size: 1.3rem;
    }

    .gallery-name {
        left: 10%;
    }

    .gallery-btn.btn {
        margin-top: 3.0rem;
    }

    .gallery-area {
        display: block;
    }

    .btn-box.gallery-btn {
        margin-top: 0;
    }

    .gallery-area-top,
    .gallery-area-bottom {
        flex-direction: column;
        gap: 0;
    }

    img.gallery-btn-text {
        margin-top: 6rem;
    }

    .gallery-box02 {
        width: auto;
    }

    /**/
    /**/
    /**/
    /*gallery<!--GLここまで-->*/
    /**/
    /**/
    /**/





    /**/
    /**/
    /**/
    /*list<!--LI＋備考-->*/
    /**/
    /**/
    /**/
    #list {
        background: url("../img/list-bg-sp.png")no-repeat center center / 100% 100%;
    }

    .list-wrapper {
        padding: 3.0rem 2.0rem 9.0rem 2.0rem;
    }

    .list-tittle p {
        margin: 2.0rem 1.5rem 2.0rem 1.5rem;
        font-size: 1.3rem;
        line-height: 1.5;
    }

    .list-area {
        margin-bottom: 2.0rem;
    }

    /**/
    /**/
    /**/
    /*list<!--LI＋備考まで-->*/
    /**/
    /**/
    /**/



    /**/
    /**/
    /**/
    /*Q&A<!--QA-->*/
    /**/
    /**/
    /**/
    .qa-wrapper {
        padding: 3.8rem 1.0rem 4.6rem 1.0rem;
    }

    .qa-area {
        margin: 2.6rem auto 0;
        border-radius: 2.9rem;
        padding: 2.2rem 1.0em 2.2rem 1.0rem;
        background-color: inherit;
    }

    .qa-box {
        background-color: #d3e3ab;
        border-radius: 5.8px;
        padding: 2.2rem 1.5rem !important;
    }

    .qa-box:nth-of-type(-n+4) {
        margin-bottom: 2.9rem;
        border-bottom: none;
    }

    .qa-q {
        font-size: 1.3rem;
        width: 30px;
        height: 30px;
        line-height: 2.2;
    }

    .qa-q-text {
        font-size: 1.5rem;
        margin-left: 1.0rem;
        width: 290px;
        font-weight: inherit;
    }

    .qa-a {
        font-size: 1.3rem;
        width: 30px;
        height: 30px;
        line-height: 2.2;
    }

    .qa-a-text {
        font-size: 1.3rem;
        padding-left: 1.2rem;
    }

    /**/
    /**/
    /**/
    /*Q&A<!--QAここまで-->*/
    /**/
    /**/
    /**/






    /**/
    /**/
    /**/
    /*closing<!--CL+備考-->*/
    /**/
    /**/
    /**/
    .closing-area01 {
        background: url("../img/closing-bg-sp.jpg")no-repeat center center / cover;
        padding: 3.0rem 0 0 0;
    }

    .closing-area01-box {
        padding: 0;
        margin: 0;
    }

    .closign-right {
        padding: 3.0rem 1.5rem;
        margin-left: 0;
    }

    img.closing-btn-text {
        margin: 1.5rem 0;
    }

    .btn-box.closing-btn-box {
        text-align: center;
        margin-top: 0;
    }

    .closing-box {
        padding: 3.0rem 2.0rem 3.3rem 2.0rem;
        display: block;
    }

    .closing-text {
        font-size: 1.2rem;
        padding: 0.6rem 3.0rem 0.6rem 3.0rem;
        margin: 1.0rem 0 0.5rem 0;
        line-height: 1.2;
        text-align: center;
    }

    .closing-telno {
        justify-content: space-between;
    }

    .closing-tel {
        font-size: 2.3rem;
    }

    .closing-copyright {
        padding-bottom: 1.7rem;
    }

    .closing-copyright p {
        font-size: 1.0rem;
    }

    .closing-item {
        flex-direction: column;
        gap: 0;
    }

    .closing-text p {
        font-size: 1.5rem;
    }

    /**/
    /**/
    /**/
    /*closing<!--CL+備考ここまで-->*/
    /**/
    /**/
    /**/




    /**/
    /*footer*/
    /**/
    body {
        padding-bottom: 70px;
        /* ヘッダーの高さ分の余白をいれ、うしろの要素が隠れないようにする */
    }

    footer {
        height: 70px;
        background: #008b46;
        position: fixed;
        width: 100%;
        bottom: 0px;
        font-size: 0;
        z-index: 99;


    }

    footer .menu {
        display: flex;
        justify-content: center;
    }

    footer .nav .menu li a {
        color: #ffffff;
        font-weight: bold;
        text-decoration: none;
        font-size: 1.5rem;

    }

    .footer-tel,
    .footer-form {
        border-right: 1px solid #ffffff;
        padding: 20px 0;
        width: 42%;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .footer-tel:before,
    .footer-form:before {
        content: '';
        /*何も入れない*/
        display: inline-block;
        width: 28px;
        /*画像の幅*/
        height: 28px;
        /*画像の高さ*/
        background-repeat: no-repeat;
        background-size: contain;
        vertical-align: middle;
    }

    .footer-tel:before {
        background-image: url("../img/tel.png");
    }

    .footer-form:before {
        background-image: url("../img/people.png");
    }

    .footer-top {
        width: 16%;
        text-align: center;
        align-self: center;
    }

    .footer-top img {
        width: 40%;

    }

    .book-sp {
        font-size: 1.2rem;
    }

    /*はじめは非表示*/
    .content {
        opacity: 0;
    }

    .content.inview {
        animation-name: fade-in;
        animation-duration: .5s;
        animation-timing-function: ease-in-out;
        animation-delay: .4s;
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: forwards;
    }

    @keyframes fade-in {
        0% {
            transform: translateY(40px);
            /*下から*/
        }

        100% {
            transform: translateY(0px);
            opacity: 1;
        }
    }

    img.closinglogotel {
        width: 65%;
    }

    div#logoInfo {
        text-align: right;
    }


    .block {
        background-color: gray;
        height: 100vh;
        position: relative;
    }

    .block h1 {
        font-size: 4.0rem;
        text-align: center;
        font-weight: bold;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        margin: auto;
        width: 80%;
        height: 3.2rem;
    }
}