@charset "UTF-8";
/*
---------------------------------------
    subpage
---------------------------------------
*/


#wrapper {
    width: 100%;
    min-width: 1450px;
    color: #322825;
    background: url(../img/sub_bg.jpg) top center no-repeat; 
}
@media screen and (max-width: 960px) {
    #wrapper {
        min-width: auto;
        /*background: url(../img/top_bg_sp.jpg) top center no-repeat; */
        background-size:contain; 
        overflow: hidden;
    }
}


#wrapper .kv_area > .inner {
    width: 1450px;
    margin: 0 auto;
    position: relative; 
}
@media screen and (max-width: 960px) {
    #wrapper .kv_area > .inner {
        width: 100%;
        background: none;
        height: auto; 
    }
}

#wrapper .main_contents {
}
@media screen and (max-width: 960px) {
    #wrapper .main_contents {
        padding:  0 3vw 6vw 3vw;
        background-size:cover;
    }
}
#wrapper .main_contents > .inner {
    width: 1450px;
    margin: 0 auto;
    position: relative; 
}
@media screen and (max-width: 960px) {
    #wrapper .main_contents > .inner {
        width: 100%;
        height: auto; 
        padding-top: 20px;
    }
}







/* ▼セクション共通
------------------------------------- */

section {
    margin:  2em auto;
    padding: 2em 0;
    font-size: 2.1rem;
    line-height: 170%;
    position: relative;
}
section:nth-child(1) { margin-top: 0; }
section .ttl {
    position: absolute;
    top: 10px;
    left: 80px;
}
section h2 { 
    margin: 50px 0 50px;
    text-align: center;
    font-family: "Kosugi Maru";
    font-size: 4.5rem;
    font-weight: 900;
    line-height: 0.2em;
    border-bottom: solid #ddd 24px;    
}
section h3 { 
    margin: 30px 0 20px;
    font-family: "Kosugi Maru";
    font-size: 2.7rem;
    font-weight: 700; 
}
section p {
    padding: 1em;
}
section p.em { 
    color: #F52B74;
    font-weight: bold;
}
section img.shadow {
    box-shadow: 0 0 6px 6px rgba(0, 0, 0, 0.05);
}
section .t-wrapper{
    width: 100%;
    margin:  0 auto;
    padding: 2em;
}
section table { 
    width: 100%;
}
section table th {
    padding: 0.5em 1.5em;
    font-weight: bold;
    text-align: right;
    vertical-align: middle;
    border: solid 1px #ccc;
    background: #fafafa;
}
section table td {
    padding: 0.5em;
    text-align: left;
    border: solid 1px #ccc;
}
section ul {
    padding-left: 1em;
}
section ul li {
    list-style: disc;
    text-align: left;
}


@media screen and (max-width: 960px) {

    section {
        width: 100%;
        margin:  0 auto 2em auto;
        padding:  0 0 2em 0;
        font-size: 4vw;
    }
    section:nth-child(1) { margin-top: 0 !important; }
    section .ttl {
        width: 100%;
        position: relative;
        margin: 10vw 0 5vw 0;
        top: auto !important;
        left: auto !important;
        text-align: center;
    }    
    section .ttl img {
        width: 65%;
    }
    section h2 { 
        margin: 3vw 0 5vw !important;
        padding: 0 !important;
        font-size: 6vw !important;
    }
    section h3 { 
        margin: 3vw 0 2vw !important;
        padding: 0 !important;
        font-size: 5vw !important;
    }
    section .in {
        padding: 0 0 5vw !important;   
    }
    section p,
    section .in div {
        width: 100% !important;
        text-align: left;
        padding: 0 !important;
        font-size: 4vw !important;
    }
    section p em {
        font-size: 4.2vw !important;
    }    
    section p img {
        width: 100%;
    }    
    section .t-wrapper{
        width: 100% !important;
        margin:  0 0 10vw 0 !important;
        padding: 0 !important;
    }
    section table th {
        display: block;
        width:100% !important;
        padding: 0.5em !important;
        text-align: left;
        background: #eee;
        border: none !important;
    }
    section table th br {
        display: none;
    }
    section table td {
        display: block;
        width:100% !important;
        padding: 0.5em !important;
        border: none !important;
        margin-bottom: 1em;
    }    
}






/* ▼セクションごと
------------------------------------- */

section#intro h2 { border-color: #DFF3DA; }
section#intro h3 {
    color: #81BC26;
    padding:  0 220px 0 530px;
}
section#intro p {
    padding:  0 220px 1em 530px;
}
section#intro p#greeting {
    background: url(../img/sub_intro_img2.jpg) no-repeat 180px 0;
}


section#life h2 { border-color: #F6E2EE; }
section#life .in {
    padding-top: 30px;
    text-align: center;
}
section#life .in#feature {
    background: url(../img/sub_life_feature.jpg) no-repeat 180px 30px;
}
section#life .in#feature h3 {
    padding:  0 220px 0 530px;
    text-align: left !important;
    font-family: "Kosugi Maru";
    font-size: 3rem;
    font-weight: 700;    
    color: #81BC26;
}
section#life .in#feature p {
    padding:  0 220px 2.2em 530px;
    text-align: left !important;
}
section#life .in#feature p em {
    display: block;
    margin-bottom: 10px;
    font-size: 2.3rem;
    font-weight: bold;
    color: #C44146;
}

section#life .in#azukari h3 {
    padding:  0 300px;
    text-align: left !important;
    font-family: "Kosugi Maru";
    font-size: 3rem;
    font-weight: 700;    
    color: #81BC26;
}
section#life .in#azukari div,
section#life .in#azukari p {
    padding:  0 300px 1em;
    text-align: left !important;
}


section#invite h2 { border-color: #EEF2CF; padding-top: 100px; margin-bottom: 2em;}
section#invite h3 {
    padding:  0 300px;
    font-family: "Kosugi Maru";
    font-size: 3.5rem;
    font-weight: 700;    
    color: #81BC26;
}
section#invite h4 {
    margin:  0 300px 0.5em;
    padding: 0.5em;
    border: solid 1px #ccc;
    background: #9ace5f;
    color: #fff;    
    line-height: 100%;
    font-family: "Kosugi Maru";
    font-size: 2.3rem;
    font-weight: 700;   

}
section#invite .in div,
section#invite .in p {
    padding:  0 300px 2em;
    text-align: left !important;
}
section#invite .in p em {
    display: block;
    margin: 20px 0 10px;
    font-size: 2.3rem;
    font-weight: bold;
    color: #C44146;
}
section#invite li {
    list-style: numeric;
}
section#invite .in#sansaiji {
    background: url(../img/sub_invite_img1.jpg) no-repeat 950px 220px;
}

section#invite .in#faq  div.q {
    padding:  0 300px 1em;
    font-size: 2.5rem;
    background: url(../img/ico_q.png) no-repeat 230px 0;
}
section#invite .in#faq  div.a {
    margin-bottom: 2em;
    padding:  0 310px 2em;
    border-bottom: dotted 2px #ccc;
    font-size: 2rem;
    background: url(../img/ico_a.png) no-repeat 240px 0;
}


section#nursery .ttl { left:20px; }
section#nursery h2 { border-color: #F5E4D0; padding: 50px 300px 0 300px; font-size: 4rem;}
section#nursery h2#nursery-h2 { padding: 50px 0 0 280px; }
section#nursery h3 {
    padding:  0 300px 0 400px;
    font-family: "Kosugi Maru";
    font-size: 3.5rem;
    font-weight: 700;    
    color: #81BC26;
}
section#nursery .in#nursery-in1 {
    background: url(../img/sub_nursery_img1.jpg) no-repeat 950px 380px;
}
section#nursery .in#nursery-in2 {
    background: url(../img/sub_nursery_img2.jpg) no-repeat 950px 380px;
}
section#nursery .in p {
    padding:  0 300px 2em 400px;
    text-align: left !important;
}
section#nursery .in p#nursery-p1 {
    padding-left: 530px;
}
section#nursery .in p em {
    display: block;
    margin: 20px 0 10px;
    padding-left: 50px;
    background: url(../img/ico_heart.jpg) no-repeat 0 5px;
    font-size: 2.3rem;
    font-weight: bold;
    color: #EA5662;
}






section#recruit .ttl { left:40px; }
section#recruit h2 { border-color: #D6F1E0; padding: 50px 300px 0 300px; font-size: 4rem;}
section#recruit h2#recruit-h2 { padding: 50px 0 0 200px; font-size: 3.6rem;}
section#recruit h3 {
    padding:  0 300px 0 300px;
    font-family: "Kosugi Maru";
    font-size: 3.5rem;
    line-height: 1.5em;
    font-weight: 700;    
    color: #81BC26;
}
section#recruit .in#recruit-in1 {
    background: url(../img/sub_recruit_img1.jpg) no-repeat 80px 80px, url(../img/sub_recruit_img2.jpg) no-repeat 920px 1020px;
}
section#recruit .in div,
section#recruit .in p {
    padding:  0 300px 2em 300px;
    text-align: left !important;
}
section#recruit .in p#recruit-p1 {
    padding-left: 530px;
}
section#recruit .in th span {
    display: inline-block;
    padding: 0 0 0 10px;
    font-size: 1.4rem;
    font-weight: normal;
}
section#recruit .in p em {
    display: block;
    margin: 20px 0 10px;
    font-size: 2.3rem;
    font-weight: bold;
    color: #EA5662;
}


section#privacy h2 { border-color: #DFF3DA; }
section#privacy h4 {
    padding: 0.5em;
    font-weight: bold;
    background: #eee;
}
section#privacy ul,
section#privacy p {
    padding-bottom: 30px;
}
section#privacy div {
    margin-bottom: 30px;
    padding:  0 220px;
}




@media screen and (max-width: 960px) {

    /* ▼セクションごと（スマホ o.w. ）
    ------------------------------------- */
    section#intro p#greeting {
        padding-top: 58vw !important;
        background: url(../img/sub_intro_img2.jpg) no-repeat center 0;
        background-size: 50vw; 
    }

    section#life .in#feature {
        background: none;
    }
    section#life .in#feature p {
        padding-bottom: 5vw !important;
    }
    section#invite h4 {
        margin:  5vw 0 3vw 0;
        padding: 0.5em;
        font-size: 4vw;
    }
    section#invite .in#sansaiji {
        background: none;
    }
    section#invite .in#faq  div.q {
        padding-left: 9vw !important;
        background: url(../img/ico_q.png) no-repeat 0 0;
        background-size:8vw; 
    }
    section#invite .in#faq  div.a {
        padding-left: 9vw !important;
        background: url(../img/ico_a.png) no-repeat 0 1vw;
        background-size:8vw; 
        padding-bottom: 5vw !important; 
    }

    section#nursery h2 { line-height: 1.1em;}
    section#nursery .in#nursery-in1,
    section#nursery .in#nursery-in2,
    section#recruit .in#recruit-in1 {
        background: none;
    }
    section#recruit h2#recruit-h2 { line-height: 1.1em;}

    section#privacy {
        padding-top: 4em;
    }
    section#privacy ul{
        padding:0.5em 0.5em 0.5em 1em !important;
    }
    section#privacy p{
        padding:0.5em !important;
    }    
    section#privacy div {
        padding:  0;
    }
}

