@charset "UTF-8";

* { margin: 0; padding: 0}
a { text-decoration: none; display: block; color:#333; cursor: pointer;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block}
blockquote, q {quotes: "" ""}
blockquote:before, blockquote:after,q:before, q:after {content: ""}
button { border: 0; cursor: pointer;background: transparent;}
input, select{ /*-webkit-appearance: none; -moz-appearance: none; appearance: none; border-radius: 0*/}
img { border: 0; display: block}
ol, ul { list-style:none}

table { border-collapse:collapse; border-spacing:0}

body {
    font-family: "Myriad Pro", "Lucida Grande", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
    font-size: 12px;
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    background-color: #f7f7f4;
}
.clear-fix:after {
    content: "";
    clear: both;
    display: block;
    height: 0;
    visibility: hidden ;
}


a {
    -webkit-transition: all .3s;
    transition: all .3s;
}
a:hover {
	opacity:0.7;
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
}


.header, .footer, .content {
    max-width: 980px;
    min-width: 10px;
    max-height: 100%;
    min-height: 10%;
    width: 100%;
    height: auto;
    margin: 0 auto;
    position: relative;
}
.content_wide {
    max-width: 1200px;
    min-width: 10px;
    max-height: 100%;
    min-height: 10%;
    width: 100%;
    height: auto;
    margin: 0 auto;
    position: relative;
}
.inner {
    max-width: 980px;
    height: auto;
    margin: 0 auto;
    position: relative;
    min-width: 980px;
	text-align: left;
}

.header img, .content img, .footer img {
    width: 100%;
    height: auto;
}

.mt10 {
    margin-top: 10px;
}
.mt20 {
    margin-top: 20px;
}
.mt30 {
    margin-top: 30px;
}
.mt40 {
    margin-top: 40px;
}
.mt60 {
    margin-top: 60px;
}
.mt80 {
    margin-top: 80px;
}


.flex {
    display: -webkit-flex;
    display:-ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.flex_center {
    display: -webkit-flex;
    display:-ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;        
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}



/* ヘッダー
------------------------------------------------------------------------------- */
.header_block:nth-child(1) {
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
} 
.header_block:nth-child(2) {
    -ms-flex-preferred-size: 27.1%;
    flex-basis: 27.1%;
} 
.header_block:nth-child(3) {
    -ms-flex-preferred-size: 29.7%;
    flex-basis: 29.7%;
} 
.header_block:nth-child(4) {
    -ms-flex-preferred-size: 18.2%;
    flex-basis: 18.2%;
} 


/* contact
------------------------------------------------------------------------------- */
.contact {
    background-image: url("../images/img_10.png");
    background-size: cover;
    height: 322px;
}
.contact.ptn2 {
    background-image: url("../images/img_10_2.png");
    height: 348px;
    margin-top: -17px;
}
.contact div img {
    width: 97%;
    margin-left: 1.5%;
    padding-top: 48px;
}


/* onayami
------------------------------------------------------------------------------- */
.onayami {
    background-image: url("../images/img_11.png");
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat;
    height: 1206px;
}


/* before after
------------------------------------------------------------------------------- */
.before_after {
    background-image: url("../images/img_13.png");
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat;
    height: 1467px;
}


/* 3 reason
------------------------------------------------------------------------------- */
.reason3 {
    background-image: url("../images/img_reason3_b.png");
    background-repeat: repeat;
    padding: 85px 0;
    margin-top: -50px;
    z-index: -1;
}
.reason3 .content {
    width: 79%;
}
.reason3_title {
    margin-top: 30px;
}
.reason3 .flex {
    padding: 15px 0px 10px 40px; 
}
.reason3_block {
    margin: 0 2%;
}
.reason3_block:nth-child(1) {
    -ms-flex-preferred-size: 41%;
    flex-basis: 41%;
}
.reason3_block:nth-child(2) {
    -ms-flex-preferred-size: 51%;
    flex-basis: 51%;
}
.reason3_flexrev .reason3_block:nth-child(1) {
    -ms-flex-preferred-size: 51%;
    flex-basis: 51%;
    margin-left: 5px;
}
.reason3_flexrev .reason3_block:nth-child(2) {
    -ms-flex-preferred-size: 40%;
    flex-basis: 40%;
}
.reason3_flexrev .reason3_block:nth-child(2) img {
    margin-left: -40px;
}
.reason3_block--text {
    background-image: url("../images/img_reason3_4.png");
    background-repeat: no-repeat;
    background-size: contain;
    margin-top: -25px;
}
.reason3_block--text p {
    padding: 80px 60px 10px 35px;
    font-size: 20px;
    line-height: 1.7;
    color: #333;
}
.reason3_block--text p span {
    color: #E85658;
    font-weight: bold;
}


/* NHK
------------------------------------------------------------------------------- */
.nhk {
    background-image: url("../images/img_reason3_9.png");
    background-size: contain;
    background-position: center top;
    background-repeat: no-repeat;
    margin-top: -50px;
    padding-top: 440px;
    padding-bottom: 60px;
}
.nhk h2 {
    margin-bottom: 30px;
}
.nhk .content {
    width: 65%;
}


/* point
------------------------------------------------------------------------------- */
.point {
    background-image: url("../images/img_point_b.png");
    background-repeat: repeat;
    padding: 85px 0 30px 0;
    margin-top: -50px;
    z-index: -1;
}
.point .content {
    width: 85%;
}
.point .content h2 {
    padding: 0 30px;
}
.point_title {
    margin-top: 30px;
}
.point .flex {
    padding: 15px 30px 10px 30px; 
}
.point_block {
    margin: 0;
}
.point_flex--1 .point_block {
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
}
.point_flex--2 {
    padding-left: 12% !important; 
    margin-bottom: -58px;
}
.point_flex--2 .point_block:nth-child(1) {
    -ms-flex-preferred-size: 28%;
    flex-basis: 28%;
}
.point_flex--2 .point_block:nth-child(2) {
    -ms-flex-preferred-size: 70%;
    flex-basis: 70%;
}
.point_flex--3 {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.point_flex--3 .point_block {
    padding: 10px 2.5%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.point_flex--3 .point_block:nth-child(1) {
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
    padding-left: 0;
}
.point_flex--3 .point_block:nth-child(2) {
    -ms-flex-preferred-size: 31%;
    flex-basis: 31%;
}
.point_flex--3 .point_block:nth-child(3) {
    -ms-flex-preferred-size: 17%;
    flex-basis: 17%;
}
.point_flex--3 .point_block:nth-child(4) {
    -ms-flex-preferred-size: 27%;
    flex-basis: 27%;
    padding-right: 0;
}
.point_flex--5 .point_block:nth-child(1) {
    -ms-flex-preferred-size: 81%;
    flex-basis: 81%;
}
.point_flex--5 .point_block:nth-child(2) {
    -ms-flex-preferred-size: 19%;
    flex-basis: 19%;
}
.point_block p {
    padding: 5px 0px 10px 0px;
    font-size: 21px;
    line-height: 1.7;
    color: #333;
}
.point_flex--5 .point_block_president {
    font-size: 13px;
    text-align: center;
}
.point_block p span {
    color: #C60C08;
    font-weight: bold;
}


/* lmsg
------------------------------------------------------------------------------- */
.lmsg {
    background-image: url("../images/img_reason3_b.png");
    background-repeat: repeat;
    z-index: -1;
    padding: 85px 0 50px 0;
    margin-top: -50px;
}
.lmsg p:nth-child(1) {
    text-align: center;
    font-size: 17px;
    color: #493200;
    padding-left: 1em;
    text-indent: -1em;
    margin-bottom: 10px;
}
.lmsg p:nth-child(2) {
    text-align: center;
    font-size: 19px;
    font-weight: bold;
    color: #3E2F00;
    text-shadow: 0 0.1rem 0.2rem #DED2C3;
    background-color: #F6F9F5;
    border-radius: 7px;
    padding: 7px 10px;
    margin: 0 80px;
}


/* footer
------------------------------------------------------------------------------- */
footer {
    padding-top: 4em;
    padding-bottom: 4em;
}
.co-info1 p {
    color: #666;
    font-size: 1.6em;
    margin-bottom: 1em;
}
.co-info2{
    color: #666;
    font-size: 1.4em;
}
.co-info1 div {
    background: #eee;
    padding: 4em 6em;
    margin-bottom: 1em;
}
.co-info2 dt {
    clear:both;
    float:left;
    font-weight:700;
    padding:10px 0 10px 2px;
    width:25%;white-space:nowrap;
}
.co-info2 dd {
    border-bottom:1px solid rgba(0,0,0,.15);
}
.co-info2 dd a {
    color: #666;
}
.co-info2 dd {
    padding:10px 0 10px 27%;
}
.co-info2 dd:last-child {
    border-bottom:none;
}

footer nav a {
    color: #538DC1;
    font-size: 1.2em;
    margin: 1em 0;
}
footer .copy {
    font-size: 1.2em;
    margin-top: 3em;
    text-align: center;
    color: #999;
}






@media screen and (max-width: 1200px) {
    
    /* 3 reason
    ------------------------------------------------------------------------------- */
    .reason3_block--text p {
        padding: 6vw 5vw 4vw 4vw;
        font-size: 1.65vw;
        line-height: 1.7;
    }
    .reason3_flexrev .reason3_block:nth-child(2) img {
        margin-left: -15px;
    }
    
    
    /* NHK
    ------------------------------------------------------------------------------- */
    .nhk {
        margin-top: -50px;
        padding-top: 36vw;
    }
    .nhk iframe {
        width: 64vw;
        height: 35vw;
    }
    
    
    /* point
    ------------------------------------------------------------------------------- */
    .point_block p {
        font-size: 1.8vw;
    }
    .point_flex--5 .point_block_president {
        font-size: 1.1vw;
    }
    
    /* lmsg
    ------------------------------------------------------------------------------- */
    .lmsg {
        padding: 10vw 0 5vw 0;
        margin-top: -5vw;
    }
    .lmsg p:nth-child(1) {
        font-size: 1.5vw;
        padding-left: 2em;
        text-indent: -2em;
        margin-bottom: 3vw;
    }
    .lmsg p:nth-child(2) {
        font-size: 1.6vw;
        font-weight: bold;
        color: #3E2F00;
        padding: 1vw 2vw;
        margin: 0 6vw;
    }
}


@media screen and (max-width: 980px) {
    
    /* contact
    ------------------------------------------------------------------------------- */
    .contact {
        height: 44vw;
    }
    .contact.ptn2 {
        margin-top: -3vw;
        background-position: 30% top;
        height: 46vw;
   }
    .contact div img {
        padding-top: 10vw;
    }
    
    
    /* onayami
    ------------------------------------------------------------------------------- */
    .onayami {
        background-size: 130vw;
        height: 132vw;
    }
    
    
    /* before after
    ------------------------------------------------------------------------------- */
    .before_after {
        background-size: 128vw;
        height: 157vw;
    }
    
    /* NHK
    ------------------------------------------------------------------------------- */
    .nhk {
        background-size: 130vw;
        margin-top: -60px;
        padding-top: 48vw;
        padding-bottom: 40px;
    }
    .nhk .content {
        width: 90%;
    }
    .nhk iframe {
        width: 90vw;
        height: 50vw;
    }
    
    
    /* lmsg
    ------------------------------------------------------------------------------- */
    .lmsg p:nth-child(2) {
        margin: 0 14vw;
    }
}


@media screen and (min-width: 768px) {
    
    .sp{ display:none !important;}
}

@media screen and (min-width: 400px) and (max-width: 767px) {
}

@media screen and (max-width: 767px) {
    
    .pc{ display:none !important;}
    
    /* ヘッダー
    ------------------------------------------------------------------------------- */
    .header {
        margin-bottom: 10px;
    }
    .header_block:nth-child(1) {
        -ms-flex-preferred-size: 50%;
        flex-basis: 52%;
    } 
    .header_block:nth-child(2) {
        -ms-flex-preferred-size: 50%;
        flex-basis: 48%;
    } 
    .header_block:nth-child(3) {
        -ms-flex-preferred-size: 50%;
        flex-basis: 59%;
        margin-left: 3%;
    } 
    .header_block:nth-child(4) {
        -ms-flex-preferred-size: 50%;
        flex-basis: 35%;
        margin-right: 3%;
    } 

    
    /* MV
    ------------------------------------------------------------------------------- */
    .mv_block {
        -ms-flex-preferred-size: 33%;
        flex-basis: 33%;
    }
    
    
    /* contact
    ------------------------------------------------------------------------------- */
    .contact {
    }

    
    /* 3 reason
    ------------------------------------------------------------------------------- */
    .reason3 {
        padding: 85px 0;
        margin-top: -50px;
    }
    .reason3 .content {
        width: 95%;
    }
    .reason3_title {
        margin-top: 30px;
    }
    .reason3 .flex {
        padding: 2vw 0vw;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -ms-flex-wrap: nowrap;
        flex-wrap:nowrap;
    }
    .reason3 .reason3_flexrev {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;            
    }
    .reason3_block {
        margin: 0 2%;
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    }
    .reason3_block--img {
        padding: 0 1vw 0 3vw;
    } 
    .reason3_flexrev .reason3_block:nth-child(2) img {
        margin-left: 0;
        margin-top: 10px;
    }
    .reason3_block--text {
        margin-top: 10px;
        margin-right: 1vw;
        margin-left: 3vw;
        background-size: contain;
        height: 72vw;
    }
    .reason3_flexrev .reason3_block--text {
        
    }
    .reason3_block--text p {
        padding: 18vw 6vw 18vw 9vw;
        font-size: 3.8vw;
        line-height: 1.8;
        color: #333;
    }

    
    /* point
    ------------------------------------------------------------------------------- */
    .point {
        margin-top: -50px;
    }
    .point .content {
        width: 95%;
    }
    .point .content h2 {
        padding: 0 5px;
    }
    .point_title {
        margin-top: 9vw;
    }
    .point .flex {
        padding: 15px 10px 10px 10px; 
    }
    .point_flex--1 .point_block {
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    }
    .point_flex--2 {
        padding-left: 20px !important; 
        margin-bottom: -11vw !important;
        padding-top: 5vw !important;
        padding-bottom: 0 !important;
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;            
        -ms-flex-wrap: nowrap;
        flex-wrap:nowrap;
    }
    .point_flex--2 .point_block:nth-child(1) {
        -ms-flex-preferred-size: 10%;
        flex-basis: 10%;
        padding: 0 25vw;
    }
    .point_flex--2 .point_block:nth-child(2) {
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    }
    .point_flex--3 {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
    .point_flex--3 .point_block {
        padding: 10px 2.5%;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }
    .point_flex--3 .point_block:nth-child(1) {
        -ms-flex-preferred-size: 45%;
        flex-basis: 45%;
        padding-left: 0;
    }
    .point_flex--3 .point_block:nth-child(2) {
        -ms-flex-preferred-size: 55%;
        flex-basis: 55%;
    }
    .point_flex--3 .point_block:nth-child(3) {
        -ms-flex-preferred-size: 28%;
        flex-basis: 28%;
        margin-left: 4vw
    }
    .point_flex--3 .point_block:nth-child(4) {
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
        padding-right: 0;
        padding-right: 3vw;
    }
    .point_flex--4 .point_block:nth-child(1) {
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
        margin-top: 3vw;
        margin-bottom: 5vw;
    }
    .point_flex--4 .point_block:nth-child(2) {
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    }
    .point_flex--5 .point_block:nth-child(1) {
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    }
    .point_flex--5 .point_block:nth-child(2) {
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
        padding: 4vw 15vw 0 15vw;
    }
    .point_block p {
        padding: 5px 0px 10px 0px;
        font-size: 4vw;
        line-height: 1.7;
    }
    .point_flex--5 .point_block_president {
        font-size: 3.7vw;
    }
    
    
    /* lmsg
    ------------------------------------------------------------------------------- */
    .lmsg {
        padding: 16vw 0 8vw 0;
        margin-top: -8vw;
    }
    .lmsg p:nth-child(1) {
        font-size: 3.7vw;
        padding-left: 2em;
        text-indent: -2em;
        margin-bottom: 5vw;
    }
    .lmsg p:nth-child(2) {
        font-size: 3.8vw;
        font-weight: bold;
        color: #3E2F00;
        padding: 2.5vw 4vw;
        margin: 0 5vw;
    }
    
    
    /* footer
    ------------------------------------------------------------- */
    footer {
        padding-top: 1em;
        padding-bottom: 3em;
    }
    .co-info1 {
        margin: 3em 0;
    }
    .co-info1 p{
        font-size: 1.3em;
    }
    .co-info2{
        font-size: 1.2em;
    }
    .co-info1 div {
        padding: 2em 1em;
    }
    .co-info2 dt {
        width:40%;
    }
    
}

    
