@charset "UTF-8";

/* ------------------------------
    fv_block
------------------------------ */
.fv_block{
    position: relative;
    width: 100%;
    min-width: 1290px;
    height: 0;
    padding-top: 55.3%;
    background: url(../img/index/img_pcmain.jpg) 50% 50% no-repeat;
    background-size: 100% auto;
}
.fv_block:after{
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 80px;
    bottom: -80px;
}
.fv_block .txt_box{
    position: absolute;
    min-width: 840px;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}
.fv_block .txt_box .lead_fv{
    margin-bottom: 30px;
    word-break: keep-all;
    font-size: 5.0rem;
    color: #fff;
}
.fv_block .txt_box .list_lead{
    padding-right: 3em;
}
.fv_block .txt_box .list_lead li{
    display: inline-block;
    margin: 0 0.6em;
    font-size: 3.7rem;
    color: #fff;
}
.fv_block .txt_box .list_lead li:before{
    content: "-";
    padding-right: 0.3em;
}


@media screen and (max-width : 1290px){
    .fv_block{
        width: 100%;
        min-width: 0;
    }
}
@media screen and (max-width : 768px){
    .fv_block{
        min-width: 100%;
        height: 100%;
        padding-top: 90.9%;
        background-image: url(../img/index/img_fv_sp220316.jpg);
    }
    .fv_block:after{
        position: static;
    }
    .fv_block .txt_box{
        min-width: 100%;
    }
    .fv_block .txt_box .lead_fv{
        margin-bottom: 3%;
        font-size: 1.7rem;
    }
    .fv_block .txt_box .list_lead{
        padding-right: 1em;
    }
    .fv_block .txt_box .list_lead li{
        font-size: 1.258rem;
    }
    .fv_block:after{
        height: 0;
        padding-top: 80%;
        background-size: auto 100%;
    }
}
@media screen and (min-width : 550px) and (max-width : 900px){
    .fv_block .txt_box .lead_fv{
        font-size: 3.0rem;
    }
    .fv_block .txt_box .list_lead li{
        font-size: 2.0rem;
    }
}

/* ------------------------------
    sec01_block
------------------------------ */
    .sec01_block{
    margin-left: auto;
    margin-right: auto;
    }
    h1{
    color: #fff;
    font-size: 2rem;
    text-align:left;
    border-bottom: 1px solid #fff;
    }
    .sec01_block .txt{
    margin-top: 10px;
    
    font-size: 1.7rem;
    color: #fff;
    line-height:1.5em;
    }

@media screen and (min-width : 769px){
    .sec01_block{
    width: 1200px;
    }
    .sec01_block .camp_left {
    float:left;
    width: 730px;
    }
    .sec01_block .camp_right  {
    float:right;
    width: 420px;
    }
    h1{
    margin-top: 60px;
    padding-bottom: 10px;
    }
    .sec01_block .camp_right .txt  {
    font-size: 1.7rem;
    color: #fff;
    text-align:left;
    line-height:2em;
    margin-top: 20px;
    margin-bottom: 50px;
    }
}

@media screen and (max-width : 768px){
    .sec01_block{
    margin-bottom: 5%;
    
    }
    .sec01_block .camp_left {
    margin-bottom: 2em;
    }
    .sec01_block .camp_right  {
    margin-left: 2%;
    margin-right: 2%;
    }
    .sec01_block .camp_right img  {
    display: none;
    }
    h1{
    margin-top: 1em;
    padding-bottom: 2%;
    }
    .sec01_block .camp_right .txt  {
    font-size: 1.5rem;
    color: #fff;
    text-align:left;
    line-height:2em;
    margin-top: 1em;
    }

}



/* ------------------------------
    sec02_block
------------------------------ */
    .sec02_block{
    width: 1200px;
    margin-left: auto;
    margin-right: auto;
margin-bottom: 50px;
    }

 @media screen and (max-width : 768px){
    .sec02_block{
    margin-bottom: 5%;
    width: 90%;
    }

}





/* ------------------------------
    sec03a_block
------------------------------ */
    .sec03a_block{
    width: 1200px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 20px;
    }
    h2{
    color: #fff;
    font-size: 2.5rem;
    text-align:left;
    border-bottom: 1px solid #fff;
    }
    .sec03a_block .txt01{
    margin-top: 10px;
    margin-bottom: 10px;
    font-size: 1.5rem;
    color: #fff;
    text-align:left;
    line-height:1.8em;
    }

@media screen and (min-width : 769px){
    .sec03a_block .camp_left {
    float:left;
    width: 500px;
    }
.sec03a_block .camp_right {
    float:right;
    width: 680px;
    }
    h2{
    padding-bottom: 20px;
    margin-bottom: 20px;
    }
    .sec03a_block .camp_right .txt01  {
    margin-bottom: 44px;
    }
    .txt02{
    width: 1200px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 100px;
    font-size: 1.5rem;
    color: #fff;
    text-align:left;
    }
}

@media screen and (max-width : 768px){
    .sec03a_block{
    margin-bottom: 2%;
    width: 90%;
    }
    .sec03a_block .camp_left {
    margin-bottom: 2em;
    }

    .sec03a_block .camp_right h2 {
    font-size: 2rem;
    padding-bottom: 3%;
    }
    .sec03a_block .txt01{
    line-height:1.7em;
    font-size: 1.5rem;
    margin-bottom: 5%;
    }
}


/* ------------------------------
    sec03b_block
------------------------------ */
    .sec03b_block{
    width: 1200px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 20px;
    }
    h2{
    color: #fff;
    font-size: 2.5rem;
    text-align:left;
    border-bottom: 1px solid #fff;
    }
    .sec03b_block .txt01{
    margin-top: 10px;
    margin-bottom: 10px;
    font-size: 1.5rem;
    color: #fff;
    text-align:left;
    line-height:1.8em;
    }

@media screen and (min-width : 769px){
    .sec03b_block .camp_left {
    float:left;
    width: 680px;
    }
.sec03b_block .camp_right {
    float:right;
    width: 500px;
    }
    h2{
    padding-bottom: 20px;
    margin-bottom: 20px;
    }
    .sec03b_block .camp_left .txt01  {
    margin-bottom: 44px;
    }
    .txt02{
    width: 1200px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 100px;
    font-size: 1.5rem;
    color: #fff;
    text-align:left;
    }
}

@media screen and (max-width : 768px){
    .sec03b_block{
    margin-bottom: 5%;
    width: 90%;
    }
    .sec03b_block .camp_left {
    margin-bottom: 2em;
    }
    .sec03b_block .camp_left h2 {
    font-size: 2rem;
    padding-bottom: 3%;
    }
    .sec03b_block .txt01{
    line-height:1.7em;
    font-size: 1.5rem;
    margin-bottom: 2%;
    }
    .txt02{
    margin-bottom: 15%;
    color: #fff;
    text-align:left;
    width: 90%;
    font-size: 1.5rem;
    line-height:1.7em;
    margin-left: auto;
    margin-right: auto;
    }
}





/* ------------------------------
    sec04_block
------------------------------ */
    .sec04_block{
    width: 1200px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 50px;
    }
     .sec04_block ul{
    border-top: 1px solid #fff;
    padding-top: 30px;
    padding-bottom: 10px;
    }   
    .sec04_block li{
    margin-bottom: 20px;
    font-size: 1.7rem;
    color: #fff;
    }
     .sec04_block h3{
    text-align:center;
    font-size: 1.7rem;
    color: #fff;
    line-height:1.4em;
    margin-bottom: 20px;
    }
    .sec04_block .title{
    font-size: 3.4rem;
    font-weight:bold;
    color: #fff;
    }
    .sec04_block .p_title{
    font-size: 2.5rem;
    font-weight:bold;
    color: #ff0000;
    padding-right:20px;
    }
    .sec04_block .a_title{
    font-size: 2.5rem;
    font-weight:bold;
    color: #fff;
    padding-right:20px;
    }
    
 @media screen and (max-width : 768px){
    .sec04_block{
    margin-bottom: 5%;
    width: 90%;
    }
    .sec04_block li{
    line-height:1.5em;
    font-size: 1.7rem;
    }
    
    .sec04_block .p_title,.sec04_block .a_title{
    display:block;
    }
}       
    
    


/* ------------------------------
    sec05_block
------------------------------ */
.sec05_block{
    width: 1200px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 100px;
}
.sec05_block a{
    text-decoration: none;
}
.sec05_block :hover{
    opacity: 0.5;
}

.sec05_block .btn{
    font-size: 2rem;
    color: #fff;
    text-align:center;
    line-height:1.5em;
    background-color: #C32727;
}
.sec05_block .btn .a_title{
    font-size: 4rem;
    font-weight:bold;
    color: #fff;
}

@media screen and (min-width : 769px){

.sec05_block .btn {
    width: 570px;
    height: 100px;
    padding-top:20px;
    margin-left: auto;
    margin-right: auto;
    }
}

@media screen and (max-width : 768px){
    .sec05_block{
    margin-bottom: 15%;
    width: 90%;
    }
    .sec05_block .btn{
    margin-bottom: 2em;
    padding-top:0.8em;
    padding-bottom:0.5em;
    }
}


/* ------------------------------
    sec06_block
------------------------------ */
.sec06_block{
    width: 1200px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 80px;
    padding-top:100px;
    border-top: 5px solid #fff;
}
    .sec06_block .txt{
    margin-top: 10px;
    margin-bottom: 50px;
    font-size: 1.7rem;
    color: #fff;
    line-height:1.5em;
    }
    .sec06_block .txt a{
    text-decoration: none;  
    color: #fff;  
    }
@media screen and (max-width : 768px){
    .sec06_block{
    margin-bottom: 10%;
    padding-top:10%;
    width: 90%;
    }
    .sec06_block .txt{
    font-size: 1.7rem;
    }
}



/* ------------------------------
    sec07_block
------------------------------ */
.sec07_block{
    width: 1200px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 100px;
    padding-top:100px;
    padding-bottom:60px;
    border-top: 5px solid #fff;
    border-bottom: 5px solid #fff;
}
.sec07_block a{
    text-decoration: none;
}
.icon_tri_left {
    position:relative;
    display:block;
    padding-left:17px;
    width:430px;
    margin:30px auto;
    padding:30px 20px 30px 30px;
    text-decoration:none;
    text-align:center;
    font-size: 1.7rem;
    border: 2px solid #fff;
    color: #fff;
}
.icon_tri_left:hover {
    opacity: 0.5 ;
}
.icon_tri_left:before {
    content: "";
    display:inline-block;
    width: 0;
    height: 0;
    border-top: solid 8px transparent;
    border-right: solid 8px transparent;
    border-bottom: solid 8px transparent;
    border-left: solid 8px #fff;
    position: absolute;
    top: 50%;
    left:20px;
    margin-top:-8px;
}

@media screen and (max-width : 768px){
    .sec07_block{
    margin-bottom: 10%;
    padding-top:10%;
    width: 90%;
    }
    .icon_tri_left {
    position:relative;
    display:block;
    padding-left:5%;
    width:90%;
    margin:7% auto;
    padding:7% 5% 7% 7%;
    text-decoration:none;
    text-align:center;
    font-size: 1.7rem;
    border: 2px solid #fff;
    color: #fff;
}
}















/* ------------------------------
    pagetop
------------------------------ */
@media screen and (max-width : 768px){
    /*
    .pagetop_cover{
        display: none;
    }
    */
}