@charset "UTF-8";
/*----------------------------------------------------------------------------------------------------------
writing-mode mixin
    Usage:
        $orientation    v (vertical)
                        h (horizontal)
		$direction      rl (right to left)
						lr (left to right)
----------------------------------------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------------------------------------
writing-mode mixin
    Usage:
        $orientation    v (vertical)
                        h (horizontal)
		$direction      rl (right to left)
						lr (left to right)
----------------------------------------------------------------------------------------------------------*/
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,
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,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

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

caption,
th,
td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

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

a img {
  border: none;
}

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

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  padding: 15px 15px;
  display: inline-block;
  cursor: pointer;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible;
}
.hamburger:hover {
  opacity: 0.7;
}

.hamburger-box {
  width: 40px;
  height: 24px;
  display: inline-block;
  position: relative;
}

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -2px;
}
.hamburger-inner,
.hamburger-inner::before,
.hamburger-inner::after {
  width: 40px;
  height: 4px;
  background-color: #000;
  border-radius: 4px;
  position: absolute;
  transition-property: transform;
  transition-duration: 0.15s;
  transition-timing-function: ease;
}
.hamburger-inner::before,
.hamburger-inner::after {
  content: "";
  display: block;
}
.hamburger-inner::before {
  top: -10px;
}
.hamburger-inner::after {
  bottom: -10px;
}

/*
   * 3DX
   */
.hamburger--3dx .hamburger-box {
  perspective: 80px;
}

.hamburger--3dx .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1),
    background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dx .hamburger-inner::before,
.hamburger--3dx .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dx.is-active .hamburger-inner {
  background-color: transparent;
  transform: rotateY(180deg);
}
.hamburger--3dx.is-active .hamburger-inner::before {
  transform: translate3d(0, 10px, 0) rotate(45deg);
}
.hamburger--3dx.is-active .hamburger-inner::after {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
}

/*
   * 3DX Reverse
   */
.hamburger--3dx-r .hamburger-box {
  perspective: 80px;
}

.hamburger--3dx-r .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1),
    background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dx-r .hamburger-inner::before,
.hamburger--3dx-r .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dx-r.is-active .hamburger-inner {
  background-color: transparent;
  transform: rotateY(-180deg);
}
.hamburger--3dx-r.is-active .hamburger-inner::before {
  transform: translate3d(0, 10px, 0) rotate(45deg);
}
.hamburger--3dx-r.is-active .hamburger-inner::after {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
}

/*
   * 3DY
   */
.hamburger--3dy .hamburger-box {
  perspective: 80px;
}

.hamburger--3dy .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1),
    background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dy .hamburger-inner::before,
.hamburger--3dy .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dy.is-active .hamburger-inner {
  background-color: transparent;
  transform: rotateX(-180deg);
}
.hamburger--3dy.is-active .hamburger-inner::before {
  transform: translate3d(0, 10px, 0) rotate(45deg);
}
.hamburger--3dy.is-active .hamburger-inner::after {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
}

/*
   * 3DY Reverse
   */
.hamburger--3dy-r .hamburger-box {
  perspective: 80px;
}

.hamburger--3dy-r .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1),
    background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dy-r .hamburger-inner::before,
.hamburger--3dy-r .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dy-r.is-active .hamburger-inner {
  background-color: transparent;
  transform: rotateX(180deg);
}
.hamburger--3dy-r.is-active .hamburger-inner::before {
  transform: translate3d(0, 10px, 0) rotate(45deg);
}
.hamburger--3dy-r.is-active .hamburger-inner::after {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
}

/*
   * Arrow
   */
.hamburger--arrow.is-active .hamburger-inner::before {
  transform: translate3d(-8px, 0, 0) rotate(-45deg) scale(0.7, 1);
}

.hamburger--arrow.is-active .hamburger-inner::after {
  transform: translate3d(-8px, 0, 0) rotate(45deg) scale(0.7, 1);
}

/*
   * Arrow Right
   */
.hamburger--arrow-r.is-active .hamburger-inner::before {
  transform: translate3d(8px, 0, 0) rotate(45deg) scale(0.7, 1);
}

.hamburger--arrow-r.is-active .hamburger-inner::after {
  transform: translate3d(8px, 0, 0) rotate(-45deg) scale(0.7, 1);
}

/*
   * Arrow Alt
   */
.hamburger--arrowalt .hamburger-inner::before {
  transition: top 0.1s 0.1s ease,
    transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.hamburger--arrowalt .hamburger-inner::after {
  transition: bottom 0.1s 0.1s ease,
    transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.hamburger--arrowalt.is-active .hamburger-inner::before {
  top: 0;
  transform: translate3d(-8px, -10px, 0) rotate(-45deg) scale(0.7, 1);
  transition: top 0.1s ease,
    transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}

.hamburger--arrowalt.is-active .hamburger-inner::after {
  bottom: 0;
  transform: translate3d(-8px, 10px, 0) rotate(45deg) scale(0.7, 1);
  transition: bottom 0.1s ease,
    transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}

/*
   * Arrow Alt Right
   */
.hamburger--arrowalt-r .hamburger-inner::before {
  transition: top 0.1s 0.1s ease,
    transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.hamburger--arrowalt-r .hamburger-inner::after {
  transition: bottom 0.1s 0.1s ease,
    transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.hamburger--arrowalt-r.is-active .hamburger-inner::before {
  top: 0;
  transform: translate3d(8px, -10px, 0) rotate(45deg) scale(0.7, 1);
  transition: top 0.1s ease,
    transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}

.hamburger--arrowalt-r.is-active .hamburger-inner::after {
  bottom: 0;
  transform: translate3d(8px, 10px, 0) rotate(-45deg) scale(0.7, 1);
  transition: bottom 0.1s ease,
    transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}

/*
   * Boring
   */
.hamburger--boring .hamburger-inner,
.hamburger--boring .hamburger-inner::before,
.hamburger--boring .hamburger-inner::after {
  transition-property: none;
}

.hamburger--boring.is-active .hamburger-inner {
  transform: rotate(45deg);
}
.hamburger--boring.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
}
.hamburger--boring.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(-90deg);
}

/*
   * Collapse
   */
.hamburger--collapse .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0.13s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--collapse .hamburger-inner::after {
  top: -20px;
  transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1),
    opacity 0.1s linear;
}
.hamburger--collapse .hamburger-inner::before {
  transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1),
    transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--collapse.is-active .hamburger-inner {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--collapse.is-active .hamburger-inner::after {
  top: 0;
  opacity: 0;
  transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333),
    opacity 0.1s 0.22s linear;
}
.hamburger--collapse.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(-90deg);
  transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333),
    transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Collapse Reverse
   */
.hamburger--collapse-r .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0.13s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--collapse-r .hamburger-inner::after {
  top: -20px;
  transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1),
    opacity 0.1s linear;
}
.hamburger--collapse-r .hamburger-inner::before {
  transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1),
    transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--collapse-r.is-active .hamburger-inner {
  transform: translate3d(0, -10px, 0) rotate(45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--collapse-r.is-active .hamburger-inner::after {
  top: 0;
  opacity: 0;
  transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333),
    opacity 0.1s 0.22s linear;
}
.hamburger--collapse-r.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(90deg);
  transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333),
    transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Elastic
   */
.hamburger--elastic .hamburger-inner {
  top: 2px;
  transition-duration: 0.275s;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.hamburger--elastic .hamburger-inner::before {
  top: 10px;
  transition: opacity 0.125s 0.275s ease;
}
.hamburger--elastic .hamburger-inner::after {
  top: 20px;
  transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.hamburger--elastic.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(135deg);
  transition-delay: 0.075s;
}
.hamburger--elastic.is-active .hamburger-inner::before {
  transition-delay: 0s;
  opacity: 0;
}
.hamburger--elastic.is-active .hamburger-inner::after {
  transform: translate3d(0, -20px, 0) rotate(-270deg);
  transition-delay: 0.075s;
}

/*
   * Elastic Reverse
   */
.hamburger--elastic-r .hamburger-inner {
  top: 2px;
  transition-duration: 0.275s;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.hamburger--elastic-r .hamburger-inner::before {
  top: 10px;
  transition: opacity 0.125s 0.275s ease;
}
.hamburger--elastic-r .hamburger-inner::after {
  top: 20px;
  transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.hamburger--elastic-r.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(-135deg);
  transition-delay: 0.075s;
}
.hamburger--elastic-r.is-active .hamburger-inner::before {
  transition-delay: 0s;
  opacity: 0;
}
.hamburger--elastic-r.is-active .hamburger-inner::after {
  transform: translate3d(0, -20px, 0) rotate(270deg);
  transition-delay: 0.075s;
}

/*
   * Emphatic
   */
.hamburger--emphatic {
  overflow: hidden;
}
.hamburger--emphatic .hamburger-inner {
  transition: background-color 0.125s 0.175s ease-in;
}
.hamburger--emphatic .hamburger-inner::before {
  left: 0;
  transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335),
    top 0.05s 0.125s linear, left 0.125s 0.175s ease-in;
}
.hamburger--emphatic .hamburger-inner::after {
  top: 10px;
  right: 0;
  transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335),
    top 0.05s 0.125s linear, right 0.125s 0.175s ease-in;
}
.hamburger--emphatic.is-active .hamburger-inner {
  transition-delay: 0s;
  transition-timing-function: ease-out;
  background-color: transparent;
}
.hamburger--emphatic.is-active .hamburger-inner::before {
  left: -80px;
  top: -80px;
  transform: translate3d(80px, 80px, 0) rotate(45deg);
  transition: left 0.125s ease-out, top 0.05s 0.125s linear,
    transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}
.hamburger--emphatic.is-active .hamburger-inner::after {
  right: -80px;
  top: -80px;
  transform: translate3d(-80px, 80px, 0) rotate(-45deg);
  transition: right 0.125s ease-out, top 0.05s 0.125s linear,
    transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}

/*
   * Emphatic Reverse
   */
.hamburger--emphatic-r {
  overflow: hidden;
}
.hamburger--emphatic-r .hamburger-inner {
  transition: background-color 0.125s 0.175s ease-in;
}
.hamburger--emphatic-r .hamburger-inner::before {
  left: 0;
  transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335),
    top 0.05s 0.125s linear, left 0.125s 0.175s ease-in;
}
.hamburger--emphatic-r .hamburger-inner::after {
  top: 10px;
  right: 0;
  transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335),
    top 0.05s 0.125s linear, right 0.125s 0.175s ease-in;
}
.hamburger--emphatic-r.is-active .hamburger-inner {
  transition-delay: 0s;
  transition-timing-function: ease-out;
  background-color: transparent;
}
.hamburger--emphatic-r.is-active .hamburger-inner::before {
  left: -80px;
  top: 80px;
  transform: translate3d(80px, -80px, 0) rotate(-45deg);
  transition: left 0.125s ease-out, top 0.05s 0.125s linear,
    transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}
.hamburger--emphatic-r.is-active .hamburger-inner::after {
  right: -80px;
  top: 80px;
  transform: translate3d(-80px, -80px, 0) rotate(45deg);
  transition: right 0.125s ease-out, top 0.05s 0.125s linear,
    transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}

/*
   * Slider
   */
.hamburger--slider .hamburger-inner {
  top: 2px;
}
.hamburger--slider .hamburger-inner::before {
  top: 10px;
  transition-property: transform, opacity;
  transition-timing-function: ease;
  transition-duration: 0.15s;
}
.hamburger--slider .hamburger-inner::after {
  top: 20px;
}

.hamburger--slider.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(45deg);
}
.hamburger--slider.is-active .hamburger-inner::before {
  transform: rotate(-45deg) translate3d(-5.71429px, -6px, 0);
  opacity: 0;
}
.hamburger--slider.is-active .hamburger-inner::after {
  transform: translate3d(0, -20px, 0) rotate(-90deg);
}

/*
   * Slider Reverse
   */
.hamburger--slider-r .hamburger-inner {
  top: 2px;
}
.hamburger--slider-r .hamburger-inner::before {
  top: 10px;
  transition-property: transform, opacity;
  transition-timing-function: ease;
  transition-duration: 0.15s;
}
.hamburger--slider-r .hamburger-inner::after {
  top: 20px;
}

.hamburger--slider-r.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(-45deg);
}
.hamburger--slider-r.is-active .hamburger-inner::before {
  transform: rotate(45deg) translate3d(5.71429px, -6px, 0);
  opacity: 0;
}
.hamburger--slider-r.is-active .hamburger-inner::after {
  transform: translate3d(0, -20px, 0) rotate(90deg);
}

/*
   * Spring
   */
.hamburger--spring .hamburger-inner {
  top: 2px;
  transition: background-color 0s 0.13s linear;
}
.hamburger--spring .hamburger-inner::before {
  top: 10px;
  transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1),
    transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spring .hamburger-inner::after {
  top: 20px;
  transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1),
    transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spring.is-active .hamburger-inner {
  transition-delay: 0.22s;
  background-color: transparent;
}
.hamburger--spring.is-active .hamburger-inner::before {
  top: 0;
  transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333),
    transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translate3d(0, 10px, 0) rotate(45deg);
}
.hamburger--spring.is-active .hamburger-inner::after {
  top: 0;
  transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333),
    transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translate3d(0, 10px, 0) rotate(-45deg);
}

/*
   * Spring Reverse
   */
.hamburger--spring-r .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spring-r .hamburger-inner::after {
  top: -20px;
  transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1),
    opacity 0s linear;
}
.hamburger--spring-r .hamburger-inner::before {
  transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1),
    transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spring-r.is-active .hamburger-inner {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--spring-r.is-active .hamburger-inner::after {
  top: 0;
  opacity: 0;
  transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333),
    opacity 0s 0.22s linear;
}
.hamburger--spring-r.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(90deg);
  transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333),
    transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Stand
   */
.hamburger--stand .hamburger-inner {
  transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19),
    background-color 0s 0.075s linear;
}
.hamburger--stand .hamburger-inner::before {
  transition: top 0.075s 0.075s ease-in,
    transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--stand .hamburger-inner::after {
  transition: bottom 0.075s 0.075s ease-in,
    transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--stand.is-active .hamburger-inner {
  transform: rotate(90deg);
  background-color: transparent;
  transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1),
    background-color 0s 0.15s linear;
}
.hamburger--stand.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(-45deg);
  transition: top 0.075s 0.1s ease-out,
    transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--stand.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(45deg);
  transition: bottom 0.075s 0.1s ease-out,
    transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Stand Reverse
   */
.hamburger--stand-r .hamburger-inner {
  transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19),
    background-color 0s 0.075s linear;
}
.hamburger--stand-r .hamburger-inner::before {
  transition: top 0.075s 0.075s ease-in,
    transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--stand-r .hamburger-inner::after {
  transition: bottom 0.075s 0.075s ease-in,
    transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--stand-r.is-active .hamburger-inner {
  transform: rotate(-90deg);
  background-color: transparent;
  transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1),
    background-color 0s 0.15s linear;
}
.hamburger--stand-r.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(-45deg);
  transition: top 0.075s 0.1s ease-out,
    transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--stand-r.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(45deg);
  transition: bottom 0.075s 0.1s ease-out,
    transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Spin
   */
.hamburger--spin .hamburger-inner {
  transition-duration: 0.22s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spin .hamburger-inner::before {
  transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in;
}
.hamburger--spin .hamburger-inner::after {
  transition: bottom 0.1s 0.25s ease-in,
    transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spin.is-active .hamburger-inner {
  transform: rotate(225deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--spin.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
  transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out;
}
.hamburger--spin.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(-90deg);
  transition: bottom 0.1s ease-out,
    transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Spin Reverse
   */
.hamburger--spin-r .hamburger-inner {
  transition-duration: 0.22s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spin-r .hamburger-inner::before {
  transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in;
}
.hamburger--spin-r .hamburger-inner::after {
  transition: bottom 0.1s 0.25s ease-in,
    transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spin-r.is-active .hamburger-inner {
  transform: rotate(-225deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--spin-r.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
  transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out;
}
.hamburger--spin-r.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(90deg);
  transition: bottom 0.1s ease-out,
    transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Squeeze
   */
.hamburger--squeeze .hamburger-inner {
  transition-duration: 0.075s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--squeeze .hamburger-inner::before {
  transition: top 0.075s 0.12s ease, opacity 0.075s ease;
}
.hamburger--squeeze .hamburger-inner::after {
  transition: bottom 0.075s 0.12s ease,
    transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--squeeze.is-active .hamburger-inner {
  transform: rotate(45deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--squeeze.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
  transition: top 0.075s ease, opacity 0.075s 0.12s ease;
}
.hamburger--squeeze.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(-90deg);
  transition: bottom 0.075s ease,
    transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Vortex
   */
.hamburger--vortex .hamburger-inner {
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}
.hamburger--vortex .hamburger-inner::before,
.hamburger--vortex .hamburger-inner::after {
  transition-duration: 0s;
  transition-delay: 0.1s;
  transition-timing-function: linear;
}
.hamburger--vortex .hamburger-inner::before {
  transition-property: top, opacity;
}
.hamburger--vortex .hamburger-inner::after {
  transition-property: bottom, transform;
}

.hamburger--vortex.is-active .hamburger-inner {
  transform: rotate(765deg);
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}
.hamburger--vortex.is-active .hamburger-inner::before,
.hamburger--vortex.is-active .hamburger-inner::after {
  transition-delay: 0s;
}
.hamburger--vortex.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
}
.hamburger--vortex.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(90deg);
}

/*
   * Vortex Reverse
   */
.hamburger--vortex-r .hamburger-inner {
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}
.hamburger--vortex-r .hamburger-inner::before,
.hamburger--vortex-r .hamburger-inner::after {
  transition-duration: 0s;
  transition-delay: 0.1s;
  transition-timing-function: linear;
}
.hamburger--vortex-r .hamburger-inner::before {
  transition-property: top, opacity;
}
.hamburger--vortex-r .hamburger-inner::after {
  transition-property: bottom, transform;
}

.hamburger--vortex-r.is-active .hamburger-inner {
  transform: rotate(-765deg);
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}
.hamburger--vortex-r.is-active .hamburger-inner::before,
.hamburger--vortex-r.is-active .hamburger-inner::after {
  transition-delay: 0s;
}
.hamburger--vortex-r.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
}
.hamburger--vortex-r.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(-90deg);
}

/* argument */
/* site style */
/* [ opacity ]
-------------------------------------------------*/
/* [ display style ]
-------------------------------------------------*/
/* [ background-image ]
-------------------------------------------------*/
/* [ writing-mode ]
-------------------------------------------------*/
/* [ illustrator & photoshop letter spacing ]
-------------------------------------------------*/
/* [ easy breakpoint ]
-------------------------------------------------*/
/* [ easy transform ]
-------------------------------------------------*/
/* [ writing-mode ]
-------------------------------------------------*/
#contact {
  /* dislay */
  /* contact */
}
#contact .errMsg {
  margin-left: 1em;
  padding-bottom: 1px;
  display: block;
  line-height: 1.4;
  text-indent: -0.9em;
}
#contact .formError {
  padding-bottom: 13px;
  display: block;
}
#contact .fixed {
  padding-bottom: 0px;
}
#contact .formError .formErrorClose {
  border: solid #252525 2px;
  display: block;
  width: 16px;
  height: 16px;
  position: absolute;
  top: -4px;
  right: -4px;
  color: #efefef;
  background: #333;
  font-weight: bold;
  text-align: center;
  line-height: middle;
  cursor: pointer;
  z-index: 2;
  -webkit-border-radius: 9px 9px 9px 9px;
  -moz-border-radius: 9px 9px 9px 9px;
  -ms-border-radius: 9px 9px 9px 9px;
  -o-border-radius: 9px 9px 9px 9px;
  border-radius: 9px 9px 9px 9px;
  -webkit-box-shadow: 1px -1px 3px #888;
  -moz-box-shadow: 1px -1px 3px #888;
  -ms-box-shadow: 1px -1px 3px #888;
  -o-box-shadow: 1px -1px 3px #888;
  box-shadow: 1px -1px 3px #888;
}
#contact .formError .formErrorClose:hover {
  background: #666;
}
#contact .fixed .formErrorClose {
  display: none;
}
#contact .formError .formErrorContent {
  padding: 6px 10px;
  width: 180px;
  position: relative;
  color: #fff;
  background: #252525;
  font-family: "Lucida Sans Unicode", "Lucida Grande", Arial, Helvetica,
    "ヒラギノ丸ゴ Pro W4", HiraMaruPro-W4, "ヒラギノ角ゴ Pro W3", "メイリオ",
    Meiryo, Osaka, sans-serif;
  font-size: 11px;
  margin: 0 0;
  z-index: 1;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
  -webkit-box-shadow: 0px 0px 6px #888;
  -moz-box-shadow: 0px 0px 6px #888;
  -ms-box-shadow: 0px 0px 6px #888;
  -o-box-shadow: 0px 0px 6px #888;
  box-shadow: 0px 0px 6px #888;
}
#contact .fixed .formErrorContent {
  margin-top: 0.5em;
  background: #f60;
  margin: 0 0 30px 0;
  -webkit-border-radius: none;
  -moz-border-radius: none;
  -ms-border-radius: none;
  -o-border-radius: none;
  border-radius: none;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  -ms-box-shadow: none;
  -o-box-shadow: none;
  box-shadow: none;
}
#contact .fadeOut {
  opacity: 0.2;
  filter: alpha(opacity=20);
}
#contact .formError .formErrorArrow {
  width: 15px;
  height: 15px;
  position: absolute;
  bottom: 0;
  left: 20px;
  margin: 0 0 30px 0;
  z-index: 0;
}
#contact .fixed .formErrorArrow {
  display: none;
}
#contact .formError .formErrorArrowBottom {
  margin: -6px;
  top: 0;
}
#contact .fixed .formErrorArrowBottom {
  display: none;
}
#contact .formError .formErrorArrow div {
  margin: 0 auto;
  display: block;
  height: 1px;
  background: #252525;
  line-height: 0px;
  font-size: 0px;
  -webkit-box-shadow: 0px 2px 3px #888;
  -moz-box-shadow: 0px 2px 3px #888;
  -ms-box-shadow: 0px 2px 3px #888;
  -o-box-shadow: 0px 2px 3px #888;
  box-shadow: 0px 2px 3px #888;
}
#contact .formError .formErrorArrowBottom div {
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  -ms-box-shadow: none;
  -o-box-shadow: none;
  box-shadow: none;
}
#contact .formError .formErrorArrow .line10 {
  width: 19px;
}
#contact .formError .formErrorArrow .line9 {
  width: 17px;
}
#contact .formError .formErrorArrow .line8 {
  width: 15px;
}
#contact .formError .formErrorArrow .line7 {
  width: 13px;
}
#contact .formError .formErrorArrow .line6 {
  width: 11px;
}
#contact .formError .formErrorArrow .line5 {
  width: 9px;
}
#contact .formError .formErrorArrow .line4 {
  width: 7px;
}
#contact .formError .formErrorArrow .line3 {
  width: 5px;
}
#contact .formError .formErrorArrow .line2 {
  width: 3px;
}
#contact .formError .formErrorArrow .line1 {
  width: 1px;
}
#contact .hid_url {
  display: none;
}
#contact form p.test {
  position: relative;
  color: #c1c0bc;
}
#contact form p.test label {
  position: absolute;
  top: 3px;
  left: 10px;
  font-weight: normal;
}
#contact form p.test br {
  display: none;
}
#contact .formBlock {
  max-width: 890px;
  margin: auto;
}
#contact .txtContact {
  text-align: left;
  font-size: 16px;
  margin: 70px auto 50px;
}
#contact .txtContact01 {
  font-size: 14px;
  margin-bottom: 50px;
}
#contact .tableContact em,
#contact .txtContact em {
  color: #fb2a2a;
  font-style: normal;
}
#contact .tableContact {
  border-top: #8f8f8f solid 1px;
  border-bottom: #8f8f8f solid 1px;
  width: 100%;
  margin: 30px 0 50px;
  font-size: 15px;
  text-align: left;
}
#contact .tableContact td,
#contact .tableContact th {
  border-bottom: #8f8f8f solid 1px;
  padding: 20px;
  vertical-align: top;
}
#contact .tableContact th {
  background: #ededed;
  width: 210px;
  font-weight: normal;
}
#contact .tableContact td {
  position: relative;
}
#contact .tableContact input[type="text"],
#contact .tableContact input[type="email"],
#contact .tableContact input[type="number"],
#contact .tableContact input[type="url"] {
  width: 300px;
  height: 23px;
  color: #1a1a1a;
}
#contact .tableContact input[type="text"],
#contact .tableContact textarea {
  border: #8f8f8f solid 1px;
}
#contact .tableContact .size01 input[type="text"] {
  width: 160px;
}
#contact .tableContact .size02 input[type="text"],
#contact .tableContact textarea {
  width: 100%;
}
#contact .tableContact textarea {
  height: 150px;
}
#contact .stepImg {
  margin: 30px 0;
}
#contact .stepImg img {
  display: block;
  width: 100%;
}
#contact .stepImg {
  margin: 30px 0;
}
#contact .tabForm {
  margin: 50px auto 0;
}
#contact .tabForm ul {
  font-size: 0;
  letter-spacing: 0;
  margin: 0;
  border-bottom: 2px solid #000;
}
#contact .tabForm ul li {
  display: inline-block;
  width: 50%;
  padding: 0;
}
#contact .tabForm ul li input {
  position: absolute;
  opacity: 0;
}
#contact .tabForm ul li label {
  display: block;
  line-height: 60px;
  text-align: center;
  font-size: 20px;
}
#contact .tabForm ul li input:checked ~ label {
  background: #000;
  color: #fff;
}
#contact .tabForm ul li label:hover {
  opacity: 1;
  background: #555;
  color: #fff;
}
#contact .tableContact input[type="text"],
#contact .tableContact input[type="url"],
#contact .tableContact input[type="email"],
#contact .tableContact textarea {
  padding: 10px;
  height: auto;
  border: 1px solid #aaa;
}
#contact .tableContact select {
  -webkit-appearance: none;
  border: 1px solid #aaa;
  padding: 10px;
}
#contact .tableContact .pRadio {
  display: inline-block;
  vertical-align: middle;
}
#contact .tableContact .pRadio input {
  position: absolute;
  opacity: 0;
}
#contact .tableContact .pRadio label {
  display: inline-block;
  margin: 0 5px 0 0;
  border: 1px solid #aaa;
  padding: 10px 20px;
}
#contact .tableContact .pRadio input:checked ~ label {
  background: #555;
  border-color: #555;
  color: #fff;
}
#contact button {
  height: 60px;
  margin: 20px auto;
  padding: 0 100px;
  background: #eee;
}

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

@media only screen and (min-width: 768px) {
  .sp {
    display: none !important;
  }
}

html {
  color: #222443;
  font-size: 62.5%;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
    "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "Noto Serif JP", serif;
}
html .wrap {
  position: relative;
}

* {
  font-size: 14px;
  font-size: 1.4rem;
  box-sizing: border-box;
}

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

a {
  color: inherit;
  text-decoration: none;
}

.inner {
  max-width: 1000px;
  width: calc(100% - 50px);
  margin: 0 auto;
}

.flex-row {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}

.js-fadeIn {
  opacity: 0;
  -webkit-transition: all 0.8s linear;
  -moz-transition: all 0.8s linear;
  -o-transition: all 0.8s linear;
  transition: all 0.8s linear;
}
.js-fadeIn .js-fadeIn-child {
  opacity: 0;
  -webkit-transform: translateY(20px);
  -moz-transform: translateY(20px);
  -ms-transform: translateY(20px);
  -o-transform: translateY(20px);
  transform: translateY(20px);
  -webkit-transition: all 0.8s linear;
  -moz-transition: all 0.8s linear;
  -o-transition: all 0.8s linear;
  transition: all 0.8s linear;
}
.js-fadeIn .js-fadeIn-child:nth-child(1) {
  transition-delay: calc(0.3s * 1);
}
.js-fadeIn .js-fadeIn-child:nth-child(2) {
  transition-delay: calc(0.3s * 2);
}
.js-fadeIn .js-fadeIn-child:nth-child(3) {
  transition-delay: calc(0.3s * 3);
}
.js-fadeIn .js-fadeIn-child:nth-child(4) {
  transition-delay: calc(0.3s * 4);
}
.js-fadeIn .js-fadeIn-child:nth-child(5) {
  transition-delay: calc(0.3s * 5);
}
.js-fadeIn .js-fadeIn-child:nth-child(6) {
  transition-delay: calc(0.3s * 6);
}
.js-fadeIn .js-fadeIn-child:nth-child(7) {
  transition-delay: calc(0.3s * 7);
}
.js-fadeIn .js-fadeIn-child:nth-child(8) {
  transition-delay: calc(0.3s * 8);
}
.js-fadeIn .js-fadeIn-child:nth-child(9) {
  transition-delay: calc(0.3s * 9);
}
.js-fadeIn .js-fadeIn-child:nth-child(10) {
  transition-delay: calc(0.3s * 10);
}
.js-fadeIn .js-fadeIn-child:nth-child(11) {
  transition-delay: calc(0.3s * 11);
}
.js-fadeIn .js-fadeIn-child:nth-child(12) {
  transition-delay: calc(0.3s * 12);
}
.js-fadeIn .js-fadeIn-child:nth-child(13) {
  transition-delay: calc(0.3s * 13);
}
.js-fadeIn .js-fadeIn-child:nth-child(14) {
  transition-delay: calc(0.3s * 14);
}
.js-fadeIn .js-fadeIn-child:nth-child(15) {
  transition-delay: calc(0.3s * 15);
}
.js-fadeIn .js-fadeIn-child:nth-child(16) {
  transition-delay: calc(0.3s * 16);
}
.js-fadeIn .js-fadeIn-child:nth-child(17) {
  transition-delay: calc(0.3s * 17);
}
.js-fadeIn .js-fadeIn-child:nth-child(18) {
  transition-delay: calc(0.3s * 18);
}
.js-fadeIn .js-fadeIn-child:nth-child(19) {
  transition-delay: calc(0.3s * 19);
}
.js-fadeIn .js-fadeIn-child:nth-child(20) {
  transition-delay: calc(0.3s * 20);
}
.js-fadeIn.is-active {
  opacity: 1;
}
.js-fadeIn.is-active .js-fadeIn-child {
  opacity: 1;
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
  transform: translateY(0);
}

#pagetop {
  display: none;
  text-align: center;
  position: fixed;
  right: 24px;
  bottom: 96px;
  padding-top: 40px;
  z-index: 900;
}
@media only screen and (max-width: 767px) {
  #pagetop {
    right: 15px;
    bottom: 70px;
    padding-top: 30px;
  }
}
#pagetop.is-fixed {
  top: auto;
  bottom: 40px;
}
@media only screen and (max-width: 767px) {
  #pagetop.is-fixed {
    bottom: 20px;
  }
}
#pagetop:before {
  content: "";
  width: 10px;
  height: 20px;
  background-image: url(../images/common/ico-arrow3-blue.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%) rotate(-180deg);
  -moz-transform: translateX(-50%) rotate(-180deg);
  -ms-transform: translateX(-50%) rotate(-180deg);
  -o-transform: translateX(-50%) rotate(-180deg);
  transform: translateX(-50%) rotate(-180deg);
  top: 0;
  animation: arrowmove02 1s ease-in-out infinite;
}

@keyframes arrowmove02 {
  0% {
    top: 0;
  }
  50% {
    top: -10px;
  }
  100% {
    top: 0;
  }
}
#pagetop img {
  width: 11px;
}

.footer-contact {
  padding: 70px 0;
  position: relative;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  .footer-contact {
    padding: 40px 0;
  }
}
.footer-contact:after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-image: url(../images/common/contact-bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  z-index: -1;
  -webkit-transition: 0.5s;
  -moz-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
}
@media only screen and (max-width: 767px) {
  .footer-contact:after {
    background-image: url(../images/common/contact-bg-sp.jpg);
  }
}
.footer-contact.is-hover:after {
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1);
  -ms-transform: scale(1.1);
  -o-transform: scale(1.1);
  transform: scale(1.1);
}
.footer-contact__title {
  color: #fff;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-align-items: center;
  align-items: center;
}
.footer-contact__title em {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
    "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "Noto Serif JP", serif;
  font-size: 30px;
  font-size: 3rem;
  letter-spacing: 0.2em;
}
@media only screen and (max-width: 767px) {
  .footer-contact__title em {
    font-size: 28px;
    font-size: 2.8rem;
  }
}
.footer-contact__title span {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
    "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "Noto Serif JP", serif;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  margin-top: 20px;
  padding-left: 30px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .footer-contact__title span {
    font-size: 14px;
    font-size: 1.4rem;
    margin-top: 16px;
    padding-left: 28px;
  }
}
.footer-contact__title span:before {
  content: "";
  width: 17px;
  height: 9px;
  background-image: url(../images/common/ico-arrow3-white.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 0;
}
.footer-contact .c-btn {
  margin-top: 40px;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .footer-contact .c-btn {
    margin-top: 32px;
  }
}

.footer-nav {
  padding: 60px 0 40px;
}
@media only screen and (max-width: 767px) {
  .footer-nav {
    padding: 40px 0 30px;
  }
}
.footer-nav__top {
  padding-bottom: 60px;
  display: -webkit-flex;
  display: flex;
}
@media only screen and (max-width: 767px) {
  .footer-nav__top {
    padding-bottom: 40px;
    display: block;
    padding-left: 15px;
  }
}
.footer-nav__top .footer-nav__left {
  width: 38%;
}
@media only screen and (max-width: 767px) {
  .footer-nav__top .footer-nav__left {
    width: 100%;
  }
}
.footer-nav__top .footer-nav__left .footer-nav__logo {
  display: inline-block;
  width: 193px;
}
@media only screen and (max-width: 767px) {
  .footer-nav__top .footer-nav__left .footer-nav__logo {
    width: 106px;
  }
}
.footer-nav__top .footer-nav__left .footer-nav__insta {
  display: inline-block;
  width: 30px;
  margin-left: 50px;
}
@media only screen and (max-width: 767px) {
  .footer-nav__top .footer-nav__left .footer-nav__insta {
    width: 20px;
    margin-left: 30px;
  }
}
.footer-nav__top .footer-nav__left address {
  margin-top: 60px;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.866666667;
  letter-spacing: 0.1em;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media only screen and (max-width: 767px) {
  .footer-nav__top .footer-nav__left address {
    margin-top: 30px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.857142857;
  }
}
.footer-nav__top .footer-nav__right {
  width: 62%;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  color: #231815;
}
@media only screen and (max-width: 767px) {
  .footer-nav__top .footer-nav__right {
    width: 100%;
    display: block;
    margin-top: 40px;
  }
}
.footer-nav__top .footer-nav__right > ul {
  position: relative;
  padding: 2px 0 2px 25px;
}
@media only screen and (min-width: 768px) {
  .footer-nav__top .footer-nav__right > ul:nth-child(1) {
    width: 68%;
  }
  .footer-nav__top .footer-nav__right > ul:nth-child(2) {
    width: 32%;
  }
}
@media only screen and (max-width: 767px) {
  .footer-nav__top .footer-nav__right > ul {
    padding: 2px 0 2px 30px;
  }
  .footer-nav__top .footer-nav__right > ul:nth-child(2) {
    padding-top: 20px;
  }
}
.footer-nav__top .footer-nav__right > ul:after {
  content: "";
  width: 1px;
  height: 100%;
  background-color: #f4f4f4;
  position: absolute;
  top: 0;
  left: 0;
}
.footer-nav__top .footer-nav__right > ul > li {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.2;
  letter-spacing: 0.1em;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
    "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "Noto Serif JP", serif;
}
@media only screen and (max-width: 767px) {
  .footer-nav__top .footer-nav__right > ul > li {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.466666667;
  }
}
.footer-nav__top .footer-nav__right > ul > li:nth-child(n + 2) {
  margin-top: 24px;
}
@media only screen and (max-width: 767px) {
  .footer-nav__top .footer-nav__right > ul > li:nth-child(n + 2) {
    margin-top: 18px;
  }
}
.footer-nav__txt {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.2;
  letter-spacing: 0.1em;
  color: #054688;
  text-align: center;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media only screen and (max-width: 767px) {
  .footer-nav__txt {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.857142857;
    text-align: left;
  }
}

.footer-map {
  padding-bottom: 60px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .footer-map {
    padding: 0 15px 30px;
  }
}
.footer-map:before {
  content: "";
  width: 100%;
  height: calc(50% + 30px);
  background-color: #f4f4f4;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: -1;
}
.footer-map .inner > div {
  height: 0;
  overflow: hidden;
  padding-bottom: 300px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .footer-map .inner > div {
    padding-bottom: 240px;
  }
}
.footer-map .inner > div iframe {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}

.footer-txt {
  padding-bottom: 60px;
  background-color: #f4f4f4;
}
@media only screen and (max-width: 767px) {
  .footer-txt {
    padding: 0 15px 30px;
  }
}
.footer-txt .inner p {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.833333333;
  letter-spacing: 0.08em;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media only screen and (max-width: 767px) {
  .footer-txt .inner p {
    font-size: 10px;
    font-size: 1rem;
    line-height: 1.6;
  }
}

.footer-copyright {
  background-color: #054688;
  text-align: center;
  padding: 24px 0 22px;
}
@media only screen and (max-width: 767px) {
  .footer-copyright {
    padding: 20px 0 19px;
  }
}
.footer-copyright span {
  font-size: 12px;
  font-size: 1.2rem;
  color: #fff;
  letter-spacing: 0.08em;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media only screen and (max-width: 767px) {
  .footer-copyright span {
    font-size: 10px;
    font-size: 1rem;
  }
}

.header {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 500;
}
.header-h1 {
  padding: 10px 0 0 93px;
  font-size: 10px;
  font-size: 1rem;
  letter-spacing: 0.05em;
  color: #fff;
}
@media only screen and (max-width: 767px) {
  .header-h1 {
    display: none;
  }
}
.header-nav {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
}
.header-nav.is-active {
  z-index: 2;
}
.header-nav.is-active .c-header-reservation {
  opacity: 0;
}
.header-nav__top {
  position: absolute;
  top: 46px;
  right: 40px;
}
@media only screen and (max-width: 767px) {
  .header-nav__top {
    top: 22px;
    right: 20px;
  }
}
.header-nav .c-header-reservation {
  margin-right: 30px;
}
@media only screen and (max-width: 767px) {
  .header-nav .c-header-reservation {
    margin-right: 20px;
  }
}
.header-main {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 80px;
  background: #054688;
  /* background: linear-gradient(-45deg, #054688 0%, #054688 50%, #121755 100%); */
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  padding: 0 40px 0 60px;
  transition: transform 0.3s linear;
  transform: translateY(-100%);
}
.header-main.fixed {
  transform: translateY(0);
}
@media only screen and (max-width: 767px) {
  .header-main {
    height: 70px;
    padding: 0 20px 0 22px;
  }
}
.header-main__logo {
  width: 232px;
  padding-top: 27px;
}
@media only screen and (min-width: 768px) {
  .header-main__logo {
    cursor: pointer;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
  }
  .header-main__logo:hover {
    opacity: 0.7;
  }
}
@media only screen and (max-width: 767px) {
  .header-main__logo {
    width: 70px;
    padding-top: 12px;
  }
}
.header-main__nav {
  padding-top: 17px;
}
@media only screen and (max-width: 767px) {
  .header-main__nav {
    padding-top: 15.5px;
  }
}
.header-main__nav .c-header-reservation {
  background: #ceab74;
  background: linear-gradient(90deg, #ceab74 0%, #b58534 100%);
}
.header .gnav-toggle {
  cursor: pointer;
  position: relative;
}
.header .gnav-toggle.is-active > div span {
  background-color: #121755;
}
.header .gnav-toggle.is-active > div span:nth-child(1) {
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(-160deg);
  -moz-transform: translate(-50%, -50%) rotate(-160deg);
  -ms-transform: translate(-50%, -50%) rotate(-160deg);
  -o-transform: translate(-50%, -50%) rotate(-160deg);
  transform: translate(-50%, -50%) rotate(-160deg);
}
.header .gnav-toggle.is-active > div span:nth-child(2) {
  opacity: 0;
}
.header .gnav-toggle.is-active > div span:nth-child(3) {
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(160deg);
  -moz-transform: translate(-50%, -50%) rotate(160deg);
  -ms-transform: translate(-50%, -50%) rotate(160deg);
  -o-transform: translate(-50%, -50%) rotate(160deg);
  transform: translate(-50%, -50%) rotate(160deg);
}
.header .gnav-toggle.is-active > span {
  color: #121755;
}
.header .gnav-toggle.is-active > span:before {
  content: "CLOSE";
}
.header .gnav-toggle > div {
  width: 40px;
  height: 20px;
  position: relative;
  margin: 0 auto;
}
@media only screen and (max-width: 767px) {
  .header .gnav-toggle > div {
    width: 30px;
    height: 15px;
  }
}
.header .gnav-toggle > div span {
  width: 100%;
  height: 1px;
  background-color: #fff;
  position: absolute;
  left: 0;
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}
.header .gnav-toggle > div span:nth-child(1) {
  top: 0;
}
.header .gnav-toggle > div span:nth-child(2) {
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
}
.header .gnav-toggle > div span:nth-child(3) {
  bottom: 0;
}
.header .gnav-toggle > span {
  font-size: 13px;
  font-size: 1.3rem;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
    "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "Noto Serif JP", serif;
  letter-spacing: 0.1em;
  color: #fff;
  font-weight: 900;
  margin: 10px auto 0;
  display: inline-block;
}
@media only screen and (max-width: 767px) {
  .header .gnav-toggle > span {
    font-size: 12px;
    font-size: 1.2rem;
  }
}
.header .gnav-toggle > span:before {
  content: "MENU";
}
.header .gnav {
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: -100vh;
  left: 0;
}
.header .gnav.is-active {
  top: 0;
}
@media only screen and (max-width: 767px) {
  .header .gnav {
    overflow-y: scroll;
  }
}
@media only screen and (min-width: 768px) {
  .header .gnav {
    background-color: #f7f5ef;
  }
  .header .gnav:before {
    content: "";
    width: 28.125%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background-color: #f7f5ef;
    mix-blend-mode: multiply;
    z-index: 1;
  }
}
.header .gnav-main {
  height: 69%;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  position: relative;
  z-index: 2;
}
@media only screen and (max-width: 767px) {
  .header .gnav-main {
    background-color: #f7f5ef;
    height: auto;
  }
  .header .gnav-main:before {
    content: "";
    width: 32%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background-color: #f7f5ef;
    mix-blend-mode: multiply;
  }
}
.header .gnav-main > div {
  max-width: 1000px;
  width: calc(100% - 40px);
  margin: 0 auto;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start;
  align-items: flex-start;
}
@media only screen and (max-width: 767px) {
  .header .gnav-main > div {
    display: block;
    width: calc(100% - 50px);
    padding: 20px 0 260px;
  }
}
.header .gnav-main__left {
  width: 320px;
  flex-shrink: 0;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .header .gnav-main__left {
    width: 100%;
  }
}
.header .gnav-main__left .gnav-main__logo {
  width: 193px;
  display: inline-block;
}
@media only screen and (max-width: 767px) {
  .header .gnav-main__left .gnav-main__logo {
    width: 70px;
  }
}
.header .gnav-main__left .gnav-main__insta {
  display: inline-block;
  width: 30px;
  margin: 0 0 0 30px;
}
@media only screen and (max-width: 767px) {
  .header .gnav-main__left .gnav-main__insta {
    width: 18px;
    margin: 0 0 0 20px;
  }
}
.header .gnav-main__left .c-btn {
  margin-top: 50px;
}
.header .gnav-main__right {
  width: calc(100% - 320px);
  padding-left: 68px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  color: #231815;
}
@media only screen and (max-width: 767px) {
  .header .gnav-main__right {
    width: 100%;
    padding-left: 0;
    display: block;
    margin-top: 60px;
  }
}
.header .gnav-main__right > ul {
  position: relative;
  padding: 2px 0 2px 25px;
}
@media only screen and (min-width: 768px) {
  .header .gnav-main__right > ul:nth-child(1) {
    width: 68%;
  }
  .header .gnav-main__right > ul:nth-child(2) {
    width: 32%;
  }
}
@media only screen and (max-width: 767px) {
  .header .gnav-main__right > ul {
    padding: 2px 0 2px 30px;
  }
  .header .gnav-main__right > ul:nth-child(2) {
    padding-top: 20px;
  }
}
.header .gnav-main__right > ul:after {
  content: "";
  width: 1px;
  height: 100%;
  background-color: #ceab74;
  position: absolute;
  top: 0;
  left: 0;
}
.header .gnav-main__right > ul > li {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.2;
  letter-spacing: 0.1em;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
    "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "Noto Serif JP", serif;
}
@media only screen and (max-width: 767px) {
  .header .gnav-main__right > ul > li {
    line-height: 1.466666667;
  }
}
.header .gnav-main__right > ul > li:nth-child(n + 2) {
  margin-top: 24px;
}
@media only screen and (max-width: 767px) {
  .header .gnav-main__right > ul > li:nth-child(n + 2) {
    margin-top: 18px;
  }
}
.header .gnav-main__right > ul > li .link-document {
  display: inline-block;
}
@media only screen and (min-width: 768px) {
  .header .gnav-main__right > ul > li .link-document {
    margin-left: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .header .gnav-main__right > ul > li .link-document {
    margin-top: 10px;
  }
  .header .gnav-main__right > ul > li .link-document:nth-child(3) {
    margin-right: 16px;
  }
}
.header .gnav-main__right > ul > li .link-document span {
  color: #054688;
  text-decoration: underline;
}
.header .gnav-main__right > ul > li .link-document img {
  width: 14px;
  display: inline-block;
  position: relative;
  top: -2px;
  margin: 0 0 0 8px;
}
@media only screen and (max-width: 767px) {
  .header .gnav-main__right ~ .c-btn {
    text-align: center;
    margin-top: 60px;
  }
}
.header .gnav-img {
  height: 31%;
  display: -webkit-flex;
  display: flex;
  position: relative;
  z-index: 2;
}
@media only screen and (max-width: 767px) {
  .header .gnav-img {
    display: none;
  }
}
.header .gnav-img > div {
  width: calc(100% / 3);
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.side-nav {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  background-color: #fff;
  width: 70px;
  height: 100vh;
}
@media only screen and (max-width: 767px) {
  .side-nav {
    width: 45px;
    height: 400px;
  }
}
.side-nav__logo {
  display: block;
  width: 213px;
  height: 179px;
  background-color: #054688;
  text-align: center;
  padding-top: 40px;
  margin-top: 37px;
}
@media only screen and (max-width: 767px) {
  .side-nav__logo {
    width: 120px;
    height: 80px;
    padding-top: 18px;
    margin-top: 20px;
  }
}
.side-nav__logo img {
  width: 147px;
}
@media only screen and (max-width: 767px) {
  .side-nav__logo img {
    width: 70px;
  }
}
.side-nav__insta {
  margin: 40px 0 0 22px;
  display: inline-block;
}
@media only screen and (max-width: 767px) {
  .side-nav__insta {
    margin: 20px 0 0 13px;
  }
}
.side-nav__insta img {
  width: 24px;
}
@media only screen and (max-width: 767px) {
  .side-nav__insta img {
    width: 18px;
  }
}
.side-nav__scroll {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
  bottom: 30px;
  padding-bottom: 40px;
}
@media only screen and (max-width: 767px) {
  .side-nav__scroll {
    bottom: 20px;
    padding-bottom: 32px;
  }
}
.side-nav__scroll:after {
  content: "";
  width: 10px;
  height: 20px;
  background-image: url(../images/common/ico-arrow3-blue.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
  bottom: 0;
  animation: arrowmove 1s ease-in-out infinite;
}

@keyframes arrowmove {
  0% {
    bottom: 0;
  }
  50% {
    bottom: -10px;
  }
  100% {
    bottom: 0;
  }
}
.side-nav__scroll img {
  width: 11px;
}

.breadcrumbs-box {
  background-color: white;
  padding: 19px 0 35px;
}
@media only screen and (max-width: 767px) {
  .breadcrumbs-box {
    padding: 15px 0;
  }
}

ul.breadcrumbs {
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  margin: 0 auto 0;
  padding: 0 30px;
  position: relative;
  max-width: 1060px;
}
@media only screen and (max-width: 767px) {
  ul.breadcrumbs {
    margin: 0 auto 0;
    margin-left: 0;
    padding: 0 18px;
  }
}
ul.breadcrumbs li {
  display: inline-block;
}
ul.breadcrumbs li:last-child {
  display: inline;
  line-height: 1.5;
}
ul.breadcrumbs li:not(:last-child) {
  padding-right: 28px;
  position: relative;
  /* IE11  */
  /* Edge(Chromium) */
}
@media only screen and (max-width: 767px) {
  ul.breadcrumbs li:not(:last-child) {
    padding-right: 22px;
  }
}
ul.breadcrumbs li:not(:last-child)::before {
  content: "";
  border-top: 1px solid #707070;
  border-right: 1px solid #707070;
  position: absolute;
  width: 5px;
  height: 5px;
  top: 4px;
  right: 10px;
  transform: rotate(45deg);
}
@media only screen and (max-width: 767px) {
  ul.breadcrumbs li:not(:last-child)::before {
    width: 4px;
    height: 4px;
    top: 5px;
    right: 8px;
  }
}
ul.breadcrumbs li:not(:last-child) _:lang(x)::-ms-backdrop,
ul.breadcrumbs li:not(:last-child):before {
  top: 2px;
}
ul.breadcrumbs li:not(:last-child) _:lang(x)::-ms-,
ul.breadcrumbs li:not(:last-child) em {
  top: 4px;
}
ul.breadcrumbs li a,
ul.breadcrumbs li span {
  color: #707070;
  font-size: 13px;
}

.c-btn > a,
.c-btn .txt {
  min-width: 320px;
  display: inline-block;
  height: 60px;
  background-color: #054688;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  font-family: "Arial", "メイリオ";
  color: #fff;
  text-align: center;
  padding: 24px 10px 0;
  position: relative;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  .c-btn > a,
  .c-btn .txt {
    min-width: 265px;
    height: 50px;
    font-size: 15px;
    font-size: 1.5rem;
    padding: 18px 10px 0;
  }
}
.c-btn > a:before,
.c-btn .txt:before {
  content: "";
  position: absolute;
  top: 0;
  left: -75%;
  width: 50%;
  height: 100%;
  background: linear-gradient(
    to right,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 0.3) 100%
  );
  transform: skewX(-25deg);
}

@keyframes shine {
  100% {
    left: 125%;
  }
}
.c-btn > a:after,
.c-btn .txt:after {
  content: "";
  width: 15px;
  height: 8px;
  background-image: url(../images/common/ico-arrow3-white.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 26px;
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}
@media only screen and (max-width: 767px) {
  .c-btn > a:after,
  .c-btn .txt:after {
    right: 16px;
  }
}
@media only screen and (min-width: 768px) {
  .c-btn > a:hover:before,
  .c-btn .txt:hover:before {
    animation: shine 0.7s;
  }
  .c-btn > a:hover:after,
  .c-btn .txt:hover:after {
    right: 20px;
  }
}

.c-header-reservation {
  display: inline-block;
  width: 220px;
  height: 46px;
  border: #fff solid 2px;
  border-radius: 46px;
  text-align: center;
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
    "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "Noto Serif JP", serif;
  color: #fff;
  padding-top: 13px;
  position: relative;
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}
@media only screen and (max-width: 767px) {
  .c-header-reservation {
    width: 148px;
    height: 38px;
    border-radius: 38px;
    font-size: 14px;
    font-size: 1.4rem;
    text-align: left;
    padding: 11px 0 0 12px;
  }
}
.c-header-reservation:hover {
  color: #054688;
  background: #fff;
}
.c-header-reservation:hover:after {
  background-image: url(../images/common/ico-triangle-blue.svg);
}
.c-header-reservation:after {
  content: "";
  width: 7.5px;
  height: 12px;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url(../images/common/ico-triangle-white.svg);
  background-position: center;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 20px;
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}
@media only screen and (max-width: 767px) {
  .c-header-reservation:after {
    right: 14px;
  }
}

/*
* === RADIO ===
*/
.radio-row {
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}
@media only screen and (max-width: 767px) {
  .radio-row {
    margin-top: 10px;
  }
}
@media only screen and (min-width: 768px) {
  .radio-row.duo {
    padding-left: 30px;
  }
}
.radio-row.duo .checkerradio {
  width: auto;
}
@media only screen and (min-width: 768px) {
  .radio-row.duo .checkerradio:nth-child(odd) {
    width: 133px;
  }
}
@media only screen and (max-width: 767px) {
  .radio-row.duo .checkerradio {
    width: 122px;
  }
}
@media only screen and (max-width: 767px) {
  .radio-row.duo .radio-style {
    width: 100%;
  }
}

.checkerradio {
  display: inline-block;
  position: relative;
  height: 24px;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-align-items: center;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  .checkerradio {
    width: 100%;
  }
}
.checkerradio label {
  display: inline-block;
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.05em;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  padding-left: 34px;
  white-space: nowrap;
  cursor: pointer;
}
@media all and (-ms-high-contrast: none) {
  .checkerradio label {
    padding-top: 6px;
  }
}
@media only screen and (max-width: 767px) {
  .checkerradio label {
    padding-left: 33px;
    top: 2px;
  }
}
.checkerradio input[type="radio"],
.checkerradio input[type="checkbox"] {
  background: transparent;
  outline: none;
  margin: auto;
  height: 100%;
  width: 100%;
  position: absolute;
  z-index: 1;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-appearance: none;
  border-radius: 0;
  border: none;
}
.checkerradio input[type="radio"]::-ms-check,
.checkerradio input[type="checkbox"]::-ms-check {
  display: none;
}
.checkerradio.check-style .check:checked ~ .effec {
  border: 1px solid #054688;
}
.checkerradio.check-style .check:checked ~ .effec:after {
  opacity: 1;
}
.checkerradio.check-style .effec {
  border: 1px solid #969696;
  border-radius: 3px;
  pointer-events: none;
  overflow: hidden;
  margin: 0 auto;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  height: 20px;
  width: 20px;
  z-index: 10;
  cursor: pointer;
}
.checkerradio.check-style .effec:after {
  background: transparent url(../images/contact/check.svg) center/13px 11px
    no-repeat;
  content: "";
  display: inline-block;
  opacity: 0;
  position: absolute;
  right: 0px;
  top: 0;
  transition: all 0.3s;
  height: 100%;
  width: 100%;
  z-index: 2;
}

body.cms.single section.article {
  margin-top: 95px;
}
@media only screen and (max-width: 767px) {
  body.cms.single section.article {
    margin-top: 80px;
  }
}

body.cms.single .upper {
  font-family: "Arial", "メイリオ";
  letter-spacing: 0.1em;
  margin-bottom: 39px;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-align-items: center;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  body.cms.single .upper {
    margin-bottom: 22px;
  }
}
body.cms.single .upper .date {
  color: #919191;
  font-size: 15px;
  font-size: 1.5rem;
  margin-right: 20px;
}
body.cms.single .upper .category {
  color: #222443;
  font-size: 15px;
  font-size: 1.5rem;
}

body.cms.single .article-title {
  font-size: 30px;
  font-size: 3rem;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-weight: 500;
  letter-spacing: 0.06em;
  line-height: 1.533;
  text-align: left;
  margin-bottom: 48px;
}
@media only screen and (max-width: 767px) {
  body.cms.single .article-title {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.5;
    text-align: justify;
    margin-bottom: 32px;
  }
}

body.cms.single .main-content {
  width: 70%;
}
@media only screen and (max-width: 767px) {
  body.cms.single .main-content {
    width: 100%;
  }
}

body.cms.single article.cms-article {
  position: relative;
  z-index: 2;
}
body.cms.single article.cms-article .main-img {
  margin-bottom: 80px;
  position: relative;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  body.cms.single article.cms-article .main-img {
    margin-bottom: 60px;
  }
}
body.cms.single article.cms-article .cms-article-content {
  /* IE11  */
}
body.cms.single article.cms-article .cms-article-content .margin-holder {
  height: 1px;
}
body.cms.single article.cms-article .cms-article-content .wp-caption {
  max-width: 100%;
}
body.cms.single article.cms-article .cms-article-content img {
  margin-bottom: 48px;
  max-width: 100%;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  body.cms.single article.cms-article .cms-article-content img {
    margin-bottom: 27px;
  }
}
body.cms.single article.cms-article .cms-article-content iframe {
  margin-bottom: 20px;
  height: 382px;
  max-height: 382px;
  width: 100%;
}
@media only screen and (max-width: 1090px) {
  body.cms.single article.cms-article .cms-article-content iframe {
    height: 315px;
  }
}
@media only screen and (max-width: 767px) {
  body.cms.single article.cms-article .cms-article-content iframe {
    max-width: 100%;
    height: auto;
  }
}
body.cms.single article.cms-article .cms-article-content h3 {
  border-top: 1px solid #222443;
  border-bottom: 1px solid #222443;
  color: #222443;
  font-size: 26px;
  font-size: 2.6rem;
  font-weight: 500;
  letter-spacing: 0.15em;
  line-height: 1.4615;
  margin-bottom: 40px;
  padding: 16px 20px 16px 57px;
  position: relative;
  text-align: left;
}
@media only screen and (max-width: 767px) {
  body.cms.single article.cms-article .cms-article-content h3 {
    padding: 15px 20px 15px 48px;
    font-size: 20px;
    font-size: 2rem;
    text-align: justify;
  }
}
body.cms.single article.cms-article .cms-article-content h3:before {
  background-image: url("../images/common/ico-arw1.svg");
  background-size: cover;
  content: "";
  margin: 0 auto;
  position: absolute;
  left: 20px;
  top: 29px;
  height: 9px;
  width: 17px;
}
@media only screen and (max-width: 767px) {
  body.cms.single article.cms-article .cms-article-content h3:before {
    top: 24px;
  }
}
body.cms.single article.cms-article .cms-article-content h4 {
  color: #054688;
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 1.72;
  padding-left: 39px;
  padding: 0 21px;
  position: relative;
  margin-bottom: 30px;
  text-align: left;
}
@media only screen and (max-width: 767px) {
  body.cms.single article.cms-article .cms-article-content h4 {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
body.cms.single article.cms-article .cms-article-content h4:before {
  border-left: 1px solid #054688;
  content: "";
  margin: 0 auto;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  height: calc(100% - 17px);
  width: 1px;
}
body.cms.single article.cms-article .cms-article-content h5 {
  border: 2px solid #054688;
  border-radius: 200px;
  color: #054688;
  font-size: 20px;
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.7;
  padding: 16px 30px 16px 62px;
  margin-bottom: 30px;
  position: relative;
  text-align: left;
}
@media only screen and (max-width: 767px) {
  body.cms.single article.cms-article .cms-article-content h5 {
    font-size: 15px;
    font-size: 1.5rem;
    padding: 16px 30px 16px 53px;
  }
}
body.cms.single article.cms-article .cms-article-content h5:before {
  background-image: url("../images/common/ico-arw1.svg");
  background-size: 16px 9px;
  content: "";
  margin: 0 auto;
  position: absolute;
  left: 30px;
  top: 27px;
  height: 9px;
  width: 16px;
}
@media only screen and (max-width: 767px) {
  body.cms.single article.cms-article .cms-article-content h5:before {
    top: 23px;
    left: 25px;
  }
}
body.cms.single article.cms-article .cms-article-content p {
  font-size: 15px;
  font-size: 1.5rem;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  letter-spacing: 0.1em;
  padding-bottom: 46px;
  line-height: 2.1428;
  text-align: justify;
}
@media only screen and (max-width: 767px) {
  body.cms.single article.cms-article .cms-article-content p {
    padding-bottom: 50px;
  }
}
body.cms.single article.cms-article .cms-article-content p b,
body.cms.single article.cms-article .cms-article-content p strong {
  font-weight: bold;
}
body.cms.single article.cms-article .cms-article-content a {
  border-bottom: 1px solid #ceab74;
  color: #ceab74;
  font-weight: bold;
  padding-bottom: 1px;
}
@media only screen and (min-width: 768px) {
  body.cms.single article.cms-article .cms-article-content a {
    cursor: pointer;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
  }
  body.cms.single article.cms-article .cms-article-content a:hover {
    opacity: 0.7;
  }
}
@media only screen and (max-width: 767px) {
  body.cms.single article.cms-article .cms-article-content a {
    padding-bottom: 2px;
  }
}
body.cms.single
  article.cms-article
  .cms-article-content
  _:lang(x)::-ms-backdrop,
body.cms.single article.cms-article .cms-article-content a {
  border-bottom: none;
  text-decoration: underline;
}
body.cms.single article.cms-article .cms-article-content .box,
body.cms.single article.cms-article .cms-article-content blockquote {
  background-color: #f4f4f4;
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.1em;
  margin-bottom: 50px;
  padding: 40px;
  text-align: left;
}
@media only screen and (max-width: 767px) {
  body.cms.single article.cms-article .cms-article-content .box,
  body.cms.single article.cms-article .cms-article-content blockquote {
    margin-bottom: 40px;
    text-align: justify;
    padding: 29px;
  }
}
body.cms.single article.cms-article .cms-article-content .box p,
body.cms.single article.cms-article .cms-article-content blockquote p {
  margin-top: 0;
  padding-top: 0;
}
body.cms.single article.cms-article .cms-article-content .box p:last-child,
body.cms.single
  article.cms-article
  .cms-article-content
  blockquote
  p:last-child {
  padding: 0;
}
body.cms.single
  article.cms-article
  .cms-article-content
  span[style*="text-decoration: underline"] {
  background: url("../images/cms/em.png") bottom left/auto 7px repeat-x;
  background-position: center bottom 2px;
  padding-bottom: 3px;
  text-decoration: none !important;
}
@media only screen and (max-width: 767px) {
  body.cms.single
    article.cms-article
    .cms-article-content
    span[style*="text-decoration: underline"] {
    background: url("../images/cms/em.png") center left/auto 7px repeat-x;
    background-position: center bottom 0px;
    padding-bottom: 3px;
  }
}
body.cms.single article.cms-article .cms-article-content em {
  font-style: italic;
}
body.cms.single article.cms-article .cms-article-content ol {
  list-style: decimal inside;
}
body.cms.single article.cms-article .cms-article-content ul {
  list-style: disc inside;
}
body.cms.single article.cms-article .cms-article-content table,
body.cms.single article.cms-article .cms-article-content th,
body.cms.single article.cms-article .cms-article-content td {
  border: none;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body.contact .align-center {
  text-align: center;
}

body.contact p.reg-txt {
  font-size: 15px;
  font-size: 1.5rem;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  letter-spacing: 0.1em;
  line-height: 2.133;
}
@media only screen and (max-width: 767px) {
  body.contact p.reg-txt {
    line-height: 1.866;
  }
}

body.contact .ttl-cont-01 {
  position: relative;
  height: 60px;
}
@media only screen and (min-width: 768px) {
  body.contact .ttl-cont-01 {
    border: 1px solid #054688;
    background-color: white;
    max-width: 1000px;
    width: calc(100% - 50px);
    margin: 0 auto;
  }
}
@media only screen and (max-width: 767px) {
  body.contact .ttl-cont-01 {
    background-image: url("../images/contact/bg.png");
    background-size: cover;
    height: 80px;
    width: calc(100% - 15px);
  }
}
body.contact .ttl-cont-01 span.ja {
  background-size: cover;
  background-image: url("../images/contact/detail.jpg");
  color: white;
  font-size: 26px;
  font-size: 2.6rem;
  letter-spacing: 0.15em;
  padding-left: 35px;
  height: 100%;
  width: 790px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}
@media only screen and (max-width: 767px) {
  body.contact .ttl-cont-01 span.ja {
    background-image: url("../images/contact/detail_sp.png");
    background-position: right;
    font-size: 22px;
    font-size: 2.2rem;
    letter-spacing: 0.1em;
    padding-left: 25px;
    height: 50px;
    width: 360px;
  }
}
@media only screen and (max-width: 767px) {
  body.contact .ttl-cont-01.db {
    background-position: center right;
    height: 105px;
  }
}
@media only screen and (max-width: 767px) {
  body.contact .ttl-cont-01.db span.ja {
    background-image: url("../images/contact/detail_sp_db.png");
    line-height: 1.2;
    height: 75px;
  }
}
body.contact .ttl-cont-01 span.en {
  color: #054688;
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.15em;
  margin: 0 auto;
  position: absolute;
  right: 30px;
}
@media only screen and (min-width: 768px) {
  body.contact .ttl-cont-01 span.en {
    top: 50%;
    transform: translateY(-50%);
  }
}
@media only screen and (max-width: 767px) {
  body.contact .ttl-cont-01 span.en {
    font-size: 16px;
    font-size: 1.6rem;
    position: static;
    padding-left: 25px;
    height: 30px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
  }
}

body.contact .ttl-cont-02 {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}
@media only screen and (max-width: 767px) {
  body.contact .ttl-cont-02 {
    flex-direction: column;
    -webkit-justify-content: center;
    justify-content: center;
  }
}
body.contact .ttl-cont-02 span.en {
  background-color: #054688;
  color: white;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 0.15em;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  height: 40px;
  width: 145px;
}
@media only screen and (max-width: 767px) {
  body.contact .ttl-cont-02 span.en {
    font-size: 16px;
    font-size: 1.6rem;
    height: 34px;
    width: 100%;
  }
}
body.contact .ttl-cont-02 span.ja {
  color: #054688;
  font-size: 22px;
  font-size: 2.2rem;
  letter-spacing: 0.1em;
  padding-left: 20px;
}
@media only screen and (max-width: 767px) {
  body.contact .ttl-cont-02 span.ja {
    display: inline-block;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.555;
    padding-top: 18px;
    text-align: center;
    padding-left: 0px;
    width: 100%;
  }
}

body.contact .ttl-cont-03 {
  color: #054688;
  font-size: 22px;
  font-size: 2.2rem;
  letter-spacing: 0.1em;
  position: relative;
  padding-left: 24px;
}
@media only screen and (max-width: 767px) {
  body.contact .ttl-cont-03 {
    font-size: 18px;
    font-size: 1.8rem;
    padding-left: 24px;
  }
}
body.contact .ttl-cont-03:before {
  background-color: #054688;
  content: "";
  margin: 0 auto;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  height: 24px;
  width: 1px;
}
@media only screen and (max-width: 767px) {
  body.contact .ttl-cont-03:before {
    height: 18px;
  }
}

body.contact .list-01 {
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}
body.contact .list-01 li {
  background-color: white;
  border: 1px solid #e2e2e2;
  position: relative;
  width: calc((100% - 16px) / 3);
  color: #121755;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 0.1em;
}
@media only screen and (min-width: 768px) {
  body.contact .list-01 li {
    margin-right: 8px;
  }
  body.contact .list-01 li:nth-child(1),
  body.contact .list-01 li:nth-child(2),
  body.contact .list-01 li:nth-child(3) {
    margin-bottom: 8px;
  }
}
@media only screen and (min-width: 768px) and (min-width: 768px) {
  body.contact .list-01 li:nth-child(2) {
    cursor: pointer;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
  }
  body.contact .list-01 li:nth-child(2):hover {
    opacity: 0.7;
  }
}
@media only screen and (min-width: 768px) {
  body.contact .list-01 li:nth-child(3) {
    margin-right: 0px;
  }
}
body.contact .list-01 li.reg {
  padding-left: 69px;
  height: 88px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}
@media only screen and (max-width: 767px) {
  body.contact .list-01 li.reg {
    padding-left: 55px;
    height: 60px;
  }
}
@media only screen and (max-width: 767px) {
  body.contact .list-01 li {
    margin-bottom: 9px;
    width: 100%;
  }
}
body.contact .list-01 li .arrow {
  border-right: 2px solid #ceab74;
  border-bottom: 2px solid #ceab74;
  content: "";
  margin: 0 auto;
  position: absolute;
  right: 30px;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  height: 10px;
  width: 10px;
}
body.contact .list-01 li a {
  padding-left: 69px;
  height: 88px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}
@media only screen and (max-width: 767px) {
  body.contact .list-01 li a {
    padding-left: 55px;
    height: 60px;
  }
}
@media only screen and (max-width: 767px) {
  body.contact .list-01 li {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 768px) {
  body.contact .list-01 li p {
    line-height: 1.2;
  }
}
@media only screen and (min-width: 768px) {
  body.contact .list-01 li .sml {
    font-size: 15px;
    font-size: 1.5rem;
  }
}
@media only screen and (max-width: 767px) {
  body.contact .list-01 li .sml {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
body.contact .list-01 li .numb {
  font-size: 26px;
  font-size: 2.6rem;
  letter-spacing: 0.15em;
  margin: 0 auto;
  position: absolute;
  left: 23px;
  top: 50%;
  transform: translateY(-50%);
}
@media only screen and (max-width: 767px) {
  body.contact .list-01 li .numb {
    font-size: 20px;
    font-size: 2rem;
  }
}

body.contact .list-02 li {
  background-color: white;
  border: 1px solid #e2e2e2;
  margin-bottom: 7px;
  position: relative;
  width: calc((100% - 7px) / 2);
}
@media only screen and (min-width: 768px) {
  body.contact .list-02 li {
    padding-bottom: 19px;
  }
  body.contact .list-02 li:nth-child(5),
  body.contact .list-02 li:nth-child(6) {
    margin-bottom: 0;
  }
}
@media only screen and (max-width: 767px) {
  body.contact .list-02 li {
    padding-bottom: 10px;
    width: 100%;
  }
  body.contact .list-02 li:last-child {
    margin-bottom: 0;
  }
}
body.contact .list-02 li .up {
  position: relative;
}
body.contact .list-02 li .up .numb {
  color: #ceab74;
  font-size: 26px;
  font-size: 2.6rem;
  letter-spacing: 0.1em;
  line-height: 1.4;
  margin: 0 auto;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 31px;
}
@media only screen and (max-width: 767px) {
  body.contact .list-02 li .up .numb {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.4444;
    left: 27px;
  }
}
body.contact .list-02 li .up p {
  color: #121755;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 0.1em;
  line-height: 1.4;
  padding-left: 70px;
  height: 91px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  flex-wrap: nowrap;
}
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
  body.contact .list-02 li .up p .n-wrap {
    white-space: nowrap;
  }
}
@media only screen and (max-width: 767px) {
  body.contact .list-02 li .up p {
    padding-right: 15px;
    padding-left: 51px;
    font-size: 18px;
    font-size: 1.8rem;
    flex-direction: column;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-justify-content: center;
    justify-content: center;
  }
}
@media only screen and (min-width: 768px) {
  body.contact .list-02 li .up p.big {
    height: 111px;
  }
}
body.contact .list-02 li .up p .sml1 {
  color: #121755;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: 0.08em;
  line-height: 1.4;
  margin-left: 18px;
}
@media only screen and (max-width: 767px) {
  body.contact .list-02 li .up p .sml1 {
    letter-spacing: 0.1em;
    margin-left: 0px;
    padding-left: 17px;
    position: relative;
  }
  body.contact .list-02 li .up p .sml1 span {
    margin: 0 auto;
    position: absolute;
    left: 0;
    top: 0%;
  }
}
body.contact .list-02 li .up p .sml2 {
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.1em;
  line-height: 1.466;
}
@media only screen and (max-width: 767px) {
  body.contact .list-02 li .up p .sml2 {
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0.1em;
    line-height: 1.428;
  }
}
body.contact .list-02 li .lower {
  background-color: #121755;
  color: white;
  font-size: 15px;
  font-size: 1.5rem;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  letter-spacing: 0.1em;
  margin: 0 auto;
  bottom: 20px;
  height: 29px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
}
@media only screen and (max-width: 767px) {
  body.contact .list-02 li .lower {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
body.contact .list-02 li .lower span {
  font-size: 12px;
  font-size: 1.2rem;
}
@media only screen and (max-width: 767px) {
  body.contact .list-02 li:nth-child(1) p {
    height: 84px;
  }
  body.contact .list-02 li:nth-child(2) p {
    height: 60px;
  }
  body.contact .list-02 li:nth-child(3) p {
    height: 106px;
  }
  body.contact .list-02 li:nth-child(4) p {
    height: 60px;
  }
  body.contact .list-02 li:nth-child(5) .numb {
    top: 39px;
    transform: translateY(0%);
  }
  body.contact .list-02 li:nth-child(5) p {
    height: 123px;
  }
  body.contact .list-02 li:nth-child(6) p {
    height: 60px;
  }
}

body.contact .scroll-box {
  overflow-x: scroll;
}
body.contact .scroll-box img {
  height: 400px;
  max-width: none;
}

body.contact .btn-line {
  text-align: center;
  margin-top: 22px;
}
body.contact .btn-line a {
  background-color: #00b900;
  margin: 0 auto;
}
body.contact .btn-line img {
  margin-top: -3px;
  margin-right: 10px;
  width: 21px;
}
body.contact .btn-line span {
  position: relative;
  top: -3px;
}

body.contact .anchor {
  position: relative;
  top: -94px;
}
@media only screen and (max-width: 767px) {
  body.contact .anchor {
    top: -34px;
  }
}

body.form section.form {
  padding-bottom: 200px;
}
@media only screen and (max-width: 767px) {
  body.form section.form {
    padding-bottom: 160px;
    overflow: hidden;
  }
}
body.form section.form .form-wrap {
  padding: 0 60px;
}
@media only screen and (max-width: 767px) {
  body.form section.form .form-wrap {
    padding: 0;
  }
}
@media only screen and (min-width: 768px) {
  body.form section.form ul.steps {
    -webkit-align-items: center;
    align-items: center;
  }
}
@media only screen and (max-width: 767px) {
  body.form section.form ul.steps {
    padding: 0 14px;
  }
}
body.form section.form ul.steps li.item {
  color: #969696;
  -webkit-align-items: center;
  align-items: center;
  position: relative;
}
@media only screen and (max-width: 767px) {
  body.form section.form ul.steps li.item {
    flex-direction: column;
  }
}
body.form section.form ul.steps li.item .order {
  border: 1px solid #969696;
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.15em;
  text-align: center;
  height: 70px;
  width: 70px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  flex-direction: column;
}
@media only screen and (max-width: 767px) {
  body.form section.form ul.steps li.item .order {
    font-size: 10px;
    font-size: 1rem;
    height: 50px;
    width: 50px;
  }
}
body.form section.form ul.steps li.item .order .numb {
  display: inline-block;
  font-size: 28px;
  font-size: 2.8rem;
  letter-spacing: 0.15em;
  margin-top: 5px;
  position: relative;
  left: 2px;
}
@media only screen and (max-width: 767px) {
  body.form section.form ul.steps li.item .order .numb {
    font-size: 22px;
    font-size: 2.2rem;
    margin-top: 3px;
  }
}
body.form section.form ul.steps li.item .txt {
  font-size: 22px;
  font-size: 2.2rem;
  letter-spacing: 0.1em;
  margin-left: 30px;
}
@media only screen and (max-width: 767px) {
  body.form section.form ul.steps li.item .txt {
    font-size: 16px;
    font-size: 1.6rem;
    margin-left: 0px;
    margin-top: 9px;
  }
}
body.form section.form ul.steps li.item.active:before {
  background-image: url("../images/common/ico-arw1.svg");
}
body.form section.form ul.steps li.item.active .order {
  background-color: #121755;
  border: 1px solid #121755;
  color: #ceab74;
}
body.form section.form ul.steps li.item.active .txt {
  color: #121755;
}
body.form section.form ul.steps .arrow {
  width: 16px;
}
@media only screen and (max-width: 767px) {
  body.form section.form ul.steps .arrow {
    margin-top: 15px;
  }
}

body.form table {
  border-top: 1px dashed #e2e2e2;
  margin-bottom: 60px;
  margin-top: 80px;
  width: 100%;
}
@media all and (-ms-high-contrast: none) {
  body.form table {
    table-layout: fixed;
  }
}
@media only screen and (max-width: 767px) {
  body.form table {
    margin-bottom: 40px;
    margin-top: 30px;
  }
}
body.form table tr {
  border-bottom: 1px dashed #e2e2e2;
}
body.form table tr th {
  padding: 38px 0;
  vertical-align: text-top;
  width: 252px;
}
@media only screen and (max-width: 767px) {
  body.form table tr th {
    display: block;
    padding: 20px 0 12px;
    width: 100%;
  }
}
@media only screen and (min-width: 768px) {
  body.form table tr th.top {
    padding-top: 33px;
    vertical-align: top;
  }
}
body.form table tr th .th-txt {
  -webkit-align-items: center;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  body.form table tr th .th-txt {
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
  }
}
body.form table tr th .th-ttl {
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 767px) {
  body.form table tr th .th-ttl {
    font-size: 15px;
    font-size: 1.5rem;
  }
}
body.form table tr th em {
  color: white;
  display: inline-block;
  font-size: 15px;
  font-size: 1.5rem;
  font-family: "Arial", "メイリオ";
  letter-spacing: 0.1em;
  transition: all 0.3s;
  text-align: center;
  height: 23px;
  width: 60px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
}
@media only screen and (max-width: 767px) {
  body.form table tr th em {
    font-size: 12px;
    font-size: 1.2rem;
    margin-left: 13px;
    height: 20px;
    width: 50px;
  }
}
body.form table tr th .req {
  background-color: #ceab74;
}
body.form table tr th .nreq {
  background-color: #707070;
}
body.form table tr td {
  padding: 20px 0 20px 30px;
  width: calc(100% - 252px);
}
@media only screen and (max-width: 767px) {
  body.form table tr td {
    display: block;
    padding: 0 0 20px;
    width: 100%;
  }
}
@media only screen and (min-width: 768px) {
  body.form table tr td.top {
    padding-right: 0;
  }
}
body.form table tr td input[type="email"],
body.form table tr td input[type="text"] {
  background-color: #f4f4f4;
  border-radius: 0;
  border: none;
  font-size: 15px;
  font-size: 1.5rem;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  letter-spacing: 0.1em;
  line-height: 1;
  padding: 0 20px;
  height: 60px;
  width: 100%;
  -webkit-appearance: none;
}
@media only screen and (max-width: 767px) {
  body.form table tr td input[type="email"],
  body.form table tr td input[type="text"] {
    padding: 0 12px;
    height: 50px;
    width: 100%;
  }
}
body.form table tr td textarea {
  background-color: #f4f4f4;
  border-radius: 0;
  border: none;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: 400;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  line-height: 28px;
  padding: 16px 30px;
  height: 250px;
  width: 100%;
  -webkit-appearance: none;
  resize: none;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  body.form table tr td textarea {
    line-height: 2;
    margin: 0;
    padding: 10px 12px;
  }
}
body.form table tr td input[type="email"]::placeholder,
body.form table tr td input[type="text"]::placeholder,
body.form table tr td textarea::placeholder {
  color: #969696;
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.1em;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  position: relative;
}
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
  body.form table tr td input[type="email"]::placeholder,
  body.form table tr td input[type="text"]::placeholder,
  body.form table tr td textarea::placeholder {
    padding-top: 4px;
  }
}

body.form #send-bt {
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  position: relative;
}
body.form #send-bt input[type="submit"] {
  background-color: transparent;
  border: none;
  cursor: pointer;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  outline: none;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 10;
}
body.form #send-bt .txt {
  font-family: "Arial", "メイリオ";
}
@media only screen and (min-width: 768px) {
  body.form #send-bt:hover .txt:before {
    animation: shine 0.7s;
  }
  body.form #send-bt:hover .txt:after {
    right: 20px;
  }
}

body.form .btn-correct {
  border-bottom: 1px solid #054688;
  color: #054688;
  display: inline-block;
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
  margin: 0 auto 40px;
  padding: 40px 0 5px;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  body.form .btn-correct {
    cursor: pointer;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
  }
  body.form .btn-correct:hover {
    opacity: 0.7;
  }
}
@media only screen and (max-width: 767px) {
  body.form .btn-correct {
    font-size: 16px;
    font-size: 1.6rem;
    padding: 30px 0 3px;
  }
}

body.form .formError {
  z-index: 90 !important;
}

body.form .formError .formErrorContent,
body.form .formError .formErrorArrow div {
  background: black !important;
}

body.form .display-none {
  opacity: 0 !important;
}

body.form .display-none {
  display: none !important;
}

body.form.confirm {
  background-color: #fff;
}
body.form.confirm .steps {
  margin-top: 100px;
}
@media only screen and (max-width: 767px) {
  body.form.confirm .steps {
    margin-top: 58px;
  }
}
body.form.confirm table th {
  line-height: 1.5;
}
body.form.confirm table td {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.5;
}
@media only screen and (min-width: 768px) {
  body.form.confirm table td {
    padding: 33px 0;
  }
}
body.form.confirm table td.long-txt {
  position: relative;
  padding-top: 5px !important;
  white-space: pre-line;
  /* Safari 7.1+ */
}
@media only screen and (max-width: 767px) {
  body.form.confirm table td.long-txt {
    padding-top: 0;
  }
  body.form.confirm table td.long-txt span {
    display: block;
    position: relative;
  }
}
@media not all and (min-resolution: 0.001dpcm) {
  @supports (-webkit-appearance: none) {
    body.form.confirm table td.long-txt {
      white-space: normal;
    }
  }
}

body.form.complete {
  background-color: #fff;
}
body.form.complete main section.form .inner {
  max-width: 880px;
}
body.form.complete main .steps {
  margin-top: 80px;
  margin-bottom: 80px;
}
@media only screen and (max-width: 767px) {
  body.form.complete main .steps {
    margin-top: 50px;
    margin-bottom: 38px;
  }
}
body.form.complete main p.reg-txt {
  margin: 50px auto 54px;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 2.13333;
  max-width: 1000px;
  text-align: left;
}
@media only screen and (max-width: 767px) {
  body.form.complete main p.reg-txt {
    line-height: 1.733;
    margin: 40px auto 34px;
    text-align: justify;
  }
}

.ttl-01 {
  text-align: center;
}
.ttl-01 .en {
  color: #ceab74;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: 0.1em;
}
@media only screen and (max-width: 767px) {
  .ttl-01 .en {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
.ttl-01 .ja {
  display: inline-block;
  font-size: 38px;
  font-size: 3.8rem;
  font-weight: 500;
  letter-spacing: 0.2em;
  line-height: 1.6842;
  margin-top: 14px;
}
@media only screen and (max-width: 767px) {
  .ttl-01 .ja {
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.666;
    margin-top: 12px;
  }
}

.ttl-02 {
  color: #121755;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}
@media only screen and (max-width: 767px) {
  .ttl-02 {
    display: block;
  }
}
.ttl-02 .en {
  font-size: 30px;
  font-size: 3rem;
  font-weight: 500;
  letter-spacing: 0.2em;
}
@media only screen and (max-width: 767px) {
  .ttl-02 .en {
    font-size: 22px;
    font-size: 2.2rem;
  }
}
.ttl-02 .arrow {
  background-image: url("../images/common/ico-arw1.svg");
  background-size: 16px 9px;
  content: "";
  display: inline-block;
  margin-left: 9px;
  margin-right: 10px;
  height: 9px;
  width: 16px;
}
@media only screen and (max-width: 767px) {
  .ttl-02 .arrow {
    margin-left: 0px;
    margin-right: 10px;
  }
}
.ttl-02 .ja {
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.1em;
}
@media only screen and (max-width: 767px) {
  .ttl-02 .ja {
    display: inline-block;
    font-size: 14px;
    font-size: 1.4rem;
    margin-top: 15px;
  }
}
.ttl-02.vertical {
  display: block;
}
.ttl-02.vertical .arrow {
  margin-left: 0px;
}
.ttl-02.vertical .en {
  display: inline-block;
  padding-bottom: 10px;
}

.ttl-03 {
  color: #121755;
  border-top: 1px solid #121755;
  border-bottom: 1px solid #121755;
  padding: 18px 28px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}
@media only screen and (max-width: 767px) {
  .ttl-03 {
    display: block;
    padding: 18px 15px 15px;
  }
}
.ttl-03 .en {
  font-size: 30px;
  font-size: 3rem;
  font-weight: 500;
  letter-spacing: 0.2em;
  margin-top: 4px;
}
@media only screen and (max-width: 767px) {
  .ttl-03 .en {
    font-size: 22px;
    font-size: 2.2rem;
  }
}
.ttl-03 .arrow {
  background-image: url("../images/common/ico-arw1.svg");
  background-size: 16px 9px;
  content: "";
  display: inline-block;
  margin-left: 21px;
  margin-right: 10px;
  height: 9px;
  width: 16px;
}
@media only screen and (max-width: 767px) {
  .ttl-03 .arrow {
    margin-left: 0px;
    margin-right: 10px;
  }
}
.ttl-03 .ja {
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.1em;
}
@media only screen and (max-width: 767px) {
  .ttl-03 .ja {
    display: inline-block;
    font-size: 14px;
    font-size: 1.4rem;
    margin-top: 12px;
  }
}

.ttl-04 {
  color: #121755;
  border-top: 1px solid #121755;
  border-bottom: 1px solid #121755;
  padding: 22px 21px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}
@media only screen and (max-width: 767px) {
  .ttl-04 {
    display: block;
    padding: 18px 46px 15px;
    position: relative;
  }
}
.ttl-04 .en {
  font-size: 26px;
  font-size: 2.6rem;
  font-weight: 500;
  letter-spacing: 0.2em;
}
@media only screen and (max-width: 767px) {
  .ttl-04 .en {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.5;
  }
}
.ttl-04 .arrow {
  background-image: url("../images/common/ico-arw1.svg");
  background-size: 16px 9px;
  content: "";
  display: inline-block;
  margin-right: 20px;
  height: 9px;
  width: 16px;
}
@media only screen and (max-width: 767px) {
  .ttl-04 .arrow {
    margin: 0 auto;
    position: absolute;
    left: 15px;
    top: 29px;
  }
}

.ttl-05 {
  color: #054688;
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 1.72;
  padding-left: 39px;
  padding: 0 21px;
  position: relative;
  margin-bottom: 30px;
  text-align: left;
}
@media only screen and (max-width: 767px) {
  .ttl-05 {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .ttl-05 .ja {
    line-height: 1.4;
  }
}
.ttl-05:before {
  border-left: 1px solid #054688;
  content: "";
  margin: 0 auto;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  height: calc(100% - 17px);
  width: 1px;
}
.ttl-05 .en {
  color: #ceab74;
  display: inline-block;
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.1em;
  margin-left: 33px;
}
@media only screen and (max-width: 767px) {
  .ttl-05 .en {
    font-size: 18px;
    font-size: 1.8rem;
    margin-left: 0;
  }
}
.ttl-05 .red {
  background-color: #eb3247;
  color: white;
  display: inline-block;
  padding: 0px 10px;
  line-height: 1.5;
  margin-left: 12px;
  height: 32px;
}
@media only screen and (max-width: 767px) {
  .ttl-05 .red {
    margin-left: 7px;
    padding: 0px 4px;
    line-height: 1.2;
    height: 20px;
    position: relative;
    top: 1px;
  }
}
.ttl-05 .red .sml {
  font-size: 20px;
  font-size: 2rem;
}
@media only screen and (max-width: 767px) {
  .ttl-05 .red .sml {
    font-size: 15px;
    font-size: 1.5rem;
  }
}

.ttl-06 {
  border: 2px solid #054688;
  border-radius: 200px;
  color: #054688;
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.7;
  padding: 12px 30px 12px 62px;
  margin-bottom: 30px;
  position: relative;
  text-align: left;
}
@media only screen and (max-width: 767px) {
  .ttl-06 {
    font-size: 15px;
    font-size: 1.5rem;
    padding: 15px 30px 11px 53px;
  }
}
.ttl-06:before {
  background-image: url("../images/common/ico-arw1.svg");
  background-size: 16px 9px;
  content: "";
  margin: 0 auto;
  position: absolute;
  left: 30px;
  top: 27px;
  height: 9px;
  width: 16px;
}
@media only screen and (max-width: 767px) {
  .ttl-06:before {
    top: 23px;
    left: 25px;
  }
}

.ttl-07 {
  position: relative;
  height: 60px;
}
@media only screen and (min-width: 768px) {
  .ttl-07 {
    border: 1px solid #054688;
    background-color: white;
    max-width: 1000px;
    margin: 0 auto;
  }
}
@media only screen and (max-width: 767px) {
  .ttl-07 {
    background-image: url("../images/contact/bg.png");
    background-size: cover;
    height: 80px;
  }
}
.ttl-07 span.ja {
  background-size: cover;
  background-image: url("../images/contact/detail.jpg");
  color: white;
  font-size: 26px;
  font-size: 2.6rem;
  letter-spacing: 0.15em;
  padding-left: 35px;
  height: 100%;
  width: 790px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}
@media only screen and (max-width: 767px) {
  .ttl-07 span.ja {
    background-image: url("../images/contact/detail_sp.png");
    background-position: right;
    font-size: 22px;
    font-size: 2.2rem;
    letter-spacing: 0.1em;
    padding-left: 25px;
    height: 50px;
    width: 100%;
  }
}
.ttl-07 span.en {
  color: #054688;
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.15em;
  margin: 0 auto;
  position: absolute;
  right: 30px;
}
@media only screen and (min-width: 768px) {
  .ttl-07 span.en {
    top: 50%;
    transform: translateY(-50%);
  }
}
@media only screen and (max-width: 767px) {
  .ttl-07 span.en {
    font-size: 16px;
    font-size: 1.6rem;
    position: static;
    padding-left: 25px;
    height: 30px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
  }
}

.pagination {
  margin: 0 auto 0;
  position: relative;
  text-align: center;
  display: -webkit-flex;
  display: flex;
  max-width: 1280px;
  width: calc(100% - 80px);
}

.wp-pagenavi {
  font-weight: 500;
  margin: 0 auto;
  text-align: center;
  width: auto;
  z-index: 2;
  display: -webkit-flex;
  display: flex;
}
.wp-pagenavi a,
.wp-pagenavi span {
  background-color: white;
  color: #054688;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 500;
  margin: 0 6px;
  position: relative;
  text-align: center;
  transition: all 0.3s;
  height: 30px;
  width: 30px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
}
@media only screen and (min-width: 768px) {
  .wp-pagenavi a,
  .wp-pagenavi span {
    cursor: pointer;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
  }
  .wp-pagenavi a:hover,
  .wp-pagenavi span:hover {
    opacity: 0.7;
  }
}
.wp-pagenavi a.current,
.wp-pagenavi span.current {
  background-color: #054688;
  color: white;
}
.wp-pagenavi a.current:hover,
.wp-pagenavi span.current:hover {
  opacity: 1;
}
.wp-pagenavi .back,
.wp-pagenavi .next,
.wp-pagenavi .first,
.wp-pagenavi .last {
  background-repeat: no-repeat;
  background-color: transparent;
  background-position: center;
  background-size: 16px 9px;
  border-radius: 0;
  border: none;
  display: inline-block;
  height: 30px;
  width: 16px;
}
@media only screen and (max-width: 767px) {
  .wp-pagenavi .back,
  .wp-pagenavi .next,
  .wp-pagenavi .first,
  .wp-pagenavi .last {
    top: 2px;
  }
}
.wp-pagenavi .first {
  background-image: url("../images/cms/first.svg");
  left: 0px;
  margin-left: 0;
  margin-right: 26px;
}
.wp-pagenavi .last {
  background-image: url("../images/cms/last.svg");
  right: 0px;
  margin-right: 0;
  margin-left: 26px;
}
.wp-pagenavi .dots,
.wp-pagenavi .extend {
  display: none;
}

.single-pagination {
  margin: 0px auto 0;
  position: relative;
  text-align: center;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
}
.single-pagination .main {
  background-color: #054688;
  color: white;
  cursor: pointer;
  display: inline-block;
  font-size: 12px;
  font-size: 1.2rem;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  letter-spacing: 0.08em;
  text-align: center;
  height: 30px;
  width: 180px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
}
@media only screen and (min-width: 768px) {
  .single-pagination .main {
    cursor: pointer;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
  }
  .single-pagination .main:hover {
    opacity: 0.7;
  }
}
.single-pagination .back,
.single-pagination .next,
.single-pagination .first,
.single-pagination .last {
  border: none;
  display: inline-block;
  position: relative;
  top: -1px;
  height: 13px;
  width: 8px;
}
.single-pagination .back.no-display,
.single-pagination .next.no-display,
.single-pagination .first.no-display,
.single-pagination .last.no-display {
  opacity: 0;
  pointer-events: none;
}
.single-pagination .back {
  margin-right: 32px;
}
@media only screen and (max-width: 767px) {
  .single-pagination .back {
    margin-right: 30px;
  }
}
.single-pagination .next {
  margin-left: 32px;
}
@media only screen and (max-width: 767px) {
  .single-pagination .next {
    margin-left: 30px;
  }
}

.cms-sidebar {
  width: 180px;
}
@media only screen and (min-width: 768px) {
  .cms-sidebar {
    margin-bottom: 50px;
  }
}
@media only screen and (max-width: 767px) {
  .cms-sidebar {
    width: 100%;
  }
}
.cms-sidebar .side-element.category {
  margin-bottom: 76px;
}
@media only screen and (max-width: 767px) {
  .cms-sidebar .side-element.category {
    margin-bottom: 35px;
  }
}
.cms-sidebar .ttl-02 {
  border-top: 1px solid #121755;
  border-bottom: 1px solid #121755;
  padding: 14px 0;
}
@media only screen and (max-width: 767px) {
  .cms-sidebar .ttl-02 {
    padding: 17px 0;
    position: relative;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
  }
  .cms-sidebar .ttl-02.is-active .en:before {
    transform: translateY(-50%);
  }
}
.cms-sidebar .ttl-02 .en {
  font-size: 18px;
  font-size: 1.8rem;
  padding-bottom: 6px;
}
@media only screen and (max-width: 767px) {
  .cms-sidebar .ttl-02 .en {
    padding-bottom: 0px;
  }
  .cms-sidebar .ttl-02 .en:before {
    background-color: #121755;
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%) rotate(90deg);
    height: 1px;
    width: 18px;
  }
  .cms-sidebar .ttl-02 .en:after {
    background-color: #121755;
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    height: 1px;
    width: 18px;
  }
}
.cms-sidebar .ttl-02 .ja {
  font-size: 12px;
  font-size: 1.2rem;
}
@media only screen and (max-width: 767px) {
  .cms-sidebar .ttl-02 .ja {
    position: relative;
    top: 0px;
    margin-top: 0;
  }
}
@media only screen and (max-width: 767px) {
  .cms-sidebar .ttl-02 .arrow {
    position: relative;
    top: 1px;
    margin-left: 19px;
    margin-right: 12px;
  }
}
@media only screen and (max-width: 767px) {
  .cms-sidebar .ttl-02.js-toggle-menu:before {
    display: none;
  }
  .cms-sidebar .ttl-02.js-toggle-menu img {
    margin: 0 auto;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    width: 10px;
  }
}
.cms-sidebar .ttl-02.is-active img {
  transform: rotate(180deg) translateY(-50%);
}
.cms-sidebar ul {
  padding: 32px 0 0;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}
@media only screen and (max-width: 767px) {
  .cms-sidebar ul {
    display: none;
    padding: 40px 0 0;
  }
}
.cms-sidebar ul li {
  font-size: 14px;
  font-size: 1.4rem;
  font-family: "Arial", "メイリオ";
  letter-spacing: 0.1em;
  margin-bottom: 15px;
}
@media only screen and (max-width: 767px) {
  .cms-sidebar ul li {
    margin-bottom: 15px;
    width: 100%;
  }
}
.cms-sidebar ul li:last-child {
  margin-bottom: 0;
}

.side-mv {
  margin: 0 0 0 auto;
  position: relative;
  padding-left: 70px;
}
@media only screen and (max-width: 767px) {
  .side-mv {
    padding-left: 40px;
  }
}
.side-mv:before {
  background-color: #fff;
  content: "";
  margin: 0 auto;
  position: absolute;
  left: 70px;
  right: 0;
  bottom: 0;
  height: 50px;
  width: 1px;
}
@media only screen and (max-width: 767px) {
  .side-mv:before {
    left: 40px;
    height: 40px;
  }
}
.side-mv .side-mv-ttl {
  color: white;
  margin: 0 auto;
  position: absolute;
  left: 70px;
  right: 0;
  bottom: 73px;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .side-mv .side-mv-ttl {
    left: 40px;
    bottom: 52px;
  }
}
.side-mv .side-mv-ttl .en {
  font-size: 60px;
  font-size: 6rem;
  text-transform: uppercase;
  letter-spacing: 0.2em;
}
@media only screen and (max-width: 767px) {
  .side-mv .side-mv-ttl .en {
    font-size: 30px;
    font-size: 3rem;
  }
}
.side-mv .side-mv-ttl .ja {
  display: inline-block;
  font-size: 28px;
  font-size: 2.8rem;
  letter-spacing: 0.15em;
  margin-top: 20px;
}
@media only screen and (max-width: 767px) {
  .side-mv .side-mv-ttl .ja {
    font-size: 16px;
    font-size: 1.6rem;
    margin-top: 10px;
  }
}

.side-page .side-nav {
  height: 100%;
}

/* Z-INDEX */
.formError {
  z-index: 990;
}

.formError .formErrorContent {
  z-index: 991;
}

.formError .formErrorArrow {
  z-index: 996;
}

.ui-dialog .formError {
  z-index: 5000;
}

.ui-dialog .formError .formErrorContent {
  z-index: 5001;
}

.ui-dialog .formError .formErrorArrow {
  z-index: 5006;
}

.inputContainer {
  position: relative;
  float: left;
}

.formError {
  position: absolute;
  top: 300px;
  left: 300px;
  display: block;
  cursor: pointer;
  text-align: left;
}

.formError.inline {
  position: relative;
  top: 0;
  left: 0;
  display: inline-block;
}

.ajaxSubmit {
  padding: 20px;
  background: #55ea55;
  border: 1px solid #999;
  display: none;
}

.formError .formErrorContent {
  width: 100%;
  background: #ee0101;
  position: relative;
  color: #fff;
  min-width: 120px;
  font-size: 11px;
  border: 2px solid #ddd;
  box-shadow: 0 0 6px #000;
  -moz-box-shadow: 0 0 6px #000;
  -webkit-box-shadow: 0 0 6px #000;
  -o-box-shadow: 0 0 6px #000;
  padding: 4px 10px 4px 10px;
  border-radius: 6px;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  -o-border-radius: 6px;
}

.formError.inline .formErrorContent {
  box-shadow: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  -o-box-shadow: none;
  border: none;
  border-radius: 0;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  -o-border-radius: 0;
}

.greenPopup .formErrorContent {
  background: #33be40;
}

.blackPopup .formErrorContent {
  background: #393939;
  color: #fff;
}

.formError .formErrorArrow {
  width: 15px;
  margin: -2px 0 0 13px;
  position: relative;
}

body[dir="rtl"] .formError .formErrorArrow,
body.rtl .formError .formErrorArrow {
  margin: -2px 13px 0 0;
}

.formError .formErrorArrowBottom {
  box-shadow: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  -o-box-shadow: none;
  margin: 0px 0 0 12px;
  top: 2px;
}

.formError .formErrorArrow div {
  border-left: 2px solid #ddd;
  border-right: 2px solid #ddd;
  box-shadow: 0 2px 3px #444;
  -moz-box-shadow: 0 2px 3px #444;
  -webkit-box-shadow: 0 2px 3px #444;
  -o-box-shadow: 0 2px 3px #444;
  font-size: 0px;
  height: 1px;
  background: #ee0101;
  margin: 0 auto;
  line-height: 0;
  font-size: 0;
  display: block;
}

.formError .formErrorArrowBottom div {
  box-shadow: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  -o-box-shadow: none;
}

.greenPopup .formErrorArrow div {
  background: #33be40;
}

.blackPopup .formErrorArrow div {
  background: #393939;
  color: #fff;
}

.formError .formErrorArrow .line10 {
  width: 13px;
  border: none;
}

.formError .formErrorArrow .line9 {
  width: 11px;
  border: none;
}

.formError .formErrorArrow .line8 {
  width: 11px;
}

.formError .formErrorArrow .line7 {
  width: 9px;
}

.formError .formErrorArrow .line6 {
  width: 7px;
}

.formError .formErrorArrow .line5 {
  width: 5px;
}

.formError .formErrorArrow .line4 {
  width: 3px;
}

.formError .formErrorArrow .line3 {
  width: 1px;
  border-left: 2px solid #ddd;
  border-right: 2px solid #ddd;
  border-bottom: 0 solid #ddd;
}

.formError .formErrorArrow .line2 {
  width: 3px;
  border: none;
  background: #ddd;
}

.formError .formErrorArrow .line1 {
  width: 1px;
  border: none;
  background: #ddd;
}

.notfound .side-mv {
  background-image: url("../images/column/mv.jpg");
}
@media only screen and (max-width: 767px) {
  .notfound .side-mv {
    background-image: url("../images/column/mv-sp.jpg");
  }
}

.notfound section.content {
  margin: 0 auto;
  padding: 100px 0;
  text-align: center;
  width: 1000px;
}
@media only screen and (max-width: 767px) {
  .notfound section.content {
    padding: 60px 20px 100px;
    width: 100%;
  }
}
@media only screen and (max-width: 320px) {
  .notfound section.content {
    padding: 100px 10px;
  }
}
.notfound section.content p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 2;
}
.notfound section.content .c-btn {
  margin: 24px auto 0;
}
@media only screen and (max-width: 767px) {
  .notfound section.content .c-btn {
    margin: 33px auto 0;
  }
}

/*----------------------------------------------------------------------------------------------------------
FAQ
----------------------------------------------------------------------------------------------------------*/
body.celeb_reborn .celeb_reborncontent .section05.faq  {
  margin-top: 0;
  padding-top: 140px;
  padding-bottom: 100px;
  background-color: #E8EDF0;
}
body.celeb_reborn .celeb_reborncontent .section05.faq .ttl-07 span.ja {
  background-size: cover;
  background-image: url("../images/contact/detail.jpg");
  color: white;
  font-size: 26px;
  font-size: 2.6rem;
  letter-spacing: 0.15em;
  padding-left: 35px;
  height: 100%;
  width: 790px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}
body.celeb_reborn .celeb_reborncontent .section05.faq .ttl-07 .en {
color: #054688;
}
body.celeb_reborn .celeb_reborncontent .section05.faq .ttl-07 {
  border: 1px solid #054688;
}
.faq .section.s_04 {
  width: 80%;
  margin: 0 auto;
}
.faq .s_04 .accordion_one .accordion_header .i_box {
  right: 0;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section05.faq  {
    padding: 80px 0;
  }
  body.celeb_reborn .celeb_reborncontent .section05.faq .ttl-07 span.ja {
    background-image: url("../images/contact/detail_sp.png");
    background-color: #E8EDF0;
    background-position: right;
    font-size: 22px;
    font-size: 2.2rem;
    letter-spacing: 0.1em;
    padding-left: 25px;
    height: 50px;
    width: 100%;
  }
  body.celeb_reborn .celeb_reborncontent .section05.faq .ttl-07 {
    border: none;
    background-image: url(../images/contact/bg.png);
    background-size: cover;
        height: 80px;
        width: calc(100% - -35px);
  }
  .faq .section.s_04 {
    width: 100%;
    margin: 0 auto;
  }
}
.faq .s_04 .accordion_one .accordion_header {
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
.faq .s_04 .accordion_one .accordion_inner p.txt_a_ac {
  padding-top: 10px;
  text-indent: -1em; /* 最初の行のインデント */
  color: #CFA050;
}

/*----------------------------------------------------------------------------------------------------------
追従SNS等ボタン
----------------------------------------------------------------------------------------------------------*/
.sns_fixed {
  text-align: center;
    position: fixed;
    right: 24px;
    bottom: 260px;
    z-index: 900;
    width: 40px;
}
.sns_fixed a {
  display: inline-block;
  transition: .2s;
}
.sns_fixed a:hover {
  opacity: 0.6;
  transition: .2s;
	transform: translateY(-0.1875em);
}
.sns_fixed hr {
  width: 100%;
  margin: 12px 0;
  border-color: #121755;
  background-color: #121755;
  border-top: none;
}
.sns_fixed img{
  width: 100%;  
}
.sp_fix {
  display: none;
}
@media only screen and (max-width: 767px) {
  .sns_fixed {
    display: none;
  }
}
@media only screen and (max-width: 767px) {
  .sp_fix {
    display: flex;
    justify-content: center;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 0 0;
    transition: ease 0.4s;
    z-index: 1000;
    /* transform: translateY(100%); */
  }
  .sp_fix a {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    width: calc((100% - 25%) / 2);
    height: 48px;
    background-color: #121755;
  }
  .sp_fix a img {
    max-height: 100%;
    width: 60%;
  }
  .insta_sp {
    border-right: 1px solid #FFF;
    border-left: 1px solid #FFF;
  }
  .sp_fix a.insta_sp img{
    width: 70%;
  }
  .footer-copyright {
    margin-bottom: 48px;
  }
  .endermologie #pagetop {
    bottom: 100px;
  }
}
/*----------------------------------------------------------------------------------------------------------
新ヘッダー
----------------------------------------------------------------------------------------------------------*/
/* 全体のスタイル */
.gnavi__wrap {
  background-color: none;
  padding-top: 40px;
}

.gnavi__lists {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
}

.gnavi__list {
  position: relative;
}

.gnavi__list > a {
  display: block;
  padding: 10px 20px;
  color: #fff;
  text-decoration: none;
  font-size: 14px;
}

.gnavi__list > a:hover {
  background-color: #054688;
}

/* 2階層目のメニューのスタイル */
.dropdown__lists {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  background-color: #054688;
  padding: 0;
  list-style: none;
  z-index: 1000;
}

.dropdown__list {
  position: relative;
}

.dropdown__list > a {
  display: block;
  padding: 10px 20px;
  color: #fff;
  text-decoration: none;
}

.dropdown__list > a:hover {
  background-color: #054688;
}

/* 3階層目のメニューのスタイル */
.dropdown__lists2 {
  display: none;
  position: absolute;
  top: 0;
  left: 100%;
  background-color: #054688;
  padding: 0;
  list-style: none;
  z-index: 1000;
}

.dropdown__list2 > a {
  display: block;
  padding: 10px 20px;
  color: #fff;
  text-decoration: none;
}

.dropdown__list2 > a:hover {
  background-color: #054688;
}

/* ホバー時に2階層目のメニューを表示 */
.gnavi__list:hover > .dropdown__lists {
  display: block;
}

/* ホバー時に3階層目のメニューを表示 */
.dropdown__list:hover > .dropdown__lists2 {
  display: block;
}

/* 767px以下の表示に対応 */
@media (max-width: 1023px) {
  .gnavi__wrap {
    display: none;
  }
  .header .gnav-toggle {
    display: block;
  }
  .header-nav .c-header-reservation {
    margin-right: 30px;
  }
}

/* 768px以上の表示に対応 */
@media (min-width: 1024px) {
  .gnavi__wrap {
    display: block;
  }
  .header .gnav-toggle {
    display: none;
  }
  .header-nav .c-header-reservation {
    margin-right: 0;
  }
  .gnavi__lists {
    display: flex;
  }

  .gnavi__list {
    position: relative;
    background-color: #054688;
  }

  .gnavi__list > a {
    display: block;
    padding: 10px 14px;
    color: #fff;
    text-decoration: none;
    transition: .2s;
  }

  .gnavi__list > a:hover {
    color: #CFA050;
    transition: .2s;
    transform: translateY(-0.1875em);
  }

  /* 2階層目のメニューのスタイル */
  .dropdown__lists {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    background-color: #444;
    padding: 0;
    list-style: none;
    z-index: 1000;
  }

  .dropdown__list {
    position: relative;
    width: 270px;
    background-color: #054688;
    font-size: 14px;
  }

  .dropdown__list > a {
    display: block;
    padding: 10px 20px;
    color: #fff;
    text-decoration: none;
    background-color: #054688;
    transition: .2s;
  }

  .dropdown__list > a:hover {
    color: #CFA050;
    transition: .2s;
    transform: translateY(-0.1875em);
  }

  /* 3階層目のメニューのスタイル */
  .dropdown__lists2 {
    display: none;
    position: absolute;
    top: 0;
    left: 100%;
    background-color: #054688;
    padding: 0;
    list-style: none;
    z-index: 1000;
    width: 250px;
  }

  .dropdown__list2 > a {
    display: block;
    padding: 10px 20px;
    color: #fff;
    text-decoration: none;
    transition: .2s;
  }

  .dropdown__list2 > a:hover {
    color: #CFA050;
    transition: .2s;
    transform: translateY(-0.1875em);
  }

  /* ホバー時に2階層目のメニューを表示 */
  .gnavi__list:hover > .dropdown__lists {
    display: block;
  }

  /* ホバー時に3階層目のメニューを表示 */
  .dropdown__list:hover > .dropdown__lists2 {
    display: block;
  }
}

.header-main__logo {
  padding-top: 0;
}
.header-main__logo .new_logo{
  width: 50%;
}
.header-main {
  height: 120px;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  .header-main__logo .new_logo{
display: none;
  }
  .header-main {
    height: 70px;
  }
  .header-main__logo {
    padding-top: 12px;
  }
}
.header .gnav-main__right {
  color: #121755;
}
.header .gnav-main__right a {
  display: inline-block;
  width: 100%;
}
.header .gnav-main__right > ul > li:nth-child(n + 2) {
  margin-top: 0;
  padding: 14px 0;
  border-bottom: 1px solid #121755;
}
/* SP */
/* スマホ用縦表示のスタイル */
.accordion_inner_inner {
  padding-top: 8px;
}
.accordion_header, .accordion_header_inner {
  position: relative;
  padding-right: 30px; /* 右側にスペースを確保 */
}

.accordion_header img, .accordion_header_inner img {
  position: absolute;
  right: 10px; /* 右端からの距離を調整 */
  top: 50%;
  transform: translateY(-50%); /* 縦方向の中央に配置 */
  transition: transform 0.3s ease; /* 回転アニメーションを追加 */
}

.accordion_header.open img, .accordion_header_inner.open img {
  transform: translateY(-50%) rotate(180deg); /* 中央配置を維持しつつ回転 */
}


.accordion_inner_inner li {
  text-align: right;
}
.accordion_header,.accordion_header2 {
  font-size: 15px;
  padding-top: 18px;
}
.accordion_one li,.accordion_one2 li{
  font-size: 14px;
  padding: 10px 0;
}

.s_04 .accordion_one span {
  font-size: 22px;
  font-weight: bold;
}
.s_04 .accordion_one {
  max-width: 1024px;
  margin: 0 auto;
}
.s_04 .accordion_one .accordion_header {
  font-size: 15px;
  padding-bottom: 18px;
  text-align: left;
  position: relative;
  z-index: +1;
  cursor: pointer;
  transition-duration: 0.2s;
  border-bottom: 1px solid #121755;
}

.s_04 .accordion_one .accordion_header:hover {
  opacity: 0.8;
}
.s_04 .accordion_one .accordion_header .i_box {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 50%;
  right: 5%;
  width: 30px;
  height: 30px;
  margin-top: -15px;
  box-sizing: border-box;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transform-origin: center center;
  transition-duration: 0.2s;
}
.s_04 .accordion_one .accordion_header.stay .i_box {
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}
.s_04 .accordion_one .accordion_header .i_box .one_i {
  display: block;
  width: 18px;
  height: 18px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transform-origin: center center;
  transition-duration: 0.2s;
  position: relative;
}
.s_04 .accordion_one .accordion_header.stay .i_box .one_i {
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}
.s_04 .accordion_one .accordion_header.stay.open .i_box .one_i {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.s_04 .accordion_one .accordion_header.open .i_box {
  -webkit-transform: rotate(-360deg);
  transform: rotate(-360deg);
}
.s_04 .accordion_one .accordion_header.stay.open .i_box {
  -webkit-transform: rotate(315eg);
  transform: rotate(315deg);
}
.s_04 .accordion_one .accordion_header .i_box .one_i:before,
.s_04 .accordion_one .accordion_header .i_box .one_i:after {
  display: flex;
  content: "";
  background-color: #CFA050;
  border-radius: 0px;
  width: 18px;
  height: 2px;
  position: absolute;
  top: 8px;
  left: 0;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  transform-origin: center center;
}
.s_04 .accordion_one .accordion_header .i_box .one_i:before {
  width: 2px;
  height: 18px;
  top: 0;
  left: 7px;
}
.s_04 .accordion_one .accordion_header.stay .i_box .one_i:before {
  content: none;
}
.s_04 .accordion_one .accordion_header.open .i_box .one_i:before {
  content: none;
}
.s_04 .accordion_one .accordion_header.stay.open .i_box .one_i:before {
  content: "";
}
.s_04 .accordion_one .accordion_header.open .i_box .one_i:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.s_04 .accordion_one .accordion_header.stay.open .i_box .one_i:after {
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}
.s_04 .accordion_one .accordion_inner {
  display: none;
  margin-bottom: 30px;
  box-sizing: border-box;
  color: #121755;
}
.s_04 .accordion_one .accordion_inner.stay {
  display: block;
}

.s_04 .accordion_one .accordion_inner .box_one {
  height: 100%;
}
.s_04 .accordion_one .accordion_inner p.txt_a_ac {
  padding-left: 4%;
  margin: 0;
  text-align: left;
}
@media screen and (max-width: 1024px) {
  .s_04 .accordion_one .accordion_header .i_box {
    width: 30px;
    height: 30px;
    margin-top: -14px;
  }
  .question {
    padding-top: 60px;
  }
}
@media screen and (max-width: 767px) {
  .s_04 .accordion_one .accordion_header {
    text-align: left;
  }
}

/* アコーディオン２ */
.s_04 .accordion_one2 span {
  font-size: 22px;
  font-weight: bold;
}
.s_04 .accordion_one2 {
  max-width: 1024px;
  margin: 0 auto;
}
.s_04 .accordion_one2 .accordion_header2 {
  color: #fff;
  font-size: 15px;
  margin-bottom: 10px;
  padding: 12px 4%;
  text-align: left;
  position: relative;
  z-index: +1;
  cursor: pointer;
  transition-duration: 0.2s;
}

.s_04 .accordion_one2 .accordion_header2:hover {
  opacity: 0.8;
}
.s_04 .accordion_one2 .accordion_header2 .i_box {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 50%;
  right: 5%;
  width: 30px;
  height: 30px;
  border: 1px solid #fff;
  margin-top: -15px;
  box-sizing: border-box;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transform-origin: center center;
  transition-duration: 0.2s;
}
.s_04 .accordion_one2 .accordion_header2.stay .i_box {
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}
.s_04 .accordion_one2 .accordion_header2 .i_box .one_i {
  display: block;
  width: 18px;
  height: 18px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transform-origin: center center;
  transition-duration: 0.2s;
  position: relative;
}
.s_04 .accordion_one2 .accordion_header2.stay .i_box .one_i {
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}
.s_04 .accordion_one2 .accordion_header2.stay.open .i_box .one_i {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.s_04 .accordion_one2 .accordion_header2.open .i_box {
  -webkit-transform: rotate(-360deg);
  transform: rotate(-360deg);
}
.s_04 .accordion_one2 .accordion_header2.stay.open .i_box {
  -webkit-transform: rotate(315eg);
  transform: rotate(315deg);
}
.s_04 .accordion_one2 .accordion_header2 .i_box .one_i:before,
.s_04 .accordion_one2 .accordion_header2 .i_box .one_i:after {
  display: flex;
  content: "";
  background-color: #fff;
  border-radius: 10px;
  width: 18px;
  height: 4px;
  position: absolute;
  top: 7px;
  left: 0;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  transform-origin: center center;
}
.s_04 .accordion_one2 .accordion_header2 .i_box .one_i:before {
  width: 4px;
  height: 18px;
  top: 0;
  left: 7px;
}
.s_04 .accordion_one2 .accordion_header2.stay .i_box .one_i:before {
  content: none;
}
.s_04 .accordion_one2 .accordion_header2.open .i_box .one_i:before {
  content: none;
}
.s_04 .accordion_one2 .accordion_heade2.aboutboxright.open .i_box .one_i:before {
  content: "";
}
.s_04 .accordion_one2 .accordion_header2.open .i_box .one_i:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.s_04 .accordion_one2 .accordion_header2.stay.open .i_box .one_i:after {
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}
.s_04 .accordion_one2 .accordion_inner2 {
  display: none;
  margin-bottom: 30px;
  padding: 10px 0;
  box-sizing: border-box;
  background-color: #fff;
  color: #272343;
}
.s_04 .accordion_one2 .accordion_inner2.stay {
  display: block;
}

.s_04 .accordion_one2 .accordion_inner2 .box_one {
  height: 100%;
}
.s_04 .accordion_one2 .accordion_inner2 p.txt_a_ac {
  padding-left: 4%;
  margin: 0;
  text-align: left;
}
@media screen and (max-width: 1024px) {
  .s_04 .accordion_one2 .accordion_header2 .i_box {
    width: 30px;
    height: 30px;
    margin-top: -15px;
  }
  .question {
    padding-top: 60px;
  }
}
@media screen and (max-width: 767px) {
  .s_04 .accordion_one2 .accordion_header2 {
    text-align: left;
    padding: 15px 60px 15px 15px;
  }
}

/*----------------------------------------------------------------------------------------------------------
セレブリボーンを元に作った痩身ダイエットメニュー　エンダモロジー用のCSS endermologie
----------------------------------------------------------------------------------------------------------*/
.section02ender,.section03ender {
  text-align: center;
}
.section02ender img,.section03ender img {
  margin: 0 auto;
  width: 80%;
}
.sp_first_price a,.pc_first_price a {
  display: inline-block;
  background-color: #CFA050;
  color: #FFF;
  font-size: 16px;
  font-family: sans-serif;
  font-weight: normal;
  padding: 8px  16px;
}
.sp_first_price {
  display: none;
}

@media only screen and (max-width: 840px) {
  .pc_first_price {
    display: none;
  }
  .sp_first_price {
    display: inline-block;
    width: 100%;
  }
  .sp_first_price a {
    width: 100%;
    text-align: center;
  }
  body.celeb_reborn.endermologie .celeb_reborncontent .section05 .ryoukinbox .h5-tit span.pc_first_price {
    display: none;
  }
}
.pdf_wrap {
  background-color: #e8edf0;
  
}
.life_pdf {
  padding: 0 3.5%;
  background-color: #FFF;
  padding-bottom: 50px;
  margin: 0 10%;
}
.life_pdf a {
  display: inline-block;
  background-color: #F4F4F4;
  font-size: 20px;
  color: #343667;
  width: 100%;
  padding-left: 7%;
  padding-bottom: 40px;
  text-align: left;
}
body.celeb_reborn.endermologie .celeb_reborncontent .section05 .ryoukinbox .h5-tit {
  display: flex;
  justify-content: left;
  gap: 100px;
}
body.celeb_reborn.endermologie .celeb_reborncontent .section05 .ryoukinbox .h5-tit span {
  width: 65%;
}
body.celeb_reborn.endermologie .celeb_reborncontent .section05 .ryoukinbox .h5-tit span.pc_first_price {
  width: 40%;
  text-align: right;
  padding-left: 0;
}
@media only screen and (max-width: 840px) {
  body.celeb_reborn.endermologie .celeb_reborncontent .section05 .ryoukinbox .h5-tit span {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .section02ender img, .section03ender img {
    width: 100%;
  }
  .life_pdf {
    padding: 0 4.5%;
    background-color: #FFF;
    padding-bottom: 20px;
    margin: 0;
  }
  .life_pdf a {
    display: inline-block;
    background-color: #FFF;
    font-size: 16px;
    color: #343667;
    width: 100%;
    padding-left: 0;
    padding-bottom: 20px;
    word-break: break-all;
  }
}
.endermologie_video {
  width: 80%;
  margin: 0 auto;
}
body.celeb_reborn.endermologie .celeb_reborncontent .section05 .ryoukinbox .h5-tit {
  line-height: 26px;
}

@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section01ender {
    height: 1980px;
  }
}

body.celeb_reborn .celeb_reborncontent .section01ender .bg-img {
  position: relative;
  background-image: url("../images/endermologie/sec_mv.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  display: block;
  width: 100%;
  height: 756px;
  padding-top: 80px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section01ender .bg-img {
    background-image: url("../images/endermologie/sec_mv_sp.jpg");
    height: 290px;
    padding: 260px 25px 220px;
    background-size: contain;
  }
}

body.celeb_reborn
  .celeb_reborncontent
  .section01ender
  .bg-img
  .section01-container {
  width: 100%;
  max-width: 1090px;
  margin: 0 auto;
  position: relative;
}
body.celeb_reborn
  .celeb_reborncontent
  .section01ender
  .bg-img
  .section01-container
  .detail {
  max-width: 715px;
  position: relative;
  margin-left: 450px;
}
@media screen and (max-width: 1180px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01ender
    .bg-img
    .section01-container
    .detail {
    margin: 0 auto;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section01ender
  .bg-img
  .section01-container
  .detail
  .bg-title {
  font-size: 36px;
  font-size: 3.6rem;
  color: #121755;
  letter-spacing: 4px;
  text-align: center;
  letter-spacing: 6px;
  line-height: 65px;
  margin-bottom: 10px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01ender
    .bg-img
    .section01-container
    .detail
    .bg-title {
    font-size: 24px;
    font-size: 2.4rem;
    letter-spacing: 3px;
    line-height: 40px;
    margin-bottom: 28px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section01ender
  .bg-img
  .section01-container
  .detail
  .bg-title
  em {
  font-size: 32px;
  font-size: 3.2rem;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01ender
    .bg-img
    .section01-container
    .detail
    .bg-title
    em {
    font-size: 20px;
    font-size: 2rem;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section01ender
  .bg-img
  .section01-container
  .detail
  .bg-title
  small::before {
  content: "";
  position: absolute;
  width: 6px;
  height: 6px;
  background-color: #e64601;
  border-radius: 50%;
  top: -5px;
  margin-left: 10px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01ender
    .bg-img
    .section01-container
    .detail
    .bg-title
    small::before {
    top: -10px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section01ender
  .bg-img
  .section01-container
  .detail
  .bg-list-detail {
  background: #fff;
  padding: 20px 10px 5px 37px;
  border: 1px #ceab74 solid;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01ender
    .bg-img
    .section01-container
    .detail
    .bg-list-detail {
    padding: 37px 10px 17px 30px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section01ender
  .bg-img
  .section01-container
  .detail
  .bg-list-detail
  .h4list {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold;
  position: relative;
  color: #ceab74;
  margin-left: 20px;
  margin-bottom: 30px;
  display: block;
  letter-spacing: 2px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01ender
    .bg-img
    .section01-container
    .detail
    .bg-list-detail
    .h4list {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 26px;
    margin-bottom: 25px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section01ender
  .bg-img
  .section01-container
  .detail
  .bg-list-detail
  .h4list::before {
  content: "";
  position: absolute;
  display: block;
  height: 100%;
  width: 1px;
  background-color: #ceab74;
  left: -20px;
}
body.celeb_reborn
  .celeb_reborncontent
  .section01ender
  .bg-img
  .section01-container
  .detail
  .bg-list-detail
  .bg-list {
  font-size: 15px;
  font-size: 1.5rem;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  display: flex;
  flex-wrap: wrap;
}
body.celeb_reborn
  .celeb_reborncontent
  .section01ender
  .bg-img
  .section01-container
  .detail
  .bg-list-detail
  .bg-list
  li {
  position: relative;
  letter-spacing: 1px;
  width: 50%;
  margin-bottom: 27px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01ender
    .bg-img
    .section01-container
    .detail
    .bg-list-detail
    .bg-list
    li {
    width: 100%;
    margin-bottom: 17px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section01ender
  .bg-img
  .section01-container
  .detail
  .bg-list-detail
  .bg-list
  li
  span {
  margin-left: 40px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01ender
    .bg-img
    .section01-container
    .detail
    .bg-list-detail
    .bg-list
    li
    span {
    margin-left: 30px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section01ender
  .bg-img
  .section01-container
  .detail
  .bg-list-detail
  .bg-list
  li::after {
  background-image: url("../images/facial/icn_check.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 21px;
  height: 21px;
  content: "";
  margin: 0 auto;
  position: absolute;
  left: 0;
  top: -2px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01ender
    .bg-img
    .section01-container
    .detail
    .bg-list-detail
    .bg-list
    li::after {
    left: 0;
    top: -4px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section01ender
  .bg-img
  .section01-container
  .detail
  .bg-list-detail
  .bg-list
  .l-h
  span {
  line-height: 24px;
  display: flex;
  margin-top: -3px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01ender
    .bg-img
    .section01-container
    .detail
    .bg-list-detail
    .bg-list
    .l-h
    span {
    line-height: 22px;
  }
}
body.celeb_reborn .celeb_reborncontent .section01ender .blue-section {
  background: #054688;
  mix-blend-mode: multiply;
  color: #fff;
  width: 100%;
  position: relative;
  top: -60px;
  padding: 70px 0;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section01ender .blue-section {
    top: 470px;
    padding: 36px 25px 36px;
    margin-top: 50px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section01ender
  .blue-section
  .blue-section-detail {
  width: 100%;
  max-width: 1090px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01ender
    .blue-section
    .blue-section-detail {
    display: block;
    max-width: 100%;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section01ender
  .blue-section
  .blue-section-detail
  .blue-section-left {
  width: 65%;
  max-width: 700px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01ender
    .blue-section
    .blue-section-detail
    .blue-section-left {
    width: 100%;
    max-width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01ender
    .blue-section
    .blue-section-detail
    .blue-section-left
    .img-sp {
    margin: 30px 0 25px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section01ender
  .blue-section
  .blue-section-detail
  .blue-section-left
  .h4listleft {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold;
  position: relative;
  margin-left: 20px;
  margin-bottom: 20px;
  display: block;
  letter-spacing: 2px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01ender
    .blue-section
    .blue-section-detail
    .blue-section-left
    .h4listleft {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 28px;
    margin-bottom: -3px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section01ender
  .blue-section
  .blue-section-detail
  .blue-section-left
  .h4listleft::before {
  content: "";
  position: absolute;
  display: block;
  height: 100%;
  width: 1px;
  background-color: #fff;
  left: -20px;
}
body.celeb_reborn
  .celeb_reborncontent
  .section01ender
  .blue-section
  .blue-section-detail
  .blue-section-left
  p {
  color: #fff;
  line-height: 33px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01ender
    .blue-section
    .blue-section-detail
    .blue-section-left
    p {
    line-height: 29px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section01ender
  .blue-section
  .blue-section-detail
  .blue-section-right {
  width: 30%;
  max-width: 300px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01ender
    .blue-section
    .blue-section-detail
    .blue-section-right {
    width: 100%;
    max-width: 100%;
  }
}

body.celeb_reborn .celeb_reborncontent .section02ender {
  background: #e8edf0;
  padding: 80px 8px 100px 8px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section02ender .section04ender {
    padding: 60px 8px;
  }
}
body.celeb_reborn .celeb_reborncontent .section02ender .section02-content {
  background: #fff;
  max-width: 1160px;
  padding: 77px;
  margin: 0 auto;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section02ender .section02-content {
    padding: 37px 30px 15px;
  }
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02ender
    .section02-content
    .section02-content01
    .ttl-05 {
    margin-bottom: 25px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02ender
  .section02-content
  .section02-content01
  .threebox {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02ender
    .section02-content
    .section02-content01
    .threebox {
    display: block;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02ender
  .section02-content
  .section02-content01
  .threebox
  .threeboxdetail {
  background: #f4f4f4;
  padding: 30px 20px 20px;
  width: 33%;
  max-width: 326px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02ender
    .section02-content
    .section02-content01
    .threebox
    .threeboxdetail {
    display: block;
    width: 100%;
    max-width: 100%;
    padding: 35px 30px 28px;
    margin-bottom: 12px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02ender
  .section02-content
  .section02-content01
  .threebox
  .threeboxdetail
  .numbox {
  display: flex;
  justify-content: center;
  align-items: flex-start;
}
body.celeb_reborn
  .celeb_reborncontent
  .section02ender
  .section02-content
  .section02-content01
  .threebox
  .threeboxdetail
  .numbox
  .numiconleft,
body.celeb_reborn
  .celeb_reborncontent
  .section02ender
  .section02-content
  .section02-content01
  .threebox
  .threeboxdetail
  .numbox
  .numiconright {
  height: 25px;
}
body.celeb_reborn
  .celeb_reborncontent
  .section02ender
  .section02-content
  .section02-content01
  .threebox
  .threeboxdetail
  .numbox
  .number {
  font-size: 28px;
  font-size: 2.8rem;
  letter-spacing: 3px;
  font-weight: bold;
  color: #ceab74;
  margin: 0 8px;
}
body.celeb_reborn
  .celeb_reborncontent
  .section02ender
  .section02-content
  .section02-content01
  .threebox
  .threeboxdetail
  .title01 {
  font-size: 20px;
  font-size: 2rem;
  text-align: center;
  font-weight: bold;
  letter-spacing: 2px;
  margin: 21px 0 20px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02ender
    .section02-content
    .section02-content01
    .threebox
    .threeboxdetail
    .title01 {
    margin: 18px 0 15px;
    font-size: 16px;
    font-size: 1.6rem;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02ender
  .section02-content
  .section02-content01
  .threebox
  .threeboxdetail
  .title02 {
  font-size: 30px;
  font-size: 3rem;
  text-align: center;
  font-weight: bold;
  letter-spacing: 2px;
  margin-bottom: 22px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02ender
    .section02-content
    .section02-content01
    .threebox
    .threeboxdetail
    .title02 {
    font-size: 26px;
    font-size: 2.6rem;
    margin-bottom: 15px;
  }
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02ender
    .section02-content
    .section02-content01
    .threebox
    .threeboxdetail
    p {
    line-height: 25px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02ender
  .section02-content
  .section02-content02 {
  display: flex;
  justify-content: space-between;
  margin-top: 100px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02ender
    .section02-content
    .section02-content02 {
    display: block;
    margin-top: 50px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02ender
  .section02-content
  .section02-content02
  .ttl-05 {
  margin-bottom: 25px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02ender
    .section02-content
    .section02-content02
    .ttl-05 {
    margin-bottom: 17px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02ender
  .section02-content
  .section02-content02
  .section02-content02-left {
  width: 60%;
  max-width: 545px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02ender
    .section02-content
    .section02-content02
    .section02-content02-left {
    width: 100%;
    max-width: 100%;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02ender
  .section02-content
  .section02-content02
  .section02-content02-right {
  width: 40%;
  max-width: 380px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02ender
    .section02-content
    .section02-content02
    .section02-content02-right {
    width: 100%;
    max-width: 100%;
    margin-top: 20px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02ender
  .section02-content
  .section02-content02
  .section02-content02-right
  .text01 {
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 3px;
  font-weight: bold;
  text-align: center;
  background: #2b2b9a;
  color: #fff;
  height: 80px;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02ender
    .section02-content
    .section02-content02
    .section02-content02-right
    .text01 {
    font-size: 15px;
    font-size: 1.5rem;
    height: 85px;
    letter-spacing: 2px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02ender
  .section02-content
  .section02-content02
  .section02-content02-right
  .text02 {
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 3px;
  font-weight: bold;
  text-align: center;
  background: #de9826;
  color: #fff;
  height: 80px;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  align-items: center;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02ender
    .section02-content
    .section02-content02
    .section02-content02-right
    .text02 {
    font-size: 15px;
    font-size: 1.5rem;
    height: 85px;
    letter-spacing: 2px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02ender
  .section02-content
  .section02-content02
  .section02-content02-right
  .text02
  em {
  font-size: 15px;
  font-size: 1.5rem;
  width: 100%;
  letter-spacing: 1.5px;
  margin-top: -20px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02ender
    .section02-content
    .section02-content02
    .section02-content02-right
    .text02
    em {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 20px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02ender
  .section02-content
  .section02-content02
  .section02-content02-right
  .text03 {
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 3px;
  font-weight: bold;
  text-align: center;
  color: #de9826;
  border: 1px #de9826 solid;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 12px 0;
  display: block;
  line-height: 28px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02ender
    .section02-content
    .section02-content02
    .section02-content02-right
    .text03 {
    font-size: 15px;
    font-size: 1.5rem;
    letter-spacing: 0;
    height: 85px;
    line-height: 22px;
    padding: 8px 0;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02ender
  .section02-content
  .section02-content02
  .section02-content02-right
  .icon01 {
  width: 20px;
  margin: 8px auto;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02ender
    .section02-content
    .section02-content02
    .section02-content02-right
    .icon01 {
    margin: 13px auto;
    width: 22px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02ender
  .section02-content
  .section02-content02
  .section02-content02-right
  .icon02 {
  width: 20px;
  margin: 8px auto;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02ender
    .section02-content
    .section02-content02
    .section02-content02-right
    .icon02 {
    margin: 13px auto;
    width: 22px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02ender
  .section02-content
  .section02-content03 {
  display: flex;
  justify-content: space-between;
  margin-top: 100px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02ender
    .section02-content
    .section02-content03 {
    display: block;
    margin-top: 50px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02ender
  .section02-content
  .section02-content03
  .ttl-05 {
  margin-bottom: 25px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02ender
    .section02-content
    .section02-content03
    .ttl-05 {
    margin-bottom: 17px;
  }
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02ender
    .section02-content
    .section02-content03
    .img-sp {
    margin: 25px 0 20px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02ender
  .section02-content
  .section02-content03
  .section02-content03-left {
  width: 60%;
  max-width: 545px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02ender
    .section02-content
    .section02-content03
    .section02-content03-left {
    width: 100%;
    max-width: 100%;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02ender
  .section02-content
  .section02-content03
  .section02-content03-right {
  width: 40%;
  max-width: 380px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02ender
    .section02-content
    .section02-content03
    .section02-content03-right {
    width: 100%;
    max-width: 100%;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02ender
  .section02-content
  .section02-content04 {
  background: #f4f4f4;
  padding: 35px 50px 25px;
  margin-top: 80px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02ender
    .section02-content
    .section02-content04 {
    padding: 32px 30px 30px;
    width: calc(100% + 30px);
    position: relative;
    left: -15px;
    margin-top: 35px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02ender
  .section02-content
  .section02-content04
  .ttl-05 {
  margin-bottom: 35px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02ender
    .section02-content
    .section02-content04
    .ttl-05 {
    margin-bottom: 17px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02ender
  .section02-content
  .section02-content04
  .detail04-list {
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 1px;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02ender
    .section02-content
    .section02-content04
    .detail04-list {
    line-height: 28px;
    letter-spacing: 0;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02ender
  .section02-content
  .section02-content04
  .detail04-list
  .detail04-list-detail {
  position: relative;
  margin-bottom: 15px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02ender
    .section02-content
    .section02-content04
    .detail04-list
    .detail04-list-detail {
    display: flex;
    margin-bottom: 6px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02ender
  .section02-content
  .section02-content04
  .detail04-list
  .detail04-list-detail::after {
  content: "";
  position: absolute;
  display: block;
  width: 7px;
  height: 10px;
  background-image: url("../images/info/arw.svg");
  background-repeat: no-repeat;
  top: 3px;
  left: 0;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02ender
    .section02-content
    .section02-content04
    .detail04-list
    .detail04-list-detail::after {
    display: flex;
    top: 9px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02ender
  .section02-content
  .section02-content04
  .detail04-list
  .detail04-list-detail
  span {
  padding-left: 20px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02ender
    .section02-content
    .section02-content04
    .detail04-list
    .detail04-list-detail
    span {
    padding-left: 15px;
  }
}

body.celeb_reborn .celeb_reborncontent .section03ender {
  background: #e8edf0;
  padding: 0px 8px 0px 8px;
  padding-bottom: 100px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section03ender {
    height: 100%;
  }
}

body.celeb_reborn .celeb_reborncontent .section05ender {
  padding: 0px 8px 40px 8px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section05ender {
    height: 100%;
  }
}

body.celeb_reborn .celeb_reborncontent .section03 .section03-menubg .ttl-02 {
  color: #fff;
}
body.celeb_reborn .celeb_reborncontent .section03ender .menu-detail {
  display: flex;
  justify-content: space-between;
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  padding: 50px 60px 55px;
  position: relative;
  background-image: url("../images/celeb_reborn/bg-kazri.png");
  background-repeat: no-repeat;
  background-position: top;
  background-size: contain;
  height: 320px;
  z-index: 1;
  top: -60px;
}
@media screen and (max-width: 1024px) {
  body.celeb_reborn .celeb_reborncontent .section03ender .menu-detail {
    padding: 35px 40px 55px;
    align-items: center;
  }
}
@media screen and (max-width: 900px) {
  body.celeb_reborn .celeb_reborncontent .section03ender .menu-detail {
    padding: 10px 30px 55px;
  }
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section03ender .menu-detail {
    background-image: url("../images/celeb_reborn/bg-kazri-sp.png");
    height: 620px;
    top: -55px;
    display: block;
    padding: 40px 55px 55px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section03ender
  .menu-detail
  .menu-detail-left {
  width: 60%;
  max-width: 530px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section03ender
    .menu-detail
    .menu-detail-left {
    width: 100%;
    max-width: 100%;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section03ender
  .menu-detail
  .menu-detail-left
  .h4list {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold;
  position: relative;
  color: #ceab74;
  margin-left: 20px;
  margin-bottom: 30px;
  display: block;
  letter-spacing: 2px;
  white-space: nowrap;
}
@media screen and (max-width: 1024px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section03ender
    .menu-detail
    .menu-detail-left
    .h4list {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 900px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section03ender
    .menu-detail
    .menu-detail-left
    .h4list {
    font-size: 16px;
    font-size: 1.6rem;
  }
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section03ender
    .menu-detail
    .menu-detail-left
    .h4list {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 26px;
    margin-bottom: 25px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section03ender
  .menu-detail
  .menu-detail-left
  .h4list::before {
  content: "";
  position: absolute;
  display: block;
  height: 100%;
  width: 1px;
  background-color: #ceab74;
  left: -20px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section03ender
    .menu-detail
    .menu-detail-left
    p {
    line-height: 28px;
  }
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section03ender
    .menu-detail
    .menu-detail-left
    .img-sp {
    margin-bottom: 18px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section03ender
  .menu-detail
  .menu-detail-left
  .note {
  font-size: 12px;
  font-size: 1.2rem;
  display: flex;
  margin: 12px 0 28px;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media screen and (max-width: 900px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section03ender
    .menu-detail
    .menu-detail-left
    .note {
    margin: 12px 0 18px;
  }
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section03ender
    .menu-detail
    .menu-detail-left
    .note {
    line-height: 20px;
    margin: 10px 0 16px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section03ender
  .menu-detail
  .menu-detail-left
  .chui {
  background: #f7f5ef;
  font-size: 15px;
  font-size: 1.5rem;
  color: #222443;
  font-weight: bold;
  padding: 23px 30px;
  display: block;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  letter-spacing: 2px;
}
@media screen and (max-width: 1000px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section03ender
    .menu-detail
    .menu-detail-left
    .chui {
    font-size: 12px;
    font-size: 1.2rem;
    letter-spacing: 0;
    padding: 23px 10px;
  }
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section03ender
    .menu-detail
    .menu-detail-left
    .chui {
    padding: 13px 10px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section03ender
  .menu-detail
  .menu-detail-left
  .chui
  .text {
  position: relative;
}
body.celeb_reborn
  .celeb_reborncontent
  .section03ender
  .menu-detail
  .menu-detail-left
  .chui
  .text::after {
  content: "";
  position: absolute;
  display: block;
  width: 7px;
  height: 10px;
  background-image: url("../images/info/arw.svg");
  background-repeat: no-repeat;
  top: 3px;
  left: 0;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section03ender
    .menu-detail
    .menu-detail-left
    .chui
    .text::after {
    display: flex;
    top: 5px;
    left: 10px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section03ender
  .menu-detail
  .menu-detail-left
  .chui
  .text
  span {
  padding-left: 15px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section03ender
    .menu-detail
    .menu-detail-left
    .chui
    .text
    span {
    padding-left: 15px;
    font-size: 15px;
    font-size: 1.5rem;
    display: flex;
    letter-spacing: 3px;
    padding-left: 25px;
    line-height: 20px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section03ender
  .menu-detail
  .menu-detail-right {
  width: 35%;
  max-width: 300px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section03ender
    .menu-detail
    .menu-detail-right {
    width: 100%;
    max-width: 100%;
  }
}

body.celeb_reborn .celeb_reborncontent .section04ender .section04-menubg {
  background-image: url("../images/endermologie/Maskgroup.jpg");
  background-repeat: no-repeat;
  background-position: top;
  background-size: cover;
  width: 100%;
  height: 300px;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section04ender .section04-menubg {
    background-image: url("../images/endermologie/Maskgroup_sp.jpg");
    height: 220px;
  }
}

/*----------------------------------------------------------------------------------------------------------
セレブリボーン　元からあったCSS
----------------------------------------------------------------------------------------------------------*/

@media only screen and (max-width: 767px) {
  body.celeb_reborn .side-mv-ttl .en {
    line-height: 40px;
  }
  body.celeb_reborn .side-mv-ttl .ja {
    line-height: 25px;
    margin-top: 2px !important;
  }
}

body.celeb_reborn .celeb_reborncontent {
  margin-top: -5px;
  padding: 0 ;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent {
    padding: 0;
  }
}
body.celeb_reborn .celeb_reborncontent p {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 31px;
  letter-spacing: 1px;
  color: #222443;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent p {
    text-align: justify;
    line-height: 30px;
    letter-spacing: 1.5px;
  }
}
body.celeb_reborn .celeb_reborncontent .section01 {
  background: #e8edf0;
  position: relative;
  height: 945px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section01 {
    height: 1467px;
  }
}
body.celeb_reborn .celeb_reborncontent .section01 .bg-img {
  position: relative;
  background-image: url("../images/celeb_reborn/img-bg.png");
  background-repeat: no-repeat;
  background-size: cover;
  display: block;
  width: 100%;
  height: 656px;
  padding-top: 80px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section01 .bg-img {
    background-image: url("../images/celeb_reborn/img-bg-sp.png");
    height: 290px;
    padding: 210px 25px 220px;
    background-size: contain;
  }
}
body.celeb_reborn .celeb_reborncontent .section01 .bg-img .section01-container {
  width: 100%;
  max-width: 1090px;
  margin: 0 auto;
  position: relative;
}
body.celeb_reborn
  .celeb_reborncontent
  .section01
  .bg-img
  .section01-container
  .detail {
  max-width: 715px;
  position: relative;
  margin-left: 450px;
}
@media screen and (max-width: 1180px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01
    .bg-img
    .section01-container
    .detail {
    margin: 0 auto;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section01
  .bg-img
  .section01-container
  .detail
  .bg-title {
  font-size: 36px;
  font-size: 3.6rem;
  color: #121755;
  letter-spacing: 4px;
  text-align: center;
  letter-spacing: 6px;
  line-height: 65px;
  margin-bottom: 25px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01
    .bg-img
    .section01-container
    .detail
    .bg-title {
    font-size: 24px;
    font-size: 2.4rem;
    letter-spacing: 3px;
    line-height: 40px;
    margin-bottom: 28px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section01
  .bg-img
  .section01-container
  .detail
  .bg-title
  em {
  font-size: 32px;
  font-size: 3.2rem;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01
    .bg-img
    .section01-container
    .detail
    .bg-title
    em {
    font-size: 20px;
    font-size: 2rem;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section01
  .bg-img
  .section01-container
  .detail
  .bg-title
  small::before {
  content: "";
  position: absolute;
  width: 6px;
  height: 6px;
  background-color: #e64601;
  border-radius: 50%;
  top: -5px;
  margin-left: 10px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01
    .bg-img
    .section01-container
    .detail
    .bg-title
    small::before {
    top: -10px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section01
  .bg-img
  .section01-container
  .detail
  .bg-list-detail {
  background: #fff;
  padding: 40px 10px 5px 37px;
  border: 1px #ceab74 solid;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01
    .bg-img
    .section01-container
    .detail
    .bg-list-detail {
    padding: 37px 10px 17px 30px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section01
  .bg-img
  .section01-container
  .detail
  .bg-list-detail
  .h4list {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold;
  position: relative;
  color: #ceab74;
  margin-left: 20px;
  margin-bottom: 30px;
  display: block;
  letter-spacing: 2px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01
    .bg-img
    .section01-container
    .detail
    .bg-list-detail
    .h4list {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 26px;
    margin-bottom: 25px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section01
  .bg-img
  .section01-container
  .detail
  .bg-list-detail
  .h4list::before {
  content: "";
  position: absolute;
  display: block;
  height: 100%;
  width: 1px;
  background-color: #ceab74;
  left: -20px;
}
body.celeb_reborn
  .celeb_reborncontent
  .section01
  .bg-img
  .section01-container
  .detail
  .bg-list-detail
  .bg-list {
  font-size: 15px;
  font-size: 1.5rem;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  display: flex;
  flex-wrap: wrap;
}
body.celeb_reborn
  .celeb_reborncontent
  .section01
  .bg-img
  .section01-container
  .detail
  .bg-list-detail
  .bg-list
  li {
  position: relative;
  letter-spacing: 1px;
  width: 50%;
  margin-bottom: 27px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01
    .bg-img
    .section01-container
    .detail
    .bg-list-detail
    .bg-list
    li {
    width: 100%;
    margin-bottom: 17px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section01
  .bg-img
  .section01-container
  .detail
  .bg-list-detail
  .bg-list
  li
  span {
  margin-left: 40px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01
    .bg-img
    .section01-container
    .detail
    .bg-list-detail
    .bg-list
    li
    span {
    margin-left: 30px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section01
  .bg-img
  .section01-container
  .detail
  .bg-list-detail
  .bg-list
  li::after {
  background-image: url("../images/facial/icn_check.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 21px;
  height: 21px;
  content: "";
  margin: 0 auto;
  position: absolute;
  left: 0;
  top: -2px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01
    .bg-img
    .section01-container
    .detail
    .bg-list-detail
    .bg-list
    li::after {
    left: 0;
    top: -4px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section01
  .bg-img
  .section01-container
  .detail
  .bg-list-detail
  .bg-list
  .l-h
  span {
  line-height: 24px;
  display: flex;
  margin-top: -3px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01
    .bg-img
    .section01-container
    .detail
    .bg-list-detail
    .bg-list
    .l-h
    span {
    line-height: 22px;
  }
}
body.celeb_reborn .celeb_reborncontent .section01 .blue-section {
  background: #054688;
  mix-blend-mode: multiply;
  color: #fff;
  width: 100%;
  position: relative;
  top: -60px;
  padding: 70px 0;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section01 .blue-section {
    top: 370px;
    padding: 55px 25px 50px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section01
  .blue-section
  .blue-section-detail {
  width: 100%;
  max-width: 1090px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01
    .blue-section
    .blue-section-detail {
    display: block;
    max-width: 100%;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section01
  .blue-section
  .blue-section-detail
  .blue-section-left {
  width: 65%;
  max-width: 700px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01
    .blue-section
    .blue-section-detail
    .blue-section-left {
    width: 100%;
    max-width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01
    .blue-section
    .blue-section-detail
    .blue-section-left
    .img-sp {
    margin: 30px 0 25px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section01
  .blue-section
  .blue-section-detail
  .blue-section-left
  .h4listleft {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold;
  position: relative;
  margin-left: 20px;
  margin-bottom: 20px;
  display: block;
  letter-spacing: 2px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01
    .blue-section
    .blue-section-detail
    .blue-section-left
    .h4listleft {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 28px;
    margin-bottom: -3px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section01
  .blue-section
  .blue-section-detail
  .blue-section-left
  .h4listleft::before {
  content: "";
  position: absolute;
  display: block;
  height: 100%;
  width: 1px;
  background-color: #fff;
  left: -20px;
}
body.celeb_reborn
  .celeb_reborncontent
  .section01
  .blue-section
  .blue-section-detail
  .blue-section-left
  p {
  color: #fff;
  line-height: 33px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01
    .blue-section
    .blue-section-detail
    .blue-section-left
    p {
    line-height: 29px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section01
  .blue-section
  .blue-section-detail
  .blue-section-right {
  width: 30%;
  max-width: 300px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section01
    .blue-section
    .blue-section-detail
    .blue-section-right {
    width: 100%;
    max-width: 100%;
  }
}
body.celeb_reborn .celeb_reborncontent .section02 {
  background: #e8edf0;
  padding: 90px 0 100px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section02 {
    padding: 60px 25px;
  }
}
body.celeb_reborn .celeb_reborncontent .section02 .section02-content {
  background: #fff;
  max-width: 1160px;
  padding: 77px;
  margin: 0 auto;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section02 .section02-content {
    padding: 37px 30px 15px;
  }
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02
    .section02-content
    .section02-content01
    .ttl-05 {
    margin-bottom: 25px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02
  .section02-content
  .section02-content01
  .threebox {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02
    .section02-content
    .section02-content01
    .threebox {
    display: block;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02
  .section02-content
  .section02-content01
  .threebox
  .threeboxdetail {
  background: #f4f4f4;
  padding: 30px 20px 20px;
  width: 33%;
  max-width: 326px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02
    .section02-content
    .section02-content01
    .threebox
    .threeboxdetail {
    display: block;
    width: 100%;
    max-width: 100%;
    padding: 35px 30px 28px;
    margin-bottom: 12px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02
  .section02-content
  .section02-content01
  .threebox
  .threeboxdetail
  .numbox {
  display: flex;
  justify-content: center;
  align-items: flex-start;
}
body.celeb_reborn
  .celeb_reborncontent
  .section02
  .section02-content
  .section02-content01
  .threebox
  .threeboxdetail
  .numbox
  .numiconleft,
body.celeb_reborn
  .celeb_reborncontent
  .section02
  .section02-content
  .section02-content01
  .threebox
  .threeboxdetail
  .numbox
  .numiconright {
  height: 25px;
}
body.celeb_reborn
  .celeb_reborncontent
  .section02
  .section02-content
  .section02-content01
  .threebox
  .threeboxdetail
  .numbox
  .number {
  font-size: 28px;
  font-size: 2.8rem;
  letter-spacing: 3px;
  font-weight: bold;
  color: #ceab74;
  margin: 0 8px;
}
body.celeb_reborn
  .celeb_reborncontent
  .section02
  .section02-content
  .section02-content01
  .threebox
  .threeboxdetail
  .title01 {
  font-size: 20px;
  font-size: 2rem;
  text-align: center;
  font-weight: bold;
  letter-spacing: 2px;
  margin: 21px 0 20px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02
    .section02-content
    .section02-content01
    .threebox
    .threeboxdetail
    .title01 {
    margin: 18px 0 15px;
    font-size: 16px;
    font-size: 1.6rem;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02
  .section02-content
  .section02-content01
  .threebox
  .threeboxdetail
  .title02 {
  font-size: 30px;
  font-size: 3rem;
  text-align: center;
  font-weight: bold;
  letter-spacing: 2px;
  margin-bottom: 22px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02
    .section02-content
    .section02-content01
    .threebox
    .threeboxdetail
    .title02 {
    font-size: 26px;
    font-size: 2.6rem;
    margin-bottom: 15px;
  }
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02
    .section02-content
    .section02-content01
    .threebox
    .threeboxdetail
    p {
    line-height: 25px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02
  .section02-content
  .section02-content02 {
  display: flex;
  justify-content: space-between;
  margin-top: 100px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02
    .section02-content
    .section02-content02 {
    display: block;
    margin-top: 50px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02
  .section02-content
  .section02-content02
  .ttl-05 {
  margin-bottom: 25px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02
    .section02-content
    .section02-content02
    .ttl-05 {
    margin-bottom: 17px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02
  .section02-content
  .section02-content02
  .section02-content02-left {
  width: 60%;
  max-width: 545px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02
    .section02-content
    .section02-content02
    .section02-content02-left {
    width: 100%;
    max-width: 100%;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02
  .section02-content
  .section02-content02
  .section02-content02-right {
  width: 40%;
  max-width: 380px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02
    .section02-content
    .section02-content02
    .section02-content02-right {
    width: 100%;
    max-width: 100%;
    margin-top: 20px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02
  .section02-content
  .section02-content02
  .section02-content02-right
  .text01 {
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 3px;
  font-weight: bold;
  text-align: center;
  background: #2b2b9a;
  color: #fff;
  height: 80px;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02
    .section02-content
    .section02-content02
    .section02-content02-right
    .text01 {
    font-size: 15px;
    font-size: 1.5rem;
    height: 85px;
    letter-spacing: 2px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02
  .section02-content
  .section02-content02
  .section02-content02-right
  .text02 {
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 3px;
  font-weight: bold;
  text-align: center;
  background: #de9826;
  color: #fff;
  height: 80px;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  align-items: center;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02
    .section02-content
    .section02-content02
    .section02-content02-right
    .text02 {
    font-size: 15px;
    font-size: 1.5rem;
    height: 85px;
    letter-spacing: 2px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02
  .section02-content
  .section02-content02
  .section02-content02-right
  .text02
  em {
  font-size: 15px;
  font-size: 1.5rem;
  width: 100%;
  letter-spacing: 1.5px;
  margin-top: -20px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02
    .section02-content
    .section02-content02
    .section02-content02-right
    .text02
    em {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 20px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02
  .section02-content
  .section02-content02
  .section02-content02-right
  .text03 {
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 3px;
  font-weight: bold;
  text-align: center;
  color: #de9826;
  border: 1px #de9826 solid;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 12px 0;
  display: block;
  line-height: 28px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02
    .section02-content
    .section02-content02
    .section02-content02-right
    .text03 {
    font-size: 15px;
    font-size: 1.5rem;
    letter-spacing: 0;
    height: 85px;
    line-height: 22px;
    padding: 8px 0;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02
  .section02-content
  .section02-content02
  .section02-content02-right
  .icon01 {
  width: 20px;
  margin: 8px auto;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02
    .section02-content
    .section02-content02
    .section02-content02-right
    .icon01 {
    margin: 13px auto;
    width: 22px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02
  .section02-content
  .section02-content02
  .section02-content02-right
  .icon02 {
  width: 20px;
  margin: 8px auto;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02
    .section02-content
    .section02-content02
    .section02-content02-right
    .icon02 {
    margin: 13px auto;
    width: 22px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02
  .section02-content
  .section02-content03 {
  display: flex;
  justify-content: space-between;
  margin-top: 100px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02
    .section02-content
    .section02-content03 {
    display: block;
    margin-top: 50px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02
  .section02-content
  .section02-content03
  .ttl-05 {
  margin-bottom: 25px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02
    .section02-content
    .section02-content03
    .ttl-05 {
    margin-bottom: 17px;
  }
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02
    .section02-content
    .section02-content03
    .img-sp {
    margin: 25px 0 20px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02
  .section02-content
  .section02-content03
  .section02-content03-left {
  width: 60%;
  max-width: 545px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02
    .section02-content
    .section02-content03
    .section02-content03-left {
    width: 100%;
    max-width: 100%;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02
  .section02-content
  .section02-content03
  .section02-content03-right {
  width: 40%;
  max-width: 380px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02
    .section02-content
    .section02-content03
    .section02-content03-right {
    width: 100%;
    max-width: 100%;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02
  .section02-content
  .section02-content04 {
  background: #f4f4f4;
  padding: 35px 50px 25px;
  margin-top: 80px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02
    .section02-content
    .section02-content04 {
    padding: 32px 30px 30px;
    width: calc(100% + 30px);
    position: relative;
    left: -15px;
    margin-top: 35px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02
  .section02-content
  .section02-content04
  .ttl-05 {
  margin-bottom: 35px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02
    .section02-content
    .section02-content04
    .ttl-05 {
    margin-bottom: 17px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02
  .section02-content
  .section02-content04
  .detail04-list {
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 1px;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02
    .section02-content
    .section02-content04
    .detail04-list {
    line-height: 28px;
    letter-spacing: 0;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02
  .section02-content
  .section02-content04
  .detail04-list
  .detail04-list-detail {
  position: relative;
  margin-bottom: 15px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02
    .section02-content
    .section02-content04
    .detail04-list
    .detail04-list-detail {
    display: flex;
    margin-bottom: 6px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02
  .section02-content
  .section02-content04
  .detail04-list
  .detail04-list-detail::after {
  content: "";
  position: absolute;
  display: block;
  width: 7px;
  height: 10px;
  background-image: url("../images/info/arw.svg");
  background-repeat: no-repeat;
  top: 3px;
  left: 0;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02
    .section02-content
    .section02-content04
    .detail04-list
    .detail04-list-detail::after {
    display: flex;
    top: 9px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section02
  .section02-content
  .section02-content04
  .detail04-list
  .detail04-list-detail
  span {
  padding-left: 20px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section02
    .section02-content
    .section02-content04
    .detail04-list
    .detail04-list-detail
    span {
    padding-left: 15px;
  }
}
body.celeb_reborn .celeb_reborncontent .section03 .section03-menubg {
  background-image: url("../images/celeb_reborn/bg-menu.jpg");
  background-repeat: no-repeat;
  background-position: top;
  background-size: cover;
  width: 100%;
  height: 300px;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section03 .section03-menubg {
    background-image: url("../images/celeb_reborn/bg-menu-sp.jpg");
    height: 220px;
  }
}
body.celeb_reborn .celeb_reborncontent .section03 .section03-menubg .ttl-02 {
  color: #fff;
}
body.celeb_reborn .celeb_reborncontent .section03 .menu-detail {
  display: flex;
  justify-content: space-between;
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  padding: 50px 60px 55px;
  position: relative;
  background-image: url("../images/celeb_reborn/bg-kazri.png");
  background-repeat: no-repeat;
  background-position: top;
  background-size: contain;
  height: 320px;
  z-index: 1;
  top: -60px;
}
@media screen and (max-width: 1024px) {
  body.celeb_reborn .celeb_reborncontent .section03 .menu-detail {
    padding: 35px 40px 55px;
    align-items: center;
  }
}
@media screen and (max-width: 900px) {
  body.celeb_reborn .celeb_reborncontent .section03 .menu-detail {
    padding: 10px 30px 55px;
  }
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section03 .menu-detail {
    background-image: url("../images/celeb_reborn/bg-kazri-sp.png");
    height: 620px;
    top: -55px;
    display: block;
    padding: 40px 55px 55px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section03
  .menu-detail
  .menu-detail-left {
  width: 60%;
  max-width: 530px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section03
    .menu-detail
    .menu-detail-left {
    width: 100%;
    max-width: 100%;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section03
  .menu-detail
  .menu-detail-left
  .h4list {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold;
  position: relative;
  color: #ceab74;
  margin-left: 20px;
  margin-bottom: 30px;
  display: block;
  letter-spacing: 2px;
  white-space: nowrap;
}
@media screen and (max-width: 1024px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section03
    .menu-detail
    .menu-detail-left
    .h4list {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 900px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section03
    .menu-detail
    .menu-detail-left
    .h4list {
    font-size: 16px;
    font-size: 1.6rem;
  }
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section03
    .menu-detail
    .menu-detail-left
    .h4list {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 26px;
    margin-bottom: 25px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section03
  .menu-detail
  .menu-detail-left
  .h4list::before {
  content: "";
  position: absolute;
  display: block;
  height: 100%;
  width: 1px;
  background-color: #ceab74;
  left: -20px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section03
    .menu-detail
    .menu-detail-left
    p {
    line-height: 28px;
  }
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section03
    .menu-detail
    .menu-detail-left
    .img-sp {
    margin-bottom: 18px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section03
  .menu-detail
  .menu-detail-left
  .note {
  font-size: 12px;
  font-size: 1.2rem;
  display: flex;
  margin: 12px 0 28px;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media screen and (max-width: 900px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section03
    .menu-detail
    .menu-detail-left
    .note {
    margin: 12px 0 18px;
  }
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section03
    .menu-detail
    .menu-detail-left
    .note {
    line-height: 20px;
    margin: 10px 0 16px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section03
  .menu-detail
  .menu-detail-left
  .chui {
  background: #f7f5ef;
  font-size: 15px;
  font-size: 1.5rem;
  color: #222443;
  font-weight: bold;
  padding: 23px 30px;
  display: block;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  letter-spacing: 2px;
}
@media screen and (max-width: 1000px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section03
    .menu-detail
    .menu-detail-left
    .chui {
    font-size: 12px;
    font-size: 1.2rem;
    letter-spacing: 0;
    padding: 23px 10px;
  }
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section03
    .menu-detail
    .menu-detail-left
    .chui {
    padding: 13px 10px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section03
  .menu-detail
  .menu-detail-left
  .chui
  .text {
  position: relative;
}
body.celeb_reborn
  .celeb_reborncontent
  .section03
  .menu-detail
  .menu-detail-left
  .chui
  .text::after {
  content: "";
  position: absolute;
  display: block;
  width: 7px;
  height: 10px;
  background-image: url("../images/info/arw.svg");
  background-repeat: no-repeat;
  top: 3px;
  left: 0;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section03
    .menu-detail
    .menu-detail-left
    .chui
    .text::after {
    display: flex;
    top: 5px;
    left: 10px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section03
  .menu-detail
  .menu-detail-left
  .chui
  .text
  span {
  padding-left: 15px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section03
    .menu-detail
    .menu-detail-left
    .chui
    .text
    span {
    padding-left: 15px;
    font-size: 15px;
    font-size: 1.5rem;
    display: flex;
    letter-spacing: 3px;
    padding-left: 25px;
    line-height: 20px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section03
  .menu-detail
  .menu-detail-right {
  width: 35%;
  max-width: 300px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section03
    .menu-detail
    .menu-detail-right {
    width: 100%;
    max-width: 100%;
  }
}
body.celeb_reborn .celeb_reborncontent .section04 {
  margin-top: 50px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section04 {
    margin-top: 5px;
  }
}
body.celeb_reborn .celeb_reborncontent .section04 .section04-flowbox {
  padding-right: 80px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section04 .section04-flowbox {
    padding-right: 0;
  }
}
body.celeb_reborn .celeb_reborncontent .section04 .section04-flowbox .flow-bg {
  background-image: url("../images/celeb_reborn/img05.jpg");
  background-repeat: no-repeat;
  background-position: top;
  background-size: cover;
  width: calc(100% - 20%);
  height: 450px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section04
    .section04-flowbox
    .flow-bg {
    background-image: url("../images/celeb_reborn/img05-sp.jpg");
    height: 160px;
  }
}
body.celeb_reborn .celeb_reborncontent .section04 .flow-detail {
  max-width: 1120px;
  margin: 0 auto;
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section04 .flow-detail {
    justify-content: center;
    max-width: 100%;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section04
  .flow-detail
  .flow-detail-content {
  width: 100%;
  max-width: 740px;
  background: rgba(247, 245, 239, 0.9);
  padding: 53px 60px 38px;
  position: relative;
  top: -370px;
  margin-bottom: -370px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section04
    .flow-detail
    .flow-detail-content {
    width: calc(100% - 50px);
    top: -40px;
    padding: 43px 30px 28px;
    margin-bottom: -40px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section04
  .flow-detail
  .flow-detail-content
  .ttl-02 {
  display: flex;
  justify-content: center;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section04
    .flow-detail
    .flow-detail-content
    .ttl-02
    .en {
    font-size: 26px;
    font-size: 2.6rem;
  }
  body.celeb_reborn
    .celeb_reborncontent
    .section04
    .flow-detail
    .flow-detail-content
    .ttl-02
    .ja {
    margin-top: 0;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section04
  .flow-detail
  .flow-detail-content
  .flowlist {
  letter-spacing: 3px;
  margin-top: 37px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section04
    .flow-detail
    .flow-detail-content
    .flowlist {
    margin-top: 37px;
    letter-spacing: 2px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section04
  .flow-detail
  .flow-detail-content
  .flowlist
  .flowstep {
  display: flex;
  align-items: center;
  background: #fff;
  padding: 20px;
  margin-bottom: 10px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section04
    .flow-detail
    .flow-detail-content
    .flowlist
    .flowstep {
    display: block;
    padding: 10px 10px 15px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section04
  .flow-detail
  .flow-detail-content
  .flowlist
  .flowstep
  .stepleft {
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  background: #ceab74;
  color: #fff;
  height: 40px;
  width: 145px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-right: 20px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section04
    .flow-detail
    .flow-detail-content
    .flowlist
    .flowstep
    .stepleft {
    height: 30px;
    width: 100%;
    font-size: 15px;
    font-size: 1.5rem;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section04
  .flow-detail
  .flow-detail-content
  .flowlist
  .flowstep
  .stepright {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section04
    .flow-detail
    .flow-detail-content
    .flowlist
    .flowstep
    .stepright {
    font-size: 15px;
    font-size: 1.5rem;
    text-align: center;
    margin: 17px 0 0;
    letter-spacing: 0;
  }
}
body.celeb_reborn .celeb_reborncontent .section05 {
  margin-top: 140px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section05 {
    margin-top: 80px;
  }
}
body.celeb_reborn .celeb_reborncontent .section05 .ttl-07 {
  border: 1px solid #ceab74;
  margin-bottom: 60px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section05 .ttl-07 {
    border: none;
    position: relative;
    left: -25px;
    margin-bottom: 25px;
  }
}
body.celeb_reborn .celeb_reborncontent .section05 .ttl-07 .ja {
  background-image: url("../images/celeb_reborn/bg-tit.png");
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section05 .ttl-07 .ja {
    background-image: url("../images/celeb_reborn/bg-tit-sp.png");
  }
}
body.celeb_reborn .celeb_reborncontent .section05 .ttl-07 .en {
  color: #ceab74;
}
body.celeb_reborn .celeb_reborncontent .section05 .ryoukinbox {
  margin-bottom: 80px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section05 .ryoukinbox {
    margin-bottom: 45px;
  }
}
body.celeb_reborn .celeb_reborncontent .section05 .ryoukinbox .h5-tit {
  border-bottom: 1px #ceab74 solid;
  position: relative;
  color: #ceab74;
  padding-bottom: 18px;
  letter-spacing: 2px;
  margin-bottom: 33px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section05 .ryoukinbox .h5-tit {
    margin-bottom: 15px;
  }
}
body.celeb_reborn .celeb_reborncontent .section05 .ryoukinbox .h5-tit::after {
  content: "";
  position: absolute;
  display: block;
  height: 14px;
  width: 14px;
  background-color: #ceab74;
  top: 3px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section05 .ryoukinbox .h5-tit::after {
    height: 12px;
    width: 12px;
  }
}
body.celeb_reborn .celeb_reborncontent .section05 .ryoukinbox .h5-tit span {
  font-size: 23px;
  font-size: 2.3rem;
  font-weight: bold;
  padding-left: 35px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section05 .ryoukinbox .h5-tit span {
    font-size: 18px;
    font-size: 1.8rem;
    padding-left: 25px;
  }
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section05 .ryoukinbox .h5-titlh {
    line-height: 26px;
    padding-bottom: 11px;
  }
  body.celeb_reborn
    .celeb_reborncontent
    .section05
    .ryoukinbox
    .h5-titlh::after {
    top: 7px;
  }
  body.celeb_reborn .celeb_reborncontent .section05 .ryoukinbox .h5-titlh span {
    display: flex;
  }
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section05 .ryoukinbox p {
    line-height: 28px;
  }
}
body.celeb_reborn .celeb_reborncontent .section05 .ryoukinbox .note {
  font-size: 12px;
  font-size: 1.2rem;
  display: flex;
  margin: 20px 0 60px;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media screen and (max-width: 900px) {
  body.celeb_reborn .celeb_reborncontent .section05 .ryoukinbox .note {
    margin: 12px 0 18px;
  }
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section05 .ryoukinbox .note {
    line-height: 20px;
    margin: 10px 0 16px;
  }
}
body.celeb_reborn .celeb_reborncontent .section05 .ryoukinbox .menulist {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-top: 52px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section05 .ryoukinbox .menulist {
    display: block;
    margin-top: 22px;
  }
}
body.celeb_reborn .celeb_reborncontent .section05 .ryoukinbox .menulist li {
  width: 50%;
  max-width: 480px;
  border-bottom: 1px #e2e2e2 solid;
  padding-bottom: 22px;
  display: flex;
  align-items: center;
  font-size: 18px;
  font-size: 1.8rem;
  margin-bottom: 20px;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section05 .ryoukinbox .menulist li {
    width: 100%;
    max-width: 100%;
    display: block;
    padding-bottom: 15px;
    margin-bottom: 19px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section05
  .ryoukinbox
  .menulist
  li
  span {
  background: #969696;
  color: #fff;
  text-align: center;
  width: 150px;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 34px;
  margin-right: 30px;
  letter-spacing: 1px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section05
    .ryoukinbox
    .menulist
    li
    span {
    margin-right: 0;
    width: 100%;
    font-size: 14px;
    font-size: 1.4rem;
    margin-bottom: 17px;
    letter-spacing: 1px;
    height: 30px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section05
  .ryoukinbox
  .menulist
  li
  small {
  letter-spacing: 2px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section05
    .ryoukinbox
    .menulist
    li
    small {
    text-align: center;
    display: block;
    font-size: 15px;
    font-size: 1.5rem;
  }
}
body.celeb_reborn .celeb_reborncontent .section05 .timebox {
  margin-top: -20px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section05 .timebox {
    margin-top: 0;
  }
}
body.celeb_reborn .celeb_reborncontent .section05 .timebox .h6-tit {
  position: relative;
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 2px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section05 .timebox .h6-tit {
    font-size: 15px;
    font-size: 1.5rem;
    letter-spacing: 1px;
  }
}
body.celeb_reborn .celeb_reborncontent .section05 .timebox .h6-tit::after {
  background-image: url("../images/facial/icn_check.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 21px;
  height: 21px;
  content: "";
  margin: 0 auto;
  position: absolute;
  left: 0;
  top: -2px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section05 .timebox .h6-tit::after {
    left: 0;
    top: -4px;
  }
}
body.celeb_reborn .celeb_reborncontent .section05 .timebox .h6-tit span {
  padding-left: 40px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section05 .timebox .h6-tit span {
    padding-left: 30px;
  }
}
body.celeb_reborn .celeb_reborncontent .section05 .timebox .timebox-detail {
  background: #f7f5ef;
  padding: 40px 40px 30px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 30px;
  margin-bottom: 100px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section05 .timebox .timebox-detail {
    display: block;
    padding: 30px 30px 25px;
    margin-top: 20px;
    margin-bottom: 50px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section05
  .timebox
  .timebox-detail
  .timebox-detail-left {
  width: 35%;
  max-width: 310px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section05
    .timebox
    .timebox-detail
    .timebox-detail-left {
    width: 100%;
    max-width: 100%;
    margin-bottom: 18px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section05
  .timebox
  .timebox-detail
  .timebox-detail-left
  .h5-tit02 {
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 2px;
  text-align: center;
  margin-bottom: 25px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section05
    .timebox
    .timebox-detail
    .timebox-detail-left
    .h5-tit02 {
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: 1px;
    margin-bottom: 20px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section05
  .timebox
  .timebox-detail
  .timebox-detail-left
  .kaibox
  .time {
  text-align: center;
  color: #fff;
  font-size: 15px;
  font-size: 1.5rem;
  height: 30px;
  background: #ceab74;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  letter-spacing: 1px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section05
    .timebox
    .timebox-detail
    .timebox-detail-left
    .kaibox
    .time {
    font-size: 13px;
    font-size: 1.3rem;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section05
  .timebox
  .timebox-detail
  .timebox-detail-left
  .kaibox
  .price {
  display: flex;
  align-items: center;
  background: #fff;
  position: relative;
  height: 46px;
  display: flex;
  justify-content: center;
  align-items: center;
}
body.celeb_reborn
  .celeb_reborncontent
  .section05
  .timebox
  .timebox-detail
  .timebox-detail-left
  .kaibox
  .price
  em {
  font-size: 15px;
  font-size: 1.5rem;
  width: 40px;
  letter-spacing: 1px;
  display: block;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section05
    .timebox
    .timebox-detail
    .timebox-detail-left
    .kaibox
    .price
    em {
    width: 51px;
    text-align: center;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section05
  .timebox
  .timebox-detail
  .timebox-detail-left
  .kaibox
  .price
  span {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 1px;
  position: relative;
  margin-left: 40px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section05
    .timebox
    .timebox-detail
    .timebox-detail-left
    .kaibox
    .price
    span {
    margin-top: 2px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section05
  .timebox
  .timebox-detail
  .timebox-detail-left
  .kaibox
  .price
  span:before {
  background-image: url("../images/common/ico-arw1.svg");
  background-size: 16px 9px;
  content: "";
  margin: 0 auto;
  position: absolute;
  left: -25px;
  top: 3px;
  height: 9px;
  width: 16px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section05
    .timebox
    .timebox-detail
    .timebox-detail-left
    .kaibox
    .price
    span:before {
    top: 4px;
  }
}
body.celeb_reborn
  .celeb_reborncontent
  .section05
  .timebox
  .timebox-detail
  .timebox-detail-left
  .kaibox
  .price
  small {
  font-size: 12px;
  font-size: 1.2rem;
}
body.celeb_reborn
  .celeb_reborncontent
  .section05
  .timebox
  .timebox-detail
  .timebox-detail-right {
  width: 65%;
  max-width: 550px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section05
    .timebox
    .timebox-detail
    .timebox-detail-right {
    width: 100%;
    max-width: 100%;
  }
}
@media only screen and (max-width: 767px) and (max-width: 767px) {
  body.celeb_reborn
    .celeb_reborncontent
    .section05
    .timebox
    .timebox-detail
    .timebox-detail-right
    p {
    line-height: 28px;
  }
}
body.celeb_reborn .celeb_reborncontent .section05 .timebox02 .timebox-detail {
  padding: 40px;
}
@media only screen and (max-width: 767px) {
  body.celeb_reborn .celeb_reborncontent .section05 .timebox02 .timebox-detail {
    padding: 30px 30px 25px;
  }
}
body.celeb_reborn .celeb_reborncontent .section05 .section05-detail02 {
  margin-top: 100px;
}
body.celeb_reborn .celeb_reborncontent .section05 .section05-detail03 {
  margin-top: 100px;
}
body.celeb_reborn .celeb_reborncontent .section05 .section05-detail04 {
  margin-top: 100px;
}

body.column .cms-wrap {
  margin-top: 85px;
}
@media only screen and (max-width: 767px) {
  body.column .cms-wrap {
    margin-top: 66px;
    padding-bottom: 176px;
  }
}

body.column .cms-content {
  padding-bottom: 200px;
  width: calc(100% - 270px);
}
@media only screen and (max-width: 767px) {
  body.column .cms-content {
    padding-bottom: 80px;
    width: 100%;
  }
}

body.column ul.article-list {
  margin-bottom: 50px;
}
@media only screen and (max-width: 767px) {
  body.column ul.article-list {
    margin-bottom: 40px;
  }
}
body.column ul.article-list li {
  border-bottom: 1px solid #f4f4f4;
}
@media only screen and (min-width: 768px) {
  body.column ul.article-list li {
    cursor: pointer;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
  }
  body.column ul.article-list li:hover {
    opacity: 0.7;
  }
}
body.column ul.article-list li:first-child a {
  padding-top: 0;
}
body.column ul.article-list li a {
  padding: 30px 0;
}
@media only screen and (max-width: 767px) {
  body.column ul.article-list li a {
    padding: 20px 0 30px;
    flex-direction: column;
  }
}
body.column ul.article-list li .info-box {
  font-family: "Arial", "メイリオ";
  width: 100px;
}
@media only screen and (max-width: 767px) {
  body.column ul.article-list li .info-box {
    width: 100%;
  }
}
body.column ul.article-list li .info-box .date {
  color: #919191;
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.1em;
}
@media only screen and (max-width: 767px) {
  body.column ul.article-list li .info-box .date {
    display: inline-block;
  }
}
body.column ul.article-list li .info-box .category {
  display: inline-block;
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.1em;
  margin-top: 12px;
}
@media only screen and (max-width: 767px) {
  body.column ul.article-list li .info-box .category {
    margin-top: 0;
    margin-left: 30px;
  }
}
body.column ul.article-list li .txt-box {
  width: calc(100% - 190px);
}
@media only screen and (max-width: 767px) {
  body.column ul.article-list li .txt-box {
    width: 100%;
  }
}
body.column ul.article-list li .article-ttl {
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.1em;
  line-height: 1.866;
  margin-top: -5px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  body.column ul.article-list li .article-ttl {
    margin-top: 20px;
    line-height: 1.6;
  }
}

body.contact {
  background-color: #f4f4f4;
}
body.contact section.intro {
  padding-top: 85px;
}
@media only screen and (max-width: 767px) {
  body.contact section.intro {
    padding-top: 62px;
  }
}
body.contact section.intro .intro-txt {
  text-align: center;
  font-size: 15px;
  font-size: 1.5rem;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  letter-spacing: 0.1em;
  line-height: 32px;
  margin-top: 36px;
}
@media only screen and (max-width: 767px) {
  body.contact section.intro .intro-txt {
    text-align: left;
    padding: 0 25px;
    line-height: 28px;
    margin-top: 24px;
  }
}
body.contact section.intro .intro-txt .red {
  color: #eb3247;
  font-weight: bold;
}
@media only screen and (max-width: 767px) {
  body.contact section.intro .inner {
    width: 100%;
  }
  body.contact section.intro p.reg-txt {
    margin-left: auto;
    margin-right: auto;
    width: calc(100% - 50px);
  }
  body.contact section.intro .ttl-cont-02,
  body.contact section.intro .ttl-cont-03 {
    margin-left: auto;
    margin-right: auto;
    width: calc(100% - 50px);
  }
  body.contact section.intro .list-01,
  body.contact section.intro .list-02,
  body.contact section.intro p.info {
    margin-left: auto !important;
    margin-right: auto !important;
    width: calc(100% - 50px);
  }
}
body.contact section.intro .info {
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  position: relative;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: 0.08em;
  padding-left: 12px;
}
@media only screen and (max-width: 767px) {
  body.contact section.intro .info {
    line-height: 1.5;
  }
}
body.contact section.intro .info:last-child {
  margin-top: 10px;
  margin-bottom: 77px;
}
@media only screen and (max-width: 767px) {
  body.contact section.intro .info:last-child {
    margin-bottom: 45px;
  }
}
body.contact section.intro .info .ast {
  margin: 0 auto;
  position: absolute;
  left: 0;
  top: 0%;
}
body.contact section.intro section.intro-01 {
  padding: 90px 0 80px;
}
@media only screen and (max-width: 767px) {
  body.contact section.intro section.intro-01 {
    padding: 42px 0 77px;
  }
}
body.contact section.intro section.intro-01 .ttl-cont-01 {
  margin-bottom: 45px;
}
@media only screen and (max-width: 767px) {
  body.contact section.intro section.intro-01 .ttl-cont-01 {
    margin-bottom: 30px;
  }
}
body.contact section.intro section.intro-01 .item-01 {
  margin: 72px 0 102px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  body.contact section.intro section.intro-01 .item-01 {
    margin: 38px 0 38px;
  }
}
body.contact section.intro section.intro-01 .item-01 p {
  margin-top: 30px;
}
@media only screen and (max-width: 767px) {
  body.contact section.intro section.intro-01 .item-01 p {
    margin-top: 14px;
  }
}
@media only screen and (min-width: 768px) {
  body.contact section.intro section.intro-01 .item-01 img {
    margin: 0 auto;
    position: absolute;
    right: 59px;
    top: 0;
    width: 115px;
  }
}
body.contact section.intro section.intro-01 .item-02 .ttl-cont-02 {
  margin-bottom: 60px;
}
@media only screen and (max-width: 767px) {
  body.contact section.intro section.intro-01 .item-02 .ttl-cont-02 {
    margin-bottom: 23px;
  }
}
body.contact section.intro section.intro-01 .item-03 {
  margin: 76px 0 0;
  position: relative;
}
@media only screen and (max-width: 767px) {
  body.contact section.intro section.intro-01 .item-03 {
    margin: 50px 0 0;
  }
}
body.contact section.intro section.intro-01 .item-03 .txt1 {
  margin-top: -40px;
  margin-bottom: 22px;
}
@media only screen and (max-width: 767px) {
  body.contact section.intro section.intro-01 .item-03 .txt1 {
    margin-top: 10px;
    margin-bottom: 25px;
  }
}
body.contact section.intro section.intro-01 .item-03 .ttl-cont-02 {
  margin-bottom: 60px;
}
@media only screen and (max-width: 767px) {
  body.contact section.intro section.intro-01 .item-03 .ttl-cont-02 {
    margin-bottom: 23px;
  }
}
@media only screen and (min-width: 768px) {
  body.contact section.intro section.intro-01 .item-03 img {
    margin: 0 auto;
  }
}
body.contact section.intro section.intro-02 {
  padding: 0 0 80px;
}
@media only screen and (max-width: 767px) {
  body.contact section.intro section.intro-02 {
    padding: 0 0 77px;
  }
}
body.contact section.intro section.intro-02 .ttl-cont-01 {
  margin-bottom: 45px;
}
@media only screen and (max-width: 767px) {
  body.contact section.intro section.intro-02 .ttl-cont-01 {
    margin-bottom: 30px;
  }
}
body.contact section.intro section.intro-02 .item-01 {
  margin: 72px 0 98px;
  position: relative;
  padding-right: px;
}
@media only screen and (max-width: 767px) {
  body.contact section.intro section.intro-02 .item-01 {
    margin: 38px 0 38px;
  }
}
body.contact section.intro section.intro-02 .item-01 p {
  margin-top: 30px;
}
@media only screen and (min-width: 768px) {
  body.contact section.intro section.intro-02 .item-01 p {
    padding-right: 257px;
  }
}
@media only screen and (max-width: 767px) {
  body.contact section.intro section.intro-02 .item-01 p {
    margin-top: 14px;
  }
}
@media only screen and (min-width: 768px) {
  body.contact section.intro section.intro-02 .item-01 img {
    margin: 0 auto;
    position: absolute;
    right: 59px;
    top: 0;
    width: 115px;
  }
}
body.contact section.intro section.intro-02 .item-02 .ttl-cont-02 {
  margin-bottom: 60px;
}
@media only screen and (max-width: 767px) {
  body.contact section.intro section.intro-02 .item-02 .ttl-cont-02 {
    margin-bottom: 23px;
  }
}
body.contact section.intro section.intro-02 .item-02 .list-01 {
  margin: 80px 0;
}
@media only screen and (max-width: 767px) {
  body.contact section.intro section.intro-02 .item-02 .list-01 {
    margin: 40px 0 50px;
  }
}
body.contact section.intro section.intro-02 .item-02 .list-02 {
  margin: 30px 0 22px;
}
@media only screen and (max-width: 767px) {
  body.contact section.intro section.intro-02 .item-02 .list-02 {
    margin: 27px 0 22px;
  }
}
body.contact section.form {
  background-color: white;
}
body.contact section.form .sub-visual {
  margin-bottom: 107px;
  padding-left: calc(50% - 440px);
  padding-top: 200px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  body.contact section.form .sub-visual {
    margin-bottom: 27px;
    padding-top: 60px;
    padding-left: 0;
  }
}
body.contact section.form .sub-visual .txt-area {
  background-color: white;
  padding: 60px 60px 0 0;
  position: relative;
  z-index: 2;
  max-width: 660px;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  body.contact section.form .sub-visual .txt-area {
    margin-top: -40px;
    padding: 40px 30px 0 55px;
    max-width: none;
    width: calc(100% - 25px);
  }
}
body.contact section.form .sub-visual .txt-area p {
  margin-top: 36px;
}
@media only screen and (max-width: 767px) {
  body.contact section.form .sub-visual .txt-area p {
    margin-top: 39px;
  }
}
body.contact section.form .sub-visual .imager {
  background-size: cover;
  background-image: url("../images/contact/image-04.jpg");
  margin: 0 auto;
  position: absolute;
  right: 0;
  top: 120px;
  max-width: 700px;
  height: 300px;
  width: calc(60px + 50%);
}
@media only screen and (max-width: 767px) {
  body.contact section.form .sub-visual .imager {
    background-image: url("../images/contact/image-04_sp.jpg");
    position: static;
    margin-left: 75px;
    height: 160px;
    max-width: none;
    width: calc(100% - 75px);
  }
}
body.contact .scroll-hint-text {
  font-size: 10px;
  font-size: 1rem;
  font-family: "Arial", "メイリオ";
  margin-top: 0;
  position: relative;
  top: -15px;
}
body.contact .scroll-hint-icon:before {
  background-size: 22px 12px;
  background-image: url("../images/contact/arr.svg");
  position: relative;
  top: -10px;
}
body.contact .scroll-hint-icon:after {
  display: none;
}
body.contact .scroll-hint-icon {
  left: calc(50% - 40px);
  border-radius: 0px;
  height: 80px;
  width: 80px;
}

body.epilation .epilationcontent {
  margin-top: -5px;
  padding: 0 0 190px;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent {
    padding: 0 0 130px;
  }
}
body.epilation .epilationcontent p {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 28px;
  letter-spacing: 1px;
  color: #222443;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent p {
    text-align: justify;
    line-height: 28px;
    letter-spacing: 1.5px;
  }
}
body.epilation .epilationcontent .section01 {
  background: #e8edf0;
  position: relative;
  height: 880px;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section01 {
    height: 1230px;
  }
}
body.epilation .epilationcontent .section01 .bg-img {
  position: relative;
  background-image: url("../images/epilation/img.png");
  background-repeat: no-repeat;
  background-size: cover;
  display: block;
  width: 100%;
  height: 677px;
  padding-top: 80px;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section01 .bg-img {
    background-image: url("../images/epilation/img-sp.png");
    height: 290px;
    padding: 200px 25px 220px;
    background-size: contain;
  }
}
body.epilation .epilationcontent .section01 .bg-img .section01-container {
  width: 100%;
  max-width: 1090px;
  margin: 0 auto;
  position: relative;
}
body.epilation
  .epilationcontent
  .section01
  .bg-img
  .section01-container
  .detail {
  max-width: 715px;
  position: relative;
  margin-left: 450px;
}
@media screen and (max-width: 1180px) {
  body.epilation
    .epilationcontent
    .section01
    .bg-img
    .section01-container
    .detail {
    margin: 0 auto;
  }
}
body.epilation
  .epilationcontent
  .section01
  .bg-img
  .section01-container
  .detail
  .bg-title {
  font-size: 36px;
  font-size: 3.6rem;
  color: #121755;
  letter-spacing: 4px;
  text-align: center;
  letter-spacing: 6px;
  line-height: 65px;
  margin-bottom: 25px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section01
    .bg-img
    .section01-container
    .detail
    .bg-title {
    font-size: 24px;
    font-size: 2.4rem;
    letter-spacing: 3px;
    line-height: 40px;
    margin-bottom: 0;
  }
}
body.epilation
  .epilationcontent
  .section01
  .bg-img
  .section01-container
  .detail
  .bg-title
  em {
  font-size: 32px;
  font-size: 3.2rem;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section01
    .bg-img
    .section01-container
    .detail
    .bg-title
    em {
    font-size: 20px;
    font-size: 2rem;
  }
}
body.epilation
  .epilationcontent
  .section01
  .bg-img
  .section01-container
  .detail
  .bg-title
  small::before {
  content: "";
  position: absolute;
  width: 6px;
  height: 6px;
  background-color: #e64601;
  border-radius: 50%;
  top: -5px;
  margin-left: 10px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section01
    .bg-img
    .section01-container
    .detail
    .bg-title
    small::before {
    top: -10px;
  }
}
body.epilation
  .epilationcontent
  .section01
  .bg-img
  .section01-container
  .detail
  .text-img {
  margin: 25px 0;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section01
    .bg-img
    .section01-container
    .detail
    .text-img {
    margin: 10px 0 15px;
  }
}
body.epilation .epilationcontent .section01 .blue-section {
  background: #054688;
  mix-blend-mode: multiply;
  color: #fff;
  width: 100%;
  position: relative;
  top: -150px;
  padding: 70px 0;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section01 .blue-section {
    top: 0;
    margin-top: 114px;
    padding: 50px 25px;
  }
}
body.epilation .epilationcontent .section01 .blue-section .blue-section-detail {
  width: 100%;
  max-width: 1090px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section01
    .blue-section
    .blue-section-detail {
    display: block;
    max-width: 100%;
  }
}
body.epilation
  .epilationcontent
  .section01
  .blue-section
  .blue-section-detail
  .blue-section-left {
  width: 65%;
  max-width: 700px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section01
    .blue-section
    .blue-section-detail
    .blue-section-left {
    width: 100%;
    max-width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section01
    .blue-section
    .blue-section-detail
    .blue-section-left
    .img-sp {
    margin: 30px 0 25px;
  }
}
body.epilation
  .epilationcontent
  .section01
  .blue-section
  .blue-section-detail
  .blue-section-left
  .h4listleft {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold;
  position: relative;
  margin-left: 20px;
  margin-bottom: 20px;
  display: block;
  letter-spacing: 2px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section01
    .blue-section
    .blue-section-detail
    .blue-section-left
    .h4listleft {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 28px;
    margin-bottom: -3px;
  }
}
body.epilation
  .epilationcontent
  .section01
  .blue-section
  .blue-section-detail
  .blue-section-left
  .h4listleft::before {
  content: "";
  position: absolute;
  display: block;
  height: 100%;
  width: 1px;
  background-color: #fff;
  left: -20px;
}
body.epilation
  .epilationcontent
  .section01
  .blue-section
  .blue-section-detail
  .blue-section-left
  p {
  color: #fff;
  line-height: 33px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section01
    .blue-section
    .blue-section-detail
    .blue-section-left
    p {
    line-height: 29px;
  }
}
body.epilation
  .epilationcontent
  .section01
  .blue-section
  .blue-section-detail
  .blue-section-right {
  width: 30%;
  max-width: 300px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section01
    .blue-section
    .blue-section-detail
    .blue-section-right {
    width: 100%;
    max-width: 100%;
  }
}
body.epilation .epilationcontent .section02 {
  background: #e8edf0;
  padding: 90px 0 120px;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section02 {
    padding: 60px 25px;
  }
}
body.epilation .epilationcontent .section02 .section02-content {
  background: #fff;
  max-width: 1160px;
  padding: 77px;
  margin: 0 auto;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section02 .section02-content {
    padding: 37px 30px 15px;
  }
}
body.epilation
  .epilationcontent
  .section02
  .section02-content
  .section02-content01 {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section02
    .section02-content
    .section02-content01 {
    display: block;
  }
}
body.epilation
  .epilationcontent
  .section02
  .section02-content
  .section02-content01
  .ttl-05 {
  margin-bottom: 25px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section02
    .section02-content
    .section02-content01
    .ttl-05 {
    margin-bottom: 17px;
  }
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section02
    .section02-content
    .section02-content01
    .img-sp {
    margin: 25px 0 20px;
  }
}
body.epilation
  .epilationcontent
  .section02
  .section02-content
  .section02-content01
  .section02-content03-left {
  width: 60%;
  max-width: 545px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section02
    .section02-content
    .section02-content01
    .section02-content03-left {
    width: 100%;
    max-width: 100%;
  }
}
body.epilation
  .epilationcontent
  .section02
  .section02-content
  .section02-content01
  .section02-content03-right {
  width: 40%;
  max-width: 380px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section02
    .section02-content
    .section02-content01
    .section02-content03-right {
    width: 100%;
    max-width: 100%;
  }
}
body.epilation
  .epilationcontent
  .section02
  .section02-content
  .section02-content02 {
  display: flex;
  justify-content: space-between;
  margin-top: 60px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section02
    .section02-content
    .section02-content02 {
    display: block;
    margin-top: 37px;
  }
}
body.epilation
  .epilationcontent
  .section02
  .section02-content
  .section02-content02
  .img-left,
body.epilation
  .epilationcontent
  .section02
  .section02-content
  .section02-content02
  .img-right {
  width: 48%;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section02
    .section02-content
    .section02-content02
    .img-left,
  body.epilation
    .epilationcontent
    .section02
    .section02-content
    .section02-content02
    .img-right {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section02
    .section02-content
    .section02-content02
    .img-left
    .img,
  body.epilation
    .epilationcontent
    .section02
    .section02-content
    .section02-content02
    .img-right
    .img {
    margin-top: -7px;
  }
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section02
    .section02-content
    .section02-content02
    .img-right {
    margin-top: 45px;
  }
}
body.epilation
  .epilationcontent
  .section02
  .section02-content
  .section02-content03 {
  margin-top: 100px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section02
    .section02-content
    .section02-content03 {
    margin-top: 40px;
  }
}
body.epilation
  .epilationcontent
  .section02
  .section02-content
  .section02-content03
  .text {
  margin-top: 30px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section02
    .section02-content
    .section02-content03
    .text {
    margin-top: 25px;
    line-height: 28px;
  }
}
body.epilation
  .epilationcontent
  .section02
  .section02-content
  .section02-content04 {
  margin-top: 55px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section02
    .section02-content
    .section02-content04 {
    margin-top: 35px;
  }
}
body.epilation
  .epilationcontent
  .section02
  .section02-content
  .section02-content04
  .h5-point {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  border: 1px solid #ceab74;
  border-radius: 30px;
  padding: 17px 0;
  margin-bottom: 40px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section02
    .section02-content
    .section02-content04
    .h5-point {
    padding: 16px 0 17px;
    margin-bottom: 30px;
  }
}
body.epilation
  .epilationcontent
  .section02
  .section02-content
  .section02-content04
  .h5-point
  img {
  height: 10px;
}
body.epilation
  .epilationcontent
  .section02
  .section02-content
  .section02-content04
  .h5-point
  .text {
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  color: #ceab74;
  margin: 0 15px;
  letter-spacing: 2px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section02
    .section02-content
    .section02-content04
    .h5-point
    .text {
    font-size: 18px;
    font-size: 1.8rem;
    margin: 0 12px;
  }
}
body.epilation
  .epilationcontent
  .section02
  .section02-content
  .section02-content04
  .pointlist {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
body.epilation
  .epilationcontent
  .section02
  .section02-content
  .section02-content04
  .pointlist
  li {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  width: 33%;
  max-width: 328px;
  background: #f7f5ef;
  color: #222443;
  height: 80px;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 2px;
  margin-bottom: 8px;
  font-weight: bold;
  text-align: center;
  line-height: 25px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section02
    .section02-content
    .section02-content04
    .pointlist
    li {
    width: 100%;
    font-size: 15px;
    font-size: 1.5rem;
    height: 60px;
    text-align: center;
    line-height: 20px;
    margin-bottom: 10px;
  }
}
body.epilation
  .epilationcontent
  .section02
  .section02-content
  .section02-content04
  .pointlist
  li
  em {
  font-size: 15px;
  font-size: 1.5rem;
  margin-top: -15px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section02
    .section02-content
    .section02-content04
    .pointlist
    li
    em {
    font-size: 12px;
    font-size: 1.2rem;
    margin-top: 0;
  }
}
body.epilation
  .epilationcontent
  .section02
  .section02-content
  .section02-content05 {
  background: #f4f4f4;
  padding: 40px 50px 25px;
  margin-top: 80px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section02
    .section02-content
    .section02-content05 {
    padding: 32px 30px 30px;
    width: calc(100% + 30px);
    position: relative;
    left: -15px;
    margin-top: 35px;
  }
}
body.epilation
  .epilationcontent
  .section02
  .section02-content
  .section02-content05
  .ttl-05 {
  margin-bottom: 30px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section02
    .section02-content
    .section02-content05
    .ttl-05 {
    margin-bottom: 17px;
  }
}
body.epilation
  .epilationcontent
  .section02
  .section02-content
  .section02-content05
  .detail04-list {
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 1px;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section02
    .section02-content
    .section02-content05
    .detail04-list {
    line-height: 28px;
    letter-spacing: 0;
  }
}
body.epilation
  .epilationcontent
  .section02
  .section02-content
  .section02-content05
  .detail04-list
  .detail04-list-detail {
  position: relative;
  margin-bottom: 8px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section02
    .section02-content
    .section02-content05
    .detail04-list
    .detail04-list-detail {
    display: flex;
    margin-bottom: 6px;
  }
}
body.epilation
  .epilationcontent
  .section02
  .section02-content
  .section02-content05
  .detail04-list
  .detail04-list-detail::after {
  content: "";
  position: absolute;
  display: block;
  width: 7px;
  height: 10px;
  background-image: url("../images/info/arw.svg");
  background-repeat: no-repeat;
  top: 7px;
  left: 0;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section02
    .section02-content
    .section02-content05
    .detail04-list
    .detail04-list-detail::after {
    display: flex;
  }
}
body.epilation
  .epilationcontent
  .section02
  .section02-content
  .section02-content05
  .detail04-list
  .detail04-list-detail
  span {
  display: inline-block;
  padding-left: 20px;
  line-height: 1.7;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section02
    .section02-content
    .section02-content05
    .detail04-list
    .detail04-list-detail
    span {
    padding-left: 15px;
  }
}
body.epilation .epilationcontent .section03 {
  margin-top: 120px;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 {
    margin-top: 60px;
  }
}
body.epilation .epilationcontent .section03 .links {
  display: flex;
  justify-content: space-between;
  padding: 0 55px;
  margin-bottom: 120px;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .links {
    display: block;
    padding: 0;
    margin-bottom: 100px;
  }
}
body.epilation .epilationcontent .section03 .links > a {
  width: 33%;
  max-width: 290px;
  height: 350px;
  display: block;
  overflow: hidden;
  position: relative;
}
body.epilation .epilationcontent .section03 .links > a:hover .bg {
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1);
  -ms-transform: scale(1.1);
  -o-transform: scale(1.1);
  transform: scale(1.1);
}
body.epilation
  .epilationcontent
  .section03
  .links
  > a:hover
  .label
  .arrow:before {
  left: calc(50% + 100%);
}
body.epilation
  .epilationcontent
  .section03
  .links
  > a:hover
  .label
  .arrow:after {
  left: 50%;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .links > a {
    width: 100%;
    max-width: 100%;
    height: 180px;
  }
  body.epilation .epilationcontent .section03 .links > a:nth-child(n + 2) {
    margin-top: 10px;
  }
}
body.epilation .epilationcontent .section03 .links > a .bg {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: top;
  height: 100%;
  position: relative;
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  height: 100%;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .links > a .bg {
    padding-top: 0 !important;
  }
}
body.epilation .epilationcontent .section03 .links > a .label {
  height: 40px;
  display: block;
  position: relative;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 11px 0 0 23px;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .links > a .label {
    padding: 12px 0 0 20px;
  }
}
body.epilation .epilationcontent .section03 .links > a .label:after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  mix-blend-mode: multiply;
}
body.epilation .epilationcontent .section03 .links > a .label .txt {
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.15em;
  color: #fff;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .links > a .label .txt {
    font-size: 16px;
    font-size: 1.6rem;
  }
}
body.epilation .epilationcontent .section03 .links > a .label .arrow {
  content: "";
  width: 40px;
  height: 40px;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  border-left: #fff solid 1px;
  overflow: hidden;
}
body.epilation .epilationcontent .section03 .links > a .label .arrow:after,
body.epilation .epilationcontent .section03 .links > a .label .arrow:before {
  content: "";
  width: 10.85px;
  height: 6.78px;
  background-image: url("../images/common/ico-arow-white.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(90deg);
  -moz-transform: translate(-50%, -50%) rotate(90deg);
  -ms-transform: translate(-50%, -50%) rotate(90deg);
  -o-transform: translate(-50%, -50%) rotate(90deg);
  transform: translate(-50%, -50%) rotate(90deg);
  transition: all 0.5s;
}
body.epilation .epilationcontent .section03 .links > a .label .arrow:before {
  left: 50%;
}
body.epilation .epilationcontent .section03 .links > a .label .arrow:after {
  left: calc(50% - 100%);
}
body.epilation .epilationcontent .section03 .links > a:nth-child(1) .bg {
  background-image: url("../images/epilation/img09.jpg");
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .links > a:nth-child(1) .bg {
    background-image: url("../images/epilation/img09-sp.jpg");
  }
}
body.epilation
  .epilationcontent
  .section03
  .links
  > a:nth-child(1)
  .label:after {
  background-color: #79c1f5;
}
body.epilation .epilationcontent .section03 .links > a:nth-child(2) {
  margin-top: 60px;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .links > a:nth-child(2) {
    margin-top: 10px;
  }
}
body.epilation .epilationcontent .section03 .links > a:nth-child(2) .bg {
  background-image: url("../images/epilation/img07.jpg");
  padding-top: 89.6551724%;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .links > a:nth-child(2) .bg {
    background-image: url("../images/epilation/img07-sp.jpg");
  }
}
body.epilation
  .epilationcontent
  .section03
  .links
  > a:nth-child(2)
  .label:after {
  background-color: #ef91cb;
}
body.epilation .epilationcontent .section03 .links > a:nth-child(3) .bg {
  background-image: url("../images/epilation/img08.jpg");
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .links > a:nth-child(3) .bg {
    background-image: url("../images/epilation/img08-sp.jpg");
  }
}
body.epilation
  .epilationcontent
  .section03
  .links
  > a:nth-child(3)
  .label:after {
  background-color: #f79e77;
}
body.epilation .epilationcontent .section03 .course .h5-tit {
  border-bottom: 1px #ef91cb solid;
  position: relative;
  color: #ef91cb;
  padding-bottom: 18px;
  letter-spacing: 2px;
  margin-bottom: 22px;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .course .h5-tit {
    margin-bottom: 15px;
  }
}
body.epilation .epilationcontent .section03 .course .h5-tit::after {
  content: "";
  position: absolute;
  display: block;
  height: 14px;
  width: 14px;
  background-color: #ef91cb;
  top: 3px;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .course .h5-tit::after {
    height: 12px;
    width: 12px;
  }
}
body.epilation .epilationcontent .section03 .course .h5-tit span {
  font-size: 23px;
  font-size: 2.3rem;
  font-weight: bold;
  padding-left: 35px;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .course .h5-tit span {
    font-size: 18px;
    font-size: 1.8rem;
    padding-left: 25px;
  }
}
body.epilation .epilationcontent .section03 .course .h5-tit01 {
  border-bottom: 1px #58ace8 solid;
  color: #58ace8;
}
body.epilation .epilationcontent .section03 .course .h5-tit01::after {
  background-color: #58ace8;
}
body.epilation .epilationcontent .section03 .course .h5-tit02 {
  border-bottom: 1px #e8875c solid;
  color: #e8875c;
  display: flex;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .course .h5-tit02 {
    display: block;
  }
}
body.epilation .epilationcontent .section03 .course .h5-tit02::after {
  background-color: #e8875c;
}
body.epilation .epilationcontent .section03 .course .h5-tit02 small {
  color: #fff;
  font-size: 16px;
  font-size: 1.6rem;
  width: 260px;
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  letter-spacing: 1px;
  background-color: #ceab74;
  border-radius: 20px;
  margin-left: 30px;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .course .h5-tit02 small {
    width: 100%;
    margin-left: 0;
    margin-top: 15px;
    font-size: 15px;
    font-size: 1.5rem;
    height: 26px;
  }
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .course p {
    line-height: 28px;
  }
}
body.epilation .epilationcontent .section03 .course .coursedetail01 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-top: 42px;
}
@media only screen and (min-width: 768px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail01.graybg
    .coursedetail01-detail {
    background: #f4f4f4;
  }
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .course .coursedetail01 {
    display: block;
    margin-top: 22px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail01
  .coursedetail01-detail {
  width: 33%;
  max-width: 328px;
  margin-bottom: 10px;
}
@media only screen and (min-width: 768px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail01
    .coursedetail01-detail {
    background-color: #f4f4f4;
  }
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail01
    .coursedetail01-detail {
    width: 100%;
    max-width: 100%;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail01
  .coursedetail01-detail
  h5 {
  background: #f4f4f4;
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  height: 70px;
  display: flex;
  justify-content: center;
  align-items: center;
  letter-spacing: 4px;
  text-align: center;
  line-height: 22px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail01
    .coursedetail01-detail
    h5 {
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: 2px;
    height: 60px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail01
  .coursedetail01-detail
  h5
  em {
  font-size: 15px;
  font-size: 1.5rem;
  display: contents;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail01
    .coursedetail01-detail
    h5
    em {
    font-size: 12px;
    font-size: 1.2rem;
    display: block;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail01
  .coursedetail01-detail
  .time {
  text-align: center;
  color: #fff;
  font-size: 15px;
  font-size: 1.5rem;
  height: 30px;
  background: #054688;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  letter-spacing: 1px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail01
    .coursedetail01-detail
    .time {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail01
  .coursedetail01-detail
  .price {
  background: #f4f4f4;
  padding: 20px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail01
    .coursedetail01-detail
    .price {
    padding: 15px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail01
  .coursedetail01-detail
  .price
  .price-content {
  background: #fff;
  padding: 20px 0 18px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail01
    .coursedetail01-detail
    .price
    .price-content {
    padding: 20px 0;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail01
  .coursedetail01-detail
  .price
  .price-content
  .nedan01 {
  font-size: 15px;
  font-size: 1.5rem;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  text-align: center;
  letter-spacing: 1px;
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail01
  .coursedetail01-detail
  .price
  .price-content
  .nedan01
  em {
  font-size: 12px;
  font-size: 1.2rem;
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail01
  .coursedetail01-detail
  .price
  .price-content
  .nedan02 {
  font-size: 26px;
  font-size: 2.6rem;
  letter-spacing: 4px;
  font-weight: bold;
  margin-left: 40px;
  display: flex;
  justify-content: center;
  align-items: baseline;
  color: #ceab74;
  margin-top: 22px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail01
    .coursedetail01-detail
    .price
    .price-content
    .nedan02 {
    margin-top: 10px;
    font-size: 22px;
    font-size: 2.2rem;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail01
  .coursedetail01-detail
  .price
  .price-content
  .nedan02
  span {
  position: relative;
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail01
  .coursedetail01-detail
  .price
  .price-content
  .nedan02
  span:before {
  background-image: url("../images/common/ico-arw1.svg");
  background-size: 16px 9px;
  content: "";
  margin: 0 auto;
  position: absolute;
  left: -25px;
  top: 6px;
  height: 9px;
  width: 16px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail01
    .coursedetail01-detail
    .price
    .price-content
    .nedan02
    span:before {
    top: 4px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail01
  .coursedetail01-detail
  .price
  .price-content
  .nedan02
  small {
  font-size: 15px;
  font-size: 1.5rem;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail01
    .coursedetail01-detail
    .price
    .price-content
    .nedan02
    small {
    font-size: 12px;
    font-size: 1.2rem;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail01
  .coursedetail01-detail
  .price01 {
  padding-bottom: 0;
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail01
  .coursedetail01-detail
  .price02 {
  padding-top: 5px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail01
    .coursedetail01-detail
    .price02 {
    padding-top: 10px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail01
  .coursedetail01-detail
  .price03
  .price-content {
  display: flex;
  align-items: center;
  height: 46px;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail01
    .coursedetail01-detail
    .price03
    .price-content {
    margin: 15px 0;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail01
  .coursedetail01-detail
  .price03
  .price-content
  em {
  font-size: 15px;
  font-size: 1.5rem;
  width: 52px;
  letter-spacing: 1px;
  display: block;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail01
    .coursedetail01-detail
    .price03
    .price-content
    em {
    width: 51px;
    text-align: center;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail01
  .coursedetail01-detail
  .price03
  .price-content
  span {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 1px;
  position: relative;
  margin-left: 40px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail01
    .coursedetail01-detail
    .price03
    .price-content
    span {
    margin-top: 2px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail01
  .coursedetail01-detail
  .price03
  .price-content
  span:before {
  background-image: url("../images/common/ico-arw1.svg");
  background-size: 16px 9px;
  content: "";
  margin: 0 auto;
  position: absolute;
  left: -25px;
  top: 3px;
  height: 9px;
  width: 16px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail01
    .coursedetail01-detail
    .price03
    .price-content
    span:before {
    top: 4px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail01
  .coursedetail01-detail
  .price03
  .price-content
  small {
  font-size: 12px;
  font-size: 1.2rem;
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail01
  .coursedetail01-detail
  .text01 {
  margin-bottom: 10px;
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail01
  .coursedetail01-detail
  .text02 {
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 1px;
  font-weight: bold;
  position: relative;
  text-align: center;
  top: 30px;
  margin-bottom: 20px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail01
    .coursedetail01-detail
    .text02 {
    top: 5px;
    margin-bottom: -9px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail01
  .coursedetail01-detail
  .text02::before {
  content: "";
  position: absolute;
  height: 1px;
  width: 15px;
  background-color: #222443;
  display: block;
  top: 7px;
  left: 24px;
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail01
  .coursedetail01-detail
  .text02::after {
  content: "";
  position: absolute;
  height: 1px;
  width: 15px;
  background-color: #222443;
  display: block;
  top: 7px;
  right: 24px;
}
body.epilation .epilationcontent .section03 .course .coursedetail02 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-top: 42px;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .course .coursedetail02 {
    display: block;
    margin-top: 30px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail02
  .coursedetail02-detail {
  width: 33%;
  max-width: 328px;
  margin-bottom: 10px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail02
    .coursedetail02-detail {
    width: 100%;
    max-width: 100%;
    margin-bottom: 10px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail02
  .coursedetail02-detail
  h5 {
  background: #f7f5ef;
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  height: 70px;
  display: flex;
  justify-content: center;
  align-items: center;
  letter-spacing: 4px;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail02
    .coursedetail02-detail
    h5 {
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: 2px;
    height: 60px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail02
  .coursedetail02-detail
  h5
  em {
  font-size: 15px;
  font-size: 1.5rem;
  display: contents;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail02
    .coursedetail02-detail
    h5
    em {
    font-size: 12px;
    font-size: 1.2rem;
    display: block;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail02
  .coursedetail02-detail
  .time {
  text-align: center;
  color: #fff;
  font-size: 15px;
  font-size: 1.5rem;
  height: 30px;
  background: #ceab74;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  letter-spacing: 1px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail02
    .coursedetail02-detail
    .time {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail02
  .coursedetail02-detail
  .price {
  background: #f7f5ef;
  padding: 20px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail02
    .coursedetail02-detail
    .price {
    padding: 15px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail02
  .coursedetail02-detail
  .price
  .price-content {
  background: #fff;
  padding: 13px 0 10px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail02
    .coursedetail02-detail
    .price
    .price-content {
    padding: 15px 0 13px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail02
  .coursedetail02-detail
  .price
  .price-content
  .nedan02 {
  font-size: 26px;
  font-size: 2.6rem;
  letter-spacing: 3px;
  margin-left: 15px;
  font-weight: bold;
  display: flex;
  justify-content: center;
  align-items: baseline;
  color: #222443;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail02
    .coursedetail02-detail
    .price
    .price-content
    .nedan02 {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail02
  .coursedetail02-detail
  .price
  .price-content
  .nedan02
  small {
  font-size: 15px;
  font-size: 1.5rem;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail02
    .coursedetail02-detail
    .price
    .price-content
    .nedan02
    small {
    font-size: 12px;
    font-size: 1.2rem;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail04
  .coursedetail04-detail-s
  h5 {
  background-color: #edf6fa;
  color: #4387d6;
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail04
  .coursedetail04-detail-s
  .time {
  background-color: #4387d6;
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail04
  .coursedetail04-detail-s
  .price {
  background-color: #edf6fa;
  padding: 13px 20px 20px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail04
    .coursedetail04-detail-s
    .price {
    padding: 15px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail04
  .coursedetail04-detail-s
  .price
  .text01 {
  line-height: 28px;
  margin-bottom: 23px;
  height: 168px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail04
    .coursedetail04-detail-s
    .price
    .text01 {
    height: auto;
    line-height: 24px;
    margin-bottom: 15px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail04
  .coursedetail04-detail-s
  .price
  .text02 {
  margin-bottom: 12px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail04
    .coursedetail04-detail-s
    .price
    .text02 {
    margin-bottom: -13px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail04
  .coursedetail04-detail-m
  h5 {
  background-color: #fcf0f7;
  color: #ef66b0;
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail04
  .coursedetail04-detail-m
  .time {
  background-color: #ef66b0;
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail04
  .coursedetail04-detail-m
  .price {
  background-color: #fcf0f7;
  padding: 13px 20px 20px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail04
    .coursedetail04-detail-m
    .price {
    padding: 15px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail04
  .coursedetail04-detail-m
  .price
  .text01 {
  line-height: 28px;
  margin-bottom: 23px;
  height: 168px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail04
    .coursedetail04-detail-m
    .price
    .text01 {
    line-height: 24px;
    height: auto;
    margin-bottom: 15px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail04
  .coursedetail04-detail-m
  .price
  .text02 {
  margin-bottom: 12px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail04
    .coursedetail04-detail-m
    .price
    .text02 {
    margin-bottom: -13px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail04
  .coursedetail04-detail-l
  h5 {
  background-color: #fff8e3;
  color: #ef7540;
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail04
  .coursedetail04-detail-l
  .time {
  background-color: #ef7540;
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail04
  .coursedetail04-detail-l
  .price {
  background-color: #fff8e3;
  padding: 13px 20px 20px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail04
    .coursedetail04-detail-l
    .price {
    padding: 15px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail04
  .coursedetail04-detail-l
  .price
  .text01 {
  line-height: 28px;
  margin-bottom: 23px;
  height: 168px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail04
    .coursedetail04-detail-l
    .price
    .text01 {
    height: auto;
    line-height: 24px;
    margin-bottom: 15px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail04
  .coursedetail04-detail-l
  .price
  .text02 {
  margin-bottom: 12px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .course
    .coursedetail04
    .coursedetail04-detail-l
    .price
    .text02 {
    margin-bottom: -13px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail04
  .uncolor
  h5 {
  background-color: #f4f4f4;
  color: #054688;
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail04
  .uncolor
  .time {
  background-color: #054688;
}
body.epilation
  .epilationcontent
  .section03
  .course
  .coursedetail04
  .uncolor
  .price {
  background-color: #f4f4f4;
}
body.epilation .epilationcontent .section03 .course02 {
  margin-top: 67px;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .course02 {
    margin-top: 50px;
  }
}
body.epilation .epilationcontent .section03 .course02 .h5-course02 {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  border: 1px solid #ceab74;
  border-radius: 30px;
  padding: 17px 0;
  margin-bottom: 40px;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .course02 .h5-course02 {
    padding: 14px 0 15px;
    margin-bottom: 0;
    align-items: center;
    border-radius: 50px;
  }
}
body.epilation .epilationcontent .section03 .course02 .h5-course02 img {
  height: 10px;
}
body.epilation .epilationcontent .section03 .course02 .h5-course02 .text {
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  color: #ceab74;
  margin: 0 15px;
  letter-spacing: 2px;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .course02 .h5-course02 .text {
    font-size: 15px;
    font-size: 1.5rem;
    margin: 0 12px;
    text-align: center;
    line-height: 22px;
  }
}
body.epilation .epilationcontent .section03 .course03 {
  margin-top: 90px;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .course03 {
    margin-top: 50px;
  }
}
body.epilation .epilationcontent .section03 .course03 .h5-tit {
  margin-bottom: 35px;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .course03 .h5-tit {
    margin-bottom: 15px;
  }
}
body.epilation .epilationcontent .section03 .course04 {
  margin-top: 90px;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .course04 {
    margin-top: 50px;
  }
}
body.epilation .epilationcontent .section03 .course04 .h5-tit {
  margin-bottom: 35px;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .course04 .h5-tit {
    margin-bottom: 15px;
  }
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .course04 .courseimg {
    margin-bottom: 30px;
  }
}
body.epilation .epilationcontent .section03 .anchor02-content .ttl-07 {
  border: 1px solid #e379ba;
  margin-bottom: 50px;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .anchor02-content .ttl-07 {
    border: none;
    position: relative;
    left: -25px;
    margin-bottom: 25px;
  }
}
body.epilation .epilationcontent .section03 .anchor02-content .ttl-07 .ja {
  background-image: url("../images/epilation/hdg01.png");
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .anchor02-content .ttl-07 .ja {
    background-image: url("../images/epilation/hdg01-sp.png");
  }
}
body.epilation .epilationcontent .section03 .anchor02-content .ttl-07 .en {
  color: #e379ba;
}
body.epilation
  .epilationcontent
  .section03
  .anchor02-content
  .anchor02-detailbox
  .aboutbox {
  display: flex;
  margin-bottom: 100px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .anchor02-content
    .anchor02-detailbox
    .aboutbox {
    display: block;
    margin-bottom: 45px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .anchor02-content
  .anchor02-detailbox
  .aboutbox
  .aboutboxleft {
  width: 36%;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .anchor02-content
    .anchor02-detailbox
    .aboutbox
    .aboutboxleft {
    width: 100%;
  }
}
body.epilation
  .epilationcontent
  .section03
  .anchor02-content
  .anchor02-detailbox
  .aboutbox
  .aboutboxright {
  width: 64%;
  background: #faf5f9;
  padding: 35px 40px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .anchor02-content
    .anchor02-detailbox
    .aboutbox
    .aboutboxright {
    padding: 30px 30px 33px;
    width: 100%;
  }
}
body.epilation
  .epilationcontent
  .section03
  .anchor02-content
  .anchor02-detailbox
  .aboutbox
  .aboutboxright
  .ttl-05 {
  color: #e379ba;
  margin-bottom: 25px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .anchor02-content
    .anchor02-detailbox
    .aboutbox
    .aboutboxright
    .ttl-05 {
    font-size: 18px;
    font-size: 1.8rem;
    margin-bottom: 20px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .anchor02-content
  .anchor02-detailbox
  .aboutbox
  .aboutboxright
  .ttl-05
  em {
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 1px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .anchor02-content
    .anchor02-detailbox
    .aboutbox
    .aboutboxright
    .ttl-05
    em {
    font-size: 12px;
    font-size: 1.2rem;
  }
}
body.epilation
  .epilationcontent
  .section03
  .anchor02-content
  .anchor02-detailbox
  .aboutbox
  .aboutboxright
  .ttl-05::before {
  border-left: 1px solid #e379ba;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .anchor02-content
    .anchor02-detailbox
    .aboutbox
    .aboutboxright
    p {
    line-height: 28px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .anchor02-content
  .anchor02-detailbox
  .aboutbox
  .aboutboxright
  .c-btn {
  margin-top: 30px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .anchor02-content
    .anchor02-detailbox
    .aboutbox
    .aboutboxright
    .c-btn {
    margin-top: 24px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .anchor02-content
  .anchor02-detailbox
  .aboutbox
  .aboutboxright
  .c-btn
  a {
  padding-left: 50px;
  background-color: #e379ba;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .anchor02-content
    .anchor02-detailbox
    .aboutbox
    .aboutboxright
    .c-btn
    a {
    padding-left: 30px;
    min-width: 100%;
  }
}
body.epilation
  .epilationcontent
  .section03
  .anchor02-content
  .anchor02-detailbox
  .aboutbox
  .aboutboxright
  .c-btn
  a::after {
  background-image: url("../images/epilation/icn_pdf.svg");
  width: 20px;
  height: 22px;
  left: 50px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .anchor02-content
    .anchor02-detailbox
    .aboutbox
    .aboutboxright
    .c-btn
    a::after {
    left: 22px;
    width: 14px;
    height: 16px;
  }
}
body.epilation .epilationcontent .section03 .anchor01-content {
  margin-top: 110px;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .anchor01-content {
    margin-top: 95px;
  }
}
body.epilation .epilationcontent .section03 .anchor01-content .ttl-07 {
  border: 1px solid #58ace8;
  margin-bottom: 50px;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .anchor01-content .ttl-07 {
    border: none;
    position: relative;
    left: -25px;
    margin-bottom: 25px;
  }
}
body.epilation .epilationcontent .section03 .anchor01-content .ttl-07 .ja {
  background-image: url("../images/epilation/hdg02.png");
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .anchor01-content .ttl-07 .ja {
    background-image: url("../images/epilation/hdg02-sp.png");
  }
}
body.epilation .epilationcontent .section03 .anchor01-content .ttl-07 .en {
  color: #58ace8;
}
body.epilation
  .epilationcontent
  .section03
  .anchor01-content
  .anchor01-detailbox
  .aboutbox {
  display: flex;
  margin-bottom: 100px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .anchor01-content
    .anchor01-detailbox
    .aboutbox {
    margin-bottom: 45px;
    display: block;
  }
}
body.epilation
  .epilationcontent
  .section03
  .anchor01-content
  .anchor01-detailbox
  .aboutbox
  .aboutboxleft {
  width: 36%;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .anchor01-content
    .anchor01-detailbox
    .aboutbox
    .aboutboxleft {
    width: 100%;
  }
}
body.epilation
  .epilationcontent
  .section03
  .anchor01-content
  .anchor01-detailbox
  .aboutbox
  .aboutboxright {
  width: 64%;
  background: #f5fdff;
  padding: 35px 40px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .anchor01-content
    .anchor01-detailbox
    .aboutbox
    .aboutboxright {
    padding: 30px 30px 33px;
    width: 100%;
  }
}
body.epilation
  .epilationcontent
  .section03
  .anchor01-content
  .anchor01-detailbox
  .aboutbox
  .aboutboxright
  .ttl-05 {
  color: #58ace8;
  margin-bottom: 25px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .anchor01-content
    .anchor01-detailbox
    .aboutbox
    .aboutboxright
    .ttl-05 {
    font-size: 18px;
    font-size: 1.8rem;
    margin-bottom: 20px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .anchor01-content
  .anchor01-detailbox
  .aboutbox
  .aboutboxright
  .ttl-05
  em {
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 1px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .anchor01-content
    .anchor01-detailbox
    .aboutbox
    .aboutboxright
    .ttl-05
    em {
    font-size: 12px;
    font-size: 1.2rem;
  }
}
body.epilation
  .epilationcontent
  .section03
  .anchor01-content
  .anchor01-detailbox
  .aboutbox
  .aboutboxright
  .ttl-05::before {
  border-left: 1px solid #58ace8;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .anchor01-content
    .anchor01-detailbox
    .aboutbox
    .aboutboxright
    p {
    line-height: 28px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .anchor01-content
  .anchor01-detailbox
  .aboutbox
  .aboutboxright
  .c-btn {
  margin-top: 30px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .anchor01-content
    .anchor01-detailbox
    .aboutbox
    .aboutboxright
    .c-btn {
    margin-top: 24px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .anchor01-content
  .anchor01-detailbox
  .aboutbox
  .aboutboxright
  .c-btn
  a {
  padding-left: 50px;
  background-color: #58ace8;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .anchor01-content
    .anchor01-detailbox
    .aboutbox
    .aboutboxright
    .c-btn
    a {
    padding-left: 30px;
    min-width: 100%;
  }
}
body.epilation
  .epilationcontent
  .section03
  .anchor01-content
  .anchor01-detailbox
  .aboutbox
  .aboutboxright
  .c-btn
  a::after {
  background-image: url("../images/epilation/icn_pdf02.svg");
  width: 20px;
  height: 22px;
  left: 50px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .anchor01-content
    .anchor01-detailbox
    .aboutbox
    .aboutboxright
    .c-btn
    a::after {
    left: 22px;
    width: 14px;
    height: 16px;
  }
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .anchor01-content
    .anchor01-detailbox
    .course03 {
    margin-top: 40px;
  }
}
body.epilation .epilationcontent .section03 .anchor03-content {
  margin-top: 110px;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .anchor03-content {
    margin-top: 95px;
  }
}
body.epilation .epilationcontent .section03 .anchor03-content .ttl-07 {
  border: 1px solid #e8875c;
  margin-bottom: 40px;
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .anchor03-content .ttl-07 {
    border: none;
    position: relative;
    left: -25px;
    margin-bottom: 25px;
  }
}
body.epilation .epilationcontent .section03 .anchor03-content .ttl-07 .ja {
  background-image: url("../images/epilation/hdg03.png");
}
@media only screen and (max-width: 767px) {
  body.epilation .epilationcontent .section03 .anchor03-content .ttl-07 .ja {
    background-image: url("../images/epilation/hdg03-sp.png");
  }
}
body.epilation .epilationcontent .section03 .anchor03-content .ttl-07 .en {
  color: #e8875c;
}
body.epilation
  .epilationcontent
  .section03
  .anchor03-content
  .anchor03-detailbox {
  margin-top: 40px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .anchor03-content
    .anchor03-detailbox {
    margin-top: 25px;
  }
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .anchor03-content
    .anchor03-detailbox
    .h5-tit02 {
    margin-bottom: 30px;
  }
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .anchor03-content
    .anchor03-detailbox
    .h5-tit03 {
    line-height: 25px;
    padding-bottom: 8px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .anchor03-content
  .anchor03-detailbox
  .aboutbox {
  display: flex;
  margin-bottom: 80px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .anchor03-content
    .anchor03-detailbox
    .aboutbox {
    display: block;
    margin-bottom: 50px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .anchor03-content
  .anchor03-detailbox
  .aboutbox
  .aboutboxleft {
  width: 36%;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .anchor03-content
    .anchor03-detailbox
    .aboutbox
    .aboutboxleft {
    width: 100%;
  }
}
body.epilation
  .epilationcontent
  .section03
  .anchor03-content
  .anchor03-detailbox
  .aboutbox
  .aboutboxright {
  width: 64%;
  background: #fff8f2;
  padding: 35px 40px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .anchor03-content
    .anchor03-detailbox
    .aboutbox
    .aboutboxright {
    padding: 30px 30px 33px;
    width: 100%;
  }
}
body.epilation
  .epilationcontent
  .section03
  .anchor03-content
  .anchor03-detailbox
  .aboutbox
  .aboutboxright
  .ttl-05 {
  color: #e8875c;
  margin-bottom: 25px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .anchor03-content
    .anchor03-detailbox
    .aboutbox
    .aboutboxright
    .ttl-05 {
    font-size: 18px;
    font-size: 1.8rem;
    margin-bottom: 20px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .anchor03-content
  .anchor03-detailbox
  .aboutbox
  .aboutboxright
  .ttl-05
  em {
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 1px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .anchor03-content
    .anchor03-detailbox
    .aboutbox
    .aboutboxright
    .ttl-05
    em {
    font-size: 12px;
    font-size: 1.2rem;
  }
}
body.epilation
  .epilationcontent
  .section03
  .anchor03-content
  .anchor03-detailbox
  .aboutbox
  .aboutboxright
  .ttl-05::before {
  border-left: 1px solid #e8875c;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .anchor03-content
    .anchor03-detailbox
    .aboutbox
    .aboutboxright
    p {
    line-height: 28px;
  }
}
body.epilation
  .epilationcontent
  .section03
  .anchor03-content
  .anchor03-detailbox
  .course02 {
  margin-top: 90px;
}
@media only screen and (max-width: 767px) {
  body.epilation
    .epilationcontent
    .section03
    .anchor03-content
    .anchor03-detailbox
    .course02 {
    margin-top: 50px;
  }
}

body.epilation #anchor01 {
  position: relative;
  top: 50px;
}
@media only screen and (max-width: 767px) {
  body.epilation #anchor01 {
    top: 85px;
  }
}

body.epilation #anchor02 {
  position: relative;
  top: -60px;
}
@media only screen and (max-width: 767px) {
  body.epilation #anchor02 {
    top: -5px;
  }
}

body.epilation #anchor03 {
  position: relative;
  top: 50px;
}
@media only screen and (max-width: 767px) {
  body.epilation #anchor03 {
    top: 85px;
  }
}

body.epilation .red-btn {
  color: white;
  display: block;
  text-align: center;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
    "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "Noto Serif JP", serif;
  margin: -33px auto 60px;
  max-width: 900px;
}
@media only screen and (min-width: 768px) {
  body.epilation .red-btn {
    cursor: pointer;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
  }
  body.epilation .red-btn:hover {
    opacity: 0.7;
  }
}
@media only screen and (max-width: 767px) {
  body.epilation .red-btn {
    margin: 55px auto 60px;
  }
}
body.epilation .red-btn.border {
  border: 1px solid #eb3247;
}
@media only screen and (max-width: 767px) {
  body.epilation .red-btn.border {
    margin-top: 30px;
  }
}
body.epilation .red-btn .upper {
  background-color: #eb3247;
  padding-top: 22px;
  padding-bottom: 14px;
}
@media only screen and (max-width: 767px) {
  body.epilation .red-btn .upper {
    padding-bottom: 19px;
  }
}
body.epilation .red-btn .txt0 {
  display: block;
  font-size: 34px;
  font-size: 3.4rem;
  font-weight: bold;
  letter-spacing: 0.1em;
}
@media only screen and (max-width: 767px) {
  body.epilation .red-btn .txt0 {
    font-size: 28px;
    font-size: 2.8rem;
  }
}
body.epilation .red-btn .txt1 {
  background-image: url("../images/epilation/ribbon.svg");
  background-size: cover;
  color: #eb3247;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  margin: 14px auto 15px;
  letter-spacing: 0.1em;
  text-align: center;
  height: 30px;
  width: 700px;
}
@media only screen and (max-width: 767px) {
  body.epilation .red-btn .txt1 {
    background-image: url("../images/epilation/ribon_sp.svg");
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0;
    height: 30px;
    width: calc(100% - 30px);
  }
}
body.epilation .red-btn .box {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  body.epilation .red-btn .box {
    display: block;
  }
}
body.epilation .red-btn .box .left {
  font-weight: bold;
  margin-right: 32px;
}
@media only screen and (max-width: 767px) {
  body.epilation .red-btn .box .left {
    display: flex;
    padding: 0 21px;
    margin-right: 0;
  }
}
body.epilation .red-btn .box .left .line {
  display: block;
  letter-spacing: 0.1em;
}
@media only screen and (min-width: 768px) {
  body.epilation .red-btn .box .left .line:first-child {
    margin-bottom: 10px;
  }
}
@media only screen and (max-width: 767px) {
  body.epilation .red-btn .box .left .line {
    text-align: left;
    width: 50%;
  }
  body.epilation .red-btn .box .left .line:last-child {
    padding-left: 15px;
  }
}
body.epilation .red-btn .box .left .line .txt2 {
  font-size: 17px;
  font-size: 1.7rem;
}
body.epilation .red-btn .box .left .line .txt3 {
  margin-left: 16px;
  font-weight: 800;
  font-size: 24px;
  font-size: 2.4rem;
  letter-spacing: 0.03em;
}
@media only screen and (max-width: 767px) {
  body.epilation .red-btn .box .left .line .txt3 {
    display: inline-block;
    margin-top: 10px;
    margin-left: 0;
    white-space: nowrap;
  }
}
body.epilation .red-btn .box .left .line .txt4 {
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.03em;
}
body.epilation .red-btn .box .left .line .txt5 {
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.03em;
  white-space: nowrap;
}
body.epilation .red-btn .box .right {
  font-size: 60px;
  font-size: 6rem;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
    "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "Noto Serif JP", serif;
  font-weight: bold;
  letter-spacing: 0.03em;
}
@media only screen and (max-width: 767px) {
  body.epilation .red-btn .box .right {
    display: inline-block;
    margin-top: 18px;
    font-size: 50px;
    font-size: 5rem;
  }
}
body.epilation .red-btn .box .right b {
  font-weight: 800;
}
body.epilation .red-btn .box .right .sml1 {
  font-size: 30px;
  font-size: 3rem;
}
@media only screen and (max-width: 767px) {
  body.epilation .red-btn .box .right .sml1 {
    font-size: 26px;
    font-size: 2.6rem;
  }
}
body.epilation .red-btn .box .right .sml2 {
  font-size: 16px;
  font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
  body.epilation .red-btn .box .right .sml2 {
    font-size: 15px;
    font-size: 1.5rem;
  }
}
body.epilation .red-btn .box .right img {
  position: relative;
  top: -17px;
}
@media only screen and (max-width: 767px) {
  body.epilation .red-btn .box .right img {
    top: -13px;
    width: 59px;
  }
}
body.epilation .red-btn ul {
  background-color: white;
  display: flex;
  justify-content: center;
}
@media only screen and (max-width: 767px) {
  body.epilation .red-btn ul {
    padding: 10px 15px;
    justify-content: space-between;
    flex-wrap: wrap;
  }
}
body.epilation .red-btn ul li {
  border: 1px solid #eb3247;
  font-size: 16px;
  font-size: 1.6rem;
  color: #eb3247;
  font-weight: bold;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  margin: 10px 0;
  margin-right: 4px;
  padding: 0 30px;
  height: 32px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
}
@media only screen and (max-width: 767px) {
  body.epilation .red-btn ul li {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 0 0 4px;
    margin-right: 0;
    padding: 0;
    height: 26px;
    width: calc((100% - 8px) / 3);
  }
}
body.epilation .red-btn ul li:last-child {
  margin-right: 0;
  padding-left: 12px;
  border: none;
}
@media only screen and (max-width: 767px) {
  body.epilation .red-btn ul li:last-child {
    justify-content: flex-start;
  }
}

body.epilation .btn-banner {
  display: block;
  max-width: 900px;
  margin: -12px auto 56px;
}
@media only screen and (min-width: 768px) {
  body.epilation .btn-banner {
    cursor: pointer;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
  }
  body.epilation .btn-banner:hover {
    opacity: 0.7;
  }
}
@media only screen and (max-width: 767px) {
  body.epilation .btn-banner {
    margin: -30px auto 60px;
  }
}
body.epilation .btn-banner.mg {
  margin-bottom: 100px;
}
@media only screen and (max-width: 767px) {
  body.epilation .btn-banner.mg {
    margin-bottom: 50px;
  }
}

body.facial .facialcontent {
  margin-top: -5px;
  padding: 0 0 200px;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent {
    padding: 0 0 180px;
  }
}
body.facial .facialcontent p {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 31px;
  letter-spacing: 1px;
  color: #222443;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent p {
    text-align: justify;
    line-height: 28px;
    letter-spacing: 1.5px;
  }
}
body.facial .facialcontent .ttl-05 {
  margin-bottom: 25px;
  letter-spacing: 2px;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .ttl-05 {
    margin-bottom: 17px;
    letter-spacing: 0.5px;
  }
}
body.facial .facialcontent .section01 {
  background: #e8edf0;
  position: relative;
  height: 880px;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section01 {
    height: 1305px;
  }
}
body.facial .facialcontent .section01 .bg-img {
  position: relative;
  background-image: url("../images/facial/img-bg.png");
  background-repeat: no-repeat;
  background-size: cover;
  display: block;
  width: 100%;
  height: 600px;
  padding-top: 80px;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section01 .bg-img {
    background-image: url("../images/facial/img-bg-sp.png");
    height: 300px;
    padding: 230px 25px 0;
  }
}
body.facial .facialcontent .section01 .bg-img .section01-container {
  width: 100%;
  max-width: 1090px;
  margin: 0 auto;
  position: relative;
}

.section01Thermo .bg-imgThermo .section01-containerThermo {
  width: 100%;
  max-width: 1090px;
  margin: 10% auto;
  position: relative;
}

body.facial .facialcontent .section01 .bg-img .section01-container .detail {
  max-width: 640px;
  position: relative;
  margin-left: 525px;
}
@media screen and (max-width: 1180px) {
  body.facial .facialcontent .section01 .bg-img .section01-container .detail {
    margin: 0 auto;
  }
}
body.facial
  .facialcontent
  .section01
  .bg-img
  .section01-container
  .detail
  .bg-title {
  font-size: 36px;
  font-size: 3.6rem;
  color: #121755;
  letter-spacing: 4px;
  text-align: center;
  letter-spacing: 6px;
  line-height: 65px;
  margin-bottom: 25px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  body.facial
    .facialcontent
    .section01
    .bg-img
    .section01-container
    .detail
    .bg-title {
    font-size: 24px;
    font-size: 2.4rem;
    letter-spacing: 3px;
    line-height: 40px;
    margin-bottom: 28px;
  }
}
body.facial
  .facialcontent
  .section01
  .bg-img
  .section01-container
  .detail
  .bg-title
  em {
  font-size: 32px;
  font-size: 3.2rem;
}
@media only screen and (max-width: 767px) {
  body.facial
    .facialcontent
    .section01
    .bg-img
    .section01-container
    .detail
    .bg-title
    em {
    font-size: 20px;
    font-size: 2rem;
  }
}
body.facial
  .facialcontent
  .section01
  .bg-img
  .section01-container
  .detail
  .bg-title
  small::before {
  content: "";
  position: absolute;
  width: 6px;
  height: 6px;
  background-color: #e64601;
  border-radius: 50%;
  top: -5px;
  margin-left: 10px;
}
@media only screen and (max-width: 767px) {
  body.facial
    .facialcontent
    .section01
    .bg-img
    .section01-container
    .detail
    .bg-title
    small::before {
    top: -10px;
  }
}
body.facial
  .facialcontent
  .section01
  .bg-img
  .section01-container
  .detail
  .bg-list-detail {
  background: #fff;
  padding: 40px 10px 15px 40px;
  border: 1px #ceab74 solid;
}
@media only screen and (max-width: 767px) {
  body.facial
    .facialcontent
    .section01
    .bg-img
    .section01-container
    .detail
    .bg-list-detail {
    padding: 40px 10px 20px 30px;
  }
}
body.facial
  .facialcontent
  .section01
  .bg-img
  .section01-container
  .detail
  .bg-list-detail
  .h4list {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold;
  position: relative;
  color: #ceab74;
  margin-left: 20px;
  margin-bottom: 30px;
  display: block;
  letter-spacing: 2px;
}
@media only screen and (max-width: 767px) {
  body.facial
    .facialcontent
    .section01
    .bg-img
    .section01-container
    .detail
    .bg-list-detail
    .h4list {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
body.facial
  .facialcontent
  .section01
  .bg-img
  .section01-container
  .detail
  .bg-list-detail
  .h4list::before {
  content: "";
  position: absolute;
  display: block;
  height: 100%;
  width: 1px;
  background-color: #ceab74;
  left: -20px;
}
body.facial
  .facialcontent
  .section01
  .bg-img
  .section01-container
  .detail
  .bg-list-detail
  .bg-list {
  font-size: 15px;
  font-size: 1.5rem;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  display: flex;
  flex-wrap: wrap;
}
body.facial
  .facialcontent
  .section01
  .bg-img
  .section01-container
  .detail
  .bg-list-detail
  .bg-list
  li {
  position: relative;
  letter-spacing: 1px;
  width: 50%;
  margin-bottom: 27px;
}
@media only screen and (max-width: 767px) {
  body.facial
    .facialcontent
    .section01
    .bg-img
    .section01-container
    .detail
    .bg-list-detail
    .bg-list
    li {
    width: 100%;
    margin-bottom: 18px;
  }
}
body.facial
  .facialcontent
  .section01
  .bg-img
  .section01-container
  .detail
  .bg-list-detail
  .bg-list
  li
  span {
  margin-left: 40px;
}
@media only screen and (max-width: 767px) {
  body.facial
    .facialcontent
    .section01
    .bg-img
    .section01-container
    .detail
    .bg-list-detail
    .bg-list
    li
    span {
    margin-left: 30px;
  }
}
body.facial
  .facialcontent
  .section01
  .bg-img
  .section01-container
  .detail
  .bg-list-detail
  .bg-list
  li::after {
  background-image: url("../images/facial/icn_check.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 21px;
  height: 21px;
  content: "";
  margin: 0 auto;
  position: absolute;
  left: 0;
  top: -2px;
}
@media only screen and (max-width: 767px) {
  body.facial
    .facialcontent
    .section01
    .bg-img
    .section01-container
    .detail
    .bg-list-detail
    .bg-list
    li::after {
    left: 0;
  }
}
body.facial .facialcontent .section01 .blue-section {
  background: #054688;
  mix-blend-mode: multiply;
  color: #fff;
  width: 100%;
  position: relative;
  top: -70px;
  padding: 70px 0;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section01 .blue-section {
    top: 370px;
    padding: 60px 25px 50px;
  }
}
body.facial .facialcontent .section01 .blue-section .blue-section-detail {
  width: 100%;
  max-width: 1090px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section01 .blue-section .blue-section-detail {
    display: block;
    max-width: 100%;
  }
}
body.facial
  .facialcontent
  .section01
  .blue-section
  .blue-section-detail
  .blue-section-left {
  width: 65%;
  max-width: 700px;
}
@media only screen and (max-width: 767px) {
  body.facial
    .facialcontent
    .section01
    .blue-section
    .blue-section-detail
    .blue-section-left {
    width: 100%;
    max-width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  body.facial
    .facialcontent
    .section01
    .blue-section
    .blue-section-detail
    .blue-section-left
    .img-sp {
    margin: 30px 0 25px;
  }
}
body.facial
  .facialcontent
  .section01
  .blue-section
  .blue-section-detail
  .blue-section-left
  .h4listleft {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold;
  position: relative;
  margin-left: 20px;
  margin-bottom: 20px;
  display: block;
  letter-spacing: 2px;
}
@media only screen and (max-width: 767px) {
  body.facial
    .facialcontent
    .section01
    .blue-section
    .blue-section-detail
    .blue-section-left
    .h4listleft {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
body.facial
  .facialcontent
  .section01
  .blue-section
  .blue-section-detail
  .blue-section-left
  .h4listleft::before {
  content: "";
  position: absolute;
  display: block;
  height: 100%;
  width: 1px;
  background-color: #fff;
  left: -20px;
}
body.facial
  .facialcontent
  .section01
  .blue-section
  .blue-section-detail
  .blue-section-left
  p {
  color: #fff;
  line-height: 33px;
}
@media only screen and (max-width: 767px) {
  body.facial
    .facialcontent
    .section01
    .blue-section
    .blue-section-detail
    .blue-section-left
    p {
    line-height: 29px;
  }
}
body.facial
  .facialcontent
  .section01
  .blue-section
  .blue-section-detail
  .blue-section-right {
  width: 30%;
  max-width: 300px;
}
@media only screen and (max-width: 767px) {
  body.facial
    .facialcontent
    .section01
    .blue-section
    .blue-section-detail
    .blue-section-right {
    width: 100%;
    max-width: 100%;
  }
}
body.facial .facialcontent .section02 {
  background: #e8edf0;
  padding: 90px 60px 100px;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section02 {
    padding: 60px 25px;
  }
}
body.facial .facialcontent .section02 .container {
  background: #fff;
  max-width: 1165px;
  margin: 0 auto;
  padding: 75px 80px 80px;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section02 .container {
    padding: 35px 30px 15px;
  }
}
body.facial .facialcontent .section02 .container .detail02 {
  margin-top: 55px;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section02 .container .detail02 {
    margin-top: 20px;
  }
}
body.facial .facialcontent .section02 .container .detail03 {
  display: flex;
  justify-content: space-between;
  margin-top: 100px;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section02 .container .detail03 {
    display: block;
    margin-top: 45px;
  }
}
body.facial .facialcontent .section02 .container .detail03 .detail03-left {
  width: 54%;
  max-width: 540px;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section02 .container .detail03 .detail03-left {
    width: 100%;
    max-width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  body.facial
    .facialcontent
    .section02
    .container
    .detail03
    .detail03-left
    .img-sp {
    margin: 20px 0 17px;
  }
}
body.facial .facialcontent .section02 .container .detail03 .detail03-right {
  width: 37%;
  max-width: 370px;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section02 .container .detail03 .detail03-right {
    width: 100%;
    max-width: 100%;
  }
}
body.facial .facialcontent .section02 .container .detail04 {
  background: #f4f4f4;
  padding: 35px 50px 30px;
  margin-top: 80px;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section02 .container .detail04 {
    padding: 32px 30px 30px;
    width: calc(100% + 30px);
    position: relative;
    left: -15px;
    margin-top: 35px;
  }
}
body.facial .facialcontent .section02 .container .detail04 .ttl-05 {
  margin-bottom: 30px;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section02 .container .detail04 .ttl-05 {
    margin-bottom: 17px;
  }
}
body.facial .facialcontent .section02 .container .detail04 .detail04-list {
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 1px;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section02 .container .detail04 .detail04-list {
    line-height: 28px;
    letter-spacing: 0;
  }
}
body.facial
  .facialcontent
  .section02
  .container
  .detail04
  .detail04-list
  .detail04-list-detail {
  position: relative;
  margin-bottom: 15px;
}
@media only screen and (max-width: 767px) {
  body.facial
    .facialcontent
    .section02
    .container
    .detail04
    .detail04-list
    .detail04-list-detail {
    display: flex;
    margin-bottom: 6px;
  }
}
body.facial
  .facialcontent
  .section02
  .container
  .detail04
  .detail04-list
  .detail04-list-detail::after {
  content: "";
  position: absolute;
  display: block;
  width: 7px;
  height: 10px;
  background-image: url("../images/info/arw.svg");
  background-repeat: no-repeat;
  top: 3px;
  left: 0;
}
@media only screen and (max-width: 767px) {
  body.facial
    .facialcontent
    .section02
    .container
    .detail04
    .detail04-list
    .detail04-list-detail::after {
    display: flex;
    top: 9px;
  }
}
body.facial
  .facialcontent
  .section02
  .container
  .detail04
  .detail04-list
  .detail04-list-detail
  span {
  padding-left: 20px;
}
@media only screen and (max-width: 767px) {
  body.facial
    .facialcontent
    .section02
    .container
    .detail04
    .detail04-list
    .detail04-list-detail
    span {
    padding-left: 15px;
  }
}
body.facial .facialcontent .section03 {
  padding-top: 120px;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section03 {
    padding-top: 60px;
  }
}
body.facial .facialcontent .section03 .menubox .ttl-05 {
  margin: 55px 0 25px;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section03 .menubox .ttl-05 {
    margin: 35px 0 18px;
  }
}
body.facial .facialcontent .section03 .menubox .menulist {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-top: 50px;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section03 .menubox .menulist {
    display: block;
    margin-top: 25px;
  }
}
body.facial .facialcontent .section03 .menubox .menulist li {
  width: 50%;
  max-width: 480px;
  border-bottom: 1px #e2e2e2 solid;
  padding-bottom: 22px;
  display: flex;
  align-items: center;
  font-size: 18px;
  font-size: 1.8rem;
  margin-bottom: 20px;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section03 .menubox .menulist li {
    width: 100%;
    max-width: 100%;
    display: block;
    padding-bottom: 15px;
    margin-bottom: 19px;
  }
}
body.facial .facialcontent .section03 .menubox .menulist li span {
  background: #969696;
  color: #fff;
  text-align: center;
  width: 220px;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 34px;
  margin-right: 30px;
  letter-spacing: 1px;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section03 .menubox .menulist li span {
    margin-right: 0;
    width: 100%;
    font-size: 14px;
    font-size: 1.4rem;
    margin-bottom: 17px;
    letter-spacing: 1px;
    height: 30px;
  }
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section03 .menubox .menulist li small {
    text-align: center;
    display: block;
    font-size: 15px;
    font-size: 1.5rem;
  }
}
body.facial .facialcontent .section03 .menubox .menulist li:last-child {
  border-bottom: none;
}
body.facial .facialcontent .section03 .ryoukinbox {
  margin-top: 80px;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section03 .ryoukinbox {
    margin-top: 25px;
  }
}
body.facial .facialcontent .section03 .ryoukinbox .ryoukinlist {
  display: flex;
  justify-content: space-between;
  margin-top: 40px;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section03 .ryoukinbox .ryoukinlist {
    display: block;
    margin-top: 25px;
  }
}
body.facial .facialcontent .section03 .ryoukinbox .ryoukinlist li {
  width: 33%;
  max-width: 328px;
  background: #f4f4f4;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section03 .ryoukinbox .ryoukinlist li {
    width: 100%;
    max-width: 100%;
    margin-bottom: 10px;
    padding-bottom: 1px;
  }
}
body.facial .facialcontent .section03 .ryoukinbox .ryoukinlist li h5 {
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
  color: #121755;
  letter-spacing: 1.5px;
  padding: 25px 0;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section03 .ryoukinbox .ryoukinlist li h5 {
    font-size: 18px;
    font-size: 1.8rem;
    padding: 22px 0 18px;
  }
}
body.facial .facialcontent .section03 .ryoukinbox .ryoukinlist li .time {
  text-align: center;
  color: #fff;
  font-size: 15px;
  font-size: 1.5rem;
  height: 30px;
  background: #121755;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  letter-spacing: 1px;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section03 .ryoukinbox .ryoukinlist li .time {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
body.facial .facialcontent .section03 .ryoukinbox .ryoukinlist li .price {
  display: flex;
  align-items: center;
  background: #fff;
  width: calc(100% - 60px);
  position: relative;
  left: 30px;
  height: 46px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 20px 0;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section03 .ryoukinbox .ryoukinlist li .price {
    margin: 15px 0;
  }
}
body.facial .facialcontent .section03 .ryoukinbox .ryoukinlist li .price em {
  font-size: 15px;
  font-size: 1.5rem;
  width: 52px;
  letter-spacing: 1px;
  display: block;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section03 .ryoukinbox .ryoukinlist li .price em {
    width: 51px;
    text-align: center;
  }
}
body.facial .facialcontent .section03 .ryoukinbox .ryoukinlist li .price span {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 1px;
  position: relative;
  margin-left: 40px;
}
@media only screen and (max-width: 767px) {
  body.facial
    .facialcontent
    .section03
    .ryoukinbox
    .ryoukinlist
    li
    .price
    span {
    margin-top: 2px;
  }
}
body.facial
  .facialcontent
  .section03
  .ryoukinbox
  .ryoukinlist
  li
  .price
  span:before {
  background-image: url("../images/common/ico-arw1.svg");
  background-size: 16px 9px;
  content: "";
  margin: 0 auto;
  position: absolute;
  left: -25px;
  top: 3px;
  height: 9px;
  width: 16px;
}
@media only screen and (max-width: 767px) {
  body.facial
    .facialcontent
    .section03
    .ryoukinbox
    .ryoukinlist
    li
    .price
    span:before {
    top: 4px;
  }
}
body.facial .facialcontent .section03 .ryoukinbox .ryoukinlist li .price small {
  font-size: 12px;
  font-size: 1.2rem;
}
body.facial .facialcontent .section03 .notetext {
  display: flex;
  font-size: 12px;
  font-size: 1.2rem;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  letter-spacing: 1px;
  margin-top: 15px;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section03 .notetext {
    line-height: 20px;
  }
}
body.facial .facialcontent .section03 .yoyakubox {
  margin-top: 100px;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section03 .yoyakubox {
    margin-top: 33px;
  }
}
body.facial .facialcontent .section03 .yoyakubox .title {
  display: flex;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section03 .yoyakubox .title {
    display: block;
  }
}
body.facial .facialcontent .section03 .yoyakubox .title .h5-title {
  font-size: 20px;
  font-size: 2rem;
  color: #222443;
  position: relative;
  margin-left: 40px;
  letter-spacing: 1.5px;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section03 .yoyakubox .title .h5-title {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 22px;
    font-weight: bold;
    margin-left: 30px;
  }
}
body.facial .facialcontent .section03 .yoyakubox .title .h5-title::after {
  background-image: url("../images/facial/icn_check.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 20px;
  height: 20px;
  content: "";
  margin: 0 auto;
  position: absolute;
  left: -40px;
  top: 0;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section03 .yoyakubox .title .h5-title::after {
    left: -30px;
    top: 1px;
  }
}
body.facial .facialcontent .section03 .yoyakubox .title .off {
  width: 265px;
  height: 33px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: #ceab74;
  font-weight: bold;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 1.5px;
  border-radius: 20px;
  margin-left: 30px;
  padding-top: 3px;
}
body.facial .facialcontent .section03 .yoyakubox .title .off em {
  font-size: 20px;
  font-size: 2rem;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section03 .yoyakubox .title .off em {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section03 .yoyakubox .title .off {
    height: 30px;
    width: 100%;
    margin-left: 0;
    padding-top: 3px;
    margin-top: 9px;
    font-size: 14px;
    font-size: 1.4rem;
  }
}
body.facial .facialcontent .section03 .yoyakubox .yoyakudetail {
  background: #f4f4f4;
  padding: 38px 35px 40px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 22px;
}
@media only screen and (max-width: 767px) {
  body.facial .facialcontent .section03 .yoyakubox .yoyakudetail {
    display: block;
    padding: 28px 15px 20px;
  }
}
body.facial
  .facialcontent
  .section03
  .yoyakubox
  .yoyakudetail
  .yoyakudetail-left {
  width: 33%;
  max-width: 290px;
  background: #fff;
  padding-bottom: 20px;
}
@media only screen and (max-width: 767px) {
  body.facial
    .facialcontent
    .section03
    .yoyakubox
    .yoyakudetail
    .yoyakudetail-left {
    width: 100%;
    max-width: 100%;
  }
}
body.facial
  .facialcontent
  .section03
  .yoyakubox
  .yoyakudetail
  .yoyakudetail-left
  small {
  font-size: 12px;
  font-size: 1.2rem;
}
body.facial
  .facialcontent
  .section03
  .yoyakubox
  .yoyakudetail
  .yoyakudetail-left
  .time {
  text-align: center;
  color: #fff;
  font-size: 15px;
  font-size: 1.5rem;
  height: 30px;
  background: #054688;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  letter-spacing: 1.5px;
}
@media only screen and (max-width: 767px) {
  body.facial
    .facialcontent
    .section03
    .yoyakubox
    .yoyakudetail
    .yoyakudetail-left
    .time {
    font-size: 13px;
    font-size: 1.3rem;
  }
}
body.facial
  .facialcontent
  .section03
  .yoyakubox
  .yoyakudetail
  .yoyakudetail-left
  .nedan01 {
  display: block;
  font-size: 15px;
  font-size: 1.5rem;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  letter-spacing: 1px;
  text-align: center;
  padding: 22px 0 20px;
}
@media only screen and (max-width: 767px) {
  body.facial
    .facialcontent
    .section03
    .yoyakubox
    .yoyakudetail
    .yoyakudetail-left
    .nedan01 {
    padding: 20px 0 15px;
  }
}
body.facial
  .facialcontent
  .section03
  .yoyakubox
  .yoyakudetail
  .yoyakudetail-left
  .nedan02 {
  font-size: 26px;
  font-size: 2.6rem;
  color: #ceab74;
  font-weight: bold;
  letter-spacing: 4px;
  position: relative;
  display: block;
  margin-left: 60px;
}
body.facial
  .facialcontent
  .section03
  .yoyakubox
  .yoyakudetail
  .yoyakudetail-left
  .nedan02:before {
  background-image: url("../images/common/ico-arw1.svg");
  background-size: 16px 9px;
  content: "";
  margin: 0 auto;
  position: absolute;
  left: -25px;
  top: 7px;
  height: 9px;
  width: 16px;
}
body.facial
  .facialcontent
  .section03
  .yoyakubox
  .yoyakudetail
  .yoyakudetail-left
  .nedan02
  small {
  font-size: 15px;
  font-size: 1.5rem;
}
body.facial
  .facialcontent
  .section03
  .yoyakubox
  .yoyakudetail
  .yoyakudetail-right {
  width: 63%;
  max-width: 585px;
}
@media only screen and (max-width: 767px) {
  body.facial
    .facialcontent
    .section03
    .yoyakubox
    .yoyakudetail
    .yoyakudetail-right {
    width: 100%;
    max-width: 100%;
    padding: 18px 15px 0;
  }
}

body.first .firstcontent {
  margin-top: -5px;
  padding: 0 0 200px;
}
@media only screen and (max-width: 767px) {
  body.first .firstcontent {
    margin-top: 0;
    padding: 0;
  }
}
body.first .firstcontent p {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 32px;
  letter-spacing: 1px;
  color: #222443;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media only screen and (max-width: 767px) {
  body.first .firstcontent p {
    text-align: justify;
    line-height: 28px;
    letter-spacing: 1.5px;
  }
}
body.first .firstcontent .section01 .container {
  background-image: url("../images/first/bg-img.jpg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  width: 100%;
  height: 1130px;
  padding: 80px 0;
}
@media only screen and (max-width: 767px) {
  body.first .firstcontent .section01 .container {
    background-image: url("../images/first/bg-img-sp.jpg");
    height: 1560px;
  }
}
body.first .firstcontent .section01 .container .first-about {
  position: relative;
}
body.first .firstcontent .section01 .container .first-about .first-about-left {
  width: 880px;
  position: relative;
  background: #fff;
  padding: 80px 290px 80px 80px;
}
@media screen and (max-width: 1200px) {
  body.first
    .firstcontent
    .section01
    .container
    .first-about
    .first-about-left {
    padding: 80px 230px 80px 40px;
    width: 90%;
  }
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section01
    .container
    .first-about
    .first-about-left {
    width: 100%;
    padding: 40px 25px 35px;
  }
}
body.first
  .firstcontent
  .section01
  .container
  .first-about
  .first-about-left
  .h3-first-about {
  letter-spacing: 2px;
  margin-bottom: 35px;
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section01
    .container
    .first-about
    .first-about-left
    .h3-first-about {
    margin-bottom: 27px;
  }
}
body.first
  .firstcontent
  .section01
  .container
  .first-about
  .first-about-left
  .h3-first-about
  .en {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  color: #ceab74;
  display: block;
  margin-bottom: 17px;
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section01
    .container
    .first-about
    .first-about-left
    .h3-first-about
    .en {
    font-size: 14px;
    font-size: 1.4rem;
    margin-bottom: 10px;
  }
}
body.first
  .firstcontent
  .section01
  .container
  .first-about
  .first-about-left
  .h3-first-about
  .ja {
  font-size: 38px;
  font-size: 3.8rem;
  line-height: 65px;
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section01
    .container
    .first-about
    .first-about-left
    .h3-first-about
    .ja {
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 43px;
  }
}
body.first
  .firstcontent
  .section01
  .container
  .first-about
  .first-about-left
  .text
  p {
  line-height: 32px;
  margin-bottom: 35px;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section01
    .container
    .first-about
    .first-about-left
    .text
    p {
    line-height: 28px;
    margin-bottom: 28px;
  }
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section01
    .container
    .first-about
    .first-about-left
    .text {
    margin-top: 27px;
  }
}
body.first
  .firstcontent
  .section01
  .container
  .first-about
  .first-about-left
  .sign {
  margin-top: 50px;
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section01
    .container
    .first-about
    .first-about-left
    .sign {
    margin-top: -5px;
  }
}
body.first
  .firstcontent
  .section01
  .container
  .first-about
  .first-about-left
  .sign
  .name {
  font-size: 18px;
  font-size: 1.8rem;
  margin-top: 25px;
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section01
    .container
    .first-about
    .first-about-left
    .sign
    .name {
    margin-top: 15px;
    font-size: 16px;
    font-size: 1.6rem;
  }
}
body.first .firstcontent .section01 .container .first-about .first-about-right {
  width: calc(100% + 260px);
  max-width: 470px;
  position: absolute;
  top: 0;
  right: -140px;
  top: 80px;
}
@media screen and (max-width: 1200px) {
  body.first
    .firstcontent
    .section01
    .container
    .first-about
    .first-about-right {
    width: calc(100% + 150px);
    max-width: 30%;
    right: 0;
  }
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section01
    .container
    .first-about
    .first-about-right {
    width: 100%;
    max-width: 100%;
  }
}
body.first .firstcontent .section02 {
  padding-bottom: 40px;
}
@media only screen and (max-width: 767px) {
  body.first .firstcontent .section02 {
    margin-top: 60px;
    padding-bottom: 125px;
  }
}
body.first .firstcontent .section02 .section03-flowbg {
  background-image: url("../images/first/bg.jpg");
  background-repeat: no-repeat;
  background-position: top;
  background-size: cover;
  width: 100%;
  height: 300px;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  body.first .firstcontent .section02 .section03-flowbg {
    background-image: url("../images/first/bg-sp.jpg");
    height: 220px;
  }
}
body.first .firstcontent .section02 .section03-flowbg .ttl-02 {
  color: #fff;
}
body.first .firstcontent .section02 .flow-detail {
  padding: 83px 60px 60px;
  position: relative;
  background: #fff;
  z-index: 1;
  top: -60px;
}
@media screen and (max-width: 1024px) {
  body.first .firstcontent .section02 .flow-detail {
    padding: 35px 40px 55px;
  }
}
@media screen and (max-width: 900px) {
  body.first .firstcontent .section02 .flow-detail {
    padding: 10px 30px 55px;
  }
}
@media only screen and (max-width: 767px) {
  body.first .firstcontent .section02 .flow-detail {
    padding: 40px 30px 15px;
    top: -55px;
  }
}
body.first .firstcontent .section02 .flow-detail .step {
  margin-bottom: 100px;
}
@media only screen and (max-width: 767px) {
  body.first .firstcontent .section02 .flow-detail .step {
    margin-bottom: 50px;
  }
}
body.first .firstcontent .section02 .flow-detail .step .infobox {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  body.first .firstcontent .section02 .flow-detail .step .infobox {
    display: block;
  }
}
body.first .firstcontent .section02 .flow-detail .step .infobox .stepleft {
  width: 63%;
  max-width: 535px;
}
@media only screen and (max-width: 767px) {
  body.first .firstcontent .section02 .flow-detail .step .infobox .stepleft {
    width: 100%;
    max-width: 100%;
  }
}
body.first
  .firstcontent
  .section02
  .flow-detail
  .step
  .infobox
  .stepleft
  .steph4 {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold;
  letter-spacing: 2px;
  position: relative;
  color: #054688;
  margin-bottom: 32px;
  padding-left: 20px;
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section02
    .flow-detail
    .step
    .infobox
    .stepleft
    .steph4 {
    font-size: 18px;
    font-size: 1.8rem;
    margin-bottom: 28px;
    line-height: 25px;
  }
}
body.first
  .firstcontent
  .section02
  .flow-detail
  .step
  .infobox
  .stepleft
  .steph4::after {
  content: "";
  position: absolute;
  display: block;
  width: 1px;
  height: 100%;
  background-color: #054688;
  top: 0;
  left: 0;
}
body.first
  .firstcontent
  .section02
  .flow-detail
  .step
  .infobox
  .stepleft
  .steph4
  .ja {
  margin-left: 20px;
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section02
    .flow-detail
    .step
    .infobox
    .stepleft
    .steph4
    .ja {
    margin-left: 10px;
  }
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section02
    .flow-detail
    .step
    .infobox
    .stepleft
    .stepimg-sp {
    margin-bottom: 18px;
  }
}
body.first
  .firstcontent
  .section02
  .flow-detail
  .step
  .infobox
  .stepleft
  .c-btn {
  margin-top: 40px;
}
body.first .firstcontent .section02 .flow-detail .step .infobox .stepright {
  width: 38%;
  max-width: 330px;
  position: relative;
  right: -60px;
}
@media only screen and (max-width: 767px) {
  body.first .firstcontent .section02 .flow-detail .step .infobox .stepright {
    width: 100%;
    max-width: 100%;
    right: 0;
  }
}
body.first .firstcontent .section02 .flow-detail .step .contactkomoku {
  margin-top: 55px;
}
@media only screen and (max-width: 767px) {
  body.first .firstcontent .section02 .flow-detail .step .contactkomoku {
    margin-top: 25px;
  }
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section02
    .flow-detail
    .step
    .contactkomoku
    .ttl-06 {
    margin-bottom: -12px;
  }
}
body.first .firstcontent .section02 .flow-detail .step .contactkomoku .list {
  display: flex;
  justify-content: space-between;
  border-bottom: 1px dotted #e2e2e2;
  padding-bottom: 20px;
  margin-top: 40px;
}
@media only screen and (max-width: 767px) {
  body.first .firstcontent .section02 .flow-detail .step .contactkomoku .list {
    display: block;
    border-bottom: none;
    margin-top: 25px;
    margin-bottom: 10px;
  }
}
body.first .firstcontent .section02 .flow-detail .step .contactkomoku .list li {
  font-size: 15px;
  font-size: 1.5rem;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section02
    .flow-detail
    .step
    .contactkomoku
    .list
    li {
    border-bottom: 1px dotted #e2e2e2;
    padding: 17px 0 15px;
  }
}
body.first
  .firstcontent
  .section02
  .flow-detail
  .step
  .contactkomoku
  .list
  li
  span {
  position: relative;
  padding-left: 20px;
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section02
    .flow-detail
    .step
    .contactkomoku
    .list
    li
    span {
    padding-left: 15px;
  }
}
body.first
  .firstcontent
  .section02
  .flow-detail
  .step
  .contactkomoku
  .list
  li
  span::after {
  content: "";
  position: absolute;
  display: block;
  width: 7px;
  height: 10px;
  background-image: url("../images/info/arw.svg");
  background-repeat: no-repeat;
  top: 3px;
  left: 0;
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section02
    .flow-detail
    .step
    .contactkomoku
    .list
    li
    span::after {
    display: flex;
  }
}
body.first .firstcontent .section02 .flow-detail .step .detail01 {
  margin-top: 55px;
}
@media only screen and (max-width: 767px) {
  body.first .firstcontent .section02 .flow-detail .step .detail01 {
    margin-top: 35px;
  }
}
body.first .firstcontent .section02 .flow-detail .step .detail01 .ttl-06 {
  margin-bottom: 35px;
}
@media only screen and (max-width: 767px) {
  body.first .firstcontent .section02 .flow-detail .step .detail01 .ttl-06 {
    margin-bottom: 25px;
  }
}
@media only screen and (max-width: 767px) {
  body.first .firstcontent .section02 .flow-detail .step01 {
    margin-bottom: 60px;
  }
}
body.first .firstcontent .section02 .flow-detail .step02 .infobox,
body.first .firstcontent .section02 .flow-detail .step04 .infobox,
body.first .firstcontent .section02 .flow-detail .step06 .infobox {
  flex-direction: row-reverse;
}
body.first .firstcontent .section02 .flow-detail .step02 .infobox .stepright,
body.first .firstcontent .section02 .flow-detail .step04 .infobox .stepright,
body.first .firstcontent .section02 .flow-detail .step06 .infobox .stepright {
  right: 0;
  left: -60px;
}
body.first .firstcontent .section02 .flow-detail .paybox {
  background: #f4f4f4;
  padding: 55px 45px;
}
@media only screen and (max-width: 767px) {
  body.first .firstcontent .section02 .flow-detail .paybox {
    padding: 35px 30px;
    margin-top: -15px;
    width: calc(100% + 30px);
    position: relative;
    left: -15px;
  }
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section02
    .flow-detail
    .paybox
    .paydetail01
    .ttl-05 {
    margin-bottom: 25px;
  }
}
body.first .firstcontent .section02 .flow-detail .paybox .paydetail01 .detail {
  margin-bottom: 50px;
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section02
    .flow-detail
    .paybox
    .paydetail01
    .detail {
    margin-bottom: 35px;
  }
}
body.first
  .firstcontent
  .section02
  .flow-detail
  .paybox
  .paydetail01
  .detail
  .ttl-06 {
  margin-bottom: 30px;
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section02
    .flow-detail
    .paybox
    .paydetail01
    .detail
    .ttl-06 {
    margin-bottom: 25px;
  }
}
body.first
  .firstcontent
  .section02
  .flow-detail
  .paybox
  .paydetail01
  .detail
  .ttl-06
  em {
  font-size: 15px;
  font-size: 1.5rem;
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section02
    .flow-detail
    .paybox
    .paydetail01
    .detail
    .ttl-06
    em {
    font-size: 12px;
    font-size: 1.2rem;
  }
}
body.first .firstcontent .section02 .flow-detail .paybox .paydetail01 .paylist {
  margin-top: -17px;
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section02
    .flow-detail
    .paybox
    .paydetail01
    .paylist {
    margin-top: -10px;
  }
}
body.first
  .firstcontent
  .section02
  .flow-detail
  .paybox
  .paydetail01
  .paylist
  li {
  background: #fff;
  font-size: 18px;
  font-size: 1.8rem;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-weight: bold;
  letter-spacing: 2px;
  color: #054688;
  height: 60px;
  margin-bottom: 5px;
  display: flex;
  align-items: center;
  padding: 0 35px;
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section02
    .flow-detail
    .paybox
    .paydetail01
    .paylist
    li {
    font-size: 15px;
    font-size: 1.5rem;
    flex-wrap: wrap;
    height: auto;
    padding: 15px 20px;
    margin-bottom: 10px;
  }
}
body.first
  .firstcontent
  .section02
  .flow-detail
  .paybox
  .paydetail01
  .paylist
  li
  em {
  font-size: 15px;
  font-size: 1.5rem;
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section02
    .flow-detail
    .paybox
    .paydetail01
    .paylist
    li
    em {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 16px;
    margin-left: 10px;
    margin-top: 7px;
  }
}
body.first
  .firstcontent
  .section02
  .flow-detail
  .paybox
  .paydetail01
  .paylist
  li
  span {
  padding-left: 15px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section02
    .flow-detail
    .paybox
    .paydetail01
    .paylist
    li
    span {
    padding-left: 18px;
  }
}
body.first
  .firstcontent
  .section02
  .flow-detail
  .paybox
  .paydetail01
  .paylist
  li
  span::after {
  content: "";
  position: absolute;
  display: block;
  width: 7px;
  height: 10px;
  background-image: url("../images/info/arw.svg");
  background-repeat: no-repeat;
  top: 5px;
  left: 0;
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section02
    .flow-detail
    .paybox
    .paydetail01
    .paylist
    li
    span::after {
    display: flex;
    top: 4px;
  }
}
body.first .firstcontent .section02 .flow-detail .paybox .paydetail02 {
  margin-top: 95px;
}
@media only screen and (max-width: 767px) {
  body.first .firstcontent .section02 .flow-detail .paybox .paydetail02 {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section02
    .flow-detail
    .paybox
    .paydetail02
    .ttl-05 {
    margin-bottom: 20px;
  }
}
body.first
  .firstcontent
  .section02
  .flow-detail
  .paybox
  .paydetail02
  .reibox
  li {
  background: #fff;
  padding: 30px 50px 30px 30px;
  margin-bottom: 5px;
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section02
    .flow-detail
    .paybox
    .paydetail02
    .reibox
    li {
    padding: 25px 15px 20px;
    margin-bottom: 10px;
  }
}
body.first
  .firstcontent
  .section02
  .flow-detail
  .paybox
  .paydetail02
  .reibox
  li
  .tit {
  font-size: 16px;
  font-size: 1.6rem;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-weight: bold;
  letter-spacing: 2px;
  color: #222443;
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section02
    .flow-detail
    .paybox
    .paydetail02
    .reibox
    li
    .tit {
    font-size: 15px;
    font-size: 1.5rem;
  }
}
body.first
  .firstcontent
  .section02
  .flow-detail
  .paybox
  .paydetail02
  .reibox
  li
  .tit
  span {
  padding-left: 15px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section02
    .flow-detail
    .paybox
    .paydetail02
    .reibox
    li
    .tit
    span {
    padding-left: 10px;
    line-height: 24px;
    display: flex;
  }
}
body.first
  .firstcontent
  .section02
  .flow-detail
  .paybox
  .paydetail02
  .reibox
  li
  .tit
  span::after {
  content: "";
  position: absolute;
  display: block;
  width: 7px;
  height: 10px;
  background-image: url("../images/info/arw.svg");
  background-repeat: no-repeat;
  top: 3px;
  left: 0;
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section02
    .flow-detail
    .paybox
    .paydetail02
    .reibox
    li
    .tit
    span::after {
    display: flex;
    top: 7px;
  }
}
body.first
  .firstcontent
  .section02
  .flow-detail
  .paybox
  .paydetail02
  .reibox
  li
  .box {
  display: flex;
  justify-content: space-between;
  margin-top: 28px;
  border-bottom: 1px dotted #e2e2e2;
  padding-bottom: 10px;
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section02
    .flow-detail
    .paybox
    .paydetail02
    .reibox
    li
    .box {
    display: block;
    border-bottom: none;
    margin-top: 12px;
  }
}
body.first
  .firstcontent
  .section02
  .flow-detail
  .paybox
  .paydetail02
  .reibox
  li
  .box
  .boxdetail {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-size: 15px;
  font-size: 1.5rem;
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section02
    .flow-detail
    .paybox
    .paydetail02
    .reibox
    li
    .box
    .boxdetail {
    font-size: 14px;
    font-size: 1.4rem;
    border-bottom: 1px dotted #e2e2e2;
    padding: 10px 0;
  }
}
body.first
  .firstcontent
  .section02
  .flow-detail
  .paybox
  .paydetail02
  .reibox
  li
  .box
  .boxdetail
  .left {
  width: 120px;
  height: 24px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  background-color: #ceab74;
  color: #fff;
  margin-right: 20px;
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section02
    .flow-detail
    .paybox
    .paydetail02
    .reibox
    li
    .box
    .boxdetail
    .left {
    width: 45%;
    max-width: 70px;
    height: 44px;
    text-align: center;
    line-height: 18px;
  }
}
@media only screen and (max-width: 767px) {
  body.first
    .firstcontent
    .section02
    .flow-detail
    .paybox
    .paydetail02
    .reibox
    li
    .box
    .boxdetail
    .right {
    width: 55%;
    letter-spacing: 2px;
  }
}
body.first .firstcontent .section02 .flow-detail .paybox .c-btn {
  margin-top: 60px;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  body.first .firstcontent .section02 .flow-detail .paybox .c-btn {
    margin-top: 30px;
  }
}
body.first .firstcontent .section02 .flow-detail .paybox .c-btn a {
  padding-left: 50px;
}
@media only screen and (max-width: 767px) {
  body.first .firstcontent .section02 .flow-detail .paybox .c-btn a {
    padding-left: 30px;
    min-width: 100%;
  }
}
body.first .firstcontent .section02 .flow-detail .paybox .c-btn a::after {
  background-image: url("../images/first/icn_pdf.svg");
  width: 20px;
  height: 22px;
  left: 50px;
}
@media only screen and (max-width: 767px) {
  body.first .firstcontent .section02 .flow-detail .paybox .c-btn a::after {
    left: 15px;
    width: 16px;
    height: 18px;
  }
}
body.first .firstcontent .bgdouble {
  position: relative;
}
body.first .firstcontent .bgdouble::before {
  content: "";
  width: 100%;
  background-color: #f7f5ef;
  position: absolute;
  display: block;
  z-index: -1;
  top: 0;
  bottom: 0;
}
body.first .firstcontent .bgdouble::after {
  content: "";
  width: 30%;
  background-color: #efebe0;
  position: absolute;
  display: block;
  z-index: -1;
  top: 0;
  bottom: 0;
}

body.index .side-nav {
  z-index: 10;
}

body.index .mv {
  width: calc(100% - 70px);
  margin: 0 0 0 auto;
  position: relative;
}
@media only screen and (max-width: 767px) {
  body.index .mv {
    width: calc(100% - 40px);
    height: 350px;
  }
}
body.index .mv-movie {
  width: 100%;
  padding-top: 56.25%;
  position: relative;
  height: 100%;
  overflow: hidden;
}
body.index .mv-movie:before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  background: rgba(0, 0, 0, 0.5);
}
@media only screen and (max-width: 767px) {
  body.index .mv-movie {
    padding-top: 0;
  }
}
@media only screen and (min-width: 768px) {
  body.index .mv-movie iframe {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
  }
}
body.index .mv #videoPlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
body.index .mv-title {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
  bottom: 90px;
  text-align: center;
  z-index: 2;
}
@media only screen and (max-width: 767px) {
  body.index .mv-title {
    bottom: 60px;
    width: 100%;
  }
}
body.index .mv-title img {
  max-width: 596px;
}
@media only screen and (max-width: 767px) {
  body.index .mv-title img {
    max-width: calc(100% - 66px);
  }
}
body.index .mv-title span {
  display: block;
  font-size: 28px;
  font-size: 2.8rem;
  letter-spacing: 0.2em;
  color: #fff;
  margin-top: 40px;
}
@media only screen and (max-width: 767px) {
  body.index .mv-title span {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.75;
    letter-spacing: 0.15em;
    margin-top: 16px;
  }
}
body.index .mv-scroll {
  width: 1px;
  height: 100px;
  position: absolute;
  left: calc(50% - 35px);
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
  bottom: -50px;
  z-index: 2;
  animation-name: borderMove;
  animation-duration: 1.7s;
  animation-timing-function: cubic-bezier(1, 0.44, 0.56, 0);
  animation-iteration-count: infinite;
}

@keyframes borderMove {
  0% {
    height: 0;
    bottom: 50px;
  }
  50% {
    bottom: -50px;
    height: 100px;
  }
  100% {
    bottom: -50px;
    height: 0px;
  }
}
@media only screen and (max-width: 767px) {
  body.index .mv-scroll {
    left: 50%;
    height: 80px;
    bottom: -40px;
    animation-name: borderMoveSp;
    animation-duration: 1.4s;
  }
  @keyframes borderMoveSp {
    0% {
      height: 0;
      bottom: 50px;
    }
    50% {
      bottom: -40px;
      height: 80px;
    }
    100% {
      bottom: -40px;
      height: 0px;
    }
  }
}
body.index .mv-scroll:before,
body.index .mv-scroll:after {
  content: "";
  width: 100%;
  height: 50%;
  position: absolute;
  left: 0;
}
body.index .mv-scroll:before {
  top: 0;
  background-color: #fff;
}
body.index .mv-scroll:after {
  bottom: 0;
  background-color: #ceab74;
}

@media only screen and (max-width: 767px) {
  body.index .side-nav {
    height: 350px;
  }
}

@media only screen and (max-width: 767px) {
  body.index main .ttl-02 .en {
    font-size: 26px;
    font-size: 2.6rem;
    margin-right: 10px;
  }
  body.index main .ttl-02 .arrow,
  body.index main .ttl-02 .ja {
    position: relative;
    top: -5px;
  }
}

body.index main .viewall a {
  width: 150px;
  height: 30px;
  border-radius: 30px;
  background-color: #fff;
  font-size: 13px;
  font-size: 1.3rem;
  text-align: center;
  font-family: "Arial", "メイリオ";
  padding-top: 8px;
  display: inline-block;
  border: #e2e2e2 solid 1px;
  position: relative;
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  color: #707070;
}
body.index main .viewall a:hover {
  border: #ceab74 solid 1px;
  color: #ceab74;
}
body.index main .viewall a:after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4px 0 4px 5px;
  border-color: transparent transparent transparent #ceab74;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 15px;
}

body.index main .concept {
  background-color: #e8edf0;
  padding: 80px 0 133px;
  position: relative;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  body.index main .concept {
    padding: 70px 0 100px;
  }
}
body.index main .concept:before {
  content: "";
  width: 986px;
  height: 100%;
  background-image: url(../images/index/concept-bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: absolute;
  right: 0;
  top: 0;
}
@media only screen and (max-width: 767px) {
  body.index main .concept:before {
    background-image: url(../images/index/concept-bg-sp.png);
    width: 363px;
    height: 242px;
    right: -57px;
    top: auto;
    bottom: 15px;
  }
}
@media only screen and (min-width: 768px) {
  body.index main .concept .imgs {
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}
@media only screen and (max-width: 767px) {
  body.index main .concept .imgs {
    position: relative;
    padding-bottom: 20px;
  }
}
body.index main .concept .imgs > div {
  position: relative;
}
@media only screen and (max-width: 767px) {
  body.index main .concept .imgs > div > img {
    position: relative;
    z-index: 2;
  }
}
body.index main .concept .imgs > div:nth-child(1) {
  width: 270px;
}
@media only screen and (max-width: 767px) {
  body.index main .concept .imgs > div:nth-child(1) {
    width: 58.6666667%;
    z-index: 2;
  }
}
body.index main .concept .imgs > div:nth-child(1):after {
  content: "";
  width: 60px;
  height: 60px;
  background: white;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, white 100%);
  position: absolute;
  top: -30px;
  right: -30px;
  z-index: -1;
}
@media only screen and (max-width: 767px) {
  body.index main .concept .imgs > div:nth-child(1):after {
    width: 50px;
    height: 50px;
    top: -25px;
    right: -25px;
    z-index: 1;
  }
}
body.index main .concept .imgs > div:nth-child(2) {
  width: 150px;
  margin: 80px 0 0 auto;
}
@media only screen and (max-width: 767px) {
  body.index main .concept .imgs > div:nth-child(2) {
    width: 26.6666667%;
    margin: 0;
    position: absolute;
    right: 0;
    bottom: 0;
  }
}
body.index main .concept .imgs > div:nth-child(2):after {
  content: "";
  width: 60px;
  height: 60px;
  background: #ceab74;
  background: linear-gradient(45deg, #ceab74 0%, rgba(206, 171, 116, 0) 100%);
  position: absolute;
  bottom: -30px;
  left: -30px;
  z-index: -1;
}
@media only screen and (max-width: 767px) {
  body.index main .concept .imgs > div:nth-child(2):after {
    width: 50px;
    height: 50px;
    bottom: -25px;
    left: -25px;
    z-index: 1;
  }
}
body.index main .concept .inner {
  max-width: 650px;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 767px) {
  body.index main .concept .inner {
    margin-top: 50px;
  }
  body.index main .concept .inner .ttl-01 {
    text-align: left;
  }
}
body.index main .concept .inner p {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 2.133333333;
  letter-spacing: 0.1em;
  margin: 60px auto 0;
  max-width: 550px;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media only screen and (max-width: 767px) {
  body.index main .concept .inner p {
    margin-top: 30px;
  }
}
@media only screen and (min-width: 768px) {
  body.index main .concept .inner .btns {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin: 60px auto 0;
  }
}
@media only screen and (max-width: 767px) {
  body.index main .concept .inner .btns {
    margin-top: 30px;
  }
  body.index main .concept .inner .btns .c-btn:nth-child(n + 2) {
    margin-top: 10px;
  }
}

body.index main .menu {
  background-color: #f7f5ef;
  position: relative;
  padding: 100px 0 80px;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  body.index main .menu {
    padding: 60px 0 60px;
  }
}
body.index main .menu:after {
  content: "";
  width: 35%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  background-color: #f7f5ef;
  mix-blend-mode: multiply;
}
@media only screen and (max-width: 767px) {
  body.index main .menu:after {
    width: 32%;
  }
}
body.index main .menu .inner {
  position: relative;
  z-index: 2;
}
body.index main .menu .inner .menu-list {
  margin-top: 40px;
}
body.index main .menu .inner .menu-list > li {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  position: relative;
}
@media only screen and (max-width: 767px) {
  body.index main .menu .inner .menu-list > li {
    -webkit-flex-direction: column;
    flex-direction: column;
  }
}
body.index main .menu .inner .menu-list > li:nth-child(n + 2) {
  margin-top: 60px;
}
@media only screen and (max-width: 767px) {
  body.index main .menu .inner .menu-list > li:nth-child(n + 2) {
    margin-top: 30px;
  }
}
body.index main .menu .inner .menu-list > li .content {
  background-color: #ffffff;
  padding-top: 40px;
  padding-bottom: 40px;
}
@media only screen and (max-width: 767px) {
  body.index main .menu .inner .menu-list > li .content {
    padding: 140px 30px 40px;
  }
}
body.index main .menu .inner .menu-list > li .content .ttl-05 .ja {
  font-weight: normal;
}
body.index main .menu .inner .menu-list > li .content .ttl-05 .en {
  font-weight: normal;
  margin-left: 28px;
}
@media only screen and (max-width: 767px) {
  body.index main .menu .inner .menu-list > li .content .ttl-05 {
    margin-bottom: 25px;
    padding-right: 0;
  }
  body.index main .menu .inner .menu-list > li .content .ttl-05:before {
    height: calc(100% - 8px);
  }
  body.index main .menu .inner .menu-list > li .content .ttl-05 .ja {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.4;
    letter-spacing: 0.1em;
    white-space: nowrap;
  }
  body.index main .menu .inner .menu-list > li .content .ttl-05 .en {
    display: block;
    font-size: 14px;
    font-size: 1.4rem;
    margin-left: 0;
  }
}
body.index main .menu .inner .menu-list > li .content p {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 2.133333333;
  letter-spacing: 0.1em;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
body.index main .menu .inner .menu-list > li .content .c-btn {
  margin-top: 40px;
}
@media only screen and (max-width: 767px) {
  body.index main .menu .inner .menu-list > li .content .c-btn {
    margin-top: 25px;
  }
}
body.index main .menu .inner .menu-list > li .img {
  width: 46%;
  overflow: hidden;
}
body.index main .menu .inner .menu-list > li .img img {
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}
body.index main .menu .inner .menu-list > li .img.is-hover img {
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1);
  -ms-transform: scale(1.1);
  -o-transform: scale(1.1);
  transform: scale(1.1);
}
@media only screen and (max-width: 767px) {
  body.index main .menu .inner .menu-list > li .img {
    width: 100%;
  }
}
body.index main .menu .inner .menu-list > li:nth-child(1) {
  background-color: #ffffff;
}
@media only screen and (max-width: 767px) {
  body.index main .menu .inner .menu-list > li:nth-child(1) {
    padding: 40px 30px;
  }
}
body.index main .menu .inner .menu-list > li:nth-child(1) .content {
  width: 41%;
  padding-left: 4%;
}
@media only screen and (max-width: 767px) {
  body.index main .menu .inner .menu-list > li:nth-child(1) .content {
    width: 100%;
    padding: 0;
  }
}
@media only screen and (min-width: 768px) {
  body.index main .menu .inner .menu-list > li:nth-child(1) .links {
    width: 59%;
    position: absolute;
    right: -60px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}
@media only screen and (max-width: 767px) {
  body.index main .menu .inner .menu-list > li:nth-child(1) .links {
    margin-top: 40px;
    width: 100%;
  }
}
body.index main .menu .inner .menu-list > li:nth-child(1) .links > a {
  width: calc((100% - 10px) / 2);
  display: block;
  overflow: hidden;
  position: relative;
}
body.index main .menu .inner .menu-list > li:nth-child(1) .links > a:hover .bg {
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1);
  -ms-transform: scale(1.1);
  -o-transform: scale(1.1);
  transform: scale(1.1);
}
body.index
  main
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a:hover
  .label
  .arrow:before {
  left: calc(50% + 100%);
}
body.index
  main
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a:hover
  .label
  .arrow:after {
  left: 50%;
}
@media only screen and (max-width: 767px) {
  body.index main .menu .inner .menu-list > li:nth-child(1) .links > a {
    width: 100%;
  }
  body.index
    main
    .menu
    .inner
    .menu-list
    > li:nth-child(1)
    .links
    > a:nth-child(n + 2) {
    margin-top: 10px;
  }
}
body.index main .menu .inner .menu-list > li:nth-child(1) .links > a .bg {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  padding-top: 75.862069%;
  position: relative;
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}
@media only screen and (max-width: 767px) {
  body.index main .menu .inner .menu-list > li:nth-child(1) .links > a .bg {
    padding-top: 67.9245283%;
  }
}
body.index main .menu .inner .menu-list > li:nth-child(1) .links > a .label {
  height: 40px;
  display: block;
  position: relative;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 11px 0 0 23px;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  body.index main .menu .inner .menu-list > li:nth-child(1) .links > a .label {
    padding: 12px 0 0 20px;
  }
}
body.index
  main
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a
  .label:before {
  content: "";
  width: 1px;
  height: 100%;
  background-color: #ffffff;
  position: absolute;
  right: 40px;
  top: 0;
  z-index: 2;
  opacity: 0.7;
}
body.index
  main
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a
  .label:after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  mix-blend-mode: multiply;
}
body.index
  main
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a
  .label
  .txt {
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.15em;
  color: #fff;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 767px) {
  body.index
    main
    .menu
    .inner
    .menu-list
    > li:nth-child(1)
    .links
    > a
    .label
    .txt {
    font-size: 16px;
    font-size: 1.6rem;
  }
}
body.index
  main
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a
  .label
  .arrow {
  content: "";
  width: 40px;
  height: 40px;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  overflow: hidden;
}
body.index
  main
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a
  .label
  .arrow:before,
body.index
  main
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a
  .label
  .arrow:after {
  content: "";
  width: 10.85px;
  height: 6.78px;
  background-image: url(../images/common/ico-arow-white.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(90deg);
  -moz-transform: translate(-50%, -50%) rotate(90deg);
  -ms-transform: translate(-50%, -50%) rotate(90deg);
  -o-transform: translate(-50%, -50%) rotate(90deg);
  transform: translate(-50%, -50%) rotate(90deg);
  transition: all 0.5s;
}
body.index
  main
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a
  .label
  .arrow:before {
  left: 50%;
}
body.index
  main
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a
  .label
  .arrow:after {
  left: calc(50% - 100%);
}
body.index
  main
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a:nth-child(1)
  .bg {
  background-image: url(../images/index/menu-img01.jpg);
}
@media only screen and (max-width: 767px) {
  body.index
    main
    .menu
    .inner
    .menu-list
    > li:nth-child(1)
    .links
    > a:nth-child(1)
    .bg {
    background-image: url(../images/index/menu-img01-sp.jpg);
  }
}
body.index
  main
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a:nth-child(1)
  .label:after {
  background-color: #79c1f5;
}
@media only screen and (min-width: 768px) {
  body.index
    main
    .menu
    .inner
    .menu-list
    > li:nth-child(1)
    .links
    > a:nth-child(2) {
    position: absolute;
    right: 0;
    top: 40px;
  }
}
@media only screen and (min-width: 768px) {
  body.index
    main
    .menu
    .inner
    .menu-list
    > li:nth-child(1)
    .links
    > a:nth-child(2)
    .bg {
    background-image: url(../images/index/menu-img02.jpg);
    padding-top: 89.6551724%;
  }
}
@media only screen and (max-width: 767px) {
  body.index
    main
    .menu
    .inner
    .menu-list
    > li:nth-child(1)
    .links
    > a:nth-child(2)
    .bg {
    background-image: url(../images/index/menu-img02-sp.jpg);
  }
}
body.index
  main
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a:nth-child(2)
  .label:after {
  background-color: #ef91cb;
}
body.index
  main
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a:nth-child(3) {
  margin-top: 9px;
}
body.index
  main
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a:nth-child(3)
  .bg {
  background-image: url(../images/index/menu-img03.jpg);
}
@media only screen and (max-width: 767px) {
  body.index
    main
    .menu
    .inner
    .menu-list
    > li:nth-child(1)
    .links
    > a:nth-child(3)
    .bg {
    background-image: url(../images/index/menu-img03-sp.jpg);
  }
}
body.index
  main
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a:nth-child(3)
  .label:after {
  background-color: #f79e77;
}
@media only screen and (min-width: 768px) {
  body.index main .menu .inner .menu-list > li:nth-child(2) {
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
    padding-top: 30px;
    margin-top: 115px;
  }
}
@media only screen and (max-width: 767px) {
  body.index main .menu .inner .menu-list > li:nth-child(2) {
    -webkit-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
}
@media only screen and (min-width: 768px) {
  body.index main .menu .inner .menu-list > li:nth-child(2) .content {
    width: 62.6%;
    z-index: 2;
    padding-left: 8.6%;
    padding-right: 6%;
  }
}
@media only screen and (max-width: 767px) {
  body.index main .menu .inner .menu-list > li:nth-child(2) .content {
    margin-top: -110px;
  }
}
@media only screen and (min-width: 768px) {
  body.index main .menu .inner .menu-list > li:nth-child(2) .img {
    position: absolute;
    left: -60px;
    top: 0;
  }
}
@media only screen and (max-width: 767px) {
  body.index main .menu .inner .menu-list > li:nth-child(2) .img {
    position: relative;
    left: -25px;
  }
}
@media only screen and (min-width: 768px) {
  body.index main .menu .inner .menu-list > li:nth-child(3) {
    padding-top: 30px;
  }
}
@media only screen and (max-width: 767px) {
  body.index main .menu .inner .menu-list > li:nth-child(3) {
    -webkit-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
}
@media only screen and (min-width: 768px) {
  body.index main .menu .inner .menu-list > li:nth-child(3) .content {
    width: 63.3%;
    padding-left: 4%;
    padding-right: 11.3%;
  }
}
@media only screen and (max-width: 767px) {
  body.index main .menu .inner .menu-list > li:nth-child(3) .content {
    margin-top: -110px;
  }
}
@media only screen and (min-width: 768px) {
  body.index main .menu .inner .menu-list > li:nth-child(3) .img {
    position: absolute;
    right: -60px;
    top: 0;
  }
}
@media only screen and (max-width: 767px) {
  body.index main .menu .inner .menu-list > li:nth-child(3) .img {
    position: relative;
    right: -25px;
  }
}

body.index main .strength {
  padding: 80px 0;
}
@media only screen and (max-width: 767px) {
  body.index main .strength {
    padding: 60px 0;
  }
}
body.index main .strength .bg-imgs {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
body.index main .strength .bg-imgs > div {
  width: calc((100% - 2px) / 3);
}
body.index main .strength > .inner {
  max-width: 1100px;
  margin-top: -100px;
  background-color: #fff;
  position: relative;
  padding: 60px 60px 0 50px;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  body.index main .strength > .inner {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: -25px;
    padding: 40px 0 0;
  }
}
body.index main .strength > .inner .left {
  width: 43.6734694%;
}
@media only screen and (max-width: 767px) {
  body.index main .strength > .inner .left {
    width: 100%;
  }
}
body.index main .strength > .inner .left .ttl-01 .ja {
  font-size: 34px;
  font-size: 3.4rem;
}
@media only screen and (max-width: 767px) {
  body.index main .strength > .inner .left .ttl-01 .ja {
    font-size: 24px;
    font-size: 2.4rem;
  }
}
body.index main .strength > .inner .left p {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 2.133333333;
  letter-spacing: 0.1em;
  margin-top: 50px;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media only screen and (max-width: 767px) {
  body.index main .strength > .inner .left p {
    margin-top: 30px;
    padding: 0 10px;
  }
}
body.index main .strength > .inner .left .c-btn {
  text-align: center;
  margin-top: 60px;
}
@media only screen and (max-width: 767px) {
  body.index main .strength > .inner .left .c-btn {
    margin-top: 34px;
  }
}
body.index main .strength > .inner .strength-point {
  width: 51.0204082%;
}
@media only screen and (max-width: 767px) {
  body.index main .strength > .inner .strength-point {
    max-width: 325px;
    width: 100%;
    margin: 40px auto 0;
  }
}
body.index main .strength > .inner .strength-point > li {
  background-color: #f4f4f4;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  padding: 16px 85px 16px 25px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  body.index main .strength > .inner .strength-point > li {
    padding: 16px 55px 16px 25px;
  }
}
body.index main .strength > .inner .strength-point > li:nth-child(n + 2) {
  margin-top: 10px;
}
body.index main .strength > .inner .strength-point > li .num {
  font-size: 38px;
  font-size: 3.8rem;
  color: #054688;
  letter-spacing: 0.1em;
  padding-bottom: 16px;
  position: relative;
  margin-right: 20px;
}
@media only screen and (max-width: 1200px) {
  body.index main .strength > .inner .strength-point > li .num {
    font-size: 28px;
    font-size: 2.8rem;
    padding-bottom: 10px;
  }
}
@media only screen and (max-width: 1200px) and (max-width: 767px) {
  body.index main .strength > .inner .strength-point > li .num {
    font-size: 24px;
    font-size: 2.4rem;
  }
}
@media only screen and (max-width: 767px) {
  body.index main .strength > .inner .strength-point > li .num {
    margin-right: 12px;
    padding-bottom: 8px;
  }
}
body.index main .strength > .inner .strength-point > li .num:after {
  content: "";
  width: 35px;
  height: 1px;
  background-color: #054688;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
  bottom: 0;
}
@media only screen and (max-width: 767px) {
  body.index main .strength > .inner .strength-point > li .num:after {
    width: 26px;
  }
}
body.index main .strength > .inner .strength-point > li p {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.7;
  letter-spacing: 0.1em;
  white-space: nowrap;
}
@media only screen and (max-width: 1200px) {
  body.index main .strength > .inner .strength-point > li p {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.4;
    white-space: inherit;
  }
}
@media only screen and (max-width: 767px) {
  body.index main .strength > .inner .strength-point > li p {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.466666667;
    white-space: nowrap;
    letter-spacing: 0.02em;
  }
}
body.index main .strength > .inner .strength-point > li .icon {
  flex-shrink: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 18px;
}
@media only screen and (max-width: 767px) {
  body.index main .strength > .inner .strength-point > li .icon {
    width: 38px;
    right: 16px;
  }
}

body.index main .voice {
  background-color: #f7f5ef;
  position: relative;
  padding: 87px 0 80px;
}
@media only screen and (max-width: 767px) {
  body.index main .voice {
    padding: 60px 0;
  }
}
body.index main .voice:after {
  content: "";
  width: 42%;
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  background-color: #f7f5ef;
  mix-blend-mode: multiply;
}
@media only screen and (max-width: 767px) {
  body.index main .voice:after {
    width: 32%;
  }
}
body.index main .voice .inner {
  position: relative;
  z-index: 2;
}
body.index main .voice .inner ul {
  margin-top: 40px;
  display: -webkit-flex;
  display: flex;
}
@media only screen and (max-width: 767px) {
  body.index main .voice .inner ul {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
body.index main .voice .inner ul > li {
  width: calc((100% - 64px) / 3);
}
@media only screen and (max-width: 767px) {
  body.index main .voice .inner ul > li {
    width: 100%;
  }
}
body.index main .voice .inner ul > li:nth-child(n + 2) {
  margin-left: 32px;
}
@media only screen and (max-width: 767px) {
  body.index main .voice .inner ul > li:nth-child(n + 2) {
    margin: 30px auto 0;
  }
}
body.index main .voice .inner ul > li a {
  background-color: #fff;
  padding-top: 20px;
  display: block;
}
body.index main .voice .inner ul > li a:hover .img > div {
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1);
  -ms-transform: scale(1.1);
  -o-transform: scale(1.1);
  transform: scale(1.1);
}
body.index main .voice .inner ul > li a .img {
  padding-top: 64.1025641%;
  position: relative;
  overflow: hidden;
}
body.index main .voice .inner ul > li a .img > div {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}
@media only screen and (max-width: 767px) {
  body.index main .voice .inner ul > li a .img {
    padding-top: 56%;
  }
}
body.index main .voice .inner ul > li a .contents {
  padding: 25px 26px 20px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  body.index main .voice .inner ul > li a .contents {
    padding: 27px 39px 20px 26px;
  }
}
body.index main .voice .inner ul > li a .contents .category {
  max-width: 260px;
  width: 100%;
  background-color: #ceab74;
  color: #fff;
  font-family: "Arial", "メイリオ";
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.05em;
  text-align: center;
  display: inline-block;
  padding: 4px 0 3px;
  position: absolute;
  right: 0;
  top: -10px;
}
body.index main .voice .inner ul > li a .contents p {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.866666667;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  letter-spacing: 0.1em;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
body.index main .voice .inner ul > li a .contents time {
  font-family: "Arial", "メイリオ";
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.05em;
  color: #969696;
  display: inline-block;
  margin-top: 15px;
  font-weight: 300;
}
@media only screen and (min-width: 768px) {
  body.index main .voice .inner .viewall {
    position: absolute;
    right: 0;
    top: 0;
  }
}
@media only screen and (max-width: 767px) {
  body.index main .voice .inner .viewall {
    margin: 30px auto 0;
    text-align: center;
  }
}

body.index main .column {
  padding: 80px 0 100px;
}
@media only screen and (max-width: 767px) {
  body.index main .column {
    padding: 60px 0 60px;
  }
}
body.index main .column .inner {
  max-width: 966px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  body.index main .column .inner {
    display: block;
  }
}
body.index main .column .inner .viewall {
  text-align: center;
  margin-top: 38px;
}
@media only screen and (max-width: 767px) {
  body.index main .column .inner .viewall {
    margin-top: 30px;
  }
}
@media only screen and (max-width: 767px) {
  body.index main .column .inner .left .ttl-02 {
    display: -webkit-flex;
    display: flex;
  }
  body.index main .column .inner .left .ttl-02 .ja {
    margin-top: 0;
  }
}
body.index main .column .inner ul {
  max-width: 650px;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  body.index main .column .inner ul {
    margin-top: 20px;
  }
}
body.index main .column .inner ul > li a {
  display: block;
  height: 100%;
  padding: 20px 0;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  position: relative;
}
@media only screen and (max-width: 767px) {
  body.index main .column .inner ul > li a {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
body.index main .column .inner ul > li a:before,
body.index main .column .inner ul > li a:after {
  content: "";
  height: 1px;
  position: absolute;
  left: 0;
  bottom: 0;
}
body.index main .column .inner ul > li a:before {
  width: 100%;
  background-color: #f4f4f4;
}
body.index main .column .inner ul > li a:after {
  width: 0;
  background-color: #ceab74;
  -webkit-transition: 0.5s;
  -moz-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
  transform-origin: left;
}
body.index main .column .inner ul > li a:hover:after {
  width: 100%;
}
body.index main .column .inner ul > li a .left {
  width: 31%;
}
@media only screen and (max-width: 767px) {
  body.index main .column .inner ul > li a .left {
    width: 100%;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
  }
}
body.index main .column .inner ul > li a .left time {
  font-family: "Arial", "メイリオ";
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.1em;
  color: #919191;
  display: block;
}
@media only screen and (max-width: 767px) {
  body.index main .column .inner ul > li a .left time {
    display: inline-block;
  }
}
body.index main .column .inner ul > li a .left .category {
  font-family: "Arial", "メイリオ";
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.1em;
  display: block;
  margin-top: 10px;
}
@media only screen and (max-width: 767px) {
  body.index main .column .inner ul > li a .left .category {
    display: inline-block;
    margin: 0 0 0 30px;
  }
}
body.index main .column .inner ul > li a p {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.866666667;
  letter-spacing: 0.1em;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  width: 69%;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  body.index main .column .inner ul > li a p {
    width: 100%;
    margin-top: 10px;
    padding-right: 10px;
  }
}

body.info .infocontent {
  padding: 40px 0 200px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent {
    padding: 0 0 180px;
  }
}
body.info .infocontent p {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 31px;
  letter-spacing: 1px;
  color: #222443;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent p {
    text-align: justify;
    line-height: 28px;
    letter-spacing: 1.5px;
  }
}
body.info .infocontent .ttl-05 {
  margin-bottom: 25px;
  letter-spacing: 2px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .ttl-05 {
    margin-bottom: 17px;
    letter-spacing: 0.5px;
  }
}
body.info .infocontent .section01 {
  display: flex;
  padding-right: 140px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section01 {
    padding-right: 0;
    display: block;
  }
}
body.info .infocontent .section01 .img-box {
  background-image: url("../images/info/img01.jpg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  width: 40%;
  height: 650px;
  margin-right: 70px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section01 .img-box {
    background-image: url("../images/info/img01-sp.jpg");
    width: calc(100% - 25px);
    height: 220px;
    padding-right: 25px;
    margin-bottom: 60px;
  }
}
body.info .infocontent .section01 .section01-info {
  max-width: 600px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section01 .section01-info {
    max-width: 100%;
    padding: 0 25px;
  }
}
body.info .infocontent .section01 .section01-info .ttl-03 {
  margin-bottom: 33px;
}
body.info .infocontent .section01 .section01-info .caution {
  background: #f4f4f4;
  padding: 40px 30px;
  margin-top: 33px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section01 .section01-info .caution {
    padding: 20px 30px 25px;
    position: relative;
    left: 15px;
    width: calc(100% - 15px);
  }
}
body.info .infocontent .section01 .section01-info .caution .titbox {
  display: flex;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section01 .section01-info .caution .titbox {
    display: block;
  }
}
body.info .infocontent .section01 .section01-info .caution .titbox .icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 145px;
  color: #fff;
  letter-spacing: 2px;
  background: #054688;
  height: 40px;
  position: relative;
  left: -40px;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section01 .section01-info .caution .titbox .icon {
    height: 30px;
    margin-bottom: 20px;
    left: -45px;
  }
}
body.info .infocontent .section01 .section01-info .caution .titbox .icon img {
  position: relative;
  top: -3px;
  margin-right: 10px;
}
body.info .infocontent .section01 .section01-info .caution .titbox .text {
  max-width: 400px;
  margin-top: -8px;
  position: relative;
  left: -10px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section01 .section01-info .caution .titbox .text {
    left: 0;
  }
}
body.info .infocontent .section01 .section01-info .caution .titbox .text em {
  font-weight: bold;
}
body.info .infocontent .section01 .section01-info .caution .list {
  margin-top: 25px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section01 .section01-info .caution .list {
    margin-top: 15px;
  }
}
body.info .infocontent .section01 .section01-info .caution .list li {
  background: #fff;
  color: #054688;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  padding: 21px 30px;
  margin-bottom: 5px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section01 .section01-info .caution .list li {
    margin-bottom: 10px;
    font-size: 15px;
    font-size: 1.5rem;
    padding: 10px 20px 12px;
  }
}
body.info .infocontent .section01 .section01-info .caution .list li span {
  padding-left: 20px;
  position: relative;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section01 .section01-info .caution .list li span {
    padding-left: 15px;
    display: flex;
    line-height: 22px;
  }
}
body.info
  .infocontent
  .section01
  .section01-info
  .caution
  .list
  li
  span::after {
  content: "";
  position: absolute;
  display: block;
  width: 7px;
  height: 10px;
  background-image: url("../images/info/arw.svg");
  background-repeat: no-repeat;
  top: 3px;
  left: 0;
}
@media only screen and (max-width: 767px) {
  body.info
    .infocontent
    .section01
    .section01-info
    .caution
    .list
    li
    span::after {
    display: flex;
    top: 6px;
  }
}
body.info .infocontent .section01 .section01-info .caution .notetext {
  display: flex;
  font-size: 12px;
  font-size: 1.2rem;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  letter-spacing: 1px;
  margin-top: 20px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section01 .section01-info .caution .notetext {
    line-height: 20px;
    margin-top: 15px;
  }
}
body.info .infocontent .section02 {
  margin-top: 120px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section02 {
    margin-top: 50px;
  }
}
body.info .infocontent .section02 .h5-point {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  border: 1px solid #ceab74;
  border-radius: 30px;
  padding: 17px 0;
  margin-bottom: 40px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section02 .h5-point {
    padding: 16px 0 17px;
    margin-bottom: 30px;
  }
}
body.info .infocontent .section02 .h5-point img {
  height: 10px;
}
body.info .infocontent .section02 .h5-point .text {
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  color: #ceab74;
  margin: 0 15px;
  letter-spacing: 2px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section02 .h5-point .text {
    font-size: 18px;
    font-size: 1.8rem;
    margin: 0 12px;
  }
}
body.info .infocontent .section02 .pointlist {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
body.info .infocontent .section02 .pointlist li {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  width: 33%;
  max-width: 328px;
  background: #f7f5ef;
  color: #222443;
  height: 80px;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 2px;
  margin-bottom: 8px;
  font-weight: bold;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section02 .pointlist li {
    width: 48.555%;
    font-size: 15px;
    font-size: 1.5rem;
    height: 60px;
    text-align: center;
    line-height: 20px;
    margin-bottom: 10px;
  }
}
body.info .infocontent .section02 .pointlist li em {
  font-size: 15px;
  font-size: 1.5rem;
  margin-top: -15px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section02 .pointlist li em {
    font-size: 12px;
    font-size: 1.2rem;
    margin-top: 0;
  }
}
body.info .infocontent .section02 .pointlist li:first-child {
  padding-top: 10px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section02 .pointlist li:first-child {
    width: 100%;
  }
}
@media only screen and (min-width: 768px) {
  body.info .infocontent .section02 .pointlist li:last-child {
    background: #fff;
  }
}
body.info .infocontent .section03 {
  margin-top: 110px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section03 {
    margin-top: 50px;
  }
}
body.info .infocontent .section03 .menu {
  background-color: #f7f5ef;
  position: relative;
  padding: 100px 0;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section03 .menu {
    padding: 60px 0;
  }
}
body.info .infocontent .section03 .menu:after {
  content: "";
  width: 35%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  background-color: #f7f5ef;
  mix-blend-mode: multiply;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section03 .menu:after {
    width: 32%;
  }
}
body.info .infocontent .section03 .menu .inner {
  position: relative;
  z-index: 2;
}
body.info .infocontent .section03 .menu .inner .menu-list {
  margin-top: 40px;
}
body.info .infocontent .section03 .menu .inner .menu-list > li {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  position: relative;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section03 .menu .inner .menu-list > li {
    -webkit-flex-direction: column;
    flex-direction: column;
  }
}
body.info
  .infocontent
  .section03
  .menu
  .inner
  .menu-list
  > li:nth-child(n + 2) {
  margin-top: 60px;
}
@media only screen and (max-width: 767px) {
  body.info
    .infocontent
    .section03
    .menu
    .inner
    .menu-list
    > li:nth-child(n + 2) {
    margin-top: 30px;
  }
}
body.info .infocontent .section03 .menu .inner .menu-list > li .content {
  background-color: #ffffff;
  padding-top: 40px;
  padding-bottom: 40px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section03 .menu .inner .menu-list > li .content {
    padding: 140px 30px 40px;
  }
}
@media only screen and (max-width: 767px) {
  body.info
    .infocontent
    .section03
    .menu
    .inner
    .menu-list
    > li
    .content
    .ttl-05 {
    margin-bottom: 25px;
    padding-right: 0;
  }
  body.info
    .infocontent
    .section03
    .menu
    .inner
    .menu-list
    > li
    .content
    .ttl-05
    .ja {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.4;
    letter-spacing: 0.1em;
    white-space: nowrap;
  }
  body.info
    .infocontent
    .section03
    .menu
    .inner
    .menu-list
    > li
    .content
    .ttl-05
    .en {
    display: block;
    font-size: 14px;
    font-size: 1.4rem;
  }
}
body.info .infocontent .section03 .menu .inner .menu-list > li .content p {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 2.133333333;
  letter-spacing: 0.1em;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
body.info .infocontent .section03 .menu .inner .menu-list > li .content .c-btn {
  margin-top: 40px;
}
@media only screen and (max-width: 767px) {
  body.info
    .infocontent
    .section03
    .menu
    .inner
    .menu-list
    > li
    .content
    .c-btn {
    margin-top: 25px;
  }
}
body.info .infocontent .section03 .menu .inner .menu-list > li .img {
  width: 46%;
  overflow: hidden;
}
body.info .infocontent .section03 .menu .inner .menu-list > li .img img {
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}
body.info
  .infocontent
  .section03
  .menu
  .inner
  .menu-list
  > li
  .img.is-hover
  img {
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1);
  -ms-transform: scale(1.1);
  -o-transform: scale(1.1);
  transform: scale(1.1);
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section03 .menu .inner .menu-list > li .img {
    width: 100%;
  }
}
body.info .infocontent .section03 .menu .inner .menu-list > li:nth-child(1) {
  background-color: #ffffff;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section03 .menu .inner .menu-list > li:nth-child(1) {
    padding: 40px 30px;
  }
}
body.info
  .infocontent
  .section03
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .content {
  width: 41%;
  padding-left: 4%;
}
@media only screen and (max-width: 767px) {
  body.info
    .infocontent
    .section03
    .menu
    .inner
    .menu-list
    > li:nth-child(1)
    .content {
    width: 100%;
    padding: 0;
  }
}
@media only screen and (min-width: 768px) {
  body.info
    .infocontent
    .section03
    .menu
    .inner
    .menu-list
    > li:nth-child(1)
    .links {
    width: 59%;
    position: absolute;
    right: -60px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}
@media only screen and (max-width: 767px) {
  body.info
    .infocontent
    .section03
    .menu
    .inner
    .menu-list
    > li:nth-child(1)
    .links {
    margin-top: 40px;
    width: 100%;
  }
}
body.info
  .infocontent
  .section03
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a {
  width: calc((100% - 10px) / 2);
  display: block;
  overflow: hidden;
  position: relative;
}
body.info
  .infocontent
  .section03
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a:hover
  .bg {
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1);
  -ms-transform: scale(1.1);
  -o-transform: scale(1.1);
  transform: scale(1.1);
}
body.info
  .infocontent
  .section03
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a:hover
  .label
  .arrow:before {
  left: calc(50% + 100%);
}
body.info
  .infocontent
  .section03
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a:hover
  .label
  .arrow:after {
  left: 50%;
}
@media only screen and (max-width: 767px) {
  body.info
    .infocontent
    .section03
    .menu
    .inner
    .menu-list
    > li:nth-child(1)
    .links
    > a {
    width: 100%;
  }
  body.info
    .infocontent
    .section03
    .menu
    .inner
    .menu-list
    > li:nth-child(1)
    .links
    > a:nth-child(n + 2) {
    margin-top: 10px;
  }
}
body.info
  .infocontent
  .section03
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a
  .bg {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  padding-top: 75.862069%;
  position: relative;
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}
@media only screen and (max-width: 767px) {
  body.info
    .infocontent
    .section03
    .menu
    .inner
    .menu-list
    > li:nth-child(1)
    .links
    > a
    .bg {
    padding-top: 67.9245283%;
  }
}
body.info
  .infocontent
  .section03
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a
  .label {
  height: 40px;
  display: block;
  position: relative;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 11px 0 0 23px;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  body.info
    .infocontent
    .section03
    .menu
    .inner
    .menu-list
    > li:nth-child(1)
    .links
    > a
    .label {
    padding: 12px 0 0 20px;
  }
}
body.info
  .infocontent
  .section03
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a
  .label:after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  mix-blend-mode: multiply;
}
body.info
  .infocontent
  .section03
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a
  .label
  .txt {
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.15em;
  color: #fff;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 767px) {
  body.info
    .infocontent
    .section03
    .menu
    .inner
    .menu-list
    > li:nth-child(1)
    .links
    > a
    .label
    .txt {
    font-size: 16px;
    font-size: 1.6rem;
  }
}
body.info
  .infocontent
  .section03
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a
  .label
  .arrow {
  content: "";
  width: 40px;
  height: 40px;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  border-left: #fff solid 1px;
  overflow: hidden;
}
body.info
  .infocontent
  .section03
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a
  .label
  .arrow:after,
body.info
  .infocontent
  .section03
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a
  .label
  .arrow:before {
  content: "";
  width: 10.85px;
  height: 6.78px;
  background-image: url("../images/common/ico-arow-white.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(90deg);
  -moz-transform: translate(-50%, -50%) rotate(90deg);
  -ms-transform: translate(-50%, -50%) rotate(90deg);
  -o-transform: translate(-50%, -50%) rotate(90deg);
  transform: translate(-50%, -50%) rotate(90deg);
  transition: all 0.5s;
}
body.info
  .infocontent
  .section03
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a
  .label
  .arrow:before {
  left: 50%;
}
body.info
  .infocontent
  .section03
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a
  .label
  .arrow:after {
  left: calc(50% - 100%);
}
body.info
  .infocontent
  .section03
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a:nth-child(1)
  .bg {
  background-image: url("../images/index/menu-img01.jpg");
}
@media only screen and (max-width: 767px) {
  body.info
    .infocontent
    .section03
    .menu
    .inner
    .menu-list
    > li:nth-child(1)
    .links
    > a:nth-child(1)
    .bg {
    background-image: url("../images/index/menu-img01-sp.jpg");
  }
}
body.info
  .infocontent
  .section03
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a:nth-child(1)
  .label:after {
  background-color: #79c1f5;
}
@media only screen and (min-width: 768px) {
  body.info
    .infocontent
    .section03
    .menu
    .inner
    .menu-list
    > li:nth-child(1)
    .links
    > a:nth-child(2) {
    position: absolute;
    right: 0;
    top: 40px;
  }
}
body.info
  .infocontent
  .section03
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a:nth-child(2)
  .bg {
  background-image: url("../images/index/menu-img02.jpg");
  padding-top: 89.6551724%;
}
@media only screen and (max-width: 767px) {
  body.info
    .infocontent
    .section03
    .menu
    .inner
    .menu-list
    > li:nth-child(1)
    .links
    > a:nth-child(2)
    .bg {
    background-image: url("../images/index/menu-img02-sp.jpg");
  }
}
body.info
  .infocontent
  .section03
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a:nth-child(2)
  .label:after {
  background-color: #ef91cb;
}
body.info
  .infocontent
  .section03
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a:nth-child(3) {
  margin-top: 9px;
}
body.info
  .infocontent
  .section03
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a:nth-child(3)
  .bg {
  background-image: url("../images/index/menu-img03.jpg");
}
@media only screen and (max-width: 767px) {
  body.info
    .infocontent
    .section03
    .menu
    .inner
    .menu-list
    > li:nth-child(1)
    .links
    > a:nth-child(3)
    .bg {
    background-image: url("../images/index/menu-img03-sp.jpg");
  }
}
body.info
  .infocontent
  .section03
  .menu
  .inner
  .menu-list
  > li:nth-child(1)
  .links
  > a:nth-child(3)
  .label:after {
  background-color: #f79e77;
}
@media only screen and (min-width: 768px) {
  body.info .infocontent .section03 .menu .inner .menu-list > li:nth-child(2) {
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
    padding-top: 30px;
    margin-top: 115px;
  }
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section03 .menu .inner .menu-list > li:nth-child(2) {
    -webkit-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
}
@media only screen and (min-width: 768px) {
  body.info
    .infocontent
    .section03
    .menu
    .inner
    .menu-list
    > li:nth-child(2)
    .content {
    width: 62.6%;
    z-index: 2;
    padding-left: 8.6%;
    padding-right: 6%;
  }
}
@media only screen and (max-width: 767px) {
  body.info
    .infocontent
    .section03
    .menu
    .inner
    .menu-list
    > li:nth-child(2)
    .content {
    margin-top: -110px;
  }
}
@media only screen and (min-width: 768px) {
  body.info
    .infocontent
    .section03
    .menu
    .inner
    .menu-list
    > li:nth-child(2)
    .img {
    position: absolute;
    left: -60px;
    top: 0;
  }
}
@media only screen and (max-width: 767px) {
  body.info
    .infocontent
    .section03
    .menu
    .inner
    .menu-list
    > li:nth-child(2)
    .img {
    position: relative;
    left: -25px;
  }
}
body.info .infocontent .section03 .menu .inner .menu-list > li:nth-child(3) {
  padding-top: 30px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section03 .menu .inner .menu-list > li:nth-child(3) {
    -webkit-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
}
@media only screen and (min-width: 768px) {
  body.info
    .infocontent
    .section03
    .menu
    .inner
    .menu-list
    > li:nth-child(3)
    .content {
    width: 63.3%;
    padding-left: 4%;
    padding-right: 11.3%;
  }
}
@media only screen and (max-width: 767px) {
  body.info
    .infocontent
    .section03
    .menu
    .inner
    .menu-list
    > li:nth-child(3)
    .content {
    margin-top: -110px;
  }
}
@media only screen and (min-width: 768px) {
  body.info
    .infocontent
    .section03
    .menu
    .inner
    .menu-list
    > li:nth-child(3)
    .img {
    position: absolute;
    right: -60px;
    top: 0;
  }
}
@media only screen and (max-width: 767px) {
  body.info
    .infocontent
    .section03
    .menu
    .inner
    .menu-list
    > li:nth-child(3)
    .img {
    position: relative;
    right: -25px;
  }
}
body.info .infocontent .section04 {
  margin-top: 50px;
}
@media only screen and (min-width: 768px) {
  body.info .infocontent .section04 {
    margin-bottom: 100px;
  }
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section04 {
    margin-top: 55px;
  }
}
body.info .infocontent .section04 .section04-flowbox {
  padding-right: 80px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section04 .section04-flowbox {
    padding-right: 0;
  }
}
body.info .infocontent .section04 .section04-flowbox .flow-bg {
  background-image: url("../images/info/img04.jpg");
  background-repeat: no-repeat;
  background-position: top;
  background-size: cover;
  width: calc(100% - 20%);
  height: 450px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section04 .section04-flowbox .flow-bg {
    background-image: url("../images/info/img04-sp.jpg");
    height: 160px;
    width: calc(100% - 50px);
  }
}
body.info .infocontent .section04 .flow-detail {
  max-width: 1120px;
  margin: 0 auto;
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section04 .flow-detail {
    justify-content: center;
    max-width: 100%;
  }
}
body.info .infocontent .section04 .flow-detail .flow-detail-content {
  width: 100%;
  max-width: 780px;
  background: #fff;
  padding: 50px 60px 38px;
  position: relative;
  top: -370px;
  margin-bottom: -370px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section04 .flow-detail .flow-detail-content {
    width: calc(100% - 50px);
    top: -40px;
    padding: 43px 15px 28px;
    margin-bottom: -40px;
  }
}
body.info .infocontent .section04 .flow-detail .flow-detail-content .ttl-02 {
  display: flex;
  justify-content: center;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section04 .flow-detail .flow-detail-content .ttl-02 {
    display: block;
  }
  body.info
    .infocontent
    .section04
    .flow-detail
    .flow-detail-content
    .ttl-02
    .en {
    font-size: 26px;
    font-size: 2.6rem;
  }
  body.info
    .infocontent
    .section04
    .flow-detail
    .flow-detail-content
    .ttl-02
    .ja {
    margin-top: 10px;
    margin-left: 25px;
  }
  body.info
    .infocontent
    .section04
    .flow-detail
    .flow-detail-content
    .ttl-02
    .arrow {
    left: 15px;
    top: 80px;
    position: absolute;
  }
}
body.info .infocontent .section04 .flow-detail .flow-detail-content .date {
  margin: 40px 0;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section04 .flow-detail .flow-detail-content .date {
    margin: 40px 0 30px;
  }
}
body.info .infocontent .section04 .flow-detail .flow-detail-content .timebox {
  display: flex;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section04 .flow-detail .flow-detail-content .timebox {
    display: block;
  }
}
body.info
  .infocontent
  .section04
  .flow-detail
  .flow-detail-content
  .timebox
  .time-tit {
  height: 40px;
  width: 130px;
  color: #222443;
  background: #f4f4f4;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 2px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-right: 30px;
}
@media only screen and (max-width: 767px) {
  body.info
    .infocontent
    .section04
    .flow-detail
    .flow-detail-content
    .timebox
    .time-tit {
    width: 100%;
    font-size: 15px;
    font-size: 1.5rem;
    height: 30px;
  }
}
body.info
  .infocontent
  .section04
  .flow-detail
  .flow-detail-content
  .timebox
  .time-info
  .text {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold;
}
@media only screen and (max-width: 767px) {
  body.info
    .infocontent
    .section04
    .flow-detail
    .flow-detail-content
    .timebox
    .time-info
    .text {
    font-size: 16px;
    font-size: 1.6rem;
    text-align: center;
    margin-top: 20px;
  }
}
body.info
  .infocontent
  .section04
  .flow-detail
  .flow-detail-content
  .timebox
  .time-info
  .notetext {
  display: flex;
  font-size: 12px;
  font-size: 1.2rem;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  letter-spacing: 1px;
  margin-top: 15px;
}
@media only screen and (max-width: 767px) {
  body.info
    .infocontent
    .section04
    .flow-detail
    .flow-detail-content
    .timebox
    .time-info
    .notetext {
    line-height: 20px;
    margin-top: 10px;
  }
}
body.info .infocontent .section05 {
  margin-top: 120px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section05 {
    margin-top: 65px;
  }
}
body.info .infocontent .section05 .infolist {
  margin-top: 60px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section05 .infolist {
    margin-top: 42px;
  }
}
body.info .infocontent .section05 .infolist .box {
  display: flex;
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 2px;
  padding: 23px 0 21px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section05 .infolist .box {
    display: block;
    font-size: 14px;
    font-size: 1.4rem;
    padding: 18px 20px 13px;
  }
}
body.info .infocontent .section05 .infolist .box .boxleft {
  width: 21%;
  max-width: 205px;
  padding: 0 30px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section05 .infolist .box .boxleft {
    width: 100%;
    max-width: 100%;
    padding: 0 0 10px;
    border-bottom: 1px #e2e2e2 solid;
  }
}
body.info .infocontent .section05 .infolist .box .boxright {
  width: 79%;
  max-width: 795px;
  position: relative;
  padding: 0 40px;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section05 .infolist .box .boxright {
    width: 100%;
    max-width: 100%;
    padding: 15px 0 0;
    line-height: 22px;
  }
}
@media only screen and (min-width: 768px) {
  body.info .infocontent .section05 .infolist .box .boxright::before {
    content: "";
    position: absolute;
    height: 100%;
    width: 1px;
    padding: 10px 0;
    background-color: #e2e2e2;
    left: 0;
    top: -10px;
  }
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section05 .infolist .box .boxright .content p {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 24px;
    margin-top: -5px;
  }
}
body.info .infocontent .section05 .infolist .box .boxright .content .map {
  margin-top: 30px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section05 .infolist .box .boxright .content .map {
    margin-top: 10px;
  }
}
body.info
  .infocontent
  .section05
  .infolist
  .box
  .boxright
  .content
  .map
  iframe {
  width: 100%;
  height: 300px;
}
@media only screen and (max-width: 767px) {
  body.info
    .infocontent
    .section05
    .infolist
    .box
    .boxright
    .content
    .map
    iframe {
    height: 250px;
  }
}
body.info .infocontent .section05 .infolist .box .boxright .content .notetext {
  display: flex;
  font-size: 12px;
  font-size: 1.2rem;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  letter-spacing: 1px;
  margin-top: 20px;
}
@media only screen and (max-width: 767px) {
  body.info
    .infocontent
    .section05
    .infolist
    .box
    .boxright
    .content
    .notetext {
    line-height: 20px;
    margin-top: 15px;
  }
}
body.info .infocontent .section05 .infolist .box .boxright em {
  font-size: 12px;
  font-size: 1.2rem;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section05 .infolist .box .boxright em {
    margin-top: 7px;
    display: block;
  }
}
body.info .infocontent .section05 .infolist .box .boxright .text {
  margin: -8px 0;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section05 .infolist .box .boxright .text {
    margin: -6px 0 0;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 26px;
  }
}
body.info .infocontent .section05 .infolist .box .boxright .list li {
  position: relative;
  margin-bottom: 16px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section05 .infolist .box .boxright .list li {
    margin-bottom: 2px;
  }
}
body.info .infocontent .section05 .infolist .box .boxright .list li::after {
  content: "";
  position: absolute;
  display: block;
  width: 7px;
  height: 10px;
  background-image: url("../images/info/arw.svg");
  background-repeat: no-repeat;
  top: 3px;
  left: 0;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section05 .infolist .box .boxright .list li::after {
    display: flex;
    top: 7px;
  }
}
body.info .infocontent .section05 .infolist .box .boxright .list li span {
  padding-left: 20px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section05 .infolist .box .boxright .list li span {
    padding-left: 15px;
  }
}
body.info .infocontent .section05 .infolist .box .boxright .list li:last-child {
  margin-bottom: 0;
}
body.info .infocontent .section05 .infolist .bg {
  background: #f4f4f4;
}
body.info .infocontent .section06 {
  margin-top: 130px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section06 {
    margin-top: 62px;
    overflow: hidden;
  }
}
body.info .infocontent .section06 .section04-flowbox {
  padding-right: 0;
  padding-left: 80px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section06 .section04-flowbox {
    padding-left: 0;
  }
}
body.info .infocontent .section06 .section04-flowbox .flow-bg {
  background-image: url("../images/info/img05.jpg");
  position: relative;
  left: 20%;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section06 .section04-flowbox .flow-bg {
    background-image: url("../images/info/img05-sp.jpg");
  }
}
body.info .infocontent .section06 .flow-detail {
  justify-content: flex-start;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section06 .flow-detail {
    justify-content: center;
  }
}
body.info .infocontent .section06 .flow-detail .flow-detail-content {
  max-width: 720px;
  padding: 60px 60px 38px;
  top: -330px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section06 .flow-detail .flow-detail-content {
    padding: 43px 15px 28px;
    top: -40px;
  }
}
body.info .infocontent .section06 .flow-detail .flow-detail-content .text {
  margin: 35px 0 50px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section06 .flow-detail .flow-detail-content .text {
    margin: 32px 0 25px;
  }
}
body.info .infocontent .section07 {
  margin-top: 95px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section07 {
    margin-top: 13px;
  }
  body.info .infocontent .section07 .ttl-05 .en {
    font-size: 15px;
    font-size: 1.5rem;
  }
}
body.info .infocontent .section07 .infolist {
  margin-top: 40px;
}
@media only screen and (max-width: 767px) {
  body.info .infocontent .section07 .infolist {
    margin-top: 22px;
  }
}

body.policy .policycontent {
  padding: 75px 60px 105px;
}
@media only screen and (max-width: 767px) {
  body.policy .policycontent {
    padding: 55px 0 110px;
  }
}
body.policy .policycontent p {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 31px;
  letter-spacing: 1px;
  color: #222443;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media only screen and (max-width: 767px) {
  body.policy .policycontent p {
    text-align: justify;
    line-height: 28px;
    letter-spacing: 1.5px;
  }
}
body.policy .policycontent .text {
  margin: 0 0 95px;
}
@media only screen and (max-width: 767px) {
  body.policy .policycontent .text {
    margin: 0 0 65px;
  }
}
body.policy .policycontent .box {
  margin: 0 0 97px;
}
@media only screen and (max-width: 767px) {
  body.policy .policycontent .box {
    margin: 0 0 62px;
  }
}
body.policy .policycontent .box .h3-tit {
  font-size: 26px;
  font-size: 2.6rem;
  border-top: 1px #222443 solid;
  border-bottom: 1px #222443 solid;
  padding: 22px 0 22px 60px;
  color: #222443;
  letter-spacing: 3px;
  margin-bottom: 40px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  body.policy .policycontent .box .h3-tit {
    font-size: 20px;
    font-size: 2rem;
    padding: 18px 0 18px 45px;
    margin-bottom: 35px;
  }
}
body.policy .policycontent .box .h3-tit::after {
  content: "";
  position: absolute;
  display: block;
  width: 18px;
  height: 12px;
  background-image: url("../images/info/arw-right.svg");
  background-repeat: no-repeat;
  top: 30px;
  left: 20px;
}
@media only screen and (max-width: 767px) {
  body.policy .policycontent .box .h3-tit::after {
    top: 24px;
    left: 15px;
  }
}
@media only screen and (max-width: 767px) {
  body.policy .policycontent .box .h3-tit-lh {
    line-height: 30px;
    padding: 12px 0 13px 45px;
  }
  body.policy .policycontent .box .h3-tit-lh::after {
    top: 22px;
  }
}
body.policy .policycontent .box .detail01 {
  background: #f4f4f4;
  padding: 42px 135px 23px 55px;
  display: flex;
  justify-content: space-between;
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 1px;
  color: #222443;
  margin-top: 32px;
}
@media screen and (max-width: 1024px) {
  body.policy .policycontent .box .detail01 {
    padding: 42px 85px 23px 55px;
  }
}
@media screen and (max-width: 950px) {
  body.policy .policycontent .box .detail01 {
    padding: 42px 35px 23px 55px;
    font-size: 14px;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 850px) {
  body.policy .policycontent .box .detail01 {
    display: block;
  }
}
@media only screen and (max-width: 767px) {
  body.policy .policycontent .box .detail01 {
    display: block;
    padding: 37px 35px 30px 45px;
    margin: 22px 0 70px;
  }
}
body.policy .policycontent .box .detail01 .detail01-info li {
  margin-bottom: 17px;
  position: relative;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media only screen and (max-width: 767px) {
  body.policy .policycontent .box .detail01 .detail01-info li {
    line-height: 24px;
    margin-bottom: 9px;
  }
}
body.policy .policycontent .box .detail01 .detail01-info li::after {
  content: "";
  position: absolute;
  display: block;
  width: 7px;
  height: 10px;
  background-image: url("../images/info/arw.svg");
  background-repeat: no-repeat;
  top: 3px;
  left: -15px;
}
@media only screen and (max-width: 767px) {
  body.policy .policycontent .box .detail01 .detail01-info li::after {
    display: flex;
    top: 6px;
  }
}
body.policy .policycontent .box .detail02 {
  background: #f4f4f4;
  padding: 37px 55px 23px 65px;
  display: flex;
  justify-content: space-between;
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 1px;
  color: #504946;
  margin-top: 32px;
}
@media screen and (max-width: 950px) {
  body.policy .policycontent .box .detail02 {
    padding: 37px 30px 25px;
  }
}
@media screen and (max-width: 850px) {
  body.policy .policycontent .box .detail02 {
    display: block;
  }
}
@media only screen and (max-width: 767px) {
  body.policy .policycontent .box .detail02 {
    display: block;
    padding: 37px 30px 25px 50px;
    margin: 22px 0 70px;
  }
}
body.policy .policycontent .box .detail02 .detail02left {
  max-width: 195px;
}
@media screen and (max-width: 1050px) {
  body.policy .policycontent .box .detail02 .detail02left {
    max-width: 125px;
  }
}
@media screen and (max-width: 950px) {
  body.policy .policycontent .box .detail02 .detail02left {
    max-width: 95px;
  }
}
@media screen and (max-width: 850px) {
  body.policy .policycontent .box .detail02 .detail02left {
    margin-bottom: 27px;
  }
}
@media only screen and (max-width: 767px) {
  body.policy .policycontent .box .detail02 .detail02left {
    max-width: 90px;
    margin-bottom: 27px;
    margin-left: -15px;
  }
}
body.policy .policycontent .box .detail02 .detail02right {
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
body.policy .policycontent .box .detail02 .detail02right li {
  margin-bottom: 18px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  body.policy .policycontent .box .detail02 .detail02right li {
    line-height: 24px;
    margin-bottom: 10px;
  }
}
body.policy .policycontent .box .detail02 .detail02right li::after {
  content: "";
  position: absolute;
  display: block;
  width: 7px;
  height: 10px;
  background-image: url("../images/info/arw.svg");
  background-repeat: no-repeat;
  top: 3px;
  left: -15px;
}
@media only screen and (max-width: 767px) {
  body.policy .policycontent .box .detail02 .detail02right li::after {
    top: 7px;
  }
}
body.policy .policycontent .box .detail02 .detail02right li a:hover {
  opacity: 0.6;
}

body.sitemap .sitemapcontent {
  background: #f7f5ef;
  padding: 120px 0 200px;
}
@media only screen and (max-width: 767px) {
  body.sitemap .sitemapcontent {
    padding: 75px 0 160px;
  }
}
@media only screen and (min-width: 768px) {
  body.sitemap .sitemapcontent .contentdetail {
    padding-right: 50px;
    display: flex;
    justify-content: space-between;
  }
}
@media screen and (max-width: 1024px) {
  body.sitemap .sitemapcontent .contentdetail {
    padding: 0 20px;
  }
}
@media only screen and (max-width: 767px) {
  body.sitemap .sitemapcontent .contentdetail {
    border-left: 1px #ceab74 solid;
    padding: 0;
  }
}
body.sitemap .sitemapcontent .contentdetail .detailbox {
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 1px;
  padding-left: 30px;
}
@media only screen and (min-width: 768px) {
  body.sitemap .sitemapcontent .contentdetail .detailbox {
    border-left: 1px #ceab74 solid;
  }
}
@media screen and (max-width: 1024px) {
  body.sitemap .sitemapcontent .contentdetail .detailbox {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 767px) {
  body.sitemap .sitemapcontent .contentdetail .detailbox {
    margin-bottom: 17px;
    font-size: 15px;
    font-size: 1.5rem;
  }
}
body.sitemap .sitemapcontent .contentdetail .detailbox li {
  margin-bottom: 26px;
}
@media only screen and (max-width: 767px) {
  body.sitemap .sitemapcontent .contentdetail .detailbox li {
    margin-bottom: 17px;
  }
}
body.sitemap .sitemapcontent .contentdetail .detailbox li:hover {
  opacity: 0.6;
}
body.sitemap .sitemapcontent .contentdetail .detailbox li:last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  body.sitemap .sitemapcontent .contentdetail .detailbox li {
    line-height: 24px;
  }
}
@media only screen and (min-width: 768px) {
  body.sitemap .sitemapcontent .contentdetail .detailbox .detailbox02 {
    margin-left: 5px;
  }
}
@media only screen and (min-width: 768px) {
  body.sitemap .sitemapcontent .contentdetail .detailbox .detailbox03 {
    margin-left: -5px;
  }
}
body.sitemap .sitemapcontent .bigimg {
  margin: 120px 0 0;
}
@media only screen and (max-width: 767px) {
  body.sitemap .sitemapcontent .bigimg {
    margin: 75px 0 0;
  }
}

body.strength .strengthcontent {
  padding: 80px 0 300px;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent {
    padding: 60px 0 240px;
  }
}
body.strength .strengthcontent p {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 31px;
  letter-spacing: 1px;
  color: #222443;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent p {
    text-align: justify;
    line-height: 28px;
    letter-spacing: 1.5px;
  }
}
body.strength .strengthcontent .ttl-01 .ja {
  margin-top: 20px;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .ttl-01 .ja {
    margin-top: 15px;
  }
}
body.strength .strengthcontent .ttl-05 {
  margin-bottom: 25px;
  letter-spacing: 1.5px;
}
@media only screen and (min-width: 768px) {
  body.strength .strengthcontent .ttl-05 {
    white-space: nowrap;
  }
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .ttl-05 {
    margin-bottom: 21px;
    letter-spacing: 0.5px;
  }
}
body.strength .strengthcontent .bgdouble {
  position: relative;
}
body.strength .strengthcontent .bgdouble::before {
  content: "";
  width: 100%;
  background-color: #f7f5ef;
  position: absolute;
  display: block;
  z-index: -1;
  top: 240px;
  bottom: -140px;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .bgdouble::before {
    top: 257px;
    bottom: -60px;
  }
}
body.strength .strengthcontent .bgdouble::after {
  content: "";
  width: 30%;
  background-color: #efebe0;
  position: absolute;
  display: block;
  z-index: -1;
  top: 240px;
  bottom: -140px;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .bgdouble::after {
    top: 257px;
    bottom: -60px;
  }
}
body.strength .strengthcontent .text {
  padding: 40px 60px 45px;
  letter-spacing: 1.5px;
  background: #fff;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .text {
    padding: 25px 30px 0;
  }
}
body.strength .strengthcontent .section01 .boxmenu {
  background: #fff;
  padding: 10px 60px 60px;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section01 .boxmenu {
    padding: 10px 30px 20px;
  }
}
body.strength .strengthcontent .section01 .boxmenu .boxmenu01 {
  display: flex;
  justify-content: space-between;
  border-bottom: 1px #ceab74 dotted;
  padding: 38px 0 30px;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section01 .boxmenu .boxmenu01 {
    display: block;
    padding: 30px 0 37px;
  }
}
body.strength .strengthcontent .section01 .boxmenu .boxmenu01 .box01left {
  width: 70%;
  max-width: 550px;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section01 .boxmenu .boxmenu01 .box01left {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section01 .boxmenu .boxmenu01 .img-sp {
    margin-bottom: 18px;
  }
}
body.strength .strengthcontent .section01 .boxmenu .boxmenu01 .box01right {
  width: 30%;
  max-width: 250px;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section01 .boxmenu .boxmenu01 .box01right {
    width: 100%;
  }
}
body.strength .strengthcontent .section01 .boxmenu .boxmenu02 {
  flex-direction: row-reverse;
}
body.strength .strengthcontent .section01 .boxmenu .boxmenu03 {
  border-bottom: none;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section01 .boxmenu .boxmenu03 {
    padding: 30px 0 14px;
  }
}
body.strength .strengthcontent .section02 {
  margin-top: 260px;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section02 {
    margin-top: 120px;
  }
}
body.strength .strengthcontent .section02 .bgdouble::before {
  top: 277px;
  bottom: -100px;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section02 .bgdouble::before {
    top: 297px;
    bottom: -60px;
  }
}
body.strength .strengthcontent .section02 .bgdouble::after {
  top: 277px;
  bottom: -100px;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section02 .bgdouble::after {
    top: 297px;
    bottom: -60px;
  }
}
body.strength .strengthcontent .section02 .boxclean {
  background: #fff;
  padding: 48px 60px 82px;
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section02 .boxclean {
    display: block;
    padding: 35px 30px 20px;
  }
}
body.strength .strengthcontent .section02 .boxclean .boxclean01 {
  width: 33%;
  max-width: 260px;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section02 .boxclean .boxclean01 {
    width: 100%;
    max-width: 100%;
    margin-bottom: 47px;
  }
}
body.strength .strengthcontent .section02 .boxclean .boxclean01 .ttl-05 {
  margin-bottom: 12px;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section02 .boxclean .boxclean01 .ttl-05 {
    margin-bottom: 24px;
  }
}
body.strength .strengthcontent .section02 .boxclean .boxclean01 .list {
  color: #222443;
  font-size: 18px;
  font-size: 1.8rem;
  margin-top: 20px;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section02 .boxclean .boxclean01 .list {
    margin-bottom: 22px;
    font-size: 15px;
    font-size: 1.5rem;
    margin-top: 28px;
  }
}
body.strength .strengthcontent .section02 .boxclean .boxclean01 .list li {
  position: relative;
  margin-bottom: 17px;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  letter-spacing: 2px;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section02 .boxclean .boxclean01 .list li {
    margin-bottom: 12px;
  }
}
body.strength
  .strengthcontent
  .section02
  .boxclean
  .boxclean01
  .list
  li::after {
  content: "";
  position: absolute;
  display: block;
  width: 7px;
  height: 10px;
  background-image: url("../images/info/arw.svg");
  background-repeat: no-repeat;
  top: 3px;
  left: 0;
}
@media only screen and (max-width: 767px) {
  body.strength
    .strengthcontent
    .section02
    .boxclean
    .boxclean01
    .list
    li::after {
    display: flex;
    top: 3px;
  }
}
body.strength .strengthcontent .section02 .boxclean .boxclean01 .list li span {
  padding-left: 20px;
}
@media only screen and (max-width: 767px) {
  body.strength
    .strengthcontent
    .section02
    .boxclean
    .boxclean01
    .list
    li
    span {
    padding-left: 15px;
  }
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section02 .boxclean .boxclean02 {
    margin-bottom: 23px;
  }
}
body.strength .strengthcontent .section03 {
  margin-top: 220px;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section03 {
    margin-top: 120px;
  }
}
body.strength .strengthcontent .section03 .text {
  padding: 40px 60px 75px;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section03 .text {
    padding: 27px 30px 35px;
  }
}
body.strength .strengthcontent .section03 .bgdouble::before {
  bottom: -120px;
  top: 270px;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section03 .bgdouble::before {
    top: 260px;
    bottom: -60px;
  }
}
body.strength .strengthcontent .section03 .bgdouble::after {
  bottom: -120px;
  top: 270px;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section03 .bgdouble::after {
    top: 260px;
    bottom: -60px;
  }
}
body.strength .strengthcontent .section03 .boxmenu {
  padding: 10px 60px 95px;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section03 .boxmenu {
    padding: 0 30px 37px;
  }
}
body.strength .strengthcontent .section03 .boxmenu .boxmenu03 {
  padding: 0;
}
body.strength .strengthcontent .section04 {
  margin-top: 250px;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section04 {
    margin-top: 120px;
  }
}
body.strength .strengthcontent .section04 .bgdouble::before {
  top: 273px;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section04 .bgdouble::before {
    top: 253px;
    bottom: -60px;
  }
}
body.strength .strengthcontent .section04 .bgdouble::after {
  top: 273px;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section04 .bgdouble::after {
    top: 253px;
    bottom: -60px;
  }
}
body.strength .strengthcontent .section04 .boxunisex {
  background: #fff;
  padding: 50px 60px 100px;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section04 .boxunisex {
    padding: 25px 30px 40px;
  }
}
body.strength .strengthcontent .section05 {
  margin-top: 220px;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section05 {
    margin-top: 120px;
  }
}
body.strength .strengthcontent .section05 .text {
  padding: 40px 60px 50px;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section05 .text {
    padding: 25px 30px 15px;
  }
}
body.strength .strengthcontent .section05 .bgdouble::before {
  top: 308px;
  bottom: -100px;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section05 .bgdouble::before {
    top: 298px;
    bottom: -60px;
  }
}
body.strength .strengthcontent .section05 .bgdouble::after {
  top: 308px;
  bottom: -100px;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section05 .bgdouble::after {
    top: 298px;
    bottom: -60px;
  }
}
body.strength .strengthcontent .section05 .ttl-05 {
  margin-bottom: 22px;
  letter-spacing: 0.5px;
}
body.strength .strengthcontent .section05 .boxlocation {
  background: #fff;
  padding: 40px 60px 100px;
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section05 .boxlocation {
    display: block;
    padding: 10px 30px 20px;
  }
}
body.strength .strengthcontent .section05 .boxlocation .boxlocation01 {
  width: 33%;
  max-width: 260px;
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section05 .boxlocation .boxlocation01 {
    width: 100%;
    max-width: 100%;
    margin-bottom: 42px;
  }
}
@media only screen and (max-width: 767px) {
  body.strength .strengthcontent .section05 .boxlocation .boxlocation02 {
    margin-bottom: 20px;
  }
}

body.voice main {
  background-color: #f7f5ef;
  position: relative;
}
body.voice main:before {
  background-color: #efebe0;
  content: "";
  margin: 0 auto;
  position: absolute;
  right: 0;
  top: 0%;
  height: 100%;
  width: 42.18%;
}
@media only screen and (max-width: 767px) {
  body.voice main:before {
    width: 31.4666%;
  }
}

body.voice section.content {
  padding: 82px 0 200px;
}
@media only screen and (max-width: 767px) {
  body.voice section.content {
    padding: 78px 0 180px;
  }
}

body.voice .cat-list {
  position: relative;
  z-index: 2;
}
body.voice .cat-list li {
  background-color: white;
  border: 1px solid #ceab74;
  color: #ceab74;
  height: 60px;
  width: calc((100% - 16px) / 5);
}
@media only screen and (min-width: 768px) {
  body.voice .cat-list li {
    cursor: pointer;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
  }
  body.voice .cat-list li:hover {
    opacity: 0.7;
  }
}
@media only screen and (max-width: 767px) {
  body.voice .cat-list li {
    margin-bottom: 8px;
    height: 40px;
    width: calc(50% - 4px);
  }
  body.voice .cat-list li:first-child {
    width: 100%;
  }
  body.voice .cat-list li:nth-child(4),
  body.voice .cat-list li:nth-child(5) {
    margin-bottom: 0;
  }
}
body.voice .cat-list li a {
  height: 100%;
  font-size: 16px;
  font-size: 1.6rem;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  letter-spacing: 0.05em;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
}
body.voice .cat-list li.active {
  background-color: #ceab74;
  color: white;
}

body.voice ul.article-list {
  margin-top: 59px;
  padding-bottom: 18px;
  position: relative;
  z-index: 2;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}
@media only screen and (max-width: 767px) {
  body.voice ul.article-list {
    padding-bottom: 10px;
    margin-top: 50px;
  }
}
body.voice ul.article-list li {
  margin-bottom: 32px;
  width: calc((100% - 64px) / 3);
}
@media only screen and (min-width: 768px) {
  body.voice ul.article-list li {
    margin-right: 32px;
  }
  body.voice ul.article-list li:nth-child(3n) {
    margin-right: 0;
  }
}
@media only screen and (max-width: 767px) {
  body.voice ul.article-list li {
    margin-bottom: 28px;
    width: 100%;
  }
}
body.voice ul.article-list li a .imager {
  overflow: hidden;
  position: relative;
  padding-bottom: 70.5%;
  max-height: 220px;
  height: 0px;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  body.voice ul.article-list li a .imager {
    padding-bottom: 71.5%;
    max-height: 230px;
  }
}
@media only screen and (min-width: 768px) {
  body.voice ul.article-list li a .imager:hover .img {
    transform: translateY(-50%) scale(1.1);
  }
}
body.voice ul.article-list li a .imager .img {
  background-size: cover;
  background-position: center;
  margin: 0 auto;
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.3s;
  height: 100%;
  width: 100%;
}
body.voice ul.article-list li a .category {
  background-color: #ceab74;
  color: white;
  font-size: 15px;
  font-size: 1.5rem;
  font-family: "Arial", "メイリオ";
  letter-spacing: 0.05em;
  margin: 0 auto;
  position: absolute;
  right: 0;
  top: -11px;
  text-align: center;
  height: 23px;
  width: calc(100% - 52px);
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
}
body.voice ul.article-list li a .txt-box {
  background-color: white;
  padding: 30px 26px 20px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  body.voice ul.article-list li a .txt-box {
    padding: 30px 26px 20px;
  }
}
body.voice ul.article-list li a .txt-box .article-ttl {
  font-size: 15px;
  font-size: 1.5rem;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  line-height: 1.866;
  letter-spacing: 0.1em;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  body.voice ul.article-list li a .txt-box .article-ttl {
    margin-left: -2px;
    line-height: 1.6;
  }
}
body.voice ul.article-list li a .txt-box .date {
  color: #969696;
  display: inline-block;
  font-size: 15px;
  font-size: 1.5rem;
  font-family: "Arial", "メイリオ";
  letter-spacing: 0.05em;
  margin-top: 10px;
}
@media only screen and (max-width: 767px) {
  body.voice ul.article-list li a .txt-box .date {
    margin-top: 14px;
  }
}

body.voice .archive-bar {
  background-color: white;
  margin: 80px 0 0;
  padding: 21px;
  position: relative;
  width: 100%;
  z-index: 2;
}
@media only screen and (max-width: 767px) {
  body.voice .archive-bar {
    margin: 80px 0 0;
    padding: 10px 30px 17px;
  }
}
body.voice .archive-bar .ttl-02 {
  position: relative;
}
body.voice .archive-bar .ttl-02:before {
  background-color: #121755;
  content: "";
  opacity: 1;
  position: absolute;
  right: 0;
  top: 8px;
  height: 1px;
  width: 18px;
  transform: translateY(-50%) rotate(90deg);
  transition: all 0.3s;
}
@media only screen and (max-width: 767px) {
  body.voice .archive-bar .ttl-02:before {
    top: 18px;
  }
}
body.voice .archive-bar .ttl-02:after {
  background-color: #121755;
  content: "";
  position: absolute;
  right: 0;
  top: 8px;
  height: 1px;
  width: 18px;
}
@media only screen and (max-width: 767px) {
  body.voice .archive-bar .ttl-02:after {
    top: 18px;
  }
}
body.voice .archive-bar .ttl-02.is-active:before {
  opacity: 0;
  transform: translateY(-50%);
}
@media only screen and (max-width: 767px) {
  body.voice .archive-bar .ttl-02 .arrow {
    margin-left: 14px;
    position: relative;
    top: -3px;
  }
}
body.voice .archive-bar .ttl-02 .en {
  font-size: 18px;
  font-size: 1.8rem;
}
@media only screen and (max-width: 767px) {
  body.voice .archive-bar .ttl-02 .en {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
body.voice .archive-bar .ttl-02 .ja {
  font-size: 12px;
  font-size: 1.2rem;
}
@media only screen and (max-width: 767px) {
  body.voice .archive-bar .ttl-02 .ja {
    font-size: 12px;
    font-size: 1.2rem;
    position: relative;
    top: -3px;
  }
}
body.voice .archive-bar .js-toggle-content {
  display: none;
}
body.voice .archive-bar ul.list {
  border-top: 1px solid #222443;
  padding-top: 22px;
  margin-top: 17px;
}
@media only screen and (min-width: 768px) {
  body.voice .archive-bar ul.list {
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    margin-bottom: -15px;
  }
}
@media only screen and (max-width: 767px) {
  body.voice .archive-bar ul.list {
    padding-top: 20px;
    display: block;
  }
}
@media only screen and (min-width: 768px) {
  body.voice .archive-bar ul.list li {
    margin-bottom: 17px;
    width: calc((100%) / 9);
  }
}
@media only screen and (max-width: 767px) {
  body.voice .archive-bar ul.list li {
    margin-bottom: 15px;
    width: 100%;
  }
  body.voice .archive-bar ul.list li:last-child {
    margin-bottom: 15px;
  }
}
body.voice .archive-bar ul.list li a {
  color: #222443;
  font-size: 14px;
  font-size: 1.4rem;
  font-family: "Arial", "メイリオ";
  letter-spacing: 0.1em;
}

body.voice.single main {
  padding-top: 122px;
  padding-bottom: 200px;
}
@media only screen and (max-width: 767px) {
  body.voice.single main {
    padding-top: 80px;
    padding-bottom: 180px;
  }
}
body.voice.single main .main-img {
  margin-bottom: 20px !important;
}

body.voice.single .archive-bar {
  margin-top: 40px;
}

body.voice.single .single-pagination {
  margin: 50px auto 80px;
}
@media only screen and (max-width: 767px) {
  body.voice.single .single-pagination {
    margin: 40px auto 80px;
  }
}

body.voice.single .cat-list {
  margin-bottom: 40px;
}

body.voice.single .category {
  background-color: #ceab74;
  color: white !important;
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.05em;
  text-align: center;
  height: 23px;
  width: 260px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
}
@media only screen and (max-width: 767px) {
  body.voice.single .category {
    width: 100%;
  }
}

body.voice.single .date {
  color: #919191;
  font-size: 15px;
  font-size: 1.5rem;
  font-family: "Arial", "メイリオ";
  margin-right: 0px;
  text-align: right;
  margin-bottom: 50px;
}
@media only screen and (max-width: 767px) {
  body.voice.single .date {
    margin-bottom: 30px;
  }
}

body.voice.single .cms-wrap {
  background-color: white;
  padding: 60px 136px 30px;
  position: relative;
  z-index: 2;
}
@media only screen and (max-width: 767px) {
  body.voice.single .cms-wrap {
    padding: 40px 30px 20px;
  }
}
