.cp-text-col2 .cp-text-l {
 float:left;
 width: 48%;
}
.cp-text-col2 .cp-text-r {
 float:right;
 width: 48%;
}
.cp-text-col3 .cp-text-l {
 float:left;
 width: 30%;
 margin-right: 20px;
}
.cp-text-col3 .cp-text-r {
 float:right;
 width: 30%;
}
.cp-text-col4 .cp-text-l {
 float:left;
 width: 22%;
}
.cp-text-col4 .cp-text-r {
 float:right;
 width: 22%;
}
.cp-img-r {
 float:right;
}
.cp-img-c {
 text-align:center
}
.cp-img-c img {
 margin: 0 auto;
}

.cp-ti .cp-text {
 float:left;
 width: 48%;
}
.cp-ti .cp-img {
 float:right;
 width: 48%;
}
.cp-it .cp-img {
 float:left;
 width: 48%;
}
.cp-it .cp-text {
 float:right;
 width: 48%;
}
.cp-img-col2 .cp-col-01 {
 float:left;
 width: 48%;
}
.cp-img-col2 .cp-col-02 {
 float:right;
 width: 48%;
}
.cp-img-col3 .cp-col-01 {
 float:left;
 width: 30%;
}
.cp-img-col3 .cp-col-02 {
 float:left;
 width: 30%;
}
.cp-img-col3 .cp-col-03 {
 float:right;
 width: 30%;
}
.cp-img-col4 .cp-col-01 {
 float:left;
 width: 22%;
}
.cp-img-col4 .cp-col-02 {
 float:left;
 width: 22%;
}
.cp-img-col4 .cp-col-03 {
 float:left;
 width: 22%;
}
.cp-img-col4 .cp-col-04 {
 float:right;
 width: 22%;
}
.cp-wp {
 background:#FAFAFA;
 border:1px solid #CCC;
 padding:20px;
}
.cp-text-col2 .cp-text-l {
 float:left;
 width: 48%;
}
.cp-text-col2 .cp-text-r {
 float:right;
 width: 48%;
}
.cp-text-col3 .cp-text-l {
 float:left;
 width: 30%;
 margin-right: 20px;
}
.cp-text-col3 .cp-text-r {
 float:right;
 width: 30%;
}
.cp-text-col4 .cp-text-l {
 float:left;
 width: 22%;
}
.cp-text-col4 .cp-text-r {
 float:right;
 width: 22%;
}
.cp-img-c {
 text-align:center
}
.cp-img-c img {
 margin: 0 auto;
}
.cp-wp {
 background:#FAFAFA;
 border:1px solid #CCC;
 padding:20px;
}
.cp-ti .cp-text {
 float:left;
 width: 48%;
}
.cp-ti .cp-img {
 float:right;
 width: 48%;
}
.cp-wp {
 background:#FAFAFA;
 border:1px solid #CCC;
 padding:20px;
}
.cp-it .cp-img {
 float:left;
 width: 48%;
}
.cp-it .cp-text {
 float:right;
 width: 48%;
}

.cp-wp {
 background:#FAFAFA;
 border:1px solid #CCC;
 padding:20px;
}
.cp-space-L {
 height:45px;
 clear: both;
}
.cp-space-M {
 height:30px;
 clear: both;
}
.cp-space-S {
 height:15px;
 clear: both;
}
.cp-solid {
 border-top:1px solid #ccc;
}
.cp-solid hr{
 display:none;
}
.cp-dotted {
 border-top:1px dotted #ccc;
}
.cp-dotted hr{
 display:none;
}
.top .sp-header .menu-head ul,
.sp-header .menu-head ul {
  display: none;
}

@media screen and (max-width: 600px) {

  .sp-header .menu-head ul {
    display: flex;
  }
  
  .sp-header .menu-head ul li.menu-head-list {
    display: block;
    width: 30%;
    border-right: solid 1px #fff;
  }
  
  .sp-header .menu-head ul li.menu-head-list.menu-inquiry.sp-head {
    width: 40% !important;
  }

  .sp-header .menu-head ul li.menu-head-list:last-child {
    border-right: none;
  }

  .sp-header .menu-head ul li.menu-head-list a {
    display: block;
    background-color: #3BB69B;
    color: #fff;
    font-size: 13px;
    text-align: center;
    position: relative;
    text-decoration: none;
    padding: 32px 10px 10px;
  }

  .sp-header .menu-head ul li.menu-head-list a:after {
    position: absolute;
    content: "";
    display: block;
    top: 7px;
    left: 0;
    right: 0;
    margin: auto;
  }

  .sp-header .menu-head ul li.menu-head-list.menu-inquiry a:after {
    top: 5px;
  }

  .sp-header .menu-head ul li.menu-head-list.menu-access a:after {
    position: absolute;
    content: "";
    display: block;
    top: 8px;
    left: 0;
    right: 0;
    margin: auto;
  }

}

@media screen and (max-width: 992px) {
  .sp-nav-visitor-text {
    color: #fff;
    font-size: 10px;
    position: absolute;
    text-align: center;
    width: 100%;
    bottom: 8px;
  }

  .sp-header .sp-nav-list ul .sp-nav-visitor a::after {
    top: -18px !important;
  }
}

@media screen and (max-width: 600px) {
  .sp-nav-visitor-text {
    bottom: 2px !important;
  }

  .sp-header .sp-nav-list ul .sp-nav-global .menu-button {
    position: relative !important;
  }

  .sp-header .sp-nav-list ul .sp-nav-global .menu-button .menu-text {
    display: block !important;
    position: absolute !important;
    width: 100% !important;
    left: 0 !important;
    bottom: 1px !important;
  }

  .sp-header .sp-nav-list ul .sp-nav-global .menu-button-icon span:first-child {
    top: 5px !important;
  }

  .sp-header .sp-nav-list ul .sp-nav-global .menu-button-icon span:nth-child(2) {
    margin-top: -6px !important;
    top: 50% !important;
  }

  .sp-header .sp-nav-list ul .sp-nav-global .menu-button-icon span:last-child {
    bottom: 15px !important;
  }

}

.html.visible .sp-header .menu-head ul {
  display:block;
}
