@charset "UTF-8";
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video,
input, textarea {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  background: transparent;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
  list-style-type: none;
}

table {
  border-collapse: collapse;
}

/*************************
 * mixin
 *************************/
@media screen and (max-device-width: 480px) {
  body {
    -webkit-text-size-adjust: none;
  }
}
.center-block {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -moz-box-pack: center;
  -webkit-flex-pack: center;
  -moz-flex-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  justify-content: center;
}

/***********************************
 *
 * div構成設定
 *
 ***********************************/
/*
 * div要素内の縦センタリング
 *   middle_outerに高さ指定必須
 *   middle_innerに高さ指定必須
 */
.middle_outer {
  position: relative;
}

.middle_inner {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
}

/*
 * divの水平配置
 */
.horizontal > div {
  display: inline-block;
}

@media screen and (max-width: 768px) {
  .horizontal > div {
    display: block;
  }
}
/*
 * 縮小されるdiv
 */
.adjust_div {
  position: relative;
  width: 100%;
}

.adjust_div:before {
  content: "";
  display: block;
  padding-top: 50.1%;
}

.adjust_div .content {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

/***********************************
 *
 * table構成設定
 *
 ***********************************/
@media screen and (max-width: 768px) {
  table.sp_vertical > tbody > tr > th,
  table.sp_vertical > tbody > tr > td {
    display: block;
  }
}
/***********************************
 *
 * ul構成設定
 *
 ***********************************/
ul.list {
  position: relative;
  padding: 5px;
  margin-left: 15px;
}

ul.list li {
  list-style-type: none;
}

ul.list li::before {
  position: absolute;
  left: -15px;
}

ul.list.dot li::before {
  content: "●";
  color: #4CBCB7;
}

ul.list.kome li::before {
  content: "※";
}

ul.list.num li.num1::before {
  content: "1.";
}
ul.list.num li.num2::before {
  content: "2.";
}
ul.list.num li.num3::before {
  content: "3.";
}
ul.list.num li.num4::before {
  content: "4.";
}
ul.list.num li.num5::before {
  content: "5.";
}
ul.list.num li.num6::before {
  content: "6.";
}
ul.list.num li.num7::before {
  content: "7.";
}
ul.list.num li.num8::before {
  content: "8.";
}
ul.list.num li.num9::before {
  content: "9.";
}
ul.list.num li.num10::before {
  content: "10.";
}
ul.list.num li.num11::before {
  content: "11.";
}
ul.list.num li.num12::before {
  content: "12.";
}
ul.list.num li.num13::before {
  content: "13.";
}
ul.list.num li.num14::before {
  content: "14.";
}
ul.list.num li.num15::before {
  content: "15.";
}
ul.list.num li.num16::before {
  content: "16.";
}
ul.list.num li.num17::before {
  content: "17.";
}
ul.list.num li.num18::before {
  content: "18.";
}
ul.list.num li.num19::before {
  content: "19.";
}
ul.list.num li.num20::before {
  content: "20.";
}

/***********************************
 *
 * iframeのレスポンシブ対応
 *
 ***********************************/
.frame_wrap {
  position: relative;
  padding-bottom: 56.25%; /*縦横比*/
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}

.frame_wrap .map_canvas,
.frame_wrap .map_canvas_top,
.frame_wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

.fb_iframe_widget,
.fb_iframe_widget span,
.fb_iframe_widget iframe[style] {
  width: 100% !important;
  max-width: 498px !important;
  margin: auto;
}

.youtube {
  position: relative;
  display: block;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  overflow: hidden;
  margin-bottom: 25px;
}

.youtube-horizontal {
  position: relative;
  display: block;
  width: 100%;
  height: 0;
  padding-bottom: 177.5%;
  overflow: hidden;
  margin-bottom: 25px;
}

.youtube iframe,
.youtube-horizontal iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

/***********************************
 *
 * 調整用
 *
 ***********************************/
.txtL {
  text-align: left !important;
}

.txtC {
  text-align: center !important;
}

.txtR {
  text-align: right !important;
}

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

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

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

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

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

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

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

.mt70 {
  margin-top: 70px !important;
}

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

.mt90 {
  margin-top: 90px !important;
}

.mt100 {
  margin-top: 100px !important;
}

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

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

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

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

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

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

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

.mb70 {
  margin-bottom: 70px !important;
}

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

.mb90 {
  margin-bottom: 90px !important;
}

.mb100 {
  margin-bottom: 100px !important;
}

.ml0 {
  margin-left: 0px !important;
}

.ml10 {
  margin-left: 10px !important;
}

.ml20 {
  margin-left: 20px !important;
}

.ml30 {
  margin-left: 30px !important;
}

.ml40 {
  margin-left: 40px !important;
}

.ml50 {
  margin-left: 50px !important;
}

.ml60 {
  margin-left: 60px !important;
}

.ml70 {
  margin-left: 70px !important;
}

.ml80 {
  margin-left: 80px !important;
}

.ml90 {
  margin-left: 90px !important;
}

.ml100 {
  margin-left: 100px !important;
}

.mr0 {
  margin-right: 0px !important;
}

.mr10 {
  margin-right: 10px !important;
}

.mr20 {
  margin-right: 20px !important;
}

.mr30 {
  margin-right: 30px !important;
}

.mr40 {
  margin-right: 40px !important;
}

.mr50 {
  margin-right: 50px !important;
}

.mr60 {
  margin-right: 60px !important;
}

.mr70 {
  margin-right: 70px !important;
}

.mr80 {
  margin-right: 80px !important;
}

.mr90 {
  margin-right: 90px !important;
}

.mr100 {
  margin-right: 100px !important;
}

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

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

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

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

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

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

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

.pt70 {
  padding-top: 70px !important;
}

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

.pt90 {
  padding-top: 90px !important;
}

.pt100 {
  padding-top: 100px !important;
}

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

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

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

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

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

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

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

.pb70 {
  padding-bottom: 70px !important;
}

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

.pb90 {
  padding-bottom: 90px !important;
}

.pb100 {
  padding-bottom: 100px !important;
}

.pl0 {
  padding-left: 0px !important;
}

.pl10 {
  padding-left: 10px !important;
}

.pl20 {
  padding-left: 20px !important;
}

.pl30 {
  padding-left: 30px !important;
}

.pl40 {
  padding-left: 40px !important;
}

.pl50 {
  padding-left: 50px !important;
}

.pl60 {
  padding-left: 60px !important;
}

.pl70 {
  padding-left: 70px !important;
}

.pl80 {
  padding-left: 80px !important;
}

.pl90 {
  padding-left: 90px !important;
}

.pl100 {
  padding-left: 100px !important;
}

.pr0 {
  padding-right: 0px !important;
}

.pr10 {
  padding-right: 10px !important;
}

.pr20 {
  padding-right: 20px !important;
}

.pr30 {
  padding-right: 30px !important;
}

.pr40 {
  padding-right: 40px !important;
}

.pr50 {
  padding-right: 50px !important;
}

.pr60 {
  padding-right: 60px !important;
}

.pr70 {
  padding-right: 70px !important;
}

.pr80 {
  padding-right: 80px !important;
}

.pr90 {
  padding-right: 90px !important;
}

.pr100 {
  padding-right: 100px !important;
}

.annotation {
  color: #F197A3;
}

.fixed {
  position: fixed;
  width: 100%;
  height: 100%;
}

hr {
  border: solid #ddd;
  border-width: 1px 0 0 0;
  margin: 0 0 10px;
}

/*************************
 * 定義
 *************************/
/*************************
 * function
 *************************/
/***********************************
 *
 * 基本設定
 *
 ***********************************/
html {
  font-size: 14px;
  letter-spacing: 0;
}

body {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: 500;
  margin: 0;
  font-size: 1rem;
}

small {
  line-height: 1.8;
}

a.btn {
  display: inline-block;
  text-decoration: none;
  position: relative;
  vertical-align: middle;
  text-decoration: none;
}
a.btn:hover {
  opacity: 0.8;
}
a.btn:hover::after, a.btn:hover::before {
  left: 10px;
}
a.btn::after, a.btn::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}
a.btn::before {
  left: 3px;
  width: 7px;
  height: 1px;
  background: #FFF;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
a.btn::after {
  left: 3px;
  width: 6px;
  height: 6px;
  border-top: 1px solid #FFF;
  border-right: 1px solid #FFF;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

/* Sizes */
.button--size-s {
  font-size: 14px !important;
}

.button--size-m {
  font-size: 16px !important;
}

.button--size-l {
  font-size: 18px !important;
}

/* Typography and Roundedness */
.button--text-upper {
  letter-spacing: 2px;
  text-transform: uppercase;
}

.button--text-thin {
  font-weight: 300;
}

.button--text-medium {
  font-weight: 500;
}

.button--text-thick {
  font-weight: 600;
}

.button--round-s {
  border-radius: 5px;
}

.button--round-m {
  border-radius: 15px;
}

.button--round-l {
  border-radius: 40px;
}

/* Borders */
.button--border-thin {
  border: 1px solid;
}

.button--border-medium {
  border: 2px solid;
}

.button--border-thick {
  border: 3px solid;
}

.btn_d {
  padding: 0 2em;
  background: #4CBCB7;
  color: #fff;
  overflow: hidden;
  min-width: 150px;
  max-width: 260px;
  display: block;
  margin: 1em;
  border: none;
  vertical-align: middle;
  position: relative;
  z-index: 1;
  -webkit-backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
  text-align: center;
  font-family: dnp-shuei-gothic-gin-std, sans-serif;
  font-weight: 500;
  font-weight: bold;
}
.btn_d:focus {
  outline: none;
}
.btn_d.btn_d--inverted {
  background: #fff;
  color: #4CBCB7;
}
.btn_d > span {
  display: inline-block;
  padding: 1em 0;
  opacity: 0;
  color: #fff;
  vertical-align: middle;
  -webkit-transform: translate3d(0, -10px, 0);
  transform: translate3d(0, -10px, 0);
  -webkit-transition: -webkit-transform 0.3s, opacity 0.3s;
  transition: transform 0.3s, opacity 0.3s;
  -webkit-transition-timing-function: cubic-bezier(0.75, 0, 0.125, 1);
  transition-timing-function: cubic-bezier(0.75, 0, 0.125, 1);
}
.btn_d::before {
  content: attr(data-text);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 1em 0;
  -webkit-transition: -webkit-transform 0.3s, opacity 0.3s;
  transition: transform 0.3s, opacity 0.3s;
  -webkit-transition-timing-function: cubic-bezier(0.75, 0, 0.125, 1);
  transition-timing-function: cubic-bezier(0.75, 0, 0.125, 1);
}
.btn_d:hover {
  background-color: #3F9A96;
}
.btn_d:hover::before {
  opacity: 0;
  -webkit-transform: translate3d(0, 100%, 0);
  transform: translate3d(0, 100%, 0);
}
.btn_d:hover > span {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
.btn_d:hover > span:nth-child(1) {
  -webkit-transition-delay: 0.045s;
  transition-delay: 0.045s;
}
.btn_d:hover > span:nth-child(2) {
  -webkit-transition-delay: 0.09s;
  transition-delay: 0.09s;
}
.btn_d:hover > span:nth-child(3) {
  -webkit-transition-delay: 0.135s;
  transition-delay: 0.135s;
}
.btn_d:hover > span:nth-child(4) {
  -webkit-transition-delay: 0.18s;
  transition-delay: 0.18s;
}
.btn_d:hover > span:nth-child(5) {
  -webkit-transition-delay: 0.225s;
  transition-delay: 0.225s;
}
.btn_d:hover > span:nth-child(6) {
  -webkit-transition-delay: 0.27s;
  transition-delay: 0.27s;
}
.btn_d:hover > span:nth-child(7) {
  -webkit-transition-delay: 0.315s;
  transition-delay: 0.315s;
}
.btn_d:hover > span:nth-child(8) {
  -webkit-transition-delay: 0.36s;
  transition-delay: 0.36s;
}
.btn_d:hover > span:nth-child(9) {
  -webkit-transition-delay: 0.405s;
  transition-delay: 0.405s;
}
.btn_d:hover > span:nth-child(10) {
  -webkit-transition-delay: 0.45s;
  transition-delay: 0.45s;
}

.flexright {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.flexcenter {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-pack: center;
  -moz-box-pack: center;
  -webkit-flex-pack: center;
  -moz-flex-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  justify-content: center;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.flexcolumn {
  -webkit-box-direction: normal;
  -moz-box-direction: normal;
  -webkit-box-orient: vertical;
  -moz-box-orient: vertical;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  flex-direction: column;
}

.max-width700 {
  max-width: 700px;
  margin: 0 auto;
}

.max-width780 {
  max-width: 780px;
  margin: 0 auto;
}

.header_contact {
  max-width: 260px;
}
.header_contact .yoyaku {
  font-size: 0.8571428571rem;
  text-align: center;
}
.header_contact .yoyaku img {
  margin-top: 5px;
}
.header_contact .yoyaku a {
  display: block;
  color: #000;
  text-decoration: none;
  margin: 10px 0px;
  font-size: 1.8571428571rem;
  letter-spacing: 2px;
  font-weight: 700;
}
.header_contact .yoyaku a i {
  transform: rotateZ(100deg);
  margin-right: 5px;
}
@media screen and (max-width: 450px) {
  .header_contact .yoyaku a {
    font-size: 1.2857142857rem;
  }
}
.header_contact .shop {
  line-height: 1.6;
}
.header_contact .shop p {
  text-align: center;
  font-size: 0.7857142857rem;
}
.header_contact .shop p img {
  position: relative;
  top: 3px;
}
.header_contact .shop a {
  display: inline-block;
  color: #000;
  text-decoration: none;
  font-size: 1rem;
  letter-spacing: 1px;
}
.header_contact .shop a i {
  transform: rotateZ(100deg);
  margin-right: 3px;
}
.header_contact hr {
  border: solid #ddd;
  border-width: 1px 0 0 0;
  margin: 0 0 10px;
}
.header_contact .sns {
  text-align: center;
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  border-radius: 3px;
  overflow: hidden;
  position: relative;
}
.header_contact .sns .btn {
  display: inline-block;
  background: #4CBCB7;
  padding: 12px 0;
  width: 50%;
  color: #fff;
  margin: 0;
  font-size: 0.9285714286rem;
  letter-spacing: 2px;
  box-sizing: border-box;
}
.header_contact .sns .sns_btn {
  margin: 0 2px;
  background: #F197A3;
  padding: 12px 0 12px 20px;
  width: 50%;
  color: #fff;
  margin: 0;
  font-size: 0.9285714286rem;
  letter-spacing: 1px;
  text-decoration: none;
  position: relative;
  box-sizing: border-box;
}
.header_contact .sns .sns_btn i {
  font-size: 1.3571428571rem;
  position: absolute;
  top: 9px;
  left: 12px;
}
.header_contact .sns .sns_btn:hover {
  opacity: 0.6;
}

.hover_scale {
  transform: scale(1, 1);
  -webkit-transform: scale(1, 1);
  -moz-transform: scale(1, 1);
  -ms-transform: scale(1, 1);
  -o-transform: scale(1, 1);
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
.hover_scale:hover {
  transform: scale(1.1, 1.1);
  -webkit-transform: scale(1.1, 1.1);
  -moz-transform: scale(1.1, 1.1);
  -ms-transform: scale(1.1, 1.1);
  -o-transform: scale(1.1, 1.1);
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}

.title_h4 {
  line-height: 1.7;
  font-size: 1.5714285714rem;
  letter-spacing: 1px;
  color: #4CBCB7;
  font-weight: bold;
  margin: 0 0 30px;
  text-align: center;
}
.title_h4:before {
  content: " ";
  border-top: 4px solid #4CBCB7;
  margin: 0 auto 20px;
  width: 60px;
  display: block;
}
.title_h4 .title_en {
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: 10px;
  margin-left: 10px;
  color: #575366;
}

.title_h5 {
  line-height: 1.7;
  font-size: 1.4285714286rem;
  color: #4CBCB7;
  font-weight: bold;
  margin-bottom: 20px;
  letter-spacing: 1px;
  border-bottom: 1px dotted #4CBCB7;
}

.title_h6 {
  line-height: 1.7;
  font-size: 1.2857142857rem;
  margin-bottom: 15px;
  letter-spacing: 1px;
}

.content_read {
  text-align: center;
  line-height: 1.7;
  font-size: 1rem;
  margin-bottom: 30px;
}
@media screen and (max-width: 890px) {
  .content_read {
    display: block;
  }
}

.loading {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  z-index: 100;
}

/***********************************
 *
 * header
 *
 ***********************************/
.sub header nav {
  top: 225px;
}
@media screen and (max-width: 890px) {
  .sub header nav {
    top: 0;
  }
}

header {
  position: relative;
  opacity: 0;
  padding: 0;
}
@media screen and (max-width: 890px) {
  header {
    border-top: none;
    padding-bottom: 10px;
    z-index: 10000;
  }
}
header .logo {
  padding: 30px 0 50px;
}
@media screen and (max-width: 890px) {
  header .logo {
    padding: 30px 0 10px;
  }
}
header .logo a {
  text-decoration: none;
}
header .logo a p {
  margin-top: 10px;
  color: #867329;
}
@media screen and (max-width: 890px) {
  .sub header .logo, .jewelry-top header .logo {
    display: none;
  }
}
header .logo img {
  width: 150px;
  height: auto;
}
@media screen and (max-width: 890px) {
  header .logo img {
    width: 110px;
  }
}
header nav {
  position: absolute;
  padding: 0;
  background: #4CBCB7;
  color: #fff;
  width: 100%;
  max-width: 1280px;
  left: 50%;
  transform: translateX(-50%);
  border-radius: 3px;
  z-index: 2000;
}
@media screen and (max-width: 890px) {
  header nav {
    background: transparent;
    position: fixed;
    padding: 10px 0;
    height: 39px;
    -webkit-transition: all 0.6s;
    transition: all 0.6s;
  }
}
header nav .list {
  background: #4CBCB7;
  border-radius: 3px;
}
@media screen and (max-width: 890px) {
  header nav .list {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: calc(100% - 100px);
    margin: 120px 0 200px;
    display: none;
    background: transparent;
  }
}
@media screen and (min-width: 891px) {
  header nav .list {
    display: block !important;
  }
}
header nav ul {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-pack: center;
  -moz-box-pack: center;
  -webkit-flex-pack: center;
  -moz-flex-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  justify-content: center;
}
@media screen and (max-width: 890px) {
  header nav ul {
    -webkit-box-direction: normal;
    -moz-box-direction: normal;
    -webkit-box-orient: vertical;
    -moz-box-orient: vertical;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    flex-direction: column;
  }
}
header nav ul li {
  padding: 0;
  letter-spacing: 1px;
  border-right: 1px solid rgba(255, 255, 255, 0.1);
  text-align: center;
  position: relative;
}
@media screen and (max-width: 990px) {
  header nav ul li {
    padding: 0px;
  }
}
@media screen and (max-width: 890px) {
  header nav ul li {
    padding: 0;
    border-right: none;
  }
}
header nav ul li:last-child {
  border-right: 0;
}
header nav ul li .title_en {
  font-size: 0.7142857143rem;
  margin-bottom: 10px;
  font-family: serif;
  letter-spacing: 2px;
  color: rgba(255, 255, 255, 0.4);
}
@media screen and (max-width: 890px) {
  header nav ul li .title_en {
    font-size: 1.1428571429rem;
  }
}
header nav ul li .title_jp {
  font-size: 0.9285714286rem;
}
@media screen and (max-width: 990px) {
  header nav ul li .title_jp {
    font-size: 0.8571428571rem;
  }
}
header nav ul li a {
  padding: 17px 13px 16px;
  display: block;
  color: #fff;
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  background-color: #4CBCB7;
}
@media screen and (max-width: 990px) {
  header nav ul li a {
    padding: 17px 10px;
  }
}
@media screen and (max-width: 890px) {
  header nav ul li a {
    padding: 13px;
    border-radius: 3px;
    background-color: transparent;
  }
  header nav ul li a .arrow {
    position: absolute;
    right: 20px;
    top: 40%;
    box-sizing: border-box;
    height: 8px;
    width: 8px;
    border-style: solid;
    border-color: white;
    border-width: 0px 1px 1px 0px;
    transform: rotate(45deg);
    transition: all 150ms ease-in-out;
  }
}
header nav ul li a:hover {
  background-color: rgba(41, 117, 115, 0.9);
}
@media screen and (max-width: 890px) {
  header nav ul li a:hover .arrow {
    transform: rotate(225deg);
  }
}
header nav ul li.list_parrent .list_child {
  position: absolute;
  top: 66px;
  left: 0;
  background-color: rgba(41, 117, 115, 0.9);
  display: none;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 240px;
  -webkit-transition: all 1s;
  transition: all 1s;
  opacity: 0;
}
@media screen and (max-width: 890px) {
  header nav ul li.list_parrent .list_child {
    width: 100%;
    min-width: 290px;
    top: 61px;
    left: 50%;
    transform: translateX(-50%);
  }
}
@media screen and (max-width: 450px) {
  header nav ul li.list_parrent .list_child {
    min-width: inherit;
    left: inherit;
    transform: inherit;
  }
}
header nav ul li.list_parrent .list_child li {
  text-align: left;
  border-right: none;
  letter-spacing: 0;
  width: 100%;
  padding: 0;
}
header nav ul li.list_parrent .list_child li a {
  font-size: 0.7857142857rem;
  padding: 15px 10px;
  display: block;
  background-color: rgba(41, 117, 115, 0.9);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  border-radius: 0;
}
@media screen and (max-width: 890px) {
  header nav ul li.list_parrent .list_child li a {
    font-size: 0.9285714286rem;
  }
}
header nav ul li.list_parrent .list_child li a:hover {
  text-decoration: none;
  background-color: #261f08;
}
header nav ul li.list_parrent .list_child li:last-child {
  border-bottom: none;
}
@media screen and (max-width: 890px) {
  header nav ul li.list_parrent .list_child li {
    margin-bottom: 0px;
  }
}
header nav ul li.list_parrent .list_child li:last-child {
  border-right: 0;
}
header nav ul li.list_parrent.is-show .list_child {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  opacity: 1;
  -webkit-transition: all 1s;
  transition: all 1s;
  z-index: 1;
}
header nav ul li.list_parrent:last-child .list_child {
  left: auto;
  right: 0;
}
@media screen and (max-width: 890px) {
  header nav ul li.list_parrent:last-child .list_child {
    right: inherit;
    left: 50%;
  }
}
@media screen and (max-width: 450px) {
  header nav ul li.list_parrent:last-child .list_child {
    left: inherit;
  }
}
header nav .header_tel-btn {
  display: none;
}
@media screen and (max-width: 890px) {
  header nav .header_tel-btn {
    display: block;
    position: absolute;
    top: 7px;
    left: 15px;
    width: 24px;
    height: 24px;
  }
  header nav .header_tel-btn img {
    width: 24px;
    height: 24px;
  }
  header nav .header_tel-btn .svg path {
    color: #867329;
    fill: currentColor;
  }
}
header nav .header_contact-btn {
  display: none;
}
@media screen and (max-width: 890px) {
  header nav .header_contact-btn {
    display: block;
    position: absolute;
    top: 7px;
    left: 55px;
    width: 24px;
    height: 24px;
  }
  header nav .header_contact-btn img {
    width: 24px;
    height: 24px;
  }
  header nav .header_contact-btn .svg path {
    color: #867329;
    fill: currentColor;
  }
}
header nav .header_schedure-btn {
  display: none;
}
@media screen and (max-width: 890px) {
  header nav .header_schedure-btn {
    padding: 0 0.5em;
    position: absolute;
    top: 20px;
    left: 100px;
    width: 60px;
    height: 24px;
    font-size: 0.9285714286rem;
    color: #4cbcb7;
    font-family: dnp-shuei-gothic-gin-std, sans-serif;
    font-weight: 500;
    background: #FFF;
    border-radius: 3px;
    text-decoration: none;
    line-height: 24px;
    text-align: center;
    letter-spacing: 1px;
  }
}
@media screen and (min-width: 891px) {
  header nav .header_logo {
    display: none !important;
  }
}
.home header nav .header_logo {
  display: none;
}
.sub header nav .header_logo {
  display: none;
}
@media screen and (max-width: 890px) {
  .sub header nav .header_logo {
    display: block;
  }
}
@media screen and (max-width: 890px) {
  header nav .header_logo {
    position: absolute;
    top: 5px;
    left: 50%;
    width: 90px;
    height: 30px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  header nav .header_logo img {
    width: 90px;
    height: 30px;
  }
}
header nav .menu_btn {
  display: none;
}
@media screen and (max-width: 890px) {
  header nav .menu_btn {
    display: block;
    position: absolute;
    top: 11px;
    right: 3px;
  }
}
header nav .menu_btn .mark {
  margin-left: auto;
  margin-right: 10px;
  width: 30px;
  position: fixed;
  top: 11px;
  right: 3px;
  z-index: 1;
}
header nav .menu_btn .mark div {
  border-top: 1px solid #867329;
  margin-bottom: 7px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  opacity: 1;
  position: relative;
}
header nav .menu_btn .mark div:last-child {
  margin-bottom: 0;
  width: 15px;
  margin-left: 15px;
}
header nav .sub_menu {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-pack: center;
  -moz-box-pack: center;
  -webkit-flex-pack: center;
  -moz-flex-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  justify-content: center;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  width: 240px;
  margin: 30px auto 10px;
  padding: 20px 0;
}
header nav .sub_menu a {
  display: block;
  color: #FFF;
  text-decoration: none;
  padding: 0 20px;
  letter-spacing: 1.5px;
}
header nav .sns {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-pack: center;
  -moz-box-pack: center;
  -webkit-flex-pack: center;
  -moz-flex-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  justify-content: center;
  margin-bottom: 60px;
  padding-bottom: 100px;
}
header nav .sns a {
  margin: 20px 10px;
  font-size: 2.0714285714rem;
  color: #FFF;
}
@media screen and (max-width: 890px) {
  header nav.is_open .header_logo {
    display: none !important;
  }
}
@media screen and (max-width: 890px) {
  header nav.is_open {
    overflow-y: scroll;
    height: 100vh;
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -webkit-flex-pack: center;
    -moz-flex-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    background-color: #4cbcb7 !important;
  }
  header nav.is_open .menu_btn .mark div {
    border-top: 1px solid #FFF;
  }
  header nav.is_open .menu_btn .mark div:first-child {
    -webkit-transform: rotateZ(-45deg);
    transform: rotateZ(-45deg);
    top: 12px;
  }
  header nav.is_open .menu_btn .mark div:nth-child(2) {
    opacity: 0;
  }
  header nav.is_open .menu_btn .mark div:last-child {
    -webkit-transform: rotateZ(45deg);
    transform: rotateZ(45deg);
    top: -4px;
    width: 30px;
    margin-left: 0;
  }
}
@media screen and (max-width: 890px) and (max-width: 768px) {
  header nav.is_open .list {
    background: #4CBCB7;
  }
}
@media screen and (max-width: 890px) {
  header nav.is_open .header_tel-btn,
  header nav.is_open .header_contact-btn {
    z-index: 100;
  }
  header nav.is_open .header_tel-btn .svg path,
  header nav.is_open .header_contact-btn .svg path {
    color: #fff;
    fill: currentColor;
  }
  header nav.is_open .header_tel-btn {
    top: 20px;
    left: 20px;
  }
  header nav.is_open .header_contact-btn {
    top: 20px;
    left: 60px;
  }
  header nav.is_open .header_schedure-btn {
    display: block;
    z-index: 100;
    -webkit-transition: all 1s ease;
    transition: all 1s ease;
  }
}
header .header_contact {
  position: absolute;
  top: 50px;
  right: 5%;
  z-index: 2010;
}
@media screen and (max-width: 890px) {
  header .header_contact {
    display: none;
  }
}
header .header_contact .yoyaku a {
  display: block;
  color: #000;
  text-decoration: none;
  margin: 10px 0px;
  font-size: 1.8571428571rem;
  letter-spacing: 2px;
  font-weight: 700;
}
header .header_contact .yoyaku a i {
  transform: rotateZ(100deg);
  margin-right: 5px;
}
header .header_contact .shop {
  line-height: 1.6;
}
header .header_contact .shop a {
  display: inline-block;
  color: #000;
  text-decoration: none;
  font-size: 1rem;
  letter-spacing: 1px;
}
header .header_contact .shop a i {
  transform: rotateZ(100deg);
  margin-right: 3px;
}

/***********************************
 *
 * section
 *
 ***********************************/
section {
  opacity: 0;
}
section:not(.top_main):not(.archives) {
  padding-right: 10px;
  padding-left: 10px;
  position: relative;
}
section.header_info {
  padding: 30px 0;
  display: none;
  /*
  @include media-query(pre_sm) {
  	margin-top: 55vh;
  }
  @include media-query(sm) {
  	margin-top: 53vh;
  }
  @include media-query(xs) {
  	margin-top: 45vh;
  }
  */
}
@media screen and (max-width: 890px) {
  section.header_info {
    display: block;
  }
}
section.header_info .header_contact {
  margin: auto;
}
section.header_info .header_contact .youtube-banner {
  margin: 0 auto;
  max-width: 600px;
  height: auto;
}
section h2 {
  text-align: center;
  margin-top: 110px;
  margin-bottom: 30px;
}
section h2 .title_en {
  font-size: 2.4285714286rem;
  letter-spacing: 10px;
  margin-left: 10px;
  color: #595757;
  line-height: 1.5;
}
@media screen and (max-width: 450px) {
  section h2 .title_en {
    font-size: 1.7142857143rem;
  }
}
@media screen and (max-width: 400px) {
  section h2 .title_en {
    font-size: 1.4285714286rem;
    letter-spacing: 5px;
  }
}
section h2 .title_jp {
  margin-top: 1rem;
  font-size: 1.1428571429rem;
  letter-spacing: 1px;
  color: #4CBCB7;
  display: block;
}
@media screen and (max-width: 450px) {
  section h2 .title_jp {
    font-size: 1rem;
  }
}
section .title_text {
  position: relative;
  z-index: 1;
  padding: 30px 0 70px;
  font-size: 1.1428571429rem;
}
@media screen and (max-width: 450px) {
  section .title_text {
    font-size: 1rem;
    padding: 30px 0 50px;
  }
}
section .title_text h3 {
  text-align: center;
  font-weight: bold;
  line-height: 1.7;
  font-size: 2.4285714286rem;
  letter-spacing: 2px;
  color: #2FA39E;
  margin: 0 0 30px;
}
@media screen and (max-width: 768px) {
  section .title_text h3 {
    font-size: 2rem;
  }
}
@media screen and (max-width: 450px) {
  section .title_text h3 {
    font-size: 1.5714285714rem;
  }
}
section .title_text p {
  text-align: center;
  font-weight: bold;
  line-height: 2.1;
  letter-spacing: 1px;
}
@media screen and (max-width: 768px) {
  section .title_text p {
    line-height: 1.8;
    font-size: 0.7857142857rem;
    letter-spacing: 0;
  }
}
section.page_top h2 {
  margin-top: 140px;
}
@media screen and (max-width: 890px) {
  section.page_top h2 {
    margin-top: 80px;
  }
}
@media screen and (max-width: 450px) {
  section.page_top h2 {
    margin-top: 60px;
    margin-bottom: 0;
  }
}
section.page_top .title_text p {
  line-height: 2.5;
}
section.page_top .bxslider .bx-wrapper .slide .slide-img {
  margin-left: 15px;
  margin-right: 15px;
}
section.page_top .bxslider .bx-wrapper .bx-controls .bx-prev {
  width: 23px;
  left: -30px;
}
section.page_top .bxslider .bx-wrapper .bx-controls .bx-next {
  width: 23px;
  right: -30px;
}
section.page_top .youtube-banner {
  margin: 0 auto 100px;
  max-width: 600px;
  height: auto;
}
.top section.page_top .title_text {
  padding: 110px 0;
}
section.top_main {
  /*@include media-query(pre_sm) {
  	position: absolute;
     top: 0;
     width: 100%;
     height: 70vh;
  	z-index: 1;
  }*/
}
section.top_main h1 {
  position: absolute;
  top: -200px;
}
section.top_main .bxslider {
  max-width: 1280px;
  margin: 0 auto;
}
section.top_main .bxslider .bx-wrapper .bx-viewport {
  height: 70vh;
}
section.top_main .bxslider .bx-wrapper .bx-viewport .top_slides .slide {
  display: block;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
@media screen and (max-width: 450px) {
  section.top_main .bxslider .bx-wrapper .bx-viewport .top_slides .slide {
    height: 60vh !important;
  }
}
section.top_main .bxslider .bx-wrapper .bx-viewport .top_slides .slide img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 450px) {
  section.top_main .bxslider .bx-wrapper .bx-viewport .top_slides .slide img {
    width: auto;
    height: 100%;
    max-width: inherit;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
  }
}
section.top_main .bxslider .bx-wrapper .bx-viewport .top_slides .slide .embed-container {
  position: relative;
  padding-bottom: 56.25%;
  overflow: hidden;
  max-width: 100%;
  height: auto;
}
section.top_main .bxslider .bx-wrapper .bx-viewport .top_slides .slide .embed-container iframe,
section.top_main .bxslider .bx-wrapper .bx-viewport .top_slides .slide .embed-container object,
section.top_main .bxslider .bx-wrapper .bx-viewport .top_slides .slide .embed-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
section.top_main .bxslider .bx-wrapper .bx-viewport .top_slides .slide .mejs-controls {
  display: none;
}
@media screen and (max-width: 450px) {
  section.top_main .bxslider .bx-controls {
    display: none;
  }
}
section.top_main .bxslider .bx-controls .bx-next img {
  margin-left: 17px;
  height: 100%;
  width: auto;
}
section.top_main .bxslider .bx-controls .bx-prev img {
  height: 100%;
  width: auto;
}
section .container.full-width {
  margin-left: -10px;
  margin-right: -10px;
  padding-left: 0px !important;
  padding-right: 0px !important;
  width: calc(100% + 20px) !important;
}
section.top_course {
  margin-bottom: 50px;
}
section.top_course h2 {
  margin: 0 auto 50px;
}
section.top_course .container {
  max-width: 1040px;
  width: 100%;
  margin: auto;
}
section.top_course .container .courses {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -moz-box-pack: justify;
  -webkit-flex-pack: justify;
  -moz-flex-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
  counter-reset: number;
}
section.top_course .container .courses .course {
  position: relative;
  width: calc((100% - 60px) / 2);
  margin-bottom: 30px;
}
@media screen and (max-width: 450px) {
  section.top_course .container .courses .course {
    width: 100%;
  }
}
section.top_course .container .courses .course:nth-child(2n) {
  margin-top: 50px;
}
@media screen and (max-width: 450px) {
  section.top_course .container .courses .course:nth-child(2n) {
    margin-top: 0;
  }
}
section.top_course .container .courses .course::before {
  counter-increment: number;
  content: counter(number);
  padding: 10px 12px 10px 8px;
  color: #FFF;
  background-color: #4CBCB7;
  border-radius: 50%;
  position: absolute;
  top: -15px;
  left: -15px;
  z-index: 1;
  width: 20px;
  height: 20px;
  line-height: 20px;
  text-align: center;
  font-size: 1.2rem;
  font-style: italic;
  box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.5), 0 0 12px #FFF, 0 0 3px #FFF inset;
}
@media screen and (max-width: 768px) {
  section.top_course .container .courses .course::before {
    top: 5px;
    left: 5px;
  }
}
@media screen and (max-width: 450px) {
  section.top_course .container .courses .course::before {
    display: none;
  }
}
@media screen and (max-width: 990px) {
  section.top_course .container .courses .course {
    width: calc((100% - 20px) / 2);
  }
}
section.top_course .container .courses .course .image {
  position: relative;
  overflow: hidden;
  width: 100%;
}
@media screen and (max-width: 450px) {
  section.top_course .container .courses .course .image {
    margin-bottom: 10px;
  }
}
section.top_course .container .courses .course .image .image_content {
  display: block;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  width: 100%;
  height: 100%;
  padding-bottom: 62.5%;
  margin-bottom: 15px;
}
@media screen and (max-width: 540px) {
  section.top_course .container .courses .course .image .image_content {
    margin-bottom: 0;
  }
}
section.top_course .container .courses .course .text {
  line-height: 1.7;
}
section.top_course .container .courses .course .text a {
  text-decoration: none;
}
section.top_course .container .courses .course .text a .title {
  font-size: 1.2857142857rem;
  color: #009088;
  margin-bottom: 15px;
  padding-bottom: 15px;
  font-weight: bold;
  text-align: center;
  border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}
@media screen and (max-width: 540px) {
  section.top_course .container .courses .course .text a .title {
    font-size: 1.1428571429rem;
    margin-bottom: 10px;
    padding-bottom: 5px;
  }
}
section.top_course .container .courses .course .text a .detail {
  font-size: 1rem;
  margin-bottom: 10px;
  color: #222;
  text-align: center;
}
section.top_news {
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
  padding: 100px 0;
}
@media screen and (max-width: 450px) {
  section.top_news {
    padding: 50px 0 10px;
  }
}
section.top_news h2 {
  margin-top: 0;
}
section.top_news .container {
  max-width: 1040px;
  width: 100%;
  margin: auto;
}
section.top_news .container .slide {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
}
@media screen and (max-width: 768px) {
  section.top_news .container .slide {
    -webkit-box-direction: normal;
    -moz-box-direction: normal;
    -webkit-box-orient: vertical;
    -moz-box-orient: vertical;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    flex-direction: column;
  }
}
section.top_news .container .slide > div {
  max-width: 300px;
  width: 100%;
  margin: 0 15px;
}
@media screen and (max-width: 768px) {
  section.top_news .container .slide > div {
    margin: auto;
  }
}
section.top_news .container .slide .image {
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  section.top_news .container .slide .image {
    margin-bottom: 15px;
  }
}
section.top_news .container .slide .image .image_content {
  display: block;
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
  width: 100%;
  height: 100%;
}
section.top_news .container .slide .text {
  line-height: 1.7;
}
section.top_news .container .slide .text .title {
  font-size: 1.2857142857rem;
  color: #009088;
  margin-bottom: 5px;
  font-weight: bold;
}
section.top_news .container .slide .text .detail {
  font-size: 1rem;
  margin-bottom: 10px;
  height: 112px;
}
section.top_news .container .slide .text .btn {
  font-size: 1.0714285714rem;
  background: #26AEA7;
  padding: 10px 0;
  width: 100%;
  text-align: center;
  color: #fff;
}
section.top_news .container .posts {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -moz-box-pack: justify;
  -webkit-flex-pack: justify;
  -moz-flex-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
}
section.top_news .container .posts .post {
  width: calc((100% - 60px) / 3);
  margin-bottom: 30px;
}
@media screen and (max-width: 540px) {
  section.top_news .container .posts .post {
    width: calc((100% - 20px) / 2);
  }
}
section.top_news .container .posts .post .image {
  position: relative;
  overflow: hidden;
  width: 100%;
}
section.top_news .container .posts .post .image .image_content {
  display: block;
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
  width: 100%;
  height: 100%;
  padding-bottom: 62.5%;
  margin-bottom: 15px;
}
section.top_news .container .posts .post .text {
  line-height: 1.7;
}
section.top_news .container .posts .post .text a {
  text-decoration: none;
}
section.top_news .container .posts .post .text a .date {
  color: #222;
  font-size: 0.8571428571rem;
  letter-spacing: 2px;
}
section.top_news .container .posts .post .text a .title {
  font-size: 1.2857142857rem;
  color: #009088;
  margin-bottom: 5px;
  font-weight: bold;
}
@media screen and (max-width: 540px) {
  section.top_news .container .posts .post .text a .title {
    font-size: 1.1428571429rem;
  }
}
section.top_news .container .posts .post .text a .detail {
  font-size: 1rem;
  margin-bottom: 10px;
  color: #222;
}
@media screen and (max-width: 540px) {
  section.top_news .container .posts .post .text a .detail {
    display: none;
  }
}
section.top_news .container .posts .first-post {
  width: 40%;
  margin-right: 50px;
}
@media screen and (max-width: 768px) {
  section.top_news .container .posts .first-post {
    margin-right: 30px;
  }
}
@media screen and (max-width: 540px) {
  section.top_news .container .posts .first-post {
    width: 100%;
    margin-right: 0;
  }
}
section.top_news .container .posts .first-post .post {
  width: 100%;
}
@media screen and (max-width: 768px) {
  section.top_news .container .posts .first-post .post {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 540px) {
  section.top_news .container .posts .first-post .post {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
  }
}
section.top_news .container .posts .first-post .post .image {
  border-radius: 5px;
  position: relative;
  margin-bottom: 15px;
}
@media screen and (max-width: 540px) {
  section.top_news .container .posts .first-post .post .image {
    width: 120px;
    margin: 0 15px 0 0;
    align-self: flex-start;
  }
}
section.top_news .container .posts .first-post .post .image .image_content {
  padding-bottom: 90%;
  margin-bottom: 0;
}
@media screen and (max-width: 540px) {
  section.top_news .container .posts .first-post .post .image .image_content {
    padding-bottom: 120px;
  }
}
@media screen and (max-width: 540px) {
  section.top_news .container .posts .first-post .post .text {
    width: calc(100% - 135px);
  }
}
section.top_news .container .posts .not-first-post {
  width: calc(60% - 50px);
}
@media screen and (max-width: 768px) {
  section.top_news .container .posts .not-first-post {
    width: calc(60% - 30px);
  }
}
@media screen and (max-width: 540px) {
  section.top_news .container .posts .not-first-post {
    width: 100%;
  }
}
section.top_news .container .posts .not-first-post .post {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
}
@media screen and (max-width: 768px) {
  section.top_news .container .posts .not-first-post .post {
    margin-bottom: 15px;
  }
}
section.top_news .container .posts .not-first-post .post .image {
  width: 120px;
  margin-right: 15px;
  align-self: flex-start;
  border-radius: 5px;
  position: relative;
}
section.top_news .container .posts .not-first-post .post .image .image_content {
  padding-bottom: 120px;
  margin-bottom: 0;
}
section.top_news .container .posts .not-first-post .post .text {
  width: calc(100% - 135px);
}
@media screen and (max-width: 768px) {
  section.top_news .container .posts .not-first-post .post .text .detail {
    display: none;
  }
}
section.top_news .container .more {
  width: 200px;
  padding: 10px 0;
  color: #fff;
  text-align: center;
  background: #26AEA7;
  font-size: 1.0714285714rem;
  margin: 8px 3px;
  border-radius: 3px;
}
section.top_news .container .bx-wrapper .bx-prev {
  width: 13px;
  left: -25px;
}
section.top_news .container .bx-wrapper .bx-next {
  width: 13px;
  right: -25px;
}
section.top_gallery {
  padding-bottom: 110px;
}
@media screen and (max-width: 540px) {
  section.top_gallery h2 {
    margin-top: 0;
  }
}
section.top_gallery .absolute-block {
  top: 0;
}
section.top_gallery .message {
  /*background-image: url("../images/gallery_img.jpg");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;*/
  max-width: 1040px;
  width: 100%;
  margin: auto;
  /*& > div {
  	max-width: 380px;
  	width: 100%;
  	line-height: 1.5;
  	margin: auto;
  	padding: 10px;
  	@include media-query(md) {
  		max-width: 405px;
  		position: absolute;
  		left: 0;
  		right: 0;
  		margin: auto;
  	}
  }*/
}
section.top_gallery .message .title {
  font-size: 1.3571428571rem;
  color: #26AEA7;
  margin-bottom: 20px;
}
section.top_gallery .message .instashow {
  margin: 50px auto;
}
section.top_gallery .message #sbi_load {
  margin-top: 40px;
}
section.top_gallery .more {
  width: 200px;
  padding: 10px 0;
  color: #fff;
  text-align: center;
  background: #26AEA7;
  font-size: 1.0714285714rem;
  margin: 12px 8px;
  border-radius: 3px;
}
section.top_gallery .sns_btn {
  width: 200px;
  background: #F197A3;
  padding: 10px 0 10px 34px;
  margin: 12px 8px;
  color: #fff;
  font-size: 1.0714285714rem;
  border-radius: 3px;
  text-decoration: none;
  position: relative;
  box-sizing: border-box;
}
section.top_gallery .sns_btn i {
  font-size: 1.3571428571rem;
  position: absolute;
  top: 9px;
  left: 12px;
}
section.top_gallery .sns_btn:hover {
  opacity: 0.6;
}
section.top_collection {
  background-image: url("../images/top_collection.jpg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  padding: 100px 0;
}
section.top_collection h2 {
  margin-top: 0;
}
section.top_collection h2 .title_jp {
  color: #F19DA9;
}
section.top_collection .items {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: auto;
  position: relative;
  z-index: 1;
}
section.top_collection .items .item {
  background-color: #FFF;
  border: 1px solid rgba(238, 133, 147, 0.2);
  max-width: 340px;
  width: 100%;
  font-weight: bold;
  float: left;
  margin: 0 10px 20px;
  position: relative;
  text-decoration: none;
  box-shadow: 1px 1px 4px rgba(195, 109, 121, 0.2);
  border-radius: 5px;
  box-sizing: border-box;
}
@media screen and (max-width: 540px) {
  section.top_collection .items .item {
    margin: 0 auto 16px;
    display: block;
    float: none;
    max-width: calc(50% - 8px);
  }
}
section.top_collection .items .item .new {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  position: absolute;
  top: -20px;
  left: -20px;
  width: 75px;
  height: 75px;
  border-radius: 37.5px;
  background: #EE8593;
  z-index: 100;
}
@media screen and (max-width: 540px) {
  section.top_collection .items .item .new {
    width: auto;
    height: auto;
    left: 9px;
    top: -12px;
    border-radius: 4px;
  }
}
section.top_collection .items .item .new span {
  color: #fff;
  margin: auto;
  font-family: dnp-shuei-gothic-gin-std, sans-serif;
  font-weight: 500;
  letter-spacing: 3px;
  padding-left: 3px;
  font-weight: bold;
}
@media screen and (max-width: 540px) {
  section.top_collection .items .item .new span {
    font-size: 0.7857142857rem;
    letter-spacing: 2px;
    padding: 6px;
  }
}
section.top_collection .items .item h3 {
  padding: 20px 0;
  font-size: 1.0714285714rem;
  color: #00A098;
  text-align: center;
  letter-spacing: 2px;
  background: #fff;
  border-radius: 5px 5px 0 0;
}
@media screen and (max-width: 540px) {
  section.top_collection .items .item h3 {
    font-size: 0.8571428571rem;
    letter-spacing: 0;
    font-weight: normal;
  }
}
section.top_collection .items .item .image {
  position: relative;
  overflow: hidden;
}
section.top_collection .items .item .image .image_content {
  display: block;
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
}
section.top_collection .items .item .text {
  background: #FFF;
  padding: 20px;
  color: #222;
  line-height: 2;
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: 1px;
  height: auto;
  text-align: center;
  border-radius: 0 0 5px 5px;
}
@media screen and (max-width: 540px) {
  section.top_collection .items .item .text {
    padding: 8px;
    font-size: 0.8928571429rem;
    line-height: 1.5;
    letter-spacing: 0;
  }
}
section.top_collection .more {
  width: 200px;
  padding: 10px 0;
  color: #fff;
  text-align: center;
  background: #EE8593;
  font-size: 1.0714285714rem;
  margin-top: 40px;
  border-radius: 3px;
}
section.top_contents {
  padding: 90px 0 60px;
}
section.top_contents .items {
  margin: auto;
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-pack: center;
  -moz-box-pack: center;
  -webkit-flex-pack: center;
  -moz-flex-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  section.top_contents .items {
    -webkit-box-direction: normal;
    -moz-box-direction: normal;
    -webkit-box-orient: vertical;
    -moz-box-orient: vertical;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    flex-direction: column;
  }
}
section.top_contents .items .item {
  margin: 0 10px 30px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  section.top_contents .items .item {
    margin: 0 auto 30px;
  }
}
section.top_contents .items .item a:first-child {
  display: block;
  margin: auto;
}
section.top_contents .items .item .btn {
  width: 200px;
  padding: 10px 0;
  color: #00A098;
  border: 1px solid #00A098;
  text-align: center;
  font-size: 1.0714285714rem;
  margin-top: 40px;
}
section.top_about {
  background: #E5F5F5;
  padding: 60px 0;
}
section.top_about h2 {
  margin-top: 0;
}
section.top_about .tab .btns {
  text-align: center;
  margin-bottom: 40px;
}
section.top_about .tab .btns .btn {
  color: #00A098;
  padding: 10px 0;
  margin: 5px;
  font-size: 1.0714285714rem;
  width: 200px;
  font-weight: bold;
  background: #fff;
}
@media screen and (max-width: 450px) {
  section.top_about .tab .btns .btn {
    width: auto;
    padding: 10px 15px;
    margin: 5px 0;
  }
}
section.top_about .tab .btns .btn.active {
  background: #BFE7E5;
}
section.top_about .tab .map.frame_wrap {
  height: 600px;
  max-width: 1040px;
  width: 100%;
  margin: auto;
  padding-bottom: 30%;
}
section.top_about .tab .map.frame_wrap .map_canvas {
  height: 600px;
}
section.top_about .tab .shop {
  font-weight: bold;
  text-align: center;
  line-height: 1.7;
  margin-top: 30px;
}
section.top_about .tab .shop .name {
  font-size: 1.4285714286rem;
}
section.top_schedure {
  padding-bottom: 60px;
}
@media screen and (max-width: 450px) {
  section.top_schedure {
    padding-top: 10px;
  }
}
section.top_schedure .container {
  max-width: 1040px;
  width: 100%;
  margin: auto;
}
section.top_schedure .container .calendar.frame_wrap {
  height: 600px;
}
section.top_contact {
  background: #E5F5F5;
  padding: 60px 0;
}
section.top_contact h2 {
  margin-top: 0;
}
section.top_contact .contact_form {
  margin: auto;
  padding: 20px 50px 0;
  max-width: 765px;
  width: 100%;
  font-family: dnp-shuei-gothic-gin-std, sans-serif;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  section.top_contact .contact_form {
    padding-bottom: 30px;
  }
}
@media screen and (max-width: 450px) {
  section.top_contact .contact_form {
    padding: 20px 15px 30px;
  }
}
section.top_contact .contact_form form {
  margin-top: -80px;
  padding-top: 80px;
}
section.top_contact .contact_form table td,
section.top_contact .contact_form table th {
  padding-bottom: 20px;
}
@media screen and (max-width: 450px) {
  section.top_contact .contact_form table td,
  section.top_contact .contact_form table th {
    padding-bottom: 0px;
  }
}
section.top_contact .contact_form table th {
  width: 170px;
  text-align: left;
  position: relative;
  vertical-align: top;
  padding-top: 10px;
}
@media screen and (max-width: 450px) {
  section.top_contact .contact_form table th {
    padding-top: 30px;
    padding-bottom: 8px;
  }
}
section.top_contact .contact_form table .title_naiyo {
  vertical-align: top;
  padding-top: 10px;
}
section.top_contact .contact_form .contact_type .item,
section.top_contact .contact_form .shop .item,
section.top_contact .contact_form .course .item {
  display: inline-block;
  margin-right: 20px;
  margin-bottom: 15px;
}
section.top_contact .contact_form .course .precautionary {
  line-height: 1.6;
  font-size: 0.8571428571rem;
}
section.top_contact .contact_form .course .precautionary strong {
  color: #F197A3;
}
section.top_contact .contact_form .shop-course {
  padding: 15px;
  border: 1px solid #B4E3E1;
  background-color: #B4E3E1;
  border-radius: 5px;
}
section.top_contact .contact_form .shop-course li {
  line-height: 1.5;
}
section.top_contact .contact_form input[type=date],
section.top_contact .contact_form input[type=email],
section.top_contact .contact_form input[type=tel],
section.top_contact .contact_form input[type=text],
section.top_contact .contact_form select,
section.top_contact .contact_form textarea {
  padding: 10px;
  border-radius: 5px;
  border: 1px solid #B4E3E1;
  background: #fff;
  width: 100%;
  margin-bottom: 10px;
  font-size: 1.1428571429rem;
}
section.top_contact .contact_form input[type=checkbox],
section.top_contact .contact_form input[type=radio] {
  display: none;
}
section.top_contact .contact_form input[type=checkbox]:checked + input[type=hidden] + span:before, section.top_contact .contact_form input[type=checkbox]:checked + span:before,
section.top_contact .contact_form input[type=radio]:checked + input[type=hidden] + span:before,
section.top_contact .contact_form input[type=radio]:checked + span:before {
  opacity: 1 !important;
}
section.top_contact .contact_form .radio,
section.top_contact .contact_form .wpcf7-list-item-label {
  box-sizing: border-box;
  position: relative;
  display: inline-block;
  border-radius: 8px;
  vertical-align: middle;
  cursor: pointer;
  padding-left: 25px;
}
section.top_contact .contact_form .radio:after,
section.top_contact .contact_form .wpcf7-list-item-label:after {
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  margin-top: -10px;
  width: 16px;
  height: 16px;
  border: 1px solid #B4E3E1;
  background: #fff;
  content: "";
}
section.top_contact .contact_form .radio:before {
  position: absolute;
  z-index: 10;
  top: 5px;
  left: 5px;
  display: block;
  margin-top: -5px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #00A098;
  content: "";
  opacity: 0;
}
section.top_contact .contact_form .wpcf7-list-item-label:before {
  position: absolute;
  z-index: 10;
  top: 5px;
  left: 5px;
  display: block;
  margin-top: -7px;
  width: 5px;
  height: 9px;
  border-right: 3px solid #00A098;
  border-bottom: 3px solid #00A098;
  content: "";
  opacity: 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
section.top_contact .contact_form .wpcf7-list-item {
  margin: 0;
}
section.top_contact .contact_form .post {
  max-width: 200px;
}
section.top_contact .contact_form .date {
  max-width: 170px;
}
section.top_contact .contact_form .wpcf7-select.time {
  outline: none;
  width: 290px;
  padding: 14px 10px 13px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: #fff url("../images/select_arrow2.jpg") right 50% no-repeat;
  background-size: 43px 47px;
}
section.top_contact .contact_form select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #828c9a;
}
section.top_contact .contact_form .naiyo {
  height: 180px;
}
section.top_contact .contact_form input[type=button],
section.top_contact .contact_form input[type=submit] {
  margin: 0 10px;
  padding: 10px 0;
  background: #33B3AD;
  color: #fff;
  width: 200px;
  font-weight: bold;
  border-radius: 3px;
  font-size: 1.2142857143rem;
}
section.top_contact .contact_form input[type=button]:hover,
section.top_contact .contact_form input[type=submit]:hover {
  opacity: 0.8;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  section.top_contact .contact_form input[type=button],
  section.top_contact .contact_form input[type=submit] {
    margin: 0 auto 20px;
    display: block;
  }
}
section.top_contact .contact_form .require {
  display: inline-block;
  padding: 5px;
  background: #F4BEC0;
  color: #fff;
  font-size: 0.7142857143rem;
  position: absolute;
  top: 7px;
  left: -40px;
}
@media screen and (max-width: 450px) {
  section.top_contact .contact_form .require {
    top: 0px;
    left: 0px;
  }
}
section.top_contact .contact_form .wpcf7 .ajax-loader {
  background-size: 16px 16px;
}
section.top_qa {
  padding-bottom: 60px;
}
section.top_qa .qa {
  width: 100%;
  max-width: 740px;
  margin: auto;
  position: relative;
  z-index: 1;
}
section.top_qa .qa .item {
  font-weight: bold;
}
section.top_qa .qa .item .answer,
section.top_qa .qa .item .question {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
}
section.top_qa .qa .item .answer .mark,
section.top_qa .qa .item .question .mark {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
}
section.top_qa .qa .item .answer .mark span,
section.top_qa .qa .item .question .mark span {
  margin: auto;
}
section.top_qa .qa .item .answer .text,
section.top_qa .qa .item .question .text {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  padding-left: 15px;
  line-height: 1.8;
  font-size: 1.2142857143rem;
  font-weight: normal;
}
@media screen and (max-width: 540px) {
  section.top_qa .qa .item .answer .text,
  section.top_qa .qa .item .question .text {
    font-size: 1.0714285714rem;
  }
}
section.top_qa .qa .item .question {
  margin-bottom: 18px;
}
section.top_qa .qa .item .question:hover {
  cursor: pointer;
  opacity: 0.8;
}
section.top_qa .qa .item .question .mark {
  width: 65px;
  height: 65px;
  background: #D9F1F0;
  border-radius: 33px;
  font-size: 2.8571428571rem;
}
@media screen and (max-width: 890px) {
  section.top_qa .qa .item .question .mark {
    width: 40px;
    height: 40px;
    border-radius: 20px;
    font-size: 2.0714285714rem;
  }
}
section.top_qa .qa .item .question .mark span {
  color: #595757;
}
section.top_qa .qa .item .answer_wrap {
  overflow: hidden;
}
section.top_qa .qa .item .answer {
  padding: 20px;
  background: #FCEFEF;
  margin-bottom: 40px;
  font-size: 1.0714285714rem;
}
@media screen and (max-width: 768px) {
  section.top_qa .qa .item .answer {
    padding: 15px;
  }
}
@media screen and (max-width: 540px) {
  section.top_qa .qa .item .answer {
    font-size: 1rem;
  }
}
section.top_qa .qa .item .answer .mark {
  width: 45px;
  height: 45px;
  background: #F5B6BE;
  border-radius: 23px;
  font-size: 2rem;
}
@media screen and (max-width: 890px) {
  section.top_qa .qa .item .answer .mark {
    width: 30px;
    height: 30px;
    border-radius: 15px;
    font-size: 1.7142857143rem;
  }
}
section.top_qa .qa .item .answer .mark span {
  color: #fff;
}
section.service_item {
  padding: 0;
}
section.service_item:not(.start) {
  margin-top: 50px;
}
section.service_item .h_wrap {
  padding: 0 10px;
}
section.service_item h3 {
  padding: 18px 0;
  text-align: center;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 2px;
  max-width: 800px;
  margin: 0 auto 40px;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  section.service_item h3 {
    font-size: 1.5714285714rem;
  }
}
section.service_item h3.blue {
  border-bottom: 1px solid #33B3AD;
  color: #33B3AD;
}
section.service_item h3.red {
  border-bottom: 1px solid #F19DA9;
  color: #F19DA9;
}
section.service_item .container {
  position: relative;
  padding: 70px 10px;
}
section.service_item .container:after {
  bottom: 100%;
  left: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
  border-color: rgba(136, 183, 213, 0);
  border-width: 15px;
  margin-left: -15px;
}
section.service_item .container.blue {
  background: #E5F5F5;
}
section.service_item .container.blue:after {
  border-bottom-color: #E5F5F5;
}
section.service_item .container.red {
  background: #FDEFF1;
}
section.service_item .container.red:after {
  border-bottom-color: #FDEFF1;
}
section.service_item .container .message {
  font-size: 1.1428571429rem;
  text-align: center;
  line-height: 1.7;
}
@media screen and (max-width: 768px) {
  section.service_item .container .message {
    font-size: 1rem;
  }
}
section.service_item .steps {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-pack: justify;
  -moz-box-pack: justify;
  -webkit-flex-pack: justify;
  -moz-flex-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
  max-width: 960px;
  margin: auto;
}
@media screen and (max-width: 990px) {
  section.service_item .steps {
    -webkit-box-direction: normal;
    -moz-box-direction: normal;
    -webkit-box-orient: vertical;
    -moz-box-orient: vertical;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    flex-direction: column;
  }
}
section.service_item .steps.col1 .step {
  max-width: 960px;
}
section.service_item .steps.col2 .step {
  max-width: 470px;
}
section.service_item .steps.col3 .step {
  max-width: 310px;
}
section.service_item .steps .step {
  box-shadow: 0 0 5px rgba(51, 179, 173, 0.3);
  border-radius: 3px;
  padding: 15px;
  background: #fff;
  width: 100%;
  margin: 0 auto 20px;
}
@media screen and (max-width: 990px) {
  section.service_item .steps .step {
    max-width: 470px !important;
  }
}
section.service_item .steps .step .title {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
}
section.service_item .steps .step .title span {
  color: #33B3AD;
  font-size: 1.7857142857rem;
  font-weight: bold;
  vertical-align: top;
  margin-left: 5px;
  letter-spacing: 1px;
  line-height: 1.2;
}
section.service_item .steps .step .title span span {
  font-size: 1.2857142857rem;
  margin: 0;
  vertical-align: bottom;
}
section.service_item .steps .step hr {
  border: solid #33B3AD;
  border-width: 2px 0 0 0;
  margin: 10px 0;
}
section.service_item .steps .step .sub_title {
  margin-bottom: 10px;
  text-align: center;
  letter-spacing: 2px;
}
section.service_item .steps .step .sub_title span {
  color: #33B3AD;
  font-size: 1.7857142857rem;
  font-weight: bold;
}
section.service_item .steps .step .text {
  line-height: 1.5;
  margin-bottom: 10px;
}
section.service_item .steps .step .text:after {
  content: "";
  clear: both;
  display: block;
}
section.service_item .steps .step .text .f_img {
  float: left;
  margin-right: 15px;
}
@media screen and (max-width: 450px) {
  section.service_item .steps .step .text .f_img {
    display: block;
    margin: 0 auto 10px;
    float: none;
  }
}
section.service_item .steps .step .btn {
  padding: 10px 0;
  text-align: center;
  background: #F19DA9;
  color: #fff;
  width: 100%;
  font-family: dnp-shuei-gothic-gin-std, sans-serif;
  font-weight: 500;
}
section.service_item .steps .step .processes {
  max-width: 780px;
  margin: auto;
}
section.service_item .steps .step .processes:after {
  content: "";
  clear: both;
  display: block;
}
section.service_item .steps .step .processes .process {
  position: relative;
  float: left;
  max-width: 260px;
  padding: 20px;
  text-align: right;
}
section.service_item .steps .step .processes .process img:first-child {
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 450px) {
  section.service_item .steps .step .processes .process img:first-child {
    top: 30px;
    width: 40px;
    height: 40px;
  }
}
section.service_item .steps .step .processes .process p {
  margin-top: 5px;
  text-align: left;
  line-height: 1.5;
}
section.service_item .steps .step .red {
  color: #F197A3;
}
section.service_item.service_item--feering .btn {
  padding: 10px 0;
  text-align: center;
  background: #33B3AD;
  color: #fff;
  width: 200px;
  letter-spacing: 1px;
  font-family: dnp-shuei-gothic-gin-std, sans-serif;
  font-weight: 500;
}
section.reason_item .content {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-pack: center;
  -moz-box-pack: center;
  -webkit-flex-pack: center;
  -moz-flex-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
section.reason_item .content .content_img {
  width: 50%;
}
@media screen and (max-width: 768px) {
  section.reason_item .content .content_img {
    width: 100%;
  }
}
section.reason_item .content .content_img img {
  width: 100%;
  height: auto;
}
section.reason_item .content .content_img .bx-wrapper .bx-prev {
  width: 23px;
  left: -30px;
}
section.reason_item .content .content_img .bx-wrapper .bx-next {
  width: 23px;
  right: -30px;
}
section.reason_item .content .content_img .slide img {
  margin: 30px auto;
}
section.reason_item .content .content_img .slide p {
  text-align: center;
  font-size: 0.8571428571rem;
  line-height: 1.3;
}
section.reason_item .content .content_text {
  width: 50%;
}
@media screen and (max-width: 768px) {
  section.reason_item .content .content_text {
    width: 100%;
  }
  section.reason_item .content .content_text .title_h4 {
    margin-top: 4rem;
  }
}
section.reason_item .content .content_text .message {
  text-align: left;
  margin: 20px;
}
section.reason_item .content .content_text .message .story-step {
  background: #B4E3E1;
  color: #2A938E;
  display: inline-block;
  letter-spacing: 6px;
  font-size: 1.2857142857rem;
  padding: 0 1rem 0 2rem;
  margin-left: -40px;
  margin-bottom: 15px;
}
section.reason_item .content .content_text .btn {
  margin: 0 20px;
  padding: 10px 15px 10px 26px;
  text-align: center;
  background: #33B3AD;
  color: #fff;
  display: inline-block;
  font-family: dnp-shuei-gothic-gin-std, sans-serif;
  font-weight: 500;
}
section.reason_item:nth-child(odd) .content {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}
section.reason_item:nth-child(odd) .container {
  padding: 0 10px 70px;
}
section.reason_item_col2 {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
section.reason_item_col2 .container {
  width: 33.333%;
}
@media screen and (max-width: 768px) {
  section.reason_item_col2 .container {
    width: 50%;
  }
}
@media screen and (max-width: 400px) {
  section.reason_item_col2 .container {
    width: 100%;
  }
}
section.reason_item_col2 .container .content {
  position: relative;
  margin-left: 10px;
  margin-right: 10px;
}
section.reason_item_col2 .container .content .content_text .message p {
  text-align: justify;
}
section.reason_item_col2 .container .content .content_text .message p.story-step {
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.8);
  color: #FFF;
  display: inline-block;
  letter-spacing: 4px;
  font-size: 1rem;
  padding: 0.1rem 0.5rem;
}
section.reason_item_col2 .container .content .content_text .message .title_h5 {
  margin-top: 1rem;
}
section.reason_item_col2 .container .content .content_img img {
  width: 100%;
  height: auto;
}
section.reason_detail_item .container.blue::after {
  border-bottom-color: transparent !important;
}
section.reason_detail_item .content {
  max-width: 1020px;
  margin: 0 auto;
}
section.reason_detail_item .content .content_img img {
  max-width: 100%;
  height: auto;
}
section.reason_detail_item .content .content_img .bx-wrapper .bx-prev {
  width: 23px;
  left: -30px;
}
section.reason_detail_item .content .content_img .bx-wrapper .bx-next {
  width: 23px;
  right: -30px;
}
section.reason_detail_item .content .content_img .slide .slide-img {
  margin-left: 15px;
  margin-right: 15px;
}
section.reason_detail_item .content .content_img .slide .slide-img img {
  margin: 30px auto;
}
section.reason_detail_item .content .content_img .slide p {
  text-align: center;
  font-size: 0.8571428571rem;
  line-height: 1.3;
}
section.reason_detail_item .content .content_text .message {
  text-align: left;
  margin: 20px;
}
section.reason_detail_item .content .content_text .flexright {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}
section.reason_detail_item .content .content_text .flexcenter {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-pack: center;
  -moz-box-pack: center;
  -webkit-flex-pack: center;
  -moz-flex-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  justify-content: center;
}
section.reason_detail_item .content .item_list {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  font-size: 1rem;
  line-height: 1.7;
  text-align: justify;
  margin-top: 60px;
}
section.reason_detail_item .content .item_list .item {
  width: calc(50% - 30px);
  margin-left: 15px;
  margin-right: 15px;
  margin-bottom: 60px;
}
@media screen and (max-width: 890px) {
  section.reason_detail_item .content .item_list .item {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
}
section.reason_detail_item .content .item_list .item p {
  font-size: 1rem;
  line-height: 1.7;
  text-align: justify;
}
section.reason_detail_item .content .item_list .item p.text_box_80 {
  min-height: 80px;
}
section.reason_detail_item .content .item_list .item p.txtR {
  text-align: right;
  margin-right: 10px;
  margin-bottom: 30px;
}
section.reason_detail_item .content .item_list .item p.txtC {
  text-align: center;
}
section.reason_detail_item .content .item_list .item .item_description {
  margin-left: 20px;
  margin-right: 40px;
  width: calc(100% - 260px);
  font-size: 1rem;
  line-height: 1.7;
  text-align: justify;
}
section.reason_detail_item .content .item_list .item .item_description .item_names {
  list-style: circle;
  font-weight: bold;
  padding-top: 5px;
  padding-left: 20px;
  margin-bottom: 15px;
  border-top: 1px dashed #8FD5D2;
}
section.reason_detail_item .content .item_list .item .item_description .item_names li {
  padding-bottom: 5px;
  margin-bottom: 5px;
  border-bottom: 1px dashed #8FD5D2;
}
@media screen and (max-width: 890px) {
  section.reason_detail_item .content .item_list .item .item_description {
    margin-right: 0px;
  }
}
@media screen and (max-width: 768px) {
  section.reason_detail_item .content .item_list .item .item_description {
    width: calc(100% - 170px);
  }
}
@media screen and (max-width: 400px) {
  section.reason_detail_item .content .item_list .item .item_description {
    width: 100%;
    margin-left: 0px;
  }
}
section.reason_detail_item .content .item_list .text_margin10 {
  margin: 0 10px;
}
section.reason_detail_item .content .item_list_col2 {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 60px;
}
section.reason_detail_item .content .item_list_col2 .item {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 50%;
  margin-bottom: 60px;
}
@media screen and (max-width: 890px) {
  section.reason_detail_item .content .item_list_col2 .item {
    width: 100%;
  }
}
section.reason_detail_item .content .item_list_col2 .item .item_img {
  width: 200px;
}
@media screen and (max-width: 768px) {
  section.reason_detail_item .content .item_list_col2 .item .item_img {
    width: 150px;
  }
}
@media screen and (max-width: 400px) {
  section.reason_detail_item .content .item_list_col2 .item .item_img {
    width: 100%;
    margin-bottom: 15px;
  }
}
section.reason_detail_item .content .item_list_col2 .item .item_img img {
  width: 100%;
  height: auto;
}
section.reason_detail_item .content .item_list_col2 .item .item_description {
  margin-left: 20px;
  margin-right: 40px;
  width: calc(100% - 260px);
  font-size: 1rem;
  line-height: 1.7;
  text-align: justify;
}
section.reason_detail_item .content .item_list_col2 .item .item_description .item_names {
  list-style: circle;
  font-weight: bold;
  padding-top: 5px;
  padding-left: 20px;
  margin-bottom: 15px;
  border-top: 1px dashed #8FD5D2;
}
section.reason_detail_item .content .item_list_col2 .item .item_description .item_names li {
  padding-bottom: 5px;
  margin-bottom: 5px;
  border-bottom: 1px dashed #8FD5D2;
}
@media screen and (max-width: 890px) {
  section.reason_detail_item .content .item_list_col2 .item .item_description {
    margin-right: 0px;
  }
}
@media screen and (max-width: 768px) {
  section.reason_detail_item .content .item_list_col2 .item .item_description {
    width: calc(100% - 170px);
  }
}
@media screen and (max-width: 400px) {
  section.reason_detail_item .content .item_list_col2 .item .item_description {
    width: 100%;
    margin-left: 0px;
  }
}
@media screen and (max-width: 890px) {
  section.reason_detail_item .content .item_list_col2.item_list_col2-sp .item {
    width: 50%;
  }
}
section.reason_detail_item .content .item_list_col2.item_list_col2-sp .item .item_img {
  width: 100%;
  margin: 0;
}
@media screen and (max-width: 890px) {
  section.reason_detail_item .content .item_list_col2.item_list_col2-sp .item .item_img {
    width: calc(100% - 30px);
    margin: 0 15px;
  }
}
section.reason_detail_item .content .item_list_col3 {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -moz-box-pack: center;
  -webkit-flex-pack: center;
  -moz-flex-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  justify-content: center;
}
section.reason_detail_item .content .item_list_col3 .item {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: calc(33.3333333333% - 30px);
}
@media screen and (max-width: 890px) {
  section.reason_detail_item .content .item_list_col3 .item {
    width: calc(33.3333333333% - 20px);
    margin-left: 10px;
    margin-right: 10px;
  }
}
@media screen and (max-width: 450px) {
  section.reason_detail_item .content .item_list_col3 .item {
    width: calc(50% - 20px);
  }
}
section.reason_detail_item .content .item_list_col3 .item .item_img {
  width: 100%;
  text-align: center;
}
section.reason_detail_item .content .item_list_col3 .item .item_img img {
  width: 100%;
  height: auto;
  margin: 0 auto 15px;
}
section.reason_detail_item .content .item_list_col7 {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -moz-box-pack: center;
  -webkit-flex-pack: center;
  -moz-flex-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  justify-content: center;
}
section.reason_detail_item .content .item_list_col7 .item {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 120px;
  margin: 30px 5px;
}
@media screen and (max-width: 450px) {
  section.reason_detail_item .content .item_list_col7 .item {
    width: calc(33.3333333333% - 10px);
  }
}
section.reason_detail_item .content .item_list_col7 .item .item_img {
  width: 100%;
  text-align: center;
}
section.reason_detail_item .content .item_list_col7 .item .item_img img {
  width: 80px;
  height: auto;
  margin: 0 auto 15px;
}
@media screen and (max-width: 400px) {
  section.reason_detail_item .content .item_list_col7 .item .item_img img {
    width: 60px;
    margin: 0 auto;
  }
}
section.reason_detail_item .content .item_list_col7 .item .item_img p {
  line-height: 1.8;
}
@media screen and (max-width: 340px) {
  section.reason_detail_item .content .item_list_col7 .item .item_img p {
    font-size: 0.8571428571rem;
  }
}
section.reason_detail_item .content .item_list_col7 .item .item_img p .txt_primary {
  color: #8FD5D2;
  font-family: dnp-shuei-gothic-gin-std, sans-serif;
  font-weight: 500;
}
section.reason_detail_item .content .item_list_col7 .item .item_img p .price {
  color: #235655;
  font-family: dnp-shuei-gothic-gin-std, sans-serif;
  font-weight: 500;
}
section.reason_detail_item .content .item_img_before_after {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
}
section.reason_detail_item .content .item_img_before_after img {
  margin: 10px;
}
section.reason_detail_item .content .item_img_before_after img.item_img_before, section.reason_detail_item .content .item_img_before_after img.item_img_after {
  width: calc(50% - 42px);
  height: auto;
}
section.reason_detail_item .content .item_img_large img {
  margin: 10px;
  width: calc(100% - 20px);
}
section.reason_detail_item:nth-child(odd) .container {
  padding: 0 10px 70px;
}
section#reason-etc {
  overflow: hidden;
  width: 100%;
}
section#reason-etc.reason_item .content .bxslider .bx-wrapper .bx-viewport .content_img {
  width: calc(100% - 30px);
  margin-left: 15px;
  margin-right: 15px;
}
section#reason-etc.reason_item .content .bxslider .bx-wrapper .bx-viewport .content_text {
  width: 100%;
}
section#reason-etc.reason_item .content .bxslider .bx-wrapper .bx-viewport .content_text a {
  text-decoration: none;
  color: #000;
}
section#reason-etc.reason_item .content .bxslider .bx-wrapper .bx-viewport .content_text a h4 {
  text-align: center;
  margin-top: 20px;
  margin-bottom: 10px;
  color: #33B3AD;
  letter-spacing: 2px;
  font-family: dnp-shuei-gothic-gin-std, sans-serif;
  font-weight: 500;
}
section#reason-etc.reason_item .content .bxslider .bx-wrapper .bx-viewport .content_text a .message {
  text-align: center;
  margin: 20px 10px 10px;
  font-weight: bold;
  min-height: 54px;
}
section#reason-etc.reason_item .content .bxslider .bx-wrapper .bx-viewport .content_text a .message small {
  font-weight: normal;
}
section#reason-etc.reason_item .content .bxslider .bx-wrapper .bx-viewport .content_text a.btn {
  color: #fff;
}
@media screen and (max-width: 540px) {
  section#reason-etc.reason_item .content .bxslider .bx-wrapper .bx-controls .bx-controls-direction .bx-prev {
    left: -15px;
  }
  section#reason-etc.reason_item .content .bxslider .bx-wrapper .bx-controls .bx-controls-direction .bx-next {
    right: -15px;
  }
  section#reason-etc.reason_item .content .bxslider .bx-wrapper .bx-controls .bx-controls-direction .bx-next img {
    margin-left: 17px;
  }
  section#reason-etc.reason_item .content .bxslider .bx-wrapper .bx-controls .bx-controls-direction .bx-prev img,
  section#reason-etc.reason_item .content .bxslider .bx-wrapper .bx-controls .bx-controls-direction .bx-next img {
    width: 15px;
    height: 34px;
  }
}
section .container .content.about_staff {
  margin: 0 auto 100px;
  max-width: 1040px;
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
section .container .content.about_staff .staff {
  width: calc(50% - 120px);
  max-width: 400px;
  margin: 60px;
}
@media screen and (max-width: 890px) {
  section .container .content.about_staff .staff {
    width: calc(50% - 60px);
    margin: 60px 30px;
  }
}
@media screen and (max-width: 540px) {
  section .container .content.about_staff .staff {
    width: calc(100% - 60px);
    margin: 60px 30px;
  }
}
@media screen and (max-width: 400px) {
  section .container .content.about_staff .staff {
    width: calc(100% - 30px);
    margin: 60px 15px;
  }
}
section .container .content.about_staff .staff .content_img {
  margin: 0 auto;
  max-width: 400px;
}
section .container .content.about_staff .staff h2 {
  margin: 30px 0 50px;
  font-family: dnp-shuei-gothic-gin-std, sans-serif;
  font-weight: 500;
  letter-spacing: 4px;
  font-size: 1.3571428571rem;
}
section .container .content.about_staff .staff .staff_title {
  position: relative;
}
section .container .content.about_staff .staff .staff_title h3 {
  font-size: 1rem;
  margin: 20px 0;
}
section .container .content.about_staff .staff .staff_title h4 {
  color: #33B3AD;
  margin: 20px 0 40px 40px;
  font-size: 1.2857142857rem;
  letter-spacing: 2px;
}
section .container .content.about_staff .staff .staff_title::after {
  content: "";
  position: absolute;
  top: 7px;
  left: 20px;
  z-index: -1;
  width: 100%;
  height: calc(100% + 15px);
  background-color: rgba(51, 179, 173, 0.1);
}
section .container .content.about_staff .staff h5 {
  color: #FFF;
  background-color: #33B3AD;
  margin: 20px 0;
  padding: 5px 10px;
  font-size: 0.8571428571rem;
  letter-spacing: 3px;
  font-weight: normal;
}
section .container .content.about_staff .staff p {
  font-size: 1rem;
  line-height: 1.8;
  margin-bottom: 40px;
}
section .container .content.about_staff .staff:nth-child(2) {
  margin-top: 120px;
}
@media screen and (max-width: 540px) {
  section .container .content.about_staff .staff:nth-child(2) {
    margin-top: 60px;
  }
}
section.service_item.price .items {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-box-pack: center;
  -moz-box-pack: center;
  -webkit-flex-pack: center;
  -moz-flex-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  justify-content: center;
  margin: 45px 0;
}
@media screen and (max-width: 890px) {
  section.service_item.price .items {
    -webkit-box-direction: normal;
    -moz-box-direction: normal;
    -webkit-box-orient: vertical;
    -moz-box-orient: vertical;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    flex-direction: column;
  }
}
section.service_item.price .items .item {
  margin: 0 5px 10px;
}
section.service_item.price .btn-l {
  padding: 15px 0;
  text-align: center;
  background: #33B3AD;
  max-width: 415px;
  width: 100%;
  color: #fff;
  font-size: 1.6428571429rem;
}
section.service_item.price .btn {
  margin: 3px;
  padding: 10px 0;
  text-align: center;
  background: #33B3AD;
  width: 200px;
  color: #fff;
  font-size: 1rem;
}
section.service_item.qa .bxslider {
  max-width: 850px;
  margin: auto;
  box-shadow: 0 0 5px rgba(51, 179, 173, 0.3);
  border-radius: 3px;
  background: #fff;
  padding: 15px 20px;
}
@media screen and (max-width: 990px) {
  section.service_item.qa .bxslider {
    padding: 15px 60px;
  }
}
@media screen and (max-width: 450px) {
  section.service_item.qa .bxslider {
    padding: 15px;
  }
}
section.service_item.qa .bx-wrapper .bx-prev {
  width: 56px;
  top: 37%;
  left: -90px;
}
@media screen and (max-width: 990px) {
  section.service_item.qa .bx-wrapper .bx-prev {
    top: 47%;
    left: -55px;
    width: 40px;
    height: 40px;
  }
  section.service_item.qa .bx-wrapper .bx-prev img {
    width: 40px;
    height: 40px;
  }
}
@media screen and (max-width: 450px) {
  section.service_item.qa .bx-wrapper .bx-prev {
    left: -25px;
  }
}
section.service_item.qa .bx-wrapper .bx-next {
  width: 56px;
  top: 37%;
  right: -90px;
}
@media screen and (max-width: 990px) {
  section.service_item.qa .bx-wrapper .bx-next {
    top: 47%;
    right: -55px;
    width: 40px;
    height: 40px;
  }
  section.service_item.qa .bx-wrapper .bx-next img {
    width: 40px;
    height: 40px;
  }
}
@media screen and (max-width: 450px) {
  section.service_item.qa .bx-wrapper .bx-next {
    right: -15px;
  }
}
section.service_item.qa .slide .mark {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
}
section.service_item.qa .slide .mark span {
  margin: auto;
}
section.service_item.qa .slide .text {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  padding-left: 15px;
  line-height: 1.5;
}
section.service_item.qa .slide .question {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
}
section.service_item.qa .slide .question .mark {
  width: 55px;
  height: 55px;
  background: #D9F1F0;
  border-radius: 28px;
  font-size: 2.5rem;
}
@media screen and (max-width: 990px) {
  section.service_item.qa .slide .question .mark {
    width: 40px;
    height: 40px;
    font-size: 2.0714285714rem;
  }
}
@media screen and (max-width: 450px) {
  section.service_item.qa .slide .question .mark {
    width: 30px;
    height: 30px;
    font-size: 1.7142857143rem;
  }
}
section.service_item.qa .slide .question .mark span {
  color: #595757;
}
section.service_item.qa .slide .question .text {
  font-size: 1.7857142857rem;
}
@media screen and (max-width: 990px) {
  section.service_item.qa .slide .question .text {
    font-size: 1.5714285714rem;
  }
}
@media screen and (max-width: 450px) {
  section.service_item.qa .slide .question .text {
    font-size: 1.2857142857rem;
  }
}
section.service_item.qa .slide hr {
  border: solid #33B3AD;
  border-width: 1px 0 0 0;
  margin: 10px 0;
}
section.service_item.qa .slide .answer {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
}
section.service_item.qa .slide .answer .mark {
  width: 55px;
  height: 55px;
  background: #F5B6BE;
  border-radius: 28px;
  font-size: 2.5rem;
}
@media screen and (max-width: 990px) {
  section.service_item.qa .slide .answer .mark {
    width: 40px;
    height: 40px;
    font-size: 2.0714285714rem;
  }
}
@media screen and (max-width: 450px) {
  section.service_item.qa .slide .answer .mark {
    width: 30px;
    height: 30px;
    font-size: 1.7142857143rem;
  }
}
section.service_item.qa .slide .answer .mark span {
  color: #fff;
}
section.service_item.bridal .content {
  max-width: 740px;
  width: 100%;
  margin: auto;
  padding: 0 15px;
}
section.service_item.bridal .content .sub_title {
  font-size: 2.1428571429rem;
  color: #EE8593;
  text-align: center;
  line-height: 1.3;
}
section.service_item.bridal .content hr {
  border: solid #EE8593;
  border-width: 1px 0 0 0;
  margin: 15px 0;
}
section.service_item.bridal .content .message {
  font-size: 1rem;
  line-height: 2.2;
  text-align: left;
}
@media screen and (max-width: 768px) {
  section.service_item.bridal .content .message {
    font-size: 0.8571428571rem;
  }
}
section.service_item.bridal .content .bx-wrapper .bx-prev {
  width: 23px;
  left: -30px;
}
section.service_item.bridal .content .bx-wrapper .bx-next {
  width: 23px;
  right: -30px;
}
section.service_item.bridal .content .slide img {
  margin: 30px auto;
}
section.service_item.bridal .content .slide p {
  text-align: center;
  font-size: 0.8571428571rem;
  line-height: 1.3;
}
section.service_item.tiara .description {
  max-width: 890px;
  width: 100%;
  margin: 0 auto 20px;
  border: 2px solid #00A098;
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
}
@media screen and (max-width: 890px) {
  section.service_item.tiara .description {
    -webkit-box-direction: normal;
    -moz-box-direction: normal;
    -webkit-box-orient: vertical;
    -moz-box-orient: vertical;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    flex-direction: column;
  }
}
section.service_item.tiara .description p {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  line-height: 1.5;
  padding: 25px;
}
section.service_item.tiara .description p:first-child {
  font-size: 1.7857142857rem;
  color: #00A098;
  text-align: center;
}
section.service_item.tiara .description p:last-child {
  line-height: 2;
}
section.service_item.tiara .bx-wrapper .bx-prev {
  width: 23px;
  left: -30px;
}
section.service_item.tiara .bx-wrapper .bx-next {
  width: 23px;
  right: -30px;
}
section.service_item.tiara .slide img {
  margin: 30px auto;
}
section.service_item.tiara .slide p {
  text-align: center;
  font-size: 0.8571428571rem;
  line-height: 1.3;
}
section.archives .container, section.single .container {
  position: relative;
  z-index: 1;
  padding: 70px 10px;
  width: 100%;
}
@media screen and (max-width: 890px) {
  section.archives .container, section.single .container {
    padding: 40px 10px;
  }
}
@media screen and (max-width: 450px) {
  section.archives .container, section.single .container {
    padding: 40px 0;
  }
}
section.archives .container.blue, section.single .container.blue {
  background: #E5F5F5;
}
section.archives .container .content,
section.archives .container .paging, section.single .container .content,
section.single .container .paging {
  max-width: 790px;
  width: 100%;
  margin: auto;
}
section.archives .date, section.single .date {
  margin-right: 15px;
  font-size: 0.8571428571rem;
  letter-spacing: 2px;
  position: relative;
  top: 2px;
}
section.archives .new, section.single .new {
  display: inline-block;
  padding: 5px 0;
  text-align: center;
  background: #EE8593;
  font-family: dnp-shuei-gothic-gin-std, sans-serif;
  font-weight: 500;
  color: #fff;
  font-weight: bold;
  font-size: 0.8571428571rem;
  width: 110px;
  text-align: center;
}
section.archives .title, section.single .title {
  font-size: 1.3571428571rem;
  line-height: 1.5;
  letter-spacing: 1px;
}
section.archives .title a, section.single .title a {
  color: #000;
  text-decoration: none;
}
section.archives .title a:hover, section.single .title a:hover {
  text-decoration: underline;
}
section.archives .excerpt, section.single .excerpt {
  margin-top: 15px;
  line-height: 1.5;
}
section.archives .excerpt a, section.single .excerpt a {
  text-decoration: none;
  color: #000;
}
section.archives .content, section.single .content {
  padding-bottom: 20px;
}
section.archives .content.title, section.single .content.title {
  margin: 20px 0;
}
section.archives .items .item, section.single .items .item {
  padding: 20px;
  box-shadow: 0 0 5px rgba(51, 179, 173, 0.3);
  border-radius: 3px;
  max-width: 900px;
  width: 100%;
  margin: 0 auto 30px;
  background: #fff;
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
}
@media screen and (max-width: 890px) {
  section.archives .items .item, section.single .items .item {
    -webkit-box-direction: normal;
    -moz-box-direction: normal;
    -webkit-box-orient: vertical;
    -moz-box-orient: vertical;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    flex-direction: column;
  }
}
section.archives .items .item .text, section.single .items .item .text {
  margin: 0 20px;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}
@media screen and (max-width: 890px) {
  section.archives .items .item .text, section.single .items .item .text {
    margin-bottom: 30px;
  }
}
section.archives .items .item .text hr, section.single .items .item .text hr {
  border: solid #EEE;
  border-width: 1px 0 0 0;
  margin: 15px 0;
}
section.archives .items .item .image, section.single .items .item .image {
  margin: 0 10px;
  max-width: 440px;
  width: 100%;
  margin: auto;
  position: relative;
  overflow: hidden;
}
section.archives .items .item .image .image_content, section.single .items .item .image .image_content {
  display: block;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  min-height: 200px;
}
@media screen and (max-width: 450px) {
  section.archives .items .item .image .image_content, section.single .items .item .image .image_content {
    min-height: 140px;
  }
}
@media screen and (max-width: 400px) {
  section.archives .items .item .image .image_content, section.single .items .item .image .image_content {
    min-height: 190px;
  }
}
section.archives .courses, section.single .courses {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -moz-box-pack: justify;
  -webkit-flex-pack: justify;
  -moz-flex-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
  max-width: 1080px;
  margin: 0 auto;
  counter-reset: number;
}
section.archives .courses .course, section.single .courses .course {
  padding: 0 0 20px;
  box-shadow: 0 0 5px rgba(51, 179, 173, 0.3);
  border-radius: 3px;
  overflow: hidden;
  position: relative;
  z-index: 1;
  width: calc((100% - 60px) / 2);
  margin: 0 15px 30px;
  background: #fff;
}
@media screen and (max-width: 450px) {
  section.archives .courses .course, section.single .courses .course {
    width: 100%;
  }
}
section.archives .courses .course::before, section.single .courses .course::before {
  counter-increment: number;
  content: counter(number);
  padding: 10px 12px 10px 8px;
  color: #FFF;
  background-color: #4CBCB7;
  border-radius: 50%;
  position: absolute;
  top: 15px;
  left: 15px;
  z-index: 1;
  width: 20px;
  height: 20px;
  line-height: 20px;
  text-align: center;
  font-size: 1.2rem;
  font-style: italic;
  box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.5), 0 0 12px #FFF, 0 0 3px #FFF inset;
}
@media screen and (max-width: 450px) {
  section.archives .courses .course::before, section.single .courses .course::before {
    display: none;
  }
}
section.archives .courses .course .image, section.single .courses .course .image {
  position: relative;
  overflow: hidden;
  width: 100%;
}
section.archives .courses .course .image .image_content, section.single .courses .course .image .image_content {
  display: block;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  width: 100%;
  height: 100%;
  padding-bottom: 62.5%;
  margin-bottom: 20px;
}
section.archives .courses .course .text, section.single .courses .course .text {
  margin: 0 20px;
}
section.archives .courses .course .text .title, section.single .courses .course .text .title {
  margin-bottom: 25px;
  padding-bottom: 15px;
  font-weight: bold;
  text-align: center;
  border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}
section.archives .courses .course .text .course-time, section.single .courses .course .text .course-time {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
section.archives .courses .course .text .course-time__pay, section.archives .courses .course .text .course-time__work, section.single .courses .course .text .course-time__pay, section.single .courses .course .text .course-time__work {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  font-family: sans-serif;
  font-size: 1.0714285714rem;
  margin-bottom: 10px;
}
section.archives .courses .course .text .course-time__pay span, section.archives .courses .course .text .course-time__work span, section.single .courses .course .text .course-time__pay span, section.single .courses .course .text .course-time__work span {
  background-color: rgba(0, 0, 0, 0.8);
  color: #FFF;
  display: inline-block;
  margin-right: 6px;
  padding: 5px 7px;
  letter-spacing: 0.1rem;
  text-align: center;
  font-size: 0.9285714286rem;
  border-radius: 4px;
}
section.archives .courses .course .text .course-time__pay, section.single .courses .course .text .course-time__pay {
  margin-right: 25px;
}
section.archives .detail, section.single .detail {
  line-height: 1.5;
}
section.archives .detail .wp-caption, section.single .detail .wp-caption {
  max-width: 100% !important;
  margin-top: 20px;
  margin-bottom: 30px;
}
section.archives .detail img, section.single .detail img {
  max-width: 100%;
  height: auto;
  margin: 10px 0;
}
section.archives .paging .archive {
  margin-top: 40px;
  text-align: center;
}
section.archives .paging .archive a,
section.archives .paging .archive span {
  display: inline-block;
  margin: 0 2px;
  padding: 10px 0;
  width: 32px;
  text-align: center;
  font-size: 0.88rem;
  color: #00A098;
  border-radius: 17px;
}
section.archives .paging .archive a {
  background: #fff;
  color: #00A098;
  text-decoration: none;
}
section.archives .paging .archive .current {
  background: #00A098;
  color: #fff;
}
section.archives .paging .archive .next,
section.archives .paging .archive .prev {
  background: transparent;
  width: auto;
}
section.archives .paging .archive a.prev {
  margin-right: 5px;
  border: 0;
  position: relative;
  top: 8px;
}
section.archives .paging .archive a.next {
  margin-left: 5px;
  border: 0;
  position: relative;
  top: 8px;
}
section.archives .paging .archive .end {
  background: transparent;
}
section.single .title {
  padding: 15px 0;
}
section.single .paging .single {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-pack: justify;
  -moz-box-pack: justify;
  -webkit-flex-pack: justify;
  -moz-flex-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
  margin-top: 10px;
}
section.single .paging .single a {
  text-decoration: underline;
  font-size: 0.88rem;
  color: #00A098;
}
section.single .paging .single ul.list.next,
section.single .paging .single ul.list.prev {
  margin: auto;
  position: relative;
}
section.single .paging .single ul.list.next li a,
section.single .paging .single ul.list.prev li a {
  padding: 0;
}
section.single .paging .single ul.list.prev li {
  padding-right: 15px;
}
section.single .paging .single ul.list.prev li::after {
  position: absolute;
  content: "";
  background: url("../images/slider_arrow_right2.png") no-repeat;
  background-size: contain;
  width: 8px;
  height: 13px;
  top: 7px;
  right: 0;
}
section.single .paging .single ul.list.next li {
  padding-left: 15px;
}
section.single .paging .single ul.list.next li::before {
  position: absolute;
  content: "";
  background: url("../images/slider_arrow_left2.png") no-repeat;
  background-size: contain;
  top: 7px;
  width: 8px;
  height: 13px;
  left: 0;
}
section.single .to_list {
  text-align: center;
  padding: 0;
  position: absolute;
  margin: 2px auto 0;
  left: 0;
  right: 0;
}
section.single .to_list a {
  text-decoration: none;
  color: #00A098;
}
section.single .to_list .more {
  width: 200px;
  padding: 5px 0;
  color: #fff;
  text-align: center;
  background: #26AEA7;
  font-size: 1.0714285714rem;
  margin: 8px 3px;
  border-radius: 3px;
}
section.about {
  padding-bottom: 60px;
}
section.about table {
  max-width: 820px;
  width: 100%;
  margin: auto;
  border-top: 1px solid #CEC5B6;
  border-left: 1px solid #CEC5B6;
  line-height: 1.5;
}
section.about table th {
  background: #ECE7DD;
  width: 180px;
  padding: 15px;
  text-align: center;
  border-right: 1px solid #CEC5B6;
  border-bottom: 1px solid #CEC5B6;
}
@media screen and (max-width: 768px) {
  section.about table th {
    width: 100%;
  }
}
section.about table td {
  padding: 15px;
  border-right: 1px solid #CEC5B6;
  border-bottom: 1px solid #CEC5B6;
}
section.about_map {
  padding: 60px 0;
}
section.about_map.blue {
  background: #E5F5F5;
}
section.about_map.red {
  background: #FDEFF1;
}
section.about_map h2 {
  margin-top: 0;
  font-size: 2.1428571429rem;
}
@media screen and (max-width: 450px) {
  section.about_map h2 {
    font-size: 1.5rem;
  }
}
section.about_map .map.frame_wrap {
  height: 600px;
  max-width: 1040px;
  width: 100%;
  margin: auto;
  padding-bottom: 30%;
}
section.about_map .map.frame_wrap .map_canvas {
  height: 600px;
}
section.about_map .shop {
  text-align: center;
  line-height: 1.7;
  margin-top: 30px;
}
section.price {
  max-width: 800px;
  margin: 0 auto;
  line-height: 1.8;
}
section.price .container {
  padding: 0 0 70px;
}
section.price .price_method {
  margin-bottom: 20px;
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-pack: center;
  -moz-box-pack: center;
  -webkit-flex-pack: center;
  -moz-flex-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
section.price .price_method .price_method-item {
  font-weight: bold;
}
section.price .price_method .price_method-item.price_method-unit {
  font-family: dnp-shuei-gothic-gin-std, sans-serif;
  font-weight: 500;
  padding: 20px 15px;
  color: #4cbcb7;
  font-size: 2.0714285714rem;
  border: 1px solid #4cbcb7;
  border-radius: 4px;
  text-align: center;
}
@media screen and (max-width: 890px) {
  section.price .price_method .price_method-item.price_method-unit {
    padding: 15px;
    font-size: 1.7142857143rem;
  }
}
@media screen and (max-width: 768px) {
  section.price .price_method .price_method-item.price_method-unit {
    padding: 10px;
    font-size: 1.3571428571rem;
  }
}
@media screen and (max-width: 540px) {
  section.price .price_method .price_method-item.price_method-unit {
    padding: 8px 5px;
  }
}
section.price .price_method .price_method-item.price_method-unit .diamond {
  font-size: 1.7142857143rem;
  line-height: 1.23;
}
@media screen and (max-width: 890px) {
  section.price .price_method .price_method-item.price_method-unit .diamond {
    font-size: 1.3571428571rem;
  }
}
@media screen and (max-width: 768px) {
  section.price .price_method .price_method-item.price_method-unit .diamond {
    font-size: 1.1428571429rem;
    line-height: 1.3;
  }
}
@media screen and (max-width: 450px) {
  section.price .price_method .price_method-item.price_method-unit:first-child {
    width: 283px;
    text-align: center;
    margin: 0 auto;
  }
}
section.price .price_method .price_method-item.price_method-unit:first-child span {
  font-size: 0.9285714286rem;
}
section.price .price_method .price_method-item.price_method-unit span {
  display: block;
  font-size: 0.7857142857rem;
  letter-spacing: 3px;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: 500;
  text-align: center;
  margin-top: 5px;
}
@media screen and (max-width: 768px) {
  section.price .price_method .price_method-item.price_method-unit span {
    margin-top: 0;
    letter-spacing: 2px;
  }
}
@media screen and (max-width: 340px) {
  section.price .price_method .price_method-item.price_method-unit span {
    letter-spacing: 0.5px;
  }
}
section.price .price_method .price_method-item.price_method-unit.price_total {
  color: #f197a3;
  border-color: #f197a3;
}
section.price .price_method .price_method-item.price_method-symbol {
  color: #cec5b6;
  margin: 0 15px;
  font-size: 1.7142857143rem;
}
@media screen and (max-width: 890px) {
  section.price .price_method .price_method-item.price_method-symbol {
    margin: 0 10px;
    font-size: 1.3571428571rem;
  }
}
@media screen and (max-width: 768px) {
  section.price .price_method .price_method-item.price_method-symbol {
    margin: 0 5px;
    font-size: 1.1428571429rem;
  }
}
@media screen and (max-width: 540px) {
  section.price .price_method .price_method-item.price_method-symbol {
    margin: 0 2px;
  }
}
@media screen and (max-width: 450px) {
  section.price .price_method .price_method-item.price_method-symbol:nth-child(2) {
    width: 100%;
    margin: 0 auto;
    text-align: center;
  }
}
section.price .table_scroll {
  margin: 0 auto;
  max-width: 800px;
  width: 100%;
  /*
  @include media-query(smd) {
    table {
      border: 0;
      width: 100%;
  		border-radius: 0px;

      th {
        background-color: #4CBCB9;
        display: block;
        border-right: none;
  			&:first-child,&:nth-child(2),&:nth-child(3) {
  				width:auto;
  			}
      }

      thead {
        border: none;
        clip: rect(0 0 0 0);
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        position: absolute;
        width: 1px;
      }

      tr {
        display: block;
        margin-bottom: .625em;
  			border-radius: 5px;
  	    overflow: hidden;
  			position: relative;
  			z-index: 1;
  			border-bottom: none;
      }

      td {
        border-bottom: 1px solid #FFF;
        display: block;
        text-align: right;
        position: relative;
        padding: .625em .525em .625em 9em;
        border-right: none;
  			&:first-child,&:nth-child(2),&:nth-child(3) {
  				width:auto;
  			}

        &::before {
          content: attr(data-label);
          font-weight: bold;
          position: absolute;
          left: 3px;
          color: #167F92;
  				display: inline-block;
  				width: 101px;
  				padding-right: 10px;
  				border-right: 1px solid #FFF;
  				text-align: left;
        }

        &:last-child {
          border-bottom: 0;
        }
      }

      tbody th {
        color: #fff;
      }
    }
  }
  */
}
@media screen and (max-width: 768px) {
  section.price .table_scroll {
    overflow-x: scroll;
  }
}
section.price .table_scroll .scroll-hint-icon {
  z-index: 2;
}
section.price .table_scroll table {
  border-collapse: collapse;
  margin: 0 auto;
  padding: 0;
  table-layout: fixed;
  border: none;
  width: 760px;
  line-height: 1.5;
  border-radius: 5px;
  overflow: hidden;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  section.price .table_scroll table {
    width: 480px;
  }
}
@media screen and (max-width: 450px) {
  section.price .table_scroll table {
    width: 460px;
  }
}
section.price .table_scroll table tr {
  background-color: #DEF2F2;
  padding: 0.35em;
  border-bottom: 2px solid #fff;
}
section.price .table_scroll table tr:nth-child(even) {
  background-color: #BDE6E5;
}
section.price .table_scroll table tr:last-child {
  border-bottom: none;
}
section.price .table_scroll table th,
section.price .table_scroll table td {
  padding: 1em;
  border-right: 1px dashed #fff;
}
section.price .table_scroll table th:first-child,
section.price .table_scroll table td:first-child {
  width: 170px;
}
section.price .table_scroll table th:nth-child(2),
section.price .table_scroll table td:nth-child(2) {
  width: 132px;
}
section.price .table_scroll table th:nth-child(3),
section.price .table_scroll table td:nth-child(3) {
  width: 60px;
}
section.price .table_scroll table th:nth-child(4),
section.price .table_scroll table td:nth-child(4) {
  width: 200px;
}
@media screen and (max-width: 768px) {
  section.price .table_scroll table th:nth-child(4),
  section.price .table_scroll table td:nth-child(4) {
    width: 55px;
  }
}
@media screen and (max-width: 450px) {
  section.price .table_scroll table th:nth-child(4),
  section.price .table_scroll table td:nth-child(4) {
    padding: 0.6em 1.2em;
  }
}
section.price .table_scroll table th:last-child,
section.price .table_scroll table td:last-child {
  border-right: none;
}
@media screen and (max-width: 768px) {
  section.price .table_scroll table th:last-child,
  section.price .table_scroll table td:last-child {
    width: 55px;
  }
}
@media screen and (max-width: 450px) {
  section.price .table_scroll table th:last-child,
  section.price .table_scroll table td:last-child {
    padding: 0.6em 1.2em;
  }
}
@media screen and (max-width: 450px) {
  section.price .table_scroll table th,
  section.price .table_scroll table td {
    padding: 0.6em;
  }
}
section.price .table_scroll table thead tr:first-child {
  background-color: #4CBCB9;
  color: #fff;
  font-family: dnp-shuei-gothic-gin-std, sans-serif;
  font-weight: 500;
}
section.price .table_scroll table tbody th {
  background: #4CBCB9;
  color: #fff;
  font-family: dnp-shuei-gothic-gin-std, sans-serif;
  font-weight: 500;
}
section.price .table_scroll table tbody td:nth-child(2) {
  position: relative;
}
section.price .table_scroll table tbody td:nth-child(2)::after {
  content: "×";
  position: absolute;
  top: 50%;
  right: -11px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 1.4285714286rem;
  color: #2A6765;
  font-weight: bold;
}
section.price .table_scroll table tbody td:nth-child(3) {
  position: relative;
}
section.price .table_scroll table tbody td:nth-child(3)::after {
  content: "×";
  position: absolute;
  top: 50%;
  right: -11px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 1.4285714286rem;
  color: #2A6765;
  font-weight: bold;
}
section.price .table_scroll table tbody td:nth-child(4) {
  position: relative;
  vertical-align: middle;
}
section.price .table_scroll table tbody td:nth-child(4)::after {
  content: "＝";
  position: absolute;
  top: 50%;
  right: -11px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 1.4285714286rem;
  color: #2A6765;
  font-weight: bold;
}
section.price .table_scroll table tbody td:last-child {
  vertical-align: middle;
}
section.price .table_scroll table.tabel_width-auto th,
section.price .table_scroll table.tabel_width-auto td {
  width: auto !important;
}
section.price .table_scroll table.tabel_no-symbol td::after {
  content: none !important;
}
section.price .table_scroll .txt {
  text-align: left;
}
section.price .table_scroll .price {
  text-align: center;
  color: #235655;
  font-weight: bold;
}
section.price .table_scroll .non {
  background: #fff;
}
section.price .full-width-img {
  margin: 0 calc((100vw - 760px) / -2);
  width: 100vw;
  height: 400px;
}
@media screen and (max-width: 768px) {
  section.price .full-width-img {
    margin: 0 -20px;
  }
}
section.price .full-width-img.daiamond-img {
  background: url("../images/material/course2/image-09.jpg") no-repeat center;
  background-size: cover;
}
section.price .option .option_content:nth-child(odd) {
  background: #DEF2F1;
  margin: 0 calc((100vw - 760px) / -2);
  padding: 10px calc((100vw - 740px) / 2) 50px;
  width: 100vw;
}
@media screen and (max-width: 768px) {
  section.price .option .option_content:nth-child(odd) {
    margin: 0 -20px;
    padding: 10px 15px 50px;
  }
}
section.price .option .option_content .title_h4 {
  text-align: left;
}
@media screen and (max-width: 450px) {
  section.price .option .option_content .title_h4 {
    text-align: center;
    font-size: 1.2857142857rem;
  }
}
section.price .option .option_content .title_h4::before {
  content: none;
}
section.price .option .option_content .title_h4::after {
  content: " ";
  border-top: 2px solid #ADE0DE;
  margin: 0 0 20px;
  width: 100%;
  display: block;
}
section.price .option .option_content .title_h4 br {
  display: none;
}
@media screen and (max-width: 450px) {
  section.price .option .option_content .title_h4 br {
    display: block;
  }
}
@media screen and (max-width: 450px) {
  section.price .option .option_content .title_h4 .title_en {
    font-size: 0.8571428571rem;
    letter-spacing: 5px;
  }
}
section.price .option .option_content .item_list_col2 {
  margin-top: 0 !important;
  margin-bottom: 20px;
}
section.price .option .option_content .item_list_col2 .item {
  margin-bottom: 0 !important;
  height: auto;
}
section.price .option .option_content .item_list_col2 .item .item_img {
  line-height: 0;
}
@media screen and (max-width: 890px) {
  section.price .option .option_content .item_list_col2 .item .item_img {
    width: 100%;
    margin: 0;
  }
}
section.price .option .option_content .item_list_col2 .item .item_img img {
  width: 100%;
  height: auto;
}
section.price .option .item_list_col7 .item {
  width: 98px !important;
}
@media screen and (max-width: 450px) {
  section.price .option .item_list_col7 .item {
    width: calc(33.3333333333% - 10px) !important;
  }
}
section.price .option .item_list_col7 .item img {
  width: 100%;
  height: auto;
}
section.price .option .option_list li {
  padding-bottom: 15px;
  margin-bottom: 15px;
  border-bottom: 1px dashed #EEE;
  font-size: 1.1428571429rem;
}
@media screen and (max-width: 400px) {
  section.price .option .option_list li {
    font-size: 1rem;
  }
}
section.price .option .option_list span.price {
  color: #4CBCB9;
  font-family: dnp-shuei-gothic-gin-std, sans-serif;
  font-weight: 500;
  font-weight: bold;
}
section.price .etc_option {
  font-size: 1.0714285714rem;
  color: #4CBCB9;
  font-weight: bold;
}
section .about_wax {
  padding: 15px 25px;
  background-color: #DEF2F2;
  border-radius: 5px;
  line-height: 1.8;
}
section .about_wax h4 {
  font-size: 1.2857142857rem;
  font-weight: bold !important;
  color: #4CBCB9;
  margin-bottom: 10px;
  text-align: center;
}
section .about_wax .color_circle-number {
  color: #4CBCB9;
  font-family: dnp-shuei-gothic-gin-std, sans-serif;
  font-weight: 500;
  font-size: 1.5em;
  line-height: 0;
  vertical-align: middle;
  font-weight: bold;
}
section .about_wax .wax_imgs {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -moz-box-pack: justify;
  -webkit-flex-pack: justify;
  -moz-flex-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
}
section .about_wax .wax_imgs .wax_img {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -moz-box-pack: justify;
  -webkit-flex-pack: justify;
  -moz-flex-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
  width: calc(33.3333333333% - 60px);
  position: relative;
  height: auto;
}
@media screen and (max-width: 768px) {
  section .about_wax .wax_imgs .wax_img {
    width: calc(33.3333333333% - 20px);
  }
}
@media screen and (max-width: 540px) {
  section .about_wax .wax_imgs .wax_img {
    width: 100%;
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 15px;
  }
}
section .about_wax .wax_imgs .wax_img::after {
  content: "";
  width: 30px;
  height: 30px;
  line-height: 30px;
  background-color: #4CBCB9;
  color: #FFF;
  border-radius: 50%;
  text-align: center;
  display: block;
  position: absolute;
  top: -15px;
  left: -15px;
  z-index: 10;
}
section .about_wax .wax_imgs .wax_img:first-child::after {
  content: "1";
}
section .about_wax .wax_imgs .wax_img:nth-child(2)::after {
  content: "2";
}
section .about_wax .wax_imgs .wax_img:nth-child(3)::after {
  content: "3";
}
section .about_wax .wax_imgs .wax_img .item_img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 540px) {
  section .about_wax .wax_imgs .wax_img .item_img {
    width: 40%;
    margin-right: 15px;
  }
}
section .about_wax .wax_imgs .wax_img .item_img img {
  width: 100%;
  height: auto;
  margin-bottom: 5px;
  border: 5px solid #FFF;
  box-shadow: 0px 0px 4px rgba(49, 120, 118, 0.3);
}
@media screen and (max-width: 540px) {
  section .about_wax .wax_imgs .wax_img p {
    width: calc(60% - 15px);
  }
}
section .example_prices .example_price {
  width: 100%;
  margin-bottom: 60px;
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
section .example_prices .example_price:first-child .item_txt table, section .example_prices .example_price:nth-child(2) .item_txt table {
  border-radius: 5px;
}
section .example_prices .example_price .item_img {
  width: 150px;
  height: 150px;
  margin: 0 30px 20px 0;
  line-height: 0;
  border-radius: 50%;
  overflow: hidden;
  border: 5px solid #fff;
  box-shadow: 0px 0px 4px rgba(49, 120, 118, 0.3);
}
@media screen and (max-width: 540px) {
  section .example_prices .example_price .item_img {
    width: 70%;
    height: auto;
    margin: 0 auto 20px;
  }
}
section .example_prices .example_price .item_txt {
  width: calc(100% - 180px);
}
@media screen and (max-width: 540px) {
  section .example_prices .example_price .item_txt {
    width: 100%;
  }
}
section .example_prices .example_price .item_txt h5 {
  font-size: 1.3571428571rem;
  margin: 0 0 10px;
  padding: 0 0 10px;
  border-bottom: 1px dashed #999;
}
@media screen and (max-width: 540px) {
  section .example_prices .example_price .item_txt h5 {
    font-size: 1.0714285714rem;
  }
}
section .example_prices .example_price .item_txt p {
  line-height: 2;
  margin-bottom: 15px;
}
section .example_prices .example_price .item_txt p.price-method {
  font-family: dnp-shuei-gothic-gin-std, sans-serif;
  font-weight: 500;
  font-size: 1.3571428571rem;
}
@media screen and (max-width: 540px) {
  section .example_prices .example_price .item_txt p.price-method {
    font-size: 1.1428571429rem;
  }
}
section .example_prices .example_price .item_txt p.price-method small {
  font-size: 1rem;
}
section .example_prices .example_price .item_txt p.price-method span {
  font-size: 1.5714285714rem;
  font-weight: bold !important;
  color: #4CBCB9;
}
@media screen and (max-width: 540px) {
  section .example_prices .example_price .item_txt p.price-method span {
    font-size: 1.3571428571rem;
  }
}
section .example_prices .example_price .item_txt table {
  border-collapse: collapse;
  margin: 0 auto;
  padding: 0;
  table-layout: fixed;
  border: none;
  line-height: 1.5;
  overflow: hidden;
  position: relative;
  z-index: 1;
  min-width: 100%;
  width: 500px;
  border-radius: 5px 5px 0 0;
}
section .example_prices .example_price .item_txt table tr {
  background-color: #DEF2F2;
  padding: 0.35em;
  border-bottom: 2px solid #fff;
}
section .example_prices .example_price .item_txt table tr:last-child {
  border-bottom: none;
}
section .example_prices .example_price .item_txt table th,
section .example_prices .example_price .item_txt table td {
  padding: 1.3em 0.5em;
  border-right: 1px dashed #fff;
  border-bottom: 1px solid #FFF;
  text-align: center;
}
section .example_prices .example_price .item_txt table thead tr:first-child {
  font-family: dnp-shuei-gothic-gin-std, sans-serif;
  font-weight: 500;
}
section .example_prices .example_price .item_txt table thead tr th:first-child {
  width: 50px;
}
section .example_prices .example_price .item_txt table thead tr th:nth-child(2) {
  width: 66px;
}
section .example_prices .example_price .item_txt table thead tr th:nth-child(3) {
  width: 40px;
}
section .example_prices .example_price .item_txt table thead tr th:nth-child(4) {
  width: 82px;
}
section .example_prices .example_price .item_txt table thead tr th:nth-child(5) {
  width: 50px;
}
section .example_prices .example_price .item_txt table tbody th {
  background: #4CBCB9;
  color: #fff;
  font-family: dnp-shuei-gothic-gin-std, sans-serif;
  font-weight: 500;
}
section .example_prices .example_price .item_txt table tbody th:first-child {
  position: relative;
}
section .example_prices .example_price .item_txt table tbody th:first-child::after {
  content: "+";
  position: absolute;
  top: 50%;
  right: -8px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 1.4285714286rem;
  color: #2A6765;
  font-weight: bold;
}
section .example_prices .example_price .item_txt table tbody td:first-child {
  position: relative;
}
section .example_prices .example_price .item_txt table tbody td:first-child::after {
  content: "+";
  position: absolute;
  top: 50%;
  right: -7px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 1.4285714286rem;
  color: #2A6765;
  font-weight: bold;
}
section .example_prices .example_price .item_txt table tbody td:nth-child(2) {
  position: relative;
}
section .example_prices .example_price .item_txt table tbody td:nth-child(2)::after {
  content: "×";
  position: absolute;
  top: 50%;
  right: -11px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 1.4285714286rem;
  color: #2A6765;
  font-weight: bold;
}
section .example_prices .example_price .item_txt table tbody td:nth-child(3) {
  position: relative;
}
section .example_prices .example_price .item_txt table tbody td:nth-child(3)::after {
  content: "×";
  position: absolute;
  top: 50%;
  right: -8px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 1.4285714286rem;
  color: #2A6765;
  font-weight: bold;
}
section .example_prices .example_price .item_txt table tbody td:nth-child(4) {
  position: relative;
}
section .example_prices .example_price .item_txt table tbody td:nth-child(4)::after {
  content: "＝";
  position: absolute;
  top: 50%;
  right: -10px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 1.4285714286rem;
  color: #2A6765;
  font-weight: bold;
}
section .example_prices .example_price .item_txt table tbody td .total_price {
  color: #388987;
  font-family: dnp-shuei-gothic-gin-std, sans-serif;
  font-weight: 500;
  font-weight: bold;
  font-size: 1.0714285714rem;
}
section .example_prices .example_price .item_txt table.table_option {
  border-radius: 0 0 5px 5px;
}
section .example_prices .example_price .item_txt table.table_option tbody tr {
  border-right: none;
  border-bottom: 1px solid #FFF;
}
section .example_prices .example_price .item_txt table.table_option tbody tr:last-child {
  border-bottom: none;
  background-color: #BDE6E5;
}
section .example_prices .example_price .item_txt table.table_option tbody tr td {
  padding: 1.3em 1em;
}
section .example_prices .example_price .item_txt table.table_option tbody tr td:first-child::after {
  content: none;
}
section .ring_size {
  width: 100%;
  overflow: hidden;
}
section .ring_size h4 {
  font-size: 1.2857142857rem;
  font-weight: bold !important;
  color: #4CBCB9;
  margin-bottom: 20px;
}
section .ring_size .ring_size-contents {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -moz-box-pack: justify;
  -webkit-flex-pack: justify;
  -moz-flex-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
}
section .ring_size .ring_size-contents .ring_size-content {
  line-height: 2;
}
section .ring_size .ring_size-contents .ring_size-content p {
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  section .ring_size .ring_size-contents .ring_size-content-img {
    margin: 0 auto;
  }
}
section .ring_size .ring_size-contents .ring_size-content-img img {
  width: 320px;
  max-width: 100%;
  height: auto;
}
section.thank-sec .content {
  max-width: 600px;
  margin: auto;
  line-height: 1.8;
}

.main_img {
  width: 100%;
  max-width: 1000px;
  height: 400px;
  max-height: 400px;
  position: relative;
  overflow: hidden;
  margin: 100px auto 20px;
}
@media screen and (max-width: 768px) {
  .main_img {
    height: 200px;
    margin-top: 0px;
  }
}
.main_img img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: auto;
  -weblit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 768px) {
  .main_img img {
    width: 600px !important;
    max-width: none !important;
  }
}

@media screen and (max-width: 450px) {
  #bridal {
    padding-top: 30px;
  }
}

/***********************************
 *
 * footer
 *
 ***********************************/
footer {
  opacity: 0;
  background: #ECE7DD;
  color: #595757;
  width: 100%;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .single-design footer {
    padding-bottom: 140px;
  }
}
footer ul {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-pack: center;
  -moz-box-pack: center;
  -webkit-flex-pack: center;
  -moz-flex-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  justify-content: center;
  padding: 20px 0 10px;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  footer ul {
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 400px) {
  footer ul {
    display: none;
  }
}
footer ul li {
  padding: 3px 17px;
  letter-spacing: 1px;
  border-right: 1px solid #595757;
  text-align: center;
  margin-bottom: 10px;
}
footer ul li:last-child {
  border-right: 0;
}
footer ul li a {
  color: #000;
  text-decoration: none;
}
footer ul li a:hover {
  text-decoration: underline;
}
footer .cols {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-pack: justify;
  -moz-box-pack: justify;
  -webkit-flex-pack: justify;
  -moz-flex-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
  margin: 50px auto;
  max-width: 820px;
}
@media screen and (max-width: 768px) {
  footer .cols {
    -webkit-box-direction: normal;
    -moz-box-direction: normal;
    -webkit-box-orient: vertical;
    -moz-box-orient: vertical;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    flex-direction: column;
    padding: 10px;
  }
}
footer .cols a.sns_btn {
  color: #867329;
  font-size: 2.0714285714rem;
  margin-right: 5px;
}
footer .cols > div {
  margin: 0 20px;
}
footer .cols > div:first-child {
  width: 300px;
}
@media screen and (max-width: 768px) {
  footer .cols > div:first-child {
    margin: auto;
  }
}
footer .cols > div:first-child a {
  text-decoration: none;
}
footer .cols > div:first-child a .footer-logo {
  width: 200px;
  height: auto;
}
footer .cols > div:first-child a p {
  margin: 10px 0 30px;
  color: #867329;
}
footer .cols > div:last-child {
  max-width: 300px;
  width: 100%;
}
@media screen and (max-width: 768px) {
  footer .cols > div:last-child {
    margin: 50px auto 0;
  }
}
footer .cols > div div {
  margin-bottom: 15px;
}
footer .cols > div div .logo {
  margin-right: 20px;
}
footer .cols > div div .sns {
  margin: 0 10px 0 0;
}
footer .cols > div div .instagram {
  margin-top: 5px;
}
footer .cols > div p {
  line-height: 1.5;
  font-size: 0.8571428571rem;
}
footer .cols > div p span {
  font-size: 0.5714285714rem;
}
footer .cols > div a.footer_tel {
  display: block;
  color: #595757;
  text-decoration: none;
  margin: 10px 0px;
  font-size: 1.4285714286rem;
  letter-spacing: 2px;
  font-weight: 700;
}
footer .cols > div a.footer_tel i {
  transform: rotateZ(100deg);
  margin-right: 3px;
}
footer .cols > div p.tel {
  margin: 5px 0 10px;
}
footer .cols > div p.tel img {
  position: relative;
  top: 2px;
}
footer .cols > div p.tel a {
  display: inline-block;
  color: #595757;
  text-decoration: none;
  font-size: 0.8571428571rem;
  letter-spacing: 1px;
  font-weight: 700;
  vertical-align: top;
}
footer .cols > div p.tel a i {
  transform: rotateZ(100deg);
  margin-right: 3px;
}
footer .cols > div p.tel span {
  font-size: 0.8571428571rem;
  vertical-align: text-bottom;
}
footer .cols > div hr {
  border: solid #595757;
  border-width: 1px 0 0 0;
  margin: 0 0 10px;
}
footer .copyright {
  font-size: 0.8571428571rem;
  text-align: center;
  padding: 25px;
}
footer .to_top {
  position: fixed;
  right: 20px;
  bottom: 20px;
  cursor: pointer;
  display: none;
  z-index: 20;
  width: 40px;
  height: auto;
}
@media screen and (max-width: 768px) {
  .single-course footer .to_top {
    bottom: 70px;
  }
  .single-design footer .to_top, .single-jewelry footer .to_top {
    display: none !important;
  }
}
footer .to_top img {
  width: 100%;
  height: auto;
}

/*************************
 * キャンペーン
 *************************/
.campain-banner {
  position: fixed;
  bottom: -200px;
  left: 24px;
  z-index: 10000;
  visibility: hidden;
  transition: 0.5s;
}
@media screen and (max-width: 540px) {
  .campain-banner {
    left: 8px;
    z-index: 100;
  }
}
.campain-banner__link {
  width: 250px;
  height: 104px;
  box-sizing: border-box;
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  align-items: center;
  padding: 12px;
  gap: 8px;
  background: #FFFFFF;
  box-shadow: 0px 2px 12px rgba(33, 126, 124, 0.24);
  border-radius: 8px;
  text-decoration: none;
}
.campain-banner__image {
  width: 80px;
  height: 80px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  border-radius: 4px;
}
.campain-banner__text {
  width: calc(100% - 88px);
}
.campain-banner__sub-title {
  font-family: sans-serif;
  font-weight: 600;
  font-size: 12px;
  line-height: 16px;
  color: rgba(76, 188, 185, 0.7);
  margin-bottom: 8px;
}
.campain-banner__title {
  font-family: sans-serif;
  font-weight: 700;
  font-size: 15px;
  line-height: 22px;
  color: #009088;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.campain-banner.is_show {
  visibility: visible;
  bottom: 24px;
}
@media screen and (max-width: 540px) {
  .campain-banner.is_show {
    bottom: 24px;
  }
}
.campain-banner .cookie-agree {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  padding: 6px 4px;
  gap: 10px;
  position: absolute;
  width: 22px;
  height: 22px;
  line-height: 0.7;
  left: 220px;
  top: 8px;
  color: #FFF;
  background: #867329;
  box-shadow: 0px 1px 4px rgba(33, 126, 124, 0.2);
  border-radius: 14px;
}
.campain-banner .cookie-agree:hover {
  cursor: pointer;
}
.campain-banner .is_hide {
  animation: hide 1s linear 0s;
  animation-fill-mode: forwards;
}
@keyframes hide {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    visibility: hidden;
  }
}

/*************************
 * プラグイン
 *************************/
.bx-wrapper {
  margin-bottom: 0 !important;
}

.bx-viewport {
  border: 0 !important;
  /*height: auto !important;*/
  left: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

.bx-wrapper .bx-next,
.bx-wrapper .bx-prev {
  background: none;
  z-index: 1000 !important;
}
.bx-wrapper .bx-next img {
  margin-left: 10px;
}
.bx-wrapper .bx-pager {
  bottom: 18px;
}
.bx-wrapper .bx-pager.bx-default-pager a {
  background: #fff;
}

/*-----------------------------------------
 single course
-----------------------------------------*/
.single-course.course-detail {
  margin-top: 150px;
}
.single-course.course-detail .absolute-block {
  top: 0;
}
@media screen and (max-width: 890px) {
  .single-course.course-detail {
    margin-top: 0;
  }
}
.single-course .page_top {
  margin: 179px auto 0;
  padding-bottom: 70px;
  max-width: 1280px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media screen and (max-width: 890px) {
  .single-course .page_top {
    margin-top: 40px;
    padding: 0;
  }
}
.single-course .page_top .course-title {
  position: relative;
  top: 240px;
  margin: 0 auto;
  padding: 1px 30px 20px;
  max-width: 440px;
  background-color: rgba(255, 255, 255, 0.85);
}
@media screen and (max-width: 890px) {
  .single-course .page_top .course-title {
    position: static;
    top: inherit;
    margin: 0px auto;
    padding: 10px 0 15px;
    background-color: transparent;
  }
}
.single-course .page_top .course-title h1 {
  text-align: center;
  margin-top: 30px;
  margin-bottom: 30px;
}
@media screen and (max-width: 450px) {
  .single-course .page_top .course-title h1 {
    margin-top: 5px;
  }
}
.single-course .page_top .course-title h1 .title_slug {
  color: rgba(0, 0, 0, 0.3);
  font-size: 1rem;
  line-height: 2;
  letter-spacing: 2px;
  margin: 30px auto;
  padding: 30px 0 0;
  width: 280px;
  border-top: 1px solid #CCC;
}
@media screen and (max-width: 450px) {
  .single-course .page_top .course-title h1 .title_slug {
    margin: 15px auto 30px;
    padding: 15px 0 0;
  }
}
.single-course .page_top .course-title h1 .title_slug span {
  color: #4CBCB9;
}
.single-course .page_top .course-title h1 .title_en {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: 500;
  font-size: 2.4285714286rem;
  letter-spacing: 7px;
  margin-left: 10px;
  color: #595757;
  line-height: 1.5;
}
@media screen and (max-width: 450px) {
  .single-course .page_top .course-title h1 .title_en {
    font-size: 1.7142857143rem;
  }
}
@media screen and (max-width: 400px) {
  .single-course .page_top .course-title h1 .title_en {
    font-size: 1.4285714286rem;
    letter-spacing: 5px;
  }
}
.single-course .page_top .course-title .course-time {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -moz-box-pack: center;
  -webkit-flex-pack: center;
  -moz-flex-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  justify-content: center;
}
.single-course .page_top .course-title .course-time__pay, .single-course .page_top .course-title .course-time__work {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  font-family: sans-serif;
  font-size: 1.0714285714rem;
  margin-bottom: 10px;
}
.single-course .page_top .course-title .course-time__pay span, .single-course .page_top .course-title .course-time__work span {
  background-color: rgba(0, 0, 0, 0.8);
  color: #FFF;
  display: inline-block;
  margin-right: 6px;
  padding: 5px 7px;
  letter-spacing: 0.1rem;
  text-align: center;
  font-size: 0.9285714286rem;
  border-radius: 4px;
}
.single-course .page_top .course-title .course-time__pay {
  margin-right: 25px;
}
.single-course .page_top .course-img-box {
  margin-left: -10px;
  position: absolute;
  top: 0;
  width: 100%;
  height: 468px;
  overflow: hidden;
}
@media screen and (max-width: 890px) {
  .single-course .page_top .course-img-box {
    margin: 0 -10px;
    position: static;
    height: auto;
    width: calc(100% + 20px);
  }
}
.single-course .page_top .course-img-box .course-img {
  width: 100%;
  height: auto;
  position: absolute;
  top: 50%;
  z-index: -1;
  transform: translateY(-50%);
}
@media screen and (max-width: 890px) {
  .single-course .page_top .course-img-box .course-img {
    position: static;
    transform: inherit;
  }
}
.single-course .casting-flow h3 {
  text-align: center !important;
  margin: 0 auto;
  width: 230px;
}
.single-course .casting-flow p {
  text-align: center;
}
@media screen and (max-width: 540px) {
  .single-course .casting-flow p {
    text-align: left;
  }
}
.single-course .casting-flow .casting-flow-imgs {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: distribute;
  justify-content: space-around;
}
.single-course .casting-flow .casting-flow-imgs .casting-flow-img {
  max-width: 400px;
  width: calc(50% - 10px);
  margin: auto;
}
.single-course .casting-flow .casting-flow-imgs .casting-flow-img:first-child {
  margin-right: 10px;
}
@media screen and (max-width: 540px) {
  .single-course .casting-flow .casting-flow-imgs .casting-flow-img:first-child {
    margin-right: auto;
  }
}
.single-course .casting-flow .casting-flow-imgs .casting-flow-img:nth-child(2) {
  margin-left: 10px;
}
@media screen and (max-width: 540px) {
  .single-course .casting-flow .casting-flow-imgs .casting-flow-img:nth-child(2) {
    margin-left: auto;
  }
}
@media screen and (max-width: 540px) {
  .single-course .casting-flow .casting-flow-imgs .casting-flow-img {
    width: 100%;
  }
}
.single-course .before-after {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -moz-box-pack: center;
  -webkit-flex-pack: center;
  -moz-flex-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  justify-content: center;
  margin-bottom: 60px;
}
.single-course .before-after .before-after__img {
  width: calc(50% - 60px);
  max-width: 380px;
  margin: 30px;
}
@media screen and (max-width: 540px) {
  .single-course .before-after .before-after__img {
    width: calc(50% - 20px);
    margin: 10px;
  }
}
.single-course .before-after .before-after__img img {
  box-shadow: 40px 40px 0 rgba(6, 188, 183, 0.2);
}
@media screen and (max-width: 540px) {
  .single-course .before-after .before-after__img img {
    box-shadow: 15px 40px 0 rgba(76, 188, 183, 0.1);
  }
}
.single-course .before-after .before-after__img p {
  margin-top: 8px;
  font-size: 1.2857142857rem;
  text-align: right;
  letter-spacing: 2px;
  display: inline-block;
  color: #FFF;
  background-color: #4cbcb7;
  float: right;
  padding: 0 6px;
}
.single-course .before-after .before-after__img:first-child {
  margin-top: -30px;
}
.single-course .before-after .before-after__img:first-child img {
  box-shadow: 40px 40px 0 rgba(76, 188, 183, 0.1);
}
@media screen and (max-width: 540px) {
  .single-course .before-after .before-after__img:first-child img {
    box-shadow: 15px 40px 0 rgba(76, 188, 183, 0.1);
  }
}
.single-course .before-after .before-after__img:first-child p {
  background-color: #AAA;
}
.single-course .container {
  line-height: 2;
}
.single-course .container .content {
  max-width: 1020px !important;
  width: 100%;
  margin: auto;
}
.single-course .container .content h3 {
  font-size: 1.5714285714rem;
  text-align: left;
  padding-bottom: 5px;
  margin-bottom: 15px;
}
@media screen and (max-width: 450px) {
  .single-course .container .content h3 {
    font-size: 1.2857142857rem;
    text-align: center;
  }
}
.single-course .container .content .wp-block-columns.flexright .wp-block-column:not(:first-child) {
  margin-left: 0;
  margin-right: 2em;
}
@media screen and (max-width: 450px) {
  .single-course .container .content .wp-block-columns.flexright .wp-block-column:not(:first-child) {
    margin-right: 0;
  }
}
.single-course .container .content .wp-block-columns .wp-block-column .wp-block-video video {
  position: relative;
  overflow: hidden;
  border-radius: 10px;
}
.single-course .container .content .wp-block-columns .wp-block-column .wp-block-image img {
  position: relative;
  overflow: hidden;
  border-radius: 10px;
}
@media screen and (max-width: 450px) {
  .single-course .container .content .wp-block-columns .wp-block-column a {
    display: block;
    margin: 10px auto;
  }
}
.single-course .container h2 {
  margin-top: 0;
  letter-spacing: 1px;
}
@media screen and (max-width: 450px) {
  .single-course .container h2 {
    font-size: 1.0714285714rem;
    margin-bottom: 10px;
    letter-spacing: 0;
  }
}
@media screen and (max-width: 540px) {
  .single-course .container .read-txt {
    text-align: left;
  }
}
@media screen and (max-width: 450px) {
  .single-course .container .bxslider .slides {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 1px 0 0;
  }
  .single-course .container .bxslider .slides .slide {
    width: calc(50% - 1px);
    margin: 0 0 1px 1px;
  }
}
.single-course .container .bxslider .flexcenter .more {
  width: 200px;
  padding: 5px 0;
  color: #fff;
  text-align: center;
  background: #26AEA7;
  font-size: 1.0714285714rem;
  margin: 8px 3px;
  border-radius: 3px;
}
.single-course .full-width-img {
  width: 100vw;
  height: 500px;
  margin: 0 -10px;
}
@media screen and (max-width: 540px) {
  .single-course .full-width-img {
    height: 300px;
  }
}
.single-course .full-width-img.silver-img {
  background: url("../images/course/course4/design-image.jpg") no-repeat center;
  background-size: cover;
}
.single-course .service_item.price .btn {
  padding: 10px 0;
  max-width: 160px;
  font-size: 1rem;
}
.single-course .action-btn-group {
  margin: 0 auto 100px;
  padding: 0 !important;
  width: 600px;
  border-radius: 25px;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .single-course .action-btn-group {
    margin: inherit;
    width: calc(100% - 20px);
    display: none;
    position: fixed !important;
    bottom: 20px;
    left: 10px;
    z-index: 19;
    box-shadow: 0 0 16px 3px rgba(34, 34, 34, 0.16);
  }
}
.single-course .action-btn-group ul {
  list-style: none;
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-pack: center;
  -moz-box-pack: center;
  -webkit-flex-pack: center;
  -moz-flex-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  justify-content: center;
  background-color: #4CBCB7;
  box-shadow: inset 0 0 3px 0px rgba(76, 188, 183, 0.5);
  border-radius: 25px;
}
.single-course .action-btn-group ul li {
  width: 25%;
  text-align: center;
}
.single-course .action-btn-group ul li a {
  padding: 15px 0;
  display: block;
  color: #FFF;
  text-decoration: none;
  font-size: 1.0714285714rem;
  letter-spacing: 2px;
}
@media screen and (max-width: 540px) {
  .single-course .action-btn-group ul li a {
    font-size: 0.8571428571rem;
    letter-spacing: 0;
  }
}
.single-course .action-btn-group ul li:nth-child(-n+3) {
  border-right: 1px solid rgba(255, 255, 255, 0.2);
}
.single-course .action-btn-group ul li:last-child {
  border-right: none !important;
}
.single-course .price-text {
  color: #4CBCB7;
  font-size: 2rem;
  letter-spacing: 0.3;
}
.single-course .price-text span {
  font-size: 1rem;
}
.single-course .step-block {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 50px auto;
  max-width: 1040px;
}
@media screen and (max-width: 1040px) {
  .single-course .step-block {
    margin: 50px 30px;
  }
}
.single-course .step-tab {
  -webkit-box-direction: normal;
  -moz-box-direction: normal;
  -webkit-box-orient: vertical;
  -moz-box-orient: vertical;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  width: 150px;
  border-right: 1px solid #DDD;
  margin: 0 50px 50px 0;
  padding: 50px 30px 50px 0;
}
@media screen and (max-width: 890px) {
  .single-course .step-tab {
    margin: 0 30px 50px 0;
  }
}
@media screen and (max-width: 768px) {
  .single-course .step-tab {
    margin: 0 0 30px 0;
    padding: 0;
    border: none;
    width: 100%;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }
}
@media screen and (max-width: 540px) {
  .single-course .step-tab {
    margin: 0 0 15px 0;
  }
}
.single-course .step-tab .ChangeElem_Btn {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  letter-spacing: 2px;
  box-shadow: none;
  border: none;
  border-bottom: 1px solid #DDD;
  border-radius: inherit;
  color: #CCC;
  background-color: transparent;
}
.single-course .step-tab .ChangeElem_Btn.is-active, .single-course .step-tab .ChangeElem_Btn:active, .single-course .step-tab .ChangeElem_Btn:hover, .single-course .step-tab .ChangeElem_Btn:focus {
  color: #4CBCB7;
  border-bottom-color: #4CBCB7;
  border-radius: inherit;
}
.single-course .step-tab .ChangeElem_Btn::after {
  background-color: transparent;
  border-radius: inherit;
}
.single-course .step-tab .ChangeElem_Btn:hover::after {
  background-color: transparent;
  border-radius: inherit;
}
@media screen and (max-width: 768px) {
  .single-course .step-tab .ChangeElem_Btn {
    padding: 0.6em;
    width: 100px;
  }
}
@media screen and (max-width: 540px) {
  .single-course .step-tab .ChangeElem_Btn {
    width: 58px;
    letter-spacing: 1px;
    font-size: 1rem;
    padding: 0.6rem 0;
  }
}
.single-course .step-content {
  width: calc(100% - 200px);
  position: relative;
}
@media screen and (max-width: 890px) {
  .single-course .step-content {
    width: calc(100% - 180px);
  }
}
@media screen and (max-width: 768px) {
  .single-course .step-content {
    width: 100%;
    min-height: 400px;
  }
}
.single-course .step-content .ChangeElem_Panel {
  position: absolute;
  top: 0;
  width: 100%;
}
@media screen and (max-width: 890px) {
  .single-course .step-content .ChangeElem_Panel {
    position: inherit;
  }
}
.single-course .step-content .ChangeElem_Panel .step-content__inner {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -moz-box-pack: justify;
  -webkit-flex-pack: justify;
  -moz-flex-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
}
@media screen and (max-width: 890px) {
  .single-course .step-content .ChangeElem_Panel .step-content__inner {
    -webkit-box-direction: normal;
    -moz-box-direction: normal;
    -webkit-box-orient: vertical;
    -moz-box-orient: vertical;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    flex-direction: column;
  }
}
.single-course .step-content .ChangeElem_Panel .step-content__inner .step-img {
  width: 40%;
  border-radius: 10px;
  overflow: hidden;
  background-color: transparent;
}
@media screen and (max-width: 890px) {
  .single-course .step-content .ChangeElem_Panel .step-content__inner .step-img {
    width: 300px;
    height: 300px;
    margin: 0 auto 20px;
  }
}
@media screen and (max-width: 540px) {
  .single-course .step-content .ChangeElem_Panel .step-content__inner .step-img {
    width: 200px;
    height: 200px;
  }
}
.single-course .step-content .ChangeElem_Panel .step-content__inner .step-img img {
  margin: 0;
}
.single-course .step-content .ChangeElem_Panel .step-content__inner .step-text {
  margin-top: 50px;
  width: calc(60% - 50px);
}
@media screen and (max-width: 890px) {
  .single-course .step-content .ChangeElem_Panel .step-content__inner .step-text {
    width: 100%;
    margin-top: 0;
  }
}
.single-course .step-content .ChangeElem_Panel .step-content__inner .step-text .step-title_en {
  color: #4CBCB7;
  font-size: 1.2857142857rem;
  font-weight: 700;
  letter-spacing: 2px;
}
.single-course .step-content .ChangeElem_Panel .step-content__inner .step-text .step-title_en span {
  font-size: 2.4285714286rem;
  display: inline-block;
  margin-left: 10px;
}
@media screen and (max-width: 890px) {
  .single-course .step-content .ChangeElem_Panel .step-content__inner .step-text .step-title_en {
    text-align: center;
  }
}
.single-course .step-content .ChangeElem_Panel .step-content__inner .step-text .step-title_jp {
  color: #595757;
  font-size: 1.2857142857rem;
  font-weight: 700;
  letter-spacing: 2px;
  padding-bottom: 10px;
  margin-bottom: 15px;
  border-bottom: 1px solid #E6E6E6;
}
@media screen and (max-width: 890px) {
  .single-course .step-content .ChangeElem_Panel .step-content__inner .step-text .step-title_jp {
    text-align: center;
  }
}
.single-course .more {
  width: 230px;
  margin: 8px 3px;
  padding: 10px 0;
  color: #fff;
  text-align: center;
  background-color: #26AEA7;
  font-size: 1.0714285714rem;
  line-height: 1.6;
  border-radius: 3px;
}
.single-course .more small {
  display: block;
}
.single-course .more.btn-pink {
  background-color: #F197A3;
}
.single-course .contact .contact-tel h3 {
  color: #595757;
}
.single-course .contact .contact-tel a {
  display: block;
  color: #000;
  text-decoration: none;
  margin: 10px 0px 0;
  font-size: 1.8571428571rem;
  letter-spacing: 2px;
  font-weight: 700;
}
.single-course .contact .contact-tel a i {
  transform: rotateZ(100deg);
  margin-right: 5px;
}
@media screen and (max-width: 450px) {
  .single-course .contact .contact-tel a {
    font-size: 1.2857142857rem;
  }
}

/*-----------------------------------------
 archives design
-----------------------------------------*/
.filter {
  width: 100%;
  max-width: 1040px;
  margin: 50px auto 20px;
}
.filter .cat-title {
  font-family: heisei-kaku-gothic-std, sans-serif;
  font-weight: 700;
  letter-spacing: 2px;
  font-size: 0.8571428571rem;
  margin-left: 10px;
}
.filter__inner {
  margin: 20px -10px;
  padding: 5px 20px;
  width: calc(100% + 20px);
}
.filter__inner--list {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  letter-spacing: 0.05rem;
}
@media screen and (max-width: 540px) {
  .filter__inner--list {
    -webkit-box-direction: normal;
    -moz-box-direction: normal;
    -webkit-box-orient: vertical;
    -moz-box-orient: vertical;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    flex-direction: column;
    align-items: flex-start;
  }
}
.filter__inner--list a {
  margin: 0 30px 15px 0px;
  padding: 5px;
  text-decoration: none;
  color: rgba(34, 34, 34, 0.32);
  font-size: 1.1428571429rem;
  position: relative;
  font-family: heisei-kaku-gothic-std, sans-serif;
}
.filter__inner--list a::after {
  position: absolute;
  width: 100%;
  height: 1px;
  bottom: -2px;
  left: 0;
  content: "";
  background-color: rgba(34, 34, 34, 0.16);
  transition: all 0.3s;
}
.filter__inner--list a.active {
  color: #222;
}
.filter__inner--list a.active::after {
  background-color: #4CBCB9;
}
.filter__inner--list a:hover {
  color: #4CBCB9;
}
.filter__inner--list a:hover::after {
  background-color: #4CBCB9;
}
.filter__inner--list a sup {
  position: absolute;
  top: -2px;
  padding: 0 3px;
  font-size: 0.6rem;
}

@media screen and (max-width: 890px) {
  section.archives-design .container,
  section .recommend-posts .container {
    padding-top: 30px;
  }
}
@media screen and (max-width: 540px) {
  section.archives-design .container,
  section .recommend-posts .container {
    padding-top: 0;
  }
}
section.archives-design .container .items,
section .recommend-posts .container .items {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
section.archives-design .container .items .item,
section .recommend-posts .container .items .item {
  margin: 0 8.3333333333px 15px;
  padding: 0;
  box-shadow: none;
  border-radius: 0;
  max-width: none;
  width: calc((100% - 100px) / 5);
  display: block;
}
@media screen and (max-width: 1200px) {
  section.archives-design .container .items .item,
  section .recommend-posts .container .items .item {
    width: calc((100% - 60px) / 4);
    margin: 0 7.5px 15px;
  }
}
@media screen and (max-width: 890px) {
  section.archives-design .container .items .item,
  section .recommend-posts .container .items .item {
    width: calc((100% - 60px) / 3);
    margin: 0 10px 20px;
  }
}
@media screen and (max-width: 768px) {
  section.archives-design .container .items .item,
  section .recommend-posts .container .items .item {
    width: calc((100% - 40px) / 2);
    margin: 0 10px 20px;
  }
}
section.archives-design .container .items .item .image,
section .recommend-posts .container .items .item .image {
  margin-bottom: 0;
}
section.archives-design .container .items .item .image .image_content,
section .recommend-posts .container .items .item .image .image_content {
  min-height: inherit;
  height: auto !important;
  padding-bottom: 100%;
}
section.archives-design .container .items .item .text,
section .recommend-posts .container .items .item .text {
  margin: 0 0 30px;
}
@media screen and (max-width: 540px) {
  section.archives-design .container .items .item .text,
  section .recommend-posts .container .items .item .text {
    font-size: 0.8571428571rem;
  }
}
@media screen and (max-width: 400px) {
  section.archives-design .container .items .item .text,
  section .recommend-posts .container .items .item .text {
    font-size: 0.7857142857rem;
  }
}
@media screen and (max-width: 340px) {
  section.archives-design .container .items .item .text,
  section .recommend-posts .container .items .item .text {
    font-size: 0.7142857143rem;
  }
}
section.archives-design .container .items .item .text .design-cat,
section .recommend-posts .container .items .item .text .design-cat {
  text-align: center;
  margin-bottom: 15px;
}
section.archives-design .container .items .item .text .design-cat a,
section .recommend-posts .container .items .item .text .design-cat a {
  text-decoration: none;
  color: #4CBCB9;
  letter-spacing: 0.05rem;
}
section.archives-design .container .items .item .text .price-block,
section .recommend-posts .container .items .item .text .price-block {
  letter-spacing: 0.1rem;
  text-align: center;
}
section.archives-design .container .items .item .text .price-block .price,
section .recommend-posts .container .items .item .text .price-block .price {
  margin-bottom: 10px;
}
section.archives-design .container .items .item .text .price-block .price span,
section .recommend-posts .container .items .item .text .price-block .price span {
  color: rgba(34, 34, 34, 0.54);
}
section.archives-design .container .items .no-post,
section .recommend-posts .container .items .no-post {
  margin: 0 auto;
}
section.archives-design .infinite-scroll-last,
section.archives-design .infinite-scroll-error,
section .recommend-posts .infinite-scroll-last,
section .recommend-posts .infinite-scroll-error {
  color: rgba(34, 34, 34, 0.54);
  width: 160px;
  padding: 10px;
  border-bottom: 1px solid rgba(34, 34, 34, 0.16);
  margin: 0 auto 100px;
}

/*-----------------------------------------
 archives design
-----------------------------------------*/
.archives-design .container {
  padding: 30px 0 0 !important;
}
@media screen and (max-width: 540px) {
  .archives-design .container {
    padding: 15px 0 !important;
  }
}
.archives-design .container .items .item {
  padding: 0;
  box-shadow: none;
  border-radius: 0;
  max-width: none;
  display: block;
}
.archives-design .container .items .item .image {
  margin-bottom: 20px;
}
.single .archives-design .container .items .item .image {
  margin-bottom: 0;
}
.archives-design .container .items .item .image .image_content {
  min-height: inherit;
  height: auto !important;
  padding-bottom: 100%;
}
@media screen and (max-width: 400px) {
  .archives-design .container .items .item .image {
    margin-bottom: 15px;
  }
}
.archives-design .container .items .item .image .jewelry_trading {
  position: absolute;
  z-index: 1;
  text-align: center;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(100% - 20px);
  letter-spacing: 1px;
  border-radius: 3px;
  padding: 10px 0;
  background-color: rgba(255, 255, 255, 0.9);
}
.archives-design .container .items .item .text {
  margin: 0 0 25px;
}
@media screen and (max-width: 540px) {
  .archives-design .container .items .item .text {
    font-size: 0.8571428571rem;
  }
}
@media screen and (max-width: 400px) {
  .archives-design .container .items .item .text {
    font-size: 0.7857142857rem;
    margin: 0 0 15px;
  }
}
@media screen and (max-width: 340px) {
  .archives-design .container .items .item .text {
    font-size: 0.7142857143rem;
  }
}
.archives-design .container .items .item .text .design-cat {
  text-align: center;
  margin-bottom: 15px;
}
.archives-design .container .items .item .text .design-cat a {
  text-decoration: none;
  color: #4CBCB9;
  letter-spacing: 0.05rem;
}
.archives-design .container .items .item .text .price-block {
  letter-spacing: 0.1rem;
  text-align: center;
}
.archives-design .container .items .item .text .price-block .price {
  margin-bottom: 10px;
}
@media screen and (max-width: 400px) {
  .archives-design .container .items .item .text .price-block .price {
    margin-bottom: 3px;
  }
}
.archives-design .container .items .item .text .price-block .price span {
  color: rgba(34, 34, 34, 0.54);
}

.single-design header .header_contact.tracking {
  opacity: 0 !important;
  position: absolute !important;
  top: 50px !important;
}

@media screen and (max-width: 768px) {
  section.single-design .container {
    padding: 70px 0;
  }
}
section.single-design .container .content {
  max-width: 1280px !important;
}
section.single-design .container .content .detail {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -moz-box-pack: justify;
  -webkit-flex-pack: justify;
  -moz-flex-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  section.single-design .container .content .detail {
    display: block;
  }
}
section.single-design .container .content .detail__gallery {
  width: calc(70% - 50px);
}
@media screen and (max-width: 768px) {
  section.single-design .container .content .detail__gallery {
    width: calc(100% + 20px);
    margin: 0 -10px;
  }
}
section.single-design .container .content .detail__gallery ul li img {
  width: 100%;
  max-width: 100% !important;
  height: auto;
  margin: 0 0 10px;
}
@media screen and (max-width: 768px) {
  section.single-design .container .content .detail__gallery ul li img {
    margin: 0 0 -5px;
  }
}
section.single-design .container .content .detail__content {
  margin-top: 30px;
  position: sticky;
  top: 100px;
  width: 30%;
}
@media screen and (max-width: 768px) {
  section.single-design .container .content .detail__content {
    width: 100%;
    height: 95px;
    position: fixed;
    overflow: hidden;
    bottom: 0;
    top: inherit;
    padding: 15px;
    margin: 0 -10px;
    background-color: rgba(255, 255, 255, 0.98);
    filter: drop-shadow(0px -2px 12px rgba(76, 188, 183, 0.16));
    z-index: 21;
    transition: all 0.3s;
  }
}
@media screen and (max-width: 340px) {
  section.single-design .container .content .detail__content {
    height: 140px;
  }
}
section.single-design .container .content .detail__content.is-open {
  height: 100%;
  overflow-y: scroll;
  padding-top: 60px;
  padding-bottom: 60px;
}
section.single-design .container .content .detail__content.is-open #open-detail-btn .icon--plus::after {
  opacity: 0;
}
section.single-design .container .content .detail__content--inner {
  position: relative;
}
section.single-design .container .content .detail__content--inner .btn-group {
  display: none;
}
@media screen and (max-width: 768px) {
  section.single-design .container .content .detail__content--inner .btn-group {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    position: absolute;
    top: 0;
    right: 0;
  }
}
section.single-design .container .content .detail__content--inner .btn-group .btn-all {
  width: 26px;
  height: 26px;
  background-color: #222;
  border-radius: 13px;
  transform: rotate(180deg);
  margin-right: 10px;
}
section.single-design .container .content .detail__content--inner .btn-group .btn-all::before {
  left: 8px;
  width: 10px;
}
section.single-design .container .content .detail__content--inner .btn-group .btn-all::after {
  left: 10px;
}
section.single-design .container .content .detail__content--inner .btn-group #open-detail-btn {
  background-color: transparent;
  border: none;
  cursor: pointer;
}
section.single-design .container .content .detail__content--inner .btn-group #open-detail-btn .icon {
  position: relative;
  width: 26px;
  height: 26px;
  background-color: #222;
  border-radius: 13px;
}
section.single-design .container .content .detail__content--inner .btn-group #open-detail-btn .icon::before {
  position: absolute;
  top: 12px;
  left: 50%;
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  border-top: 1px solid #FFF;
  transform: translateX(-50%);
  transition: all 0.3s;
  opacity: 1;
}
section.single-design .container .content .detail__content--inner .btn-group #open-detail-btn .icon--plus::after {
  position: absolute;
  top: 9px;
  left: 50%;
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  border-top: 1px solid #FFF;
  transform: translateX(-50%);
}
section.single-design .container .content .detail__content--inner .btn-group #open-detail-btn .icon--plus:after {
  top: 6px;
  left: 0.5px;
  transform: rotate(90deg);
}
section.single-design .container .content .detail__content--inner .title {
  padding: 5px 0 15px;
}
@media screen and (max-width: 450px) {
  section.single-design .container .content .detail__content--inner .title {
    padding: 5px 0 30px;
  }
}
section.single-design .container .content .detail__content--inner .design_cat a {
  color: #4CBCB9;
  text-decoration: none;
}
section.single-design .container .content .detail__content--inner .jewelry_trading {
  display: inline-block;
  padding: 5px 15px;
  letter-spacing: 2px;
  font-size: 12px;
  background-color: #5a6b6b;
  color: #FFF;
  border-radius: 5px;
}
section.single-design .container .content .detail__content--inner .price-block {
  letter-spacing: 0.1rem;
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
@media screen and (max-width: 450px) {
  section.single-design .container .content .detail__content--inner .price-block {
    font-size: 0.8571428571rem;
  }
}
section.single-design .container .content .detail__content--inner .price-block .price {
  margin-bottom: 10px;
}
section.single-design .container .content .detail__content--inner .price-block .price span {
  color: rgba(34, 34, 34, 0.54);
}
section.single-design .container .content .detail__content--inner .price-block .price:first-child {
  margin-right: 15px;
}
section.single-design .container .content .detail__content--inner .design-items {
  padding-top: 10px;
  margin-top: 10px;
  margin-bottom: 20px;
  border-top: 1px solid #EEE;
}
section.single-design .container .content .detail__content--inner .design-items .design-item {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  padding-bottom: 10px;
  margin-bottom: 10px;
  border-bottom: 1px solid #EEE;
  font-size: 0.8571428571rem;
}
section.single-design .container .content .detail__content--inner .design-items .design-item__th {
  width: 80px;
}
section.single-design .container .content .detail__content--inner .design-items .design-item__td {
  width: calc(100% - 90px);
  color: rgba(34, 34, 34, 0.82);
}
section.single-design .container .content .detail__content--inner .design-description {
  font-size: 0.9285714286rem;
  line-height: 2;
}

/*-----------------------------------------
 Contact Form7
-----------------------------------------*/
input[type=text].wpcf7c-conf,
input[type=email].wpcf7c-conf,
input[type=date].wpcf7c-conf,
select.wpcf7c-conf,
textarea.wpcf7c-conf {
  background: rgba(255, 255, 255, 0) !important;
  border: 0 !important;
  font-weight: bold;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  /*Firefox用*/
  text-indent: 0.01px;
  text-overflow: "";
}

input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px white inset;
}

input.wpcf7c-conf:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px #E5F5F5 inset;
}

.sent .input_form {
  display: none;
}

.comp_form {
  display: none;
}

.sent .comp_form {
  display: block;
}

div.wpcf7-mail-sent-ok {
  display: none !important;
}

#collection section.archives .items {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
#collection section.archives .items .item {
  width: 23%;
  display: -webkit-block;
  display: -moz-box;
  display: -webkit-block;
  display: -moz-blockx;
  display: -ms-block;
  display: -webkit-block;
  display: -moz-block;
  display: block;
  border: none;
}
@media screen and (max-width: 1200px) {
  #collection section.archives .items .item {
    width: 31.333%;
  }
}
@media screen and (max-width: 890px) {
  #collection section.archives .items .item {
    width: 48%;
  }
}
@media screen and (max-width: 450px) {
  #collection section.archives .items .item {
    width: 100%;
  }
}
#collection section.archives .items .item .text {
  margin: 20px 10px;
}

.ChangeElem_Btn_Content {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -moz-box-pack: center;
  -webkit-flex-pack: center;
  -moz-flex-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  justify-content: center;
  margin: 0 auto 30px;
}

button {
  outline: none;
  -webkit-tap-highlight-color: transparent;
}
button .arrow {
  display: block;
  width: 12px;
  height: 12px;
  border-top: 1px solid #0E8184;
  border-right: 1px solid #0E8184;
  text-align: center;
  margin: 5px auto;
}
button .arrow.arrow-bottom {
  transform: rotate(135deg);
}

.ChangeElem_Btn {
  display: inline-block;
  margin: 6px;
  font-size: inherit;
  line-height: 1.42;
  padding: 0.6em 1.6em;
  font-weight: normal;
  border-width: 2px;
  border-style: solid;
  background: transparent;
  border-radius: 5px;
  cursor: pointer;
  user-select: none;
  vertical-align: bottom;
  position: relative;
  border-style: solid;
  overflow: hidden;
  transition: background-color 0.3s, color 0.3s;
  color: #0E8184;
  border-color: #0E8184;
  background-color: #FFF;
  font-size: 1.1428571429rem;
  box-shadow: 0 0 5px rgba(51, 179, 173, 0.3);
}
@media screen and (max-width: 450px) {
  .ChangeElem_Btn {
    padding: 0.6em;
  }
}
@media screen and (max-width: 340px) {
  .ChangeElem_Btn {
    font-size: 1rem;
  }
}

.ChangeElem_Btn:hover:after {
  transform: scaleX(1);
  opacity: 1;
  transition: transform 0.3s, opacity 0.3s;
}

.ChangeElem_Btn:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: -1;
  border-radius: 1.46em;
  transform: scaleX(0.7);
  opacity: 0;
  transition: transform 0.8s, opacity 0.3s;
  background-color: #0E8184;
}

.ChangeElem_Btn:hover {
  color: #FFF;
  background-color: #7CCECC;
  border-color: #7CCECC;
}
.ChangeElem_Btn:hover .arrow {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}

.ChangeElem_Btn.is-active,
.ChangeElem_Btn:active {
  background-color: #0E8184;
  color: #FFF;
}
.ChangeElem_Btn.is-active .arrow,
.ChangeElem_Btn:active .arrow {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}

.ChangeElem_Btn.is-active:after,
.ChangeElem_Btn:active:after {
  background-color: #0E8184;
}

.ChangeElem_Panel {
  display: none;
  transition: all 0.3s 0.5s;
}
.ChangeElem_Panel.is-show {
  display: block;
  opacity: 1;
  animation-duration: 1s;
  animation-name: fade-in;
  -moz-animation-duration: 1s;
  -moz-animation-name: fade-in;
  -webkit-animation-duration: 1s;
  -webkit-animation-name: fade-in;
}

@keyframes fade-in {
  0% {
    display: none;
    opacity: 0;
  }
  1% {
    display: block;
    opacity: 0;
  }
  100% {
    display: block;
    opacity: 1;
  }
}
@-moz-keyframes fade-in {
  0% {
    display: none;
    opacity: 0;
  }
  1% {
    display: block;
    opacity: 0;
  }
  100% {
    display: block;
    opacity: 1;
  }
}
@-webkit-keyframes fade-in {
  0% {
    display: none;
    opacity: 0;
  }
  1% {
    display: block;
    opacity: 0;
  }
  100% {
    display: block;
    opacity: 1;
  }
}
.illust {
  max-width: 100px;
  height: auto;
}

.absolute-block {
  position: absolute;
  top: 260px;
  left: 50%;
  z-index: -1;
  transform: translate(-50%, -50%);
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-pack: justify;
  -moz-box-pack: justify;
  -webkit-flex-pack: justify;
  -moz-flex-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
  width: calc(100% - 20px);
  max-width: 800px;
  height: 200px;
  mix-blend-mode: screen;
}
@media screen and (max-width: 450px) {
  .absolute-block {
    top: 90px;
  }
}
.absolute-block__item {
  width: 100px;
}
.absolute-block__item:nth-child(even) {
  margin-top: 100px;
}
@media screen and (max-width: 450px) {
  .absolute-block__item:nth-child(even) {
    margin-top: 60px;
  }
}
.absolute-block__item.width-110 {
  width: 110px;
}
.absolute-block__item.width-110 .illust {
  max-width: 110px;
}
.absolute-block__item.width-120 {
  width: 120px;
}
.absolute-block__item.width-120 .illust {
  max-width: 120px;
}
.absolute-block__item.width-130 {
  width: 130px;
}
.absolute-block__item.width-130 .illust {
  max-width: 130px;
}
.absolute-block__item.width-140 {
  width: 140px;
}
.absolute-block__item.width-140 .illust {
  max-width: 140px;
}
.absolute-block__item.width-150 {
  width: 150px;
}
.absolute-block__item.width-150 .illust {
  max-width: 150px;
}
.absolute-block__item.width-160 {
  width: 160px;
}
.absolute-block__item.width-160 .illust {
  max-width: 160px;
}
@media screen and (max-width: 450px) {
  .absolute-block__item.width-110, .absolute-block__item.width-120, .absolute-block__item.width-130, .absolute-block__item.width-140, .absolute-block__item.width-150, .absolute-block__item.width-160 {
    width: 110px;
  }
  .absolute-block__item.width-110 .illust, .absolute-block__item.width-120 .illust, .absolute-block__item.width-130 .illust, .absolute-block__item.width-140 .illust, .absolute-block__item.width-150 .illust, .absolute-block__item.width-160 .illust {
    max-width: 110px;
  }
}
.absolute-block.absolute-block2 .absolute-block__item {
  margin-top: 100px;
}
.absolute-block.absolute-block2 .absolute-block__item:nth-child(even) {
  margin-top: 0px;
}

.is-pc {
  display: inherit;
}
@media screen and (max-width: 540px) {
  .is-pc {
    display: none;
  }
}

.is-sp {
  display: none;
}
@media screen and (max-width: 540px) {
  .is-sp {
    display: inherit;
  }
}

/* modal */
.modal {
  background-color: rgba(0, 0, 0, 0.8);
  cursor: pointer;
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10000;
  overflow-y: auto;
  padding: 50px;
}
@media screen and (max-width: 540px) {
  .modal {
    padding: 0;
  }
}
.modal .modal_wrap {
  max-width: 900px;
  margin: auto;
  background-color: #FFF;
}
.modal .modal_wrap .modal_content .modal_close {
  position: fixed;
  top: 50px;
  right: 50px;
  width: 50px;
  height: 50px;
  z-index: 10;
}
@media screen and (max-width: 540px) {
  .modal .modal_wrap .modal_content .modal_close {
    top: 20px;
    right: 20px;
  }
}
.modal .modal_wrap .modal_content .modal_close .close-btn {
  position: relative;
  top: 50%;
}
.modal .modal_wrap .modal_content .modal_close .close-btn::before, .modal .modal_wrap .modal_content .modal_close .close-btn::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: #4CBCB9;
}
.modal .modal_wrap .modal_content .modal_close .close-btn::before {
  transform: rotateZ(45deg);
}
.modal .modal_wrap .modal_content .modal_close .close-btn::after {
  transform: rotateZ(-45deg);
}
.modal .modal_wrap .modal_content .service_item {
  padding: 0 !important;
}
.modal .modal_wrap .modal_content .service_item .material-title {
  color: #0E8184;
  padding: 0 16px;
  font-size: 1.4285714286rem;
}
@media screen and (max-width: 890px) {
  .modal .modal_wrap .modal_content .service_item .material-title {
    font-size: 1.2857142857rem;
    padding: 0 8px;
  }
}
.modal .modal_wrap .modal_content .service_item .item_list {
  margin-top: 24px;
}
.modal .modal_wrap .modal_content .service_item .item_list .item {
  display: block;
  margin-top: 0;
}
@media screen and (max-width: 400px) {
  .modal .modal_wrap .modal_content .service_item .item_list .item {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flexbox;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
.modal .modal_wrap .modal_content .service_item .item_list .item .title_h4 {
  width: 100%;
}
.modal .modal_wrap .modal_content .service_item .item_list .item .item_img {
  margin: 0 0 15px;
}
@media screen and (max-width: 400px) {
  .modal .modal_wrap .modal_content .service_item .item_list .item .item_img {
    margin: 0;
  }
}
.modal .modal_wrap .modal_content .service_item .item_list .item .item_img img {
  width: 100%;
  border-radius: 4px;
  overflow: hidden;
  margin: 0;
}
.modal .modal_wrap .modal_content .service_item .item_list .item .item_description {
  width: 100% !important;
  margin: 0;
  text-align: left;
}
.modal .modal_wrap .modal_content .service_item .item_list .item .item_description h5 {
  font-size: 1.1428571429rem;
}
@media screen and (max-width: 890px) {
  .modal .modal_wrap .modal_content .service_item .item_list .item .item_description h5 {
    font-size: 1rem;
    line-height: 1.4;
    margin-bottom: 4px;
  }
}
@media screen and (max-width: 890px) {
  .modal .modal_wrap .modal_content .service_item .item_list .item .item_description p {
    font-size: 0.8571428571rem;
    line-height: 1.4;
  }
}
.modal .modal_wrap .modal_content .service_item .item_list .item .title_h5 {
  border-bottom: none;
  text-align: center;
}
.modal .modal_wrap .modal_content .service_item .item_list .item .content_read {
  text-align: center;
}
@media screen and (max-width: 540px) {
  .modal .modal_wrap .modal_content .service_item .item_list .item .content_read {
    text-align: left;
  }
}
@media screen and (max-width: 890px) {
  .modal .modal_wrap .modal_content .service_item .item_list .item.item_list_col2 {
    width: calc(50% - 30px);
    margin-left: 15px;
    margin-right: 15px;
  }
}
@media screen and (max-width: 400px) {
  .modal .modal_wrap .modal_content .service_item .item_list .item.item_list_col2 {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 24px;
  }
}
@media screen and (max-width: 400px) {
  .modal .modal_wrap .modal_content .service_item .item_list .item.item_list_col2 .item_img {
    width: 50%;
    margin-right: 16px;
  }
}
@media screen and (max-width: 400px) {
  .modal .modal_wrap .modal_content .service_item .item_list .item.item_list_col2 .item_description {
    width: calc(50% - 16px) !important;
  }
}

body.modal_open {
  overflow: hidden;
  height: 100%;
}

h3.delighter {
  position: relative;
  line-height: 1.5;
}
h3.delighter::after {
  position: absolute;
  left: 0;
  bottom: 8px;
  content: "";
  display: block;
  height: 14px;
  background-color: #4CBCB9;
  transition: all 0.3s ease-out;
  width: 100%;
  transform: scaleX(0);
  transform-origin: left;
  opacity: 0.3;
}
h3.started::after {
  transform: scaleX(1);
}
h3.ended::after {
  transform: scaleX(0);
}

/* Jewerly top movie */
.post-type-archive-jewelry .top_movie {
  max-width: 1280px;
  margin: 0 auto;
}
@media screen and (max-width: 890px) {
  .post-type-archive-jewelry .top_movie {
    margin-top: 33px;
    height: 100vw;
  }
}
.post-type-archive-jewelry .top_movie .slide {
  overflow: hidden;
}
@media screen and (max-width: 890px) {
  .post-type-archive-jewelry .top_movie .slide {
    height: 100vw !important;
  }
  .post-type-archive-jewelry .top_movie .slide .wp-video {
    width: 100vw !important;
  }
}
@media screen and (max-width: 540px) {
  .post-type-archive-jewelry .top_movie .slide {
    overflow: inherit;
  }
}
.post-type-archive-jewelry .top_movie .slide .mejs-controls {
  display: none;
}
@media screen and (max-width: 890px) {
  .post-type-archive-jewelry .sec1 {
    top: -80px;
  }
  .post-type-archive-jewelry .sec1 .container.mt60 {
    margin-top: 0px !important;
  }
}
.post-type-archive-jewelry .archives-design {
  margin-top: -80px;
}

/* loding */
.loading {
  width: 100vw;
  height: 100vh;
  transition: all 1s;
  background-color: #FFF;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100000;
  /* Loading Animation */
}
.loading .spinner {
  width: 50px;
  height: 50px;
  margin: 200px auto;
  background-color: #4CBCB9;
  border-radius: 100%;
  animation: sk-scaleout 1.5s infinite ease-in-out;
  position: absolute;
  top: calc(50% - 25px);
  left: calc(50% - 25px);
  margin: 0 auto;
}
@keyframes sk-scaleout {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);
    opacity: 0;
  }
}
@-webkit-keyframes animate-svg-fill-1 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(132, 114, 41);
  }
}
@keyframes animate-svg-fill-1 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(132, 114, 41);
  }
}
.loading .svg-elem-1 {
  -webkit-animation: animate-svg-fill-1 0.5s cubic-bezier(0.55, 0.085, 0.68, 0.53) 0.6s both;
  animation: animate-svg-fill-1 0.5s cubic-bezier(0.55, 0.085, 0.68, 0.53) 0.6s both;
}
@-webkit-keyframes animate-svg-fill-2 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(132, 114, 41);
  }
}
@keyframes animate-svg-fill-2 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(132, 114, 41);
  }
}
.loading .svg-elem-2 {
  -webkit-animation: animate-svg-fill-2 0.5s cubic-bezier(0.55, 0.085, 0.68, 0.53) 0.7s both;
  animation: animate-svg-fill-2 0.5s cubic-bezier(0.55, 0.085, 0.68, 0.53) 0.7s both;
}
@-webkit-keyframes animate-svg-fill-3 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(132, 114, 41);
  }
}
@keyframes animate-svg-fill-3 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(132, 114, 41);
  }
}
.loading .svg-elem-3 {
  -webkit-animation: animate-svg-fill-3 0.5s cubic-bezier(0.55, 0.085, 0.68, 0.53) 0.8s both;
  animation: animate-svg-fill-3 0.5s cubic-bezier(0.55, 0.085, 0.68, 0.53) 0.8s both;
}
@-webkit-keyframes animate-svg-fill-4 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(132, 114, 41);
  }
}
@keyframes animate-svg-fill-4 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(132, 114, 41);
  }
}
.loading .svg-elem-4 {
  -webkit-animation: animate-svg-fill-4 0.5s cubic-bezier(0.55, 0.085, 0.68, 0.53) 0.9s both;
  animation: animate-svg-fill-4 0.5s cubic-bezier(0.55, 0.085, 0.68, 0.53) 0.9s both;
}
@-webkit-keyframes animate-svg-fill-5 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(132, 114, 41);
  }
}
@keyframes animate-svg-fill-5 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(132, 114, 41);
  }
}
.loading .svg-elem-5 {
  -webkit-animation: animate-svg-fill-5 0.5s cubic-bezier(0.55, 0.085, 0.68, 0.53) 1s both;
  animation: animate-svg-fill-5 0.5s cubic-bezier(0.55, 0.085, 0.68, 0.53) 1s both;
}
@-webkit-keyframes animate-svg-fill-6 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(132, 114, 41);
  }
}
@keyframes animate-svg-fill-6 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(132, 114, 41);
  }
}
.loading .svg-elem-6 {
  -webkit-animation: animate-svg-fill-6 0.5s cubic-bezier(0.55, 0.085, 0.68, 0.53) 1.1s both;
  animation: animate-svg-fill-6 0.5s cubic-bezier(0.55, 0.085, 0.68, 0.53) 1.1s both;
}
@-webkit-keyframes animate-svg-fill-7 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(132, 114, 41);
  }
}
@keyframes animate-svg-fill-7 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(132, 114, 41);
  }
}
.loading .svg-elem-7 {
  -webkit-animation: animate-svg-fill-7 0.5s cubic-bezier(0.55, 0.085, 0.68, 0.53) 1.2s both;
  animation: animate-svg-fill-7 0.5s cubic-bezier(0.55, 0.085, 0.68, 0.53) 1.2s both;
}
@-webkit-keyframes animate-svg-fill-8 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(132, 114, 41);
  }
}
@keyframes animate-svg-fill-8 {
  0% {
    fill: transparent;
  }
  100% {
    fill: rgb(132, 114, 41);
  }
}
.loading .svg-elem-8 {
  -webkit-animation: animate-svg-fill-8 0.5s cubic-bezier(0.55, 0.085, 0.68, 0.53) 1.3s both;
  animation: animate-svg-fill-8 0.5s cubic-bezier(0.55, 0.085, 0.68, 0.53) 1.3s both;
}

.simcal-default-calendar-grid.simcal-default-calendar-light .simcal-calendar-grid .simcal-calendar-head .simcal-week-day {
  font-family: sans-serif;
  font-weight: normal;
  padding-bottom: 8px;
}
.simcal-default-calendar-grid.simcal-default-calendar-light .simcal-calendar-grid .simcal-month td {
  font-family: sans-serif;
  font-weight: normal;
}
.simcal-default-calendar-grid.simcal-default-calendar-light .simcal-day-number {
  background-color: #E5F5F5 !important;
}
.simcal-default-calendar-grid.simcal-default-calendar-light .simcal-day-has-events .simcal-day-number {
  background-color: #4CBCB9 !important;
}
.simcal-default-calendar-grid.simcal-default-calendar-light .simcal-events-dots b {
  color: #EE8593 !important;
  font-size: 28px;
  font-weight: 900;
  width: 14px;
  display: inline-block;
}

.simcal-event-bubble {
  border-radius: 16px !important;
  box-shadow: 2px 4px 16px rgba(33, 126, 124, 0.24) !important;
}
.simcal-event-bubble .simcal-event:not(:first-child) {
  border-top: 1px solid #EEE;
  padding-top: 8px;
}
.simcal-event-bubble .simcal-event .simcal-event-details {
  font-family: sans-serif;
}
.simcal-event-bubble .simcal-event .simcal-event-details a {
  background-color: #4CBCB9;
  color: #FFF;
  padding: 5px;
  border-radius: 4px;
  text-decoration: none;
}/*# sourceMappingURL=style.css.map */