@charset "Shift_JIS";

/* **************************************************

Name: add_responsive.css

Description: Sub CSS

Create: 2016.04.22
Update: 2019.07.22

Copyright 2015 Hitachi,
Ltd.

***************************************************** */


.Grid3 div.ColumnSet.panel .Column1,.Grid4 div.ColumnSet.panel .Column1{
    margin-bottom: 15px;
}
.HideRWD580{
    /*display: block;*/
}
.ShowRWD580,.ShowRWD400{ display: none;}

.JS .ResponsiveTableStyle580.type1 .ResponsiveTableHeading,
.JS .ResponsiveTableStyle768.type1 .ResponsiveTableHeading {
    display: none;
}
.JS .Grid4 div.panel .Column1 a, .ColumnSlideSet.panel .Column1 a {
    height: 100%;
}
.mb0 { margin-bottom: 0 !important;}

html.JS { overflow-y:none; }
.JS body{ overflow:hidden; }

.BreakAll{
    word-break: break-all;
}

.JS input.w100{ max-width: 100%; height: auto; }


@media screen and (max-width: 994px) {


    .JS .Grid3 div.panel .Column1,.JS .Grid4 div.panel .Column1,.ColumnSlideSet.panel {
        background: none;
    }
    .JS .Grid3 div.panel .Column1 img,.JS .Grid4 div.panel .Column1 img,.ColumnSlideSet.panel .Column1 img{
        width: 100%;
        height: auto;
    }
    .JS .Grid3 div.panel .Column1 > a,.JS .Grid4 div.panel .Column1 a,.ColumnSlideSet.panel .Column1 a{
        background-color: #f2f2f2;
        display: inline-block;
        width: 100%;
    }
    .JS .Grid4 div.panel .Column1 a,.ColumnSlideSet.panel .Column1 a{
        height: 100%;
    }
    .JS .Grid4 .ColumnSlideSet.panel .Column1{
        width: 100%;
        font-size: 90%;
        line-height: 1.4em;
    }
    h2.add a {
        top: 0.3em !important;
    }

    .JS .ButtonStyle_mono{
        margin-left: -15px;
    }
    .JS .ButtonStyle_mono li{
        width: 50%;
        padding-left: 15px;
        box-sizing: border-box;
    }
    .JS .ButtonStyle_mono li.LastItem{
        margin-left: -15px;
    }
    .JS .ButtonStyle_mono a{
        width: 100%;

    }

    #inquiry_bottom p img{ width: 100%; height: auto;}
    #inquiry_bottom p.tel,#inquiry_bottom p.form,#inquiry_bottom p.catalog{
        width: 30%;
        display: inline-block;
        margin: 0 1%;
    }
    #inquiry_bottom p.TextStyle2{ font-size: 2vw !important; padding-bottom: 0  !important;  }

    .ColumnSet.AddRespoColumn6 {
        margin-left: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-evenly;
    }
    .ColumnSet.AddRespoColumn6:after {
        content: none;
    }
    .ColumnSet.AddRespoColumn6 .Column_6th_1 {
        float: none;
        margin: 0 5px 10px!important;
    }
}

/* サイドバーが落ちる*/
@media screen and (max-width: 767px) {
    #inquiry_side > h2{
        margin-bottom: 5px;
    }
    #inquiry_side > h2 span {
        background-image: url(../../../image/hsc/common/h2_2.png);
    }
    #inquiry_side > h2 img{
        display: none;
    }
    #inquiry_side > h2 span a:after{
        content: "お問い合わせ";
        display: inline-block;
        height: 42px;
        width: 100%;
        color: #333;
        text-align: center;
        line-height: 42px;
        font-weight: bold;
    }
    #inquiry_side li.tel{
        background-color: #f2f2f2;
    }
    #inquiry_side li.form a,#inquiry_side li.catalog a{
        background-color: #f2f2f2;
        width: 100%;
        display: inline-block;
    }
    .JS h2{
        margin: 0 0 15px;
    }

    .JS .ResponsiveTableStyle1.type1 tr:first-child {
        display: block;
    }
    .JS .ResponsiveTableStyle1.type1 .ResponsiveTableHeading {
        display: none;
    }
    .JS .ResponsiveTableStyle1.type1 caption{
        width: 100%;
        border: none !important;
    }

    div.freeword {
        margin-bottom: 20px;
    }

    #TopPage .Grid1 {
        text-align: center;
    }
    div.Grid4 h2 span {
        background: #fff url(../../../image/hsc/common/h2.png) no-repeat center bottom !important;
    }
    .Grid1 h2 span {
        background-image: url(../../../image/hsc/common/h2_2.png);
    }
    #TopPage .BoxPatternC > p{
        width: 200px;
        margin: 0 auto 15px;
        float: none;
        text-align: left;
    }
    #TopPage .BoxPatternC .RightAdjust{
        text-align: left !important;
    }

    .toggleMenu{
        position: relative;
    }
    .toggleMenu p{
        content: "";
        display: block;
        width: 30px;
        height: 30px;
        background: url(../../../image/hsc/common/icon_navi_side.gif) 0 0 #dadada;
        position: absolute;
        right: 5px;
        top: 4px;
        background-size:100% auto;
        cursor: pointer;
        text-indent: -999em;
    }
    .toggleMenu p.active{
        background-size:100% auto;
        background-position: 0 -30px;
        background-color: #b1000e;
    }

    .JS .ResponsiveLinkListStyle .DateListStyle1 dt.ShowNews, .JS .ResponsiveLinkListStyle .DateListStyle2 dt.ShowNews {
        display: block;
        padding: 15px 0 5px 15px;
        width: 100%;
        box-sizing: border-box\9;	/* for IE9 */
        font-weight: bold;
    }
    #inquiry_bottom{ display: none;}

    .JS .Grid1 .ButtonStyle1 a, .JS .Grid1 .ButtonStyle2 a, .JS .Column1 .ButtonStyle1 a, .JS .Column1 .ButtonStyle2 a {
        display: inline-block;
        width: 100%;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
    }
    .JS .ImgRightBox p.ImgOnlyStyle{ margin-bottom: 0 !important; }
    .JS .ImgRightBox .ImgLeftAdjust{
        float: left;
        margin: 0 20px 0 0;
    }
    .JS .ImgRightBox .ImgRightAdjust {
        float: right;
        margin: 0 0 0 20px;
    }

    /* ------ Responsive Table Style ------ */

    .JS .ResponsiveTableStyle768 table {
        display: block;
        width: 100%\9;			/* for IE9 */
        border-left: solid 1px #ddd;
        border-right: solid 1px #ddd;
        border-bottom: solid 1px #ddd;
        box-sizing: border-box\9;	/* for IE9 */
    }

    .JS .ResponsiveTableStyle768 tbody,
    .JS .ResponsiveTableStyle768 tr {display: block;}
    .JS .ResponsiveTableStyle768 tr:first-child {display: none;}

    .JS .ResponsiveTableStyle768 th,
    .JS .ResponsiveTableStyle768 td {
        float: left\9;			/* for IE9 */
        clear: both\9;			/* for IE9 */
        display: block;
        width: auto;
        width: 100%\9;			/* for IE9 */
        padding: 10px 15px;
        font-size: 83%;
        overflow: hidden;
        border: 0 none;
        border-top: solid 1px #ddd;
        box-sizing: border-box\9;	/* for IE9 */
    }
    .JS .ResponsiveTableStyle768 th {
        color: #000;
        font-size: 90%;
        font-weight: bold;
    }

    .JS .ResponsiveTableStyle768 .ResponsiveTableHeading {
        display: block;
        margin-bottom: 5px;
        color: #000;
        font-size: 105%;
        font-weight: bold;
    }
    .JS .ResponsiveTableStyle768.type1 tr:first-child {
        display: block;
    }
    .JS .ResponsiveTableStyle768.type1 .ResponsiveTableHeading {
        display: none;
    }
    .JS .ResponsiveTableStyle768.type1 caption{
        display: none;
    }


    .JS .Grid3 .NoClear .Column1andHalf {
        padding: 0 0 0 15px !important;
        width: 50% !important;
    }
    .NoClear .Column1andHalf {
        float: left !important;
    }

}

@media screen and (max-width: 579px) {
    .HideRWD580{ display: none; }
    .ShowRWD580{ display: block; }
    .JS .PageTitleStyle3 .ResponsiveText{
        font-size: 110%;
        font-weight: bold;
    }

    .JS .tabBtn ul li a {
        font-size: 80%;
    }
    .JS .LogoStyle.Map{

    }
    .JS .PageTitleStyle1 p.LogoStyle.Map, .JS .PageTitleStyle2 p.LogoStyle.Map {
        width: 100px;
        right: 0;
        top: 5px;
    }
    .JS .PageTitleStyle1 p.LogoStyle.Map + h1, .JS .PageTitleStyle2 p.LogoStyle.Map + h1 {
        padding: 0 0 10px;
    }

    .JS .ButtonStyle_mono li{
        width: 100%;
    }
    .JS .ButtonStyle_mono li.LastItem{
        margin-left: 0px;
    }

    /* ------ Responsive Table Style ------ */

    .JS .ResponsiveTableStyle580 table {
        display: block;
        width: 100%\9;			/* for IE9 */
        border-left: solid 1px #ddd;
        border-right: solid 1px #ddd;
        border-bottom: solid 1px #ddd;
        box-sizing: border-box\9;	/* for IE9 */
    }

    .JS .ResponsiveTableStyle580 tbody,
    .JS .ResponsiveTableStyle580 tr {display: block;}
    .JS .ResponsiveTableStyle580 tr:first-child {display: none;}

    .JS .ResponsiveTableStyle580 th,
    .JS .ResponsiveTableStyle580 td {
        float: left\9;			/* for IE9 */
        clear: both\9;			/* for IE9 */
        display: block;
        width: auto;
        width: 100%\9;			/* for IE9 */
        padding: 10px 15px;
        font-size: 83%;
        overflow: hidden;
        border: 0 none;
        border-top: solid 1px #ddd;
        box-sizing: border-box\9;	/* for IE9 */
    }
    .JS .ResponsiveTableStyle580 th {
        color: #000;
        font-size: 90%;
        font-weight: bold;
    }

    .JS .ResponsiveTableStyle580 .ResponsiveTableHeading {
        display: block;
        margin-bottom: 5px;
        color: #000;
        font-size: 105%;
        font-weight: bold;
    }
    .JS .ResponsiveTableStyle580.type1 tr:first-child {
        display: block;
    }
    .JS .ResponsiveTableStyle580.type1 .ResponsiveTableHeading {
        display: none;
    }
    .JS .ResponsiveTableStyle580.type1 caption{
        display: none;
    }

    .JS .ImgLeftAdjust.NoClear{
        float: left;
        margin: 0 20px 0 0;
    }
    .JS .ImgRightAdjust.NoClear{
        float: right;
        margin: 0 0 0 20px;
    }
    

}

@media screen and (min-width: 580px) and (max-width: 767px) {
    .JS .Grid3 .AddColumnSet,.JS .Grid4 div.panel {
        margin-left: -15px;
    }
    .JS .Grid4 .toppick{
        width: 100%;
    }
    .JS .Grid3 .AddColumn1,.JS .Grid4 div.panel .Column1,.JS .Grid4 .ColumnSlideSet.panel .Column1{
        float: left;
        width: 33.33333333%;
        padding-left: 15px;
    }
    div.panel {
        margin-bottom: 15px;
    }

    .JS .Grid4 .Column3 div.ColumnSet .Column1andHalf {
        margin-bottom: 0;
    }
    .JS .Grid4 .Column3 .Column1andHalf {
        float: left;
        width: 50%;
        padding-left: 15px;
        margin-bottom: 15px;
    }
    .JS .Grid4 .ColumnSlideSet.panel .Column1 {

    }

    .JS .ImgLeftAdjust{
        float: left;
        margin: 0 20px 0 0;
    }
    .JS .ImgRightAdjust {
        float: right;
        margin: 0 0 0 20px;
    }
    .JS .Grid3 .NoClear2 .Column1andHalf {
        padding: 0 0 0 15px !important;
        width: 50% !important;
    }
    .NoClear2 .Column1andHalf {
        float: left !important;
    }
}


@media screen and (min-width: 400px) and (max-width: 579px) {
    .JS .Grid3 div.ColumnSet.panel {
        margin-bottom: 0;
    }
    .JS .Grid3 .AddColumn1 {
        float: left;
        width: 50%;
        padding-left: 15px;
        margin-bottom: 15px;
    }

}
@media screen and (max-width: 579px) {

    .JS .Grid4 .Column3.Sol .ColumnSet{
        padding-left: 15px;
    }
    .JS .Grid4 .Column3 .Column1andHalf {
        float: none;
        width: 100%;
        max-width: 353px;
        text-align: center;
        margin: 0 auto;
        padding-left: 0;
    }
    .JS div.freeword{

        padding-left: 15px;
        margin-left: -15px;
        background: none;

    }
    .JS div.freeword dl{
        padding-bottom: 10px;
        background-color: #f2f2f2;
        box-sizing: border-box;

        margin: 0 auto;
        max-width: 353px;
    }
    .JS div.freeword dl dt,.JS div.freeword dl dd{
        width: 100% !important;
        float: none !important;
    }
    .JS .Grid4 .ColumnSlideSet.panel{
        width: 100% !important;
        max-width: 353px;
        margin: 0 auto 15px;
    }
    .JS .Grid4 .ColumnSlideSet.panel .Column1{
        padding-left: 0;
    }
    .JS .Grid4 div.panel .Column1{
        max-width: 353px;
        margin: 0 auto 15px;
    }


    .JS #TopPage h2 span {
        font-size: 100%;
    }
    .JS #TopPage h2.add a {
        top: 0.5em !important;
        font-size: 75%;
    }
    
    .JS .PickColumn > h2{  display: block; width: 80%;  margin: 0 auto; min-width: auto; padding: 0.3em 1em; }
    .JS .PickColumn .PickColumn_img{ width: 100%; float: none; margin-bottom: 15px; text-align: center; }
    .JS .PickColumn .PickColumn_img + .PickColumn_txt{ width: 100%; float: none; }
    
    .JS .PickEx{ display: block; }
    .JS .PickEx > h2{ display: block; background: #b1000e; width: 100%; text-align: center; font-size: 90%; padding: 5px 0; }
    .JS .PickEx > ul{ display: block; padding: 0 15px; }
}
@media screen and (max-width: 399px) {
    .HideRWD400{ display: none; }
    .ShowRWD400{ display: block; }


    .JS #popup .question {
        background: url("../../../solution/image/faq_question.gif") no-repeat;
        background-size: 30px 30px;
    }
    .JS #popup .answer {
        background: url("../../../solution/image/faq_answer.gif") no-repeat;
        background-size: 30px 30px;
    }
    .JS #popup .question p,.JS #popup .answer .inner {
        padding-left: 40px;
    }
    .JS ul.LinkListStyle_feature3 li {
        margin-right: 0;
    }
}



