@charset "utf-8";
/* CSS Document */

/*--------------------------------------
　Main Index
---------------------------------------*/

/*共通*/

header {
    background: none;
}

#index .sec {
    margin: 0 auto 120px;
    position: relative;
}

#index .sec:last-child {
    margin: 0 auto;
}

#contents .captionWrap {
    overflow: hidden;
    white-space: nowrap;
}

#contents .captionWrap .caption {
    white-space: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    /*height: calc(100% + 18px);*/
    /*overflow-x: scroll;*/
}

.caption::-webkit-scrollbar {
    height: 5px;
}

.caption::-webkit-scrollbar-thumb {
    border-radius: 2px;
    background: #ddd;
}

.caption::-webkit-scrollbar-track {
    border-radius: 5px;
    background: #eee;
}

#contents {
    overflow: hidden;
}

a:hover {
    opacity: 0.7;
}

#index .titArea {
    margin: 0 auto 60px;
}

#index .titArea .idxh2 {
    color: #000;
    font-size: 5rem;
    line-height: 7.2rem;
    position: relative;
    letter-spacing: 0.4rem;
    margin: 0 0 3rem 0;
    padding: 0;
}

#index .titArea .idxh2.vertical {
    letter-spacing: -0.8rem;
    line-height: 10rem;
}

#index .titArea .idxh2.vertical a {
    padding: 0;
}

#index .titArea .idxh2.vertical .fs_l {
    font-size: 7rem;
}

#index .titArea .idxh2.vertical .bg_yel {
    line-height: 6.5rem;
}

#index .titArea .idxh2 a {
    position: relative;
    color: #000;
    background: none;
    display: inline-block;
    padding: 0;
}

#index .titArea .idxh2 .fs_s {
    font-size: 3.2rem;
}

#index .titArea p {
    margin: 0;
}

/* Firefox */
@-moz-document url-prefix() {}

#index .titArea .idxh2 a:hover {
    opacity: 0.7;
}

#index .titArea p {
    padding: 0;
}


/*各セクション*/


#keyArea {
    margin: 0 auto 10rem;
}

#keyArea .mainTit {
    font-size: 2.8rem;
    text-align: center;
    margin: 0 0 3rem 0;
    line-height: 5rem;
}

#keyArea .mainTit .fc_green {
    font-size: 3.4rem;
}

#keyArea .mainTit .bg_yel {
    padding: .5rem .5rem;
    display: inline-block;
    line-height: 1;
}

#keyArea .logo {
    width: 63.8rem;
    margin: 0 auto 3rem;
}

#keyArea .logo img {
    margin: 0 auto 4rem;
}

#keyArea .logo .sponsored {
    font-size: 1.3rem;
}

#keyArea .wi1200 {
    position: relative;
}

#keyArea .slider-auto {
    overflow: hidden;
    margin: -4rem auto 5rem;
}

#keyArea .slider-auto .item {
    width: 30rem;
}

#keyArea .leadArea {
    background: url(img/bg_rep01.png) 50% 100% repeat-x;
    background-size: auto 100%;
    padding: 6rem 0 2rem 0;
    margin: 0 0 2rem 0;
}

#keyArea .leadArea .inner {
    width: 120rem;
    margin: 0 auto;
    padding: 0 10rem;
}

#keyArea .leadArea p {
    margin: 0;
    text-align: center;
}

#keyArea .caption {
    font-size: 1.3rem;
    text-align: center;
}


/* 共通のアニメーションスタイル */
.bound,
.bound_r {
    animation: bound 3s;
}

/* 左の要素のアニメーション設定 */
.bound {
    animation-delay: 0s;
    /* 左が先に動く */
}

/* 右の要素のアニメーション設定 */
.bound_r {
    animation-delay: 0.5s;
    /* 右を0.5秒遅らせて動かす */
}

/* アニメーション定義 */
@keyframes bound {
    0%, 5%, 10%, 50%, 100% {
        transform: translateY(0);
    }

    20% {
        transform: translateY(-25px);
    }

    25% {
        transform: translateY(0);
    }

    30% {
        transform: translateY(-15px);
    }
}

/* 左のバルーンのスタイル */
.balloon1 {
    position: absolute;
    width: 24rem;
    background: #f3f2e0;
    border-radius: 2rem;
    top: -2rem;
    left: -2rem;
    padding: 3rem 3rem;
}

/* 右のバルーンのスタイル */
.balloon2 {
    position: absolute;
    margin: 1.5em 0;
    padding: 7px 10px 5px;
    width: 24rem;
    color: #222;
    font-size: 2rem;
    background: #f3f2e0;
    border-radius: 2rem;
    top: 7rem;
    right: -3rem;
    padding: 3rem 3rem;
}

/* 三角形の吹き出し部分 */
.balloon1:before,
.balloon2:before {
    content: "";
    background: #f3f2e0;
    position: absolute;
    width: 3rem;
    height: 3rem;
    bottom: -3rem;
}

.balloon1:before {
    content: "";
    clip-path: polygon(100% 0, 0 0, 100% 100%);
    -webkit-clip-path: polygon(100% 0, 0 0, 100% 100%);
    right: 3rem;
}

.balloon2:before {
    content: "";
    clip-path: polygon(100% 0, 0 0, 0 100%);
    -webkit-clip-path: polygon(100% 0, 0 0, 0 100%);
    left: 3rem;
}

/* 吹き出し内のテキスト */
.balloon1 p, .balloon2 p {
    margin: 0;
    font-weight: bold;
    text-align: center;
    color: #000;
    font-size: 2rem;
    line-height: 3.4rem;
}


/*sec01_cont*/

#index #sec01_cont {
    margin: 0 auto 23rem;
}

#index #sec01_cont .inner {
    background: #f3f2e0;
    padding: 6rem 5rem;
    border-radius: 2rem;
}

#index #sec01_cont .sTit {
    font-size: 4.8rem;
    font-weight: 700;
    margin: -7.5rem 0 4rem 0;
}

#index #sec01_cont .ancLink_area {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

#index #sec01_cont .ancLink_area .sBox {
    width: calc((100% - 8rem) / 3)
}

#index #sec01_cont .ancLink_area .ph {
    padding: 0 0 0 4rem;
}

#index #sec01_cont .ancLink_area img {
    border-radius: 2rem;
}

#index #sec01_cont .ancLink_area .ancLink {
    background: url(img/deco_illust_leaf03.png) 50% 100% no-repeat;
    background-size: 100%;
    width: 30rem;
    margin-top: -8rem;
    position: relative;
}

#index #sec01_cont .ancLink_area .ancLink a {
    color: #FFF;
    font-size: 2rem;
    line-height: 3.2rem;
    font-weight: 700;
    padding: 7.4rem 4rem 2rem 2rem;
    display: block;
    width: 100%;
    background: url(img/arr_white01_down.png) right 2rem bottom 4rem no-repeat;
    background-size: 1.8rem auto;
}



/*sec02_cont*/

#index #sec02_cont {
    background: #108332;
    padding: 8rem 0 14rem 0;
    margin: 0 auto 10rem;
}

#sec02_cont .phMain {
    position: absolute;
    top: -11rem;
    right: 0;
    width: 50%;
    height: 45rem;
}

#sec02_cont .phMain img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 4rem 0 0 4rem;
}

#sec02_cont .sCont01 {
    width: 50%;
    padding: 0 3rem 0 0;
    margin: 0 0 10rem;
}

#sec02_cont .sCont01 .idxh2,
#sec02_cont .sCont01 .idxh2 a {
    color: #FFF;
}

#sec02_cont .sCont01 .idxh2 .fs_l {
    font-size: 7.2rem;
}

#sec02_cont .sCont01 .titArea a:before {
    content: "";
    position: absolute;
    bottom: .5rem;
    right: 6rem;
    background: url(img/arr_white02.png) 50% 50% no-repeat;
    background-size: 6rem auto;
    width: 6rem;
    height: 6rem;
}

#sec02_cont .sCont01 p {
    color: #FFF;
}

#sec02_cont .box2 {
    margin: 0 auto 18rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

#sec02_cont .box2 .sBox {
    width: 57rem;
    border-radius: 2rem;
    padding: 4rem 4rem;
    position: relative;
}

#sec02_cont .box2 .sBox:before {
    content: "";
    background: url(img/deco_illust_leaf01.png) 50% 50% no-repeat;
    background-size: 6.6rem auto;
    width: 6.6rem;
    height: 5.3rem;
    position: absolute;
    bottom: -1rem;
    right: 3rem;
}

#sec02_cont .box2 .sBox:nth-child(1) {
    background: #FFF;
}

#sec02_cont .box2 .sBox:nth-child(2) {
    background: #ecf7c5;
}

#sec02_cont .box2 .sBox .flBox {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto 3rem;
}

#sec02_cont .box2 .sBox .flBox .ph {
    width: 17rem;
    margin-top: -8rem;
}

#sec02_cont .box2 .sBox .flBox .ph img {
    border-radius: 50%;
}

#sec02_cont .box2 .sBox .flBox .txtArea {
    width: calc(100% - 17rem - 3rem);
}

#sec02_cont .box2 .sBox .flBox .nameArea {
    font-size: 3rem;
    font-weight: 700;
}

#sec02_cont .box2 .sBox .flBox .nameArea .fc_green {
    font-size: 1.6rem;
    margin: 0 0 1rem 0;
    display: inline-block;
    font-weight: 400;
}

#sec02_cont .box2 .sBox .flBox .nameArea .fs_s {
    font-size: 1.8rem;
}

#sec02_cont .box2 .sBox p:last-child {
    margin: 0;
}

#sec02_cont .slide-sec02 {
    width: 100%;
    height: 100%;
}

#sec02_cont .slide-sec02 .slick-list {
    overflow: inherit;
}

#sec02_cont .slide-sec02 .slick-track {
    display: flex;
}

#sec02_cont .slide-sec02 .slick-slide {
    width: 38rem;
    margin: 0 2rem;
    height: inherit;
    float: none;
}

#sec02_cont .slide-sec02 .slick-slide a {
    display: flex;
    flex-direction: column;
    border-radius: 2rem;
    box-shadow: .4rem .4rem 0 0 #666;
    height: 100%;
    overflow: hidden;
}

#sec02_cont .slide-sec02 .ph img {
    width: 100%;
    object-fit: cover;
}

#sec02_cont .slide-sec02 .slick-slide .txtArea {
    background: #f3f2e0 url(img/arr_white_slide.png) right -6rem bottom -6.5rem no-repeat;
    background-size: 12.5rem auto;
    padding: 4rem 3rem 5rem 3rem;
    position: relative;
    height: 100%;
}

#sec02_cont .slide-sec02 .slick-slide .txtArea .idxh3 {
    position: relative;
    font-size: 2.6rem;
    color: #108332;
    line-height: 4rem;
    margin: 0 0 2rem 0;
}

#sec02_cont .slide-sec02 .slick-slide .txtArea:before {
    content: "";
    background: url(img/bgdeco_leaf01.png) 50% 100% no-repeat;
    background-size: 38rem auto;
    width: 38rem;
    height: 10rem;
    position: absolute;
    top: -5rem;
    left: 0;
}

#sec02_cont .slide-sec02 .slick-slide .txtArea .num {
    width: 5rem;
    position: absolute;
    top: -4rem;
    left: 3rem;
}

#sec02_cont .slide-sec02 .slick-slide p {
    margin: 0;
}

#contents #sec02_cont .slick-dots {
    margin: 0;
    padding: 0;
    bottom: -6rem;
}

#contents #sec02_cont .slick-dots li {
    background: #bbb;
    width: 1.4rem;
    height: 1.4rem;
    border-radius: 50%;
    margin: 0 .5rem;
    padding: 0;
}

#contents #sec02_cont .slick-dots li.slick-active {
    background: #fff72f;
}

#contents #sec02_cont .slick-prev,
#contents #sec02_cont .slick-next {
    z-index: 1;
    width: 6rem;
    height: 6rem;
    top: -7rem;
}

#contents #sec02_cont .slick-prev {
    background: url(img/arr_slide_prev.png) 50% 50% no-repeat;
    background-size: 6rem auto;
    left: inherit;
    right: 8rem;
}

#contents #sec02_cont .slick-next {
    background: url(img/arr_slide_next.png) 50% 50% no-repeat;
    background-size: 6rem auto;
    left: inherit;
    right: 0;
}

#contents #sec02_cont .slick-prev:before,
#contents #sec02_cont .slick-next:before {
    display: none;
}

#contents #sec02_cont .slick-arrow:hover {
    opacity: 0.7;
}



/*sec03_cont*/

#index #sec03_cont {
    background: url(img/bg_deco_leaf_l.png) left calc(50% - 66rem) top 0 no-repeat,
        url(img/bg_deco_leaf_l.png) left calc(50% - 66rem) top 146rem no-repeat,
        url(img/bg_deco_leaf_l.png) left calc(50% - 66rem) top 380rem no-repeat,
        url(img/bg_deco_leaf_r3.png) right calc(50% - 59rem) top 40rem no-repeat,
        url(img/bg_deco_leaf_r1.png) right calc(50% - 62rem) top 250rem no-repeat,
        url(img/bg_deco_leaf_r1.png) right calc(50% - 62rem) top 388rem no-repeat;
    background-size: auto;
    padding: 5rem 0 4rem 0;
}

#index #sec03_cont .titArea .idxh2 {
    text-align: left;
    font-size: 4.2rem;
}

#index #sec03_cont .titArea .idxh2 .rotate {
    display: inline-block;
    transform: rotate(-90deg);
    font-size: 7rem;
    letter-spacing: -.5rem;
    position: relative;
    top: -10px;
    left: -3px;
}

#index #sec03_cont .titArea .idxh2 .bg_yel {
    display: inline-block;
    padding: 1rem 1rem;
}

#index #sec03_cont .titCont {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 0 16rem 0;
}

#index #sec03_cont .titCont .leftBox {
    width: 69rem;
    order: 1;
    margin: 0 0 0 10rem;
}

#index #sec03_cont .titCont .leftBox .ph {
    margin: 0 0 2rem;
}

#index #sec03_cont .titCont .leftBox .ph img {
    border-radius: 2rem;
}

#index #sec03_cont .titCont .titArea {
    width: 41rem;
    margin: 0;
    order: 2;
    display: flex;
    justify-content: end;
}

#index #sec03_cont .titCont .titArea a:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: calc(50% - 3rem);
    background: url(img/arr_black02.png) 50% 50% no-repeat;
    background-size: 6rem auto;
    width: 6rem;
    height: 6rem;
}

#index #sec03_cont .h3Out {
    background: #c9ea78 url(img/deco_illust_leaf02.png) 0 100% no-repeat;
    background-size: 20rem auto;
    position: relative;
    width: 70rem;
    border-radius: 0 4rem 4rem 0;
    padding: 17rem 5rem 1.5rem 22rem;
    margin: 0 0 5rem 0;
}

#index #sec03_cont .h3Out:before {
    content: "";
    background: #c9ea78;
    position: absolute;
    top: 0;
    left: -100rem;
    width: 100rem;
    height: 100%;
}

#index #sec03_cont .h3Out .hukiArea {
    margin: -30rem 0 3rem -8rem;
    width: 46.4rem;
    padding: 6rem 6rem 7rem 6rem;
    background: url(img/bg_huki01.png) 50% 50% no-repeat;
    background-size: 46.4rem auto;
}

#index #sec03_cont .h3Out .hukiArea .idxh3 {
    font-size: 3.6rem;
    line-height: 5.6rem;
    color: #108332;
}

#index #sec03_cont .h3Out .hukiArea .idxh3 .fc_red {
    color: #f55f50;
    font-size: 4.4rem;
}

#index #sec03_cont .h3Out .caption {
    font-size: 1.4rem;
    text-align: left;
    color: #000;
    line-height: 2.6rem;
    margin: 0;
}

#index #sec03_cont .sBlock {
    margin: 0 auto 10rem;
}

#index #sec03_cont .sBlock .idxh4 {
    font-size: 3rem;
    line-height: 4.6rem;
    border-bottom: 2px solid #87ce58;
    padding: 0 0 2rem 0;
    width: 90rem;
    margin: 0 0 5rem 0;
    position: relative;
}

#index #sec03_cont .sBlock .idxh4::before {
    content: "";
    background: #87ce58;
    width: 100rem;
    height: .2rem;
    position: absolute;
    bottom: -.2rem;
    left: -100rem;
}

#index #sec03_cont .sBlock:nth-child(2n) .idxh4 {
    margin: 0 0 6rem 30rem;
}

#index #sec03_cont .sBlock:nth-child(2n) .idxh4::before {
    content: "";
    background: #87ce58;
    width: 100rem;
    height: .2rem;
    position: absolute;
    bottom: -.2rem;
    left: 90rem;
}

#index #sec03_cont .sBlock .idxh4 .ff_hira {
    font-family: 'Hiragino Sans', "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", YuGothic, "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
    font-size: 6rem;
    color: #8cb91d;
    margin: 0 2rem 0 0;
    position: relative;
    bottom: -.5rem;
}

#index #sec03_cont .sBlock .ph img.pc {
    display: block;
    margin: 0 auto;
}

#index #sec03_cont .sBlock .hukiBox {
    width: 80rem;
    margin: 6rem auto 0;
}

#index #sec03_cont .sBlock .huki {
    background: #f3f2e0;
    padding: 4rem;
    border-radius: 2rem;
    position: relative;
}

#index #sec03_cont .sBlock .huki:before {
    content: "";
    background: #f3f2e0;
    position: absolute;
    width: 3rem;
    height: 3rem;
}

#index #sec03_cont .sBlock .hukiBox_l .huki:before {
    clip-path: polygon(100% 0, 0 0, 100% 100%);
    -webkit-clip-path: polygon(100% 0, 0 0, 100% 100%);
    bottom: -3rem;
    left: 44rem;
}

#index #sec03_cont .sBlock .hukiBox_r .huki:before {
    clip-path: polygon(100% 0, 0 0, 0 100%);
    -webkit-clip-path: polygon(100% 0, 0 0, 0 100%);
    bottom: -3rem;
    right: 44rem;
}

#index #sec03_cont .sBlock .huki .catch {
    color: #108332;
    font-size: 2.2rem;
    font-weight: 700;
    margin: 0 0 1.5rem 0;
}

#index #sec03_cont .sBlock .huki p:last-child {
    margin: 0;
}

#index #sec03_cont .sBlock .nameArea .ph {
    width: 18rem;
}

#index #sec03_cont .sBlock .nameArea .ph img {
    border-radius: 50%;
}

#index #sec03_cont .sBlock .hukiBox .nameArea {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-end;
    padding: 0 0 0 12rem;
    margin-top: -2rem;
    position: relative;
}

#index #sec03_cont .sBlock .hukiBox .nameArea p {
    font-size: 1.8rem;
    font-weight: 700;
    margin: 0 0 3rem 0;
    padding: 0 0 0 3rem;
}

#index #sec03_cont .sBlock:nth-child(2n) .hukiBox .nameArea {
    justify-content: end;
    padding: 0 12rem 0 0;
}

#index #sec03_cont .sBlock:nth-child(2n) .hukiBox .nameArea .ph {
    order: 2;
}

#index #sec03_cont .sBlock:nth-child(2n) .hukiBox .nameArea p {
    order: 1;
    padding: 0 3rem 0 0;
    text-align: right;
}


/*sec04_cont*/

#index #sec04_cont {
    margin: 0 auto;
}
#index #sec04_cont .titArea{
	background: url(img/bg_deco_leaf_l.png) no-repeat top 0 right;
}

#index #sec04_cont .titArea a:before {
    content: "";
    position: absolute;
    bottom: 9rem;
    left: 2rem;
    background: url(img/arr_black02.png) 50% 50% no-repeat;
    background-size: 6rem auto;
    width: 6rem;
    height: 6rem;
}

#index #sec04_cont .titArea .idxh2 {
    font-size: 4.2rem;
}

#index #sec04_cont .titArea .idxh2 .bg_yel {
    display: inline-block;
    padding: 1rem 1rem;
}

#index #sec04_cont .detail {
    background: #8cb91d url(img/bgdeco_leaf02.png) 0 50rem repeat-x;
    background-size: 37.5rem auto;
    padding: 0 0 10rem 0;
}

#index #sec04_cont .flBox {
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
    margin: 0 0 8rem 76rem;
}

#index #sec04_cont .mov {
    width: 100%; 
    max-width: 400px;
    margin-top: -40rem;
    margin-right: 15rem;
}

#index #sec04_cont .mov iframe {
    width: 70%;
    aspect-ratio: 9/16;
    height: 50rem;
}

#index #sec04_cont .mov .caption {
    color: #000;
    font-size: 1.3rem;
    text-align: left;
}

#index #sec04_cont .mov .caption a {
    color: #000;
}

#index #sec04_cont .commentBox {
    border-top: 2px solid #108332;
    border-bottom: 2px solid #108332;
    padding: 3rem 0 3rem 36rem;
    position: relative;
    margin: 0 auto 8rem;
}

#index #sec04_cont .commentBox p:last-child {
    margin: 0;
}

#index #sec04_cont .commentBox .ab {
    width: 32rem;
    left: 0;
    bottom: 3rem;
}

#index #sec04_cont .commentBox .bg_green {
    display: inline-block;
    color: #FFF;
    padding: 1rem 6rem;
    border-radius: 5rem;
    font-weight: 700;
    font-size: 2.4rem;
    margin: 0 0 2.5rem 0;
}

#index #sec04_cont .commentBox .bg_green .fs_s {
    font-size: 1.6rem;
}

#index #sec04_cont .flowBox {
    margin: 0 auto 6rem;
}

#index #sec04_cont .flowBox .inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100rem;
    margin: 0 auto;
}

#index #sec04_cont .flowBox .sBox {
    width: 20rem;
    position: relative;
}

#index #sec04_cont .flowBox .sBox:before {
    content: "";
    position: absolute;
    background: url(img/arr_flow.png) 50% 50% no-repeat;
    background-size: 2.6rem auto;
    width: 2.6rem;
    height: 2.2rem;
    right: -4.5rem;
    top: calc(50% - 3rem);
}

#index #sec04_cont .flowBox .sBox:last-child:before {
    display: none;
}

#index #sec04_cont .flowBox .sBox img {
    border-radius: 50%;
    margin: 0 auto 2rem;
}

#index #sec04_cont .flowBox .listTit {
    font-size: 2.2rem;
    text-align: center;
    color: #FFF;
    font-weight: 700;
}


/*sec05_cont*/
#index #sec05_cont {
    padding: 12rem 0 0 0;
    background: url(img/bg_deco_leaf_l.png) left calc(50% - 66rem) top 5rem no-repeat,
        url(img/bg_deco_leaf_l.png) left calc(50% - 63rem) top 120rem no-repeat,
        url(img/bg_deco_leaf_l.png) left calc(50% - 63rem) top 320rem no-repeat,
        url(img/bg_deco_leaf_r2.png) right calc(50% - 68rem) top 10rem no-repeat,
        url(img/bg_deco_leaf_r2.png) right calc(50% - 75rem) top 218rem no-repeat;
    background-size: auto;
    margin: 0 auto;
}

#index #sec05_cont .idxh2 {
    text-align: center;
}

#index #sec05_cont .titArea {
    margin: 0 auto 12rem;
}

#index #sec05_cont .sBlock {
    margin: 0 0 23rem 0;
    background: #ecf7c5;
    position: relative;
}

#index #sec05_cont .sBlock:last-child {
    margin: 0;
}

#index #sec05_cont .sBlock:nth-child(odd) {
    border-radius: 0 4rem 4rem 0;
    padding: 8rem 10rem 8rem 0;
}

#index #sec05_cont .sBlock:nth-child(odd):before {
    content: "";
    background: #ecf7c5;
    position: absolute;
    top: 0;
    left: -100rem;
    width: 100rem;
    height: 100%;
}

#index #sec05_cont .sBlock:nth-child(even) {
    border-radius: 4rem 0 0 4rem;
    padding: 8rem 0 8rem 10rem;
}

#index #sec05_cont .sBlock:nth-child(even):before {
    content: "";
    background: #ecf7c5;
    position: absolute;
    top: 0;
    left: 120rem;
    width: 100rem;
    height: 100%;
}

#index #sec05_cont .sBlock .flBox {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto 6rem;
}

#index #sec05_cont .sBlock .flBox .ph {
    width: 50rem;
    margin: -16rem 0 0 0;
}

#index #sec05_cont .sBlock .flBox .txtArea {
    width: 54rem;
}

#index #sec05_cont .sBlock .flBox .ph img {
    border-radius: 2rem;
}

#index #sec05_cont .sBlock:nth-child(odd) .flBox .ph {
    order: 2;
}

#index #sec05_cont .sBlock:nth-child(odd) .flBox .txtArea {
    order: 1;
}

#index #sec05_cont .idxh3 {
    font-size: 3rem;
    line-height: 4.6rem;
    border-bottom: 2px solid #108332;
    padding: 0 0 2rem 0;
    margin: 0 0 3rem 0;
}

#index #sec05_cont .sBlock .hukiBox {
    width: 80rem;
    margin: 6rem auto 6rem;
}

#index #sec05_cont .sBlock .huki {
    background: #FFF;
    padding: 4rem;
    border-radius: 2rem;
    position: relative;
}

#index #sec05_cont .sBlock .huki:before {
    content: "";
    background: #FFF;
    position: absolute;
    width: 3rem;
    height: 3rem;
}

#index #sec05_cont .sBlock .hukiBox_l .huki:before {
    clip-path: polygon(100% 0, 0 0, 100% 100%);
    -webkit-clip-path: polygon(100% 0, 0 0, 100% 100%);
    bottom: -3rem;
    left: 44rem;
}

#index #sec05_cont .sBlock .hukiBox_r .huki:before {
    clip-path: polygon(100% 0, 0 0, 0 100%);
    -webkit-clip-path: polygon(100% 0, 0 0, 0 100%);
    bottom: -3rem;
    right: 44rem;
}

#index #sec05_cont .sBlock .huki .catch {
    color: #108332;
    font-size: 2.2rem;
    font-weight: 700;
    margin: 0 0 1.5rem 0;
}

#index #sec05_cont .sBlock .huki p:last-child {
    margin: 0;
}

#index #sec05_cont .sBlock .nameArea .ph {
    width: 18rem;
}

#index #sec05_cont .sBlock .nameArea .ph img {
    border-radius: 50%;
}

#index #sec05_cont .sBlock .hukiBox .nameArea {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-end;
    padding: 0 0 0 12rem;
    margin-top: -2rem;
    position: relative;
}

#index #sec05_cont .sBlock .hukiBox .nameArea p {
    font-size: 1.8rem;
    font-weight: 700;
    margin: 0 0 3rem 0;
    padding: 0 0 0 3rem;
}

#index #sec05_cont .sBlock:nth-child(2n) .hukiBox .nameArea {
    justify-content: end;
    padding: 0 12rem 0 0;
}

#index #sec05_cont .sBlock:nth-child(2n) .hukiBox .nameArea .ph {
    order: 2;
}

#index #sec05_cont .sBlock:nth-child(2n) .hukiBox .nameArea p {
    order: 1;
    padding: 0 3rem 0 0;
    text-align: right;
}

#index #sec05_cont .sBlock .btn-internal {
    margin: 0 auto -12rem;
    position: relative;
    z-index: 1;
}


/*map_cont*/

#index #sec06_cont {
    background: url(img/bg_deco_leaf_r2.png) right calc(50% - 68rem) top 4rem no-repeat;
    background-size: auto;
    padding: 18rem 0 0 0;
}

#index #sec06_cont .mapArea {
    background: url(img/img_map.png) 50% 0 no-repeat;
    background-size: auto;
    height: 95rem;
    width: 100rem;
    margin: 0 auto;
}

#index #sec06_cont .mapArea .btnTit .area_block {
    width: 24rem;
}

#index #sec06_cont .mapArea .btnTit.hokkaido {
    top: 9rem;
    right: 15rem;
}

#index #sec06_cont .mapArea .btnTit.tohoku {
    top: 39rem;
    right: 25rem;
}

#index #sec06_cont .mapArea .btnTit.kanto {
    top: 62rem;
    right: -4rem;
}

#index #sec06_cont .mapArea .btnTit.tokai {
    top: 81rem;
    right: 18rem;
}

#index #sec06_cont .mapArea .btnTit.kinki {
    top: 67rem;
    right: 41rem;
}

#index #sec06_cont .mapArea .btnTit.chugoku {
    top: 85rem;
    left: 18rem;
}

#index #sec06_cont .mapArea .btnTit.kyushu {
    top: 78rem;
    left: -6rem;
}

#index #sec06_cont .mapArea .btnTit.okinawa {
    top: 46rem;
    left: 0;
}


/*sec07_cont*/
#index #sec07_cont {
    background: #ecf7c5;
    padding: 8rem 0;
}

#index #sec07_cont .idxh2 {
    font-size: 4rem;
    letter-spacing: 0.2rem;
    text-align: center;
    margin: 0 0 6rem 0;
}

#index #sec07_cont .inner {
    background: #FFF;
    border-radius: 2rem;
    padding: 5rem 5rem;
}

#index #sec07_cont .logo {
    width: 34.4rem;
    margin: 0 auto 3rem;
}

#index #sec07_cont .txt_link {
    text-align: right;
}

#index #sec07_cont .txt_link a {
    display: inline-block;
    padding: 0 2.5rem 0 0;
    background: url(img/arr_black01.png) 100% 50% no-repeat;
    background-size: 1.8rem auto;
}





@media screen and (max-width: 599px) {
    body {
        /* padding: 0; */
    }

    p {
        font-size: 14px;
        font-size: 1.4rem;
        margin: 0 0 10px 0;
        line-height: 1.7;
    }

    .wi1200 {
        width: 100%;
        margin: 0 auto;
        box-sizing: border-box;
    }

    /*共通*/


    #contents .captionWrap {
        overflow: hidden;
        white-space: nowrap;
    }

    #contents .captionWrap .caption {
        overflow-x: scroll;
        /*height: calc(100% + 18px);*/
    }

    #index .titArea {
        width: 100%;
        margin: 0 auto 30px;
    }

    #index .titArea p {
        padding: 0;
        margin: 0;
    }

    #index .titArea .idxh2 {
        color: #000;
        font-size: 2.8rem;
        margin-bottom: 2rem;
        padding: 0;
        position: relative;
        background: none;
        line-height: 3.8rem;
    }

    #index .titArea .idxh2 .fs_s {
        font-size: 1.8rem;
    }

    #index .titArea .idxh2.vertical {
        /* letter-spacing: 0.6rem; */
        letter-spacing: 0;
        line-height: 8rem;
    }

    /* Chrome Edge Opera */
    @media screen and (-webkit-min-device-pixel-ratio: 0) and (min-resolution: .001dpcm) {
        #index .titArea .idxh2.vertical {
            letter-spacing: -0.4rem;
        }
    }

    _::-webkit-full-page-media, _:future, :root #index .titArea .idxh2.vertical {
        letter-spacing: 0.8rem;
    }

    #index .titArea .idxh2.vertical a {
        padding: 0;
    }

    #index .titArea .idxh2.vertical .fs_l {
        font-size: 5rem;
    }

    #index .titArea .idxh2.vertical .bg_yel {
        line-height: 4.5rem;
    }


    /* Firefox */
    @-moz-document url-prefix() {}


    /*各セクション*/

    #index .sec {
        margin: 0 auto 5rem;
    }

    #keyArea {
        margin: 0 auto 3rem;
    }

    #keyArea .mainvisu {
        width: 10rem;
        margin: 5rem auto 2rem;
    }

    #keyArea .mainTit {
        font-size: 1.5rem;
        margin: 0 0 2rem 0;
        line-height: 3rem;
    }

    #keyArea .mainTit .fc_green {
        font-size: 1.9rem;
    }

    #keyArea .mainTit .bg_yel {
        padding: .5rem .5rem;
        display: inline-block;
        line-height: 1;
    }

    #keyArea .logo {
        width: 33rem;
        margin: 0 auto 3rem;
    }

    #keyArea .logo img {
        margin: 0 auto 2rem;
    }

    #keyArea .logo .sponsored {
        font-size: 1.2rem;
    }

    #keyArea .wi1200 {
        position: relative;
        padding: 0 1rem;
    }

    #keyArea .leadArea {
        background: url(img/bg_rep01_sp.png) 0 100% repeat-x;
        background-size: cover;
        padding: 9.5rem 0 2rem 0;
        margin: 0 0 2rem 0;
        position: relative;
    }

    #keyArea .leadArea :before {
        content: "";
        background: url(img/deco_illust_leaf04.png) no-repeat;
        background-size: cover;
        position: absolute;
        top: 1rem;
        left: calc(50% - 16rem);
        width: 32rem;
        height: 6.8rem;
    }

    #keyArea .leadArea .inner {
        width: 100%;
        margin: 0 auto;
        padding: 0 1.5rem;
    }

    #keyArea .leadArea p {
        margin: 0;
    }

    #keyArea .caption {
        font-size: 1.2rem;
        line-height: 2.4rem;
        padding: 0 1.5rem;
    }


    /* 共通のアニメーションスタイル */
    .bound,
    .bound_r {
        animation: bound 3s;
    }

    /* 左の要素のアニメーション設定 */
    .bound {
        animation-delay: 0s;
        /* 左が先に動く */
    }

    /* 右の要素のアニメーション設定 */
    .bound_r {
        animation-delay: 0.5s;
        /* 右を0.5秒遅らせて動かす */
    }

    /* アニメーション定義 */
    @keyframes bound {
        0%, 5%, 10%, 50%, 100% {
            transform: translateY(0);
        }

        20% {
            transform: translateY(-25px);
        }

        25% {
            transform: translateY(0);
        }

        30% {
            transform: translateY(-15px);
        }
    }

    /* 左のバルーンのスタイル */
    .balloon1 {
        width: 13rem;
        top: -17rem;
        left: 1.5rem;
        padding: 1.5rem 1rem;
    }

    /* 右のバルーンのスタイル */
    .balloon2 {
        width: 13rem;
        top: -17rem;
        right: 1.5rem;
        padding: 1.5rem 1rem;
        margin: 1.5em 0;
    }

    /* 三角形の吹き出し部分 */
    .balloon1:before,
    .balloon2:before {
        content: "";
        background: #f3f2e0;
        position: absolute;
        width: 1.5rem;
        height: 1.5rem;
        bottom: -1.5rem;
    }

    .balloon1:before {
        content: "";
        clip-path: polygon(100% 0, 0 0, 100% 100%);
        -webkit-clip-path: polygon(100% 0, 0 0, 100% 100%);
        right: 1.5rem;
    }

    .balloon2:before {
        content: "";
        clip-path: polygon(100% 0, 0 0, 0 100%);
        -webkit-clip-path: polygon(100% 0, 0 0, 0 100%);
        left: 1.5rem;
    }

    /* 吹き出し内のテキスト */
    .balloon1 p,
    .balloon2 p {
        margin: 0;
        font-size: 1.4rem;
        line-height: 2.4rem;
    }


    #index {
        padding: 2rem 0 0 0;
    }

    /*sec01_cont*/

    #index #sec01_cont {
        padding: 0 1.5rem;
        margin: 0 auto 15rem;
    }

    #index #sec01_cont .inner {
        padding: 3rem 1.5rem;
        border-radius: 1rem;
    }

    #index #sec01_cont .sTit {
        font-size: 2.4rem;
        text-align: center;
        margin: -4.5rem 0 2rem 0;
    }

    #index #sec01_cont .ancLink_area {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        flex-direction: column;
    }

    #index #sec01_cont .ancLink_area .sBox {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin-bottom: 3rem;
    }

    #index #sec01_cont .ancLink_area .sBox:last-child {
        margin-bottom: 0;
    }

    #index #sec01_cont .ancLink_area .ph {
        padding: 0 0 0 45%;
    }

    #index #sec01_cont .ancLink_area .sBox:nth-child(2) .ph {
        padding: 0 45% 0 0;
    }

    #index #sec01_cont .ancLink_area .sBox:nth-child(2) .ancLink {
        margin-left: 45%;
    }

    #index #sec01_cont .ancLink_area img {
        border-radius: 1rem;
    }

    #index #sec01_cont .ancLink_area .ancLink {
        background: url(img/deco_illust_leaf03.png) 50% 100% no-repeat;
        background-size: 100% 9.2rem;
        width: 58%;
        margin-top: -13.2rem;
        position: relative;
    }

    #index #sec01_cont .ancLink_area .ancLink a {
        font-size: 1.4rem;
        line-height: 2.2rem;
        padding: 7.8rem 1.5rem 1rem 1.5rem;
        display: block;
        width: 100%;
        background: url(img/arr_white01_down.png) right 1rem bottom 2rem no-repeat;
        background-size: 1.3rem auto;
    }



    /*sec02_cont*/

    #index #sec02_cont {
        padding: 12rem 1.5rem 8rem 1.5rem;
        margin: 0 auto;
    }

    #sec02_cont .phMain {
        position: absolute;
        top: -9rem;
        right: 0;
        width: 70%;
        height: 18rem;
    }

    #sec02_cont .phMain img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 2rem 0 0 2rem;
    }

    #sec02_cont .sCont01 {
        width: 100%;
        padding: 0;
        margin: 0 0 6rem;
    }

    #sec02_cont .sCont01 .idxh2,
    #sec02_cont .sCont01 .idxh2 a {
        color: #FFF;
    }

    #sec02_cont .sCont01 .idxh2 .fs_l {
        font-size: 4rem;
    }

    #sec02_cont .sCont01 .titArea a:before {
        content: "";
        position: absolute;
        bottom: calc(50% - 3rem);
        right: -8rem;
        background: url(img/arr_white02.png) 50% 50% no-repeat;
        background-size: 6rem auto;
        width: 6rem;
        height: 6rem;
    }

    #sec02_cont .sCont01 p {
        color: #FFF;
    }

    #sec02_cont .box2 {
        margin: 0 auto 12rem;
        display: block;
    }

    #sec02_cont .box2 .sBox {
        width: 100%;
        margin: 0 auto 5rem;
        padding: 2rem 1.5rem;
        border-radius: 1rem;
    }

    #sec02_cont .box2 .sBox:before {
        content: "";
        background: url(img/deco_illust_leaf01.png) 50% 50% no-repeat;
        background-size: 6.6rem auto;
        width: 6.6rem;
        height: 5.3rem;
        position: absolute;
        bottom: -1rem;
        right: 3rem;
    }

    #sec02_cont .box2 .sBox:nth-child(1) {
        background: #FFF;
    }

    #sec02_cont .box2 .sBox:nth-child(2) {
        background: #ecf7c5;
    }

    #sec02_cont .box2 .sBox:nth-child(2) .ph {
        order: 2;
    }

    #sec02_cont .box2 .sBox:nth-child(2) .txtArea {
        order: 1;
    }

    #sec02_cont .box2 .sBox .flBox {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin: 0 auto 2rem;
    }

    #sec02_cont .box2 .sBox .flBox .ph {
        width: 12.5rem;
        margin-top: -5rem;
    }

    #sec02_cont .box2 .sBox .flBox .ph img {
        border-radius: 50%;
    }

    #sec02_cont .box2 .sBox .flBox .txtArea {
        width: calc(100% - 12.5rem - 1.5rem);
    }

    #sec02_cont .box2 .sBox .flBox .nameArea {
        font-size: 2rem;
    }

    #sec02_cont .box2 .sBox .flBox .nameArea .fc_green {
        font-size: 1.3rem;
        line-height: 2.4rem;
        margin: 0 0 1rem 0;
    }

    #sec02_cont .box2 .sBox .flBox .nameArea .fs_s {
        font-size: 1.4rem;
    }

    #sec02_cont .box2 .sBox p:last-child {
        margin: 0;
    }

    #sec02_cont .slide-sec02 {
        width: 100%;
        height: 100%;
    }

    #sec02_cont .slide-sec02 .slick-list {
        overflow: inherit;
        margin-left: -3rem;
    }

    #sec02_cont .slide-sec02 .slick-track {
        display: flex;
    }

    #sec02_cont .slide-sec02 .slick-slide {
        width: 30rem;
        margin: 0 3rem 0 0;
        height: inherit;
        float: none;
    }

    #sec02_cont .slide-sec02 .slick-slide a {
        display: flex;
        flex-direction: column;
        border-radius: 2rem;
        box-shadow: .4rem .4rem 0 0 #666;
        height: 100%;
        overflow: hidden;
    }

    #sec02_cont .slide-sec02 .ph img {
        width: 100%;
        object-fit: cover;
    }

    #sec02_cont .slide-sec02 .slick-slide .txtArea {
        background: #f3f2e0 url(img/arr_white_slide.png) right -4rem bottom -4rem no-repeat;
        background-size: 8.5rem auto;
        padding: 4rem 1.5rem 3rem 1.5rem;
        position: relative;
        height: 100%;
    }

    #sec02_cont .slide-sec02 .slick-slide .txtArea .idxh3 {
        position: relative;
        font-size: 2rem;
        line-height: 3.4rem;
        margin: 0 0 1.5rem 0;
    }

    #sec02_cont .slide-sec02 .slick-slide .txtArea:before {
        content: "";
        background: url(img/bgdeco_leaf01.png) 50% 100% no-repeat;
        background-size: 30rem auto;
        width: 30rem;
        height: 10rem;
        position: absolute;
        top: -5rem;
        left: 0;
    }

    #sec02_cont .slide-sec02 .slick-slide .txtArea .num {
        width: 4rem;
        position: absolute;
        top: -2rem;
        left: 1.5rem;
    }

    #sec02_cont .slide-sec02 .slick-slide p {
        margin: 0;
    }

    #contents #sec02_cont .slick-dots {
        margin: 0;
        padding: 0;
        bottom: -6rem;
    }

    #contents #sec02_cont .slick-dots li {
        background: #bbb;
        width: 1.4rem;
        height: 1.4rem;
        border-radius: 50%;
        margin: 0 .5rem;
        padding: 0;
    }

    #contents #sec02_cont .slick-prev,
    #contents #sec02_cont .slick-next {
        z-index: 1;
        width: 4rem;
        height: 4rem;
        top: -4rem;
    }

    #contents #sec02_cont .slick-prev {
        background: url(img/arr_slide_prev.png) 50% 50% no-repeat;
        background-size: 100% auto;
        left: inherit;
        right: 6rem;
    }

    #contents #sec02_cont .slick-next {
        background: url(img/arr_slide_next.png) 50% 50% no-repeat;
        background-size: 100% auto;
        left: inherit;
        right: 0;
    }

    #contents #sec02_cont .slick-prev:before,
    #contents #sec02_cont .slick-next:before {
        display: none;
    }

    #contents #sec02_cont .slick-arrow:hover {
        opacity: 0.7;
    }



    /*sec03_cont*/

    #index #sec03_cont {
        background: url(img/bg_deco_leaf_l.png) left -3rem top 22rem no-repeat, url(img/bg_deco_leaf_r3.png) right -8rem top 4rem no-repeat;
        background-size: 12.2rem auto, 17.7rem auto;
        padding: 5rem 0 0 0;
    }

    _::-webkit-full-page-media, _:future, :root #index #sec03_cont {
        background: url(img/bg_deco_leaf_l.png) left -3rem top 22rem no-repeat,
        url(img/bg_deco_leaf_r3.png) right -8rem top 4rem no-repeat
        background-size: 12.2rem auto, 17.7rem auto;
    }

    #index #sec03_cont .titArea .idxh2 {
        text-align: left;
        font-size: 3rem;
        width: 24rem;
        margin: 0 auto 8rem;
    }

    #index #sec03_cont .titArea .idxh2 .rotate {
        display: inline-block;
        transform: rotate(-90deg);
        font-size: 5rem;
        letter-spacing: -.5rem;
        position: relative;
        top: -5px;
        left: -3px;
    }

    #index #sec03_cont .titArea .idxh2 .bg_yel {
        padding: 1rem 1rem;
    }

    #index #sec03_cont .titCont {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin: 0 0 10rem 0;
        padding: 0 1.5rem;
    }

    #index #sec03_cont .titCont .leftBox {
        width: 100%;
        order: 2;
        margin: 0;
    }

    #index #sec03_cont .titCont .leftBox .ph {
        margin: 0 0 2rem;
    }

    #index #sec03_cont .titCont .leftBox .ph img {
        border-radius: 2rem;
    }

    #index #sec03_cont .titCont .titArea {
        width: 100%;
        margin: 0;
        order: 1;
        display: block;
    }

    _::-webkit-full-page-media, _:future, :root #index #sec03_cont .titCont .titArea {
        margin: 0 auto 6rem;
        min-height: 30rem;
    }

    _::-webkit-full-page-media, _:future, :root #index #sec03_cont .titCont .titArea .idxh2 {
        margin: 0 auto;
    }

    #index #sec03_cont .titCont .titArea a:before {
        content: "";
        position: absolute;
        bottom: 0;
        left: calc(50% - 2.5rem);
        background: url(img/arr_black02.png) 50% 50% no-repeat;
        background-size: 5rem auto;
        width: 5rem;
        height: 5rem;
    }

    #index #sec03_cont .h3Out {
        background: #c9ea78 url(img/deco_illust_leaf02.png) 1.5rem 100% no-repeat;
        background-size: 10rem auto;
        position: relative;
        width: calc(100% - 1.5rem);
        border-radius: 0 2rem 2rem 0;
        padding: 8rem 1.5rem 1.5rem 12rem;
        margin: 0 0 4rem 0;
    }

    #index #sec03_cont .h3Out:before {
        content: "";
        background: #c9ea78;
        position: absolute;
        top: 0;
        left: -100rem;
        width: 100rem;
        height: 100%;
    }

    #index #sec03_cont .h3Out .hukiArea {
        margin: -15rem 0 1rem -10rem;
        width: 32rem;
        padding: 5rem 3.5rem 6rem 3.5rem;
        background: url(img/bg_huki01.png) 50% 50% no-repeat;
        background-size: 32rem auto;
    }

    #index #sec03_cont .h3Out .hukiArea .idxh3 {
        font-size: 2.5rem;
        line-height: 3.4rem;
    }

    #index #sec03_cont .h3Out .hukiArea .idxh3 .fc_red {
        font-size: 2.6rem;
    }

    #index #sec03_cont .h3Out .caption {
        font-size: 1.2rem;
        line-height: 2rem;
        margin: 0;
    }

    #index #sec03_cont .sBlock {
        margin: 0 auto 6rem;
        padding: 0 3rem 0 0;
    }

    #index #sec03_cont .sBlock:nth-child(2n) {
        padding: 0 0 0 3rem;
    }

    #index #sec03_cont .sBlock .idxh4 {
        font-size: 2rem;
        line-height: 3.4rem;
        padding: 0 0 1rem 1.5rem;
        width: 100%;
        margin: 0 0 3rem 0;
        position: relative;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
    }

    #index #sec03_cont .sBlock .idxh4::before {
        content: "";
        background: #87ce58;
        width: 100rem;
        height: .2rem;
        position: absolute;
        bottom: -.2rem;
        left: -100rem;
    }

    #index #sec03_cont .sBlock:nth-child(2n) .idxh4 {
        margin: 0 0 3rem 0;
    }

    #index #sec03_cont .sBlock:nth-child(2n) .idxh4::before {
        content: "";
        background: #87ce58;
        width: 100rem;
        height: .2rem;
        position: absolute;
        bottom: -.2rem;
        left: 90rem;
    }

    #index #sec03_cont .sBlock .idxh4 .ff_hira {
        font-family: 'Hiragino Sans', "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", YuGothic, "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
        font-size: 4rem;
        margin: 0;
        position: relative;
        bottom: 0;
        width: 3.4rem;
    }

    #index #sec03_cont .sBlock .idxh4 .h4Txt {
        width: calc(100% - 3.4rem);
        padding: 0 0 0 1rem;
    }

    #index #sec03_cont .sBlock .ph {
        padding: 0 1.5rem;
    }

    #index #sec03_cont .sBlock .ph img.pc {
        display: none;
        margin: 0 auto;
    }

    #index #sec03_cont .sBlock .hukiBox {
        width: 100%;
        margin: 4rem auto 0;
        padding: 0 0 0 1.5rem;
    }

    #index #sec03_cont .sBlock:nth-child(2n) .hukiBox {
        padding: 0 1.5rem 0 0;
    }

    #index #sec03_cont .sBlock .huki {
        padding: 1.5rem 1.5rem 3rem 1.5rem;
        border-radius: 2rem;
        margin-bottom: 2rem;
    }

    #index #sec03_cont .sBlock .huki:before {
        content: "";
        background: #f3f2e0;
        position: absolute;
        width: 1.5rem;
        height: 1.5rem;
    }

    #index #sec03_cont .sBlock .hukiBox_l .huki:before {
        clip-path: polygon(100% 0, 0 0, 100% 100%);
        -webkit-clip-path: polygon(100% 0, 0 0, 100% 100%);
        bottom: -1.5rem;
        left: 18rem;
    }

    #index #sec03_cont .sBlock .hukiBox_r .huki:before {
        clip-path: polygon(100% 0, 0 0, 0 100%);
        -webkit-clip-path: polygon(100% 0, 0 0, 0 100%);
        bottom: -1.5rem;
        right: 18rem;
    }

    #index #sec03_cont .sBlock .huki .catch {
        font-size: 1.6rem;
        margin: 0 0 1rem 0;
    }

    #index #sec03_cont .sBlock .huki p:last-child {
        margin: 0;
    }

    #index #sec03_cont .sBlock .nameArea .ph {
        width: 10rem;
        padding: 0;
    }

    #index #sec03_cont .sBlock .nameArea .ph img {
        border-radius: 50%;
    }

    #index #sec03_cont .sBlock .hukiBox .nameArea {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: flex-end;
        padding: 0 0 0 2rem;
        margin-top: -3rem;
        position: relative;
    }

    #index #sec03_cont .sBlock .hukiBox .nameArea p {
        font-size: 1.4rem;
        line-height: 2.4rem;
        margin: 0 0 1.5rem 0;
        padding: 0 0 0 1.5rem;
    }

    #index #sec03_cont .sBlock:nth-child(2n) .hukiBox .nameArea {
        justify-content: end;
        padding: 0 2rem 0 0;
    }

    #index #sec03_cont .sBlock:nth-child(2n) .hukiBox .nameArea .ph {
        order: 2;
    }

    #index #sec03_cont .sBlock:nth-child(2n) .hukiBox .nameArea p {
        order: 1;
        padding: 0 1.5rem 0 0;
        text-align: right;
    }

    #index #sec03_cont .btn-internal {
        margin: 0 auto;
    }
     #index #sec03_cont .btn-internal.sp {
        margin-top: 3rem;
    }


    /*sec04_cont*/

    #index #sec04_cont {
        margin: 0 auto;
        padding: 4rem 0 0 0;
    }
    #index #sec04_cont .titArea{
       background: url(img/bg_deco_leaf_r1.png) no-repeat bottom 0 right 2rem;
       background-size:15%;
    }

    #index #sec04_cont .titArea a:before {
        content: "";
        position: absolute;
        bottom: 7rem;
        left: 1rem;
        background: url(img/arr_black02.png) 50% 50% no-repeat;
        background-size: 5rem auto;
        width: 5rem;
        height: 5rem;
    }

    #index #sec04_cont .titArea .idxh2 {
        font-size: 3rem;
        width: 28rem;
        margin: 0 auto 12rem;
        line-height: 7rem;
    }

    _::-webkit-full-page-media, _:future, :root #index #sec04_cont .titArea .idxh2 {
        min-height: 38rem;
    }

    #index #sec04_cont .titArea .idxh2 .bg_yel {
        display: inline-block;
        padding: 1rem 1rem;
    }

    #index #sec04_cont .detail {
        background: #8cb91d url(img/bgdeco_leaf02.png) 0 68rem no-repeat;
        background-size: 100% auto;
        padding: 0 0 5rem 0;
    }

    #index #sec04_cont .flBox {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-end;
        margin: 0 auto 10rem;
    }

    #index #sec04_cont .mov {
        width: calc(100% - 3rem);
        margin: -6rem auto 0;
    }

    #index #sec04_cont .mov iframe {
        width: 100%;
        aspect-ratio: 9/16;
        height: inherit;
    }

    #index #sec04_cont .mov .caption {
        font-size: 1.2rem;
    }

    #index #sec04_cont .commentBox {
        width: calc(100% - 3rem);
        padding: 3rem 0 3rem 0;
        position: relative;
        margin: 0 auto 8rem;
    }

    #index #sec04_cont .commentBox p:last-child {
        margin: 0;
    }

    #index #sec04_cont .commentBox .ab {
        display: block;
        position: inherit;
        margin: -10rem auto 1.5rem;
        width: 16rem;
        left: inherit;
        bottom: inherit;
    }

    #index #sec04_cont .commentBox .bg_green {
        width: 19rem;
        display: block;
        text-align: center;
        padding: .5rem 1.5rem;
        border-radius: 5rem;
        font-size: 2rem;
        margin: 0 auto 2rem;
    }

    #index #sec04_cont .commentBox .bg_green .fs_s {
        font-size: 1.4rem;
    }

    #index #sec04_cont .flowBox {
        margin: 0 auto 6rem;
    }

    #index #sec04_cont .flowBox .inner {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        width: 32rem;
        margin: 0 auto;
    }

    #index #sec04_cont .flowBox .sBox {
        width: 14rem;
        position: relative;
        margin-bottom: -2rem;
    }

    #index #sec04_cont .flowBox .sBox:nth-child(2n) {
        margin-top: 5rem;
    }

    #index #sec04_cont .flowBox .sBox:before {
        content: "";
        position: absolute;
        background: url(img/arr_white_cont.png) 100% 50% no-repeat;
        background-size: auto 2rem;
        width: 14rem;
        height: 2.2rem;
        right: inherit;
    }

    #index #sec04_cont .flowBox .sBox:nth-child(1):before,
    #index #sec04_cont .flowBox .sBox:nth-child(3):before {
        right: -4.4rem;
        top: 7rem;
        transform: rotate(20deg);
    }

    #index #sec04_cont .flowBox .sBox:nth-child(2):before {
        left: -7rem;
        top: 14rem;
        transform: rotate(140deg);
    }

    #index #sec04_cont .flowBox .sBox:last-child:before {
        display: none;
    }

    #index #sec04_cont .flowBox .sBox img {
        border-radius: 50%;
        margin: 0 auto 2rem;
        position: relative;
    }

    #index #sec04_cont .flowBox .listTit {
        font-size: 1.6rem;
        text-align: center;
    }


    /*sec05_cont*/
    #index #sec05_cont {
        padding: 6rem 0 0 0;
        background: url(img/bg_deco_leaf_l.png) left -3rem top 5rem no-repeat,
            url(img/bg_deco_leaf_l.png) left -2.5rem top 108rem no-repeat,
            url(img/bg_deco_leaf_l.png) left 0rem top 200rem no-repeat,
            url(img/bg_deco_leaf_r2.png) right -3rem top 10rem no-repeat,
            url(img/bg_deco_leaf_r1.png) right 0 top 124rem no-repeat,
            url(img/bg_deco_leaf_r2.png) right -1.5rem top 288rem no-repeat;

        /* background: url(img/bg_deco_leaf_l.png) left calc(50% - 33rem) top 5rem no-repeat,
            url(img/bg_deco_leaf_l.png) left calc(50% - 30rem) top 120rem no-repeat,
            url(img/bg_deco_leaf_l.png) left calc(50% - 30rem) top 320rem no-repeat,
            url(img/bg_deco_leaf_r2.png) right calc(50% -30rem) top 10rem no-repeat,
            url(img/bg_deco_leaf_r2.png) right calc(50% - 30rem) top 218rem no-repeat; */
        background-size: 12.2rem auto, 12.2rem auto, 12.2rem auto, 12.2rem auto, 7rem auto, 12.2rem auto;
        margin: 0 auto;
    }

    #index #sec05_cont .idxh2 {
        text-align: center;
    }

    #index #sec05_cont .titArea {
        margin: 0 auto 15rem;
    }

    #index #sec05_cont .sBlock {
        width: calc(100% - 3rem);
        margin: 0 0 20rem 0;
        position: relative;
    }

    #index #sec05_cont .sBlock:last-child {
        margin: 0;
    }

    #index #sec05_cont .sBlock:nth-child(odd) {
        border-radius: 0 4rem 4rem 0;
        padding: 4rem 1.5rem 9rem 1.5rem;
    }

    #index #sec05_cont .sBlock:nth-child(odd):before {
        content: "";
        background: #ecf7c5;
        position: absolute;
        top: 0;
        left: -100rem;
        width: 100rem;
        height: 100%;
    }

    #index #sec05_cont .sBlock:nth-child(even) {
        border-radius: 4rem 0 0 4rem;
        padding: 4rem 1.5rem 9rem 1.5rem;
        margin-left: 3rem;
    }

    #index #sec05_cont .sBlock:nth-child(even):before {
        content: "";
        background: #ecf7c5;
        position: absolute;
        top: 0;
        left: 120rem;
        width: 100rem;
        height: 100%;
    }

    #index #sec05_cont .sBlock .flBox {
        display: block;
        margin: 0 auto 3rem;
    }

    #index #sec05_cont .sBlock .flBox .ph {
        width: 100%;
        margin: -15rem 0 2rem 0;
    }

    #index #sec05_cont .sBlock .flBox .txtArea {
        width: 100%;
    }

    #index #sec05_cont .sBlock .flBox .ph img {
        border-radius: 1rem;
    }

    #index #sec05_cont .sBlock:nth-child(odd) .flBox .ph {
        order: 1;
    }

    #index #sec05_cont .sBlock:nth-child(odd) .flBox .txtArea {
        order: 2;
    }

    #index #sec05_cont .idxh3 {
        text-align: center;
        font-size: 2rem;
        line-height: 3rem;
        padding: 0 0 1.5rem 0;
        margin: 0 0 2rem 0;
    }

    #index #sec05_cont .sBlock .hukiBox {
        width: 100%;
        margin: 3rem auto 3rem;
    }

    #index #sec05_cont .sBlock .huki {
        padding: 2rem 1.5rem 3rem 1.5rem;
        border-radius: 2rem;
        position: relative;
        margin-bottom: 2rem;
    }

    #index #sec05_cont .sBlock .huki:before {
        content: "";
        background: #FFF;
        position: absolute;
        width: 1.5rem;
        height: 1.5rem;
    }

    #index #sec05_cont .sBlock .hukiBox_l .huki:before {
        clip-path: polygon(100% 0, 0 0, 100% 100%);
        -webkit-clip-path: polygon(100% 0, 0 0, 100% 100%);
        bottom: -1.5rem;
        left: 16rem;
    }

    #index #sec05_cont .sBlock .hukiBox_r .huki:before {
        clip-path: polygon(100% 0, 0 0, 0 100%);
        -webkit-clip-path: polygon(100% 0, 0 0, 0 100%);
        bottom: -1.5rem;
        right: 16rem;
    }

    #index #sec05_cont .sBlock .huki .catch {
        font-size: 1.6rem;
        margin: 0 0 1rem 0;
    }

    #index #sec05_cont .sBlock .huki p:last-child {
        margin: 0;
    }

    #index #sec05_cont .sBlock .nameArea .ph {
        width: 10rem;
    }

    #index #sec05_cont .sBlock .hukiBox .nameArea {
        padding: 0 0 0 3rem;
        margin-top: -3rem;
        position: relative;
    }

    #index #sec05_cont .sBlock .hukiBox .nameArea p {
        font-size: 1.4rem;
        margin: 0 0 1.5rem 0;
        padding: 0 0 0 1.5rem;
        line-height: 2.6rem;
    }

    #index #sec05_cont .sBlock:nth-child(2n) .hukiBox .nameArea {
        justify-content: end;
        padding: 0 1.5rem 0 0;
    }

    #index #sec05_cont .sBlock:nth-child(2n) .hukiBox .nameArea .ph {
        order: 2;
    }

    #index #sec05_cont .sBlock:nth-child(2n) .hukiBox .nameArea p {
        order: 1;
        padding: 0 3rem 0 0;
        text-align: right;
    }

    #index #sec05_cont .sBlock .btn-internal {
        margin: 0 auto -12rem;
    }


    /*sec06_cont*/

    #index #sec06_cont {
        background: url(img/bg_deco_leaf_r2.png) right -5rem top 0 no-repeat, url(img/img_map.png) 58% 18rem no-repeat;
        background-size: 12.2rem auto, 90% auto;
        padding: 10rem 1.5rem 0 1.5rem;
        width: 100%;
        margin: 0 auto 8rem;
    }

    #index #sec06_cont .mapArea {
        width: 100%;
        height: 27rem;
        margin: 10rem auto 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: start;
        padding: 30px 0 30px 0;
    }

    #index #sec06_cont .mapArea .btnTit {
        position: inherit !important;
        top: inherit !important;
        right: inherit !important;
        left: inherit !important;
        width: 48%;
        margin-bottom: 1.5rem;
    }

    #index #sec06_cont .mapArea .btnTit .area_block {
        width: 100%;
    }


    /*sec07_cont*/
    #index #sec07_cont {
        padding: 4rem 1.5rem;
    }

    #index #sec07_cont .idxh2 {
        font-size: 2rem;
        letter-spacing: 0.2rem;
        text-align: center;
        margin: 0 0 3rem 0;
    }

    #index #sec07_cont .inner {
        border-radius: 2rem;
        padding: 3rem 1.5rem;
    }

    #index #sec07_cont .logo {
        width: 18rem;
        margin: 0 auto 2rem;
    }

    #index #sec07_cont .txt_link {
        text-align: right;
    }

    #index #sec07_cont .txt_link a {
        display: inline-block;
        padding: 0 2.5rem 0 0;
        background: url(img/arr_black01.png) 100% 50% no-repeat;
        background-size: 1.3rem auto;
    }



}