@charset "UTF-8";
/* ===============================================
    ! Foundation !
=============================================== */
/* =====================================
    * setting for animation style *
===================================== */
.fadeIn {
    -webkit-transition-duration: 1.5s;
    -o-transition-duration: 1.5s;
    transition-duration: 1.5s;
    opacity: 0;
    -webkit-transform: translateY(50px);
    -ms-transform: translateY(50px);
    transform: translateY(30px);
    -webkit-transition: all 1500ms;
    transition: all 1500ms;
}

/* jQueryでスクロール量に応じて付与された 'scrollIn' のスタイル */
.fadeIn.scrollIn {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
}
/* =================
	all
================= */
img{
    color: inherit;
    text-decoration: none;
    -webkit-transition: .3s;
    transition: .3s;
    width: 100%;
}
.main-area .main-inner{
    width: 100%;
    max-width: none;
    overflow: hidden;
}
#haru_1201{
    width: 100%;
    margin: 0 auto;
    font-feature-settings: "palt";
    box-sizing: border-box;
}
.flexbox{
    display: flex;
}
.sp_only{
    display: none !important;
}
/* =================
	ttl
================= */
#haru_1201 .cnt_1201{
    width: 1200px;
    margin: 0 auto 260px;
    margin-top: 81px;
}
#haru_1201 h2{
    font-family: bilo, sans-serif;
    font-weight: 200;
    font-style: normal;
    font-size: 45px;
    text-align: center;
    margin-bottom: 31px;
}
#haru_1201 h3{
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
    font-size: 21px;
    text-align: center;
    letter-spacing: 0.08em;
    margin-bottom: 78px;
}
/* =================
	sec1
================= */
#haru_1201 .sec1{
    position: relative;
    width: 1200px;
    margin: 0 auto 150px;
}
#haru_1201 .sec1::before{
    content: "";
    z-index: -1;
    position: absolute;
    background-color: #f4f3ef;
    width: 100vw;
    height: 558px;
    top: 200px;
    right: 320px;
}
#haru_1201 .sec1 .flexbox{
    width: 940px;
    margin: 0 auto;
    display: block;
}
#haru_1201 .sec1 .flexbox li:first-child{
    width: 400px;
    margin-left: auto;
}
#haru_1201 .sec1 .flexbox li:nth-child(2){
    width: 420px;
    margin-top: -145px;
}
#haru_1201 .sec1 .flexbox li:nth-child(3){
    width: 400px;
    margin-top: -185px;
    margin-left: 350px;
}
/* =================
	sec2
================= */
#haru_1201 .sec2{
    width: 960px;
    margin: 0 auto;
    margin-bottom: 150px;
}
#haru_1201 .sec2 .flexbox{
    justify-content: space-between;
}
#haru_1201 .sec2 .flexbox li:first-child{
    width: 400px;
    margin-top: 53px;
}
#haru_1201 .sec2 .flexbox li:nth-child(2){
    width: 480px;
}
/* =================
	sec3
================= */
#haru_1201 .sec3{
    position: relative;
    width: 1200px;
    margin: 0 auto 148px;
}
#haru_1201 .sec3::before{
    content: "";
    z-index: -1;
    position: absolute;
    background-color: #f4f3ef;
    width: 100vw;
    height: 688px;
    top: 78px;
    left: 265px;
}
#haru_1201 .sec3 .flexbox{
    width: 970px;
    margin: 0 auto;
    display: block;
}
#haru_1201 .sec3 .flexbox li:first-child{
    width: 400px;
}
#haru_1201 .sec3 .flexbox li:nth-child(2){
    width: 450px;
    margin-top: -280px;
    margin-left: auto;
}
#haru_1201 .sec3 .flexbox li:nth-child(3){
    width: 380px;
    margin-top: -197px;
    margin-left: 70px;
}
/* =================
	sec4
================= */
#haru_1201 .sec4{
    width: 970px;
    margin: 0 auto;
    margin-bottom: 151px;
}
#haru_1201 .sec4 .flexbox{
    justify-content: space-between;
}
#haru_1201 .sec4 .flexbox li{
    width: 450px;
}
/* =================
	sec5
================= */
#haru_1201 .sec5{
    position: relative;
    width: 1200px;
    margin: 0 auto 150px;
}
#haru_1201 .sec5::before{
    content: "";
    z-index: -1;
    position: absolute;
    background-color: #f4f1ed;
    width: 100vw;
    height: 830px;
    top: 85px;
    right: 210px;
}
#haru_1201 .sec5 .flexbox{
    width: 940px;
    margin: 0 auto;
    display: block;
}
#haru_1201 .sec5 .flexbox li:first-child{
    width: 420px;
    margin: 0 auto;
    margin-bottom: 70px;
}
#haru_1201 .sec5 .flexbox li:nth-child(2){
    width: 420px;
}
#haru_1201 .sec5 .flexbox li:nth-child(3){
    width: 420px;
    margin-top: -205px;
    margin-left: auto;
}
/* =================
	sec6
================= */
#haru_1201 .sec6{
    margin-bottom: 152px;
    position: relative;
}
#haru_1201 .sec6::before{
    content: "";
    z-index: -1;
    position: absolute;
    background-color: #f4f1ed;
    width: 180vw;
    height: 595px;
    top: 400px;
    left: -80vw;
}
#haru_1201 .sec6 .flexbox{
    width: 750px;
    margin: 0 auto;
    display: block;
}
#haru_1201 .sec6 .flexbox li:first-child{
    width: 600px;
    margin-left: 150px;
    margin-bottom: 69px;
}
#haru_1201 .sec6 .flexbox li:nth-child(2){
    width: 400px;
}
/* =================
	sec7
================= */
#haru_1201 .sec7{
    margin-bottom: 151px;
}
#haru_1201 .sec7 .flexbox{
    width: 920px;
    margin: 0 auto;
    display: block;
}
#haru_1201 .sec7 .flexbox li:first-child{
    width: 450px;
    margin-left: 350px;
}
#haru_1201 .sec7 .flexbox li:nth-child(2){
    width: 420px;
    margin-top: -297px;
}
#haru_1201 .sec7 .flexbox li:nth-child(3){
    width: 350px;
    margin-top: -191px;
    margin-left: auto;
}
/* =================
	sec8
================= */
#haru_1201 .sec8{
    width: 1200px;
    margin: 0 auto 150px;
    position: relative;
}
#haru_1201 .sec8::before{
    content: "";
    z-index: -1;
    position: absolute;
    background-color: #f4f1ed;
    width: 100vw;
    height: 860px;
    top: 80px;
    right: 195px;
}
#haru_1201 .sec8 .flexbox{
    width: 970px;
    margin: 0 auto;
    justify-content: space-between;
}
#haru_1201 .sec8 .flexbox li{
    width: 450px;
}
/* =================
	bnt
================= */
#haru_1201 .btn_1201{
    border: 1px solid #000000;
    width: 430px;
    height: 74px;
    line-height: 71px;
    font-size: 20px;
    margin: 0 auto;
    font-family: bilo, sans-serif;
    font-weight: 300;
    font-style: normal;
    box-sizing: border-box;
}
#haru_1201 .btn_1201 a{
    display: block;
    text-align: center;
    letter-spacing: 0.04em;
}
/* for tablet */
@media only screen
and (min-width: 561px)
and (max-width: 1200px) {
/* =================
	all
================= */
.sp_only{
    display: none !important;
}
/* =================
	ttl
================= */
#haru_1201 .cnt_1201{
    width: calc( 1200 * (100vw / 1200));
    margin: 0 auto calc( 260 * (100vw / 1200));
    margin-top: calc( 81 * (100vw / 1200));
}
#haru_1201 h2{
    font-size: calc( 45 * (100vw / 1200));
    margin-bottom: calc( 31 * (100vw / 1200));
}
#haru_1201 h3{
    font-size: calc( 21 * (100vw / 1200));
    margin-bottom: calc( 78 * (100vw / 1200));
}
/* =================
	sec1
================= */
#haru_1201 .sec1{
    width: calc( 1200 * (100vw / 1200));
    margin: 0 auto calc( 150 * (100vw / 1200));
}
#haru_1201 .sec1::before{
    height: calc( 558 * (100vw / 1200));
    top: calc( 200 * (100vw / 1200));
    right: calc( 320 * (100vw / 1200));
}
#haru_1201 .sec1 .flexbox{
    width: calc( 940 * (100vw / 1200));
}
#haru_1201 .sec1 .flexbox li:first-child{
    width: calc( 400 * (100vw / 1200));
}
#haru_1201 .sec1 .flexbox li:nth-child(2){
    width: calc( 420 * (100vw / 1200));
    margin-top: calc( -145 * (100vw / 1200));
}
#haru_1201 .sec1 .flexbox li:nth-child(3){
    width: calc( 400 * (100vw / 1200));
    margin-top: calc( -185 * (100vw / 1200));
    margin-left: calc( 350 * (100vw / 1200));
}
/* =================
	sec2
================= */
#haru_1201 .sec2{
    width: calc( 960 * (100vw / 1200));
    margin-bottom: calc( 150 * (100vw / 1200));
}
#haru_1201 .sec2 .flexbox li:first-child{
    width: calc( 400 * (100vw / 1200));
    margin-top: calc( 53 * (100vw / 1200));
}
#haru_1201 .sec2 .flexbox li:nth-child(2){
    width: calc( 480 * (100vw / 1200));
}
/* =================
	sec3
================= */
#haru_1201 .sec3{
    width: calc( 1200 * (100vw / 1200));
    margin: 0 auto calc( 148 * (100vw / 1200));
}
#haru_1201 .sec3::before{
    height: calc( 688 * (100vw / 1200));
    top: calc( 78 * (100vw / 1200));
    left: calc( 265 * (100vw / 1200));
}
#haru_1201 .sec3 .flexbox{
    width: calc( 970 * (100vw / 1200));
}
#haru_1201 .sec3 .flexbox li:first-child{
    width: calc( 400 * (100vw / 1200));
}
#haru_1201 .sec3 .flexbox li:nth-child(2){
    width: calc( 450 * (100vw / 1200));
    margin-top: calc( -280 * (100vw / 1200));
}
#haru_1201 .sec3 .flexbox li:nth-child(3){
    width: calc( 380 * (100vw / 1200));
    margin-top: calc( -197 * (100vw / 1200));
    margin-left: calc( 70 * (100vw / 1200));
}
/* =================
	sec4
================= */
#haru_1201 .sec4{
    width: calc( 970 * (100vw / 1200));
    margin-bottom: calc( 151 * (100vw / 1200));
}
#haru_1201 .sec4 .flexbox li{
    width: calc( 450 * (100vw / 1200));
}
/* =================
	sec5
================= */
#haru_1201 .sec5{
    width: calc( 1200 * (100vw / 1200));
    margin: 0 auto calc( 150 * (100vw / 1200));
}
#haru_1201 .sec5::before{
    height: calc( 830 * (100vw / 1200));
    top: calc( 85 * (100vw / 1200));
    right: calc( 210 * (100vw / 1200));
}
#haru_1201 .sec5 .flexbox{
    width: calc( 940 * (100vw / 1200));
}
#haru_1201 .sec5 .flexbox li:first-child{
    width: calc( 420 * (100vw / 1200));
    margin-bottom: calc( 70 * (100vw / 1200));
}
#haru_1201 .sec5 .flexbox li:nth-child(2){
    width: calc( 420 * (100vw / 1200));
}
#haru_1201 .sec5 .flexbox li:nth-child(3){
    width: calc( 420 * (100vw / 1200));
    margin-top: calc( -205 * (100vw / 1200));
}
/* =================
	sec6
================= */
#haru_1201 .sec6{
    margin-bottom: calc( 152 * (100vw / 1200));
}
#haru_1201 .sec6::before{
    height: calc( 595 * (100vw / 1200));
    top: calc( 400 * (100vw / 1200));
}
#haru_1201 .sec6 .flexbox{
    width: calc(750 * (100vw / 1200));
}
#haru_1201 .sec6 .flexbox li:first-child{
    width: calc( 600 * (100vw / 1200));
    margin-left: calc( 150 * (100vw / 1200));
    margin-bottom: calc( 69 * (100vw / 1200));
}
#haru_1201 .sec6 .flexbox li:nth-child(2){
    width: calc( 400 * (100vw / 1200));
}
/* =================
	sec7
================= */
#haru_1201 .sec7{
    margin-bottom: calc( 151 * (100vw / 1200));
}
#haru_1201 .sec7 .flexbox{
    width: calc( 920 * (100vw / 1200));
}
#haru_1201 .sec7 .flexbox li:first-child{
    width: calc( 450 * (100vw / 1200));
    margin-left: calc( 350 * (100vw / 1200));
}
#haru_1201 .sec7 .flexbox li:nth-child(2){
    width: calc( 420 * (100vw / 1200));
    margin-top: calc( -297 * (100vw / 1200));
}
#haru_1201 .sec7 .flexbox li:nth-child(3){
    width: calc( 350 * (100vw / 1200));
    margin-top: calc( -191 * (100vw / 1200));
}
/* =================
	sec8
================= */
#haru_1201 .sec8{
    width: calc( 1200 * (100vw / 1200));
    margin: 0 auto calc( 150 * (100vw / 1200));
}
#haru_1201 .sec8::before{
    height: calc( 860 * (100vw / 1200));
    top: calc( 80 * (100vw / 1200));
    right: calc( 195 * (100vw / 1200));
}
#haru_1201 .sec8 .flexbox{
    width: calc( 970 * (100vw / 1200));
}
#haru_1201 .sec8 .flexbox li{
    width: calc( 450 * (100vw / 1200));
}
/* =================
	bnt
================= */
#haru_1201 .btn_1201{
    width: calc( 430 * (100vw / 1200));
    height: calc( 74 * (100vw / 1200));
    line-height: calc( 71 * (100vw / 1200));
    font-size: calc( 20 * (100vw / 1200));
}
}