@charset "UTF-8";

* {
/*	overscroll-behavior: contain;	*/
	overscroll-behavior: auto;
	scrollbar-color: #FAF8D8 #00a4b5;
	scrollbar-width: thin;
}
@media only screen and (max-width: 980px) {
	* {
		scrollbar-color: #00a4b5 #FAF8D8;
	}
}

.mt-0 {
  margin-top: 0px !important;
}

.mt-5 {
  margin-top: 5px !important;
}

.mt-10 {
  margin-top: 10px !important;
}

.mt-15 {
  margin-top: 15px !important;
}

.mt-20 {
  margin-top: 20px !important;
}

.mt-25 {
  margin-top: 25px !important;
}

.mt-30 {
  margin-top: 30px !important;
}

.mt-40 {
  margin-top: 40px !important;
}

.mt-50 {
  margin-top: 50px !important;
}

.mt-60 {
  margin-top: 60px !important;
}

.mt-80 {
  margin-top: 80px !important;
}

.mb-0 {
  margin-bottom: 0px !important;
}

.mb-5 {
  margin-bottom: 5px !important;
}

.mb-10 {
  margin-bottom: 10px !important;
}

.mb-15 {
  margin-bottom: 15px !important;
}

.mb-20 {
  margin-bottom: 20px !important;
}

.mb-25 {
  margin-bottom: 25px !important;
}

.mb-30 {
  margin-bottom: 30px !important;
}

.mb-40 {
  margin-bottom: 40px !important;
}

.mb-50 {
  margin-bottom: 50px !important;
}

.mb-60 {
  margin-bottom: 60px !important;
}

.mb-80 {
  margin-bottom: 80px !important;
}

.pt-0 {
  padding-top: 0px !important;
}

.pt-5 {
  padding-top: 5px !important;
}

.pt-10 {
  padding-top: 10px !important;
}

.pt-15 {
  padding-top: 15px !important;
}

.pt-20 {
  padding-top: 20px !important;
}

.pt-25 {
  padding-top: 25px !important;
}

.pt-30 {
  padding-top: 30px !important;
}

.pt-40 {
  padding-top: 40px !important;
}

.pt-50 {
  padding-top: 50px !important;
}

.pt-60 {
  padding-top: 60px !important;
}

.pt-80 {
  padding-top: 80px !important;
}

.pb-0 {
  padding-bottom: 0px !important;
}

.pb-5 {
  padding-bottom: 5px !important;
}

.pb-10 {
  padding-bottom: 10px !important;
}

.pb-15 {
  padding-bottom: 15px !important;
}

.pb-20 {
  padding-bottom: 20px !important;
}

.pb-25 {
  padding-bottom: 25px !important;
}

.pb-30 {
  padding-bottom: 30px !important;
}

.pb-40 {
  padding-bottom: 40px !important;
}

.pb-50 {
  padding-bottom: 50px !important;
}

.pb-60 {
  padding-bottom: 60px !important;
}

.pb-80 {
  padding-bottom: 80px !important;
}

div.row {
  margin: 0;
  padding: 0;
}
div.row.no-padding > * {
  padding: 0 !important;
}

.row.reverse > * {
  float: right;
}

p {
  line-height: 1.8em;
}
p strong {
  font-weight: normal;
  color: #00a4b5;
}

.en {
  font-family: futura-pt,a-otf-gothic-bbb-pr6n;
  font-weight: 500;
}

.gara {
  font-family: adobe-garamond-pro,a-otf-gothic-bbb-pr6n;
  font-weight: 500;
}

.dash {
  color: #00a4b5;
}

span.ons {
  font-size: 75.5%;
  vertical-align: top;
  position: relative;
  top: -0.1em;
  color: #00a4b5;
}

.sps {
  display: inherit;
}
@media only screen and (min-width: 980px) {
  .sps {
    display: none;
  }
}

.pcs {
  display: none;
}
@media only screen and (min-width: 980px) {
  .pcs {
    display: inherit;
  }
}

body {
  font-family: a-otf-gothic-bbb-pr6n;
  font-size: 4.0625vw;
  width: 100%;
  overflow-x: hidden;
}
@media only screen and (min-width: 980px) {
  body {
    font-size: 15px;
  }
}
body#page_homepage footer {
  display: none;
}

.caret_r_before:before {
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border-top: 0.625vw solid #00a4b5;
  border-right: 0.625vw solid #00a4b5;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transform-origin: right bottom;
  border-color: #00a4b5;
  display: inline-block;
  margin-right: 0.5em;
  content: "";
}
@media only screen and (min-width: 980px) {
  .caret_r_before:before {
    border-top-width: 2px;
    border-right-width: 2px;
  }
}

div.select_wrap {
  display: inline-block;
  position: relative;
  padding: 1.5625vw;
  padding-right: 6.25vw;
  border-bottom: 1px solid #3c3838;
  width: 100%;
}
div.select_wrap:after {
  content: "";
  right: 3.75vw;
  top: 48%;
  position: absolute;
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border-top: 0.625vw solid #3c3838;
  border-right: 0.625vw solid #3c3838;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  transform-origin: right bottom;
  -moz-transform: translateY(-50%) rotate(135deg);
  -ms-transform: translateY(-50%) rotate(135deg);
  -webkit-transform: translateY(-50%) rotate(135deg);
  transform: translateY(-50%) rotate(135deg);
}
@media only screen and (min-width: 980px) {
  div.select_wrap:after {
    border-top-width: 2px;
    border-right-width: 2px;
  }
}
div.select_wrap select {
  border: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  display: block;
  cursor: pointer;
}
@media only screen and (min-width: 980px) {
  div.select_wrap {
    padding: 5px;
    padding-right: 20px;
  }
  div.select_wrap:after {
    right: 12px;
  }
}

#entry_birth {
  display: flex;
}
#entry_birth > div.select_wrap {
  flex: 1;
}

#top_box__zip .btn {
  width: 100%;
}
@media only screen and (min-width: 980px) {
  #top_box__zip .btn {
    margin-left: 0;
  }
}

.registration_page #top_box__body .btn {
  display: block;
  width: 100%;
}

.container-fluid {
  padding: 0;
}

@media only screen and (min-width: 980px) {
  div#main {
    min-height: calc(100vh - 152px - 300px);
  }
}

header {
  padding: 0;
  position: fixed;
  width: 100%;
  height: 17.1875vw;
  background-color: #fff;
  z-index: 1000;
  -moz-transition: background-color, 0.5s;
  -o-transition: background-color, 0.5s;
  -webkit-transition: background-color, 0.5s;
  transition: background-color, 0.5s;
}
@media only screen and (min-width: 980px) {
  header {
    height: 110px;
  }
}
header div.inner {
  max-width: 1000px;
  margin: 0 auto;
  position: relative;
}
header div.header_logo_area {
  padding: 4.6875vw 12.5vw;
  min-height: 0;
  width: 100%;
}
@media only screen and (min-width: 980px) {
  header div.header_logo_area {
    padding: 30px 40px;
  }
}
header h1.header_logo {
  text-align: center;
  line-height: 1em;
}
header h1.header_logo a {
  display: inline-block;
  position: relative;
}
header h1.header_logo img, header h1.header_logo svg {
  max-width: 33.75vw;
  margin: 0 auto;
  display: block;
  -moz-transition: opacity, 0.3s;
  -o-transition: opacity, 0.3s;
  -webkit-transition: opacity, 0.3s;
  transition: opacity, 0.3s;
}
@media only screen and (min-width: 980px) {
  header h1.header_logo img, header h1.header_logo svg {
    max-width: 200px;
  }
}
header h1.header_logo img.on, header h1.header_logo svg.on {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}
header h1.header_logo img.off, header h1.header_logo svg.off {
  opacity: 1;
}
header p#btn_menu {
  top: unset;
  bottom: 3.75vw;
  right: unset;
  left: 3.125vw;
  width: 9.375vw;
  height: 9.375vw;
  padding: 1.5625vw;
  z-index: 10;
  opacity: 1;
  -moz-transition: opacity, 0.3s;
  -o-transition: opacity, 0.3s;
  -webkit-transition: opacity, 0.3s;
  transition: opacity, 0.3s;
}
header p#btn_menu .nav-trigger {
  height: 6.25vw;
}
@media only screen and (min-width: 980px) {
  header p#btn_menu {
    display: block;
    bottom: 30px;
    right: 10px;
    width: 50px;
    height: 50px;
    padding: 5px;
  }
  header p#btn_menu .nav-trigger {
    height: 40px;
  }
  header p#btn_menu .nav-trigger span::before {
    top: -10px;
  }
  header p#btn_menu .nav-trigger span::after {
    top: 10px;
  }
}
header p#btn_menu .nav-trigger span, header p#btn_menu .nav-trigger span::before, header p#btn_menu .nav-trigger span::after {
  height: 0.625vw;
  right: unset;
  left: 0;
  width: 100%;
}
@media only screen and (min-width: 980px) {
  header p#btn_menu .nav-trigger span, header p#btn_menu .nav-trigger span::before, header p#btn_menu .nav-trigger span::after {
    height: 2px;
  }
}
header div.keyhole_wrap {
  position: absolute;
  right: 3.125vw;
  bottom: 4.6875vw;
  width: 9.375vw;
  padding: 1.5625vw;
  z-index: 10;
  opacity: 1;
  -moz-transition: opacity, 0.3s;
  -o-transition: opacity, 0.3s;
  -webkit-transition: opacity, 0.3s;
  transition: opacity, 0.3s;
}
@media only screen and (min-width: 980px) {
  header div.keyhole_wrap {
    right: 10px;
    bottom: 35px;
    width: 40px;
    padding: 0;
  }
}
header div.keyhole_wrap a {
  display: block;
}
header div.keyhole_wrap img {
  width: 100%;
}
header div.headcart_wrap {
  position: absolute;
  right: 12.5vw;
  bottom: 4.6875vw;
  width: 9.375vw;
  padding: 1.5625vw;
  z-index: 10;
  opacity: 1;
  -moz-transition: opacity, 0.3s;
  -o-transition: opacity, 0.3s;
  -webkit-transition: opacity, 0.3s;
  transition: opacity, 0.3s;
}
@media only screen and (min-width: 980px) {
  header div.headcart_wrap {
    right: 80px;
    bottom: 35px;
    width: 40px;
    padding: 0;
  }
}
header div.headcart_wrap a {
  display: block;
}
header div.headcart_wrap img {
  width: 100%;
}
header a.dr_close {
  position: absolute;
  z-index: 10;
  left: 0;
  top: 50%;
  height: auto;
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 18.125vw;
  opacity: 0;
  -moz-transition: opacity, 0.3s;
  -o-transition: opacity, 0.3s;
  -webkit-transition: opacity, 0.3s;
  transition: opacity, 0.3s;
}
@media only screen and (min-width: 980px) {
  header a.dr_close {
    width: 80px;
    left: 30px;
  }
}

div#wrapper .inner {
  max-width: none;
}

/* ------------------------------------------- */

div#wrapper div#drawer {
  z-index: 999;
  background-color: #00a4b5;
  transition: all 0.3s;
  width: 100%;
  height: 100%;
  padding-top: 17.1875vw;
  position: fixed;
  -moz-transform: translateX(100%);
  -ms-transform: translateX(100%);
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
}
@media only screen and (max-width: 819px) {
  div#wrapper div#drawer {
    right: 0;
    top: 0;
  }
}
@media only screen and (min-width: 980px) {
  div#wrapper div#drawer {
    padding-top: 110px;
    width: 30%;
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
    left: -20px;
    left: 0;
    top: 0;
    margin: 0;
  }
}
/*
div#wrapper div#drawer div.dr_list {
  padding: 0;
}
div#wrapper div#drawer div.dr_list > div.row div a {
  border: 1px solid #fff;
  padding: 3.125vw 3.75vw;
  display: block;
  color: #fff;
  border-left: none;
  border-top: none;
}
@media only screen and (min-width: 980px) {
  div#wrapper div#drawer div.dr_list > div.row div a {
    padding: 10px 12px;
  }
}
div#wrapper div#drawer div.dr_list > div.row div:nth-child(2n) a {
  border-right: none;
}
div#wrapper div#drawer div.dr_list ul + ul {
  margin-top: 9.375vw;
}
@media only screen and (min-width: 980px) {
  div#wrapper div#drawer div.dr_list ul + ul {
    margin-top: 30px;
  }
}
div#wrapper div#drawer div.dr_list ul li ul {
  display: none;
}
div#wrapper div#drawer div.dr_list ul li a {
  font-size: 4.0625vw;
  color: #fff;
  text-decoration: none;
  padding: 3.125vw;
  padding-right: 9.375vw;
  display: block;
  border-bottom: 1px solid #fff;
  position: relative;
}
@media only screen and (min-width: 980px) {
  div#wrapper div#drawer div.dr_list ul li a {
    font-size: 13px;
    padding: 10px;
    padding-right: 30px;
  }
}
div#wrapper div#drawer div.dr_list ul li a.w {
  background-color: #fff;
  color: #00a4b5;
  border-color: #00a4b5;
}
div.row.no-padding > div.col-xs-6 .white-back {
  background-color: #fff !important;
  color: #00a4b5 !important;
}
div#wrapper div#drawer div.dr_list ul li a.w:after {
  border-color: #00a4b5;
}
div#wrapper div#drawer div.dr_list ul li a:after {
  content: "";
  position: absolute;
  right: 6.25vw;
  top: 50%;
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border-top: 0.625vw solid white;
  border-right: 0.625vw solid white;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transform-origin: right bottom;
  -moz-transform: translateY(-50%) rotate(45deg);
  -ms-transform: translateY(-50%) rotate(45deg);
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
}
@media only screen and (min-width: 980px) {
  div#wrapper div#drawer div.dr_list ul li a:after {
    border-top-width: 2px;
    border-right-width: 2px;
  }
}
@media only screen and (min-width: 980px) {
  div#wrapper div#drawer div.dr_list ul li a:after {
    right: 20px;
  }
}
@media only screen and (min-width: 980px) {
  div#wrapper div#drawer div.dr_list ul li div.toggle > a {
    background-size: 15px;
    background-position: right 12px center;
  }
}
div#wrapper div#drawer div.dr_list ul li div.toggle > a:after {
  background-image: url(../img/plus_a.svg);
  background-size: 100%;
  background-repeat: no-repeat;
  content: "";
  position: absolute;
  right: 3.125vw;
  top: 50%;
  width: 4.6875vw;
  height: 4.6875vw;
  border: none;
  -moz-transform: translateY(-50%) rotate(0);
  -ms-transform: translateY(-50%) rotate(0);
  -webkit-transform: translateY(-50%) rotate(0);
  transform: translateY(-50%) rotate(0);
  transform-origin: center center;
  -moz-transition: -moz-transform, 0.2s;
  -o-transition: -o-transform, 0.2s;
  -webkit-transition: -webkit-transform, 0.2s;
  transition: transform, 0.2s;
}
@media only screen and (min-width: 980px) {
  div#wrapper div#drawer div.dr_list ul li div.toggle > a:after {
    right: 12px;
    width: 15px;
    height: 15px;
  }
}
div#wrapper div#drawer div.dr_list ul li div.toggle > a.on:after {
  -moz-transform: translateY(-50%) rotate(45deg);
  -ms-transform: translateY(-50%) rotate(45deg);
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
}
/* ------------------------------------------- */

div#wrapper #contents, div#wrapper #footer, div#wrapper .pagetop {
  opacity: 1;
  -moz-transition: all, 0.3s;
  -o-transition: all, 0.3s;
  -webkit-transition: all, 0.3s;
  transition: all, 0.3s;
  overflow-x: hidden;
}
div#wrapper.drawer-open #header {
  -moz-transform: translateX(0);
  -ms-transform: translateX(0);
  -webkit-transform: translateX(0);
  transform: translateX(0);
  background-color: #00a4b5;
  border-bottom: 1px solid #fff;
}
.back-white {
  font: #007cba;
  background-color: #fff;
}

div#wrapper.drawer-open #header h1.header_logo img.on, div#wrapper.drawer-open #header h1.header_logo svg.on {
  opacity: 1;
}
div#wrapper.drawer-open #header h1.header_logo img.off, div#wrapper.drawer-open #header h1.header_logo svg.off {
  opacity: 0;
}
div#wrapper.drawer-open #header p#btn_menu {
  display: none;
  pointer-events: none;
  opacity: 0;
}
div#wrapper.drawer-open #header div.keyhole_wrap, div#wrapper.drawer-open #header div.headcart_wrap {
  display: none;
  pointer-events: none;
  opacity: 0;
}
div#wrapper.drawer-open #header a.dr_close {
  opacity: 1;
}
div#wrapper.drawer-open #contents, div#wrapper.drawer-open #footer, div#wrapper.drawer-open .pagetop {
  -moz-transform: translateX(-100%);
  -ms-transform: translateX(-100%);
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
  opacity: 0;
}
@media only screen and (min-width: 980px) {
  div#wrapper.drawer-open #contents, div#wrapper.drawer-open #footer, div#wrapper.drawer-open .pagetop {
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}
div#wrapper.drawer-open div#drawer {
  transition: all 0.3s;
  -moz-transform: translateX(0);
  -ms-transform: translateX(0);
  -webkit-transform: translateX(0);
  transform: translateX(0);
}

.overlay {
  background: none;
}
.overlay.is-visible {
  -moz-transform: translateX(-100%);
  -ms-transform: translateX(-100%);
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
}

div#contents {
  padding-top: 17.1875vw;
}
div#contents input {
  cursor: pointer;
}
div#contents #login_box .column input[type="text"], div#contents #login_box .column input[type="email"], div#contents #login_box .column input[type="password"] {
  width: 100%;
}
@media only screen and (min-width: 980px) {
  div#contents {
    padding-top: 105px;
  }
}

body.registration_page div.contents {
  padding-top: 9.375vw;
}
@media only screen and (min-width: 980px) {
  body.registration_page div.contents {
    padding-top: 30px;
  }
}

div.contents {
  padding-top: 15.625vw;
  background-color: #fff;
  width: 100%;
  position: relative;
  max-width: 1000px;
  margin: 0 auto;
  margin-bottom: 20vw;
  margin-top: -10vw;
}
div.contents > * {
  padding: 0 5.46875vw;
  margin-top: 10vw;
}
@media only screen and (min-width: 980px) {
  div.contents {
    padding-top: 50px;
    margin-bottom: 0;
    margin-top: 0;
  }
  div.contents > * {
    padding: 0 20px;
    margin-top: 30px;
  }
}

@media only screen and (min-width: 980px) {
  .ectop h2 {
    font-size: 30px;
  }
}

h2 {
  font-size: 5.46875vw;
  font-family: futura-pt,a-otf-gothic-bbb-pr6n;
  font-weight: 500;
  position: relative;
  text-align: center;
  padding-bottom: 3.125vw;
  margin: 7.8125vw auto;
  letter-spacing: 0.1em;
}
h2 span {
  display: block;
  font-size: 0.8em;
  margin-bottom: 4.6875vw !important;
}
@media only screen and (min-width: 980px) {
  h2 {
    padding-bottom: 10px !important;
    margin: 25px auto;
    font-size: 18px;
  }
  h2 span {
    margin-bottom: 20px !important;
  }
}
h2:first-child {
  margin-top: 0;
}
h2:after {
  content: "";
  height: 2px;
  width: 7.5vw;
  bottom: 0;
  background-color: #00a4b5;
  position: absolute;
  left: 50%;
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
@media only screen and (min-width: 980px) {
  h2:after {
    width: 24px;
  }
}
h2.l {
  text-align: left;
}
h2.l:after {
  left: 0;
  -moz-transform: translateX(0);
  -ms-transform: translateX(0);
  -webkit-transform: translateX(0);
  transform: translateX(0);
}
@media only screen and (min-width: 980px) {
  h2.l {
    text-align: center;
  }
  h2.l:after {
    left: 50%;
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}

.dl_table {
  border: none;
}

.over_pad {
  margin-left: -5.46875vw;
  width: calc(100% + 10.9375vw);
  max-width: calc(100% + 10.9375vw);
}
@media only screen and (min-width: 980px) {
  .over_pad {
    margin-left: -17.5px;
    width: calc(100% + 35px);
    max-width: calc(100% + 35px);
  }
}

div.foot_type > div {
  text-align: center;
  color: #fff;
}

div.foot_num {
  margin-bottom: 10.9375vw;
  padding: 3.125vw 0;
  border-bottom: 1px solid #00a4b5;
  display: table;
  vertical-align: middle;
  width: 100%;
}
div.foot_num > span {
  display: table-cell;
  vertical-align: middle;
  font-size: 3.125vw;
}
div.foot_num > p {
  display: table-cell;
  vertical-align: middle;
  font-size: 7.8125vw;
  text-align: right;
  margin: 0;
  padding: 0;
  line-height: 1em;
}
@media only screen and (min-width: 980px) {
  div.foot_num {
    margin-bottom: 0;
    padding: 10px 40px;
    max-width: 670px;
    margin: 0 auto;
  }
  div.foot_num > span {
    font-size: 18px;
  }
  div.foot_num > p {
    font-size: 70px;
  }
}

div.inputdata_wrap p {
  font-size: 3.4375vw;
}
@media only screen and (min-width: 980px) {
  div.inputdata_wrap p {
    font-size: 14px;
  }
}
div.inputdata_wrap div.extra-form {
  margin: 9.375vw auto;
}
@media only screen and (min-width: 980px) {
  div.inputdata_wrap div.extra-form {
    margin: 30px auto;
  }
}
div.inputdata_wrap div.extra-form p {
  font-size: 3.75vw;
  margin: 3.125vw auto;
}
div.inputdata_wrap div.extra-form p.form_title {
  background-color: #e4e4e4;
  margin: 0;
  margin-left: -5.46875vw;
  margin-bottom: 6.25vw;
  padding: 0.9375vw 5.46875vw;
  width: calc(100% + 10.9375vw);
}
@media only screen and (min-width: 980px) {
  div.inputdata_wrap div.extra-form p {
    margin: 10px auto;
    font-size: 15px;
  }
  div.inputdata_wrap div.extra-form p.form_title {
    margin-left: -17.5px;
    width: calc(100% + 35px);
    margin-bottom: 20px;
    padding: 3px 17.5px;
  }
}
div.inputdata_wrap div.extra-form div.form-group {
  margin: 5vw 0;
}
div.inputdata_wrap div.extra-form div.form-group label {
  margin: 0;
  margin-bottom: 1.5625vw;
  display: block;
}
div.inputdata_wrap div.extra-form div.form-group input[type="number"] {
  width: 80%;
  margin: 0;
  text-align: left;
  text-align: right;
}
@media only screen and (min-width: 980px) {
  div.inputdata_wrap div.extra-form div.form-group {
    margin: 16px 0;
  }
  div.inputdata_wrap div.extra-form div.form-group label {
    margin-bottom: 5px;
  }
}
div.inputdata_wrap div.extra-form label.types img {
  border: 1px solid #e4e4e4;
}
div.inputdata_wrap div.extra-form label.types > div {
  padding-top: 2.1875vw;
  display: table-cell;
  vertical-align: middle;
}
div.inputdata_wrap div.extra-form label.types > div input[type="radio"] {
  display: inline-block;
  width: 3.125vw;
  margin-right: 0.9375vw;
  vertical-align: middle;
}
@media only screen and (min-width: 980px) {
  div.inputdata_wrap div.extra-form label.types > div {
    padding-top: 7px;
  }
  div.inputdata_wrap div.extra-form label.types > div input[type="radio"] {
    width: 10px;
    margin-right: 3px;
  }
}
div.inputdata_wrap div.extra-form label.types > div p {
  display: inline-block;
  margin: 0;
  line-height: 1em;
  white-space: nowrap;
  vertical-align: middle;
}
div.inputdata_wrap div.extra-form label.types.active img {
  border-color: #3c3838;
}

div.mydata_wrap h4 {
  margin: 6.25vw 0;
  font-weight: normal;
  padding: 3.125vw 0;
  text-align: center;
  font-size: 3.75vw;
}
div.mydata_wrap .extra-form {
  margin: 6.25vw 0 9.375vw;
}
@media only screen and (min-width: 980px) {
  div.mydata_wrap h4 {
    margin: 40px 0 20px;
    padding: 10px 0;
    font-size: 18px;
  }
  div.mydata_wrap .extra-form {
    margin: 20px 0 80px;
  }
}
@media only screen and (min-width: 980px) {
  div.mydata_wrap .extra-form {
    width: calc(50% - 40px);
    margin-right: 80px;
    float: left;
  }
  div.mydata_wrap .extra-form:nth-child(2n + 1) {
    margin-right: 0;
  }
  div.mydata_wrap .extra-form:nth-child(2n + 2) {
    clear: both;
  }
}
div.mydata_wrap .extra-form:last-child {
  margin-bottom: 0;
}
div.mydata_wrap .extra-form .ef_title {
  margin: 0;
  background-color: #464646;
  color: #fff;
  font-weight: normal;
  padding: 3.125vw 0;
  text-align: center;
}
@media only screen and (min-width: 980px) {
  div.mydata_wrap .extra-form .ef_title {
    padding: 10px 0;
  }
}
div.mydata_wrap .extra-form > a {
  font-size: 3.75vw;
  margin-top: 3.125vw;
  display: block;
  text-align: right;
}
@media only screen and (min-width: 980px) {
  div.mydata_wrap .extra-form > a {
    font-size: 18px;
    margin-top: 10px;
  }
}
div.mydata_wrap .extra-form div.tt > div {
  display: table;
  width: 100%;
  text-align: center;
}
div.mydata_wrap .extra-form div.tt > div > * {
  display: table-cell;
  border-bottom: 1px solid #3c3838;
  border-left: 1px solid #3c3838;
  line-height: 1em;
}
div.mydata_wrap .extra-form div.tt > div > *:last-child {
  border-right: 1px solid #3c3838;
}
div.mydata_wrap .extra-form div.tt dt {
  padding: 3.125vw 0;
  font-size: 4.0625vw;
  width: 21.875vw;
  line-height: 5.625vw;
}
@media only screen and (min-width: 980px) {
  div.mydata_wrap .extra-form div.tt dt {
    padding: 10px 0;
    font-size: 13px;
    width: 70px;
    line-height: 1rem;
  }
}
div.mydata_wrap .extra-form div.tt dd {
  font-size: 5.625vw;
  padding: 3.125vw 0;
  line-height: 5.625vw;
}
@media only screen and (min-width: 980px) {
  div.mydata_wrap .extra-form div.tt dd {
    font-size: 18px;
    padding: 10px 0;
    line-height: 1rem;
  }
}
div.mydata_wrap .extra-form .type_img, div.mydata_wrap .extra-form .pict_img {
  border: 1px solid #3c3838;
  text-align: center;
}
div.mydata_wrap .extra-form .type_img p, div.mydata_wrap .extra-form .pict_img p {
  margin: 3.125vw 0;
}
@media only screen and (min-width: 980px) {
  div.mydata_wrap .extra-form .type_img p, div.mydata_wrap .extra-form .pict_img p {
    margin: 10px 0;
  }
}
div.mydata_wrap .extra-form .type_img {
  padding-bottom: 3.125vw;
}
@media only screen and (min-width: 980px) {
  div.mydata_wrap .extra-form .type_img {
    padding-bottom: 10px;
  }
}
div.mydata_wrap .extra-form .type_img img {
  width: 90%;
  margin: 0 auto;
  margin-bottom: 3.125vw;
  display: block;
}
@media only screen and (min-width: 980px) {
  div.mydata_wrap .extra-form .type_img img {
    margin-bottom: 10px;
  }
  div.mydata_wrap .btn_group {
    text-align: center;
  }
  div.mydata_wrap .profile_link {
    clear: both;
    margin: 40px auto 120px;
  }
}


div.inputdata_wrap div.extra-form {
  margin: 60px auto;
}
#detail_box__body .step {
  margin: 80px 0 100px;
}

#detail_box__body {
  position: relative;
}

#detail_box__body .no {
  font-size: 30px;
  display: inline-block;
  color: #00a4b5;
  position: absolute;
  top: 337px;
  left: 335px;
}

.mypage div.refine_wrap {
  margin-top: 60px;
}
.btn_group .btn {
  margin: 100px auto 120px;
}
#detail_box__body #step2 .form-group .types-name {
  display: flex;
justify-content: center;
align-items: center;
margin-top: 20px;
}
#detail_box__body #step2 .form-group .types-name .radio-btn  {
  margin-right: 5px;
}

@media only screen and (min-width: 980px) {

  #detail_box__body .step {
    margin: 0;
    margin-bottom: 9.375vw;
  }
  div.inputdata_wrap div.extra-form {
    margin: 9.375vw auto;
  }
  .btn_group .btn {
    margin: 3.125vw auto;
  }
  #detail_box__body .no {
    font-size: 8vw;
    top: 34.5vw;
    left: 0vw;
    margin-right: 7vw;
  }
  h2.l {
    padding-left: 0px;
  }
}



h3 {
  font-size: 3.75vw;
  padding-bottom: 3.125vw;
  margin-bottom: 7.8125vw;
  border-bottom: 1px solid #ccc;
}
@media only screen and (min-width: 980px) {
  h3 {
    font-size: 18px;
    padding-bottom: 10px;
    margin-bottom: 25px;
  }
}

h1.page-heading {
  border-top: none;
}

div.p_title {
  position: relative;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  padding: 5.625vw 0 14vw;
}
@media only screen and (min-width: 980px) {
  div.p_title {
    padding: 36px 0 32px;
  }
}
div.p_title h1 {
  margin: 0;
  text-align: center;
  color: #fff;
  font-feature-settings: "palt";
  font-size: 6.25vw;
}
@media only screen and (min-width: 980px) {
  div.p_title h1 {
    font-size: 30px;
  }
}
div.p_title + div.contents {
  padding-top: 0vw;
  margin-bottom: 0vw;
}
@media only screen and (min-width: 980px) {
  div.p_title + div.contents {
    padding-top: 77px;
  }
}

div[id^="detail_image_box__item"] img {
  cursor: pointer;
}

.care div#top_wrap.pages img {
  max-width: 78.125vw;
}
@media only screen and (min-width: 980px) {
  .care div#top_wrap.pages img {
    max-width: 300px;
  }
}

@media only screen and (min-width: 980px) {
  .craftsman #top_wrap.pages ul.row li h2 {
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 819px) {
  .craftsman #top_wrap.pages ul.row li + li {
    margin-top: 6.25vw;
  }
}

#thumbnail-list {
  margin-top: 3.75vw;
  margin-bottom: 0;
  padding: 0;
}
#thumbnail-list li.thumbnail-item {
  background-size: cover;
  background-repeat: no-repeat;
  margin-bottom: 3.125vw;
}
#thumbnail-list li.thumbnail-item img {
  cursor: pointer;
}
@media only screen and (min-width: 980px) {
  #thumbnail-list {
    margin-top: 12px;
  }
  #thumbnail-list li.thumbnail-item {
    margin: 16px auto;
  }
}

@media only screen and (min-width: 980px) {
  #modal_pict .modal-dialog {
    width: 800px;
  }
}
#modal_pict .modal-body {
  padding: 5.46875vw !important;
}
@media only screen and (min-width: 980px) {
  #modal_pict .modal-body {
    padding: 17.5px !important;
  }
}
#modal_pict .modal-body img + div.pict_btn {
  margin-top: 5.46875vw;
  position: relative;
}
@media only screen and (min-width: 980px) {
  #modal_pict .modal-body img + div.pict_btn {
    margin-top: 10px;
    position: static;
  }
}
#modal_pict .modal-body img + div.pict_btn a {
  -moz-transition: all, 0.2s;
  -o-transition: all, 0.2s;
  -webkit-transition: all, 0.2s;
  transition: all, 0.2s;
}
#modal_pict .modal-body img + div.pict_btn a.off {
  opacity: 0.5;
}
#modal_pict .modal-body img + div.pict_btn a.prev {
  content: "";
  position: absolute;
  left: 30px;
  top: 50%;
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  border-bottom: 0.625vw solid #3c3838;
  border-left: 0.625vw solid #3c3838;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transform-origin: left top;
  transform-origin: center center;
  -moz-transform: translateY(-50%) rotate(45deg);
  -ms-transform: translateY(-50%) rotate(45deg);
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
}
@media only screen and (min-width: 980px) {
  #modal_pict .modal-body img + div.pict_btn a.prev {
    border-bottom-width: 2px;
    border-left-width: 2px;
  }
}
@media only screen and (min-width: 980px) {
  #modal_pict .modal-body img + div.pict_btn a.prev {
    display: inline-block;
    width: 2.5em;
    height: 2.5em;
    border-bottom: 0.625vw solid #3c3838;
    border-left: 0.625vw solid #3c3838;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    transform-origin: left top;
    transform-origin: center center;
  }
}
@media only screen and (min-width: 980px) and (min-width: 980px) {
  #modal_pict .modal-body img + div.pict_btn a.prev {
    border-bottom-width: 2px;
    border-left-width: 2px;
  }
}

#modal_pict .modal-body img + div.pict_btn a.next {
  content: "";
  position: absolute;
  right: 30px;
  top: 50%;
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  border-top: 0.625vw solid #3c3838;
  border-right: 0.625vw solid #3c3838;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transform-origin: right bottom;
  transform-origin: center center;
  -moz-transform: translateY(-50%) rotate(45deg);
  -ms-transform: translateY(-50%) rotate(45deg);
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
}
@media only screen and (min-width: 980px) {
  #modal_pict .modal-body img + div.pict_btn a.next {
    border-top-width: 2px;
    border-right-width: 2px;
  }
}
@media only screen and (min-width: 980px) {
  #modal_pict .modal-body img + div.pict_btn a.next {
    display: inline-block;
    width: 2.5em;
    height: 2.5em;
    border-top: 0.625vw solid #3c3838;
    border-right: 0.625vw solid #3c3838;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    transform-origin: right bottom;
    transform-origin: center center;
  }
}
@media only screen and (min-width: 980px) and (min-width: 980px) {
  #modal_pict .modal-body img + div.pict_btn a.next {
    border-top-width: 2px;
    border-right-width: 2px;
  }
}

@media only screen and (max-width: 819px) {
  #modal_pict {
    padding: 0;
  }
  #modal_pict .modal-body {
    padding: 0 0 5.46875vw !important;
  }
}

ul.val_wrap {
  padding-bottom: 0;
  margin-top: 6.25vw;
}
@media only screen and (min-width: 980px) {
  ul.val_wrap {
    margin-top: 20px;
  }
}
ul.val_wrap li {
  margin-bottom: 3.125vw;
}
ul.val_wrap li a {
  display: block;
  padding: 3.125vw;
  padding-left: 10vw;
  position: relative;
  color: #3c3838;
  font-size: 3.125vw;
  border: 1px solid #e4e4e4;
}
ul.val_wrap li a span {
  width: 4.0625vw;
  height: 4.0625vw;
  position: absolute;
  left: 3.125vw;
  top: 50%;
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  display: block;
  border-radius: 50%;
}
@media only screen and (min-width: 980px) {
  ul.val_wrap li {
    margin-bottom: 10px;
  }
  ul.val_wrap li a {
    padding: 10px;
    padding-left: 32px;
    font-size: 10px;
  }
  ul.val_wrap li a span {
    width: 13px;
    height: 13px;
    left: 10px;
  }
}

#product_tag_box {
  margin-bottom: 6.25vw;
  padding-right: 12.5vw;
  margin: 0;
}
#product_tag_box span {
  padding: 1.5625vw 3.125vw;
  background-color: #9fa0a5;
  border: none;
  font-size: 3.125vw;
  color: #fff;
  border-radius: 0;
  line-height: 5.9375vw;
  min-height: 5.9375vw;
}
@media only screen and (min-width: 980px) {
  #product_tag_box {
    margin-bottom: 20px;
    padding-right: 40px;
    margin: 0;
  }
  #product_tag_box span {
    padding: 5px 10px;
    font-size: 10px;
    line-height: 19px;
    min-height: 19px;
  }
}

#item_photo_area {
  padding: 0;
}
#item_photo_area .slick-slider {
  margin-bottom: 0;
}

#detail_box__body_inner:after {
  content: "";
  display: block;
  clear: both;
}
@media only screen and (min-width: 980px) {
  #detail_box__body_inner > div.extra-form {
    width: calc(50% - 40px);
    margin-right: 80px;
    float: left;
  }
  #detail_box__body_inner > div.extra-form:nth-child(2n) {
    margin-right: 0;
  }
  #detail_box__body_inner > div.extra-form:nth-child(2n + 1) {
    clear: both;
  }
}

#item_detail_area {
  position: relative;
  margin-top: 7.1875vw;
  padding: 0;
}
#item_detail_area #detail_description_box__item_range_code {
  font-size: 2.8125vw;
}
#item_detail_area #detail_description_box__sale_price {
  color: #3c3838;
  font-size: 5.625vw;
  font-weight: normal;
}
#item_detail_area p.item_code {
  margin: 1.875vw 0;
}
#item_detail_area .item_name {
  margin: 0;
  font-size: 5.625vw;
}
#item_detail_area .item_detail .item_comment {
  margin: 6.25vw auto;
  font-size: 15px;
}
@media only screen and (min-width: 980px) {
  #item_detail_area .item_detail p {
    font-size: 24px;
  }
}
#item_detail_area .plugin_maker_code {
  padding-right: 40.625vw;
}
@media only screen and (min-width: 980px) {
  #item_detail_area .plugin_maker_code {
    padding-right: 190px;
  }
}
#item_detail_area #favorite_item {
  width: 37.5vw;
  text-align: center;
  background-color: #e4e4e4;
  border: 1px solid #fff;
  position: absolute;
  color: #3c3838;
  right: 0;
  top: -3.125vw;
  padding: 2.5vw;
  padding-right: 7.8125vw;
  font-size: 3.125vw;
  -moz-transition: all, 0.2s;
  -o-transition: all, 0.2s;
  -webkit-transition: all, 0.2s;
  transition: all, 0.2s;
}
#item_detail_area #favorite_item:before {
  content: "お気に入りに追加";
  line-height: 1em;
}
#item_detail_area #favorite_item:after {
  content: "";
  width: 4.0625vw;
  height: 5.3125vw;
  background-image: url(../img/favo_parts_w.svg);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  position: absolute;
  right: 1.5625vw;
  top: 0;
}
#item_detail_area #favorite_item.on {
  background-color: #fff;
  border-color: #00a4b5;
  color: #00a4b5;
}
#item_detail_area #favorite_item.on:before {
  content: "追加しました";
}
#item_detail_area #favorite_item.on:after {
  background-image: url(../img/favo_parts.svg);
}
@media only screen and (min-width: 980px) {
  #item_detail_area #favorite_item {
    width: 200px;
    top: 0;
    padding: 8px;
    padding-right: 30px;
    font-size: 13px;
  }
  #item_detail_area #favorite_item:after {
    content: "";
    width: 26px;
    height: 26px;
    right: 5px;
    top: 0;
  }
}
#item_detail_area div.shoe_caution {
  padding: 6.25vw 0;
  border-top: 1px solid #e4e4e4;
}
#item_detail_area div.shoe_caution p.caution_title {
  font-size: 4.0625vw;
  padding-left: 6.25vw;
  position: relative;
  margin-bottom: 3.125vw;
}
#item_detail_area div.shoe_caution p.caution_title:before {
  content: "";
  width: 3.125vw;
  height: 3.125vw;
  position: absolute;
  top: 1.875vw;
  left: 0;
  background-color: #00a4b5;
}
#item_detail_area div.shoe_caution p.caution_title + p {
  font-size: 3.75vw;
}
@media only screen and (min-width: 980px) {
  #item_detail_area {
    margin-top: 0;
    padding-left: 20px;
    padding-top: 40px;
  }
  #item_detail_area #detail_description_box__item_range_code {
    font-size: 14px;
  }
  #item_detail_area #detail_description_box__sale_price {
    font-size: 18px;
  }
  #item_detail_area p.item_code {
    margin: 6px 0;
  }
  #item_detail_area .item_name {
    font-size: 24px;
  }
  #item_detail_area .item_detail .item_comment {
    margin: -20px auto;
  }
  #item_detail_area div.shoe_caution {
    padding: 20px 0;
  }
  #item_detail_area div.shoe_caution p.caution_title {
    font-size: 15px;
    padding-left: 25px;
    margin-bottom: 10px;
  }
  #item_detail_area div.shoe_caution p.caution_title:before {
    width: 15px;
    height: 15px;
    top: 6px;
  }
  #item_detail_area div.shoe_caution p.caution_title + p {
    font-size: 14px;
  }
}

div.detail_caution {
  margin: 6.25vw auto 0;
  clear: both;
}
div.detail_caution p {
  font-size: 3.4375vw;
  color: #707070;
}
@media only screen and (min-width: 980px) {
  div.detail_caution {
    margin: 20px auto 0;
    padding: 10px;
    border: 1px solid #e4e4e4;
  }
  div.detail_caution p {
    font-size: 13px;
  }
}

div#cart form:after {
  content: "";
  display: block;
  clear: both;
}
@media only screen and (min-width: 980px) {
  div#cart form div#cart_item_list {
    width: calc(100% - 286px);
    float: left;
  }
  div#cart form div.total_box {
    max-width: 256px;
  }
  div#cart form div.total_box ul.item_price li:first-child div {
    display: block;
  }
}

#add-cart,#add-cart_01,
#add-cart,#add-cart_02 {
  background-color: #00a4b5;
  border: none;
  position: relative;
  text-align: left;
  /* padding-left: 14.0625vw; */
  padding-left: 21.0625vw;
}
@media only screen and (min-width: 980px) {
  #add-cart,#add-cart_01,
  #add-cart,#add-cart_02 {
    padding-left: 45px;
  }
}
#add-cart img,#add-cart_01 img,
#add-cart img,#add-cart_02 img {
  width: 7.8125vw;
  position: absolute;
  left: 3.125vw;
  top: 50%;
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media only screen and (min-width: 980px) {
  #add-cart img,#add-cart_01 img,
  #add-cart img,#add-cart_02 img {
    left: 10px;
    width: 25px;
  }
}

div.refine_wrap {
  margin-bottom: 9.375vw;
}
div.refine_wrap > div > a {
  font-size: 4.375vw;
  color: #00a4b5;
  font-weight: normal;
  display: block;
  padding: 1.5625vw;
  position: relative;
  border-bottom: 1px solid #00a4b5;
  -moz-transition: border, 1s;
  -o-transition: border, 1s;
  -webkit-transition: border, 1s;
  transition: border, 1s;
}
div.refine_wrap > div > a:after {
  background-image: url(../img/plus_a.svg);
  background-size: 100%;
  background-repeat: no-repeat;
  content: "";
  position: absolute;
  right: 3.125vw;
  top: 50%;
  width: 4.6875vw;
  height: 4.6875vw;
  border: none;
  -moz-transform: translateY(-50%) rotate(0);
  -ms-transform: translateY(-50%) rotate(0);
  -webkit-transform: translateY(-50%) rotate(0);
  transform: translateY(-50%) rotate(0);
  transform-origin: center center;
  -moz-transition: -moz-transform, 0.2s;
  -o-transition: -o-transform, 0.2s;
  -webkit-transition: -webkit-transform, 0.2s;
  transition: transform, 0.2s;
}
@media only screen and (min-width: 980px) {
  div.refine_wrap > div > a:after {
    right: 12px;
    width: 15px;
    height: 15px;
  }
}
div.refine_wrap > div > a.on:after {
  -moz-transform: translateY(-50%) rotate(45deg);
  -ms-transform: translateY(-50%) rotate(45deg);
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
}
div.refine_wrap > div ul {
  display: none;
  background: #fff;
}
div.refine_wrap > div ul li a {
  display: block;
  padding: 3.125vw 0;
  color: #3c3838;
  font-size: 3.75vw;
  position: relative;
  border-bottom: 1px solid #e4e4e4;
}
div.refine_wrap > div ul li a:after {
  content: "";
  position: absolute;
  right: 20px;
  top: 50%;
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border-top: 0.625vw solid #3c3838;
  border-right: 0.625vw solid #3c3838;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transform-origin: right bottom;
  -moz-transform: translateY(-50%) rotate(45deg);
  -ms-transform: translateY(-50%) rotate(45deg);
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
}
@media only screen and (min-width: 980px) {
  div.refine_wrap > div ul li a:after {
    border-top-width: 2px;
    border-right-width: 2px;
  }
}
@media only screen and (min-width: 980px) {
  div.refine_wrap {
    margin-bottom: 30px;
  }
  div.refine_wrap > div > a {
    font-size: 18px;
    padding: 5px;
  }
  div.refine_wrap > div > a:after {
    right: 25px;
  }
  div.refine_wrap > div > a.on:after {
    border-bottom: 2px solid #00a4b5;
    border-left: 2px solid #00a4b5;
  }
  div.refine_wrap > div ul li a {
    padding: 10px 0;
    font-size: 15px;
  }
}

.mypage div.refine_wrap:after {
  content: "";
  display: block;
  clear: both;
}
@media only screen and (min-width: 980px) {
  .mypage div.refine_wrap {
    margin-top: 100px;
  }
  .mypage div.refine_wrap > div {
    padding-left: 210px;
    position: relative;
  }
  .mypage div.refine_wrap > div > a {
    position: absolute;
    left: 0;
    top: 10px;
    pointer-events: none;
    border: none;
  }
  .mypage div.refine_wrap > div > a:after {
    content: "";
    display: none;
  }
  .mypage div.refine_wrap > div ul {
    display: block;
    background: #fff;
  }
  .mypage div.refine_wrap > div ul li {
    display: block;
    float: left;
    width: calc(25% - 15px);
    margin-right: 15px;
    margin-bottom: 10px;
  }
  .mypage div.refine_wrap > div ul li:nth-child(4n) {
    margin-right: 0;
  }
  .mypage div.refine_wrap > div ul li:nth-child(4n + 1) {
    clear: both;
  }
}

.cart_area {
  padding: 0;
}
.cart_area .row {
  padding-bottom: 0;
}

#sub_area {
  padding: 0;
}

div.freearea {
  margin-top: 14.375vw;
}
div.freearea h4 {
  margin: 5.625vw 0;
  position: relative;
}
div.freearea h4:first-child {
  margin-top: 0;
}
div.freearea h4 span {
  color: #9fa0a5;
  padding-right: 3.75vw;
  display: inline-block;
  background-color: #fff;
  position: relative;
  z-index: 2;
  font-size: 3.4375vw;
}
div.freearea h4:before {
  content: "";
  height: 1px;
  width: 100%;
  position: absolute;
  left: 0;
  top: 50%;
  display: block;
  background-color: #9fa0a5;
  z-index: 1;
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
div.freearea p {
  line-height: 1.8em;
}
div.freearea p + p {
  margin-bottom: 3.125vw;
}
div.freearea p:last-child {
  margin-bottom: 0;
}
@media only screen and (min-width: 980px) {
  div.freearea {
    margin-top: 46px;
  }
  div.freearea h4 {
    margin: 18px 0;
  }
  div.freearea h4 span {
    padding-right: 12px;
    font-size: 14px;
  }
  div.freearea p + p {
    margin-bottom: 10px;
  }
}

@media only screen and (min-width: 980px) {
  h2 + div.pickup {
    margin-top: 80px;
  }
  h2 + div.pickup + div.btn_wrap {
    margin: 20px auto 100px;
  }
}

div.btn-wrap a.btn + a.btn {
  margin-top: 70px;
}
@media only screen and (max-width: 819px) {
  div.btn-wrap a.btn + a.btn {
    margin-top: 15.625vw;
  }
}

div.p_list ul li {
  margin-bottom: 7.8125vw;
}
@media only screen and (max-width: 819px) {
  div.p_list ul li:nth-child(2n + 1) {
    clear: both;
  }
}
div.p_list ul li:last-child {
  margin-bottom: 0;
}
div.p_list ul li a {
  color: #3c3838;
  text-decoration: none;
  display: block;
}
div.p_list ul li a:hover {
  text-decoration: underline;
}
div.p_list ul li p {
  margin: 1.5625vw 0;
  text-align: center;
}
div.p_list ul li p.p_price {
  margin-bottom: 0;
  line-height: 1.2em;
}
div.p_list ul li p.p_price:after {
  content: "（税込）";
  font-size: 0.85em;
}
@media only screen and (min-width: 980px) {
  div.p_list ul li {
    margin-bottom: 80px;
  }
  div.p_list ul li:nth-child(4n + 1) {
    clear: both;
  }
  div.p_list ul li p {
    margin: 5px 0;
  }
}

@media only screen and (min-width: 980px) {
  #confirm_side {
    padding-top: 24px;
  }
}

#shopping_confirm .heading02 {
  background: transparent;
}

p.tips {
  padding: 4.6875vw 0;
  border: 1px solid #e4e4e4;
  text-align: center;
  margin-bottom: 7.8125vw;
}
@media only screen and (min-width: 980px) {
  p.tips {
    padding: 15px 0;
    margin-bottom: 25px;
  }
}

#top_wrap.pages span.num, .modal-body span.num {
  width: 4.0625vw;
  height: 4.0625vw;
  font-size: 3.125vw;
  display: inline-block;
  color: #fff;
  text-align: center;
  line-height: 4.0625vw;
  background-color: #00a4b5;
  border-radius: 50%;
  margin-right: 0.5em;
}
#top_wrap.pages .over_pad, .modal-body .over_pad {
  margin-left: -5.46875vw;
  width: calc(100% + 10.9375vw);
  max-width: calc(100% + 10.9375vw);
}
@media only screen and (min-width: 980px) {
  #top_wrap.pages .over_pad, .modal-body .over_pad {
    margin-left: -17.5px;
    width: calc(100% + 35px);
    max-width: calc(100% + 35px);
  }
}
#top_wrap.pages p.t_title, .modal-body p.t_title {
  padding: 0.625vw 3.125vw;
  border: 1px solid #e4e4e4;
  background-color: #f5f5f5;
  font-size: 4.0625vw;
}
#top_wrap.pages p.tit, .modal-body p.tit {
  font-size: 4.6875vw;
  color: #00a4b5;
}
#top_wrap.pages p.t_heading, .modal-body p.t_heading {
  padding-left: 6.25vw;
  position: relative;
}
#top_wrap.pages p.t_heading:before, .modal-body p.t_heading:before {
  content: "";
  width: 3.125vw;
  height: 3.125vw;
  position: absolute;
  top: 1.875vw;
  left: 0;
  background-color: #00a4b5;
}
#top_wrap.pages p.t_heading + p, .modal-body p.t_heading + p {
  font-size: 3.75vw;
}
#top_wrap.pages article.bland_wrap, .modal-body article.bland_wrap {
  margin-left: -5.46875vw;
  width: calc(100% + 10.9375vw);
  padding: 18.75vw 0 0;
}
#top_wrap.pages article.bland_wrap > img.copy, .modal-body article.bland_wrap > img.copy {
  width: 70.3125vw;
  margin: 0 auto;
  margin-bottom: 10.9375vw;
  display: block;
}
#top_wrap.pages article.bland_wrap > p, .modal-body article.bland_wrap > p {
  text-align: center;
  margin: 0;
}
#top_wrap.pages article.bland_wrap > p + p, .modal-body article.bland_wrap > p + p {
  margin-top: 10.9375vw;
}
#top_wrap.pages article.bland_wrap > div.bland_bg, .modal-body article.bland_wrap > div.bland_bg {
  height: 81.25vw;
  width: 100%;
  margin-top: 9.375vw;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
#top_wrap.pages article.bland_img > div, .modal-body article.bland_img > div {
  position: relative;
  height: 143.75vw;
  background-image: url(../img/top_over.png);
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center bottom;
}
#top_wrap.pages article.bland_img p.ver, .modal-body article.bland_img p.ver {
  font-size: 4.0625vw;
  writing-mode: vertical-rl;
  text-align: center;
  white-space: nowrap;
  letter-spacing: 0.6em;
  display: block;
  margin: 0 auto;
  line-height: 1em;
}
#top_wrap.pages article.bland_img p, .modal-body article.bland_img p {
  text-align: center;
  line-height: 2.5em;
}
#top_wrap.pages h1:not(.big), .modal-body h1:not(.big) {
  font-size: 3.75vw;
  border-bottom: 1px solid #e4e4e4;
  padding: 1.5625vw 0;
  text-align: left;
  margin-bottom: 6.25vw;
}
#top_wrap.pages p, .modal-body p {
  margin: 6.25vw 0;
  font-size: 3.4375vw;
}
#top_wrap.pages h2, .modal-body h2 {
  color: #00a4b5;
  text-align: left;
  font-size: 4.0625vw;
}
#top_wrap.pages h2 small, .modal-body h2 small {
  display: block;
  line-height: 1.2em;
}
#top_wrap.pages h2:after, .modal-body h2:after {
  left: 0;
  -moz-transform: translateX(0);
  -ms-transform: translateX(0);
  -webkit-transform: translateX(0);
  transform: translateX(0);
  width: 3.75vw;
}
#top_wrap.pages .pr_movie video {
  width: 100%;
}

#top_wrap.pages > article *:first-child, .modal-body > article *:first-child {
  margin-top: 0;
}
#top_wrap.pages > article *:last-child, .modal-body > article *:last-child {
  margin-bottom: 0;
}
#top_wrap.pages > article + article, #top_wrap.pages > article + h1, .modal-body > article + article, .modal-body > article + h1 {
  margin-top: 12.5vw;
}
#top_wrap.pages > article + article.mu, #top_wrap.pages > article + h1.mu, .modal-body > article + article.mu, .modal-body > article + h1.mu {
  margin-top: 37.5vw;
}
#top_wrap.pages div.serial, .modal-body div.serial {
  counter-reset: serial;
}
#top_wrap.pages div.serial > div, .modal-body div.serial > div {
  margin-bottom: 9.375vw;
}
#top_wrap.pages div.serial p, .modal-body div.serial p {
  font-size: 3.75vw;
  margin: 3.125vw auto;
}
#top_wrap.pages div.serial p.title, .modal-body div.serial p.title {
  background-color: #e4e4e4;
  margin: 0;
  margin-left: -5.46875vw;
  margin-bottom: 6.25vw;
  padding: 0.9375vw 5.46875vw;
  width: calc(100% + 10.9375vw);
}
#top_wrap.pages div.serial p.serial_num, .modal-body div.serial p.serial_num {
  counter-increment: serial;
  position: relative;
  padding-left: 7.8125vw;
}
#top_wrap.pages div.serial p.serial_num:before, .modal-body div.serial p.serial_num:before {
  content: counter(serial);
  width: 4.0625vw;
  height: 4.0625vw;
  font-size: 3.125vw;
  color: #fff;
  text-align: center;
  line-height: 4.0625vw;
  position: absolute;
  left: 0;
  top: 1.5625vw;
  background-color: #00a4b5;
  border-radius: 50%;
}
#top_wrap.pages ul.index li a, .modal-body ul.index li a {
  font-size: 3.75vw;
  color: #3c3838;
  font-weight: normal;
  display: block;
  padding: 3.125vw 0;
  padding-right: 4.6875vw;
  position: relative;
  border-bottom: 1px solid #9fa0a5;
  -moz-transition: all, 0.3s;
  -o-transition: all, 0.3s;
  -webkit-transition: all, 0.3s;
  transition: all, 0.3s;
}
#top_wrap.pages ul.index li a:after, .modal-body ul.index li a:after {
  content: "";
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border-top: 0.625vw solid #3c3838;
  border-right: 0.625vw solid #3c3838;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  transform-origin: right bottom;
  position: absolute;
  right: 3.125vw;
  top: 50%;
  -moz-transform: translateY(-50%) rotate(135deg);
  -ms-transform: translateY(-50%) rotate(135deg);
  -webkit-transform: translateY(-50%) rotate(135deg);
  transform: translateY(-50%) rotate(135deg);
}
@media only screen and (min-width: 980px) {
  #top_wrap.pages ul.index li a:after, .modal-body ul.index li a:after {
    border-top-width: 2px;
    border-right-width: 2px;
  }
}
#top_wrap.pages div.faq, .modal-body div.faq {
  margin: 6.25vw auto;
}
#top_wrap.pages div.faq:first-child, .modal-body div.faq:first-child {
  margin-top: 0;
}
#top_wrap.pages div.faq > a, .modal-body div.faq > a {
  font-size: 3.75vw;
  color: #3c3838;
  font-weight: normal;
  display: block;
  padding: 1.5625vw 0;
  padding-right: 4.6875vw;
  position: relative;
  border-bottom: 1px solid #9fa0a5;
  -moz-transition: all, 0.3s;
  -o-transition: all, 0.3s;
  -webkit-transition: all, 0.3s;
  transition: all, 0.3s;
}
#top_wrap.pages div.faq > a:after, .modal-body div.faq > a:after {
  content: "";
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border-top: 0.625vw solid #00a4b5;
  border-right: 0.625vw solid #00a4b5;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  transform-origin: right bottom;
  position: absolute;
  right: 3.125vw;
  top: 50%;
  -moz-transform: translateY(-50%) rotate(135deg);
  -ms-transform: translateY(-50%) rotate(135deg);
  -webkit-transform: translateY(-50%) rotate(135deg);
  transform: translateY(-50%) rotate(135deg);
}
@media only screen and (min-width: 980px) {
  #top_wrap.pages div.faq > a:after, .modal-body div.faq > a:after {
    border-top-width: 2px;
    border-right-width: 2px;
  }
}
#top_wrap.pages div.faq > a.on, .modal-body div.faq > a.on {
  color: #00a4b5;
}
#top_wrap.pages div.faq > a.on:after, .modal-body div.faq > a.on:after {
  border-top: none;
  border-right: none;
  border-bottom: 0.625vw solid #00a4b5;
  border-left: 0.625vw solid #00a4b5;
}
#top_wrap.pages div.faq > ul, .modal-body div.faq > ul {
  background: #fff;
  counter-reset: faq;
}
#top_wrap.pages div.faq > ul:last-child, .modal-body div.faq > ul:last-child {
  padding-bottom: 0;
}
#top_wrap.pages div.faq > ul li, .modal-body div.faq > ul li {
  counter-increment: faq;
  padding: 6.25vw 0;
  border-bottom: 1px solid #e4e4e4;
}
#top_wrap.pages div.faq > ul li:last-child, .modal-body div.faq > ul li:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
#top_wrap.pages div.faq > ul li p, .modal-body div.faq > ul li p {
  position: relative;
  margin-bottom: 3.125vw;
}
#top_wrap.pages div.faq > ul li p > span, .modal-body div.faq > ul li p > span {
  font-size: 3.75vw;
  font-weight: normal;
  position: relative;
  padding-bottom: 1.5625vw;
  margin: 1.5625vw auto;
  letter-spacing: 0.1em;
  display: block;
  text-align: left;
}
#top_wrap.pages div.faq > ul li p > span:first-child, .modal-body div.faq > ul li p > span:first-child {
  margin-top: 0;
}
#top_wrap.pages div.faq > ul li p > span:after, .modal-body div.faq > ul li p > span:after {
  content: "." counter(faq);
}
#top_wrap.pages div.faq > ul li p > span:before, .modal-body div.faq > ul li p > span:before {
  content: "";
  height: 2px;
  width: 4.6875vw;
  bottom: 0;
  position: absolute;
  left: 0;
  -moz-transform: translateX(0);
  -ms-transform: translateX(0);
  -webkit-transform: translateX(0);
  transform: translateX(0);
}
#top_wrap.pages div.faq > ul li p.q > span:before, .modal-body div.faq > ul li p.q > span:before {
  background-color: #3c3838;
}
#top_wrap.pages div.faq > ul li p.a > span:before, .modal-body div.faq > ul li p.a > span:before {
  background-color: #00a4b5;
}
#top_wrap.pages div.img_wrap, .modal-body div.img_wrap {
  position: relative;
  display: inline-block;
  max-width: 600px;
  margin: 0 auto;
}
#top_wrap.pages div.img_wrap p, .modal-body div.img_wrap p {
  position: absolute;
  font-size: 3.75vw;
  margin: 0;
  white-space: nowrap;
}
#top_wrap.pages div.use_step ul, .modal-body div.use_step ul {
  counter-reset: step;
}
#top_wrap.pages div.use_step ul li, .modal-body div.use_step ul li {
  counter-increment: step;
  padding-bottom: 3.125vw;
  position: relative;
}
#top_wrap.pages div.use_step ul li:before, .modal-body div.use_step ul li:before {
  content: "STEP" counter(step);
  padding: 1.5625vw 3.125vw;
  background-color: #f5f5f5;
  border: 1px solid #e4e4e4;
  display: block;
  width: 100%;
}
#top_wrap.pages div.use_step ul li:after, .modal-body div.use_step ul li:after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3.90625vw 3.90625vw 0 3.90625vw;
  border-color: #00a4b5 transparent transparent transparent;
  position: absolute;
  left: 50%;
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  bottom: 6.25vw;
}
#top_wrap.pages div.use_step ul li:last-child, .modal-body div.use_step ul li:last-child {
  padding-bottom: 0;
}
#top_wrap.pages div.use_step ul li:last-child:after, .modal-body div.use_step ul li:last-child:after {
  display: none;
}
#top_wrap.pages div.use_step ul li div.step_content, .modal-body div.use_step ul li div.step_content {
  padding-left: 21.875vw;
  position: relative;
  min-height: 21.875vw;
}
#top_wrap.pages div.use_step ul li div.step_content img, .modal-body div.use_step ul li div.step_content img {
  position: absolute;
  left: 0;
  top: 0;
  width: 20.3125vw;
}
#top_wrap.pages div.use_step ul li div.step_content p, .modal-body div.use_step ul li div.step_content p {
  font-size: 3.4375vw;
  margin: 4.0625vw auto;
}
#top_wrap.pages div.belt_wrap, .modal-body div.belt_wrap {
  position: relative;
}
#top_wrap.pages div.belt_wrap img, .modal-body div.belt_wrap img {
  position: absolute;
  right: 0;
  top: 50%;
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  display: block;
  width: 23.4375vw;
}
#top_wrap.pages div.belt_wrap p, .modal-body div.belt_wrap p {
  color: #fff;
  font-size: 5vw;
  display: block;
  background-color: #00a4b5;
  width: 90%;
  padding: 1.5625vw;
  padding-right: 14.0625vw;
  text-align: center;
}
#top_wrap.pages ul.comment li div, .modal-body ul.comment li div {
  position: relative;
  padding-right: 25vw;
}
#top_wrap.pages ul.comment li div img, .modal-body ul.comment li div img {
  width: 17.1875vw;
  position: absolute;
  bottom: 0;
  right: 0;
}
#top_wrap.pages ul.comment li div p, .modal-body ul.comment li div p {
  font-size: 4.6875vw;
  padding: 1.5625vw 3.125vw;
  border: 1px solid #9fa0a5;
  text-align: center;
  position: relative;
}
#top_wrap.pages ul.comment li div p:before, .modal-body ul.comment li div p:before {
  content: "";
  position: absolute;
  bottom: 1.5625vw;
  right: -8.125vw;
  margin-top: -4.375vw;
  border: 4.375vw solid transparent;
  border-left: 4.0625vw solid white;
  z-index: 2;
  -moz-transform: translateX(-2px);
  -ms-transform: translateX(-2px);
  -webkit-transform: translateX(-2px);
  transform: translateX(-2px);
}
#top_wrap.pages ul.comment li div p:after, .modal-body ul.comment li div p:after {
  content: "";
  position: absolute;
  bottom: 1.5625vw;
  right: -8.125vw;
  margin-top: -4.375vw;
  border: 4.375vw solid transparent;
  border-left: 4.0625vw solid #9fa0a5;
  z-index: 1;
}
#top_wrap.pages ul.comment li div p span, .modal-body ul.comment li div p span {
  display: block;
  font-size: 3.4375vw;
  line-height: 1.5em;
}
#top_wrap.pages ul.comment li div:first-child p, .modal-body ul.comment li div:first-child p {
  color: #00a4b5;
  border-color: #00a4b5;
}
#top_wrap.pages ul.comment li div:first-child p:after, .modal-body ul.comment li div:first-child p:after {
  border-left-color: #00a4b5;
}
@media only screen and (min-width: 980px) {
  #top_wrap.pages img, .modal-body img {
    max-width: 600px;
    margin-left: 0;
    width: 100%;
  }
  #top_wrap.pages span.num, .modal-body span.num {
    width: 13px;
    height: 13px;
    font-size: 13px;
    line-height: 13px;
  }
  #top_wrap.pages p.t_title, .modal-body p.t_title {
    padding: 2px 10px;
    font-size: 18px;
    margin-bottom: 20px;
  }
  #top_wrap.pages p.t_title + p, .modal-body p.t_title + p {
    margin-top: 20px;
  }
  #top_wrap.pages p.tit, .modal-body p.tit {
    font-size: 18px;
  }
  #top_wrap.pages p.t_heading, .modal-body p.t_heading {
    padding-left: 20px;
  }
  #top_wrap.pages p.t_heading:before, .modal-body p.t_heading:before {
    width: 10px;
    height: 10px;
    top: 10px;
  }
  #top_wrap.pages p.t_heading + p, .modal-body p.t_heading + p {
    font-size: 16px;
  }
  #top_wrap.pages article.bland_wrap, .modal-body article.bland_wrap {
    margin-left: -17.5px;
    width: calc(100% + 35px);
    padding: 60px 0 0;
    position: relative;
  }
  #top_wrap.pages article.bland_wrap > img.copy, .modal-body article.bland_wrap > img.copy {
    width: 600px;
    margin-bottom: 35px;
    position: relative;
    z-index: 3;
  }
  #top_wrap.pages article.bland_wrap > p, .modal-body article.bland_wrap > p {
    position: relative;
    z-index: 3;
  }
  #top_wrap.pages article.bland_wrap > p + p, .modal-body article.bland_wrap > p + p {
    margin-top: 35px;
  }
  #top_wrap.pages article.bland_wrap > div.bland_bg, .modal-body article.bland_wrap > div.bland_bg {
    bottom: 0;
    left: 50%;
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    position: relative;
    margin-top: 40px;
    z-index: 1;
    width: 100vw;
    height: 50vw;
  }
  #top_wrap.pages article.bland_img > div, .modal-body article.bland_img > div {
    height: 800px;
    background-size: auto 550px;
  }
  #top_wrap.pages article.bland_img p.ver, .modal-body article.bland_img p.ver {
    font-size: 18px;
  }
  #top_wrap.pages h1:not(.big), .modal-body h1:not(.big) {
    font-size: 18px;
    padding: 10px 0;
    margin: 0 0 48px;
    margin-bottom: 80px;
    text-align: center;
  }
  #top_wrap.pages p, .modal-body p {
    margin: 40px 0;
    font-size: 15px;
  }
  #top_wrap.pages h2, .modal-body h2 {
    font-size: 18px;
    margin-bottom: 65px;
  }
  #top_wrap.pages h2:after, .modal-body h2:after {
    width: 36px;
  }
  #top_wrap.pages .pr_movie video {
    width: 770px;
  }
  #top_wrap.pages > article + article, .modal-body > article + article {
    margin-top: 50px;
    border-top: 1px solid #e4e4e4;
    padding-top: 50px;
  }
  #top_wrap.pages > article + article.mu, .modal-body > article + article.mu {
    margin-top: 175px;
    padding-top: 25px;
    border-top: none;
  }
  #top_wrap.pages > article + h1, .modal-body > article + h1 {
    margin-top: 50px;
    padding-top: 50px;
  }
  #top_wrap.pages div.serial > div, .modal-body div.serial > div {
    margin-bottom: 30px;
  }
  #top_wrap.pages div.serial p, .modal-body div.serial p {
    font-size: 15px;
    margin: 10px auto;
  }
  #top_wrap.pages div.serial p.title, .modal-body div.serial p.title {
    background-color: #e4e4e4;
    margin-left: -17.5px;
    margin-bottom: 20px;
    padding: 3px 17.5px;
    width: calc(100% + 35px);
  }
  #top_wrap.pages div.serial p.serial_num, .modal-body div.serial p.serial_num {
    padding-left: 25px;
  }
  #top_wrap.pages div.serial p.serial_num:before, .modal-body div.serial p.serial_num:before {
    width: 18px;
    height: 18px;
    font-size: 13px;
    line-height: 15px;
    top: 5px;
  }
  #top_wrap.pages ul.index li a, .modal-body ul.index li a {
    font-size: 16px;
    padding: 10px 0;
    padding-right: 15px;
  }
  #top_wrap.pages ul.index li a:after, .modal-body ul.index li a:after {
    display: inline-block;
    width: 0.5em;
    height: 0.5em;
    border-top: 0.625vw solid #3c3838;
    border-right: 0.625vw solid #3c3838;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    transform-origin: right bottom;
    right: 10px;
  }
}
@media only screen and (min-width: 980px) and (min-width: 980px) {
  #top_wrap.pages ul.index li a:after, .modal-body ul.index li a:after {
    border-top-width: 2px;
    border-right-width: 2px;
  }
}
@media only screen and (min-width: 980px) {
  #top_wrap.pages div.faq, .modal-body div.faq {
    margin: 20px auto;
  }
  #top_wrap.pages div.faq > a, .modal-body div.faq > a {
    font-size: 18px;
    padding: 5px 0;
    padding-right: 15px;
  }
  #top_wrap.pages div.faq > a:after, .modal-body div.faq > a:after {
    right: 10px;
  }
  #top_wrap.pages div.faq > a.on:after, .modal-body div.faq > a.on:after {
    border-bottom: 2px solid #00a4b5;
    border-left: 2px solid #00a4b5;
  }
  #top_wrap.pages div.faq > ul li, .modal-body div.faq > ul li {
    padding: 20px 0;
  }
  #top_wrap.pages div.faq > ul li p, .modal-body div.faq > ul li p {
    margin-bottom: 10px;
  }
  #top_wrap.pages div.faq > ul li p > span, .modal-body div.faq > ul li p > span {
    font-size: 18px;
    padding-bottom: 5px;
    margin: 5px auto;
  }
  #top_wrap.pages div.faq > ul li p > span:before, .modal-body div.faq > ul li p > span:before {
    height: 2px;
    width: 15px;
  }
  #top_wrap.pages div.img_wrap p, .modal-body div.img_wrap p {
    font-size: 16px;
  }
  #top_wrap.pages div.use_step ul li, .modal-body div.use_step ul li {
    padding-bottom: 10px;
  }
  #top_wrap.pages div.use_step ul li:before, .modal-body div.use_step ul li:before {
    padding: 5px 10px;
  }
  #top_wrap.pages div.use_step ul li:after, .modal-body div.use_step ul li:after {
    border-width: 12.5px 12.5px 0 12.5px;
    bottom: 20px;
  }
  #top_wrap.pages div.use_step ul li div.step_content, .modal-body div.use_step ul li div.step_content {
    padding-left: 70px;
    min-height: 70px;
  }
  #top_wrap.pages div.use_step ul li div.step_content img, .modal-body div.use_step ul li div.step_content img {
    width: 65px;
  }
  #top_wrap.pages div.use_step ul li div.step_content p, .modal-body div.use_step ul li div.step_content p {
    font-size: 16px;
    margin: 13px auto;
  }
  #top_wrap.pages div.belt_wrap, .modal-body div.belt_wrap {
    max-width: 600px;
  }
  #top_wrap.pages div.belt_wrap img, .modal-body div.belt_wrap img {
    width: 75px;
  }
  #top_wrap.pages div.belt_wrap p, .modal-body div.belt_wrap p {
    font-size: 16px;
    padding: 5px;
    padding-right: 45px;
  }
  #top_wrap.pages ul.comment, .modal-body ul.comment {
    max-width: 600px;
  }
  #top_wrap.pages ul.comment li, .modal-body ul.comment li {
    margin: 0 auto 30px;
  }
  #top_wrap.pages ul.comment li > p, .modal-body ul.comment li > p {
    margin: 0;
  }
  #top_wrap.pages ul.comment li div, .modal-body ul.comment li div {
    padding-right: 100px;
  }
  #top_wrap.pages ul.comment li div img, .modal-body ul.comment li div img {
    width: 85px;
  }
  #top_wrap.pages ul.comment li div p, .modal-body ul.comment li div p {
    font-size: 15px;
    padding: 5px 10px;
    margin: 0;
  }
  #top_wrap.pages ul.comment li div p:before, .modal-body ul.comment li div p:before {
    content: "";
    position: absolute;
    bottom: 5px;
    right: -26px;
    margin-top: -14px;
    border: 14px solid transparent;
    border-left: 13px solid #FFF;
  }
  #top_wrap.pages ul.comment li div p:after, .modal-body ul.comment li div p:after {
    bottom: 5px;
    right: -26px;
    margin-top: -14px;
    border: 14px solid transparent;
    border-left: 13px solid #9fa0a5;
  }
  #top_wrap.pages ul.comment li div p span, .modal-body ul.comment li div p span {
    font-size: 14px;
  }
}

@media only screen and (min-width: 980px) {
  .modal-body img {
    max-width: 100%;
  }
}

@media only screen and (min-width: 980px) {
  .bland #top_wrap.pages > article + article, .bland .modal-body > article + article {
    border: none;
  }
  .bland img.over_pad {
    margin-bottom: 30px;
  }
  .bland p {
    text-align: center;
    margin: 30px auto;
  }
  .bland p + .btn-info {
    margin-top: 60px;
    margin-bottom: 100px;
  }
  .bland #top_wrap.pages > article + article, .bland .modal-body > article + article {
    margin-top: 50px;
    padding-top: 50px;
  }
}

.cart_items div.ib_wrap {
  position: relative;
  padding-top: 10vw;
}
.cart_items div.ib_wrap .icon_edit {
  display: inline-block;
  border: 1px solid #e4e4e4;
  position: absolute;
  top: 1.5625vw;
  left: 0;
}
.cart_items div.ib_wrap .icon_edit a {
  color: #9fa0a5;
  display: block;
  font-size: 3.125vw;
  padding: 0.9375vw 1.5625vw;
  padding-right: 5.9375vw;
  position: relative;
}
.cart_items div.ib_wrap .icon_edit a img {
  width: 3.125vw;
  display: inline-block;
  margin-left: 0.5em;
  position: absolute;
  right: 1.5625vw;
  top: 50%;
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.cart_items div.ib_wrap .item_quantity:before {
  content: "";
}
.cart_items div.ib_wrap > div.item_quantity {
  position: absolute;
  top: 1.5625vw;
  right: 0;
}
.cart_items div.ib_wrap > div.item_quantity ul.cart_item_list__quantity_edit {
  display: table;
}
.cart_items div.ib_wrap > div.item_quantity ul.cart_item_list__quantity_edit li {
  width: 4.6875vw;
  font-size: 3.125vw;
  text-align: center;
  display: table-cell;
  background-color: #9fa0a5;
  border: 1px solid #9fa0a5;
}
.cart_items div.ib_wrap > div.item_quantity ul.cart_item_list__quantity_edit li:nth-child(2) {
  background-color: #fff;
  border: 1px solid #e4e4e4;
  width: 16vw;
}
.cart_items div.ib_wrap > div.item_quantity ul.cart_item_list__quantity_edit li.off {
  opacity: 0;
}
.cart_items div.ib_wrap > div.item_quantity ul.cart_item_list__quantity_edit li img {
  width: 100%;
  display: inline-block;
}
.cart_items article.item_detail {
  padding-left: 28.125vw;
  position: relative;
  min-height: 23.4375vw;
  position: relative;
  margin-bottom: 3.125vw;
}
.cart_items article.item_detail .ip_img {
  width: 23.4375vw;
  position: absolute;
  top: 0;
  left: 0;
}
.cart_items article.item_detail p {
  margin: 0;
  font-size: 3.125vw;
}
.cart_items article.item_detail p.item_name {
  min-height: 14.375vw;
}
.cart_items article.item_detail p.item_name a {
  font-size: 3.75vw;
  color: #3c3838;
}
.cart_items article.item_detail p.item_price {
  position: absolute;
  bottom: 0;
  right: 0;
}
.cart_items article.item_detail div.item_status {
  color: #9fa0a5;
}

ul.item_price {
  font-weight: normal;
  display: table;
  width: 100%;
}
ul.item_price li {
  display: table-row;
  width: 100%;
}
ul.item_price li > div {
  border: 1px solid #e4e4e4;
  border-left: none;
  border-right: none;
  display: table-cell;
  padding: 3.125vw 0;
}
ul.item_price li > div:first-child {
  width: 40vw;
}
ul.item_price li > div:last-child {
  text-align: right;
}

div.total_box {
  padding-top: 0;
}
div.total_box .btn_group {
  padding: 0;
}
div.total_box .btn_group > * {
  margin: 0 0 6.25vw;
}
div.total_box .btn_group > *:last-child {
  margin-bottom: 0;
}
div.total_box ul.item_price {
  margin-bottom: 12.5vw;
}
div.total_box ul.item_price li:first-child > div {
  border-top: none;
}
div.total_box ul.item_price li:first-child > div:last-child {
  color: #00a4b5;
}

div.top_wrapper {
  position: relative;
  z-index: 3;
}
div.top_wrapper article.top_over {
  position: relative;
  padding: 0 5.46875vw;
}
div.top_wrapper article.top_over > img {
  z-index: 1;
  position: absolute;
  top: 50%;
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 60%;
  right: -10%;
}
div.top_wrapper article.top_over div.to_wrap {
  width: 100%;
  position: relative;
  z-index: 2;
}
div.top_wrapper article.top_over div.to_wrap h1 {
  font-size: 10vw;
}
div.top_wrapper article.top_over div.to_wrap h1 small {
  font-size: 3.75vw;
  display: block;
  color: #939393;
  line-height: 1.4em;
}
div.top_wrapper article.top_over div.to_wrap h4 {
  text-align: left;
  color: #00a4b5;
  margin-bottom: -2vw;
}
div.top_wrapper article.top_over div.to_wrap .text {
  font-size: 3.75vw;
  color: #525263;
  margin-bottom: 1vw;
}
div.top_wrapper article.top_over div.to_wrap a {
  font-size: 3.75vw;
  color: #3c3838;
  padding-bottom: 3.75vw;
  border-bottom: 2px solid #e4e4e4;
  display: block;
  padding-right: 20px;
  position: relative;
  -moz-transition: border-color, 0.3s;
  -o-transition: border-color, 0.3s;
  -webkit-transition: border-color, 0.3s;
  transition: border-color, 0.3s;
  font-family: a-otf-gothic-bbb-pr6n;
}
div.top_wrapper article.top_over div.to_wrap a + a {
  margin-top: 3.25vw;
}
div.top_wrapper article.top_over div.to_wrap a:hover {
  border-color: #00A4B5;
}
div.top_wrapper article.top_over div.to_wrap a:after {
  content: "";
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border-top: 0.625vw solid #3c3838;
  border-right: 0.625vw solid #3c3838;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transform-origin: right bottom;
  position: absolute;
  right: 3.125vw;
  top: 50%;
  -moz-transform: translateY(-50%) rotate(45deg);
  -ms-transform: translateY(-50%) rotate(45deg);
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
}
@media only screen and (min-width: 980px) {
  div.top_wrapper article.top_over div.to_wrap a:after {
    border-top-width: 2px;
    border-right-width: 2px;
  }
}

body.front_page .headcart_wrap {
  display: none !important;
}
body.front_page div.top_contents {
  height: calc(100vh - 17.1875vw  );
}
@media only screen and (min-width: 980px) {
  body.front_page div.top_contents {
    height: calc(100vh - 110px  );
  }
}
body.front_page div.top_contents div.top_img {
  position: fixed;
}
@media only screen and (min-width: 980px) {
  body.front_page div.top_contents div.top_img {
    top: 310px;
  }
}
body.front_page div.top_contents div.top_bg {
  background-position: top center;
  position: fixed;
}
body.front_page div.top_contents div.top_bg:not(:first-child) {
  display: none;
}
@media only screen and (max-width: 819px) {
  body.front_page div.top_contents div.top_bg.bg1 {
    background-image: url(../img/spslide1.jpg);
  }
  body.front_page div.top_contents div.top_bg.bg2 {
    background-image: url(../img/spslide2.jpg);
  }
  body.front_page div.top_contents div.top_bg.bg3 {
    background-image: url(../img/spslide3.jpg);
  }
  body.front_page div.top_contents div.top_bg.bg4 {
    background-image: url(../img/spslide4.jpg);
  }
}
@media only screen and (min-width: 980px) {
  body.front_page div.top_contents div.top_bg.bg1 {
    background-image: url(../img/pc_slide1.jpg);
  }
  body.front_page div.top_contents div.top_bg.bg2 {
    background-image: url(../img/pc_slide2.jpg);
  }
  body.front_page div.top_contents div.top_bg.bg3 {
    background-image: url(../img/pc_slide3.jpg);
  }
  body.front_page div.top_contents div.top_bg.bg4 {
    background-image: url(../img/pc_slide4.jpg);
  }
}

@media only screen and (min-width: 980px) {
  .cart_items div.ib_wrap {
    padding-top: 32px;
  }
  .cart_items div.ib_wrap .icon_edit {
    top: 5px;
  }
  .cart_items div.ib_wrap .icon_edit a {
    font-size: 10px;
    padding: 3px 5px;
    padding-right: 19px;
  }
  .cart_items div.ib_wrap .icon_edit a img {
    width: 10px;
    right: 5px;
  }
  .cart_items div.ib_wrap > div.item_quantity {
    top: 5px;
  }
  .cart_items div.ib_wrap > div.item_quantity ul.cart_item_list__quantity_edit li {
    width: 15px;
    font-size: 10px;
  }
  .cart_items div.ib_wrap > div.item_quantity ul.cart_item_list__quantity_edit li:nth-child(2) {
    width: 53px;
  }
  .cart_items article.item_detail {
    padding-left: 90px;
    min-height: 75px;
    margin-bottom: 10px;
  }
  .cart_items article.item_detail .ip_img {
    width: 75px;
  }
  .cart_items article.item_detail p {
    font-size: 10px;
  }
  .cart_items article.item_detail p.item_name {
    min-height: 46px;
  }
  .cart_items article.item_detail p.item_name a {
    font-size: 18px;
  }

  ul.item_price li > div {
    padding: 10px 0;
  }
  ul.item_price li > div:first-child {
    width: 128px;
  }

  div.total_box .btn_group > * {
    margin: 0 0 20px;
  }
  div.total_box ul.item_price {
    margin-bottom: 40px;
  }

  div.top_wrapper {
    position: relative;
    z-index: 3;
  }
  div.top_wrapper article.top_over {
    position: relative;
    padding: 0 17.5px;
    max-width: 1000px;
    margin: 0 auto 100px;
  }
  div.top_wrapper article.top_over > img {
    top: 50%;
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 458px;
    right: 0;
    z-index: 4;
  }
  div.top_wrapper article.top_over div.to_wrap {
    width: 960px;
    text-align: center;
  }
  div.top_wrapper article.top_over div.to_wrap h1 {
    font-size: 63px;
  }
  div.top_wrapper article.top_over div.to_wrap h1 small {
    font-size: 20px;
    display: block;
    color: #939393;
    line-height: 1.4em;
  }
  div.top_wrapper article.top_over div.to_wrap h4 {
    font-size: 16px;
    text-align: left;
    margin-bottom: 15px;
    color: #00a4b5;
  }
  div.top_wrapper article.top_over div.to_wrap .text {
    font-size: 16px;
    text-align: left;
    color: #525263;
    margin-bottom: 10px;
  }
  div.top_wrapper article.top_over div.to_wrap a {
    font-size: 18px;
    padding-bottom: 20px;
    padding-right: 20px;
    width: 1000px;
    font-family: a-otf-gothic-bbb-pr6n;
    text-align: left;
    color: #525263;
  }
  div.top_wrapper article.top_over div.to_wrap a + a {
    margin-top: 20px;
  }
  div.top_wrapper article.top_over div.to_wrap a:after {
    display: inline-block;
    width: 0.5em;
    height: 0.5em;
    border-top: 0.625vw solid #3c3838;
    border-right: 0.625vw solid #3c3838;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    transform-origin: right bottom;
    position: relative;
    right: 0;
    top: 0;
    margin-left: 20px;
  }
}
@media only screen and (min-width: 980px) and (min-width: 980px) {
  div.top_wrapper article.top_over div.to_wrap a:after {
    border-top-width: 2px;
    border-right-width: 2px;
  }
}

#top_wrap h1:not(.big) {
  font-size: 3.75vw;
  border-bottom: 1px solid #e4e4e4;
  padding: 1.5625vw 0;
  text-align: left;
  margin-bottom: 10.9375vw;
}
#top_wrap h1.big {
  font-size: 13.4375vw;
  text-align: center;
  line-height: 1.1em;
}
#top_wrap h1.big small {
  color: #9fa0a5;
  font-size: 3.125vw;
  line-height: 1.5em;
  display: block;
}
#top_wrap .dl_table dl {
  margin: 0 0 9.375vw;
  padding: 0;
  border: none;
}
@media only screen and (min-width: 980px) {
  #top_wrap h1:not(.big) {
    font-size: 24px;
    padding: 5px 0;
    margin-bottom: 35px;
  }
  #top_wrap h1.big {
    font-size: 86px;
  }
  #top_wrap h1.big small {
    font-size: 16px;
  }
}

@keyframes album {
  0% {
    opacity: 0;
  }

  6.25% {
    opacity: 1;
  }

  18.75% {
    opacity: 1;
  }

  60% {
    opacity: 0;
  }
}
@-webkit-keyframes album {
  0% {
    opacity: 0;
  }

  6.25% {
    opacity: 1;
  }

  18.75% {
    opacity: 1;
  }

  60% {
    opacity: 0;
  }
}
div.top_contents {
  height: calc(70vh - 17.1875vw  );
  width: 100%;
  position: relative;
  z-index: 1;
}

body.ectop div.top_contents {
  height:80vw;
  overflow: hidden;
  position: relative;
}

/* アニメーション */
body.ectop div.top_contents div.top_bg {
  z-index:10;
  opacity: 0;
  width: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-animation: anime 15s 0s infinite;
  animation: anime 15s 0s infinite;
}
body.ectop div.top_contents div.top_bg:nth-of-type(2) {
  -webkit-animation-delay: 5s;
  animation-delay: 5s;
}

body.ectop div.top_contents div.top_bg:nth-of-type(3) {
  -webkit-animation-delay: 10s;
  animation-delay: 10s;
}
/* /ec スライダー アニメーション */
@keyframes anime {
  0% {
    opacity: 0;
  }
  25% {
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  63% {
    opacity: 0;
  }
  100% {
    opacity: 0;
    transform: scale(1.2) ;
    z-index:9;
  }
}


div.top_contents.camp.nn {
  height: calc(90vh - 17.1875vw  );
}
div.top_contents.camp div.top_bg {
  background-image: url(/html/template/cagiana/img/mv_bg_sp.png);
  height: 100%;
  background-color: #000;
  background-position: center bottom;
}
div.top_contents.camp.summer div.top_bg {
  background-image: url(/html/template/cagiana/img/opening_main_img_sp.png);
  height: calc(100% + 33vw);
  background-position: center bottom;
}
div.top_contents div.top_bg {
  background-size: cover;
  background-position: center bottom;
  background-repeat: no-repeat;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
div.top_contents.mma_wrapper {
  height: auto;
  background-color: #E4E4E4;
}
div.top_contents.mma_wrapper .mma_bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
div.top_contents.mma_wrapper .mma_bg > div {
  position: absolute;
  height: 100%;
}
div.top_contents.mma_wrapper .mma_bg > div.mma_bg1 {
  left: 15%;
  top: 0;
}
@media only screen and (max-width: 819px) {
  div.top_contents.mma_wrapper .mma_bg > div.mma_bg1 {
    margin: 6.25vw auto;
    left: 0;
    overflow: hidden;
  }
}
div.top_contents.mma_wrapper .mma_bg > div.mma_bg1 img:not(.logo) {
  width: auto;
  max-width: none;
}
@media only screen and (max-width: 819px) {
  div.top_contents.mma_wrapper .mma_bg > div.mma_bg1 img:not(.logo) {
    max-width: 120%;
    margin-left: -15vw;
  }
}
div.top_contents.mma_wrapper .mma_bg > div.mma_bg1 img.logo {
  max-width: 160px;
  position: absolute;
  top: 70px;
  left: 68%;
}
@media only screen and (max-width: 819px) {
  div.top_contents.mma_wrapper .mma_bg > div.mma_bg1 img.logo {
    left: 70%;
    width: 25%;
    top: 0;
  }
}
@media only screen and (max-width: 819px) {
  div.top_contents.mma_wrapper .mma_bg {
    position: relative;
    height: auto;
  }
  div.top_contents.mma_wrapper .mma_bg > div {
    position: relative;
  }
  div.top_contents.mma_wrapper .mma_bg > div img {
    max-height: 9999999px;
  }
}
div.top_contents.mma_wrapper .mma_inner {
  max-width: 1000px;
  margin: 0 auto;
  position: relative;
}
div.top_contents.mma_wrapper .mma_inner .mma_main {
  max-width: 600px;
  position: relative;
  z-index: 2;
  padding: 40px 0 100px;
  padding-left: 3.125vw;
}
@media only screen and (max-width: 819px) {
  div.top_contents.mma_wrapper .mma_inner .mma_main {
    padding: 7.8125vw 0;
  }
}
div.top_contents.mma_wrapper .mma_inner .mma_main div.mma_bg2 {
  position: absolute;
  right: -20%;
  bottom: 130px;
  -moz-transform: translateX(50%);
  -ms-transform: translateX(50%);
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
  width: 532px;
  height: 532px;
}
@media only screen and (max-width: 819px) {
  div.top_contents.mma_wrapper .mma_inner .mma_main div.mma_bg2 {
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -webkit-transform: translateX(0);
    transform: translateX(0);
    bottom: auto;
    top: 140vw;
    z-index: 8;
    width: 45.3125vw;
    height: auto;
    right: 0;
  }
}
div.top_contents.mma_wrapper .mma_inner .mma_main div.mma_bg2 img {
  max-width: 100%;
}
div.top_contents.mma_wrapper .mma_inner .mma_main > div img {
  width: auto;
}
div.top_contents.mma_wrapper .mma_inner .mma_main > div h1 {
  text-align: center;
  margin-top: 0;
  font-family: ryo-display-plusn, serif;
  font-feature-settings: "palt";
  font-weight: 600;
  font-style: normal;
  font-size: 35px;
  letter-spacing: 0.05em;
  color: #3C3838;
}
@media only screen and (max-width: 819px) {
  div.top_contents.mma_wrapper .mma_inner .mma_main > div h1 {
    font-size: 6.5625vw;
  }
}
div.top_contents.mma_wrapper .mma_inner .mma_main > div h1 span.num {
  display: block;
  text-align: center;
  font-family: a-otf-gothic-bbb-pr6n;
  font-weight: bold;
  font-size: 55px;
  line-height: 1em;
  margin-bottom: 10px;
}
@media only screen and (max-width: 819px) {
  div.top_contents.mma_wrapper .mma_inner .mma_main > div h1 span.num {
    font-size: 10.15625vw;
  }
}
div.top_contents.mma_wrapper .mma_inner .mma_main > div p {
  text-align: center;
  font-size: 3.75vw;
  color: #525263;
}
@media only screen and (min-width: 980px) {
  div.top_contents.mma_wrapper .mma_inner .mma_main > div p {
    font-size: 20px;
  }
}
div.top_contents.mma_wrapper .mma_inner .mma_main > div ul {
  max-width: 350px;
  margin: 0 auto;
  margin-top: 10px;
  position: relative;
  counter-reset: serial;
  display: table;
}
div.top_contents.mma_wrapper .mma_inner .mma_main > div ul li {
  font-size: 3.75vw;
  line-height: 1.8em;
  text-align: left;
  margin: 0 auto;
  counter-increment: serial;
  position: relative;
  display: table-row;
}
div.top_contents.mma_wrapper .mma_inner .mma_main > div ul li p {
  margin: 0;
  display: table-cell;
  position: relative;
  padding-left: 2em;
  text-align: left;
}
div.top_contents.mma_wrapper .mma_inner .mma_main > div ul li p:before {
  content: counter(serial) " ：";
  position: absolute;
  display: inline-block;
  top: 0;
  left: 0;
}
@media only screen and (min-width: 980px) {
  div.top_contents.mma_wrapper .mma_inner .mma_main > div ul li {
    font-size: 16px;
  }
}
@media only screen and (max-width: 819px) {
  div.top_contents.mma_wrapper .mma_inner .mma_main .mma_top {
    padding: 0 5.46875vw;
  }
}
div.top_contents.mma_wrapper .mma_inner .mma_main .mma_top img {
  display: block;
  max-width: 200px;
}
@media only screen and (max-width: 819px) {
  div.top_contents.mma_wrapper .mma_inner .mma_main .mma_top img {
    max-width: 135px;
  }
}
div.top_contents.mma_wrapper .mma_inner .mma_main .mma_top h1 {
  text-align: left;
  font-size: 8vw;
  margin-bottom: 0;
}
@media only screen and (min-width: 980px) {
  div.top_contents.mma_wrapper .mma_inner .mma_main .mma_top h1 {
    font-size: 40px;
  }
}
div.top_contents.mma_wrapper .mma_inner .mma_main .mma_top p {
  text-align: left;
  font-size: 18px;
}
@media only screen and (max-width: 819px) {
  div.top_contents.mma_wrapper .mma_inner .mma_main .mma_top p {
    font-size: 3.4375vw;
  }
}
div.top_contents.mma_wrapper .mma_inner .mma_main .mma_middle {
  background-color: #00a4b5;
  width: 700px;
  height: 700px;
  position: relative;
  left: -170px;
  border-radius: 50%;
  padding: 40px;
  top: 10px;
}
@media only screen and (max-width: 819px) {
  div.top_contents.mma_wrapper .mma_inner .mma_main .mma_middle {
    padding: 6.25vw;
    width: 125vw;
    height: 125vw;
    left: 50%;
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}
div.top_contents.mma_wrapper .mma_inner .mma_main .mma_middle h1 {
  color: #fff;
}
div.top_contents.mma_wrapper .mma_inner .mma_main .mma_middle > p {
  color: #fff;
  position: relative;
  padding-bottom: 20px;
}
div.top_contents.mma_wrapper .mma_inner .mma_main .mma_middle > p:after {
  content: "";
  height: 1px;
  width: 58%;
  bottom: 0;
  left: 50%;
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #fff;
  display: block;
  position: absolute;
}
div.top_contents.mma_wrapper .mma_inner .mma_main .mma_middle ul li {
  color: #fff;
}
div.top_contents.mma_wrapper .mma_inner .mma_main .mma_middle ul li p {
  color: #fff;
  line-height: 1.5em;
  padding-bottom: 10px;
}
div.top_contents.mma_wrapper .mma_inner .mma_main .mma_bottom {
  width: 500px;
  height: 500px;
  position: relative;
  padding: 40px;
  left: -70px;
  margin-top: -80px;
  margin-bottom: 150px;
}
@media only screen and (max-width: 819px) {
  div.top_contents.mma_wrapper .mma_inner .mma_main .mma_bottom {
    padding: 12.5vw;
    left: 50%;
    width: 100vw;
    height: 100vw;
    margin-top: -5vw;
    margin-bottom: 25vw;
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}
div.top_contents.mma_wrapper .mma_inner .mma_main .mma_bottom:before {
  content: "";
  width: 100%;
  height: 100%;
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  background-color: #fff;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
}
div.top_contents.mma_wrapper .mma_inner .mma_main .mma_bottom h1 {
  color: #00a4b5;
}
div.top_contents.mma_wrapper .mma_inner .mma_main .mma_bottom h1 span {
  color: #3C3838;
}
div.top_contents.mma_wrapper .mma_inner .mma_main .mma_bottom > div {
  position: relative;
  width: 100%;
  margin-top: -70px;
}
@media only screen and (max-width: 819px) {
  div.top_contents.mma_wrapper .mma_inner .mma_main .mma_bottom > div {
    margin-top: -12.5vw;
  }
}
div.top_contents.mma_wrapper .mma_inner .mma_main .mma_bottom img {
  display: block;
  margin: 0 auto;
  width: 50%;
  max-width: 260px;
}
div.top_contents.mma_wrapper .mma_inner .mma_main div.btn-wrap {
  position: relative;
  z-index: 10;
}
@media only screen and (max-width: 819px) {
  div.top_contents.mma_wrapper .mma_inner .mma_main div.btn-wrap {
    padding: 0 5.46875vw;
  }
}
div.top_contents.mma_wrapper .mma_inner .mma_main div.btn-wrap a.btn-info {
  margin-left: 0;
}
div.top_contents div.top_wrapper {
  width: 100%;
  max-width: 1000px;
  padding: 0 5.46875vw;
  top: 70%;
  left: 0;
  margin: 0 auto;
}
@media only screen and (min-width: 980px) {
  div.top_contents div.top_wrapper {
    top: 65%;
  }
}
div.top_contents div.top_wrapper a {
  text-decoration: none;
  font-size: 7.1875vw;
  color: #fff;
  background-image: url(../img/top_link_arrow.svg);
  background-repeat: no-repeat;
  background-position: right center;
  background-size: 20px;
  line-height: 1em;
  display: inline-block;
  padding-right: 40px;
  position: relative;
}
div.top_contents div.top_wrapper a:after {
  content: "";
  width: 0;
  height: 1px;
  background-color: #fff;
  position: absolute;
  bottom: -10px;
  left: 0;
  -moz-transition: width, 0.3s;
  -o-transition: width, 0.3s;
  -webkit-transition: width, 0.3s;
  transition: width, 0.3s;
}
div.top_contents div.top_wrapper a:hover:after {
  width: 100%;
}
@media only screen and (min-width: 980px) {
  div.top_contents div.top_wrapper {
    padding: 0 17.5px;
  }
  div.top_contents div.top_wrapper a {
    font-size: 46px;
  }
}
div.top_contents div.campaign_wrapper {
  position: absolute;
  border-bottom: none;
}
div.top_contents div.campaign_wrapper.nn {
  top: 0;
  left: 50%;
  height: 100%;
  width: 2000px;
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
div.top_contents div.campaign_wrapper.nn > div {
  width: 800px;
  text-align: right;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
  position: absolute;
  top: 0;
  left: 0;
}
div.top_contents div.campaign_wrapper.nn > div > div {
  position: absolute;
  right: 15px;
  top: 50%;
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  max-width: 260px;
}
div.top_contents div.campaign_wrapper.nn > div img {
  width: auto;
  display: inline-block;
  max-width: 100%;
}
div.top_contents div.campaign_wrapper.nn > div a.btn-info {
  max-width: 260px;
  margin-top: 50px;
  display: inline-block;
  width: 100%;
  border-color: #fff;
}
@media only screen and (max-width: 819px) {
  div.top_contents div.campaign_wrapper.nn {
    width: 100%;
  }
  div.top_contents div.campaign_wrapper.nn > div {
    width: 100%;
    background-color: transparent;
  }
  div.top_contents div.campaign_wrapper.nn > div > div {
    top: auto;
    bottom: 3.125vw;
    left: 50%;
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 100%;
    max-width: 100%;
    background-color: rgba(0, 0, 0, 0.6);
    text-align: center;
    padding-top: 4.6875vw;
  }
  div.top_contents div.campaign_wrapper.nn > div > div img {
    width: 78.125vw;
  }
  div.top_contents div.campaign_wrapper.nn > div > div a.btn-info {
    margin-top: 6.25vw;
    padding: 3.125vw 0;
    font-size: 4.0625vw;
    width: 62.5vw;
  }
}
div.top_contents div.campaign_wrapper.summer {
  top: 45%;
  left: 50%;
  max-width: 600px;
  width: 100%;
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
div.top_contents div.campaign_wrapper img {
  margin: 0 auto;
  display: block;
  width: 100%;
}
div.top_contents div.campaign_wrapper img.camp_logo {
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  max-width: 200px;
  width: 60%;
}
div.top_contents div.campaign_wrapper p.camp_date {
  -moz-transform: translateY(50%);
  -ms-transform: translateY(50%);
  -webkit-transform: translateY(50%);
  transform: translateY(50%);
  text-align: center;
  color: #fff;
  font-size: 24px;
  letter-spacing: 0.2em;
  line-height: 1em;
  white-space: nowrap;
  margin: 0 auto;
  width: 90%;
  font-family: bodoni-urw;
  font-weight: bold;
}
div.top_contents div.campaign_wrapper p.camp_date span {
  font-size: 1.5em;
  margin: 0 0.3em;
}
div.top_contents div.campaign_wrapper p.camp_date img {
  display: inline-block;
  vertical-align: middle;
  width: auto;
  height: 1.4em;
}
@media only screen and (max-width: 819px) {
  div.top_contents div.campaign_wrapper p.camp_date {
    font-size: 2.8125vw;
  }
}
div.top_contents + .camp_text {
  background-color: #00a4b5;
  padding: 5.46875vw;
}
@media only screen and (min-width: 980px) {
  div.top_contents + .camp_text {
    padding: 30px 0;
  }
}
div.top_contents + .camp_text div.to_wrap {
  width: 100%;
  margin: 0 auto;
}
div.top_contents + .camp_text div.to_wrap.summer {
  max-width: 600px;
}
div.top_contents + .camp_text div.to_wrap.summer h1 {
  font-size: 58px;
  text-align: center;
}
div.top_contents + .camp_text div.to_wrap.summer h1 span {
  text-align: left;
}
@media only screen and (max-width: 819px) {
  div.top_contents + .camp_text div.to_wrap.summer h1 {
    font-size: 8.75vw;
  }
}
div.top_contents + .camp_text div.to_wrap h1 {
  text-align: center;
  color: #fff;
  font-size: 36px;
  white-space: nowrap;
  margin: 0;
  font-family: source-han-serif-japanese, serif;
  font-weight: 400;
  line-height: 1em;
}
div.top_contents + .camp_text div.to_wrap h1 b {
  font-weight: 400;
}
div.top_contents + .camp_text div.to_wrap h1 img {
  margin: 0.3em 0.1em 0;
}
@media only screen and (max-width: 819px) {
  div.top_contents + .camp_text div.to_wrap h1 {
    font-size: 6.25vw;
  }
  div.top_contents + .camp_text div.to_wrap h1 b {
    font-size: 7.8125vw;
    line-height: 1.3em;
  }
}
div.top_contents + .camp_text div.to_wrap h1 strong {
  font-size: 1.5em;
  margin: 0 0.1em;
  display: inline-block;
  font-family: source-han-serif-japanese, serif;
  font-weight: 700;
  color: #fff;
}
div.top_contents + .camp_text div.to_wrap h1 span {
  background-color: #333;
  color: #fff;
  display: block;
  font-size: 0.35em;
  padding: 5px 10px;
  line-height: 1.3em;
  font-family: source-han-serif-japanese, serif;
  font-weight: 400;
}
div.top_contents div.top_mask {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  overflow: hidden;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
div.top_contents div.top_mask svg {
  height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
div.top_contents div.top_mask #top_overlay {
  fill: rgba(255, 255, 255, 0.8);
}
div.top_contents div.top_img {
  position: fixed;
  top: 40.625vw;
  left: 50%;
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  text-align: center;
}
div.top_contents div.top_img img {
  width: 75%;
  max-width: 430px;
}
div.top_contents div.top_text {
  position: fixed;
  top: 5vw;
  left: 0;
  width: 100%;
  text-align: center;
}
div.top_contents div.top_text p {
  font-size: 3.125vw;
  writing-mode: vertical-rl;
  text-align: center;
  white-space: nowrap;
  letter-spacing: 1.8vh;
  display: inline-block;
  color: #fff;
  text-shadow: 1px 1px 15px rgba(0, 0, 0, 0.5), -1px 1px 15px rgba(0, 0, 0, 0.5), 1px -1px 15px rgba(0, 0, 0, 0.5), -1px -1px 15px rgba(0, 0, 0, 0.5);
  margin: 0 auto;
}
div.top_contents div.top_text img {
  width: 85%;
}
div.top_contents div.top_btn {
  position: fixed;
  bottom: 13.4375vw;
  left: 0;
  width: 100%;
  z-index: 10;
}
div.top_contents div.top_btn a {
  display: block;
  width: 80%;
  margin: 0 auto;
  text-decoration: none;
  color: #fff;
  border-radius: 5px;
  background-color: rgba(0, 0, 0, 0.3);
  text-align: center;
  padding: 3.125vw 0;
  border: 1px solid #fff;
  -moz-transform: scale(0.8, 0.8);
  -ms-transform: scale(0.8, 0.8);
  -webkit-transform: scale(0.8, 0.8);
  transform: scale(0.8, 0.8);
}
div.top_contents div.top_btn a + a {
  margin-top: 0.9375vw;
}
div.top_contents div.top_link {
  position: absolute;
  bottom: 10.9375vw;
  left: 0;
  width: 100%;
  text-align: center;
  font-size: 4.375vw;
}
div.top_contents div.top_link:after {
  content: "";
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border-top: 0.625vw solid #3c3838;
  border-right: 0.625vw solid #3c3838;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transform-origin: right bottom;
  margin-left: -0.2em;
}
@media only screen and (min-width: 980px) {
  div.top_contents div.top_link:after {
    border-top-width: 2px;
    border-right-width: 2px;
  }
}
div.top_contents div.top_link a {
  display: inline-block;
  text-decoration: none;
  color: #3c3838;
  font-size: 4.375vw;
}
div.top_contents div.top_link a:after {
  content: "";
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border-top: 0.625vw solid #3c3838;
  border-right: 0.625vw solid #3c3838;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transform-origin: right bottom;
  margin-left: 0.3em;
}
@media only screen and (min-width: 980px) {
  div.top_contents div.top_link a:after {
    border-top-width: 2px;
    border-right-width: 2px;
  }
}
div.top_contents div.top_link a + a {
  margin-top: 3.125vw;
}
@media only screen and (min-width: 980px) {
  div.top_contents {
    height: calc(70vh - 110px);
    min-height: 600px;
  }
  body.ectop div.top_contents {
    height:720px;
    min-height: 0;
    max-width:1000px;
    margin:0 auto;
    overflow: hidden;
    position: relative;
  }
  body.ectop div.top_contents div.top_bg {
    z-index:10;
    opacity: 0;
    width: 100%;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    left: 0;
    top: 0;
    -webkit-animation: anime 15s 0s infinite;
    animation: anime 15s 0s infinite;
  }
  body.ectop div.top_contents div.top_bg:nth-of-type(2) {
    -webkit-animation-delay: 5s;
    animation-delay: 5s;
  }

  body.ectop div.top_contents div.top_bg:nth-of-type(3) {
    -webkit-animation-delay: 10s;
    animation-delay: 10s;
  }

  /* /ec スライダー アニメーション */
  @keyframes anime {
    0% {
      opacity: 0;
    }
    25% {
      opacity: 1;
    }
    50% {
      opacity: 1;
    }
    63% {
      opacity: 0;
    }
    100% {
      opacity: 0;
      transform: scale(1.2) ;
      z-index:9;
    }
  }
  div.top_contents.camp {
    min-height: 650px;
    max-height: 650px;
    background-color: #000;
  }
  div.top_contents.camp div.top_bg {
    background-image: url(/html/template/cagiana/img/mv_bg.png);
    height: 100%;
    background-size: auto;
    background-position: center center;
    width: 2000px;
    left: 50%;
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  div.top_contents.camp.summer {
    min-height: 720px;
    max-height: 766px;
  }
  div.top_contents.camp.summer div.top_bg {
    background-image: url(/html/template/cagiana/img/opening_main_img.png);
    height: calc(100% + 113px);
    background-size: auto;
    background-position: center center;
  }
  div.top_contents div.top_text {
    top: 16px;
  }
  div.top_contents div.top_btn {
    bottom: 90px;
    position: fixed;
  }
  div.top_contents div.top_btn a {
    padding: 10px 0;
    font-size: 20px;
    max-width: 430px;
  }
  div.top_contents div.top_btn a + a {
    margin-top: 10px;
  }
  div.top_contents div.top_link {
    bottom: 35px;
    font-size: 14px;
  }
  div.top_contents div.top_link a {
    font-size: 14px;
  }
  div.top_contents div.top_link a + a {
    margin-top: 10px;
  }
}

div.camp_point {
  counter-reset: camp;
}
div.camp_point + div.contents {
  padding-top: 3vw;
}
div.camp_point article {
  text-align: right;
  counter-increment: camp;
}
div.camp_point article div.camp_img {
  position: relative;
  display: inline-block;
}
div.camp_point article div.camp_img img.option {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 5;
}
div.camp_point article:nth-child(1) div.camp_img img.option {
  top: 8%;
  left: 5%;
}
div.camp_point article:nth-child(2) div.camp_img img.option {
  top: 10%;
  left: auto;
  right: -10%;
}
div.camp_point p.camp_text {
  padding: 0 5.46875vw;
  text-align: center;
}
@media only screen and (max-width: 819px) {
  div.camp_point article:nth-child(2) div.camp_img img.option {
    top: 5%;
    right: 2%;
  }
}
div.camp_point article:nth-child(3) div.camp_img img.option {
  top: auto;
  bottom: -5%;
  left: auto;
  right: 10%;
}
@media only screen and (max-width: 819px) {
  div.camp_point article:nth-child(3) div.camp_img img.option {
    bottom: 2%;
    right: 2%;
  }
}
div.camp_point article div.wrapper {
  max-width: 900px;
  margin: 0 auto;
  padding: 0;
  position: relative;
}
div.camp_point article div.wrapper > img {
  position: relative;
  width: 45%;
  display: inline-block;
}
@media only screen and (max-width: 819px) {
  div.camp_point article {
    text-align: center;
  }
  div.camp_point article div.wrapper {
    padding: 5.46875vw;
  }
  div.camp_point article div.wrapper > img {
    width: 100%;
  }
}
div.camp_point article div.camp_content {
  max-width: 560px;
  width: 55%;
  display: inline-block;
  padding-left: 80px;
  position: absolute;
  top: 50%;
  left: 0;
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media only screen and (max-width: 819px) {
  div.camp_point article div.camp_content {
    width: 100%;
  }
}
div.camp_point article div.camp_content span.num {
  text-align: center;
  position: absolute;
  top: 0;
  left: 0px;
  width: 60px;
}
div.camp_point article div.camp_content h2 {
  padding: 0 0 30px;
  text-align: left;
  margin-top: 0;
  font-family: source-han-serif-japanese, serif;
  font-weight: 400;
  font-size: 41px;
}
div.camp_point article div.camp_content h2:after {
  content: "";
  height: 1px;
  width: 80%;
  max-width: 270px;
  background-color: #333;
  position: absolute;
  bottom: 0;
  left: -80px;
  -moz-transform: translateX(0);
  -ms-transform: translateX(0);
  -webkit-transform: translateX(0);
  transform: translateX(0);
}
@media only screen and (max-width: 819px) {
  div.camp_point article div.camp_content h2 {
    font-size: 6.5625vw;
    padding: 3.125vw 0 6.25vw;
    margin-bottom: 6.25vw;
  }
}
div.camp_point article div.camp_content h2 img {
  width: 185px;
  margin-bottom: 10px;
  display: block;
  margin-top: 5px;
}
@media only screen and (max-width: 819px) {
  div.camp_point article div.camp_content h2 img {
    margin-top: 0;
  }
}
div.camp_point article div.camp_content p {
  text-align: left;
  font-size: 18px;
  max-width: 320px;
}
div.camp_point article div.camp_content p + p {
  margin-top: -1em;
}
@media only screen and (max-width: 819px) {
  div.camp_point article div.camp_content p {
    font-size: 3.75vw;
    margin: 6.25vw 0;
    max-width: 100%;
  }
  div.camp_point article div.camp_content p + p {
    margin-top: -6.25vw;
  }
  div.camp_point article div.camp_content p br {
    display: none;
  }
}
@media only screen and (max-width: 819px) {
  div.camp_point article div.camp_content {
    display: block;
    position: relative;
    top: 0;
    left: 0;
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -webkit-transform: translateY(0);
    transform: translateY(0);
    padding-left: 23.4375vw;
  }
}
div.camp_point article:nth-child(2n) {
  text-align: left;
  background-color: #00a4b5;
}
div.camp_point article:nth-child(2n) div.wrapper {
  background-position: center left;
}
div.camp_point article:nth-child(2n) div.wrapper > img {
  right: auto;
  left: 0;
}
div.camp_point article:nth-child(2n) div.camp_content {
  right: 0;
  left: auto;
}
div.camp_point article:nth-child(2n) div.camp_content span.num {
  color: #fff;
}
div.camp_point article:nth-child(2n) div.camp_content span.num:before {
  color: #000;
}
div.camp_point article:nth-child(2n) div.camp_content h2 {
  color: #fff;
}
div.camp_point article:nth-child(2n) div.camp_content h2:after {
  background-color: #fff;
}
div.camp_point article:nth-child(2n) div.camp_content p {
  color: #fff;
  text-align: left;
}

.modal.modal-fullscreen .modal-dialog .modal-content .modal-body {
  overflow-x: hidden !important;
}

.column.is-edit .btn_edit {
  position: relative;
}

.about #top_wrap.pages > article img.about_logo {
  max-width: 560px;
  width: 100%;
  margin: 14.0625vw auto;
  display: block;
}
@media only screen and (min-width: 980px) {
  .about #top_wrap.pages > article img.about_logo {
    margin: 100px auto;
  }
}
.about #top_wrap.pages > article h2, .about #top_wrap.pages > article p {
  max-width: 780px;
  margin: 6.25vw auto;
}
.about #top_wrap.pages > article p {
  line-height: 2.5em;
  font-size: 3.28125vw;
}
.about #top_wrap.pages > article p.t_heading {
  margin: 3.125vw auto;
  line-height: 1.8em;
}
.about #top_wrap.pages > article p.t_heading + p {
  font-size: 3.28125vw;
}
.about #top_wrap.pages > article p.t_heading + ul {
  margin: 6.25vw auto;
  padding-left: 6.25vw;
  max-width: 780px;
}
.about #top_wrap.pages > article p.t_heading + ul li {
  margin-bottom: 3.125vw;
  font-size: 3.28125vw;
}
.about #top_wrap.pages > article p.mo {
  margin: -1.5625vw auto 6.25vw;
}
.about #top_wrap.pages > article + article {
  border-top: none;
}
@media only screen and (max-width: 819px) {
  .about #top_wrap.pages > article div.na_wrap {
    text-align: center;
  }
  .about #top_wrap.pages > article div.na_wrap p {
    text-align: left;
    margin: 0 auto;
  }
}
@media only screen and (min-width: 980px) {
  .about #top_wrap.pages img.over_pad {
    max-width: 100%;
  }
  .about #top_wrap.pages > article h2, .about #top_wrap.pages > article p {
    margin: 40px auto;
  }
  .about #top_wrap.pages > article h2:first-child, .about #top_wrap.pages > article p:first-child {
    margin-top: 0;
  }
  .about #top_wrap.pages > article h2:last-child, .about #top_wrap.pages > article p:last-child {
    margin-bottom: 0;
  }
  .about #top_wrap.pages > article p {
    font-size: 15px;
  }
  .about #top_wrap.pages > article p.t_heading {
    margin: 20px auto;
  }
  .about #top_wrap.pages > article p.t_heading + p {
    font-size: 15px;
  }
  .about #top_wrap.pages > article p.t_heading + ul {
    margin: 40px auto;
    padding-left: 20px;
  }
  .about #top_wrap.pages > article p.t_heading + ul li {
    margin-bottom: 20px;
    font-size: 15px;
  }
  .about #top_wrap.pages > article p.mo {
    margin: -10px auto 40px;
  }
  .about #top_wrap.pages div.na_wrap {
    max-width: 780px;
    margin: 0 auto;
    padding-left: 220px;
    position: relative;
    min-height: 220px;
  }
  .about #top_wrap.pages div.na_wrap img {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 220px;
  }
  .about #top_wrap.pages div.na_wrap p {
    margin: 0 auto;
  }
}

.btn {
  font-size: 4.375vw;
  font-weight: normal;
  text-decoration: none;
  color: #fff;
  background-color: #3c3838;
  border-color: #3c3838;
  padding: 4.0625vw 0;
  display: block;
  margin: 3.125vw auto;
  -moz-transition: all, 0.3s;
  -o-transition: all, 0.3s;
  -webkit-transition: all, 0.3s;
  transition: all, 0.3s;
}
.btn.bl {
  display: block;
}
.btn strong {
  font-weight: normal;
  font-size: 6.25vw;
}
@media only screen and (min-width: 980px) {
  .btn {
    font-size: 18px;
    padding: 13px 50px;
    margin: 10px auto;
    max-width: 400px;
  }
  .btn strong {
    font-size: 20px;
  }
}
.btn:hover, .btn:focus, .btn.focus {
  color: #fff;
}

.btn-info {
  background-color: #00a4b5;
  border-color: #00a4b5;
}
.btn-info:hover, .btn-info:focus, .btn-info.focus, .btn-info:active, .btn-info.active {
  color: #00a4b5;
  border-color: #00a4b5;
  background-color: #fff;
}

.btn-tips {
  background-color: #feff00;
  border-color: #feff00;
  color: #000;
}
.btn-tips:hover, .btn-tips:focus, .btn-tips.focus, .btn-tips:active, .btn-tips.active {
  color: #000;
  border-color: #feff00;
  background-color: #feff00;
}

.btn-default {
  border-color: #3c3838;
  background-color: #3c3838;
  color: #fff;
  width: 100%;
}
.btn-default:hover, .btn-default:focus, .btn-default.focus, .btn-default:active, .btn-default.active {
  background-color: #fff;
  border-color: #3c3838;
  color: #3c3838;
}

.btn-white {
  background-color: #fff;
  border-color: #00a4b5;
  color: #00a4b5;
}
.btn-white:hover, .btn-white:focus, .btn-white.focus, .btn-white:active, .btn-white.active {
  color: #fff;
  background-color: #00a4b5;
}

.btn-border {
  background-color: #fff;
  border-color: #707070;
  color: #3c3838;
  font-size: 3.4375vw;
}
@media only screen and (min-width: 980px) {
  .btn-border {
    font-size: 14px;
  }
}

.btn-sub {
  background-color: #3c3838;
  border-color: #3c3838;
  color: #fff;
}

.btn[data-toggle="modal"] {
  background-position: right 3.125vw center;
  background-image: url(../img/plus.svg);
  background-size: 4.6875vw;
  background-repeat: no-repeat;
}
@media only screen and (min-width: 980px) {
  .btn[data-toggle="modal"] {
    background-size: 15px;
    background-position: right 10px center;
  }
}

.btn#file_upload {
  background-position: right 3.125vw center;
  background-image: url(../img/upload.svg);
  background-size: 4.6875vw;
  background-repeat: no-repeat;
}
@media only screen and (min-width: 980px) {
  .btn#file_upload {
    background-size: 15px;
  }
}

#login_box {
  padding: 0;
}
#login_box .column {
  padding: 0;
  margin: 0;
  background-color: #fff;
}
#login_box .column .btn_area {
  padding: 0;
  margin: 6.25vw auto;
}
#login_box .column .btn_area p {
  float: none !important;
  width: auto;
  max-width: unset;
  margin: 0 auto;
}
#login_box .column p {
  margin-bottom: 7.8125vw;
}
#login_box .column h3 + p {
  margin-top: -get_vw(6);
}
#login_box .column + .column {
  margin-top: 12.5vw;
}
#login_box .column .form-group {
  padding: 0;
}
#login_box .column .form-group + .form-group {
  margin-top: 3.125vw;
}
#login_box .column .form-group:last-child {
  margin-bottom: 6.25vw;
}
#login_box .column .form-group.forgot {
  text-align: right;
}
#login_box .column .form-group.forgot a {
  color: #3c3838;
  font-size: 3.125vw;
  text-decoration: underline;
}
@media only screen and (min-width: 980px) {
  #login_box .column .btn_area {
    margin: 20px auto;
  }
  #login_box .column p {
    margin-bottom: 25px;
  }
  #login_box .column h3 + p {
    margin-top: -6px;
  }
  #login_box .column + .column {
    margin-top: 40px;
  }
  #login_box .column .form-group {
    padding: 0;
  }
  #login_box .column .form-group + .form-group {
    margin-top: 10px;
  }
  #login_box .column .form-group:last-child {
    margin-bottom: 20px;
  }
  #login_box .column .form-group.forgot a {
    font-size: 10px;
  }
}

div.sns {
  padding-top: 3.125vw;
}
div.sns > p {
  text-align: center;
  position: relative;
  z-index: 2;
  -moz-transform: translateY(50%);
  -ms-transform: translateY(50%);
  -webkit-transform: translateY(50%);
  transform: translateY(50%);
  font-size: 5vw;
  line-height: 1em;
  margin: 0;
}
div.sns > ul {
  border-radius: 3.125vw;
  padding: 6.25vw 8vw 5vw;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #F4F4F4;
}
div.sns > ul li {
  margin: 0 !important;
}
div.sns > ul li a {
  display: block;
}
div.sns > ul li a i {
  font-size: 10vw;
}
@media only screen and (min-width: 980px) {
  div.sns {
    padding-top: 10px;
  }
  div.sns > p {
    font-size: 16px;
  }
  div.sns > ul {
    border-radius: 10px;
    padding: 20px 25px 16px;
  }
  div.sns > ul li a i {
    font-size: 32px;
  }
}

div.modal {
  padding: 0 5.46875vw;
}
div.modal div.modal-content {
  background-color: transparent !important;
}
div.modal div.modal-header {
  background-color: transparent !important;
  margin-top: 5.46875vw;
  height: 0 !important;
  margin: 0;
  min-height: 0;
  padding: 0;
}
div.modal div.modal-header .btn {
  position: fixed;
  right: 3.125vw;
  top: 3.125vw;
  width: 9.375vw !important;
  height: 9.375vw !important;
  background-color: #e4e4e4;
  border-color: #e4e4e4;
  border-radius: 50%;
  background-image: url(../img/close.svg);
  background-size: 50%;
  background-position: center;
  background-repeat: no-repeat;
}
div.modal div.modal-body {
  padding: 17.1875vw 5.46875vw !important;
  background-color: #fff;
  top: 0 !important;
}
@media only screen and (min-width: 980px) {
  div.modal {
    padding: 0 17.5px;
  }
  div.modal div.modal-header {
    background-color: transparent !important;
    margin-top: 17.5px;
    height: 0 !important;
    padding: 0;
  }
  div.modal div.modal-header .btn {
    right: 10px;
    top: 10px;
    width: 30px !important;
    height: 30px !important;
  }
  div.modal div.modal-body {
    padding: 105px 17.5px !important;
  }
}

footer {
  padding: 0;
  background-color: #fff;
  border: none;
  margin-top: 16.25vw;
  /* position: relative; */
  overflow: visible !important;
}
footer a.anchor {
  padding: 0;
  display: block;
  width: 10.5vw;
  height: 10.5vw;
  position: fixed;
  bottom: 5.31vw;
  right: 5.31vw;
  z-index: 200;
  transform: translateZ(0);
}
footer a.anchor_shopping,.anchor_order {
  padding: 0;
  display: block;
  width: 14.5vw;
  height: 14.5vw;
  position: fixed;
  bottom: 5.31vw;
  right: 17.31vw;
  z-index: 200;
  transform: translateZ(0);
}
button#add-cart-floating,#order-floating {
  padding: 0;
  display: block;
  width: 	46.875vw;
  height: 9.375vw;
  position: fixed;
  bottom: 5.31vw;
  right: 17.31vw;
  z-index: 200;
  transform: translateZ(0);
  background: none;
  border: none;
}
@media only screen and (min-width: 980px) {
  footer a.anchor {
    position: fixed;
    bottom: 2.2vw;
    right: calc(50% - 610px);
    padding: 0;
    width: 50px;
    height: 50px;
  }
  footer a.anchor_shopping,.anchor_order {
    position: fixed;
    bottom: 2.8vw;
    right: calc(50% - 550px);
    padding: 0;
    width: 75px;
    height: 64px;
  }
  button#add-cart-floating,#order-floating{
    position: fixed;
    bottom: 1.8vw;
    right: calc(50% - 550px);
    padding: 0;
    width: 300px;
    height: 60px;
    z-index: 100;
    background: none;
    border: none;}
}
footer div.breadcrumb {
  background-color: rgba(159, 160, 165, 0.2);
}
footer div.breadcrumb ul {
  text-align: left;
  max-width: 1000px;
  margin: 0 auto;
  padding: 5px 17.5px;
}
footer div.breadcrumb ul li {
  margin: 0;
  display: inline-block;
  vertical-align: middle;
}
footer div.breadcrumb ul li span {
  font-size: 3.75vw;
}
footer div.breadcrumb ul li:after {
  content: '/';
  margin: 0 0.05em;
  vertical-align: middle;
  display: inline-block;
  color: #9fa0a5;
}
footer div.breadcrumb ul li:last-child:after {
  content: "";
  display: none;
}
footer div.breadcrumb ul li a {
  display: inline-block;
  font-size: 3.75vw;
  color: #9fa0a5;
}
footer div.breadcrumb ul li a img {
  width: 7.8125vw;
}
footer div.footer {
  position: relative;
}
footer div.footer div.inner {
  max-width: 1000px;
  margin: 0 auto;
  position: relative;
}
footer div.footer div.inner > * {
  padding: 0 17.5px;
}
footer div.footer div.footer_logo a {
  max-width: 45.3125vw;
  display: block;
  margin: 7.8125vw auto;
}
footer div.footer ul.f_menu {
  margin: 3.125vw auto;
}
footer div.footer ul.f_menu li {
  display: block;
  margin: 0;
}
footer div.footer ul.f_menu li a {
  display: block;
  position: relative;
  padding: 3.125vw 1.5625vw;
  border-bottom: 1px solid #9fa0a5;
  text-align: left;
}
footer div.footer ul.f_menu li a:after {
  content: "";
  position: absolute;
  right: 20px;
  top: 50%;
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border-top: 0.625vw solid #3c3838;
  border-right: 0.625vw solid #3c3838;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transform-origin: right bottom;
  -moz-transform: translateY(-50%) rotate(45deg);
  -ms-transform: translateY(-50%) rotate(45deg);
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
}
@media only screen and (min-width: 980px) {
  footer div.footer ul.f_menu li a:after {
    border-top-width: 2px;
    border-right-width: 2px;
  }
}
footer div.footer ul.f_link {
  border-top: 1px solid #9fa0a5;
  padding: 6.25vw 3.125vw;
  text-align: center;
}
footer div.footer ul.f_link li {
  display: inline-block;
  line-height: 1.8em;
  margin: 0;
}
footer div.footer ul.f_link li:after {
  content: '';
  margin: 0 0.5em;
  vertical-align: middle;
  display: inline-block;
  color: #9fa0a5;
  width: 1px;
  height: 1em;
  background-color: #9fa0a5;
}
footer div.footer ul.f_link li:last-child:after {
  content: "";
  display: none;
}
footer div.footer ul.f_link li a {
  color: #9fa0a5;
  font-size: 3.75vw;
}
footer div.footer p.copyright {
  margin: 4.6875vw 0 0;
  text-align: center;
  background-color: #3c3838;
  padding: 0.9375vw 0;
  font-size: 3.4375vw;
  color: #fff;
}
@media only screen and (min-width: 980px) {
  footer {
    margin-top: 52px;
  }
  footer div.breadcrumb ul li span {
    font-size: 13px;
  }
  footer div.breadcrumb ul li a {
    font-size: 13px;
  }
  footer div.breadcrumb ul li a img {
    width: 25px;
  }
  footer div.footer div.inner {
    max-width: 1000px;
    margin: 0 auto;
  }
  footer div.footer div.inner > * {
    padding: 0 17.5px;
  }
  footer div.footer div.foot_bottom {
    display: table;
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    vertical-align: bottom;
    margin-top: 45px;
  }
  footer div.footer div.foot_bottom > div {
    display: table-cell;
    vertical-align: bottom;
  }
  footer div.footer div.foot_bottom > div div.footer_logo a {
    margin: 0;
    border-bottom: none;
  }
  footer div.footer div.foot_bottom > div:nth-child(1) {
    padding-right: 10px;
  }
  footer div.footer div.foot_bottom > div:nth-child(2) {
    width: 210px;
  }
  footer div.footer ul.f_menu {
    margin: 10px auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    max-width: 1000px;
  }
  footer div.footer ul.f_menu li {
    width: 18%;
  }
  footer div.footer ul.f_menu li a {
    padding: 10px 5px;
    font-size: 14px;
    line-height: 1.1em;
  }
  footer div.footer ul.f_menu li a:after {
    top: 56%;
    right: 10px;
  }
  footer div.footer ul.f_link {
    padding: 5px 0;
    text-align: left;
    border-top: none;
  }
  footer div.footer ul.f_link li:after {
    margin: 0 0.2em;
  }
  footer div.footer ul.f_link li a {
    font-size: 11px;
  }
  footer div.footer p.copyright {
    margin: 15px 0 0;
    padding: 3px 0;
    font-size: 14px;
  }
}

#page_mdl_paygent .select_wrap {
  max-width: 200px;
  vertical-align: bottom;
  margin-right: 10px;
}
#page_mdl_paygent .select_wrap #card_month, #page_mdl_paygent .select_wrap #card_year {
  max-width: 100px;
}
#page_mdl_paygent #expireYear .select_wrap {
  max-width: 80px;
}




.shop flex. h2{
  margin-bottom:14px !important;
  font-size:22px !important;
}

div .flex .data h3{
  font-size: 18px;
  margin-bottom: 65px;
  color: #00a4b5;
  text-align: left;
  margin-top: 0;
  padding-bottom: 10px;
  margin: 0 0 5px 0;
  font-family: futura-pt,a-otf-gothic-bbb-pr6n;
  font-weight: 500;
  position: relative;
  letter-spacing: 0.1em;
  border-bottom: none;
}
div .flex .data h3::after{
  content: "";
  width: 36px;
  left: 0;
  transform: translateX(0);
  bottom: 0;
  background-color: #00a4b5;
  position: absolute;
  height: 2px;
}

.shop div.contents {
  max-width: 1126px;
}

.shop div.flex{
display: flex;
flex-wrap: wrap;
margin-bottom:80px;
}
.shop div.flex iframe {
  width: 480px;
  height: 400px;
  margin-right: 40px;
}
.shop div.flex:last-child{
  margin-bottom:68px;
}

.shop div.flex div.map{
width:480px;
height:320px;
background-color:#ccc;
margin-right:40px;
}

.shop div.flex div.data{
  width:483px;
}

.shop div.flex ul li{
  display: flex;
  flex-wrap: wrap;
  border-bottom:1px solid #9FA0A5;
  width:100%;
  height:68px;
}

.shop div.flex ul li:first-child{
  height:88px;
}

.shop div.flex ul li a{
  color:#525263;
  text-decoration: underline;
}

.shop div.flex ul li div.left{
width:120px;
display: flex;
align-items: center;
padding-left:10px;
}

.shop div.flex ul li div.right{
  display: flex;
  align-items: center;
  line-height: 1.8em;
}

.shop div.notice{
  color:#DE5D50;
  font-size:15px;
  text-align: center;
  margin-bottom:80px;
  line-height: 1.8em;
}
.shop div .text_link {
  text-align: center;
}

#map-shop01,#map-shop02,#map-shop03,#map-shop04,
#map-shop05,#map-shop06,#map-shop07,#map-shop08,
#map-shop09,#map-shop10,#map-shop11,#map-shop12,#map-shop13,#map-shop14,#map-shop15,
#map-shop16,#map-shop17,#map-shop18,#map-shop19,#map-shop20,#map-shop21,#map-shop22,#map-shop23,#map-shop24,#map-shop25,
#map-shop26,#map-shop27,#map-shop28,#map-shop29,#map-shop30,#map-shop31,#map-shop32,#map-shop33,#map-shop34,#map-shop35,
#map-shop36,#map-shop37,#map-shop38,#map-shop39,#map-shop40,#map-shop41,#map-shop42,#map-shop43,#map-shop44,#map-shop45,#map-shop46,
#map-shop47,#map-shop48,#map-shop49,#map-shop50,#map-shop51 {
  width:480px;
  height:400px;
  margin-right:40px;
}
div .area {
  margin-bottom: 100px;
}
div .area_select {
  position: relative;
  margin-bottom: 180px;
}
div .area_select .area_select_h2{
  font-size: 30px!important;
  padding-bottom: 10px!important;
  margin: 40px auto!important;
  font-weight: 500!important;
  position: relative!important;
  text-align: center!important;
  letter-spacing: 0.1em!important;
  color: #525263!important;
}
div .area_select .area_select_h2::after{
  width: 0px!important;
}
div .area_select .area_selectlink,.area_selectlink02 {
  display: flex;
  text-align: center;
  position: absolute;
  left: 220px;
  width: 670px;
  margin: 0 auto;
}
div .area_select .area_selectlink {
  margin-left: -40px;
  width: 100%;
}
div .area_select .area_selectlink02 {
  margin-top: 60px;
  margin-left: -40px;
  width: 100%;
}
div .area_select .area_selectlink .area_li,.area_selectlink02 .area_li {
  margin-right: 10px;
}
div .area_select .area_selectlink .area_li a,.area_selectlink02 .area_li a{
  font-size: 16px;
  padding: 10px 8px;
  color: #3c3838;
  font-weight: normal;
  display: block;
  position: relative;
  border-bottom: 1px solid #9fa0a5;
  transition: all, 0.3s;
}
div .area_select .area_selectlink .area_li a:after,.area_selectlink02 .area_li a:after{
  border-top-width: 2px;
  border-right-width: 2px;
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border-top: 0.625vw solid #3c3838;
  border-right: 0.625vw solid #3c3838;
  transform: rotate(135deg);
  transform-origin: right bottom;
  right: 10px;
}

@media only screen and (max-width: 1042px) {
div .area {
  margin-bottom: 15.25vw;
  height: 130vw;
}
div .area_select {
  position: relative;
  margin-bottom: 18.25vw;
}
div .area_select .area_select_h2{
  font-size: 6.25vw!important;
  color: #525263!important;
  margin: 1.75vw!important;
}
div .area_select .area_select_h2::after{
  width: 0vw!important;
}
div .area_select .area_selectlink,.area_selectlink02 {
  position: absolute;
  left: 0px;
  flex-wrap: wrap;
  width: 100%;
}
div .area_select .area_selectlink {
  margin: 0 0 24vw;
}
div .area_select .area_selectlink02 {
  margin: 34vw 0 24vw;
}
div .area_select .area_selectlink .area_li,.area_selectlink02 .area_li{
  margin-right: 3.3vw;
  width: calc(85% / 4);
}
div .area_select .area_selectlink .area_li a,.area_selectlink02 .area_li a{
  font-size: 3.75vw;
  color: #3c3838;
  font-weight: normal;
  display: block;
  padding: 3.125vw;
  position: relative;
  border-bottom: 1px solid #9fa0a5;
  transition: all, 0.3s;
}
}

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


.shop .flex h2{
  margin-bottom:3.125vw !important;
  font-size:4.6875vw !important;
}
.shop div.flex{
  flex-direction: column-reverse;
  margin-bottom:15.625vw;
}
.shop div.flex iframe {
  width:100%;
  height:64.0625vw;
  margin:1.5625vw 0 0 0;
}
.shop div.flex div.data{
  width:100%;
  font-size:3.75vw;
}
.shop div.flex ul{
  margin-bottom: 3vw;
}
.shop div.flex ul li{
  height: 15.4375vw;
}
.shop div.flex ul li:first-child{
  height: 29.125vw;
}
.sp{
  display: block;
  text-decoration: none !important;
}
.pc{
  display: none;
}
.shop div.flex ul li:last-child{
  border-bottom:0;
}
.shop div.flex ul li div.left {
  display: flex;
  align-items: center;
  line-height: 1.8em;
  font-size: 3.5vw;
  width: 20.3125vw;
}
.shop div.flex ul li div.right {
  display: flex;
  align-items: center;
  line-height: 1.8em;
  width: 65vw;
}
.shop div.notice{
  font-size: 3.75vw;
  text-align: left;
  margin-top: 90vw;
  margin-bottom: 10vw;
}

#map-shop01,#map-shop02,#map-shop03,#map-shop04,
#map-shop05,#map-shop06,#map-shop07,#map-shop08,
#map-shop09,#map-shop10,#map-shop11,#map-shop12,#map-shop13,#map-shop14,#map-shop15,
#map-shop16,#map-shop17,#map-shop18,#map-shop19,#map-shop20,#map-shop21,#map-shop22,#map-shop23,#map-shop24,#map-shop25,
#map-shop26,#map-shop27,#map-shop28,#map-shop29,#map-shop30,#map-shop31,#map-shop32,#map-shop33,#map-shop34,#map-shop35,
#map-shop36,#map-shop37,#map-shop38,#map-shop39,#map-shop40,#map-shop41,#map-shop42,#map-shop43,#map-shop44,#map-shop45,#map-shop46,
#map-shop47,#map-shop48,#map-shop49,#map-shop50,#map-shop51 {
  width:100%;
  height:64.0625vw;
  margin:1.5625vw 0 0 0;
}
#map-shop10{
  display: none;
}
}




.category-button{
  /* width:296px; */
  width:350px;
  background-color: #3C3838;
  font-size: 18px;
  margin-top: 100px;
}

.category-button a{
  color:#fff;
}

@media only screen and (max-width: 768px) {
  .category-button{
    width:100%;
    font-size: 4.375vw;
  }
}
/* 追記21.09.22 */
/*
li.col-xs-12.col-sm-8.cart03 {
  position: absolute;
} */
@media only screen and (min-width: 980px) {
.cart__position {
  height: 120px;
}
li.col-xs-12.col-sm-8.cart03 {
  top: 75px;
  left: 8%;
  position: absolute;
}
}
div#detail_description_box__body {
  position: relative;
}
@media only screen and (max-width: 890px) {
.cart__position {
  height: 32.5vw;
}

li.col-xs-12.col-sm-8.cart03 {
  top: 15vw;
  width: 93vw;
  position: absolute;
}
}
@media only screen and (min-width: 767px) and (max-width: 889px) {
  li.col-xs-12.col-sm-8.cart03 {
  top: 15vw;
  width: 100%;
}
button#add-cart_01,
button#add-cart_02 {
  font-size: 2vw;
}
#add-cart, #add-cart_01,
#add-cart, #add-cart_02 {
  padding-left: 14vw;
}
#item_detail_area .plugin_maker_code {
  padding-right: unset;
}
}
@media only screen and (min-width: 980px) {
  #add-cart, #add-cart_01,
  #add-cart, #add-cart_02 {
    padding-left: unset;
    width: 355px;
    padding-right: unset;
    text-align: center;
  }
  div#detail_cart_box__button_area button {
    width: 355px;
  }
}
#add-cart,#add-cart_01,
#add-cart,#add-cart_02 {
  padding-left: unset;
  text-align: center;
}
@media only screen and (min-width: 980px){
  #add-cart img, #add-cart_01 img,
  #add-cart img, #add-cart_02 img {
    left: 35px;
  }
}
@media only screen and (max-width: 890px) {
  #add-cart img, #add-cart_01 img,
  #add-cart img, #add-cart_02 img {
    left: 8.125vw;
  }
}


/* 上部パンくず */
#contents_top div.breadcrumb {
  padding: 0 3vw;
  margin-bottom: 3vw;
  margin-top: 5vw;
}
#contents_top div.breadcrumb ul li {
  display: inline-block;
  vertical-align: middle;
}
#contents_top div.breadcrumb ul li a {
  display: inline-block;
  font-size: 3.75vw;
  color: #9fa0a5;
}
#contents_top div.breadcrumb ul li a img {
  width: 7.8125vw;
}
#contents_top div.footer {
  position: relative;
}
#contents_top div.breadcrumb ul li span {
  font-size: 3.75vw;
}

@media only screen and (min-width: 980px) {
  #contents_top div.breadcrumb {
    background-color: #ffffff;
    margin-top: 30px;
    padding: 0;
    margin-bottom: 0;
  }
  #contents_top div.breadcrumb ul {
    text-align: left;
    max-width: 1000px;
    margin: 0 auto;
    padding: 5px 17.5px;
  }
  #contents_top div.breadcrumb ul li {
    margin: 0;
    display: inline-block;
    vertical-align: middle;
  }
  #contents_top div.breadcrumb ul li a {
    font-size: 13px;
  }
  #contents_top div.breadcrumb ul li a img {
    width: 25px;
  }
  #contents_top div.breadcrumb ul li span {
    font-size: 13px;
  }
  #contents_top div.breadcrumb ul li:after {
    content: '/';
    margin: 0 0.05em;
    vertical-align: middle;
    display: inline-block;
    color: #9fa0a5;
  }
  #contents_top div.breadcrumb ul li:last-child:after {
    content: "";
    display: none;
  }
}
/* 検索機能追加 */

.search_inner ul li {
  font-size: 13px;
  text-align: center;
  color: #fff;
  padding: 10px 0;
  /* border: 1px solid #fff; */
}
.drawer_block.header_bottom_area {
  /* z-index: 999; */
  background-color: #00a4b5;
  transition: all 0.3s;
  width: 100%;
  height: 100%;
  margin-top: 17.1875vw;
  position: fixed;
  -moz-transform: translateX(100%);
  -ms-transform: translateX(100%);
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
}
@media only screen and (min-width: 980px) {
  .drawer_block.header_bottom_area {
    margin-top: 110px!important;
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
    left: -20px;
    top: 0;
    margin: 0;
    width:30%;
    background-color: #00a4b5;
    height: 100vh;
    position: fixed;
    padding-top:unset!important;
〲  }
}
.input_search.clearfix {
  background: #fff;
  margin-left: unset;
  /* margin: 0 auto; */
  /* width: 100%; */
  border-bottom: none;
  height: unset;
  padding: unset;
}

.search input[type="search"] {
  border: 1px solid #707070;
  margin: 15px 0;
  width: 56%;
  /* height: 33px; */
  padding: 10px 0;
  text-align: center;
  font-size: 13px;
  color: #444;
}
#bt_search_op {
  left: 11%;
  top: 25px;
  z-index:10;
  width: 44px;
  height: 44px;
  position: absolute;
}
.bt_search {
  width: inherit;
  height:inherit;
}
.input_search > .bt_search {
  left: 24%;
  top: 50%;
  transform: translateY(-50%);
  margin-top: unset;
  width: 44px;
  height: 44px;
}
.search_inner > ul > li:first-of-type {
  border-top: 1px solid #fff;
}
.search_inner > ul > li:nth-of-type(4),.search_inner > ul > li:nth-of-type(2) {
  padding: unset;
}
.search_inner > ul > li:nth-of-type(2) {
  height: 80px;
}

.bg-wh {
  background: #fff;
}

.bg-wh ul li {
  border-bottom: 1px solid #00A4B5;
}
div#wrapper.drawer-open02 .drawer_block.header_bottom_area {
  transition: all 0.3s;
  -moz-transform: translateX(0);
  -ms-transform: translateX(0);
  -webkit-transform: translateX(0);
  transform: translateX(0);
}
#header .search .input_search {
  float: unset;
}
div#wrapper.drawer-open02 #header {
  -moz-transform: translateX(0);
  -ms-transform: translateX(0);
  -webkit-transform: translateX(0);
  transform: translateX(0);
  background-color: #00a4b5;
  border-bottom: 1px solid #fff;
}
div#wrapper.drawer-open02 #header h1.header_logo img.off, div#wrapper.drawer-open02 #header h1.header_logo svg.off {
  opacity: 0;
}
div#wrapper.drawer-open02 #header h1.header_logo img.on, div#wrapper.drawer-open02 #header h1.header_logo svg.on {
  opacity: 1;
}
@media only screen and (min-width: 768px) {
  #header #searchform input {
    float: unset;
  }
}
@media only screen and (min-width: 980px) {
  header p#btn_menu {
    left: 4%;
  }
}
@media only screen and (min-width: 768px) {
  .drawer_block {
    position: static;
    height: auto;
    width: auto;
    margin: 0 auto;
    overflow: visible;
    background: transparent;
    text-align: center;
  }
}
.drawer_block {
  position: fixed;
  top: 0;
  right: 0;
  height: 100%;
  width: 260px;
  background: #F6F6F6;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  z-index: 1;
  -webkit-transition: -webkit-transform 0.3s;
  -moz-transition: -moz-transform 0.3s;
  transition: transform 0.3s;
}
div#wrapper.drawer-open02 #header #bt_search_op,
div#wrapper.drawer-open02 #header #btn_menu {
  display: none;
  pointer-events: none;
  opacity: 0;
}
#bt_search_close {
  opacity:1;
}

header #bt_search_close {
  position: absolute;
  z-index: 10;
  left: 0;
  height: auto;
  width: 18.125vw;
  opacity: 0;
  -moz-transition: opacity, 0.3s;
  -o-transition: opacity, 0.3s;
  -webkit-transition: opacity, 0.3s;
  transition: opacity, 0.3s;
  top: -21%;
  display:none;
}
div#wrapper.drawer-open02 header #bt_search_close {
  display: block;
}
@media only screen and (min-width: 980px) {
  header #bt_search_close {
    width: 80px;
    left: 80px;
    height:80px;
    top:unset;
  }
}
div#wrapper.drawer-open02 #header #bt_search_close {
opacity: 1;
}
div#wrapper.drawer-open #header #bt_search_op {
  opacity:0;
}
/* スマホ */
div#search {
  background: #00A4B5;
  padding: unset;
}
@media only screen and (max-width: 819px) {
  div#wrapper.drawer-open02 .drawer_block.header_bottom_area {
    width:100%;
    overflow: unset;
    height: 100vh;
  }
  .drawer_block.header_bottom_area {
    right: 0;
    top: 0;
    left: unset;
    height: 100vh;
  }
  #bt_search_op {
    left: 10%;
    top: 0.75vw;
    z-index:10;
    width: 44px;
    height: 44px;
    position: absolute;
    /* top: unset; */
    /* bottom: 3.75vw; */
    /* right: unset; */
    left: 14.125vw;
  }
  .search input[type="search"] {
    width: 90.62vw;
  }
  .search_inner ul li {
    font-size:4.06vw
  }

  .input_search > .bt_search {
    left: 6.39vw;
    width: 44px;
    height: 44px;
  }
}
.search_inner .bg-wh > ul > li a {
  position:relative;
  display:block;
}
.search_inner .bg-wh > ul > li a:after {
  content: "";
  position: absolute;
  right: 6.25vw;
  top: 50%;
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border-top: 0.625vw solid #00A4B5;
  border-right: 0.625vw solid #00A4B5;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transform-origin: right bottom;
  -moz-transform: translateY(-50%) rotate(45deg);
  -ms-transform: translateY(-50%) rotate(45deg);
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
}
div#wrapper.drawer-open02 #contents, div#wrapper.drawer-open02 #footer, div#wrapper.drawer-open02 .pagetop {
  -moz-transform: translateX(-100%);
  -ms-transform: translateX(-100%);
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
  opacity: 0;
}
@media only screen and (min-width: 980px) {
  div#wrapper.drawer-open02 #contents, div#wrapper.drawer-open02 #footer, div#wrapper.drawer-open02 .pagetop {
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}
div#wrapper.drawer-open02 #header #btn_menu.nav-trigger,
div#wrapper.drawer-open02 #header a.dr_close,
div#wrapper.drawer-open #header #bt_search_op,
div#wrapper.drawer-open #header #bt_search_close {
  display:none;
}
@media only screen and (min-width: 980px) {
  .search_inner .bg-wh > ul > li a:after {
    border-top-width: 2px;
    border-right-width: 2px;
    right: 20px;
  }
}
.search_inner > ul > li:first-of-type {
  padding: 10px 0;
}
.search_inner ul li > .bg-wh .toggle a.g {
  background:#00a4b5;
  color: #fff;
  padding: 10px 0;
  display: block;
  border-bottom: 1px solid #fff;
}
.search_inner ul li {
  padding: unset;
  border: unset;
}
.search_inner ul li > .bg-wh .toggle a.g + ul {
  display: none;
}
.search_inner ul li > .bg-wh .toggle .w {
  padding: 10px 0;
  border-bottom: 1px solid #00a4b5;
}
.drawer_block ul li div.toggle > a.g:after {
  /* background-image: url(../img/plus_a.svg); */
  background-size: 100%;
  background-repeat: no-repeat;
  content: "＋";
  position: absolute;
  right: 3.125vw;
  top: 50%;
  width: 4.6875vw;
  height: 4.6875vw;
  border: none;
  -moz-transform: translateY(-50%) rotate(0);
  -ms-transform: translateY(-50%) rotate(0);
  -webkit-transform: translateY(-50%) rotate(0);
  transform: translateY(-50%) rotate(0);
  transform-origin: center center;
  -moz-transition: -moz-transform, 0.2s;
  -o-transition: -o-transform, 0.2s;
  -webkit-transition: -webkit-transform, 0.2s;
  transition: transform, 0.2s;
}
@media only screen and (min-width: 980px) {
  .drawer_block ul li div.toggle > a.g:after {
    right: 12px;
    width: 15px;
    height: 15px;
  }
}
.drawer_block ul li div.toggle > a.g.on:after {
  -moz-transform: translateY(-50%) rotate(45deg);
  -ms-transform: translateY(-50%) rotate(45deg);
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
}
@media only screen and (max-width: 819px) {
  div#wrapper.drawer-open02 .drawer_block.header_bottom_area {
    overflow-y: scroll;
  }
}

/* 20220114追加 アコーディオン */
.product-acd-content-wrapper {
  margin-bottom: -80px;
}
.product-acd-check{
  display: none;
}
.product-acd-label{
  padding: 10px;
  position: relative;
  border-bottom: solid 1px #CBCBCB;
  text-align: center;
  display: block;
}
.product-acd-label:after{
  content: "";
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border-top: 0.625vw solid #00a4b5;
  border-right: 0.625vw solid #00a4b5;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  transform-origin: right bottom;
  position: absolute;
  right: 1.25vw;
  top: 35%;
  -moz-transform: translateY(-50%) rotate(135deg);
  -ms-transform: translateY(-50%) rotate(135deg);
  -webkit-transform: translateY(-50%) rotate(135deg);
  transform: translateY(-50%) rotate(135deg);
  border-top-width: 2px;
  border-right-width: 2px;
}
.product-acd-content{
  display: block;
  height: 0;
  opacity: 0;
  padding: 0 10px;
  transition: .5s;
  visibility: hidden;
}
.product-acd-check:checked + .product-acd-label:after{
  border-bottom: 2px solid #00a4b5;
  border-left: 2px solid #00a4b5;
  border-top: none;
  border-right: none;
  top: 45%;
}
.product-acd-check:checked  ~ .product-acd-content{
  height: auto;
  opacity: 1;
  visibility: visible;
  line-height: 1.8em;
  margin-bottom: 20px;
  margin-top: -20px;
}
#detail_cart_box {
  margin-left: 11%;
}

/* 20221201追加 既製品 */
#item_detail_area .limited_subtitle {
	padding: 0.25em 1em;
	color: #00a4b5;
	border: 1px solid #00a4b5;
}

#item_detail_area #product_size_stock_box {
	margin: 30px 0;
}
#item_detail_area #product_size_stock_box * {
	text-align: center;
	box-sizing: border-box;
}
#item_detail_area #product_size_stock_box > p {
	margin-bottom: 25px;
}
#item_detail_area #product_size_stock_box .product_size_stock_container {
}
#item_detail_area #product_size_stock_box .product_size_stock_container .product_size_stock_container_header {
	display: flex;
	align-items: center;
	justify-content: space-around;
	background-color: #00a4b5;
}
#item_detail_area #product_size_stock_box .product_size_stock_container .product_size_stock_container_header div {
	padding: 10px 0;
	font-size: 15px;
    color: #fff;
	border-top: 1px solid #e4e4e4;
	border-right: 1px solid #e4e4e4;
	border-bottom: 1px solid #e4e4e4;
}
#item_detail_area #product_size_stock_box .product_size_stock_container .product_size_stock_container_column {
	display: flex;
	align-items: center;
	justify-content: space-around;
}
#item_detail_area #product_size_stock_box .product_size_stock_container .product_size_stock_container_column.active div:nth-of-type(1) {color: #00a4b5;}
#item_detail_area #product_size_stock_box .product_size_stock_container .product_size_stock_container_column.active div:nth-of-type(2) {color: #00a4b5;}
#item_detail_area #product_size_stock_box .product_size_stock_container .product_size_stock_container_column.active div:nth-of-type(3) {color: #525263;}

#item_detail_area #product_size_stock_box .product_size_stock_container .product_size_stock_container_column div {
	line-height: 30px;
	padding: 10px 0;
	font-size: 1em;
	border-right: 1px solid #e4e4e4;
	border-bottom: 1px solid #e4e4e4;
}
#item_detail_area #product_size_stock_box .product_size_stock_container .product_size_stock_container_header div:nth-of-type(1) {width: 50px; border-left: 1px solid #e4e4e4;}
#item_detail_area #product_size_stock_box .product_size_stock_container .product_size_stock_container_column div:nth-of-type(1) {width: 50px; border-left: 1px solid #e4e4e4;}
#item_detail_area #product_size_stock_box .product_size_stock_container .product_size_stock_container_header div:nth-of-type(2) {width: calc(100% - 50px - 100px);}
#item_detail_area #product_size_stock_box .product_size_stock_container .product_size_stock_container_column div:nth-of-type(2) {width: calc(100% - 50px - 100px); font-size: 20px;}
#item_detail_area #product_size_stock_box .product_size_stock_container .product_size_stock_container_header div:nth-of-type(3) {width: 100px;}
#item_detail_area #product_size_stock_box .product_size_stock_container .product_size_stock_container_column div:nth-of-type(3) {width: 100px; font-size: 15px;}

#item_detail_area #product_size_stock_box .product_size_stock_container .product_size_stock_container_column div:nth-of-type(2) span {font-size: 15px;}

#item_detail_area #product_size_stock_box .product_size_stock_container .product_size_stock_container_column div:nth-of-type(1) label {
	position: relative;
	cursor: pointer;
	padding-left: 24px;
}

#item_detail_area #product_size_stock_box .product_size_stock_container .product_size_stock_container_column div:nth-of-type(1) label::before,
#item_detail_area #product_size_stock_box .product_size_stock_container .product_size_stock_container_column div:nth-of-type(1) label::after {
	content: "";
	display: block; 
	border-radius: 50%;
	position: absolute;
	transform: translateY(-50%);
	top: 50%;
}

#item_detail_area #product_size_stock_box .product_size_stock_container .product_size_stock_container_column div:nth-of-type(1) label::before {
	background-color: #fff;
	border: 1px solid #525263;
	border-radius: 50%;
	width: 22px;
	height: 22px;
	left: 0;
}

#item_detail_area #product_size_stock_box .product_size_stock_container .product_size_stock_container_column div:nth-of-type(1) label::after {
	background-color: #fff;
	border-radius: 50%;
	opacity: 1;
	width: 16px;
	height: 16px;
	left: 3px
}

#item_detail_area #product_size_stock_box .product_size_stock_container .product_size_stock_container_column.active div:nth-of-type(1) input:checked + label::before {border: 1px solid #00a4b5;}
#item_detail_area #product_size_stock_box .product_size_stock_container .product_size_stock_container_column.active div:nth-of-type(1) input:checked + label::after {background-color: #00a4b5;}

#item_detail_area #product_size_stock_box .product_size_stock_container .product_size_stock_container_column div:nth-of-type(1) input[type="radio"] {
	position: absolute;
	white-space: nowrap;
	width: 1px;
	height: 1px;
	overflow: hidden;
	border: 0;
	padding: 0;
	clip: rect(0 0 0 0);
	clip-path: inset(50%); 
	margin: -1px;
}

#item_detail_area #product_order_quantity_box {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	margin-bottom: 3em;
}
#item_detail_area #product_order_quantity_box * {
	box-sizing: border-box;
}
#item_detail_area #product_order_quantity_box > p {
	font-size: 1.2em;
}
#item_detail_area #product_order_quantity_box .select_wrap {
	width: 20%;
	margin-left: 1em;
}

