@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 ) {
    #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 {
        padding: 40px;
        height: auto;
        text-align: left;
        align-items: flex-start;
    }
    .content.FullWidth.Features {
        height: auto;
    }
    .content.FullHight{
        height: auto;
    }
    .bg-content{
        background-attachment: scroll;
    }
    .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 {
        margin-top: 20px;
        margin-bottom: 20px;
    }
    .btn a,
    .btn span{
        display: block;
        padding: 10px;
    }
    
    .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{
        height: auto;
        flex-flow: column nowrap;
        justify-content: center;
        align-items: center;
    }
    header#header address{
        font-size: 10px;font-size: 1.0rem;
        line-height: 1.35;
        margin-top: 1.5rem;
        text-align: center;
    }
    .fstView h1{font-size: 14px;font-size: 1.4rem; margin-bottom: 10px;}
    .fstView h2{font-size: 24px;font-size: 2.4rem; line-height: 1.2;}
    .content {
        font-size: 14px;font-size: 1.4rem;
        text-align: left;
        line-height: 1.8;
        padding: 20px;
    }
    .content h1 {font-size: 21px;font-size: 2.1rem; margin-top: 0;}
    .content h2 {font-size: 20px;font-size: 2.0rem; margin-top: 0;}
    .content h3 {font-size: 18px;font-size: 1.8rem;}
    .content h4 {font-size: 16px;font-size: 1.6rem;}
    .content h5 {font-size: 15px;font-size: 1.5rem;}
    .lead-sup {font-size: 12px;font-size: 1.2rem;}

    .comments{padding: 20px;}
    .caution{font-size: 9px;font-size: 0.9rem;}

    .limit {
        margin: 0 0px !important;
    }
    
    footer#footer{
        padding-bottom:100px;
    }
    footer#footer #footerInner{
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
    footer#footer #footerInner ul{
        margin-bottom: 2rem;
    }
    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.FullView {
        height: 25vh;
    }
    
    .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;
	}
}
