@charset "utf-8";
body {
    font: normal 18px/1.7 "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
    text-align: left;
    color:#333;
    text-align: justify;
    overflow-x: hidden;
}

body .sp-item {
    display: none !important; }
body .pc-item {
    display: block !important; }

@media screen and (max-width: 640px) {
    body {
        min-width: inherit; 
        height:100%; 
    }
    body .sp-item {
        display: block !important; }
    body .pc-item {
        display: none !important; } 
    body .sp-item img {
        width:100%;}
}

@media screen and (max-width: 640px) {
    .sp img{
        max-width:90%;	
    }
    .sp02 img{
        max-width:100%;	
    }
    .sp03 img{
        max-width:70%;	
    }
}

.fl_left {
    float: left;
}
.fl_right {
    float: right;
}
.ov_hd {
    overflow: hidden;
}
.bg_none {
    background-image: none!important;
}
a.rollover:hover {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -ms-filter: "alpha( opacity=70 )";
}
.rollover:hover {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -ms-filter: "alpha( opacity=70 )";
}
.center {
    text-align: center;
}
.right {
    text-align:right;
}
.line_0 {
    line-height: 0;
}
.zindex {
    z-index: 200;
}
input[type=radio] {
    width: 15px;
    height: 15px;
    vertical-align: middle;
}
input[type=image]:hover{
    opacity: 0.7;
    filter: alpha(opacity=70);
    -ms-filter: "alpha( opacity=70 )";
}


/* ----------------------------------------------------

text

---------------------------------------------------- */
em {
    text-decoration: underline;
    font-style: normal;
}
.bd_red {
    border-bottom: 1px solid #FF0004;
    padding-bottom: 2px;
}
.bd_red02 {
    border-bottom: 3px solid #FF0004;
    padding-bottom: 0px;
}
.red {
    color: #ff0000;
}
.yellow {
    background-color: #ffff00;
}
.gray {
    color:#666666;
}
.bold {
    font-weight: bold;
}
.strong {
    font-weight: bold;
}
.strike {
    text-decoration: line-through;
}
.ac {
    text-align: center !important;
}
.ar {
    text-align: right !important;
}
.al {
    text-align: left !important;
}
.bold {
    font-weight: bold !important;
}
.font10 {
    font-size: 10px !important;
}
.font11 {
    font-size: 11px !important;
}
.font12 {
    font-size: 12px !important;
}
.font13 {
    font-size: 13px !important;
}
.font14 {
    font-size: 14px !important;
}
.font15 {
    font-size: 15px !important;
}
.font16 {
    font-size: 16px !important;
}
.font17 {
    font-size: 17px !important;
    line-height:150%;
}
.font18 {
    font-size: 18px !important;
}
.font19 {
    font-size: 19px !important;
}
.font20 {
    font-size: 20px !important;
}
.font21 {
    font-size: 21px !important;
}
.font22 {
    font-size: 22px !important;
}
.font23 {
    font-size: 23px !important;
}
.font24 {
    font-size: 24px !important;
}
.font25 {
    font-size: 25px !important;
}
.font26 {
    font-size: 26px !important;
}
.font27 {
    font-size: 27px !important;
}
.font28 {
    font-size: 28px !important;
}
.font29 {
    font-size: 29px !important;
}
.font30 {
    font-size: 30px !important;
}
.font32 {
    font-size: 32px !important;
}
/* ----------------------------------------------------

float

---------------------------------------------------- */
.fr {
    float: right !important;
}
.fl {
    float: left !important;
}
.clear {
    clear: both;
}
img {
    line-height: 0;
    padding: 0;
    margin: 0;
}
.clearfix:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
}
.clearfix {
    min-height: 1px;
}
* html .clearfix {
    height: 1px;/*¥*//*/
    height: auto;
    overflow: hidden;
    /**/
}

hr {
    height: 0;
    margin: 0;
    padding: 0;
    border: 0;
}
/* ----------------------------------------------------
clearfix の代用
&#60;div class="hr"&#62;&#60;hr /&#62;&#60;/div&#62;
---------------------------------------------------- */

/* ----------------------------------------------------
header
---------------------------------------------------- */
.main {
    text-align: center;
}

@media screen and (max-width: 640px){
    .main {
        width: 100%;
    }
}




/* ----------------------------------------------------
area01
---------------------------------------------------- */
.area01 {
    text-align: center;
}

@media screen and (max-width: 640px){    
    .area01 {
        width: 100%;
        margin-bottom: 20px;
    }
}


/* ----------------------------------------------------
area02
---------------------------------------------------- */
.area02 {
    text-align: center;
}

.area02 h2 {
    padding-bottom: 20px;
}

.douga {
    width: 765px;
    text-align: center;
    margin: 20px auto;
}

.douga h2 {
    padding-bottom: 30px;
}

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

@media screen and (max-width: 640px){  
    .area02 {
        padding: 0 5px;
    }
    
    .area02 h2 {
       padding-bottom: 10px;
    }
    
    .douga {
        width: 100%;
    }
}

/* ----------------------------------------------------
area03
---------------------------------------------------- */
.area03 {
    text-align: center;
}

@media screen and (max-width: 640px){
    .area03 {
        padding: 0 5px;
    }
}


/* ----------------------------------------------------
area04
---------------------------------------------------- */
.area04 {
    text-align: center;
}

@media screen and (max-width: 640px) {
    .area04 {
        padding-top: 20px;
    }
}


/* ----------------------------------------------------
area05
---------------------------------------------------- */

.area05 {
    text-align: center;
}

@media screen and (max-width: 640px) {   
    .area05 {
        width: 100%;
    }
}

/* ----------------------------------------------------
area6
---------------------------------------------------- */
.area06 {
    text-align: center;
}

@media screen and (max-width: 640px) {   
    .area06 {
        width: 100%;
        padding-bottom: 15px;
    }
}

/* ----------------------------------------------------
area7
---------------------------------------------------- */
.area07 {
    text-align: center;
}

@media screen and (max-width: 640px) {   
    .area07 {
        width: 100%;
    }
}

/* ----------------------------------------------------
btn
---------------------------------------------------- */
.area_btn {
    width: 765px;
    text-align: center;
    position: relative;
    margin: 60px auto;
}

.btn {
    width: 100%;
    position: absolute;
    bottom: 3%;
    left: 0%;
}

.w100 img {
    max-width: 100%;
}


@media screen and (max-width: 640px) { 
    .area_btn {
        width: 100%;
        position: relative;
        margin:0 auto 30px;
    }
    
    .btn {
        width: 93%;
        position: absolute;
        bottom: 0;
        left: 0;
        transform: translate(4%,-15%)
    }
}

/* ----------------------------------------------------
area8
---------------------------------------------------- */
.area08 {
    text-align: center;
    padding-bottom: 30px;
}

.area08 h2 {
    padding-top: 30px;
}

@media screen and (max-width: 640px) {   
    .area08 {
        width: 100%;
        padding-bottom: 0;
    }
    
    .area08 h2 {
        padding-top: 15px;
    }
}

/* ----------------------------------------------------
area9
---------------------------------------------------- */
.area09 {
    text-align: center;
    
}

@media screen and (max-width: 640px) {   
    .area09 {
        width: 100%;
    }
}


/* ----------------------------------------------------
area10
---------------------------------------------------- */
.area10 {
    text-align: center;
    margin: 50px auto;
}

@media screen and (max-width: 640px) {   
    .area10 {
        width: 100%;
        margin: 0 auto;
    }
}


/* ----------------------------------------------------
voice
---------------------------------------------------- */
.voice {
    text-align: center;
    margin: 30px auto;
}

.voice h2 {
    background-color: #faced4;
}

.voice_arrow {
    margin-bottom: 30px;
}

@media screen and (max-width: 640px) {   
    .voice {
        width: 100%;
    }
}

/* ----------------------------------------------------
slider
---------------------------------------------------- */
.slider {/*横幅94%で左右に余白を持たせて中央寄せ*/
    width:94%;
    margin:0 auto;
}

.slider ul{
    margin:0;
    padding: 0;
    list-style: none;
}

.slider img {
    width:100%;/*スライダー内の画像を横幅100%に*/
    height:auto;
}

/*slickのJSで書かれるタグ内、スライド左右の余白調整*/

.slider .slick-slide {
    margin:0 10px;
}

/*矢印の設定*/

/*戻る、次へ矢印の位置*/
.slick-prev, 
.slick-next {
    position: absolute;/*絶対配置にする*/
    top: 42%;
    cursor: pointer;/*マウスカーソルを指マークに*/
    outline: none;/*クリックをしたら出てくる枠線を消す*/
    border-top: 2px solid #666;/*矢印の色*/
    border-right: 2px solid #666;/*矢印の色*/
    height: 15px;
    width: 15px;
}

.slick-prev {/*戻る矢印の位置と形状*/
    left: -1.5%;
    transform: rotate(-135deg);
}

.slick-next {/*次へ矢印の位置と形状*/
    right: -1.5%;
    transform: rotate(45deg);
}

/*ドットナビゲーションの設定*/

.slick-dots {
    text-align:center;
    margin:20px 0 0 0;
}

.slick-dots li {
    display:inline-block;
    margin:0 5px;
}

.slick-dots button {
    color: transparent;
    outline: none;
    width:8px;/*ドットボタンのサイズ*/
    height:8px;/*ドットボタンのサイズ*/
    display:block;
    border-radius:50%;
    background:#ccc;/*ドットボタンの色*/
}

.slick-dots .slick-active button{
    background:#333;/*ドットボタンの現在地表示の色*/
}


/* ----------------------------------------------------
area11
---------------------------------------------------- */
.area11 {
    text-align: center;
}

@media screen and (max-width: 640px) {   
    .area11 {
        width: 100%;
        padding-top: 10px;
    }
}

/* ----------------------------------------------------
area12
---------------------------------------------------- */
.area12 {
    text-align: center;
}

@media screen and (max-width: 640px) {   
    .area12 {
        width: 100%;
    }
}

/* ----------------------------------------------------
area13
---------------------------------------------------- */
.area13 {
    text-align: center;
}

@media screen and (max-width: 640px) {   
    .area13 {
        width: 100%;
    }
}

/* ----------------------------------------------------
area14
---------------------------------------------------- */
.area14 {
    text-align: center;
    margin: 50px auto;
}

@media screen and (max-width: 640px) {   
    .area14 {
        width: 100%;
        margin: 0 auto;
    }
}

/* ----------------------------------------------------
area15
---------------------------------------------------- */
.area15 {
    background-color: #f1eee5;
    text-align: center;
    padding: 60px 0;
}

.area15_box {
    width: 760px;
    background-color: #fff;
    margin: 0 auto;
    padding: 20px 0;
    
}
.area15 h2 {
    
}

@media screen and (max-width: 640px) {   
    .area15 {
        background-color: none;
        margin: 0 auto;
        padding: 0 0;
    }
    
    .area15_box {
        width: 100%;
        margin: 0 auto 30px;
        padding: 0 0;

    }
}



/* ----------------------------------------------------
area16
---------------------------------------------------- */
.area16 {
    background-color: #f0f7f9;
    text-align: center;
    padding: 60px 0;
}

@media screen and (max-width: 640px) {   
    .area16 {
        width: 100%;
        margin: 0 auto;
        padding: 30px 10px;
    }
}


/* ----------------------------------------------------
area17
---------------------------------------------------- */
.area17 {
    background: url("../images/bg03.jpg") ;
    background-size: cover;
    margin : 50px auto 0;
    padding: 50px 0;
}

.area17_img {
    text-align: center;
    
}

@media screen and (max-width: 640px) {   
    .area17 {
        width: 100%;
        margin : 0 auto;
        padding: 0 0;
    }
}




/* ----------------------------------------------------
qa
---------------------------------------------------- */

.qa {
    width: 760px;
    text-align: left;
    margin: 30px auto 0px
}

.qa h2 {
    text-align: center;
    margin-bottom: 50px;
}


@media screen and (max-width: 640px) {   
    .qa {
        width: 100%;
    }
}

/* ----------------------------------------------------
area18
---------------------------------------------------- */
.area18 {
    text-align: center;
    padding: 60px 0 0;
}

@media screen and (max-width: 640px) {   
    .area18 {
        width: 100%;
        margin: 0 auto;
        padding: 30px 10px;
    }
}

/* ----------------------------------------------------
area_btn02
---------------------------------------------------- */
.area_btn02 {
    text-align: center;
    margin-bottom: 100px;
}

.btn02 {
    width: 100%;
    margin: 20px 0;
}

@media screen and (max-width: 640px) {   
    .area_btn02 {
        width: 98%;
        position: relative;
        margin: 0 2px 30px;
    }

    .btn02 {
        width: 93%;
        position: absolute;
        bottom: 0;
        left: 0;
        transform: translate(4%,19%)
    }
    .area_btn03{
        width: 98%;
        position: relative;
        margin: 0 2px 60px;
    }

    .btn03 {
        width: 93%;
        position: absolute;
        bottom: 0;
        left: 0;
        transform: translate(4%,-15%)
    }
}

/* ----------------------------------------------------
footer
---------------------------------------------------- */

.copy {
    background-color: #333;
    padding: 20px 40px;
    color: #fff;
    font-size: 14px;
    text-align: center;
}

.footer_link {
    text-align: center;
    font-size: 15px;
    margin-bottom: 30px;
}

@media screen and (max-width: 640px) {
    .copy {
        padding: 15px 10px 25px;
        font-size: 12px;
        box-sizing: border-box;
    }

    .footer_link {
        font-size: 12px;
        padding: 0 10px;
        margin-bottom: 30px;
    }
}