@charset "utf-8";

@media screen and (max-width:1020px) {
#mainArea .geoIoWrap {
    width: 96%;
    max-width: 980px;
    margin: 0 auto;
}
#mainArea .topicsBox dl {
    margin-bottom: 20px;
}
#mainArea .topicsBox dl dt {
    width: 100%;
    margin-right: 0;
    float: none;
    margin-bottom: 10px;
}
#mainArea .topicsBox dl dd {
    width: 100%;
    float: none;
}
#mainArea .carousel li a {
    display: inline-block;
    width: 145px;
}
#mainArea .topicsArea .unitR dl dt,
#mainArea .topicsArea .unitR dl dd {
    float: none;
    width: 100%;
}
#mainArea .topicsArea .unitR dl dt {
    margin-bottom: 10px;
}
}

@media screen and (max-width:767px) {
#mainArea .disp01 {
    display: block;
}
#mainArea .disp02 {
    display: none !important;
}
#mainArea p a,
#mainArea dd a,
#mainArea ul li a,
#mainArea .linkStyle01,
#mainArea .arrowStyle01 {
    font-size: 14px;
}
#mainArea .mid {
    font-size: 14px;
}
.w900{
    width: 100%;
    padding: 0 4%;
    box-sizing: border-box;
}
/* ============================================
      下層共通要素
============================================ */

#mainArea {
    margin-bottom: 25px;
}
#mainArea .innerArea {
    margin-top: 10px;
}
#mainArea h3 {
    font-size: 18px;
    margin-bottom: 10px;
}
#mainArea .localnavWrap,
#mainArea .maincontentWrap,
#mainArea .maincontentGrid10,
#mainArea .maincontentGrid4,
#mainArea .maincontentGrid8 {
    float: none;
    width: 100%;
    max-width: 100%;
    margin-top: 20px;
}
#mainArea .textWrap {
    display: block;
    margin-bottom: 0px;
}
#mainArea .textWrap .text {
    display: block;
    font-size: 15px;
}
#mainArea .textWrap .leadText,
#mainArea .textWrap .leadImgR {
    margin-top: 10px;
}
#mainArea .textWrap .leadText {
    float: none;
    width: 100%;
    display: block;
}
#mainArea .textWrap .leadImgR {
    display: block;
    width: 100%;
    height: auto;
}
#mainArea .textWrap .leadImgR img {
    width: 100%;
    height: auto;
}
#mainArea .textWrap .textImgR {
    display: block;
    width: 45%;
    height: auto;
}
#mainArea .textWrap .readMoreImg {
    display: block;
    width: auto;
}
#mainArea .textWrap .textImgR img {
    width: 100%;
    height: auto;
}
/*---grid size---*/

/*1grid*/
#mainArea .grid2,
#mainArea .maincontentWrap .grid1,
#mainArea .maincontentWrap .grid4to1 {
    width: 10%;
}
/*2grid*/
 #mainArea.grid2,
 #mainArea .maincontentWrap .grid2 {
    width: 26.2%;
}
/*3grid*/
#mainArea .grid3,
#mainArea .maincontentWrap .grid3,
#mainArea .maincontentWrap .grid4to3,
#mainArea .maincontentWrap .grid2to3 {
    width: 41.5%;
}
/*4grid*/
#mainArea .grid4,
#mainArea .maincontentWrap .grid4,
#mainArea .maincontentGrid10 .grid4 {
    width: 76.5%;
}
/*5grid*/
#mainArea .grid5,
#mainArea .maincontentWrap .grid5,
#mainArea .maincontentGrid10 .grid5 {
    width: 72.1%;
}
/*7grid*/
#mainArea .maincontentWrap .grid8to7 {
}

/* ============================================
      solution
============================================ */
#mainArea .grid4Box a p,
#mainArea .grid4Wrap a p,
#mainArea .grid5Wrap a p {
    font-size: 14px;
    line-height: 1.4em;
}
#mainArea .maincontentGrid10 .grid3Box,
#mainArea .maincontentGrid10 .grid3Wrap a,
#mainArea .maincontentGrid10 .grid4Box {
    float: none;
    width: 100%;
    margin: 0 0 20px 0;
}
#mainArea .maincontentWrap .grid3Box,
#mainArea .maincontentWrap .grid3Wrap a,
#mainArea .maincontentGrid10 .grid4Wrap a,
#mainArea .maincontentWrap .grid4to3Wrap a {
    float: left;
    width: 47.5%;
    margin: 0 4.3% 20px 0;
}
#mainArea .grid3Box:nth-child(3n),
#mainArea .grid3Wrap a:nth-child(3n){
    margin: 0 4.3% 20px 0;
}
#mainArea .maincontentWrap .grid3Flex {
    display: flex;
    flex-wrap: wrap;
}
#mainArea .maincontentWrap .grid3Flex a {
    width: 47.5%;
    margin: 0 4.3% 20px 0;
    line-height: 15px;
    font-size: 14px;
}
#mainArea .grid3Box:nth-child(even),
#mainArea .grid3Wrap a:nth-child(even),
#mainArea .grid3Flex a:nth-child(even),
#mainArea .maincontentGrid10 .grid4Wrap a:nth-child(even) {
    margin-right: 0;
}
#mainArea .maincontentGrid10 .grid5Wrap a {
    display: block;
    float: left;
    width: 26.2%;
    margin-right: 10.7%;
}
#mainArea .maincontentGrid10 .grid5Wrap a:nth-child(3n) {
    margin-right: 0;
}
#mainArea .caseBox {
    width: 100%;
}
#mainArea .caseBox img {
    width: 41.5%;
}
#mainArea .caseBox .unitR {
    width: 55.7%;
}
#mainArea .caseBox .unitR .text {
    display: none;
}
#mainArea a.copyBox {
    line-height: 17px;
    padding: 10px 0;
    font-size: 14px;
    border-radius: 5px;
}
#mainArea .grayBtn a {
    line-height: 16px;
}

/* ============================================
      table style
============================================ */

#mainArea .table01 {
    font-size: 90%;
    width: 100%;
}
/* ============================================
      margin-bottom
============================================ */

#mainArea .mb00 {
    margin-bottom: 0 !important;
}
#mainArea .mb10 {
    margin-bottom: 5px !important;
}
#mainArea .mb15 {
    margin-bottom: 8px !important;
}
#mainArea .mb20 {
    margin-bottom: 10px !important;
}
#mainArea .mb30 {
    margin-bottom: 15px !important;
}
/* ============================================
      width for smartphone      
============================================ */

#mainArea .smp100per {
    width: 100% !important;
}
/* ============================================
      search result  
============================================ */

#mainArea div.mf_contents {
    width: 98%;
}
#mainArea div.mf_setting1 {
    background: #ccc;
}
#mainArea div.mf_setting2 {
    background: none;
}
#mainArea div.mf_setting3,
#mainArea .mode_imgsize3 .img_frame,
#mainArea .mode_imgsize3 .img_frame {
    background: none;
}
#mainArea .img_frame {
    margin-right: 0;
}
#mainArea div.mf_pagenavi {
    float: none;
    width: 100%;
    height: auto;
}
#mainArea li.mf_prevpage,
#mainArea li.mf_nextpage,
#mainArea .mf_prevpage a,
#mainArea .mf_prevpage a:link,
#mainArea .mf_prevpage a:visited,
#mainArea .mf_nextpage a,
#mainArea .mf_nextpage a:link,
#mainArea .mf_nextpage a:visited {
    width: 100%;
}
#mainArea .mf_pagenumber li,
#mainArea li.mf_pagenow {
    display: inline-block;
    margin: 10px 1.3%;
    width: 6%;
}
#mainArea .mf_pagetop a {
    background: #fff;
}

/* ============================================
      anchor
============================================ */
#mainArea .anchor_link li {
    flex-basis: 100%;
    margin-right:0;
}
#mainArea .anchor_link li a {
    width: 100%;
    height: 100%;
    position: relative;
    text-align: center;
    font-size: 15px;
    font-weight: bold;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-decoration: none;
    border-bottom: 1px solid #212121;
    padding: 9px 7% 8px 0px;
}

/* ============================================
      style.css移植
============================================ */
#mainArea h2.titleType01{
    font-size: 20px;
    margin-bottom: 10px;
    margin-top: 20px;
    border-bottom: none;
    padding: 0;
}

.productTitle_wrapper{
    display: block;
    z-index: 1000;
    width: 100%;
    padding: 0;
    background: #ced2d7;
}

.productTitle_wrapper .productTitle{
    display: block;
    font-size: 16px;
    font-weight: bold;
    padding: 13px 0 13px 15px;
    text-decoration: none;
}

#productDetailFeaturesBox{
    margin: 0;
    padding: 0;
}

.productTitle {
    font-size: 23px;
    padding: 0;
    margin: 0;
}

}