@charset "utf-8";
/*------------------------------------------------------------
	トップページ
------------------------------------------------------------*/
.pageTitle {
    padding-bottom: 0;
    min-height: 463px;
    background: url("../img/access/page_title_bg.jpg") no-repeat right 50% top;
    background-size: 1200px auto;
}

.pageTitle .topTxt {
    margin-bottom: 0;
}

#main .sec01 {
    margin: -44px 0 150px;
}

#main .sec01 .inner .mapBox {
    float: left;
    width: 583px;
    height: 583px;
}

#main .sec01 .inner .textBox {
    float: right;
    width: 472px;
    color: #fff;
    margin-top: -5px;
}

#main .sec01 .topBox {
    margin-bottom: 19px;
}

#main .sec01 .topBox p {
    float: left;
    width: 340px;
    font-size: 1.8rem;
    letter-spacing: 6px;
}

#main .sec01 .topBox p span {
    font-size: 1.2rem;
}

#main .sec01 .topBox ul {
    float: right;
    padding-top: 7px;
}

#main .sec01 .topBox ul li {
    padding-left: 10px;
    width: 21px;
    height: 21px;
    float: left;
    text-align: right;
}

#main .sec01 .topBox ul li img {
    width: auto;
    height: 100%;
}

#main .sec01 .topBox ul li a:hover {
    opacity: 0.7;
}

#main .sec01 .inner .linkUl {
    margin: 18px 0 22px;
}

#main .sec01 .inner .linkUl li {
    float: left;
    width: 226px;
}

#main .sec01 .inner .linkUl li:last-child {
    float: right;
}

#main .sec01 .inner .linkUl li a {
    display: block;
    text-align: center;
    background-color: #fff;
    border-radius: 5px;
    color: #00001E;
    font-size: 1.6rem;
    padding: 15px 0 11px;
    letter-spacing: 2px;
}

#main .sec01 .inner .linkUl li .topImg {
    margin: 0 auto -1px;
    display: block;
}

#main .sec01 .inner .linkUl li a:hover {
    opacity: 0.7;
}

#main .sec01 .inner .textBox .comBtn a {
    padding: 10px 40px;
    width: 474px;
    background: url("../img/common/icon04.png") no-repeat right 20px center;
    background-size: 36px auto;
}

#main .comBox .rBox {
    width: 666px;
}

#main .comBox .rBox .photoList {
    margin-top: -63px;
}

#main .comBox .rBox .photoList li {
    margin-top: 63px !important;
    width: 200px;
}

#main .comBox .rBox .photoList li:nth-child(3n-1) {
    margin: 63px 33px 0 !important;
}

#main .comBox .rBox .photoList li .photo {
    margin-bottom: 15px;
}

#main .comBox .rBox .photoList li .photo:before {
    width: 18px;
    top: 64px;
    right: -26px;
    background-image: url("../img/common/icon10.png");
}

#main .sec02 {
    padding: 150px 0 0;
}

#main .sec02 .lBox {
    float: left;
    width: 330px;
}

#main .sec02 .lBox p {
    color: #fff;
    line-height: 2.7;
    letter-spacing: 4px;
}

#main .sec02 .rBox {
    float: right;
    width: 720px;
}

#main .sec02 .subBox {
    margin-bottom: 97px;
}

#main .sec02 .comBtn {
    text-align: center;
}

#main .sec02 .rBox .photoList li {
    float: left;
    width: 240px;
}

#main .sec02 .rBox .photoList li a {
    display: block;
}

#main .sec02 .rBox .photoList li a:hover {
    opacity: 0.7;
}

.vbox-next, .vbox-prev {
    display: block !important;
}

@media all and (max-width: 767px) {
    .pageTitle {
        min-height: inherit;
        background: url("../img/access/sp_page_title_bg.jpg") no-repeat top center;
        background-size: cover;
    }

    #main .sec01 {
        margin: 38px 0 46px;
    }
    
    #main .sec01 .inner .mapBox {
        float: none;
        width: 100%;
        height: 290px;
    }

    #main .sec01 .inner .textBox {
        margin-top: 0;
        float: none;
        width: auto;
    }

    #main .sec01 .topBox {
        margin-bottom: 33px;
    }

    #main .sec01 .topBox p {
        width: auto;
        color: #FFF;
        letter-spacing: 3px;
    }

    #main .sec01 .topBox p span {
        font-size: 1.25rem;
    }

    #main .sec01 .topBox ul {
        padding-top: 5px;
    }

    #main .sec01 .topBox ul li {
        padding-left: 8px;
    }

    #main .sec01 .inner .linkUl {
        margin: 30px 0 35px;
    }

    #main .sec01 .inner .linkUl li {
        width: 48%;
    }

    #main .sec01 .inner .linkUl li a {
        background-color: #ECECEC;
        font-size: 1.5rem;
        padding: 12px 0 7px;
        letter-spacing: 2px;
    }

    #main .sec01 .inner .linkUl li .topImg {
        margin: 0 auto -1px;
        display: block;
    }
    
    #main .sec01 .inner .textBox .comBtn {
        margin-bottom: 30px;
    }

    #main .sec01 .inner .textBox .comBtn a {
        padding: 12px 40px;
        width: 100%;
        background: url("../img/common/icon04.png") no-repeat right 16px center;
        background-size: 47px auto;
    }
    
    #main .comBox .lBox {
        margin-bottom: 39px;
    }
    
    #main .comBox .lBox .headLine01 {
        margin-bottom: 27px;
    }
    
    #main .comBox .lBox p {
        line-height: 2.5;
    }
    
    #main .comBox .rBox {
        margin-bottom: 0;
        width: auto;
    }
    
    #main .comBox .rBox .photoList {
        margin-top: 0;
    }
    
    #main .comBox .rBox .photoList li {
        margin: 0 0 72px !important;
        padding: 0;
        width: auto;
        float: none;
        line-height: 2.1;
        letter-spacing: 1.5px;
    }
    
    #main .comBox .rBox .photoList li:nth-child(3n-1) {
        margin: 0 0 78px !important;
     }
    
    #main .comBox .rBox .photoList li:last-of-type {
        margin: 0 !important;
   }
    
    #main .comBox .rBox .photoList li .photo {
        margin-bottom: 9px;
    }
    
    #main .comBox .rBox .photoList li:first-child .photo:before {
        display: none;
    }
    
    #main .comBox .rBox .photoList li .photo:before {
        margin-right: -30px;
        width: 51px;
        height: 21px;
        right: 50%;
        top: -39px;
        background-image: url("../img/common/sp_icon10.png");
        background-size: 51px auto;
    }

    #main .sec02 {
        padding: 77px 0 0;
    }

    #main .sec02 .lBox {
        float: none;
        width: auto;
        margin-bottom: 40px;
    }

    #main .sec02 .lBox p {
        line-height: 2.9;
    }

    #main .sec02 .rBox {
        float: none;
        width: auto;
    }

    #main .sec02 .subBox {
        margin-bottom: 50px;
    }

    #main .sec02 .rBox .photoList li {
        width: 33.3333%;
    }
    
    #main .sec02 .comBtn a {
        padding: 12px 40px;
    }
}

@media all and (max-width: 374px) {
    #main .sec01 .inner .topBox p {
        letter-spacing: 1px;
    }
    
    #main .sec02 .lBox p {
        letter-spacing: 3px;
    }
    
    #main .sec02 .comBtn a {
        letter-spacing: 0px;
    }
}
