@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700,900&subset=japanese&display=swap");
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, section, article, aside, hgroup, header, footer, nav, dialog, figure, menu, video, audio, mark, time, canvas, details {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: transparent;
}

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

html {
  font-size: 62.5%;
}

body {
  line-height: 1;
  -webkit-text-size-adjust: 100%;
  -webkit-print-color-adjust: exact;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

:focus {
  outline-color: #C97B65;
}

ins {
  text-decoration: none;
}

del {
  text-decoration: line-through;
}

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

img {
  -webkit-backface-visibility: hidden;
  vertical-align: bottom;
}

b, strong, em {
  font-weight: inherit;
  font-style: inherit;
}

html {
  font-size: 10px;
}
@media screen and (max-width:374px) {
  html {
    font-size: 2.6666666667vw;
  }
}

body {
  width: 100%;
  color: #402205;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.4rem;
  font-weight: 400;
}
@media screen and (max-width:767px) {
  body.is-locked {
    position: fixed;
    width: 100%;
    height: 100%;
  }
}
@media screen and (max-width:767px) {
  body {
    min-width: 320px;
  }
}

*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  word-break: break-all;
}

a {
  text-decoration: none;
  color: inherit;
  -webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}
a img,
a i {
  -webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

img {
  width: 100%;
  vertical-align: bottom;
}

ifrrame {
  vertical-align: bottom;
}

.hover-alpha a:hover img {
  opacity: 0.7;
}

::-webkit-input-placeholder {
  color: #ccc;
  padding-top: 0.2em;
}

:-moz-placeholder {
  color: #ccc;
  opacity: 1;
}

::-moz-placeholder {
  color: #ccc;
  opacity: 1;
}

:-ms-input-placeholder {
  color: #ccc;
}

select,
textarea,
input[type=text],
input[type=email],
input[type=number],
input[type=tel],
button {
  -webkit-appearance: none;
  -moz-appearance: none;
  padding: 0;
  line-height: 1;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 0;
  border: none;
  background: none;
  font-size: 1.6rem;
  font-family: "Noto Sans JP", sans-serif;
}

input[type=number] {
  -moz-appearance: textfield;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input[type=text],
input[type=email],
input[type=tel] {
  width: 100%;
  border: 1px solid #95785A;
  background: #fff;
  padding: 0 15px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 44px;
  line-height: 44px;
  font-size: 1.6rem;
}

select {
  cursor: pointer;
  width: 100%;
  padding: 0 40px 0 15px;
  border: 1px solid #95785A;
  background: #fff;
  height: 44px;
  font-size: 1.6rem;
}

select::-ms-expand {
  display: none;
}

textarea {
  resize: none;
  width: 100%;
  line-height: 1.5;
  border: 1px solid #95785A;
  background: #fff;
  font-size: 1.6rem;
  padding: 15px;
  font: inherit;
}

input[type=button],
input[type=submit] {
  -webkit-appearance: none;
  -moz-appearance: none;
  border: none;
  line-height: 1;
  cursor: pointer;
}

button {
  cursor: pointer;
}

@media screen and (max-width:767px) {
  select,
  textarea,
  input[type=text],
  input[type=email],
  input[type=number],
  input[type=tel] {
    font-size: 1.6rem;
  }
}
.l-inner {
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
  max-width: 1240px;
}

@media print, screen and (min-width:768px) {
  .l-container {
    padding: 100px 0;
  }
}
@media screen and (max-width:767px) {
  .l-container {
    padding: 50px 0;
  }
}
@media print, screen and (min-width:768px) {
  .l-container:last-child {
    padding-bottom: 150px;
  }
}
@media screen and (max-width:767px) {
  .l-container:last-child {
    padding-bottom: 80px;
  }
}
.l-container.l-container--gray {
  background: #eee;
}

.l-page {
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  min-height: 100vh;
  margin: 0 auto;
  position: relative;
}

.l-header {
  background: rgb(150, 121, 81);
  background: -webkit-gradient(linear, left top, right top, from(rgb(150, 121, 81)), color-stop(50%, rgb(235, 224, 211)), to(rgb(150, 121, 81)));
  background: linear-gradient(90deg, rgb(150, 121, 81) 0%, rgb(235, 224, 211) 50%, rgb(150, 121, 81) 100%);
  text-align: center;
  position: relative;
  z-index: 999;
  border-bottom: 2px solid #402205;
}
.l-header img {
  max-width: 278px;
}
.l-header a {
  padding: 1rem 4.1rem 0.8rem 4.1rem;
  display: block;
}

.l-footer {
  padding-top: 4.3rem;
  text-align: center;
  background-color: #fff;
}
.l-footer-inner {
  padding: 0 35px;
  max-width: 1270px;
  margin: 0 auto;
}
.l-footer img {
  width: auto;
  max-width: 100%;
}
.l-footer-ttl {
  text-align: center;
  position: relative;
  margin: 0 auto 2.2rem auto;
}
.l-footer-ttl div {
  display: inline-block;
  position: relative;
  padding: 0 24px;
}
.l-footer-ttl div::after, .l-footer-ttl div::before {
  position: absolute;
  top: 0;
  bottom: 0;
  content: "";
  background-repeat: no-repeat;
  background-position: bottom;
  width: 14px;
}
.l-footer-ttl div:before {
  right: 100%;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20.667' height='23.716' viewBox='0 0 20.667 23.716'%3E%3Cg id='Group_1258' data-name='Group 1258' transform='translate(0.2 0.127)'%3E%3Cpath id='Path_1675' data-name='Path 1675' d='M5-.438,18.844,23' transform='translate(1.408 0.438)' fill='none' stroke='%23402205' stroke-width='0.5'/%3E%3Cline id='Line_50' data-name='Line 50' x2='14.293' y2='19' transform='translate(0 4.438)' fill='none' stroke='%23402205' stroke-width='0.5'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.l-footer-ttl div:after {
  left: 100%;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20.667' height='23.716' viewBox='0 0 20.667 23.716'%3E%3Cg id='Group_1074' data-name='Group 1074' transform='translate(-4.785 0.566)'%3E%3Cpath id='Path_1675' data-name='Path 1675' d='M18.844-.438,5,23' fill='none' stroke='%23402205' stroke-width='0.5'/%3E%3Cline id='Line_50' data-name='Line 50' x1='14.293' y2='19' transform='translate(10.959 4)' fill='none' stroke='%23402205' stroke-width='0.5'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.l-footer-ttl img {
  max-width: 100px;
}
.l-footer-ttl b {
  display: block;
  text-align: center;
  font-weight: bold;
  font-style: italic;
  color: #95785A;
  font-family: "Times New Roman";
  font-size: 1.5rem;
}
.l-footer-ttl span {
  display: block;
  text-align: center;
  font-size: 1.7rem;
  font-weight: 500;
  margin-top: 5px;
  letter-spacing: 0.075em;
}
.l-footer-logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 0px 4.7rem 0;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-right: 6px;
}
.l-footer-logo__item {
  position: relative;
  width: 46%;
}
.l-footer-logo__item:first-child a {
  padding: 24px;
}
.l-footer-logo__item:after {
  position: absolute;
  content: "";
  top: 4px;
  right: -4px;
  bottom: -4px;
  left: 4px;
  border: 1px solid #95785A;
  background: -webkit-gradient(linear, left top, right top, from(rgba(150, 121, 81, 0.2)), color-stop(90%, #ebe0d3), to(rgba(150, 121, 81, 0.2)));
  background: linear-gradient(90deg, rgba(150, 121, 81, 0.2) 0%, #ebe0d3 90%, rgba(150, 121, 81, 0.2) 100%);
  z-index: 1;
}
.l-footer-logo__item::before {
  position: absolute;
  content: "";
  background-color: #fff;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  border: 1px solid #A77C41;
}
.l-footer-logo__item img {
  position: relative;
  z-index: 3;
  max-height: 50px;
}
.l-footer-logo__item a, .l-footer-logo__item div {
  display: block;
  position: relative;
  padding: 10px;
  height: 84px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  z-index: 5;
}
.l-footer-logo__item a:after, .l-footer-logo__item div:after {
  position: absolute;
  top: -4px;
  left: 15px;
  width: 6px;
  height: 10px;
  background-color: #fff;
  content: "";
  z-index: 3;
}
.l-footer-note {
  font-size: 1.2rem;
  font-weight: normal;
  letter-spacing: 0.075em;
  line-height: 1.3333333333;
}
.l-footer-copyright {
  text-align: center;
  background-color: #000000;
  padding: 2rem;
  margin-top: 22px;
}
.l-footer-copyright img {
  max-width: 91px;
}
.l-footer-link {
  max-width: 750px;
  margin: -5px auto 4.2rem;
}

.l-main {
  display: block;
  font-size: 1.4rem;
  line-height: 1.5;
  background-image: url(../images/bg_content.png);
  background-position: 0 37px;
  background-repeat: no-repeat;
  background-size: cover;
  background-color: #fff;
  z-index: 99;
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.ttl-modal {
  font-size: 1.3rem;
  letter-spacing: 0.05em;
  font-weight: bold;
  line-height: 1.4285714286;
}
.ttl-modal span {
  position: relative;
  width: 21px;
  height: 21px;
  display: inline-block;
  vertical-align: middle;
  margin-right: 6px;
  position: relative;
  top: -1px;
}
.ttl-modal span svg {
  fill: #95785A;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
}

.index {
  text-align: center;
  color: #402205;
  max-width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9997;
  background: rgb(240, 235, 233);
  overflow: auto;
  height: 100%;
  padding: 20px 0;
}
.index > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 600px;
}
.index__inner {
  max-width: 680px;
  width: 680px;
}
.index > * {
  position: relative;
  z-index: 2;
}
.index:after {
  content: "";
  position: fixed;
  opacity: 0.35;
  background: rgb(240, 235, 233);
  background: -webkit-gradient(linear, left top, left bottom, from(rgb(255, 255, 255)), to(rgb(209, 193, 178)));
  background: linear-gradient(180deg, rgb(255, 255, 255) 0%, rgb(209, 193, 178) 100%);
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.index img {
  max-width: 100%;
  width: auto;
}
.index__logo h2 {
  font-size: 2.6rem;
  font-weight: 900;
  letter-spacing: 0.1em;
  line-height: 1.4615384615;
  padding-bottom: 1.2em;
  margin-bottom: 1.7em;
  padding-top: 1.4rem;
  background-image: url(../images/line.png);
  background-position: center bottom;
  background-repeat: no-repeat;
}
.index__logo h3 {
  font-size: 1.8rem;
  font-weight: normal;
  letter-spacing: 0.075em;
  line-height: 1.3333333333;
}
.index__content {
  padding: 3.8rem 2rem 0rem 2rem;
}
.index__content p {
  font-size: 1.5rem;
  font-weight: normal;
  letter-spacing: 0.075em;
  line-height: 1.6;
  margin-top: 2.5em;
}
@media screen and (max-width: 1600px) {
  .index__content p {
    margin-top: 0.5em;
  }
}
.index__content .btn-back {
  width: 108px;
  height: 38px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 auto;
  position: relative;
  font-size: 1.4rem;
  font-weight: 700;
  font-weight: bold;
  border-radius: 30px;
  color: #fff;
  background: -webkit-gradient(linear, left top, left bottom, from(#D0B99A), to(#967951));
  background: linear-gradient(180deg, #D0B99A 0%, #967951 100%);
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}
.index__content .btn-back span {
  position: relative;
  padding: 0 3px;
}
.index__content .btn-back .ico {
  position: relative;
  width: 11px;
  height: 11px;
  display: inline-block;
  vertical-align: middle;
  top: 2px;
  margin-right: 5px;
}
.index__content .btn-back .ico svg {
  width: 100%;
  height: 100%;
  right: 0;
  position: absolute;
  stroke: #fff;
}

.is-view-sp .index {
  display: none;
}

.is-view-tab .index {
  display: none;
}

.loading {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999;
  background: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #fff;
  font-size: 1.3rem;
  opacity: 1;
  -webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.loading img {
  max-width: 120px;
}
.loading h3 {
  font-size: 2.8rem;
  font-family: "Times New Roman";
  text-align: center;
  font-weight: normal;
  color: #402205;
}
.loading.is-loaded {
  opacity: 0;
  z-index: -1;
}

.p-loading {
  background: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #fff;
  font-size: 1.3rem;
  opacity: 1;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 100;
  -webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.p-loading img {
  max-width: 120px;
}
.p-loading h3 {
  font-size: 2.8rem;
  font-family: "Times New Roman";
  text-align: center;
  font-weight: normal;
  color: #402205;
}
.p-loading.is-loaded {
  opacity: 0;
  z-index: -1;
}

body {
  overflow: hidden;
}
body.is-loaded {
  overflow: auto;
}
body.is-loaded.is-view-pc {
  overflow: hidden;
}

.u-clr:after {
  content: "";
  display: block;
  clear: both;
  height: 0;
}

@media screen and (max-width:374px) {
  .u-xs-min {
    display: none !important;
  }
}

@media print, screen and (min-width:375px) {
  .u-xs-max {
    display: none !important;
  }
}

@media screen and (max-width:767px) {
  .u-sm-min {
    display: none !important;
  }
}

@media print, screen and (min-width:768px) {
  .u-sm-max {
    display: none !important;
  }
}

@media screen and (max-width:1024px) {
  .u-md-min {
    display: none !important;
  }
}

@media print, screen and (min-width:1025px) {
  .u-md-max {
    display: none !important;
  }
}

@media screen and (max-width:1239px) {
  .u-lg-min {
    display: none !important;
  }
}

@media print, screen and (min-width:1240px) {
  .u-lg-max {
    display: none !important;
  }
}

.u-ff-jp {
  font-family: "Noto Sans JP", sans-serif;
}

.u-ff-en {
  font-family: "Times New Roman";
}

.u-fz-20 {
  font-size: 2rem !important;
}

.u-fz-19 {
  font-size: 1.9rem !important;
}

.u-fz-18 {
  font-size: 1.8rem !important;
}

.u-fz-17 {
  font-size: 1.7rem !important;
}

.u-fz-16 {
  font-size: 1.6rem !important;
}

.u-fz-15 {
  font-size: 1.5rem !important;
}

.u-fz-14 {
  font-size: 1.4rem !important;
}

.u-fz-13 {
  font-size: 1.3rem !important;
}

.u-fz-12 {
  font-size: 1.2rem !important;
}

.u-fz-11 {
  font-size: 1.1rem !important;
}

.u-fz-10 {
  font-size: 1rem !important;
}

.u-fw-400 {
  font-weight: 400 !important;
}

.u-fw-700 {
  font-weight: 700 !important;
}

.u-td-ul {
  text-decoration: underline !important;
}

.u-td-none {
  text-decoration: none !important;
}

.u-ta-l {
  text-align: left !important;
}

.u-ta-r {
  text-align: right !important;
}

.u-ta-c {
  text-align: center !important;
}

.u-va-t {
  vertical-align: top !important;
}

.u-va-m {
  vertical-align: middle !important;
}

.u-va-b {
  vertical-align: bottom !important;
}

.u-c-main {
  color: #000 !important;
}

.u-c-plain {
  color: #402205 !important;
}

.u-c-white {
  color: #fff !important;
}

.u-bg-alpha {
  background-color: transparent !important;
}

.u-bg-main {
  background-color: #000 !important;
}

.u-bg-plain {
  background-color: #402205 !important;
}

.u-bg-focus {
  background-color: #C97B65 !important;
}

.u-bg-border {
  background-color: #95785A !important;
}

.u-bg-white {
  background-color: #fff !important;
}

.u-bg-gray01 {
  background-color: #eee !important;
}

.u-bg-gray02 {
  background-color: #ccc !important;
}

.u-bd {
  border: 1px solid #95785A !important;
}

.u-bd-t {
  border-top: 1px solid #95785A !important;
}

.u-bd-l {
  border-left: 1px solid #95785A !important;
}

.u-bd-b {
  border-bottom: 1px solid #95785A !important;
}

.u-bd-r {
  border-right: 1px solid #95785A !important;
}

.u-bd-main {
  border-color: #000 !important;
}

.u-bd-white {
  border-color: #fff !important;
}

.u-w-100 {
  width: 100% !important;
}

.u-w-90 {
  width: 90% !important;
}

.u-w-80 {
  width: 80% !important;
}

.u-w-70 {
  width: 70% !important;
}

.u-w-60 {
  width: 60% !important;
}

.u-w-50 {
  width: 50% !important;
}

.u-w-40 {
  width: 40% !important;
}

.u-w-30 {
  width: 30% !important;
}

.u-w-20 {
  width: 20% !important;
}

.u-w-10 {
  width: 10% !important;
}

.u-m-0 {
  margin: 0 !important;
}

.u-m-auto {
  margin: auto !important;
}

.u-mx-auto {
  margin-left: auto !important;
  margin-right: auto !important;
}

.u-my-auto {
  margin-top: auto !important;
  margin-bottom: auto !important;
}

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

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

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

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

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

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

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

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

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

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

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

.u-mt-xs {
  margin-top: 20px !important;
}
@media screen and (max-width:767px) {
  .u-mt-xs {
    margin-top: 10px !important;
  }
}

.u-mt-sm {
  margin-top: 40px !important;
}
@media screen and (max-width:767px) {
  .u-mt-sm {
    margin-top: 20px !important;
  }
}

.u-mt-md {
  margin-top: 60px !important;
}
@media screen and (max-width:767px) {
  .u-mt-md {
    margin-top: 30px !important;
  }
}

.u-mt-lg {
  margin-top: 80px !important;
}
@media screen and (max-width:767px) {
  .u-mt-lg {
    margin-top: 40px !important;
  }
}

.u-mt-xl {
  margin-top: 100px !important;
}
@media screen and (max-width:767px) {
  .u-mt-xl {
    margin-top: 50px !important;
  }
}

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

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

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

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

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

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

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

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

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

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

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

.u-mb-xs {
  margin-bottom: 20px !important;
}
@media screen and (max-width:767px) {
  .u-mb-xs {
    margin-bottom: 10px !important;
  }
}

.u-mb-sm {
  margin-bottom: 40px !important;
}
@media screen and (max-width:767px) {
  .u-mb-sm {
    margin-bottom: 20px !important;
  }
}

.u-mb-md {
  margin-bottom: 60px !important;
}
@media screen and (max-width:767px) {
  .u-mb-md {
    margin-bottom: 30px !important;
  }
}

.u-mb-lg {
  margin-bottom: 80px !important;
}
@media screen and (max-width:767px) {
  .u-mb-lg {
    margin-bottom: 40px !important;
  }
}

.u-mb-xl {
  margin-bottom: 100px !important;
}
@media screen and (max-width:767px) {
  .u-mb-xl {
    margin-bottom: 50px !important;
  }
}

.u-p-0 {
  padding: 0 !important;
}

.u-p-5 {
  padding: 5px !important;
}

.u-p-10 {
  padding: 10px !important;
}

.u-p-15 {
  padding: 15px !important;
}

.u-p-20 {
  padding: 20px !important;
}

.u-p-25 {
  padding: 25px !important;
}

.u-p-30 {
  padding: 30px !important;
}

.u-p-35 {
  padding: 35px !important;
}

.u-p-40 {
  padding: 40px !important;
}

.u-p-45 {
  padding: 45px !important;
}

.u-p-50 {
  padding: 50px !important;
}

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

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

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

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

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

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

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

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

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

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

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

.u-pt-xs {
  padding-top: 20px !important;
}
@media screen and (max-width:767px) {
  .u-pt-xs {
    padding-top: 10px !important;
  }
}

.u-pt-sm {
  padding-top: 40px !important;
}
@media screen and (max-width:767px) {
  .u-pt-sm {
    padding-top: 20px !important;
  }
}

.u-pt-md {
  padding-top: 60px !important;
}
@media screen and (max-width:767px) {
  .u-pt-md {
    padding-top: 30px !important;
  }
}

.u-pt-lg {
  padding-top: 80px !important;
}
@media screen and (max-width:767px) {
  .u-pt-lg {
    padding-top: 40px !important;
  }
}

.u-pt-xl {
  padding-top: 100px !important;
}
@media screen and (max-width:767px) {
  .u-pt-xl {
    padding-top: 50px !important;
  }
}

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

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

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

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

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

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

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

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

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

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

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

.u-pb-xs {
  padding-bottom: 20px !important;
}
@media screen and (max-width:767px) {
  .u-pb-xs {
    padding-bottom: 10px !important;
  }
}

.u-pb-sm {
  padding-bottom: 40px !important;
}
@media screen and (max-width:767px) {
  .u-pb-sm {
    padding-bottom: 20px !important;
  }
}

.u-pb-md {
  padding-bottom: 60px !important;
}
@media screen and (max-width:767px) {
  .u-pb-md {
    padding-bottom: 30px !important;
  }
}

.u-pb-lg {
  padding-bottom: 80px !important;
}
@media screen and (max-width:767px) {
  .u-pb-lg {
    padding-bottom: 40px !important;
  }
}

.u-pb-xl {
  padding-bottom: 100px !important;
}
@media screen and (max-width:767px) {
  .u-pb-xl {
    padding-bottom: 50px !important;
  }
}

.p-modal {
  position: fixed;
  left: 0px;
  top: 0px;
  opacity: 0;
  width: 100%;
  z-index: -1;
  overflow: auto;
  outline: 0;
  background-color: #EAE0D9;
  bottom: 0;
  right: 0;
  visibility: hidden;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.p-modal.active {
  opacity: 1;
  z-index: 9999;
  visibility: visible;
}
.p-modal .p-modal-dialog {
  height: 100%;
  display: table;
  table-layout: fixed;
  width: 100%;
  padding-top: 90px;
  padding-bottom: 90px;
  padding-left: 18px;
  padding-right: 18px;
}
.p-modal .p-modal-dialog .modal-close {
  position: fixed;
  bottom: 0;
  background: #402205;
  z-index: 999;
  width: 108px;
  height: 38px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.4rem;
  line-height: 1.5714285714;
  letter-spacing: 0.075em;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 30px;
  margin: 0 auto;
  left: 0;
  right: 0;
  bottom: 30px;
  color: #fff;
}
.p-modal .p-modal-dialog .modal-close i {
  display: block;
  position: relative;
  width: 11px;
  height: 11px;
  left: -5px;
}
.p-modal .p-modal-dialog .modal-close i svg {
  stroke: #fff;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
}
.p-modal .p-modal-dialog .ttl-modal {
  font-size: 1.7rem;
}
.p-modal .p-modal-dialog .ttl-modal span svg {
  fill: #402205;
}
.p-modal .p-modal-content {
  display: table-cell;
  vertical-align: middle;
  position: relative;
}
.p-modal .p-modal-content .ttl-modal {
  margin-top: 4px;
  margin-bottom: 7px;
  text-align: center;
  position: relative;
}
.p-modal .p-modal-body {
  max-width: 750px;
  padding: 35px;
  background-color: #fff;
  margin: 0 auto;
  position: relative;
}

body.freezePage {
  height: 100%;
  overflow: hidden;
  -webkit-overflow-scrolling: touch;
  touch-action: none;
  -ms-touch-action: none;
  position: fixed;
  width: 100%;
  height: auto;
}

.p-modal-point .ttl-modal {
  font-size: 1.7rem;
  margin-bottom: 26px;
}
.p-modal-point .ttl-modal span {
  width: 13px;
  height: 20px;
}

.modal-color.p-modal {
  background-color: rgba(83, 83, 83, 0.6);
}
.modal-color.p-modal .p-modal-body {
  padding: 0 0 30px 0;
  border-radius: 10px;
  width: 83%;
}
.modal-color.p-modal .p-modal-body .modal-close {
  position: absolute;
  left: inherit;
  top: -19px;
  right: -18px;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: -webkit-gradient(linear, left top, right top, from(#ea957c), to(#cc6b4f));
  background: linear-gradient(90deg, #ea957c 0%, #cc6b4f 100%);
}
.modal-color.p-modal .p-modal-body .modal-close .ico {
  width: 14px;
  height: 14px;
  left: inherit;
}
.modal-color.p-modal .p-modal-body .shooting__color__item:after {
  display: none;
}
.modal-color.p-modal .p-modal-body .shooting__color__item span {
  width: 34px;
  height: 34px;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}
.modal-color__ttl {
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(208, 185, 154, 0.4)), to(rgba(208, 185, 154, 0.4)));
  background: linear-gradient(0deg, rgba(208, 185, 154, 0.4) 0%, rgba(208, 185, 154, 0.4) 100%);
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  padding: 12px 20px 7px 20px;
  position: relative;
  border-bottom: 1px dashed #402205;
}
.modal-color__ttl .shooting__color__text {
  display: block;
}
.modal-color__ttl .is-color[data-color=ashblack] {
  background-color: #676565;
}
.modal-color__ttl .is-color[data-color=black], .modal-color__ttl .is-color[data-color=darkbrown] {
  background-color: #58391B;
}
.modal-color__ttl .is-color[data-color=brown], .modal-color__ttl .is-color[data-color=naturalbrown] {
  background-color: #9F6F3F;
}
.modal-color__inner {
  padding: 52px 17px 20px 17px;
}
.modal-color__inner .shooting__color__text {
  font-size: 1.3rem;
  display: block;
}
.modal-color__btn {
  max-width: 180px;
  margin: 0px auto;
}

.modal-image.p-modal {
  background-color: rgba(83, 83, 83, 0.6);
}
.modal-image.p-modal .p-modal-body {
  padding: 0;
  border-radius: 10px;
  width: 83%;
}
.modal-image.p-modal .modal-close {
  position: absolute;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  border: 1px solid #fff;
  bottom: -60px;
  background: none;
}
.modal-image.p-modal .modal-close .ico {
  width: 14px;
  height: 14px;
  left: inherit;
}

.p-step .c-btn-02 {
  font-size: 1.1rem;
  height: 37px;
  width: 176px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin-top: 11px;
  margin-left: 4px;
  margin-right: 11px;
  margin-bottom: 4px;
  vertical-align: bottom;
}
.p-step .c-btn-04 {
  font-size: 1.1rem;
  height: 37px;
  width: 176px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin-top: 15px;
  margin-left: 6px;
  margin-right: 11px;
  margin-bottom: 4px;
  vertical-align: bottom;
}
.p-step .c-btn-04 b {
  position: relative;
}
.p-step .c-btn-04 b::before {
  display: inline-block;
  margin-right: 10px;
  content: "";
  width: 13px;
  height: 13px;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20.731' height='20.311' viewBox='0 0 20.731 20.311'%3E%3Cg id='Group_1226' data-name='Group 1226' transform='translate(-3432.226 2844.457)'%3E%3Cpath id='Path_1676' data-name='Path 1676' d='M0,0,5.6,5.6,0,11.2' transform='translate(3439.949 -2832.193) rotate(180)' fill='none' stroke='%23fff' stroke-width='3'/%3E%3Cpath id='Path_1677' data-name='Path 1677' d='M-3.309.361h10.5A6.167,6.167,0,0,1,13.551,6.31a6.167,6.167,0,0,1-6.364,5.949H-1.442' transform='translate(3437.656 -2838.156)' fill='none' stroke='%23fff' stroke-miterlimit='10' stroke-width='3.5'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.p-step p {
  font-size: 1.3rem;
  line-height: 1.6923076923;
  letter-spacing: 0.05em;
}
.p-step p .icon02 {
  width: 57px;
  display: inline-block;
  margin-top: -4px;
  margin-left: -2px;
}
.p-step__item {
  position: relative;
  padding-bottom: 3.2rem;
  margin-bottom: 2.1rem;
}
.p-step__item::after {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  content: "";
  width: 12px;
  height: 10px;
  margin: 0 auto;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='10' viewBox='0 0 12 10'%3E%3Cg id='arw' transform='translate(12 10) rotate(180)' fill='none'%3E%3Cpath d='M6,0l6,10H0Z' stroke='none'/%3E%3Cpath d='M 6 1.943650245666504 L 1.766189575195312 9 L 10.23381042480469 9 L 6 1.943650245666504 M 6 0 L 12 10 L 0 10 L 6 0 Z' stroke='none' fill='%23c97b65'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.p-step__item--noicon {
  border-bottom: 1px dotted #C9C9C9;
}
.p-step__item--noicon:after {
  display: none;
}
.p-step__last {
  padding-top: 16px;
}
.p-step__ttl {
  text-align: center;
  overflow: hidden;
}
.p-step__ttl span {
  display: inline-block;
  font-size: 1.4rem;
  line-height: 1.5714285714;
  font-weight: bold;
  color: #C97B65;
  text-transform: uppercase;
  font-family: "Times New Roman";
  position: relative;
  padding: 0 10px;
  letter-spacing: 0.075em;
  margin: 0 0 12px 0;
}
.p-step__ttl span:after, .p-step__ttl span:before {
  position: absolute;
  top: 50%;
  content: "";
  background-color: #C97B65;
  height: 1px;
  width: 500px;
}
.p-step__ttl span:after {
  left: 100%;
}
.p-step__ttl span::before {
  right: 100%;
}
.p-step__ttl--other span {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: bold;
  font-size: 2rem;
}
.p-step__inner h3 {
  text-align: center;
  color: #C97B65;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.1;
  letter-spacing: 0.05em;
  margin: 0 0 20px 0;
}
.p-step__inner ul {
  font-weight: bold;
  font-size: 1.3rem;
  line-height: 1.6923076923;
  letter-spacing: 0.075em;
  margin: 2.2rem 0 0 0;
}
.p-step__inner .dflex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 26px;
  margin-bottom: -7px;
}
.p-step__inner .dflex p {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.p-step__inner .dflex .icon {
  width: 83px;
  margin-right: -13px;
  margin-top: -14px;
  margin-left: 18px;
}
.p-step__img {
  margin-top: 2rem;
}
.p-step-grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-left: -19px;
  margin-right: -9px;
  margin-bottom: -35px;
  margin-top: 25px;
}
.p-step-grid__item {
  width: 50%;
  max-width: 50%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
          flex: 0 0 50%;
  padding: 0 10px;
  margin: 0 0 35px 0;
}
.p-step-grid__item p {
  font-weight: bold;
  font-size: 1.2rem;
  line-height: 1.6666666667;
  letter-spacing: 0.05em;
  margin: 9px 0 3px 10px;
}

.product-item a, .product-item__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  position: relative;
}
.product-item a {
  border: 2px solid #95785A;
  background-color: #fff;
  position: relative;
  z-index: 2;
  background: none;
  padding: 10px 8px 5px 5px;
}
.product-item__img {
  width: 88px;
  max-width: 88px;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 88px;
          flex: 0 0 88px;
  text-align: center;
  position: relative;
}
.product-item__img:before {
  position: absolute;
  display: block;
  content: "";
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: url(../images/bg.png);
  background-position: center;
  background-repeat: repeat;
  background-size: contain;
}
.product-item__img img {
  max-width: 100%;
  position: relative;
  z-index: 9;
  width: auto;
}
.product-item__info {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding-left: 3px;
}
.product-item__info h3 {
  font-size: 1.7rem;
  font-weight: bold;
  line-height: 1.4705882353;
  letter-spacing: 0.05em;
  margin-top: -10px;
}

.c-btn-outline {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: 1px solid #95785A;
  height: 70px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
}
.c-btn-outline:after {
  position: absolute;
  display: block;
  content: "";
  top: 6px;
  right: -6px;
  left: 6px;
  bottom: -6px;
  background: -webkit-gradient(linear, left top, left bottom, from(#D0B99A), to(#967951));
  background: linear-gradient(180deg, #D0B99A 0%, #967951 100%);
  opacity: 0.2;
}
.c-btn-outline span {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.4666666667;
  letter-spacing: 0.1em;
}
.c-btn-outline .ico {
  position: absolute;
  right: 13px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 11px;
  height: 14px;
}
.c-btn-outline .ico svg {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  stroke: #95785A;
}

.c-btn-01 {
  height: 39px;
  background-color: #fff;
  font-size: 1.5rem;
  line-height: 1.8333333333;
  letter-spacing: 0.05em;
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
  border: 2px solid #CBBBAA;
  border-radius: 30px;
}

.c-btn-02 {
  height: 55px;
  color: #fff;
  font-size: 1.7rem;
  line-height: 1.4705882353;
  letter-spacing: 0.05em;
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
  border-radius: 30px;
  background: -webkit-gradient(linear, left top, left bottom, from(#EA957C), to(#CC6B4F));
  background: linear-gradient(180deg, #EA957C 0%, #CC6B4F 100%);
  position: relative;
}
.c-btn-02 .ico {
  position: absolute;
  right: 13px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 11px;
  height: 14px;
}
.c-btn-02 .ico svg {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  stroke: #fff;
}
.c-btn-02--gray {
  background-color: #C9C9C9;
}

.c-btn-04 {
  height: 55px;
  color: #fff;
  font-size: 1.7rem;
  line-height: 1.4705882353;
  letter-spacing: 0.05em;
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
  border-radius: 30px;
  background: -webkit-gradient(linear, left top, left bottom, from(#D0B99A), to(#967951));
  background: linear-gradient(180deg, #D0B99A 0%, #967951 100%);
}

.c-btn-03 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 42px;
  width: 146px;
  color: #fff;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  background-color: #C97B65;
  border-radius: 30px;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}
.c-btn-03 span {
  font-size: 1.7rem;
  font-weight: bold;
  line-height: 1.4705882353;
  letter-spacing: 0.1em;
}
.c-btn-03 .ico {
  position: absolute;
  right: 13px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 11px;
  height: 14px;
}
.c-btn-03 .ico svg {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  stroke: #fff;
}

.download .box-android {
  display: block;
}
.download .box-ios {
  display: none;
}

.iosdevice .download .box-android {
  height: 0;
  opacity: 0;
  z-index: -1;
  position: relative;
}
.iosdevice .download .box-ios {
  display: block !important;
}
.iosdevice .download .btn-content-ios {
  display: none;
}

.note {
  font-size: 1.2rem;
  text-align: center;
}