@charset "UTF-8";
/*
モバイルファースト設計
html {
    font-size: 62.5%;
}
@media only screen and (min-width:651px) {
    html {
        font-size: 71.4286%;
    }
}
@media only screen and (min-width:961px) {
    html {
        font-size: 75.8929%;
    }
}
*/

/* デスクトップ／横置きタブレット */
@media screen and (max-width: 1280px) {
    header#header,
    footer#footer,
    .FV-FlexBox,
    .FB-Context {
        padding-left: 40px;
        padding-right: 40px;
    }
    .FB-Context{
        padding-top: 20px;
    }
    .content{
        padding-left: 20px;
        padding-right: 20px;
    }
	.limit {
		width: auto !important;
		margin: 0 20px !important;
	}
    .fstView {
        height: 100vh;
    }
}

/* タブレット／ブラウザ狭くしたデスクトップ */
@media screen and ( max-width : 959px ) {
    .fstView h1, .fstView h2, .fstView h3, .fstView h4{
        color: #151515;
        text-shadow:none;
    }
    .fstView h1{font-size: 50px;font-size: 5.0rem;}
    .fstView h1 span{font-size: 24px;font-size: 2.4rem;}
    .fstView h2{font-size: 26px;font-size: 2.6rem;}
    .fstView h3{font-size: 24px;font-size: 2.4rem;}
    .fstView h3 span{font-size: 18px;font-size: 1.8rem;}
    .fstView p.area-des {font-size: 18px;font-size: 1.8rem;}
    .fstView p.area-des strong {
        background: none;
        border: 2px solid #000;
        color: #000;
    }
    .fstView .btn-wht a,
    .fstView .btn-wht span{
        border: 1px solid #000;
        background-color: rgba(0,0,0,1);
        color: #ffffff;
    }
    .fstView .btn-wht a:hover,
    .fstView .btn-wht span:hover{
        border: 1px solid #000;
    }
    
        
    header#header {
        height: auto;
        flex-flow: column wrap;
        justify-content: flex-start;
        align-items: flex-start;
    }
    header#header h1 img{
        width: 80px;
        height: auto;
    }
    header#header address {
        text-align: left;
    }
    
    #slideSide,
    .sideNavi-box,
    #slideSide h3,
    #slideSide a,
    #slideSide p {
        display: none;
        background: none;
    }
    
    .fstView {
        height: auto;
        min-height: auto;
    }
    .fstView-keyvisual {
        position: static;
        width: auto;
        height: auto;
    }
    .fstView-keyvisual img {
        position: static;
        width: 100%;
        height: auto;
        -webkit-transform: translate(0%, 0%);
        transform: translate(0%, 0%);
        z-index: 0;
    }
    .FV-FlexBox {
        height: auto;
    }

    
    .content.FullWidth.Features {
        height: auto;
    }


    .mailcontent{
        margin-top: 0px;    
    }

    
    .dl_summary dt{
        float: none;
        width: auto;
    }
    .dl_summary dd{
        margin-left: 0px;
        padding-left: 0px;
    }
    .dtlTbl tr th,
    .dtlTbl tr td {
        text-align:left;
    }
    
    .btn a{
        width: auto;
    }
    .btn-left a,
    .btn-left span {margin-left: auto;}
    .btn-Half a{
        max-width: 100%;
    }
    
    .alignC-pc{
        text-align: left;
    }
    .pcOnly {
        display: none;
    }
    .tblSPOnly {
        display: block;
    }
}
/* スマホなどモバイル専用 */
@media screen and ( max-width : 599px ) {
    header#header,
    footer#footer,
    .FV-FlexBox,
    .FB-Context {
        padding-left: 20px;
        padding-right: 20px;
    }
    header#header{
        padding-top: 10px;
        padding-bottom: 10px;
    }
    .FV-FlexBox,
    .FB-Context {
        padding: 20px;
    }

    header#header h1 {font-size: 18px;font-size: 1.8rem;margin-bottom: 5px;}
    header#header address{font-size: 10px;font-size: 1.0rem;}
    header#header address a{font-size: 12px;font-size: 1.2rem;}
    .fstView h1{font-size: 24px;font-size: 2.4rem;margin-bottom: 15px;}
    .fstView h1 span{font-size: 16px;font-size: 1.6rem;display: block;line-height: 1.2;margin-bottom: -15px;}
    .fstView h2{font-size: 18px;font-size: 1.8rem;line-height: 1.2;}
    .fstView h3{font-size: 16px;font-size: 1.6rem;}
    .fstView h3 span{font-size: 14px;font-size: 1.4rem;}
    .fstView p.area-des {font-size: 14px;font-size: 1.4rem;margin-top: 10px;}
    .content {
        font-size: 14px;font-size: 1.4rem;
        text-align: left;
        line-height: 1.5;
        padding: 20px;
    }
    .content h1{font-size: 24px;font-size: 2.4rem;}
    .content h2{font-size: 21px;font-size: 2.1rem;}
    .content h3{font-size: 19px;font-size: 1.9rem;}
    .content h3 strong{display: inline-block;padding: 5px 7px;margin-bottom: 0.5em;}
    .content h4{font-size: 18px;font-size: 1.8rem;}
    .content h1.mdl_ttl{font-size: 21px;font-size: 2.1rem;margin-bottom: 0.5em;}
    .content h2.summary_lead_ttl {margin-top: 0px;}
    .content h2.mdl_lead_ttl{font-size: 16px;font-size: 1.6rem;}
    .content h2.cont_lead_ttl{margin-top:0;}
    .content h3.cont_lead_ttl {margin-top: 1em; margin-bottom: 0;}
    .content h3.cont_lead_ttl span{font-size: 16px;font-size: 1.6rem;}
    .content h4.summary_lead_ttl {line-height: 1.25;}
    .content h4.features_ttl {margin: 10px 0;}
    .btn{font-size: 15px;font-size: 1.5rem;line-height: 1.2;}
    .caution{font-size: 9px;font-size: 0.9rem;}

    .limit {
        margin: 0 0px !important;
    }
    
    header#header h1 img{
        width: 60px;
    }
    footer#footer{
        padding-bottom:100px;
    }
    footer#footer #footerInner ul li{
        display: block;
        margin: 0 0 0.5em 0;
    }
    .footabs{
        position: fixed;
        left: 0;
        bottom: 0;
        width: 100%;
        border-top: 1px solid #d0d0d0;
        background: #dddddd;
    }
    .footabs a{
        display: block;
        width: 75%;
        margin: 8px auto;
        padding: 10px;
        text-align: center;
        color:#ffffff;
        border-top: 1px solid #000;
        background: #000;
    }

    .content.FullWidth,
    .FB-Contimg{
        height: 50vh;
    }
    .content.FullWidth.Features .FB-Contimg {
        height: auto;
    }
    
    
    .dtlTbl tr th,
    .dtlTbl tr td {
        text-align: center;
        width : 33.33333% ;
        width : -webkit-calc(100% / 3) ;
        width : calc(100% / 3) ;
    }
    
    .MapiInfoTable th {
        width: 70px;
    }

    
    .btn_box li{
        /*font-size: 13px;font-size: 1.3rem;*/
    }
    .btn2 a{
        max-width: 100%;
    }

    .spOnly {
        display: block;
    }
}
/* 解像度192画面の記述 */
@media not all, (min-resolution: 192dpi) {
	#hea h1 a {
		background: url("images/logo_2x.png") no-repeat scroll 0 0 / 212px 80px;
	}
}
