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

body {
font-size: 16px;
line-height: 1.5;
font-family: 'Noto Sans JP', sans-serif;
}
@media (max-width:576px) {
    body { font-size: 14px; }
}
@media (max-width: 1199px) {
.container { max-width: 100%; }
}
.logo { width:255px; }

.smp-cta { background: #fff; border-top: 1px solid #ccc; position: fixed; bottom: 0; z-index: 2; }
.cta { width: 45%; }

.video {
  position:relative;
  width:100%;
  padding-top:56.25%;
}
.video iframe {
  position:absolute;
  top:0;
  right:0;
  width:100%;
  height:100%;
}


/*block-01*/
#block-01 {
background: #e1bda1;
}
#block-01 .container {
padding-left: 0;
padding-right: 0;
position: relative;
}
#block-01 .box-title {
background: rgba(51,51,51,0.9);
padding: 3rem;
position: absolute;
right: 15px;
bottom: -10%;
z-index: 1;
}
#block-01 .box-title h1 {
font-size: 1.875rem;
color: #fff;
margin: 0;
}
#block-01 .box-title h1 span {
font-family: 'Noto Serif JP', serif;
font-size: 2em;
font-weight: 600;
}
#block-01 .box-title h1 span:first-letter {
font-size: 1.5em;
}
#block-01 .box-title p {
color: #ec94ba;
font-size: 2rem;
text-align: center;
border: 1px solid #fff;
padding: 3.625rem 1rem;
margin: 2.5rem 0 0 0;
}
@media (max-width:1199px) {
    #block-01 .box-title h1 { font-size: 1.7rem; }
    #block-01 .box-title p { font-size: 1.7rem; }
}
@media (max-width:991px) {
    #block-01 .box-title {
    width: 80%;
    padding: 3rem;
    right: 0;
    left: 0;
    margin: 0 auto 30px auto;
    bottom: -25%;
    }
    #block-01 .box-title h1 {
    font-size: 2.7rem;
    text-align: center;
    }
    #block-01 .box-title h1 span {
    font-size: 1.7em;
    }
    #block-01 .box-title p {
    font-size: 2.7rem;
    padding: 2.7rem 1rem;
    }
}
@media (max-width:767px) {
    #block-01 .box-title {
    padding: 3rem;
    }
    #block-01 .box-title h1 {
    font-size: 1.7rem;
    }
    #block-01 .box-title p {
    font-size: 1.7rem;
    padding: 1.7rem 1rem;
    }
}
@media (max-width:575px) {
    #block-01 .box-title {
    padding: 2rem;
    bottom: -25%;
    }
    #block-01 .box-title h1 {
    font-size: 1.2rem;
    }
    #block-01 .box-title p {
    font-size: 1rem;
    margin-top: 1.7rem;
    padding: 1.5rem 1rem;
    }
}
@media (max-width:425px) {
    #block-01 .box-title {
    padding: 1.5rem;
    bottom: -25%;
    }
    #block-01 .box-title h1 {
    font-size: 1rem;
    }
    #block-01 .box-title p {
    font-size: 1rem;
    margin-top: 1rem;
    padding: 1rem 0.5rem;
    }
}


/*block-02*/
#block-02 {
background: #d2d5ce;
}
#block-02 .container {
padding-left: 0;
padding-right: 0;
position: relative;
}
#block-02 div.sentence {
position: absolute;
top: 50%;
transform: translateY(-50%);
right: 15px;
width: 60%;
line-height: 2;
}
@media (max-width:991px) {
    #block-02 {
    background: #fff;
    }
    #block-02 div.sentence {
    position: static;
    width: 100%;
    transform: none;
    top: auto;
    right: auto;
    padding: 15px;
    margin-top: 14rem;
    }
}
@media (max-width:850px) {
    #block-02 div.sentence { margin-top: 11rem; }
}
@media (max-width:767px) {
    #block-02 div.sentence { margin-top: 12rem; }
}
@media (max-width:425px) {
    #block-02 div.sentence { margin-top: 5rem; padding: 15px 15px 25px 15px; }
}


/*block-03*/
#block-03 .container {
padding-left: 100px;
padding-right: 100px;
}
#block-03 .box-img {
position: relative;
}
#block-03 .box-img .sentence {
position: absolute;
top: 2.5rem;
left: 0;
width: 50%;
}
#block-03 .box-img .sentence h2 {
background: #d77da5;
color: #fff;
font-size: 1rem;
padding: 1rem 1rem 3rem 1rem;
margin-left: -2rem;
}
#block-03 .box-img .sentence h2 span {
font-size: 1.5rem;
display: inline-block;
margin-top: 0.5em;
}
#block-03 .box-img .sentence p {
text-shadow: 0 0 20px #fff;
line-height: 1.875;
}
@media (max-width:1199px) {
    #block-03 .container {
    padding-left: 15px;
    padding-right: 15px;
    }
    #block-03 .box-img .sentence h2 { margin-left: -15px; }
}
@media (max-width:991px) {
    #block-03 { background: #f1f2f1; }
    #block-03 .container {
    padding-left: 0;
    padding-right: 0;
    }
    #block-03 .box-img .sentence {
    position: static;
    top: 0;
    left: 0;
    width: 100%;
    }
    #block-03 .box-img .sentence h2 {
    text-align: center;
    font-size: 1rem;
    padding: 1rem;
    margin: -30px 15px 0 15px;
    }
}


/*block-04*/
#block-04 .container {
padding-left: 100px;
padding-right: 100px;
padding-top: 2.5rem;
}
#block-04 .box-img {
position: relative;
}
#block-04 .box-img .sentence {
position: absolute;
top: -2.5rem;
left: 0;
display: flex;
flex-direction: column;
/*align-items: flex-end;*/
width: 100%; /*IE対策*/
}
#block-04 .box-img .sentence h2 {
background: #d77da5;
color: #fff;
font-size: 1rem;
padding: 1rem 1rem 3rem 1rem;
width: 50%;
margin: 0 -2rem 0 0;
align-self: flex-end; /*IE対策*/
}
#block-04 .box-img .sentence h2 span {
font-size: 1.5rem;
display: inline-block;
margin-top: 0.5em;
}
#block-04 .box-img .sentence p {
text-shadow: 0 0 20px #fff;
line-height: 1.875;
}
@media (max-width:1199px) {
    #block-04 .container {
    padding-left: 15px;
    padding-right: 15px;
    }
    #block-04 .box-img .sentence h2 { margin: 0 -15px 0 0; }
}
@media (max-width:991px) {
    #block-04 { background: #FDF2F8/*#f1bbdd*/; }
    #block-04 .container {
    padding-left: 0;
    padding-right: 0;
    padding-top: 0;
    }
    #block-04 .box-img .sentence {
    position: static;
    top: 0;
    left: 0;
    width: 100%;
    display: block;
    }
    #block-04 .box-img .sentence h2 {
    text-align: center;
    font-size: 1rem;
    padding: 1rem;
    width: auto;
    margin: -30px 15px 0 15px;
    }
}


/*block-05*/
#block-05 .container {
padding-left: 100px;
padding-right: 100px;
padding-top: 2.5rem;
}
#block-05 .box-img {
position: relative;
}
#block-05 .box-img .sentence {
position: absolute;
top: -2.5rem;
left: 0;
width: 50%;
}
#block-05 .box-img .sentence h2 {
background: #d77da5;
color: #fff;
font-size: 1rem;
padding: 1rem 1rem 3rem 1rem;
margin-left: -2rem;
}
#block-05 .box-img .sentence h2 span {
font-size: 1.5rem;
display: inline-block;
margin-top: 0.5em;
}
#block-05 .box-img .sentence p {
text-shadow: 0 0 20px #fff;
line-height: 1.875;
}
@media (max-width:1199px) {
    #block-05 .container {
    padding-left: 15px;
    padding-right: 15px;
    }
    #block-05 .box-img .sentence h2 { margin-left: -15px; }
}
@media (max-width:991px) {
    #block-05 { background: #fff; }
    #block-05 .container {
    padding-left: 0;
    padding-right: 0;
    padding-top: 0;
    }
    #block-05 .box-img .sentence {
    position: static;
    top: 0;
    left: 0;
    width: 100%;
    }
    #block-05 .box-img .sentence h2 {
    text-align: center;
    font-size: 1rem;
    padding: 1rem;
    margin: -30px 15px 0 15px;
    }
}


/*block-06*/
#block-06 {
text-align: center;
padding: 8rem 0 4rem 0;
}
#block-06 h2 {
font-size: 1.875rem;
font-weight: 700;
}
#block-06 p {
line-height: 2;
margin: 1.5rem 0 0 0;
}
@media (max-width:991px) {
#block-06 { padding: 8rem 1rem 4rem 1rem; }
}
@media (max-width:425px) {
#block-06 h2 { font-size: 1.3rem; }
}


/*block-07*/
#block-07 .box-reason {
width:33.3%;
margin-bottom: 7.5rem;
}
#block-07 .box-reason img {
margin-bottom: -1.5rem;
width: 100%;
}
#block-07 .box-reason h3 {
font-size: 1.25rem;
text-align: center;
margin-bottom: 1rem;
line-height: 2;
font-weight: 700;
}
#block-07 .box-reason h3 span {
display: inline-block;
padding: 1rem;
border: 1px solid #000;
font-size: 1rem;
background: #fff;
margin-bottom: 2rem;
line-height: 1;
}
#block-07 .box-reason p {
line-height: 2;
}
@media (max-width:991px) {
    #block-07 .box-reason { width:100%; margin-bottom: 4rem; }
}
@media (max-width:425px) {
    #block-07 .box-reason h3 { font-size: 1.2rem; line-height: 1.5; }
}


/*block-08*/
#block-08 {
margin-bottom: 7.5rem;
}
#block-08 h2 {
font-size: 1.875rem;
margin: 0;
font-weight: 700;
}
#block-08 .box-voice {
margin-bottom: 3rem;
}
#block-08 .box-voice h3 {
font-size: 1.25rem;
margin: 0 0 1rem 0;
font-weight: 700;
}
#block-08 .box-voice p {
font-size: 0.875rem;
line-height: 2;
margin-bottom: 0;
}
@media (max-width: 767px) {
    #block-08 { margin-bottom: 4rem; }
    .small-border { width:80px; margin: 3rem auto; border-bottom: 2px solid #666; }
}
@media (max-width: 425px) {
    #block-08 h2 {
        font-size: 1.3rem;
    }
    #block-08 .box-voice h3 {
    line-height: 1.5;
    }
}


/*block-09*/
#block-09 {
padding-bottom: 7.5rem;
}
#block-09 h2 {
font-size: 1.875rem;
margin: 1em 0 0 0;
font-weight: 700;
}
#block-09 p {
line-height: 2;
font-size: 0.875rem;
margin: 0;
}
#block-09 .box-interview {
width:33.3%;
}
#block-09 .box-interview p {
padding: 1rem;
}
.w-80 { width:80%; }
@media (max-width:991px) {
    #block-09 .box-interview {
    width:100%;
    }
}
@media (max-width: 767px) {
    #block-09 { padding-bottom: 4rem; }
}
@media (max-width: 425px) {
    #block-09 h2 { font-size: 1.3rem; text-align: center; }
}


/*block-10 form*/
#block-10 {
background: #e3d4dd;
padding: 3rem 0;
}
#block-10 .greeting {
background: #d77da5;
width: 100%;
padding: 1rem;
text-align: center;
font-size: 1.25rem;
line-height: 1.75;
margin-top: -6rem;
}
#block-10 .greeting span {
font-size: 0.75em;
}
#block-10 h2 {
font-size: 1.5rem;
color: #d35c76;
margin-bottom: 1rem;
}
@media (max-width:991px) {
    #block-10 .greeting { font-size: 1rem; }
}
@media (max-width:767px) {
    #block-10 .greeting {
    text-align: left;
    font-size: 0.8rem;
    margin-top: -6rem;
    }
}

span.asterisk {
display: inline-block;
margin-right: 0.5rem;
color: red;
}

form#entry-form label {
font-size: 0.8rem;
}

form#entry-form .form-control {
background-color: transparent;
border: 1px solid #fff;
}

form#entry-form .btn-primary {
    color: #fff;
    background-color: #993366;
    border-color: #993366;
}


/*footer*/
footer {
background: #d77da5;
color: #fff;
}
footer p {
font-size: 1.125rem;
}
footer p span {
font-size: 0.7em;
}
#copyright {
background: #fff;
color: #d77da5;
}
footer #copyright p {
font-size: 0.8rem;
padding: 1rem;
}
@media (max-width:992px) {
    footer #copyright p { padding: 1rem 1rem 80px 1rem; }
}

