@charset "utf-8";
/*------------------------------------------------------------
	トープページ
------------------------------------------------------------*/
.mainImg span {
    height: 560px;
    width: 100%;
    display: block;
    background: url(../img/index/main_img.jpg) no-repeat;
    background-size: cover;
    background-position: 50% 50%;
}

.mainImg .carNav {
    position: absolute;
    bottom: 34px;
    left: 50%;
    margin-left:-31px;
}

.mainImg .carNav .carItem {
    background: url(../img/index/car_nav.png) no-repeat;
    width: 12px;
    height: 11px;
    float: left;
    margin-left: 13px;
    cursor: pointer;
}

.mainImg .carNav .carItem:hover {
    opacity:.5;
}

.mainImg .carNav .carItemFirst {
    margin-left: 0px;
}

.mainImg .carNav .carItemCurrent {
    background: url(../img/index/car_nav_current.png) no-repeat;
}

.mainImg .arrNav .left {
    position: absolute;
    background: url(../img/index/arrow_l.png) no-repeat;
    width: 80px;
    height: 80px;
    left: 2px;
    top: 266px;
    cursor: pointer;
}

.mainImg .arrNav .left:hover {
    opacity:.5;
}

.mainImg .arrNav .right {
    position: absolute;
    background: url(../img/index/arrow_r.png) no-repeat;
    width: 80px;
    height: 80px;
    right: 2px;
    top: 266px;
    cursor: pointer;
}

.mainImg .arrNav .right:hover {
    opacity:.5;
}


#main {
    width: auto;
}

#main .letterTypeface {
    margin-bottom: 1px;
}

#main .letterTypeface .photoBox {
    padding: 33px 0 31px;
    width: 50%;
    float: left;
    text-align: right;
    background: url(../img/index/letter_typeface_bg01.jpg) repeat right top;
}

#main .letterTypeface .photoBox img {
    padding-right: 110px;
}

#main .letterTypeface .textBox {
    display: table;
    float: right;
    width: 50%;
}

#main .letterTypeface .textBox .subBox {
    padding-left: 15px;
    display: table-cell;
    vertical-align: middle;
}

#main .letterTypeface .textBox h2 {
    margin-bottom: 36px;
}

#main .letterTypeface .textBox p {
    margin-bottom: 45px;
    font-size: 16px;
    line-height: 1.65;
}

#main .pageTitle {
    margin-bottom: 37px;
    background: url(../img/index/page_title_bg01.jpg) no-repeat center top;
    background-size: cover;
    filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='/img/index/page_title_bg01.jpg', sizingMethod='scale');
}

#main .pageTitle01 {
    margin-bottom: 0;
}

#main .comImgBox03 .photoBox span {
    padding-top: 37px;
}

#main .pageTitle02 {
    margin-bottom: 0;
    background: url(../img/index/page_title_bg02.jpg) no-repeat center top;
    background-size: cover;
    filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='/img/index/page_title_bg02.jpg', sizingMethod='scale');
}

#main .pageTitle03 {
    margin-bottom: 0;
    background: url(../img/index/page_title_bg03.jpg) no-repeat center top;
    background-size: cover;
    filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='/img/index/page_title_bg03.jpg', sizingMethod='scale');
}

#main .pageTitle04 {
    margin-bottom: 67px;
    background: url(../img/index/page_title_bg04.jpg) no-repeat center top;
    background-size: cover;
    filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='/img/index/page_title_bg04.jpg', sizingMethod='scale');
}

#main .comImgBox01 {
    margin-bottom: 100px;
}

#main .comImgBox01 .textBox {
    background-color: #F0F2EE;
}

#main .voice {
    margin-bottom: 99px;
    padding: 182px 0 25px;
    min-height: 280px;
    background: url(../img/index/voice_bg.jpg) no-repeat left top;
    background-size: cover;
    filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='/img/index/voice_bg.jpg', sizingMethod='scale');
}

#main .voice .info p {
    color: #fff;
    margin-bottom: 23px;
    font-size: 16px;
    line-height: 1.35;
    text-align: center;
}

#main .voice .info p span {
    font-size: 24px;
}

#main .voice .info p .size {
    font-size: 34px;
}

#main .voice .info .comLink {
    margin: 0 auto;
}

#main .shirasuBlog {
    margin-bottom: 100px;
    padding: 70px 0 59px;
    background-color: #F0F2EE;
}

#main .shirasuBlog .info ul {
    margin: 0 -31px 26px 0;
    width: 1020px;
}

#main .shirasuBlog .info li {
    float: left;
    margin-right: 31px;
    padding-bottom: 17px;
    width: 309px;
    background-color: #fff;
}

#main .shirasuBlog .info li .textBox {
    margin: 11px 15px 0;
}

#main .shirasuBlog .info li dt {
    margin-bottom: 5px;
    color: #4c4c4c;
    font-size: 14px;
}

#main .shirasuBlog .info li dd {
    margin-bottom: 13px;
    font-size: 16px;
    line-height: 1.3;
}

#main .shirasuBlog .info li p {
    color: #4c4c4c;
}

#main .shirasuBlog .info .txt {
    margin-bottom: 22px;
    font-size: 16px;
    text-align: center;
}

#main .shirasuBlog .info .comLink {
    margin: 0 auto;
}

#main .news {
    margin: 0 auto 100px;
    width: 972px;
}

#main .news dl {
    margin-bottom: 7px;
}

#main .news dt {
    float: left;
    color: #333;
    font-size: 16px;
}

#main .news dd {
    padding: 0 0 15px 9em;
    font-size: 16px;
}

#main .news .comLink {
    margin: 0 auto;
}

#main .snsBox {
    margin: 0 auto;
    width: 990px;
}

#main .snsBox .facebook {
    float: left;
}

#main .snsBox .banner {
    float: right;
    width: 479px;
}

#main .snsBox .banner {
    margin-top: -26px;
}

#main .snsBox .banner li {
    margin-top: 26px;
    float: left;
}

#main .snsBox .banner li a:hover img {
    filter: alpha(opacity=70);
    opacity: 0.7;
}

@media all and (min-width: 0) and (max-width: 736px) {

    #main {
        margin: 0 0 55px;
    }

    .mainImg {
        margin-bottom: 33px;
    }

    .mainImg .carNav .carItem {
        background: url(../img/index/sp_car_nav.png) no-repeat;
        background-size: contain;
    }

    .mainImg .carNav .carItemCurrent {
        background: url(../img/index/sp_car_nav_current.png) no-repeat;
        background-size: contain;
    }

    .mainImg .arrNav .left {
        left: 0;
        top: 47%;
    }

    .mainImg .arrNav .right {
        right: 0;
        top: 47%;
    }

    #main .letterTypeface {
        margin-bottom: 55px;
        background: url(../img/index/sp_letter_typeface_bg01.jpg) repeat-x left top;
        background-size: auto 100%;
    }

    #main .letterTypeface .textBox {
        float: none;
        height: inherit !important;
        margin: 0 23px 22px;
        width: auto;
        background: none;
    }

    #main .letterTypeface .textBox .subBox {
        padding-left: 0;
    }

    #main .letterTypeface .textBox h2 {
        margin-bottom: 15px;
    }

    #main .letterTypeface .textBox p {
        margin-bottom: 0;
        font-size: 14px;
        line-height: 1.6;
    }

    #main .letterTypeface .photoBox {
        float: none;
        margin: 0 auto 21px;
        padding: 0;
        height: inherit !important;
        width: 258px;
        background: none;
    }

    #main .letterTypeface .photoBox img {
        padding-right: 0;
    }

    #main .letterTypeface .textBox h2 img {
        width: 274px;
    }

    #main .letterTypeface .comLink {
        height: inherit !important;
    }

    #main .pageTitle {
        margin-bottom: 24px;
        background: url(../img/index/sp_page_title_bg01.jpg) no-repeat left top;
        background-size: 100% auto;
    }

    #main .pageTitle02 {
        margin-bottom: 0;
        background: url(../img/index/sp_page_title_bg02.jpg) no-repeat left top;
        background-size: 100% auto;
    }

    #main .pageTitle03 {
        margin-bottom: 0;
        background: url(../img/index/sp_page_title_bg03.jpg) no-repeat left top;
        background-size: 100% auto;
    }

    #main .pageTitle04 {
        margin-bottom: 36px;
        background: url(../img/index/sp_page_title_bg04.jpg) no-repeat center top;
        background-size: 100% auto;
    }

    #main .comImgBox03 {
        margin-bottom: 40px;
    }

    #main .comImgBox01 {
        margin-bottom: 56px;
    }

    #main .comImgBox01 .photoBox {
        margin-bottom: 0;
    }

    #main .comImgBox01 .textBox {
        padding: 21px 23px 45px;
    }

    #main .voice {
        margin-bottom: 55px;
        padding: 56px 0 13px;
        min-height: 220px;
        background: url(../img/index/sp_voice_bg.jpg) no-repeat left top;
        background-size: 100% 100%;
    }

    #main .voice .info p {
        margin-bottom: 10px;
        font-size: 14px;
        line-height: 1.6;
        text-align: left;
    }

    #main .voice .info p span {
        font-size: 18px;
    }

    #main .voice .info p .size {
        font-size: 23px;
    }

    #main .shirasuBlog {
        margin-bottom: 55px;
        padding: 40px 0 45px;
    }

    #main .shirasuBlog .info ul {
        margin: 0 0 16px;
        width: auto;
    }

    #main .shirasuBlog .info li {
        margin: 0 0 20px;
        padding-bottom: 12px;
        float: none;
        width: auto;
    }

    #main .shirasuBlog .info li:last-child {
        margin-bottom: 0;
    }

    #main .shirasuBlog .info li .pho img {
        width: 100%;
    }

    #main .shirasuBlog .info li .textBox {
        margin: 6px 18px 0;
    }

    #main .shirasuBlog .info li dt {
        margin-bottom: 3px;
        font-size: 12px;
    }

    #main .shirasuBlog .info li dd {
        margin-bottom: 8px;
        font-size: 14px;
        line-height: 1.5;
    }

    #main .shirasuBlog .info li p {
        font-size: 12px;
        letter-spacing: -1px;
    }

    #main .shirasuBlog .info .txt {
        margin-bottom: 11px;
        font-size: 14px;
        text-align: left;
    }

    #main .shirasuBlog .info .comLink {
        /* width: 235px; */
    }

    #main .news {
        margin: 0 23px 55px;
        width: auto;
    }

    #main .news dt {
        margin-right: 13px;
        font-size: 14px;
    }

    #main .news dd {
        padding: 0 0 11px 0;

        font-size: 14px;
        line-height: 1.55;
    }

    #main .news .comLink {
        /* width: 235px; */
    }

    #main .snsBox {
        margin: 0 23px;
        width: auto;
    }

    #main .snsBox .facebook {
        float: none;
    }

    #main .snsBox .facebook img {
        width: 100%;
    }

    #main .snsBox .banner {
        float: none;
        margin-top: 0;
        width: auto;
    }

    #main .snsBox .banner li {
        margin: 0 0 15px;
        float: none;
    }

    #main .snsBox .banner li img {
        width: 100%;
    }

}

@media all and (min-width: 737px) and (max-width: 1300px) {
    #main .comImgBox03 .textBox .subBox {
        padding-left: 17.5%;
    }
}