@charset "UTF-8";

body {
    width: 100%;
    /*overflow-x: hidden;*/
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
    margin: 0;
    text-align: justify;
line-break: strict;
overflow-wrap: break-word;
word-wrap: break-word;
}

img {
        max-width: 100%;
        height: auto;
    }

/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
    
    
    .header_bg {
        background: #EFEFEF;
        box-sizing: border-box;
    }
    .header_wrap {
        position: relative;
        text-align: center;
        margin: 0 auto;
        width: 100%;
        max-width: 945px;
        padding: 2.535vw 0;
        box-sizing: border-box;
    }
    .header_logo {
        display: inline-block;
        width: 38.548vw;
    }
    .header_logo img {
        width: 100%;
    }
    .header_pr {
        display: inline-block;
        font-size: 0;
        position: absolute;
    	top: 50%;
    	right: 15px;
    	transform: translateY(-50%);
    	-webkit-transform: translateY(-50%);
    	-ms-transform: translateY(-50%);
    	width: 8.585%;
    }
    .header_pr img {
        width: 100%;
    }
    
    
    @media screen and (min-width: 440px) {
        .header_wrap {
            padding: 10px 0;
        }
        .header_logo {
            width: 179.598px;
        }
        .header_pr {
            width: 40px;
        }
    }
    
    
    @media screen and (min-width: 640px) {
        .header_logo {
            width: 210px;
        }
        .header_wrap {
            padding: 9.55px 0;
        }
    }
    
    
    
    .ft_line {
        display: inline-block;
        width: 100%;
        height: 1px;
        background: #cdcdcd;
        border: none;
    }
    
    
    
    
/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/



    .pcfv_wrap {
        display: none;
    }
    .spfv_wrap {
        position: relative;
        font-size: 0;
    }
    .spfv_mv {
        font-size: 0;
        position: relative;
        z-index: 1;
    }
    .spfv_mv img {
        width: 100%;
    }
    .spfv_h {
        position: absolute;
        z-index: 5;
        width: 67%;
        top: 37%;
        left: 1%;
        animation: 2s spfv_h_anime;
    }
    @keyframes spfv_h_anime {
        0% {
            opacity: 0;
            transform: translateX(-50px);
        	-webkit-transform: translateX(-50px);
        	-ms-transform: translateX(-50px);
        }
        100% {
            opacity: 1;
            transform: translateX(0);
        	-webkit-transform: translateX(0);
        	-ms-transform: translateX(0);
        }
    }
    .spfv_name {
        position: absolute;
        z-index: 5;
        width: 27%;
        top: 64%;
        right: 6%;
        animation: 2s spfv_name_anime;
    }
    @keyframes spfv_name_anime {
        0% {
            opacity: 0;
            transform: translateX(50px);
        	-webkit-transform: translateX(50px);
        	-ms-transform: translateX(50px);
        }
        100% {
            opacity: 1;
            transform: translateX(0);
        	-webkit-transform: translateX(0);
        	-ms-transform: translateX(0);
        }
    }
    .itr_wrap {
        padding: 0 15px 20px;
        margin: -20% 0 0;
        position: relative;
        z-index: 10;
    }
    .itr_box {
        background: rgba(255,255,255,.9);
        border-radius: 20px;
        padding: 14px;
        box-shadow: 0 0 8px rgba(0,0,0,.5);
        animation: 2s itr_box_anime;
    }
    @keyframes itr_box_anime {
        0% {
            opacity: 0;
            transform: translateY(50px);
        	-webkit-transform: translateY(50px);
        	-ms-transform: translateY(50px);
        }
        100% {
            opacity: 1;
            transform: translateX(0);
        	-webkit-transform: translateX(0);
        	-ms-transform: translateX(0);
        }
    }
    .itr_box p {
        font-size: 16px;
        line-height: 1.481;
        font-weight: 600;
        color: #231815;
        margin: 0;
        text-align:justify;
    }
    .fv_wrap {
        position: relative;
        background: linear-gradient(90deg, #fff0a4 0%, #fff0a4 25%, #96b7e9 50%, #96b7e9 100%);
    }
    .mainwrap {
        overflow: hidden;
    }
    
    @media screen and (min-width: 640px) {
        .spfv_wrap {
            display: none;
        }
        .pcfv_wrap {
            display: block;
            position: relative;
            font-size: 0;
            max-width: 2300px;
            margin: 0 auto;
        }
        .pcfv_wrap::before {
            content: "";
            position: absolute;
            left: 50%;
            top: 0;
        	transform: translateX(-50%);
        	-webkit-transform: translateX(-50%);
        	-ms-transform: translateX(-50%);
        	width: 200vw;
        	height: 100%;
        	background: linear-gradient(90deg, #EEEAE8 0%, #EEEAE8 50%, #FFF0A4 50%, #FFF0A4 100%);
        	z-index: 1;
        }
        .pvfv_mv {
            position: relative;
            z-index: 1;
            animation: 1s pvfv_mv_anime;
        }
        @keyframes pvfv_mv_anime {
            0% {
                opacity: 0;
                transform: scale(1.3);
                -webkit-transform: scale(1.3);
                -ms-transform: scale(1.3);
            }
            100% {
                opacity: 1;
                transform: scale(1);
                -webkit-transform: scale(1);
                -ms-transform: scale(1);
            }
        }
        .pvfv_h {
            position: absolute;
            z-index: 7;
            width: 35%;
            left: 19%;
            top: 62%;
            animation: 3s itr_box_anime;
        }
        .pcfv_name {
            position: absolute;
            z-index: 7;
            width: 10%;
            left: 72.5%;
            top: 85%;
            animation: 3s itr_box_anime;
        }
        .pcfv_img {
            position: absolute;
            z-index: 3;
        }
        .pcfv_img1 {
            width: 22.34%;
            left: -7%;
            top: -1%;
            animation: 2s pcfv_img1_anime;
        }
        @keyframes pcfv_img1_anime {
            0% {
                opacity: 0;
                transform: translate(-50px, -50px);
            	-webkit-transform: translate(-50px, -50px);
            	-ms-transform: translate(-50px, -50px);
            }
            100% {
                opacity: 1;
                transform: translate(0%, 0%);
            	-webkit-transform: translate(0%, 0%);
            	-ms-transform: translate(0%, 0%);
            }
        }
        .pcfv_img2 {
            width: 26.93%;
            left: -11%;
            top: 68%;
            animation: 2s pcfv_img2_anime;
        }
        @keyframes pcfv_img2_anime {
            0% {
                opacity: 0;
                transform: translate(-50px, 50px);
            	-webkit-transform: translate(-50px, 50px);
            	-ms-transform: translate(-50px, 50px);
            }
            100% {
                opacity: 1;
                transform: translate(0%, 0%);
            	-webkit-transform: translate(0%, 0%);
            	-ms-transform: translate(0%, 0%);
            }
        }
        .pcfv_img3 {
            width: 43.26%;
            left: 15%;
            top: 51%;
            mix-blend-mode: multiply;
            animation: 2s pcfv_img3_anime;
        }
        @keyframes pcfv_img3_anime {
            0% {
                opacity: 0;
                transform: rotate(90deg);
            	-webkit-transform: rotate(90deg);
            	-ms-transform: rotate(90deg);
            	transform-origin: top left;
            }
            100% {
                opacity: 1;
                transform: rotate(0deg);
            	-webkit-transform: rotate(0deg);
            	-ms-transform: rotate(0deg);
            	transform-origin: top left;
            }
        }
        .pcfv_img4 {
            width: 28.18%;
            left: 86%;
            top: 6%;
            animation: 2s pcfv_img4_anime;
        }
        @keyframes pcfv_img4_anime {
            0% {
                opacity: 0;
                transform: translate(50px, 0);
            	-webkit-transform: translate(50px, 0);
            	-ms-transform: translate(50px, 0);
            }
            100% {
                opacity: 1;
                transform: translate(0%, 0%);
            	-webkit-transform: translate(0%, 0%);
            	-ms-transform: translate(0%, 0%);
            }
        }
        .pcfv_img5 {
            width: 33.28%;
            left: 87%;
            top: 65%;
            animation: 2s pcfv_img5_anime;
        }
        @keyframes pcfv_img5_anime {
            0% {
                opacity: 0;
                transform: translate(50px, 0);
            	-webkit-transform: translate(50px, 0);
            	-ms-transform: translate(50px, 0);
            }
            100% {
                opacity: 1;
                transform: translate(0%, 0%);
            	-webkit-transform: translate(0%, 0%);
            	-ms-transform: translate(0%, 0%);
            }
        }
        .itr_wrap {
            margin: 0;
            padding: 40px 40px 40px;
        }
        .itr_box {
            margin: 0 auto;
            max-width: 1080px;
            border-radius: 50px;
            padding: 30px 60px;
            box-sizing: border-box;
            animation: 3s itr_box_anime;
        }
        @keyframes itr_box_anime {
            0% {
                opacity: 0;
                transform: translateY(50px);
            	-webkit-transform: translateY(50px);
            	-ms-transform: translateY(50px);
            }
            50% {
                opacity: 0;
                transform: translateY(50px);
            	-webkit-transform: translateY(50px);
            	-ms-transform: translateY(50px);
            }
            100% {
                opacity: 1;
                transform: translateX(0);
            	-webkit-transform: translateX(0);
            	-ms-transform: translateX(0);
            }
        }
        .itr_box p {
            font-size: 18px;
            line-height: 2;
            margin: 0;
        }
        
    }
    
    
    .block1_in {
        position: relative;
        z-index: 10;
        padding: 30px;
    }
    .lv2_wrap {
        text-align: center;
        position: relative;
        margin: 0 0 30px;
        padding: 0 25px;
    }
    .lv2_wrap::before, .lv2_wrap::after {
        content: "";
        position: absolute;
        display: inline-block;
        width: 40px;
        padding-top: 94.576%;
        background-position: center;
        background-repeat: no-repeat;
        background-size: contain;
        top: 50%;
    	transform: translateY(-50%);
    	-webkit-transform: translateY(-50%);
    	-ms-transform: translateY(-50%);
    }
    .lv2_wrap::before {
        background-image: url(h-l.png);
        left: -20px;
    }
    .lv2_wrap::after {
        background-image: url(h-r.png);
        right: -20px;
    }
    .lv2 {
        font-size: 18.5px;
        line-height: 1.231;
        color: #231815;
        margin: 0;
        position: relative;
        z-index: 10;
    }
    .sphide {
        display: none;
    }
    .text-style1 {
        font-size: 16px;
        line-height: 1.48148;
        margin: 0;
        color: #231815;
        font-weight: 500;
    }
    .float_wrap {
        margin-bottom: 22px;
    }
    .float_img {
        text-align: center;
    }
    .float_img img {
        width: 80%;
    }
    .block1 {
        position: relative;
        margin: 30px 0;
    }
    .block1::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: #faf8ee;
        border-radius: 0 105px 0 0;
    }
    .mainwrap div, .mainwrap h2, .mainwrap p {
        box-sizing: border-box;
    }
    .block2::before {
        border-radius: 105px 0 0 0;
    }
    .block2_in {
        padding-bottom: 0;
    }
    .width2 {
        padding-bottom: 30px;
    }
    .img1 {
        font-size: 0;
        text-align: center;
        margin: 30px 0 0;
    }
    .img2 {
        font-size: 0;
        text-align: center;
        margin: 30px 0 0;
    }
    .block3 {
        margin-bottom: 0;
    }
    .altxt {
        text-align: center;
        font-size: 12px;
        padding: 24px 5px;
        color: #000;
        margin: 0;
    }
    
    
    @media screen and (min-width: 640px) {
        .br-sp {
            display: none;
        }
        .pchide {
            display: none;
        }
        .sphide {
            display: block;
        }
        .block1 {
            margin: 50px auto;
        }
        .block1::before {
            border-radius: 0 210px 0 0;
        }
        .block1_in {
            margin: 0 auto;
            max-width: 1140px;
            padding: 70px 20px;
        }
        .lv2_wrap {
            margin: 0 auto 60px;
            max-width: 931.775px;
            padding: 0 87px;
        }
        .lv2 {
            font-size: 37px;
            letter-spacing: -.05em;
        }
        .lv2_wrap::before, .lv2_wrap::after {
            width: 87.5411px;
        }
        .lv2_wrap::before {
            left: 0;
        }
        .lv2_wrap::after {
            right: 0;
        }
        .float_img img {
            width: 100%;
        }
        .float_img {
            float: right;
            width: 448px;
            margin: 0 0 30px 30px;
        }
        .text-style1 {
            font-size: 18px;
            line-height: 1.7222;
        }
        .float_wrap {
            margin: 0 auto;
            max-width: 930px;
        }
        .block2::before {
            border-radius: 210px 0 0 0;
        }
        .width1 {
            max-width: 930px;
            margin: 0 auto;
        }
        .width2 {
            max-width: 930px;
            margin: 70px auto 0;
            padding-bottom: 70px;
        }
        .width2 img{
            width: 80%;
        }
        .block2_in {
            padding-bottom: 0;
        }
        .img2 {
            margin: 70px 0 0;
        }
        .img2 img {
            width: 80%;
        }
        .altxt {
            padding: 35px 5px;
        }
        .block3 {
            margin-bottom: 0;
        }
        
    }
    
    
    .footer_bg {
        background: #f5f5f5;
    }
    .footer_wrap {
        text-align: center;
        padding: 30px 10px;
        position: relative;
    }
    .footer_logo {
        font-size: 0;
        margin-bottom: 20px;
    }
    .footer_logo img {
        width: 200px;
    }
    .footer_h {
        font-size: 18px;
        margin: 0 0 12px;
        color: #000;
    }
    .footer_txt1 {
        font-size: 16px;
        line-height: 1.94875;
        color: #000;
        margin: 0;
    }
    
    @media screen and (min-width: 640px) {
        .footer_logo img {
            width: 325.9224px;
        }
        .footer_wrap {
            padding: 40px 10px;
            margin: 0 auto;
            max-width: 1100px;
        }
    }
    
    
    .z10 {
        position: relative;
        z-index: 10;
    }
    .d_img {
        position: absolute;
        z-index: 1;
    }
    .d_img1 {
        width: 198.696px;
        left: -181px;
        top: 21%;
    }
    .d_img2 {
        width: 196.3265px;
        right: -163px;
        top: 19%;
    }
    .d_img3 {
        width: 179.037px;
        left: -99px;
        bottom: 132px;
    }
    .d_img4 {
        width: 123.5605px;
        left: -81px;
        top: 22%;
    }
    .d_img5 {
        width: 217.8435px;
        right: -185px;
        top: -300px;
    }
    .d_img6 {
        width: 194.5925px;
        right: -173px;
        top: -2%;
    }
    .d_img7 {
        width: 255.5605px;
        left: -211px;
        top: 10%;
    }
    .d_img8 {
        width: 281.5925px;
        right: -260px;
        bottom: 20%;
    }
    .d_img9 {
        width: 272.5605px;
        left: -231px;
        bottom: 30px;
    }
    .d_img10 {
        width: 116.5925px;
        right: -100px;
        bottom: -60px;
    }
    .d_img11 {
        width: 136.5605px;
        left: -101px;
        bottom: -30px;
    }
    
    .inview_fade {
        opacity: 0;
        transform: translateX(-15px);
    	-webkit-transform: translateX(-15px);
    	-ms-transform: translateX(-15px);
    }
    .inview_fade_on {
        animation: 2s inview_fade_anime;
        opacity: 1;
        transform: translateX(0);
    	-webkit-transform: translateX(0);
    	-ms-transform: translateX(0);
    }
    @keyframes inview_fade_anime {
        0% {
            opacity: 0;
            transform: translateX(-15px);
        	-webkit-transform: translateX(-15px);
        	-ms-transform: translateX(-15px);
        }
        100% {
            opacity: 1;
            transform: translateX(0);
        	-webkit-transform: translateX(0);
        	-ms-transform: translateX(0);
        }
    }
    .inview_fade_re {
        opacity: 0;
        transform: translateX(15px);
    	-webkit-transform: translateX(15px);
    	-ms-transform: translateX(15px);
    }
    .inview_fade_re_on {
        animation: 2s inview_fade_re_anime;
        opacity: 1;
        transform: translateX(0);
    	-webkit-transform: translateX(0);
    	-ms-transform: translateX(0);
    }
    @keyframes inview_fade_re_anime {
        0% {
            opacity: 0;
            transform: translateX(15px);
        	-webkit-transform: translateX(15px);
        	-ms-transform: translateX(15px);
        }
        100% {
            opacity: 1;
            transform: translateX(0);
        	-webkit-transform: translateX(0);
        	-ms-transform: translateX(0);
        }
    }
    
    
    @media screen and (min-width: 640px) {
        .d_img1 {
            width: 397.3925px;
            top: 177px;
            left: -347px;
        }
        .d_img2 {
            width: 392.6536px;
            top: auto;
            bottom: 13%;
            right: -340px;
        }
        .d_img3 {
            width: 358.0743px;
            left: -233px;
            bottom: -215px;
        }
        .d_img4 {
            width: 247.121px;
            left: -180px;
            top: 27%;
        }
        .d_img5 {
            width: 435.6879px;
            right: -361px;
            top: 235px;
        }
        .d_img6 {
            width: 389.185px;
            right: -312px;
            top: -136px;
        }
        .d_img7 {
            width: 510.8444px;
            left: -463px;
            top: 170px;
        }
        .d_img8 {
            width: 562.088px;
            right: -427px;
            bottom: 389px;
        }
        .d_img9 {
            width: 544.8802px;
            left: -401px;
            bottom: 100px;
        }
        .d_img10 {
            width: 231.6499px;
            right: -111px;
            bottom: -178px;
        }
        .d_img11 {
            width: 272.0536px;
            left: -101px;
            bottom: -51px;
        }
        
        .inview_fade {
            transform: translateX(-60px);
        	-webkit-transform: translateX(-60px);
        	-ms-transform: translateX(-60px);
        }
        .inview_fade_on {
            transform: translateX(0);
        	-webkit-transform: translateX(0);
        	-ms-transform: translateX(0);
        }
        @keyframes inview_fade_anime {
            0% {
                opacity: 0;
                transform: translateX(-60px);
            	-webkit-transform: translateX(-60px);
            	-ms-transform: translateX(-60px);
            }
            100% {
                opacity: 1;
                transform: translateX(0);
            	-webkit-transform: translateX(0);
            	-ms-transform: translateX(0);
            }
        }
        .inview_fade_re {
            transform: translateX(60px);
        	-webkit-transform: translateX(60px);
        	-ms-transform: translateX(60px);
        }
        .inview_fade_re_on {
            transform: translateX(0);
        	-webkit-transform: translateX(0);
        	-ms-transform: translateX(0);
        }
        @keyframes inview_fade_re_anime {
            0% {
                opacity: 0;
                transform: translateX(60px);
            	-webkit-transform: translateX(60px);
            	-ms-transform: translateX(60px);
            }
            100% {
                opacity: 1;
                transform: translateX(0);
            	-webkit-transform: translateX(0);
            	-ms-transform: translateX(0);
            }
        }
    }
    
    
    
    
    
    
    
    .inview_fade2 {
        opacity: 0;
        transform: translateY(60px);
    	-webkit-transform: translateY(60px);
    	-ms-transform: translateY(60px);
    }
    .inview_fade2_on {
        animation: 2s inview_fade2_anime;
        opacity: 1;
        transform: translateY(0);
    	-webkit-transform: translateY(0);
    	-ms-transform: translateY(0);
    }
    @keyframes inview_fade2_anime {
        0% {
            opacity: 0;
            transform: translateY(60px);
        	-webkit-transform: translateY(60px);
        	-ms-transform: translateY(60px);
        }
        100% {
            opacity: 1;
            transform: translateY(0);
        	-webkit-transform: translateY(0);
        	-ms-transform: translateY(0);
        }
    }
    

















