@charset "utf-8";

/* =================================================== */
/* SET
/* =================================================== */

@media only screen and (min-width: 481px) and (max-width:768px) {
/* タブレット向けの処理 */
}

@media only screen and (min-width: 0px) and (max-width:480px) {
/* スマホ向けの処理 */
}

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


@media only screen and (min-width: 0px) and (max-width:480px) {
	body{
		min-width: auto;
	}
}

/* =================================================== */
/* header
/* =================================================== */

/* hamburger-menu =========== */

@media only screen and (min-width: 0px) and (max-width:480px) {

  :root {
    --hamburger-menu-size: 50px; /* メニューの大きさ */ 
    --hamburger-menu-padding: 12px;
  }

  .humberger-menu-container {
    right: 20px;
  }
  .hamburger-menu {
    width:  var(--hamburger-menu-size);
    height: 50px;
  }
  .hamburger-menu-line {
    height: var(--hamburger-menu-border-px);
  }
  .line-top {
    width: 50px;
    height: 2px;
  }
  .line-middle {
    /*top: calc(50% - var(--hamburger-menu-border-px)/2);*/
    right: 10px;
    width: 30px;
    
  }
  .line-bottom {
    /*bottom: var(--hamburger-menu-padding);*/
    width: 50px;
  }

  .hamburger-menu-active > .line-middle {
    left: var(--hamburger-menu-padding);
  }
  .hamburger-menu-active > .line-bottom {
    width: 50px;
  }
	
  .globalNavi {
    padding: 50px 25px 20px;
  }
}

@media only screen and (min-width: 0px) and (max-width:480px) {
  .header-inner {
    height: 65px;
    min-width: auto;
  }
  .header-inner .siteneme-block {
    width: 156px;
    height: 28px;
    left: 20px;
  }
  .header-inner .logo-box {
    margin: 0;
    width: auto;
  }
  /*.header-inner .sub-menu {
    display: none;
  }*/
}

/* globalNavi =========== */
@media only screen and (min-width: 0px) and (max-width:480px) {
  .header-inner .gmenu-block li {
    font-size: 1.5rem;
  }
  
  .globalNavi {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    height: 100vh;
    width: 100%;
    background: #000000;
    transform: none;
    z-index: 999;
    /*box-shadow: 0px 0px 10px 4px rgba(0,0,0,0.1);*/
  }
  
  .header-inner .gmenu-block {
    /*position: static;
    top: 0;
    right: auto;
    bottom: auto;
    height: auto !important;*/
    width: 100%;
    padding-top: 30px;
    /*box-shadow: none !important;*/
  }
  .header-inner .gmenu-block ul {
    display: block;
    /*display: -webkit-flex;
    display: flex;
    justify-content: space-between;
    align-items: center;*/
  }
  .header-inner .gmenu-block li {
    width: 100%;
    font-size: 1.8rem;
    display: block;
    margin-left: 0;
    border-bottom: #555555 dotted 1px;
  }
  .header-inner .gmenu-block li:nth-of-type(6) {
    border: none;
  }
  .header-inner .gmenu-block .shikiri {
    border-bottom: #555555 solid 2px;
  }
  .header-inner .gmenu-block li.is-active {
    border-bottom: #555555 dotted 1px;
  }
  .header-inner .gmenu-block a {
    display: block;
    padding: 15px 0;
    color: #ffffff;
    background-image: url("assets/images/common/icon_arrow-whi_m.png");
    background-repeat: no-repeat;
    background-size: 28px auto;
    background-position: right 10px center;
  }
  .header-inner .gmenu-block li.is-active a {
    color: #cc0000;
    border-bottom: none;
  }
  .header-inner .gmenu-block a:hover,
  .header-inner .gmenu-block a:active {
    text-decoration: none;
    border: none;
    color: #000000;
  }
  .header-inner .gmenu-block li.contact-menu a {
    height: auto;
    margin-top: 30px;
    padding: 20px;
    display: block;
  }
  .header-inner .gmenu-block li.is-active a {
    color: #53efff;
    border-bottom: none;
  }
  .header-inner .gmenu-block li.contact-menu a::before {
    content: "";
    display: inline-block;
    width: 32px;
    height: 22px;
    background-image: url("assets/images/common/icon_mail.png");
    background-size: 100% auto;
    margin-right: 8px;
    margin-top: -4px;
    vertical-align: middle;
  }

}

/* smaller =========== */
@media only screen and (min-width: 0px) and (max-width:480px) {
  header.smaller .header-inner {
    height: 65px;
  }
  header.smaller .header-inner .gmenu-block a {
    color: #ffffff;
  }
  header.smaller .hamburger-menu-line {
    background-color: #333333;
  }
}







/* =================================================== */
/* footer
/* =================================================== */

@media only screen and (min-width: 0px) and (max-width:480px) {
  footer {
    width: 100%;
    min-width: inherit;
    padding: 30px 20px 20px;
  }
  .footer-wrapper {
    position: static;
    height: auto;
  }
  .footer-wrapper .copr-info {
    position: static;
  }
  .footer-wrapper .ft-coname {
    margin-top: 15px;
    /*font-size: 1.7rem;*/
  }
  .footer-navi {
    position: static;
    margin-top: 25px;
    /*right: 0;
    bottom: 0;*/
  }
  .footer-navi ul {
    text-align: left;
  }
  .footer-navi li {
    /*display: inline-block;*/
    width: 45%;
    padding: 10px 0;
  }
  .footer-navi li:last-child {
    display: block;
    margin-top: 30px;
  }
  .allrights-reserved {
    padding-bottom: 0px;
  }
}


/* =================================================== */
/* 共通
/* =================================================== */

@media only screen and (min-width: 0px) and (max-width:480px) {
  body.page main,
  body.archive main,
  body.single main {
    padding-top: 50px;
  }
  
  .layout-2column {
    margin-top: 0px;
    padding: 0 10px;
    display: -webkit-block;
    display: block;
  }
  .layout-2column .content-area {
    margin-right: 0px;
    margin-bottom: 30px;
    padding: 15px 15px;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    min-height: inherit;
  }
  .layout-1column {
    margin-top: 30px;
    padding: 0 20px;
  }
  .layout-1column .content-area {
    padding: 15px 15px;
    margin-bottom: 30px;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    min-height: inherit;
  }
}

/* responsive view =========== */
@media only screen and (min-width: 0px) and (max-width:480px) {
  .pc-mode-view {
    display: none !important;
  }
  .smp-mode-view {
    display: block !important;
  }

  .pc-mode-view-tb {
    display: none !important;
  }
  .smp-mode-view-tb {
    display: table !important;
  }
}

/* style =========== */
@media only screen and (min-width: 0px) and (max-width:480px) {
  .br-pc { display:none; }
  .br-sp { display:block; }
  .block-pc { display: block; }
  .block-sp { display: inline-block; }
}

/* Contact-block =========== */
@media only screen and (min-width: 0px) and (max-width:480px) {
  .contact-block {
    margin: 10em 0 0;
    padding: 50px 20px 40px;
    min-width: inherit;
    background-position: center;
    /*background-size: cover;*/
    display: block;
  }
  .contact-block .ttl-box {
    display: block;
    font-size: 4.0rem;
    margin-right: 0;
    margin-bottom: 30px;
    width: 100%;
  }
  .contact-block .ttl-box span {
    font-size: 1.5rem;
    padding-left: 20px;
    margin-top: 15px;
  }
  .contact-block .inner-block {
    width: 100%;
  }
  .contact-block .inner-block .tel-block {
    padding: 15px 10px;
  }
  .contact-block .tel-block .tel-box {
    font-size: 3.0rem;
  }
  /*.contact-block .tel-block .tel-box .i-tel::before {
    content: "";
    display: inline-block;
    width: 30px;
    height: 27px;
    background-image: url("assets/images/common/icon_telphone.png");
    background-size: 100% auto;
    margin-right: 15px;
    margin-top: -4px;
    vertical-align: middle;
  }*/
  .contact-block .inner-block .webform-block a {
    padding: 18px 20px;
    font-size: 1.8rem;
    background-size: 30px auto;
    background-position: right 20px center;
  }
  /*.contact-block .inner-block .webform-block .i-mail::before {
    content: "";
    display: inline-block;
    width: 32px;
    height: 22px;
    background-image: url("assets/images/common/icon_mail.png");
    background-size: 100% auto;
    margin-right: 15px;
    margin-top: -4px;
    vertical-align: middle;
  }
  .contact-block .inner-block .webform-block a:hover {
    text-decoration: none;
    text-align: left;
    background-color: #53efff;
    background-position: right 20px center;
  }*/
}

/* Button-set =========== */
@media only screen and (min-width: 0px) and (max-width:480px) {
  .button-set a {
    background-position: center right 10px;
  }
  .button-set .btn-white {
    font-size: 1.5rem;
    /*width: 240px;*/
    padding: 10px 12px;
    background-size: 30px auto;
  }
  .button-set .btn-white:hover {
    color: #53efff;
    background-position: center right 10px;
  }

  .button-set .btn-blue {
    font-size: 1.5rem;
    /*width: 240px;*/
    padding: 10px 12px;
    background-size: 30px auto;
  }

  .button-set .btn-typeA,
  .button-set .btn-typeB {
    font-size: 2.2rem;
    font-weight: 400;
    color: #ffffff;
    padding: 15px 40px 15px 15px;
    min-width: 350px;
    background-color: #333333;
    background-position: right 15px center;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
  }
}

/* table =========== */
@media only screen and (min-width: 0px) and (max-width:480px) {
  /*.table-set {
    border-spacing: 0;
  }
  .table-set th,
  .table-set td {
    display: block;
    padding: 13px 5px;
    font-size: 1.4rem;
  }
  .table-set th {
    width: 100%;
    font-size: 1.6rem;
  }
  .table-set td {

  }

  table.type-1 th {
    border-bottom: #76c8f9 solid 2px;
    width: 100%;
    font-weight: 500;
    padding-bottom: 5px;
  }
  table.type-1 td {
    border: none;
  }
  table.type-1 tr:first-child th {
    border-top: none;
  }*/
  
  
}



/* =================================================== */
/* HOME
/* =================================================== */

@media only screen and (min-width: 0px) and (max-width:480px) {
  #top .wrap-contents {
    width: 100%;
    /*overflow: hidden;*/
  }

  #top .wrap-contents section {
    margin-bottom: 60px;
  }

  #top .contents-ttlBlock {
    margin: 0 10px 30px;
    display: block;
    /*display: -webkit-flex;
    display: flex;
    justify-content: space-between;
    align-items: center;*/
    width: 100%;
    /*font-family: 'Poppins', sans-serif;*/
  }

  #top h2.ttl-block {
    /*display: block;*/
    font-size: 3.6rem;
    /*font-weight: 400;
    margin-right: auto;*/
    width: 100%;
  }
  #top h2.ttl-block span {
    font-size: 1.3rem;
    /*font-weight: 400;*/
    margin-left: 15px;
    padding-left: 15px;
    /*border-left: #000000 solid 1px;*/
  }
}

/* Main Visual =========== */
@media only screen and (min-width: 0px) and (max-width:480px) {
  #top .mainVisual-block {
    height: 100vh;
  }
  #top .mainVisual-block .eng-txt {
    top: 20%;
    left: 20px;
    transform: none;
    -webkit- transform: none;
    font-size: 4.4rem;
    line-height: 1.3;
  }
  #top .mainVisual-block .catch-txt {
    bottom: 18%;
    right: 20px;
    font-size: 2.5rem;
    line-height: 1.6;
  }
}

/* About block =========== */
@media only screen and (min-width: 0px) and (max-width:480px) {
  #top .about-block {
    padding: 4em 10px 0;
  }
  #top .about-block .inner-block {
    min-width: 300px;
    padding: 10px;
    /*background-image: url("assets/images/home/img_top_about-l.png"), url("assets/images/home/img_top_about-r.png");
    background-repeat: no-repeat;
    background-size: auto;
    background-position: left  top, right bottom;*/
  }
  #top .about-block .txt-box {
    font-size: 1.6rem;
    line-height: 2.0;
  }
}

/* Business block =========== */
@media only screen and (min-width: 0px) and (max-width:480px) {
  #top .business-block .button-set {
    margin-top: 15px;
    margin-left: 0px;
    width: 160px;
  }
  #top .business-block .button-set a {
    padding: 6px 10px;
    width: 160px;
  }
  #top .business-block .inner-block.first-block {
    margin-bottom: 40px;
  }
  #top .business-block .inner-block h3.ttl-box {
    margin-bottom: 10px;
  }
  #top .business-block .inner-block h3.ttl-box span {
    font-size: 2.2rem;
  }
  #top .business-block .menu-list {
    border-top: 3px solid #c21500;
  }
  /*#top .business-block .menu-list {
    list-style: none;
    display: -webkit-flex;
    display: flex;
    justify-content: space-between;
    align-items:stretch;
    gap: 0 1px;
  }*/
  /*#top .business-block .first-block .menu-list  li {
    display: block;
    width: 50%;
  }*/
  /*#top .business-block .second-block .menu-list  li {
    display: block;
    width: 33.33333%;
  }*/
  /*#top .business-block .menu-list a {
    position: relative;
    display: block;
    cursor: pointer;
    overflow: hidden;
    width: 100%;
  }*/
  /*#top .business-block .menu-list .box-bg {
    display: block;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    transition: transform .6s ease;
    width: 100%;
  }
  #top .business-block .menu-list a:hover .box-bg {
    transform: scale(1.1);
  }*/
  #top .business-block .first-block .menu-list .box-bg {
    height: 230px;
  }
  /*#top .business-block .first-block .menu-list .lis1-1 .box-bg {
    background-image: url("assets/images/home/img_biz_smartfactory.jpg");
  }
  #top .business-block .first-block .menu-list .lis1-2 .box-bg {
    background-image: url("assets/images/home/img_biz_smartfarming.jpg");
  }*/
  #top .business-block .second-block .menu-list .box-bg {
    height: 120px;
  }
  /*#top .business-block .second-block .menu-list .lis2-1 .box-bg {
    background-image: url("assets/images/home/img_biz_systemdev.jpg");
  }
  #top .business-block .second-block .menu-list .lis2-2 .box-bg {
    background-image: url("assets/images/home/img_biz_web.jpg");
  }
  #top .business-block .second-block .menu-list .lis2-3 .box-bg {
    background-image: url("assets/images/home/img_biz_infra.jpg");
  }*/
  #top .business-block .menu-list .txt-box {
    font-size: 2.0rem;
    text-align: center;
    /*align-items: center;
    bottom: 0;
    color: #fff;
    display: flex;
    justify-content: center;
    left: 0;
    margin: auto;
    position: absolute;
    right: 0;
    top: 0;*/
    width: 90%;
    /*z-index: 2;*/
  }
  #top .business-block .second-block .menu-list .txt-box {
    font-size: 1.6rem;
  }
}

/* Products block =========== */
@media only screen and (min-width: 0px) and (max-width:480px) {
  #top .products-block .con-block {
    margin: 0 10px 80px;
    width : -webkit-calc(100% - 20px);
    width : calc(100% - 20px);
    /*width: 90%;
    background-color: #f6f6f6;*/
    padding: 20px;
  }
  #top .products-block .inner-block {
    position: static;
    height: auto;
    /*background-color: #ffffff;
    background-image: url("assets/images/home/img_prod_mcmbgimg.jpg");
    background-position: center center;
    background-size: auto;
    background-repeat: no-repeat;*/
  }
  #top .products-block .lf-box {
    position: static;
    padding: 20px 10px 180px;
    /*top: 0;
    left: 0;*/
    width: 100%;
    max-width: inherit ;
    height: auto;
    /*background-color: rgba(255,255,255,0.9);
    text-align: center;*/
  }
  #top .products-block .lf-box .ttl-box {
    margin-top: 0px;
    font-size: 5.0rem;
  }
  #top .products-block .lf-box .sub-txt {
    margin-top: 8px;
    font-size: 1.6rem;
    /*font-weight: 400;
    font-family: 'Poppins', sans-serif;*/
  }
  #top .products-block .lf-box .txt-box {
    margin-top: 20px;
    font-size: 1.8rem;
    /*font-weight: 400;
    line-height: 1.6;*/
  }
  #top .products-block .button-set {
    margin-top: 30px;
    margin-left: 0px;
    width: 160px;
  }
  #top .products-block .button-set a {
    padding: 6px 10px;
    width: 160px;
  }
  #top .products-block .img-box {
    /*position: absolute;
    bottom: -40px;
    right: 20px;
    z-index: 10;*/
    bottom: -25px;
    width: 70%;
    height: auto;
  }
}

/* Company block =========== */
@media only screen and (min-width: 0px) and (max-width:480px) {
  #top .company-block {
    margin: 50px 10px 0px;
    padding: 0px 0px 20em;
    background-position: center bottom;
    /*background-image: url("assets/images/home/img_comp_bgimg.png");
    background-position: right 10% center;
    background-size: contain;
    background-repeat: no-repeat;*/
  }
  #top .company-block .inner-block {
    margin: 0 auto 40px;
    width: 100%;
  }
  #top .company-block .contents-ttlBlock {
    margin: 0 0 20px;
    width: 100%;
  }
  #top .company-block h2.txt-box {
    font-size: 2.4rem;
  }
  #top .company-block .button-set {
    margin-top: 30px;
    margin-left: 0px;
    width: 160px;
  }
  #top .company-block .button-set a {
    padding: 6px 10px;
    width: 160px;
  }
}

/* News block =========== */
@media only screen and (min-width: 0px) and (max-width:480px) {
  #top .news-block .button-set {
    margin-top: 10px;
    margin-left: 0px;
    width: 160px;
  }
  #top .news-block .button-set a {
    padding: 6px 10px;
    width: 160px;
  }
  #top .news-block .contents-ttlBlock {
    margin-bottom: 20px;
  }
  /*#top .news-block .news-slider-block {
    overflow: hidden;
  }*/
  #top .news-block .inner{
    /*width: min(100%, 1120px);
    margin: 0 auto;*/
    padding: 0 10px;
  }
  /*#top .news-block .lineup{
    position: relative;
    width: calc(100% + (100vw - 100%) / 2);
  }*/

  #top .news-block .news-slider-block .unit-box {
    /*background-color: #ffffff;
    margin: 0 5px;
    text-decoration: none;*/
    display: block;
    /*display: -webkit-flex;
    display: flex;
    justify-content: space-between;*/
    padding: 12px 12px;
  }
  /*#top .news-block .news-slider-block .unit-box:hover {
    filter:alpha(opacity=50);
    -moz-opacity: 0.5;
    opacity: 0.5;
    box-shadow: 0px 0px 10px 6px rgba(0,0,0,0.1);
  }*/
  #top .news-block .news-slider-block .news-kiji {
    /*width : -webkit-calc(100% - 220px);
    width : calc(100% - 220px);*/
    width: 100%;
  }
  #top .news-block .news-slider-block .news-kiji .date-box {
    margin-bottom: 8px;
  }
  #top .news-block .news-slider-block .news-kiji .ttl-box {
    font-size: 2.0rem;
    margin-bottom: 12px;
  }
  #top .news-block .news-slider-block .news-kiji .txt-box {
    font-size: 1.4rem;
    line-height: 1.8;
  }
  #top .news-block .news-slider-block .unit-box .img-box {
    margin-top: 20px;
    width: 200px;
    height: 150px;
  }
}




/* =================================================== */
/* SECOND PAGE
/* =================================================== */

@media only screen and (min-width: 0px) and (max-width:480px) {
  .second-page .mainVisual-block {
    height: 300px;
    /*background-position: center center;*/
  }
  .second-page .pageTtl-block .ttl-box {
    /*top: 150px;*/
    left: 20px;
    font-size: 4.8rem;
  }
  
  .second-page section {
    margin-bottom: 50px;
  }
  
  .grade-ttl {
    width: 60%;
    margin-bottom: 10px;
  }
  .grade-ttl span {
    font-size: 1.6rem;
  }
  .grade-border {
    border-top: 3px solid #ffffff;
    border-image: linear-gradient(to right, #0079c5 0%, #60cbd5 60%, #ffffff 60%, #ffffff 100%);
    border-image-slice: 1;
  }
  
  .h2Ttl-box {
    font-size: 2.8rem;
    margin: 30px 0 30px;
  }
}


/* ◆ Business block ==========================
======================================== */
@media only screen and (min-width: 0px) and (max-width:480px) {
  #business .intor-block .inner-block {
    text-align: center;
    min-width: inherit;
  }
  #business .intor-block .inner-block .ttl-box {
    font-size: 2.2rem;
  }
  
  #business .service-group,
  #business .service-group2,
  #business .service-group3,
  #business .service-group4 {
    display: block;
    /*display: -webkit-flex;
    display: flex;
    align-items: center;*/
  }
  /*#business .biz-block .service-group,
  #business .biz-block .service-group2 {
    padding-top: 50px;
  }*/
  #business .service-group + .service-group {
    margin: 180px 0 250px !important;
  }
  #business .biz-block .service-group,
  #business .biz-block .service-group2 {
    padding-top: 30px;
  }
    #business .biz-block .service-group .cont-block {
    width : -webkit-calc(90% - 10px);
    width : calc(90% - 10px);
    margin: 0 10% 0 10px;
  }
  #business .biz-block .service-group .cont-block  .inner-block {
    padding: 20px 20px 80px;
  }
  #business .biz-block .cont-block h3.ttl-box {
    font-size: 2.4rem;
    /*margin-bottom: 30px;*/
  }
  #business .biz-block .cont-block .txt-box {
    font-size: 1.5rem;
    line-height: 1.8;
    width: 100%;
  }
  
  #business .biz-block .service-group .img-box {
    position: absolute;
    margin-top: -50px;
    width: 90%;
    height: auto;
    margin-left: 10%;
    /*overflow: hidden;*/
  }
  #business .biz-block .img-box img {
    position: static;
    /*top: 50%;
    left: 50%;*/
    transform: none;
    /*width: 100%;
    height: auto;*/
  }
  
  #business .biz-block .service-group .button-block {
    width: 100%;
    margin-top: 40px;
    display: block;
  }
  #business .biz-block .service-group .button-block .button-set {
    width: 100%;
  }
  #business .biz-block .service-group .button-block .button-set + .button-set {
    margin-top: 20px;
  }
  #business .biz-block .service-group .button-block .button-set a,
  #business .biz-block .service-group4 .button-block .button-set a {
    padding: 12px 20px;
  }
  
  #business .service-group2 {
    display: block;
  }
  #business .biz-block .service-group2 .cont-block h3.ttl-box,
  #business .biz-block .service-group3 .cont-block h3.ttl-box {
    font-size: 2.4rem;
  }
  #business .biz-block .service-group2 .cont-block {
    width : -webkit-calc(100% - 20px);
    width : calc(100% - 20px);
    margin: 0 auto;
  }
  #business .biz-block .service-group2 .img-box {
    position: static;
    margin-top: 20px;
    width: 100%;
    height: auto;
  }
  #business .biz-block .service-group2 .desc-block {
    width: 100%;
    padding: 10px;
    margin-top: 30px;
    display: -webkit-flex;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    flex-wrap: wrap;
  }
  #business .biz-block .service-group2 .desc-block .desc-box {
    width: 90%;
    height: auto;
  }
  #business .biz-block .desc-block .desc-box.item-box1 {
    margin-top: 0px;
  }
  #business .biz-block .desc-block .desc-box.item-box2 {
    margin-top: 0px;
    margin-left: 5%;
  }
  #business .biz-block .desc-block .desc-box.item-box3 {
    margin-left: 0px;
    margin-left: 10%;
  }
  #business .biz-block .desc-block .desc-box + .desc-box {
    margin-top: -1px;
  }
  #business .biz-block .desc-block .desc-box .in-box {
    padding: 15px;
  }
  #business .biz-block .desc-block .desc-box .in-box dt {
    font-size: 2.0rem;
    margin-bottom: 10px;
  }
  #business .biz-block .desc-block .desc-box .in-box dd {
    font-size: 1.4rem;
    line-height: 1.8;
  }
  
  #business .biz-block .service-group3 {
    /*align-items: flex-start;*/
    margin-top: 50px !important;
  }
  #business .biz-block .service-group3.flx-Rev,
  #business .biz-block .service-group4.flx-Rev {
    flex-direction: row;
  }
  #business .biz-block .service-group3 .cont-block {
    width : -webkit-calc(100% - 20px);
    width : calc(100% - 20px);
    margin: 0 auto;
  }
  #business .biz-block .service-group3 .img-box {
    position: static;
    margin-top: 20px;
    width: 100%;
    height: auto;
  }
  #business .biz-block .service-group3 .desc-block {
    margin-top: 20px;
  }
  #business .biz-block .service-group3 .desc-block .desc-box {
    max-width: 700px;
  }
  
  #business .biz-block .read-txt {
    font-size: 2.0rem;
    padding: 30px 10px;
  }
  #business .biz-block .service-group4 {
    align-items: flex-start;
  }
  #business .biz-block .service-group4 .cont-block {
    width: calc(100% - 20px);
    margin: 0px auto;
  }
  #business .biz-block .service-group4 .img-box2 {
    position: static;
    width: calc(100% - 20px);
    max-height: inherit;
    margin: 40px auto;
  }
  #business .biz-block .cont-block h3.ttl-box2 {
    font-size: 3.0rem;
    margin-bottom: 20px;
  }
  #business .biz-block .cont-block h3.ttl-box2 .sub-txt {
    font-size: 1.7rem;
  }
  #business .biz-block .service-group4 .cont-block .txt-box {
    width: 100%;
  }
  #business .biz-block .service-group4 .cont-block .info-txt {
    font-size: 1.5rem;
    margin-top: 25px;
    width: 100%;
  }
  #business .biz-block .service-group4 .button-block .button-set {
    max-width: inherit;
    margin-top: 30px;
  }
}


/* ◆ Product block ==========================
======================================== */
@media only screen and (min-width: 0px) and (max-width:480px) {
  #products .intor-block .inner-block {
    text-align: center;
    min-width: inherit;
  }
  #products .intor-block .inner-block .ttl-box {
    font-size: 2.2rem;
  }
  


/* ◆ Compnay block ==========================
======================================== */
@media only screen and (min-width: 0px) and (max-width:480px) {
  #company .intor-block {
    display: block;
  }
  #company .intor-block .inner-block {
    width: 90%;
    padding-left: 10px;
  }
  #company .intor-block .ttl-box {
    font-size: 2.4rem;
  }
  #company .intor-block .txt-box {
    margin-top: 20px;
    padding-right: 0px;
    font-size: 1.6rem;
    line-height: 1.8;
  }
  #company .intor-block .img-box {
    width : 100%;
    margin-top: 20px;
    text-align: right;
  }
  #company .intor-block .img-box img {
    width: 90%;
    height: auto;
  }
  
  #company .overview-block .table-set {
    min-width: inherit;
    margin: 0 auto;
  }
  #company .overview-block .table-set th {
    width: 27%;
    padding: 10px;
    font-size: 1.5rem;
  }
  #company .overview-block .table-set td {
    width: 73%;
    padding: 10px;
    font-size: 1.4rem;
  }
  #company table.type-1 .td-style {
    border-left: none;
    padding-left: 0px;
  }

  .Associated-block h3.sub-ttl {
    width : -webkit-calc(100% - 20px);
  width : calc(100% - 20px);
    text-align: center;
    font-size: 2.2rem;
    margin: 50px auto 30px;
    padding-bottom: 20px;
    border-bottom: #0099cc solid 1px;
  }
  .Associated-block .group-bunner {
    display: block;
    width : -webkit-calc(100% - 20px);
    width : calc(100% - 20px);
    margin: 0 auto;
  }
  .Associated-block .banner-unit {
    width: 100%;
  }
  .Associated-block .banner-unit + .banner-unit {
    margin-top: 20px;
  }
  /*.Associated-block .banner-unit a {
    display: block;
    background-color: #ffffff;
    text-align: center;
    padding: 15px;
    border: #cccccc solid 1px;
  }
  .Associated-block .banner-unit a:hover {
    filter:alpha(opacity=50);
    -moz-opacity: 0.5;
    opacity: 0.5;
    box-shadow: 0px 0px 6px 4px rgba(0,0,0,0.1);
    border: #53efff solid 1px;
  }
  .Associated-block .banner-unit .logo-box {
    display: block;
    margin-bottom: 15px; 
  }*/
  /*.Associated-block .banner-unit a .link-txt {
    display: inline-block;
    width: 300px;
    font-size: 1.3rem;
    color: #ffffff;
    background-color: #cccccc;
    padding: 3px;
    text-align: center;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
  }
  .Associated-block .banner-unit a:hover .link-txt {
    background-color: #53efff;
  }*/
  .Associated-block .group-bunner .txt-box {
    margin-top: 10px;
    width: 100%;
  }
}



/* ◆ Works block ==========================
======================================== */
@media only screen and (min-width: 0px) and (max-width:480px) {
  #works .intor-block .inner-block {
    text-align: center;
    min-width: inherit;
    width : -webkit-calc(100% - 20px);
    width : calc(100% - 20px);
    margin: 0 auto;
  }
  #works .intor-block .inner-block .ttl-box {
    font-size: 2.4rem;
  }
  
  /*#works .Works-block .bizList-group h3.ttl-box {
    font-size: 1.8rem;
  }*/
  #works .Works-block .bizList-group .inner-block {
    padding: 30px 10px 0;
    margin: 0 auto;
    min-width: inherit;
  }
  /*#works .Works-block .bizList-group + .bizList-group {
    margin-top: 60px;
  }*/
  
  #works .Works-block .bizList-group .table-set.type-2 {
    position: relative;
    width: 900px;
  }
}



/* ◆ Access block ==========================
======================================== */
@media only screen and (min-width: 0px) and (max-width:480px) {
  #access .access-block .hd-block {
    margin: 0 20px 30px;
  }
  #access .access-block .hd-block .h2Ttl-box {
    font-size: 2.8rem;
    margin-top: 0;
    margin-bottom: 18px;
  }
  #access .access-block .hd-block .txt-box {
    font-size: 1.5rem;
  }
  #access .access-block .gmap-block {
    width : -webkit-calc(100% - 15px);
    width : calc(100% - 15px);
    border-radius: 0px 80px 0 0 / 0px 80px 0 0;
    -webkit-border-radius: 0px 80px 0 0 / 0px 80px 0 0;
    -moz-border-radius: 0px 80px 0 0 / 0px 80px 0 0;
  }
  #access .access-block .gmap-block iframe {
    height: 400px;
  }
  #access .access-block .accessinfo-block {
    margin: 20px 0 0 10px;
    /*display: -webkit-flex;
    display: flex;
    justify-content: space-between;
    align-items:stretch;*/
    width : -webkit-calc(100% - 30px);
    width : calc(100% - 30px);
  }
  #access .access-block .accessinfo-block .info-box {
    background-color: #ffffff;
    padding: 15px 10px;
    border-radius: 6px;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    width : -webkit-calc(50% - 5px);
    width : calc(50% - 5px);
  }
  #access .access-block .accessinfo-block .info-box .ttl-box {
    font-size: 1.6rem;
  }
  /*#access .access-block .accessinfo-block .info-box .txt-box {
    font-size: 1.4rem;
  }*/
  /*#access .access-block .accessinfo-block .info-box .fa-solid {
    color: #0099cc;
    margin-right: 5px;
  }*/
}



/* ◆ Privacy Policy block ==========================
======================================== */
@media only screen and (min-width: 0px) and (max-width:480px) {
  #privacy .privacy-block {
    min-width: inherit;
    width : -webkit-calc(100% - 20px);
    width : calc(100% - 20px);
    margin: 0 auto;
    font-size: 1.5rem;
  }
  #privacy .privacy-block .read-txt {
    margin-bottom: 30px;
    line-height: 1.8;
  }
  /*#privacy .privacy-block ol {
    margin-left: 30px;
  }*/
  #privacy .privacy-block li {
    /*margin-bottom: 20px;*/
    font-size: 1.4rem;
    line-height: 1.8;
  }
}



/* ◆ Contact block ==========================
======================================== */
@media only screen and (min-width: 0px) and (max-width:480px) {
  #contact .mainVisual-block,
  #contact_confirm .mainVisual-block,
  #contact_finish .mainVisual-block {
    height: 300px;
  }
  .page-inquiry-block {
    margin: 0 auto 60px;
    width : -webkit-calc(100% - 20px);
    width : calc(100% - 20px);
    min-width: inherit;
  }
  #contact .read-block,
  #contact_confirm .read-block,
  #contact_finish .read-block {
    font-size: 1.5rem;
    font-weight: 400;
    margin-bottom: 20px;
    margin-top: 40px;
  }
  select.form-control {
    width: 100%;
  }
  input.form-control {
    width: 100%;
  }
  textarea.form-control {
    width: 100%;
  }
  
  .form-block .kakuninBlock {
    width: 100%;
    margin: 30px auto;
  }
  
  .contact-btns button, .contact-btns input[type=submit] {
    display: block;
    margin: 0 auto;
  }
  
  /*type-1*/
  #contact table.type-1,
  #contact_confirm table.type-1 {
    background-color: #ffffff;
  }
  #contact table.type-1 th,
  #contact table.type-1 td,
  #contact_confirm table.type-1 th,
  #contact_confirm table.type-1 td {
    display: block;
    padding: 15px;
  }
  #contact table.type-1 th,
  #contact_confirm table.type-1 th {
    width: 100%;
    border-bottom: none;
  }
  #contact table.type-1 td,
  #contact_confirm table.type-1 td {
    border-bottom: none;
  }
}



/* ◆ NEWS block ==========================
======================================== */
@media only screen and (min-width: 0px) and (max-width:480px) {
  /*body.post-type-archive-newstopics .archive-list li {
    display: block;
    border-bottom: #cccccc solid 1px;
  }*/
  /*body.post-type-archive-newstopics .archive-list .img-box {
    flex-basis: 150px;
    height: auto;
  }*/
  body.post-type-archive-newstopics .archive-list .date-box {
    font-weight: 700;
  }
  body.post-type-archive-newstopics .archive-list li a {
    font-size: 1.5rem;
    display: block;
    align-items: center;
    padding: 1.3rem 0 1.3rem;
  }
  body.post-type-archive-newstopics .archive-list li.nodata {
    font-size: 1.5rem;
    padding: 1.3rem 0 1.3rem;
  }
}





/* =================================================== */
/* 404-PAGE
/* =================================================== */
body#error404 .contens-block {
  padding: 0px 10px 0;
}



/* =================================================== */
/* JS
/* =================================================== */
@media only screen and (min-width: 0px) and (max-width:480px) {
  .dots-navi .slick-dots {
    text-align: center;
  }
  /*.dots-navi .slick-dots li {
    width: 54px;
    height: 5px;
    margin-right: 15px;
  }
  .dots-navi .slick-dots button {
    height: 5px;
  }*/
}
