@charset "UTF-8";

/**
 *
 * コンテンツ
 *
**/


/* ========== Animation ========== */

/* ========== Common Components ========== */


/* ========== Layout ========== */
.wrapper {
  overflow: hidden;
}
@media only screen and (min-width: 770px) and (max-width: 1200px) {
}
@media only screen and (max-width: 769px) {
  .wrapper {
    padding: 19.375vw 0 0 0;
    overflow: hidden;
  }

}


/* header */
.header {
  width: 100%;
  height: 169px;
  position: relative;
  z-index: 1000;
}
.header::before {
  width: 100%;
  height: 32px;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  background: #ec690e;
}
.header::after {
  width: 100%;
  height: 50px;
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 0;
  background: #004487;
}
.header-inner {
  margin: 0 auto;
  width: 100%;
  max-width: 1200px;
  height: 169px;
  position: relative;
  z-index: 1;
}
.header-inner h1 {
  width: 100%;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1.2em;
  font-size: 16px;
  font-weight: normal;
  color: #fff;
}
.header-inner h1 a {
  color: #fff;
}
.header-inner .logo {
  width: 245px;
  position: absolute;
  top: 47px;
  left: 0;
}
.header-inner .search {
  width: 540px;
  position: absolute;
  top: 54px;
  left: 295px;
}
.header-inner .search form {
  width: 100%;
  height: 44px;
  display: flex;
}
.header-inner .search form .keyword {
  padding: 0 0 0 10px;
  width: 460px;
  height: 44px;
  line-height: 40px;
  font-size: 16px;
  background: #fff;
  border: 2px solid #ec690e;
  border-right: none;
  border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
  -webkit-appearance: none;
  box-sizing: border-box;
}
.header-inner .search form .send {
  padding: 0 0 0 0;
  width: 80px;
  height: 44px;
  text-indent: -9999px;
  background: url("../images/common/search_btn_01.png") no-repeat center center;
  background-size: 100% 100%;
  border: none;
  -webkit-appearance: none;
  cursor: pointer;
}
.header-inner .sub-menu {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  width: 320px;
  display: flex;
  justify-content: space-between;
  position: absolute;
  top: 47px;
  right: 0;
}
.header-inner .sub-menu {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  width: 320px;
  display: flex;
  justify-content: space-between;
  position: absolute;
  top: 47px;
  right: 0;
}
.header-inner .sub-menu .link {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  width: 25%;
}
.header-inner .sub-menu .link a {
  margin: 0 0 0 0;
  padding: 44px 0 0 0;
  width: 100%;
  display: block;
  text-decoration: none;
  text-align: center;
  line-height: 1.2em;
  font-size: 12px;
  color: #333;
  position: relative;
}
.header-inner .sub-menu .link.contact a {
  background: url("../images/common/header_icon_01.png") no-repeat center 6px;
  background-size: 40px auto;
}
.header-inner .sub-menu .link.reservation a {
  background: url("../images/common/header_icon_02.png") no-repeat center 0px;
  background-size: 39px auto;
}
.header-inner .sub-menu .link.access a {
  background: url("../images/common/header_icon_03.png") no-repeat center 0px;
  background-size: 47px auto;
}
/*
.header-inner .sub-menu .link.cart a {
  background: url("../images/common/header_icon_04.png") no-repeat center 0px;
  background-size: 50px auto;
}
.header-inner .sub-menu .link.cart a .num {
  position: absolute;
  top: 2px;
  left: 0;
  width: 90%;
  display: block;
  color: #fff;
  text-align: center;
  line-height: 1.2em;
  font-size: 14px;
}
*/

/* アイコンの基準にする */
.header-inner .sub-menu .link.cart a{
  background: url("../images/common/header_icon_04.png") no-repeat center 0px;
  background-size: 50px auto;
  position: relative;
}

/* 数量バッジ */
.header-inner .sub-menu .link.cart a .num{
  position: absolute;
  top: -10px;
  right: 49px;

  width: 22px;        /* バッジサイズ */
  height: 22px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 999px;

  background: #e60012;
  color: #fff;

  font-size: 11px;
  line-height: 1;
  font-weight: 700;
}



@media only screen and (min-width: 770px) and (max-width: 1200px) {
  .header {
    width: 100%;
    height: 14.083vw;
    position: relative;
    z-index: 1000;
  }
  .header::before {
    width: 100%;
    height: 2.667vw;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    background: #ec690e;
  }
  .header::after {
    width: 100%;
    height: 4.167vw;
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 0;
    background: #004487;
  }
  .header-inner {
    margin: 0 auto;
    width: 100%;
    max-width: 100vw;
    height: 14.083vw;
    position: relative;
    z-index: 1;
  }
  .header-inner h1 {
    width: 100%;
    height: 2.667vw;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1.2em;
    font-size: 1.333vw;
    font-weight: normal;
    color: #fff;
  }
  .header-inner .logo {
    width: 20.417vw;
    position: absolute;
    top: 3.917vw;
    left: 0;
  }
  .header-inner .search {
    width: 45vw;
    position: absolute;
    top: 4.5vw;
    left: 24.583vw;
  }
  .header-inner .search form {
    width: 100%;
    height: 3.667vw;
    display: flex;
  }
  .header-inner .search form .keyword {
    padding: 0 0 0 0.833vw;
    width: 38.333vw;
    height: 3.667vw;
    line-height: 3.333vw;
    font-size: 1.333vw;
    background: #fff;
    border: 2px solid #ec690e;
    border-right: none;
    border-top-left-radius: 0.25vw;
    border-bottom-left-radius: 0.25vw;
    -webkit-appearance: none;
    box-sizing: border-box;
  }
  .header-inner .search form .send {
    padding: 0 0 0 0;
    width: 6.667vw;
    height: 3.667vw;
    text-indent: -833.25vw;
    background: url("../images/common/search_btn_01.png") no-repeat center center;
    background-size: 100% 100%;
    border: none;
    -webkit-appearance: none;
    cursor: pointer;
  }
  .header-inner .sub-menu {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 26.667vw;
    display: flex;
    justify-content: space-between;
    position: absolute;
    top: 3.917vw;
    right: 0;
  }
  .header-inner .sub-menu {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 26.667vw;
    display: flex;
    justify-content: space-between;
    position: absolute;
    top: 3.917vw;
    right: 0;
  }
  .header-inner .sub-menu .link {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 25%;
  }
  .header-inner .sub-menu .link a {
    margin: 0 0 0 0;
    padding: 4.467vw 0 0 0;
    width: 100%;
    display: block;
    text-decoration: none;
    text-align: center;
    line-height: 1.2em;
    font-size: 1vw;
    color: #333;
    position: relative;
  }
  .header-inner .sub-menu .link.contact a {
    background: url("../images/common/header_icon_01.png") no-repeat center 6px;
    background-size: 40px auto;
  }
  .header-inner .sub-menu .link.reservation a {
    background: url("../images/common/header_icon_02.png") no-repeat center 0px;
    background-size: 39px auto;
  }
  .header-inner .sub-menu .link.access a {
    background: url("../images/common/header_icon_03.png") no-repeat center 0px;
    background-size: 47px auto;
  }
/*
  .header-inner .sub-menu .link.cart a {
    background: url("../images/common/header_icon_04.png") no-repeat center 0px;
    background-size: 50px auto;
  }
  .header-inner .sub-menu .link.cart a .num {
    position: absolute;
    top: 0.167vw;
    left: 0;
    width: 90%;
    display: block;
    color: #fff;
    text-align: center;
    line-height: 1.2em;
    font-size: 1.167vw;
  }
*/

/* アイコンの基準にする */
.header-inner .sub-menu .link.cart a{
  background: url("../images/common/header_icon_04.png") no-repeat center 0px;
  background-size: 50px auto;
  position: relative;
}

/* 数量バッジ */
.header-inner .sub-menu .link.cart a .num{
  position: absolute;
  top: -10px;
  right: 44px;

  width: 22px;        /* バッジサイズ */
  height: 22px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 999px;

  background: #e60012;
  color: #fff;

  font-size: 11px;
  line-height: 1;
  font-weight: 700;
}


}
@media only screen and (max-width: 769px) {
  .header {
    width: 100%;
    height: 19.375vw;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10000;
  }
  .header::before {
    display: none;
  }
  .header::after {
    display: none;
  }
  .header-inner {
    margin: 0 auto;
    width: 100%;
    max-width: 100%;
    height: 19.375vw;
    background: #fff;
    position: relative;
    z-index: 1;
  }
  .header-inner h1 {
  }
  .header-inner .logo {
    width: 37.188vw;
    position: absolute;
    top: 6.719vw;
    left: 1.406vw;
  }
  .header-inner .search {
    width: 6.875vw;
    position: absolute;
    top: 5.625vw;
    left: 47.656vw;
  }
  .header-inner .sub-menu {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 20.625vw;
    display: flex;
    justify-content: space-between;
    position: absolute;
    top: 5.938vw;
    right: 21.875vw;
  }
  .header-inner .sub-menu .link {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 8.125vw;
  }
  .header-inner .sub-menu .link a {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
    height: 8.125vw;
    display: block;
    text-decoration: none;
    text-align: center;
    line-height: 1.2em;
    font-size: 1.875vw;
    color: #333;
    position: relative;
  }
  .header-inner .sub-menu .link.access a {
    background: url("../images/common/header_icon_03-sp.png") no-repeat center 0px;
    background-size: 100% auto;
  }
/*
  .header-inner .sub-menu .link.cart a {
    background: url("../images/common/header_icon_04.png") no-repeat center 0px;
    background-size: 100% auto;
  }
  .header-inner .sub-menu .link.cart a .num {
    position: absolute;
    top: 0.313vw;
    left: 0;
    width: 90%;
    display: block;
    color: #fff;
    text-align: center;
    line-height: 1.2em;
    font-size: 2.188vw;
  }
*/

/* アイコンの基準にする */
.header-inner .sub-menu .link.cart a{
  background: url("../images/common/header_icon_04.png") no-repeat center 0px;
  background-size: 50px auto;
  position: relative;
}

/* 数量バッジ */
.header-inner .sub-menu .link.cart a .num{
  position: absolute;
  top: -10px;
  right: 37px;

  width: 22px;        /* バッジサイズ */
  height: 22px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 999px;

  background: #e60012;
  color: #fff;

  font-size: 11px;
  line-height: 1;
  font-weight: 700;
}

  .header-inner .open-navi {
    width: 19.375vw;
    position: absolute;
    top: 0;
    right: 0;
  }
  .header-inner .open-navi img.off {
    display: block;
  }
  .header-inner .open-navi img.on {
    display: none;
  }
  .header-inner .open-navi.active img.off {
    display: none;
  }
  .header-inner .open-navi.active img.on {
    display: block;
  }
  

}



/* navi */
.main-navi {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}
.main-navi ul {
  width: 100%;
  height: 50px;
  text-align: left;
  display: flex;
  justify-content: space-between;
}
.main-navi ul li {
  margin: 0 0 0 0;
  width: 16.66%;
  position: relative;
}
.main-navi ul li a {
  width: 100%;
  height: 50px;
  line-height: 1.4em;
  font-size: 16px;
  font-weight: 500;
  text-decoration: none;
  box-sizing: border-box;
  position: relative;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
}
.main-navi ul li a.assessment {
  background: #ec690e;
}
.main-navi ul li a.blank::after {
  width: 14px;
  height: 14px;
  content: "";
  background: url("../images/common/icon_blank_01.png") no-repeat center center;
  background-size: 100% 100%;
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 0 5px;
}
.main-navi ul li a.pull::after {
  width: 18px;
  height: 10px;
  content: "";
  background: url("../images/common/arrow_04.png") no-repeat center center;
  background-size: 100% 100%;
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 0 5px;
}
.main-navi ul li:hover a.pull::after {
  background: url("../images/common/arrow_05.png") no-repeat center center;
  background-size: 100% 100%;
}
.main-navi ul li:hover a.pull {
  color: #b3e83d;
}
.main-navi ul li .pull-wrap {
  overflow: hidden;
  position: absolute;
  top: 100%;
  left: 0;
  width: fit-content;
  display: none;
}
.main-navi ul li ul {
  padding: 10px;
  height: auto;
  background: #004487;
  overflow: hidden;
  width: 240px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
}
.main-navi ul li ul.double {
  width: 463px;
  flex-direction: row;
  flex-wrap: wrap;
}
.main-navi ul li ul li {
  margin: 0 0 3px 0;
  width: 220px;
}

.main-navi ul li ul li a {
  padding: 0 15px;
  width: 220px;
  height: 40px;
  line-height: 1.4em;
  font-size: 16px;
  font-weight: 500;
  color: #000;
  color: rgba(33, 33, 31, 1);
  background: #eee;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  box-sizing: border-box;
}
@media only screen and (min-width: 770px) {
  .main-navi ul li:hover .pull-wrap {
/*    display: block;*/
  }
}
@media only screen and (min-width: 770px) and (max-width: 1200px) {
  .main-navi {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
  }
  .main-navi ul {
    width: 100%;
    height: 4.167vw;
    text-align: left;
    display: flex;
    justify-content: space-between;
  }
  .main-navi ul li {
    margin: 0 0 0 0;
    width: 16.66%;
    position: relative;
  }
  .main-navi ul li a {
    width: 100%;
    height: 4.167vw;
    line-height: 1.4em;
    font-size: 1.333vw;
    font-weight: 500;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .main-navi ul li a.assessment {
    background: #ec690e;
  }
  .main-navi ul li a.blank::after {
    width: 1.167vw;
    height: 1.167vw;
    content: "";
    background: url("../images/common/icon_blank_01.png") no-repeat center center;
    background-size: 100% 100%;
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 0 0.417vw;
  }
  .main-navi ul li a.pull::after {
    width: 1.5vw;
    height: 0.833vw;
    content: "";
    background: url("../images/common/arrow_04.png") no-repeat center center;
    background-size: 100% 100%;
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 0 0.417vw;
  }
  .main-navi ul li:hover a.pull::after {
    background: url("../images/common/arrow_05.png") no-repeat center center;
    background-size: 100% 100%;
  }
  .main-navi ul li:hover a.pull {
    color: #b3e83d;
  }
  .main-navi ul li .pull-wrap {
    overflow: hidden;
    position: absolute;
    top: 100%;
    left: 0;
    width: fit-content;
    display: none;
  }
  .main-navi ul li ul {
    padding: 0.833vw;
    height: auto;
    background: #004487;
    overflow: hidden;
    width: 20vw;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
  }
  .main-navi ul li ul.double {
    width: 38.583vw;
    flex-direction: row;
    flex-wrap: wrap;
  }
  .main-navi ul li ul li {
    margin: 0 0 0.25vw 0;
    width: 18.333vw;
  }

  .main-navi ul li ul li a {
    padding: 0 1.25vw;
    width: 18.333vw;
    height: 3.333vw;
    line-height: 1.4em;
    font-size: 1.333vw;
    font-weight: 500;
    color: #000;
    color: rgba(33, 33, 31, 1);
    background: #eee;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    box-sizing: border-box;
  }


}
@media only screen and (max-width: 769px) {
  .main-navi {
    height: calc( 100vh - 19.375vw );
    background: #004387;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    position: absolute;
    bottom: auto;
    top: 100%;
    left: 0;
    width: 100%;
    display: none;
  }
  .main-navi ul {
    width: 100%;
    height: auto;
    text-align: left;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
  .main-navi ul li {
    margin: 0 0 0 0;
    width: 100%;
    border-bottom: 1px solid #fff;
    position: relative;
  }
  .main-navi ul li a {
    padding: 0 14.063vw 0 6.25vw;
    width: 100%;
    height: 18.75vw;
    line-height: 1.4em;
    font-size: 4.063vw;
    font-weight: 500;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
    color: #eeeeee;
    display: flex;
    align-items: center;
    justify-content: flex-start;
  }
  .main-navi ul li a.assessment {
    background: #ec690e;
  }
  .main-navi ul li a::after {
    width: 3.281vw;
    height: 5.781vw;
    content: "";
    background: url("../images/common/arrow_07.png") no-repeat center center;
    background-size: 100% 100%;
    display: block;
    vertical-align: middle;
    margin: 0 0 0 0;
    position: absolute;
    top: 50%;
    right: 7.344vw;
    transform: translate(0,-50%);
  }
  .main-navi ul li a.blank::after {
    width: 3.594vw;
    height: 3.594vw;
    content: "";
    background: url("../images/common/icon_blank_01-sp.png") no-repeat center center;
    background-size: 100% 100%;
    margin: 0 0 0 0;
    position: absolute;
    top: 50%;
    right: 6.875vw;
    transform: translate(0,-50%);
  }
  .main-navi ul li a.pull::after {
    width: 4.844vw;
    height: 4.844vw;
    content: "";
    background: url("../images/common/icon_plus_01.png") no-repeat center center;
    background-size: 100% 100%;
    display: block;
    vertical-align: middle;
    margin: 0 0 0 0;
    position: absolute;
    top: 50%;
    right: 5.781vw;
    transform: translate(0,-50%);
  }
  .main-navi ul li:hover a.pull::after {
    background: url("../images/common/icon_plus_01.png") no-repeat center center;
    background-size: 100% 100%;
  }
  .main-navi ul li:hover a.pull {
    color: #eee;
  }
  .main-navi ul li .pull-wrap {
    overflow: hidden;
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    display: none;
    
  }
  .main-navi ul li ul {
    padding: 0 0 0 0;
    height: auto;
    background: #e5ecf3;
    overflow: hidden;
    width: 100%;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
  }
  .main-navi ul li ul.double {
    width: 100%;
    flex-direction: column;
    flex-wrap: wrap;
  }
  .main-navi ul li ul li {
    margin: 0 0 0 0;
    width: 100%;
    border-bottom: none;
    border-top: 1px solid #cccccc;
  }

  .main-navi ul li ul li a {
    padding: 0 14.063vw 0 6.25vw;
    width: 100%;
    height: 18.75vw;
    line-height: 1.4em;
    font-size: 4.063vw;
    font-weight: 500;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
    color: #000;
    color: rgba(33, 33, 31, 1);
    background: none;
    display: flex;
    align-items: center;
    justify-content: flex-start;
  }
  .main-navi ul li ul li a::after {
    width: 3.281vw;
    height: 5.781vw;
    content: "";
    background: url("../images/common/arrow_08.png") no-repeat center center;
    background-size: 100% 100%;
    display: block;
    vertical-align: middle;
    margin: 0 0 0 0;
    position: absolute;
    top: 50%;
    right: 7.344vw;
    transform: translate(0,-50%);
  }
}


/* main */
.main {
  width: 100%;
  overflow: hidden;
}






/* footer */
.footer {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  background: #222;
  position: relative;
  z-index: 1000;
}
.footer-inner {
  margin: 0 auto;
  padding: 26px 0 0 0;
  width: 90%;
  max-width: 1200px;
  text-align: center;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.footer-inner .image-box {
  margin: 0 auto 28px;
  width: 100%;
  max-width: 1027px;
  text-align: center;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.footer-inner .image-box .item {
  width: 15.57%;
}
.footer-inner .image-box .item img {
  width: 100%;
  display: block;
}
.footer-inner .footer-navi {
  width: 100%;
}
.footer-inner .footer-navi ul:nth-of-type(1) {
  margin: 0 auto;
  padding: 0 0 35px 0;
  display: flex;
  justify-content: center;
}
.footer-inner .footer-navi ul:nth-of-type(1) li {
  padding: 0 20px;
  line-height: 1.4em;
  font-size: 16px;
}
.footer-inner .footer-navi ul:nth-of-type(1) li a {
  color: #fff;
}
.footer-inner .footer-navi ul:nth-of-type(2) {
  margin: 0 auto;
  padding: 0 0 20px 0;
  display: flex;
  justify-content: center;
}
.footer-inner .footer-navi ul:nth-of-type(2) li {
  line-height: 1.4em;
  font-size: 14px;
}
.footer-inner .footer-navi ul:nth-of-type(2) li::before {
  margin: 0 0.5em;
  content: "｜";
  color: #fff;
}
.footer-inner .footer-navi ul:nth-of-type(2) li:nth-of-type(1)::before {
  margin: 0 0;
  content: "";
}
.footer-inner .footer-navi ul:nth-of-type(2) li a {
  color: #fff;
}
.footer-inner .copyright-box {
  padding: 10px 0 0 0;
  width: 100%;
  height: 140px;
  line-height: 1.4em;
  font-size: 14px;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  position: relative;
  z-index: 1;
}
.footer-inner .copyright-box::after {
  width: 100vw;
  height: 140px;
  content: "";
  background: #fff;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%,0);
  z-index: -1;
}
.footer-image-box {
  margin: 0 auto 0 auto;
  padding: 0 0 0 0;
  width: 94%;
  max-width: 1200px;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}
.footer-image-box img {
  width: 100%;
  display: block;
}
.footer-image-box .item {
  width: 23%;
}
.footer-image-box .item:nth-of-type(1) {
  max-width: 188px;
}
.footer-image-box .item:nth-of-type(2) {
  max-width: 215px;
}
.footer-image-box .item:nth-of-type(3) {
  max-width: 238px;
}
.footer-image-box .item:nth-of-type(4) {
  max-width: 232px;
}
@media only screen and (min-width: 770px) and (max-width: 1200px) {
  .footer {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    background: #222;
    position: relative;
    z-index: 1000;
  }
  .footer-inner {
    margin: 0 auto;
    padding: 2.167vw 0 0 0;
    width: 90%;
    max-width: 100vw;
    text-align: center;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .footer-inner .image-box {
    margin: 0 auto 28px;
    width: 100%;
    max-width: 85.583vw;
    text-align: center;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .footer-inner .image-box .item {
    width: 15.57%;
  }
  .footer-inner .image-box .item img {
    width: 100%;
    display: block;
  }
  .footer-inner .footer-navi {
    width: 100%;
  }
  .footer-inner .footer-navi ul:nth-of-type(1) {
    margin: 0 auto;
    padding: 0 0 2.917vw 0;
    display: flex;
    justify-content: center;
  }
  .footer-inner .footer-navi ul:nth-of-type(1) li {
    padding: 0 1.667vw;
    line-height: 1.4em;
    font-size: 1.333vw;
  }
  .footer-inner .footer-navi ul:nth-of-type(1) li a {
    color: #fff;
  }
  .footer-inner .footer-navi ul:nth-of-type(2) {
    margin: 0 auto;
    padding: 0 0 0.417vw 0;
    display: flex;
    justify-content: center;
  }
  .footer-inner .footer-navi ul:nth-of-type(2) li {
    line-height: 1.4em;
    font-size: 1.167vw;
  }
  .footer-inner .footer-navi ul:nth-of-type(2) li::before {
    margin: 0 0.5em;
    content: "｜";
    color: #fff;
  }
  .footer-inner .footer-navi ul:nth-of-type(2) li:nth-of-type(1)::before {
    margin: 0 0;
    content: "";
  }
  .footer-inner .footer-navi ul:nth-of-type(2) li a {
    color: #fff;
  }
  .footer-inner .copyright-box {
    padding: 0.833vw 0 0 0;
    width: 100%;
    height: 140px;
    line-height: 1.4em;
    font-size: 1.167vw;
    box-sizing: border-box;
    display: flex;
    justify-content: space-between;
    position: relative;
    z-index: 1;
  }
  .footer-inner .copyright-box::after {
    width: 100vw;
    height: 140px;
    content: "";
    background: #fff;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%,0);
    z-index: -1;
  }



}
@media only screen and (max-width: 769px) {
  .footer {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
    background: #222;
    position: relative;
    z-index: 1000;
  }
  .footer-inner {
    margin: 0 auto;
    padding: 4.688vw 0 0 0;
    width: 100%;
    max-width: 187.5vw;
    text-align: center;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .footer-inner .image-box {
    margin: 0 auto 28px auto;
    width: 93.75vw;
    max-width: 93.75vw;
    text-align: center;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .footer-inner .image-box .item {
    margin: 0 0 2.344vw 0;
    width: 32%;
  }
  .footer-inner .image-box .item img {
    width: 100%;
    display: block;
  }
  .footer-inner .footer-menu-title {
    width: 100%;
    display: block;
  }
  .footer-inner .footer-menu-title a {
    display: block;
    color: #fff;
    line-height: 1.2em;
    font-size: 3.438vw;
    font-weight: bold;
    text-align: left;
    border-bottom: 1px solid #fff;
    padding: 2.344vw 4.688vw 2.344vw 3.75vw;
    position: relative;
  }
  .footer-inner .footer-menu-title a::after {
    width: 3.75vw;
    height: 2.188vw;
    content: "";
    background: url("../images/common/arrow_06.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 2.969vw;
    transform: translate(0,-50%);
  }
  .footer-inner .footer-contact-link {
    width: 100%;
    display: block;
  }
  .footer-inner .footer-contact-link a {
    display: block;
    color: #fff;
    line-height: 1.2em;
    font-size: 3.438vw;
    font-weight: bold;
    text-align: left;
    border-bottom: 1px solid #fff;
    padding: 2.344vw 4.688vw 2.344vw 3.75vw;
    position: relative;
  }
  .footer-inner .footer-contact-link a::after {
    width: 3.75vw;
    height: 2.188vw;
    content: "";
    background: url("../images/common/arrow_06.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 2.969vw;
    transform: translate(0,-50%);
  }
  .footer-inner .footer-site-link {
    width: 100%;
    display: block;
  }
  .footer-inner .footer-site-link a {
    display: block;
    color: #fff;
    line-height: 1.2em;
    font-size: 3.438vw;
    font-weight: bold;
    text-align: left;
    border-bottom: 1px solid #fff;
    padding: 2.344vw 4.688vw 2.344vw 3.75vw;
    position: relative;
  }
  .footer-inner .footer-site-link a::after {
    width: 4.688vw;
    height: 4.688vw;
    content: "";
    background: url("../images/common/icon_blank_02.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 2.969vw;
    transform: translate(0,-50%);
  }
  .footer-inner .footer-navi {
    width: 100%;
    border-bottom: 1px solid #fff;
    display: none;
  }
  .footer-inner .footer-navi ul:nth-of-type(1) {
    margin: 0 auto;
    padding: 0 0 0 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
  }
  .footer-inner .footer-navi ul:nth-of-type(1) li {
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 3.125vw;
  }
  .footer-inner .footer-navi ul:nth-of-type(1) li a {
    color: #fff;
    display: block;
    padding: 2.344vw;
    text-align: left;
  }
  .footer-inner .footer-navi ul:nth-of-type(2) {
    margin: 0 auto;
    padding: 0 0 0 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
  }
  .footer-inner .footer-navi ul:nth-of-type(2) li {
    line-height: 1.4em;
    font-size: 3.125vw;
  }
  .footer-inner .footer-navi ul:nth-of-type(2) li::before {
    margin: 0 0;
    content: "";
    color: #fff;
  }
  .footer-inner .footer-navi ul:nth-of-type(2) li:nth-of-type(1)::before {
    margin: 0 0;
    content: "";
  }
  .footer-inner .footer-navi ul:nth-of-type(2) li a {
    color: #fff;
    display: block;
    padding: 2.344vw;
    text-align: left;
  }
  .footer-inner .contact-info {
    padding: 5.938vw 0 3.438vw 0;
    width: 100%;
    color: #fff;
    text-align: center;
  }
  .footer-inner .contact-info .tel {
    padding: 0 0 2.344vw 0;
    line-height: 1.4em;
    font-size: 4.688vw;
    font-weight: bold;
  }
  .footer-inner .contact-info .tel::before {
    width: 7.344vw;
    height: 8.281vw;
    content: "";
    background: url("../images/common/icon_tel_01.png") no-repeat center center;
    background-size: 100% 100%;
    display: inline-block;
    vertical-align: middle;
    margin: 0 2.344vw 0 0;
  }
  .footer-inner .contact-info .time {
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 2.813vw;
    font-weight: 500;
  }
  .footer-inner .copyright-box {
    padding: 2.344vw 0 7.813vw 0;
    width: 100%;
    height: auto;
    line-height: 2.6em;
    font-size: 2.344vw;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    position: relative;
    z-index: 1;
  }
  .footer-inner .copyright-box::after {
    width: 100vw;
    height: 100%;
    content: "";
    background: #fff;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%,0);
    z-index: -1;
  }
}

/* floating-content */
.floating-content {
  width: 100%;
  height: 100px;
  background: url("../images/common/floating_back_01.png");
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 1000;
}
.floating-content-inner {
  margin: 0 auto;
  width: 90%;
  max-width: 704px;
  height: 100px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.floating-content-inner img {
  display: block;
}
.floating-content-inner .tel {
  width: 45.17%;
  max-width: 318px;
}
.floating-content-inner ul {
  width: 48.3%;
  max-width: 340px;
  display: flex;
  justify-content: space-between;
}
.floating-content-inner ul li {
  width: 20.588%;
  max-width: 70px;
}
@media only screen and (min-width: 770px) and (max-width: 1200px) {
}
@media only screen and (max-width: 769px) {
}

/* breadcrumb */
.breadcrumb {
  margin: 0 0 50px 0;
  padding: 0 0 0 0;
  width: 100%;
  background: #e5ecf3;
}
.breadcrumb ol {
  margin: 0 auto;
  padding: 0 0 0 0;
  width: 90%;
  max-width: 1200px;
  min-height: 30px;
  text-align: left;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.breadcrumb ol li {
  line-height: 1.4em;
  font-size: 14px;
  color: #333;
}
.breadcrumb ol li::before {
  content: "/";
  margin: 0 7px;
}
.breadcrumb ol li:nth-of-type(1)::before {
  content: "";
  margin: 0 5px 0 0;
  width: 20px;
  height: 17px;
  background: url("../images/common/icon_home_01.png") no-repeat center center;
  background-size: 100% 100%;
  display: inline-block;
  vertical-align: middle;
}

.breadcrumb ol li a {
  line-height: 1.4em;
  font-size: 14px;
  color: #333;
}
@media only screen and (min-width: 770px) and (max-width: 1200px) {
}
@media only screen and (max-width: 769px) {
}

/* pagetop */
.pagetop {
  width: 160px;
  position: fixed;
  bottom: 120px;
  right: 15px;
  z-index: 1000;
  display: none;
}
@media only screen and (min-width: 770px) and (max-width: 1200px) {
}
@media only screen and (max-width: 769px) {
  .pagetop {
    width: 60px;
    position: fixed;
    bottom: 20px;
    right: 15px;
    z-index: 1000;
    display: none;
  }

}





/* ========== Page ========== */

/* home */
.main-image-contents {
  margin: 0 auto;
  padding: 25px 0 0 0;
  width: 90%;
  max-width: 1200px;
  display: flex;
  justify-content: space-between;
}
.main-image-contents img {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  width: 100%;
  display: block;
}
.main-image-contents .left {
  width: 68.83%;
}
.main-image-contents .right {
  width: 29.5%;
}
.main-image-contents .right .bnr {
  margin: 0 0 8px 0;
  width: 100%;
}
.main-image-contents .right .bnr:last-child {
  margin: 0 0 8px 0;
}



.products-menu {
  padding: 50px 0 50px 0;
  background: #eeeeee;
}
.products-menu-inner {
  margin: 0 auto;
  width: 90%;
  max-width: 1200px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  box-sizing: border-box;
  border-bottom: 1px solid #aaaaaa;
  border-right: 1px solid #aaaaaa;
}
.products-menu-inner .item {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  width: 25%;
  background: #004487;
  border-top: 1px solid #aaaaaa;
  border-left: 1px solid #aaaaaa;
  box-sizing: border-box;
}
.products-menu-inner .item .labe-link {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  width: 100%;
  background: #fff;
}
.products-menu-inner .item .labe-link a {
  margin: 0 0 0 0;
  padding: 0 0 0 90px;
  width: 100%;
  height: 79px;
  text-decoration: none;
  line-height: 1.6em;
  font-size: 18px;
  font-weight: 500;
  color: #333333;
  text-align: left;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  position: relative;
  box-sizing: border-box;
}
.products-menu-inner .item .labe-link.cat12 a {
  margin: 0 0 0 0;
  padding: 0 0 0 110px;
}
.products-menu-inner .item .labe-link.cat15 a {
  margin: 0 0 0 0;
  padding: 0 0 0 80px;
}

.products-menu-inner .item .labe-link a::after {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  width: 40px;
  height: 40px;
  content: "";
  background: url("../images/common/arrow_02.png") no-repeat center center;
  background-size: 100% 100%;
  position: absolute;
  top: 50%;
  right: 17px;
  transform: translate(0,-50%);
}
.products-menu-inner .item .labe-link.cat01 a {
  background: url("../images/top/cat_image_01.png") no-repeat left center;
  background-size: auto 100%;
}
.products-menu-inner .item .labe-link.cat02 a {
  background: url("../images/top/cat_image_02.png") no-repeat left center;
  background-size: auto 100%;
}
.products-menu-inner .item .labe-link.cat03 a {
  background: url("../images/top/cat_image_03.png") no-repeat left center;
  background-size: auto 100%;
}
.products-menu-inner .item .labe-link.cat04 a {
  background: url("../images/top/cat_image_04.png") no-repeat left center;
  background-size: auto 100%;
}
.products-menu-inner .item .labe-link.cat05 a {
  background: url("../images/top/cat_image_05.png") no-repeat left center;
  background-size: auto 100%;
}
.products-menu-inner .item .labe-link.cat06 a {
  background: url("../images/top/cat_image_06.png") no-repeat left center;
  background-size: auto 100%;
}
.products-menu-inner .item .labe-link.cat07 a {
  background: url("../images/top/cat_image_07.png") no-repeat left center;
  background-size: auto 100%;
}
.products-menu-inner .item .labe-link.cat08 a {
  background: url("../images/top/cat_image_08.png") no-repeat left center;
  background-size: auto 100%;
}
.products-menu-inner .item .labe-link.cat09 a {
  background: url("../images/top/cat_image_09.png") no-repeat left center;
  background-size: auto 100%;
}
.products-menu-inner .item .labe-link.cat10 a {
  background: url("../images/top/cat_image_10.png") no-repeat left center;
  background-size: auto 100%;
}
.products-menu-inner .item .labe-link.cat11 a {
  background: url("../images/top/cat_image_11.png") no-repeat left center;
  background-size: auto 100%;
}
.products-menu-inner .item .labe-link.cat12 a {
  background: url("../images/top/cat_image_12.png") no-repeat left center;
  background-size: auto 100%;
}
.products-menu-inner .item .labe-link.cat13 a {
  background: url("../images/top/cat_image_13.png") no-repeat left center;
  background-size: auto 100%;
}
.products-menu-inner .item .labe-link.cat14 a {
  background: url("../images/top/cat_image_14.png") no-repeat left center;
  background-size: auto 100%;
}
.products-menu-inner .item .labe-link.cat15 a {
  background: url("../images/top/cat_image_15.png") no-repeat left center;
  background-size: auto 100%;
}
.products-menu-inner .item .labe-link.cat16 a {
  background: url("../images/top/cat_image_16.png") no-repeat left center;
  background-size: auto 100%;
}
.products-menu-inner .item ul {
  margin: 0 0 0 0;
  padding: 5px 0 5px 10px;
  width: 100%;
  min-height: 80px;
  text-align: left;
  box-sizing: border-box;
}
.products-menu-inner .item ul li {
  margin: 0 0 0 0;
  padding: 0 0 5px 15px;
  line-height: 1.4em;
  font-size: 14px;
  position: relative;
}
.products-menu-inner .item ul li::before {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  width: 9px;
  height: 15px;
  content: "";
  background: url("../images/common/arrow_01.png") no-repeat center center;
  background-size: 100% 100%;
  position: absolute;
  top: 3px;
  left: 0;
}

.products-menu-inner .item ul li a {
  color: #fff;
}

.search-theme-menu {
  margin: 0 0 0 0;
  padding: 35px 0 30px 0;
  width: 100%;
  background: #ec690e;
}
.search-theme-menu-inner {
  margin: 0 auto;
  padding: 0 0 0 0;
  width: 90%;
  max-width: 1160px;
  background: #ec690e;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.search-theme-menu-inner h2 {
  margin: 0 0 0 0;
  padding: 0 0 30px 0;
  width: 100%;
  line-height: 1.4em;
  font-size: 38px;
  font-weight: bold;
  color: #fff;
  text-align: center;
}
.search-theme-menu-inner .item {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  width: 24.137%;
}
.search-theme-menu-inner .item a {
  margin: 0 0 0 0;
  padding: 5px;
  width: 100%;
  height: 100%;
  background: #fff;
  box-sizing: border-box;
  display: block;
  text-decoration: none;
  border-radius: 10px;
}
.search-theme-menu-inner .item a .image {
  margin: 0 0 10px 0;
  padding: 0 0 0 0;
  width: 100%;
}
.search-theme-menu-inner .item a .image img {
  display: block;
}
.search-theme-menu-inner .item a .text {
  padding: 0 45px 0 10px;
  width: 100%;
  height: 2.8em;
  text-align: left;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  line-height: 1.4em;
  font-size: 20px;
  font-weight: bold;
  color: #000;
  color: rgba(33, 33, 31, 1);
  position: relative;
  box-sizing: border-box;
}
.search-theme-menu-inner .item a .text::after {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  width: 40px;
  height: 40px;
  content: "";
  background: url("../images/common/arrow_03.png") no-repeat center center;
  background-size: 100% 100%;
  position: absolute;
  top: 50%;
  right: 7px;
  transform: translate(0,-50%);
}

.recommend-products-menu {
  margin: 0 0 0 0;
  padding: 45px 0 30px 0;
  width: 100%;
}
.recommend-products-menu-inner {
  margin: 0 auto;
  padding: 0 0 0 0;
  width: 90%;
  max-width: 1200px;
}
.recommend-products-menu-inner h2 {
  margin: 0 0 0 0;
  padding: 0 0 35px 0;
  width: 100%;
  line-height: 1.4em;
  font-size: 38px;
  font-weight: bold;
  color: #424242;
  text-align: center;
}
.recommend-products-menu-inner .list {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
}
.recommend-products-menu-inner .list .item {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  width: 23.6%;
  text-align: left;
  box-sizing: border-box;
  border: 1px dashed #898989;
}
.recommend-products-menu-inner .list .item .head {
  margin: 0 0 0 0;
  padding: 10px 10px 10px 10px;
  width: 100%;
  min-height: 75px;
  background: #004487;
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: flex-start;
  border-bottom: 1px dashed #898989;
}
.recommend-products-menu-inner .list .item .head .area {
  margin: 3px 8px 10px 0;
  padding: 0 0 0 0;
  width: 60px;
  height: 20px;
  line-height: 1.2em;
  font-size: 14px;
  font-weight: bold;
  color: #fff;
  border-radius: 3px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.recommend-products-menu-inner .list .item .head .area.gunma {
  background: #18a82d;
}
.recommend-products-menu-inner .list .item .head .area.saitama {
  background: #ea2040;
}
.recommend-products-menu-inner .list .item .head .area.osaka {
  background: #ef7216;
}
.recommend-products-menu-inner .list .item .head .area.aichi {
  background: #00ced1;
}
.recommend-products-menu-inner .list .item .head .area.fukuoka {
  background: #999999;
}

.recommend-products-menu-inner .list .item .head .center {
  margin: 0 0 10px 0;
  padding: 0 0 0 0;
  width: calc( 100% - 68px );
  min-height: 20px;
  line-height: 1.2em;
  font-size: 20px;
  font-weight: bold;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.recommend-products-menu-inner .list .item .head .cat {
  margin: 0 0 0 0;
  padding: 5px;
  width: fit-content;
  min-width: 68%;
  box-sizing: border-box;
  line-height: 1.2em;
  font-size: 18px;
  font-weight: bold;
  color: #333333;
  background: #fff;
}
.recommend-products-menu-inner .list .item .box {
  margin: 10px 10px 15px;
  padding: 0 0 0 0;
  width: calc( 100% - 20px );
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
.recommend-products-menu-inner .list .item .box .image {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  width: 48.5%;
  max-width: 130px;
  border-radius: 3px;
  overflow: hidden;
}
.recommend-products-menu-inner .list .item .box .image img {
  display: block;
}
.recommend-products-menu-inner .list .item .box .info {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  width: 48.5%;
  max-width: 124px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-end;
  overflow: hidden;
}
.recommend-products-menu-inner .list .item .box .info .product-name {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  width: 100%;
  text-align: left;
  min-height: 57px;
  line-height: 1.6em;
  font-size: 14px;
  word-break: break-all;
}
.recommend-products-menu-inner .list .item .box .info .product-stock {
  margin: 0 0 25px 0;
  padding: 0 0 0 0;
  width: fit-content;
  height: 22px;
  box-sizing: border-box;
  display: flex;
  border: 1px solid #004487;
  border-radius: 3px;
}
.recommend-products-menu-inner .list .item .box .info .product-stock dt {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  width: 56px;
  line-height: 1.3em;
  font-size: 14px;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #004487;
}
.recommend-products-menu-inner .list .item .box .info .product-stock dd {
  margin: 0 0 0 0;
  padding: 0 8px;
  width: 50px;
  line-height: 1.3em;
  font-size: 16px;
  color: #333333;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  box-sizing: border-box;
}
.recommend-products-menu-inner .list .item .box .info .price {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  line-height: 1.3em;
  font-size: 20px;
  font-weight: bold;
  color: #f00;
}
.recommend-products-menu-inner .list .item .comment {
  margin: 0px 10px 10px;
  padding: 5px;
  width: calc( 100% - 20px );
  line-height: 1.6em;
  font-size: 14px;
  color: #333;
  box-sizing: border-box;
  background: #eeeeee;
  border: 1px solid #cccccc;
}

.beginner-content-menu {
  margin: 0 0 0 0;
  padding: 35px 0 30px 0;
  width: 100%;
  background: #eeeeee;
}
.beginner-content-menu-inner {
  margin: 0 auto;
  padding: 0 0 0 0;
  width: 90%;
  max-width: 1200px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.beginner-content-menu-inner h2 {
  margin: 0 0 0 0;
  padding: 0 0 30px 0;
  width: 100%;
  line-height: 1.4em;
  font-size: 38px;
  font-weight: bold;
  color: #424242;
  text-align: center;
}
.beginner-content-menu-inner .list {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
}
.beginner-content-menu-inner .list .item {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  width: 30.416%;
}
.beginner-content-menu-inner .list .item a {
  margin: 0 0 0 0;
  padding: 0 40px 0 130px;
  min-height: 180px;
  text-align: left;
  text-decoration: none;
  display: block;
  background: #fff;
  border: 5px solid #004487;
  position: relative;
}
.beginner-content-menu-inner .list .item a .icon {
  position: absolute;
  top: 50%;
  transform: translate(0,-50%);
}
.beginner-content-menu-inner .list .item a .icon.icon01 {
  width: 80px;
  left: 25px;
}
.beginner-content-menu-inner .list .item a .icon.icon02 {
  width: 118px;
  left: 5px;
}
.beginner-content-menu-inner .list .item a .icon.icon03 {
  width: 114px;
  left: 5px;
}
.beginner-content-menu-inner .list .item a dl {
  padding: 20px 0 0 0;
}
.beginner-content-menu-inner .list .item a dl dt {
  line-height: 1.5em;
  font-size: 20px;
  font-weight: bold;
  color: #004487;
  min-height: 38px;
}
.beginner-content-menu-inner .list .item a dl dd {
  padding: 0 10px 0 0;
  line-height: 1.5em;
  font-size: 14px;
  font-weight: normal;
  color: #000;
  color: rgba(33, 33, 31, 1);
}
.beginner-content-menu-inner .list .item a::after {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  width: 24px;
  height: 100px;
  content: "";
  background: url("../images/top/arrow_01.png") no-repeat center center;
  background-size: 100% 100%;
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translate(0,-50%);
}

.reading-content-menu {
  margin: 0 0 0 0;
  padding: 35px 0 30px 0;
  width: 100%;
}
.reading-content-menu-inner {
  margin: 0 auto;
  padding: 0 0 0 0;
  width: 90%;
  max-width: 1200px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.reading-content-menu-inner h2 {
  margin: 0 0 0 0;
  padding: 0 0 30px 0;
  width: 100%;
  line-height: 1.4em;
  font-size: 38px;
  font-weight: bold;
  color: #424242;
  text-align: center;
}
.reading-content-menu-inner .list {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
}
.reading-content-menu-inner .list .item {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  width: 16.666%;
  text-align: left;
}
.reading-content-menu-inner .list .item .image {
  margin: 0 0 7px 0;
  padding: 0 0 0 0;
  width: 100%;
}
.reading-content-menu-inner .list .item .image img {
  width: 100%;
  display: block;
}
.reading-content-menu-inner .list .item .title {
  margin: 0 0 7px 0;
  line-height: 1.5em;
  font-size: 16px;
}
.reading-content-menu-inner .list .item .tags {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.reading-content-menu-inner .list .item .tags .tag {
  margin: 0 7px 5px 0;
}
.reading-content-menu-inner .list .item .tags .tag a {
  padding: 5px;
  line-height: 1.4em;
  font-size: 14px;
  color: #000000;
  color: rgba(33, 33, 31, 1);
  text-decoration: none;
  border: 1px dashed #a7a7a7;
  border-radius: 180px;
  display: inline-block;
}
@media only screen and (min-width: 770px) and (max-width: 1200px) {
  .main-image-contents {
    margin: 0 auto;
    padding: 2.083vw 0 0 0;
    width: 90%;
    max-width: 100vw;
    display: flex;
    justify-content: space-between;
  }
  .main-image-contents img {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
    display: block;
  }
  .main-image-contents .left {
    width: 68.83%;
  }
  .main-image-contents .right {
    width: 29.5%;
  }
  .main-image-contents .right .bnr {
    margin: 0 0 0.833vw 0;
    width: 100%;
  }
  .main-image-contents .right .bnr:last-child {
    margin: 0 0 0 0;
  }



  .products-menu {
    padding: 4.167vw 0 4.167vw 0;
    background: #eeeeee;
  }
  .products-menu-inner {
    margin: 0 auto;
    width: 90%;
    max-width: 100vw;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    box-sizing: border-box;
    border-bottom: 1px solid #aaaaaa;
    border-right: 1px solid #aaaaaa;
  }
  .products-menu-inner .item {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 25%;
    background: #004487;
    border-top: 1px solid #aaaaaa;
    border-left: 1px solid #aaaaaa;
    box-sizing: border-box;
  }
  .products-menu-inner .item .labe-link {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
    background: #fff;
  }
  .products-menu-inner .item .labe-link a {
    margin: 0 0 0 0;
    padding: 0 4vw 0 7.5vw;
    width: 100%;
    height: 6.583vw;
    text-decoration: none;
    line-height: 1.6em;
    font-size: 1.5vw;
    font-weight: 500;
    color: #333333;
    text-align: left;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    position: relative;
    box-sizing: border-box;
  }
  .products-menu-inner .item .labe-link.cat12 a {
    margin: 0 0 0 0;
    padding: 0 0 0 9.167vw;
  }
  .products-menu-inner .item .labe-link.cat15 a {
    margin: 0 0 0 0;
    padding: 0 5vw 0 6.667vw;
  }

  .products-menu-inner .item .labe-link a::after {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 3.033vw;
    height: 3.033vw;
    content: "";
    background: url("../images/common/arrow_02.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 1.117vw;
    transform: translate(0,-50%);
  }
  .products-menu-inner .item .labe-link.cat01 a {
    background: url("../images/top/cat_image_01.png") no-repeat left center;
    background-size: auto 100%;
  }
  .products-menu-inner .item .labe-link.cat02 a {
    background: url("../images/top/cat_image_02.png") no-repeat left center;
    background-size: auto 100%;
  }
  .products-menu-inner .item .labe-link.cat03 a {
    background: url("../images/top/cat_image_03.png") no-repeat left center;
    background-size: auto 100%;
  }
  .products-menu-inner .item .labe-link.cat04 a {
    background: url("../images/top/cat_image_04.png") no-repeat left center;
    background-size: auto 100%;
  }
  .products-menu-inner .item .labe-link.cat05 a {
    background: url("../images/top/cat_image_05.png") no-repeat left center;
    background-size: auto 100%;
  }
  .products-menu-inner .item .labe-link.cat06 a {
    background: url("../images/top/cat_image_06.png") no-repeat left center;
    background-size: auto 100%;
  }
  .products-menu-inner .item .labe-link.cat07 a {
    background: url("../images/top/cat_image_07.png") no-repeat left center;
    background-size: auto 100%;
  }
  .products-menu-inner .item .labe-link.cat08 a {
    background: url("../images/top/cat_image_08.png") no-repeat left center;
    background-size: auto 100%;
  }
  .products-menu-inner .item .labe-link.cat09 a {
    background: url("../images/top/cat_image_09.png") no-repeat left center;
    background-size: auto 100%;
  }
  .products-menu-inner .item .labe-link.cat10 a {
    background: url("../images/top/cat_image_10.png") no-repeat left center;
    background-size: auto 100%;
  }
  .products-menu-inner .item .labe-link.cat11 a {
    background: url("../images/top/cat_image_11.png") no-repeat left center;
    background-size: auto 100%;
  }
  .products-menu-inner .item .labe-link.cat12 a {
    background: url("../images/top/cat_image_12.png") no-repeat left center;
    background-size: auto 100%;
  }
  .products-menu-inner .item .labe-link.cat13 a {

    background: url("../images/top/cat_image_13.png") no-repeat left center;
    background-size: auto 100%;
  }
  .products-menu-inner .item .labe-link.cat14 a {
    background: url("../images/top/cat_image_14.png") no-repeat left center;
    background-size: auto 100%;
  }
  .products-menu-inner .item .labe-link.cat15 a {
    background: url("../images/top/cat_image_15.png") no-repeat left center;
    background-size: auto 100%;
  }
  .products-menu-inner .item .labe-link.cat16 a {
    background: url("../images/top/cat_image_16.png") no-repeat left center;
    background-size: auto 100%;
  }
  .products-menu-inner .item ul {
    margin: 0 0 0 0;
    padding: 0.417vw 0 0.417vw 0.833vw;
    width: 100%;
    min-height: 6.667vw;
    text-align: left;
    box-sizing: border-box;
  }
  .products-menu-inner .item ul li {
    margin: 0 0 0 0;
    padding: 0 0 0.417vw 1.25vw;
    line-height: 1.4em;
    font-size: 1.167vw;
    position: relative;
  }
  .products-menu-inner .item ul li::before {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 0.75vw;
    height: 1.25vw;
    content: "";
    background: url("../images/common/arrow_01.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 0.25vw;
    left: 0;
  }

  .products-menu-inner .item ul li a {
    color: #fff;
  }

  .search-theme-menu {
    margin: 0 0 0 0;
    padding: 2.917vw 0 2.5vw 0;
    width: 100%;
    background: #ec690e;
  }
  .search-theme-menu-inner {
    margin: 0 auto;
    padding: 0 0 0 0;
    width: 90%;
    max-width: 96.667vw;
    background: #ec690e;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .search-theme-menu-inner h2 {
    margin: 0 0 0 0;
    padding: 0 0 2.5vw 0;
    width: 100%;
    line-height: 1.4em;
    font-size: 3.167vw;
    font-weight: bold;
    color: #fff;
    text-align: center;
  }
  .search-theme-menu-inner .item {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 24.137%;
  }
  .search-theme-menu-inner .item a {
    margin: 0 0 0 0;
    padding: 0.417vw;
    width: 100%;
    height: 100%;
    background: #fff;
    box-sizing: border-box;
    display: block;
    text-decoration: none;
    border-radius: 0.833vw;
  }
  .search-theme-menu-inner .item a .image {
    margin: 0 0 0.833vw 0;
    padding: 0 0 0 0;
    width: 100%;
  }
  .search-theme-menu-inner .item a .image img {
    display: block;
  }
  .search-theme-menu-inner .item a .text {
    padding: 0 3.75vw 0 0.833vw;
    width: 100%;
    height: 2.8em;
    text-align: left;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    line-height: 1.4em;
    font-size: 1.667vw;
    font-weight: bold;
    color: #000;
    color: rgba(33, 33, 31, 1);
    position: relative;
    box-sizing: border-box;
  }
  .search-theme-menu-inner .item a .text::after {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 3.333vw;
    height: 3.333vw;
    content: "";
    background: url("../images/common/arrow_03.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 0.583vw;
    transform: translate(0,-50%);
  }

  .recommend-products-menu {
    margin: 0 0 0 0;
    padding: 3.75vw 0 2.5vw 0;
    width: 100%;
  }
  .recommend-products-menu-inner {
    margin: 0 auto;
    padding: 0 0 0 0;
    width: 90%;
    max-width: 100vw;
  }
  .recommend-products-menu-inner h2 {
    margin: 0 0 0 0;
    padding: 0 0 2.917vw 0;
    width: 100%;
    line-height: 1.4em;
    font-size: 3.167vw;
    font-weight: bold;
    color: #424242;
    text-align: center;
  }
  .recommend-products-menu-inner .list {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
  }
  .recommend-products-menu-inner .list .item {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 23.6%;
    text-align: left;
    box-sizing: border-box;
    border: 1px dashed #898989;
  }
  .recommend-products-menu-inner .list .item .head {
    margin: 0 0 0 0;
    padding: 0.833vw 0.833vw 0.833vw 0.833vw;
    width: 100%;
    min-height: 6.25vw;
    background: #004487;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: flex-start;
    border-bottom: 1px dashed #898989;
  }
  .recommend-products-menu-inner .list .item .head .area {
    margin: 0.25vw 0.667vw 0.833vw 0;
    padding: 0 0 0 0;
    width: 5vw;
    height: 1.667vw;
    line-height: 1.2em;
    font-size: 1.167vw;
    font-weight: bold;
    color: #fff;
    border-radius: 0.25vw;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .recommend-products-menu-inner .list .item .head .area.gunma {
    background: #18a82d;
  }
  .recommend-products-menu-inner .list .item .head .area.saitama {
    background: #ea2040;
  }
  .recommend-products-menu-inner .list .item .head .area.osaka {
    background: #ef7216;
  }
  .recommend-products-menu-inner .list .item .head .area.aichi {
    background: #00ced1;
  }
  .recommend-products-menu-inner .list .item .head .area.fukuoka {
    background: #999999;
  }

  .recommend-products-menu-inner .list .item .head .center {
    margin: 0 0 0.833vw 0;
    padding: 0 0 0 0;
    width: calc( 100% - 5.667vw );
    min-height: 1.667vw;
    line-height: 1.2em;
    font-size: 15px;
    font-weight: bold;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: flex-start;
  }
  .recommend-products-menu-inner .list .item .head .cat {
    margin: 0 0 0 0;
    padding: 0.417vw;
    width: fit-content;
    min-width: 68%;
    box-sizing: border-box;
    line-height: 1.2em;
    font-size: 1.5vw;
    font-weight: bold;
    color: #333333;
    background: #fff;
  }
  .recommend-products-menu-inner .list .item .box {
    margin: 0.833vw 0.833vw 1.25vw;
    padding: 0 0 0 0;
    width: calc( 100% - 1.667vw );
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
  }
  .recommend-products-menu-inner .list .item .box .image {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 48.5%;
    max-width: 10.833vw;
    border-radius: 0.25vw;
    overflow: hidden;
  }
  .recommend-products-menu-inner .list .item .box .image img {
    display: block;
  }
  .recommend-products-menu-inner .list .item .box .info {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 48.5%;
    max-width: 10.333vw;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-end;
    overflow: hidden;
  }
  .recommend-products-menu-inner .list .item .box .info .product-name {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
    text-align: left;
    min-height: 4.75vw;
    line-height: 1.6em;
    font-size: 1.167vw;
    word-break: break-all;
  }
  .recommend-products-menu-inner .list .item .box .info .product-stock {
    margin: 0 0 2.083vw 0;
    padding: 0 0 0 0;
    width: fit-content;
    height: 1.833vw;
    box-sizing: border-box;
    display: flex;
    border: 1px solid #004487;
    border-radius: 0.25vw;
  }
  .recommend-products-menu-inner .list .item .box .info .product-stock dt {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 4.667vw;
    line-height: 1.3em;
    font-size: 1.167vw;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #004487;
  }
  .recommend-products-menu-inner .list .item .box .info .product-stock dd {
    margin: 0 0 0 0;
    padding: 0 0.667vw;
    width: 4.167vw;
    line-height: 1.3em;
    font-size: 1.333vw;
    color: #333333;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    box-sizing: border-box;
  }
  .recommend-products-menu-inner .list .item .box .info .price {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    line-height: 1.3em;
    font-size: 1.667vw;
    font-weight: bold;
    color: #f00;
  }
  .recommend-products-menu-inner .list .item .comment {
    margin: 0px 0.833vw 0.833vw;
    padding: 0.417vw;
    width: calc( 100% - 1.667vw );
    line-height: 1.6em;
    font-size: 1.167vw;
    color: #333;
    box-sizing: border-box;
    background: #eeeeee;
    border: 1px solid #cccccc;
  }

  .beginner-content-menu {
    margin: 0 0 0 0;
    padding: 2.917vw 0 2.5vw 0;
    width: 100%;
    background: #eeeeee;
  }
  .beginner-content-menu-inner {
    margin: 0 auto;
    padding: 0 0 0 0;
    width: 90%;
    max-width: 100vw;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .beginner-content-menu-inner h2 {
    margin: 0 0 0 0;
    padding: 0 0 2.5vw 0;
    width: 100%;
    line-height: 1.4em;
    font-size: 3.167vw;
    font-weight: bold;
    color: #424242;
    text-align: center;
  }
  .beginner-content-menu-inner .list {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
  }
  .beginner-content-menu-inner .list .item {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 32.416%;
  }
  .beginner-content-menu-inner .list .item a {
    margin: 0 0 0 0;
    padding: 0 3.333vw 0 10.833vw;
    min-height: 15vw;
    text-align: left;
    text-decoration: none;
    display: block;
    background: #fff;
    border: 5px solid #004487;
    position: relative;
  }
  .beginner-content-menu-inner .list .item a .icon {
    position: absolute;
    top: 50%;
    transform: translate(0,-50%);
  }
  .beginner-content-menu-inner .list .item a .icon.icon01 {
    width: 6.667vw;
    left: 2.083vw;
  }
  .beginner-content-menu-inner .list .item a .icon.icon02 {
    width: 9.833vw;
    left: 0.417vw;
  }
  .beginner-content-menu-inner .list .item a .icon.icon03 {
    width: 9.5vw;
    left: 0.417vw;
  }
  .beginner-content-menu-inner .list .item a dl {
    padding: 1.667vw 0 0 0;
  }
  .beginner-content-menu-inner .list .item a dl dt {
    line-height: 1.5em;
    font-size: 1.667vw;
    font-weight: bold;
    color: #004487;
    min-height: 3.167vw;
  }
  .beginner-content-menu-inner .list .item a dl dd {
    padding: 0 0.833vw 0 0;
    line-height: 1.5em;
    font-size: 1.167vw;
    font-weight: normal;
    color: #000;
    color: rgba(33, 33, 31, 1);
  }
  .beginner-content-menu-inner .list .item a::after {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 2vw;
    height: 8.333vw;
    content: "";
    background: url("../images/top/arrow_01.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 0.833vw;
    transform: translate(0,-50%);
  }

  .reading-content-menu {
    margin: 0 0 0 0;
    padding: 2.917vw 0 2.5vw 0;
    width: 100%;
  }
  .reading-content-menu-inner {
    margin: 0 auto;
    padding: 0 0 0 0;
    width: 90%;
    max-width: 100vw;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .reading-content-menu-inner h2 {
    margin: 0 0 0 0;
    padding: 0 0 2.5vw 0;
    width: 100%;
    line-height: 1.4em;
    font-size: 3.167vw;
    font-weight: bold;
    color: #424242;
    text-align: center;
  }
  .reading-content-menu-inner .list {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
  }
  .reading-content-menu-inner .list .item {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 16.666%;
    text-align: left;
  }
  .reading-content-menu-inner .list .item .image {
    margin: 0 0 0.583vw 0;
    padding: 0 0 0 0;
    width: 100%;
  }
  .reading-content-menu-inner .list .item .image img {
    width: 100%;
    display: block;
  }
  .reading-content-menu-inner .list .item .title {
    margin: 0 0 0.583vw 0;
    line-height: 1.5em;
    font-size: 1.333vw;
  }
  .reading-content-menu-inner .list .item .tags {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
  }
  .reading-content-menu-inner .list .item .tags .tag {
    margin: 0 0.583vw 0.417vw 0;
  }
  .reading-content-menu-inner .list .item .tags .tag a {
    padding: 0.417vw;
    line-height: 1.4em;
    font-size: 1.167vw;
    color: #000000;
    color: rgba(33, 33, 31, 1);
    text-decoration: none;
    border: 1px dashed #a7a7a7;
    border-radius: 15vw;
    display: inline-block;
  }


}
@media only screen and (max-width: 769px) {
  .main-image-contents {
    margin: 0 auto;
    padding: 0 0 0 0;
    width: 100%;

    max-width: 187.5vw;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .main-image-contents img {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
    display: block;
  }
  .main-image-contents .left {
    width: 100%;
  }
  .main-image-contents .right {
    margin: -1.85vw 0 -1.25vw 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
  }
  .main-image-contents .right .bnr {
    margin: 0 0 0 0;
    width: 40.1%;
  }
  .main-image-contents .right .bnr:last-child {
    margin: 0 0 0 0;
    width: 59.9%;
  }



  .products-menu {
    padding: 10.156vw 0 10.156vw 0;
    background: #fff;
  }
  .products-menu-inner {
    margin: 0 auto;
    width: 100%;
    max-width: 187.5vw;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    box-sizing: border-box;
    border-bottom: none;
    border-right: none;
  }
  .products-menu-inner .item {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 33.33%;
    background: #fff;
    border-top: none;
    border-left: none;
    box-sizing: border-box;
  }
  .products-menu-inner .item .labe-link {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
    background: #fff;
  }
  .products-menu-inner .item .labe-link a {
    margin: 0 0 3.906vw 0;
    padding: 23.438vw 0 0 0;
    width: 100%;
    height: auto;
    text-decoration: none;
    line-height: 1.6em;
    font-size: 2.813vw;
    font-weight: 500;
    color: #333333;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    position: relative;
    box-sizing: border-box;
  }
  .products-menu-inner .item .labe-link.cat12 a {
    margin: 0 0 0 0;
    padding: 23.438vw 0 0 0;
  }
  .products-menu-inner .item .labe-link.cat15 a {
    margin: 0 0 0 0;
    padding: 23.438vw 0 0 0;
  }

  .products-menu-inner .item .labe-link a::after {
    display: none;
  }
  .products-menu-inner .item .labe-link.cat01 a {
    background: url("../images/top/cat_image_01-sp.png") no-repeat center top;
    background-size: 21.25vw auto;
  }
  .products-menu-inner .item .labe-link.cat02 a {
    background: url("../images/top/cat_image_02-sp.png") no-repeat center top;
    background-size: 17.188vw auto;
  }
  .products-menu-inner .item .labe-link.cat03 a {
    background: url("../images/top/cat_image_03-sp.png") no-repeat center top;
    background-size: 25.938vw auto;
  }
  .products-menu-inner .item .labe-link.cat04 a {
    background: url("../images/top/cat_image_04-sp.png") no-repeat center top;
    background-size: 17.813vw auto;
  }
  .products-menu-inner .item .labe-link.cat05 a {
    background: url("../images/top/cat_image_05-sp.png") no-repeat center top;
    background-size: 23.75vw auto;
  }
  .products-menu-inner .item .labe-link.cat06 a {
    background: url("../images/top/cat_image_06-sp.png") no-repeat center top;
    background-size: 22.813vw auto;
  }
  .products-menu-inner .item .labe-link.cat07 a {
    background: url("../images/top/cat_image_07-sp.png") no-repeat center top;
    background-size: 24.844vw auto;
  }
  .products-menu-inner .item .labe-link.cat08 a {
    background: url("../images/top/cat_image_08-sp.png") no-repeat center top;
    background-size: 18.125vw auto;
  }
  .products-menu-inner .item .labe-link.cat09 a {
    background: url("../images/top/cat_image_09-sp.png") no-repeat center top;
    background-size: 20.781vw auto;
  }
  .products-menu-inner .item .labe-link.cat10 a {
    background: url("../images/top/cat_image_10-sp.png") no-repeat center top;
    background-size: 18.906vw auto;
  }
  .products-menu-inner .item .labe-link.cat11 a {
    background: url("../images/top/cat_image_11-sp.png") no-repeat center top;
    background-size: 22.188vw auto;
  }
  .products-menu-inner .item .labe-link.cat12 a {
    background: url("../images/top/cat_image_12-sp.png") no-repeat center top;
    background-size: 25.938vw auto;
  }
  .products-menu-inner .item .labe-link.cat13 a {
    background: url("../images/top/cat_image_13-sp.png") no-repeat center top;
    background-size: 20.938vw auto;
  }
  .products-menu-inner .item .labe-link.cat14 a {
    background: url("../images/top/cat_image_14-sp.png") no-repeat center top;
    background-size: 17.813vw auto;
  }
  .products-menu-inner .item .labe-link.cat15 a {
    background: url("../images/top/cat_image_15-sp.png") no-repeat center top;
    background-size: 15vw auto;
  }
  .products-menu-inner .item .labe-link.cat16 a {
    background: url("../images/top/cat_image_16.png") no-repeat center 4.688vw;
    background-size: 21.25vw auto;
  }
  .search-theme-menu {
    margin: 0 0 0 0;
    padding: 5.469vw 0 4.688vw 0;
    width: 100%;
    background: #ec690e;
  }
  .search-theme-menu-inner {
    margin: 0 auto;
    padding: 0 0 0 0;
    width: 93.75vw;
    max-width: 100vw;
    background: #ec690e;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .search-theme-menu-inner h2 {
    margin: 0 0 0 0;
    padding: 0 0 6.25vw 0;
    width: 100%;
    line-height: 1.4em;
    font-size: 5.313vw;
    font-weight: bold;
    color: #fff;
    text-align: center;
  }
  .search-theme-menu-inner .item {
    margin: 0 0 3.125vw 0;
    padding: 0 0 0 0;
    width: 45.625vw;
  }
  .search-theme-menu-inner .item a {
    margin: 0 0 0 0;
    padding: 0.781vw;
    width: 100%;
    height: 100%;
    background: #fff;
    box-sizing: border-box;
    display: block;
    text-decoration: none;
    border-radius: 1.563vw;
  }
  .search-theme-menu-inner .item a .image {
    margin: 0 0 1.563vw 0;
    padding: 0 0 0 0;
    width: 100%;
  }
  .search-theme-menu-inner .item a .image img {
    display: block;
  }
  .search-theme-menu-inner .item a .text {
    padding: 0 7.031vw 0 1.563vw;
    width: 100%;
    height: 2.8em;
    text-align: left;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    line-height: 1.4em;
    font-size: 3.125vw;
    font-weight: bold;
    color: #000;
    color: rgba(33, 33, 31, 1);
    position: relative;
    box-sizing: border-box;
  }
  .search-theme-menu-inner .item a .text::after {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 6.25vw;
    height: 6.25vw;
    content: "";
    background: url("../images/common/arrow_03.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 1.094vw;
    transform: translate(0,-50%);
  }

  .recommend-products-menu {
    margin: 0 0 0 0;
    padding: 7.031vw 0 4.688vw 0;
    width: 100%;
  }
  .recommend-products-menu-inner {
    margin: 0 auto;
    padding: 0 0 0 0;
    width: 93.75vw;
    max-width: 93.75vw;
  }
  .recommend-products-menu-inner h2 {
    margin: 0 0 0 0;
    padding: 0 0 5.469vw 0;
    width: 100%;
    line-height: 1.4em;
    font-size: 4.688vw;
    font-weight: bold;
    color: #424242;
    text-align: center;
  }
  .recommend-products-menu-inner .list {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
  }
  .recommend-products-menu-inner .list .item {
    margin: 0 0 4.688vw 0;
    padding: 0 0 0 0;
    width: 100%;
    text-align: left;
    box-sizing: border-box;
    border: 1px dashed #898989;
  }
  
  .recommend-products-menu-inner .list .item .head {
    margin: 0 0 0 0;
    padding: 1.563vw 1.563vw 1.563vw 1.563vw;
    width: 100%;
    min-height: 9.375vw;
    background: #004487;
    box-sizing: border-box;
    display: flex;
    flex-wrap: nowrap;
    align-items: flex-start;
    justify-content: flex-start;
    border-bottom: 1px dashed #898989;
  }
  .recommend-products-menu-inner .list .item .head .area {
    margin: 0.781vw 1.25vw 0 0;
    padding: 0 0 0 0;
    width: 14.063vw;
    height: 4.688vw;
    line-height: 1.2em;
    font-size: 3.75vw;
    font-weight: bold;
    color: #fff;
    border-radius: 0.469vw;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .recommend-products-menu-inner .list .item .head .area.gunma {
    background: #18a82d;
  }
  .recommend-products-menu-inner .list .item .head .area.saitama {
    background: #ea2040;
  }
  .recommend-products-menu-inner .list .item .head .area.osaka {
    background: #ef7216;
  }
  .recommend-products-menu-inner .list .item .head .area.aichi {
    background: #00ced1;
  }
  .recommend-products-menu-inner .list .item .head .area.fukuoka {
    background: #999999;
  }
  .recommend-products-menu-inner .list .item .head .center {
    margin: 0.781vw 2.344vw 0 0;
    padding: 0 0 0 0;
    width: auto;
    min-height: 4.688vw;
    line-height: 1.2em;
    font-size: 3.75vw;
    font-weight: bold;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: flex-start;
  }
  .recommend-products-menu-inner .list .item .head .cat {
    margin: 0 0 0 0;
    padding: 0.781vw;
    width: 40.438vw;
    min-width: 0%;
    min-height: 4.688vw;
    box-sizing: border-box;
    line-height: 1.2em;
    font-size: 3.75vw;
    font-weight: bold;
    color: #333333;
    background: #fff;
  }
  .recommend-products-menu-inner .list .item .box {
    margin: 3.125vw 3.125vw 2.344vw;
    padding: 0 0 0 32.813vw;
    width: calc( 100% - 6.25vw );
    display: block;
    box-sizing: border-box;
    align-items: flex-start;
    justify-content: space-between;
    position: relative;
  }
  .recommend-products-menu-inner .list .item .box .image {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 28.125vw;
    max-width: 28.125vw;
    border-radius: 0.469vw;
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
  }
  .recommend-products-menu-inner .list .item .box .image img {
    display: block;
    width: 100%;
  }
  .recommend-products-menu-inner .list .item .box .info {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    overflow: hidden;
  }
  .recommend-products-menu-inner .list .item .box .info .product-name {
    margin: 0 0 2.344vw 0;
    padding: 0 0 0 0;
    width: 100%;
    text-align: left;
    min-height: 1.6em;
    line-height: 1.6em;
    font-size: 3.75vw;
    word-break: break-all;
  }
  .recommend-products-menu-inner .list .item .box .info .product-stock {
    margin: 0 0 2.344vw 0;
    padding: 0 0 0 0;
    width: fit-content;
    height: 5vw;
    box-sizing: border-box;
    display: flex;
    border: 1px solid #004487;
    border-radius: 0.469vw;
  }
  .recommend-products-menu-inner .list .item .box .info .product-stock dt {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 14.688vw;
    line-height: 1.3em;
    font-size: 3.125vw;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #004487;
  }
  .recommend-products-menu-inner .list .item .box .info .product-stock dd {
    margin: 0 0 0 0;
    padding: 0 1.25vw;
    width: 12.5vw;
    line-height: 1.3em;
    font-size: 3.75vw;
    color: #333333;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    box-sizing: border-box;
  }
  .recommend-products-menu-inner .list .item .box .info .price {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    line-height: 1.3em;
    font-size: 4.688vw;
    font-weight: bold;
    color: #f00;
  }
  .recommend-products-menu-inner .list .item .comment {
    margin: 0px 0 2.344vw 35.938vw;
    padding: 0.781vw;
    width: 53.906vw;
    line-height: 1.6em;
    font-size: 2.813vw;
    color: #333;
    box-sizing: border-box;
    background: #eeeeee;
    border: 1px solid #cccccc;
  }

  .beginner-content-menu {
    margin: 0 0 0 0;
    padding: 7.031vw 0 1.563vw 0;
    width: 100%;
    background: #eeeeee;
  }
  .beginner-content-menu-inner {
    margin: 0 auto;
    padding: 0 0 0 0;
    width: 93.75vw;
    max-width: 187.5vw;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .beginner-content-menu-inner h2 {
    margin: 0 0 0 0;
    padding: 0 0 6.25vw 0;
    width: 100%;
    line-height: 1.4em;
    font-size: 4.688vw;
    font-weight: bold;
    color: #424242;
    text-align: center;
  }
  .beginner-content-menu-inner .list {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
  }
  .beginner-content-menu-inner .list .item {
    margin: 0 0 4.688vw 0;
    padding: 0 0 0 0;
    width: 100%;
  }
  .beginner-content-menu-inner .list .item a {
    margin: 0 0 0 0;
    padding: 0 10.625vw 0 23.438vw;
    min-height: 28.125vw;
    text-align: left;
    text-decoration: none;
    display: block;
    background: #fff;
    border: 5px solid #004487;
    position: relative;
  }
  .beginner-content-menu-inner .list .item a .icon {
    position: absolute;
    top: 50%;
    transform: translate(0,-50%);
  }
  .beginner-content-menu-inner .list .item a .icon.icon01 {
    width: 12.5vw;
    left: 3.906vw;
  }
  .beginner-content-menu-inner .list .item a .icon.icon02 {
    width: 18.438vw;
    left: 2.344vw;
  }
  .beginner-content-menu-inner .list .item a .icon.icon03 {
    width: 17.813vw;
    left: 2.813vw;
  }
  .beginner-content-menu-inner .list .item a dl {
    padding: 3.125vw 0 0 0;
  }
  .beginner-content-menu-inner .list .item a dl dt {
    line-height: 1.5em;
    font-size: 4.688vw;
    font-weight: bold;
    color: #004487;
    min-height: 5.938vw;
  }
  .beginner-content-menu-inner .list .item a dl dd {
    padding: 0 1.563vw 0 0;
    line-height: 1.5em;
    font-size: 3.125vw;
    font-weight: normal;
    color: #000;
    color: rgba(33, 33, 31, 1);
  }
  .beginner-content-menu-inner .list .item a::after {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 3.75vw;
    height: 15.625vw;
    content: "";
    background: url("../images/top/arrow_01.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 1.563vw;
    transform: translate(0,-50%);
  }

  .reading-content-menu {
    margin: 0 0 0 0;
    padding: 7.031vw 0 4.688vw 0;
    width: 100%;
  }
  .reading-content-menu-inner {
    margin: 0 auto;
    padding: 0 0 0 0;
    width: 93.75vw;
    max-width: 93.75vw;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .reading-content-menu-inner h2 {
    margin: 0 0 0 0;
    padding: 0 0 4.688vw 0;
    width: 100%;
    line-height: 1.4em;
    font-size: 4.688vw;
    font-weight: bold;
    color: #424242;
    text-align: center;
  }
  .reading-content-menu-inner .list {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: flex-start;
  }
  .reading-content-menu-inner .list .item {
    margin: 0 4.688vw 2.344vw 0;
    padding: 0 0 0 0;
    width: 28.125vw;
    text-align: left;
  }
  .reading-content-menu-inner .list .item:nth-of-type(3n) {
    margin: 0 0 2.344vw 0;
  }
  .reading-content-menu-inner .list .item .image {
    margin: 0 0 1.094vw 0;
    padding: 0 0 0 0;
    width: 100%;
  }
  .reading-content-menu-inner .list .item .image img {
    width: 100%;
    display: block;
  }
  .reading-content-menu-inner .list .item .title {
    margin: 0 0 1.094vw 0;
    line-height: 1.5em;
    font-size: 2.813vw;
  }
  .reading-content-menu-inner .list .item .tags {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
  }
  .reading-content-menu-inner .list .item .tags .tag {
    margin: 0 1.094vw 0.781vw 0;
  }
  .reading-content-menu-inner .list .item .tags .tag a {
    padding: 0.781vw;
    line-height: 1.4em;
    font-size: 2.188vw;
    color: #000000;
    color: rgba(33, 33, 31, 1);
    text-decoration: none;
    border: 1px dashed #a7a7a7;
    border-radius: 28.125vw;
    display: inline-block;
  }


}


/* page */
.page {
  margin: 0 auto;
  width: 90%;
  max-width: 1200px;
  text-align: left;
}
.page h2 {
  margin: 0 0 85px 0;
  line-height: 1.4em;
  font-size: 60px;
  font-weight: bold;
  color: #333;
}
@media only screen and (min-width: 770px) and (max-width: 1200px) {
  .page {
    margin: 0 auto;
    width: 90%;
    max-width: 100vw;
    text-align: left;
  }
  .page h2 {
    margin: 0 0 7.083vw 0;
    line-height: 1.4em;
    font-size: 5vw;
    font-weight: bold;
    color: #333;
  }
}
@media only screen and (max-width: 769px) {
  .page {
    margin: 0 auto;
    width: 100%;
    max-width: 187.5vw;
    text-align: left;
  }
  .page h2 {
    margin: 0 0 0 0;
    line-height: 1.4em;
    font-size: 6.25vw;
    font-weight: bold;
    color: #333;
  }
}



/* faq */
.faq-page {
}
.faq-page h2 {
}
.faq-page .menu {
  margin: 0 auto 100px;
  width: 100%;
  max-width: 1140px;
  display: flex;
  justify-content: space-between;
}
.faq-page .menu a {
  padding: 0 45px 0 0;
  width: 32%;
  max-width: 350px;
  height: 60px;
  line-height: 1.4em;
  font-size: 18px;
  font-weight: 500;
  color: #fff;
  background: #004487;
  border-radius: 180px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  box-sizing: border-box;
  text-decoration: none;
  transition: all 0.5s 0s;
}
.faq-page .menu a:hover {
  opacity: 0.6;
}
.faq-page .menu a::after {
  width: 24px;
  height: 12px;
  content: "";
  background: url("../images/faq/arrow_01.png") no-repeat center center;
  background-size: 100% 100%;
  position: absolute;
  top: 50%;
  right: 38px;
  transform: translate(0,-50%);
}
.faq-page h3 {
  margin: 0 0 50px 0;
  padding: 4px 0 0 20px;
  width: 100%;
  min-height: 81px;
  line-height: 1.4em;
  font-size: 40px;
  font-weight: bold;
  color: #333;
  box-sizing: border-box;
  background: url("../images/faq/title_back_01.png") no-repeat left center;
  background-size: auto 100%;
}
.faq-page .list {
  margin: 0 30px 40px 30px;
  overflow: hidden;
}
.faq-page .list .item {
  margin: 0 0 50px 0;
  padding: 25px 30px 25px 27px;
  background: #ededed;
  overflow: hidden;
}
.faq-page .list .item .question {
  margin: 0 0 0 0;
  padding: 5px 105px 5px 114px;
  min-height: 93px;
  line-height: 1.6em;
  font-size: 22px;
  font-weight: 500;
  position: relative;
}
.faq-page .list .item .question::before {
  width: 80px;
  height: 92px;
  content: "";
  background: url("../images/faq/icon_q_01.png") no-repeat center center;
  background-size: 100% 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.faq-page .list .item .question::after {
  width: 60px;
  height: 60px;
  content: "";
  background: url("../images/faq/icon_plus_01.png") no-repeat center center;
  background-size: 100% 100%;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(0,-50%);
  margin: -12px 0 0 0;
  cursor: pointer;
}
.faq-page .list .item .question.active::after {
  background: url("../images/faq/icon_minus_01.png") no-repeat center center;
  background-size: 100% 100%;
}

.faq-page .list .item .answer {
  margin: 0 0 0 0;
  padding: 5px 105px 55px 114px;
  line-height: 1.6em;
  font-size: 22px;
  font-weight: 500;
  position: relative;
  display: none;
  overflow: hidden;
}
.faq-page .list .item .answer::before {
  width: 80px;
  height: 92px;
  content: "";
  background: url("../images/faq/icon_a_01.png") no-repeat center center;
  background-size: 100% 100%;
  position: absolute;
  top: 0;
  left: 0;
}
@media only screen and (min-width: 770px) and (max-width: 1200px) {
  .faq-page {
  }
  .faq-page h2 {
  }
  .faq-page .menu {
    margin: 0 auto 8.333vw;
    width: 100%;
    max-width: 95vw;
    display: flex;
    justify-content: space-between;
  }
  .faq-page .menu a {
    padding: 0 3.75vw 0 0;
    width: 32%;
    max-width: 29.167vw;
    height: 5vw;
    line-height: 1.4em;
    font-size: 1.5vw;
    font-weight: 500;
    color: #fff;
    background: #004487;
    border-radius: 15vw;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    box-sizing: border-box;
    text-decoration: none;
    transition: all 0.5s 0s;
  }
  .faq-page .menu a:hover {
    opacity: 0.6;
  }
  .faq-page .menu a::after {
    width: 2vw;
    height: 1vw;
    content: "";
    background: url("../images/faq/arrow_01.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 3.167vw;
    transform: translate(0,-50%);
  }
  .faq-page h3 {
    margin: 0 0 4.167vw 0;
    padding: 0.333vw 0 0 1.667vw;
    width: 100%;
    min-height: 6.75vw;
    line-height: 1.4em;
    font-size: 3.333vw;
    font-weight: bold;
    color: #333;
    box-sizing: border-box;
    background: url("../images/faq/title_back_01.png") no-repeat left center;
    background-size: auto 100%;
  }
  .faq-page .list {
    margin: 0 2.5vw 3.333vw 2.5vw;
    overflow: hidden;
  }
  .faq-page .list .item {
    margin: 0 0 4.167vw 0;
    padding: 2.083vw 2.5vw 2.083vw 2.25vw;
    background: #ededed;
    overflow: hidden;
  }
  .faq-page .list .item .question {
    margin: 0 0 0 0;
    padding: 0.417vw 8.75vw 0.417vw 9.5vw;
    min-height: 7.75vw;
    line-height: 1.6em;
    font-size: 1.833vw;
    font-weight: 500;
    position: relative;
  }
  .faq-page .list .item .question::before {
    width: 6.667vw;
    height: 7.667vw;
    content: "";
    background: url("../images/faq/icon_q_01.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 0;
    left: 0;
  }
  .faq-page .list .item .question::after {
    width: 5vw;
    height: 5vw;
    content: "";
    background: url("../images/faq/icon_plus_01.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translate(0,-50%);
    margin: -1vw 0 0 0;
    cursor: pointer;
  }
  .faq-page .list .item .question.active::after {
    background: url("../images/faq/icon_minus_01.png") no-repeat center center;
    background-size: 100% 100%;
  }

  .faq-page .list .item .answer {
    margin: 0 0 0 0;
    padding: 0.417vw 8.75vw 4.583vw 9.5vw;
    line-height: 1.6em;
    font-size: 1.833vw;
    font-weight: 500;
    position: relative;
    display: none;
    overflow: hidden;
  }
  .faq-page .list .item .answer::before {
    width: 6.667vw;
    height: 7.667vw;
    content: "";
    background: url("../images/faq/icon_a_01.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 0;
    left: 0;
  }
}
@media only screen and (max-width: 769px) {
  .faq-page {
  }
  .faq-page h2 {
    margin: 0 0 13.281vw 0;
    text-align: center;
  }
  .faq-page .menu {
    margin: 0 4.688vw 15.625vw 4.688vw;
    width: 90.625vw;
    max-width: 90.625vw;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .faq-page .menu a {
    margin: 0 5.2% 20px 0;
    padding: 0 0 0 0;
    width: 47.4%;
    max-width: 47.4%;
    height: 9.375vw;
    line-height: 1.4em;
    font-size: 2.813vw;
    font-weight: 500;
    color: #fff;
    background: #004487;
    border-radius: 28.125vw;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    box-sizing: border-box;
    text-decoration: none;
    transition: all 0.5s 0s;
  }
  .faq-page .menu a:nth-of-type(2n) {
    margin: 0 0 3.125vw 0;
  }
  .faq-page .menu a:hover {
    opacity: 0.6;
  }
  .faq-page .menu a::after {
    width: 3.75vw;
    height: 1.875vw;
    content: "";
    background: url("../images/faq/arrow_01.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 5.938vw;
    transform: translate(0,-50%);
  }
  .faq-page h3 {
    margin: 0 4.688vw 4.688vw 4.688vw;
    padding: 0.625vw 0 0 3.125vw;
    width: 90.625vw;
    min-height: 12.656vw;
    line-height: 1.4em;
    font-size: 5vw;
    font-weight: bold;
    color: #333;
    box-sizing: border-box;
    background: url("../images/faq/title_back_01.png") no-repeat left center;
    background-size: auto 70px;
  }
  .faq-page .list {
    margin: 0 4.688vw 6.25vw 4.688vw;
    width: 90.625vw;
    overflow: hidden;
  }
  .faq-page .list .item {
    margin: 0 0 7.813vw 0;
    padding: 3.906vw 4.688vw 3.906vw 4.219vw;
    background: #ededed;
    overflow: hidden;
  }
  .faq-page .list .item .question {
    margin: 0 0 0 0;
    padding: 0.781vw 13.281vw 0.781vw 17.813vw;
    min-height: 14.531vw;
    line-height: 1.6em;
    font-size: 2.813vw;
    font-weight: 500;
    position: relative;
  }
  .faq-page .list .item .question::before {
    width: 12.5vw;
    height: 14.375vw;
    content: "";
    background: url("../images/faq/icon_q_01.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 0;
    left: 0;
  }
  .faq-page .list .item .question::after {
    width: 9.375vw;
    height: 9.375vw;
    content: "";
    background: url("../images/faq/icon_plus_01.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translate(0,-50%);
    margin: -1.875vw 0 0 0;
    cursor: pointer;
  }
  .faq-page .list .item .question.active::after {
    background: url("../images/faq/icon_minus_01.png") no-repeat center center;
    background-size: 100% 100%;
  }

  .faq-page .list .item .answer {
    margin: 0 0 0 0;
    padding: 0.781vw 13.281vw 8.594vw 17.813vw;
    line-height: 1.6em;
    font-size: 2.813vw;
    font-weight: 500;
    position: relative;
    display: none;
    overflow: hidden;
  }
  .faq-page .list .item .answer::before {
    width: 12.5vw;
    height: 14.375vw;
    content: "";
    background: url("../images/faq/icon_a_01.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 0;
    left: 0;
  }
}


/* jiten */
.jiten-page {
  padding: 0 0 50px 0;
}
.jiten-page h2 {
}
.jiten-page .head {
  margin: 0 0 30px 0;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.jiten-page .head .word {
  margin: 0 10px 0 0;
  width: 80px;
  height: 80px;
  line-height: 1.2em;
  font-size: 40px;
  font-weight: bold;
  color: #004487;
  background: #fff;
  border: 5px solid #004487;
  border-radius: 180px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
}
.jiten-page .head .line {
  margin: 0 25px 0 0;
  line-height: 1.2em;
  font-size: 30px;
  font-weight: bold;
  color: #333;
}
.jiten-page .head .more {
}
.jiten-page .head .more a {
  padding: 0 0 0 0;
  width: 140px;
  height: 34px;
  line-height: 1.4em;
  font-size: 20px;
  font-weight: 500;
  color: #fff;
  background: #004487;
  border-radius: 3px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  box-sizing: border-box;
  text-decoration: none;
  transition: all 0.5s 0s;
}
.jiten-page .head .more a:hover {
  opacity: 0.6;
}
.jiten-page .list {
  margin: 0 0 25px 0;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.jiten-page .list .item {
  margin: 0 4.175% 20px 0;
  width: 16.66%;
  display: flex;
  flex-wrap: wrap;
}
.jiten-page .list .item:nth-of-type(5n) {
  margin: 0 0 20px 0;
}
.jiten-page .list .item img {
  display: block;
}
.jiten-page .list .item .image {
  margin: 0 0 5px 0;
}
.jiten-page .list .item p {
  line-height: 1.5em;
  font-size: 18px;
  font-weight: 500;
}
.jiten-page .list .item p a {
  color: #333;
  text-decoration: underline;
}
.jiten-page .list .item p a:hover {
  text-decoration: none;
}
@media only screen and (min-width: 770px) and (max-width: 1200px) {
  .jiten-page {
    padding: 0 0 4.167vw 0;
  }
  .jiten-page h2 {
  }
  .jiten-page .head {
    margin: 0 0 2.5vw 0;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-start;
  }
  .jiten-page .head .word {
    margin: 0 0.833vw 0 0;
    width: 6.667vw;
    height: 6.667vw;
    line-height: 1.2em;
    font-size: 3.333vw;
    font-weight: bold;
    color: #004487;
    background: #fff;
    border: 5px solid #004487;
    border-radius: 15vw;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .jiten-page .head .line {
    margin: 0 2.083vw 0 0;
    line-height: 1.2em;
    font-size: 2.5vw;
    font-weight: bold;
    color: #333;
  }
  .jiten-page .head .more {
  }
  .jiten-page .head .more a {
    padding: 0 0 0 0;
    width: 11.667vw;
    height: 2.833vw;
    line-height: 1.4em;
    font-size: 1.667vw;
    font-weight: 500;
    color: #fff;
    background: #004487;
    border-radius: 0.25vw;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    box-sizing: border-box;
    text-decoration: none;
    transition: all 0.5s 0s;
  }
  .jiten-page .head .more a:hover {
    opacity: 0.6;
  }
  .jiten-page .list {
    margin: 0 0 2.083vw 0;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
  }
  .jiten-page .list .item {
    margin: 0 4.175% 20px 0;
    width: 16.66%;
    display: flex;
    flex-wrap: wrap;
  }
  .jiten-page .list .item:nth-of-type(5n) {
    margin: 0 0 1.667vw 0;
  }
  .jiten-page .list .item img {
    display: block;
  }
  .jiten-page .list .item .image {
    margin: 0 0 0.417vw 0;
  }
  .jiten-page .list .item p {
    line-height: 1.5em;
    font-size: 1.5vw;
    font-weight: 500;
  }
  .jiten-page .list .item p a {
    color: #333;
    text-decoration: underline;
  }
  .jiten-page .list .item p a:hover {
    text-decoration: none;
  }
}
@media only screen and (max-width: 769px) {
  .jiten-page {
    padding: 0 0 7.813vw 0;
  }
  .jiten-page h2 {
    text-align: center;
    margin: 0 0 12.5vw 0;
  }
  .jiten-page .head {
    margin: 0 4.688vw 4.688vw 4.688vw;
    width: 90.625vw;
    display: flex;
    align-items: center;
    justify-content: flex-start;
  }
  .jiten-page .head .word {
    margin: 0 1.563vw 0 0;
    width: 12.5vw;
    height: 12.5vw;
    line-height: 1.2em;
    font-size: 6.25vw;
    font-weight: bold;
    color: #004487;
    background: #fff;
    border: 5px solid #004487;
    border-radius: 28.125vw;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .jiten-page .head .line {
    margin: 0 3.906vw 0 0;
    line-height: 1.2em;
    font-size: 4.688vw;
    font-weight: bold;
    color: #333;
  }
  .jiten-page .head .more {
  }
  .jiten-page .head .more a {
    padding: 0 0 0 0;
    width: 21.875vw;
    height: 5.313vw;
    line-height: 1.4em;
    font-size: 3.125vw;
    font-weight: 500;
    color: #fff;
    background: #004487;
    border-radius: 0.469vw;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    box-sizing: border-box;
    text-decoration: none;
    transition: all 0.5s 0s;
  }
  .jiten-page .head .more a:hover {
    opacity: 0.6;
  }
  .jiten-page .list {
    margin: 0 4.688vw 4.375vw 4.688vw;
    width: 90.625vw;
    display: flex;
    flex-wrap: wrap;
  }
  .jiten-page .list .item {
    margin: 0 5% 20px 0;
    width: 30%;
    display: flex;
    flex-wrap: wrap;
  }
  .jiten-page .list .item:nth-of-type(5n) {
    margin: 0 5% 20px 0;
  }
  .jiten-page .list .item:nth-of-type(3n) {
    margin: 0 0 3.125vw 0;
  }
  .jiten-page .list .item img {
    display: block;
  }
  .jiten-page .list .item .image {
    margin: 0 0 0.781vw 0;
  }
  .jiten-page .list .item p {
    line-height: 1.5em;
    font-size: 2.813vw;
    font-weight: 500;
  }
  .jiten-page .list .item p a {
    color: #333;
    text-decoration: underline;
  }
  .jiten-page .list .item p a:hover {
    text-decoration: none;
  }
}



/* matehankun */
.matehankun-page {
  padding: 0 0 50px 0;
}
.matehankun-page h2 {
	margin: 0 0 20px 0;
}
.matehankun-page h3 {
	margin: 0 0 20px 0;
	line-height: 1.4em;
	font-size: 40px;
	font-weight: bold;
}

.matehankun-page .intro {
	margin: 0 0 0 0;
	padding: 0 0 200px 0;
	width: 100%;
	position: relative;
}
.matehankun-page .intro p {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	width: 55%;
	max-width: 645px;
	line-height: 1.6em;
	font-size: 30px;
	font-weight: 500;
}
.matehankun-page .intro .image {
	width: 25%;
	position: absolute;
	top: -90px;
	right: 0;
}
.matehankun-page .profile {
	margin: 0 0 0 0;
	padding: 0 0 95px 0;
	width: 100%;
	position: relative;
}
.matehankun-page .profile p {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	line-height: 2.4em;
	font-size: 26px;
	font-weight: 500;
}
.matehankun-page .profile dl {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	line-height: 2.4em;
	font-size: 26px;
	font-weight: 500;
	display: flex;
}
.matehankun-page .profile .image {
	width: 38.58%;
	max-width: 463px;
	position: absolute;
	top: 0;
	right: 0;
}
.matehankun-page .sec01 {
	margin: 0 0 0 0;
	padding: 0 0 70px 0;
	width: 100%;
	position: relative;
}
.matehankun-page .sec01 p {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	line-height: 1.8em;
	font-size: 22px;
	font-weight: 500;
}
.matehankun-page .sec02 {
	margin: 0 0 0 0;
	padding: 0 0 40px 0;
	width: 100%;
	position: relative;
}
.matehankun-page .sec02 p {
	margin: 0 0 0 0;
	padding: 0 0 30px 0;
	width: 50%;
	line-height: 1.8em;
	font-size: 22px;
	font-weight: 500;
}
.matehankun-page .sec02 .image {
	width: 30.16%;
	max-width: 362px;
	position: absolute;
	top: 80px;
	right: 0;
}
.matehankun-page .sec03 {
	margin: 0 0 0 0;
	padding: 0 0 150px 0;
	width: 100%;
	position: relative;
}
.matehankun-page .sec03 ul {
	margin: 0 0 0 1.2em;
	padding: 0 0 30px 0;
	line-height: 2.2em;
	font-size: 22px;
	font-weight: 500;
	list-style: disc;
}
.matehankun-page .sec03 .image {
	width: 38.5%;
	max-width: 462px;
	position: absolute;
	top: 80px;
	right: 0;
}
@media only screen and (min-width: 770px) and (max-width: 1200px) {
  .matehankun-page {
    padding: 0 0 4.167vw 0;
  }
  .matehankun-page h2 {
    margin: 0 0 1.667vw 0;
  }
  .matehankun-page h3 {
    margin: 0 0 1.667vw 0;
    line-height: 1.4em;
    font-size: 3.333vw;
    font-weight: bold;
  }

  .matehankun-page .intro {
    margin: 0 0 0 0;
    padding: 0 0 9.583vw 0;
    width: 100%;
    position: relative;
  }
  .matehankun-page .intro p {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 55%;
    max-width: 53.75vw;
    line-height: 1.6em;
    font-size: 2.5vw;
    font-weight: 500;
  }
  .matehankun-page .intro .image {
    width: 25%;
    position: absolute;
    top: -7.5vw;
    right: 0;
  }
  .matehankun-page .profile {
    margin: 0 0 0 0;
    padding: 0 0 7.917vw 0;
    width: 100%;
    position: relative;
  }
  .matehankun-page .profile p {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    line-height: 2.4em;
    font-size: 2.167vw;
    font-weight: 500;
  }
  .matehankun-page .profile dl {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    line-height: 2.4em;
    font-size: 2.167vw;
    font-weight: 500;
    display: flex;
  }
  .matehankun-page .profile .image {
    width: 38.58%;
    max-width: 38.583vw;
    position: absolute;
    top: 0;
    right: 0;
  }
  .matehankun-page .sec01 {
    margin: 0 0 0 0;
    padding: 0 0 5.833vw 0;
    width: 100%;
    position: relative;
  }
  .matehankun-page .sec01 p {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    line-height: 1.8em;
    font-size: 1.833vw;
    font-weight: 500;
  }
  .matehankun-page .sec02 {
    margin: 0 0 0 0;
    padding: 0 0 3.333vw 0;
    width: 100%;
    position: relative;
  }
  .matehankun-page .sec02 p {
    margin: 0 0 0 0;
    padding: 0 0 2.5vw 0;
    width: 50%;
    line-height: 1.8em;
    font-size: 1.833vw;
    font-weight: 500;
  }
  .matehankun-page .sec02 .image {
    width: 30.16%;
    max-width: 30.167vw;
    position: absolute;
    top: 6.667vw;
    right: 0;
  }
  .matehankun-page .sec03 {
    margin: 0 0 0 0;
    padding: 0 0 12.5vw 0;
    width: 100%;
    position: relative;
  }
  .matehankun-page .sec03 ul {
    margin: 0 0 0 1.2em;
    padding: 0 0 2.5vw 0;
    line-height: 2.2em;
    font-size: 1.833vw;
    font-weight: 500;
    list-style: disc;
  }
  .matehankun-page .sec03 .image {
    width: 38.5%;
    max-width: 38.5vw;
    position: absolute;
    top: 6.667vw;
    right: 0;
  }
}
@media only screen and (max-width: 769px) {
  .matehankun-page {
    padding: 0 0 7.813vw 0;
  }
  .matehankun-page .page-head {
    margin: 0 auto 2.5vw;
    width: 90.625vw;
    display: flex;
    align-items: center;
  }
  .matehankun-page .page-head .image {
    width: 38.438vw;
  }
  .matehankun-page .page-head .image img {
    width: 100%;
  }
  .matehankun-page h2 {
    margin: 0 0 0 0;
    width: calc( 100% - 38.438vw );
  }
  .matehankun-page h3 {
    margin: 0 0 3vw 0;
    line-height: 1.4em;
    font-size: 5.625vw;
    font-weight: bold;
    text-align: center;
  }

  .matehankun-page .intro {
    margin: 0 4.688vw 75px 4.688vw;
    padding: 0 0 0 0;
    width: 90.625vw;
    position: relative;
  }
  .matehankun-page .intro p {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
    max-width: 100%;
    line-height: 1.6em;
    font-size: 2.813vw;
    font-weight: 500;
  }
  .matehankun-page .profile {
    margin: 0 4.688vw 0 4.688vw;
    padding: 0 0 14.844vw 0;
    width: 90.625vw;
    position: relative;
  }
  .matehankun-page .profile p {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    line-height: 2.4em;
    font-size: 3.438vw;
    font-weight: 500;
  }
  .matehankun-page .profile dl {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    line-height: 2.4em;
    font-size: 3.438vw;
    font-weight: 500;
    display: flex;
  }
  .matehankun-page .profile .image {
    width: 44.063vw;
    max-width: 44.063vw;
    position: relative;
    top: auto;
    right: auto;
    margin: 0 auto 35px;
  }
  .matehankun-page .sec01 {
    margin: 0 4.688vw 0 4.688vw;
    padding: 0 0 12.5vw 0;
    width: 90.625vw;
    position: relative;
  }
  .matehankun-page .sec01 p {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    line-height: 1.8em;
    font-size: 3.438vw;
    font-weight: 500;
  }
  .matehankun-page .sec02 {
    margin: 0 4.688vw 0 4.688vw;
    padding: 0 0 6.25vw 0;
    width: 90.625vw;
    position: relative;
  }
  .matehankun-page .sec02 p {
    margin: 0 0 0 0;
    padding: 0 0 4.688vw 0;
    width: 100%;
    line-height: 1.8em;
    font-size: 3.438vw;
    font-weight: 500;
  }
  .matehankun-page .sec02 .image {
    width: 57.5vw;
    max-width: 57.5vw;
    position: relative;
    top: auto;
    right: auto;
    margin: 0 auto 30px;
  }
  .matehankun-page .sec03 {
    margin: 0 4.688vw 0 4.688vw;
    padding: 0 0 9.375vw 0;
    width: 90.625vw;
    position: relative;
  }
  .matehankun-page .sec03 ul {
    margin: 0 auto 0 auto;
    padding: 0 0 4.688vw 0;
    width: fit-content;
    line-height: 2.2em;
    font-size: 3.438vw;
    font-weight: 500;
    list-style: disc;
  }
  .matehankun-page .sec03 .image {
    width: 44.063vw;
    max-width: 44.063vw;
    position: relative;
    top: auto;
    right: auto;
    margin: 0 auto 35px;
  }
  
}


/* access */
.access-page {
  padding: 0 0 50px 0;
}
.access-page h2 {
	margin: 0 0 20px 0;
}
.access-page h3 {
	margin: 0 0 20px 0;
	line-height: 1.4em;
	font-size: 40px;
	font-weight: bold;
}

.access-page .intro {
	margin: 0 0 0 0;
	padding: 0 0 85px 0;
	width: 100%;
	position: relative;
}
.access-page .intro p {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	width: 50%;
	max-width: 600px;
	line-height: 1.6em;
	font-size: 30px;
	font-weight: 500;
}
.access-page .intro .image {
	width: 30%;
	position: absolute;
	top: -90px;
	right: 0;
}
.access-page .menu {
  margin: 0 auto 65px;
  width: 100%;
  max-width: 1200px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.access-page .menu a {
  margin: 0 0 20px 0;
  padding: 0 45px 0 30px;
  width: 24.5%;
  max-width: 285px;
  height: 60px;
  line-height: 1.4em;
  font-size: 18px;
  font-weight: 500;
  color: #fff;
  border-radius: 180px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  position: relative;
  box-sizing: border-box;
  text-decoration: none;
  transition: all 0.5s 0s;
}
.access-page .menu a.link01 {
  background: #e93c71;
}
.access-page .menu a.link02 {
  background: #3fa1ec;
}
.access-page .menu a.link03 {
  background: #52ea3e;
}
.access-page .menu a.link04 {
  background: #e8863b;
}
.access-page .menu a:hover {
  opacity: 0.6;
}
.access-page .menu a::after {
  width: 23px;
  height: 12px;
  content: "";
  position: absolute;
  top: 50%;
  right: 13px;
  transform: translate(0,-50%);
}
.access-page .menu a.link01::after {
  background: url("../images/access/arrow_01.png") no-repeat center center;
  background-size: 100% 100%;
}
.access-page .menu a.link02::after {
  background: url("../images/access/arrow_02.png") no-repeat center center;
  background-size: 100% 100%;
}
.access-page .menu a.link03::after {
  background: url("../images/access/arrow_03.png") no-repeat center center;
  background-size: 100% 100%;
}
.access-page .menu a.link04::after {
  background: url("../images/access/arrow_04.png") no-repeat center center;
  background-size: 100% 100%;
}

.access-page .office-box {
  margin: 0 0 90px 0;
  width: 100%;
  max-width: 1200px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.access-page .office-box h3 {
  margin: 0 0 25px 0;
  padding: 0 0 0 0;
  width: 100%;
  line-height: 1.4em;
  font-size: 40px;
	font-weight: bold;
}
.access-page .office-box .image-box {
  margin: 0 0 50px 0;
  padding: 0 0 0 0;
  width: 33.33%;
}
.access-page .office-box .image-box img {
	display: block;
}

.access-page .office-box .info {
  margin: 0 0 50px 0;
  padding: 0 0 0 0;
  width: 62.33%;
	line-height: 1.8em;
	font-size: 18px;
}
.access-page .office-box .info p {
  margin: 0 0 0 0;
  padding: 0 0 20px 0;
}
.access-page .office-box .info .link {
  margin: 0 0 20px 0;
  padding: 0 0 0 0;
	max-width: 280px;
}
.access-page .office-box .map {
	width: 100%;
}
.access-page .office-box .map iframe {
	width: 100%;
	height: 350px;
	display: block;
}
@media only screen and (min-width: 770px) and (max-width: 1200px) {
  .access-page {
    padding: 0 0 4.167vw 0;
  }
  .access-page h2 {
    margin: 0 0 1.667vw 0;
  }
  .access-page h3 {
    margin: 0 0 1.667vw 0;
    line-height: 1.4em;
    font-size: 3.333vw;
    font-weight: bold;
  }

  .access-page .intro {
    margin: 0 0 0 0;
    padding: 0 0 7.083vw 0;
    width: 100%;
    position: relative;
  }
  .access-page .intro p {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 50%;
    max-width: 50vw;
    line-height: 1.6em;
    font-size: 2.5vw;
    font-weight: 500;
  }
  .access-page .intro .image {
    width: 25%;
    position: absolute;
    top: -7.5vw;
    right: 0;
  }
  .access-page .menu {
    margin: 0 auto 65px;
    width: 100%;
    max-width: 100vw;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .access-page .menu a {
    margin: 0 0 1.667vw 0;
    padding: 0 3.75vw 0 2.5vw;
    width: 24.5%;
    max-width: 23.75vw;
    height: 5vw;
    line-height: 1.4em;
    font-size: 1.5vw;
    font-weight: 500;
    color: #fff;
    border-radius: 15vw;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    position: relative;
    box-sizing: border-box;
    text-decoration: none;
    transition: all 0.5s 0s;
  }
  .access-page .menu a.link01 {
    background: #e93c71;
  }
  .access-page .menu a.link02 {
    background: #3fa1ec;
  }
  .access-page .menu a.link03 {
    background: #52ea3e;
  }
  .access-page .menu a.link04 {
    background: #e8863b;
  }
  .access-page .menu a:hover {
    opacity: 0.6;
  }
  .access-page .menu a::after {
    width: 1.917vw;
    height: 1vw;
    content: "";
    position: absolute;
    top: 50%;
    right: 1.083vw;
    transform: translate(0,-50%);
  }
  .access-page .menu a.link01::after {
    background: url("../images/access/arrow_01.png") no-repeat center center;
    background-size: 100% 100%;
  }
  .access-page .menu a.link02::after {
    background: url("../images/access/arrow_02.png") no-repeat center center;
    background-size: 100% 100%;
  }
  .access-page .menu a.link03::after {
    background: url("../images/access/arrow_03.png") no-repeat center center;
    background-size: 100% 100%;
  }
  .access-page .menu a.link04::after {
    background: url("../images/access/arrow_04.png") no-repeat center center;
    background-size: 100% 100%;
  }

  .access-page .office-box {
    margin: 0 0 7.5vw 0;
    width: 100%;
    max-width: 100vw;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .access-page .office-box h3 {
    margin: 0 0 2.083vw 0;
    padding: 0 0 0 0;
    width: 100%;
    line-height: 1.4em;
    font-size: 3.333vw;
    font-weight: bold;
  }
  .access-page .office-box .image-box {
    margin: 0 0 4.167vw 0;
    padding: 0 0 0 0;
    width: 33.33%;
  }
  .access-page .office-box .image-box img {
    display: block;
  }

  .access-page .office-box .info {
    margin: 0 0 4.167vw 0;
    padding: 0 0 0 0;
    width: 62.33%;
    line-height: 1.8em;
    font-size: 1.5vw;
  }
  .access-page .office-box .info p {
    margin: 0 0 0 0;
    padding: 0 0 1.667vw 0;
  }
  .access-page .office-box .info .link {
    margin: 0 0 1.667vw 0;
    padding: 0 0 0 0;
    max-width: 23.333vw;
  }
  .access-page .office-box .map {
    width: 100%;
  }
  .access-page .office-box .map iframe {
    width: 100%;
    height: 29.167vw;
    display: block;
  }
}
@media only screen and (max-width: 769px) {
  .access-page {
    padding: 0 0 7.813vw 0;
  }
  .access-page .page-head {
    margin: 0 auto 12.5vw;
    width: 90.625vw;
    display: flex;
    align-items: center;
  }
  .access-page h2 {
    margin: 0 0 0 0;
    width: calc( 100% - 38.438vw );
  }
  
  
  
  .access-page h3 {
    margin: 0 0 3.125vw 0;
    line-height: 1.4em;
    font-size: 5.625vw;
    font-weight: bold;
  }

  .access-page .intro {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 38.438vw;
    position: relative;
  }
  .access-page .intro p {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 50%;
    max-width: 93.75vw;
    line-height: 1.6em;
    font-size: 4.688vw;
    font-weight: 500;
  }
  .access-page .intro .image {
    width: 100%;
    position: relative;
    top: auto;
    right: auto;
  }
  .access-page .intro .image img {
    width: 100%;
    display: block;
  }
  
  
  .access-page .menu {
    margin: 0 auto 15.625vw;
    width: 90.625vw;
    max-width: 90.625vw;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .access-page .menu a {
    margin: 0 0 1.563vw 0;
    padding: 0 7.031vw 0 4.688vw;
    width: 49%;
    max-width: 49%;
    height: 9.375vw;
    line-height: 1.4em;
    font-size: 2.813vw;
    font-weight: 500;
    color: #fff;
    border-radius: 28.125vw;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    position: relative;
    box-sizing: border-box;
    text-decoration: none;
    transition: all 0.5s 0s;
  }
  .access-page .menu a.link01 {
    background: #e93c71;
  }
  .access-page .menu a.link02 {
    background: #3fa1ec;
  }
  .access-page .menu a.link03 {
    background: #52ea3e;
  }
  .access-page .menu a.link04 {
    background: #e8863b;
  }
  .access-page .menu a:hover {
    opacity: 0.6;
  }
  .access-page .menu a::after {
    width: 3.594vw;
    height: 1.875vw;
    content: "";
    position: absolute;
    top: 50%;
    right: 2.031vw;
    transform: translate(0,-50%);
  }
  .access-page .menu a.link01::after {
    background: url("../images/access/arrow_01.png") no-repeat center center;
    background-size: 100% 100%;
  }
  .access-page .menu a.link02::after {
    background: url("../images/access/arrow_02.png") no-repeat center center;
    background-size: 100% 100%;
  }
  .access-page .menu a.link03::after {
    background: url("../images/access/arrow_03.png") no-repeat center center;
    background-size: 100% 100%;
  }
  .access-page .menu a.link04::after {
    background: url("../images/access/arrow_04.png") no-repeat center center;
    background-size: 100% 100%;
  }

  .access-page .office-box {
    margin: 0 auto 14.063vw auto;
    width: 100%;
    max-width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .access-page .office-box h3 {
    margin: 0 4.688vw 3.125vw 4.688vw;
    padding: 0 0 0 0;
    width: 90.625vw;
    line-height: 1.4em;
    font-size: 5.625vw;
    font-weight: bold;
  }
  .access-page .office-box .image-box {
    margin: 0 4.688vw 1.563vw 4.688vw;
    padding: 0 0 0 0;
    width: 90.625vw;
  }
  .access-page .office-box .image-box img {
    width: 100%;
    display: block;
  }

  .access-page .office-box .info {
    margin: 0 4.688vw 0 4.688vw;
    padding: 0 0 0 0;
    width: 90.625vw;
    line-height: 1.8em;
    font-size: 3.125vw;
  }
  .access-page .office-box .info p {
    margin: 0 0 0 0;
    padding: 0 0 2.344vw 0;
  }
  .access-page .office-box .info .link {
    margin: 0 0 3.125vw 0;
    padding: 0 0 0 0;
    max-width: 43.75vw;
  }
  .access-page .office-box .map {
    width: 100%;
  }
  .access-page .office-box .map iframe {
    width: 100%;
    height: 54.688vw;
    display: block;
  }

}





/* search */
.search-page {
  padding: 0 0 50px 0;
}
.search-page h2 {
	margin: 0 0 20px 0;
}
.search-page h3 {
	margin: 0 0 0 0;
	line-height: 1.4em;
	font-size: 40px;
	font-weight: bold;
}
.search-page .intro {
	margin: 0 0 0 0;
	padding: 0 0 170px 0;
	width: 100%;
	position: relative;
}
.search-page .intro p {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	width: 55%;
	max-width: 645px;
	line-height: 1.6em;
	font-size: 30px;
	font-weight: 500;
}
.search-page .intro .image {
	width: 25%;
	position: absolute;
	top: -90px;
	right: 0;
}
.search-page .head {
	margin: 0 0 50px 0;
	padding: 0 0 0 0;
	width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.search-page .head .image {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	width: 50%;
}
.search-page .head h3 {
	margin: 0 0 0 0;
	padding: 0 0 0 50px;
}
.search-page .list {
	margin: 0 auto 65px auto;
	padding: 0 0 0 0;
  width: 100%;
  max-width: 1000px;
}
.search-page .list .item {
	margin: 0 0 33px 0;
	padding: 40px 0 30px 0;
  width: 100%;
  box-sizing: border-box;
  background: #eeeeee;
  display: flex;
  justify-content: space-between;
}
.search-page .list .item .image {
	margin: 0 3% 0 0;
  width: 30%;
}
.search-page .list .item .left {
	margin: 0 0 0 3%;
  width: 58%;
}
.search-page .list .item .left h4 {
	margin: 0 0 15px 0;
  padding: 0 0 0 0;
  line-height: 1.4em;
  font-size: 30px;
  font-weight: bold;
}
.search-page .list .item .left h4 strong {
	margin: 0 0 0 0;
  padding: 0 0 0 0;
  line-height: 1.4em;
  font-size: 36px;
  font-weight: bold;
  position: relative;
  z-index: 1;
}
.search-page .list .item .left h4 strong::after {
  width: 100%;
  height: 10px;
  content: "";
  background: #ec690e;
  position: absolute;
  bottom: 2px;
  left: 0;
  z-index: -1;
}
.search-page .list .item .left .description {
	margin: 0 0 15px 0;
  padding: 0 0 0 0;
  min-height: 180px;
  line-height: 1.6em;
  font-size: 18px;
  font-weight: normal;
}
.search-page .list .item .left .link {

}
.search-page .list .item .left .link a {
  padding: 0 75px 0 13px;
  width: fit-content;
  height: 60px;
  background: #ec690e;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  color: #fff;
  line-height: 1.3em;
  font-size: 26px;
  font-weight: bold;
  text-decoration: none;
  transition: all 0.6s 0s;
  position: relative;
}
.search-page .list .item .left .link a:hover {
  opacity: 0.6;
}
.search-page .list .item .left .link a::after {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  width: 40px;
  height: 40px;
  content: "";
  background: url("../images/common/arrow_09.png") no-repeat center center;
  background-size: 100% 100%;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translate(0,-50%);
}
@media only screen and (min-width: 770px) and (max-width: 1200px) {
  .search-page {
    padding: 0 0 4.167vw 0;
  }
  .search-page h2 {
    margin: 0 0 1.667vw 0;
  }
  .search-page h3 {
    margin: 0 0 0 0;
    line-height: 1.4em;
    font-size: 3.333vw;
    font-weight: bold;
  }
  .search-page .intro {
    margin: 0 0 0 0;
    padding: 0 0 14.167vw 0;
    width: 100%;
    position: relative;
  }
  .search-page .intro p {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 55%;
    max-width: 53.75vw;
    line-height: 1.6em;
    font-size: 2.5vw;
    font-weight: 500;
  }
  .search-page .intro .image {
    width: 25%;
    position: absolute;
    top: -7.5vw;
    right: 0;
  }
  .search-page .head {
    margin: 0 0 4.167vw 0;
    padding: 0 0 0 0;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .search-page .head .image {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 50%;
  }
  .search-page .head h3 {
    margin: 0 0 0 0;
    padding: 0 0 0 4.167vw;
  }
  .search-page .list {
    margin: 0 auto 65px auto;
    padding: 0 0 0 0;
    width: 100%;
    max-width: 83.333vw;
  }
  .search-page .list .item {
    margin: 0 0 2.75vw 0;
    padding: 3.333vw 0 2.5vw 0;
    width: 100%;
    box-sizing: border-box;
    background: #eeeeee;
    display: flex;
    justify-content: space-between;
  }
  .search-page .list .item .image {
    margin: 0 3% 0 0;
    width: 30%;
  }
  .search-page .list .item .left {
    margin: 0 0 0 3%;
    width: 58%;
  }
  .search-page .list .item .left h4 {
    margin: 0 0 1.25vw 0;
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 2.5vw;
    font-weight: bold;
  }
  .search-page .list .item .left h4 strong {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 3vw;
    font-weight: bold;
    position: relative;
    z-index: 1;
  }
  .search-page .list .item .left h4 strong::after {
    width: 100%;
    height: 0.833vw;
    content: "";
    background: #ec690e;
    position: absolute;
    bottom: 0.167vw;
    left: 0;
    z-index: -1;
  }
  .search-page .list .item .left .description {
    margin: 0 0 1.25vw 0;
    padding: 0 0 0 0;
    min-height: 15vw;
    line-height: 1.6em;
    font-size: 1.5vw;
    font-weight: normal;
  }
  .search-page .list .item .left .link {

  }
  .search-page .list .item .left .link a {
    padding: 0 6.25vw 0 1.083vw;
    width: fit-content;
    height: 5vw;
    background: #ec690e;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    color: #fff;
    line-height: 1.3em;
    font-size: 2.167vw;
    font-weight: bold;
    text-decoration: none;
    transition: all 0.6s 0s;
    position: relative;
  }
  .search-page .list .item .left .link a:hover {
    opacity: 0.6;
  }
  .search-page .list .item .left .link a::after {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 3.333vw;
    height: 3.333vw;
    content: "";
    background: url("../images/common/arrow_09.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 1.667vw;
    transform: translate(0,-50%);
  }
}
@media only screen and (max-width: 769px) {
  

  .search-page {
    padding: 0 0 7.813vw 0;
  }
  .search-page .page-head {
    margin: 0 auto 12.5vw;
    width: 90.625vw;
    display: flex;
    align-items: center;
  }
  .search-page .page-head .image {
    width: 38.438vw;
  }
  .search-page .page-head .image img {
    width: 100%;
  }
  .search-page h2 {
    margin: 0 0 0 0;
    width: calc( 100% - 38.438vw );
  }
  
  .search-page h3 {
    margin: 0 0 0 0;
    line-height: 1.4em;
    font-size: 5.625vw;
    font-weight: bold;
  }
  .search-page .intro {
    margin: 0 4.688vw 6.25vw 4.688vw;
    padding: 0 0 0 0;
    width: 90.625vw;
    position: relative;
  }
  .search-page .intro p {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
    max-width: 100%;
    line-height: 1.6em;
    font-size: 2.813vw;
    font-weight: 500;
  }
  .search-page .intro .image {
    width: 100%;
    position: relative;
    top: auto;
    right: auto;
  }
  .search-page .intro .image img {
    width: 100%;
    display: block;
  }
  .search-page .head {
    margin: 0 4.688vw 3.125vw 4.688vw;
    padding: 0 0 0 0;
    width: 90.625vw;
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    justify-content: space-between;
  }
  .search-page .head .image {
    margin: 0 0 0 0;
    padding: 0 0 3.906vw 0;
    width: 100%;
  }
  .search-page .head h3 {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
  }
  .search-page .list {
    margin: 0 4.688vw 10.156vw 4.688vw;
    padding: 0 0 0 0;
    width: 90.625vw;
    max-width: 90.625vw;
  }
  .search-page .list .item {
    margin: 0 0 5.156vw 0;
    padding: 16px 16px 16px 16px;
    width: 100%;
    box-sizing: border-box;
    background: #eeeeee;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .search-page .list .item .image {
    margin: 0 0 3.906vw 0;
    width: 100%;
  }
  .search-page .list .item .image img {
    width: 100%;
    height: auto;
    display: block;
  }
  .search-page .list .item .left {
    margin: 0 0 0 0;
    width: 100%;
  }
  .search-page .list .item .left h4 {
    margin: 0 0 2.344vw 0;
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 4.688vw;
    font-weight: bold;
  }
  .search-page .list .item .left h4 strong {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 5.625vw;
    font-weight: bold;
    position: relative;
    z-index: 1;
  }
  .search-page .list .item .left h4 strong::after {
    width: 100%;
    height: 1.563vw;
    content: "";
    background: #ec690e;
    position: absolute;
    bottom: 0.313vw;
    left: 0;
    z-index: -1;
  }
  .search-page .list .item .left .description {
    margin: 0 0 2.344vw 0;
    padding: 0 0 0 0;
    min-height: 28.125vw;
    line-height: 1.6em;
    font-size: 2.813vw;
    font-weight: normal;
  }
  .search-page .list .item .left .link {

  }
  .search-page .list .item .left .link a {
    margin: 0 auto;
    padding: 0 9.719vw 0 2.031vw;
    width: fit-content;
    height: 9.375vw;
    background: #ec690e;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    color: #fff;
    line-height: 1.3em;
    font-size: 4.063vw;
    font-weight: bold;
    text-decoration: none;
    transition: all 0.6s 0s;
    position: relative;
  }
  .search-page .list .item .left .link a:hover {
    opacity: 0.6;
  }
  .search-page .list .item .left .link a::after {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 6.25vw;
    height: 6.25vw;
    content: "";
    background: url("../images/common/arrow_09.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 2.125vw;
    transform: translate(0,-50%);
  }
}


/* guide */
.guide-page {
  padding: 0 0 190px 0;
}
.guide-page h2 {
	margin: 0 0 20px 0;
}
.guide-page h3 {
	margin: 0 0 35px 0;
	line-height: 1.4em;
	font-size: 40px;
	font-weight: bold;
}
.guide-page h3 .sub {
	line-height: 1.4em;
	font-size: 22px;
	font-weight: normal;
}
.guide-page .intro {
	margin: 0 0 0 0;
	padding: 0 0 150px 0;
	width: 100%;
	position: relative;
}
.guide-page .intro p {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	width: 50%;
	max-width: 600px;
	line-height: 1.6em;
	font-size: 30px;
	font-weight: 500;
}
.guide-page .intro .image {
	width: 25%;
	position: absolute;
	top: -90px;
	right: 0;
}
.guide-page .sec01 {
  margin: 0 0 85px 0;
  width: 100%;
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  flex-wrap: wrap;
}
.guide-page .sec01 h3 {
  width: 100%;
}
.guide-page .sec01 .description {
  width: 48%;
  max-width: 576px;
  line-height: 1.6em;
  font-size: 22px;
}
.guide-page .sec01 .description p {
  margin: 0 0 30px 0;
}
.guide-page .sec01 .description .note {
  line-height: 1.6em;
  font-size: 16px;
}
.guide-page .sec01 .image {
  width: 47.6%;
  max-width: 560px;
}
.guide-page .sec02 {
  margin: 0 0 40px 0;
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.guide-page .sec02 h3 {
  width: 100%;
}
.guide-page .sec02 .description {
  line-height: 1.6em;
  font-size: 22px;
}
.guide-page .flow {
  margin: 0 0 43px 0;
  padding: 24px 30px 29px 30px;
  width: 100%;
  background: #eeeeee;
  box-sizing: border-box;
}
.guide-page .flow ol {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.guide-page .flow ol li {
  width: 246px;
  position: relative;
}
.guide-page .flow ol li:nth-of-type(4) {
  width: 206px;
}
.guide-page .flow ol li::after {
  width: 20px;
  height: 39px;
  content: "";
  background: url("../images/guide/arrow_01.png") no-repeat center center;
  background-size: 100% 100%;
  position: absolute;
  top: 50%;
  right: -42px;
  transform: translate(0,-50%);
}
.guide-page .flow ol li:nth-of-type(4)::after {
  display: none;
}
.guide-page .flow ol li .label {
  padding: 0 0 0 48px;
  width: 100%;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  line-height: 1.3em;
  font-size: 17px;
  font-weight: 500;
  position: relative;
}
.guide-page .flow ol li .label::before {
  width: 40px;
  height: 40px;
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0,-50%);
}
.guide-page .flow ol li:nth-of-type(1) .label::before {
  background: url("../images/guide/num_01.png") no-repeat center center;
  background-size: 100% 100%;
}
.guide-page .flow ol li:nth-of-type(2) .label::before {
  background: url("../images/guide/num_02.png") no-repeat center center;
  background-size: 100% 100%;
}
.guide-page .flow ol li:nth-of-type(3) .label::before {
  background: url("../images/guide/num_03.png") no-repeat center center;
  background-size: 100% 100%;
}
.guide-page .flow ol li:nth-of-type(4) .label::before {
  background: url("../images/guide/num_04.png") no-repeat center center;
  background-size: 100% 100%;
}
.guide-page .flow ol li .image {
}
.guide-page .flow ol li .image.image01 {
  margin: 40px 0 0 39px;
  width: 186px;
}
.guide-page .flow ol li .image.image02 {
  margin: 27px 0 0 6px;
  width: 209px;
}
.guide-page .flow ol li .image.image03 {
  margin: 14px 0 0 69px;
  width: 77px;
}
.guide-page .flow ol li .image.image04 {
  margin: 40px 0 0 0;
  width: 176px;
}
.guide-page .link {
  margin: 0 0 100px 0;
}
.guide-page .sec01 .link {
  margin: 0 0 0 0;
}
.guide-page .link a {
  padding: 0 100px 0 30px;
  width: fit-content;
  height: 60px;
  line-height: 1.4em;
  font-size: 26px;
  font-weight: bold;
  color: #fff;
  text-align: left;
  background: #ec690e;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  box-sizing: border-box;
  text-decoration: none;
  transition: all 0.5s 0s;
}
.guide-page .link a:hover {
  opacity: 0.6;
}
.guide-page .link a::after {
  width: 40px;
  height: 40px;
  content: "";
  background: url("../images/service/arrow_01.png") no-repeat center center;
  background-size: 100% 100%;
  position: absolute;
  top: 50%;
  right: 28px;
  transform: translate(0,-50%);
}
.guide-page .trank {
  margin: 0 0 95px 0;
  padding: 25px 20px 0 20px;
  width: 100%;
  background: #eeeeee;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.guide-page .trank .item {
  margin: 0 0 25px 0;
  padding: 0 0 0 0;
  width: 23.33%;
}
.guide-page .trank .item .name {
  margin: 0 0 5px 0;
  padding: 0 0 0 0;
  line-height: 1.4em;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}
.guide-page .how-to-pay {
  margin: 0 0 90px 0;
  padding: 25px 0 29px 0;
  width: 100%;
  background: #eeeeee;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.guide-page .how-to-pay .item {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  width: 25%;
}
.guide-page .how-to-pay .item .name {
  margin: 0 0 15px 0;
  padding: 0 0 0 0;
  line-height: 1.4em;
  font-size: 22px;
  font-weight: bold;
  text-align: center;
}
.guide-page .how-to-pay .item .image {
  margin: 0 auto;
  width: 170px;
}
.guide-page .how-to-pay .item .image.image03 {
  margin: 20px auto 0;
}
.guide-page .review {
  margin: 0 0 0 0;
  padding: 25px 52px 25px 52px;
  width: 100%;
  background: #eeeeee;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.guide-page .review .item {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  width: 224px;
}
.guide-page .review .item .name {
  margin: 0 0 15px 0;
  padding: 0 0 0 0;
  min-height: 60px;
  line-height: 1.4em;
  font-size: 22px;
  font-weight: bold;
  text-align: center;
}
.guide-page .review .item .image {
  margin: 0 auto;
  min-height: 230px;
}
.guide-page .review .item .image.image01 {
  width: 131px;
}
.guide-page .review .item .image.image02 {
  width: 136px;
}
.guide-page .review .item .image.image03 {
  width: 135px;
}
.guide-page .review .item .image.image04 {
  width: 134px;
}
.guide-page .review .item .info {
  padding: 10px 0 0 15px;
  width: 100%;
  min-height: 122px;
  line-height: 1.4em;
  font-size: 16px;
  background: #fff;
  border: 1px dashed #bdbdbd;
  box-sizing: border-box;
}
@media only screen and (min-width: 770px) and (max-width: 1200px) {
  .guide-page {
    padding: 0 0 15.833vw 0;
  }
  .guide-page h2 {
    margin: 0 0 1.667vw 0;
  }
  .guide-page h3 {
    margin: 0 0 2.917vw 0;
    line-height: 1.4em;
    font-size: 3.333vw;
    font-weight: bold;
  }
  .guide-page h3 .sub {
    line-height: 1.4em;
    font-size: 1.833vw;
    font-weight: normal;
  }
  .guide-page .intro {
    margin: 0 0 0 0;
    padding: 0 0 7.083vw 0;
    width: 100%;
    position: relative;
  }
  .guide-page .intro p {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 50%;
    max-width: 50vw;
    line-height: 1.6em;
    font-size: 2.5vw;
    font-weight: 500;
  }
  .guide-page .intro .image {
    width: 25%;
    position: absolute;
    top: -7.5vw;
    right: 0;
  }
  .guide-page .sec01 {
    margin: 0 0 7.083vw 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .guide-page .sec01 h3 {
    width: 100%;
  }
  .guide-page .sec01 .description {
    width: 48%;
    max-width: 48vw;
    line-height: 1.6em;
    font-size: 1.833vw;
  }
  .guide-page .sec01 .description p {
    margin: 0 0 2.5vw 0;
  }
  .guide-page .sec01 .description .note {
    line-height: 1.6em;
    font-size: 1.333vw;
  }
  .guide-page .sec01 .image {
    width: 47.6%;
    max-width: 46.667vw;
  }
  .guide-page .sec02 {
    margin: 0 0 3.333vw 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .guide-page .sec02 h3 {
    width: 100%;
  }
  .guide-page .sec02 .description {
    line-height: 1.6em;
    font-size: 1.833vw;
  }
  .guide-page .flow {
    margin: 0 0 3.583vw 0;
    padding: 2vw 2.5vw 2.417vw 2.5vw;
    width: 100%;
    background: #eeeeee;
    box-sizing: border-box;
  }
  .guide-page .flow ol {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .guide-page .flow ol li {
    width: 20.5vw;
    position: relative;
  }
  .guide-page .flow ol li:nth-of-type(4) {
    width: 17.167vw;
  }
  .guide-page .flow ol li::after {
    width: 1.667vw;
    height: 3.25vw;
    content: "";
    background: url("../images/guide/arrow_01.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: -3.5vw;
    transform: translate(0,-50%);
  }
  .guide-page .flow ol li:nth-of-type(4)::after {
    display: none;
  }
  .guide-page .flow ol li .label {
    padding: 0 0 0 4vw;
    width: 100%;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    line-height: 1.3em;
    font-size: 1.417vw;
    font-weight: 500;
    position: relative;
  }
  .guide-page .flow ol li .label::before {
    width: 3.333vw;
    height: 3.333vw;
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(0,-50%);
  }
  .guide-page .flow ol li:nth-of-type(1) .label::before {
    background: url("../images/guide/num_01.png") no-repeat center center;
    background-size: 100% 100%;
  }
  .guide-page .flow ol li:nth-of-type(2) .label::before {
    background: url("../images/guide/num_02.png") no-repeat center center;
    background-size: 100% 100%;
  }
  .guide-page .flow ol li:nth-of-type(3) .label::before {
    background: url("../images/guide/num_03.png") no-repeat center center;
    background-size: 100% 100%;
  }
  .guide-page .flow ol li:nth-of-type(4) .label::before {
    background: url("../images/guide/num_04.png") no-repeat center center;
    background-size: 100% 100%;
  }
  .guide-page .flow ol li .image {
  }
  .guide-page .flow ol li .image.image01 {
    margin: 3.333vw 0 0 3.25vw;
    width: 15.5vw;
  }
  .guide-page .flow ol li .image.image02 {
    margin: 2.25vw 0 0 0.5vw;
    width: 17.417vw;
  }
  .guide-page .flow ol li .image.image03 {
    margin: 1.167vw 0 0 5.75vw;
    width: 6.417vw;
  }
  .guide-page .flow ol li .image.image04 {
    margin: 3.333vw 0 0 0;
    width: 14.667vw;
  }
  .guide-page .link {
    margin: 0 0 8.333vw 0;
  }
  .guide-page .sec01 .link {
    margin: 0 0 0 0;
  }
  .guide-page .link a {
    padding: 0 8.333vw 0 2.5vw;
    width: fit-content;
    height: 5vw;
    line-height: 1.4em;
    font-size: 2.167vw;
    font-weight: bold;
    color: #fff;
    text-align: left;
    background: #ec690e;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    box-sizing: border-box;
    text-decoration: none;
    transition: all 0.5s 0s;
  }
  .guide-page .link a:hover {
    opacity: 0.6;
  }
  .guide-page .link a::after {
    width: 3.333vw;
    height: 3.333vw;
    content: "";
    background: url("../images/service/arrow_01.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 2.333vw;
    transform: translate(0,-50%);
  }
  .guide-page .trank {
    margin: 0 0 7.917vw 0;
    padding: 2.083vw 0 0 0;
    width: 100%;
    background: #eeeeee;
    box-sizing: border-box;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .guide-page .trank .item {
    margin: 0 0 2.083vw 0;
    padding: 0 0 0 0;
    width: 23.33%;
  }
  .guide-page .trank .item .name {
    margin: 0 0 0.417vw 0;
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 1.5vw;
    font-weight: bold;
    text-align: center;
  }
  .guide-page .how-to-pay {
    margin: 0 0 7.5vw 0;
    padding: 2.083vw 0 2.417vw 0;
    width: 100%;
    background: #eeeeee;
    box-sizing: border-box;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .guide-page .how-to-pay .item {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 25%;
  }
  .guide-page .how-to-pay .item .name {
    margin: 0 0 1.25vw 0;
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 1.833vw;
    font-weight: bold;
    text-align: center;
  }
  .guide-page .how-to-pay .item .image {
    margin: 0 auto;
    width: 14.167vw;
  }
  .guide-page .how-to-pay .item .image.image03 {
    margin: 20px auto 0;
  }
  .guide-page .review {
    margin: 0 0 0 0;
    padding: 2.083vw 4.333vw 2.083vw 4.333vw;
    width: 100%;
    background: #eeeeee;
    box-sizing: border-box;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .guide-page .review .item {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 18.667vw;
  }
  .guide-page .review .item .name {
    margin: 0 0 1.25vw 0;
    padding: 0 0 0 0;
    min-height: 5vw;
    line-height: 1.4em;
    font-size: 1.833vw;
    font-weight: bold;
    text-align: center;
  }
  .guide-page .review .item .image {
    margin: 0 auto;
    min-height: 19.167vw;
  }
  .guide-page .review .item .image.image01 {
    width: 10.917vw;
  }
  .guide-page .review .item .image.image02 {
    width: 11.333vw;
  }
  .guide-page .review .item .image.image03 {
    width: 11.25vw;
  }
  .guide-page .review .item .image.image04 {
    width: 11.167vw;
  }
  .guide-page .review .item .info {
    padding: 0.833vw 0 0 1.25vw;
    width: 100%;
    min-height: 10.167vw;
    line-height: 1.4em;
    font-size: 1.333vw;
    background: #fff;
    border: 1px dashed #bdbdbd;
    box-sizing: border-box;
  }
}
@media only screen and (max-width: 769px) {
  .guide-page {
    padding: 0 0 15.625vw 0;
  }
  .guide-page .page-head {
    margin: 0 auto 2.344vw;
    width: 90.625vw;
    display: flex;
    align-items: center;
  }
  .guide-page .page-head .image {
    width: 38.438vw;
  }
  .guide-page h2 {
    margin: 0 0 0 0;
    width: calc( 100% - 38.438vw );
  }
  .guide-page h3 {
    margin: 0 0 3.125vw 0;
    line-height: 1.4em;
    font-size: 5.625vw;
    font-weight: bold;
    text-align: center;
  }
  .guide-page .intro {
    margin: 0 4.688vw 0 4.688vw;
    padding: 0 0 11.719vw 0;
    width: 90.625vw;
    position: relative;
  }
  .guide-page .intro p {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
    max-width: 100%;
    line-height: 1.6em;
    font-size: 3.438vw;
    font-weight: 500;
  }

  .guide-page .intro .image {
    width: 25%;
    position: absolute;
    top: -14.062vw;
    right: 0;
  }
  .guide-page .sec01 {
    margin: 0 4.688vw 10.156vw 4.688vw;
    width: 90.625vw;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .guide-page .sec01 h3 {
    width: 100%;
  }
  .guide-page .sec01 h3.text01 {
    padding: 0 5.469vw 0 5.469vw;
    text-align: left;
    box-sizing: border-box;
  }
  .guide-page .sec01 .description {
    width: 100%;
    max-width: 100%;
    line-height: 1.6em;
    font-size: 3.438vw;
  }
  .guide-page .sec01 .description p {
    margin: 0 0 4.688vw 0;
  }
  .guide-page .sec01 .description .note {
    line-height: 1.6em;
    font-size: 2.5vw;
  }
  .guide-page .sec01 .image {
    margin: 0 0 2.344vw 0;
    width: 100%;
    max-width: 100%;
  }
  .guide-page .sec02 {
    margin: 0 4.688vw 6.25vw 4.688vw;
    width: 90.625vw;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .guide-page .sec02 h3 {
    width: 100%;
  }
  .guide-page .sec02 h3.text01 {
    padding: 0 5.469vw 0 5.469vw;
    text-align: left;
    box-sizing: border-box;
  }
  .guide-page .sec02 .description {
    line-height: 1.6em;
    font-size: 3.438vw;
  }
  .guide-page .flow {
    margin: 0 auto 30px auto;
    padding: 3.75vw 0px 4.531vw 0px;
    width: 81.25vw;
    background: #eeeeee;
    box-sizing: border-box;
  }
  .guide-page .flow ol {
    margin: 0 auto;
    width: 52.344vw;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .guide-page .flow ol li {
    margin: 0 0 12.5vw 0;
    width: 52.344vw;
    position: relative;
  }
  .guide-page .flow ol li:nth-of-type(4) {
    margin: 0 0 0 0;
    width: 52.344vw;
  }
  .guide-page .flow ol li::after {
    width: 3.125vw;
    height: 6.094vw;
    content: "";
    background: url("../images/guide/arrow_01.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: auto;
    right: auto;
    bottom: -8.594vw;
    left: 50%;
    transform: translate(-50%,0) rotate(90deg);
  }
  .guide-page .flow ol li:nth-of-type(4)::after {
    display: none;
  }
  .guide-page .flow ol li .label {
    padding: 0 0 0 9.375vw;
    width: 100%;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    line-height: 1.3em;
    font-size: 3.438vw;
    font-weight: 500;
    position: relative;
  }
  .guide-page .flow ol li .label::before {
    width: 7.813vw;
    height: 7.813vw;
    content: "";
    position: absolute;
    top: 0.781vw;
    left: 0;
    transform: translate(0,0);
  }
  .guide-page .flow ol li:nth-of-type(1) .label::before {
    background: url("../images/guide/num_01.png") no-repeat center center;
    background-size: 100% 100%;
  }
  .guide-page .flow ol li:nth-of-type(2) .label::before {
    background: url("../images/guide/num_02.png") no-repeat center center;
    background-size: 100% 100%;
  }
  .guide-page .flow ol li:nth-of-type(3) .label::before {
    background: url("../images/guide/num_03.png") no-repeat center center;
    background-size: 100% 100%;
  }
  .guide-page .flow ol li:nth-of-type(4) .label::before {
    background: url("../images/guide/num_04.png") no-repeat center center;
    background-size: 100% 100%;
  }
  .guide-page .flow ol li .image {
  }
  .guide-page img {
    width: 100%;
  }
  .guide-page .flow ol li .image.image01 {
    margin: 4.688vw 0 0 0.781vw;
    width: 46.875vw;
  }
  .guide-page .flow ol li .image.image02 {
    margin: 4.375vw 0 0 1.25vw;
    width: 46.875vw;
  }
  .guide-page .flow ol li .image.image03 {
    margin: 2.188vw 0 0 17.188vw;
    width: 15vw;
  }
  .guide-page .flow ol li .image.image04 {
    margin: 4.688vw 0 0 10.938vw;
    width: 28.125vw;
  }
  .guide-page .link {
    margin: 0 0 14.063vw 0;
  }
  .guide-page .sec01 .link {
    margin: 0 0 0 0;
  }
  .guide-page .link a {
    margin: 0 auto;
    padding: 0 15.625vw 0 4.688vw;
    width: fit-content;
    height: 9.375vw;
    line-height: 1.4em;
    font-size: 4.063vw;
    font-weight: bold;
    color: #fff;
    text-align: left;
    background: #ec690e;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    box-sizing: border-box;
    text-decoration: none;
    transition: all 0.5s 0s;
  }
  .guide-page .link a:hover {
    opacity: 0.6;
  }
  .guide-page .link a::after {
    width: 6.25vw;
    height: 6.25vw;
    content: "";
    background: url("../images/service/arrow_01.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 4.375vw;
    transform: translate(0,-50%);
  }
  .guide-page .trank {
    margin: 0 auto 95px auto;
    padding: 0 0 0 0;
    width: 81.25vw;
    background: none;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .guide-page .trank .item {
    margin: 0 0 4.688vw 0;
    padding: 0 0 0 0;
    width: 100%;
  }
  .guide-page .trank .item .name {
    margin: 0 0 0.781vw 0;
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 3.75vw;
    font-weight: bold;
    text-align: center;
  }
  .guide-page .how-to-pay {
    margin: 0 auto 80px auto;
    padding: 3.906vw 0 0 0;
    width: 81.25vw;
    background: #eeeeee;
    box-sizing: border-box;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .guide-page .how-to-pay .item {
    margin: 0 0 0 0;
    padding: 0 0 5.469vw 0;
    width: 50%;
  }
  .guide-page .how-to-pay .item .name {
    margin: 0 0 2.344vw 0;
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 3.281vw;
    font-weight: bold;
    text-align: center;
  }
  .guide-page .how-to-pay .item .image {
    margin: 0 auto;
    width: 26.563vw;
  }
  .guide-page .how-to-pay .item .image.image03 {
    margin: 20px auto 0;
  }
  .guide-page .review {
    margin: 0 auto 0 auto;
    padding: 3.906vw 5.469vw 3.906vw 5.469vw;
    width: 81.25vw;
    background: #eeeeee;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .guide-page .review .item {
    margin: 0 0 3.906vw 0;
    padding: 0 0 0 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .guide-page .review .item .name {
    margin: 0 0 2.344vw 0;
    padding: 0 0 0 0;
    width: 100%;
    min-height: 0;
    line-height: 1.4em;
    font-size: 3.438vw;
    font-weight: bold;
    text-align: left;
  }
  .guide-page .review .item .image {
    margin: 0 0 0 0;
    min-height: 0;
  }
  .guide-page .review .item .image.image01 {
    width: 20.469vw;
  }
  .guide-page .review .item .image.image02 {
    width: 21.25vw;
  }
  .guide-page .review .item .image.image03 {
    width: 21.094vw;
  }
  .guide-page .review .item .image.image04 {
    width: 20.938vw;
  }
  .guide-page .review .item .info {
    margin: 12.5vw 0 0 0;
    padding: 1.563vw 0 0 2.344vw;
    width: 43.75vw;
    min-height: 19.063vw;
    line-height: 1.4em;
    font-size: 3.125vw;
    background: #fff;
    border: 1px dashed #bdbdbd;
    box-sizing: border-box;
  }
}



/* assessment */
.assessment-page {
  padding: 0 0 190px 0;
}
.assessment-page h2 {
	margin: 0 0 20px 0;
}
.assessment-page h3 {
	margin: 0 0 25px 0;
	line-height: 1.4em;
	font-size: 40px;
	font-weight: bold;
}

.assessment-page .intro {
	margin: 0 0 0 0;
	padding: 0 0 95px 0;
	width: 100%;
	position: relative;
}
.assessment-page .intro p {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	width: 50%;
	max-width: 600px;
	line-height: 1.6em;
	font-size: 30px;
	font-weight: 500;
}
.assessment-page .intro .image {
	width: 35%;
	position: absolute;
	top: -90px;
	right: 0;
}
.assessment-page .achievement {
  margin: 0 0 100px 0;
	width: 100%;
}
.assessment-page .achievement table {
	width: 100%;
}
.assessment-page .achievement table td {
  padding: 15px 0 15px 0;
  line-height: 1.4em;
  font-size: 20px;
  font-weight: 500;
  border-top: 1px dotted #999999;
}
.assessment-page .achievement table td.day {
  padding-left: 30px;
  width: 152px;
  text-align: left;
}
.assessment-page .achievement table td.name {
  width: 205px;
  text-align: left;
}
.assessment-page .achievement table td.data {
  width: 290px;
  text-align: left;
}
.assessment-page .achievement table td.num {
  width: 72px;
  text-align: right;
}
.assessment-page .achievement table td.area {
  padding-left: 75px;
  width: 170px;
  text-align: left;
}
.assessment-page .achievement table td.cost {
  padding-right: 6%;
  text-align: right;
}
.assessment-page .reason-box {
  margin: 0 auto 95px;
  width: 100%;
  max-width: 1140px;
  display: flex;
  justify-content: space-between;
}
.assessment-page .reason-box .item {
  padding: 20px 25px 25px 25px;
  width: 49%;
  max-width: 550px;
  box-sizing: border-box;
  color: #fff;
  background: #004487;
  border-radius: 15px;
}
.assessment-page .reason-box .item h4 {
	margin: 0 0 15px 0;
	line-height: 1.4em;
	font-size: 30px;
	font-weight: bold;
  text-align: center;
}
.assessment-page .reason-box .item h4 strong {
	line-height: 1.4em;
	font-size: 36px;
	font-weight: bold;
}
.assessment-page .reason-box .item .image {
  margin: 0 auto 25px;
  width: 90%;
  max-width: 306px;
}
.assessment-page .reason-box .item .description {
	line-height: 1.4em;
	font-size: 20px;
	font-weight: normal;
  text-align: center;
}
.assessment-page .menu {
  margin: 0 auto 20px;
  width: 100%;
  max-width: 1140px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.assessment-page .menu a {
  margin: 0 0 30px 0;
  padding: 0 45px 0 30px;
  width: 32%;
  max-width: 352px;
  height: 60px;
  line-height: 1.4em;
  font-size: 18px;
  font-weight: 500;
  color: #fff;
  background: #004487;
  border-radius: 180px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  position: relative;
  box-sizing: border-box;
  text-decoration: none;
  transition: all 0.5s 0s;
}
.assessment-page .menu a:hover {
  opacity: 0.6;
}
.assessment-page .menu a::after {
  width: 24px;
  height: 12px;
  content: "";
  background: url("../images/assessment/arrow_01.png") no-repeat center center;
  background-size: 100% 100%;
  position: absolute;
  top: 50%;
  right: 30px;
  transform: translate(0,-50%);
}
.assessment-page .other {
  margin: 0 auto 85px;
  width: 100%;
  max-width: 1140px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.assessment-page .other .item {
  width: 32%;
  max-width: 352px;
}
.assessment-page .other .item .name {
  margin: 0 0 20px 0;
  line-height: 1.4em;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
}
.assessment-page .other .item .image {
  margin: 0 auto 20px auto;
  width: 100%;
  max-width: 307px;
}
.assessment-page .other .item .description {
  line-height: 1.6em;
  font-size: 20px;
  text-align: left;
}
.assessment-page .area-box {
  margin: 0 auto 153px;
  width: 100%;
  max-width: 764px;
}
.assessment-page .link-box {
  margin: 0 auto;
  padding: 20px 0;
  width: 100%;
  max-width: 764px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 1;
}
.assessment-page .link-box::after {
  width: 100vw;
  height: 100%;
  content: "";
  background: url("../images/assessment/content_back_01.png") repeat-y center top;
  background-size: 100% auto;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%,0);
  z-index: -1;
}
.assessment-page .link-box a {
  padding: 0 0 0 0;
  width: 452px;
  height: 82px;
  line-height: 1.4em;
  font-size: 26px;
  font-weight: bold;
  color: #eb670c;
  text-align: center;
  background: #fff;
  border-radius: 180px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  box-sizing: border-box;
  text-decoration: none;
  transition: all 0.5s 0s;
}
.assessment-page .link-box a:hover {
  opacity: 0.6;
}
.assessment-page .link-box a::after {
  width: 39px;
  height: 40px;
  content: "";
  background: url("../images/assessment/arrow_02.png") no-repeat center center;
  background-size: 100% 100%;
  position: absolute;
  top: 50%;
  right: 40px;
  transform: translate(0,-50%);
}
.assessment-page .link-box a::before {
  width: 51px;
  height: 57px;
  content: "";
  background: url("../images/assessment/icon_01.png") no-repeat center center;
  background-size: 100% 100%;
  position: absolute;
  top: 50%;
  left: 40px;
  transform: translate(0,-50%);
}
.assessment-page .link-box a:nth-of-type(2) {
  margin: 11px 0 0 0;
  padding: 0 20px 0 0;
  width: 260px;
  height: 60px;
  line-height: 1.4em;
  font-size: 24px;
  font-weight: bold;
  color: #eb670c;
  text-align: center;
  background: #fff;
  border-radius: 180px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  box-sizing: border-box;
  text-decoration: none;
  transition: all 0.5s 0s;
}
.assessment-page .link-box a:nth-of-type(2)::after {
  width: 30px;
  height: 30px;
  content: "";
  background: url("../images/assessment/arrow_02.png") no-repeat center center;
  background-size: 100% 100%;
  position: absolute;
  top: 50%;
  right: 28px;
  transform: translate(0,-50%);
}
.assessment-page .link-box a:nth-of-type(2)::before {
  display: none;
}
@media only screen and (min-width: 770px) and (max-width: 1200px) {
  .assessment-page {
    padding: 0 0 15.833vw 0;
  }
  .assessment-page h2 {
    margin: 0 0 1.667vw 0;
  }
  .assessment-page h3 {
    margin: 0 0 2.083vw 0;
    line-height: 1.4em;
    font-size: 3.333vw;
    font-weight: bold;
  }

  .assessment-page .intro {
    margin: 0 0 0 0;
    padding: 0 0 7.917vw 0;
    width: 100%;
    position: relative;
  }
  .assessment-page .intro p {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 50%;
    max-width: 50vw;
    line-height: 1.6em;
    font-size: 2.5vw;
    font-weight: 500;
  }
  .assessment-page .intro .image {
    width: 25%;
    position: absolute;
    top: -7.5vw;
    right: 0;
  }
  .assessment-page .achievement {
    margin: 0 0 8.333vw 0;
    width: 100%;
  }
  .assessment-page .achievement table {
    width: 100%;
  }
  .assessment-page .achievement table td {
    padding: 1.25vw 0 1.25vw 0;
    line-height: 1.4em;
    font-size: 1.667vw;
    font-weight: 500;
    border-top: 1px dotted #999999;
  }
  .assessment-page .achievement table td.day {
    padding-left: 2.5vw;
    width: 12.667vw;
    text-align: left;
  }
  .assessment-page .achievement table td.name {
    width: 17.083vw;
    text-align: left;
  }
  .assessment-page .achievement table td.data {
    width: 24.167vw;
    text-align: left;
  }
  .assessment-page .achievement table td.num {
    width: 6vw;
    text-align: right;
  }
  .assessment-page .achievement table td.area {
    padding-left: 6.25vw;
    width: 14.167vw;
    text-align: left;
  }
  .assessment-page .achievement table td.cost {
    padding-right: 6%;
    text-align: right;
  }
  .assessment-page .reason-box {
    margin: 0 auto 95px;
    width: 100%;
    max-width: 95vw;
    display: flex;
    justify-content: space-between;
  }
  .assessment-page .reason-box .item {
    padding: 1.667vw 2.083vw 2.083vw 2.083vw;
    width: 49%;
    max-width: 45.833vw;
    box-sizing: border-box;
    color: #fff;
    background: #004487;
    border-radius: 1.25vw;
  }
  .assessment-page .reason-box .item h4 {
    margin: 0 0 1.25vw 0;
    line-height: 1.4em;
    font-size: 2.5vw;
    font-weight: bold;
    text-align: center;
  }
  .assessment-page .reason-box .item h4 strong {
    line-height: 1.4em;
    font-size: 3vw;
    font-weight: bold;
  }
  .assessment-page .reason-box .item .image {
    margin: 0 auto 25px;
    width: 90%;
    max-width: 25.5vw;
  }
  .assessment-page .reason-box .item .description {
    line-height: 1.4em;
    font-size: 1.667vw;
    font-weight: normal;
    text-align: center;
  }
  .assessment-page .menu {
    margin: 0 auto 20px;
    width: 100%;
    max-width: 95vw;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .assessment-page .menu a {
    margin: 0 0 2.5vw 0;
    padding: 0 3.75vw 0 2.5vw;
    width: 32%;
    max-width: 29.333vw;
    height: 5vw;
    line-height: 1.4em;
    font-size: 1.5vw;
    font-weight: 500;
    color: #fff;
    background: #004487;
    border-radius: 15vw;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    position: relative;
    box-sizing: border-box;
    text-decoration: none;
    transition: all 0.5s 0s;
  }
  .assessment-page .menu a:hover {
    opacity: 0.6;
  }
  .assessment-page .menu a::after {
    width: 2vw;
    height: 1vw;
    content: "";
    background: url("../images/assessment/arrow_01.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 2.5vw;
    transform: translate(0,-50%);
  }
  .assessment-page .other {
    margin: 0 auto 85px;
    width: 100%;
    max-width: 95vw;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .assessment-page .other .item {
    width: 32%;
    max-width: 29.333vw;
  }
  .assessment-page .other .item .name {
    margin: 0 0 1.667vw 0;
    line-height: 1.4em;
    font-size: 2vw;
    font-weight: bold;
    text-align: center;
  }
  .assessment-page .other .item .image {
    margin: 0 auto 20px auto;
    width: 100%;
    max-width: 25.583vw;
  }
  .assessment-page .other .item .description {
    line-height: 1.6em;
    font-size: 1.667vw;
    text-align: left;
  }
  .assessment-page .area-box {
    margin: 0 auto 153px;
    width: 100%;
    max-width: 63.667vw;
  }
  .assessment-page .link-box {
    margin: 0 auto;
    padding: 1.667vw 0;
    width: 100%;
    max-width: 63.667vw;
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    z-index: 1;
  }
  .assessment-page .link-box::after {
    width: 100vw;
    height: 100%;
    content: "";
    background: url("../images/assessment/content_back_01.png") repeat-y center top;
    background-size: 100% auto;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%,0);
    z-index: -1;
  }
  .assessment-page .link-box a {
    padding: 0 0 0 0;
    width: 37.667vw;
    height: 6.833vw;
    line-height: 1.4em;
    font-size: 2.167vw;
    font-weight: bold;
    color: #eb670c;
    text-align: center;
    background: #fff;
    border-radius: 15vw;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    box-sizing: border-box;
    text-decoration: none;
    transition: all 0.5s 0s;
  }
  .assessment-page .link-box a:hover {
    opacity: 0.6;
  }
  .assessment-page .link-box a::after {
    width: 3.25vw;
    height: 3.333vw;
    content: "";
    background: url("../images/assessment/arrow_02.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 3.333vw;
    transform: translate(0,-50%);
  }
  .assessment-page .link-box a::before {
    width: 4.25vw;
    height: 4.75vw;
    content: "";
    background: url("../images/assessment/icon_01.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    left: 3.333vw;
    transform: translate(0,-50%);
  }
  .assessment-page .link-box a:nth-of-type(2) {
    margin: 0.917vw 0 0 0;
    padding: 0 1.667vw 0 0;
    width: 21.667vw;
    height: 5vw;
    line-height: 1.4em;
    font-size: 2vw;
    font-weight: bold;
    color: #eb670c;
    text-align: center;
    background: #fff;
    border-radius: 15vw;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    box-sizing: border-box;
    text-decoration: none;
    transition: all 0.5s 0s;
  }
  .assessment-page .link-box a:nth-of-type(2)::after {
    width: 2.5vw;
    height: 2.5vw;
    content: "";
    background: url("../images/assessment/arrow_02.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 2.333vw;
    transform: translate(0,-50%);
  }
  .assessment-page .link-box a:nth-of-type(2)::before {
    display: none;
  }
}
@media only screen and (max-width: 769px) {
  .assessment-page {
    padding: 0 0 15.625vw 0;
  }
  .assessment-page .page-head {
    margin: 0 auto 12.5vw;
    width: 90.625vw;
    display: flex;
    align-items: center;
  }
  .assessment-page h2 {
    margin: 0 0 0 0;
    width: calc( 100% - 38.438vw );
  }
  .assessment-page h3 {
    margin: 0 0 3.125vw 0;
    line-height: 1.4em;
    font-size: 6.875vw;
    font-weight: bold;
    text-align: center;
  }
  .assessment-page .intro {
    margin: 0 4.688vw 0 4.688vw;
    padding: 0 0 12.5vw 0;
    width: 90.625vw;
    position: relative;
  }
  .assessment-page .intro p {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
    max-width: 100%;
    line-height: 1.6em;
    font-size: 3.438vw;
    font-weight: 500;
  }
  .assessment-page .achievement {
    margin: 0 0 15.625vw 0;
    width: 100%;
  }
  .assessment-page .achievement table {
    width: 100%;
  }
  .assessment-page .achievement table td {
    padding: 2.344vw 0 2.344vw 0;
    line-height: 1.4em;
    font-size: 2.5vw;
    font-weight: 500;
    border-top: 1px dotted #999999;
  }
  .assessment-page .achievement table td.day {
    padding-left: 1.563vw;
    width: 17.188vw;
    text-align: left;
  }
  .assessment-page .achievement table td.name {
    width: 17.969vw;
    text-align: left;
  }
  .assessment-page .achievement table td.data {
    width: 30.469vw;
    text-align: left;
  }
  .assessment-page .achievement table td.num {
    width: 7.813vw;
    text-align: right;
  }
  .assessment-page .achievement table td.area {
    padding-left: 1.563vw;
    width: 9.375vw;
    text-align: left;
  }
  .assessment-page .achievement table td.cost {
    padding-right: 4%;
    text-align: right;
  }
  .assessment-page .reason-box {
    margin: 0 4.688vw 7.031vw 4.688vw;
    width: 90.625vw;
    max-width: 90.625vw;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .assessment-page .reason-box .item {
    margin: 0 0 7.813vw 0;
    padding: 3.125vw 3.906vw 3.906vw 3.906vw;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    color: #fff;
    background: #004487;
    border-radius: 2.344vw;
  }
  .assessment-page .reason-box .item h4 {
    margin: 0 0 2.344vw 0;
    line-height: 1.4em;
    font-size: 4.688vw;
    font-weight: bold;
    text-align: center;
  }
  .assessment-page .reason-box .item h4 strong {
    line-height: 1.4em;
    font-size: 5.625vw;
    font-weight: bold;
  }
  .assessment-page .reason-box .item .image {
    margin: 0 auto 20px;
    width: 90%;
    max-width: 47.813vw;
  }
  .assessment-page .reason-box .item .description {
    line-height: 1.4em;
    font-size: 3.125vw;
    font-weight: normal;
    text-align: center;
  }
  .assessment-page .menu {
    margin: 0 4.688vw 5vw 4.688vw;
    width: 90.625vw;
    max-width: 90.625vw;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .assessment-page .menu a {
    margin: 0 0 2.813vw 0;
    padding: 0 2.344vw 0 2.344vw;
    width: 43.75vw;
    max-width: 43.75vw;
    height: 9.375vw;
    line-height: 1.4em;
    font-size: 2.813vw;
    font-weight: 500;
    color: #fff;
    background: #004487;
    border-radius: 28.125vw;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    box-sizing: border-box;
    text-decoration: none;
    transition: all 0.5s 0s;
  }
  .assessment-page .menu a:hover {
    opacity: 0.6;
  }
  .assessment-page .menu a::after {
    display: none;
  }
  .assessment-page .other {
    margin: 0 3.125vw 13.281vw 3.125vw;
    width: 93.75vw;
    max-width: 93.75vw;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .assessment-page .other .item {
    width: 28.125vw;
    max-width: 28.125vw;
  }
  .assessment-page .other .item .name {
    margin: 0 0 3.125vw 0;
    line-height: 1.4em;
    min-height: 2.8em;
    font-size: 3.438vw;
    font-weight: bold;
    text-align: center;
  }
  .assessment-page .other .item .image {
    margin: 0 auto 1.5vw auto;
    width: 100%;
    max-width: 28.125vw;
  }
  .assessment-page .other .item .description {
    line-height: 1.6em;
    font-size: 3.125vw;
    text-align: left;
  }
  .assessment-page .area-box {
    margin: 0 4.688vw 6.25vw 4.688vw;
    width: 90.625vw;
    max-width: 90.625vw;
  }
  .assessment-page .link-box {
    margin: 0 auto;
    padding: 3.125vw 0;
    width: 90.625vw;
    max-width: 90.625vw;
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    z-index: 1;
  }
  .assessment-page .link-box::after {
    width: 100vw;
    height: 100%;
    content: "";
    background: url("../images/assessment/content_back_01.png") repeat-y center top;
    background-size: 100vw auto;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%,0);
    z-index: -1;
  }
  .assessment-page .link-box a {
    padding: 0 0 0 0;
    width: 51.563vw;
    height: 9.375vw;
    line-height: 1.4em;
    font-size: 3.125vw;
    font-weight: bold;
    color: #eb670c;
    text-align: center;
    background: #fff;
    border-radius: 28.125vw;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    box-sizing: border-box;
    text-decoration: none;
    transition: all 0.5s 0s;
  }
  .assessment-page .link-box a:hover {
    opacity: 0.6;
  }
  .assessment-page .link-box a::after {
    width: 6.094vw;
    height: 6.25vw;
    content: "";
    background: url("../images/assessment/arrow_02.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 2.25vw;
    transform: translate(0,-50%);
  }
  .assessment-page .link-box a::before {
    width: 7.269vw;
    height: 8.206vw;
    content: "";
    background: url("../images/assessment/icon_01.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    left: 3.25vw;
    transform: translate(0,-50%);
  }
  .assessment-page .link-box a:nth-of-type(2) {
    margin: 0 0 0 0;
    padding: 0 3.125vw 0 0;
    width: 34.375vw;
    height: 9.375vw;
    line-height: 1.4em;
    font-size: 3.125vw;
    font-weight: bold;
    color: #eb670c;
    text-align: center;
    background: #fff;
    border-radius: 28.125vw;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    box-sizing: border-box;
    text-decoration: none;
    transition: all 0.5s 0s;
  }
  .assessment-page .link-box a:nth-of-type(2)::after {
    width: 6.094vw;
    height: 6.25vw;
    content: "";
    background: url("../images/assessment/arrow_02.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 2.375vw;
    transform: translate(0,-50%);
  }
  .assessment-page .link-box a:nth-of-type(2)::before {
    display: none;
  }

}



/* service */
.service-page {
  padding: 0 0 100px 0;
}
.service-page h2 {
	margin: 0 0 20px 0;
}
.service-page h3 {
	margin: 0 0 25px 0;
	line-height: 1.4em;
	font-size: 40px;
	font-weight: bold;
}

.service-page .intro {
	margin: 0 0 0 0;
	padding: 0 0 220px 0;
	width: 100%;
	position: relative;
}
.service-page .intro p {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	width: 50%;
	max-width: 600px;
	line-height: 1.6em;
	font-size: 30px;
	font-weight: 500;
}
.service-page .intro .image {
	width: 46.16%;
	position: absolute;
	top: -36px;
	right: 0;
}
.service-page .sec01 {
	margin: 0 0 0 0;
	padding: 0 0 65px 0;
	width: 100%;
  display: flex;
  justify-content: space-between;
}
.service-page .sec01 .description {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	width: 48.75%;
  line-height: 1.6em;
  font-size: 22px;
}
.service-page .sec01 .image {
	width: 46.16%;
}
.service-page .sec02 {
	margin: 0 0 0 0;
	padding: 0 0 100px 0;
	width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.service-page .sec02 .description {
	margin: 0 0 0 0;
	padding: 0 0 10px 0;
	width: 100%;
  line-height: 1.6em;
  font-size: 22px;
}
.service-page .sec02 .data {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	width: 39.5%;
  line-height: 1.6em;
  font-size: 22px;
}
.service-page .sec02 .data table {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	width: 100%;
  line-height: 1.6em;
  font-size: 22px;
}
.service-page .sec02 .data table th {
	margin: 0 0 0 0;
	padding: 25px 0 0 0;
  width: 25%;
  font-weight: normal;
  text-align: center;
}
.service-page .sec02 .data table th .label {
	margin: 0 5px;
	padding: 0 0 10px 0;
  display: block;
  border-bottom: 2px solid #333333;
}
.service-page .sec02 .data table td {
	margin: 0 0 0 0;
	padding: 15px 0;
  font-weight: normal;
  text-align: center;
  border-bottom: 1px dotted #999999;
}
.service-page .sec02 .data table td.price {
  font-weight: bold;
}
.service-page .sec02 .image {
  margin: 0 3.75% 0 0;
	width: 42.08%;
}
.service-page .attention {
  margin: 0 0 50px 0;
  padding: 20px 60px 30px 60px;
	width: 100%;
  box-sizing: border-box;
  background: #eeeeee;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.service-page .attention h3 {
	margin: 0 0 0 0;
	padding: 0 0 40px 0;
	width: 100%;
  line-height: 1.6em;
  font-size: 40px;
  font-weight: bold;
  color: #f00;
  text-align: center;
}
.service-page .attention .item  {
	margin: 0 0 0 0;
	padding: 23px 25px 15px 25px;
	width: 49%;
  max-width: 500px;
  min-height: 270px;
  line-height: 1.6em;
  font-size: 22px;
  color: #333;
  border: 5px solid #f00;
  box-sizing: border-box;
  background: #fff;
}
.service-page .attention .item h4 {
	margin: 0 0 0 0;
	padding: 0 0 10px 0;
	width: 100%;
  line-height: 1.6em;
  font-size: 36px;
  font-weight: bold;
  color: #f00;
  text-align: center;
}
.service-page .link-box {
  margin: 0 auto;
  padding: 0 0 0 0;
  width: 100%;
  max-width: 1082px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
}
.service-page .link-box a {
  padding: 0 0 0 0;
  width: 46%;
  max-width: 493px;
  height: 60px;
  line-height: 1.4em;
  font-size: 26px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  background: #ec690e;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  box-sizing: border-box;
  text-decoration: none;
  transition: all 0.5s 0s;
}
.service-page .link-box a:hover {
  opacity: 0.6;
}
.service-page .link-box a::after {
  width: 40px;
  height: 40px;
  content: "";
  background: url("../images/service/arrow_01.png") no-repeat center center;
  background-size: 100% 100%;
  position: absolute;
  top: 50%;
  right: 28px;
  transform: translate(0,-50%);
}
.service-page .link-box a:nth-of-type(2) {
  width: 50%;
  max-width: 540px;
}
@media only screen and (min-width: 770px) and (max-width: 1200px) {
  .service-page {
    padding: 0 0 8.333vw 0;
  }
  .service-page h2 {
    margin: 0 0 1.667vw 0;
  }
  .service-page h3 {
    margin: 0 0 2.083vw 0;
    line-height: 1.4em;
    font-size: 3.333vw;
    font-weight: bold;
  }

  .service-page .intro {
    margin: 0 0 0 0;
    padding: 0 0 18.333vw 0;
    width: 100%;
    position: relative;
  }
  .service-page .intro p {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 50%;
    max-width: 50vw;
    line-height: 1.6em;
    font-size: 2.5vw;
    font-weight: 500;
  }
  .service-page .intro .image {
    width: 46.16%;
    position: absolute;
    top: -3vw;
    right: 0;
  }
  .service-page .sec01 {
    margin: 0 0 0 0;
    padding: 0 0 5.417vw 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
  }
  .service-page .sec01 .description {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 48.75%;
    line-height: 1.6em;
    font-size: 1.833vw;
  }
  .service-page .sec01 .image {
    width: 46.16%;
  }
  .service-page .sec02 {
    margin: 0 0 0 0;
    padding: 0 0 8.333vw 0;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .service-page .sec02 .description {
    margin: 0 0 0 0;
    padding: 0 0 0.833vw 0;
    width: 100%;
    line-height: 1.6em;
    font-size: 1.833vw;
  }
  .service-page .sec02 .data {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 39.5%;
    line-height: 1.6em;
    font-size: 1.833vw;
  }
  .service-page .sec02 .data table {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
    line-height: 1.6em;
    font-size: 1.833vw;
  }
  .service-page .sec02 .data table th {
    margin: 0 0 0 0;
    padding: 2.083vw 0 0 0;
    width: 25%;
    font-weight: normal;
    text-align: center;
  }
  .service-page .sec02 .data table th .label {
    margin: 0 0.417vw;
    padding: 0 0 0.833vw 0;
    display: block;
    border-bottom: 2px solid #333333;
  }
  .service-page .sec02 .data table td {
    margin: 0 0 0 0;
    padding: 1.25vw 0;
    font-weight: normal;
    text-align: center;
    border-bottom: 1px dotted #999999;
  }
  .service-page .sec02 .data table td.price {
    font-weight: bold;
  }
  .service-page .sec02 .image {
    margin: 0 3.75% 0 0;
    width: 42.08%;
  }
  .service-page .attention {
    margin: 0 0 4.167vw 0;
    padding: 1.667vw 5vw 2.5vw 5vw;
    width: 100%;
    box-sizing: border-box;
    background: #eeeeee;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .service-page .attention h3 {
    margin: 0 0 0 0;
    padding: 0 0 3.333vw 0;
    width: 100%;
    line-height: 1.6em;
    font-size: 3.333vw;
    font-weight: bold;
    color: #f00;
    text-align: center;
  }
  .service-page .attention .item  {
    margin: 0 0 0 0;
    padding: 1.917vw 2.083vw 1.25vw 2.083vw;
    width: 49%;
    max-width: 41.667vw;
    min-height: 22.5vw;
    line-height: 1.6em;
    font-size: 1.833vw;
    color: #333;
    border: 5px solid #f00;
    box-sizing: border-box;
    background: #fff;
  }
  .service-page .attention .item h4 {
    margin: 0 0 0 0;
    padding: 0 0 0.833vw 0;
    width: 100%;
    line-height: 1.6em;
    font-size: 3vw;
    font-weight: bold;
    color: #f00;
    text-align: center;
  }
  .service-page .link-box {
    margin: 0 auto;
    padding: 0 0 0 0;
    width: 100%;
    max-width: 90.167vw;
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
  }
  .service-page .link-box a {
    padding: 0 0 0 0;
    width: 46%;
    max-width: 41.083vw;
    height: 5vw;
    line-height: 1.4em;
    font-size: 2.167vw;
    font-weight: bold;
    color: #fff;
    text-align: center;
    background: #ec690e;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    box-sizing: border-box;
    text-decoration: none;
    transition: all 0.5s 0s;
  }
  .service-page .link-box a:hover {
    opacity: 0.6;
  }
  .service-page .link-box a::after {
    width: 3.333vw;
    height: 3.333vw;
    content: "";
    background: url("../images/service/arrow_01.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 2.333vw;
    transform: translate(0,-50%);
  }
  .service-page .link-box a:nth-of-type(2) {
    width: 50%;
    max-width: 45vw;
  }


}
@media only screen and (max-width: 769px) {

  .service-page {
    padding: 0 0 7.813vw 0;
  }
  .service-page .page-head {
    margin: 0 auto 12.5vw;
    width: 90.625vw;
    display: flex;
    align-items: center;
  }
  .service-page .page-head .image {
    width: 38.438vw;
  }
  .service-page .page-head .image img {
    width: 100%;
  }
  .service-page h2 {
    margin: 0 0 0 0;
    width: calc( 100% - 38.438vw );
  }
  
  .service-page h3 {
    margin: 0 0 0 0;
    line-height: 1.4em;
    font-size: 5.938vw;
    font-weight: bold;
    text-align: center;
  }
  .service-page .intro {
    margin: 0 4.688vw 6.25vw 4.688vw;
    padding: 0 0 0 0;
    width: 90.625vw;
    position: relative;
  }
  .service-page .intro p {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
    max-width: 100%;
    line-height: 1.6em;
    font-size: 2.813vw;
    font-weight: 500;
  }
  .service-page .intro .image {
    width: 100%;
    position: relative;
    top: auto;
    right: auto;
  }
  .service-page .intro .image img {
    width: 100%;
    display: block;
  }
  .service-page .sec01 {
    margin: 0 4.688vw 0 4.688vw;
    padding: 0 0 12.5vw 0;
    width: 90.625vw;
    display: flex;
    flex-direction: column-reverse;
    justify-content: space-between;
  }
  .service-page .sec01 .description {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
    line-height: 1.6em;
    font-size: 3.438vw;
  }
  .service-page .sec01 .image {
    margin: 0 3.125vw 2.344vw 3.125vw;
    width: calc( 100% - 6.25vw );
  }
  .service-page .sec02 {
    margin: 0 4.688vw 0 4.688vw;
    padding: 0 0 14.063vw 0;
    width: 90.625vw;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .service-page .sec02 .description {
    margin: 0 0 0 0;
    padding: 4.688vw 0 5.469vw 0;
    width: 100%;
    line-height: 1.6em;
    font-size: 3.438vw;
    text-align: left;
  }
  .service-page .sec02 .data {
    margin: 0 6.25vw 0 6.25vw;
    padding: 0 0 0 0;
    width: 78.125vw;
    line-height: 1.6em;
    font-size: 3.438vw;
  }
  .service-page .sec02 .data table {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
    line-height: 1.6em;
    font-size: 3.438vw;
  }
  .service-page .sec02 .data table th {
    margin: 0 0 0 0;
    padding: 3.906vw 0 0 0;
    width: 25%;
    font-weight: normal;
    text-align: center;
  }
  .service-page .sec02 .data table th .label {
    margin: 0 0.781vw;
    padding: 0 0 1.563vw 0;
    display: block;
    border-bottom: 2px solid #333333;
  }
  .service-page .sec02 .data table td {
    margin: 0 0 0 0;
    padding: 2.344vw 0;
    font-weight: normal;
    text-align: center;
    border-bottom: 1px dotted #999999;
  }
  .service-page .sec02 .data table td.price {
    font-weight: bold;
  }
  .service-page .sec02 .image {
    margin: 0 6.25vw 0 6.25vw;
    width: 78.125vw;
  }
  .service-page .attention {
    margin: 0 0 7.813vw 0;
    padding: 3.125vw 10.938vw 4.688vw 10.938vw;
    width: 100%;
    box-sizing: border-box;
    background: #eeeeee;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .service-page .attention h3 {
    margin: 0 0 0 0;
    padding: 0 0 3.906vw 0;
    width: 100%;
    line-height: 1.6em;
    font-size: 6.25vw;
    font-weight: bold;
    color: #f00;
    text-align: center;
  }
  .service-page .attention .item  {
    margin: 0 0 4.688vw 0;
    padding: 3.594vw 3.125vw 3.125vw 3.125vw;
    width: 100%;
    max-width: 100%;
    min-height: 0px;
    line-height: 1.6em;
    font-size: 3.438vw;
    color: #333;
    border: 5px solid #f00;
    box-sizing: border-box;
    background: #fff;
  }
  .service-page .attention .item h4 {
    margin: 0 0 0 0;
    padding: 0 0 1.563vw 0;
    width: 100%;
    line-height: 1.6em;
    font-size: 5.625vw;
    font-weight: bold;
    color: #f00;
    text-align: center;
  }
  .service-page .link-box {
    margin: 0 10.938vw;
    padding: 0 0 0 0;
    width: 78.125vw;
    max-width: 78.125vw;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: space-between;
    position: relative;
  }
  .service-page .link-box a {
    margin: 0 0 7.813vw 0;
    padding: 0 0 0 0;
    width: 100%;
    max-width: 100%;
    height: 9.375vw;
    line-height: 1.4em;
    font-size: 4.063vw;
    font-weight: bold;
    color: #fff;
    text-align: center;
    background: #ec690e;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    box-sizing: border-box;
    text-decoration: none;
    transition: all 0.5s 0s;
  }
  .service-page .link-box a:hover {
    opacity: 0.6;
  }
  .service-page .link-box a::after {
    width: 6.25vw;
    height: 6.25vw;
    content: "";
    background: url("../images/service/arrow_01.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 4.375vw;
    transform: translate(0,-50%);
  }
  .service-page .link-box a:nth-of-type(2) {
    width: 100%;
    max-width: 100%;
  }
}


/* jiten-single */
.jiten-single-page {
  padding: 0 0 100px 0;
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
}
.jiten-single-page .side {
  width: 17.5%;
}
.jiten-single-page .side h3 {
  width: 100%;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  box-sizing: border-box;
  background: #004487;
  color: #fff;
  padding: 0 0 0 32px;
  line-height: 1.2em;
  font-size: 16px;
  font-weight: bold;
}
.jiten-single-page .side ul {
  padding: 0 10px;
  box-sizing: border-box;
  width: 100%;
  background: #eeeeee;
}
.jiten-single-page .side ul li {
  border-bottom: 1px solid #cccccc;
}
.jiten-single-page .side ul li:last-child {
  border-bottom: none;
}
.jiten-single-page .side ul li a {
  width: 100%;
  height: 53px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  box-sizing: border-box;
  color: #333;
  padding: 0 0 0 12px;
  line-height: 1.2em;
  font-size: 18px;
  font-weight: bold;
  position: relative;
}
.jiten-single-page .side ul li a::after {
  width: 13px;
  height: 23px;
  content: "";
  background: url("../images/jiten/arrow_01.png") no-repeat center center;
  background-size: 100% 100%;
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translate(0,-50%);
}
.jiten-single-page .main {
  width: 79.16%;
}
.jiten-single-page .main h2 {
	margin: 0 0 10px 0;
	line-height: 1.4em;
	font-size: 50px;
	font-weight: bold;
}
.jiten-single-page .main .kana {
	margin: 0 0 90px 0;
	line-height: 1.4em;
	font-size: 24px;
	font-weight: normal;
  color: #666666;
}
.jiten-single-page .main .sec01 {
	margin: 0 0 0 0;
	padding: 0 0 95px 0;
	width: 100%;
  display: flex;
  justify-content: space-between;
}
.jiten-single-page .main .sec01 .description {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	width: 53.968%;
  line-height: 1.6em;
  font-size: 20px;
}
.jiten-single-page .main .sec01 .image {
	width: 42.32%;
}
.jiten-single-page .main .list-head {
  margin: 0 0 45px 0;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.jiten-single-page .main .list-head .word {
  margin: 0 10px 0 0;
  width: 80px;
  height: 80px;
  line-height: 1.2em;
  font-size: 40px;
  font-weight: bold;
  color: #004487;
  background: #fff;
  border: 5px solid #004487;
  border-radius: 180px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
}
.jiten-single-page .main .list-head .line {
  margin: 0 25px 0 0;
  line-height: 1.2em;
  font-size: 30px;
  font-weight: bold;
  color: #333;
}
.jiten-single-page .main .list {
  margin: 0 0 0 0;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.jiten-single-page .main .list .item {
  margin: 0 5.12% 0 0;
  width: 21.16%;
  display: flex;
  flex-wrap: wrap;
}
.jiten-single-page .main .list .item:nth-of-type(4n) {
  margin: 0 0 0 0;
}
.jiten-single-page .main .list .item img {
  display: block;
}
.jiten-single-page .main .list .item .image {
  margin: 0 0 5px 0;
}
.jiten-single-page .main .list .item p {
  line-height: 1.5em;
  font-size: 18px;
  font-weight: 500;
}
.jiten-single-page .main .list .item p a {
  color: #333;
  text-decoration: underline;
}
.jiten-single-page .main .list .item p a:hover {
  text-decoration: none;
}
@media only screen and (min-width: 770px) and (max-width: 1200px) {
  .jiten-single-page {
    padding: 0 0 8.333vw 0;
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
  }
  .jiten-single-page .side {
    width: 17.5%;
  }
  .jiten-single-page .side h3 {
    width: 100%;
    height: 3.333vw;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    box-sizing: border-box;
    background: #004487;
    color: #fff;
    padding: 0 0 0 2.667vw;
    line-height: 1.2em;
    font-size: 1.333vw;
    font-weight: bold;
  }
  .jiten-single-page .side ul {
    padding: 0 0.833vw;
    box-sizing: border-box;
    width: 100%;
    background: #eeeeee;
  }
  .jiten-single-page .side ul li {
    border-bottom: 1px solid #cccccc;
  }
  .jiten-single-page .side ul li:last-child {
    border-bottom: none;
  }
  .jiten-single-page .side ul li a {
    width: 100%;
    height: 4.417vw;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    box-sizing: border-box;
    color: #333;
    padding: 0 0 0 1vw;
    line-height: 1.2em;
    font-size: 1.5vw;
    font-weight: bold;
    position: relative;
  }
  .jiten-single-page .side ul li a::after {
    width: 1.083vw;
    height: 1.917vw;
    content: "";
    background: url("../images/jiten/arrow_01.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 0.833vw;
    transform: translate(0,-50%);
  }
  .jiten-single-page .main {
    width: 79.16%;
  }
  .jiten-single-page .main h2 {
    margin: 0 0 0.833vw 0;
    line-height: 1.4em;
    font-size: 4.167vw;
    font-weight: bold;
  }
  .jiten-single-page .main .kana {
    margin: 0 0 7.5vw 0;
    line-height: 1.4em;
    font-size: 2vw;
    font-weight: normal;
    color: #666666;
  }
  .jiten-single-page .main .sec01 {
    margin: 0 0 0 0;
    padding: 0 0 7.917vw 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
  }
  .jiten-single-page .main .sec01 .description {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 53.968%;
    line-height: 1.6em;
    font-size: 1.667vw;
  }
  .jiten-single-page .main .sec01 .image {
    width: 42.32%;
  }
  .jiten-single-page .main .list-head {
    margin: 0 0 3.75vw 0;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-start;
  }
  .jiten-single-page .main .list-head .word {
    margin: 0 0.833vw 0 0;
    width: 6.667vw;
    height: 6.667vw;
    line-height: 1.2em;
    font-size: 3.333vw;
    font-weight: bold;
    color: #004487;
    background: #fff;
    border: 5px solid #004487;
    border-radius: 15vw;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .jiten-single-page .main .list-head .line {
    margin: 0 2.083vw 0 0;
    line-height: 1.2em;
    font-size: 2.5vw;
    font-weight: bold;
    color: #333;
  }
  .jiten-single-page .main .list {
    margin: 0 0 0 0;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
  }
  .jiten-single-page .main .list .item {
    margin: 0 5.12% 0 0;
    width: 21.16%;
    display: flex;
    flex-wrap: wrap;
  }
  .jiten-single-page .main .list .item:nth-of-type(4n) {
    margin: 0 0 0 0;
  }
  .jiten-single-page .main .list .item img {
    display: block;
  }
  .jiten-single-page .main .list .item .image {
    margin: 0 0 0.417vw 0;
  }
  .jiten-single-page .main .list .item p {
    line-height: 1.5em;
    font-size: 1.5vw;
    font-weight: 500;
  }
  .jiten-single-page .main .list .item p a {
    color: #333;
    text-decoration: underline;
  }
  .jiten-single-page .main .list .item p a:hover {
    text-decoration: none;
  }
}
@media only screen and (max-width: 769px) {
  .jiten-single-page {
    padding: 0 0 7.813vw 0;
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
  }
  .jiten-single-page .side {
    display: none;
  }
  .jiten-single-page .main {
    width: 100%;
  }
  .jiten-single-page .main h2 {
    margin: 0 4.688vw 1.563vw 4.688vw;
    line-height: 1.4em;
    font-size: 6.25vw;
    font-weight: bold;
  }
  .jiten-single-page .main .kana {
    margin: 0 4.688vw 5.469vw 4.688vw;
    line-height: 1.4em;
    font-size: 3.125vw;
    font-weight: normal;
    color: #666666;
  }
  .jiten-single-page .main .sec01 {
    margin: 0 4.688vw 0 4.688vw;
    padding: 0 0 12.5vw 0;
    width: 90.625vw;
    display: flex;
    justify-content: space-between;
  }
  .jiten-single-page .main .sec01 .description {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
    line-height: 1.6em;
    font-size: 3.125vw;
  }
  .jiten-single-page .main .sec01 .image {
    width: 42.32%;
  }
  .jiten-single-page .main .list-head {
    margin: 0 4.688vw 7.031vw 4.688vw;
    width: 90.625vw;
    display: flex;
    align-items: center;
    justify-content: flex-start;
  }
  .jiten-single-page .main .list-head .word {
    margin: 0 1.563vw 0 0;
    width: 12.5vw;
    height: 12.5vw;
    line-height: 1.2em;
    font-size: 6.25vw;
    font-weight: bold;
    color: #004487;
    background: #fff;
    border: 5px solid #004487;
    border-radius: 28.125vw;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .jiten-single-page .main .list-head .line {
    margin: 0 3.906vw 0 0;
    line-height: 1.2em;
    font-size: 4.688vw;
    font-weight: bold;
    color: #333;
  }
  .jiten-single-page .main .list {
    margin: 0 4.688vw 0 4.688vw;
    width: 90.625vw;
    display: flex;
    flex-wrap: wrap;
  }
  .jiten-single-page .main .list .item {
    margin: 0 5% 40px 0;
    width: 30%;
    display: flex;
    flex-wrap: wrap;
  }
  .jiten-single-page .main .list .item:nth-of-type(4n) {
    margin: 0 5% 40px 0;
  }
  .jiten-single-page .main .list .item:nth-of-type(3n) {
    margin: 0 0 6.25vw 0;
  }
  .jiten-single-page .main .list .item img {
    display: block;
  }
  .jiten-single-page .main .list .item .image {
    margin: 0 0 0.781vw 0;
  }
  .jiten-single-page .main .list .item p {
    line-height: 1.5em;
    font-size: 2.813vw;
    font-weight: 500;
  }
  .jiten-single-page .main .list .item p a {
    color: #333;
    text-decoration: underline;
  }
  .jiten-single-page .main .list .item p a:hover {
    text-decoration: none;
  }
}




/* blog */
.blog-page {
  padding: 0 0 100px 0;
}
.blog-page .list {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.blog-page .list .item {
  margin: 0 0 100px 0;
  width: 49%;
  max-width: 580px;
  display: flex;
  justify-content: space-between;
}
.blog-page .list .item:nth-of-type(1) {
  width: 100%;
  max-width: 100%;
}
.blog-page .list .item .image {
  width: 51.724%;
  max-width: 300px;
}
.blog-page .list .item:nth-of-type(1) .image {
  width: 50%;
  max-width: 600px;
}
.blog-page .list .item .image img {
  object-fit: cover;
}
.blog-page .list .item .box {
  width: 47%;
  max-width: 250px;
}
.blog-page .list .item:nth-of-type(1) .box {
  width: 49%;
  max-width: 510px;
}
.blog-page .list .item .box .title {
  margin: 0 0 15px 0;
  line-height: 1.4em;
  font-size: 24px;
  font-weight: bold;
}
.blog-page .list .item:nth-of-type(1) .box .title {
  margin: 0 0 20px 0;
  line-height: 1.4em;
  font-size: 40px;
  font-weight: bold;
}
.blog-page .list .item .box .info {
  margin: 0 0 8px 0;
  display: flex;
  align-items: center;
}
.blog-page .list .item:nth-of-type(1) .box .info {
  margin: 0 0 22px 0;
}
.blog-page .list .item .box .info .avator {
  width: 50px;
  margin: 0 15px 0 0;
}
.blog-page .list .item .box .info .avator img {
  width: 50px;
  height: 50px;
  display: block;
  border-radius: 180px;
  border: 1px solid #dedede;
  box-sizing: border-box;
  margin: 0 15px 0 0;
  object-fit: cover;
}
.blog-page .list .item .box .info .name {
  line-height: 1.4em;
  font-size: 18px;
  font-weight: normal;
  color: #666666;
  margin: 0 30px 0 0;
}
.blog-page .list .item .box .info .post {
  line-height: 1.4em;
  font-size: 16px;
  font-weight: normal;
  color: #666666;
}
.blog-page .list .item .box .description {
  margin: 0 0 20px 0;
  line-height: 1.6em;
  font-size: 20px;
  font-weight: normal;
  color: #333333;
}
.blog-page .list .item .box .more {
  margin: 0 0 22px 0;
}
.blog-page .list .item .box .more a {
  width: 180px;
  height: 40px;
  line-height: 1.4em;
  font-size: 22px;
  font-weight: bold;
  color: #fff;
  background: #004487;
  text-decoration: none;
  box-sizing: border-box;
  position: relative;
  border-radius: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.blog-page .list .item .box .tags {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.blog-page .list .item .box .tags .tag {
  margin: 0 7px 5px 0;
}
.blog-page .list .item .box .tags .tag a {
  padding: 8px 15px;
  line-height: 1.4em;
  font-size: 18px;
  color: #000000;
  color: rgba(33, 33, 31, 1);
  text-decoration: none;
  border: 1px dashed #a7a7a7;
  border-radius: 180px;
  display: inline-block;
}
.blog-page .paging {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.blog-page .paging a {
  margin: 0 7px;
  width: 40px;
  height: 40px;
  line-height: 1.2em;
  font-size: 22px;
  font-weight: bold;
  color: #000;
  color: rgba(33, 33, 31, 1);
  border: 1px solid #000;
  text-decoration: none;
  box-sizing: border-box;
  position: relative;
  border-radius: 180px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.6s 0s;
}
.blog-page .paging a:hover {
  color: #fff;
  background: #004487;
}
.blog-page .paging .current {
  margin: 0 7px;
  width: 40px;
  height: 40px;
  line-height: 1.2em;
  font-size: 22px;
  font-weight: bold;
  color: #fff;
  background: #004487;
  border: 1px solid #000;
  text-decoration: none;
  box-sizing: border-box;
  position: relative;
  border-radius: 180px;
  display: flex;
  align-items: center;
  justify-content: center;

}
.blog-page .paging .extend {
  margin: 0 7px;
  width: 40px;
  height: 40px;
  line-height: 1.2em;
  font-size: 22px;
  font-weight: bold;
  text-decoration: none;
  box-sizing: border-box;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media only screen and (min-width: 770px) and (max-width: 1200px) {
  .blog-page {
    padding: 0 0 8.333vw 0;
  }
  .blog-page .list {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .blog-page .list .item {
    margin: 0 0 8.333vw 0;
    width: 49%;
    max-width: 48.333vw;
    display: flex;
    justify-content: space-between;
  }
  .blog-page .list .item:nth-of-type(1) {
    width: 100%;
    max-width: 100%;
  }
  .blog-page .list .item .image {
    width: 51.724%;
    max-width: 25vw;
  }
  .blog-page .list .item:nth-of-type(1) .image {
    width: 50%;
    max-width: 50vw;
  }
  .blog-page .list .item .image img {
    object-fit: cover;
  }
  .blog-page .list .item .box {
    width: 47%;
    max-width: 20.833vw;
  }
  .blog-page .list .item:nth-of-type(1) .box {
    width: 49%;
    max-width: 42.5vw;
  }
  .blog-page .list .item .box .title {
    margin: 0 0 1.25vw 0;
    line-height: 1.4em;
    font-size: 2vw;
    font-weight: bold;
  }
  .blog-page .list .item:nth-of-type(1) .box .title {
    margin: 0 0 1.667vw 0;
    line-height: 1.4em;
    font-size: 3.333vw;
    font-weight: bold;
  }
  .blog-page .list .item .box .info {
    margin: 0 0 0.667vw 0;
    display: flex;
    align-items: center;
  }
  .blog-page .list .item:nth-of-type(1) .box .info {
    margin: 0 0 1.833vw 0;
  }
  .blog-page .list .item .box .info .avator {
    width: 4.167vw;
    margin: 0 1.25vw 0 0;
  }
  .blog-page .list .item .box .info .avator img {
    width: 4.167vw;
    height: 4.167vw;
    display: block;
    border-radius: 15vw;
    border: 1px solid #dedede;
    box-sizing: border-box;
    margin: 0 1.25vw 0 0;
    object-fit: cover;
  }
  .blog-page .list .item .box .info .name {
    line-height: 1.4em;
    font-size: 1.5vw;
    font-weight: normal;
    color: #666666;
    margin: 0 2.5vw 0 0;
  }
  .blog-page .list .item .box .info .post {
    line-height: 1.4em;
    font-size: 1.333vw;
    font-weight: normal;
    color: #666666;
  }
  .blog-page .list .item .box .description {
    margin: 0 0 1.667vw 0;
    line-height: 1.6em;
    font-size: 1.667vw;
    font-weight: normal;
    color: #333333;
  }
  .blog-page .list .item .box .more {
    margin: 0 0 1.833vw 0;
  }
  .blog-page .list .item .box .more a {
    width: 15vw;
    height: 3.333vw;
    line-height: 1.4em;
    font-size: 1.833vw;
    font-weight: bold;
    color: #fff;
    background: #004487;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
    border-radius: 0.417vw;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .blog-page .list .item .box .tags {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
  }
  .blog-page .list .item .box .tags .tag {
    margin: 0 0.583vw 0.417vw 0;
  }
  .blog-page .list .item .box .tags .tag a {
    padding: 0.667vw 1.25vw;
    line-height: 1.4em;
    font-size: 1.5vw;
    color: #000000;
    color: rgba(33, 33, 31, 1);
    text-decoration: none;
    border: 1px dashed #a7a7a7;
    border-radius: 15vw;
    display: inline-block;
  }
  .blog-page .paging {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .blog-page .paging a {
    margin: 0 0.583vw;
    width: 3.333vw;
    height: 3.333vw;
    line-height: 1.2em;
    font-size: 1.833vw;
    font-weight: bold;
    color: #000;
    color: rgba(33, 33, 31, 1);
    border: 1px solid #000;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
    border-radius: 15vw;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.6s 0s;
  }
  .blog-page .paging a:hover {
    color: #fff;
    background: #004487;
  }
  .blog-page .paging .current {
    margin: 0 0.583vw;
    width: 3.333vw;
    height: 3.333vw;
    line-height: 1.2em;
    font-size: 1.833vw;
    font-weight: bold;
    color: #fff;
    background: #004487;
    border: 1px solid #000;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
    border-radius: 15vw;
    display: flex;
    align-items: center;
    justify-content: center;

  }
  .blog-page .paging .extend {
    margin: 0 0.583vw;
    width: 3.333vw;
    height: 3.333vw;
    line-height: 1.2em;
    font-size: 1.833vw;
    font-weight: bold;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
@media only screen and (max-width: 769px) {
  .blog-page {
    padding: 0 0 10.938vw 0;
  }
  .blog-page h2 {
    padding: 0 0 13.281vw 0;
    text-align: center;
  }
  .blog-page .list {
    margin: 0 auto 7.813vw auto;
    width: 90.625vw;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .blog-page .list .item {
    margin: 0 0 7.813vw 0;
    width: 100%;
    max-width: 100%;
    display: flex;
    justify-content: space-between;
  }
  .blog-page .list .item:nth-of-type(1) {
    width: 100%;
    max-width: 100%;
  }
  .blog-page .list .item .image {
    width: 51.724%;
    max-width: 46.875vw;
  }
  .blog-page .list .item:nth-of-type(1) .image {
    width: 50%;
    max-width: 93.75vw;
  }
  .blog-page .list .item .image img {
    object-fit: cover;
  }
  .blog-page .list .item .box {
    width: 47%;
    max-width: 39.063vw;
  }
  .blog-page .list .item:nth-of-type(1) .box {
    width: 49%;
    max-width: 79.688vw;
  }
  .blog-page .list .item .box .title {
    margin: 0 0 2.344vw 0;
    line-height: 1.4em;
    font-size: 4.688vw;
    font-weight: bold;
  }
  .blog-page .list .item:nth-of-type(1) .box .title {
    margin: 0 0 2.344vw 0;
    line-height: 1.4em;
    font-size: 4.688vw;
    font-weight: bold;
  }
  .blog-page .list .item .box .info {
    margin: 0 0 1.25vw 0;
    display: flex;
    align-items: center;
  }
  .blog-page .list .item:nth-of-type(1) .box .info {
    margin: 0 0 3.438vw 0;
  }
  .blog-page .list .item .box .info .avator {
    width: 7.813vw;
    margin: 0 2.344vw 0 0;
  }
  .blog-page .list .item .box .info .avator img {
    width: 7.813vw;
    height: 7.813vw;
    display: block;
    border-radius: 28.125vw;
    border: 1px solid #dedede;
    box-sizing: border-box;
    margin: 0 2.344vw 0 0;
    object-fit: cover;
  }
  .blog-page .list .item .box .info .name {
    line-height: 1.4em;
    font-size: 3.125vw;
    font-weight: normal;
    color: #666666;
    margin: 0 1.563vw 0 0;
  }
  .blog-page .list .item .box .info .post {
    line-height: 1.4em;
    font-size: 2.813vw;
    font-weight: normal;
    color: #666666;
  }
  .blog-page .list .item .box .tags {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
  }
  .blog-page .list .item .box .tags .tag {
    margin: 0 1.094vw 0.781vw 0;
  }
  .blog-page .list .item .box .tags .tag a {
    padding: 1.25vw 2.344vw;
    line-height: 1.4em;
    font-size: 2.813vw;
    color: #000000;
    color: rgba(33, 33, 31, 1);
    text-decoration: none;
    border: 1px dashed #a7a7a7;
    border-radius: 28.125vw;
    display: inline-block;
  }
  .blog-page .paging {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .blog-page .paging a {
    margin: 0 1.094vw;
    width: 6.25vw;
    height: 6.25vw;
    line-height: 1.2em;
    font-size: 3.438vw;
    font-weight: bold;
    color: #000;
    color: rgba(33, 33, 31, 1);
    border: 1px solid #000;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
    border-radius: 28.125vw;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.6s 0s;
  }
  .blog-page .paging a:hover {
    color: #fff;
    background: #004487;
  }
  .blog-page .paging .current {
    margin: 0 1.094vw;
    width: 6.25vw;
    height: 6.25vw;
    line-height: 1.2em;
    font-size: 3.438vw;
    font-weight: bold;
    color: #fff;
    background: #004487;
    border: 1px solid #000;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
    border-radius: 28.125vw;
    display: flex;
    align-items: center;
    justify-content: center;

  }
  .blog-page .paging .extend {
    margin: 0 1.094vw;
    width: 6.25vw;
    height: 6.25vw;
    line-height: 1.2em;
    font-size: 3.438vw;
    font-weight: bold;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
  }

}



/* blog-single */
.blog-single-page {
  padding: 0 0 100px 0;
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
}
.blog-single-page .side {
  width: 20.83%;
}
.blog-single-page .side h3 {
  width: 100%;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  background: #004487;
  color: #fff;
  padding: 0 0 0 0;
  line-height: 1.2em;
  font-size: 16px;
  font-weight: bold;
}
.blog-single-page .side ul {
  box-sizing: border-box;
  width: 100%;
  background: #eeeeee;
}
.blog-single-page .side ul li {
  padding: 19px 20px 19px 20px;
  border-bottom: 1px dashed #555555;
}
.blog-single-page .side ul li:last-child {
  border-bottom: none;
}
.blog-single-page .side ul li .image {
  margin: 0 0 8px 0;
}
.blog-single-page .side ul li .image img {
  width: 100%;
  height: 158px;
  display: block;
  object-fit: cover;
}
.blog-single-page .side ul li .title {
  margin: 0 0 5px 0;
  line-height: 1.4em;
  font-size: 16px;
  font-weight: 500;
}
.blog-single-page .side ul li .post {
  margin: 0 0 7px 0;
  line-height: 1.4em;
  font-size: 14px;
  color: #666;
}
.blog-single-page .side ul li .info {
  display: flex;
  align-items: center;
}
.blog-single-page .side ul li .info .avator {
  width: 50px;
  margin: 0 15px 0 0;
}
.blog-single-page .side ul li .info .avator img {
  width: 50px;
  height: 50px;
  display: block;
  border-radius: 180px;
  border: 1px solid #dedede;
  box-sizing: border-box;
  margin: 0 15px 0 0;
  object-fit: cover;
}
.blog-single-page .side ul li .info .name {
  line-height: 1.4em;
  font-size: 18px;
  font-weight: normal;
  color: #666666;
}
.blog-single-page .main {
  width: 76.66%;
}
.blog-single-page .main .main-visual {
	margin: 0 0 40px 0;
}
.blog-single-page .main .main-visual img {
  width: 100%;
  height: auto;
  display: block;
}
.blog-single-page .main .title {
  line-height: 1.4em;
  font-size: 50px;
  font-weight: bold;
  color: #333;
  margin: 0 0 45px 0;
}
.blog-single-page .main .info {
  margin: 0 0 90px 0;
  display: flex;
  align-items: center;
}
.blog-single-page .main .info .avator {
  width: 50px;
  margin: 0 15px 0 0;
}
.blog-single-page .main .info .avator img {
  width: 50px;
  height: 50px;
  display: block;
  border-radius: 180px;
  border: 1px solid #dedede;
  box-sizing: border-box;
  margin: 0 15px 0 0;
  object-fit: cover;
}
.blog-single-page .main .info .name {
  line-height: 1.4em;
  font-size: 18px;
  font-weight: normal;
  color: #666666;
  margin: 0 30px 0 0;
}
.blog-single-page .main .info .post {
  line-height: 1.4em;
  font-size: 16px;
  font-weight: normal;
  color: #666666;
}
.blog-single-page .main .description {
  margin: 0 0 20px 0;
  line-height: 1.8em;
  font-size: 18px;
  font-weight: normal;
  color: #333333;
}
.blog-single-page .main .description p {
  margin: 0 0 30px 0;
}
.blog-single-page .main .description h1 {
  margin: 0 0 30px 0;
  padding: 0 0 25px 20px;
  min-height: 80px;
  box-sizing: border-box;
  line-height: 1.4em;
  font-size: 40px;
  font-weight: bold;
  background: url("../images/blog/title_back_01.png") no-repeat left bottom;
  background-size: 100% auto;
}
.blog-single-page .main .description h2 {
  margin: 0 0 20px 0;
  padding: 0 0 0 0;
  line-height: 1.4em;
  font-size: 34px;
  font-weight: bold;
  color: #004486;
}
.blog-single-page .main .description h3 {
  margin: 0 0 20px 0;
  padding: 0 0 0 0;
  line-height: 1.4em;
  font-size: 30px;
  font-weight: bold;
}
.blog-single-page .main .description h4 {
  margin: 0 0 20px 0;
  padding: 0 0 0 0;
  line-height: 1.4em;
  font-size: 26px;
  font-weight: bold;
}
.blog-single-page .main .description h5 {
  margin: 0 0 20px 0;
  padding: 0 0 0 0;
  line-height: 1.4em;
  font-size: 22px;
  font-weight: bold;
}
.blog-single-page .main .description ul {
  margin: 0 0 20px 1.2em;
  padding: 0 0 0 0;
  list-style: disc;
}
.blog-single-page .main .description ol {
  margin: 0 0 20px 1.2em;
  padding: 0 0 0 0;
  list-style: decimal;
}
.blog-single-page .main .tags {
  margin: 0 50px 30px;
  width: calc( 100% - 100px );
  display: flex;
  flex-wrap: wrap;
}
.blog-single-page .main .tags .tag {
  margin: 0 7px 5px 0;
}
.blog-single-page .main .tags .tag a {
  padding: 8px 15px;
  line-height: 1.4em;
  font-size: 18px;
  color: #000000;
  color: rgba(33, 33, 31, 1);
  text-decoration: none;
  border: 1px dashed #a7a7a7;
  border-radius: 180px;
  display: inline-block;
}
.blog-single-page .main .author {
  margin: 0 50px 0px;
  padding: 25px 40px 21px 68px;
  width: calc( 100% - 100px );
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  box-sizing: border-box;
  border: 1px dashed #a7a7a7;
}
.blog-single-page .main .author .image {
  margin: 0 0 0 0;
#  width: 84px;
}
.blog-single-page .main .author .box {
  margin: 0 0 0 0;
  padding: 20px 0 0 0;
  width: 545px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
}
.blog-single-page .main .author .box .name {
  margin: 0 0 0 0;
  padding: 0 0 25px 0;
  line-height: 1.4em;
  font-size: 20px;
  color: #1f1f1f;
}
.blog-single-page .main .author .box .description {
  margin: 0 0 0 0;
  padding: 0 0 25px 0;
  width: 100%;
  line-height: 1.8em;
  font-size: 18px;
  color: #1f1f1f;
}
.blog-single-page .main .author .box .link {

}
.blog-single-page .main .author .box .link a {
  width: 190px;
  height: 34px;
  line-height: 1.4em;
  font-size: 18px;
  font-weight: normal;
  color: #fff;
  background: #004487;
  text-decoration: none;
  box-sizing: border-box;
  position: relative;
  border-radius: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.6s 0s;
}
.blog-single-page .main .author .box .link a:hover {
  opacity: 0.6;
}
@media only screen and (min-width: 770px) and (max-width: 1200px) {
  .blog-single-page {
    padding: 0 0 8.333vw 0;
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
  }
  .blog-single-page .side {
    width: 20.83%;
  }
  .blog-single-page .side h3 {
    width: 100%;
    height: 3.333vw;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    background: #004487;
    color: #fff;
    padding: 0 0 0 0;
    line-height: 1.2em;
    font-size: 1.333vw;
    font-weight: bold;
  }
  .blog-single-page .side ul {
    box-sizing: border-box;
    width: 100%;
    background: #eeeeee;
  }
  .blog-single-page .side ul li {
    padding: 1.583vw 1.667vw 1.583vw 1.667vw;
    border-bottom: 1px dashed #555555;
  }
  .blog-single-page .side ul li:last-child {
    border-bottom: none;
  }
  .blog-single-page .side ul li .image {
    margin: 0 0 0.667vw 0;
  }
  .blog-single-page .side ul li .image img {
    width: 100%;
    height: 13.167vw;
    display: block;
    object-fit: cover;
  }
  .blog-single-page .side ul li .title {
    margin: 0 0 0.417vw 0;
    line-height: 1.4em;
    font-size: 1.333vw;
    font-weight: 500;
  }
  .blog-single-page .side ul li .post {
    margin: 0 0 0.583vw 0;
    line-height: 1.4em;
    font-size: 1.167vw;
    color: #666;
  }
  .blog-single-page .side ul li .info {
    display: flex;
    align-items: center;
  }
  .blog-single-page .side ul li .info .avator {
    width: 4.167vw;
    margin: 0 1.25vw 0 0;
  }
  .blog-single-page .side ul li .info .avator img {
    width: 4.167vw;
    height: 4.167vw;
    display: block;
    border-radius: 15vw;
    border: 1px solid #dedede;
    box-sizing: border-box;
    margin: 0 1.25vw 0 0;
    object-fit: cover;
  }
  .blog-single-page .side ul li .info .name {
    line-height: 1.4em;
    font-size: 1.5vw;
    font-weight: normal;
    color: #666666;
  }
  .blog-single-page .main {
    width: 76.66%;
  }
  .blog-single-page .main .main-visual {
    margin: 0 0 3.333vw 0;
  }
  .blog-single-page .main .main-visual img {
    width: 100%;
    height: auto;
    display: block;
  }
  .blog-single-page .main .title {
    line-height: 1.4em;
    font-size: 4.167vw;
    font-weight: bold;
    color: #333;
    margin: 0 0 3.75vw 0;
  }
  .blog-single-page .main .info {
    margin: 0 0 7.5vw 0;
    display: flex;
    align-items: center;
  }
  .blog-single-page .main .info .avator {
    width: 4.167vw;
    margin: 0 1.25vw 0 0;
  }
  .blog-single-page .main .info .avator img {
    width: 4.167vw;
    height: 4.167vw;
    display: block;
    border-radius: 15vw;
    border: 1px solid #dedede;
    box-sizing: border-box;
    margin: 0 1.25vw 0 0;
    object-fit: cover;
  }
  .blog-single-page .main .info .name {
    line-height: 1.4em;
    font-size: 1.5vw;
    font-weight: normal;
    color: #666666;
    margin: 0 2.5vw 0 0;
  }
  .blog-single-page .main .info .post {
    line-height: 1.4em;
    font-size: 1.333vw;
    font-weight: normal;
    color: #666666;
  }
  .blog-single-page .main .description {
    margin: 0 0 1.667vw 0;
    line-height: 1.8em;
    font-size: 1.5vw;
    font-weight: normal;
    color: #333333;
  }
  .blog-single-page .main .description p {
    margin: 0 0 2.5vw 0;
  }
  .blog-single-page .main .description h1 {
    margin: 0 0 2.5vw 0;
    padding: 0 0 2.083vw 1.667vw;
    min-height: 6.667vw;
    box-sizing: border-box;
    line-height: 1.4em;
    font-size: 3.333vw;
    font-weight: bold;
    background: url("../images/blog/title_back_01.png") no-repeat left bottom;
    background-size: 100% auto;
  }
  .blog-single-page .main .description h2 {
    margin: 0 0 1.667vw 0;
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 2.833vw;
    font-weight: bold;
    color: #004486;
  }
  .blog-single-page .main .description h3 {
    margin: 0 0 1.667vw 0;
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 2.5vw;
    font-weight: bold;
  }
  .blog-single-page .main .description h4 {
    margin: 0 0 1.667vw 0;
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 2.167vw;
    font-weight: bold;
  }
  .blog-single-page .main .description h5 {
    margin: 0 0 1.667vw 0;
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 1.833vw;
    font-weight: bold;
  }
  .blog-single-page .main .description ul {
    margin: 0 0 20px 1.2em;
    padding: 0 0 0 0;
    list-style: disc;
  }
  .blog-single-page .main .description ol {
    margin: 0 0 20px 1.2em;
    padding: 0 0 0 0;
    list-style: decimal;
  }
  .blog-single-page .main .tags {
    margin: 0 4.167vw 2.5vw;
    width: calc( 100% - 8.333vw );
    display: flex;
    flex-wrap: wrap;
  }
  .blog-single-page .main .tags .tag {
    margin: 0 0.583vw 0.417vw 0;
  }
  .blog-single-page .main .tags .tag a {
    padding: 0.667vw 1.25vw;
    line-height: 1.4em;
    font-size: 1.5vw;
    color: #000000;
    color: rgba(33, 33, 31, 1);
    text-decoration: none;
    border: 1px dashed #a7a7a7;
    border-radius: 15vw;
    display: inline-block;
  }
  .blog-single-page .main .author {
    margin: 0 4.167vw 0px;
    padding: 2.083vw 3.333vw 1.75vw 5.667vw;
    width: calc( 100% - 8.333vw );
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    box-sizing: border-box;
    border: 1px dashed #a7a7a7;
  }
  .blog-single-page .main .author .image {
    margin: 0 0 0 0;
    width: 7vw;
  }
  .blog-single-page .main .author .box {
    margin: 0 0 0 0;
    padding: 1.667vw 0 0 0;
    width: 45.417vw;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
  }
  .blog-single-page .main .author .box .name {
    margin: 0 0 0 0;
    padding: 0 0 2.083vw 0;
    line-height: 1.4em;
    font-size: 1.667vw;
    color: #1f1f1f;
  }
  .blog-single-page .main .author .box .description {
    margin: 0 0 0 0;
    padding: 0 0 2.083vw 0;
    line-height: 1.8em;
    font-size: 1.5vw;
    color: #1f1f1f;
  }
  .blog-single-page .main .author .box .link {

  }
  .blog-single-page .main .author .box .link a {
    width: 15.833vw;
    height: 2.833vw;
    line-height: 1.4em;
    font-size: 1.5vw;
    font-weight: normal;
    color: #fff;
    background: #004487;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
    border-radius: 0.417vw;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.6s 0s;
  }
  .blog-single-page .main .author .box .link a:hover {
    opacity: 0.6;
  }
}
@media only screen and (max-width: 769px) {
  .blog-single-page {
    padding: 0 0 10.938vw 0;
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
  }
  .blog-single-page .side {
    display: none;
  }
  .blog-single-page .main {
    width: 100%;
  }
  .blog-single-page .main .main-visual {
    margin: 0 0 6.25vw 0;
  }
  .blog-single-page .main .main-visual img {
    width: 100%;
    height: auto;
    display: block;
  }
  .blog-single-page .main .title {
    line-height: 1.4em;
    font-size: 5.313vw;
    font-weight: bold;
    color: #333;
    margin: 0 4.688vw 6.25vw 4.688vw;
    width: 90.625vw;
  }
  .blog-single-page .main .info {
    margin: 0 4.688vw 6.25vw 4.688vw;
    width: 90.625vw;
    display: flex;
    align-items: center;
  }
  .blog-single-page .main .info .avator {
    width: 7.813vw;
    margin: 0 2.344vw 0 0;
  }
  .blog-single-page .main .info .avator img {
    width: 7.813vw;
    height: 7.813vw;
    display: block;
    border-radius: 28.125vw;
    border: 1px solid #dedede;
    box-sizing: border-box;
    margin: 0 2.344vw 0 0;
    object-fit: cover;
  }
  .blog-single-page .main .info .name {
    line-height: 1.4em;
    font-size: 2.813vw;
    font-weight: normal;
    color: #666666;
    margin: 0 4.688vw 0 0;
  }
  .blog-single-page .main .info .post {
    line-height: 1.4em;
    font-size: 2.5vw;
    font-weight: normal;
    color: #666666;
  }
  .blog-single-page .main .description {
    margin: 0 4.688vw 6.25vw 4.688vw;
    width: 90.625vw;
    line-height: 1.8em;
    font-size: 2.813vw;
    font-weight: normal;
    color: #333333;
  }
  .blog-single-page .main .description p {
    margin: 0 0 5.469vw 0;
  }
  .blog-single-page .main .description h1 {
    margin: 0 0 4.688vw 0;
    padding: 0 0 3.906vw 2.344vw;
    min-height: 10.938vw;
    box-sizing: border-box;
    line-height: 1.4em;
    font-size: 4.688vw;
    font-weight: bold;
    background: url("../images/blog/title_back_01.png") no-repeat left bottom;
    background-size: auto 70px;
  }
  .blog-single-page .main .description h2 {
    margin: 0 0 3.125vw 0;
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 4.375vw;
    font-weight: bold;
    color: #004486;
  }
  .blog-single-page .main .description h3 {
    margin: 0 0 3.125vw 0;
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 4.063vw;
    font-weight: bold;
  }
  .blog-single-page .main .description h4 {
    margin: 0 0 3.125vw 0;
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 3.75vw;
    font-weight: bold;
  }
  .blog-single-page .main .description h5 {
    margin: 0 0 3.125vw 0;
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 3.438vw;
    font-weight: bold;
  }
  .blog-single-page .main .description ul {
    margin: 0 0 20px 1.2em;
    padding: 0 0 0 0;
    list-style: disc;
  }
  .blog-single-page .main .description ol {
    margin: 0 0 20px 1.2em;
    padding: 0 0 0 0;
    list-style: decimal;
  }
  .blog-single-page .main .tags {
    margin: 0 4.688vw 4.688vw;
    width: 90.625vw;
    display: flex;
    flex-wrap: wrap;
  }
  .blog-single-page .main .tags .tag {
    margin: 0 1.094vw 0.781vw 0;
  }
  .blog-single-page .main .tags .tag a {
    padding: 1.25vw 2.344vw;
    line-height: 1.4em;
    font-size: 2.813vw;
    color: #000000;
    color: rgba(33, 33, 31, 1);
    text-decoration: none;
    border: 1px dashed #a7a7a7;
    border-radius: 28.125vw;
    display: inline-block;
  }
  .blog-single-page .main .author {
    margin: 0 4.688vw 0px;
    padding: 6.25vw 2.344vw 3.125vw 5vw;
    width: 90.625vw;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    box-sizing: border-box;
    border: 1px dashed #a7a7a7;
  }
  .blog-single-page .main .author .image {
    margin: 0 0 0 0;
    width: 13.125vw;
  }
  .blog-single-page .main .author .box {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 60.938vw;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
  }
  .blog-single-page .main .author .box .name {
    margin: 0 0 0 0;
    padding: 0 0 3.906vw 0;
    line-height: 1.4em;
    font-size: 3.125vw;
    color: #1f1f1f;
  }
  .blog-single-page .main .author .box .description {
    margin: 0 0 0 0;
    padding: 0 0 3.906vw 0;
    width: 100%;
    line-height: 1.8em;
    font-size: 2.813vw;
    color: #1f1f1f;
  }
  .blog-single-page .main .author .box .link {

  }
  .blog-single-page .main .author .box .link a {
    width: 29.688vw;
    height: 5.313vw;
    line-height: 1.4em;
    font-size: 2.813vw;
    font-weight: normal;
    color: #fff;
    background: #004487;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
    border-radius: 0.781vw;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.6s 0s;
  }
  .blog-single-page .main .author .box .link a:hover {
    opacity: 0.6;
  }
}


/* flow */
.flow-page {
  padding: 0 0 50px 0;
}
.flow-page h2 {
	margin: 0 0 20px 0;
}
.flow-page .intro {
	margin: 0 0 0 0;
	padding: 0 0 205px 0;
	width: 100%;
	position: relative;
}
.flow-page .intro p {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	width: 50%;
	max-width: 600px;
	line-height: 1.6em;
	font-size: 30px;
	font-weight: 500;
}
.flow-page .intro .image {
	width: 25%;
	position: absolute;
	top: -30px;
	right: 30px;
}
.flow-page .menu {
  margin: 0 auto 100px;
  width: 100%;
  max-width: 850px;
  display: flex;
  justify-content: space-between;
}
.flow-page .menu a {
  width: 48%;
  max-width: 400px;
  height: 80px;
  line-height: 1.4em;
  font-size: 24px;
  font-weight: bold;
  color: #004487;
  background: #eeeeee;
  border: 1px solid #004487;
  border-radius: 180px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  box-sizing: border-box;
  text-decoration: none;
  transition: all 0.5s 0s;
  transition: background-color .3s ease, color .3s ease, border-color .3s ease, box-shadow .3s ease;
}

/* active 時（例） */
.flow-page .menu a.active {
  background: #004487;
  color: #fff;
  border-color: #004487;
  box-shadow: 0 0 0 3px rgba(0, 68, 135, .15) inset;
}

/* 初期切替の瞬間だけアニメ無効化用フラグ */
.js-booting .flow-page .menu a {
  transition: none !important;
}

.flow-page .menu a em {
  line-height: 1.4em;
  font-size: 30px;
}
.flow-page .menu a:hover {
  color: #fff;
  background: #004487;
}
.flow-page .menu a.active {
  color: #fff;
  background: #004487;
}
.flow-page .tab-content-box {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  width: 100%;
  display: none;
}
.flow-page .tab-content-box.active {
  display: block;
}

.flow-page .tab-content-box ol {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  width: 100%;
}
.flow-page .tab-content-box ol li {
  margin: 0 0 0 0;
  padding: 15px 457px 50px 145px;
  width: 100%;
  position: relative;
  box-sizing: border-box;
}
.flow-page .tab-content-box ol li::after {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  width: 10px;
  height: 100%;
  content: "";
  background: #004487;
  position: absolute;
  top: 5px;
  left: 45px;
  z-index: 0;
}
.flow-page .tab-content-box ol li:last-child::after {
  display: none;
}
.flow-page .tab-content-box ol li::before {
  width: 100px;
  height: 100px;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 180px;
  content: "";
  line-height: 1.2em;
  font-size: 50px;
  font-weight: bold;
  color: #fff;
  background: #004487;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1;
}
.flow-page .tab-content-box ol li:nth-of-type(1)::before {
  content: "1";
}
.flow-page .tab-content-box ol li:nth-of-type(2)::before {
  content: "2";
}
.flow-page .tab-content-box ol li:nth-of-type(3)::before {
  content: "3";
}
.flow-page .tab-content-box ol li:nth-of-type(4)::before {
  content: "4";
}
.flow-page .tab-content-box ol li:nth-of-type(5)::before {
  content: "5";
}
.flow-page .tab-content-box ol li:nth-of-type(6)::before {
  content: "6";
}
.flow-page .tab-content-box ol li:nth-of-type(7)::before {
  content: "7";
}
.flow-page .tab-content-box ol li:nth-of-type(8)::before {
  content: "8";
}
.flow-page .tab-content-box ol li:nth-of-type(9)::before {
  content: "9";
}
.flow-page .tab-content-box ol li h3 {
	margin: 0 0 30px 0;
	line-height: 1.4em;
	font-size: 40px;
	font-weight: bold;
  color: #004486;
}
.flow-page .tab-content-box ol li h4 {
	margin: 0 0 10px 0;
	line-height: 1.4em;
	font-size: 20px;
	font-weight: 500;
}
.flow-page .tab-content-box ol li h4.under-line {
  padding: 0 0 10px 0;
  width: fit-content;
  border-bottom: 1px solid #333;
}
.flow-page .tab-content-box ol li h5 {
	margin: 0 0 10px 0;
	line-height: 1.4em;
	font-size: 20px;
	font-weight: 500;
}
.flow-page .tab-content-box ol li p {
	margin: 0 0 30px 0;
	line-height: 1.8em;
	font-size: 18px;
	font-weight: normal;
}
.flow-page .tab-content-box ol li em {
  color: #f00;
}
.flow-page .tab-content-box ol li .card {
  margin: 0 0 20px 0;
}
.flow-page .tab-content-box ol li .image {
  position: absolute;
}
.flow-page .tab-content-box ol li .image.image01 {
  width: 410px;
  top: 0;
  right: 81px;
}
.flow-page .tab-content-box ol li .image.image02 {
  width: 418px;
  top: 59px;
  right: 0;
}
.flow-page .tab-content-box ol li .image.image03 {
  width: 330px;
  top: 72px;
  right: 36px;
}
.flow-page .tab-content-box ol li .image.image04 {
  width: 348px;
  top: 71px;
  right: 0;
}
.flow-page .tab-content-box ol li .image.image05 {
  width: 314px;
  top: 90px;
  right: 36px;
}
.flow-page .tab-content-box ol li .image.image06 {
  width: 358px;
  top: 53px;
  right: 0;
}
.flow-page .tab-content-box ol li .image.image07 {
  width: 268px;
  top: 55px;
  right: 44px;
}
.flow-page .tab-content-box ol li .txt06 {
  padding-bottom: 50px;
}
.flow-page .tab-content-box ol li .txt07 {
  padding-bottom: 50px;
}
.flow-page .tab-content-box ol li .image.image08 {
  width: 328px;
  top: 86px;
  right: 0;
}
.flow-page .tab-content-box ol li .image.image09 {
  width: 376px;
  top: 179px;
  right: 0;
}

.flow-page .tab-content-box ol li .image.image07 {
  width: 335px;
  top: 35px;
  right: 34px;
}
.flow-page .tab-content-box ol li .image.image08 {
  width: 268px;
  top: 40px;
  right: 60px;
}
.flow-page .tab-content-box ol li .image.image09 {
  width: 292px;
  top: 100px;
  right: 50px;
}
.flow-page .tab-content-box ol li .image.image10 {
  width: 376px;
  top: 55px;
  right: 0;
}


.flow-page .attention {
  margin: 0 auto;
  padding: 15px 20px;
  width: 90%;
  max-width: 867px;
  text-align: left;
  box-sizing: border-box;
  background: #eeeeee;
}
.flow-page .attention h4 {
	margin: 0 0 10px 0;
	line-height: 1.4em;
	font-size: 24px;
	font-weight: 500;
}
.flow-page .attention h5 {
	margin: 0 0 10px 0;
	line-height: 1.4em;
	font-size: 20px;
	font-weight: normal;
}
.flow-page .attention p {
	margin: 0 0 15px 0;
	line-height: 1.8em;
	font-size: 18px;
	font-weight: normal;
}
@media only screen and (min-width: 770px) and (max-width: 1200px) {
  .flow-page {
    padding: 0 0 4.167vw 0;
  }
  .flow-page h2 {
    margin: 0 0 1.667vw 0;
  }
  .flow-page .intro {
    margin: 0 0 0 0;
    padding: 0 0 17.083vw 0;
    width: 100%;
    position: relative;
  }
  .flow-page .intro p {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 50%;
    max-width: 50vw;
    line-height: 1.6em;
    font-size: 2.5vw;
    font-weight: 500;
  }
  .flow-page .intro .image {
    width: 25%;
    position: absolute;
    top: -7.5vw;
    right: 0;
  }
  .flow-page .menu {
    margin: 0 auto 100px;
    width: 100%;
    max-width: 70.833vw;
    display: flex;
    justify-content: space-between;
  }
  .flow-page .menu a {
    width: 48%;
    max-width: 33.333vw;
    height: 6.667vw;
    line-height: 1.4em;
    font-size: 2vw;
    font-weight: bold;
    color: #004487;
    background: #eeeeee;
    border: 1px solid #004487;
    border-radius: 15vw;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    box-sizing: border-box;
    text-decoration: none;
    #transition: all 0.5s 0s;
	transition: background-color .3s ease, color .3s ease, border-color .3s ease, box-shadow .3s ease;
  }

  /* active 時（例） */
  .flow-page .menu a.active {
	background: #004487;
	color: #fff;
	border-color: #004487;
	box-shadow: 0 0 0 3px rgba(0, 68, 135, .15) inset;
  }

  /* 初期切替の瞬間だけアニメ無効化用フラグ */
  .js-booting .flow-page .menu a {
	transition: none !important;
  }

  .flow-page .menu a em {
    line-height: 1.4em;
    font-size: 2.5vw;
  }
  .flow-page .menu a:hover {
    color: #fff;
    background: #004487;
  }
  .flow-page .menu a.active {
    color: #fff;
    background: #004487;
  }
  .flow-page .tab-content-box {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
  }
  .flow-page .tab-content-box ol {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
  }
  .flow-page .tab-content-box ol li {
    margin: 0 0 0 0;
    padding: 1.25vw 38.083vw 4.167vw 12.083vw;
    width: 100%;
    position: relative;
    box-sizing: border-box;
  }
  .flow-page .tab-content-box ol li::after {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 0.833vw;
    height: 100%;
    content: "";
    background: #004487;
    position: absolute;
    top: 0.417vw;
    left: 3.75vw;
    z-index: 0;
  }
  .flow-page .tab-content-box ol li:last-child::after {
    display: none;
  }
  .flow-page .tab-content-box ol li::before {
    width: 8.333vw;
    height: 8.333vw;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 15vw;
    content: "";
    line-height: 1.2em;
    font-size: 4.167vw;
    font-weight: bold;
    color: #fff;
    background: #004487;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
  }
  .flow-page .tab-content-box ol li:nth-of-type(1)::before {
    content: "1";
  }
  .flow-page .tab-content-box ol li:nth-of-type(2)::before {
    content: "2";
  }
  .flow-page .tab-content-box ol li:nth-of-type(3)::before {
    content: "3";
  }
  .flow-page .tab-content-box ol li:nth-of-type(4)::before {
    content: "4";
  }
  .flow-page .tab-content-box ol li:nth-of-type(5)::before {
    content: "5";
  }
  .flow-page .tab-content-box ol li:nth-of-type(6)::before {
    content: "6";
  }
  .flow-page .tab-content-box ol li:nth-of-type(7)::before {
    content: "7";
  }
  .flow-page .tab-content-box ol li:nth-of-type(8)::before {
    content: "8";
  }
  .flow-page .tab-content-box ol li:nth-of-type(9)::before {
    content: "9";
  }
  .flow-page .tab-content-box ol li h3 {
    margin: 0 0 2.5vw 0;
    line-height: 1.4em;
    font-size: 3.333vw;
    font-weight: bold;
    color: #004486;
  }
  .flow-page .tab-content-box ol li h4 {
    margin: 0 0 0.833vw 0;
    line-height: 1.4em;
    font-size: 1.667vw;
    font-weight: 500;
  }
  .flow-page .tab-content-box ol li h4.under-line {
    padding: 0 0 0.833vw 0;
    width: fit-content;
    border-bottom: 1px solid #333;
  }
  .flow-page .tab-content-box ol li h5 {
    margin: 0 0 0.833vw 0;
    line-height: 1.4em;
    font-size: 1.667vw;
    font-weight: 500;
  }
  .flow-page .tab-content-box ol li p {
    margin: 0 0 2.5vw 0;
    line-height: 1.8em;
    font-size: 1.5vw;
    font-weight: normal;
  }
  .flow-page .tab-content-box ol li em {
    color: #f00;
  }
  .flow-page .tab-content-box ol li .card {
    margin: 0 0 1.667vw 0;
  }
  .flow-page .tab-content-box ol li .image {
    position: absolute;
  }
  .flow-page .tab-content-box ol li .image.image01 {
    width: 32.167vw;
    top: 0;
    right: 3.75vw;
  }
  .flow-page .tab-content-box ol li .image.image02 {
    width: 34.833vw;
    top: 4.917vw;
    right: 0;
  }
  .flow-page .tab-content-box ol li .image.image03 {
    width: 27.5vw;
    top: 6vw;
    right: 3vw;
  }
  .flow-page .tab-content-box ol li .image.image04 {
    width: 29vw;
    top: 5.917vw;
    right: 0;
  }
  .flow-page .tab-content-box ol li .image.image05 {
    width: 26.167vw;
    top: 7.5vw;
    right: 3vw;
  }
  .flow-page .tab-content-box ol li .image.image06 {
    width: 29.833vw;
    top: 4.417vw;
    right: 0;
  }
  .flow-page .tab-content-box ol li .image.image07 {
    width: 22.333vw;
    top: 4.583vw;
    right: 3.667vw;
  }
  .flow-page .tab-content-box ol li .image.image08 {
    width: 27.333vw;
    top: 7.167vw;
    right: 0;
  }
  .flow-page .tab-content-box ol li .image.image09 {
    width: 31.333vw;
    top: 14.917vw;
    right: 0;
  }
  .flow-page .attention {
    margin: 0 auto;
    padding: 1.25vw 1.667vw;
    width: 90%;
    max-width: 72.25vw;
    text-align: left;
    box-sizing: border-box;
    background: #eeeeee;
  }
  .flow-page .attention h4 {
    margin: 0 0 0.833vw 0;
    line-height: 1.4em;
    font-size: 2vw;
    font-weight: 500;
  }
  .flow-page .attention h5 {
    margin: 0 0 0.833vw 0;
    line-height: 1.4em;
    font-size: 1.667vw;
    font-weight: normal;
  }
  .flow-page .attention p {
    margin: 0 0 1.25vw 0;
    line-height: 1.8em;
    font-size: 1.5vw;
    font-weight: normal;
  }
}
@media only screen and (max-width: 769px) {
  .flow-page {
    padding: 0 0 15.625vw 0;
  }
  .flow-page .page-head {
    margin: 0 auto 2.344vw;
    width: 90.625vw;
    display: flex;
    align-items: center;
  }
  .flow-page .page-head .image {
    width: 38.438vw;
  }
  .flow-page h2 {
    margin: 0 0 0 0;
    width: calc( 100% - 38.438vw );
  }
  .flow-page h3 {
    margin: 0 0 3.125vw 0;
    line-height: 1.4em;
    font-size: 6.875vw;
    font-weight: bold;
    text-align: center;
  }
  .flow-page .intro {
    margin: 0 4.688vw 0 4.688vw;
    padding: 0 0 13.281vw 0;
    width: 90.625vw;
    position: relative;
  }
  .flow-page .intro p {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
    max-width: 100%;
    line-height: 1.6em;
    font-size: 3.438vw;
    font-weight: 500;
  }

  .flow-page .menu {
    margin: 0 4.688vw 15.625vw;
    width: 90.625vw;
    max-width: 90.625vw;
    display: flex;
    justify-content: space-between;
  }
  .flow-page .menu a {
    width: 48%;
    max-width: 62.5vw;
    height: 12.5vw;
    line-height: 1.4em;
    font-size: 3.75vw;
    font-weight: bold;
    color: #004487;
    background: #eeeeee;
    border: 1px solid #004487;
    border-radius: 28.125vw;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    box-sizing: border-box;
    text-decoration: none;
    #transition: all 0.5s 0s;
	transition: background-color .3s ease, color .3s ease, border-color .3s ease, box-shadow .3s ease;
  }

  /* active 時（例） */
  .flow-page .menu a.active {
	background: #004487;
	color: #fff;
	border-color: #004487;
	box-shadow: 0 0 0 3px rgba(0, 68, 135, .15) inset;
  }

  /* 初期切替の瞬間だけアニメ無効化用フラグ */
  .js-booting .flow-page .menu a {
	transition: none !important;
  }

  .flow-page .menu a em {
    line-height: 1.4em;
    font-size: 4.688vw;
  }
  .flow-page .menu a:hover {
    color: #fff;
    background: #004487;
  }
  .flow-page .menu a.active {
    color: #fff;
    background: #004487;
  }
  .flow-page .tab-content-box {
    margin: 0 4.688vw 0 4.688vw;
    padding: 0 0 0 0;
    width: 90.625vw;
  }
  .flow-page .tab-content-box ol {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
  }
  .flow-page .tab-content-box ol li {
    margin: 0 0 0 0;
    padding: 0.781vw 0 7.813vw 0;
    width: 100%;
    text-align: left;
    position: relative;
    box-sizing: border-box;
  }
  .flow-page .tab-content-box ol li::after {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 0.938vw;
    height: 100%;
    content: "";
    background: #004487;
    position: absolute;
    top: 0.781vw;
    left: 4.219vw;
    z-index: 0;
  }
  .flow-page .tab-content-box ol li:last-child::after {
    display: none;
  }
  .flow-page .tab-content-box ol li::before {
    width: 9.375vw;
    height: 9.375vw;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 28.125vw;
    content: "";
    line-height: 1.2em;
    font-size: 4.688vw;
    font-weight: bold;
    color: #fff;
    background: #004487;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
  }
  .flow-page .tab-content-box ol li:nth-of-type(1)::before {
    content: "1";
  }
  .flow-page .tab-content-box ol li:nth-of-type(2)::before {
    content: "2";
  }
  .flow-page .tab-content-box ol li:nth-of-type(3)::before {
    content: "3";
  }
  .flow-page .tab-content-box ol li:nth-of-type(4)::before {
    content: "4";
  }
  .flow-page .tab-content-box ol li:nth-of-type(5)::before {
    content: "5";
  }
  .flow-page .tab-content-box ol li:nth-of-type(6)::before {
    content: "6";
  }
  .flow-page .tab-content-box ol li:nth-of-type(7)::before {
    content: "7";
  }
  .flow-page .tab-content-box ol li:nth-of-type(8)::before {
    content: "8";
  }
  .flow-page .tab-content-box ol li:nth-of-type(9)::before {
    content: "9";
  }
  .flow-page .tab-content-box ol li h3 {
    margin: 0 0 8.594vw 12.5vw;
    line-height: 1.4em;
    font-size: 6.25vw;
    font-weight: bold;
    color: #004486;
    text-align: left;
  }
  .flow-page .tab-content-box ol li h4 {
    margin: 0 0 1.563vw 9.375vw;
    line-height: 1.4em;
    font-size: 3.125vw;
    font-weight: 500;
  }
  .flow-page .tab-content-box ol li h4.under-line {
    padding: 0 0 1.563vw 0;
    width: fit-content;
    border-bottom: 1px solid #333;
  }
  .flow-page .tab-content-box ol li h5 {
    margin: 0 0 1.563vw 9.375vw;
    line-height: 1.4em;
    font-size: 3.125vw;
    font-weight: 500;
  }
  .flow-page .tab-content-box ol li p {
    margin: 0 0 4.688vw 9.375vw;
    line-height: 1.8em;
    font-size: 3.125vw;
    font-weight: normal;
  }
  .flow-page .tab-content-box ol li em {
    color: #f00;
  }
  .flow-page .tab-content-box ol li .card {
    margin: 0 0 3.125vw 7.813vw;
  }
  .flow-page .tab-content-box ol li .image {
    position: relative;
  }
  .flow-page .tab-content-box ol li .image.image01 {
    width: 64.844vw;
    margin: 0 0 7.031vw 7.031vw;
    top: auto;
    right: auto;
  }
  .flow-page .tab-content-box ol li .image.image02 {
    width: 65.312vw;
    margin: 0 0 4.688vw 17.5vw;
    top: auto;
    right: auto;
  }
  .flow-page .tab-content-box ol li .image.image03 {
    width: 52.5vw;
    margin: 0 0 3.906vw 21.094vw;
    top: auto;
    right: auto;
  }
  .flow-page .tab-content-box ol li .image.image04 {
    width: 54.375vw;
    margin: 0 0 6.25vw 19.219vw;
    top: auto;
    right: auto;
  }
  .flow-page .tab-content-box ol li .image.image05 {
    width: 49.063vw;
    margin: 0 0 5.469vw 20.313vw;
    top: auto;
    right: auto;
  }
  .flow-page .tab-content-box ol li .image.image06 {
    width: 55.937vw;
    margin: 0 0 5.469vw 21.094vw;
    top: auto;
    right: auto;
  }
  .flow-page .tab-content-box ol li .image.image07 {
    width: 41.875vw;
    margin: 0 0 4.688vw 26.094vw;
    top: auto;
    right: auto;
  }
  .flow-page .tab-content-box ol li .image.image08 {
    width: 51.25vw;
    margin: 0 0 7.031vw 10.156vw;
    top: auto;
    right: auto;
  }
  .flow-page .tab-content-box ol li .image.image09 {
    width: 58.75vw;
    margin: 0 0 7.031vw 13.281vw;
    top: auto;
    right: auto;
  }
  .flow-page .attention {
    margin: 0 0;
    padding: 2.344vw 3.125vw;
    width: 100%;
    max-width: 100%;
    text-align: left;
    box-sizing: border-box;
    background: #eeeeee;
  }
  .flow-page .attention h4 {
    margin: 0 0 1.563vw 0;
    line-height: 1.4em;
    font-size: 3.75vw;
    font-weight: 500;
  }
  .flow-page .attention h5 {
    margin: 0 0 1.563vw 0;
    line-height: 1.4em;
    font-size: 3.125vw;
    font-weight: normal;
  }
  .flow-page .attention p {
    margin: 0 0 2.344vw 0;
    line-height: 1.8em;
    font-size: 2.813vw;
    font-weight: normal;
  }
  
}





/* products */
.products-page {
  padding: 0 0 100px 0;
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
}
.products-page .side {
  width: 17.5%;
}
.products-page .side h3 {
  width: 100%;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  box-sizing: border-box;
  background: #004487;
  color: #fff;
  padding: 0 0 0 32px;
  line-height: 1.2em;
  font-size: 16px;
  font-weight: bold;
  position: relative;
}
.products-page .side h3::after {
  width: 23px;
  height: 23px;
  content: "";
  background: url("../images/products/icon_01.png") no-repeat center center;
  background-size: 100% 100%;
  position: absolute;
  top: 50%;
  right: 32px;
  transform: translate(0,-50%);
}
.products-page .side .search {
  margin: 0 0 25px 0;
  padding: 0 0 15px 0;
  box-sizing: border-box;
  width: 100%;
  background: #eeeeee;
}
.products-page .side .search .parts {
  padding: 10px 10px 0 10px;
}
.products-page .side .search .parts dt {
  padding: 0 0 10px 0;
  line-height: 1.4em;
  font-size: 16px;
  font-weight: bold;
  color: #333333;
}
.products-page .side .search .parts dd {
  line-height: 1.4em;
  font-size: 14px;
  font-weight: normal;
}
.products-page .side .search .parts dd .list01 {
}
.products-page .side .search .parts dd .list01 li {
  padding: 0 0 5px 0;
}
.products-page .side .search .parts dd .list01 li label {
  position: relative;
  cursor: pointer;
  padding-left: 25px;
}
.products-page .side .search .parts dd .list01 li label::before,
.products-page .side .search .parts dd .list01 li label::after {
  content: "";
  display: block; 
  border-radius: 50%;
  position: absolute;
  transform: translateY(-50%);
  top: 50%;
}
.products-page .side .search .parts dd .list01 li label::before {
  background: url("../images/products/check_01_off.png") no-repeat center center;
  background-size: 100% 100%;
  border: none;
  border-radius: 0;
  width: 21px;
  height: 21px;
  left: 0;
}
.products-page .side .search .parts dd .list01 li label::after {
  background: url("../images/products/check_01_on.png") no-repeat center center;
  background-size: 100% 100%;
  border: none;
  border-radius: 0;
  opacity: 0;
  width: 21px;
  height: 21px;
  left: 0;
}
.products-page .side .search .parts dd .list01 li input:checked + label::after {
  opacity: 1;
}
.products-page .side .search .parts dd .list01 li input {
 position: absolute;
 white-space: nowrap;
 border: 0;
 clip: rect(0 0 0 0);
 clip-path: inset(50%);
 overflow: hidden;
 height: 1px;
 width: 1px;
 margin: -1px;
 padding: 0;
}
.products-page .side .search .parts dd .list02 {
}
.products-page .side .search .parts dd .list02 li {
  padding: 0 0 5px 0;
  display: flex;
  align-items: center;
}
.products-page .side .search .parts dd .list02 li .size {
  padding: 0 5px 0 0;
  min-width: 1.6em;
}
.products-page .side .search .parts dd .list02 li .mm {
  padding: 0 0 0 5px;
}
.products-page .side .search .parts dd .list02 li .dan {
  padding: 0 0 0 5px;
}
.products-page .side .search .parts dd .list02 li .select {
  min-width: 46%;
}
.products-page .side .search .parts dd .list02 li .select select {
  min-width: 100%;
}
.products-page .side .search .parts dd .list02 li .select.wide90 {
  min-width: 90%;
}
.products-page .side .search .parts dd .list02 li .select.wide100 {
  min-width: 100%;
}

.products-page .side .search .parts dd .list03 {
  padding: 0 0 15px 0;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.products-page .side .search .parts dd .list03 li {
  padding: 0 0 5px 0;
  width: 50%;
}
.products-page .side .search .parts dd .list03 li.wide{
  padding: 0 0 5px 0;
  width: 100%;
}
.products-page .side .search .parts dd .list03 li label {
  position: relative;
  cursor: pointer;
  padding-left: 25px;
}
.products-page .side .search .parts dd .list03 li label::before,
.products-page .side .search .parts dd .list03 li label::after {
  content: "";
  display: block; 
  border-radius: 50%;
  position: absolute;
  transform: translateY(-50%);
  top: 50%;
}
.products-page .side .search .parts dd .list03 li label::before {
  background: url("../images/products/check_01_off.png") no-repeat center center;
  background-size: 100% 100%;
  border: none;
  border-radius: 0;
  width: 21px;
  height: 21px;
  left: 0;
}
.products-page .side .search .parts dd .list03 li label::after {
  background: url("../images/products/check_01_on.png") no-repeat center center;
  background-size: 100% 100%;
  border: none;
  border-radius: 0;
  opacity: 0;
  width: 21px;
  height: 21px;
  left: 0;
}
.products-page .side .search .parts dd .list03 li input:checked + label::after {
  opacity: 1;
}
.products-page .side .search .parts dd .list03 li input {
 position: absolute;
 white-space: nowrap;
 border: 0;
 clip: rect(0 0 0 0);
 clip-path: inset(50%);
 overflow: hidden;
 height: 1px;
 width: 1px;
 margin: -1px;
 padding: 0;
}
.products-page .side .search .btn-box {
}
.products-page .side .search .btn-box .btn {
  margin: 0 auto;
  padding: 0 0 0 25px;
  width: 150px;
  height: 40px;
  line-height: 1.4em;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  background: #004487;
  border: none;
  border-radius: 5px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  position: relative;
  box-sizing: border-box;
  text-decoration: none;
  transition: all 0.5s 0s;
  cursor: pointer;
}
.products-page .side .search .btn-box .btn::after {
  width: 20px;
  height: 20px;
  content: "";
  background: url("../images/products/arrow_01.png") no-repeat center center;
  background-size: 100% 100%;
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translate(0,-50%);
}
.products-page .side .search .btn-box .btn:hover {
  opacity: 0.6;
}

.products-page .side .search .btn-box .btn_clear {
  margin: 10px auto;
  padding: 0 50px 0 50px;
  width: 150px;
  height: 32px;
  line-height: 1.4em;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  background: #004487;
  border: none;
  border-radius: 5px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  position: relative;
  box-sizing: border-box;
  text-decoration: none;
  transition: all 0.5s 0s;
  cursor: pointer;
}
.products-page .side .search .btn-box .btn_clear::after {
  width: 20px;
  height: 20px;
  content: "";
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translate(0,-50%);
}
.products-page .side .search .btn-box .btn_clear:hover {
  opacity: 0.6;
}

.jiten-single-page .side .bnr {
  margin: 0 0 20px 0;
  width: 100%;
}
.products-page .main {
  width: 80%;
}
.products-page .main .head {
  margin: 0 0 25px 0;
  width: 100%;
  display: flex;
  justify-content: space-between;
}
.products-page .main .head h2 {
  margin: 0 0 0 0;
  line-height: 1.5em;
  font-size: 40px;
  font-weight: bold;
}
.products-page .main .head .right {
  display: flex;
  align-items: center;
}
.products-page .main .head .right .results {
  padding: 0 10px 0 0;
  line-height: 1.4em;
  font-size: 14px;
}
.products-page .main .head .right .results .num {
  line-height: 1.4em;
  font-size: 26px;
  font-weight: 500;
}
.products-page .main .head .right .sort {
  position: relative;
  z-index: 1;
}
.products-page .main .head .right .sort .active {
  padding: 0 40px 0 14px;
  width: fit-content;
  height: 40px;
  box-sizing: border-box;
  color: #fff;
  line-height: 1.3em;
  font-size: 14px;
  background: #004487;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  cursor: pointer;
}
.products-page .main .head .right .sort .active::after {
  width: 20px;
  height: 20px;
  content: "";
  background: url("../images/products/arrow_02.png") no-repeat center center;
  background-size: 100% 100%;
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translate(0,-50%);
}
.products-page .main .head .right .sort .pull-menu {
  position: absolute;
  top: 100%;
  right: 0;
  z-index: 1;
  overflow: hidden;
  display: none;
}
.products-page .main .head .right .sort .pull-menu a {
  padding: 0 15px 0 15px;
  width: 150px;
  height: 40px;
  box-sizing: border-box;
  color: #fff;
  line-height: 1.3em;
  font-size: 14px;
  background: #004487;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  border-bottom: 1px solid #eee;
}



.products-page .main .list {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.products-page .main .list .item {
  margin: 0 2.78% 45px 0;
  width: 22.91%;
}
.products-page .main .list .item:nth-of-type(4n) {
  margin: 0 0 45px 0;
}
.products-page .main .list .item .image {
  margin: 0 0 0 0;
}
.products-page .main .list .item .image img {
  display: block;
}
.products-page .main .list .item .image a {
  display: block;
  position: relative;
}
.products-page .main .list .item .image a .label {
  position: absolute;
  top: 0;
  right: 0;
  width: auto;
  height: 25px;
}
.products-page .main .list .item .code {
  margin: 0 0 0 0;
  line-height: 1.4em;
  font-size: 12px;
  color: #333;
}
.products-page .main .list .item .title {
  margin: 0 0 5px 0;
  line-height: 1.4em;
  font-size: 18px;
  font-weight: bold;
  color: #333;
}
.products-page .main .list .item .data {
  margin: 0 0 10px 0;
  line-height: 1.4em;
  font-size: 14px;
  color: #333;
}
.products-page .main .list .item .place {
  margin: 0 0 10px 0;
  padding: 0 15px;
  width: fit-content;
  height: 20px;
  line-height: 1.4em;
  font-size: 14px;
  font-weight: 500;
  color: #fff;
  border-radius: 5px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  position: relative;
  box-sizing: border-box;
  text-decoration: none;
  transition: all 0.5s 0s;
}
.products-page .main .list .item .place.gunma {
  background: #18a82d;
}
.products-page .main .list .item .place.saitama {
  background: #EA2040;
}
.products-page .main .list .item .place.osaka {
  background: #ff5300;
}
.products-page .main .list .item .place.aichi {
  background: #00ced1;
}
.products-page .main .list .item .place.fukuoka {
  background: #999999;
}

.products-page .main .list .item .info {
  padding: 5px;
  width: 100%;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  border: 1px dashed #cecece;
}
.products-page .main .list .item .info.single .box {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
.products-page .main .list .item .info.double .box {
  width: 50%;
  text-align: center;
}
.products-page .main .list .item .info .box .count {
  line-height: 1.5em;
  font-size: 14px;
}
.products-page .main .list .item .info .box .count .num {
  line-height: 1.5em;
  font-size: 18px;
    font-weight: bold;
}
.products-page .main .list .item .info .box .price {
  line-height: 1.5em;
  font-size: 18px;
  font-weight: bold;
  color: #ff0000;
}
.products-page .main .list .item .info .box .price .sub {
  line-height: 1.5em;
  font-size: 12px;
  font-weight: normal;
  color: #333333;
}
.products-page .main .paging {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.products-page .main .paging a {
  margin: 0 5px;
  padding: 0 8px;
  width: fit-content;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  background: #fff;
  border: 1px solid #004487;
  color: #004487;
  line-height: 1.4em;
  font-size: 16px;
  transition: all 0.5s 0s;
}
.products-page .main .paging a:hover {
  background: #004487;
  border: 1px solid #004487;
  color: #fff;
}
.products-page .main .paging .current {
  margin: 0 5px;
  padding: 0 8px;
  width: fit-content;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  background: #004487;
  border: 1px solid #004487;
  color: #fff;
  line-height: 1.4em;
  font-size: 16px;
}
.products-page .main .paging a.next {
  margin: 0 5px;
  padding: 0 8px;
  width: fit-content;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  background: #999999;
  border: 1px solid #999999;
  color: #fff;
  line-height: 1.4em;
  font-size: 16px;
  transition: all 0.5s 0s;
}
.products-page .main .paging a.next:hover {
  background: #999999;
  border: 1px solid #999999;
  color: #fff;
  opacity: 0.6;
}
.products-page .main .paging a.prev {
  margin: 0 5px;
  padding: 0 8px;
  width: fit-content;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  background: #999999;
  border: 1px solid #999999;
  color: #fff;
  line-height: 1.4em;
  font-size: 16px;
  transition: all 0.5s 0s;
}
.products-page .main .paging a.prev:hover {
  background: #999999;
  border: 1px solid #999999;
  color: #fff;
  opacity: 0.6;
}
@media only screen and (min-width: 770px) and (max-width: 1200px) {
  .products-page {
    padding: 0 0 8.333vw 0;
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
  }
  .products-page .side {
    width: 17.5%;
  }
  .products-page .side h3 {
    width: 100%;
    height: 3.333vw;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    box-sizing: border-box;
    background: #004487;
    color: #fff;
    padding: 0 0 0 2.667vw;
    line-height: 1.2em;
    font-size: 1.333vw;
    font-weight: bold;
    position: relative;
  }
  .products-page .side h3::after {
    width: 1.917vw;
    height: 1.917vw;
    content: "";
    background: url("../images/products/icon_01.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 2.667vw;
    transform: translate(0,-50%);
  }
  .products-page .side .search {
    margin: 0 0 2.083vw 0;
    padding: 0 0 1.25vw 0;
    box-sizing: border-box;
    width: 100%;
    background: #eeeeee;
  }
  .products-page .side .search .parts {
    padding: 0.833vw 0.833vw 0 0.833vw;
  }
  .products-page .side .search .parts dt {
    padding: 0 0 0.833vw 0;
    line-height: 1.4em;
    font-size: 1.333vw;
    font-weight: bold;
    color: #333333;
  }
  .products-page .side .search .parts dd {
    line-height: 1.4em;
    font-size: 1.167vw;
    font-weight: normal;
  }
  .products-page .side .search .parts dd .list01 {
  }
  .products-page .side .search .parts dd .list01 li {
    padding: 0 0 0.417vw 0;
  }
  .products-page .side .search .parts dd .list01 li label {
    position: relative;
    cursor: pointer;
    padding-left: 2.083vw;
  }
  .products-page .side .search .parts dd .list01 li label::before,
  .products-page .side .search .parts dd .list01 li label::after {
    content: "";
    display: block; 
    border-radius: 50%;
    position: absolute;
    transform: translateY(-50%);
    top: 50%;
  }
  .products-page .side .search .parts dd .list01 li label::before {
    background: url("../images/products/check_01_off.png") no-repeat center center;
    background-size: 100% 100%;
    border: none;
    border-radius: 0;
    width: 1.75vw;
    height: 1.75vw;
    left: 0;
  }
  .products-page .side .search .parts dd .list01 li label::after {
    background: url("../images/products/check_01_on.png") no-repeat center center;
    background-size: 100% 100%;
    border: none;
    border-radius: 0;
    opacity: 0;
    width: 1.75vw;
    height: 1.75vw;
    left: 0;
  }
  .products-page .side .search .parts dd .list01 li input:checked + label::after {
    opacity: 1;
  }
  .products-page .side .search .parts dd .list01 li input {
   position: absolute;
   white-space: nowrap;
   border: 0;
   clip: rect(0 0 0 0);
   clip-path: inset(50%);
   overflow: hidden;
   height: 0.083vw;
   width: 0.083vw;
   margin: -0.083vw;
   padding: 0;
  }
  .products-page .side .search .parts dd .list02 {
  }
  .products-page .side .search .parts dd .list02 li {
    padding: 0 0 0.417vw 0;
    display: flex;
    align-items: center;
  }
  .products-page .side .search .parts dd .list02 li .size {
    padding: 0 0.417vw 0 0;
  }
  .products-page .side .search .parts dd .list02 li .mm {
    padding: 0 0 0 0.417vw;
  }
  .products-page .side .search .parts dd .list02 li .dan {
    padding: 0 0 0 0.417vw;
  }
  .products-page .side .search .parts dd .list03 {
    padding: 0 0 1.25vw 0;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
  }
  .products-page .side .search .parts dd .list03 li {
    padding: 0 0 0.417vw 0;
    width: 50%;
  }
  .products-page .side .search .parts dd .list03 li label {
    position: relative;
    cursor: pointer;
    padding-left: 2.083vw;
  }
  .products-page .side .search .parts dd .list03 li label::before,
  .products-page .side .search .parts dd .list03 li label::after {
    content: "";
    display: block; 
    border-radius: 50%;
    position: absolute;
    transform: translateY(-50%);
    top: 50%;
  }
  .products-page .side .search .parts dd .list03 li label::before {
    background: url("../images/products/check_01_off.png") no-repeat center center;
    background-size: 100% 100%;
    border: none;
    border-radius: 0;
    width: 1.75vw;
    height: 1.75vw;
    left: 0;
  }
  .products-page .side .search .parts dd .list03 li label::after {
    background: url("../images/products/check_01_on.png") no-repeat center center;
    background-size: 100% 100%;
    border: none;
    border-radius: 0;
    opacity: 0;
    width: 1.75vw;
    height: 1.75vw;
    left: 0;
  }
  .products-page .side .search .parts dd .list03 li input:checked + label::after {
    opacity: 1;
  }
  .products-page .side .search .parts dd .list03 li input {
   position: absolute;
   white-space: nowrap;
   border: 0;
   clip: rect(0 0 0 0);
   clip-path: inset(50%);
   overflow: hidden;
   height: 0.083vw;
   width: 0.083vw;
   margin: -0.083vw;
   padding: 0;
  }
  .products-page .side .search .btn-box {
  }
  .products-page .side .search .btn-box .btn {
    margin: 0 auto;
    padding: 0 0 0 2.083vw;
    width: 12.5vw;
    height: 3.333vw;
    line-height: 1.4em;
    font-size: 1.333vw;
    font-weight: bold;
    color: #fff;
    background: #004487;
    border: none;
    border-radius: 0.417vw;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    position: relative;
    box-sizing: border-box;
    text-decoration: none;
    transition: all 0.5s 0s;
    cursor: pointer;
  }
  .products-page .side .search .btn-box .btn::after {
    width: 1.667vw;
    height: 1.667vw;
    content: "";
    background: url("../images/products/arrow_01.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 0.833vw;
    transform: translate(0,-50%);
  }
  .products-page .side .search .btn-box .btn:hover {
    opacity: 0.6;
  }
  .jiten-single-page .side .bnr {
    margin: 0 0 1.667vw 0;
    width: 100%;
  }
  .products-page .main {
    width: 80%;
  }
  .products-page .main .head {
    margin: 0 0 2.083vw 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
  }
  .products-page .main .head h2 {
    margin: 0 0 0 0;
    line-height: 1.5em;
    font-size: 3.333vw;
    font-weight: bold;
  }
  .products-page .main .head .right {
    display: flex;
    align-items: center;
  }
  .products-page .main .head .right .results {
    padding: 0 0.833vw 0 0;
    line-height: 1.4em;
    font-size: 1.167vw;
  }
  .products-page .main .head .right .results .num {
    line-height: 1.4em;
    font-size: 2.167vw;
    font-weight: 500;
  }
  .products-page .main .head .right .sort {
    position: relative;
    z-index: 1;
  }
  .products-page .main .head .right .sort .active {
    padding: 0 3.333vw 0 1.167vw;
    width: fit-content;
    height: 3.333vw;
    box-sizing: border-box;
    color: #fff;
    line-height: 1.3em;
    font-size: 1.167vw;
    background: #004487;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    cursor: pointer;
  }
  .products-page .main .head .right .sort .active::after {
    width: 1.667vw;
    height: 1.667vw;
    content: "";
    background: url("../images/products/arrow_02.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 0.833vw;
    transform: translate(0,-50%);
  }
  .products-page .main .head .right .sort .pull-menu {
    position: absolute;
    top: 100%;
    right: 0;
    z-index: 1;
    overflow: hidden;
    display: none;
  }
  .products-page .main .head .right .sort .pull-menu a {
    padding: 0 1.25vw 0 1.25vw;
    width: 12.5vw;
    height: 3.333vw;
    box-sizing: border-box;
    color: #fff;
    line-height: 1.3em;
    font-size: 1.167vw;
    background: #004487;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    border-bottom: 1px solid #eee;
  }



  .products-page .main .list {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
  }
  .products-page .main .list .item {
    margin: 0 2.78% 45px 0;
    width: 22.91%;
  }
  .products-page .main .list .item:nth-of-type(4n) {
    margin: 0 0 3.75vw 0;
  }
  .products-page .main .list .item .image {
    margin: 0 0 0 0;
  }
  .products-page .main .list .item .image img {
    display: block;
  }
  .products-page .main .list .item .image a {
    display: block;
    position: relative;
  }
  .products-page .main .list .item .image a .label {
    position: absolute;
    top: 0;
    right: 0;
    width: auto;
    height: 2.083vw;
  }
  .products-page .main .list .item .code {
    margin: 0 0 0 0;
    line-height: 1.4em;
    font-size: 1vw;
    color: #333;
  }
  .products-page .main .list .item .title {
    margin: 0 0 0.417vw 0;
    line-height: 1.4em;
    font-size: 1.5vw;
    font-weight: bold;
    color: #333;
  }
  .products-page .main .list .item .data {
    margin: 0 0 0.833vw 0;
    line-height: 1.4em;
    font-size: 1.167vw;
    color: #333;
  }
  .products-page .main .list .item .place {
    margin: 0 0 0.833vw 0;
    padding: 0 1.25vw;
    width: fit-content;
    height: 1.667vw;
    line-height: 1.4em;
    font-size: 1.167vw;
    font-weight: 500;
    color: #fff;
    border-radius: 0.417vw;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    position: relative;
    box-sizing: border-box;
    text-decoration: none;
    transition: all 0.5s 0s;
  }
  .products-page .main .list .item .place.gunma {
    background: #18a82d;
  }
  .products-page .main .list .item .place.saitama {
    background: #EA2040;
  }
  .products-page .main .list .item .place.osaka {
    background: #ff5300;
  }
  .products-page .main .list .item .place.aichi {
    background: #00ced1;
  }
  .products-page .main .list .item .place.fukuoka {
    background: #999999;
  }
  .products-page .main .list .item .info {
    padding: 0.417vw;
    width: 100%;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    border: 1px dashed #cecece;
  }
  .products-page .main .list .item .info.single .box {
    width: 100%;
    display: flex;
    justify-content: space-between;
  }
  .products-page .main .list .item .info.double .box {
    width: 50%;
    text-align: center;
  }
  .products-page .main .list .item .info .box .count {
    line-height: 1.5em;
    font-size: 1.167vw;
  }
  .products-page .main .list .item .info .box .count .num {
    line-height: 1.5em;
    font-size: 1.5vw;
    font-weight: bold;
  }
  .products-page .main .list .item .info .box .price {
    line-height: 1.5em;
    font-size: 1.5vw;
    font-weight: bold;
    color: #ff0000;
  }
  .products-page .main .list .item .info .box .price .sub {
    line-height: 1.5em;
    font-size: 1vw;
    font-weight: normal;
    color: #333333;
  }
  .products-page .main .paging {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .products-page .main .paging a {
    margin: 0 0.417vw;
    padding: 0 0.667vw;
    width: fit-content;
    height: 2.5vw;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    background: #fff;
    border: 1px solid #004487;
    color: #004487;
    line-height: 1.4em;
    font-size: 1.333vw;
    transition: all 0.5s 0s;
  }
  .products-page .main .paging a:hover {
    background: #004487;
    border: 1px solid #004487;
    color: #fff;
  }
  .products-page .main .paging .current {
    margin: 0 0.417vw;
    padding: 0 0.667vw;
    width: fit-content;
    height: 2.5vw;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    background: #004487;
    border: 1px solid #004487;
    color: #fff;
    line-height: 1.4em;
    font-size: 1.333vw;
  }
  .products-page .main .paging a.next {
    margin: 0 0.417vw;
    padding: 0 0.667vw;
    width: fit-content;
    height: 2.5vw;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    background: #999999;
    border: 1px solid #999999;
    color: #fff;
    line-height: 1.4em;
    font-size: 1.333vw;
    transition: all 0.5s 0s;
  }
  .products-page .main .paging a.next:hover {
    background: #999999;
    border: 1px solid #999999;
    color: #fff;
    opacity: 0.6;
  }
  .products-page .main .paging a.prev {
    margin: 0 0.417vw;
    padding: 0 0.667vw;
    width: fit-content;
    height: 2.5vw;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    background: #999999;
    border: 1px solid #999999;
    color: #fff;
    line-height: 1.4em;
    font-size: 1.333vw;
    transition: all 0.5s 0s;
  }
  .products-page .main .paging a.prev:hover {
    background: #999999;
    border: 1px solid #999999;
    color: #fff;
    opacity: 0.6;
  }
}
@media only screen and (max-width: 769px) {
  .products-page {
    padding: 0 0 15.625vw 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
  .products-page .side {
    display: none;
  }
  .products-page .side h3 {
    width: 100%;
    height: 6.25vw;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    box-sizing: border-box;
    background: #004487;
    color: #fff;
    padding: 0 0 0 5vw;
    line-height: 1.2em;
    font-size: 2.5vw;
    font-weight: bold;
    position: relative;
  }
  .products-page .side h3::after {
    width: 3.594vw;
    height: 3.594vw;
    content: "";
    background: url("../images/products/icon_01.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 5vw;
    transform: translate(0,-50%);
  }
  .products-page .side .search {
    margin: 0 0 3.906vw 0;
    padding: 0 0 2.344vw 0;
    box-sizing: border-box;
    width: 100%;
    background: #eeeeee;
  }
  .products-page .side .search .parts {
    padding: 1.563vw 1.563vw 0 1.563vw;
  }
  .products-page .side .search .parts dt {
    padding: 0 0 1.563vw 0;
    line-height: 1.4em;
    font-size: 2.5vw;
    font-weight: bold;
    color: #333333;
  }
  .products-page .side .search .parts dd {
    line-height: 1.4em;
    font-size: 2.188vw;
    font-weight: normal;
  }
  .products-page .side .search .parts dd .list01 {
  }
  .products-page .side .search .parts dd .list01 li {
    padding: 0 0 0.781vw 0;
  }
  .products-page .side .search .parts dd .list01 li label {
    position: relative;
    cursor: pointer;
    padding-left: 3.906vw;
  }
  .products-page .side .search .parts dd .list01 li label::before,
  .products-page .side .search .parts dd .list01 li label::after {
    content: "";
    display: block; 
    border-radius: 50%;
    position: absolute;
    transform: translateY(-50%);
    top: 50%;
  }
  .products-page .side .search .parts dd .list01 li label::before {
    background: url("../images/products/check_01_off.png") no-repeat center center;
    background-size: 100% 100%;
    border: none;
    border-radius: 0;
    width: 3.281vw;
    height: 3.281vw;
    left: 0;
  }
  .products-page .side .search .parts dd .list01 li label::after {
    background: url("../images/products/check_01_on.png") no-repeat center center;
    background-size: 100% 100%;
    border: none;
    border-radius: 0;
    opacity: 0;
    width: 3.281vw;
    height: 3.281vw;
    left: 0;
  }
  .products-page .side .search .parts dd .list01 li input:checked + label::after {
    opacity: 1;
  }
  .products-page .side .search .parts dd .list01 li input {
   position: absolute;
   white-space: nowrap;
   border: 0;
   clip: rect(0 0 0 0);
   clip-path: inset(50%);
   overflow: hidden;
   height: 0.156vw;
   width: 0.156vw;
   margin: -0.156vw;
   padding: 0;
  }
  .products-page .side .search .parts dd .list02 {
  }
  .products-page .side .search .parts dd .list02 li {
    padding: 0 0 0.781vw 0;
    display: flex;
    align-items: center;
  }
  .products-page .side .search .parts dd .list02 li .size {
    padding: 0 0.781vw 0 0;
  }
  .products-page .side .search .parts dd .list02 li .mm {
    padding: 0 0 0 0.781vw;
  }
  .products-page .side .search .parts dd .list02 li .dan {
    padding: 0 0 0 0.781vw;
  }
  .products-page .side .search .parts dd .list03 {
    padding: 0 0 2.344vw 0;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
  }
  .products-page .side .search .parts dd .list03 li {
    padding: 0 0 0.781vw 0;
    width: 50%;
  }
  .products-page .side .search .parts dd .list03 li label {
    position: relative;
    cursor: pointer;
    padding-left: 3.906vw;
  }
  .products-page .side .search .parts dd .list03 li label::before,
  .products-page .side .search .parts dd .list03 li label::after {
    content: "";
    display: block; 
    border-radius: 50%;
    position: absolute;
    transform: translateY(-50%);
    top: 50%;
  }
  .products-page .side .search .parts dd .list03 li label::before {
    background: url("../images/products/check_01_off.png") no-repeat center center;
    background-size: 100% 100%;
    border: none;
    border-radius: 0;
    width: 3.281vw;
    height: 3.281vw;
    left: 0;
  }
  .products-page .side .search .parts dd .list03 li label::after {
    background: url("../images/products/check_01_on.png") no-repeat center center;
    background-size: 100% 100%;
    border: none;
    border-radius: 0;
    opacity: 0;
    width: 3.281vw;
    height: 3.281vw;
    left: 0;
  }
  .products-page .side .search .parts dd .list03 li input:checked + label::after {
    opacity: 1;
  }
  .products-page .side .search .parts dd .list03 li input {
   position: absolute;
   white-space: nowrap;
   border: 0;
   clip: rect(0 0 0 0);
   clip-path: inset(50%);
   overflow: hidden;
   height: 0.156vw;
   width: 0.156vw;
   margin: -0.156vw;
   padding: 0;
  }
  .products-page .side .search .btn-box {
  }
  .products-page .side .search .btn-box .btn {
    margin: 0 auto;
    padding: 0 0 0 3.906vw;
    width: 23.438vw;
    height: 6.25vw;
    line-height: 1.4em;
    font-size: 2.5vw;
    font-weight: bold;
    color: #fff;
    background: #004487;
    border: none;
    border-radius: 0.781vw;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    position: relative;
    box-sizing: border-box;
    text-decoration: none;
    transition: all 0.5s 0s;
    cursor: pointer;
  }
  .products-page .side .search .btn-box .btn::after {
    width: 3.125vw;
    height: 3.125vw;
    content: "";
    background: url("../images/products/arrow_01.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 1.563vw;
    transform: translate(0,-50%);
  }
  .products-page .side .search .btn-box .btn:hover {
    opacity: 0.6;
  }
  .jiten-single-page .side .bnr {
    margin: 0 0 3.125vw 0;
    width: 100%;
  }
  .products-page .main {
    width: 100%;
  }
  .products-page .main .head {
    margin: 0 0 0 0;
    width: 100%;
    height: 12.5vw;
    background: #eeeeee;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .products-page .main .head h2 {
    margin: 0 0 0 5.469vw;
    line-height: 1.5em;
    font-size: 4.063vw;
    font-weight: bold;
  }
  .products-page .main .head .right {
    display: flex;
    align-items: center;
  }
  .products-page .main .head .right .results {
    padding: 0 3.125vw 0 0;
    line-height: 1.4em;
    font-size: 2.813vw;
  }
  .products-page .main .head .right .results .num {
    line-height: 1.4em;
    font-size: 3.75vw;
    font-weight: 500;
  }
  .products-page .main .head .right .sort {
    position: relative;
    z-index: 1000;
  }
  .products-page .main .head .right .sort .active {
    padding: 0 3.125vw 0 7.031vw;
    width: fit-content;
    height: 6.25vw;
    box-sizing: border-box;
    color: #333;
    line-height: 1.3em;
    font-size: 3.125vw;
    background: none;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    cursor: pointer;
  }
  .products-page .main .head .right .sort .active::after {
    width: 5.781vw;
    height: 5vw;
    content: "";
    background: url("../images/products/icon_02.png") no-repeat center center;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    left: 0;
    right: none;
    transform: translate(0,-50%);
  }
  .products-page .main .head .right .sort .pull-menu {
    width: 100%;
    height: 100vh;
    background: #fff;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 10000;
    overflow: hidden;
    display: none;
  }
  .products-page .main .head .right .sort .pull-menu .js-sort-close {
    width: 19.375vw;
    position: absolute;
    top: 0;
    right: 0;
  }
  .products-page .main .head .right .sort .pull-menu h3 {
    padding: 5.469vw 0 0 1.875vw;
    height: 19.063vw;
    color: #000;
    color: rgba(33, 33, 31, 1);
    line-height: 1.3em;
    font-size: 5.625vw;
    font-weight: bold;
    box-sizing: border-box;
  }
  .products-page .main .head .right .sort .pull-menu a {
    margin: 1vw 0 7.813vw 1.875vw;
    padding: 0 0 0 9.375vw;
    width: auto;
    height: auto;
    box-sizing: border-box;
    color: #999;
    line-height: 1.3em;
    font-size: 3.75vw;
    background: none;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    position: relative;
    border-bottom: none;
  }
  .products-page .main .head .right .sort .pull-menu a.on {
    color: #333;
  }
  .products-page .main .head .right .sort .pull-menu a::before {
    width: 6.25vw;
    height: 6.25vw;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background: url("../images/products/icon_02_off.png") no-repeat center center;
    background-size: 100% 100%;
  }
  .products-page .main .head .right .sort .pull-menu a.on::before {
    width: 6.25vw;
    height: 6.25vw;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background: url("../images/products/icon_02_on.png") no-repeat center center;
    background-size: 100% 100%;
  }
  .products-page .main .head .right .sort .pull-menu .btn-box {
    width: 100%;
  }
  .products-page .main .head .right .sort .pull-menu .btn-box .btn {
    width: 100%;
    height: 15.625vw;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: #1f2121;
    line-height: 1.2em;
    font-size: 4.688vw;
    font-weight: bold;
    border: none;
    -webkit-appearance: none;
  }

  .products-page .main .list {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
  }
  .products-page .main .list .item {
    margin: 0 0 4.688vw 0;
    width: 50%;
  }
  .products-page .main .list .item:nth-of-type(4n) {
    margin: 0 0 4.688vw 0;
  }
  .products-page .main .list .item .image {
    margin: 0 0 1.25vw 0;
  }
  .products-page .main .list .item .image img {
    display: block;
    width: 100%;
  }
  .products-page .main .list .item .image a {
    display: block;
    position: relative;
  }
  .products-page .main .list .item .image a .label {
    position: absolute;
    top: 0;
    right: 0;
    width: auto;
    height: 6.875vw;
  }
  .products-page .main .list .item .code {
    margin: 0 3.125vw 0.781vw 3.125vw;
    line-height: 1.4em;
    font-size: 2.813vw;
    color: #333;
  }
  .products-page .main .list .item .title {
    margin: 0 3.125vw 0.781vw 3.125vw;
    line-height: 1.4em;
    font-size: 3.75vw;
    font-weight: bold;
    color: #333;
  }
  .products-page .main .list .item .data {
    margin: 0 3.125vw 1.563vw 3.125vw;
    line-height: 1.4em;
    font-size: 2.813vw;
    color: #333;
  }
  .products-page .main .list .item .place {
    margin: 0 3.125vw 1.563vw 3.125vw;
    padding: 0 2.344vw;
    width: fit-content;
    height: 4.375vw;
    line-height: 1.4em;
    font-size: 2.813vw;
    font-weight: 500;
    color: #fff;
    border-radius: 0.781vw;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    position: relative;
    box-sizing: border-box;
    text-decoration: none;
    transition: all 0.5s 0s;
  }
  .products-page .main .list .item .place.gunma {
    background: #18a82d;
  }
  .products-page .main .list .item .place.saitama {
    background: #EA2040;
  }
  .products-page .main .list .item .place.osaka {
    background: #ff5300;
  }
  .products-page .main .list .item .place.aichi {
    background: #00ced1;
  }
  .products-page .main .list .item .place.fukuoka {
    background: #999999;
  }
  .products-page .main .list .item .info {
    margin: 0 3.125vw;
    padding: 0.781vw;
    width: calc( 100% - 6.25vw );
    box-sizing: border-box;
    display: flex;
    align-items: center;
    border: 1px dashed #cecece;
  }
  .products-page .main .list .item .info.single .box {
    width: 100%;
    display: flex;
    justify-content: space-between;
  }
  .products-page .main .list .item .info.double .box {
    width: 50%;
    text-align: center;
  }
  .products-page .main .list .item .info .box .count {
    line-height: 1.5em;
    font-size: 2.813vw;
  }
  .products-page .main .list .item .info .box .count .num {
    line-height: 1.5em;
    font-size: 3.75vw;
    font-weight: bold;
  }
  .products-page .main .list .item .info .box .price {
    line-height: 1.5em;
    font-size: 3.594vw;
    font-weight: bold;
    color: #ff0000;
  }
  .products-page .main .list .item .info .box .price .sub {
    line-height: 1.5em;
    font-size: 2.188vw;
    font-weight: normal;
    color: #333333;
  }
  .products-page .main .paging {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .products-page .main .paging a {
    margin: 0 0.781vw;
    padding: 0 1.25vw;
    width: fit-content;
    height: 4.688vw;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    background: #fff;
    border: 1px solid #004487;
    color: #004487;
    line-height: 1.4em;
    font-size: 2.5vw;
    transition: all 0.5s 0s;
  }
  .products-page .main .paging a:hover {
    background: #004487;
    border: 1px solid #004487;
    color: #fff;
  }
  .products-page .main .paging .current {
    margin: 0 0.781vw;
    padding: 0 1.25vw;
    width: fit-content;
    height: 4.688vw;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    background: #004487;
    border: 1px solid #004487;
    color: #fff;
    line-height: 1.4em;
    font-size: 2.5vw;
  }
  .products-page .main .paging a.next {
    margin: 0 0.781vw;
    padding: 0 1.25vw;
    width: fit-content;
    height: 4.688vw;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    background: #999999;
    border: 1px solid #999999;
    color: #fff;
    line-height: 1.4em;
    font-size: 2.5vw;
    transition: all 0.5s 0s;
  }
  .products-page .main .paging a.next:hover {
    background: #999999;
    border: 1px solid #999999;
    color: #fff;
    opacity: 0.6;
  }
  .products-page .main .paging a.prev {
    margin: 0 0.781vw;
    padding: 0 1.25vw;
    width: fit-content;
    height: 4.688vw;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    background: #999999;
    border: 1px solid #999999;
    color: #fff;
    line-height: 1.4em;
    font-size: 2.5vw;
    transition: all 0.5s 0s;
  }
  .products-page .main .paging a.prev:hover {
    background: #999999;
    border: 1px solid #999999;
    color: #fff;
    opacity: 0.6;
  }

}






/* products single */
.products-single-page {
  width: 100%;
  overflow: hidden;
}
.products-single-page img {
  width: 100%;
  display: block;
}
.products-single-page .product-slider-wrap {
  margin: 0 0 30px 0;
  width: 52.91%;
  width: 635px;
  float: left;
}
.products-single-page .product-slider-wrap .product-slider {
  margin: 0 17px;
  width: calc( 100% - 34px );
}
.products-single-page .product-slider-wrap .product-thumb-slider .image {
  position: relative;
}
.products-single-page .product-slider-wrap .product-thumb-slider .image.active::after {
  width: 100%;
  height: 100%;
  border: 8px solid #004487 !important;
  border-radius: 13px;
  box-sizing: border-box;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

.products-single-page .product-slider-wrap .product-thumb-slider {
  display: grid;
  grid-template-columns: repeat(5, 1fr); /* 1行5枚 */
  gap: 10px;
  margin-top: 20px;
}
.products-single-page .product-slider-wrap .product-thumb-slider img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 13px;
  box-sizing: border-box;
}
.thumbnail-list img {
  width: 100%;
  height: auto;
  cursor: pointer;
  opacity: 1;
  transition: opacity 0.3s ease;
  object-fit: cover;
}
.products-single-page .detail {
  margin: 0 6.5% 0 0;
  width: 37.91%;
  float: right;
}
.products-single-page .detail .code {
  margin: 0 0 15px 0;
  line-height: 1.4em;
  font-size: 18px;
  font-weight: normal;
}
.products-single-page .detail h2 {
  margin: 0 0 15px 0;
  line-height: 1.4em;
  font-size: 30px;
  font-weight: bold;
}
.products-single-page .detail .price-box {
  margin: 0 0 20px 0;
  width: 100%;
  display: flex;
}
.products-single-page .detail .price-box dt {
  padding: 13px 5px 0 0;
  line-height: 1.4em;
  font-size: 16px;
  font-weight: normal;
}
.products-single-page .detail .price-box dd {
}
.products-single-page .detail .price-box dd .sub {
  line-height: 1.4em;
  font-size: 20px;
  font-weight: normal;
}
.products-single-page .detail .price-box dd .tax {
  line-height: 1.4em;
  font-size: 16px;
  font-weight: normal;
}
.products-single-page .detail .price-box dd .price {
  line-height: 1.4em;
  font-size: 30px;
  font-weight: bold;
  color: #ff0000;
}
.products-single-page .detail .price-box dd .price .tax {
  line-height: 1.4em;
  font-size: 18px;
  font-weight: bold;
  color: #ff0000;
}
.products-single-page .detail .data-box {
  margin: 0 0 30px 0;
  width: 100%;
}
.products-single-page .detail .data-box table {
  width: 100%;
}
.products-single-page .detail .data-box table th {
  padding: 6px 0 6px 25px;
  width: 160px;
  box-sizing: border-box;
  line-height: 1.6em;
  font-size: 14px;
  font-weight: normal;
  vertical-align: middle;
  border-top: 1px dotted #cccccc;
}
.products-single-page .detail .data-box table tr:nth-of-type(1) th {
  border-top: none;
}
.products-single-page .detail .data-box table td {
  padding: 6px 0 6px 0;
  line-height: 1.6em;
  font-size: 14px;
  font-weight: normal;
  border-top: 1px dotted #cccccc;
}
.products-single-page .detail .data-box table tr:nth-of-type(1) td {
  border-top: none;
}
.products-single-page .detail .condition-box {
  margin: 0 0 30px 0;
  display: flex;
}
.products-single-page .detail .condition-box .label {
  padding: 0 0 0 7px;
  width: 80px;
  height: 50px;
  box-sizing: border-box;
  background: #333333;
  color: #fff;
  line-height: 1.2em;
  font-size: 16px;
  font-weight: normal;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  position: relative;
}
.products-single-page .detail .condition-box .label .question {
  width: 22px;
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translate(0,-50%);
}
.products-single-page .detail .condition-box .state {
  display: flex;
}
.products-single-page .detail .condition-box .state .rank {
  width: 50px;
  height: 50px;
  line-height: 1.3em;
  font-size: 26px;
  font-weight: bold;
  color: #fff;
  background: #b2c7db;
  display: flex;
  align-items: center;
  justify-content: center;
}
.products-single-page .detail .condition-box .state .rank.on {
  line-height: 1.3em;
  font-size: 36px;
  background: #004487;
}













.products-single-page .info {
  width: 52.91%;
  float: left;
}
.products-single-page .info .bnr {
  margin: 0 0 30px 0;
}
.products-single-page .info .movie {
  margin: 0 0 40px 0;
  width: 100%;
  aspect-ratio: 16 / 9;
}
.products-single-page .info .movie iframe {
  width: 100%;
  height: 100%;
}
.products-single-page .info .review {
  margin: 0 0 0 0;
  padding: 0 0 45px 0;
}
.products-single-page .info .review h3 {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  line-height: 1.4em;
  font-size: 24px;
  font-weight: bold;
}
.products-single-page .info .review .item {
  margin: 0 0 0 0;
  padding: 13px 0;
  width: 100%;
  border-bottom: 1px dotted #cccccc;
}
.products-single-page .info .review .item .post {
  margin: 0 0 0 0;
  padding: 0 0 13px 0;
  line-height: 1.4em;
  font-size: 16px;
}
.products-single-page .info .review .item .comment {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  line-height: 1.4em;
  font-size: 16px;
}
.products-single-page .detail .place-box {
  margin: 0 0 30px 0;
  width: 100%;
  max-width: 454px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.products-single-page .detail .place-box.gunma {
  background: #18a82d;
}
.products-single-page .detail .place-box.saitama {
  background: #EA2040;
}
.products-single-page .detail .place-box.osaka {
  background: #ff5300;
}
.products-single-page .detail .place-box.aichi {
  background: #00ced1;
}
.products-single-page .detail .place-box.fukuoka {
  background: #999999;
}


.products-single-page .detail .place-box dt {
  padding: 0 0 0 9px;
  width: 86px;
  box-sizing: border-box;
  line-height: 1.4em;
  font-size: 14px;
  font-weight: bold;
  color: #fff;
}
.products-single-page .detail .place-box dd {
  padding: 0 80px 0 0;
  width: calc( 100% - 86px );
  box-sizing: border-box;
  color: #fff;
  position: relative;
  line-height: 1.4em;
  font-size: 22px;
  font-weight: bold;
}
.products-single-page .detail .place-box dd .map {
  width: 58px;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translate(0,-50%);
}
.products-single-page .detail .count-box {
  margin: 0 0 20px 0;
  width: 100%;
  max-width: 454px;
  display: flex;
  justify-content: space-between;
}
.products-single-page .detail .count-box .left {
  width: 61.67%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.products-single-page .detail .count-box .left .stock {
  margin: 0 0 10px 0;
  width: 68%;
  height: 52px;
  box-sizing: border-box;
  border: 1px solid #004487;
  display: flex;
  justify-content: space-between;
}
.products-single-page .detail .count-box .left .stock dt {
  width: 60px;
  height: 51px;
  line-height: 1.2em;
  font-size: 14px;
  box-sizing: border-box;
  color: #fff;
  background: #004487;
  display: flex;
  align-items: center;
  justify-content: center;
}
.products-single-page .detail .count-box .left .stock dd {
/*  width: calc( 100% -70px );
*/
  width: 63%;
  height: 50px;
  line-height: 1.2em;
  font-size: 26px;
  font-weight: bold;
  box-sizing: border-box;
  color: #333;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: left;
  margin: 0 0 0 10px;
}
.products-single-page .detail .count-box .left .stock dd .sub {
  line-height: 1.2em;
  font-size: 16px;
  font-weight: bold;
  padding-left: 6px;
  padding-right: 6px;
  padding-top: 7px;
}
.products-single-page .detail .count-box .left .number {
  margin: 0 0 10px 0;
  width: 30%;
  height: 52px;
  box-sizing: border-box;
}
.products-single-page .detail .count-box .left .number input {
  width: 100%;
  height: 52px;
  line-height: 1.2em;
  font-size: 26px;
  font-weight: bold;
  text-align: center;
  box-sizing: border-box;
  border: 1px solid #004487;
}
.products-single-page .detail .count-box .right {
  width: 33.04%;
}
.products-single-page .detail .count-box .right .bnr {
  margin: 0 0 2px 0;
}
.products-single-page .detail .count-box .right .contact-link {
}
.products-single-page .detail .count-box .right .contact-link a {
  color: #fff;
  text-decoration: none;
  background: #333333;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  box-sizing: border-box;
  padding: 0 0 0 6px;
  height: 30px;
  line-height: 1.3em;
  font-size: 12px;
  border-radius: 3px;
  transition: all 0.4s 0s;
}
.products-single-page .detail .count-box .right .contact-link a:hover {
  opacity: 0.6;
}
.products-single-page .detail .attention-box01 {
  margin: 0 0 20px 0;
  width: 100%;
  max-width: 454px;
  box-sizing: border-box;
  border: 1px solid #333333;
}
.products-single-page .detail .attention-box01 dt {
  margin: 0 0 0 0;
  width: 100%;
  height: 30px;
  background: #fff;
  text-align: center;
  line-height: 1.2em;
  font-size: 17px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.products-single-page .detail .attention-box01 dd {
  padding: 5px 10px;
  background: #333;
  color: #fff;
  text-align: left;
  line-height: 1.6em;
  font-size: 16px;
}
.products-single-page .detail .attention-box01 dd strong {
  line-height: 1.6em;
  font-size: 18px;
}
.products-single-page .detail .attention-box02 {
  margin: 0 0 20px 0;
  width: 100%;
  max-width: 454px;
  box-sizing: border-box;
  border: 1px solid #333333;
}
.products-single-page .detail .attention-box02 dt {
  margin: 0 0 0 0;
  width: 100%;
  height: 40px;
  background: #333;
  color: #fff;
  text-align: center;
  line-height: 1.2em;
  font-size: 22px;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.products-single-page .detail .attention-box02 dt::before {
  width: 35px;
  height: 31px;
  content: "";
  background: url("../images/products/icon_03.png") no-repeat center center;
  background-size: 100% 100%;
  display: inline-block;
  margin: 0 10px 0 9px;
}
.products-single-page .detail .attention-box02 dd {
  padding: 5px 10px;
  background: #fff;
  color: #333;
  text-align: left;
  line-height: 1.6em;
  font-size: 16px;
}
.products-single-page .detail .attention-box03 {
  margin: 0 0 20px 0;
  width: 100%;
  max-width: 454px;
  box-sizing: border-box;
  border: 1px solid #333333;
}
.products-single-page .detail .attention-box03 dt {
  margin: 0 0 0 0;
  width: 100%;
  height: 40px;
  background: #333;
  color: #fff;
  text-align: center;
  line-height: 1.2em;
  font-size: 22px;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.products-single-page .detail .attention-box03 dt::before {
  width: 51px;
  height: 33px;
  content: "";
  background: url("../images/products/icon_04.png") no-repeat center center;
  background-size: 100% 100%;
  display: inline-block;
  margin: 0 10px 0 9px;
}
.products-single-page .detail .attention-box03 dd {
  padding: 20px 10px 5px;
  background: #fff;
  color: #333;
  text-align: left;
  line-height: 1.6em;
  font-size: 16px;
}
.products-single-page .detail .attention-box03 dd .box {
  margin: 0 0 10px 0;
  display: flex;
}
.products-single-page .detail .attention-box03 dd .box .text {
  width: 80px;
  text-align: center;
  line-height: 1.5em;
  font-size: 22px;
  font-weight: bold;
}
.products-single-page .detail .attention-box03 dd .box .text .num {
  line-height: 1.5em;
  font-size: 44px;
  font-weight: bold;
}
.products-single-page .detail .attention-box03 dd .box .image01 {
  max-width: 277px;
}
.products-single-page .detail .attention-box03 dd .box .image02 {
  max-width: 241px;
}






.products-single-page .recommend-products {
  padding: 0 0 20px 0;
  width: 100%;
  clear: both;
}
.products-single-page .recommend-products h3 {
  line-height: 1.5em;
  font-size: 24px;
  font-weight: bold;
  margin: 0 0 15px 0;
}
.products-single-page .recommend-products .recommend-slider {
  margin: 0 20px;
  width: calc( 100% - 40px );
}
.products-single-page .recommend-products .recommend-slider .item {
}
.products-single-page .recommend-products .recommend-slider .item .image {
  margin: 0 20px 5px;
}
.products-single-page .recommend-products .recommend-slider .item .image a {
  display: block;
  position: relative;
}
.products-single-page .recommend-products .recommend-slider .item .image a .place {
  width: 100%;
  height: 25px;
  color: #fff;
  text-decoration: none;
  line-height: 1.2em;
  font-size: 14px;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
}
.products-single-page .recommend-products .recommend-slider .item .image a .place.osaka {
  background: rgba(239,114,22,0.8);
}
.products-single-page .recommend-products .recommend-slider .item .image a .place.gunma {
  background: rgba(24,168,45,0.8);
}
.products-single-page .recommend-products .recommend-slider .item .code {
  margin: 0 20px 5px;
  line-height: 1.2em;
  font-size: 12px;
}
.products-single-page .recommend-products .recommend-slider .item .name {
  margin: 0 20px 5px;
  line-height: 1.2em;
  font-size: 14px;
  font-weight: bold;
}
.products-single-page .recommend-products .recommend-slider .item .data {
  margin: 0 20px 5px;
  line-height: 1.2em;
  font-size: 12px;
}
.products-single-page .recommend-products .recommend-slider .item .price {
  margin: 0 20px 0;
  line-height: 1.2em;
  font-size: 14px;
  font-weight: bold;
  color: #f00;
}






@media only screen and (min-width: 770px) and (max-width: 1200px) {
  .products-single-page {
    width: 100%;
    overflow: hidden;
  }
  .products-single-page img {
    width: 100%;
    display: block;
  }
  .products-single-page .product-slider-wrap {
    margin: 0 0 2.5vw 0;
    width: 52.91%;
    width: 52.917vw;
    float: left;
  }
  .products-single-page .product-slider-wrap .product-slider {
    margin: 0 1.417vw;
    width: calc( 100% - 2.833vw );
  }
  .products-single-page .product-slider-wrap .product-thumb-slider .image {
    position: relative;
  }
  .products-single-page .product-slider-wrap .product-thumb-slider .image.active::after {
    width: 100%;
    height: 100%;
    border: 8px solid #004487 !important;
    border-radius: 1.083vw;
    box-sizing: border-box;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
  }

  .products-single-page .product-slider-wrap .product-thumb-slider {
    display: grid;
    grid-template-columns: repeat(5, 1fr); /* 1行5枚 */
    gap: 0.833vw;
    margin-top: 1.667vw;
  }
  .products-single-page .product-slider-wrap .product-thumb-slider img {
    object-fit: cover;
    border-radius: 1.083vw;
    box-sizing: border-box;
  }
  .thumbnail-list img {
    width: 100%;
    height: auto;
    cursor: pointer;
    opacity: 1;
    transition: opacity 0.3s ease;
    object-fit: cover;
  }
  .products-single-page .detail {
    margin: 0 6.5% 0 0;
    width: 37.91%;
    float: right;
  }
  .products-single-page .detail .code {
    margin: 0 0 1.25vw 0;
    line-height: 1.4em;
    font-size: 1.5vw;
    font-weight: normal;
  }
  .products-single-page .detail h2 {
    margin: 0 0 1.25vw 0;
    line-height: 1.4em;
    font-size: 2.5vw;
    font-weight: bold;
  }
  .products-single-page .detail .price-box {
    margin: 0 0 1.667vw 0;
    width: 100%;
    display: flex;
  }
  .products-single-page .detail .price-box dt {
    padding: 1.083vw 0.417vw 0 0;
    line-height: 1.4em;
    font-size: 1.333vw;
    font-weight: normal;
  }
  .products-single-page .detail .price-box dd {
  }
  .products-single-page .detail .price-box dd .sub {
    line-height: 1.4em;
    font-size: 1.667vw;
    font-weight: normal;
  }
  .products-single-page .detail .price-box dd .tax {
    line-height: 1.4em;
    font-size: 1.333vw;
    font-weight: normal;
  }
  .products-single-page .detail .price-box dd .price {
    line-height: 1.4em;
    font-size: 2.5vw;
    font-weight: bold;
    color: #ff0000;
  }
  .products-single-page .detail .price-box dd .price .tax {
    line-height: 1.4em;
    font-size: 1.5vw;
    font-weight: bold;
    color: #ff0000;
  }
  .products-single-page .detail .data-box {
    margin: 0 0 2.5vw 0;
    width: 100%;
  }
  .products-single-page .detail .data-box table {
    width: 100%;
  }
  .products-single-page .detail .data-box table th {
    padding: 0.5vw 0 0.5vw 2.083vw;
    width: 13.333vw;
    box-sizing: border-box;
    line-height: 1.6em;
    font-size: 1.167vw;
    font-weight: normal;
    vertical-align: middle;
    border-top: 1px dotted #cccccc;
  }
  .products-single-page .detail .data-box table tr:nth-of-type(1) th {
    border-top: none;
  }
  .products-single-page .detail .data-box table td {
    padding: 0.5vw 0 0.5vw 0;
    line-height: 1.6em;
    font-size: 1.167vw;
    font-weight: normal;
    border-top: 1px dotted #cccccc;
  }
  .products-single-page .detail .data-box table tr:nth-of-type(1) td {
    border-top: none;
  }
  .products-single-page .detail .condition-box {
    margin: 0 0 2.5vw 0;
    display: flex;
  }
  .products-single-page .detail .condition-box .label {
    padding: 0 0 0 0.583vw;
    width: 6.667vw;
    height: 4.167vw;
    box-sizing: border-box;
    background: #333333;
    color: #fff;
    line-height: 1.2em;
    font-size: 1.333vw;
    font-weight: normal;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    position: relative;
  }
  .products-single-page .detail .condition-box .label .question {
    width: 1.833vw;
    position: absolute;
    top: 50%;
    right: 0.833vw;
    transform: translate(0,-50%);
  }
  .products-single-page .detail .condition-box .state {
    display: flex;
  }
  .products-single-page .detail .condition-box .state .rank {
    width: 4.167vw;
    height: 4.167vw;
    line-height: 1.3em;

    font-size: 2.167vw;
    font-weight: bold;
    color: #fff;
    background: #b2c7db;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .products-single-page .detail .condition-box .state .rank.on {
    line-height: 1.3em;
    font-size: 3vw;
    background: #004487;
  }













  .products-single-page .info {
    width: 52.91%;
    float: left;
  }
  .products-single-page .info .bnr {
    margin: 0 0 2.5vw 0;
  }
  .products-single-page .info .movie {
    margin: 0 0 3.333vw 0;
    width: 100%;
    aspect-ratio: 16 / 9;
  }
  .products-single-page .info .movie iframe {
    width: 100%;
    height: 100%;
  }
  .products-single-page .info .review {
    margin: 0 0 0 0;
    padding: 0 0 3.75vw 0;
  }
  .products-single-page .info .review h3 {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 2vw;
    font-weight: bold;
  }
  .products-single-page .info .review .item {
    margin: 0 0 0 0;
    padding: 1.083vw 0;
    width: 100%;
    border-bottom: 1px dotted #cccccc;
  }
  .products-single-page .info .review .item .post {
    margin: 0 0 0 0;
    padding: 0 0 1.083vw 0;
    line-height: 1.4em;
    font-size: 1.333vw;
  }
  .products-single-page .info .review .item .comment {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 1.333vw;
  }
  .products-single-page .detail .place-box {
    margin: 0 0 2.5vw 0;
    width: 100%;
    max-width: 37.833vw;
    height: 4.167vw;
    display: flex;
    align-items: center;
    justify-content: flex-start;
  }
  .products-single-page .detail .place-box.gunma {
    background: #5cb127;
  }
  .products-single-page .detail .place-box dt {
    padding: 0 0 0 0.75vw;
    width: 7.167vw;
    box-sizing: border-box;
    line-height: 1.4em;
    font-size: 1.167vw;
    font-weight: bold;
    color: #fff;
  }
  .products-single-page .detail .place-box dd {
    padding: 0 6.667vw 0 0;
    width: calc( 100% - 7.167vw );
    box-sizing: border-box;
    color: #fff;
    position: relative;
    line-height: 1.4em;
    font-size: 1.833vw;
    font-weight: bold;
  }
  .products-single-page .detail .place-box dd .map {
    width: 4.833vw;
    position: absolute;
    top: 50%;
    right: 1.667vw;
    transform: translate(0,-50%);
  }
  .products-single-page .detail .count-box {
    margin: 0 0 1.667vw 0;
    width: 100%;
    max-width: 37.833vw;
    display: flex;
    justify-content: space-between;
  }
  .products-single-page .detail .count-box .left {
    width: 61.67%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .products-single-page .detail .count-box .left .stock {
    margin: 0 0 0.833vw 0;
    width: 68%;
    height: 4.333vw;
    box-sizing: border-box;
    border: 1px solid #004487;
    display: flex;
    justify-content: space-between;
  }
  .products-single-page .detail .count-box .left .stock dt {
    width: 5vw;
    height: 4.167vw;
    line-height: 1.2em;
    font-size: 1.167vw;
    box-sizing: border-box;
    color: #fff;
    background: #004487;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .products-single-page .detail .count-box .left .stock dd {
    width: calc( 100% - 5vw );
    height: 4.167vw;
    line-height: 1.2em;
    font-size: 2.167vw;
    font-weight: bold;
    box-sizing: border-box;
    color: #333;
    background: #fff;
    display: flex;
    align-items: center;
	justify-content: left;
	margin: 0 0 0 8px;
  }
  .products-single-page .detail .count-box .left .stock dd .sub {
    line-height: 1.2em;
    font-size: 1.333vw;
    font-weight: bold;
  }
  .products-single-page .detail .count-box .left .number {
    margin: 0 0 0.833vw 0;
    width: 30%;
    height: 4.333vw;
    box-sizing: border-box;
  }
  .products-single-page .detail .count-box .left .number input {
    width: 100%;
    height: 4.333vw;
    line-height: 1.2em;
    font-size: 2.167vw;
    font-weight: bold;
    text-align: center;
    box-sizing: border-box;
    border: 1px solid #004487;
  }
  .products-single-page .detail .count-box .right {
    width: 33.04%;
  }
  .products-single-page .detail .count-box .right .bnr {
    margin: 0 0 0.833vw 0;
  }
  .products-single-page .detail .count-box .right .contact-link {
  }
  .products-single-page .detail .count-box .right .contact-link a {
    color: #fff;
    text-decoration: none;
    background: #333333;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    box-sizing: border-box;
    padding: 0 0 0 0.5vw;
    height: 2.5vw;
    line-height: 1.3em;
    font-size: 1vw;
    border-radius: 0.25vw;
    transition: all 0.4s 0s;
  }
  .products-single-page .detail .count-box .right .contact-link a:hover {
    opacity: 0.6;
  }
  .products-single-page .detail .attention-box01 {
    margin: 0 0 1.667vw 0;
    width: 100%;
    max-width: 37.833vw;
    box-sizing: border-box;
    border: 1px solid #333333;
  }
  .products-single-page .detail .attention-box01 dt {
    margin: 0 0 0 0;
    width: 100%;
    height: 2.5vw;
    background: #fff;
    text-align: center;
    line-height: 1.2em;
    font-size: 1.417vw;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .products-single-page .detail .attention-box01 dd {
    padding: 0.417vw 0.833vw;
    background: #333;
    color: #fff;
    text-align: left;
    line-height: 1.6em;
    font-size: 1.333vw;
  }
  .products-single-page .detail .attention-box01 dd strong {
    line-height: 1.6em;
    font-size: 1.5vw;
  }
  .products-single-page .detail .attention-box02 {
    margin: 0 0 1.667vw 0;
    width: 100%;
    max-width: 37.833vw;
    box-sizing: border-box;
    border: 1px solid #333333;
  }
  .products-single-page .detail .attention-box02 dt {
    margin: 0 0 0 0;
    width: 100%;
    height: 3.333vw;
    background: #333;
    color: #fff;
    text-align: center;
    line-height: 1.2em;
    font-size: 1.833vw;
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: flex-start;
  }
  .products-single-page .detail .attention-box02 dt::before {
    width: 2.917vw;
    height: 2.583vw;
    content: "";
    background: url("../images/products/icon_03.png") no-repeat center center;
    background-size: 100% 100%;
    display: inline-block;
    margin: 0 0.833vw 0 0.75vw;
  }
  .products-single-page .detail .attention-box02 dd {
    padding: 0.417vw 0.833vw;
    background: #fff;
    color: #333;
    text-align: left;
    line-height: 1.6em;
    font-size: 1.333vw;
  }

  .products-single-page .detail .attention-box03 {
    margin: 0 0 1.667vw 0;
    width: 100%;
    max-width: 37.833vw;
    box-sizing: border-box;
    border: 1px solid #333333;
  }
  .products-single-page .detail .attention-box03 dt {
    margin: 0 0 0 0;
    width: 100%;
    height: 3.333vw;
    background: #333;
    color: #fff;
    text-align: center;
    line-height: 1.2em;
    font-size: 1.833vw;
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: flex-start;
  }
  .products-single-page .detail .attention-box03 dt::before {
    width: 4.25vw;
    height: 2.75vw;
    content: "";
    background: url("../images/products/icon_04.png") no-repeat center center;
    background-size: 100% 100%;
    display: inline-block;
    margin: 0 0.833vw 0 0.75vw;
  }
  .products-single-page .detail .attention-box03 dd {
    padding: 1.667vw 0.833vw 0.417vw;
    background: #fff;
    color: #333;
    text-align: left;
    line-height: 1.6em;
    font-size: 1.333vw;
  }
  .products-single-page .detail .attention-box03 dd .box {
    margin: 0 0 0.833vw 0;
    display: flex;
  }
  .products-single-page .detail .attention-box03 dd .box .text {
    width: 6.667vw;
    text-align: center;
    line-height: 1.5em;
    font-size: 1.833vw;
    font-weight: bold;
  }
  .products-single-page .detail .attention-box03 dd .box .text .num {
    line-height: 1.5em;
    font-size: 3.667vw;
    font-weight: bold;
  }
  .products-single-page .detail .attention-box03 dd .box .image01 {
    max-width: 23.083vw;
  }
  .products-single-page .detail .attention-box03 dd .box .image02 {
    max-width: 20.083vw;
  }



  .products-single-page .recommend-products {
    padding: 0 0 1.667vw 0;
    width: 100%;
    clear: both;
  }
  .products-single-page .recommend-products h3 {
    line-height: 1.5em;
    font-size: 2vw;
    font-weight: bold;
    margin: 0 0 1.25vw 0;
  }
  .products-single-page .recommend-products .recommend-slider {
    margin: 0 1.667vw;
    width: calc( 100% - 3.333vw );
  }
  .products-single-page .recommend-products .recommend-slider .item {
  }
  .products-single-page .recommend-products .recommend-slider .item .image {
    margin: 0 1.667vw 0.417vw;
  }
  .products-single-page .recommend-products .recommend-slider .item .image a {
    display: block;
    position: relative;
  }
  .products-single-page .recommend-products .recommend-slider .item .image a .place {
    width: 100%;
    height: 2.083vw;
    color: #fff;
    text-decoration: none;
    line-height: 1.2em;
    font-size: 1.167vw;
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
  }
  .products-single-page .recommend-products .recommend-slider .item .image a .place.osaka {
    background: rgba(239,114,22,0.8);
  }
  .products-single-page .recommend-products .recommend-slider .item .image a .place.gunma {
    background: rgba(24,168,45,0.8);
  }
  .products-single-page .recommend-products .recommend-slider .item .code {
    margin: 0 1.667vw 0.417vw;
    line-height: 1.2em;
    font-size: 1vw;
  }
  .products-single-page .recommend-products .recommend-slider .item .name {
    margin: 0 1.667vw 0.417vw;
    line-height: 1.2em;
    font-size: 1.167vw;
    font-weight: bold;
  }
  .products-single-page .recommend-products .recommend-slider .item .data {
    margin: 0 1.667vw 0.417vw;
    line-height: 1.2em;
    font-size: 1vw;
  }
  .products-single-page .recommend-products .recommend-slider .item .price {
    margin: 0 1.667vw 0;
    line-height: 1.2em;
    font-size: 1.167vw;
    font-weight: bold;
    color: #f00;
  }

}














@media only screen and (max-width: 769px) {
  
  .products-single-page {
    width: 100%;
    overflow: hidden;
  }
  .products-single-page img {
    width: 100%;
    display: block;
  }
  .products-single-page .product-slider-wrap {
    margin: 0 0 5.313vw 0;
    width: 100%;
    float: none;
  }
  .products-single-page .product-slider-wrap .product-slider {
    margin: 0 0;
    width: 100%;
  }
  .products-single-page .product-slider-wrap .product-thumb-slider .image {
    position: relative;
  }
  .products-single-page .product-slider-wrap .product-thumb-slider .image.active::after {
    width: 100%;
    height: 100%;
    border: 8px solid #004487 !important;
    border-radius: 2.031vw;
    box-sizing: border-box;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
  }

  .products-single-page .product-slider-wrap .product-thumb-slider {
    overflow: hidden;
    height: 0;
  }
  .products-single-page .product-slider-wrap .product-thumb-slider img {
    object-fit: cover;
    border-radius: 2.031vw;
    box-sizing: border-box;
  }
  .thumbnail-list img {
    width: 100%;
    height: auto;
    cursor: pointer;
    opacity: 1;
    transition: opacity 0.3s ease;
    object-fit: cover;
  }
  .products-single-page .detail {
    margin: 0 0 0 0;
    width: 100%;
    float: none;
  }
  .products-single-page .detail .code {
    margin: 0 3.125vw 1.563vw 3.125vw;
    line-height: 1.4em;
    font-size: 3.75vw;
    font-weight: normal;
  }
  .products-single-page .detail h2 {
    margin: 0 3.125vw 5.469vw 3.125vw;
    line-height: 1.4em;
    font-size: 6.25vw;
    font-weight: bold;
  }
  .products-single-page .detail .price-box {
    margin: 0 3.125vw 4.688vw 3.125vw;
    width: 93.75vw;
    display: flex;
  }
  .products-single-page .detail .price-box dt {
    padding: 2.031vw 0.781vw 0 0;
    line-height: 1.4em;
    font-size: 3.438vw;
    font-weight: normal;
  }
  .products-single-page .detail .price-box dd {
  }
  .products-single-page .detail .price-box dd .sub {
    line-height: 1.4em;
    font-size: 3.75vw;
    font-weight: normal;
  }
  .products-single-page .detail .price-box dd .tax {
    line-height: 1.4em;
    font-size: 2.813vw;
    font-weight: normal;
  }
  .products-single-page .detail .price-box dd .price {
    line-height: 1.4em;
    font-size: 5.313vw;
    font-weight: bold;
    color: #ff0000;
  }
  .products-single-page .detail .price-box dd .price .tax {
    line-height: 1.4em;
    font-size: 3.438vw;
    font-weight: bold;
    color: #ff0000;
  }
  .products-single-page .detail .data-box {
    margin: 0 3.125vw 3.125vw 3.125vw;
    width: 93.75vw;
  }
  .products-single-page .detail .data-box table {
    width: 100%;
  }
  .products-single-page .detail .data-box table th {
    padding: 0.938vw 0 0.938vw 1.563vw;
    width: 32.031vw;
    box-sizing: border-box;
    line-height: 1.6em;
    font-size: 3.125vw;
    font-weight: normal;
    vertical-align: middle;
    border-top: 1px dotted #cccccc;
  }
  .products-single-page .detail .data-box table tr:nth-of-type(1) th {
    border-top: none;
  }
  .products-single-page .detail .data-box table td {
    padding: 0.938vw 0 0.938vw 0;
    line-height: 1.6em;
    font-size: 3.125vw;
    font-weight: normal;
    border-top: 1px dotted #cccccc;
  }
  .products-single-page .detail .data-box table tr:nth-of-type(1) td {
    border-top: none;
  }
  .products-single-page .detail .condition-box {
    margin: 0 auto 30px auto;
    width: 84.063vw;
    display: flex;
  }
  .products-single-page .detail .condition-box .label {
    padding: 0 0 0 2.344vw;
    width: 20.313vw;
    height: 12.5vw;
    box-sizing: border-box;
    background: #333333;
    color: #fff;
    line-height: 1.2em;
    font-size: 3.75vw;
    font-weight: normal;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    position: relative;
  }
  .products-single-page .detail .condition-box .label .question {
    width: 5.469vw;
    position: absolute;
    top: 50%;
    right: 2.344vw;
    transform: translate(0,-50%);
  }
  .products-single-page .detail .condition-box .state {
    display: flex;
  }
  .products-single-page .detail .condition-box .state .rank {
    width: 12.5vw;
    height: 12.5vw;
    line-height: 1.3em;
    font-size: 4.063vw;
    font-weight: bold;
    color: #fff;
    background: #b2c7db;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .products-single-page .detail .condition-box .state .rank.on {
    line-height: 1.3em;
    font-size: 5.625vw;
    background: #004487;
  }


  .products-single-page .info {
    margin: 0 4.688vw 4.688vw 4.688vw;
    width: 90.625vw;
    float: none;
  }
  .products-single-page .info .bnr {
    margin: 0 0 4.688vw 0;
  }
  .products-single-page .info .movie {
    margin: 0 0 7.031vw 0;
    width: 100%;
    aspect-ratio: 16 / 9;
  }
  .products-single-page .info .movie iframe {
    width: 100%;
    height: 100%;
  }
  .products-single-page .info .review {
    margin: 0 0 0 0;
    padding: 0 0 7.031vw 0;
  }
  .products-single-page .info .review h3 {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 3.75vw;
    font-weight: bold;
  }
  .products-single-page .info .review .item {
    margin: 0 0 0 0;
    padding: 2.031vw 0;
    width: 100%;
    border-bottom: 1px dotted #cccccc;
  }
  .products-single-page .info .review .item .post {
    margin: 0 0 0 0;
    padding: 0 0 2.031vw 0;
    line-height: 1.4em;
    font-size: 3.125vw;
  }
  .products-single-page .info .review .item .comment {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 3.125vw;
  }
  .products-single-page .detail .place-box {
    margin: 0 0 0 0;
    width: 100%;
    max-width: 100%;
    height: 12.5vw;
    display: flex;
    align-items: center;
    justify-content: flex-start;
  }
  .products-single-page .detail .place-box.gunma {
    background: #5cb127;
  }
  .products-single-page .detail .place-box dt {
    padding: 0 0 0 4.531vw;
    width: 21.406vw;
    box-sizing: border-box;
    line-height: 1.4em;
    font-size: 3.125vw;
    font-weight: bold;
    color: #fff;
  }
  .products-single-page .detail .place-box dd {
    padding: 0 20.313vw 0 0;
    width: calc( 100% - 21.406vw );
    box-sizing: border-box;
    color: #fff;
    position: relative;
    line-height: 1.4em;
    font-size: 4.375vw;
    font-weight: bold;
  }
  .products-single-page .detail .place-box dd .map {
    width: 15.625vw;
    position: absolute;
    top: 50%;
    right: 4.688vw;
    transform: translate(0,-50%);
  }
  .products-single-page .detail .count-box {
    margin: 20px 0 7.813vw 4.688vw;
    width: 95.313vw;
    max-width: 95.313vw;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
  .products-single-page .detail .count-box .left {
    margin: 0 0 1.563vw 0;
    width: 70.313vw;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .products-single-page .detail .count-box .left .stock {
    margin: 0 0 3.125vw 0;
    width: 68%;
    height: 12.812vw;
    box-sizing: border-box;
    border: none;
    display: flex;
    justify-content: space-between;
  }
  .products-single-page .detail .count-box .left .stock dt {
    width: 15.625vw;
    height: 12.5vw;
    line-height: 1.2em;
    font-size: 3.125vw;
    box-sizing: border-box;
    color: #fff;
    background: #004487;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .products-single-page .detail .count-box .left .stock dd {
    width: calc( 100% - 15.625vw );
    height: 12.5vw;
    line-height: 1.2em;
    font-size: 5.625vw;
    font-weight: bold;
    box-sizing: border-box;
    color: #333;
    background: #fff;
    border: 1px solid #004487;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .products-single-page .detail .count-box .left .stock dd .sub {

    line-height: 1.2em;
    font-size: 3.438vw;
    font-weight: bold;
  }
  .products-single-page .detail .count-box .left .number {
    margin: 0 0 3.125vw 0;
    width: 30%;
    height: 12.812vw;
    box-sizing: border-box;
  }
  .products-single-page .detail .count-box .left .number input {
    width: 100%;
    height: 12.812vw;
    line-height: 1.2em;
    font-size: 5.625vw;
    font-weight: bold;
    text-align: center;
    box-sizing: border-box;
    border: 1px solid #004487;
  }
  .products-single-page .detail .count-box .right {
    width: 90.625vw;
  }
  .products-single-page .detail .count-box .right .bnr {
    margin: 0 auto 2.813vw auto;
    width: 90.625vw;
    max-width: 90.625vw;
  }
  .products-single-page .detail .count-box .right .bnr img {
    margin: 0 auto 0 auto;
    width: 90.625vw;
    max-width: 90.625vw;
  }
  .products-single-page .detail .count-box .right .contact-link {
  }
  .products-single-page .detail .count-box .right .contact-link a {
    color: #fff;
    text-decoration: none;
    background: #333333;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    padding: 0 0 0 0;
    height: 9.375vw;
    line-height: 1.3em;
    font-size: 4.063vw;
    border-radius: 1.25vw;
    transition: all 0.4s 0s;
  }
  .products-single-page .detail .count-box .right .contact-link a:hover {
    opacity: 0.6;
  }
  .products-single-page .detail .attention-box01 {
    margin: 0 0 4.688vw 0;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    border: none;
  }
  .products-single-page .detail .attention-box01 dt {
    margin: 0 0 0 0;
    width: 100%;
    height: 9.375vw;
    background: #dedede;
    text-align: center;
    line-height: 1.2em;
    font-size: 3.75vw;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .products-single-page .detail .attention-box01 dd {
    padding: 0.781vw 1.563vw 0.781vw 18.75vw;
    background: #333;
    color: #fff;
    text-align: left;
    line-height: 1.6em;
    font-size: 2.813vw;
  }
  .products-single-page .detail .attention-box01 dd strong {
    line-height: 1.6em;
    font-size: 3.438vw;
  }
  .products-single-page .detail .attention-box02 {
    margin: 0 4.688vw 3.906vw 4.688vw;
    width: 90.625vw;
    max-width: 90.625vw;
    box-sizing: border-box;
    border: 1px solid #333333;
  }
  .products-single-page .detail .attention-box02 dt {
    margin: 0 0 0 0;
    width: 100%;
    height: 9.375vw;
    background: #333;
    color: #fff;
    text-align: center;
    line-height: 1.2em;
    font-size: 4.375vw;
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: flex-start;
  }
  .products-single-page .detail .attention-box02 dt::before {
    width: 8.281vw;
    height: 7.187vw;
    content: "";
    background: url("../images/products/icon_03-sp.png") no-repeat center center;
    background-size: 100% 100%;
    display: inline-block;
    margin: 0 3.125vw 0 2.969vw;
  }
  .products-single-page .detail .attention-box02 dd {
    padding: 2.344vw 3.125vw;
    background: #fff;
    color: #333;
    text-align: left;
    line-height: 1.6em;
    font-size: 3.438vw;
  }


  .products-single-page .detail .attention-box-sp-img {
	margin: 0 4.688vw 3.906vw 4.688vw;
	max-width: 90.625vw;
  }



  .products-single-page .detail .attention-box03 {
    margin: 0 4.688vw 3.906vw 4.688vw;
    width: 90.625vw;
    max-width: 90.625vw;
    box-sizing: border-box;
    border: 1px solid #333333;
  }
  .products-single-page .detail .attention-box03 dt {
    margin: 0 0 0 0;
    width: 100%;
    height: 9.375vw;
    background: #333;
    color: #fff;
    text-align: center;
    line-height: 1.2em;
    font-size: 3.438vw;
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: flex-start;
  }
  .products-single-page .detail .attention-box03 dt::before {
    width: 12.031vw;
    height: 7.813vw;
    content: "";
    background: url("../images/products/icon_04-sp.png") no-repeat center center;
    background-size: 100% 100%;
    display: inline-block;
    margin: 0 3.125vw 0 2.969vw;
  }
  .products-single-page .detail .attention-box03 dd {
    padding: 3.125vw 3.125vw 2.344vw;
    background: #fff;
    color: #333;
    text-align: left;
    line-height: 1.6em;
    font-size: 3.438vw;
  }
  .products-single-page .detail .attention-box03 dd .box {
    margin: 0 0 1.563vw 0;
    display: flex;
  }
  .products-single-page .detail .attention-box03 dd .box .text {
    width: 12.5vw;
    text-align: center;
    line-height: 1.5em;
    font-size: 3.438vw;
    font-weight: bold;
  }
  .products-single-page .detail .attention-box03 dd .box .text .num {
    line-height: 1.5em;
    font-size: 6.875vw;
    font-weight: bold;
  }
  .products-single-page .detail .attention-box03 dd .box .image01 {
    max-width: 43.281vw;
  }
  .products-single-page .detail .attention-box03 dd .box .image02 {
    max-width: 37.656vw;
  }
  .products-single-page .detail .attention-box03 dd .note {
    text-align: center;
    font-weight: bold;
    
  }
  
  .products-single-page .recommend-products {
    padding: 0 0 3.125vw 0;
    width: 100%;
    clear: both;
  }
  .products-single-page .recommend-products h3 {
    line-height: 1.5em;
    font-size: 4.688vw;
    font-weight: bold;
    margin: 0 0 4.688vw 0;
	text-align: center;
  }
  .products-single-page .recommend-products h3::after {
    width: 6.094vw;
    height: 5.938vw;
    content: "";
    background: url("../images/products/icon_05.png") no-repeat center center;
    background-size: 100% 100%;
    display: inline-block;
    margin: 0 0 0 2.969vw;
  }
  .products-single-page .recommend-products .recommend-slider {
    margin: 0 3.125vw;
    width: calc( 100% - 6.25vw );
  }
  .products-single-page .recommend-products .recommend-slider .item {
  }
  .products-single-page .recommend-products .recommend-slider .item .image {
    margin: 0 3.125vw 0.781vw;
  }
  .products-single-page .recommend-products .recommend-slider .item .image a {
    display: block;

    position: relative;
  }
  .products-single-page .recommend-products .recommend-slider .item .image a .place {
    width: 100%;
    height: 3.906vw;
    color: #fff;
    text-decoration: none;
    line-height: 1.2em;
    font-size: 2.188vw;
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
  }
  .products-single-page .recommend-products .recommend-slider .item .image a .place.osaka {
    background: rgba(239,114,22,0.8);
  }
  .products-single-page .recommend-products .recommend-slider .item .image a .place.gunma {
    background: rgba(24,168,45,0.8);
  }
  .products-single-page .recommend-products .recommend-slider .item .code {
    margin: 0 3.125vw 0.781vw;
    line-height: 1.2em;
    font-size: 1.875vw;
  }
  .products-single-page .recommend-products .recommend-slider .item .name {
    margin: 0 3.125vw 0.781vw;
    line-height: 1.2em;
    font-size: 2.188vw;
    font-weight: bold;
  }
  .products-single-page .recommend-products .recommend-slider .item .data {
    margin: 0 3.125vw 0.781vw;
    line-height: 1.2em;
    font-size: 1.875vw;
  }
  .products-single-page .recommend-products .recommend-slider .item .price {
    margin: 0 3.125vw 0;
    line-height: 1.2em;
    font-size: 2.188vw;
    font-weight: bold;
    color: #f00;
  }

  
  
  
  
  .products-single-page .recommend-products .list {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
  }
  .products-single-page .recommend-products .list .item {
    margin: 0 0 4.688vw 0;
    width: 50%;
  }
  .products-single-page .recommend-products .list .item .image {
    margin: 0 0 1.25vw 0;
  }
  .products-single-page .recommend-products .list .item .image img {
    display: block;
    width: 100%;
  }
  .products-single-page .recommend-products .list .item .image a {
    display: block;
    position: relative;
  }
  .products-single-page .recommend-products .list .item .image a .label {
    position: absolute;
    top: 0;
    right: 0;
    width: auto;
    height: 6.875vw;
  }
  .products-single-page .recommend-products .list .item .code {
    margin: 0 3.125vw 0.781vw 3.125vw;
    line-height: 1.4em;
    font-size: 2.813vw;
    color: #333;
  }
  .products-single-page .recommend-products .list .item .title {
    margin: 0 3.125vw 0.781vw 3.125vw;
    line-height: 1.4em;
    font-size: 3.75vw;
    font-weight: bold;
    color: #333;
  }
  .products-single-page .recommend-products .list .item .data {
    margin: 0 3.125vw 1.563vw 3.125vw;
    line-height: 1.4em;
    font-size: 2.813vw;
    color: #333;
  }
  .products-single-page .recommend-products .list .item .place {
    margin: 0 3.125vw 1.563vw 3.125vw;
    padding: 0 2.344vw;
    width: fit-content;
    height: 4.375vw;
    line-height: 1.4em;
    font-size: 2.813vw;
    font-weight: 500;
    color: #fff;
    border-radius: 0.781vw;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    position: relative;
    box-sizing: border-box;
    text-decoration: none;
    transition: all 0.5s 0s;
  }
  .products-single-page .recommend-products .list .item .place.gunma {
    background: #18a82d;
  }
  .products-single-page .recommend-products .list .item .place.osaka {
    background: #ff5300;
  }
  .products-single-page .recommend-products .list .item .info {
    margin: 0 3.125vw;
    padding: 0.781vw;
    width: calc( 100% - 6.25vw );
    box-sizing: border-box;
    display: flex;
    align-items: center;
    border: 1px dashed #cecece;
  }
  .products-single-page .recommend-products .list .item .info.single .box {
    width: 100%;
    display: flex;
    justify-content: space-between;
  }
  .products-single-page .recommend-products .list .item .info.double .box {
    width: 50%;
    text-align: center;
  }
  .products-single-page .recommend-products .list .item .info .box .count {
    line-height: 1.5em;
    font-size: 2.813vw;
  }
  .products-single-page .recommend-products .list .item .info .box .count .num {
    line-height: 1.5em;
    font-size: 3.75vw;
  }
  .products-single-page .recommend-products .list .item .info .box .price {
    line-height: 1.5em;
    font-size: 3.594vw;
    font-weight: bold;
    color: #ff0000;
  }
  .products-single-page .recommend-products .list .item .info .box .price .sub {
    line-height: 1.5em;
    font-size: 2.188vw;
    font-weight: normal;
    color: #333333;
  }

}


/* rank */
.rank-page {
  padding: 0 0 20px 0;
}
.rank-page h2 {
	margin: 0 0 65px 0;
}
.rank-page .intro {
	margin: 0 0 0 0;
	padding: 0 0 80px 0;
	width: 100%;
	position: relative;
}
.rank-page .intro p {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	line-height: 1.6em;
	font-size: 24px;
	font-weight: 500;
}
.rank-page .rank-data {
	margin: 0 0 95px 0;
	padding: 0 0 0 0;
  width: 100%;
}
.rank-page .rank-data table {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
  width: 100%;
}
.rank-page .rank-data table th {
	margin: 0 0 0 0;
	padding: 0 0 20px 0;
  width: 16.66%;
  border-bottom: 1px dotted #ccc;
  vertical-align: top;
}
.rank-page .rank-data table th .label {
	margin: auto;
  width: 100px;
  height: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #004487;
  border-radius: 8px;
  color: #fff;
  line-height: 1.2em;
  font-size: 60px;
  font-weight: bold;
}
.rank-page .rank-data table th.deco {
  background: url("../images/rank/deco_01.png") no-repeat center center;
  background-size: 100px auto;
}
.rank-page .rank-data table th .text01 {
  display: block;
  margin: 0 0 20px 90px;
  line-height: 1.4em;
  font-size: 26px;
  font-weight: bold;
}
.rank-page .rank-data table th .text02 {
  display: block;
  margin: 0 0 0 30px;
  line-height: 1.4em;
  font-size: 26px;
  font-weight: bold;
}

.rank-page .rank-data table td {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
  width: 16.66%;
  height: 110px;
  border-bottom: 1px dotted #ccc;
  vertical-align: middle;
  text-align: center;
  line-height: 1.4em;
  font-size: 26px;
  font-weight: 500;
}
.rank-page .rank-data table td.name {
  line-height: 1.4em;
  font-size: 30px;
  font-weight: bold;
}
.rank-page .rank-info {
  margin: 0 0 100px 0;
}
.rank-page .rank-info .head {
  margin: 0 0 20px 0;
  padding: 5px 0 0 20px;
  width: 100%;
  min-height: 80px;
  background: url("../images/rank/head_back_01.png") no-repeat left bottom;
  background-size: 100% auto;
  display: flex;
  box-sizing: border-box;
}
.rank-page .rank-info .head h3 {
	margin: 0 0 0 0;
  min-width: 205px;
	line-height: 1.4em;
	font-size: 40px;
	font-weight: bold;
}
.rank-page .rank-info .head p {
	margin: 12px 0 0 0;
	line-height: 1.4em;
	font-size: 26px;
}
.rank-page .rank-info .description {
	margin: 0 45px 35px 45px;
	line-height: 1.8em;
	font-size: 20px;
}
.rank-page .rank-info .image-box {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
.rank-page .rank-info .image-box img {
  width: 24%;
  max-width: 280px;
}
@media only screen and (min-width: 770px) and (max-width: 1200px) {
  .rank-page {
    padding: 0 0 1.667vw 0;
  }
  .rank-page h2 {
    margin: 0 0 5.417vw 0;
  }
  .rank-page .intro {
    margin: 0 0 0 0;
    padding: 0 0 6.667vw 0;
    width: 100%;
    position: relative;
  }
  .rank-page .intro p {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    line-height: 1.6em;
    font-size: 2vw;
    font-weight: 500;
  }
  .rank-page .rank-data {
    margin: 0 0 7.917vw 0;
    padding: 0 0 0 0;
    width: 100%;
  }
  .rank-page .rank-data table {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
  }
  .rank-page .rank-data table th {
    margin: 0 0 0 0;
    padding: 0 0 1.667vw 0;
    width: 16.66%;
    border-bottom: 1px dotted #ccc;
    vertical-align: top;
  }
  .rank-page .rank-data table th .label {
    margin: auto;
    width: 8.333vw;
    height: 8.333vw;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #004487;
    border-radius: 0.667vw;
    color: #fff;
    line-height: 1.2em;
    font-size: 5vw;
    font-weight: bold;
  }
  .rank-page .rank-data table th.deco {
    background: url("../images/rank/deco_01.png") no-repeat center center;
    background-size: 100px auto;
  }
  .rank-page .rank-data table th .text01 {
    display: block;
    margin: 0 0 1.667vw 7.5vw;
    line-height: 1.4em;
    font-size: 2.167vw;
    font-weight: bold;
  }
  .rank-page .rank-data table th .text02 {
    display: block;
    margin: 0 0 0 2.5vw;
    line-height: 1.4em;
    font-size: 2.167vw;
    font-weight: bold;
  }

  .rank-page .rank-data table td {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 16.66%;
    height: 9.167vw;
    border-bottom: 1px dotted #ccc;
    vertical-align: middle;
    text-align: center;
    line-height: 1.4em;
    font-size: 2.167vw;
    font-weight: 500;
  }
  .rank-page .rank-data table td.name {
    line-height: 1.4em;
    font-size: 2.5vw;
    font-weight: bold;
  }
  .rank-page .rank-info {
    margin: 0 0 8.333vw 0;
  }
  .rank-page .rank-info .head {
    margin: 0 0 1.667vw 0;
    padding: 0.417vw 0 0 1.667vw;
    width: 100%;
    min-height: 6.667vw;
    background: url("../images/rank/head_back_01.png") no-repeat left bottom;
    background-size: 100% auto;
    display: flex;
    box-sizing: border-box;
  }
  .rank-page .rank-info .head h3 {
    margin: 0 0 0 0;
    min-width: 17.083vw;
    line-height: 1.4em;
    font-size: 3.333vw;
    font-weight: bold;
  }
  .rank-page .rank-info .head p {
    margin: 1vw 0 0 0;
    line-height: 1.4em;
    font-size: 2.167vw;
  }
  .rank-page .rank-info .description {
    margin: 0 3.75vw 2.917vw 3.75vw;
    line-height: 1.8em;
    font-size: 1.667vw;
  }
  .rank-page .rank-info .image-box {
    width: 100%;
    display: flex;
    justify-content: space-between;
  }
  .rank-page .rank-info .image-box img {
    width: 24%;
    max-width: 23.333vw;
  }
}
@media only screen and (max-width: 769px) {
  .rank-page {
    padding: 0 0 3.125vw 0;
  }
  .rank-page h2 {
    margin: 0 0 10.156vw 0;
    text-align: center;
  }
  .rank-page .intro {
    margin: 0 4.688vw 0 4.688vw;
    padding: 0 0 11.719vw 0;
    width: 90.625vw;
    position: relative;
  }
  .rank-page .intro p {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    line-height: 1.6em;
    font-size: 3.125vw;
    font-weight: 500;
  }
  .rank-page .rank-data {
    margin: 0 0 14.844vw 0;
    padding: 0 0 0 0;
    width: 100%;
  }
  .rank-page .rank-data table {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
  }
  .rank-page .rank-data table th {
    margin: 0 0 0 0;
    padding: 0 0 3.125vw 0;
    width: 16.66%;
    border-bottom: 1px dotted #ccc;
    vertical-align: top;
  }
  .rank-page .rank-data table th .label {
    margin: auto;
    width: 10.938vw;
    height: 10.938vw;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #004487;
    border-radius: 1.25vw;
    color: #fff;
    line-height: 1.2em;
    font-size: 7.813vw;
    font-weight: bold;
  }
  .rank-page .rank-data table th.deco {
    background: url("../images/rank/deco_01.png") no-repeat center center;
    background-size: 10.625vw auto;
  }
  .rank-page .rank-data table th .text01 {
    display: block;
    margin: 0 0 3.125vw 7.813vw;
    line-height: 1.4em;
    font-size: 2.813vw;
    font-weight: bold;
  }
  .rank-page .rank-data table th .text02 {
    display: block;
    margin: 0 0 0 1.563vw;
    line-height: 1.4em;
    font-size: 2.813vw;
    font-weight: bold;
  }

  .rank-page .rank-data table td {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 16.66%;
    height: 14.063vw;
    border-bottom: 1px dotted #ccc;
    vertical-align: middle;
    text-align: center;
    line-height: 1.4em;
    font-size: 3.438vw;
    font-weight: 500;
  }
  .rank-page .rank-data table td.name {
    line-height: 1.4em;
    font-size: 3.438vw;
    font-weight: bold;
  }
  .rank-page .rank-info {
    margin: 0 0 7.813vw 0;
  }
  .rank-page .rank-info .head {
    margin: 0 4.688vw 3.125vw 4.688vw;
    padding: 0.781vw 0 0 2.344vw;
    width: 90.625vw;
    min-height: 10.938vw;
    background: url("../images/rank/head_back_01.png") no-repeat left bottom;
    background-size: auto 70px;
    display: flex;
    box-sizing: border-box;
  }
  .rank-page .rank-info .head h3 {
    margin: 0 0 0 0;
    min-width: 17.969vw;
    line-height: 1.4em;
    font-size: 4.375vw;
    font-weight: bold;
  }
  .rank-page .rank-info .head p {
    margin: 1.25vw 0 0 0;
    line-height: 1.4em;
    font-size: 2.656vw;
  }
  .rank-page .rank-info .description {
    margin: 0 4.688vw 3.125vw 4.688vw;
    line-height: 1.8em;
    font-size: 3.125vw;
  }
  .rank-page .rank-info .image-box {
    margin: 0 4.688vw;
    width: 90.625vw;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .rank-page .rank-info .image-box img {
    margin: 0 0 3.125vw 0;
    width: 43.75vw;
    max-width: 43.75vw;
  }
}




/* reason */
.reason-page {
  padding: 0 0 190px 0;
}
.reason-page h2 {
	margin: 0 0 20px 0;
}
.reason-page h3 {
	margin: 0 0 35px 0;
	line-height: 1.4em;
	font-size: 40px;
	font-weight: bold;
}

.reason-page .intro {
	margin: 0 0 0 0;
	padding: 0 0 95px 0;
	width: 100%;
	position: relative;
}
.reason-page .intro p {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	width: 50%;
	max-width: 600px;
	line-height: 1.6em;
	font-size: 30px;
	font-weight: 500;
}
.reason-page .intro .image {
	width: 35%;
	position: absolute;
	top: -90px;
	right: 0;
}
.reason-page .sec01 {
	margin: 0 0 0 0;
	padding: 0 0 100px 0;
	width: 100%;
	position: relative;
}
.reason-page .sec01 .description {
	margin: 0 0 0 0;
	padding: 0 0 30px 0;
  line-height: 1.8em;
  font-size: 22px;
}
.reason-page .sec01 .description .image01 {
  width: 100%;
}
.reason-page .sec01 .description .image02 {
  width: 78.58%;
  max-width: 943px;
  margin: 0 0 0 3.33%;
}
.reason-page .sec01 .list-box01 {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
.reason-page .sec01 .list-box01 .item {
  width: 24%;
  max-width: 280px;
  background: #004487;
  border-radius: 10px;
  box-sizing: border-box;
  padding: 19px 0 15px 0;
}
.reason-page .sec01 .list-box01 .item .image {
  margin: 0 20px 5px 20px;
}
.reason-page .sec01 .list-box01 .item p {
  line-height: 1.4em;
  font-size: 20px;
  font-weight: bold;
  color: #fff;
  text-align: center;
}
.reason-page .sec01 .list-box02 {
  margin: 0 auto;
  width: 100%;
  max-width: 1000px;
  display: flex;
  justify-content: space-between;
}
.reason-page .sec01 .list-box02 .item {
  width: 30%;
  max-width: 300px;
  background: #004487;
  border-radius: 10px;
  box-sizing: border-box;
  padding: 19px 20px 15px 20px;
}
.reason-page .sec01 .list-box02 .item p.catch {
  line-height: 1.4em;
  font-size: 30px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  margin: 0 0 25px 0;
}
.reason-page .sec01 .list-box02 .item p {
  line-height: 1.4em;
  font-size: 20px;
  color: #fff;
  text-align: center;
}
@media only screen and (min-width: 770px) and (max-width: 1200px) {
  .reason-page {
    padding: 0 0 15.833vw 0;
  }
  .reason-page h2 {
    margin: 0 0 1.667vw 0;
  }
  .reason-page h3 {
    margin: 0 0 2.917vw 0;
    line-height: 1.4em;
    font-size: 3.333vw;
    font-weight: bold;
  }

  .reason-page .intro {
    margin: 0 0 0 0;
    padding: 0 0 7.917vw 0;
    width: 100%;
    position: relative;
  }
  .reason-page .intro p {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 50%;
    max-width: 50vw;
    line-height: 1.6em;
    font-size: 2.5vw;
    font-weight: 500;
  }
  .reason-page .intro .image {
    width: 25%;
    position: absolute;
    top: -7.5vw;
    right: 0;
  }
  .reason-page .sec01 {
    margin: 0 0 0 0;
    padding: 0 0 8.333vw 0;
    width: 100%;
    position: relative;
  }
  .reason-page .sec01 .description {
    margin: 0 0 0 0;
    padding: 0 0 2.5vw 0;
    line-height: 1.8em;
    font-size: 1.833vw;
  }
  .reason-page .sec01 .description .image01 {
    width: 100%;
  }
  .reason-page .sec01 .description .image02 {
    width: 78.58%;
    max-width: 78.583vw;
    margin: 0 0 0 3.33%;
  }
  .reason-page .sec01 .list-box01 {
    width: 100%;
    display: flex;
    justify-content: space-between;
  }
  .reason-page .sec01 .list-box01 .item {
    width: 24%;
    max-width: 23.333vw;
    background: #004487;
    border-radius: 0.833vw;
    box-sizing: border-box;
    padding: 1.583vw 0 1.25vw 0;
  }
  .reason-page .sec01 .list-box01 .item .image {
    margin: 0 1.667vw 0.417vw 1.667vw;
  }
  .reason-page .sec01 .list-box01 .item p {
    line-height: 1.4em;
    font-size: 1.667vw;
    font-weight: bold;
    color: #fff;
    text-align: center;
  }
  .reason-page .sec01 .list-box02 {
    margin: 0 auto;
    width: 100%;
    max-width: 83.333vw;
    display: flex;
    justify-content: space-between;
  }
  .reason-page .sec01 .list-box02 .item {
    width: 30%;
    max-width: 25vw;
    background: #004487;
    border-radius: 0.833vw;
    box-sizing: border-box;
    padding: 1.583vw 1.667vw 1.25vw 1.667vw;
  }
  .reason-page .sec01 .list-box02 .item p.catch {
    line-height: 1.4em;
    font-size: 2.5vw;
    font-weight: bold;
    color: #fff;
    text-align: center;
    margin: 0 0 2.083vw 0;
  }
  .reason-page .sec01 .list-box02 .item p {
    line-height: 1.4em;
    font-size: 1.667vw;
    color: #fff;
    text-align: center;
  }
}
@media only screen and (max-width: 769px) {
  .reason-page {
    padding: 0 0 15.625vw 0;
  }
  .reason-page .page-head {
    margin: 0 auto 12.5vw;
    width: 90.625vw;
    display: flex;
    align-items: center;
  }
  .reason-page h2 {
    margin: 0 0 0 0;
    width: calc( 100% - 38.438vw );
  }
  .reason-page .page-head .image {
    width: 38.438vw;
  }
  .reason-page h3 {
    margin: 0 0 3.125vw 0;
    line-height: 1.4em;
    font-size: 6.875vw;
    font-weight: bold;
    text-align: center;
  }
  .reason-page .intro {
    margin: 0 4.688vw 0 4.688vw;
    padding: 0 0 12.5vw 0;
    width: 90.625vw;
    position: relative;
  }
  .reason-page .intro p {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
    max-width: 100%;
    line-height: 1.6em;
    font-size: 3.438vw;
    font-weight: 500;
  }
  .reason-page .intro .image {

  }
  .reason-page .sec01 {
    margin: 0 4.688vw 0 4.688vw;
    padding: 0 0 12.5vw 0;
    width: 90.625vw;
    position: relative;
  }
  .reason-page .sec01 .description {
    margin: 0 0 0 0;
    padding: 0 0 4.688vw 0;
    line-height: 1.8em;
    font-size: 3.438vw;
  }
  .reason-page .sec01 .description .image01 {
    width: 100%;
  }
  .reason-page .sec01 .description .image02 {
    width: 100%;
    max-width: 100%;
    margin: 0 0 0 0;
  }
  .reason-page .sec01 .list-box01 {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .reason-page .sec01 .list-box01 .item {
    width: 43.75vw;
    max-width: 43.75vw;
    background: #004487;
    border-radius: 1.563vw;
    box-sizing: border-box;
    padding: 2.969vw 0 2.344vw 0;
    margin: 0 0 3.125vw 0;
  }
  .reason-page .sec01 .list-box01 .item .image {
    margin: 0 3.125vw 0.781vw 3.125vw;
  }
  .reason-page .sec01 .list-box01 .item p {
    line-height: 1.4em;
    font-size: 3.125vw;
    font-weight: bold;
    color: #fff;
    text-align: center;
  }
  .reason-page .sec01 .list-box02 {
    margin: 0 0;
    width: 90.625vw;
    max-width: 90.625vw;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
  .reason-page .sec01 .list-box02 .item {
    width: 100%;
    max-width: 100%;
    background: #004487;
    border-radius: 1.563vw;
    box-sizing: border-box;
    padding: 2.969vw 3.125vw 2.344vw 3.125vw;
    margin: 0 0 4.688vw 0;
  }
  .reason-page .sec01 .list-box02 .item p.catch {
    line-height: 1.4em;
    font-size: 4.688vw;
    font-weight: bold;
    color: #fff;
    text-align: center;
    margin: 0 0 3.906vw 0;
  }
  .reason-page .sec01 .list-box02 .item p {
    line-height: 1.4em;
    font-size: 3.125vw;
    color: #fff;
    text-align: center;
  }
  
  
}


/* cancellation-policy-page */
.cancellation-policy-page {
  
}
.cancellation-policy-page .page-head {
  margin: 0 0 0 0;
  padding: 0 0 65px 0;
}
.cancellation-policy-page .page-head h2 {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  line-height: 1.5em;
  font-size: 60px;
  font-weight: bold;
}
.cancellation-policy-page h3 {
  margin: 0 0 0 0;
  padding: 0 0 25px 0;
  line-height: 1.5em;
  font-size: 34px;
  color: #004485;
  font-weight: bold;
}
.cancellation-policy-page .description {
  margin: 0 0 0 0;
  padding: 0 0 175px 0;
  line-height: 1.8em;
  font-size: 24px;
}
.cancellation-policy-page .description ul {
  margin: 0 0 0 1.2em;
  padding: 0 0 0 1.2em;
  list-style: disc;
}
@media only screen and (min-width: 770px) and (max-width: 1200px) {
  .cancellation-policy-page {

  }
  .cancellation-policy-page .page-head {
    margin: 0 0 0 0;
    padding: 0 0 5.417vw 0;
  }
  .cancellation-policy-page .page-head h2 {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    line-height: 1.5em;
    font-size: 5vw;
    font-weight: bold;
  }
  .cancellation-policy-page h3 {
    margin: 0 0 0 0;
    padding: 0 0 2.083vw 0;
    line-height: 1.5em;
    font-size: 2.833vw;
    color: #004485;
    font-weight: bold;
  }
  .cancellation-policy-page .description {
    margin: 0 0 0 0;
    padding: 0 0 14.583vw 0;
    line-height: 1.8em;
    font-size: 2vw;
  }
  .cancellation-policy-page .description ul {
    margin: 0 0 0 1.2em;
    padding: 0 0 0 1.2em;
    list-style: disc;
  }

}
@media only screen and (max-width: 769px) {
  .cancellation-policy-page {
    margin: 0 auto;
    width: 90.625vw;
  }
  .cancellation-policy-page .page-head {
    margin: 0 0 0 0;
    padding: 0 0 11.719vw 0;
  }
  .cancellation-policy-page .page-head h2 {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    line-height: 1.5em;
    font-size: 6.25vw;
    font-weight: bold;
    text-align: center;
  }
  .cancellation-policy-page h3 {
    margin: 0 0 0 0;
    padding: 0 0 3.906vw 0;
    line-height: 1.5em;
    font-size: 4.375vw;
    color: #004485;
    font-weight: bold;
  }
  .cancellation-policy-page .description {
    margin: 0 0 0 0;
    padding: 0 0 13.281vw 0;
    line-height: 1.8em;
    font-size: 3.125vw;
  }
  .cancellation-policy-page .description ul {
    margin: 0 0 0 1.2em;
    padding: 0 0 0 1.2em;
    list-style: disc;
  }


}



/* author */
.author-page {
  padding: 0 0 100px 0;
}
.author-page .profile {
  margin: 0 0 155px 0;
  padding: 0 0 0 250px;
  position: relative;
}
.author-page .profile .image {
  margin: 0 60px 0 60px;
  padding: 0 0 0 0;
  width: 130px;
  position: absolute;
  top: 0;
  left: 0;
}
.author-page .profile .box {
  text-align: left;
}
.author-page .profile .box .position {
  margin: 0 0 0 0;
  line-height: 1.3em;
  font-size: 30px;
  font-weight: bold;
}
.author-page .profile .box .name {
  margin: 0 0 55px 0;
  line-height: 1.3em;
  font-size: 40px;
  font-weight: bold;
}
.author-page .profile .comment {
  margin: 0 0 0 0;
  line-height: 1.8em;
  font-size: 26px;
  font-weight: 500;
}


.author-page .list {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.author-page .list .item {
  margin: 0 0 100px 0;
  width: 49%;
  max-width: 580px;
  display: flex;
  justify-content: space-between;
}
.author-page .list .item .image {
  width: 51.724%;
  max-width: 300px;
}
.author-page .list .item .image img {
  object-fit: cover;
}
.author-page .list .item .box {
  width: 47%;
  max-width: 250px;
}
.author-page .list .item .box .title {
  margin: 0 0 15px 0;
  line-height: 1.4em;
  font-size: 24px;
  font-weight: bold;
}
.author-page .list .item .box .info {
  margin: 0 0 8px 0;
  display: flex;
  align-items: center;
}
.author-page .list .item .box .info .avator {
  width: 50px;
  margin: 0 15px 0 0;
}
.author-page .list .item .box .info .avator img {
  width: 50px;
  height: 50px;
  display: block;
  border-radius: 180px;
  border: 1px solid #dedede;
  box-sizing: border-box;
  margin: 0 15px 0 0;
  object-fit: cover;
}
.author-page .list .item .box .info .name {
  line-height: 1.4em;
  font-size: 18px;
  font-weight: normal;
  color: #666666;
  margin: 0 30px 0 0;
}
.author-page .list .item .box .info .post {
  line-height: 1.4em;
  font-size: 16px;
  font-weight: normal;
  color: #666666;
}
.author-page .list .item .box .description {
  margin: 0 0 20px 0;
  line-height: 1.6em;
  font-size: 20px;
  font-weight: normal;
  color: #333333;
}
.author-page .list .item .box .more {
  margin: 0 0 22px 0;
}
.author-page .list .item .box .more a {
  width: 180px;
  height: 40px;
  line-height: 1.4em;
  font-size: 22px;
  font-weight: bold;
  color: #fff;
  background: #004487;
  text-decoration: none;
  box-sizing: border-box;
  position: relative;
  border-radius: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.author-page .list .item .box .tags {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.author-page .list .item .box .tags .tag {
  margin: 0 7px 5px 0;
}
.author-page .list .item .box .tags .tag a {
  padding: 8px 15px;
  line-height: 1.4em;
  font-size: 18px;
  color: #000000;
  color: rgba(33, 33, 31, 1);
  text-decoration: none;
  border: 1px dashed #a7a7a7;
  border-radius: 180px;
  display: inline-block;
}
.author-page .paging {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.author-page .paging a {
  margin: 0 7px;
  width: 40px;
  height: 40px;
  line-height: 1.2em;
  font-size: 22px;
  font-weight: bold;
  color: #000;
  color: rgba(33, 33, 31, 1);
  border: 1px solid #000;
  text-decoration: none;
  box-sizing: border-box;
  position: relative;
  border-radius: 180px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.6s 0s;
}
.author-page .paging a:hover {
  color: #fff;
  background: #004487;
}
.author-page .paging .current {
  margin: 0 7px;
  width: 40px;
  height: 40px;
  line-height: 1.2em;
  font-size: 22px;
  font-weight: bold;
  color: #fff;
  background: #004487;
  border: 1px solid #000;
  text-decoration: none;
  box-sizing: border-box;
  position: relative;
  border-radius: 180px;
  display: flex;
  align-items: center;
  justify-content: center;

}
.author-page .paging .extend {
  margin: 0 7px;
  width: 40px;
  height: 40px;
  line-height: 1.2em;
  font-size: 22px;
  font-weight: bold;
  text-decoration: none;
  box-sizing: border-box;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media only screen and (min-width: 770px) and (max-width: 1200px) {
  .author-page .profile {
    margin: 0 0 12.917vw 0;
    padding: 0 0 0 20.833vw;
    position: relative;
  }
  .author-page .profile .image {
    margin: 0 5vw 0 5vw;
    padding: 0 0 0 0;
    width: 10.833vw;
    position: absolute;
    top: 0;
    left: 0;
  }
  .author-page .profile .box {
    text-align: left;
  }
  .author-page .profile .box .position {
    margin: 0 0 0 0;
    line-height: 1.3em;
    font-size: 2.5vw;
    font-weight: bold;
  }
  .author-page .profile .box .name {
    margin: 0 0 4.583vw 0;
    line-height: 1.3em;
    font-size: 3.333vw;
    font-weight: bold;
  }
  .author-page .profile .comment {
    margin: 0 0 0 0;
    line-height: 1.8em;
    font-size: 2.167vw;
    font-weight: 500;
  }


  .author-page .list {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .author-page .list .item {
    margin: 0 0 8.333vw 0;
    width: 49%;
    max-width: 48.333vw;
    display: flex;
    justify-content: space-between;
  }
  .author-page .list .item .image {
    width: 51.724%;
    max-width: 25vw;
  }
  .author-page .list .item .image img {
    object-fit: cover;
  }
  .author-page .list .item .box {
    width: 47%;
    max-width: 20.833vw;
  }
  .author-page .list .item .box .title {
    margin: 0 0 1.25vw 0;
    line-height: 1.4em;
    font-size: 2vw;
    font-weight: bold;
  }
  .author-page .list .item .box .info {
    margin: 0 0 0.667vw 0;
    display: flex;
    align-items: center;
  }
  .author-page .list .item .box .info .avator {
    width: 4.167vw;
    margin: 0 1.25vw 0 0;
  }
  .author-page .list .item .box .info .avator img {
    width: 4.167vw;
    height: 4.167vw;
    display: block;
    border-radius: 15vw;
    border: 1px solid #dedede;
    box-sizing: border-box;
    margin: 0 1.25vw 0 0;
    object-fit: cover;
  }
  .author-page .list .item .box .info .name {
    line-height: 1.4em;
    font-size: 1.5vw;
    font-weight: normal;
    color: #666666;
    margin: 0 2.5vw 0 0;
  }
  .author-page .list .item .box .info .post {
    line-height: 1.4em;
    font-size: 1.333vw;
    font-weight: normal;
    color: #666666;
  }
  .author-page .list .item .box .description {
    margin: 0 0 1.667vw 0;
    line-height: 1.6em;
    font-size: 1.667vw;
    font-weight: normal;
    color: #333333;
  }
  .author-page .list .item .box .more {
    margin: 0 0 1.833vw 0;
  }
  .author-page .list .item .box .more a {
    width: 15vw;
    height: 3.333vw;
    line-height: 1.4em;
    font-size: 1.833vw;
    font-weight: bold;
    color: #fff;
    background: #004487;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
    border-radius: 0.417vw;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .author-page .list .item .box .tags {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
  }
  .author-page .list .item .box .tags .tag {
    margin: 0 0.583vw 0.417vw 0;
  }
  .author-page .list .item .box .tags .tag a {
    padding: 0.667vw 1.25vw;
    line-height: 1.4em;
    font-size: 1.5vw;
    color: #000000;
    color: rgba(33, 33, 31, 1);
    text-decoration: none;
    border: 1px dashed #a7a7a7;
    border-radius: 15vw;
    display: inline-block;
  }
  .author-page .paging {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .author-page .paging a {
    margin: 0 0.583vw;
    width: 3.333vw;
    height: 3.333vw;
    line-height: 1.2em;
    font-size: 1.833vw;
    font-weight: bold;
    color: #000;
    color: rgba(33, 33, 31, 1);
    border: 1px solid #000;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
    border-radius: 15vw;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.6s 0s;
  }
  .author-page .paging a:hover {
    color: #fff;
    background: #004487;
  }
  .author-page .paging .current {
    margin: 0 0.583vw;
    width: 3.333vw;
    height: 3.333vw;
    line-height: 1.2em;
    font-size: 1.833vw;
    font-weight: bold;
    color: #fff;
    background: #004487;
    border: 1px solid #000;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
    border-radius: 15vw;
    display: flex;
    align-items: center;
    justify-content: center;

  }
  .author-page .paging .extend {
    margin: 0 0.583vw;
    width: 3.333vw;
    height: 3.333vw;
    line-height: 1.2em;
    font-size: 1.833vw;
    font-weight: bold;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
@media only screen and (max-width: 769px) {
  .author-page {
    padding: 0 0 10.938vw 0;
  }
  .author-page h2 {
    padding: 0 0 13.281vw 0;
    text-align: center;
  }
  
  .author-page .profile {
    margin: 0 auto 10.938vw auto;
    padding: 0 0 0 0;
    width: 90.625vw;
    position: relative;
    display: flex;
    flex-wrap: wrap;
  }
  .author-page .profile .image {
    margin: 0 11.719vw 0 0;
    padding: 0 0 0 0;
    width: 20.313vw;
    position: relative;
    top: auto;
    left: auto;
  }
  .author-page .profile .box {
    width: calc( 100% - 32.031vw );
    text-align: left;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
  }
  .author-page .profile .box .position {
    margin: 0 0 0 0;
    line-height: 1.3em;
    font-size: 4.063vw;
    font-weight: bold;
    text-align: left;
  }
  .author-page .profile .box .name {
    margin: 0 0 8.594vw 0;
    line-height: 1.3em;
    font-size: 5.625vw;
    font-weight: bold;
  }
  .author-page .profile .comment {
    margin: 5.469vw 0 0 0;
    line-height: 1.8em;
    font-size: 3.438vw;
    font-weight: 500;
  }

  
  
  
  
  
  
  .author-page .list {
    margin: 0 auto 7.813vw auto;
    width: 90.625vw;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .author-page .list .item {
    margin: 0 0 7.813vw 0;
    width: 100%;
    max-width: 100%;
    display: flex;
    justify-content: space-between;
  }
  .author-page .list .item .image {
    width: 51.724%;
    max-width: 46.875vw;
  }
  .author-page .list .item .image img {
    object-fit: cover;
  }
  .author-page .list .item .box {
    width: 47%;
    max-width: 39.063vw;
  }
  .author-page .list .item .box .title {
    margin: 0 0 2.344vw 0;
    line-height: 1.4em;
    font-size: 4.688vw;
    font-weight: bold;
  }
  .author-page .list .item .box .info {
    margin: 0 0 1.25vw 0;
    display: flex;
    align-items: center;
  }
  .author-page .list .item .box .info .avator {
    width: 7.813vw;
    margin: 0 2.344vw 0 0;
  }
  .author-page .list .item .box .info .avator img {
    width: 7.813vw;
    height: 7.813vw;
    display: block;
    border-radius: 28.125vw;
    border: 1px solid #dedede;
    box-sizing: border-box;
    margin: 0 2.344vw 0 0;
    object-fit: cover;
  }
  .author-page .list .item .box .info .name {
    line-height: 1.4em;
    font-size: 3.125vw;
    font-weight: normal;
    color: #666666;
    margin: 0 1.563vw 0 0;
  }
  .author-page .list .item .box .info .post {
    line-height: 1.4em;
    font-size: 2.813vw;
    font-weight: normal;
    color: #666666;
  }
  .author-page .list .item .box .tags {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
  }
  .author-page .list .item .box .tags .tag {
    margin: 0 1.094vw 0.781vw 0;
  }
  .author-page .list .item .box .tags .tag a {
    padding: 1.25vw 2.344vw;
    line-height: 1.4em;
    font-size: 2.813vw;
    color: #000000;
    color: rgba(33, 33, 31, 1);
    text-decoration: none;
    border: 1px dashed #a7a7a7;
    border-radius: 28.125vw;
    display: inline-block;
  }
  .author-page .paging {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .author-page .paging a {
    margin: 0 1.094vw;
    width: 6.25vw;
    height: 6.25vw;
    line-height: 1.2em;
    font-size: 3.438vw;
    font-weight: bold;
    color: #000;
    color: rgba(33, 33, 31, 1);
    border: 1px solid #000;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
    border-radius: 28.125vw;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.6s 0s;
  }
  .author-page .paging a:hover {
    color: #fff;
    background: #004487;
  }
  .author-page .paging .current {
    margin: 0 1.094vw;
    width: 6.25vw;
    height: 6.25vw;
    line-height: 1.2em;
    font-size: 3.438vw;
    font-weight: bold;
    color: #fff;
    background: #004487;
    border: 1px solid #000;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
    border-radius: 28.125vw;
    display: flex;
    align-items: center;
    justify-content: center;

  }
  .author-page .paging .extend {
    margin: 0 1.094vw;
    width: 6.25vw;
    height: 6.25vw;
    line-height: 1.2em;
    font-size: 3.438vw;
    font-weight: bold;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
  }

}


/* news */
.news-page {
  padding: 0 0 100px 0;
}
.news-page h2 {
  margin: 0 0 100px 0;
  line-height: 1.4em;
  font-size: 60px;
  font-weight: bold;
}
.news-page .item {
  margin: 0 0 80px 0;
  display: flex;
}
.news-page .item .post {
  width: 235px;
  line-height: 1.4em;
  font-size: 26px;
}
.news-page .item .title {
  line-height: 1.4em;
  font-size: 30px;
}
.news-page .paging {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.news-page .paging a {
  margin: 0 7px;
  width: 40px;
  height: 40px;
  line-height: 1.2em;
  font-size: 22px;
  font-weight: bold;
  color: #000;
  color: rgba(33, 33, 31, 1);
  border: 1px solid #000;
  text-decoration: none;
  box-sizing: border-box;
  position: relative;
  border-radius: 180px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.6s 0s;
}
.news-page .paging a:hover {
  color: #fff;
  background: #004487;
}
.news-page .paging .current {
  margin: 0 7px;
  width: 40px;
  height: 40px;
  line-height: 1.2em;
  font-size: 22px;
  font-weight: bold;
  color: #fff;
  background: #004487;
  border: 1px solid #000;
  text-decoration: none;
  box-sizing: border-box;
  position: relative;
  border-radius: 180px;
  display: flex;
  align-items: center;
  justify-content: center;

}
.news-page .paging .extend {
  margin: 0 7px;
  width: 40px;
  height: 40px;
  line-height: 1.2em;
  font-size: 22px;
  font-weight: bold;
  text-decoration: none;
  box-sizing: border-box;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media only screen and (min-width: 770px) and (max-width: 1200px) {
  .news-page {
    padding: 0 0 8.333vw 0;
  }
  .news-page h2 {
    margin: 0 0 8.333vw 0;
    line-height: 1.4em;
    font-size: 5vw;
    font-weight: bold;
  }
  .news-page .item {
    margin: 0 0 6.667vw 0;
    display: flex;
  }
  .news-page .item .post {
    width: 19.583vw;
    line-height: 1.4em;
    font-size: 2.167vw;
  }
  .news-page .item .title {
    line-height: 1.4em;
    font-size: 2.5vw;
  }
  .news-page .paging {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .news-page .paging a {
    margin: 0 0.583vw;
    width: 3.333vw;
    height: 3.333vw;
    line-height: 1.2em;
    font-size: 1.833vw;
    font-weight: bold;
    color: #000;
    color: rgba(33, 33, 31, 1);
    border: 1px solid #000;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
    border-radius: 15vw;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.6s 0s;
  }
  .news-page .paging a:hover {
    color: #fff;
    background: #004487;
  }
  .news-page .paging .current {
    margin: 0 0.583vw;
    width: 3.333vw;
    height: 3.333vw;
    line-height: 1.2em;
    font-size: 1.833vw;
    font-weight: bold;
    color: #fff;
    background: #004487;
    border: 1px solid #000;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
    border-radius: 15vw;
    display: flex;
    align-items: center;
    justify-content: center;

  }
  .news-page .paging .extend {
    margin: 0 0.583vw;
    width: 3.333vw;
    height: 3.333vw;
    line-height: 1.2em;
    font-size: 1.833vw;
    font-weight: bold;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
@media only screen and (max-width: 769px) {
  .news-page {
    padding: 0 0 15.625vw 0;
  }
  .news-page h2 {
    margin: 0 4.688vw 8.625vw 4.688vw;
    width: 90.625vw;
    max-width: 90.625vw;
    line-height: 1.4em;
    font-size: 6.25vw;
    font-weight: bold;
    text-align: center;
  }
  .news-page .item {
    margin: 0 4.688vw 8vw 4.688vw;
    width: 90.625vw;
    max-width: 90.625vw;
    display: flex;
  }
  .news-page .item .post {
    width: 26.563vw;
    line-height: 1.4em;
    font-size: 3.75vw;
  }
  .news-page .item .title {
    width: calc( 100% - 26.563vw );
    line-height: 1.4em;
    font-size: 4.375vw;
  }
  .news-page .paging {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .news-page .paging a {
    margin: 0 1.094vw;
    width: 6.25vw;
    height: 6.25vw;
    line-height: 1.2em;
    font-size: 3.438vw;
    font-weight: bold;
    color: #000;
    color: rgba(33, 33, 31, 1);
    border: 1px solid #000;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
    border-radius: 28.125vw;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.6s 0s;
  }
  .news-page .paging a:hover {
    color: #fff;
    background: #004487;
  }
  .news-page .paging .current {
    margin: 0 1.094vw;
    width: 6.25vw;
    height: 6.25vw;
    line-height: 1.2em;
    font-size: 3.438vw;
    font-weight: bold;
    color: #fff;
    background: #004487;
    border: 1px solid #000;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
    border-radius: 28.125vw;
    display: flex;
    align-items: center;
    justify-content: center;

  }
  .news-page .paging .extend {
    margin: 0 1.094vw;
    width: 6.25vw;
    height: 6.25vw;
    line-height: 1.2em;
    font-size: 3.438vw;
    font-weight: bold;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
  }

}





/* news-single */
.news-single-page {
  padding: 0 0 100px 0;
}
.news-single-page .post {
  margin: 0 0 30px 0;
  line-height: 1.4em;
  font-size: 22px;
  text-align: right;
  display: block;
}
.news-single-page h2 {
  margin: 0 0 90px 0;
  line-height: 1.4em;
  font-size: 60px;
  font-weight: bold;
}
.news-single-page .description {
  margin: 0 0 20px 0;
  line-height: 1.8em;
  font-size: 18px;
  font-weight: normal;
  color: #333333;
}
.news-single-page .description p {
  margin: 0 0 30px 0;
}
.news-single-page .description h1 {
  margin: 0 0 30px 0;
  padding: 0 0 25px 20px;
  min-height: 80px;
  box-sizing: border-box;
  line-height: 1.4em;
  font-size: 40px;
  font-weight: bold;
  background: url("../images/blog/title_back_01.png") no-repeat left bottom;
  background-size: 100% auto;
}
.news-single-page .description h2 {
  margin: 0 0 20px 0;
  padding: 0 0 0 0;
  line-height: 1.4em;
  font-size: 34px;
  font-weight: bold;
  color: #004486;
}
.news-single-page .description h3 {
  margin: 0 0 20px 0;
  padding: 0 0 0 0;
  line-height: 1.4em;
  font-size: 30px;
  font-weight: bold;
}
.news-single-page .description h4 {
  margin: 0 0 20px 0;
  padding: 0 0 0 0;
  line-height: 1.4em;
  font-size: 26px;
  font-weight: bold;
}
.news-single-page .description h5 {
  margin: 0 0 20px 0;
  padding: 0 0 0 0;
  line-height: 1.4em;
  font-size: 22px;
  font-weight: bold;
}
.news-single-page .description ul {
  margin: 0 0 20px 1.2em;
  padding: 0 0 0 0;
  list-style: disc;
}
.news-single-page .description ol {
  margin: 0 0 20px 1.2em;
  padding: 0 0 0 0;
  list-style: decimal;
}
@media only screen and (min-width: 770px) and (max-width: 1200px) {
  .news-single-page {
    padding: 0 0 8.333vw 0;
  }
  .news-single-page .post {
    margin: 0 0 2.5vw 0;
    line-height: 1.4em;
    font-size: 1.833vw;
    text-align: right;
    display: block;
  }
  .news-single-page h2 {
    margin: 0 0 7.5vw 0;
    line-height: 1.4em;
    font-size: 5vw;
    font-weight: bold;
  }
  .news-single-page .description {
    margin: 0 0 1.667vw 0;
    line-height: 1.8em;
    font-size: 1.5vw;
    font-weight: normal;
    color: #333333;
  }
  .news-single-page .description p {
    margin: 0 0 2.5vw 0;
  }
  .news-single-page .description h1 {
    margin: 0 0 2.5vw 0;
    padding: 0 0 2.083vw 1.667vw;
    min-height: 6.667vw;
    box-sizing: border-box;
    line-height: 1.4em;
    font-size: 3.333vw;
    font-weight: bold;
    background: url("../images/blog/title_back_01.png") no-repeat left bottom;
    background-size: 100% auto;
  }
  .news-single-page .description h2 {
    margin: 0 0 1.667vw 0;
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 2.833vw;
    font-weight: bold;
    color: #004486;
  }
  .news-single-page .description h3 {
    margin: 0 0 1.667vw 0;
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 2.5vw;
    font-weight: bold;
  }
  .news-single-page .description h4 {
    margin: 0 0 1.667vw 0;
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 2.167vw;
    font-weight: bold;
  }
  .news-single-page .description h5 {
    margin: 0 0 1.667vw 0;
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 1.833vw;
    font-weight: bold;
  }
  .news-single-page .description ul {
    margin: 0 0 20px 1.2em;
    padding: 0 0 0 0;
    list-style: disc;
  }
  .news-single-page .description ol {
    margin: 0 0 20px 1.2em;
    padding: 0 0 0 0;
    list-style: decimal;
  }
}
@media only screen and (max-width: 769px) {
  .news-single-page {
    padding: 0 0 15.625vw 0;
  }
  .news-single-page .post {
    margin: 0 4.688vw 4.688vw 4.688vw;
    width: 90.625vw;
    max-width: 90.625vw;
    line-height: 1.4em;
    font-size: 3.75vw;
    text-align: left;
    display: block;
  }
  .news-single-page h2 {
    margin: 0 4.688vw 12.5vw 4.688vw;
    width: 90.625vw;
    max-width: 90.625vw;
    line-height: 1.4em;
    font-size: 5.313vw;
    font-weight: bold;
  }
  .news-single-page .description {
    margin: 0 4.688vw 12.5vw 4.688vw;
    width: 90.625vw;
    max-width: 90.625vw;
    line-height: 1.8em;
    font-size: 3.125vw;
    font-weight: normal;
    color: #333333;
  }
  .news-single-page .description p {
    margin: 0 0 4.688vw 0;
  }
  .news-single-page .description h1 {
    margin: 0 0 7.813vw 0;
    padding: 0 0 3.906vw 3.125vw;
    min-height: 12.5vw;
    box-sizing: border-box;
    line-height: 1.4em;
    font-size: 4.688vw;
    font-weight: bold;
    background: url("../images/blog/title_back_01.png") no-repeat left bottom;
    background-size: auto 100%;
  }
  .news-single-page .description h2 {
    margin: 0 0 3.125vw 0;
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 4.375vw;
    font-weight: bold;
    color: #004486;
  }
  .news-single-page .description h3 {
    margin: 0 0 3.125vw 0;
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 4.063vw;
    font-weight: bold;
  }
  .news-single-page .description h4 {
    margin: 0 0 3.125vw 0;
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 3.75vw;
    font-weight: bold;
  }
  .news-single-page .description h5 {
    margin: 0 0 3.125vw 0;
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 3.438vw;
    font-weight: bold;
  }
  .news-single-page .description ul {
    margin: 0 0 3.125vw 1.2em;
    padding: 0 0 0 0;
    list-style: disc;
  }
  .news-single-page .description ol {
    margin: 0 0 3.125vw 1.2em;
    padding: 0 0 0 0;
    list-style: decimal;
  }
}


/* cart */
.cart-page {
  padding: 0 0 100px 0;
}
.cart-page h3 {
  margin: 0 0 0 0;
  padding: 0 0 70px 0;
  text-align: center;
  line-height: 1.4em;
  font-size: 40px;
  font-weight: bold;
}
.cart-page .cart-btn01 {
  margin: 0 auto 80px auto;
  max-width: 400px;
}
.cart-page .cart-btn01 img {
  width: 100%;
  display: block;
}
.cart-page .cart-label01 {
  margin: 0 auto 20px auto;
  max-width: 280px;
}
.cart-page .cart-label01 img {
  width: 100%;
  display: block;
}
.cart-page .cart-label02 {
  margin: 0 auto 20px auto;
  max-width: 400px;
}
.cart-page .cart-label02 img {
  width: 100%;
  display: block;
}
.cart-page .cart-label03 {
  margin: 0 auto 30px auto;
  max-width: 250px;
}
.cart-page .cart-label03 img {
  width: 100%;
  display: block;
}
.cart-page .cart-form-wrap {
  margin: 0 0 50px 0;
  padding: 30px 30px 45px 30px;
  width: 100%;
  background: #e5ecf3;
  box-sizing: border-box;
}
.cart-page .cart-form-wrap table {
  margin: 0 0 25px 0;
  padding: 0 0 0 0;
}
.cart-page .cart-form-wrap table th {
  margin: 0 0 0 0;
  padding: 0 32px 15px 0;
  line-height: 1.4em;
  font-size: 18px;
  font-weight: bold;
  color: #333333;
  vertical-align: top;
}
.cart-page .cart-form-wrap table td {
  margin: 0 0 0 0;
  padding: 0 32px 25px 0;
  vertical-align: top;
}
.cart-page .cart-form-wrap table td .text01 {
  margin: 0 0 0 0;
  padding: 5px 10px;
  width: 220px;
  text-align: left;
  line-height: 1.4em;
  font-size: 18px;
  font-weight: normal;
  box-sizing: border-box;
  background: #fff;
  border: 1px solid #cccccc;
  border-radius: 5px;
  -webkit-appearance: none;
}
.cart-page .cart-form-wrap table td .text02 {
  margin: 0 0 0 0;
  padding: 5px 10px;
  width: 380px;
  text-align: left;
  line-height: 1.4em;
  font-size: 18px;
  font-weight: normal;
  box-sizing: border-box;
  background: #fff;
  border: 1px solid #cccccc;
  border-radius: 5px;
  -webkit-appearance: none;
}
.cart-page .cart-form-wrap table td .num01 {
  margin: 0 0 0 0;
  padding: 5px 10px 5px 10px;
  width: 100px;
  text-align: right;
  line-height: 1.4em;
  font-size: 18px;
  font-weight: normal;
  box-sizing: border-box;
  background: #fff;
  border: 1px solid #cccccc;
  border-radius: 5px;
  -webkit-appearance: none;
}
.cart-page .cart-form-wrap table td .del01 {
  margin: 0 0 0 0;
  padding: 5px 0 5px 0;
  width: 100px;
  text-align: center;
  line-height: 2.1em;
  font-size: 12px;
  font-weight: normal;
  box-sizing: border-box;
  background: #333;
  color: #fff;
  border: 1px solid #333;
  border-radius: 5px;
  -webkit-appearance: none;
}
.cart-page .cart-form-wrap table td .area {
  margin: 0 0 0 0;
  padding: 5px 0;
  width: 80px;
  text-align: center;
  line-height: 1.4em;
  font-size: 18px;
  font-weight: normal;
  color: #fff;
  border-radius: 3px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.cart-page .cart-form-wrap table td .area.gunma {
  background: #18a82d;
}
.cart-page .cart-form-wrap table td .area.saitama {
  background: #ea2040;
}
.cart-page .cart-form-wrap table td .area.osaka {
  background: #ef7216;
}
.cart-page .cart-form-wrap table td .area.aichi {
  background: #00ced1;
}
.cart-page .cart-form-wrap table td .area.fukuoka {
  background: #999999;
}
.cart-page .cart-form-wrap .note {
  margin: 0 0 0 0;
  padding: 15px 0;
  line-height: 1.4em;
  font-size: 24px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  background: #ff0000;
}
.cart-page .how-to-receive {
  margin: 0 auto 47px;
  width: 100%;
  max-width: 1054px;
  display: flex;
  justify-content: space-between;
}
.cart-page .how-to-receive .item {
  margin: 0 0 0 0;
  padding: 15px 0 0 0;
  width: 49%;
  max-width: 500px;
  border: 1px solid #014587;
  box-sizing: border-box;
  box-shadow: 3px 3px 3px rgba(0,0,0,0.4);
}
.cart-page .how-to-receive .item h4 {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  min-height: 72px;
  text-align: center;
  line-height: 1.4em;
  font-size: 30px;
  font-weight: bold;
}
.cart-page .how-to-receive .item h4 strong {
  line-height: 1.4em;
  font-size: 40px;
  font-weight: bold;
}
.cart-page .how-to-receive .item p {
  margin: 0 48px 18px 48px;
  padding: 0 0 0 0;
  text-align: left;
  line-height: 1.6em;
  font-size: 20px;
  font-weight: normal;
}
@media only screen and (min-width: 770px) and (max-width: 1200px) {
  .cart-page {
    padding: 0 0 8.333vw 0;
  }
  .cart-page h3 {
    margin: 0 0 0 0;
    padding: 0 0 5.833vw 0;
    text-align: center;
    line-height: 1.4em;
    font-size: 3.333vw;
    font-weight: bold;
  }
  .cart-page .cart-btn01 {
    margin: 0 auto 80px auto;
    max-width: 33.333vw;
  }
  .cart-page .cart-btn01 img {
    width: 100%;
    display: block;
  }
  .cart-page .cart-label01 {
    margin: 0 auto 20px auto;
    max-width: 23.333vw;
  }
  .cart-page .cart-label01 img {
    width: 100%;
    display: block;
  }
  .cart-page .cart-label02 {
    margin: 0 auto 20px auto;
    max-width: 33.333vw;
  }
  .cart-page .cart-label02 img {
    width: 100%;
    display: block;
  }
  .cart-page .cart-label03 {
    margin: 0 auto 30px auto;
    max-width: 20.833vw;
  }
  .cart-page .cart-label03 img {
    width: 100%;
    display: block;
  }
  .cart-page .cart-form-wrap {
    margin: 0 0 4.167vw 0;
    padding: 2.5vw 2.5vw 3.75vw 2.5vw;
    width: 100%;
    background: #e5ecf3;
    box-sizing: border-box;
  }
  .cart-page .cart-form-wrap table {
    margin: 0 0 2.083vw 0;
    padding: 0 0 0 0;
  }
  .cart-page .cart-form-wrap table th {
    margin: 0 0 0 0;
    padding: 0 2.667vw 1.25vw 0;
    line-height: 1.4em;
    font-size: 1.5vw;
    font-weight: bold;
    color: #333333;
    vertical-align: top;
  }
  .cart-page .cart-form-wrap table td {
    margin: 0 0 0 0;
    padding: 0 2.667vw 2.083vw 0;
    vertical-align: top;
  }
  .cart-page .cart-form-wrap table td .text01 {
    margin: 0 0 0 0;
    padding: 0.417vw 0.833vw;
    width: 18.333vw;
    text-align: left;
    line-height: 1.4em;
    font-size: 1.5vw;
    font-weight: normal;
    box-sizing: border-box;
    background: #fff;
    border: 1px solid #cccccc;
    border-radius: 0.417vw;
    -webkit-appearance: none;
  }
  .cart-page .cart-form-wrap table td .text02 {
    margin: 0 0 0 0;
    padding: 0.417vw 0.833vw;
    width: 31.667vw;
    text-align: left;
    line-height: 1.4em;
    font-size: 1.5vw;
    font-weight: normal;
    box-sizing: border-box;
    background: #fff;
    border: 1px solid #cccccc;
    border-radius: 0.417vw;
    -webkit-appearance: none;
  }
  .cart-page .cart-form-wrap table td .num01 {
    margin: 0 0 0 0;
    padding: 0.417vw 0.833vw 0.417vw 0.833vw;
    width: 8.333vw;
    text-align: right;
    line-height: 1.4em;
    font-size: 1.5vw;
    font-weight: normal;
    box-sizing: border-box;
    background: #fff;
    border: 1px solid #cccccc;
    border-radius: 0.417vw;
    -webkit-appearance: none;
  }
  .cart-page .cart-form-wrap table td .del01 {
    margin: 0 0 0 0;
    padding: 0.417vw 0 0.417vw 0;
    width: 8.333vw;
    text-align: center;
    line-height: 2.1em;
    font-size: 1vw;
    font-weight: normal;
    box-sizing: border-box;
    background: #333;
    color: #fff;
    border: 1px solid #333;
    border-radius: 0.417vw;
    -webkit-appearance: none;
  }
  .cart-page .cart-form-wrap table td .area {
    margin: 0 0 0 0;
    padding: 0.417vw 0;
    width: 6.667vw;
    text-align: center;
    line-height: 1.4em;
    font-size: 1.5vw;
    font-weight: normal;
    color: #fff;
    border-radius: 0.25vw;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .cart-page .cart-form-wrap table td .area.gunma {
    background: #18a82d;
  }
  .cart-page .cart-form-wrap table td .area.saitama {
    background: #ea2040;
  }
  .cart-page .cart-form-wrap table td .area.osaka {
    background: #ef7216;
  }
  .cart-page .cart-form-wrap table td .area.aichi {
    background: #00ced1;
  }
  .cart-page .cart-form-wrap table td .area.fukuoka {
    background: #999999;
  }

  .cart-page .cart-form-wrap .note {
    margin: 0 0 0 0;
    padding: 1.25vw 0;
    line-height: 1.4em;
    font-size: 2vw;
    font-weight: bold;
    color: #fff;
    text-align: center;
    background: #ff0000;
  }
  .cart-page .how-to-receive {
    margin: 0 auto 47px;
    width: 100%;
    max-width: 87.833vw;
    display: flex;
    justify-content: space-between;
  }
  .cart-page .how-to-receive .item {
    margin: 0 0 0 0;
    padding: 1.25vw 0 0 0;
    width: 49%;
    max-width: 41.667vw;
    border: 1px solid #014587;
    box-sizing: border-box;
    box-shadow: 3px 3px 3px rgba(0,0,0,0.4);
  }
  .cart-page .how-to-receive .item h4 {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    min-height: 6vw;
    text-align: center;
    line-height: 1.4em;
    font-size: 2.5vw;
    font-weight: bold;
  }
  .cart-page .how-to-receive .item h4 strong {
    line-height: 1.4em;
    font-size: 3.333vw;
    font-weight: bold;
  }
  .cart-page .how-to-receive .item p {
    margin: 0 4vw 1.5vw 4vw;
    padding: 0 0 0 0;
    text-align: left;
    line-height: 1.6em;
    font-size: 1.667vw;
    font-weight: normal;
  }
}
@media only screen and (max-width: 769px) {
  .cart-page {
    padding: 0 0 15.625vw 0;
  }
  .cart-page h2 {
    margin: 0 4.688vw 4.688vw 4.688vw;
    width: 90.625vw;
    max-width: 90.625vw;
  }
    
  .cart-page h3 {
    margin: 0 0 0 0;
    padding: 0 0 6.25vw 0;
    text-align: center;
    line-height: 1.4em;
    font-size: 3.75vw;
    font-weight: bold;
  }
  .cart-page .cart-btn01 {
    margin: 0 auto 35px auto;
    max-width: 46.875vw;
  }
  .cart-page .cart-btn01 img {
    width: 100%;
    display: block;
  }
  .cart-page .cart-label01 {
    margin: 0 auto 3.125vw auto;
    max-width: 31.25vw;
  }
  .cart-page .cart-label01 img {
    width: 100%;
    display: block;
  }
  .cart-page .cart-label02 {
    margin: 0 auto 3.125vw auto;
    max-width: 39.063vw;
  }
  .cart-page .cart-label02 img {
    width: 100%;
    display: block;
  }
  .cart-page .cart-label03 {
    margin: 0 auto 3.125vw auto;
    max-width: 28.125vw;
  }
  .cart-page .cart-label03 img {
    width: 100%;
    display: block;
  }
  .cart-page .cart-form-wrap {
    margin: 0 0 7.813vw 0;
    padding: 2.5vw 4.688vw 7.313vw 4.688vw;
    width: 100%;
    background: #e5ecf3;
    box-sizing: border-box;
  }
  .cart-page .cart-form-wrap .text {
    margin: 0 0 0 0;
    padding: 0 0 2.344vw 0;
    line-height: 1.4em;
    font-size: 2.813vw;
    font-weight: bold;
    color: #333333;
  }
  .cart-page .cart-form-wrap table {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 90.625vw;
    display: block;
  }
  .cart-page .cart-form-wrap table tr {
    margin: 0 0 7.031vw 0;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    position: relative;
  }
  .cart-page .cart-form-wrap table tbody {
    width: 100%;
    display: block;
  }
  .cart-page .cart-form-wrap table td {
    margin: 0 0 0 0;
    padding: 0 0 2vw 0;
    vertical-align: top;
    display: flex;
    align-items: flex-start;
  }
  .cart-page .cart-form-wrap table tr td:nth-of-type(1) {
    margin: 0 2.813vw 1.25vw 0;
    width: 28.125vw;
  }
  .cart-page .cart-form-wrap table tr td:nth-of-type(2) {
    margin: 0 0 1.25vw 0;
    width: 31.25vw;
  }
  .cart-page .cart-form-wrap table tr td:nth-of-type(3) {
    margin: 0 0 0 0;
    width: 68.125vw;
  }
  .cart-page .cart-form-wrap table tr td:nth-of-type(4) {
    margin: 0 0 0 4vw;
    width: 18.188vw;
  }
  .cart-page .cart-form-wrap table tr td:nth-of-type(5) {
    margin: 0 0 0 0;
    position: absolute;
    top: 0;
    right: 0;
  }
  
  .cart-page .cart-form-wrap table td .text01 {
    margin: 0 0 0 0;
    padding: 1.281vw 1.563vw;
    width: 100%;
    text-align: left;
    line-height: 1.4em;
    font-size: 2.813vw;
    font-weight: normal;
    box-sizing: border-box;
    background: #fff;
    border: 1px solid #cccccc;
    border-radius: 0.781vw;
    -webkit-appearance: none;
  }
  .cart-page .cart-form-wrap table td .text02 {
    margin: 0 0 0 0;
    padding: 1.281vw 1.563vw;
    width: 100%;
    text-align: left;
    line-height: 1.4em;
    font-size: 2.813vw;
    font-weight: normal;
    box-sizing: border-box;
    background: #fff;
    border: 1px solid #cccccc;
    border-radius: 0.781vw;
    -webkit-appearance: none;
  }
  .cart-page .cart-form-wrap table td .num01 {
    margin: 0 0 0 0;
    padding: 1.281vw 1.563vw 1.281vw 1.563vw;
    width: 100%;
    text-align: right;
    line-height: 1.4em;
    font-size: 2.813vw;
    font-weight: normal;
    box-sizing: border-box;
    background: #fff;
    border: 1px solid #cccccc;
    border-radius: 0.781vw;
    -webkit-appearance: none;
  }
  .cart-page .cart-form-wrap table td .del01 {
    margin: 0 0 0 0;
    padding: 0.781vw 0 0.781vw 0;
    width: 23.125vw;
    text-align: center;
    line-height: 2.1em;
    font-size: 2.5vw;
    font-weight: normal;
    box-sizing: border-box;
    background: #333;
    color: #fff;
    border: 1px solid #333;
    border-radius: 0.781vw;
    -webkit-appearance: none;
  }
  .cart-page .cart-form-wrap table td .area {
    margin: 0 0 0 0;
    padding: 1.281vw 0;
    width: 12.5vw;
    text-align: center;
    line-height: 1.4em;
    font-size: 2.813vw;
    font-weight: normal;
    color: #fff;
    border-radius: 0.469vw;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .cart-page .cart-form-wrap .note {
    margin: 0 0 0 0;
    padding: 2.344vw 0;
    line-height: 1.4em;
    font-size: 2.5vw;
    font-weight: bold;
    color: #fff;
    text-align: center;
    background: #ff0000;
  }
  .cart-page .how-to-receive {
    margin: 0 4.688vw 7.813vw 4.688vw;
    width: 90.625vw;
    max-width: 90.625vw;
    display: flex;
    justify-content: space-between;
  }
  .cart-page .how-to-receive .item {
    margin: 0 0 0 0;
    padding: 2.344vw 0 0 0;
    width: 49%;
    max-width: 78.125vw;
    border: 1px solid #014587;
    box-sizing: border-box;
    box-shadow: 3px 3px 3px rgba(0,0,0,0.4);
  }
  .cart-page .how-to-receive .item h4 {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    min-height: 9.063vw;
    text-align: center;
    line-height: 1.4em;
    font-size: 3.438vw;
    font-weight: bold;
  }
  .cart-page .how-to-receive .item h4 strong {
    line-height: 1.4em;
    font-size: 5vw;
    font-weight: bold;
  }
  .cart-page .how-to-receive .item p {
    margin: 0 1.563vw 2.344vw 1.563vw;
    padding: 0 0 0 0;
    text-align: left;
    line-height: 1.6em;
    font-size: 2.344vw;
    font-weight: normal;
  }
}


/**
 * 購入見積依頼フォーム
**/
#estimate {

/*	margin: 0 0 20px 0;
	padding: 0 0 0 0;
	width: 77%;
	max-width: 920px;
	float: left;
	position: relative;
*/
    margin: 0 auto;
    width: 90%;
    max-width: 1200px;
    text-align: left;
}



#estimate .page_title {
    margin: 30px 0 30px 0;
    padding: 0 0 0 0;
    line-height: 1.2em;
    font-size: 30px;
    font-weight: bold;
    color: #333333;
}

#estimate .contact_flow {
    margin: 0 0 0 0;
    padding: 20px 0 30px 0;
    width: 850px;
    overflow: hidden;
}

#estimate .contact_flow dt {
	width: 201px;
	height: 80px;
	line-height: 1.4em;
	font-size: 18px;
	text-align: center;
	color: #ffffff;
	background: #004387;
	float: left;
	display: table;
}

#estimate .contact_flow dt .cell {
	vertical-align: middle;
	display: table-cell;
}

#estimate .contact_flow dd {
	width: 649px;
	height: 80px;
	border: 1px solid #004387;
	border-left: none;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	float: left;
}

#estimate .contact_flow dd ol {
	margin: 0 0 0 0;
	padding: 13px 0 0 54px;
	overflow: hidden;
}

#estimate .contact_flow dd ol li {
	margin: 0 30px 0 0;
	padding: 0 0 0 0;
	width: 160px;
	height: 50px;
	color: #ffffff;
	background: #004387;
	display: table;
	float: left;
}

#estimate .contact_flow dd ol li .cell {
	margin: 0 0 0 0;
	padding: 0 30px 0 20px;
	height: 50px;
	line-height: 1.4em;
	font-size: 15px;
	color: #ffffff;
	background: #004387 url("../images/flow_back_03.png") no-repeat right center;
	display: table-cell;
	vertical-align: middle;

}

#estimate .contact_form_box {
	margin: 0 0 25px 0;
	max-width: 850px;
	overflow: hidden;
}

#estimate .contact_form_box h3 {
	margin: 0 0 10px 0;
	padding: 2px 0 2px 8px;
	line-height: 1.2em;
	font-size: 18px;
	font-weight: normal;
	color: #333333;
	border-left: 5px solid #004487;
}

#estimate .contact_form_box .wrap {
	margin: 0 0 4px 0;
	padding: 15px;
	background: #e5ecf4;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	overflow: hidden;
	text-align: left;
}

#estimate .contact_form_box .wrap .product {
	margin: 0 0 10px 0;
	padding: 0 0 0 0;
}

#estimate .contact_form_box .wrap .product th {
	margin: 0 0 0 0;
	padding: 0 30px 5px 0;
	line-height: 1.4em;
	text-align: left;
	font-size: 16px;
	font-weight: normal;
	vertical-align: top;
}

#estimate .contact_form_box .wrap .product th img {
	width: auto !important;
}

#estimate .contact_form_box .wrap .product td {
	margin: 0 0 0 0;
	padding: 0 6px 6px 0;
	line-height: 1.4em;
	text-align: left;
	font-size: 16px;
	font-weight: normal;
	vertical-align: top;
}

#estimate .contact_form_box .wrap .product td .count {
	margin: 0 15px 0 0;
	width: 60px;
	height: 30px;
	position: relative;
	float: left;
	display: inline;
}

#estimate .contact_form_box .wrap .product td .count .up {
	width: 12px;
	position: absolute;
	top: 6px;
	right: 5px;
}

#estimate .contact_form_box .wrap .product td .count .down {
	width: 12px;
	position: absolute;
	top: 18px;
	right: 5px;
}

#estimate .contact_form_box .wrap .product td .delete {
	width: 100px;
	float: left;
}

#estimate .contact_form_box .wrap .product td .image {
	float: left;
	margin: 2px 0 0 10px;
}


#estimate .contact_form_box .wrap .product_send {
	width: 100%;
	margin: 70px 0 10px 0;
	padding: 0 0 0 0;
}

#estimate .contact_form_box .wrap .product_send tr {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	border: none;
}

#estimate .contact_form_box .wrap .product_send th {
	width: 50%;
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	line-height: 1.4em;
	text-align: right;
	font-size: 16px;
	font-weight: normal;
	vertical-align: top;
}

#estimate .contact_form_box .wrap .product_send td {
	width: 50%;
	margin: 0 0 0 0;
	padding: 0 6px 6px 0;
	line-height: 1.4em;
	text-align: right;
	font-size: 16px;
	font-weight: normal;
	vertical-align: top;
}


#estimate .contact_form_box .wrap .alertmes {padding: 6px 0 6px 0;text-align: center;font-size: 16px;font-weight: bold;color: #F00;margin: 20px auto;width: 600px;border: 2px solid #F00;}

#estimate .contact_form_box .wrap .alertmes_sp {
	padding: 3px 3px 3px 3px;
	text-align: center;
	font-size: 14px;
	font-weight: bold;
	color: #F00;
	margin: 20px auto;
	width: 95%;
	border: 2px solid #F00;
}


#estimate .contact_form_box .wrap .alert_select {padding: 6px 0 6px 0;text-align: left;font-size: 16px;font-weight: bold;color: #F00;margin: 0 0 0 25px;width: 248px;border: 1px solid #F00;background:#ffffff;}


#estimate .contact_form_box .wrap .product_send_sp {
	width: 100%;
	margin: 0 0 10px 0;
	padding: 0 0 0 0;
}

#estimate .contact_form_box .wrap .product_send_sp tr {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	border: none;
}

#estimate .contact_form_box .wrap .product_send_sp th {
	width: 50%;
	margin: 0 0 0 0;
	padding: 0 6px 0 0;
	line-height: 1.4em;
	text-align: right;
	font-size: 16px;
	font-weight: normal;
	vertical-align: top;
}

#estimate .contact_form_box .wrap .product_send_sp td {
	width: 50%;
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	line-height: 1.4em;
	text-align: right;
	font-size: 16px;
	font-weight: normal;
	vertical-align: top;
	height: auto;
}

#estimate .contact_form_box .btn_sub_sp {
	margin: 0 5px 10px  0;
	padding: 10px 0;
	width: 165px;
	line-height: 1.2em;
	text-align: center;
	font-size: 17px;
	font-weight: bold;
	color: #ffffff;
	background: #004387;
	border: 1px solid #004387;
	border-radius: 0;
	cursor: pointer;
}

#estimate .contact_form_box .btn_sub_cart_sp {
	margin: 0 0 10px 4px;
	padding: 10px 0;
	width: 185px;
	line-height: 1.2em;
	text-align: center;
	font-size: 17px;
	font-weight: bold;
	color: #ffffff;
	background: #ff0000;
	border: 1px solid #ff0000;
	border-radius: 0;
	display: block;
	cursor: pointer;
}


#estimate .contact_form_box .wrap .alert_select_sp {
	padding: 0 0 0 0;
	text-align: left;
	font-size: 13px;
	font-weight: bold;
	color: #F00;
	margin: 0 0 0 4px;
	width: 183px;
	border: 1px solid #F00;
	background:#ffffff;
}




#estimate .contact_form_box .wrap .message {
	padding: 5px;
	line-height: 1.2em;
	text-align: center;
	font-size: 14px;
	color: #ffffff;
	background: #004387;
}

#estimate .contact_form_box .wrap .part01 {
	margin: 0 0 0 0;
	padding: 0 0 20px 0;
	overflow: hidden;
}

#estimate .contact_form_box .wrap .part01 dt {
	margin: 0 0 0 0;
	padding: 11px 0 0 0;
	width: 160px;
	line-height: 20px;
	font-size: 16px;
	float: left;
	display: inline;
	position: relative;
}

#estimate .contact_form_box .wrap .part01 dt em {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	width: 34px;
	display: block;
	position: absolute;
	top: 11px;
	right: 0;
}

#estimate .contact_form_box .wrap .part01 dd {
	margin: 0 0 0 0;
	padding: 8px 0 0 10px;
	vertical-align: middle;
	overflow: hidden;
}

#estimate .contact_form_box .wrap .part01 dd textarea{
 padding:10px;
 font-size:16px;
}

#estimate .contact_form_box .wrap .error_message {
	margin: 0 0 0 10px;
	line-height: 38px;
	font-size: 14px;
	color: #ff0000;
	float: left;
	display: inline;
}

#estimate .contact_form_box .wrap .address_num {
	margin: 0 10px 20px 0;
	line-height: 38px;
	font-size: 16px;
	font-weight: bold;
	float: left;
	display: inline;
}

#estimate .contact_form_box .wrap .note {
	margin: 0 0 0 1em;
	padding: 10px 0 0 0;
	line-height: 1.4em;
	font-size: 14px;
}

#estimate .contact_form_box .wrap .delivery_address {
	margin: 0 0 20px 0;
	line-height: 1.4em;
	font-size: 16px;
	display: table;
}

#estimate .contact_form_box .wrap .delivery_address dt {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	width: 100px;
	height: 30px;
	font-weight: normal;
	color: #ffffff;
	background: #004387;
	text-align: center;
	vertical-align: middle;
	display: table-cell;
}

#estimate .contact_form_box .wrap .delivery_address dd {
	padding: 0 0 0 15px;
	font-weight: bold;
	color: #ff0000;
	vertical-align: middle;
	display: table-cell;
}

#estimate .contact_form_box .wrap .delivery_attention {
	margin: 0 0 0 0;
	width: 760px;
	line-height: 1.4em;
	font-size: 14px;
	border: 1px solid #004387;
	display: table;
}

#estimate .contact_form_box .wrap .delivery_attention dt {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	width: 100px;
	height: 60px;
	font-weight: normal;
	color: #ffffff;
	background: #004387;
	text-align: center;
	vertical-align: middle;
	display: table-cell;
}

#estimate .contact_form_box .wrap .delivery_attention dd {
	padding: 0 0 0 15px;
	font-weight: bold;
	color: #ff0000;
	background: #daebff;
	vertical-align: middle;
	display: table-cell;
}

#estimate .contact_form_box .wrap input.checkbox {
	display: none;
}

#estimate .contact_form_box .wrap input.checkbox + label {
	box-sizing: border-box;
	position: relative;
	display: inline-block;
	margin: 0 0 0 0;
	padding: 0 0 0 22px;
	line-height: 1.4em;
	font-size: 16px;
	cursor: pointer;
}
#estimate .contact_form_box .wrap input.checkbox + label:after {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	content: url("../images/checkbox_02.png");
}
#estimate .contact_form_box .wrap input.checkbox:checked + label:after {
	opacity: 0;
}

#estimate .contact_form_box .wrap input.checkbox + label:before {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	content: url("../images/checkbox_01.png");
	opacity: 0;
}
#estimate .contact_form_box .wrap input.checkbox:checked + label:before {
	opacity: 1;
}


/*add*/

#estimate .contact_form_box .wrap .form-checkbox input{
    box-sizing: border-box;
    position: relative;
    display: inline-block;
    margin: 0 0 0 0;
    padding: 0 0 0 22px;
    line-height: 1.4em;
    font-size: 18px;
    cursor: pointer;
    -webkit-appearance: checkbox;
    height: 15px;
}

#estimate .contact_form_box .wrap input.form-checkbox {
    box-sizing: border-box;
    position: relative;
    display: inline-block;
    margin: 0 0 0 0;
    padding: 0 0 0 22px;
    line-height: 1.4em;
    font-size: 16px;
    cursor: pointer;
    -webkit-appearance: checkbox;
    height: 15px;
}

#estimate .contact_form_box .wrap .form-radio input {
    margin: 5px 2px 0px 0px;
    -webkit-appearance: radio;
    height: 13px;
}


/*
#estimate .contact_form_box .wrap .form-checkbox input:before {
	position:absolute;
    top: 0;
    left: 0;
    display: block;
    content: url(../images/checkbox_01.png);
    opacity: 0;
}

#estimate .contact_form_box .wrap .form-checkbox input:after{
    position:absolute;
    top: 0;
    left: 0;
    display: block;
    content: url(../images/checkbox_02.png);
}
*/

#estimate .contact_form_box .wrap .form-checkbox .wpcf7-list-item-label{
	position:relative;
	top: -2px;
	left: 1px;
	font-size: 120%;
}

#estimate .contact_form_box .wrap .wpcf7-list-item-label{
	position:relative;
	top: -2px;
	left: 1px;
	font-size: 120%;
}


#estimate .contact_form_box .wrap .alert {
	padding: 10px 0 0 0;
	font-size:120%;
	color:red
}

#estimate .contact_form_box .wrap .checkbox_wrap {
	padding: 10px 0 0 0;
}

#estimate .contact_form_box .wrap .list01 {
	margin: 0 0 20px 0;
	line-height: 1.4em;
	font-size: 16px;
	overflow: hidden;
}

#estimate .contact_form_box .wrap .list01 li {
	margin: 0 30px 0 0;
	float: left;
	display: inline;
}

#estimate .contact_form_box .wrap .list01 li input[type=radio] {
	display: none;
}

#estimate .contact_form_box .wrap .list01 li label {
	box-sizing: border-box;
	position: relative;
	display: inline-block;
	margin: 0 0 0 0;
	padding: 0 0 0 22px;
	cursor: pointer;
}
#estimate .contact_form_box .wrap .list01 li label:after {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	content: url("../images/radio_02.png");
}
#estimate .contact_form_box .wrap .list01 li input[type=radio]:checked + label:after {
	opacity: 0;
}

#estimate .contact_form_box .wrap .list01 li label:before {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	content: url("../images/radio_01.png");
	opacity: 0;
}
#estimate .contact_form_box .wrap .list01 li input[type=radio]:checked + label:before {
	opacity: 1;
}

#estimate .contact_form_box .wrap .list02 {
	padding: 10px 0 0 0;
	line-height: 1.4em;
	font-size: 16px;
	overflow: hidden;
}

#estimate .contact_form_box .wrap .list02 li {
	margin: 0 0 0 0;
	width: 90px;
	float: left;
	display: inline;
}

#estimate .contact_form_box .wrap .list02 li input[type=radio] {
	display: none;
}

#estimate .contact_form_box .wrap .list02 li label {
	box-sizing: border-box;
	position: relative;
	display: inline-block;
	margin: 0 0 0 0;
	padding: 0 0 0 22px;
	cursor: pointer;
}
#estimate .contact_form_box .wrap .list02 li label:after {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	content: url("../images/radio_02.png");
}
#estimate .contact_form_box .wrap .list02 li input[type=radio]:checked + label:after {
	opacity: 0;
}

#estimate .contact_form_box .wrap .list02 li label:before {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	content: url("../images/radio_01.png");
	opacity: 0;
}
#estimate .contact_form_box .wrap .list02 li input[type=radio]:checked + label:before {
	opacity: 1;
}

#estimate .contact_form_box .wrap .privacy_wrap {
	margin: 0 0 10px 0;
	padding: 10px;
	width: 620px;
	height: 80px;
	line-height: 1.6em;
	text-align: left;
	font-size: 12px;
	background: #ffffff;
	border: 1px solid #cdcdcd;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	overflow: auto;
}

#estimate .contact_form_box .wrap .privacy_wrap p {
	margin: 0 0 1em 0;
}


#estimate .contact_form_box .wrap .textarea01 {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	width: 500px;
	height: 98px;
	line-height: 1.6em;
	text-align: left;
	font-size: 16px;
	background: #ffffff;
	border: 1px solid #cdcdcd;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	padding-left: 5px;
}

#estimate .contact_form_box .wrap .text00{
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	width: 150px;
	height: 28px;
	line-height: 28px;
	text-align: left;
	font-size: 16px;
	background: #ffffff;
	border: 1px solid #cdcdcd;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	padding-left: 5px;
}

#estimate .contact_form_box .wrap .text01{
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	width: 350px;
	height: 28px;
	line-height: 28px;
	text-align: left;
	font-size: 14px;
	background: #ffffff;
	border: 1px solid #cdcdcd;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	padding-left: 5px;
}

#estimate .contact_form_box .wrap .text02 {
	margin: 0 0 0 0;
	padding: 0 20px 0 0;
	width: 35px;
	height: 28px;
	line-height: 28px;
	text-align: right;
	font-size: 14px;
	background: #ffffff;
	border: 1px solid #cdcdcd;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	/* padding-left: 5px; */
}

#estimate .contact_form_box .wrap .text03 {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	width: 295px;
	height: 38px;
	line-height: 38px;
	font-size: 16px;
	background: #ffffff;
	border: 1px solid #cdcdcd;
	/* -webkit-border-radius: 3px; */
	-moz-border-radius: 3px;
	border-radius: 3px;
	padding-left: 5px;
}

#estimate .contact_form_box .wrap .text04 {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	width: 120px;
	height: 38px;
	line-height: 38px;
	/* text-align: right; */
	font-size: 16px;
	background: #ffffff;
	border: 1px solid #cdcdcd;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	padding-left: 5px;
}

#estimate .contact_form_box .wrap .text05 {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	width: 500px;
	height: 38px;
	line-height: 38px;
	/* text-align: right; */
	padding-left: 5px;
	border: 1px solid #cdcdcd;
}

#estimate .contact_form_box .wrap input.error {
	background: #feedf5;
	border: 1px solid #ff0000;
}


#estimate .contact_form_box .area {
	padding: 4px 3px 4px 3px;
	color: #ffffff;
	text-align:center
}
#estimate .contact_form_box .area.area01 {
	padding: 4px 3px 4px 3px;
	background: #ef7216;
	color: #ffffff;
}

#estimate .contact_form_box .area.area02 {
	background: #18a82d;
}

#estimate .contact_form_box .area.area03 {
	background:  #999;
}

#estimate .contact_form_box .area.area04 {
	background:  #108EC8;
}

#estimate .contact_form_box .area.area05 {
	background:  #EA2040;
}

#estimate .contact_form_box .area.area06 {
	background:  #7D369E;
}

#estimate .contact_form_box .area.area07 {
	background:  #00ced1;
}

#estimate .contact_form_box .btn {
	margin: 30px auto 60px auto;
	padding: 15px 0;
	width: 300px;
	line-height: 1.2em;
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	color: #ffffff;
	background: #004387;
	border: 1px solid #004387;
	border-radius: 0;
	display: block;
	cursor: pointer;
}

#estimate .contact_form_box input.btn:hover {
	background: #008DAD;
	transition: 0.5s;
}

#estimate .contact_form_box input[disabled] {
	background: #CCC;
	border: 1px solid #aaaaaa;
	cursor: not-allowed;
}

#estimate .contact_form_box input[disabled]:hover {
	background: #CCC;
}


#estimate .contact_form_box .btn_sub {
	margin: 0 25px 20px  25px;
	padding: 15px 0;
	width: 246px;
	line-height: 1.2em;
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	color: #ffffff;
	background: #004387;
	border: 1px solid #004387;
	border-radius: 0;
	/* display: block; */
	cursor: pointer;
}

#estimate .contact_form_box .btn_sub_cart {
	margin: 0 25px 20px 25px;
	padding: 15px 0;
	width: 250px;
	line-height: 1.2em;
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	color: #ffffff;
	background: #ff0000;
	border: 1px solid #ff0000;
	border-radius: 0;
	display: block;
	cursor: pointer;
}



/**
 * 買取商品例
**/
#example {
}

/* 見出しなどはそのままでOK */
#example h2 {
  margin: 0 0 20px 0;
  padding: 15px 0 40px 0;
  line-height: 1.2em;
  text-align: center;
  font-size: 30px;
  font-weight: bold;
  color: #000000;
  border-bottom: 1px solid #004487;
}

#example .catch {
  margin: 0 0 25px 0;
  padding: 0;
  line-height: 1.2em;
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  color: #333333;
}

#example .intro {
  margin: 0 110px 40px 110px;
  padding: 0;
  line-height: 2.0em;
  font-size: 16px;
  color: #333333;
  text-align: left;
}

/* ▼ここから 2列レイアウト用（整理済み） */
#example .list {
  margin: 0 auto 20px;            /* 中央寄せ */
  padding: 0 0 15px 0;
  border-bottom: 1px dotted #004487;

  width: 980px;                    /* 旧サイト相当の固定幅 */
  max-width: 100%;                 /* スマホ時に横スクロールしないよう保険 */

  list-style: none;
}

/* clearfix（float解除） */
#example .list::after {
  content: "";
  display: block;
  clear: both;
}

#example .list li {
  margin: 0 0 50px 8.3%;
  padding: 0;
  width: 33.4%;
  max-width: 400px;
  float: left;
  position: relative;              /* ラベルの基準 */
}

/* 右側の要素用のマージン */
#example .list li:nth-of-type(2n) {
  margin: 0 8.3% 50px 0;
  float: right;
}

/* 左側の要素は行頭に */
#example .list li:nth-of-type(2n+1) {
  clear: both;
}

/* 画像 */
#example .list li .image {
  display: block;
}
#example .list li .image img {
  display: block;
  width: 100%;
  height: auto;
}

/* ラベル（右下重ね） */
#example .list li .label {
  width: 200px;
  height: 120px;
  text-align: center;
  color: #ffffff;
  background: url("../images/label_back_01.png") no-repeat 0 0;
  position: absolute;
  bottom: -20px;
  right: -20px;
  z-index: 10;
}

#example .list li .label .name {
  padding: 35px 0 5px 0;
  line-height: 1.2em;
  font-size: 18px;
  font-weight: bold;
}

#example .list li .label .price {
  line-height: 1.2em;
  font-size: 16px;
}

/* （必要なら）スマホで1列にする */
@media (max-width: 768px) {
  #example .intro {
    margin: 0 20px 30px;
  }
  #example .list {
    width: 100%;
  }
  #example .list li,
  #example .list li:nth-of-type(2n),
  #example .list li:nth-of-type(2n+1) {
    float: none;
    width: 90%;
    margin: 0 auto 40px;
  }
}


.search-box-sp { display: none; }
@media only screen and (max-width: 769px) {
  .search-link-box-sp {
    width: 100px;
    position: fixed;
    bottom: 90px;
    right: 0px;
    z-index: 1000;
  }
  .search-link-box-sp button {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    -webkit-appearance: none;
    border: none;
    background: none;
  }
  .search-link-box-sp img {
    display: block;
  }
  
  .search-box-sp {
    width: 100%;
    height: 0;
    background: #fff;
    
    overflow: auto;
    display: block;
    
    position: fixed;
    top: 0;
    right: 0;
    z-index: 10001;
    -webkit-overflow-scrolling:touch;
    transition: all 0.5s 0s ease;
  }
  .search-box-sp.active {
    height: 100vh;
  }
  .search-box-sp .head {
    margin: 0 0 0 0;
    width: 100%;
    height: 19.375vw;
    position: relative;
	background: #eeeeee;
  }
  .search-box-sp form{
	background: #eeeeee;
  }
  .search-box-sp .head .title {
    padding: 0 20vw 0 5vw;
    height: 19.375vw;
    line-height: 1.4em;
    font-size: 7.167vw !important;
    font-weight: bold;
    color: #424242;
    display: flex;
    align-items: center;
    justify-content: flex-start;
  }
  .search-box-sp .head .search-box-close-sp {
    width: 19.375vw;
    position: absolute;
    top: 0;
    right: 0;
  }
  .search-box-sp .head .search-box-close-sp button {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    -webkit-appearance: none;
    border: none;
    background: none;
  }
  .search-box-sp .head .search-box-close-sp button img {
    width: 100%;
    display: block;
  }
  .search-box-sp dl {
    margin: 0 5vw 10vw 5vw;
    width: 90vw;
    text-align: left;
	padding: 1px 0 0 0;	
  }
  .search-box-sp dl dt {
    margin: 10px 0 2vw 0;
    line-height: 1.4em;
    font-size: 5.167vw;
    font-weight: 500;
    color: #424242;
  }
  .search-box-sp dl dd {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    line-height: 1.4em;
    font-size: 5.167vw;
    font-weight: 500;
    color: #424242;
  }
  .search-box-sp dl dd .select-box {
    margin: 0 0 0 0;
    padding: 0 0 3vw 0;
    width: 100%;
    align-items: center;
  }
  .search-box-sp dl dd .select-box .label {
    margin: 0 0 0 0;
    padding: 0 2vw 0 0;
    width: 5vw;
  }
  .search-box-sp dl dd .select-box .select select {
    min-width: 35vw;
    font-size: 18px;
  }
  .search-box-sp dl dd .select-box .select.wide80 select {
    width: 80vw;
  }
  .search-box-sp dl dd .select-box .select.wide90 select {
    width: 90vw;
  }
  .search-box-sp dl dd .select-box .mm {
    margin: 0 0 0 0;
    padding: 0 0 0 2vw;
  }
  .search-box-sp dl dd .select-box .dan {
    margin: 0 0 0 0;
    padding: 0 0 0 2vw;
  }
  .search-box-sp dl dd .list01 {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
  }
  .search-box-sp dl dd .list01 li {
    margin: 0 0 0 0;
    padding: 0 0 3vw 0;
  }
  .search-box-sp dl dd .list02 {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
  }
  .search-box-sp dl dd .list02 li {
    margin: 0 0 0 0;
    padding: 0 3vw 0 0;
	display: flex;
  }
  
  .search-box-sp dl dd .list02 li label {
    position: relative;
    cursor: pointer;
    padding-left: 25px;
  }
  .search-box-sp dl dd .list02 li label::before,
  .search-box-sp dl dd .list02 li label::after {
    content: "";
    display: block; 
    border-radius: 50%;
    position: absolute;
    transform: translateY(-50%);
    top: 50%;
  }
  .search-box-sp dl dd .list02 li label::before {
    background: url("../images/products/check_01_off.png") no-repeat center center;
    background-size: 100% 100%;
    border: none;
    border-radius: 0;
    width: 21px;
    height: 21px;
    left: 0;
  }
  .search-box-sp dl dd .list02 li label::after {
    background: url("../images/products/check_01_on.png") no-repeat center center;
    background-size: 100% 100%;
    border: none;
    border-radius: 0;
    opacity: 0;
    width: 21px;
    height: 21px;
    left: 0;
  }
  .search-box-sp dl dd .list02 li .size {
	min-width: 1.6em;
  }
  .search-box-sp dl dd .list02 li .select {
	min-width: 46%;
  }
  .search-box-sp dl dd .list02 li .select select {
	min-width: 90%;
	font-size: 15px;
  }
  .search-box-sp dl dd .list02 li input:checked + label::after {
    opacity: 1;
  }
  .search-box-sp dl dd .list02 li input {
   position: absolute;
   white-space: nowrap;
   border: 0;
   clip: rect(0 0 0 0);
   clip-path: inset(50%);
   overflow: hidden;
   height: 1px;
   width: 1px;
   margin: -1px;
   padding: 0;
  }
  .search-box-sp dl dd .list02.place {
   display: flex;
  }  


  .search-box-sp .btn-box {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
  }
  .search-box-sp .btn-box .btn {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
    height: 16vw;
    background: #000;
    color: #fff;
    line-height: 1.4em;
    font-size: 5.167vw;
    font-weight: 500;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  
  .search-box-sp .btn-box .btn_clear {
    margin: 4px 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
    height: 10vw;
    background: #000;
    color: #fff;
    line-height: 1.4em;
    font-size: 5.167vw;
    font-weight: 500;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  

  .search-sp {
	margin: 0 0 60px 0;
  }

  .breadcrumb-item {
    margin: 0 0 0 0;
  }

  .back-link {
    background: #eeeeee;
    padding: 15px 10px 10px 10px;
    font-size: 15px;
    text-align: left;
  }

  .back-link a{
	text-decoration: underline;
  }
}


/*
見積書発行画面
*/

#navi_m {
	margin: 40px 0 55px 0;
	padding: 0 0 0 0;
	width: 300px;
	background: #004487;
}

#navi_m ul {
	margin: 0 0 0 0;
	height: 60px;
	text-align: center;
}

#navi_m ul li {
	padding: 0 0 0 0;
	font-size: 17px;
}

#navi_m ul li a {
    color: #ffffff;
}

#navi_m ul li a img{
    width: 30px !important;
    height: 40px !important;
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 0 15px;
}

#navi_m ul li a p{
    text-decoration: underline;
    margin: 20px 0 0 0;
    padding: 0 0 0 0;
    display: inline-block;
}

#alert_m {
    color: #ff0000;
    margin: 40px 0 0 0;
	font-size: 20px;
}

.estimate-page {
    padding: 0 0 50px 0;

}
.estimate-page H2{
    margin: 0 0 15px 0;

}
.estimate-page .intro {
	margin: 0 0 0 0;
	padding: 0 0 5px 0;
	width: 100%;
	position: relative;
}
.estimate-page .intro p {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	width: 75%;
	max-width: 600px;
	line-height: 1.6em;
	font-size: 20px;
	font-weight: 500;
}

@media only screen and (max-width: 769px) {

  .estimate-page {
    padding: 0px 15px 0px 15px;
	width: 92%;
  }
  .estimate-page .intro p {
	width: 92%;
  }



}


