@charset "UTF-8";
@import url("//fonts.googleapis.com/css?family=Sanchez");
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, dialog, figure, footer, header,
hgroup, menu, nav, section, menu,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background-color: transparent;
}

body {
  line-height: 1;
}

article, aside, dialog, figure, footer, header,
hgroup, nav, section {
  display: block;
}

ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}

a {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

.w100 {
  width: 100%;
}

.w90 {
  width: 90%;
}

.w80 {
  width: 80%;
}

.w70 {
  width: 70%;
}

.w60 {
  width: 60%;
}

.w50 {
  width: 50%;
}

.w40 {
  width: 40%;
}

.w30 {
  width: 30%;
}

.w20 {
  width: 20%;
}

.w10 {
  width: 10%;
}

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

.mb5 {
  margin-bottom: 5px;
}

.mb10 {
  margin-bottom: 10px;
}

.mb11 {
  margin-bottom: 11px;
}

.mb14 {
  margin-bottom: 14px;
}

.mb15 {
  margin-bottom: 15px;
}

.mb20 {
  margin-bottom: 20px;
}

.mb25 {
  margin-bottom: 25px;
}

.mb30 {
  margin-bottom: 30px;
}

.mb35 {
  margin-bottom: 35px;
}

.mb40 {
  margin-bottom: 40px;
}

.mb45 {
  margin-bottom: 45px;
}

.mb50 {
  margin-bottom: 50px;
}

.mb55 {
  margin-bottom: 55px;
}

.mb60 {
  margin-bottom: 60px;
}

.mb65 {
  margin-bottom: 65px;
}

.mb70 {
  margin-bottom: 70px;
}

.mb75 {
  margin-bottom: 75px;
}

.mb80 {
  margin-bottom: 80px;
}

.mb85 {
  margin-bottom: 85px;
}

.mb90 {
  margin-bottom: 90px;
}

.mb95 {
  margin-bottom: 95px;
}

.mb100 {
  margin-bottom: 100px;
}

.mr5 {
  margin-right: 5px;
}

.mr9 {
  margin-right: 9px;
}

.mr10 {
  margin-right: 10px;
}

.mr15 {
  margin-right: 15px;
}

.mr20 {
  margin-right: 20px;
}

.mr25 {
  margin-right: 25px;
}

.mr30 {
  margin-right: 30px;
}

.mr35 {
  margin-right: 35px;
}

.mr40 {
  margin-right: 40px;
}

.mr45 {
  margin-right: 45px;
}

.mr50 {
  margin-right: 50px;
}

.ml5 {
  margin-left: 5px;
}

.ml10 {
  margin-left: 10px;
}

.ml15 {
  margin-left: 15px;
}

.ml20 {
  margin-left: 20px;
}

.ml25 {
  margin-left: 25px;
}

.ml30 {
  margin-left: 30px;
}

.ml35 {
  margin-left: 35px;
}

.ml40 {
  margin-left: 40px;
}

.ml45 {
  margin-left: 45px;
}

.ml50 {
  margin-left: 50px;
}

.pt5 {
  padding-top: 5px;
}

.pt10 {
  padding-top: 10px;
}

.pt15 {
  padding-top: 15px;
}

.pt20 {
  padding-top: 20px;
}

.pt25 {
  padding-top: 25px;
}

.pt30 {
  padding-top: 30px;
}

.pt35 {
  padding-top: 35px;
}

.op a img,
.op2 {
  transition: opacity 0.5s;
  -moz-transition: opacity 0.5s;
  -webkit-transition: opacity 0.5s;
  -o-transition: opacity 0.5s;
}

.op a img:hover,
.op2:hover {
  opacity: 0.7;
  -moz-opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.tar {
  text-align: right;
}

.tac {
  text-align: center;
}

.flL {
  float: left;
}

.flR {
  float: right;
}

.clearfix:after {
  height: 0;
  visibility: hidden;
  content: ".";
  display: block;
  clear: both;
  font-size: 0;
  line-height: 0;
  overflow: hidden;
}

.clearfix {
  _height: 1px;
  min-height: 1px;
  /*・･*/
  	                      /*/
    height: auto;
    overflow: hidden;
    /**/
}

.show_pc {
  display: block;
}
@media only screen and (max-width: 979px) {
  .show_pc {
    display: none;
  }
}
@media only screen and (max-width: 479px) {
  .show_pc {
    display: none;
  }
}

.show_pctb {
  display: block;
}
@media only screen and (max-width: 979px) {
  .show_pctb {
    display: block;
  }
}
@media only screen and (max-width: 479px) {
  .show_pctb {
    display: none;
  }
}

.show_tbsp {
  display: none;
}
@media only screen and (max-width: 979px) {
  .show_tbsp {
    display: block;
  }
}
@media only screen and (max-width: 479px) {
  .show_tbsp {
    display: block;
  }
}

.show_tb {
  display: none;
}
@media only screen and (max-width: 979px) {
  .show_tb {
    display: block;
  }
}
@media only screen and (max-width: 479px) {
  .show_tb {
    display: none;
  }
}

.show_sp {
  display: none;
}
@media only screen and (max-width: 979px) {
  .show_sp {
    display: none;
  }
}
@media only screen and (max-width: 479px) {
  .show_sp {
    display: block;
  }
}

/*-------------------------------------------------
    layout base 
-------------------------------------------------*/
html {
  -ms-overflow-style: none;
  /* IE10+ */
}

html::-webkit-scrollbar {
  display: none;
}

/* Webkit(Chrome) */
html,
body {
  width: 100%;
  height: auto;
  font-smoothing: antialiased;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-text-size-adjust: 100%;
  letter-spacing: 0.08em;
  counter-reset: rank;
}

input,
textarea,
button {
  border-radius: 0 !important;
  -webkit-appearance: none !important;
  outline: 0 !important;
}

* {
  -webkit-tap-highlight-color: rgba(246, 246, 246, 0) !important;
}

::selection {
  color: #999;
  background: #eee;
  text-decoration: underline;
}

::-moz-selection {
  color: #999;
  background: #eee;
}

img {
  user-select: none;
  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

body {
  overflow: scroll;
  -webkit-overflow-scrolling: touch;
}

.element {
  overflow: scroll;
  -webkit-overflow-scrolling: touch;
}

/*-------------------------------------------------
    text color and size
-------------------------------------------------*/
body,
th,
td,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
input,
textarea,
option,
div,
p,
dt,
dd,
li,
address {
  font-weight: normal;
  font-style: normal;
}

/*-------------------------------------------------
 text link
 -------------------------------------------------*/
a {
  text-decoration: none;
}
a.text_tel_link {
  cursor: default !important;
  display: inline !important;
  text-decoration: none !important;
}

a:hover {
  text-decoration: none;
}

/*-------------------------------------------------
    article
-------------------------------------------------*/
article {
  text-align: left;
}

img {
  user-select: none;
  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

.ci_wrap {
  width: 100%;
  height: 100%;
  overflow: hidden;
  display: block;
  position: relative;
}
.ci_wrap img.ci {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

body {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
body.load #wrapAll {
  opacity: 1;
}
body #wrapAll {
  overflow: hidden;
  opacity: 0;
  position: relative;
  z-index: 1;
  transition: opacity 800ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -webkit-transition: opacity 800ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -moz-transition: opacity 800ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -o-transition: opacity 800ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -ms-transition: opacity 800ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
}

span {
  font-size: inherit;
  color: inherit;
  line-height: inherit;
  letter-spacing: inherit;
}

main, section, nav, div, ul, li {
  box-sizing: border-box;
}

/*-------------------------------------------------
    module
-------------------------------------------------*/
main,
section,
nav,
div,
ul,
li {
  box-sizing: border-box;
}

div.img img {
  width: 100%;
  display: block;
}

::selection {
  color: #999;
  background: #eee;
  text-decoration: underline;
}

::-moz-selection {
  color: #999;
  background: #eee;
}

.ttl {
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

a {
  color: #1a1a1a;
}

ul.row {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: stretch;
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  -webkit-align-items: stretch;
}
ul.row.r2 > li {
  width: calc( ( 100% - 1rem * ( 2 - 1)) / 2);
  margin-top: 1rem;
}
ul.row.r2 > li:nth-child(1) {
  margin-top: 0;
}
ul.row.r2 > li:nth-child(2) {
  margin-top: 0;
}
ul.row.r2 > li:not(:nth-child(2n)) {
  margin-right: 1rem;
}
ul.row.r3 > li {
  width: calc( ( 100% - 1rem * ( 3 - 1)) / 3);
  margin-top: 1rem;
}
ul.row.r3 > li:nth-child(1) {
  margin-top: 0;
}
ul.row.r3 > li:nth-child(2) {
  margin-top: 0;
}
ul.row.r3 > li:nth-child(3) {
  margin-top: 0;
}
ul.row.r3 > li:not(:nth-child(3n)) {
  margin-right: 1rem;
}
ul.row.r4 > li {
  width: calc( ( 100% - 1rem * ( 4 - 1)) / 4);
  margin-top: 1rem;
}
ul.row.r4 > li:nth-child(1) {
  margin-top: 0;
}
ul.row.r4 > li:nth-child(2) {
  margin-top: 0;
}
ul.row.r4 > li:nth-child(3) {
  margin-top: 0;
}
ul.row.r4 > li:nth-child(4) {
  margin-top: 0;
}
ul.row.r4 > li:not(:nth-child(4n)) {
  margin-right: 1rem;
}
ul.row.r5 > li {
  width: calc( ( 100% - 1rem * ( 5 - 1)) / 5);
  margin-top: 1rem;
}
ul.row.r5 > li:nth-child(1) {
  margin-top: 0;
}
ul.row.r5 > li:nth-child(2) {
  margin-top: 0;
}
ul.row.r5 > li:nth-child(3) {
  margin-top: 0;
}
ul.row.r5 > li:nth-child(4) {
  margin-top: 0;
}
ul.row.r5 > li:nth-child(5) {
  margin-top: 0;
}
ul.row.r5 > li:not(:nth-child(5n)) {
  margin-right: 1rem;
}
ul.row.r6 > li {
  width: calc( ( 100% - 1rem * ( 6 - 1)) / 6);
  margin-top: 1rem;
}
ul.row.r6 > li:nth-child(1) {
  margin-top: 0;
}
ul.row.r6 > li:nth-child(2) {
  margin-top: 0;
}
ul.row.r6 > li:nth-child(3) {
  margin-top: 0;
}
ul.row.r6 > li:nth-child(4) {
  margin-top: 0;
}
ul.row.r6 > li:nth-child(5) {
  margin-top: 0;
}
ul.row.r6 > li:nth-child(6) {
  margin-top: 0;
}
ul.row.r6 > li:not(:nth-child(6n)) {
  margin-right: 1rem;
}
ul.row.r7 > li {
  width: calc( ( 100% - 1rem * ( 7 - 1)) / 7);
  margin-top: 1rem;
}
ul.row.r7 > li:nth-child(1) {
  margin-top: 0;
}
ul.row.r7 > li:nth-child(2) {
  margin-top: 0;
}
ul.row.r7 > li:nth-child(3) {
  margin-top: 0;
}
ul.row.r7 > li:nth-child(4) {
  margin-top: 0;
}
ul.row.r7 > li:nth-child(5) {
  margin-top: 0;
}
ul.row.r7 > li:nth-child(6) {
  margin-top: 0;
}
ul.row.r7 > li:nth-child(7) {
  margin-top: 0;
}
ul.row.r7 > li:not(:nth-child(7n)) {
  margin-right: 1rem;
}
ul.row.r8 > li {
  width: calc( ( 100% - 1rem * ( 8 - 1)) / 8);
  margin-top: 1rem;
}
ul.row.r8 > li:nth-child(1) {
  margin-top: 0;
}
ul.row.r8 > li:nth-child(2) {
  margin-top: 0;
}
ul.row.r8 > li:nth-child(3) {
  margin-top: 0;
}
ul.row.r8 > li:nth-child(4) {
  margin-top: 0;
}
ul.row.r8 > li:nth-child(5) {
  margin-top: 0;
}
ul.row.r8 > li:nth-child(6) {
  margin-top: 0;
}
ul.row.r8 > li:nth-child(7) {
  margin-top: 0;
}
ul.row.r8 > li:nth-child(8) {
  margin-top: 0;
}
ul.row.r8 > li:not(:nth-child(8n)) {
  margin-right: 1rem;
}
ul.row.r9 > li {
  width: calc( ( 100% - 1rem * ( 9 - 1)) / 9);
  margin-top: 1rem;
}
ul.row.r9 > li:nth-child(1) {
  margin-top: 0;
}
ul.row.r9 > li:nth-child(2) {
  margin-top: 0;
}
ul.row.r9 > li:nth-child(3) {
  margin-top: 0;
}
ul.row.r9 > li:nth-child(4) {
  margin-top: 0;
}
ul.row.r9 > li:nth-child(5) {
  margin-top: 0;
}
ul.row.r9 > li:nth-child(6) {
  margin-top: 0;
}
ul.row.r9 > li:nth-child(7) {
  margin-top: 0;
}
ul.row.r9 > li:nth-child(8) {
  margin-top: 0;
}
ul.row.r9 > li:nth-child(9) {
  margin-top: 0;
}
ul.row.r9 > li:not(:nth-child(9n)) {
  margin-right: 1rem;
}
ul.row.r10 > li {
  width: calc( ( 100% - 1rem * ( 10 - 1)) / 10);
  margin-top: 1rem;
}
ul.row.r10 > li:nth-child(1) {
  margin-top: 0;
}
ul.row.r10 > li:nth-child(2) {
  margin-top: 0;
}
ul.row.r10 > li:nth-child(3) {
  margin-top: 0;
}
ul.row.r10 > li:nth-child(4) {
  margin-top: 0;
}
ul.row.r10 > li:nth-child(5) {
  margin-top: 0;
}
ul.row.r10 > li:nth-child(6) {
  margin-top: 0;
}
ul.row.r10 > li:nth-child(7) {
  margin-top: 0;
}
ul.row.r10 > li:nth-child(8) {
  margin-top: 0;
}
ul.row.r10 > li:nth-child(9) {
  margin-top: 0;
}
ul.row.r10 > li:nth-child(10) {
  margin-top: 0;
}
ul.row.r10 > li:not(:nth-child(10n)) {
  margin-right: 1rem;
}

.tb {
  display: table;
  width: 100%;
}
.tb > .tc, .tb > dt, .tb > dd {
  display: table-cell;
}

.a4tate {
  position: relative;
  width: 210mm;
  height: 296mm;
  background-color: #fff;
  box-sizing: border-box;
  page-break-after: always;
  padding: 21mm;
  font-size: 8pt;
  letter-spacing: 0.08em;
  color: #1a1a1a;
}
@media screen {
  .a4tate {
    margin: 2rem auto;
  }
}
.a4tate h1 span,
.a4tate h2 span,
.a4tate h3 span,
.a4tate h4 span,
.a4tate .lv1 span,
.a4tate .lv2 span,
.a4tate .lv3 span,
.a4tate .lv4 span {
  display: inline-block;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  line-height: 1;
  font-weight: 400;
}
.a4tate h1 span span,
.a4tate h2 span span,
.a4tate h3 span span,
.a4tate h4 span span,
.a4tate .lv1 span span,
.a4tate .lv2 span span,
.a4tate .lv3 span span,
.a4tate .lv4 span span {
  display: block;
  font-size: 1rem;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  line-height: 1;
  font-weight: 400;
}
.a4tate h1 .en,
.a4tate h2 .en,
.a4tate h3 .en,
.a4tate h4 .en,
.a4tate .lv1 .en,
.a4tate .lv2 .en,
.a4tate .lv3 .en,
.a4tate .lv4 .en {
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.a4tate h1.min span,
.a4tate .lv1.min span {
  font-weight: 700 !important;
}
.a4tate h1 span,
.a4tate .lv1 span {
  font-size: 1.8rem;
  white-space: nowrap;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-family: "Sanchez", serif;
  font-weight: 900;
}
.a4tate h1 span span,
.a4tate .lv1 span span {
  font-size: 1rem;
  margin-top: 1rem;
  color: #A9A791;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 500;
}
.a4tate h2,
.a4tate .lv2 {
  text-align: center;
}
.a4tate h2 span,
.a4tate .lv2 span {
  font-size: 1.7rem;
  white-space: nowrap;
  font-family: "Sanchez", serif;
  font-weight: normal;
}
@media only screen and (max-width: 479px) {
  .a4tate h2 span,
  .a4tate .lv2 span {
    font-size: 1.5rem;
  }
}
.a4tate h2 span span,
.a4tate .lv2 span span {
  margin-top: 10px;
  color: #82806f;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 500;
}
.a4tate h3,
.a4tate .lv3 {
  text-align: center;
}
.a4tate h3 span,
.a4tate .lv3 span {
  font-size: 1.3rem;
}
.a4tate h3 span span,
.a4tate .lv3 span span {
  margin-top: 1rem;
  color: #82806f;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 0.9rem;
  font-weight: 500;
}
.a4tate h4 span,
.a4tate .lv4 span {
  font-size: 1.1rem;
}
.a4tate h4 span span,
.a4tate .lv4 span span {
  margin-top: 0.5rem;
}
.a4tate small,
.a4tate .sm,
.a4tate .cap {
  font-size: 0.8rem;
}
.a4tate p span {
  line-height: 2;
}

/*-------------------------------------------------
    wordpress manual
-------------------------------------------------*/
@media screen {
  body#wpmanual {
    background-color: #eee;
  }
}
body#wpmanual div#wrapAll main section {
  padding: 15mm 10mm;
  position: relative;
}
body#wpmanual div#wrapAll main section div.mainttl {
  position: absolute;
  top: 1rem;
  right: 3rem;
}
body#wpmanual div#wrapAll main section div.mainttl p {
  text-align: right;
}
body#wpmanual div#wrapAll main section div.mainttl p span {
  font-size: 0.9rem;
  font-color: #eee;
}
body#wpmanual div#wrapAll main section div.secwrap {
  margin: 0;
  width: 100%;
}
body#wpmanual div#wrapAll main section div.secwrap ul {
  counter-reset: number;
}
body#wpmanual div#wrapAll main section div.secwrap ul li {
  margin-bottom: 4rem;
}
body#wpmanual div#wrapAll main section div.secwrap ul li div.ttl {
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee;
  padding: 1rem 0;
  margin-bottom: 2rem;
}
body#wpmanual div#wrapAll main section div.secwrap ul li div.ttl h2 {
  margin-bottom: 0rem;
}
body#wpmanual div#wrapAll main section div.secwrap ul li div.ttl h2 span {
  font-family: "Prestige Elite", "Tazugane Gothic", "Yu Gothic", YuGothic, "Helvetica Neue", Verdana, Meiryo, sans-serif;
  font-size: 1.1rem;
  font-weight: bold;
}
body#wpmanual div#wrapAll main section div.secwrap ul li div.body div.tb div.tc {
  width: 40%;
  vertical-align: top;
}
body#wpmanual div#wrapAll main section div.secwrap ul li div.body div.tb div.tc.img {
  width: 60%;
}
body#wpmanual div#wrapAll main section div.secwrap ul li div.body div.tb div.tc.img img {
  width: 100%;
  display: block;
}
body#wpmanual div#wrapAll main section div.secwrap ul li div.body div.tb div.tc.txt {
  padding-right: 3rem;
}
body#wpmanual div#wrapAll main section div.secwrap ul li div.body div.tb div.tc.txt ul {
  counter-reset: numbers;
}
body#wpmanual div#wrapAll main section div.secwrap ul li div.body div.tb div.tc.txt ul li {
  border-top: 1px solid transparent;
  padding: 0;
  margin-bottom: 0;
}
body#wpmanual div#wrapAll main section div.secwrap ul li div.body div.tb div.tc.txt ul li.last-child {
  border-bottom: 1px solid transparent;
}
body#wpmanual div#wrapAll main section div.secwrap ul li div.body div.tb div.tc.txt ul li:not(:last-child) {
  margin-bottom: 3rem;
}
body#wpmanual div#wrapAll main section div.secwrap ul li div.body div.tb div.tc.txt ul li h3 {
  margin-bottom: 1rem;
}
body#wpmanual div#wrapAll main section div.secwrap ul li div.body div.tb div.tc.txt ul li h3 span {
  font-family: "Prestige Elite", "Tazugane Gothic", "Yu Gothic", YuGothic, "Helvetica Neue", Verdana, Meiryo, sans-serif;
  font-size: 1rem;
  font-weight: bold;
}
body#wpmanual div#wrapAll main section div.secwrap ul li div.body div.tb div.tc.txt ul li h3 span::before {
  counter-increment: numbers;
  content: counter(numbers);
  margin-right: 1rem;
  font-weight: bold;
  padding: 0.3rem 0.3rem 0.4rem 0.5rem;
  text-transform: lowercase;
  border: 1px solid #1a1a1a;
  font-size: 0.8rem;
}
body#wpmanual div#wrapAll main section div.secwrap ul li div.body div.tb div.tc.txt ul li p span {
  font-family: "Prestige Elite", "Tazugane Gothic", "Yu Gothic", YuGothic, "Helvetica Neue", Verdana, Meiryo, sans-serif;
}
body#wpmanual div#wrapAll main section div.secwrap ul li div.body div.tb div.tc.txt ul li p span a {
  color: #89D3E4;
  text-decoration: underline;
}
body#wpmanual div#wrapAll main section div.secwrap ul li div.body div.tb div.tc.txt ul li p span .red {
  color: red;
}

/*-------------------------------------------------
    style guide
-------------------------------------------------*/
body#styleguide div#wrapAll {
  position: relative;
}
body#styleguide div#wrapAll .sg {
  font-family: "Prestige Elite", "Tazugane Gothic", "Yu Gothic", YuGothic, "Helvetica Neue", Verdana, Meiryo, sans-serif !important;
  font-size: 11px !important;
  color: #666 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
body#styleguide div#wrapAll .sg span {
  font-family: "Prestige Elite", "Tazugane Gothic", "Yu Gothic", YuGothic, "Helvetica Neue", Verdana, Meiryo, sans-serif !important;
  font-size: 11px !important;
  color: #666 !important;
}
body#styleguide div#wrapAll a {
  color: #000;
  color: #666;
}
body#styleguide div#wrapAll nav {
  width: 200px;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background-color: #fff;
  z-index: 10;
  overflow-y: scroll;
  box-sizing: border-box;
  padding: 0px 40px;
}
body#styleguide div#wrapAll nav div.navwrap {
  width: auto;
  margin-left: auto;
  margin-right: auto;
  padding-top: 6rem;
  padding-bottom: 6rem;
}
body#styleguide div#wrapAll nav div.navwrap div.navttl {
  padding-bottom: 3rem;
}
body#styleguide div#wrapAll nav div.navwrap div.navttl h1 {
  line-height: 2;
}
body#styleguide div#wrapAll nav div.navwrap div.navttl h1 span {
  color: #aaa;
  font-size: 0.8em;
}
body#styleguide div#wrapAll nav div.navwrap div.navbox {
  margin-top: 2rem;
  width: auto;
}
body#styleguide div#wrapAll nav div.navwrap div.navbox h4 {
  margin-bottom: 0.5rem;
  font-weight: bold;
}
body#styleguide div#wrapAll nav div.navwrap div.navbox ul {
  width: auto;
}
body#styleguide div#wrapAll nav div.navwrap div.navbox ul li {
  padding: 0.5rem 0;
  width: auto;
  cursor: pointer;
}
body#styleguide div#wrapAll nav div.navwrap div.navbox ul li span {
  display: inline-block;
  padding: 0.5rem 0;
  border-bottom: 2px solid transparent;
  transition: 0.33s;
}
@media only screen and (min-width: 979px) {
  body#styleguide div#wrapAll nav div.navwrap div.navbox ul li:hover span {
    border-bottom: 2px solid #ccc;
  }
}
body#styleguide div#wrapAll main {
  width: 100%;
  padding-left: 200px;
  background-color: #f9f9f9;
  padding-top: 6rem;
  padding-bottom: 4rem;
}
body#styleguide div#wrapAll main section {
  width: 80%;
  min-width: 666px;
  margin-left: auto;
  margin-right: auto;
  background-color: #fff;
  padding: 4rem;
  margin-bottom: 4rem;
}
body#styleguide div#wrapAll main section div.secwrap {
  margin-top: 0;
  width: 100%;
}
body#styleguide div#wrapAll main section div.ttl {
  margin: 0 !important;
}
body#styleguide div#wrapAll main section div.ttl h2 span {
  display: block;
  color: #aaa;
  padding-bottom: 1rem;
  border-bottom: 1px solid #ccc;
}
body#styleguide div#wrapAll main section div.body {
  padding: 2rem 0 0 0 !important;
}
body#styleguide div#wrapAll main section div.body h3 span {
  line-height: 1;
}
body#styleguide div#wrapAll main section div.body h3 span span {
  display: block;
  color: #aaa;
  margin-top: 0.5rem;
}
body#styleguide div#wrapAll main section div.body h3 + p {
  margin-top: 1rem;
}
body#styleguide div#wrapAll main section div.body p {
  line-height: 1.75;
}
body#styleguide div#wrapAll main section div.body div.subttl {
  margin-bottom: 2rem;
}
body#styleguide div#wrapAll main section div.body div.txt + div.img {
  margin-top: 1rem;
}
body#styleguide div#wrapAll main section div.body div.sec {
  margin-bottom: 4rem;
  padding-bottom: 2rem;
  border-bottom: 1px dotted #ccc;
}
body#styleguide div#wrapAll main section div.body div.sec:last-child {
  margin-bottom: 0;
  border-bottom: 0px;
}
body#styleguide div#wrapAll main section#target h3 {
  text-align: center;
}
body#styleguide div#wrapAll main section#target p {
  text-align: center;
}
body#styleguide div#wrapAll main section#font div.body ul li div p span {
  font-size: 1.2rem;
}
body#styleguide div#wrapAll main section#color ul li {
  margin-bottom: 0;
}
body#styleguide div#wrapAll main section#color ul li div.color {
  width: 100%;
}
body#styleguide div#wrapAll main section#color ul li div.color div.main {
  width: 100%;
}
body#styleguide div#wrapAll main section#color ul li div.color div.main::before {
  content: "";
  display: block;
  padding-top: 66.6%;
}
body#styleguide div#wrapAll main section#color ul li div.color ul li {
  width: 25%;
  margin-right: 0;
  margin-bottom: 0;
}
body#styleguide div#wrapAll main section#color ul li div.color ul li::before {
  content: "";
  display: block;
  padding-top: 100%;
}
body#styleguide div#wrapAll main section#color ul li:nth-child(1) div.main {
  background-color: #A9A791;
}
body#styleguide div#wrapAll main section#color ul li:nth-child(1) ul li:nth-child(1) {
  background-color: #b5b4ae;
}
body#styleguide div#wrapAll main section#color ul li:nth-child(1) ul li:nth-child(2) {
  background-color: #c6c6c6;
}
body#styleguide div#wrapAll main section#color ul li:nth-child(1) ul li:nth-child(3) {
  background-color: #dadada;
}
body#styleguide div#wrapAll main section#color ul li:nth-child(1) ul li:nth-child(4) {
  background-color: #efefef;
}
body#styleguide div#wrapAll main section#color ul li:nth-child(2) div.main {
  background-color: #D69B89;
}
body#styleguide div#wrapAll main section#color ul li:nth-child(2) ul li:nth-child(1) {
  background-color: #dcb7ac;
}
body#styleguide div#wrapAll main section#color ul li:nth-child(2) ul li:nth-child(2) {
  background-color: #e5d2cc;
}
body#styleguide div#wrapAll main section#color ul li:nth-child(2) ul li:nth-child(3) {
  background-color: #f1eae8;
}
body#styleguide div#wrapAll main section#color ul li:nth-child(2) ul li:nth-child(4) {
  background-color: white;
}
body#styleguide div#wrapAll main section#color ul li:nth-child(3) div.main {
  background-color: #e62271;
}
body#styleguide div#wrapAll main section#color ul li:nth-child(3) ul li:nth-child(1) {
  background-color: #e24f8a;
}
body#styleguide div#wrapAll main section#color ul li:nth-child(3) ul li:nth-child(2) {
  background-color: #e178a3;
}
body#styleguide div#wrapAll main section#color ul li:nth-child(3) ul li:nth-child(3) {
  background-color: #e49fbb;
}
body#styleguide div#wrapAll main section#color ul li:nth-child(3) ul li:nth-child(4) {
  background-color: #e9c2d2;
}
body#styleguide div#wrapAll main section#color ul li:nth-child(4) div.main {
  background-color: #1a1a1a;
}
body#styleguide div#wrapAll main section#color ul li:nth-child(4) ul li:nth-child(1) {
  background-color: #666666;
}
body#styleguide div#wrapAll main section#color ul li:nth-child(4) ul li:nth-child(2) {
  background-color: #999999;
}
body#styleguide div#wrapAll main section#color ul li:nth-child(4) ul li:nth-child(3) {
  background-color: #dedede;
}
body#styleguide div#wrapAll main section#color ul li:nth-child(4) ul li:nth-child(4) {
  background-color: #f9f9f9;
}
body#styleguide div#wrapAll main section#size ul.margin li.ms {
  width: 0.5rem;
  height: 0.5rem;
  background-color: #A9A791;
}
body#styleguide div#wrapAll main section#size ul.margin li.m0 {
  width: 1rem;
  height: 1rem;
  background-color: #D69B89;
}
body#styleguide div#wrapAll main section#size ul.margin li.m1 {
  width: 2rem;
  height: 2rem;
  background-color: #e62271;
}
body#styleguide div#wrapAll main section#size ul.margin li.m2 {
  width: 3rem;
  height: 3rem;
  background-color: #b5b4ae;
}
body#styleguide div#wrapAll main section#size ul.margin li.m3 {
  width: 5rem;
  height: 5rem;
  background-color: #dcb7ac;
}
body#styleguide div#wrapAll main section#size ul.margin li.m4 {
  width: 8rem;
  height: 8rem;
  background-color: #e24f8a;
}
body#styleguide div#wrapAll main section#size ul.margin li.m5 {
  width: 13rem;
  height: 13rem;
  background-color: #c6c6c6;
}

footer {
  width: 100%;
}
footer div.footer_wrap {
  background-color: #f7f5eb;
  background-image: url(../img/common/bg8.png);
  padding-top: 56px;
  padding-bottom: 56px;
}
footer div.footer_wrap div.footer_3col {
  width: 90%;
  max-width: 1600px;
  margin-left: auto;
  margin-right: auto;
  display: table;
}
@media only screen and (max-width: 479px) {
  footer div.footer_wrap div.footer_3col {
    display: block;
    width: 92%;
  }
}
footer div.footer_wrap div.footer_3col div.footer_col {
  display: table-cell;
  vertical-align: top;
  width: 33.33%;
}
@media only screen and (max-width: 979px) {
  footer div.footer_wrap div.footer_3col div.footer_col {
    width: 50%;
  }
}
@media only screen and (max-width: 760px) {
  footer div.footer_wrap div.footer_3col div.footer_col {
    display: block;
    width: 100%;
  }
}
@media only screen and (max-width: 760px) {
  footer div.footer_wrap div.footer_3col div.footer_col:nth-child(2) {
    display: none;
  }
}
@media only screen and (max-width: 979px) {
  footer div.footer_wrap div.footer_3col div.footer_col:nth-child(3) {
    display: none;
  }
}
footer div.footer_wrap div.footer_3col div.footer_col div.footer_col_wrap dl dt {
  margin-bottom: 24px;
}
@media only screen and (max-width: 760px) {
  footer div.footer_wrap div.footer_3col div.footer_col div.footer_col_wrap dl dt {
    display: none;
  }
}
footer div.footer_wrap div.footer_3col div.footer_col div.footer_col_wrap dl dt span {
  display: inline-block;
  font-size: 13px;
  line-height: 2;
  letter-spacing: 0.16em;
  font-weight: 700;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
footer div.footer_wrap div.footer_3col div.footer_col div.footer_col_wrap dl dd {
  margin-left: -0.1em;
}
footer div.footer_wrap div.footer_3col div.footer_col div.footer_col_wrap dl dd p {
  display: block;
  margin-bottom: 8px;
}
@media only screen and (max-width: 760px) {
  footer div.footer_wrap div.footer_3col div.footer_col div.footer_col_wrap dl dd p {
    text-align: center !important;
  }
}
footer div.footer_wrap div.footer_3col div.footer_col div.footer_col_wrap dl dd p span {
  font-size: 12px;
  line-height: 2;
  letter-spacing: 0.06em;
}
@media only screen and (max-width: 479px) {
  footer div.footer_wrap div.footer_3col div.footer_col div.footer_col_wrap dl dd p span {
    font-size: 1rem;
  }
}
footer div.footer_wrap div.footer_3col div.footer_col div.footer_col_wrap dl dd p.name span.wrap {
  font-size: 12px;
}
footer div.footer_wrap div.footer_3col div.footer_col div.footer_col_wrap dl dd p.name span.wrap span {
  font-weight: normal;
  font-size: 11px;
  padding-left: 6px;
  display: inline-block;
}
@media only screen and (max-width: 760px) {
  footer div.footer_wrap div.footer_3col div.footer_col div.footer_col_wrap dl dd div.sns {
    width: 190px;
    margin-left: auto;
    margin-right: auto;
  }
}
footer div.footer_wrap div.footer_3col div.footer_col div.footer_col_wrap dl dd ul.footlist {
  width: 100%;
  overflow: hidden;
  margin-left: -0px;
}
footer div.footer_wrap div.footer_3col div.footer_col div.footer_col_wrap dl dd ul.footlist li {
  width: 40%;
  float: left;
  margin-bottom: 10px;
}
footer div.footer_wrap div.footer_3col div.footer_col div.footer_col_wrap dl dd ul.footlist li:before {
  content: "";
  display: inline-block;
  background-color: #b5b5a2;
  width: 8px;
  height: 1px;
  vertical-align: middle;
  margin-right: 10px;
}
footer div.footer_wrap div.footer_3col div.footer_col div.footer_col_wrap dl dd ul.footlist li a {
  display: inline-block;
  position: relative;
}
@media only screen and (min-width: 979px) {
  footer div.footer_wrap div.footer_3col div.footer_col div.footer_col_wrap dl dd ul.footlist li a span {
    transition: color 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
    -webkit-transition: color 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
    -moz-transition: color 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
    -o-transition: color 400ms cub ic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
    -ms-transition: color 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  }
  footer div.footer_wrap div.footer_3col div.footer_col div.footer_col_wrap dl dd ul.footlist li a:hover span {
    color: #D69B89;
  }
}
footer div.footer_wrap div.footer_3col div.footer_col div.footer_col_wrap dl dd ul.footlist li a.blank:before {
  content: "";
  width: 24px;
  height: 24px;
  position: absolute;
  right: -28px;
  top: 50%;
  margin-top: -12px;
  background-image: url(../img/common/icon-18.png);
  background-image: url(../img/common/icon-18.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 12px 12px;
  opacity: 1;
}
footer div.footer_wrap div.footer_3col div.footer_col div.footer_col_wrap dl dd ul.footlist li a span {
  font-size: 12px;
  line-height: 2;
  letter-spacing: 0.06em;
}
footer div.sns {
  overflow: hidden;
}
footer div.sns p.sns_txt {
  float: left;
  display: inline-block;
  vertical-align: middle;
  padding-right: 12px;
}
@media only screen and (max-width: 760px) {
  footer div.sns p.sns_txt {
    clear: both;
    text-align: center;
    padding-right: 0;
    width: 100%;
  }
}
footer div.sns p.sns_txt span {
  line-height: 34px !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
}
footer div.sns ul {
  font-size: 0;
  display: inline-block;
  float: left;
  vertical-align: middle;
}
@media only screen and (max-width: 760px) {
  footer div.sns ul {
    clear: both;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    display: -webkit-flex;
    -webkit-flex-wrap: wrap;
    -webkit-justify-content: center;
    -webkit-align-items: center;
    width: 100%;
  }
}
footer div.sns ul li {
  font-size: 0;
  display: inline-block;
  padding: 6px 6px;
}
footer div.sns ul li a {
  display: block;
  background-color: #31312e;
  background-color: #777769;
  width: 24px;
  height: 24px;
  border-radius: 100%;
  position: relative;
}
@media only screen and (min-width: 979px) {
  footer div.sns ul li a {
    transition: background-color 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
    -webkit-transition: background-color 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
    -moz-transition: background-color 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
    -o-transition: background-color 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
    -ms-transition: background-color 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  }
  footer div.sns ul li a:hover {
    background-color: #d69b89;
  }
}
footer div.sns ul li a.fb:before {
  background-image: url(../img/common/fb_w.png);
  background-image: url(../img/common/fb_w.svg);
}
footer div.sns ul li a.tw:before {
  background-image: url(../img/common/tw_w.png);
  background-image: url(../img/common/tw_w.svg);
}
footer div.sns ul li a.in:before {
  background-image: url(../img/common/in_w.png);
  background-image: url(../img/common/in_w.svg);
}
footer div.sns ul li a:before {
  content: "";
  width: 24px;
  height: 24px;
  position: absolute;
  width: 100%;
  height: 100%;
  background-image: url(../img/common/tw_w.png);
  background-image: url(../img/common/tw_w.svg);
  background-size: 18px 18px;
  background-repeat: no-repeat;
  background-position: center center;
}
footer div.footer_foot {
  background-color: #616558;
  box-sizing: border-box;
}
footer div.footer_foot .footer_foot_wrap {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
  padding-top: 10px;
  padding-bottom: 10px;
  max-width: 1400px;
}
footer div.footer_foot p.copyright {
  display: block;
  text-align: center;
}
footer div.footer_foot p.copyright span {
  font-size: 10px;
  letter-spacing: 0.1em;
  color: #fff;
  line-height: 21px;
  display: inline-block;
}
footer div.footer_foot a.footlogo {
  float: right;
}
footer div.footer_foot a.footlogo img {
  display: block;
}

#totop {
  position: fixed;
  bottom: 30px;
  right: 30px;
  padding: 10px;
  z-index: 0;
  opacity: 0;
  display: block;
  width: 24px;
  height: 24px;
  background-color: #A9A791;
  border-radius: 100%;
  visibility: hidden;
  box-shadow: 2px 2px 1px 1px rgba(100, 100, 100, 0.1);
  -webkit-box-shadow: 2px 2px 1px 1px rgba(100, 100, 100, 0.1);
  -moz-box-shadow: 2px 2px 1px 1px rgba(100, 100, 100, 0.1);
  -ms-box-shadow: 2px 2px 1px 1px rgba(100, 100, 100, 0.1);
  -o-box-shadow: 2px 2px 1px 1px rgba(100, 100, 100, 0.1);
  transition: visibility 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, z-index 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, background-color 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -webkit-transition: visibility 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, z-index 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, background-color 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -moz-transition: visibility 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, z-index 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, background-color 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -o-transition: visibility 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, z-index 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, background-color 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -ms-transition: visibility 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, z-index 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, background-color 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
}
@media only screen and (min-width: 979px) {
  #totop:hover {
    background-color: #D69B89;
  }
}
@media only screen and (max-width: 979px) {
  #totop {
    display: none !important;
  }
}
#totop.on {
  opacity: 1;
  visibility: visible;
  z-index: 5000;
}
@media only screen and (max-width: 760px) {
  #totop {
    display: none !important;
  }
}
#totop span {
  display: block;
  width: 100%;
  height: 100%;
  opacity: 1;
  transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -webkit-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -moz-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -o-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -ms-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  background-image: url(../img/common/arr_t_02_w.png);
  background-image: url(../img/common/arr_t_02_w.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 12px 12px;
}

@media only screen and (max-width: 760px) {
  body.omd header {
    position: absolute !important;
  }
}
@media only screen and (max-width: 760px) {
  body.omd header div#logo a#logo {
    position: absolute !important;
  }
}

header {
  width: 100% !important;
  position: fixed;
  z-index: 9999;
  top: 0;
  left: 0;
  box-sizing: border-box;
  transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -webkit-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -moz-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -o-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -ms-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
}
header.on {
  background-color: #fff;
}
header div.header_wrap div#logo a#logo {
  display: block;
  position: absolute;
  position: fixed;
  width: 176px;
  height: 112px;
  top: 0;
  left: 2rem;
  background-color: #c1c09b;
  padding: 0 6px 6px 6px;
  box-sizing: border-box;
  z-index: 5000;
  transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -webkit-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -moz-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -o-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -ms-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  box-shadow: 2px 2px 1px 1px rgba(100, 100, 100, 0.1);
  -moz-box-shadow: 2px 2px 1px 1px rgba(100, 100, 100, 0.1);
  -webkit-box-shadow: 2px 2px 1px 1px rgba(100, 100, 100, 0.1);
}
@media only screen and (max-width: 1200px) {
  header div.header_wrap div#logo a#logo {
    width: 166px;
  }
}
@media only screen and (max-width: 1200px) {
  header div.header_wrap div#logo a#logo {
    width: 156px;
  }
}
@media only screen and (min-width: 979px) {
  header div.header_wrap div#logo a#logo:hover {
    background-color: #dcb7ac;
  }
}
@media only screen and (max-width: 479px) {
  header div.header_wrap div#logo a#logo {
    width: 120px;
    height: 70px;
  }
}
header div.header_wrap div#logo a#logo div.logo_wrap {
  border: 1px dotted #969684;
  border: 1px dotted #e8e8e8;
  border-top: none;
  position: relative;
  height: 100%;
  width: 100%;
  box-sizing: border-box;
}
header div.header_wrap div#logo a#logo div.logo_wrap span {
  display: block;
  position: absolute;
  left: 10px;
  bottom: 10px;
}
@media only screen and (max-width: 479px) {
  header div.header_wrap div#logo a#logo div.logo_wrap span {
    bottom: 6px;
    left: 8px;
  }
}
header div.header_wrap div#logo a#logo div.logo_wrap span img {
  display: block;
}
@media only screen and (max-width: 1200px) {
  header div.header_wrap div#logo a#logo div.logo_wrap span img {
    width: 72px;
    height: 28px;
  }
}
@media only screen and (max-width: 1000px) {
  header div.header_wrap div#logo a#logo div.logo_wrap span img {
    width: 76px;
    height: auto;
  }
}
@media only screen and (max-width: 479px) {
  header div.header_wrap div#logo a#logo div.logo_wrap span img {
    width: 54px;
    height: 21px;
  }
}
@media only screen and (max-width: 979px) {
  header div.header_wrap nav#gnav {
    display: none;
  }
}
header div.header_wrap nav#gnav ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: center;
  -webkit-align-items: center;
  margin-top: 2px;
}
header div.header_wrap nav#gnav ul li {
  position: relative;
}
header div.header_wrap nav#gnav ul li.current a span {
  color: #D69B89;
}
header div.header_wrap nav#gnav ul li:not(:last-child):after {
  position: absolute;
  content: "";
  width: 1px;
  height: 1rem;
  background-color: #A9A791;
  top: 50%;
  margin-top: -0.5rem;
  right: 0;
}
@media only screen and (max-width: 1050px) {
  header div.header_wrap nav#gnav ul li:not(:last-child):after {
    display: none;
  }
}
header div.header_wrap nav#gnav ul li a {
  display: block;
  padding: 1.5rem 2rem;
}
@media only screen and (max-width: 1200px) {
  header div.header_wrap nav#gnav ul li a {
    padding: 21px 21px;
  }
}
@media only screen and (max-width: 1050px) {
  header div.header_wrap nav#gnav ul li a {
    padding: 21px 14px;
  }
}
header div.header_wrap nav#gnav ul li a span {
  font-size: 13px;
  font-weight: 600;
  text-align: center;
  display: block;
  line-height: 16px;
  color: #222;
  letter-spacing: 0.12em;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
@media only screen and (max-width: 1200px) {
  header div.header_wrap nav#gnav ul li a span {
    font-size: 12px;
  }
}
header div.header_wrap nav#gnav ul li a span span {
  display: block;
  font-size: 11px;
  font-weight: 600;
  color: #A9A791;
  margin-top: 6px;
  line-height: 12px;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
header div.header_wrap a.contact {
  position: absolute;
  text-align: center;
  position: absolute;
  right: 1rem;
  top: 9px;
  padding: 14px 28px;
  text-align: center;
  border-radius: 0.5rem;
  background-color: #D69B89;
  background-color: transparent;
  border: 1px solid #bfbfbf;
  transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -webkit-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -moz-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -o-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -ms-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
}
@media only screen and (max-width: 979px) {
  header div.header_wrap a.contact {
    display: none;
  }
}
@media only screen and (min-width: 979px) {
  header div.header_wrap a.contact:hover {
    background-color: #D69B89;
    border: 1px solid #D69B89;
  }
  header div.header_wrap a.contact:hover span.wrap {
    color: #fff;
  }
  header div.header_wrap a.contact:hover span.wrap span:before {
    opacity: 0;
  }
  header div.header_wrap a.contact:hover span.wrap span:after {
    opacity: 1;
  }
}
@media only screen and (max-width: 1200px) {
  header div.header_wrap a.contact {
    padding: 14px 21px;
  }
}
@media only screen and (max-width: 1000px) {
  header div.header_wrap a.contact {
    padding: 14px 21px;
  }
}
header div.header_wrap a.contact span.wrap {
  font-size: 0.8rem;
  letter-spacing: 0.12em;
  color: #ffffff;
  color: #1a1a1a;
  color: #666666;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: bold;
  transition: color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -webkit-transition: color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -moz-transition: color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -o-transition: color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -ms-transition: color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
}
@media only screen and (max-width: 1000px) {
  header div.header_wrap a.contact span.wrap {
    font-size: 10px;
    letter-spacing: 0.08em;
  }
}
header div.header_wrap a.contact span.wrap span {
  display: block;
  font-weight: 700;
  padding-left: 16px;
  letter-spacing: 0.06em;
  margin-bottom: 0.5rem;
  position: relative;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
@media only screen and (max-width: 1000px) {
  header div.header_wrap a.contact span.wrap span {
    font-size: 10px;
  }
}
header div.header_wrap a.contact span.wrap span:before, header div.header_wrap a.contact span.wrap span:after {
  transition: opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -webkit-transition: opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -moz-transition: opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -o-transition: opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -ms-transition: opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
}
header div.header_wrap a.contact span.wrap span:before {
  content: "";
  width: 24px;
  height: 24px;
  position: absolute;
  left: -10px;
  top: 50%;
  margin-top: -13px;
  background-image: url(../img/common/icon-02.png);
  background-image: url(../img/common/icon-02.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 16px 16px;
  opacity: 1;
}
header div.header_wrap a.contact span.wrap span:after {
  content: "";
  width: 24px;
  height: 24px;
  position: absolute;
  left: -10px;
  top: 50%;
  margin-top: -13px;
  background-image: url(../img/common/icon-02_w.png);
  background-image: url(../img/common/icon-02_w.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 16px 16px;
  opacity: 0;
}

a#menubtn {
  display: none;
}
@media only screen and (max-width: 979px) {
  a#menubtn {
    display: block;
    position: fixed;
    width: 28px;
    height: 16px;
    padding: 10px;
    top: 16px;
    right: 12px;
    box-sizing: content-box;
    z-index: 999999;
  }
}
@media only screen and (max-width: 760px) {
  a#menubtn {
    display: block;
    position: fixed;
    width: 22px;
    height: 12px;
    padding: 10px;
    top: 10px;
    right: 10px;
    box-sizing: content-box;
    z-index: 999999;
  }
}
a#menubtn.active ul li:nth-child(1) {
  top: 50%;
  background-color: #fff;
  transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transition: top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, transform 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 300ms, background-color 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -webkit-transition: top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, -webkit-transform 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 300ms, background-color 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -moz-transition: top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, -moz-transform 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 300ms, background-color 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -o-transition: top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, -o-transform 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 300ms, background-color 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -ms-transition: top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, -ms-transform 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 300ms, background-color 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
}
a#menubtn.active ul li:nth-child(2) {
  top: 50%;
  opacity: 0;
  transition: top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, opacity 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -webkit-transition: top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, opacity 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -moz-transition: top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, opacity 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -o-transition: top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, opacity 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -ms-transition: top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, opacity 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
}
a#menubtn.active ul li:nth-child(3) {
  top: 50%;
  background-color: #fff;
  transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transition: top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, transform 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 300ms, background-color 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -webkit-transition: top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, -webkit-transform 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 300ms, background-color 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -moz-transition: top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, -moz-transform 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 300ms, background-color 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -o-transition: top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, -o-transform 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 300ms, background-color 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -ms-transition: top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, -ms-transform 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 300ms, background-color 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
}
a#menubtn.on ul li {
  background-color: #000;
}
a#menubtn ul {
  width: 100%;
  height: 100%;
  position: relative;
}
a#menubtn ul li {
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: #A9A791;
  left: 0;
  transform-origin: center center;
  -webkit-transform-origin: center center;
  -moz-transform-origin: center center;
  -o-transform-origin: center center;
  -ms-transform-origin: center center;
}
a#menubtn ul li:nth-child(1) {
  top: 0;
  transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
  transition: transform 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 300ms, background-color 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -webkit-transition: -webkit-transform 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 300ms, background-color 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -moz-transition: -moz-transform 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 300ms, background-color 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -o-transition: -o-transform 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 300ms, background-color 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -ms-transition: -ms-transform 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 300ms, background-color 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
}
a#menubtn ul li:nth-child(2) {
  top: 50%;
  opacity: 1;
  transition: top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -webkit-transition: opacity 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 300ms, background-color 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -moz-transition: opacity 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 300ms, background-color 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -o-transition: opacity 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 300ms, background-color 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -ms-transition: opacity 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 300ms, background-color 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
}
a#menubtn ul li:nth-child(3) {
  top: 100%;
  transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
  transition: transform 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 300ms, background-color 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -webkit-transition: -webkit-transform 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 300ms, background-color 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -moz-transition: -moz-transform 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 300ms, background-color 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -o-transition: -o-transform 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 300ms, background-color 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -ms-transition: -ms-transform 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, top 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 300ms, background-color 300ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
}

div#popupnav {
  position: fixed;
  z-index: 0;
  opacity: 0;
  visibility: hidden;
  left: 0;
  width: 100%;
  height: 100vh;
  display: block;
  z-index: 10000;
  background-color: #A9A791;
  transition: visibility 200ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, opacity 200ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, z-index 200ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -webkit-transition: visibility 200ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, opacity 200ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, z-index 200ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -moz-transition: visibility 200ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, opacity 200ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, z-index 200ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -o-transition: visibility 200ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, opacity 200ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, z-index 200ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -ms-transition: visibility 200ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, opacity 200ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, z-index 200ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
}
@media only screen and (min-width: 979px) {
  div#popupnav {
    display: none;
  }
}
div#popupnav.active {
  visibility: visible;
  opacity: 1;
  z-index: 9999;
}
div#popupnav nav.gnav {
  position: relative;
  height: 100%;
}
div#popupnav nav.gnav ul {
  height: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: center;
  -webkit-align-items: center;
  flex-direction: column;
  -webkit-flex-direction: column;
}
div#popupnav nav.gnav ul li {
  width: 100%;
}
div#popupnav nav.gnav ul li a {
  display: block;
  padding: 1rem;
  text-align: center;
}
div#popupnav nav.gnav ul li a span {
  font-size: 13px;
  font-weight: 700;
  display: block;
  line-height: 15px;
  line-height: 14px;
  color: #fff;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
@media only screen and (max-width: 1200px) {
  div#popupnav nav.gnav ul li a span {
    font-size: 12px;
  }
}
div#popupnav nav.gnav ul li a span span {
  display: block;
  font-size: 10px;
  font-weight: 400;
  color: #fff;
  margin-top: 6.5px;
  line-height: 12px;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
div#popupnav a.contact {
  text-align: center;
  right: 12px;
  top: 12px;
  padding: 14px 21px;
  text-align: center;
  border-radius: 0.5rem;
  border: 1px solid #fff;
  width: 60%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 2rem;
}
div#popupnav a.contact.tel {
  margin-top: 1rem;
}
div#popupnav a.contact.tel span.wrap {
  font-family: "Lato", sans-serif;
  font-size: 1.2rem;
}
div#popupnav a.contact.tel span.wrap::before {
  background-image: url(../img/common/icon-32.png);
  background-image: url(../img/common/icon-32.svg);
  margin-top: 1px;
}
div#popupnav a.contact span.wrap {
  font-size: 1.1rem;
  letter-spacing: 0.12em;
  color: #ffffff;
  font-weight: bold;
  position: relative;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
div#popupnav a.contact span.wrap:before {
  content: "";
  width: 15px;
  height: 15px;
  vertical-align: bottom;
  margin-right: 0.5rem;
  display: inline-block;
  background-image: url(../img/common/icon-02_w.png);
  background-image: url(../img/common/icon-02_w.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  opacity: 1;
}
div#popupnav a.contact span.wrap span {
  display: block;
  font-weight: 600;
  padding-left: 16px;
  letter-spacing: 0.06em;
  margin-bottom: 0.5rem;
  position: relative;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
@media only screen and (max-width: 1000px) {
  div#popupnav a.contact span.wrap span {
    font-size: 10px;
  }
}
div#popupnav div.footer {
  position: relative;
  text-align: center;
  padding: 1rem;
}
div#popupnav div.footer p {
  color: #fff;
}

/*-------------------------------------------------
    basic style 
-------------------------------------------------*/
html,
body {
  margin: 0;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  position: relative;
}
@media only screen and (min-width: 979px) {
  html,
  body {
    font-size: 14px;
    letter-spacing: 0.08em;
    color: #1a1a1a;
  }
  html h1 span,
  html h2 span,
  html h3 span,
  html h4 span,
  html .lv1 span,
  html .lv2 span,
  html .lv3 span,
  html .lv4 span,
  body h1 span,
  body h2 span,
  body h3 span,
  body h4 span,
  body .lv1 span,
  body .lv2 span,
  body .lv3 span,
  body .lv4 span {
    display: inline-block;
    font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.18em;
    line-height: 1;
    font-weight: 400;
  }
  html h1 span span,
  html h2 span span,
  html h3 span span,
  html h4 span span,
  html .lv1 span span,
  html .lv2 span span,
  html .lv3 span span,
  html .lv4 span span,
  body h1 span span,
  body h2 span span,
  body h3 span span,
  body h4 span span,
  body .lv1 span span,
  body .lv2 span span,
  body .lv3 span span,
  body .lv4 span span {
    display: block;
    font-size: 1rem;
    font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    line-height: 1;
    font-weight: 400;
  }
  html h1 .en,
  html h2 .en,
  html h3 .en,
  html h4 .en,
  html .lv1 .en,
  html .lv2 .en,
  html .lv3 .en,
  html .lv4 .en,
  body h1 .en,
  body h2 .en,
  body h3 .en,
  body h4 .en,
  body .lv1 .en,
  body .lv2 .en,
  body .lv3 .en,
  body .lv4 .en {
    font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  }
  html h1.min span,
  html .lv1.min span,
  body h1.min span,
  body .lv1.min span {
    font-weight: 700 !important;
  }
  html h1 span,
  html .lv1 span,
  body h1 span,
  body .lv1 span {
    font-size: 1.8rem;
    white-space: nowrap;
    font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-family: "Sanchez", serif;
    font-weight: 900;
  }
  html h1 span span,
  html .lv1 span span,
  body h1 span span,
  body .lv1 span span {
    font-size: 1rem;
    margin-top: 1rem;
    color: #A9A791;
    font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-weight: 500;
  }
  html h2,
  html .lv2,
  body h2,
  body .lv2 {
    text-align: center;
  }
  html h2 span,
  html .lv2 span,
  body h2 span,
  body .lv2 span {
    font-size: 1.7rem;
    white-space: nowrap;
    font-family: "Sanchez", serif;
    font-weight: normal;
  }
}
@media only screen and (min-width: 979px) and (max-width: 479px) {
  html h2 span,
  html .lv2 span,
  body h2 span,
  body .lv2 span {
    font-size: 1.5rem;
  }
}
@media only screen and (min-width: 979px) {
  html h2 span span,
  html .lv2 span span,
  body h2 span span,
  body .lv2 span span {
    margin-top: 10px;
    color: #82806f;
    font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-weight: 500;
  }
  html h3,
  html .lv3,
  body h3,
  body .lv3 {
    text-align: center;
  }
  html h3 span,
  html .lv3 span,
  body h3 span,
  body .lv3 span {
    font-size: 1.3rem;
  }
  html h3 span span,
  html .lv3 span span,
  body h3 span span,
  body .lv3 span span {
    margin-top: 1rem;
    color: #82806f;
    font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 0.9rem;
    font-weight: 500;
  }
  html h4 span,
  html .lv4 span,
  body h4 span,
  body .lv4 span {
    font-size: 1.1rem;
  }
  html h4 span span,
  html .lv4 span span,
  body h4 span span,
  body .lv4 span span {
    margin-top: 0.5rem;
  }
  html small,
  html .sm,
  html .cap,
  body small,
  body .sm,
  body .cap {
    font-size: 0.8rem;
  }
  html p span,
  body p span {
    line-height: 2;
  }
}
@media only screen and (max-width: 979px) {
  html,
  body {
    font-size: 12px;
    letter-spacing: 0.08em;
    color: #1a1a1a;
  }
  html h1 span,
  html h2 span,
  html h3 span,
  html h4 span,
  html .lv1 span,
  html .lv2 span,
  html .lv3 span,
  html .lv4 span,
  body h1 span,
  body h2 span,
  body h3 span,
  body h4 span,
  body .lv1 span,
  body .lv2 span,
  body .lv3 span,
  body .lv4 span {
    display: inline-block;
    font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.18em;
    line-height: 1;
    font-weight: 400;
  }
  html h1 span span,
  html h2 span span,
  html h3 span span,
  html h4 span span,
  html .lv1 span span,
  html .lv2 span span,
  html .lv3 span span,
  html .lv4 span span,
  body h1 span span,
  body h2 span span,
  body h3 span span,
  body h4 span span,
  body .lv1 span span,
  body .lv2 span span,
  body .lv3 span span,
  body .lv4 span span {
    display: block;
    font-size: 1rem;
    font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    line-height: 1;
    font-weight: 400;
  }
  html h1 .en,
  html h2 .en,
  html h3 .en,
  html h4 .en,
  html .lv1 .en,
  html .lv2 .en,
  html .lv3 .en,
  html .lv4 .en,
  body h1 .en,
  body h2 .en,
  body h3 .en,
  body h4 .en,
  body .lv1 .en,
  body .lv2 .en,
  body .lv3 .en,
  body .lv4 .en {
    font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  }
  html h1.min span,
  html .lv1.min span,
  body h1.min span,
  body .lv1.min span {
    font-weight: 700 !important;
  }
  html h1 span,
  html .lv1 span,
  body h1 span,
  body .lv1 span {
    font-size: 1.8rem;
    white-space: nowrap;
    font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-family: "Sanchez", serif;
    font-weight: 900;
  }
  html h1 span span,
  html .lv1 span span,
  body h1 span span,
  body .lv1 span span {
    font-size: 1rem;
    margin-top: 1rem;
    color: #A9A791;
    font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-weight: 500;
  }
  html h2,
  html .lv2,
  body h2,
  body .lv2 {
    text-align: center;
  }
  html h2 span,
  html .lv2 span,
  body h2 span,
  body .lv2 span {
    font-size: 1.7rem;
    white-space: nowrap;
    font-family: "Sanchez", serif;
    font-weight: normal;
  }
}
@media only screen and (max-width: 979px) and (max-width: 479px) {
  html h2 span,
  html .lv2 span,
  body h2 span,
  body .lv2 span {
    font-size: 1.5rem;
  }
}
@media only screen and (max-width: 979px) {
  html h2 span span,
  html .lv2 span span,
  body h2 span span,
  body .lv2 span span {
    margin-top: 10px;
    color: #82806f;
    font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-weight: 500;
  }
  html h3,
  html .lv3,
  body h3,
  body .lv3 {
    text-align: center;
  }
  html h3 span,
  html .lv3 span,
  body h3 span,
  body .lv3 span {
    font-size: 1.3rem;
  }
  html h3 span span,
  html .lv3 span span,
  body h3 span span,
  body .lv3 span span {
    margin-top: 1rem;
    color: #82806f;
    font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 0.9rem;
    font-weight: 500;
  }
  html h4 span,
  html .lv4 span,
  body h4 span,
  body .lv4 span {
    font-size: 1.1rem;
  }
  html h4 span span,
  html .lv4 span span,
  body h4 span span,
  body .lv4 span span {
    margin-top: 0.5rem;
  }
  html small,
  html .sm,
  html .cap,
  body small,
  body .sm,
  body .cap {
    font-size: 0.8rem;
  }
  html p span,
  body p span {
    line-height: 2;
  }
}
@media only screen and (max-width: 479px) {
  html,
  body {
    font-size: 11px;
    letter-spacing: 0.08em;
    color: #1a1a1a;
  }
  html h1 span,
  html h2 span,
  html h3 span,
  html h4 span,
  html .lv1 span,
  html .lv2 span,
  html .lv3 span,
  html .lv4 span,
  body h1 span,
  body h2 span,
  body h3 span,
  body h4 span,
  body .lv1 span,
  body .lv2 span,
  body .lv3 span,
  body .lv4 span {
    display: inline-block;
    font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.18em;
    line-height: 1;
    font-weight: 400;
  }
  html h1 span span,
  html h2 span span,
  html h3 span span,
  html h4 span span,
  html .lv1 span span,
  html .lv2 span span,
  html .lv3 span span,
  html .lv4 span span,
  body h1 span span,
  body h2 span span,
  body h3 span span,
  body h4 span span,
  body .lv1 span span,
  body .lv2 span span,
  body .lv3 span span,
  body .lv4 span span {
    display: block;
    font-size: 1rem;
    font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    line-height: 1;
    font-weight: 400;
  }
  html h1 .en,
  html h2 .en,
  html h3 .en,
  html h4 .en,
  html .lv1 .en,
  html .lv2 .en,
  html .lv3 .en,
  html .lv4 .en,
  body h1 .en,
  body h2 .en,
  body h3 .en,
  body h4 .en,
  body .lv1 .en,
  body .lv2 .en,
  body .lv3 .en,
  body .lv4 .en {
    font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  }
  html h1.min span,
  html .lv1.min span,
  body h1.min span,
  body .lv1.min span {
    font-weight: 700 !important;
  }
  html h1 span,
  html .lv1 span,
  body h1 span,
  body .lv1 span {
    font-size: 1.8rem;
    white-space: nowrap;
    font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-family: "Sanchez", serif;
    font-weight: 900;
  }
  html h1 span span,
  html .lv1 span span,
  body h1 span span,
  body .lv1 span span {
    font-size: 1rem;
    margin-top: 1rem;
    color: #A9A791;
    font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-weight: 500;
  }
  html h2,
  html .lv2,
  body h2,
  body .lv2 {
    text-align: center;
  }
  html h2 span,
  html .lv2 span,
  body h2 span,
  body .lv2 span {
    font-size: 1.7rem;
    white-space: nowrap;
    font-family: "Sanchez", serif;
    font-weight: normal;
  }
}
@media only screen and (max-width: 479px) and (max-width: 479px) {
  html h2 span,
  html .lv2 span,
  body h2 span,
  body .lv2 span {
    font-size: 1.5rem;
  }
}
@media only screen and (max-width: 479px) {
  html h2 span span,
  html .lv2 span span,
  body h2 span span,
  body .lv2 span span {
    margin-top: 10px;
    color: #82806f;
    font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-weight: 500;
  }
  html h3,
  html .lv3,
  body h3,
  body .lv3 {
    text-align: center;
  }
  html h3 span,
  html .lv3 span,
  body h3 span,
  body .lv3 span {
    font-size: 1.3rem;
  }
  html h3 span span,
  html .lv3 span span,
  body h3 span span,
  body .lv3 span span {
    margin-top: 1rem;
    color: #82806f;
    font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 0.9rem;
    font-weight: 500;
  }
  html h4 span,
  html .lv4 span,
  body h4 span,
  body .lv4 span {
    font-size: 1.1rem;
  }
  html h4 span span,
  html .lv4 span span,
  body h4 span span,
  body .lv4 span span {
    margin-top: 0.5rem;
  }
  html small,
  html .sm,
  html .cap,
  body small,
  body .sm,
  body .cap {
    font-size: 0.8rem;
  }
  html p span,
  body p span {
    line-height: 2;
  }
}
@media only screen and (max-width: 360px) {
  html,
  body {
    font-size: 10px;
    letter-spacing: 0.08em;
    color: #1a1a1a;
  }
  html h1 span,
  html h2 span,
  html h3 span,
  html h4 span,
  html .lv1 span,
  html .lv2 span,
  html .lv3 span,
  html .lv4 span,
  body h1 span,
  body h2 span,
  body h3 span,
  body h4 span,
  body .lv1 span,
  body .lv2 span,
  body .lv3 span,
  body .lv4 span {
    display: inline-block;
    font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.18em;
    line-height: 1;
    font-weight: 400;
  }
  html h1 span span,
  html h2 span span,
  html h3 span span,
  html h4 span span,
  html .lv1 span span,
  html .lv2 span span,
  html .lv3 span span,
  html .lv4 span span,
  body h1 span span,
  body h2 span span,
  body h3 span span,
  body h4 span span,
  body .lv1 span span,
  body .lv2 span span,
  body .lv3 span span,
  body .lv4 span span {
    display: block;
    font-size: 1rem;
    font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    line-height: 1;
    font-weight: 400;
  }
  html h1 .en,
  html h2 .en,
  html h3 .en,
  html h4 .en,
  html .lv1 .en,
  html .lv2 .en,
  html .lv3 .en,
  html .lv4 .en,
  body h1 .en,
  body h2 .en,
  body h3 .en,
  body h4 .en,
  body .lv1 .en,
  body .lv2 .en,
  body .lv3 .en,
  body .lv4 .en {
    font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  }
  html h1.min span,
  html .lv1.min span,
  body h1.min span,
  body .lv1.min span {
    font-weight: 700 !important;
  }
  html h1 span,
  html .lv1 span,
  body h1 span,
  body .lv1 span {
    font-size: 1.8rem;
    white-space: nowrap;
    font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-family: "Sanchez", serif;
    font-weight: 900;
  }
  html h1 span span,
  html .lv1 span span,
  body h1 span span,
  body .lv1 span span {
    font-size: 1rem;
    margin-top: 1rem;
    color: #A9A791;
    font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-weight: 500;
  }
  html h2,
  html .lv2,
  body h2,
  body .lv2 {
    text-align: center;
  }
  html h2 span,
  html .lv2 span,
  body h2 span,
  body .lv2 span {
    font-size: 1.7rem;
    white-space: nowrap;
    font-family: "Sanchez", serif;
    font-weight: normal;
  }
}
@media only screen and (max-width: 360px) and (max-width: 479px) {
  html h2 span,
  html .lv2 span,
  body h2 span,
  body .lv2 span {
    font-size: 1.5rem;
  }
}
@media only screen and (max-width: 360px) {
  html h2 span span,
  html .lv2 span span,
  body h2 span span,
  body .lv2 span span {
    margin-top: 10px;
    color: #82806f;
    font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-weight: 500;
  }
  html h3,
  html .lv3,
  body h3,
  body .lv3 {
    text-align: center;
  }
  html h3 span,
  html .lv3 span,
  body h3 span,
  body .lv3 span {
    font-size: 1.3rem;
  }
  html h3 span span,
  html .lv3 span span,
  body h3 span span,
  body .lv3 span span {
    margin-top: 1rem;
    color: #82806f;
    font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 0.9rem;
    font-weight: 500;
  }
  html h4 span,
  html .lv4 span,
  body h4 span,
  body .lv4 span {
    font-size: 1.1rem;
  }
  html h4 span span,
  html .lv4 span span,
  body h4 span span,
  body .lv4 span span {
    margin-top: 0.5rem;
  }
  html small,
  html .sm,
  html .cap,
  body small,
  body .sm,
  body .cap {
    font-size: 0.8rem;
  }
  html p span,
  body p span {
    line-height: 2;
  }
}

div#wrapAll {
  position: relative;
}
div#wrapAll main {
  width: 100%;
  position: relative;
}
div#wrapAll main section {
  position: relative;
}
div#wrapAll main section:nth-child(2n) {
  background: url("../img/common/bg2.png");
}
div#wrapAll main section div.secwrap {
  position: relative;
  width: 88%;
  margin-left: auto;
  margin-right: auto;
  padding: 8rem 0;
  max-width: 1280px;
}
@media only screen and (max-width: 1200px) {
  div#wrapAll main section div.secwrap {
    width: 88%;
  }
}
@media only screen and (max-width: 979px) {
  div#wrapAll main section div.secwrap {
    width: 100%;
    padding: 5rem 2rem;
  }
}
@media only screen and (max-width: 479px) {
  div#wrapAll main section div.secwrap {
    width: 100%;
    padding: 5rem 2rem;
  }
}
div#wrapAll main section div.secwrap2 {
  width: 100%;
  padding: 8rem 2rem;
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 479px) {
  div#wrapAll main section div.secwrap2 {
    padding: 5rem 2rem;
  }
}
div#wrapAll main section div.ttl {
  margin-bottom: 5rem;
}
@media only screen and (max-width: 479px) {
  div#wrapAll main section div.ttl {
    margin-bottom: 3rem;
  }
}
div#wrapAll main section div.body div.txt + ul,
div#wrapAll main section div.body div.txt + div.img,
div#wrapAll main section div.body div.img + div.txt,
div#wrapAll main section div.body div.img + ul,
div#wrapAll main section div.body div.txt + div.dl,
div#wrapAll main section div.body div.dl + div.txt,
div#wrapAll main section div.body div.txt + div.tb,
div#wrapAll main section div.body div.tb + div.txt {
  margin-top: 2rem;
}
div#wrapAll main section div.body div.txt h3 + p {
  margin-top: 1rem;
}

p.textlink {
  text-align: center;
}
p.textlink a {
  display: inline-block;
  position: relative;
}
p.textlink a:after {
  content: "";
  width: 100%;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  height: 1px;
  background-color: #666666;
  transition: all 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -webkit-transition: all 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -moz-transition: all 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -o-transition: all 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -ms-transition: all 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
}
p.textlink a span {
  display: inline-block;
  vertical-align: middle;
}
@media only screen and (min-width: 979px) {
  p.textlink a:hover:after {
    left: 50%;
    width: 0;
  }
}

div.btn {
  text-align: center;
}

button {
  border-style: none;
  padding: 0;
  background-color: transparent;
  position: relative;
}
button a,
button input[type="submit"] {
  text-transform: uppercase;
  box-sizing: border-box;
  display: block;
  border: 1px solid transparent;
  font-size: 1rem;
  letter-spacing: 0.14em;
  white-space: nowrap;
}
button.btn1 {
  width: 258px;
  height: 54px;
  line-height: 54px;
}
@media only screen and (max-width: 979px) {
  button.btn1 {
    width: 240px !important;
  }
}
@media only screen and (max-width: 479px) {
  button.btn1 {
    width: 240px !important;
  }
}
button.btn1:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  margin-top: -0.3rem;
  right: 2rem;
  width: 0.6rem;
  height: 0.6rem;
  background-image: url(../img/common/arr_l_02_w.png);
  background-repeat: no-repeat;
  background-size: contain;
}
button.btn1.jp a span,
button.btn1.jp input[type="submit"] span {
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
}
button.btn1 a,
button.btn1 input[type="submit"] {
  border: 0px;
  margin-right: 0;
  margin-left: auto;
  background-color: #A9A791;
  border-radius: 0.5rem;
  position: relative;
  padding: 0 2rem;
  text-align: left;
  transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -webkit-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -moz-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -o-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -ms-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
}
@media only screen and (min-width: 979px) {
  button.btn1 a:hover,
  button.btn1 input[type="submit"]:hover {
    background-color: #D69B89;
    transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
    -webkit-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
    -moz-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
    -o-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
    -ms-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  }
}
button.btn1 a span {
  font-size: 1rem;
  line-height: 1;
  display: inline-block;
  padding-bottom: 6px;
  color: #fff;
  letter-spacing: 0.08em;
  font-weight: 600;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
button.btn1 a span span {
  font-size: 0.8rem;
  margin-left: 1rem;
  font-weight: 600;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
button.btn1 input[type="submit"] {
  width: 100%;
  height: 100%;
  color: #fff;
  font-size: 1rem;
  line-height: 1;
  letter-spacing: 0.08em;
  font-weight: 600;
}
button.btn2 {
  width: 100%;
  height: 44px;
  line-height: 44px;
  border: 1px solid #A9A791;
  border-radius: 0.5rem !important;
  display: block;
}
button.btn2 span {
  font-size: 1rem;
  line-height: 1;
  display: block;
  padding-bottom: 6px;
  color: #A9A791;
  letter-spacing: 0.08em;
  font-weight: 600;
  padding: 0 2rem;
  text-align: left;
  background-color: transparent;
  transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -webkit-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -moz-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -o-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -ms-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
}
button.btn2 span:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  margin-top: -0.3rem;
  right: 2rem;
  width: 0.6rem;
  height: 0.6rem;
  background-image: url(../img/common/arr_l_02.png);
  background-repeat: no-repeat;
  background-size: contain;
}

form textarea {
  width: 100%;
  background-color: #f9f9f9;
  border: none;
  padding: 0.5rem 1rem;
  height: 12rem;
  resize: vertical;
}
form select {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border-radius: 0px;
  -moz-border-radius: 0px;
  -webkit-border-radius: 0px;
  background-color: #f9f9f9;
  outline: none;
  padding: 0rem 1rem;
  line-height: 40px;
  width: 260px;
  border: 0px;
  font-size: 1rem;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  position: relative;
}
form select:after {
  content: "▼";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  width: 1.8em;
  display: block;
}
form input[type="text"], form input[type="email"], form input[type="tel"], form input[type="number"], form input[type="password"], form input[type="url"], form input[type="date"], form input[type="datetime"], form input[type="search"] {
  width: 100%;
  display: inline-block;
  border-style: none;
  padding: 0rem 1rem;
  line-height: 40px;
  background-color: #f9f9f9;
}
form input[type="text"].w100, form input[type="email"].w100, form input[type="tel"].w100, form input[type="number"].w100, form input[type="password"].w100, form input[type="url"].w100, form input[type="date"].w100, form input[type="datetime"].w100, form input[type="search"].w100 {
  width: 100%;
}
form input[type="submit"], form input[type="button"] {
  width: 200px;
  cursor: pointer;
  margin-left: auto;
  margin-right: auto;
  text-transform: uppercase;
  box-sizing: border-box;
  display: block;
  transition: 0.3s;
  border: 1px solid transparent;
  height: 44px;
  line-height: 44px;
  font-size: 1rem;
  letter-spacing: 0.14em;
  white-space: nowrap;
  background-color: #eee;
}
form input.option-input {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  position: relative;
  top: 8px;
  right: 0;
  bottom: 0;
  left: 0;
  height: 24px;
  width: 24px;
  transition: all 0.15s ease-out 0s;
  background: #f9f9f9;
  border: none;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  margin-right: 0.5rem;
  margin-top: 0;
  margin-bottom: 0;
  outline: none;
  position: relative;
  z-index: 1000;
}
@media only screen and (min-width: 979px) {
  form input.option-input:hover {
    background: #ccc;
  }
}
form input.option-input:checked {
  background: #D69B89;
}
form input.option-input:checked::before {
  height: 24px;
  width: 24px;
  position: absolute;
  content: '✔';
  display: inline-block;
  font-size: 14px;
  text-align: center;
  line-height: 24px;
}
form input.option-input:checked::after {
  -webkit-animation: click-wave 0.65s;
  -moz-animation: click-wave 0.65s;
  animation: click-wave 0.65s;
  background: #40e0d0;
  content: '';
  display: block;
  position: relative;
  z-index: 100;
}
form input.option-input.radio {
  border-radius: 50%;
}
form input.option-input.radio::after {
  border-radius: 50%;
}

/*-------------------------------------------------
    individual style 
-------------------------------------------------*/
body.c_w section.contact {
  background-image: none !important;
  background-color: #fff !important;
}

span.label {
  position: relative;
  display: inline-block;
}
span.label::before {
  content: "";
  width: 100%;
  height: 10px;
  background-color: #fbf7c7;
  position: absolute;
  bottom: 6px;
  left: 0;
  z-index: 0;
}
span.label span {
  display: inline-block;
  position: relative;
  z-index: 1;
}

section.contact {
  background: url("../img/common/bg2.png");
}
@media only screen and (max-width: 979px) {
  section.contact div.secwrap {
    width: 100%;
    padding: 8rem 2rem;
  }
}
@media only screen and (max-width: 760px) {
  section.contact div.secwrap {
    padding: 5rem 2rem;
  }
}
@media only screen and (max-width: 979px) {
  section.contact div.secwrap div.ttl {
    margin-bottom: 3rem !important;
  }
}
section.contact div.secwrap div.body div.dl dl {
  width: 840px;
  margin-left: auto;
  margin-right: auto;
  padding: 2rem 0;
}
@media only screen and (max-width: 979px) {
  section.contact div.secwrap div.body div.dl dl {
    width: 706px;
  }
}
@media only screen and (max-width: 760px) {
  section.contact div.secwrap div.body div.dl dl {
    display: block;
    padding: 1rem 0;
    width: 100%;
  }
}
section.contact div.secwrap div.body div.dl dl dt,
section.contact div.secwrap div.body div.dl dl dd {
  vertical-align: middle;
}
@media only screen and (max-width: 760px) {
  section.contact div.secwrap div.body div.dl dl dt,
  section.contact div.secwrap div.body div.dl dl dd {
    display: block;
    text-align: center;
  }
}
section.contact div.secwrap div.body div.dl dl dt {
  width: 240px;
  border-right: 1px solid #b5b4ae;
}
@media only screen and (max-width: 979px) {
  section.contact div.secwrap div.body div.dl dl dt {
    width: 200px;
  }
}
@media only screen and (max-width: 760px) {
  section.contact div.secwrap div.body div.dl dl dt {
    border-right: none;
    width: auto;
  }
}
section.contact div.secwrap div.body div.dl dl dt span {
  line-height: 2;
}
section.contact div.secwrap div.body div.dl dl dd {
  padding-left: 60px;
}
@media only screen and (max-width: 979px) {
  section.contact div.secwrap div.body div.dl dl dd {
    padding-left: 20px;
  }
}
@media only screen and (max-width: 760px) {
  section.contact div.secwrap div.body div.dl dl dd {
    padding-left: 0;
  }
}
section.contact div.secwrap div.body div.dl dl dd p span span.tel {
  font-size: 2.3rem;
  font-weight: 600;
  font-family: "Lato", sans-serif;
  color: #d27477;
}
section.contact div.secwrap div.body div.dl dl dd p span span.cap {
  margin-left: 2rem;
}
@media only screen and (max-width: 760px) {
  section.contact div.secwrap div.body div.dl dl dd p span span.cap {
    display: block;
  }
}
section.contact div.secwrap div.body div.dl dl dd div.btn {
  text-align: left;
  margin-top: 0;
}
@media only screen and (max-width: 760px) {
  section.contact div.secwrap div.body div.dl dl dd div.btn {
    text-align: center;
  }
}
@media only screen and (max-width: 760px) {
  section.contact div.secwrap div.body div.dl dl dd div.btn button {
    margin-top: 1rem;
  }
}
section.contact div.secwrap div.body div.dl dl dd div.btn button a span {
  position: relative;
  padding-left: 2rem;
  padding-bottom: 0;
}
section.contact div.secwrap div.body div.dl dl dd div.btn button a span:before {
  content: "";
  width: 1.2rem;
  height: 1.2rem;
  display: block;
  position: absolute;
  top: 50%;
  margin-top: -0.6rem;
  left: 0;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}
section.contact div.secwrap div.body div.dl dl dd div.btn button a span.contact:before {
  background-image: url(../img/common/icon-01_w.svg);
}
section.contact div.secwrap div.body div.dl dl dd div.btn button a span.reserve:before {
  background-image: url(../img/common/icon-02_w.svg);
}
section.contact div.secwrap div.body div.txt {
  margin-top: 3rem;
}
section.contact div.secwrap div.body div.txt p.textlink span {
  position: relative;
  padding-left: 2rem;
}
section.contact div.secwrap div.body div.txt p.textlink span::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  margin-top: -0.6rem;
  left: 0;
  vertical-align: middle;
  width: 1.2rem;
  height: 1.2rem;
  background: url(../img/common/icon-16.svg) center center no-repeat;
  background-size: contain;
}
section.contact div.secwrap div.body div.txt p.textlink span::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  margin-top: -0.6rem;
  left: 0;
  vertical-align: middle;
  width: 1.2rem;
  height: 1.2rem;
  background: url(../img/common/icon-16.svg) center center no-repeat;
  background-size: contain;
}

div.bnr {
  width: 800px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 5rem;
  border: 1px solid #A9A791;
  border-radius: 0.5rem;
  position: relative;
  padding: 0.5rem;
}
@media only screen and (max-width: 979px) {
  div.bnr {
    width: 100%;
  }
}
@media only screen and (max-width: 479px) {
  div.bnr {
    padding: 3px;
  }
}
div.bnr a {
  overflow: hidden;
  display: block;
}
@media only screen and (min-width: 979px) {
  div.bnr a:hover div.img {
    transform: translate3d(0, 0, 0) scale(1.03, 1.03);
    -moz-transform: translate3d(0, 0, 0) scale(1.03, 1.03);
    -webkit-transform: translate3d(0, 0, 0) scale(1.03, 1.03);
  }
}
div.bnr a div.img {
  width: 100%;
  height: 200px;
  background: url(../img/pic/bnr.jpg) no-repeat center;
  background-size: cover;
  position: relative;
  z-index: 0;
  transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -webkit-transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -moz-transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -o-transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -ms-transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
}
@media only screen and (max-width: 479px) {
  div.bnr a div.img {
    height: 100px;
  }
}
div.bnr a div.img::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #000;
  opacity: .4;
  top: 0;
  left: 0;
  z-index: 10;
}
div.bnr a div.txt {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -16px !important;
  margin-left: -76px;
}
@media only screen and (max-width: 479px) {
  div.bnr a div.txt {
    margin-top: -12px !important;
    margin-left: -50px;
  }
}
div.bnr a div.txt h3 {
  position: relative;
  padding-left: 3rem;
}
@media only screen and (max-width: 479px) {
  div.bnr a div.txt h3 {
    padding-left: 2.5rem;
  }
}
div.bnr a div.txt h3:before {
  content: "";
  position: absolute;
  top: 50%;
  margin-top: -1.5rem;
  left: 0;
  width: 2rem;
  height: 2rem;
  display: block;
  background: url(../img/menu-2_w.svg) no-repeat center;
  background-size: contain;
}
@media only screen and (max-width: 479px) {
  div.bnr a div.txt h3:before {
    width: 1.5rem;
    height: 1.5rem;
    margin-top: -1rem;
  }
}
div.bnr a div.txt h3 span {
  color: #fff;
  font-family: "Sanchez", serif;
  font-weight: 700;
}
div.bnr a div.txt h3 span span {
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
@media only screen and (max-width: 479px) {
  div.bnr a div.txt h3 span {
    font-size: 1.1rem;
  }
  div.bnr a div.txt h3 span span {
    margin-top: 0.5rem;
    font-size: 0.9rem;
    font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  }
}

div.pager {
  margin-top: 3rem;
}
div.pager ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: center;
  -webkit-align-items: center;
  width: 80%;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 979px) {
  div.pager ul {
    width: 100%;
  }
}
div.pager ul li {
  cursor: pointer;
  text-align: center;
  margin-top: 0 !important;
  width: 3rem !important;
  height: 3rem !important;
  border-radius: 3px;
}
div.pager ul li a {
  display: block;
  width: 100%;
  height: 100%;
}
div.pager ul li:nth-child(2n) {
  margin-right: 1rem !important;
  margin-left: 0rem !important;
}
div.pager ul li:not(:nth-child(10n)) {
  margin-right: 1rem !important;
  margin-left: 0rem !important;
}
div.pager ul li:nth-child(10n) {
  margin-right: 0 !important;
}
@media only screen and (max-width: 760px) {
  div.pager ul li:nth-child(n+6) {
    display: none;
  }
}
@media only screen and (max-width: 479px) {
  div.pager ul li + li {
    margin-left: 0.75rem;
  }
}
div.pager ul li span {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  line-height: 3rem;
  color: #fff;
  font-weight: bold;
  font-family: "Lato", sans-serif;
  background-color: #D69B89;
}
div.pager ul li.current span {
  opacity: .3;
}

@media only screen and (max-width: 1200px) {
  body.top section.topics ul li {
    width: calc( ( 100% - 1rem * ( 3 - 1)) / 3);
  }
  body.top section.topics ul li:not(:nth-child(4n)) {
    margin-right: 0;
  }
  body.top section.topics ul li:not(:nth-child(3n)) {
    margin-right: 1rem;
  }
}
@media only screen and (max-width: 760px) {
  body.top section.topics ul li {
    width: 100% !important;
    border-top: 1px dashed #eee;
    margin-right: 0 !important;
    margin-top: 0 !important;
  }
  body.top section.topics ul li:last-child {
    border-bottom: 1px dashed #eee;
  }
  body.top section.topics ul li:not(:nth-child(3n)) {
    margin-right: 0;
  }
}
@media only screen and (max-width: 1200px) {
  body.top section.topics ul li:nth-child(4) {
    display: none;
  }
}
@media only screen and (max-width: 760px) {
  body.top section.topics ul li:nth-child(4) {
    display: block;
  }
}
body.top section.topics ul li a {
  transition: opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -webkit-transition: opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -moz-transition: opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -o-transition: opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -ms-transition: opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
}
@media only screen and (min-width: 979px) {
  body.top section.topics ul li a:hover {
    opacity: .5;
  }
}
@media only screen and (max-width: 760px) {
  body.top section.topics ul li a {
    border-radius: 0 !important;
  }
}
@media only screen and (max-width: 760px) {
  body.top section.topics ul li div.img {
    display: none;
  }
}
@media only screen and (max-width: 760px) {
  body.top section.topics ul li div.txt {
    width: 100%;
    padding: 0.5rem 0;
  }
}
body.top section.topics ul li div.txt p.tag,
body.top section.topics ul li div.txt p.topicttl {
  color: #616558;
  font-weight: 600;
}
@media only screen and (max-width: 760px) {
  body.top section.topics ul li div.txt p.tag,
  body.top section.topics ul li div.txt p.topicttl {
    font-weight: 400;
  }
  body.top section.topics ul li div.txt p.tag br,
  body.top section.topics ul li div.txt p.topicttl br {
    display: none;
  }
}

@media only screen and (max-width: 760px) {
  section.topics div.body ul li {
    width: calc( ( 100% - 1rem) / 2);
  }
  section.topics div.body ul li:nth-child(3) {
    margin-top: 1rem;
  }
  section.topics div.body ul li:not(:nth-child(3n)) {
    margin-right: 0;
  }
  section.topics div.body ul li:not(:nth-child(2n)) {
    margin-right: 1rem;
  }
}
@media only screen and (max-width: 479px) {
  section.topics div.body ul li {
    width: 100%;
  }
  section.topics div.body ul li:nth-child(2), section.topics div.body ul li:nth-child(3) {
    margin-top: 1rem;
  }
  section.topics div.body ul li:not(:nth-child(2n)) {
    margin-right: 0;
  }
}
section.topics div.body ul li a {
  display: block;
  border-radius: 1rem;
  overflow: hidden;
  transition: opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -webkit-transition: opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -moz-transition: opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -o-transition: opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -ms-transition: opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
}
@media only screen and (min-width: 979px) {
  section.topics div.body ul li a:hover {
    opacity: .5;
  }
}
section.topics div.body ul li a div.img {
  position: relative;
  z-index: 0;
  overflow: hidden;
  padding-top: 66.666%;
}
section.topics div.body ul li a div.img:after {
  background-color: #f7f5eb;
  opacity: 0;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 2;
  position: absolute;
  transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -webkit-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -moz-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -o-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -ms-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
}
section.topics div.body ul li a div.img:before {
  font-family: "Lora", TimesNewRoman, "Times New Roman";
  letter-spacing: 0.1em;
  font-size: 15px;
  line-height: 24px;
  color: #616558;
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  text-align: center;
  margin-top: -12px;
  display: block;
  z-index: 3;
  opacity: 0;
  transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -webkit-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -moz-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -o-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -ms-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
}
section.topics div.body ul li a div.img img {
  transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -webkit-transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -moz-transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -o-transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -ms-transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
}
section.topics div.body ul li a div.txt {
  background-color: #fff;
  margin-top: 0 !important;
  padding: 2rem;
}
@media only screen and (max-width: 1200px) {
  section.topics div.body ul li a div.txt {
    padding: 1.5rem;
  }
}
section.topics div.body ul li a div.txt p.tag {
  margin-bottom: 0.5rem;
}
section.topics div.body ul li a div.txt p.topicttl {
  color: #616558;
  font-weight: 600;
}
section.topics div.body ul li a div.txt p.topicttl br {
  display: none;
}
@media only screen and (max-width: 760px) {
  section.topics div.body ul li a div.txt p.topicttl {
    font-weight: 400;
  }
}
section.topics div.body ul li a div.txt p.topicttl span {
  font-size: 1rem;
  line-height: 1.8;
}

.tag span {
  background-color: #D69B89;
  color: #fff !important;
  padding: 3px 8px;
  font-size: 0.8rem;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 600;
}

div.btn {
  margin-top: 3rem;
}
@media only screen and (max-width: 760px) {
  div.btn button + button {
    margin-top: 1rem;
  }
}

.leadttl > span {
  font-family: "Sanchez", serif;
  font-size: 1.7rem;
  letter-spacing: 0.12em;
}
@media only screen and (max-width: 979px) {
  .leadttl > span {
    font-size: 1.8rem;
  }
}
.leadttl > span span {
  font-size: 1rem;
  margin-top: 1.5rem;
}
@media only screen and (max-width: 979px) {
  .leadttl > span span {
    font-size: 0.9rem;
  }
}
@media only screen and (max-width: 479px) {
  .leadttl > span span {
    font-size: 1rem;
  }
}

.leadtxt {
  text-align: center;
}
.leadtxt span {
  line-height: 2.4;
  font-size: 15px;
}
@media only screen and (max-width: 979px) {
  .leadtxt span {
    line-height: 2.5;
    font-size: 13px;
  }
}
@media only screen and (max-width: 760px) {
  .leadtxt span {
    font-size: 12px;
  }
}
@media only screen and (max-width: 479px) {
  .leadtxt span {
    font-size: 11px;
  }
}

.leadbox h3 {
  position: relative;
}
.leadbox h3:after {
  content: "";
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-top: 2rem;
  margin-bottom: 2rem;
  width: 1.2rem;
  height: 1px;
  background-color: #A9A791;
}
@media only screen and (max-width: 979px) {
  .leadbox h3:after {
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
  }
}
@media only screen and (max-width: 760px) {
  .leadbox h3:after {
    display: none;
  }
}
@media only screen and (max-width: 760px) {
  .leadbox p {
    margin-top: 2rem;
  }
}
.leadbox div.btn {
  margin-top: 2rem;
}

.conceptbox div.body {
  display: table;
  width: 100%;
  position: relative;
}
@media only screen and (max-width: 760px) {
  .conceptbox div.body {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: stretch;
    display: -webkit-flex;
    -webkit-flex-wrap: wrap;
    -webkit-justify-content: flex-start;
    -webkit-align-items: stretch;
    flex-direction: column-reverse;
    -webkit-flex-direction: column-reverse;
  }
}
.conceptbox div.body div.img,
.conceptbox div.body div.txt {
  display: table-cell;
  vertical-align: middle;
}
@media only screen and (max-width: 760px) {
  .conceptbox div.body div.img,
  .conceptbox div.body div.txt {
    width: 100%;
    display: block;
  }
}
.conceptbox div.body div.img {
  width: 60%;
  border-radius: 1rem;
  overflow: hidden;
}
@media only screen and (max-width: 979px) {
  .conceptbox div.body div.img {
    display: table-cell;
    width: 50%;
    margin-left: 0;
    vertical-align: middle;
  }
}
@media only screen and (max-width: 760px) {
  .conceptbox div.body div.img {
    width: 100%;
    display: block;
  }
}
@media only screen and (max-width: 760px) {
  .conceptbox div.body div.img + div.txt,
  .conceptbox div.body div.txt + div.img {
    margin-bottom: 3rem !important;
  }
}

.listblank {
  position: relative;
}
.listblank div {
  border: 2px dashed #eee;
  border-radius: 1rem;
  box-sizing: border-box;
  width: 100%;
  position: relative;
}
.listblank div:before {
  content: "";
  display: block;
  padding-top: 66.666%;
}
.listblank div::after {
  position: absolute;
  content: "";
  display: block;
  width: 44px;
  height: 44px;
  top: 50%;
  margin-top: -22px;
  margin-left: -22px;
  left: 50%;
  background: transparent url("../img/menu-2.png") left top no-repeat;
  background: transparent url("../img/menu-2.svg") left top no-repeat;
  background-size: 44px 44px;
  opacity: 0.2;
}
@media only screen and (max-width: 979px) {
  .listblank {
    display: none;
  }
}

.basicplanbox {
  padding: 2rem;
  border-radius: 1rem;
  border: 2px dashed #ceccb8;
  margin-bottom: 3rem;
}
@media only screen and (max-width: 760px) {
  .basicplanbox {
    padding: 1.5rem;
    margin-bottom: 0;
    border: 1px dashed #ceccb8;
  }
}
.basicplanbox div.price {
  margin-top: 0.5rem;
  margin-bottom: 1rem;
}
@media only screen and (max-width: 760px) {
  .basicplanbox div.price p {
    text-align: center !important;
  }
}
.basicplanbox div.price p span {
  font-size: 1.2rem;
  font-family: "Lato", sans-serif;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: bold;
}
.basicplanbox div.price p span.price {
  padding-left: 1rem;
  font-size: 1.4rem;
  font-family: "Lato", sans-serif;
}
.basicplanbox > div.tc {
  vertical-align: middle;
}
@media only screen and (max-width: 760px) {
  .basicplanbox > div.tc {
    display: block;
  }
}
.basicplanbox > div.img {
  overflow: hidden;
  border-radius: 1rem;
  width: 40%;
}
@media only screen and (max-width: 760px) {
  .basicplanbox > div.img {
    width: 100%;
  }
}
.basicplanbox > div.txt {
  padding-left: 5rem;
  padding-right: 5rem;
}
@media only screen and (max-width: 1200px) {
  .basicplanbox > div.txt {
    padding-right: 0rem;
  }
}
@media only screen and (max-width: 760px) {
  .basicplanbox > div.txt {
    padding-left: 0;
    width: 100%;
  }
}
.basicplanbox > div.txt h3,
.basicplanbox > div.txt p {
  text-align: left;
}
@media only screen and (max-width: 760px) {
  .basicplanbox > div.txt h3 br,
  .basicplanbox > div.txt p br {
    display: none;
  }
}
.basicplanbox > div.txt h3 {
  position: relative;
}
@media only screen and (max-width: 760px) {
  .basicplanbox > div.txt h3 {
    text-align: center !important;
  }
}
.basicplanbox > div.txt h3 > span {
  font-weight: 600;
  line-height: 30px;
  display: inline-block;
  vertical-align: baseline;
  padding-left: 42px;
  position: relative;
}
@media only screen and (max-width: 760px) {
  .basicplanbox > div.txt h3 > span {
    padding-left: 30px;
  }
}
.basicplanbox > div.txt h3 > span:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 25px;
  height: 25px;
  margin-top: -12px;
  background: url("../img/menu-2.png") center center no-repeat;
  background-size: 25px 25px;
}
@media only screen and (max-width: 760px) {
  .basicplanbox > div.txt h3 > span:before {
    width: 20px;
    height: 20px;
    background-size: 20px 20px;
    margin-top: -11px;
  }
}
.basicplanbox > div.txt h3 > span span {
  display: inline-block;
  padding-left: 10px;
  position: relative;
  top: -2px;
}
.basicplanbox div.btn {
  text-align: left;
  margin-top: 20px;
}
@media only screen and (max-width: 979px) {
  .basicplanbox div.btn {
    margin-top: 2rem !important;
  }
}
@media only screen and (max-width: 760px) {
  .basicplanbox div.btn {
    margin-top: 1rem !important;
    text-align: center !important;
  }
}
.basicplanbox div.btn button {
  width: 228px;
}

p.scenettl {
  text-align: center;
  padding: 5rem 0;
  position: relative;
}
p.scenettl span {
  font-size: 1.2rem;
}

body.top div#wrapAll main section.mv {
  padding-top: 0 !important;
  padding-top: 78px;
  position: relative;
  width: 100%;
  height: 100%;
}
body.top div#wrapAll main section.mv div.secwrap2 {
  max-width: initial;
}
body.top div#wrapAll main section.mv div.leadlogo {
  position: absolute;
  z-index: 3;
  width: 356px;
  left: 50%;
  top: 50%;
  margin-left: -177px;
  margin-top: -85px;
}
@media only screen and (max-width: 479px) {
  body.top div#wrapAll main section.mv div.leadlogo {
    width: 224px;
    height: 109px;
    margin-left: -112px;
    margin-top: -54px;
  }
}
body.top div#wrapAll main section.mv div.leadlogo div.img img {
  width: 354px;
  height: 170px;
}
@media only screen and (max-width: 479px) {
  body.top div#wrapAll main section.mv div.leadlogo div.img img {
    width: 224px;
    height: 109px;
  }
}
body.top div#wrapAll main section.mv #mv {
  width: 100%;
  position: relative;
  z-index: 2;
}
body.top div#wrapAll main section.mv #mv div.mv_box_wrap {
  width: 100%;
  height: 100%;
  overflow: hidden;
}
body.top div#wrapAll main section.mv #mv div.mv_box_wrap div.mv_box_l {
  float: left;
  background: url("../img/common/bg2.png");
  width: 50%;
  height: 100%;
  position: relative;
}
@media only screen and (max-width: 979px) {
  body.top div#wrapAll main section.mv #mv div.mv_box_wrap div.mv_box_l {
    clear: both;
    width: 100%;
    height: 50vh;
    height: 100%;
  }
}
body.top div#wrapAll main section.mv #mv div.mv_box_wrap div.mv_box_r {
  float: right;
  width: 50%;
  height: 100%;
  position: relative;
}
@media only screen and (max-width: 979px) {
  body.top div#wrapAll main section.mv #mv div.mv_box_wrap div.mv_box_r {
    position: absolute;
    width: 100%;
    top: 0px;
    left: 0;
  }
}
body.top div#wrapAll main section.mv #mv .base {
  position: absolute;
  width: 50%;
  height: 100%;
  background-image: url(../img/common/bg8.png);
  top: 0;
  left: 0;
}
body.top div#wrapAll main section.mv #mv .mv_wrap {
  position: absolute;
  border-radius: 16px;
  overflow: hidden;
  z-index: 2;
}
body.top div#wrapAll main section.mv #mv .mv_wrap ul {
  width: 100%;
  height: 100%;
  position: relative;
}
body.top div#wrapAll main section.mv #mv .mv_wrap ul li {
  width: 100%;
  height: 100%;
  position: absolute;
  box-sizing: border-box;
  top: 0;
  left: 0;
  opacity: 0;
  z-index: 1000;
  transform-origin: center center;
  -webkit-transform-origin: center center;
  -moz-transform-origin: center center;
  -o-transform-origin: center center;
  -ms-transform-origin: center center;
  transform: translate3d(0, 0, 0) scale(1.02, 1.02);
  -webkit-transform: -webkit-translate3d(0, 0, 0) scale(1.02, 1.02);
  -moz-transform: -moz-translate3d(0, 0, 0) scale(1.02, 1.02);
  -o-transform: -o-translate3d(0, 0, 0) scale(1.02, 1.02);
  -ms-transform: -ms-translate3d(0, 0, 0) scale(1.02, 1.02);
  transition: transform 4000ms cubic-bezier(0.25, 0.25, 0.75, 0.75) 0ms, opacity 2000ms cubic-bezier(0.445, 0.05, 0.55, 0.95) 0ms;
  -webkit-transition: -webkit-transform 4000ms cubic-bezier(0.25, 0.25, 0.75, 0.75) 0ms, opacity 2000ms cubic-bezier(0.445, 0.05, 0.55, 0.95) 0ms;
  -moz-transition: -moz-transform 4000ms cubic-bezier(0.25, 0.25, 0.75, 0.75) 0ms, opacity 2000ms cubic-bezier(0.445, 0.05, 0.55, 0.95) 0ms;
  -o-transition: -o-transform 4000ms cubic-bezier(0.25, 0.25, 0.75, 0.75) 0ms, opacity 2000ms cubic-bezier(0.445, 0.05, 0.55, 0.95) 0ms;
  -ms-transition: -ms-transform 4000ms cubic-bezier(0.25, 0.25, 0.75, 0.75) 0ms, opacity 2000ms cubic-bezier(0.445, 0.05, 0.55, 0.95) 0ms;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
body.top div#wrapAll main section.mv #mv .mv_wrap ul li.on {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1, 1);
  -webkit-transform: -webkit-translate3d(0, 0, 0) scale(1, 1);
  -moz-transform: -moz-translate3d(0, 0, 0) scale(1, 1);
  -o-transform: -o-translate3d(0, 0, 0) scale(1, 1);
  -ms-transform: -ms-translate3d(0, 0, 0) scale(1, 1);
}
@media only screen and (max-width: 479px) {
  body.top div#wrapAll main section.mv {
    padding-top: 50px;
  }
}
body.top div#wrapAll main section.mv ul {
  position: relative;
  width: 100%;
  height: calc(100vh - 84px);
}
@media only screen and (max-width: 479px) {
  body.top div#wrapAll main section.mv ul {
    height: calc(100vh - 50px);
  }
}
body.top div#wrapAll main section.mv ul li {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  padding: 1rem;
  padding-top: 0rem;
}
body.top div#wrapAll main section.mv ul li div.img {
  background: transparent center center no-repeat;
  background-size: cover;
  width: 100%;
  height: 100%;
  border-radius: 1rem;
}
body.top div#wrapAll main section.mv div.txt {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -171px;
  margin-top: -85.5px;
}
@media only screen and (max-width: 479px) {
  body.top div#wrapAll main section.mv div.txt {
    margin-left: -113.5px;
    margin-top: -62px;
  }
}
body.top div#wrapAll main section.mv div.txt h1 {
  text-align: center;
}
body.top div#wrapAll main section.mv div.txt h1 span {
  font-family: "Sanchez", serif;
  color: #fff;
  font-size: 2.5rem;
  letter-spacing: 0.08em;
}
@media only screen and (max-width: 479px) {
  body.top div#wrapAll main section.mv div.txt h1 span {
    font-size: 1.8rem;
  }
}
body.top div#wrapAll main section.mv div.txt p {
  text-align: center;
  margin-top: 2rem;
  color: #fff;
}
body.top div#wrapAll main section.mv div.txt p span {
  color: #fff;
  font-size: 1rem;
  font-weight: 700;
}
body.top div#wrapAll main section.mv div.txt p.img {
  position: relative;
}
body.top div#wrapAll main section.mv div.txt p.img:before {
  content: "";
  position: absolute;
  width: calc(100% - 100px - 1rem);
  height: 1px;
  background-color: #fff;
  left: 0;
  bottom: 0;
}
@media only screen and (max-width: 479px) {
  body.top div#wrapAll main section.mv div.txt p.img:before {
    width: calc(100% - 72px - 1rem);
  }
}
body.top div#wrapAll main section.mv div.txt p.img img {
  display: block;
  margin-left: auto;
  margin-right: 0px;
  width: 100px;
}
@media only screen and (max-width: 479px) {
  body.top div#wrapAll main section.mv div.txt p.img img {
    width: 72px;
  }
}
body.top div#wrapAll main section.mv #scroll {
  position: absolute;
  bottom: 56px;
  left: 50%;
  padding: 10px;
  display: block;
  width: 24px;
  height: 24px;
  background-color: transparent;
  border: 1px solid #a9a791;
  border: 1px solid #fff;
  border-radius: 100%;
  margin-left: -24px;
  opacity: 1;
  visibility: visible;
  z-index: 5000;
  box-shadow: 2px 2px 1px 1px rgba(100, 100, 100, 0.1);
  -webkit-box-shadow: 2px 2px 1px 1px rgba(100, 100, 100, 0.1);
  -moz-box-shadow: 2px 2px 1px 1px rgba(100, 100, 100, 0.1);
  -ms-box-shadow: 2px 2px 1px 1px rgba(100, 100, 100, 0.1);
  -o-box-shadow: 2px 2px 1px 1px rgba(100, 100, 100, 0.1);
  transition: border-color 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms, background-color 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -webkit-transition: border-color 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms, background-color 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -moz-transition: border-color 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms, background-color 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -o-transition: border-color 400ms cub ic-bezier(0.455, 0.03, 0.515, 0.955) 0ms, background-color 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -ms-transition: border-color 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms, background-color 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
}
@media only screen and (min-width: 979px) {
  body.top div#wrapAll main section.mv #scroll:hover {
    background-color: #d69b89;
    border: 1px solid transparent;
  }
  body.top div#wrapAll main section.mv #scroll:hover span:before {
    opacity: 0;
  }
  body.top div#wrapAll main section.mv #scroll:hover span:after {
    opacity: 1;
  }
}
@media only screen and (max-width: 479px) {
  body.top div#wrapAll main section.mv #scroll {
    bottom: 3rem;
    width: 18px;
    height: 18px;
    margin-left: -18px;
  }
}
body.top div#wrapAll main section.mv #scroll.on {
  opacity: 1;
  visibility: visible;
  z-index: 5000;
}
body.top div#wrapAll main section.mv #scroll span {
  display: block;
  width: 100%;
  height: 100%;
  opacity: 1;
  position: relative;
  top: 2px;
}
body.top div#wrapAll main section.mv #scroll span:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -webkit-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -moz-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -o-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -ms-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  background-image: url(../img/common/arr_b_02_w.png);
  background-image: url(../img/common/arr_b_02_w.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 12px 12px;
  position: relative;
  top: 0px;
  opacity: 0.5;
}
body.top div#wrapAll main section.mv #scroll span:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  opacity: 1;
  transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -webkit-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -moz-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -o-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -ms-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  background-image: url(../img/common/arr_b_02_w.png);
  background-image: url(../img/common/arr_b_02_w.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 12px 12px;
  position: absolute;
  top: 0px;
}
@media only screen and (max-width: 760px) {
  body.top div#wrapAll main section.menu div.secwrap {
    padding: 5rem 1rem;
  }
}
body.top div#wrapAll main section.menu div.body ul li {
  margin-top: 3rem;
  margin-bottom: 0;
}
body.top div#wrapAll main section.menu div.body ul li:nth-child(2), body.top div#wrapAll main section.menu div.body ul li:nth-child(1), body.top div#wrapAll main section.menu div.body ul li:nth-child(3) {
  margin-top: 0;
}
@media only screen and (max-width: 479px) {
  body.top div#wrapAll main section.menu div.body ul li.blank {
    display: none;
  }
}
@media only screen and (max-width: 760px) {
  body.top div#wrapAll main section.menu div.body ul li {
    width: calc( ( 100% - 0.5rem ) / 2);
  }
  body.top div#wrapAll main section.menu div.body ul li:nth-child(3) {
    margin-top: 3rem;
  }
  body.top div#wrapAll main section.menu div.body ul li:not(:nth-child(3n)) {
    margin-right: 0;
  }
  body.top div#wrapAll main section.menu div.body ul li:not(:nth-child(2n)) {
    margin-right: 0.5rem;
  }
}
body.top div#wrapAll main section.menu div.body ul a {
  display: block;
}
@media only screen and (min-width: 979px) {
  body.top div#wrapAll main section.menu div.body ul a:hover div.img:before {
    opacity: 1;
  }
  body.top div#wrapAll main section.menu div.body ul a:hover div.img:after {
    opacity: 0.7;
  }
  body.top div#wrapAll main section.menu div.body ul a:hover div.img img {
    transform: translate3d(0, 0, 0) scale(1.03, 1.03);
    -moz-transform: translate3d(0, 0, 0) scale(1.03, 1.03);
    -webkit-transform: translate3d(0, 0, 0) scale(1.03, 1.03);
  }
}
body.top div#wrapAll main section.menu div.body ul a div.img {
  border-radius: 1rem;
  overflow: hidden;
  position: relative;
}
@media only screen and (max-width: 760px) {
  body.top div#wrapAll main section.menu div.body ul a div.img {
    border-radius: 0.5rem;
  }
}
body.top div#wrapAll main section.menu div.body ul a div.img:after {
  content: "";
  background-color: #f7f5eb;
  opacity: 0;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 2;
  position: absolute;
  transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -webkit-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -moz-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -o-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -ms-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
}
body.top div#wrapAll main section.menu div.body ul a div.img:before {
  content: "VIEW DETAIL";
  font-family: "Lora", TimesNewRoman, "Times New Roman";
  letter-spacing: 0.1em;
  font-size: 15px;
  line-height: 24px;
  color: #616558;
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  text-align: center;
  margin-top: -12px;
  display: block;
  z-index: 3;
  opacity: 0;
  transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -webkit-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -moz-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -o-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -ms-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
}
body.top div#wrapAll main section.menu div.body ul a div.img img {
  transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -webkit-transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -moz-transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -o-transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -ms-transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
}
body.top div#wrapAll main section.menu div.body ul a div.txt {
  width: 96%;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 1200px) {
  body.top div#wrapAll main section.menu div.body ul a div.txt {
    width: 96%;
    margin-left: auto;
    margin-right: auto;
  }
}
@media only screen and (max-width: 479px) {
  body.top div#wrapAll main section.menu div.body ul a div.txt {
    padding: 0;
  }
}
body.top div#wrapAll main section.menu div.body ul a div.txt h3 > span {
  font-size: 1.2rem;
  letter-spacing: 0.12em;
  white-space: nowrap;
}
@media only screen and (max-width: 479px) {
  body.top div#wrapAll main section.menu div.body ul a div.txt h3 > span {
    font-size: 1.2rem;
  }
}
body.top div#wrapAll main section.menu div.body ul a div.txt h3 > span span {
  margin-top: 0.8rem;
}
body.top div#wrapAll main section.menu div.body ul a div.txt h3 > span span br {
  display: none;
}
@media only screen and (max-width: 479px) {
  body.top div#wrapAll main section.menu div.body ul a div.txt h3 > span span {
    font-size: 0.9rem;
  }
}
@media only screen and (max-width: 479px) {
  body.top div#wrapAll main section.menu div.body ul a div.txt p {
    display: none;
  }
}
body.top div#wrapAll main section.menu div.body div.btn {
  margin-top: 3rem;
}
body.top div#wrapAll main section.menu div.body div.btn button {
  width: 320px;
}
@media only screen and (max-width: 479px) {
  body.top div#wrapAll main section.menu div.body div.btn button {
    width: 100%;
  }
}
body.top div#wrapAll main section.menu div.body div.btn button + button {
  margin-top: 1rem;
}
@media only screen and (max-width: 760px) {
  body.top div#wrapAll main section.product div.secwrap div.body div.tb {
    display: block;
  }
}
body.top div#wrapAll main section.product div.secwrap div.body div.tb div.tc {
  vertical-align: middle;
}
@media only screen and (max-width: 760px) {
  body.top div#wrapAll main section.product div.secwrap div.body div.tb div.tc {
    display: block;
    width: 100% !important;
  }
}
body.top div#wrapAll main section.product div.secwrap div.body div.tb div.tc.tc1 {
  width: 60%;
}
@media only screen and (max-width: 760px) {
  body.top div#wrapAll main section.product div.secwrap div.body div.tb div.tc ul {
    margin-bottom: 3rem;
  }
}
body.top div#wrapAll main section.product div.secwrap div.body div.tb div.tc ul li {
  position: relative;
  margin-bottom: 1rem;
}
body.top div#wrapAll main section.product div.secwrap div.body div.tb div.tc ul li a {
  display: block;
}
@media only screen and (min-width: 979px) {
  body.top div#wrapAll main section.product div.secwrap div.body div.tb div.tc ul li a:hover div.img img {
    transform: translate3d(0, 0, 0) scale(1.03, 1.03);
    -moz-transform: translate3d(0, 0, 0) scale(1.03, 1.03);
    -webkit-transform: translate3d(0, 0, 0) scale(1.03, 1.03);
  }
}
body.top div#wrapAll main section.product div.secwrap div.body div.tb div.tc ul li a div.img img {
  transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -webkit-transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -moz-transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -o-transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -ms-transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
}
body.top div#wrapAll main section.product div.secwrap div.body div.tb div.tc ul li a div.txt {
  position: absolute;
  bottom: 1rem;
  left: 1rem;
}
@media only screen and (max-width: 760px) {
  body.top div#wrapAll main section.product div.secwrap div.body div.tb div.tc ul li a div.txt {
    bottom: 0.5rem;
    left: 0.5rem;
  }
}
body.top div#wrapAll main section.product div.secwrap div.body div.tb div.tc ul li a div.txt p {
  background-color: #fff;
}
body.top div#wrapAll main section.product div.secwrap div.body div.tb div.tc ul li a div.txt p span {
  font-size: 0.8rem;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
body.top div#wrapAll main section.product div.secwrap div.body div.tb div.tc div.img {
  border-radius: 1rem;
  overflow: hidden;
}

body.page section.mv {
  margin-top: 78px;
}
body.page section.mv.noimg div.ttl {
  margin-top: 0 !important;
}
body.page section.mv.noimg div.ttl h1 {
  margin-bottom: 5rem;
  font-weight: normal !important;
}
body.page section.mv.noimg div.ttl h1 span {
  font-weight: normal !important;
}
body.page section.mv div.secwrap,
body.page section.mv div.secwrap2 {
  max-width: initial !important;
}
@media only screen and (max-width: 479px) {
  body.page section.mv {
    margin-top: 50px;
  }
}
body.page section.mv.txt div.ttl {
  padding-top: 5rem;
}
body.page section.mv div.img {
  width: 100%;
  height: 70vh;
  border-radius: 1rem;
  background-size: cover;
  position: relative;
  z-index: 0;
}
@media only screen and (max-width: 979px) {
  body.page section.mv div.img {
    height: 40vh;
  }
}
@media only screen and (max-width: 760px) {
  body.page section.mv div.img {
    height: 40vh;
  }
}
body.page section.mv div.img.scene {
  width: 80%;
  height: 70vh;
}
@media only screen and (max-width: 979px) {
  body.page section.mv div.img.scene {
    height: 50vh;
  }
}
@media only screen and (max-width: 760px) {
  body.page section.mv div.img.scene {
    width: 100%;
  }
}
body.page section.mv div.img.l {
  margin-left: 0;
  margin-right: auto;
}
body.page section.mv div.img.r {
  margin-right: 0;
  margin-left: auto;
}
body.page section.mv div.img.menu {
  background: url(../img/pic/menu_mv.jpg) center center no-repeat;
  background-size: cover;
}
body.page section.mv div.img.topics {
  background: url(../img/pic/topic_mv.jpg) center center no-repeat;
  background-size: cover;
}
body.page section.mv div.img.product {
  background: url(../img/pic/product_mv.jpg) center center no-repeat;
  background-size: cover;
}
body.page section.mv div.img.info {
  background: url(../img/pic/access_mv.jpg) center center no-repeat;
  background-size: cover;
}
body.page section.mv div.img.concept {
  background: url(../img/pic/concept_mv.jpg) center 17% no-repeat;
  background-size: cover;
}
@media only screen and (max-width: 760px) {
  body.page section.mv div.img.concept {
    background: url(../img/pic/concept_mv.jpg) 0% center no-repeat;
    background-size: cover;
  }
}
body.page section.mv div.h1 {
  position: absolute;
  top: 50%;
  margin-top: -21px;
  z-index: 10;
}
body.page section.mv div.h1.scene {
  width: auto;
  top: 30%;
}
@media only screen and (max-width: 760px) {
  body.page section.mv div.h1.scene {
    position: relative;
    top: auto;
    text-align: center !important;
    margin-top: 3rem;
    right: auto !important;
    left: auto !important;
  }
  body.page section.mv div.h1.scene span {
    text-align: center !important;
  }
}
body.page section.mv div.h1.scene span {
  line-height: 1.5;
}
body.page section.mv div.h1.w span {
  color: #fff;
}
body.page section.mv div.h1.r {
  right: 8%;
}
body.page section.mv div.h1.r span {
  text-align: right;
}
body.page section.mv div.h1.l {
  left: 8%;
}
body.page section.mv div.h1.l span {
  text-align: left;
}
body.page section.mv div.h1.c {
  width: 100%;
  text-align: center;
}
@media only screen and (max-width: 760px) {
  body.page section.mv div.h1.concept {
    left: 8%;
    right: auto;
  }
  body.page section.mv div.h1.concept span {
    text-align: left;
  }
}
body.page section.mv div.h1 h1 span {
  font-weight: bold;
  font-size: 2.4rem;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  background-color: transparent !important;
}
@media only screen and (max-width: 760px) {
  body.page section.mv div.h1 h1 span {
    font-size: 2.2rem;
  }
}
@media only screen and (max-width: 479px) {
  body.page section.mv div.h1 h1 span {
    font-size: 1.8rem;
  }
}
body.page section.mv div.h1 h1 span span {
  font-size: 1.1rem;
  background-color: transparent;
  color: #1a1a1a;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
@media only screen and (max-width: 760px) {
  body.page section.mv div.h1 h1 span span {
    margin-top: 0.5rem;
  }
}
body.page section.mv div.h1 h1 span span:before, body.page section.mv div.h1 h1 span span:after {
  height: 1px;
}
@media only screen and (max-width: 760px) {
  body.page section.mv div.h1.scene + div.ttl {
    margin-top: 2rem;
  }
}
@media only screen and (max-width: 479px) {
  body.page section.mv div.h1.scene + div.ttl p {
    text-align: left;
    padding: 0 1rem;
  }
  body.page section.mv div.h1.scene + div.ttl p br {
    display: none;
  }
}
body.page section.mv div.h1.scene + div.ttl p {
  text-align: center;
}
body.page section.mv div.h1.scene + div.ttl p + p {
  margin-top: 18px;
}
body.page section.mv div.h1.scene + div.ttl p span {
  white-space: nowrap;
}
@media only screen and (max-width: 760px) {
  body.page section.mv div.h1.scene + div.ttl p span br {
    display: block !important;
  }
}
body.page section.mv div.ttl {
  text-align: center;
  margin-top: 8rem;
  margin-bottom: 0 !important;
  position: relative;
}
@media only screen and (max-width: 979px) {
  body.page section.mv div.ttl {
    margin-top: 3rem;
  }
}
body.page section.mv div.ttl h1 {
  margin-bottom: 2rem;
}
@media only screen and (max-width: 479px) {
  body.page section.mv div.ttl h1 span {
    font-size: 1.6rem;
  }
}
@media only screen and (max-width: 479px) {
  body.page section.mv div.ttl h1 span span {
    font-size: 1rem;
  }
}
body.page section.mv div.ttl p span {
  font-size: 1.1rem;
  font-size: 15px;
  line-height: 2.5;
  line-height: 2.2;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  letter-spacing: 0.2em;
}
@media only screen and (max-width: 479px) {
  body.page section.mv div.ttl p span {
    font-size: 12px;
    line-height: 2.5;
    letter-spacing: 0.1em;
    text-align: left;
  }
}
body.page section.mv div.secwrap {
  position: relative;
}
body.page section.mv div.secwrap div.ttl {
  padding-top: 0;
}
body.page section.mv div.secwrap2 {
  padding-top: 0 !important;
  padding-bottom: 8rem;
  padding-left: 1rem !important;
  padding-right: 1rem !important;
  position: relative;
}
@media only screen and (max-width: 979px) {
  body.page section.mv div.secwrap2 {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
    padding-bottom: 3rem !important;
  }
}
body.page section.mv ul.nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: stretch;
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  -webkit-align-items: stretch;
  width: 800px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 4rem;
}
@media only screen and (max-width: 979px) {
  body.page section.mv ul.nav {
    width: 100%;
  }
}
@media only screen and (max-width: 760px) {
  body.page section.mv ul.nav.r4 li {
    width: calc( ( 100% - 0.5rem * 3) / 4);
  }
  body.page section.mv ul.nav.r4 li:not(:nth-child(4n)) {
    margin-right: 0.5rem;
  }
}
@media only screen and (max-width: 979px) {
  body.page section.mv ul.nav.r5 li {
    width: calc( ( 100% - 0.5rem * 4) / 5);
  }
  body.page section.mv ul.nav.r5 li:not(:nth-child(5n)) {
    margin-right: 0.5rem;
  }
}
@media only screen and (max-width: 479px) {
  body.page section.mv ul.nav.r5 li {
    width: calc( ( 100% - 0.5rem * 2) / 3);
  }
  body.page section.mv ul.nav.r5 li:not(:nth-child(5n)) {
    margin-right: 0;
  }
  body.page section.mv ul.nav.r5 li:not(:nth-child(3n)) {
    margin-right: 0.5rem;
  }
}
body.page section.mv ul.nav li {
  margin-bottom: 0;
  text-align: center;
  position: relative;
  margin-top: 1rem;
}
body.page section.mv ul.nav li.current a {
  background-color: #e5d2cc;
}
body.page section.mv ul.nav li.shop a {
  background-color: #c7c093;
}
body.page section.mv ul.nav li.shop.current a {
  background-color: #deddd3;
}
body.page section.mv ul.nav li a {
  display: block;
  padding: 0.75rem 1rem;
  background-color: #D69B89;
  border-radius: 3px;
  transition: opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -webkit-transition: opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -moz-transition: opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -o-transition: opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -ms-transition: opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
}
@media only screen and (min-width: 979px) {
  body.page section.mv ul.nav li a:hover {
    opacity: 0.5;
  }
}
@media only screen and (max-width: 760px) {
  body.page section.mv ul.nav li a {
    padding: 0.75rem 0.5rem;
  }
}
@media only screen and (max-width: 479px) {
  body.page section.mv ul.nav li a {
    padding: 0.75rem 0;
    border-radius: 0.5rem;
  }
}
body.page section.mv ul.nav li a span {
  color: #fff;
  white-space: nowrap;
  font-weight: 600;
}
@media only screen and (max-width: 760px) {
  body.page section.mv ul.nav li a span {
    font-size: 0.8rem;
  }
}
body.page section.concept {
  background-image: none !important;
}
body.page section.concept div.secwrap {
  padding-top: 3rem !important;
}
body.page section.concept.concept1 {
  background: url("../img/common/bg2.png");
  margin-bottom: 0;
}
body.page section.concept.concept1 div.secwrap {
  margin-bottom: 0;
}
body.page section.concept.concept1 + section {
  margin-top: 0;
}
body.page section.concept div.mv {
  position: relative;
}
body.page section.concept div.mv div.ttl {
  margin-top: 5rem;
}
body.page section.concept ul li {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: center;
  -webkit-align-items: center;
}
body.page section.concept ul li + li {
  margin-top: 8rem;
}
@media only screen and (max-width: 760px) {
  body.page section.concept ul li + li {
    margin-top: 3rem;
  }
}
body.page section.concept ul li:nth-child(2n) {
  flex-direction: row-reverse;
  -webkit-flex-direction: row-reverse;
}
@media only screen and (max-width: 760px) {
  body.page section.concept ul li:nth-child(2n) {
    flex-direction: column;
    -webkit-flex-direction: column;
  }
}
body.page section.concept ul li div.img {
  width: 50%;
  border-radius: 1rem;
}
@media only screen and (max-width: 760px) {
  body.page section.concept ul li div.img {
    width: 100%;
  }
}
body.page section.concept ul li div.img:after {
  content: "";
  width: 100%;
  padding-top: 66.6%;
  display: block;
}
body.page section.concept ul li div.txt {
  width: 50%;
}
@media only screen and (max-width: 760px) {
  body.page section.concept ul li div.txt {
    width: 100%;
  }
}
body.page section.concept ul li div.txt p {
  text-align: left;
  padding-left: 18%;
  padding-right: 18%;
  white-space: nowrap;
  line-height: 33px;
}
@media only screen and (max-width: 979px) {
  body.page section.concept ul li div.txt p {
    padding: 0 10%;
  }
}
@media only screen and (max-width: 760px) {
  body.page section.concept ul li div.txt p {
    text-align: center;
    padding: 0 0%;
  }
}
body.page section.concept ul li div.txt p span {
  font-size: 15px;
}
@media only screen and (max-width: 760px) {
  body.page section.concept ul li div.txt p span {
    font-size: 12px;
  }
}
body.page section.menu.nobg {
  background-image: none !important;
}
body.page section.menu.nobg div.secwrap {
  padding-top: 0 !important;
}
body.page section.menu div.index div.basic {
  padding: 3rem;
  background-color: #f1eae8;
  margin-bottom: 3rem;
}
body.page section.menu div.index div.basic dd {
  width: 342px;
  padding-left: 3rem;
}
body.page section.menu div.index div.basic dd div.pricewrap {
  background-color: #fff;
  padding: 2rem 5rem;
}
body.page section.menu div.index div.basic dd div.pricewrap p.price {
  margin-bottom: 1rem;
}
body.page section.menu div.index div.basic dd div.pricewrap p.price span {
  font-size: 1.5rem;
  font-weight: 600;
}
body.page section.menu div.index div.basic dd div.pricewrap p.price span span {
  font-size: 1rem;
}
body.page section.menu div.index div.basic dd div.pricewrap dl.tb {
  width: 100%;
  padding: 0.5rem 0;
}
body.page section.menu div.index div.basic dd div.pricewrap dl.tb dt {
  width: 100px;
}
body.page section.menu div.index div.basic dd div.pricewrap dl.tb dd {
  padding-left: 0;
  width: calc(100% - 100px);
}
body.page section.menu div.index ul li {
  margin-bottom: 0;
  margin-top: 4rem;
}
body.page section.menu div.index ul li:nth-child(1), body.page section.menu div.index ul li:nth-child(2), body.page section.menu div.index ul li:nth-child(3) {
  margin-top: 0rem;
}
@media only screen and (max-width: 979px) {
  body.page section.menu div.index ul li {
    width: calc(( 100% - 1rem) / 2);
  }
  body.page section.menu div.index ul li:not(:nth-child(3n)) {
    margin-right: 0;
  }
  body.page section.menu div.index ul li:not(:nth-child(2n)) {
    margin-right: 1rem;
  }
  body.page section.menu div.index ul li:nth-child(3) {
    margin-top: 4rem;
  }
}
@media only screen and (max-width: 479px) {
  body.page section.menu div.index ul li {
    width: 100%;
  }
  body.page section.menu div.index ul li:nth-child(2), body.page section.menu div.index ul li:nth-child(3) {
    margin-top: 4rem;
  }
  body.page section.menu div.index ul li:not(:nth-child(2n)) {
    margin-right: 0;
  }
}
@media only screen and (max-width: 760px) {
  body.page section.menu div.index ul li.listblank {
    display: none !important;
  }
}
body.page section.menu div.index ul li a {
  display: block;
}
@media only screen and (min-width: 979px) {
  body.page section.menu div.index ul li a:hover div.img:before {
    opacity: 1;
  }
  body.page section.menu div.index ul li a:hover div.img:after {
    opacity: 0.7;
  }
  body.page section.menu div.index ul li a:hover div.img img {
    transform: translate3d(0, 0, 0) scale(1.03, 1.03);
    -moz-transform: translate3d(0, 0, 0) scale(1.03, 1.03);
    -webkit-transform: translate3d(0, 0, 0) scale(1.03, 1.03);
  }
}
body.page section.menu div.index ul li a div.img {
  border-radius: 1rem;
  overflow: hidden;
  position: relative;
  overflow: hidden;
  position: relative;
}
body.page section.menu div.index ul li a div.img:after {
  content: "";
  background-color: #f7f5eb;
  opacity: 0;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 2;
  position: absolute;
  transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -webkit-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -moz-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -o-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -ms-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
}
body.page section.menu div.index ul li a div.img:before {
  content: "VIEW DETAIL";
  font-family: "Lora", TimesNewRoman, "Times New Roman";
  letter-spacing: 0.1em;
  font-size: 15px;
  line-height: 24px;
  color: #616558;
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  text-align: center;
  margin-top: -12px;
  display: block;
  z-index: 3;
  opacity: 0;
  transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -webkit-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -moz-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -o-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -ms-transition: opacity 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
}
body.page section.menu div.index ul li a div.img img {
  transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -webkit-transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -moz-transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -o-transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -ms-transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
}
body.page section.menu div.index ul li a div.txt {
  margin-top: 2.3rem !important;
}
body.page section.menu div.index ul li a div.txt h3 {
  margin-bottom: 2rem;
}
body.page section.menu div.index ul li a div.txt h3 > span {
  font-size: 1.2rem;
  letter-spacing: 0.12em;
}
body.page section.menu div.index ul li a div.txt h3 span span {
  margin-top: 0.8rem;
}
body.page section.menu div.index ul li a div.txt p.textlink {
  margin-top: 2rem;
}
body.page section.menu div.index ul li a div.dl dl.tb {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  padding: 1rem 0;
  border-top: 1px dotted #b5b4ae;
}
body.page section.menu div.index ul li a div.dl dl.tb:last-child {
  border-bottom: 1px dotted #b5b4ae;
}
body.page section.menu div.index ul li a div.dl dl.tb dt,
body.page section.menu div.index ul li a div.dl dl.tb dd {
  width: 50%;
}
body.page section.menu div.index ul li a div.dl dl.tb dt span {
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 600;
  color: #333;
}
body.page section.menu div.index ul li a div.dl dl.tb dd {
  text-align: right;
}
body.page section.menu div.index ul li a div.dl dl.tb dd span {
  font-family: "Lato", sans-serif;
  font-size: 1.1rem;
  letter-spacing: 0.1em;
}
body.page section.menu div.index ul li a div.dl dl.tb dd span span {
  font-size: 0.8rem;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
body.page section.menu div.index ul li div.btn {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 2rem;
}
body.page section.menu div.index ul li div.btn button {
  cursor: pointer;
  transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -webkit-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -moz-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -o-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -ms-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
}
body.page section.menu div.index ul li div.btn button span {
  transition: color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -webkit-transition: color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -moz-transition: color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -o-transition: color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -ms-transition: color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
}
@media only screen and (min-width: 979px) {
  body.page section.menu div.index ul li div.btn button:hover {
    background-color: #A9A791;
  }
  body.page section.menu div.index ul li div.btn button:hover span {
    color: #fff;
  }
}
body.page section.menu div.price > ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: center;
  -webkit-align-items: flex-start;
}
body.page section.menu div.price > ul > li {
  background-color: #fff;
  border-radius: 1rem;
  padding: 3rem 2rem;
  margin-bottom: 0;
}
body.page section.menu div.price > ul > li:nth-child(1) {
  background-color: #dadada;
}
@media only screen and (max-width: 979px) {
  body.page section.menu div.price > ul > li:nth-child(1) {
    margin-bottom: 1rem;
  }
}
body.page section.menu div.price > ul > li:nth-child(2) {
  background-color: #f1eae8;
  display: block;
}
@media only screen and (max-width: 979px) {
  body.page section.menu div.price > ul > li {
    width: 100%;
  }
  body.page section.menu div.price > ul > li:not(:nth-child(2n)) {
    margin-right: 0 !important;
  }
}
body.page section.menu div.price > ul > li div.txt h3 span {
  font-family: "Lora", TimesNewRoman, "Times New Roman";
}
body.page section.menu div.price > ul > li div.txt h3 span span {
  color: #1a1a1a;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
body.page section.menu div.price > ul > li div.txt p.price {
  text-align: center;
}
body.page section.menu div.price > ul > li div.txt p.price span span {
  font-size: 1.8rem;
  font-family: "Lato", sans-serif;
  font-weight: 600;
  letter-spacing: 0.12em;
}
body.page section.menu div.price > ul > li ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: center;
  -webkit-align-items: flex-start;
}
@media only screen and (max-width: 479px) {
  body.page section.menu div.price > ul > li ul {
    margin-top: 1rem !important;
  }
}
body.page section.menu div.price > ul > li ul li {
  padding: 1rem 0;
  border-radius: 1rem;
  background-color: #fff;
  margin-bottom: 0;
  margin-top: 0 !important;
}
@media only screen and (max-width: 479px) {
  body.page section.menu div.price > ul > li ul li:not(:first-child) {
    margin-top: 1rem !important;
    margin-right: 0;
  }
}
@media only screen and (max-width: 479px) {
  body.page section.menu div.price > ul > li ul li {
    width: 100%;
    display: table;
    padding: 1rem 2rem;
  }
  body.page section.menu div.price > ul > li ul li br {
    display: none;
  }
  body.page section.menu div.price > ul > li ul li:not(:nth-child(4n)) {
    margin-left: 0;
  }
  body.page section.menu div.price > ul > li ul li + li {
    margin-top: 1rem;
  }
}
@media only screen and (max-width: 479px) {
  body.page section.menu div.price > ul > li ul li div.txt,
  body.page section.menu div.price > ul > li ul li div.img {
    display: table-cell;
    vertical-align: middle;
  }
}
body.page section.menu div.price > ul > li ul li div.img {
  width: 30%;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 479px) {
  body.page section.menu div.price > ul > li ul li div.img {
    width: 18%;
  }
}
body.page section.menu div.price > ul > li ul li div.txt {
  margin-top: 0.7rem !important;
  text-align: center;
}
@media only screen and (max-width: 479px) {
  body.page section.menu div.price > ul > li ul li div.txt {
    text-align: left;
    padding-left: 1rem;
  }
}
body.page section.menu div.price > ul > li ul li div.txt p span {
  line-height: 1.5;
}
body.page section.menu div.point ul {
  counter-reset: point;
}
body.page section.menu div.point ul li {
  margin-bottom: 0;
  position: relative;
  width: calc( (100% - 2rem * 3) / 3);
}
body.page section.menu div.point ul li:not(:nth-child(3n)) {
  margin-right: 2rem;
}
@media only screen and (max-width: 760px) {
  body.page section.menu div.point ul li {
    width: 100%;
    margin-bottom: 2rem;
  }
  body.page section.menu div.point ul li + li {
    margin-top: 3rem;
  }
  body.page section.menu div.point ul li:not(:nth-child(3n)) {
    margin-right: 0;
  }
}
body.page section.menu div.point ul li div.point_num {
  text-align: center;
  position: absolute;
  width: 86px;
  border-radius: 100%;
  padding: 1.5rem;
  background-color: #D69B89;
  margin-left: auto;
  margin-right: auto;
  top: -3rem;
  right: -1rem;
}
@media only screen and (max-width: 979px) {
  body.page section.menu div.point ul li div.point_num {
    width: 71px;
  }
}
body.page section.menu div.point ul li div.point_num span {
  font-size: 0.9rem;
  display: block;
  text-align: center;
  color: #fff;
  font-weight: bold;
}
body.page section.menu div.point ul li div.point_num span span {
  font-size: 1.8rem;
  margin-top: 6px;
}
body.page section.menu div.point ul li div.txt {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}
body.page section.menu div.point ul li div.txt h3 span {
  line-height: 2;
}
body.page section.menu div.point ul li div.img {
  border-radius: 1rem;
  overflow: hidden;
}
body.page section.menu div.flow ul {
  counter-reset: numbers;
}
body.page section.menu div.flow ul li {
  margin-bottom: 0;
}
body.page section.menu div.flow ul li:before {
  counter-increment: numbers;
  content: "STEP " counter(numbers);
  display: block;
  font-size: 1.2rem;
  text-align: center;
  margin-bottom: 1rem;
}
body.page section.menu div.detail div.dl.tb {
  border-collapse: collapse;
  text-align: left;
  line-height: 2;
}
body.page section.menu div.detail div.dl.tb dl {
  padding: 2rem 0;
  border-top: 1px solid #c6c6c6;
}
body.page section.menu div.detail div.dl.tb dl:last-child {
  border-bottom: 1px solid #c6c6c6;
}
body.page section.menu div.detail div.dl.tb dl:first-child {
  background-color: #ECECE5;
}
body.page section.menu div.detail div.dl.tb dl:first-child dd span {
  font-size: 1rem;
  font-weight: 700;
}
body.page section.menu div.detail div.dl.tb dl:first-child dd span span {
  display: block;
  font-size: 0.8rem;
  color: #A9A791;
  font-weight: 600;
}
body.page section.menu div.detail div.dl.tb dl:first-child dd span span.price {
  font-size: 1rem;
  font-weight: 600;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-family: "Lato", sans-serif;
  color: #1a1a1a;
}
body.page section.menu div.detail div.dl.tb dl:first-child dd span span.price span {
  font-size: 0.8rem;
  display: inline-block;
  color: #1a1a1a;
}
body.page section.menu div.detail div.dl.tb dl dt,
body.page section.menu div.detail div.dl.tb dl dd {
  vertical-align: top;
  padding: 1rem;
}
@media only screen and (max-width: 479px) {
  body.page section.menu div.detail div.dl.tb dl dt,
  body.page section.menu div.detail div.dl.tb dl dd {
    padding: 0.5rem;
  }
}
body.page section.menu div.detail div.dl.tb dl dt {
  width: 20%;
  border-left: 1px solid #c6c6c6;
  border-right: 1px solid #c6c6c6;
}
body.page section.menu div.detail div.dl.tb dl dt span {
  font-weight: 700;
}
@media only screen and (max-width: 479px) {
  body.page section.menu div.detail div.dl.tb dl dt {
    margin-bottom: 1rem;
    width: 30%;
  }
}
body.page section.menu div.detail div.dl.tb dl dd {
  width: 40%;
  border-right: 1px solid #c6c6c6;
  line-height: 2;
  text-align: center;
}
@media only screen and (max-width: 479px) {
  body.page section.menu div.detail div.dl.tb dl dd {
    margin-bottom: 1rem;
    width: 35%;
    text-align: left;
    padding: 0.5rem 10px;
  }
}
body.page section.menu div.detail div.dl.tb dl dd span.cap {
  display: block;
}
body.page section.menu div.detail ul.attention {
  margin-top: 2rem;
}
body.page section.menu div.detail ul.attention li {
  margin-top: 0.5rem;
  position: relative;
  padding-left: 2rem;
}
@media only screen and (max-width: 979px) {
  body.page section.menu div.detail ul.attention li {
    padding-left: 1.2rem;
  }
}
body.page section.menu div.detail ul.attention li:before {
  content: "・";
  display: block;
  font-size: 1rem;
  position: absolute;
  top: 0.5rem;
  left: 0;
}
body.page section.menu div.detail ul.attention li span {
  line-height: 2;
  font-size: 1rem;
}
body.page section.menu div.detail ul.attention li span span.red {
  color: #d27477;
}
body.page section.menu div.detail ul.attention li span a span {
  color: #d27477;
  position: relative;
}
body.page section.menu div.detail ul.attention li span a span:after {
  content: "";
  width: 100%;
  height: 1px;
  display: block;
  position: absolute;
  bottom: -2px;
  left: 0;
  background-color: #D69B89;
}
body.page section.menu div.detail div.btn {
  margin-top: 3rem;
}
body.page section.menu div.gallery ul li {
  cursor: pointer;
  overflow: hidden;
  border-radius: 1rem;
  margin-bottom: 1rem !important;
}
@media only screen and (min-width: 979px) {
  body.page section.menu div.gallery ul li:hover div.img {
    transform: translate3d(0, 0, 0) scale(1.03, 1.03);
    -moz-transform: translate3d(0, 0, 0) scale(1.03, 1.03);
    -webkit-transform: translate3d(0, 0, 0) scale(1.03, 1.03);
  }
}
@media only screen and (max-width: 979px) {
  body.page section.menu div.gallery ul li {
    width: calc(( 100% - 1rem) / 2);
  }
  body.page section.menu div.gallery ul li:not(:nth-child(3n)) {
    margin-right: 0;
  }
  body.page section.menu div.gallery ul li:not(:nth-child(2n)) {
    margin-right: 1rem;
  }
}
body.page section.menu div.gallery ul li div.img {
  position: relative;
  transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -webkit-transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -moz-transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -o-transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -ms-transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
}
body.page section.menu div.gallery ul li div.img:before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 66.666%;
}
body.page section.menu div.gallery div.btn {
  margin-top: 5rem;
}
@media only screen and (max-width: 479px) {
  body.page section.menu div.gallery div.btn {
    margin-top: 3rem;
  }
}
@media only screen and (max-width: 479px) {
  body.page section.menu div.gallery div.btn button {
    margin-top: 1rem;
  }
}
body.page section.menu div.faq div.dl {
  width: 800px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 979px) {
  body.page section.menu div.faq div.dl {
    width: 100%;
  }
}
body.page section.menu div.faq div.dl dl {
  padding: 2rem 0;
  border-top: 1px dotted #A9A791;
}
body.page section.menu div.faq div.dl dl:last-child {
  border-bottom: 1px dotted #A9A791;
}
body.page section.menu div.faq div.dl dl dt,
body.page section.menu div.faq div.dl dl dd {
  position: relative;
  padding-left: 2rem;
}
body.page section.menu div.faq div.dl dl dt:before,
body.page section.menu div.faq div.dl dl dd:before {
  content: "";
  top: 0;
  left: 0;
  margin-top: 0.25rem;
  display: block;
  position: absolute;
  width: 1.5rem;
  height: 1.5rem;
  background: center no-repeat;
  background-size: cover;
}
body.page section.menu div.faq div.dl dl dt span,
body.page section.menu div.faq div.dl dl dd span {
  line-height: 2;
}
body.page section.menu div.faq div.dl dl dt {
  margin-bottom: 1rem;
}
body.page section.menu div.faq div.dl dl dt:before {
  background-image: url(../img/common/faq-q.png);
}
body.page section.menu div.faq div.dl dl dt span {
  font-weight: 700;
}
body.page section.menu div.faq div.dl dl dd:before {
  top: 0.4rem;
  margin-top: 0;
  background-image: url(../img/common/faq-a.png);
}
body.page section.product div.index ul li {
  margin-top: 3rem;
}
body.page section.product div.index ul li:nth-child(1), body.page section.product div.index ul li:nth-child(2) {
  margin-top: 0;
}
@media only screen and (max-width: 760px) {
  body.page section.product div.index ul li:nth-child(2) {
    margin-top: 3rem;
  }
}
@media only screen and (max-width: 760px) {
  body.page section.product div.index ul li {
    width: 100%;
  }
  body.page section.product div.index ul li:not(:nth-child(2n)) {
    margin-right: 0;
  }
}
body.page section.product div.index ul li div.img {
  border-radius: 1rem;
  overflow: hidden;
}
body.page section.product div.index ul li div.txt {
  width: 90%;
  margin-top: 3rem !important;
  margin-left: auto;
  margin-right: auto;
}
body.page section.product div.index ul li div.txt h3 {
  margin-bottom: 2rem;
}
body.page section.product div.index ul li div.txt h3 span {
  font-family: "Lora", TimesNewRoman, "Times New Roman";
  font-family: "Sanchez", serif;
  font-weight: normal;
}
body.page section.product div.index ul li div.dl {
  margin-top: 1rem !important;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}
body.page section.product div.index ul li div.dl dl.tb {
  margin-left: auto;
  margin-right: auto;
  padding: 1rem 0;
  border-top: 1px dotted #b5b4ae;
}
body.page section.product div.index ul li div.dl dl.tb:first-child {
  background-color: #ecece5;
}
body.page section.product div.index ul li div.dl dl.tb:last-child {
  border-bottom: 1px dotted #b5b4ae;
}
body.page section.product div.index ul li div.dl dl.tb:not(:first-child) dd span {
  font-size: 1.1rem;
  letter-spacing: 0.1em;
}
@media only screen and (max-width: 760px) {
  body.page section.product div.index ul li div.dl dl.tb dt,
  body.page section.product div.index ul li div.dl dl.tb dd {
    vertical-align: middle;
  }
}
body.page section.product div.index ul li div.dl dl.tb dt {
  padding-left: 0.5rem;
}
body.page section.product div.index ul li div.dl dl.tb dt span {
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-family: "Lato", sans-serif;
}
body.page section.product div.index ul li div.dl dl.tb dt span span {
  font-size: 0.8rem;
  color: #A9A791;
  margin-left: 1rem;
}
@media only screen and (max-width: 760px) {
  body.page section.product div.index ul li div.dl dl.tb dt span span {
    display: block;
    margin-left: 0;
    line-height: 2;
  }
}
body.page section.product div.index ul li div.dl dl.tb dd {
  text-align: right;
  width: 120px;
}
body.page section.product div.index ul li div.dl dl.tb dd:last-child {
  padding-right: 0.5rem;
}
@media only screen and (max-width: 979px) {
  body.page section.product div.index ul li div.dl dl.tb dd {
    width: 80px;
  }
}
@media only screen and (max-width: 760px) {
  body.page section.product div.index ul li div.dl dl.tb dd {
    width: 72px;
  }
}
body.page section.product div.index ul li div.dl dl.tb dd span {
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-family: "Lato", sans-serif;
}
body.page section.product div.index ul li div.dl dl.tb dd span span {
  font-size: 0.8rem;
}
body.page section.product div.index ul li p.cap {
  margin-top: 1rem;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  text-align: right;
}
body.page section.product div.index div.btn {
  margin-top: 3rem;
}
body.page section.product div.index.set dt,
body.page section.product div.index.set dd {
  vertical-align: middle;
}
body.page section.product div.index.set dt span span {
  display: block;
  margin-left: 0 !important;
  margin-top: 0.5rem;
}
body.page section.product div.flow {
  position: relative;
}
body.page section.product div.flow:before {
  content: "";
  width: 1px;
  height: 100%;
  position: absolute;
  z-index: 0;
  left: 50%;
  top: 0;
  background-color: #A9A791;
}
body.page section.product div.flow dl {
  width: 800px;
  margin-left: auto;
  margin-right: auto;
  padding: 2rem;
  border: 1px solid #A9A791;
  border-radius: 1rem;
  box-sizing: border-box;
  background: url("../img/common/bg2.png");
  position: relative;
  z-index: 1;
}
body.page section.product div.flow dl + dl {
  margin-top: 2rem;
}
@media only screen and (max-width: 979px) {
  body.page section.product div.flow dl {
    width: 100%;
  }
}
@media only screen and (max-width: 760px) {
  body.page section.product div.flow dl {
    display: block;
  }
}
body.page section.product div.flow dl dt,
body.page section.product div.flow dl dd {
  vertical-align: middle;
}
@media only screen and (max-width: 479px) {
  body.page section.product div.flow dl dt,
  body.page section.product div.flow dl dd {
    width: 100%;
    display: block;
  }
}
body.page section.product div.flow dl dt span,
body.page section.product div.flow dl dd span {
  line-height: 2;
}
body.page section.product div.flow dl dt {
  width: 100px;
  text-align: center;
  padding-right: 2rem;
}
@media only screen and (max-width: 479px) {
  body.page section.product div.flow dl dt {
    margin-bottom: 1rem;
    width: 100%;
  }
}
body.page section.product div.flow dl dt span {
  font-weight: 700;
  font-size: 0.8rem;
  letter-spacing: 0.1em;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 0.8rem;
}
body.page section.product div.flow dl dt span span.num {
  display: block;
  font-weight: bold;
  font-size: 2rem;
  line-height: 2rem;
  margin-top: 6px;
  font-family: "Lato", sans-serif;
}
body.page section.gallery {
  background-image: none !important;
}
body.page section.gallery div.secwrap {
  padding-top: 0 !important;
}
body.page section.gallery div.gallery ul li {
  cursor: pointer;
  overflow: hidden;
  border-radius: 1rem;
  margin-bottom: 0;
  margin-top: 1rem;
}
body.page section.gallery div.gallery ul li:nth-child(2), body.page section.gallery div.gallery ul li:nth-child(1), body.page section.gallery div.gallery ul li:nth-child(3) {
  margin-top: 0;
}
@media only screen and (min-width: 979px) {
  body.page section.gallery div.gallery ul li:hover div.img {
    transform: translate3d(0, 0, 0) scale(1.03, 1.03);
    -moz-transform: translate3d(0, 0, 0) scale(1.03, 1.03);
    -webkit-transform: translate3d(0, 0, 0) scale(1.03, 1.03);
  }
}
@media only screen and (max-width: 979px) {
  body.page section.gallery div.gallery ul li {
    width: calc(( 100% - 1rem) / 2);
  }
  body.page section.gallery div.gallery ul li:not(:nth-child(3n)) {
    margin-right: 0;
  }
  body.page section.gallery div.gallery ul li:not(:nth-child(2n)) {
    margin-right: 1rem;
  }
  body.page section.gallery div.gallery ul li:nth-child(3) {
    margin-top: 1rem;
  }
}
@media only screen and (max-width: 479px) {
  body.page section.gallery div.gallery ul li {
    width: 100%;
  }
  body.page section.gallery div.gallery ul li:not(:nth-child(2n)) {
    margin-right: 0;
  }
  body.page section.gallery div.gallery ul li:nth-child(2) {
    margin-top: 1rem;
  }
}
body.page section.gallery div.gallery ul li div.img {
  position: relative;
  transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -webkit-transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -moz-transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -o-transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -ms-transition: transform 400ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
}
body.page section.gallery div.gallery ul li div.img:before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 66.666%;
}
body.page section.gallery div.gallery div.btn {
  margin-top: 5rem;
}
body.page section.topic {
  background-image: none !important;
}
body.page section.topic.article div.articlebody {
  margin-top: 13rem;
  position: relative;
  padding-top: 0 !important;
}
body.page section.topic.article div.articlebody div.ttl {
  width: 30%;
  position: absolute;
  top: 0;
  left: 0;
}
@media only screen and (max-width: 979px) {
  body.page section.topic.article div.articlebody div.ttl {
    width: 100%;
    position: relative;
    margin-bottom: 2rem !important;
  }
}
body.page section.topic.article div.articlebody div.ttl span {
  color: #1a1a1a;
}
body.page section.topic.article div.articlebody div.ttl h2,
body.page section.topic.article div.articlebody div.ttl p {
  text-align: left;
}
body.page section.topic.article div.articlebody div.ttl h2 {
  padding-right: 30px;
}
@media only screen and (max-width: 979px) {
  body.page section.topic.article div.articlebody div.ttl h2 {
    padding-right: 0;
  }
}
body.page section.topic.article div.articlebody div.ttl h2 span {
  font-size: 1.2rem;
  line-height: 1.7;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #616558;
  font-weight: 600;
  white-space: normal;
  letter-spacing: 0.06em;
}
body.page section.topic.article div.articlebody div.ttl h2 span br {
  display: none;
}
body.page section.topic.article div.articlebody div.ttl p {
  margin-top: 1rem;
}
body.page section.topic.article div.articlebody div.body {
  width: 70%;
  margin-left: auto;
  margin-right: 0;
}
@media only screen and (max-width: 979px) {
  body.page section.topic.article div.articlebody div.body {
    width: 100%;
  }
}
body.page section.topic.article div.articlebody div.body p,
body.page section.topic.article div.articlebody div.body img {
  display: block;
  width: 100%;
  height: auto;
}
body.page section.topic.article div.articlebody div.body p + img,
body.page section.topic.article div.articlebody div.body img + img,
body.page section.topic.article div.articlebody div.body p + p,
body.page section.topic.article div.articlebody div.body img + p {
  margin-top: 2rem;
}
body.page section.topic.article div.articlebody div.body b {
  color: #d27477;
}
body.page section.topic.article div.articlebody div.body p a {
  display: inline-block;
  color: #D69B89;
  font-weight: 600;
  padding: 0.5rem 1.5rem;
  border: 1px solid #D69B89;
  border-radius: 0.5rem;
  transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -webkit-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -moz-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -o-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -ms-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms, color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
}
@media only screen and (min-width: 979px) {
  body.page section.topic.article div.articlebody div.body p a:hover {
    background-color: #D69B89;
    color: #fff !important;
  }
}
body.page section.topic.article div.articlebody div.body div.footer {
  border-top: 1px solid #efefef;
  margin-top: 3rem;
  padding-top: 2rem;
}
body.page section.topic.article div.articlebody div.body div.footer ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: flex-end;
  -webkit-align-items: center;
}
@media only screen and (max-width: 979px) {
  body.page section.topic.article div.articlebody div.body div.footer ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    display: -webkit-flex;
    -webkit-flex-wrap: wrap;
    -webkit-justify-content: center;
    -webkit-align-items: center;
  }
}
body.page section.topic.article div.articlebody div.body div.footer ul li {
  width: 4rem;
  height: 1.5rem;
}
body.page section.topic.article div.articlebody div.body div.footer ul li a {
  display: block;
  height: 100%;
  background: transparent center no-repeat;
  opacity: .8;
  transition: opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -webkit-transition: opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -moz-transition: opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -o-transition: opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -ms-transition: opacity 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
}
@media only screen and (min-width: 979px) {
  body.page section.topic.article div.articlebody div.body div.footer ul li a:hover {
    opacity: .5;
  }
}
body.page section.topic.article div.articlebody div.body div.footer ul li a.prev {
  background-image: url("../img/arr_prev.svg");
  background-size: contain;
}
body.page section.topic.article div.articlebody div.body div.footer ul li a.next {
  background-image: url("../img/arr_next.svg");
  background-size: contain;
}
body.page section.topic.article div.articlebody div.body div.footer ul li a.index {
  background-image: url("../img/arr_index.svg");
  background-size: contain;
}
body.page section.info div.staff {
  width: 800px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 979px) {
  body.page section.info div.staff {
    width: 100%;
  }
}
body.page section.info div.staff li {
  padding: 1rem;
}
@media only screen and (max-width: 479px) {
  body.page section.info div.staff li {
    width: 100%;
  }
}
@media only screen and (max-width: 760px) {
  body.page section.info div.map {
    width: 100%;
    display: block;
  }
}
body.page section.info div.map div.tc {
  width: 50%;
  vertical-align: middle;
}
@media only screen and (max-width: 760px) {
  body.page section.info div.map div.tc {
    width: 100%;
    display: block;
  }
}
body.page section.info div.map div.tc:nth-child(2) {
  padding-left: 3rem;
}
@media only screen and (max-width: 760px) {
  body.page section.info div.map div.tc:nth-child(2) {
    padding-left: 0;
  }
}
@media only screen and (max-width: 760px) {
  body.page section.info div.map div.tc div#box-map,
  body.page section.info div.map div.tc div#map_canvas {
    height: 250px !important;
  }
}
@media only screen and (max-width: 760px) {
  body.page section.info div.map div.tc div.dl {
    margin-top: 2rem;
  }
}
body.page section.info div.map div.tc dl.tb {
  padding: 1rem 0;
  border-top: 1px dotted #A9A791;
}
body.page section.info div.map div.tc dl.tb:last-child {
  border-bottom: 1px dotted #A9A791;
}
body.page section.info div.map div.tc dl.tb dt,
body.page section.info div.map div.tc dl.tb dd {
  vertical-align: top;
}
body.page section.info div.map div.tc dl.tb dt {
  width: 30%;
}
body.page section.info div.map div.tc dl.tb dt span {
  line-height: 2;
}
body.page section.info div.map div.tc dl.tb dd span {
  line-height: 2;
}
body.page section.reserve div.reserve div.ttl p {
  text-align: center;
  margin-top: 2rem;
}
body.page section.reserve div.reserve button {
  margin-top: 1rem;
}
body.page section.reserve div.contact div.ttl p {
  text-align: center;
  margin-top: 2rem;
}
body.page section.reserve div.contact dl.tb {
  width: 800px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
body.page section.reserve div.contact dl.tb dt,
body.page section.reserve div.contact dl.tb dd {
  vertical-align: top;
}
body.page section.reserve div.contact dl.tb dt {
  width: 30%;
}
body.page section.reserve div.contact div.btn {
  margin-top: 2rem;
}
body.page section.reserve div.faq {
  width: 800px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 979px) {
  body.page section.reserve div.faq {
    width: 100%;
  }
}
body.page section.reserve div.faq div.ttl p {
  text-align: center;
  margin-top: 2rem;
}
body.page section.reserve div.faq div.ttl nav {
  margin-top: 2rem;
}
body.page section.reserve div.faq div.ttl nav ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: center;
  -webkit-align-items: center;
  width: 800px;
  margin-left: auto;
  margin-right: auto;
}
body.page section.reserve div.faq div.ttl nav ul li {
  margin-bottom: 0;
  text-align: center;
  position: relative;
  margin-top: 1rem;
}
body.page section.reserve div.faq div.ttl nav ul li a {
  display: block;
  padding: 0.5rem 1rem;
  background-color: #D69B89;
  border-radius: 3px;
  transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -webkit-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -moz-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -o-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
  -ms-transition: background-color 400ms cubic-bezier(0.25, 0.1, 0.25, 1) 0ms;
}
@media only screen and (min-width: 979px) {
  body.page section.reserve div.faq div.ttl nav ul li a:hover {
    background-color: #e5d2cc;
  }
}
@media only screen and (max-width: 479px) {
  body.page section.reserve div.faq div.ttl nav ul li a {
    padding: 0.5rem;
    border-radius: 0.5rem;
    border: 1px solid #A9A791;
    margin-left: 1rem;
    margin-bottom: 1rem;
  }
}
body.page section.reserve div.faq div.ttl nav ul li a span {
  color: #fff;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 600;
}
body.page section.reserve div.faq ul li + li {
  margin-top: 3rem;
}
body.page section.reserve div.faq ul li h3 {
  background-color: #A9A791;
  border-radius: 1rem 1rem 0 0;
}
body.page section.reserve div.faq ul li h3 span {
  color: #fff;
  padding: 1rem;
  font-weight: 600;
}
body.page section.reserve div.faq ul li div.dl {
  background-color: #f5f5f3;
  background-color: #fff;
  padding: 1rem 3rem;
  border-radius: 0 0 1rem 1rem;
}
body.page section.reserve div.faq ul li div.dl dl {
  padding: 2rem 0;
}
body.page section.reserve div.faq ul li div.dl dl + dl {
  border-top: 1px dotted #A9A791;
}
body.page section.reserve div.faq ul li div.dl dl dt,
body.page section.reserve div.faq ul li div.dl dl dd {
  position: relative;
  padding-left: 2rem;
}
body.page section.reserve div.faq ul li div.dl dl dt:before,
body.page section.reserve div.faq ul li div.dl dl dd:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  margin-top: 0.25rem;
  width: 1.5rem;
  height: 1.5rem;
  background: center no-repeat;
  background-size: cover;
}
body.page section.reserve div.faq ul li div.dl dl dt span,
body.page section.reserve div.faq ul li div.dl dl dd span {
  line-height: 2;
}
body.page section.reserve div.faq ul li div.dl dl dt {
  margin-bottom: 1rem;
}
body.page section.reserve div.faq ul li div.dl dl dt:before {
  background-image: url(../img/common/faq-q.png);
}
body.page section.reserve div.faq ul li div.dl dl dt span {
  font-weight: 700;
}
body.page section.reserve div.faq ul li div.dl dl dd:before {
  background-image: url(../img/common/faq-a.png);
}

div#modal {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 999999;
  display: none;
}
div#modal div.base {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  opacity: .9;
  background-image: url("../img/loading.gif");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 32px auto;
}
div#modal div.pic {
  position: absolute;
  z-index: 1;
  width: 60%;
  max-width: 1000px;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  opacity: 0;
}
div#modal div.pic.h {
  height: 80%;
  width: auto;
}
@media only screen and (max-width: 760px) {
  div#modal div.pic.h {
    height: auto;
    width: 70%;
  }
}
@media only screen and (max-width: 760px) {
  div#modal div.pic.h {
    height: auto;
    width: 80%;
  }
}
div#modal div.pic.h img {
  height: 100%;
  width: auto;
}
@media only screen and (max-width: 760px) {
  div#modal div.pic.h img {
    height: auto;
    width: 100%;
  }
}
@media only screen and (max-width: 979px) {
  div#modal div.pic {
    width: 70%;
  }
}
@media only screen and (max-width: 479px) {
  div#modal div.pic {
    width: 80%;
  }
}
div#modal div.pic::after {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  content: "";
  z-index: 3;
}
div#modal div.pic img {
  width: 100%;
  position: relative;
  z-index: 1;
  display: block;
  height: auto;
  border-radius: 1rem;
}
div#modal div.pic p {
  position: absolute;
  left: 0;
  bottom: -3rem;
  display: inline-block;
  color: #D69B89;
}
div#modal div.pic a.modal_arr {
  position: absolute;
  top: 0;
  width: 50px;
  height: 100%;
  background-color: transparent;
  display: block;
  background-position: center center;
  background-size: 34px 38px;
  background-repeat: no-repeat;
}
@media only screen and (max-width: 479px) {
  div#modal div.pic a.modal_arr {
    width: 30px;
    background-size: 24px 38px;
  }
}
div#modal div.pic a.modal_arr.modal_prev {
  left: -5rem;
  background-image: url("../img/arr_prev.svg");
}
@media only screen and (max-width: 479px) {
  div#modal div.pic a.modal_arr.modal_prev {
    left: -3rem;
  }
}
div#modal div.pic a.modal_arr.modal_next {
  right: -5rem;
  background-image: url("../img/arr_next.svg");
}
@media only screen and (max-width: 479px) {
  div#modal div.pic a.modal_arr.modal_next {
    right: -3rem;
  }
}
div#modal a.modal_close {
  position: absolute;
  background: url(../img/close.png) center no-repeat;
  top: 2rem;
  right: 2rem;
  color: #96896B;
  display: block;
  width: 32px;
  height: 34px;
  background-size: contain;
}
@media only screen and (max-width: 479px) {
  div#modal a.modal_close {
    width: 24px;
  }
}

.Parallax {
  opacity: 0 !important;
  transform: translate3d(0px, 0px, 0px);
  -webkit-transform: translate3d(0px, 0px, 0px);
  -moz-transform: translate3d(0px, 0px, 0px);
  -ms-transform: translate3d(0px, 0px, 0px);
  -o-transform: translate3d(0px, 0px, 0px);
  transition: opacity 800ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms, transform 800ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms !important;
  -webkit-transition: opacity 800ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms, -webkit-transform 800ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms !important;
  -moz-transition: opacity 800ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms, -moz-transform 800ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms !important;
  -o-transition: opacity 800ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms, -o-transform 800ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms !important;
  -ms-transition: opacity 800ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms, -ms-transform 800ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms !important;
}
.Parallax.img {
  transform: translate3d(0px, 20px, 0px);
  -webkit-transform: translate3d(0px, 20px, 0px);
  -moz-transform: translate3d(0px, 20px, 0px);
  -ms-transform: translate3d(0px, 20px, 0px);
  -o-transform: translate3d(0px, 20px, 0px);
}
@media only screen and (max-width: 760px) {
  .Parallax.img {
    transform: translate3d(0px, 0px, 0px) !important;
    -webkit-transform: translate3d(0px, 0px, 0px) !important;
    -moz-transform: translate3d(0px, 0px, 0px) !important;
    -ms-transform: translate3d(0px, 0px, 0px) !important;
    -o-transform: translate3d(0px, 0px, 0px) !important;
  }
}
.Parallax.Parallax_on {
  opacity: 1 !important;
  transform: translate3d(0px, 0px, 0px) !important;
  -webkit-transform: translate3d(0px, 0px, 0px) !important;
  -moz-transform: translate3d(0px, 0px, 0px) !important;
  -ms-transform: translate3d(0px, 0px, 0px) !important;
  -o-transform: translate3d(0px, 0px, 0px) !important;
}

ul.row.Parallax.Parallax_on li {
  opacity: 1;
}
ul.row.Parallax li {
  opacity: 0;
  transition: opacity 800ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -webkit-transition: opacity 800ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -moz-transition: opacity 800ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -o-transition: opacity 800ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  -ms-transition: opacity 800ms cubic-bezier(0.455, 0.03, 0.515, 0.955) 0ms;
  transition-delay: 0ms;
  -webkit-transition-delay: 0ms;
  -moz-transition-delay: 0ms;
  -ms-transition-delay: 0ms;
  -o-transition-delay: 0ms;
}

.parking {
  margin-top: 4rem;
}
.parking p {
  text-align: right;
  margin-bottom: 1rem;
}
.parking p img {
  width: 1rem;
  height: 1rem;
  display: inline-block;
  margin-right: 6px;
  vertical-align: middle;
}
.parking p span {
  vertical-align: middle;
  font-size: 0.9rem;
}
.parking a {
  text-decoration: underline;
  display: block;
  text-align: right;
  margin-top: 1rem;
}

body.top header {
  opacity: 0;
}
body.top section.mv div.leadlogo {
  opacity: 0;
}
body.top section.mv div#mv {
  opacity: 0;
}
body.load.top header {
  opacity: 1;
  transition: opacity 1200ms cubic-bezier(0.445, 0.05, 0.55, 0.95) 1600ms;
  -webkit-transition: opacity 1200ms cubic-bezier(0.445, 0.05, 0.55, 0.95) 1600ms;
  -moz-transition: opacity 1200ms cubic-bezier(0.445, 0.05, 0.55, 0.95) 1600ms;
  -o-transition: opacity 1200ms cubic-bezier(0.445, 0.05, 0.55, 0.95) 1600ms;
  -ms-transition: opacity 1200ms cubic-bezier(0.445, 0.05, 0.55, 0.95) 1600ms;
}
body.load.top section.mv div#mv {
  opacity: 1;
  transition: opacity 1200ms cubic-bezier(0.445, 0.05, 0.55, 0.95) 1600ms;
  -webkit-transition: opacity 1200ms cubic-bezier(0.445, 0.05, 0.55, 0.95) 1600ms;
  -moz-transition: opacity 1200ms cubic-bezier(0.445, 0.05, 0.55, 0.95) 1600ms;
  -o-transition: opacity 1200ms cubic-bezier(0.445, 0.05, 0.55, 0.95) 1600ms;
  -ms-transition: opacity 1200ms cubic-bezier(0.445, 0.05, 0.55, 0.95) 1600ms;
}
body.load.top section.mv div.leadlogo {
  opacity: 1;
  transition: opacity 400ms cubic-bezier(0.445, 0.05, 0.55, 0.95) 0ms;
  -webkit-transition: opacity 400ms cubic-bezier(0.445, 0.05, 0.55, 0.95) 0ms;
  -moz-transition: opacity 400ms cubic-bezier(0.445, 0.05, 0.55, 0.95) 0ms;
  -o-transition: opacity 400ms cubic-bezier(0.445, 0.05, 0.55, 0.95) 0ms;
  -ms-transition: opacity 400ms cubic-bezier(0.445, 0.05, 0.55, 0.95) 0ms;
}

.loader {
  position: absolute;
  z-index: 0;
  color: #A9A791;
  font-size: 20px;
  margin: 100px auto;
  width: 1em;
  height: 1em;
  border-radius: 50%;
  text-indent: -9999em;
  -webkit-animation: load4 1.3s infinite linear;
  animation: load4 1.3s infinite linear;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
}

@-webkit-keyframes load4 {
  0%,
  100% {
    box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0;
  }
  12.5% {
    box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  25% {
    box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  37.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  50% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  62.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em;
  }
  75% {
    box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0;
  }
  87.5% {
    box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em;
  }
}
@keyframes load4 {
  0%,
  100% {
    box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0;
  }
  12.5% {
    box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  25% {
    box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  37.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  50% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  62.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em;
  }
  75% {
    box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0;
  }
  87.5% {
    box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em;
  }
}
.c-ttl__omh1 span {
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
  font-size: calc( 1.8rem + 2px);
  text-align: left;
  white-space: initial !important;
  line-height: 1.8;
  letter-spacing: 0.08em;
}
@media only screen and (max-width: 760px) {
  .c-ttl__omh1 span {
    font-size: 20px;
    line-height: 1.7;
    letter-spacing: 0.02em;
  }
}

.c-ttl__omh2 {
  text-align: left !important;
  border-bottom: 1px solid #dedede;
  padding-bottom: 0.5rem;
  margin-bottom: 1rem;
}
.c-ttl__omh2 span {
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
  font-size: calc( 1.5rem + 2px);
  font-weight: 700;
  white-space: initial !important;
  line-height: 1.8;
  letter-spacing: 0.08em;
}

.c-ttl__omh3 {
  text-align: left !important;
  border-left: 0.5rem solid #A9A791;
  padding-left: 1rem;
  margin-bottom: 1rem;
}
.c-ttl__omh3 span {
  font-size: calc( 1.2rem + 2px);
  text-align: left;
  font-weight: 700;
  white-space: initial !important;
  line-height: 1.8;
  letter-spacing: 0.08em;
}

.c-ttl__omft {
  text-align: left !important;
  font-family: "Yu Gothic", YuGothic, "Meiryo UI", Meiryo, メイリオ, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
  border-bottom: 1px solid #A9A791;
  margin-bottom: 1rem;
  font-size: calc( 1.1rem + 2px);
  font-weight: 700;
  color: #A9A791;
}

.c-text__om {
  font-size: calc( 1rem + 2px);
  padding: 1.8rem 0;
  line-height: 2.2;
  text-align: justify;
}
.c-text__om span {
  letter-spacing: 0.02em;
}
@media only screen and (max-width: 760px) {
  .c-text__om {
    padding: 1.8rem 0;
    font-size: calc( 1rem + 3px);
    font-size: 14px;
    line-height: 2;
  }
}
.c-text__om a {
  text-decoration: underline;
}
.c-text__om b {
  position: relative;
  font-weight: normal;
  color: #d27477;
  font-weight: 700;
  z-index: 1;
}

.c-text__om--index {
  font-size: calc( 1rem + 2px);
}
.c-text__om--index span {
  letter-spacing: 0.02em;
}
@media only screen and (max-width: 760px) {
  .c-text__om--index {
    padding: 1.8rem 0;
    font-size: calc( 1rem + 3px);
    font-size: 14px;
    line-height: 2;
  }
}

.c-tb, .c-tb--head, .c-tb__basic {
  display: table;
  width: 100%;
  box-sizing: border-box;
}
.c-tb > *, .c-tb--head > *, .c-tb__basic > * {
  display: table-cell;
  vertical-align: middle;
}
.c-tb > *.vat, .c-tb--head > *.vat, .c-tb__basic > *.vat {
  vertical-align: top;
}

.c-tb--head {
  background-color: #dedede;
}

.c-tb__basic {
  border-top: 1px solid #999999;
  padding: 1rem 0;
}
.c-tb__basic:last-child {
  border-bottom: 1px solid #999999;
}

@media only screen and (max-width: 760px) {
  .c-tb--reset--sp {
    display: block;
  }
  .c-tb--reset--sp > * {
    display: block;
    width: 100%;
  }
}

.l-row--center {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: center;
  -webkit-align-items: center;
}
.l-row--center > li + li {
  margin-left: calc( 1rem * 2 );
}
.l-row--start {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-end;
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  -webkit-align-items: flex-end;
}
.l-row--start > li + li {
  margin-left: calc( 1rem * 2 );
}
.l-row--r2 {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: stretch;
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  -webkit-align-items: stretch;
}
.l-row--r2 > li + li {
  margin-left: calc( 1rem * 2 );
}
.l-row--r2 > li {
  width: calc( ( 100% - calc( 1rem * 2 ) * ( 2 - 1 )) / 2 );
  margin-top: calc( 1rem * 2 );
}
.l-row--r2 > li:nth-child(1) {
  margin-top: 0;
}
.l-row--r2 > li:nth-child(2) {
  margin-top: 0;
}
.l-row--r2 > li:nth-child(2n + 1) {
  margin-left: 0;
}
.l-row--r3 {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: stretch;
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  -webkit-align-items: stretch;
}
.l-row--r3 > li + li {
  margin-left: calc( 1rem * 2 );
}
.l-row--r3 > li {
  width: calc( ( 100% - calc( 1rem * 2 ) * ( 3 - 1 )) / 3 );
  margin-top: calc( 1rem * 2 );
}
.l-row--r3 > li:nth-child(1) {
  margin-top: 0;
}
.l-row--r3 > li:nth-child(2) {
  margin-top: 0;
}
.l-row--r3 > li:nth-child(3) {
  margin-top: 0;
}
.l-row--r3 > li:nth-child(3n + 1) {
  margin-left: 0;
}
.l-row--r4 {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: stretch;
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  -webkit-align-items: stretch;
}
.l-row--r4 > li + li {
  margin-left: calc( 1rem * 2 );
}
.l-row--r4 > li {
  width: calc( ( 100% - calc( 1rem * 2 ) * ( 4 - 1 )) / 4 );
  margin-top: calc( 1rem * 2 );
}
.l-row--r4 > li:nth-child(1) {
  margin-top: 0;
}
.l-row--r4 > li:nth-child(2) {
  margin-top: 0;
}
.l-row--r4 > li:nth-child(3) {
  margin-top: 0;
}
.l-row--r4 > li:nth-child(4) {
  margin-top: 0;
}
.l-row--r4 > li:nth-child(4n + 1) {
  margin-left: 0;
}
.l-row--r5 {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: stretch;
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  -webkit-align-items: stretch;
}
.l-row--r5 > li + li {
  margin-left: calc( 1rem * 2 );
}
.l-row--r5 > li {
  width: calc( ( 100% - calc( 1rem * 2 ) * ( 5 - 1 )) / 5 );
  margin-top: calc( 1rem * 2 );
}
.l-row--r5 > li:nth-child(1) {
  margin-top: 0;
}
.l-row--r5 > li:nth-child(2) {
  margin-top: 0;
}
.l-row--r5 > li:nth-child(3) {
  margin-top: 0;
}
.l-row--r5 > li:nth-child(4) {
  margin-top: 0;
}
.l-row--r5 > li:nth-child(5) {
  margin-top: 0;
}
.l-row--r5 > li:nth-child(5n + 1) {
  margin-left: 0;
}
.l-row--r6 {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: stretch;
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  -webkit-align-items: stretch;
}
.l-row--r6 > li + li {
  margin-left: calc( 1rem * 2 );
}
.l-row--r6 > li {
  width: calc( ( 100% - calc( 1rem * 2 ) * ( 6 - 1 )) / 6 );
  margin-top: calc( 1rem * 2 );
}
.l-row--r6 > li:nth-child(1) {
  margin-top: 0;
}
.l-row--r6 > li:nth-child(2) {
  margin-top: 0;
}
.l-row--r6 > li:nth-child(3) {
  margin-top: 0;
}
.l-row--r6 > li:nth-child(4) {
  margin-top: 0;
}
.l-row--r6 > li:nth-child(5) {
  margin-top: 0;
}
.l-row--r6 > li:nth-child(6) {
  margin-top: 0;
}
.l-row--r6 > li:nth-child(6n + 1) {
  margin-left: 0;
}
.l-row--r7 {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: stretch;
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  -webkit-align-items: stretch;
}
.l-row--r7 > li + li {
  margin-left: calc( 1rem * 2 );
}
.l-row--r7 > li {
  width: calc( ( 100% - calc( 1rem * 2 ) * ( 7 - 1 )) / 7 );
  margin-top: calc( 1rem * 2 );
}
.l-row--r7 > li:nth-child(1) {
  margin-top: 0;
}
.l-row--r7 > li:nth-child(2) {
  margin-top: 0;
}
.l-row--r7 > li:nth-child(3) {
  margin-top: 0;
}
.l-row--r7 > li:nth-child(4) {
  margin-top: 0;
}
.l-row--r7 > li:nth-child(5) {
  margin-top: 0;
}
.l-row--r7 > li:nth-child(6) {
  margin-top: 0;
}
.l-row--r7 > li:nth-child(7) {
  margin-top: 0;
}
.l-row--r7 > li:nth-child(7n + 1) {
  margin-left: 0;
}
.l-row--r8 {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: stretch;
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  -webkit-align-items: stretch;
}
.l-row--r8 > li + li {
  margin-left: calc( 1rem * 2 );
}
.l-row--r8 > li {
  width: calc( ( 100% - calc( 1rem * 2 ) * ( 8 - 1 )) / 8 );
  margin-top: calc( 1rem * 2 );
}
.l-row--r8 > li:nth-child(1) {
  margin-top: 0;
}
.l-row--r8 > li:nth-child(2) {
  margin-top: 0;
}
.l-row--r8 > li:nth-child(3) {
  margin-top: 0;
}
.l-row--r8 > li:nth-child(4) {
  margin-top: 0;
}
.l-row--r8 > li:nth-child(5) {
  margin-top: 0;
}
.l-row--r8 > li:nth-child(6) {
  margin-top: 0;
}
.l-row--r8 > li:nth-child(7) {
  margin-top: 0;
}
.l-row--r8 > li:nth-child(8) {
  margin-top: 0;
}
.l-row--r8 > li:nth-child(8n + 1) {
  margin-left: 0;
}
.l-row--r9 {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: stretch;
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  -webkit-align-items: stretch;
}
.l-row--r9 > li + li {
  margin-left: calc( 1rem * 2 );
}
.l-row--r9 > li {
  width: calc( ( 100% - calc( 1rem * 2 ) * ( 9 - 1 )) / 9 );
  margin-top: calc( 1rem * 2 );
}
.l-row--r9 > li:nth-child(1) {
  margin-top: 0;
}
.l-row--r9 > li:nth-child(2) {
  margin-top: 0;
}
.l-row--r9 > li:nth-child(3) {
  margin-top: 0;
}
.l-row--r9 > li:nth-child(4) {
  margin-top: 0;
}
.l-row--r9 > li:nth-child(5) {
  margin-top: 0;
}
.l-row--r9 > li:nth-child(6) {
  margin-top: 0;
}
.l-row--r9 > li:nth-child(7) {
  margin-top: 0;
}
.l-row--r9 > li:nth-child(8) {
  margin-top: 0;
}
.l-row--r9 > li:nth-child(9) {
  margin-top: 0;
}
.l-row--r9 > li:nth-child(9n + 1) {
  margin-left: 0;
}
.l-row--r10 {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: stretch;
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  -webkit-align-items: stretch;
}
.l-row--r10 > li + li {
  margin-left: calc( 1rem * 2 );
}
.l-row--r10 > li {
  width: calc( ( 100% - calc( 1rem * 2 ) * ( 10 - 1 )) / 10 );
  margin-top: calc( 1rem * 2 );
}
.l-row--r10 > li:nth-child(1) {
  margin-top: 0;
}
.l-row--r10 > li:nth-child(2) {
  margin-top: 0;
}
.l-row--r10 > li:nth-child(3) {
  margin-top: 0;
}
.l-row--r10 > li:nth-child(4) {
  margin-top: 0;
}
.l-row--r10 > li:nth-child(5) {
  margin-top: 0;
}
.l-row--r10 > li:nth-child(6) {
  margin-top: 0;
}
.l-row--r10 > li:nth-child(7) {
  margin-top: 0;
}
.l-row--r10 > li:nth-child(8) {
  margin-top: 0;
}
.l-row--r10 > li:nth-child(9) {
  margin-top: 0;
}
.l-row--r10 > li:nth-child(10) {
  margin-top: 0;
}
.l-row--r10 > li:nth-child(10n + 1) {
  margin-left: 0;
}
@media only screen and (max-width: 760px) {
  .l-row--reset--sp {
    display: block;
  }
  .l-row--reset--sp > li {
    width: 100%;
  }
  .l-row--reset--sp > li + li {
    margin-left: 0 !important;
    margin-top: 2rem !important;
  }
}

.l-tb {
  display: table;
  width: 100%;
}
.l-tb > * {
  display: table-cell;
}

/*
 *  COMMON
 */
/*
 *  TOP
 */
/*
 *   ABOUT
 */
/*
 *   ABOUT
 */
/*
 *   CONTACT
 */
.p-article--index {
  border-radius: 1rem;
  overflow: hidden;
  border: 1px solid #dedede;
}
.p-article--index div.img:before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 66.66%;
}
.p-article--index div.txt {
  padding: 1rem;
}
.p-article--index div.txt .p-om__date {
  text-align: right;
}

/*
 *   OWNED MEDIA
 */
.p-om__date {
  color: #999999;
  font-size: calc( 1rem - 2px);
}
.p-om__secwrap {
  padding-top: 4rem !important;
  padding-bottom: 4rem !important;
  position: relative;
}
.p-om__secwrap--2 {
  padding-top: 4rem !important;
  padding-bottom: 4rem !important;
  position: relative;
}
@media only screen and (max-width: 760px) {
  .p-om__secwrap--2 {
    padding: 0 !important;
    padding-right: 0 !important;
  }
}
.p-om__pankuzu {
  z-index: 5;
}
.p-om__pankuzu a {
  display: inline-block;
  margin-right: 0.5rem;
  font-size: calc( 1rem - 3px);
}
.p-om__pankuzu a span {
  text-decoration: underline;
  color: #999999;
}
.p-om__pankuzu a:not(:last-child):after {
  content: ">";
  padding-left: 0.5rem;
  color: #999999;
  font-size: calc( 1rem - 3px);
}
@media only screen and (max-width: 760px) {
  .p-om__index__mvtxt {
    background-color: rgba(255, 255, 255, 0.7);
    padding: 3rem;
    width: 240px;
    position: absolute;
    position: absolute;
    top: 50%;
    left: 50% !important;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }
  .p-om__index__mvtxt h1 span {
    display: block;
    text-align: center !important;
    margin-left: auto;
    margin-right: auto;
  }
}
.p-om__article--mv {
  width: 100%;
  padding-bottom: 1rem;
  padding-left: 1rem;
  padding-right: 1rem;
  margin-left: auto;
  margin-right: auto;
  padding-top: 0;
  position: relative;
}
@media only screen and (max-width: 979px) {
  .p-om__article--mv {
    padding-bottom: 1rem !important;
  }
}
.p-om__article--mv div.img {
  height: 55vh !important;
  background-position: center center;
}
@media only screen and (max-width: 760px) {
  .p-om__article--mv div.img {
    height: 35vh !important;
  }
}
.p-om__article--wrap {
  background-color: #fff;
  border-radius: 1rem;
  padding: 5rem;
  position: relative;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 760px) {
  .p-om__article--wrap {
    padding: 2rem;
    padding-top: 5rem;
  }
}
.p-om__article--wrap--l {
  width: calc( 100% - 330px );
  padding: 3rem;
  position: relative;
  background-color: #fff;
}
.p-om__article--wrap--r {
  width: 354px;
  position: absolute;
  top: 4rem;
  right: 0;
  padding-left: 2rem;
}
.p-om__article__sidebox {
  background-color: #fff;
  padding: 2rem;
}
.p-om__article__sidebox__ttl {
  text-align: center;
  background-color: #A9A791;
  color: #fff;
  padding: 0.5rem;
}
.p-om__article__sidebox__ttl span {
  font-weight: 700;
}
.p-om__article__sidebox__ranking {
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.p-om__article__sidebox__ranking:not(:first-child) {
  border-top: 1px solid #dedede;
}
.p-om__article__sidebox__ranking > * {
  vertical-align: middle;
}
.p-om__article__sidebox__thumb {
  width: 90px;
  position: relative;
}
.p-om__article__sidebox__thumb::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 100%;
}
.p-om__article__sidebox__date {
  font-size: 0.8rem;
  color: #A9A791;
}
.p-om__article__sidebox__articlettl {
  padding-left: 1rem;
}
.p-om__article__sidebox__articlettl p {
  font-size: 0.9rem;
}
.p-om__article--head {
  margin-bottom: 3rem;
}
.p-om__article--head div.img {
  height: 55vh !important;
  background-position: center center;
  background-size: cover !important;
  background-repeat: no-repeat;
  border-radius: 1rem;
  overflow: hidden;
}
@media only screen and (max-width: 760px) {
  .p-om__article--head div.img {
    height: 35vh !important;
  }
}
.p-om__article--head--img {
  margin-top: 2rem;
}
.p-om__article--body {
  margin-bottom: 3rem;
}
.p-om__article--img {
  width: 100%;
  display: block;
  margin: 1rem auto;
  border-radius: 1rem;
}
.p-om__article--layout1--img {
  width: 40%;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover !important;
  border-radius: 0.5rem;
  overflow: hidden;
}
@media only screen and (max-width: 760px) {
  .p-om__article--layout1--img {
    width: 100%;
    margin-bottom: 1rem;
  }
}
.p-om__article--layout1--img:before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 100%;
}
.p-om__article--layout1--txt {
  padding-left: 2rem;
  vertical-align: middle;
}
@media only screen and (max-width: 760px) {
  .p-om__article--layout1--txt {
    padding-left: 0;
  }
}
.p-om__article--table {
  margin: 1rem auto;
  border: 1px solid #dedede;
  border-radius: 1rem;
  overflow: hidden;
}
.p-om__article--table dl:not(:last-child) {
  border-bottom: 1px solid #dedede;
}
.p-om__article--table dt,
.p-om__article--table dd {
  padding: 1rem 2rem;
}
.p-om__article--table dt {
  width: 35%;
  background: url("../img/common/bg2.png");
}
.p-om__article--table dd {
  border-left: 1px solid #dedede;
}
.p-om__article--tag {
  background-color: #f9f9f9;
  padding: 1rem 2rem;
  border-radius: 0.5rem;
}
.p-om__article--tag a {
  text-decoration: underline;
}
.p-om__article--footer {
  border-top: 1px solid #dedede;
  padding-top: 3rem;
}
.p-om__article__footerttl {
  margin-bottom: 3rem;
}
@media only screen and (max-width: 760px) {
  .p-om__article__footerlist + .p-om__article__footerlist {
    margin-top: 1rem !important;
  }
}
@media only screen and (max-width: 760px) {
  .p-om__article__footerlist {
    width: 100% !important;
    display: table;
  }
  .p-om__article__footerlist div.img {
    display: table-cell;
    width: 30%;
    vertical-align: middle;
    background-size: cover !important;
    padding-top: 0 !important;
  }
  .p-om__article__footerlist div.img:before {
    padding-top: 100%;
  }
  .p-om__article__footerlist div.txt {
    display: table-cell;
    padding: 0 1rem;
    padding-top: 0;
    vertical-align: middle;
    background-color: #fff;
  }
  .p-om__article__footerlist div.txt .tag {
    display: none;
  }
  .p-om__article__footerlist div.txt .p-om__date {
    display: none;
  }
}
.p-om__article__margin--s {
  margin: 1rem auto;
}
.p-om__article--box--l:not(:first-child) {
  margin-top: 5rem;
}
.p-om__article--box--m {
  margin-top: 3rem;
}
.p-om__article__footer_key {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  -webkit-align-items: center;
}
.p-om__article__footer_key > li {
  margin-bottom: 0.5rem;
  margin-right: 0.5rem;
}
.p-om__article__footer_key > li a {
  display: block;
  background-color: #D69B89;
  box-sizing: border-box;
  padding: 0.5rem 1rem;
}
.p-om__article__footer_key > li a span {
  color: #fff;
  font-weight: 700;
  font-size: calc( 1rem - 1px );
}
.p-om__article__footer_cate li {
  border-bottom: 1px solid #dedede;
  padding: 1.5rem 1rem;
}
.p-om__article__footer_cate li a {
  font-weight: 700;
  color: #A9A791;
}
.p-om__article__footer_rank {
  counter-increment: rank;
}
.p-om__article__footer_rank li {
  border-bottom: 1px solid #dedede;
  padding: 1.5rem 0rem;
}
.p-om__article__footer_rank li a {
  font-weight: 700;
  color: #A9A791;
  position: relative;
}
.p-om__article__footer_rank li a:before {
  content: counter(rank);
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(255, 255, 255, 0.8);
  padding: 6px;
  box-sizing: border-box;
  display: block;
}
.p-om__article__footer_rank li a div.img {
  width: 30%;
}
.p-om__article__footer_rank li a div.img:before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 100%;
}
.p-om__article__footer_rank li a div.txt {
  padding-left: 1rem;
}
.p-om__article__footer_rank li a div.txt .topicttl {
  font-size: calc( 1rem - 2px);
}

#template_nav {
  position: fixed;
  left: 0;
  bottom: 0;
  display: table;
  background-color: #fff;
  width: 100%;
  border-top: 1px solid #cccccc;
  height: 80px;
}
#template_nav div#fz span,
#template_nav div#lh span {
  line-height: 20px;
  display: inline-block;
  padding: 0 5px;
  letter-spacing: 0.1em;
  font-size: 11px;
}
#template_nav div#fz span.style,
#template_nav div#lh span.style {
  width: 100px;
}
#template_nav div#fz input,
#template_nav div#lh input {
  width: 50px;
  line-height: 20px;
  font-size: 14px;
  border: 1px solid #ccc;
  text-align: right;
  padding: 0 6px;
  outline: 0;
}
#template_nav #template_ctrl {
  display: table-cell;
  vertical-align: middle;
  padding-left: 20px;
  padding-right: 20px;
  width: 224px;
}
#template_nav #palette {
  display: table-cell;
  vertical-align: middle;
  border-left: 1px solid #cccccc;
  padding-left: 20px;
  padding-top: 6px;
}
#template_nav #palette .box {
  width: 30px;
  height: 30px;
  margin-right: 10px;
  display: inline-block;
  position: relative;
}
#template_nav #palette .box.active:after {
  opacity: 1;
}
#template_nav #palette .box:after {
  opacity: 0;
  width: 36px;
  height: 36px;
  border: 1px solid #cccccc;
  content: "";
  position: absolute;
  top: -3px;
  left: -3px;
  box-sizing: border-box;
}
#template_nav #palette .box.box_01 {
  background-color: #000000;
}
#template_nav #palette .box.box_02 {
  background-color: #000000;
}
#template_nav #palette .box.box_03 {
  background-color: #000000;
}
#template_nav #palette .box.box_04 {
  background-color: #000000;
}
#template_nav #palette .box.box_05 {
  background-color: #000000;
}
#template_nav #palette .box.box_06 {
  background-color: #000000;
}
#template_nav #palette .box.box_07 {
  background-color: #000000;
}
#template_nav #palette .box.box_08 {
  background-color: #000000;
}
#template_nav #palette .box.box_09 {
  background-color: #000000;
}
#template_nav #palette .box.box_10 {
  background-color: #000000;
}

div#template {
  padding-top: 100px;
  width: 50%;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 760px) {
  div#template {
    width: 80%;
  }
}
div#template ul li {
  margin-bottom: 60px;
}
div#template ul li p {
  display: block;
}