@charset "UTF-8";

/* material top styles */
.bg_gray_box {
  padding: 30px;
  background-color: #f5f6f8;
}
.txt_num{
  margin-left: 10px;
  letter-spacing: 1px !important;
  font-size: 16px !important;
  font-weight: normal !important;
}
.acc_ttl_area .ttl_bdr_left{
  margin-bottom: 0;
}
.col4_wrap{
  display: flex;
  flex-wrap: wrap;
}
.col4_wrap a{
  display: block;
  color: #222;
}
.col4_wrap .col4_thum{
  margin-bottom: 10px;
}
.col4_wrap .col4_thum img{
  width: 100%;
}
.col4_wrap a .col4_txt {
  font-size: 14px;
  text-align: center;
  line-height: 1.7;
}
.acc .acc_inner .sec_inner{
  border-bottom: 1px solid #dddddd;
}
.acc .acc_inner .sec_inner:last-of-type{
  border-bottom: none;
}
.acc .acc_inner .sec_inner{
  padding-bottom: 25px;
  margin-bottom: 20px;
}
.acc .acc_inner .sec_inner:last-of-type{
  padding-bottom: 0;
  margin-bottom: 0;
}
@media print, screen and (min-width:768px) {
  .acc .acc_inner{
    padding-bottom: 50px;
  }
  .acc_inner .gray_box01.link_page {
    margin-bottom: 30px;
    padding: 20px 30px 10px;
  }
  .col4_wrap a:hover{
    text-decoration: none;
    color: #1ba1e6;
  }
  .col4_wrap .col4_block {
    width: calc((100% - 66px) / 4);
    margin-right: 22px;
    margin-top: 22px;
  }
  .col4_wrap .col4_block:nth-of-type(4n) {
    margin-right: 0;
  }
  .col4_wrap .col4_block:nth-of-type(-n+4) {
    margin-top: 0;
  }
}
@media screen and (max-width:767px) {
  .link_page.sp_link_page_col2 li {
    padding-left: 0;
  }
  .acc .acc_inner{
    padding-bottom: 40px;
  }
  .acc_inner .gray_box01.link_page {
    margin-bottom: 20px;
    padding: 20px 30px 10px;
  }
  .acc + .acc{
    margin-top: 0;
  }
  .thum_text_link_wrap {
    display: flex;
    flex-wrap: wrap;
  }
  .col4_wrap .col4_block {
    width: calc((100% - 20px) / 2);
    margin-right: 20px;
    margin-top: 20px;
  }
  .col4_wrap .col4_block:nth-of-type(2n) {
    margin-right: 0;
  }
  .col4_wrap .col4_block:nth-of-type(-n+2) {
    margin-top: 0;
  }
}

/* map_wrap
-------------------------------------------------- */
.map_wrap{
  position: relative;
  margin-bottom: 40px;
}
.map_img {
  width:100%;
  margin: 0 auto;
}
.map_img img{
  width: 100%;
}
.map_btn_wrap{}
.map_btn{
  position: absolute;
  min-width: 11.547%;
  height: 10.471%;
  display: inline-block;
}

.map_btn_tohoku {
  top: 36.6%;
  left: 49.972%;
}
.map_btn_kantou {
  top: 58.261%;
  left: 47.51%;
}
.map_btn_chubu {
  top: 34.031%;
  left: 27.2%;
}
.map_btn_kansai {
  top: 84.892%;
  left: 23.8%;
}
.map_btn_chugoku {
  top: 49.357%;
  left: 16%;
}
.map_btn_kyushu {
  top: 67.614%;
  left: 5.9%;
}
.map_btn_california{
  bottom: 5%;
  right: 17%;
}

.map_btn p{
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  flex-direction: column;
  padding: 10px;
  color: #fff;
  text-decoration: none;
  box-sizing: border-box;
  text-align: center;
  width: 100%;
  height: 100%;
  line-height: 1.4;
  background-color: #1ba1e6;
  border: 1px solid #1ba1e6;
  z-index: 0;
  transition: all .2s;
  font-weight: bold;
  overflow: hidden;
  cursor: pointer;
}
.map_btn p:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  background-color: #fff;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform .2s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  z-index: -2;
}
.map_btn p:hover:after {
  transform: scale(1, 1);
  transform-origin: left top;
  visibility: visible;
}
.map_btn p:hover {
  color: #1ba1e6;
  transition: all .2s;
}
@media screen and (max-width:767px) {
  .map_wrap{
    margin-bottom: 20px;
  }
  .link_page ul li p{
    position: relative;
    display: inline-block;
    text-decoration: none;
    line-height: 1.6;
    font-weight: bold;
    color: #222;
  }
  .link_page ul li p:after{
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    top: 9px;
    left: 2px;
    position: absolute;
    border-top: 2px solid #ff0a14;
    border-right: 2px solid #ff0a14;
    transform: rotate(135deg);
  }
  .link_page._arrow01 ul li p:after{
    transform: rotate(45deg);
  }
  .link_page ul li p {
    padding-left: 20px;
}
}

/* custom css */
.col4_wrap .col4_thum {
  text-align: center;
}
.col4_wrap .col4_thum img {
  height: 142.84px;
}