@charset "UTF-8";
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:before,
.slick-track:after {
  display: table;
  content: "";
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}

[dir=rtl] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/* Slider */
.slick-loading .slick-list {
  background: #fff url("./ajax-loader.gif") center center no-repeat;
}

/* Icons */
@font-face {
  font-family: "slick";
  font-weight: normal;
  font-style: normal;
  src: url("./fonts/slick.eot");
  src: url("./fonts/slick.eot?#iefix") format("embedded-opentype"), url("./fonts/slick.woff") format("woff"), url("./fonts/slick.ttf") format("truetype"), url("./fonts/slick.svg#slick") format("svg");
}
/* Arrows */
.slick-prev,
.slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  display: block;
  width: 20px;
  height: 20px;
  padding: 0;
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent;
}

.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  color: transparent;
  outline: none;
  background: transparent;
}

.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  opacity: 1;
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}

.slick-prev:before,
.slick-next:before {
  font-family: "slick";
  font-size: 20px;
  line-height: 1;
  opacity: 0.75;
  color: white;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: -25px;
}

[dir=rtl] .slick-prev {
  right: -25px;
  left: auto;
}

.slick-prev:before {
  content: "←";
}

[dir=rtl] .slick-prev:before {
  content: "→";
}

.slick-next {
  right: -25px;
}

[dir=rtl] .slick-next {
  right: auto;
  left: -25px;
}

.slick-next:before {
  content: "→";
}

[dir=rtl] .slick-next:before {
  content: "←";
}

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px;
}

.slick-dots {
  position: absolute;
  bottom: -25px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}

.slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 20px;
  height: 20px;
  padding: 5px;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: transparent;
}

.slick-dots li button:hover,
.slick-dots li button:focus {
  outline: none;
}

.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
  opacity: 1;
}

.slick-dots li button:before {
  font-family: "slick";
  font-size: 6px;
  line-height: 20px;
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  content: "•";
  text-align: center;
  opacity: 0.25;
  color: black;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before {
  opacity: 0.75;
  color: black;
}

/*
    Colorbox Core Style:
    The following CSS is consistent between example themes and should not be altered.
*/
#colorbox, #cboxOverlay, #cboxWrapper {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  overflow: hidden;
  -webkit-transform: translate3d(0, 0, 0);
}

#cboxWrapper {
  max-width: none;
}

#cboxOverlay {
  position: fixed;
  width: 100%;
  height: 100%;
}

#cboxMiddleLeft, #cboxBottomLeft {
  clear: left;
}

#cboxContent {
  position: relative;
}

#cboxLoadedContent {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

#cboxTitle {
  margin: 0;
}

#cboxLoadingOverlay, #cboxLoadingGraphic {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow {
  cursor: pointer;
}

.cboxPhoto {
  float: left;
  margin: auto;
  border: 0;
  display: block;
  max-width: none;
  -ms-interpolation-mode: bicubic;
}

.cboxIframe {
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
  padding: 0;
  margin: 0;
}

#colorbox, #cboxContent, #cboxLoadedContent {
  box-sizing: content-box;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
}

/* 
    User Style:
    Change the following styles to modify the appearance of Colorbox.  They are
    ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#cboxOverlay {
  background: url(images/overlay.png) repeat 0 0;
  opacity: 0.9;
  filter: alpha(opacity=90);
}

#colorbox {
  outline: 0;
}

#cboxTopLeft {
  width: 21px;
  height: 21px;
  background: url(images/controls.png) no-repeat -101px 0;
}

#cboxTopRight {
  width: 21px;
  height: 21px;
  background: url(images/controls.png) no-repeat -130px 0;
}

#cboxBottomLeft {
  width: 21px;
  height: 21px;
  background: url(images/controls.png) no-repeat -101px -29px;
}

#cboxBottomRight {
  width: 21px;
  height: 21px;
  background: url(images/controls.png) no-repeat -130px -29px;
}

#cboxMiddleLeft {
  width: 21px;
  background: url(images/controls.png) left top repeat-y;
}

#cboxMiddleRight {
  width: 21px;
  background: url(images/controls.png) right top repeat-y;
}

#cboxTopCenter {
  height: 21px;
  background: url(images/border.png) 0 0 repeat-x;
}

#cboxBottomCenter {
  height: 21px;
  background: url(images/border.png) 0 -29px repeat-x;
}

#cboxContent {
  background: #fff;
  overflow: hidden;
}

.cboxIframe {
  background: #fff;
}

#cboxError {
  padding: 50px;
  border: 1px solid #ccc;
}

#cboxLoadedContent {
  margin-bottom: 28px;
}

#cboxTitle {
  position: absolute;
  bottom: 4px;
  left: 0;
  text-align: center;
  width: 100%;
  color: #949494;
}

#cboxCurrent {
  position: absolute;
  bottom: 4px;
  left: 58px;
  color: #949494;
}

#cboxLoadingOverlay {
  background: url(images/loading_background.png) no-repeat center center;
}

#cboxLoadingGraphic {
  background: url(images/loading.gif) no-repeat center center;
}

/* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
#cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {
  border: 0;
  padding: 0;
  margin: 0;
  overflow: visible;
  width: auto;
  background: none;
}

/* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
#cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active {
  outline: 0;
}

#cboxSlideshow {
  position: absolute;
  bottom: 4px;
  right: 30px;
  color: #0092ef;
}

#cboxPrevious {
  position: absolute;
  bottom: 0;
  left: 0;
  background: url(images/controls.png) no-repeat -75px 0;
  width: 25px;
  height: 25px;
  text-indent: -9999px;
}

#cboxPrevious:hover {
  background-position: -75px -25px;
}

#cboxNext {
  position: absolute;
  bottom: 0;
  left: 27px;
  background: url(images/controls.png) no-repeat -50px 0;
  width: 25px;
  height: 25px;
  text-indent: -9999px;
}

#cboxNext:hover {
  background-position: -50px -25px;
}

#cboxClose {
  position: absolute;
  bottom: 0;
  right: 0;
  background: url(images/controls.png) no-repeat -25px 0;
  width: 25px;
  height: 25px;
  text-indent: -9999px;
}

#cboxClose:hover {
  background-position: -25px -25px;
}

/*
  The following fixes a problem where IE7 and IE8 replace a PNG's alpha transparency with a black fill
  when an alpha filter (opacity change) is set on the element or ancestor element.  This style is not applied to or needed in IE9.
  See: http://jacklmoore.com/notes/ie-transparency-problems/
*/
.cboxIE #cboxTopLeft,
.cboxIE #cboxTopCenter,
.cboxIE #cboxTopRight,
.cboxIE #cboxBottomLeft,
.cboxIE #cboxBottomCenter,
.cboxIE #cboxBottomRight,
.cboxIE #cboxMiddleLeft,
.cboxIE #cboxMiddleRight {
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF);
}

/*------------------------------
RESET
--------------------------------*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

/*------------------------------
表示切り替え
--------------------------------*/
@media screen and (min-width: 769px) {
  .hidden_pc {
    display: none !important;
  }
}
@media screen and (max-width: 768px) {
  .hidden_pc {
    display: block;
  }
  .hidden_sp {
    display: none !important;
  }
}
/*------------------------------
common
--------------------------------*/
img {
  width: 100%;
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

.fixed {
  height: 100%;
  overflow: hidden;
}

@media screen and (min-width: 769px) {
  html.modal-inner {
    font-size: 0.8333333333vw;
  }
}

@media screen and (max-width: 768px) {
  header.fitness.lower .utility {
    position: static;
  }
}

@media screen and (min-width: 769px) {
  .sp_only {
    display: none !important;
  }
}

@media screen and (max-width: 768px) {
  .pc_only {
    display: none !important;
  }
}

#tab01:checked ~ #tab01_content,
#tab02:checked ~ #tab02_content {
  display: block;
}

.checkbox01-row {
  position: relative;
  text-align: center;
}
.checkbox01-label {
  position: relative;
  padding-left: 1.7em;
  line-height: 1;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .checkbox01-label {
    font-size: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .checkbox01-label {
    font-size: 4rem;
  }
}
.checkbox01-label::before {
  content: "";
  position: absolute;
  background: #f9f9f9;
  border: 1px solid #999;
  border-radius: 0.2em;
  width: 1.2em;
  height: 1.2em;
  left: 0;
  top: 50%;
  transform: translate(0, -50%);
  box-sizing: border-box;
}
.checkbox01-input {
  position: absolute;
  width: 0;
  height: 0;
  opacity: 0;
}
.checkbox01-input + .checkbox01-label {
  cursor: pointer;
}
.checkbox01-input:checked + .checkbox01-label::before {
  background: #0d5faf;
  border-color: #0d5faf;
}
.checkbox01-input:checked + .checkbox01-label::after {
  content: "";
  position: absolute;
  border-right: 0.175em solid #fff;
  border-bottom: 0.175em solid #fff;
  width: 0.5em;
  height: 0.675em;
  left: 0.35em;
  top: 0.3em;
  transform: rotateZ(45deg);
  box-sizing: border-box;
}
.checkbox01-input.error + .checkbox01-label {
  color: #fc4042;
}

.checkbox02-label {
  position: relative;
  line-height: 1;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .checkbox02-label {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 768px) {
  .checkbox02-label {
    font-size: 2.8rem;
  }
}
.checkbox02-label::before {
  content: "";
  display: block;
  background: #f9f9f9;
  border: 1px solid #999;
  border-radius: 0.286em;
  width: 1.715em;
  height: 1.715em;
  margin: 0 auto 0.5em;
  box-sizing: border-box;
}
.checkbox02-label.closed::before {
  visibility: hidden;
}
.checkbox02-input {
  position: absolute;
  width: 0;
  height: 0;
  opacity: 0;
}
.checkbox02-input + .checkbox02-label {
  cursor: pointer;
}
.checkbox02-input:checked + .checkbox02-label::before {
  background: #0d5faf;
  border-color: #0d5faf;
}
.checkbox02-input:checked + .checkbox02-label::after {
  content: "";
  position: absolute;
  border-right: 0.25em solid #fff;
  border-bottom: 0.25em solid #fff;
  width: 0.715em;
  height: 0.965em;
  left: -0.357em;
  top: 0.25em;
  transform: rotateZ(45deg);
  box-sizing: border-box;
}

.checkbox03-row {
  position: relative;
  text-align: center;
}
.checkbox03-label {
  display: block;
  position: relative;
  padding-left: 1.5em;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .checkbox03-label {
    line-height: 1.5em;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .checkbox03-label {
    line-height: 1.688em;
    font-size: 2.8rem;
  }
}
.checkbox03-label::before {
  content: "";
  position: absolute;
  background: #f9f9f9;
  border: 1px solid #999;
  border-radius: 0.2em;
  width: 1.2em;
  height: 1.2em;
  margin-right: 0.3em;
  left: 0;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .checkbox03-label::before {
    top: 0.188em;
  }
}
@media screen and (max-width: 768px) {
  .checkbox03-label::before {
    top: 0.25em;
  }
}
.checkbox03-input {
  position: absolute;
  width: 0;
  height: 0;
  opacity: 0;
}
.checkbox03-input + .checkbox03-label {
  cursor: pointer;
}
.checkbox03-input:checked + .checkbox03-label::before {
  background: #0d5faf;
  border-color: #0d5faf;
}
.checkbox03-input:checked + .checkbox03-label::after {
  content: "";
  position: absolute;
  border-right: 0.175em solid #fff;
  border-bottom: 0.175em solid #fff;
  width: 0.5em;
  height: 0.675em;
  left: 0.35em;
  top: 0.3em;
  transform: rotateZ(45deg);
  box-sizing: border-box;
}

.radio01-row {
  position: relative;
  text-align: center;
  cursor: pointer;
}
@media screen and (min-width: 769px) {
  .radio01-row {
    margin-right: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .radio01-row {
    margin-right: 8rem;
  }
}
.radio01-row.left {
  text-align: left;
}
.error > .radio01-row {
  color: #fc4042;
}
.radio01-label {
  position: relative;
  padding-left: 1.7em;
  line-height: 1;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .radio01-label {
    font-size: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .radio01-label {
    font-size: 4rem;
  }
}
.radio01-label::before {
  content: "";
  position: absolute;
  background: #f9f9f9;
  border: 1px solid #999;
  border-radius: 50%;
  width: 1.2em;
  height: 1.2em;
  left: 0;
  top: 50%;
  transform: translate(0, -50%);
  box-sizing: border-box;
}
.radio01-input {
  position: absolute;
  width: 0;
  height: 0;
  opacity: 0;
}
.radio01-input + .radio01-label {
  cursor: pointer;
}
.radio01-input:checked + .radio01-label::before {
  background: #0d5faf;
}
@media screen and (min-width: 769px) {
  .radio01-input:checked + .radio01-label::before {
    border: 2px solid #0d5faf;
    box-shadow: 0 0 0 0.2em #fff inset;
  }
}
@media screen and (max-width: 768px) {
  .radio01-input:checked + .radio01-label::before {
    border: 0.4rem solid #0d5faf;
    box-shadow: 0 0 0 0.8rem #fff inset;
  }
}

.radio02-label {
  display: block;
}
@media screen and (min-width: 769px) {
  .radio02-label {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 768px) {
  .radio02-label {
    font-size: 2.8rem;
  }
}
.radio02-label::before {
  content: "";
  display: block;
  background: #f9f9f9;
  border: 1px solid #999;
  border-radius: 50%;
  width: 1.715em;
  height: 1.715em;
  margin: 0 auto 0.5em;
  box-sizing: border-box;
}
.radio02-label.closed::before {
  visibility: hidden;
}
.radio02-input {
  position: absolute;
  opacity: 0;
}
.radio02-input + .radio02-label {
  cursor: pointer;
}
.radio02-input:checked + .radio02-label::before {
  background: #0d5faf;
}
@media screen and (min-width: 769px) {
  .radio02-input:checked + .radio02-label::before {
    border: 2px solid #0d5faf;
    box-shadow: 0 0 0 0.286em #fff inset;
  }
}
@media screen and (max-width: 768px) {
  .radio02-input:checked + .radio02-label::before {
    border: 0.4rem solid #0d5faf;
    box-shadow: 0 0 0 0.8rem #fff inset;
  }
}

.button01-input {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #0d5faf;
  border: none;
  color: #fff;
  appearance: none;
  cursor: pointer;
}
@media screen and (min-width: 769px) {
  .button01-input {
    width: 12.5rem;
    height: 5rem;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .button01-input {
    width: 21.4rem;
    height: 8.8rem;
    font-size: 3.2rem;
  }
}

.select01-wrap {
  display: block;
  position: relative;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .select01-wrap {
    width: 40rem;
    height: 5rem;
  }
}
@media screen and (max-width: 768px) {
  .select01-wrap {
    width: 100%;
    height: 10rem;
  }
}
.select01-wrap.full {
  width: 100%;
}
@media screen and (min-width: 769px) {
  .select01-wrap.number {
    width: 11rem;
  }
}
@media screen and (max-width: 768px) {
  .select01-wrap.number {
    width: 22rem;
  }
}
.select01-wrap::after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  top: 0;
  bottom: 0;
  margin: auto 0;
  pointer-events: none;
}
@media screen and (min-width: 769px) {
  .select01-wrap::after {
    border-top: 9px solid;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    right: 1.1rem;
  }
}
@media screen and (max-width: 768px) {
  .select01-wrap::after {
    border-top: 1.8rem solid;
    border-left: 1rem solid transparent;
    border-right: 1rem solid transparent;
    right: 2.2rem;
  }
}
@media screen and (min-width: 769px) {
  .select01-wrap.error::after {
    border-top: 9px solid #fc4042;
  }
}
@media screen and (max-width: 768px) {
  .select01-wrap.error::after {
    border-top: 1.8rem solid #fc4042;
  }
}
@media screen and (min-width: 769px) {
  .select01-wrap.error + .text02-p {
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .select01-wrap.error + .text02-p {
    padding-top: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .select01-wrap + .select01-label {
    margin-left: 0.5em;
  }
}
@media screen and (max-width: 768px) {
  .select01-wrap + .select01-label {
    margin-left: 2rem;
  }
}
@media screen and (min-width: 769px) {
  .select01-wrap + .text01-p {
    margin-left: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .select01-wrap + .text01-p {
    order: 10;
    padding-top: 4rem;
  }
}
.select01-input {
  background: #f9f9f9;
  border: 1px solid #999;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  appearance: none;
  cursor: pointer;
}
@media screen and (min-width: 769px) {
  .select01-input {
    border-radius: 0.4rem;
    padding: 0.5em 0.75em;
    line-height: 1.5em;
    font-size: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .select01-input {
    border-radius: 0.8rem;
    padding: 0.639em 0.778em;
    line-height: 1.5em;
    font-size: 3.6rem;
  }
}
.select01-input::-ms-expand {
  display: none;
}
.select01-input:focus {
  border: 1px solid #0d5faf;
  outline: none;
}
.select01-input.error {
  background: #fff3f3;
  border: 2px solid #fc4042;
  color: #fc4042;
}
.select01-label {
  line-height: 1;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .select01-label {
    font-size: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .select01-label {
    font-size: 4rem;
  }
}

.textline01-input {
  background: #f9f9f9;
  border: 1px solid #999;
  font-weight: 400;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .textline01-input {
    border-radius: 0.4rem;
    width: 30rem;
    height: 5rem;
    padding: 0.5em 0.75em;
    line-height: 1.5em;
    font-size: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .textline01-input {
    border-radius: 0.8rem;
    width: 100%;
    height: 10rem;
    padding: 0.639em 0.778em;
    line-height: 1.5em;
    font-size: 3.6rem;
  }
}
.textline01-input::placeholder {
  color: #aaa;
}
.textline01-input:focus {
  border: 1px solid #0d5faf;
  outline: none;
}
@media screen and (min-width: 769px) {
  .textline01-input.number {
    width: 11rem;
  }
}
@media screen and (max-width: 768px) {
  .textline01-input.number {
    width: 16rem;
  }
}
@media screen and (min-width: 769px) {
  .textline01-input.code {
    width: 11rem;
  }
}
@media screen and (max-width: 768px) {
  .textline01-input.code {
    width: 27rem;
  }
}
.textline01-input.full {
  width: 100%;
}
.textline01-input.error {
  background: #fff3f3;
  border: 2px solid #fc4042;
}
@media screen and (min-width: 769px) {
  .textline01-input + .textline01-label {
    margin-left: 0.5em;
  }
}
@media screen and (max-width: 768px) {
  .textline01-input + .textline01-label {
    margin-left: 2rem;
  }
}
@media screen and (min-width: 769px) {
  .textline01-input + .button01-input {
    margin-left: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .textline01-input + .button01-input {
    margin-top: 4rem;
  }
}
.textline01-label {
  line-height: 1;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .textline01-label {
    font-size: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .textline01-label {
    margin-right: 2rem;
    font-size: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .textline01-label + .textline01-input {
    margin-left: 0.5em;
  }
}
@media screen and (max-width: 768px) {
  .textline01-label + .textline01-input {
    margin-top: 2rem;
  }
  .textline01-label + .textline01-input.number, .textline01-label + .textline01-input.code {
    margin-top: 0;
  }
}

.textarea01-input {
  display: block;
  background: #f9f9f9;
  max-width: 100%;
  font-weight: 400;
  resize: vertical;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .textarea01-input {
    border-radius: 0.4rem;
    width: 30rem;
    height: 12rem;
    padding: 0.5em 0.75em;
    line-height: 1.5em;
    font-size: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .textarea01-input {
    border-radius: 0.8rem;
    width: 100%;
    height: 21.6rem;
    padding: 0.639em 0.778em;
    line-height: 1.5em;
    font-size: 3.6rem;
  }
}
.textarea01-input::placeholder {
  color: #aaa;
}
.textarea01-input:focus {
  border: 1px solid #0d5faf;
  outline: none;
}
.textarea01-input.full {
  width: 100%;
}
.textarea01-input.error {
  background: #fff3f3;
  border: 2px solid #fc4042;
}

.lnk-inline {
  text-decoration: underline;
  color: #0d5faf;
  cursor: pointer;
}
.lnk-inline::after {
  content: "";
  display: inline-block;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}
.lnk-inline[target=_blank]::after, .lnk-inline.blank::after {
  background-image: url(/assets/common/img/icon_blank.svg);
  width: 0.938em;
  height: 0.938em;
  margin-left: 0.313em;
  transform: translate(0, 0.125em);
}

.lnk-default {
  display: flex;
  align-items: center;
  text-decoration: underline;
  color: #0d5faf;
  cursor: pointer;
}
@media screen and (min-width: 769px) {
  .lnk-default {
    line-height: 1.5em;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .lnk-default {
    line-height: 1.688em;
    font-size: 3.2rem;
  }
}
.lnk-default::after {
  content: "";
  display: block;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}
.lnk-default[target=_blank]::after, .lnk-default.blank::after {
  position: static;
  background-image: url(/assets/common/img/icon_blank.svg);
}
@media screen and (min-width: 769px) {
  .lnk-default[target=_blank]::after, .lnk-default.blank::after {
    width: 1em;
    height: 1em;
    margin-left: 0.313em;
    transform: none;
  }
}
@media screen and (max-width: 768px) {
  .lnk-default[target=_blank]::after, .lnk-default.blank::after {
    width: 1.063em;
    height: 1.063em;
    margin-left: 0.313em;
    transform: translate(0, 0.063em);
  }
}
.lnk-default[href$=".pdf"]::after {
  background-image: url(/assets/common/img/icon_pdf.svg);
  margin-left: 0;
}
@media screen and (min-width: 769px) {
  .lnk-default[href$=".pdf"]::after {
    width: 1.625em;
    height: 1.188em;
  }
}
@media screen and (max-width: 768px) {
  .lnk-default[href$=".pdf"]::after {
    width: 1.625em;
    height: 1.188em;
  }
}
@media screen and (min-width: 769px) {
  .lnk-default + .lnk-default {
    margin-top: 3rem;
  }
}

.lnk-carrow01 {
  position: relative;
}
.lnk-carrow01::before {
  content: "";
  display: inline-block;
  background: #000;
  border-radius: 50%;
  width: 1.438em;
  height: 1.438em;
  margin-right: 0.35em;
  vertical-align: text-bottom;
  transform: translate(0, 0.063em);
}
.lnk-carrow01::after {
  content: "";
  position: absolute;
  width: 0.563em;
  height: 0.563em;
  left: 0.35em;
  top: 0.1em;
  bottom: 0;
  margin: auto 0;
  color: #fff;
  transform: rotateZ(45deg);
}
@media screen and (min-width: 769px) {
  .lnk-carrow01::after {
    border-right: 0.188em solid;
    border-top: 0.188em solid;
  }
}
@media screen and (max-width: 768px) {
  .lnk-carrow01::after {
    border-right: 0.172em solid;
    border-top: 0.172em solid;
  }
}

.lnks-wrapper {
  display: flex;
}
@media screen and (min-width: 769px) {
  .lnks-wrapper {
    align-items: center;
  }
}
@media screen and (max-width: 768px) {
  .lnks-wrapper {
    flex-direction: column;
  }
}
@media screen and (min-width: 769px) {
  .lnks-wrapper a + a {
    margin-top: 0 !important;
    margin-left: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .lnks-wrapper a + a {
    margin-top: 6rem;
  }
}
@media screen and (min-width: 769px) {
  .lnks-wrapper + .kome-ul {
    padding-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .lnks-wrapper + .kome-ul {
    padding-top: 6rem;
  }
}

.anc-larrow01 {
  position: relative;
  font-weight: 700;
  color: #000;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .anc-larrow01 {
    padding-right: 1.25em;
    line-height: 1.125em;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .anc-larrow01 {
    padding-left: 1.25em;
    line-height: 1.25em;
    font-size: 3.2rem;
  }
}
.anc-larrow01::after {
  content: "";
  position: absolute;
  border-right: 0.157em solid;
  border-bottom: 0.157em solid;
  width: 0.532em;
  height: 0.532em;
  transform: rotateZ(45deg);
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .anc-larrow01::after {
    right: 0;
    top: 0.188em;
  }
}
@media screen and (max-width: 768px) {
  .anc-larrow01::after {
    left: 0;
    top: 0.313em;
  }
}

.ancs-sub {
  letter-spacing: 0.02em;
  line-height: 1;
  font-weight: 700;
  color: #000;
}
@media screen and (min-width: 769px) {
  .ancs-sub {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 768px) {
  .ancs-sub {
    font-size: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .ancs-sub + .ancs-wrapper {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .ancs-sub + .ancs-wrapper {
    margin-top: 3rem;
  }
}

.ancs-wrapper {
  display: flex;
  border: 1px solid;
  color: #000;
}
@media screen and (min-width: 769px) {
  .ancs-wrapper {
    flex-wrap: wrap;
    align-items: center;
    border-radius: 1rem;
    padding: 3rem 6rem 1rem;
  }
}
@media screen and (max-width: 768px) {
  .ancs-wrapper {
    flex-direction: column;
    border-radius: 2rem;
    padding: 3.6rem 4rem;
  }
}
@media screen and (min-width: 769px) {
  .ancs-wrapper a {
    margin-right: 6rem;
    margin-bottom: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .ancs-wrapper a + a {
    margin-top: 5rem;
  }
}

.btn-arrow01 {
  background: #fff;
  text-indent: -0.935em;
  color: #013b6b;
  box-sizing: border-box;
}
.btn-arrow01::before {
  content: "";
  display: inline-block;
  border-right: 0.188em solid;
  border-top: 0.188em solid;
  width: 0.532em;
  height: 0.532em;
  margin: 0.55em 0.4em 0 0;
  transform: rotateZ(45deg);
  box-sizing: border-box;
}

.btn-carrow01 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-align: center;
  color: #fff;
  box-sizing: border-box;
  cursor: pointer;
}
@media screen and (min-width: 769px) {
  .btn-carrow01 {
    border-radius: 3.75em;
    min-width: 21.25em;
    min-height: 3.75em;
    padding: 0.625em 0;
    line-height: 1.5em;
    font-size: 1.6rem;
    box-shadow: 0 5px 7px rgba(0, 0, 0, 0.1);
  }
  .btn-carrow01.pc_thick {
    width: 25em;
  }
  .btn-carrow01.pc_full {
    width: 100%;
    min-width: auto;
  }
}
@media screen and (max-width: 768px) {
  .btn-carrow01 {
    border-radius: 3.75em;
    width: 18.438em;
    height: 3.75em;
    line-height: 1.25em;
    font-size: 3.2rem;
    box-shadow: 0 0.4rem 0.4rem rgba(0, 0, 0, 0.1);
  }
  .btn-carrow01.sp_small {
    height: 2.75em;
  }
  .btn-carrow01.sp_small small {
    font-size: 2.8rem;
  }
}
.btn-carrow01::before {
  content: "";
  position: absolute;
  background: #fff;
  border-radius: 50%;
  top: 0;
  bottom: 0;
  margin: auto 0;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .btn-carrow01::before {
    width: 1.5em;
    height: 1.5em;
    right: 1.25em;
  }
}
@media screen and (max-width: 768px) {
  .btn-carrow01::before {
    width: 1.063em;
    height: 1.063em;
    right: 0.875em;
  }
}
.btn-carrow01::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  transform: rotateZ(45deg);
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .btn-carrow01::after {
    border-right: 0.188em solid;
    border-top: 0.188em solid;
    width: 0.532em;
    height: 0.532em;
    right: 1.782em;
  }
}
@media screen and (max-width: 768px) {
  .btn-carrow01::after {
    border-right: 0.125em solid;
    border-top: 0.125em solid;
    width: 0.413em;
    height: 0.413em;
    right: 1.25em;
  }
}
.btn-carrow01[href$=".pdf"]::before {
  content: none;
}
.btn-carrow01[href$=".pdf"]::after {
  border: none;
  background-image: url(/assets/common/img/icon_pdf.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  transform: none;
}
@media screen and (min-width: 769px) {
  .btn-carrow01[href$=".pdf"]::after {
    width: 1.75em;
    height: 1.25em;
    right: 1.875em;
  }
}
@media screen and (max-width: 768px) {
  .btn-carrow01[href$=".pdf"]::after {
    width: 1.786em;
    height: 1.322em;
    right: 1.429em;
  }
}
.btn-carrow01.blue01 {
  background: #0d5faf;
}
.btn-carrow01.blue01::after {
  color: #0d5faf;
}
.btn-carrow01.blue02 {
  background: #fff;
  color: #0d5faf;
  box-shadow: none;
}
@media screen and (min-width: 769px) {
  .btn-carrow01.blue02 {
    border: 2px solid #0d5faf;
  }
}
@media screen and (max-width: 768px) {
  .btn-carrow01.blue02 {
    border: 0.4rem solid #0d5faf;
  }
}
.btn-carrow01.blue02::before {
  content: none;
}
.btn-carrow01.blue02::after {
  color: #0d5faf;
}
.btn-carrow01.orange01 {
  background: #ff9b0b;
}
.btn-carrow01.orange01::after {
  color: #ff9b0b;
}
.btn-carrow01.orange02 {
  background: #fff;
  color: #ff9b0b;
}
@media screen and (min-width: 769px) {
  .btn-carrow01.orange02 {
    border: 2px solid #ff9b0b;
  }
}
@media screen and (max-width: 768px) {
  .btn-carrow01.orange02 {
    border: 0.4rem solid #ff9b0b;
  }
}
.btn-carrow01.orange02::before {
  background: #ff9b0b;
}
.btn-carrow01.orange02::after {
  color: #fff;
}
.btn-carrow01.red01 {
  background: #ff5100;
}
.btn-carrow01.red01::after {
  color: #ff5100;
}
.btn-carrow01.pink01 {
  background: #f03264;
}
.btn-carrow01.pink01::after {
  color: #f03264;
}
.btn-carrow01.gray01 {
  background: #5a5a5a;
}
.btn-carrow01.gray01::after {
  color: #5a5a5a;
}
.btn-carrow01.white01 {
  background: #fff;
  color: #000;
}
.btn-carrow01.white02 {
  background: #fff;
  color: #0d5faf;
}
.btn-carrow01.fitness02 {
  background: #fff;
  border: 2px solid;
  color: #0d5faf;
  box-shadow: none;
}
.btn-carrow01.kids02 {
  background: #fff;
  border: 2px solid;
  color: #00a1e9;
  box-shadow: none;
}
@media screen and (min-width: 769px) {
  .btn-carrow01.btn_wide {
    font-size: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .btn-carrow01.btn_wide {
    font-size: 3.4rem;
  }
}
.btn-carrow01.btn_middle > span {
  transform: translate(0, -0.25em);
}
@media screen and (min-width: 769px) {
  .btn-carrow01.btn_middle > em {
    transform: translate(0, -0.1em);
  }
}
@media screen and (max-width: 768px) {
  .btn-carrow01.btn_middle > em {
    transform: translate(0, -0.05em);
  }
}
.btn-carrow01.nshdw {
  box-shadow: none;
}
@media screen and (min-width: 769px) {
  .btn-carrow01 strong {
    font-size: 2.125em;
  }
}
@media screen and (max-width: 768px) {
  .btn-carrow01 strong {
    font-size: 1.875em;
  }
}
.btn-carrow01 em {
  font-style: normal;
}
@media screen and (min-width: 769px) {
  .btn-carrow01 em {
    font-size: 1.5em;
  }
}
@media screen and (max-width: 768px) {
  .btn-carrow01 em {
    font-size: 1.412em;
  }
}

.btn-carrow02 {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-align: center;
  color: #fff;
  cursor: pointer;
}
@media screen and (min-width: 769px) {
  .btn-carrow02 {
    border-radius: 3.75em;
    width: 20em;
    height: 3.75em;
    line-height: 1.5em;
    font-size: 1.6rem;
    box-shadow: 0 5px 7px rgba(0, 0, 0, 0.1);
  }
}
@media screen and (max-width: 768px) {
  .btn-carrow02 {
    border-radius: 3.75em;
    width: 18.438em;
    height: 3.75em;
    line-height: 1.25em;
    font-size: 3.2rem;
    box-shadow: 0 0.4rem 0.4rem rgba(0, 0, 0, 0.1);
  }
}
.btn-carrow02::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  transform: rotateZ(45deg);
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .btn-carrow02::after {
    border-right: 0.219em solid;
    border-top: 0.219em solid;
    width: 0.625em;
    height: 0.625em;
    right: 1.782em;
  }
}
@media screen and (max-width: 768px) {
  .btn-carrow02::after {
    border-right: 0.188em solid;
    border-top: 0.188em solid;
    width: 0.625em;
    height: 0.625em;
    right: 1.313em;
  }
}
.btn-carrow02.blue01 {
  background: #0d5faf;
}
.btn-carrow02.orange01 {
  background: #ff9b0b;
}
@media screen and (min-width: 769px) {
  .btn-carrow02.btn_wide {
    font-size: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .btn-carrow02.btn_wide {
    font-size: 3.4rem;
  }
}
.btn-carrow02.nshdw {
  box-shadow: none;
}
@media screen and (min-width: 769px) {
  .btn-carrow02 strong {
    font-size: 2.125em;
  }
}
@media screen and (max-width: 768px) {
  .btn-carrow02 strong {
    font-size: 1.875em;
  }
}
.btn-carrow02 em {
  font-style: normal;
}
@media screen and (min-width: 769px) {
  .btn-carrow02 em {
    font-size: 1.5em;
  }
}
@media screen and (max-width: 768px) {
  .btn-carrow02 em {
    font-size: 1.412em;
  }
}

.btn-larrow01 {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  background: #fff;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-align: center;
  color: #000;
  cursor: pointer;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .btn-larrow01 {
    border: 2px solid;
    border-radius: 3.75em;
    min-width: 20.625em;
    min-height: 3.75em;
    padding: 0.625em 2.5em 0.625em 2.25em;
    line-height: 1.25em;
    font-size: 1.6rem;
  }
  .btn-larrow01.pc_tiny {
    padding-top: 0.5em;
    padding-bottom: 0.5em;
  }
}
@media screen and (max-width: 768px) {
  .btn-larrow01 {
    border: 0.143em solid;
    border-radius: 3.143em;
    min-width: 18.215em;
    min-height: 3.143em;
    padding: 0.143em 1.429em 0.143em 1.286em;
    line-height: 1.5em;
    font-size: 2.8rem;
  }
  .btn-larrow01.sp_full {
    width: 100% !important;
  }
}
.btn-larrow01::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  transform: rotateZ(45deg);
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .btn-larrow01::after {
    border-right: 0.188em solid;
    border-top: 0.188em solid;
    width: 0.625em;
    height: 0.625em;
    right: 1.5em;
  }
}
@media screen and (max-width: 768px) {
  .btn-larrow01::after {
    position: absolute;
    border-right: 0.143em solid;
    border-top: 0.143em solid;
    width: 0.5em;
    height: 0.5em;
    right: 1.072em;
  }
}
.btn-larrow01[target=_blank]::after {
  border: none;
  background-image: url(/assets/common/img/icon_blank.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  transform: none;
}
@media screen and (min-width: 769px) {
  .btn-larrow01[target=_blank]::after {
    width: 1.125em;
    height: 1.125em;
  }
}
@media screen and (max-width: 768px) {
  .btn-larrow01[target=_blank]::after {
    width: 1.072em;
    height: 1.072em;
  }
}
@media screen and (min-width: 769px) {
  .btn-larrow01[href$=".pdf"] {
    min-width: 21.875em;
    padding-right: 3.125em;
  }
}
@media screen and (max-width: 768px) {
  .btn-larrow01[href$=".pdf"] {
    width: 21.429em;
  }
}
.btn-larrow01[href$=".pdf"]::after {
  border: none;
  background-image: url(/assets/common/img/icon_pdf.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  transform: none;
}
@media screen and (min-width: 769px) {
  .btn-larrow01[href$=".pdf"]::after {
    width: 1.75em;
    height: 1.25em;
    right: 1.125em;
  }
}
@media screen and (max-width: 768px) {
  .btn-larrow01[href$=".pdf"]::after {
    width: 1.786em;
    height: 1.322em;
    right: 1.072em;
  }
}
.btn-larrow01.thin {
  border: 1px solid;
  font-weight: 400;
}
.btn-larrow01.black01 {
  color: #333;
}
.btn-larrow01.black02 {
  color: #000;
}
.btn-larrow01.gray01 {
  border-color: #ccc;
  color: #333;
}
.btn-larrow01.blue01 {
  color: #0d5faf;
}
.btn-larrow01.blue02 {
  color: #00baea;
}
.btn-larrow01.fitness {
  color: #0d5faf;
}
.btn-larrow01.kids {
  color: #00a1e9;
}
.btn-larrow01.back_page {
  border: 1px solid;
  font-weight: 400;
  color: #333;
}
@media screen and (min-width: 769px) {
  .btn-larrow01.back_page {
    width: 17.5em;
  }
}
.btn-larrow01.back_page::after {
  transform: rotateZ(45deg) scale(-1, -1);
}
@media screen and (min-width: 769px) {
  .btn-larrow01.back_page::after {
    left: 1.5em;
  }
}
@media screen and (max-width: 768px) {
  .btn-larrow01.back_page::after {
    left: 0.938em;
  }
}
.btn-larrow01.clear::after {
  display: none;
}
.btn-larrow01 small {
  font-weight: inherit;
}

.btn-larrow02 {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  background: #fff;
  font-weight: 400;
  letter-spacing: 0.02em;
  text-align: center;
  color: #000;
  cursor: pointer;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .btn-larrow02 {
    border: 1px solid;
    border-radius: 2.25em;
    height: 2.25em;
    padding: 0 1.25em 0 1.875em;
    line-height: 1.5em;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 768px) {
  .btn-larrow02 {
    border: 0.072em solid;
    border-radius: 2.572em;
    height: 2.572em;
    padding: 0 2.143em 0 1.715em;
    line-height: 1.5em;
    font-size: 2.8rem;
  }
}
.btn-larrow02::after {
  content: "";
  display: block;
  transform: rotateZ(45deg);
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .btn-larrow02::after {
    border-right: 0.179em solid;
    border-top: 0.179em solid;
    width: 0.5em;
    height: 0.5em;
    margin-left: 0.393em;
  }
}
@media screen and (max-width: 768px) {
  .btn-larrow02::after {
    position: absolute;
    border-right: 0.129em solid;
    border-top: 0.129em solid;
    width: 0.479em;
    height: 0.479em;
    right: 1.286em;
  }
}
@media screen and (min-width: 769px) {
  .btn-larrow02.back {
    padding: 0 1.875em 0 1.25em;
  }
}
@media screen and (max-width: 768px) {
  .btn-larrow02.back {
    padding: 0 1.715em 0 2.143em;
  }
}
.btn-larrow02.back::after {
  order: -5;
  transform: rotateZ(45deg) scale(-1, -1);
}
@media screen and (min-width: 769px) {
  .btn-larrow02.back::after {
    margin-left: 0;
    margin-right: 0.393em;
  }
}
@media screen and (max-width: 768px) {
  .btn-larrow02.back::after {
    left: 1.286em;
    right: auto;
  }
}
@media screen and (max-width: 768px) {
  .btn-larrow02[target=_blank] {
    padding-right: 2.643em;
  }
}
.btn-larrow02[target=_blank]::after {
  border: none;
  background-image: url(/assets/common/img/icon_blank.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 1em;
  height: 1em;
  transform: none;
}
@media screen and (max-width: 768px) {
  .btn-larrow02[href$=".pdf"] {
    padding-right: 3.429em;
  }
}
.btn-larrow02[href$=".pdf"]::after {
  border: none;
  background-image: url(/assets/common/img/icon_pdf.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  transform: none;
}
@media screen and (min-width: 769px) {
  .btn-larrow02[href$=".pdf"]::after {
    width: 1.858em;
    height: 1.358em;
    margin-left: 0.286em;
  }
}
@media screen and (max-width: 768px) {
  .btn-larrow02[href$=".pdf"]::after {
    width: 1.786em;
    height: 1.322em;
    right: 1.143em;
  }
}
@media screen and (max-width: 768px) {
  .btn-larrow02.copy {
    display: none;
  }
}
.btn-larrow02.copy::after {
  border: none;
  background-image: url(/assets/common/img/icon_copy01_b.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  transform: none;
}
@media screen and (min-width: 769px) {
  .btn-larrow02.copy::after {
    width: 0.858em;
    height: 1em;
    margin-left: 0.286em;
  }
}
.btn-larrow02.black01 {
  color: #333;
}
.btn-larrow02.gray01 {
  border-color: #ccc;
  color: #333;
}
.btn-larrow02.fitness {
  color: #0d5faf;
}
.btn-larrow02.kids {
  color: #00a1e9;
}

.btn-icon01 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #fff;
  border: 1px solid #d9e0e2;
  color: #013b6b;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .btn-icon01 {
    border-radius: 0.358em;
    width: 19.286em;
    min-height: 5em;
    padding: 0.608em 1.429em;
    line-height: 1.215em;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 768px) {
  .btn-icon01 {
    border-radius: 0.371em;
    width: 21.852em;
    min-height: 5.186em;
    padding: 0.297em 1.112em 0.297em 1.482em;
    line-height: 1.482em;
    font-size: 2.7rem;
  }
}
.btn-icon01::after {
  content: "";
  flex-shrink: 0;
  display: block;
  transform: rotateZ(45deg);
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .btn-icon01::after {
    border-right: 0.179em solid;
    border-top: 0.179em solid;
    width: 0.572em;
    height: 0.572em;
  }
}
@media screen and (max-width: 768px) {
  .btn-icon01::after {
    border-right: 0.149em solid;
    border-top: 0.149em solid;
    width: 0.519em;
    height: 0.519em;
  }
}
.btn-icon01 > figure {
  flex-shrink: 0;
  line-height: 0;
}
@media screen and (min-width: 769px) {
  .btn-icon01 > figure {
    width: 2.353em;
  }
}
@media screen and (max-width: 768px) {
  .btn-icon01 > figure {
    width: 3.334em;
  }
}
@media screen and (min-width: 769px) {
  .btn-icon01 > figure + p {
    padding-left: 1em;
  }
}
@media screen and (max-width: 768px) {
  .btn-icon01 > figure + p {
    padding-left: 1.112em;
  }
}
.btn-icon01 > p {
  width: 100%;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .btn-icon01 > p {
    padding: 0 0.715em 0 0;
  }
}
@media screen and (max-width: 768px) {
  .btn-icon01 > p {
    padding: 0 0.741em 0 0;
  }
}
.btn-icon01 > p em {
  font-size: 1.143em;
  font-style: normal;
}

.btn-video01 {
  display: block;
  position: relative;
  line-height: 0;
  cursor: pointer;
}
.btn-video01::after {
  content: "";
  position: absolute;
  background-color: #000;
  background-image: url(/assets/common/img/icon_play01.png);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  border-radius: 50%;
  width: 8rem;
  height: 8rem;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  opacity: 0.5;
  pointer-events: none;
}

.btns-wrapper {
  display: flex;
  align-items: center;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .btns-wrapper {
    flex-wrap: wrap;
    justify-content: center;
  }
  .btns-wrapper.pc_abs {
    position: absolute;
  }
  .btns-wrapper.pc_abs.rt {
    justify-content: flex-end;
    right: 0;
    top: 0;
  }
  .btns-wrapper.pc_right {
    justify-content: flex-end;
  }
  .btns-wrapper.pc_left {
    justify-content: flex-start;
  }
  .btns-wrapper.pc_horz {
    flex-direction: column;
  }
  .btns-wrapper.pc_horz a + a {
    margin-left: 0;
    margin-top: 4rem;
  }
  .btns-wrapper > .full {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .btns-wrapper {
    flex-direction: column;
  }
  .btns-wrapper.sp_end {
    align-items: flex-end;
  }
  .btns-wrapper.sp_fix a {
    min-width: 51rem;
  }
}
.btns-wrapper.bg01 {
  background: #f7f6f5;
  padding: 6rem 0;
}
.btns-wrapper.fitness {
  background: #e5f9f8;
  padding: 6rem 0;
}
.btns-wrapper.kids {
  background: #e4f5fd;
  padding: 6rem 0;
}
.btns-wrapper.left {
  justify-content: flex-start;
}
.btns-wrapper.arrow01 {
  position: relative;
}
@media screen and (min-width: 769px) {
  .btns-wrapper.arrow01 {
    padding-top: 9rem;
  }
}
@media screen and (max-width: 768px) {
  .btns-wrapper.arrow01 {
    padding-top: 12rem;
  }
}
.btns-wrapper.arrow01::before, .btns-wrapper.arrow01::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  transform: rotateZ(45deg);
  pointer-events: none;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .btns-wrapper.arrow01::before, .btns-wrapper.arrow01::after {
    border-right: 0.6rem solid #fff;
    border-bottom: 0.6rem solid #fff;
    width: 1.7rem;
    height: 1.7rem;
  }
}
@media screen and (max-width: 768px) {
  .btns-wrapper.arrow01::before, .btns-wrapper.arrow01::after {
    border-right: 0.85rem solid #fff;
    border-bottom: 0.85rem solid #fff;
    width: 2.85rem;
    height: 2.85rem;
  }
}
@media screen and (min-width: 769px) {
  .btns-wrapper.arrow01::before {
    top: 2.5rem;
  }
}
@media screen and (max-width: 768px) {
  .btns-wrapper.arrow01::before {
    top: 2.5rem;
  }
}
@media screen and (min-width: 769px) {
  .btns-wrapper.arrow01::after {
    top: 4.5rem;
  }
}
@media screen and (max-width: 768px) {
  .btns-wrapper.arrow01::after {
    top: 5.5rem;
  }
}
@media screen and (min-width: 769px) {
  .btns-wrapper.clm5 {
    flex-wrap: wrap;
  }
  .btns-wrapper.clm5 a:nth-of-type(n+6) {
    margin-top: 2rem;
  }
  .btns-wrapper.clm5 a:nth-of-type(5n+1) {
    margin-left: 0 !important;
  }
}
@media screen and (min-width: 769px) {
  .btns-wrapper.clm4 {
    flex-wrap: wrap;
  }
  .btns-wrapper.clm4 a {
    width: 34.4rem;
  }
  .btns-wrapper.clm4 a:nth-of-type(n+5) {
    margin-top: 2rem;
  }
  .btns-wrapper.clm4 a:nth-of-type(4n+1) {
    margin-left: 0 !important;
  }
}
@media screen and (min-width: 769px) {
  .btns-wrapper a + a {
    margin-left: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .btns-wrapper a + a {
    margin-top: 3rem;
  }
}
.btns-wrapper.vertical {
  flex-direction: column;
}
.btns-wrapper.vertical a {
  width: 100%;
}
@media screen and (min-width: 769px) {
  .btns-wrapper.vertical a + a {
    margin-left: 0;
    margin-top: 2rem;
  }
}
@media screen and (min-width: 769px) {
  .btns-wrapper + .table03-dl {
    margin-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .btns-wrapper + .table03-dl {
    margin-top: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .btns-wrapper + .desc03-dl {
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .btns-wrapper + .desc03-dl {
    padding-top: 3rem;
  }
}
@media screen and (min-width: 769px) {
  .btns-wrapper + .text01-p {
    padding-top: 5rem;
  }
}
@media screen and (max-width: 768px) {
  .btns-wrapper + .text01-p {
    padding-top: 8rem;
  }
}
@media screen and (min-width: 769px) {
  .btns-wrapper + .note01-p {
    padding-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .btns-wrapper + .note01-p {
    padding-top: 4rem;
  }
}

.bnr-link01 {
  display: block;
  line-height: 0;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .bnr-link01 + .text01-p {
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .bnr-link01 + .text01-p {
    padding-top: 4rem;
  }
}

.bnr-shadow01 {
  display: block;
  background: #fff;
  border-radius: 1.6rem;
  padding: 1rem;
  line-height: 0;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .bnr-shadow01 {
    box-shadow: 0 5px 7px rgba(0, 0, 0, 0.1);
  }
}
@media screen and (max-width: 768px) {
  .bnr-shadow01 {
    box-shadow: 0 0.5rem 0.7rem rgba(0, 0, 0, 0.1);
  }
}
.bnr-shadow01 img {
  border-radius: 0.8rem;
}

@media screen and (min-width: 769px) {
  .bnrs-wrapper.wid01 {
    width: 114rem;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 769px) {
  .bnrs-wrapper + .text01-p {
    padding-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .bnrs-wrapper + .text01-p {
    padding-top: 4rem;
  }
}

.mrk-default {
  display: inline-block;
  background: #000;
  padding: 0 0.5em;
  font-weight: 400;
  font-style: normal;
  text-indent: 0;
  color: #fff;
}
@media screen and (min-width: 769px) {
  .mrk-default {
    line-height: 1.858em;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 768px) {
  .mrk-default {
    line-height: 1.858em;
    font-size: 2.8rem;
  }
}

.mrk-reverse {
  display: inline-block;
  border: 1px solid;
  padding: 0 0.5em;
  font-weight: 400;
  font-style: normal;
  text-indent: 0;
  color: #000;
}
@media screen and (min-width: 769px) {
  .mrk-reverse {
    line-height: 1.858em;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 768px) {
  .mrk-reverse {
    line-height: 1.858em;
    font-size: 2.8rem;
  }
}

.mrk-required {
  display: inline-block;
  background: #fc4042;
  width: 3.334em;
  font-weight: 400;
  font-style: normal;
  text-align: center;
  text-indent: 0;
  color: #fff;
}
@media screen and (min-width: 769px) {
  .mrk-required {
    line-height: 1.5em;
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 768px) {
  .mrk-required {
    line-height: 1.5em;
    font-size: 2.4rem;
  }
}

@media screen and (min-width: 769px) {
  .mrks-wrapper i + i {
    margin-left: 0.5rem;
  }
}

.form-contents {
  display: none;
}

.page-nav {
  position: relative;
  padding-bottom: 1px;
  box-sizing: border-box;
}
.page-nav * {
  box-sizing: border-box;
}
.page-nav *::before, .page-nav *::after {
  box-sizing: border-box;
}
.page-nav-switches {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.page-nav-switches > a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: calc((100% - 1px) / 2);
  font-weight: 700;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .page-nav-switches > a {
    height: 3.143em;
    padding: 0 1.072em;
    font-size: 2.8rem;
  }
}
.page-nav-switches > a::after {
  content: "";
  display: block;
  transform: rotateZ(45deg);
}
@media screen and (max-width: 768px) {
  .page-nav-switches > a::after {
    border-right: 0.4rem solid;
    border-top: 0.4rem solid;
    width: 1.35rem;
    height: 1.35rem;
  }
}
.page-nav-switches > a.fitness {
  background: #0d5faf;
}
.page-nav-switches > a.kids {
  background: #00a1e9;
}
@media screen and (max-width: 768px) {
  .page-nav-switches + .page-nav-buttons {
    margin-top: 1px;
  }
}
.page-nav-buttons {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.page-nav-buttons > a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #f4f7fb;
  width: calc((100% - 3px) / 4);
  color: #000;
}
@media screen and (max-width: 768px) {
  .page-nav-buttons > a {
    height: 3.385em;
    padding: 0 0.539em 0 0.693em;
    font-size: 2.6rem;
  }
}
.page-nav-buttons > a::after {
  content: "";
  display: block;
  transform: rotateZ(45deg);
}
@media screen and (max-width: 768px) {
  .page-nav-buttons > a::after {
    border-right: 0.4rem solid;
    border-top: 0.4rem solid;
    width: 1.35rem;
    height: 1.35rem;
  }
}

.page-header {
  position: relative;
  background: #e6e6e3;
}
@media screen and (min-width: 769px) {
  .page-header {
    padding: 0 18rem 4.2rem;
  }
}
@media screen and (max-width: 768px) {
  .page-header {
    padding: 0 4rem 5rem;
  }
}
.page-header-pankuz {
  display: flex;
  margin: 0 auto;
  line-height: 1;
  letter-spacing: 0.02em;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .page-header-pankuz {
    max-width: 114rem;
    padding: 1.667em 0;
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 768px) {
  .page-header-pankuz {
    padding: 1.5em 0;
    font-size: 2rem;
  }
}
.page-header-pankuz > li {
  display: block;
  white-space: nowrap;
}
.page-header-pankuz > li:last-of-type {
  overflow: hidden;
  text-overflow: ellipsis;
}
.page-header-pankuz > li a {
  text-decoration: underline;
}
.page-header-pankuz > li.is-current a {
  text-decoration: none;
  pointer-events: none;
}
.page-header-pankuz > li + li::before {
  content: ">";
}
@media screen and (min-width: 769px) {
  .page-header-pankuz > li + li::before {
    margin: 0 0.3em 0 0.6em;
  }
}
@media screen and (max-width: 768px) {
  .page-header-pankuz > li + li::before {
    margin: 0 0 0 0.3em;
  }
}
.page-header-h1 {
  margin: 0 auto;
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .page-header-h1 {
    max-width: 114rem;
    padding: 0.575em 0;
    letter-spacing: 0.02em;
    line-height: 1.7em;
    font-size: 4rem;
  }
  .page-header-h1 > h1 {
    line-height: inherit;
    font: inherit;
  }
  .page-header-h1 > h1:first-of-type {
    margin-top: -0.35em;
  }
  .page-header-h1 > h1:last-of-type {
    margin-bottom: -0.35em;
  }
}
@media screen and (max-width: 768px) {
  .page-header-h1 {
    padding: 0.167em 0;
    line-height: 1.5em;
    font-size: 6rem;
  }
  .page-header-h1 > h1 {
    line-height: inherit;
    font: inherit;
  }
  .page-header-h1 > h1:first-of-type {
    margin-top: -0.25em;
  }
  .page-header-h1 > h1:last-of-type {
    margin-bottom: -0.25em;
  }
}
.page-header-h1 > h1 {
  color: #000;
}
.page-header-link {
  display: flex;
  justify-content: flex-end;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .page-header-link {
    position: absolute;
    right: 18rem;
    bottom: 0;
    line-height: 1.572em;
    font-size: 1.4rem;
  }
}
@media screen and (min-width: 769px) and (min-width: 1501px) {
  .page-header-link {
    right: calc(50vw - 720px);
  }
}
@media screen and (max-width: 768px) {
  .page-header-link {
    position: relative;
    border-radius: 2rem 2rem 0 0;
    width: auto;
    min-width: 13.77em;
    height: 2.462em;
    margin: -1rem 0 0 auto;
    line-height: 1.154em;
    font-size: 2.6rem;
    transform: translate(2rem, 5rem);
  }
}
.page-header-link > a {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  background: #000;
  font-weight: 700;
  text-align: center;
  color: #fff;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .page-header-link > a {
    border-radius: 1rem 1rem 0 0;
    height: 3.072em;
    padding: 0 2.143em 0 1.429em;
  }
}
@media screen and (max-width: 768px) {
  .page-header-link > a {
    border-radius: 2rem 2rem 0 0;
    height: 2.462em;
    padding: 0 1.924em 0 1.154em;
  }
}
.page-header-link > a::before {
  content: "";
  position: absolute;
  border-right: 0.179em solid;
  border-top: 0.179em solid;
  width: 0.536em;
  height: 0.536em;
  top: 0;
  bottom: 0;
  margin: auto 0;
  transform: rotateZ(45deg);
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .page-header-link > a::before {
    right: 1.143em;
  }
}
@media screen and (max-width: 768px) {
  .page-header-link > a::before {
    right: 0.924em;
  }
}
.page-header-link > a.fitness {
  background: #0d5faf;
}
.page-header-link > a.kids {
  background: #00a1e9;
}
@media screen and (min-width: 769px) {
  .page-header-link > a.back {
    padding: 0 1.429em 0 2.143em;
  }
}
@media screen and (max-width: 768px) {
  .page-header-link > a.back {
    padding: 0 1.154em 0 1.924em;
  }
}
.page-header-link > a.back::before {
  border: none;
  border-left: 0.179em solid;
  border-bottom: 0.179em solid;
  right: auto;
}
@media screen and (min-width: 769px) {
  .page-header-link > a.back::before {
    left: 1.143em;
  }
}
@media screen and (max-width: 768px) {
  .page-header-link > a.back::before {
    left: 0.924em;
  }
}
@media screen and (min-width: 769px) {
  .page-header + .page-caption {
    padding-top: 6rem;
  }
}
.page-header + .main_section {
  padding-top: 6rem;
}

.page-caption {
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .page-caption {
    max-width: 150rem;
    padding: 0 18rem;
  }
}
.page-caption + .main_section {
  padding-top: 6rem;
}

.page-search {
  background: #e6e6e3;
  box-sizing: border-box;
}
.page-search * {
  box-sizing: border-box;
}
.page-search *::before, .page-search *::after {
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .page-search {
    padding: 0 3rem 4rem;
  }
}
@media screen and (max-width: 768px) {
  .page-search {
    padding: 0 4rem 6rem;
  }
}
.page-search-box {
  background: #fff;
  border-radius: 1.6rem;
  margin: 0 auto;
  overflow: hidden;
}
@media screen and (min-width: 769px) {
  .page-search-box {
    display: flex;
    justify-content: space-between;
    max-width: 144rem;
    box-shadow: 0 5px 7px rgba(0, 0, 0, 0.1);
  }
}
@media screen and (max-width: 768px) {
  .page-search-box {
    box-shadow: 0 0.5rem 0.7rem rgba(0, 0, 0, 0.1);
  }
}
.page-search-inputs {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
@media screen and (min-width: 769px) {
  .page-search-inputs {
    padding: 3rem 3rem 3rem 4rem;
  }
}
@media screen and (max-width: 768px) {
  .page-search-inputs {
    flex-wrap: wrap;
    padding: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .page-search-input {
    width: 100%;
  }
  .page-search-input + .page-search-input {
    margin-left: 1rem;
  }
}
@media screen and (max-width: 768px) {
  .page-search-input {
    width: 48.306%;
  }
  .page-search-input.full {
    width: 100%;
    margin-top: 2rem;
  }
}
.page-search-input .select01-wrap {
  width: 100%;
}
.page-search-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #0d5faf;
  font-weight: 700;
  text-align: center;
  color: #fff;
  cursor: pointer;
}
@media screen and (min-width: 769px) {
  .page-search-btn {
    flex-shrink: 0;
    width: 10%;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .page-search-btn {
    height: 3.125em;
    font-size: 3.2rem;
  }
}
.page-search-btn::after {
  content: "";
  display: block;
  margin-left: 0.3em;
  transform: rotateZ(45deg);
}
@media screen and (min-width: 769px) {
  .page-search-btn::after {
    border-right: 0.188em solid;
    border-top: 0.188em solid;
    width: 0.532em;
    height: 0.532em;
  }
}
@media screen and (max-width: 768px) {
  .page-search-btn::after {
    border-right: 0.157em solid;
    border-top: 0.157em solid;
    width: 0.5em;
    height: 0.5em;
  }
}
.page-search + .main_section {
  padding-top: 6rem;
}

.lower-outer {
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .lower-outer {
    max-width: 150rem;
    padding: 0 18rem 16rem;
  }
}
@media screen and (max-width: 768px) {
  .lower-outer {
    padding: 0 4rem 16rem;
  }
}
@media screen and (min-width: 769px) {
  .modal-inner .lower-outer {
    padding: 2.5rem;
  }
}
@media screen and (max-width: 768px) {
  .modal-inner .lower-outer {
    padding: 6rem 4rem;
  }
}
@media screen and (min-width: 769px) {
  .lower-outer:has(.club-modal) {
    padding: 2rem 2.5rem;
  }
}

.lower-inner {
  position: relative;
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .lower-inner {
    max-width: 150rem;
  }
  .lower-outer .lower-inner {
    max-width: 114rem;
  }
}
.lower-inner + .lower-inner {
  padding-top: 16rem;
}

.lower-area {
  position: relative;
}
.lower-area + .lower-area {
  padding-top: 12rem;
}

.lower-section {
  position: relative;
}
.tab_content_inner .lower-section {
  width: 100%;
}
.lower-section + .lower-section {
  padding-top: 8rem;
}
@media screen and (min-width: 769px) {
  .lower-section + .lower-section.bg01 {
    margin-top: 10rem;
    padding-bottom: 8rem;
  }
}
@media screen and (max-width: 768px) {
  .lower-section + .lower-section.bg01 {
    margin-top: 12rem;
    padding-top: 10rem;
    padding-bottom: 10rem;
  }
}
.lower-section + .lower-section.bg01::before {
  content: "";
  position: absolute;
  background: #e6e6e3;
  width: 100vw;
  left: 50%;
  top: 0;
  bottom: 0;
  transform: translate(-50%, 0);
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .lower-section + .lower-section.anchor-section {
    padding-top: 12rem;
  }
}

.lower-block {
  position: relative;
}
@media screen and (max-width: 768px) {
  .lower-block .tab_item {
    height: 9rem;
  }
}
@media screen and (max-width: 768px) {
  .lower-block .tab_content {
    padding: 4rem;
  }
}
.lower-block + .lower-block {
  padding-top: 6rem;
}

.lower-item {
  position: relative;
}
.lower-item + .lower-item {
  padding-top: 4rem;
}

.lower-point {
  position: relative;
}
.lower-point + .lower-point {
  padding-top: 2rem;
}

.topic-section {
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .topic-section {
    max-width: 98rem;
  }
}
.topic-section-header {
  border-bottom: 1px solid #e6e6e3;
  padding: 0 0 4rem;
  box-sizing: border-box;
}
.topic-section-header::after {
  content: "";
  display: block;
  clear: both;
}
.topic-section-header + .topic-section-text {
  padding-top: 4rem;
}
.topic-section-time {
  float: left;
  display: block;
  letter-spacing: 0.02em;
  color: #999;
}
@media screen and (min-width: 769px) {
  .topic-section-time {
    line-height: 1.429em;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 768px) {
  .topic-section-time {
    line-height: 1.429em;
    font-size: 2.8rem;
  }
}
.topic-section-tag {
  float: left;
  display: flex;
}
@media screen and (min-width: 769px) {
  .topic-section-tag {
    margin-left: 1.429em;
    line-height: 1.429em;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 768px) {
  .topic-section-tag {
    margin-left: 1.429em;
    line-height: 1.819em;
    font-size: 2.2rem;
  }
}
.topic-section-tag > span {
  display: block;
  letter-spacing: 0.02em;
  text-align: center;
  color: #fff;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .topic-section-tag > span {
    border-radius: 1.429em;
    min-width: 7.143em;
    padding: 0 1.429em;
  }
}
@media screen and (max-width: 768px) {
  .topic-section-tag > span {
    border-radius: 1.819em;
    min-width: 9.091em;
    padding: 0 1.819em;
  }
}
.topic-section-tag > span.important {
  background: #fc4042;
}
.topic-section-tag > span.campaign {
  background: #ff7171;
}
.topic-section-tag > span.notice {
  background: #8ab3db;
}
.topic-section-tag > span.playerinfo {
  background: #0d5faf;
}
.topic-section-tag > span.report {
  background: #ff66ac;
}
.topic-section-h2 {
  clear: left;
  letter-spacing: 0.02em;
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .topic-section-h2 {
    padding-top: 0.75em;
    line-height: 1.625em;
    font-size: 4rem;
  }
  .topic-section-h2 > h2 {
    line-height: inherit;
    font: inherit;
  }
  .topic-section-h2 > h2:first-of-type {
    margin-top: -0.312em;
  }
  .topic-section-h2 > h2:last-of-type {
    margin-bottom: -0.312em;
  }
}
@media screen and (max-width: 768px) {
  .topic-section-h2 {
    padding-top: 0.834em;
    line-height: 1.417em;
    font-size: 4.8rem;
  }
  .topic-section-h2 > h2 {
    line-height: inherit;
    font: inherit;
  }
  .topic-section-h2 > h2:first-of-type {
    margin-top: -0.208em;
  }
  .topic-section-h2 > h2:last-of-type {
    margin-bottom: -0.208em;
  }
}
.topic-section-main {
  padding-top: 6rem;
}
.topic-section-main .kome-ul + .note01-p {
  padding-top: 3rem;
}
@media screen and (min-width: 769px) {
  .topic-section-main + .topic-section-nav {
    margin-top: 16rem;
  }
}
@media screen and (max-width: 768px) {
  .topic-section-main + .topic-section-nav {
    margin-top: 2rem;
  }
}
.topic-section-main p {
  overflow-wrap: break-word;
}
@media screen and (min-width: 769px) {
  .topic-section-main p {
    font-size: 1.6rem;
    line-height: 1.75em;
  }
}
@media screen and (max-width: 768px) {
  .topic-section-main p {
    font-size: 3.2rem;
    line-height: 1.719em;
  }
}
.topic-section-main p + p {
  margin-top: 1em;
}
.topic-section-image {
  line-height: 0;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .topic-section-image {
    padding-bottom: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .topic-section-image {
    padding-bottom: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .topic-section-footer {
    padding-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .topic-section-footer {
    padding: 6rem 0 2rem;
  }
}
.topic-section-desc > dt {
  letter-spacing: 0.02em;
  line-height: 1;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .topic-section-desc > dt {
    font-size: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .topic-section-desc > dt {
    font-size: 3.6rem;
  }
}
@media screen and (min-width: 769px) {
  .topic-section-desc > dt + dd {
    padding-top: 1rem;
  }
}
@media screen and (max-width: 768px) {
  .topic-section-desc > dt + dd {
    padding-top: 1.6rem;
  }
}
.topic-section-desc > dd {
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .topic-section-desc > dd {
    line-height: 1.75em;
    font-size: 1.6rem;
  }
  .topic-section-desc > dd > p {
    line-height: inherit;
    font: inherit;
  }
  .topic-section-desc > dd > p:first-of-type {
    margin-top: -0.375em;
  }
  .topic-section-desc > dd > p:last-of-type {
    margin-bottom: -0.375em;
  }
}
@media screen and (max-width: 768px) {
  .topic-section-desc > dd {
    line-height: 1.715em;
    font-size: 2.8rem;
  }
  .topic-section-desc > dd > p {
    line-height: inherit;
    font: inherit;
  }
  .topic-section-desc > dd > p:first-of-type {
    margin-top: -0.357em;
  }
  .topic-section-desc > dd > p:last-of-type {
    margin-bottom: -0.357em;
  }
}
@media screen and (min-width: 769px) {
  .topic-section-desc > dd + dt {
    padding-top: 1.5rem;
  }
}
@media screen and (max-width: 768px) {
  .topic-section-desc > dd + dt {
    padding-top: 3rem;
  }
}
.topic-section-nav {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (min-width: 769px) {
  .topic-section-nav + .topic-section-header {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .topic-section-nav + .topic-section-header {
    margin-top: 6rem;
  }
}
.topic-section-prev, .topic-section-next {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #fff;
  letter-spacing: 0.02em;
  font-weight: 400;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .topic-section-prev, .topic-section-next {
    border: 2px solid #ccc;
    border-radius: 3.6rem;
    width: 12.2rem;
    height: 3.6rem;
    line-height: 1.572em;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 768px) {
  .topic-section-prev, .topic-section-next {
    border: 0.4rem solid #ccc;
    border-radius: 7.2rem;
    width: 20.4rem;
    height: 7.2rem;
    line-height: 1.572em;
    font-size: 2.8rem;
  }
}
.topic-section-prev::before, .topic-section-prev::after, .topic-section-next::before, .topic-section-next::after {
  display: block;
  width: 0.358em;
  height: 0.358em;
  transform: rotateZ(45deg);
}
.topic-section-prev::before {
  content: "";
  border-left: 0.179em solid;
  border-bottom: 0.179em solid;
  margin-right: 0.429em;
}
.topic-section-next {
  margin-left: auto;
}
.topic-section-next::after {
  content: "";
  border-right: 0.179em solid;
  border-top: 0.179em solid;
  margin-left: 0.429em;
}
.topic-section-text + .related-box {
  margin-top: 8rem;
}
.topic-section-text + .topic-section-nav {
  padding-top: 6rem;
}
@media screen and (min-width: 769px) {
  .topic-section-btn {
    margin-top: 8rem;
  }
}
@media screen and (max-width: 768px) {
  .topic-section-btn {
    margin-top: 6rem;
  }
}
.topic-section-btn a.btn {
  position: relative;
  color: #fff;
  background-color: #ff6700;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .topic-section-btn a.btn {
    width: 32rem;
    padding: 2rem 3rem;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .topic-section-btn a.btn {
    width: 59rem;
    padding: 4rem;
    font-size: 3.2rem;
  }
}
.topic-section-btn a.btn::before {
  content: "";
  position: absolute;
  top: 50%;
  display: block;
  width: 0.358em;
  height: 0.358em;
  transform: translateY(-50%) rotateZ(45deg);
  border-left: 0.179em solid;
  border-bottom: 0.179em solid;
}

.related-box {
  border: 1px solid #dcdcdc;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .related-box {
    padding: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .related-box {
    padding: 6rem 4rem;
  }
}
.related-box-head {
  letter-spacing: 0.02em;
  line-height: 1;
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .related-box-head {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 768px) {
  .related-box-head {
    font-size: 4rem;
  }
}
.related-box-body {
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .related-box-body {
    padding-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .related-box-body {
    padding-top: 6rem;
  }
}
.related-box-list {
  list-style: none;
  letter-spacing: 0.02em;
}
.related-box-list > li {
  display: block;
}
@media screen and (min-width: 769px) {
  .related-box-list > li {
    line-height: 1.375em;
    font-size: 1.6rem;
  }
  .related-box-list > li > a {
    line-height: inherit;
    font: inherit;
  }
  .related-box-list > li > a:first-of-type {
    margin-top: -0.187em;
  }
  .related-box-list > li > a:last-of-type {
    margin-bottom: -0.187em;
  }
}
@media screen and (max-width: 768px) {
  .related-box-list > li {
    line-height: 1.688em;
    font-size: 3.2rem;
  }
  .related-box-list > li > a {
    line-height: inherit;
    font: inherit;
  }
  .related-box-list > li > a:first-of-type {
    margin-top: -0.343em;
  }
  .related-box-list > li > a:last-of-type {
    margin-bottom: -0.343em;
  }
}
@media screen and (min-width: 769px) {
  .related-box-list > li + li {
    padding-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .related-box-list > li + li {
    padding-top: 6rem;
  }
}
.related-box-link {
  display: block;
  position: relative;
  padding-left: 1em;
  text-decoration: underline;
  color: #0d5faf;
}
.related-box-link::before {
  content: "";
  position: absolute;
  border-right: 0.188em solid;
  border-top: 0.188em solid;
  width: 0.532em;
  height: 0.532em;
  left: 0;
  transform: rotateZ(45deg);
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .related-box-link::before {
    top: 0.438em;
  }
}
@media screen and (max-width: 768px) {
  .related-box-link::before {
    top: 0.625em;
  }
}
.related-box-link[href$=".pdf"]::after {
  content: "";
  display: inline-block;
  background-image: url(/assets/common/img/icon_pdf.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 1.625em;
  height: 1.188em;
  margin-left: 0.438em;
}
@media screen and (min-width: 769px) {
  .related-box-link[href$=".pdf"]::after {
    vertical-align: top;
  }
}
@media screen and (max-width: 768px) {
  .related-box-link[href$=".pdf"]::after {
    vertical-align: baseline;
    transform: translate(0, 12%);
  }
}
.related-box + .topic-section-nav {
  padding-top: 6rem;
}

@media screen and (min-width: 769px) {
  .contact-box {
    display: flex;
    justify-content: space-between;
    text-align: center;
  }
}
.contact-box .btn-carrow01 {
  box-shadow: none;
}
.contact-box-tel {
  background: #f7f6f5;
}
@media screen and (min-width: 769px) {
  .contact-box-tel {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    padding: 6rem 1rem;
  }
}
@media screen and (max-width: 768px) {
  .contact-box-tel {
    padding: 8rem 4rem;
  }
}
@media screen and (min-width: 769px) {
  .contact-box-tel + .contact-box-web {
    margin-left: 2px;
  }
}
@media screen and (max-width: 768px) {
  .contact-box-tel + .contact-box-web {
    margin-top: 1rem;
  }
}
.contact-box-web {
  background: #f7f6f5;
}
@media screen and (min-width: 769px) {
  .contact-box-web {
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 42.106%;
    padding: 6rem 1rem;
  }
}
@media screen and (max-width: 768px) {
  .contact-box-web {
    padding: 8rem 4rem;
  }
}
.contact-box-copy {
  position: relative;
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .contact-box-copy {
    margin-bottom: 5rem;
    padding-bottom: 1.182em;
    line-height: 1.182em;
    font-size: 2.2rem;
  }
  .contact-box-copy > p {
    line-height: inherit;
    font: inherit;
  }
  .contact-box-copy > p:first-of-type {
    margin-top: -0.09em;
  }
  .contact-box-copy > p:last-of-type {
    margin-bottom: -0.09em;
  }
}
@media screen and (max-width: 768px) {
  .contact-box-copy {
    margin-bottom: 7rem;
    padding-bottom: 1.2em;
    line-height: 1.5em;
    font-size: 4rem;
    text-align: center;
  }
  .contact-box-copy > p {
    line-height: inherit;
    font: inherit;
  }
  .contact-box-copy > p:first-of-type {
    margin-top: -0.25em;
  }
  .contact-box-copy > p:last-of-type {
    margin-bottom: -0.25em;
  }
}
.contact-box-copy::after {
  content: "";
  position: absolute;
  background: #0d5faf;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0 auto;
  pointer-events: none;
}
@media screen and (min-width: 769px) {
  .contact-box-copy::after {
    border-radius: 0.228em;
    width: 1.819em;
    height: 0.228em;
  }
}
@media screen and (max-width: 768px) {
  .contact-box-copy::after {
    border-radius: 2em;
    width: 2em;
    height: 0.25em;
  }
}
.contact-box-name {
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .contact-box-name {
    line-height: 1.688em;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .contact-box-name {
    line-height: 1.688em;
    font-size: 3.2rem;
  }
}
@media screen and (min-width: 769px) {
  .contact-box-name + .contact-box-number {
    padding-top: 1rem;
  }
}
@media screen and (max-width: 768px) {
  .contact-box-name + .contact-box-number {
    padding-top: 2rem;
  }
}
.contact-box-number {
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1;
  font-weight: 700;
  font-family: "Roboto Condensed", sans-serif;
}
@media screen and (min-width: 769px) {
  .contact-box-number {
    font-size: 5rem;
  }
}
@media screen and (max-width: 768px) {
  .contact-box-number {
    font-size: 8.4rem;
  }
}
.contact-box-number::before {
  content: "";
  display: block;
  background-image: url(/assets/common/img/icon_tel01_b.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (min-width: 769px) {
  .contact-box-number::before {
    width: 0.64em;
    height: 0.8em;
    margin-right: 0.16em;
  }
}
@media screen and (max-width: 768px) {
  .contact-box-number::before {
    width: 0.643em;
    height: 0.798em;
    margin-right: 0.096em;
  }
}
.contact-box-number a {
  display: block;
  color: #0d5faf;
}
@media screen and (min-width: 769px) {
  .contact-box-number a {
    pointer-events: none;
  }
}
@media screen and (max-width: 768px) {
  .contact-box-number + .contact-box-buttons {
    padding-top: 6.6rem;
  }
}
.contact-box-text {
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .contact-box-text {
    line-height: 1.715em;
    font-size: 1.4rem;
  }
  .contact-box-text > p {
    line-height: inherit;
    font: inherit;
  }
  .contact-box-text > p:first-of-type {
    margin-top: -0.357em;
  }
  .contact-box-text > p:last-of-type {
    margin-bottom: -0.357em;
  }
}
@media screen and (max-width: 768px) {
  .contact-box-text {
    line-height: 1.715em;
    font-size: 2.8rem;
  }
  .contact-box-text > p {
    line-height: inherit;
    font: inherit;
  }
  .contact-box-text > p:first-of-type {
    margin-top: -0.357em;
  }
  .contact-box-text > p:last-of-type {
    margin-bottom: -0.357em;
  }
}
@media screen and (max-width: 768px) {
  .contact-box-text + .contact-box-buttons {
    padding-top: 8rem;
  }
}
@media screen and (min-width: 769px) {
  .contact-box-buttons {
    padding-top: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .contact-box-buttons + .contact-box-note {
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .contact-box-buttons + .contact-box-note {
    padding-top: 3rem;
  }
}
.contact-box-note {
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .contact-box-note {
    line-height: 2em;
    font-size: 1.2rem;
  }
  .contact-box-note > p {
    line-height: inherit;
    font: inherit;
  }
  .contact-box-note > p:first-of-type {
    margin-top: -0.5em;
  }
  .contact-box-note > p:last-of-type {
    margin-bottom: -0.5em;
  }
}
@media screen and (max-width: 768px) {
  .contact-box-note {
    line-height: 1.709em;
    font-size: 2.4rem;
  }
  .contact-box-note > p {
    line-height: inherit;
    font: inherit;
  }
  .contact-box-note > p:first-of-type {
    margin-top: -0.354em;
  }
  .contact-box-note > p:last-of-type {
    margin-bottom: -0.354em;
  }
}

.schedule-box-row {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 769px) {
  .schedule-box-row {
    justify-content: center;
  }
}
@media screen and (max-width: 768px) {
  .schedule-box-row {
    align-items: center;
    background: #e6e6e3;
    padding: 6rem 0;
  }
}
@media screen and (min-width: 769px) {
  .schedule-box-row + .schedule-box-row {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .schedule-box-row + .schedule-box-row {
    margin-top: 1rem;
  }
}
@media screen and (max-width: 768px) {
  .schedule-box-clm .lnk-default + .lnk-default {
    margin-top: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .schedule-box-clm + .schedule-box-clm {
    margin-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .schedule-box-clm + .schedule-box-clm {
    margin-top: 6rem;
  }
}

@media screen and (min-width: 769px) {
  .schedule-tab {
    background: #f7f6f5;
  }
}
.schedule-tab-switches {
  list-style: none;
  display: flex;
  justify-content: space-between;
}
@media screen and (min-width: 769px) {
  .schedule-tab-switches {
    background: #fff;
    border-bottom: 2px solid #000;
  }
}
@media screen and (max-width: 768px) {
  .schedule-tab-switches {
    margin: 0 -4rem;
  }
}
.schedule-tab-switches > li {
  display: block;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .schedule-tab-switches > li {
    width: d;
  }
}
@media screen and (min-width: 769px) {
  .schedule-tab-switches > li + li {
    margin-left: 1px;
  }
}
.schedule-tab-switch {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #e6e6e3;
  width: 100%;
  letter-spacing: 0.02em;
  font-weight: 700;
  text-align: center;
  color: #000;
  cursor: pointer;
}
@media screen and (min-width: 769px) {
  .schedule-tab-switch {
    height: 3.9em;
    line-height: 1.5em;
    font-size: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .schedule-tab-switch {
    height: 2.778em;
    line-height: 1.5em;
    font-size: 3.6rem;
  }
}
.schedule-tab-switch.is-current {
  background: #000;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .schedule-tab-switch.is-current + .schedule-tab-balloon {
    display: block;
  }
}
.schedule-tab-switch.is-noActive {
  background: #ddd;
  color: #fff;
  pointer-events: none;
}
.schedule-tab-balloon {
  position: relative;
  background: #000;
  width: 100vw;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .schedule-tab-balloon {
    display: none !important;
  }
}
@media screen and (max-width: 768px) {
  .schedule-tab-balloon {
    display: block;
    margin: 0 -4rem;
    padding: 4rem;
  }
  .schedule-tab-balloon::after {
    content: "";
    position: absolute;
    border-top: 3.2rem solid #000;
    border-left: 3.2rem solid transparent;
    border-right: 3.2rem solid transparent;
    width: 0;
    height: 0;
    left: 0;
    right: 0;
    top: 100%;
    margin: -1px auto 0;
  }
}
.schedule-tab-buttons {
  list-style: none;
}
@media screen and (max-width: 768px) {
  .schedule-tab-buttons {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
  }
}
.schedule-tab-buttons > li {
  display: block;
}
@media screen and (max-width: 768px) {
  .schedule-tab-buttons > li {
    width: 48.508%;
  }
  .schedule-tab-buttons > li:nth-of-type(n+3) {
    margin-top: 2rem;
  }
}
.schedule-tab-button {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #000;
  border: 2px solid #fff;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .schedule-tab-button {
    border-radius: 8.8rem;
    height: 8.8rem;
    line-height: 1.5em;
    font-size: 3.2rem;
  }
}
.schedule-tab-button.is-current {
  background: #fff;
  color: #000;
  pointer-events: none;
}
.schedule-tab-body {
  margin: 0 auto;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .schedule-tab-body {
    padding: 0 8rem 1rem;
  }
}
@media screen and (min-width: 769px) {
  .schedule-tab-body + .schedule-tab-switches {
    display: none !important;
    border-top: 2px solid #000;
    border-bottom: none;
  }
}
@media screen and (max-width: 768px) {
  .schedule-tab-body + .schedule-tab-switches {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .schedule-tab-body ~ .schedule-tab-balloon::after {
    content: none;
  }
}
.schedule-tab-nav {
  display: flex;
  justify-content: space-between;
}
@media screen and (min-width: 769px) {
  .schedule-tab-nav {
    flex-wrap: wrap;
    padding: 4rem 0 3rem;
  }
}
@media screen and (max-width: 768px) {
  .schedule-tab-nav {
    padding: 7rem 0 4rem;
  }
}
@media screen and (min-width: 769px) {
  .schedule-tab-nav .schedule-tab-desc {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  .schedule-tab-nav .schedule-tab-desc {
    display: none;
  }
}
.schedule-tab-sub {
  letter-spacing: 0.02em;
  font-weight: 700;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .schedule-tab-sub {
    line-height: 1.5em;
    font-size: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .schedule-tab-sub {
    line-height: 1.2em;
    font-size: 5rem;
  }
}
.schedule-tab-prev, .schedule-tab-next {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #fff;
  border: 2px solid #ccc;
  border-radius: 2.572em;
  height: 2.572em;
  line-height: 1.572em;
  font-weight: 400;
  cursor: pointer;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .schedule-tab-prev, .schedule-tab-next {
    width: 6.715em;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 768px) {
  .schedule-tab-prev, .schedule-tab-next {
    width: 5.286em;
    font-size: 2.8rem;
  }
}
.schedule-tab-prev::after, .schedule-tab-next::after {
  content: "";
  display: block;
  border-right: 0.179em solid;
  border-top: 0.179em solid;
  width: 0.358em;
  height: 0.358em;
}
.schedule-tab-prev {
  flex-direction: row-reverse;
}
.schedule-tab-prev::after {
  transform: rotateZ(45deg) scale(-1, -1);
}
@media screen and (min-width: 769px) {
  .schedule-tab-prev::after {
    margin-right: 0.5em;
  }
}
@media screen and (max-width: 768px) {
  .schedule-tab-prev::after {
    margin-right: 0.25em;
  }
}
.schedule-tab-next::after {
  transform: rotateZ(45deg);
}
@media screen and (min-width: 769px) {
  .schedule-tab-next::after {
    margin-left: 0.5em;
  }
}
@media screen and (max-width: 768px) {
  .schedule-tab-next::after {
    margin-left: 0.25em;
  }
}
.schedule-tab-desc {
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .schedule-tab-desc {
    display: none;
    width: 100%;
    padding-top: 4rem;
    line-height: 1;
    font-size: 1.2rem;
    color: #888;
  }
}
@media screen and (max-width: 768px) {
  .schedule-tab-desc {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding-top: 6rem;
    line-height: 1.2em;
    font-size: 2rem;
  }
}
@media screen and (min-width: 769px) {
  .schedule-tab-desc > div {
    display: inline;
  }
  .schedule-tab-desc > div + div {
    margin-left: 0.4em;
  }
  .schedule-tab-desc > div + div::before {
    content: "/";
  }
}
@media screen and (max-width: 768px) {
  .schedule-tab-desc > div {
    display: flex;
    align-items: center;
    margin-right: 1em;
  }
}
@media screen and (min-width: 769px) {
  .schedule-tab-desc > div > dt {
    display: inline;
  }
  .schedule-tab-desc > div > dt::before {
    content: "【";
  }
  .schedule-tab-desc > div > dt::after {
    content: "】";
    margin-right: -0.5em;
  }
}
@media screen and (max-width: 768px) {
  .schedule-tab-desc > div > dt {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #fa8c4e;
    width: 6em;
    height: 1.8em;
    margin-top: 2rem;
    letter-spacing: -0.015em;
    text-align: center;
    color: #fff;
  }
}
@media screen and (min-width: 769px) {
  .schedule-tab-desc > div > dd {
    display: inline;
  }
}
@media screen and (max-width: 768px) {
  .schedule-tab-desc > div > dd {
    margin: 2rem 0 0 0.5em;
  }
}
@media screen and (min-width: 769px) {
  .schedule-tab-graph + .schedule-tab-nav {
    padding-top: 5rem;
  }
}
@media screen and (max-width: 768px) {
  .schedule-tab-graph + .schedule-tab-nav {
    padding-top: 4rem;
  }
}

.accordion-box {
  background: #f7f6f5;
  box-sizing: border-box;
}
.accordion-box-head {
  display: flex;
  justify-content: space-between;
  position: relative;
  box-sizing: border-box;
  cursor: pointer;
}
@media screen and (min-width: 769px) {
  .accordion-box-head {
    line-height: 1.364em;
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 768px) {
  .accordion-box-head {
    line-height: 1.15em;
    font-size: 4rem;
  }
}
.accordion-box-head::before, .accordion-box-head::after {
  content: "";
  position: absolute;
  background: #fff;
  top: 0;
  bottom: 0;
  margin: auto 0;
  transform: translate(50%, 0);
  z-index: 3;
}
@media screen and (min-width: 769px) {
  .accordion-box-head::before, .accordion-box-head::after {
    right: 3.5rem;
  }
}
@media screen and (max-width: 768px) {
  .accordion-box-head::before, .accordion-box-head::after {
    right: 5rem;
  }
}
@media screen and (min-width: 769px) {
  .accordion-box-head::before {
    width: 2rem;
    height: 0.2rem;
    min-height: 2px;
  }
}
@media screen and (max-width: 768px) {
  .accordion-box-head::before {
    width: 2.8rem;
    height: 0.4rem;
  }
}
@media screen and (min-width: 769px) {
  .accordion-box-head::after {
    width: 0.2rem;
    min-width: 2px;
    height: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .accordion-box-head::after {
    width: 0.4rem;
    height: 2.8rem;
  }
}
.accordion-box-head.active::after {
  display: none;
}
.accordion-box-switch {
  display: flex;
  align-items: center;
  width: 100%;
  font-weight: 700;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .accordion-box-switch {
    min-height: 7rem;
    padding: 0.5rem 9rem 0.5rem 4rem;
  }
}
@media screen and (max-width: 768px) {
  .accordion-box-switch {
    min-height: 10rem;
    padding: 0.4rem 12.8rem 0.4rem 4rem;
  }
}
.accordion-box-switch::before {
  content: "";
  position: absolute;
  background: #000;
  right: 0;
  top: 0;
  bottom: 0;
}
@media screen and (min-width: 769px) {
  .accordion-box-switch::before {
    width: 7rem;
  }
}
@media screen and (max-width: 768px) {
  .accordion-box-switch::before {
    width: 10rem;
  }
}
.accordion-box-body {
  padding: 4rem 4rem 8rem;
  box-sizing: border-box;
}
.accordion-box + .accordion-box {
  margin-top: 4rem;
}

.dropdown-box {
  position: relative;
  background: #f7f6f5;
}
.dropdown-box-switch {
  display: block;
  cursor: pointer;
}
@media screen and (min-width: 769px) {
  .dropdown-box-switch {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    border-right: 7rem solid #000;
  }
}
@media screen and (max-width: 768px) {
  .dropdown-box-switch {
    position: static !important;
  }
  .dropdown-box-switch::before {
    content: "";
    position: absolute;
    background: #000;
    height: 8.8rem;
    left: 0;
    right: 0;
    bottom: 0;
  }
}
.dropdown-box-switch > figure {
  line-height: 0;
}
@media screen and (min-width: 769px) {
  .dropdown-box-switch > figure {
    flex-shrink: 0;
    width: 26rem;
  }
}
@media screen and (max-width: 768px) {
  .dropdown-box-switch > figure {
    width: 24rem;
  }
}
@media screen and (max-width: 768px) {
  .dropdown-box-switch.active .dropdown-box-head {
    padding-bottom: 4rem;
  }
}
.dropdown-box-switch + .dropdown-box-body {
  display: none;
}
@media screen and (min-width: 769px) {
  .dropdown-box-switch + .dropdown-box-body {
    border-right: 7rem solid #000;
  }
}
@media screen and (max-width: 768px) {
  .dropdown-box-switch + .dropdown-box-body {
    padding-bottom: 12.8rem;
  }
}
.dropdown-box-head {
  width: 100%;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .dropdown-box-head {
    padding: 4rem 4rem 0;
  }
}
@media screen and (max-width: 768px) {
  .dropdown-box-head {
    padding: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .dropdown-box-switch .dropdown-box-head {
    padding: 0 4rem;
  }
}
@media screen and (max-width: 768px) {
  .dropdown-box-switch .dropdown-box-head {
    padding-bottom: 12.8rem;
  }
}
@media screen and (max-width: 768px) {
  .dropdown-box-switch .dropdown-box-head > dt {
    display: flex;
    align-items: center;
    position: absolute;
    height: 14.7rem;
    left: 0;
    top: 0;
    padding-left: 27rem;
  }
}
.dropdown-box-head::before, .dropdown-box-head::after {
  content: "";
  position: absolute;
  background: #fff;
}
@media screen and (min-width: 769px) {
  .dropdown-box-head::before, .dropdown-box-head::after {
    right: -3.5rem;
    top: 0;
    bottom: 0;
    margin: auto 0;
    transform: translate(50%, 0);
  }
}
@media screen and (max-width: 768px) {
  .dropdown-box-head::before, .dropdown-box-head::after {
    left: 0;
    right: 0;
    bottom: 4.4rem;
    margin: 0 auto;
    transform: translate(0, 50%);
  }
}
@media screen and (min-width: 769px) {
  .dropdown-box-head::before {
    width: 20px;
    height: 2px;
  }
}
@media screen and (max-width: 768px) {
  .dropdown-box-head::before {
    width: 2.6rem;
    height: 0.4rem;
  }
}
@media screen and (min-width: 769px) {
  .dropdown-box-head::after {
    width: 2px;
    height: 20px;
  }
}
@media screen and (max-width: 768px) {
  .dropdown-box-head::after {
    width: 0.4rem;
    height: 2.6rem;
  }
}
.dropdown-box-head > dt {
  letter-spacing: 0.05em;
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .dropdown-box-head > dt {
    font-size: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .dropdown-box-head > dt {
    padding: 0 1rem 0 0;
    font-size: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .dropdown-box-head > dt small {
    font-size: 0.734em;
  }
}
@media screen and (max-width: 768px) {
  .dropdown-box-head > dt small {
    font-size: 0.8em;
  }
}
@media screen and (min-width: 769px) {
  .dropdown-box-head > dt + dd {
    padding-top: 2rem;
  }
}
.dropdown-box-head > dd {
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .dropdown-box-head > dd {
    line-height: 1.5em;
    font-size: 1.6rem;
  }
  .dropdown-box-head > dd > p {
    line-height: inherit;
    font: inherit;
  }
  .dropdown-box-head > dd > p:first-of-type {
    margin-top: -0.25em;
  }
  .dropdown-box-head > dd > p:last-of-type {
    margin-bottom: -0.25em;
  }
}
@media screen and (max-width: 768px) {
  .dropdown-box-head > dd {
    line-height: 1.688em;
    font-size: 3.2rem;
  }
  .dropdown-box-head > dd > p {
    line-height: inherit;
    font: inherit;
  }
  .dropdown-box-head > dd > p:first-of-type {
    margin-top: -0.343em;
  }
  .dropdown-box-head > dd > p:last-of-type {
    margin-bottom: -0.343em;
  }
}
@media screen and (min-width: 769px) {
  .dropdown-box-body {
    padding: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .dropdown-box-body {
    padding: 0 4rem 4rem;
  }
}
.dropdown-box-item {
  background: #fff;
  padding: 4rem;
}
@media screen and (min-width: 769px) {
  .dropdown-box-item + .dropdown-box-item {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .dropdown-box-item + .dropdown-box-item {
    margin-top: 4rem;
  }
}
.dropdown-box + .dropdown-box {
  margin-top: 4rem;
}

.pulldown-box {
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .pulldown-box {
    border-radius: 0 0 1.6rem 1.6rem;
    box-shadow: 0 5px 7px rgba(0, 0, 0, 0.1);
  }
}
@media screen and (max-width: 768px) {
  .pulldown-box {
    box-shadow: 0 0.5rem 0.7rem rgba(0, 0, 0, 0.1);
  }
}
.pulldown-box * {
  box-sizing: border-box;
}
.pulldown-box *::before, .pulldown-box *::after {
  box-sizing: border-box;
}
.pulldown-box-switch {
  display: block;
  background: #000;
  color: #fff;
  cursor: pointer;
}
.pulldown-box-switch.active .pulldown-box-head::after {
  display: none;
}
.pulldown-box-head {
  display: flex;
  align-items: center;
  position: relative;
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .pulldown-box-head {
    min-height: 3.182em;
    padding: 0.228em 3.182em 0.228em 1.819em;
    line-height: 1.364em;
    font-size: 2.2rem;
  }
  .pulldown-box-head > p {
    line-height: inherit;
    font: inherit;
  }
  .pulldown-box-head > p:first-of-type {
    margin-top: -0.181em;
  }
  .pulldown-box-head > p:last-of-type {
    margin-bottom: -0.181em;
  }
}
@media screen and (max-width: 768px) {
  .pulldown-box-head {
    min-height: 2.5em;
    padding: 0.1em 2.5em 0.1em 1em;
    line-height: 1.15em;
    font-size: 4rem;
  }
  .pulldown-box-head > p {
    line-height: inherit;
    font: inherit;
  }
  .pulldown-box-head > p:first-of-type {
    margin-top: -0.075em;
  }
  .pulldown-box-head > p:last-of-type {
    margin-bottom: -0.075em;
  }
}
.pulldown-box-head::before, .pulldown-box-head::after {
  content: "";
  position: absolute;
  background: #fff;
  top: 0;
  bottom: 0;
  margin: auto 0;
  transform: translate(50%, 0);
}
@media screen and (min-width: 769px) {
  .pulldown-box-head::before, .pulldown-box-head::after {
    right: 3.5rem;
  }
}
@media screen and (max-width: 768px) {
  .pulldown-box-head::before, .pulldown-box-head::after {
    right: 5rem;
  }
}
@media screen and (min-width: 769px) {
  .pulldown-box-head::before {
    width: 20px;
    height: 2px;
  }
}
@media screen and (max-width: 768px) {
  .pulldown-box-head::before {
    width: 2.6rem;
    height: 0.4rem;
  }
}
@media screen and (min-width: 769px) {
  .pulldown-box-head::after {
    width: 2px;
    height: 20px;
  }
}
@media screen and (max-width: 768px) {
  .pulldown-box-head::after {
    width: 0.4rem;
    height: 2.6rem;
  }
}
@media screen and (min-width: 769px) {
  .pulldown-box-body {
    padding: 5rem 6rem;
  }
}
@media screen and (max-width: 768px) {
  .pulldown-box-body {
    padding: 4rem;
  }
}

.scroll-box {
  position: relative;
}
.scroll-box::after {
  content: "";
  position: absolute;
  border: 1px solid #dcdcdc;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  pointer-events: none;
}
.scroll-box-inner {
  overflow: hidden;
  overflow-y: scroll;
}
@media screen and (min-width: 769px) {
  .scroll-box-inner {
    max-height: 40rem;
    padding: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .scroll-box-inner {
    max-height: 70rem;
    padding: 6rem 4rem;
  }
}
.nosrc > .scroll-box-inner {
  max-height: none;
}
@media screen and (min-width: 769px) {
  .scroll-box + .table02-dl {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .scroll-box + .table02-dl {
    margin-top: 6rem;
  }
}

.bg-area {
  position: relative;
}
.bg-area::before {
  content: "";
  position: absolute;
  background: #e6e6e3;
  width: 100vw;
  left: 50%;
  top: 0;
  bottom: 0;
  transform: translate(-50%, 0);
  pointer-events: none;
}
.bg-area-inner {
  position: relative;
}
@media screen and (min-width: 769px) {
  .bg-area-inner {
    padding: 8rem 0;
  }
}
@media screen and (max-width: 768px) {
  .bg-area-inner {
    padding: 10rem 0;
  }
}

.bg-box {
  position: relative;
}
.bg-box::before {
  content: "";
  position: absolute;
  border: 1px solid;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  pointer-events: none;
}
.bg-box-inner {
  position: relative;
}
@media screen and (min-width: 769px) {
  .bg-box-inner {
    padding: 3rem;
  }
  .bg-box-inner.pc_thick {
    padding: 4rem;
  }
  .bg-box-inner.pc_depth {
    padding: 6rem 4rem;
  }
}
@media screen and (max-width: 768px) {
  .bg-box-inner {
    padding: 6rem;
  }
}
.bg-box-inner.wide {
  padding-left: 0;
  padding-right: 0;
}
.bg-box.gray01::before {
  background: #eee;
  border-color: #ccc;
}
.bg-box.gray02::before {
  background: #f7f6f5;
  border: none;
}
.bg-box.white01::before {
  background: #fff;
  border: none;
}
.bg-box.fitness01::before {
  background: #000;
  border: none;
}
.bg-box.fitness02::before {
  background: #e6e6e3;
  border: none;
}
.bg-box.kids02::before {
  background: #e6e6e3;
  border: none;
}
.bg-box.error::before {
  background: #fff3f3;
  border-color: #fc4042;
}
.bg-box + .bg-box {
  margin-top: 4rem;
}
@media screen and (min-width: 769px) {
  .bg-box + .text02-p.error {
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .bg-box + .text02-p.error {
    padding-top: 4rem;
  }
}

.flex01-row {
  display: flex;
}
@media screen and (min-width: 769px) {
  .flex01-row.btw {
    justify-content: space-between;
  }
  .flex01-row.cnt {
    justify-content: center;
  }
}
@media screen and (max-width: 768px) {
  .flex01-row {
    flex-direction: column;
  }
  .flex01-row > *:nth-of-type(n+2) {
    margin-top: 6rem;
  }
}
@media screen and (min-width: 769px) {
  .flex01-row.wid01 > div:nth-of-type(1) {
    width: 61.404%;
  }
  .flex01-row.wid01 > div:nth-of-type(2) {
    width: 28.071%;
    padding-top: 0;
  }
}
@media screen and (min-width: 769px) {
  .flex01-row.wid02 {
    flex-wrap: wrap;
    padding-top: 2rem;
  }
  .flex01-row.wid02 .text01-p {
    flex-grow: 1;
    width: calc(100% - 16rem);
    padding-right: 4rem;
    box-sizing: border-box;
  }
  .flex01-row.wid02 .btns-wrapper {
    flex-shrink: 0;
    width: 16rem;
    margin-top: 0;
  }
  .flex01-row.wid02 .tag-list {
    order: 10;
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .flex01-row.wid02 {
    ≈padding-top: 4rem;
  }
  .flex01-row.wid02 .btns-wrapper {
    margin-top: 4rem;
  }
  .flex01-row.wid02 .tag-list {
    margin-top: 3rem;
  }
}
.flex01-row.wid03 .img-border01 {
  width: 35.3rem;
}
@media screen and (min-width: 769px) {
  .flex01-row.wid03 .img-border01, .flex01-row.wid03 .img-default {
    flex-shrink: 0;
  }
  .flex01-row.wid03 .img-default {
    width: 35.3rem;
  }
  .flex01-row.wid03 .desc04-dl, .flex01-row.wid03 .flex01-row {
    width: 100%;
    padding-left: 4rem;
  }
  .flex01-row.wid03 > .dot02-ul {
    width: 100%;
    padding-left: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .flex01-row.wid03 .img-border01 {
    margin: 0 auto;
  }
  .flex01-row.wid03 .img-border01.sp_full {
    width: 100%;
  }
  .flex01-row.wid03 .img-border01 + .desc04-dl {
    padding-top: 5rem;
  }
  .flex01-row.wid03 .img-default {
    order: 10;
    margin: 0 auto;
  }
  .flex01-row.wid03 .img-default + .desc04-dl, .flex01-row.wid03 .img-default + .flex01-row, .flex01-row.wid03 .img-default + .dot02-ul {
    padding-bottom: 4rem;
  }
  .flex01-row.wid03 .flex01-row {
    margin-top: 0;
  }
}
@media screen and (min-width: 769px) {
  .flex01-row.wid04 .img-default {
    flex-shrink: 0;
    width: 55rem;
  }
  .flex01-row.wid04 .text01-p {
    width: 100%;
    padding-left: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .flex01-row.wid04 .img-default {
    order: 10;
  }
  .flex01-row.wid04 .text01-p {
    padding-bottom: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .flex01-row.wid05 .dot02-ul {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .flex01-row.wid05 .dot02-ul + .dot02-ul {
    margin-top: 0;
    padding-top: 2.2rem;
  }
}
@media screen and (min-width: 769px) {
  .flex01-row.wid06 {
    padding-top: 2rem;
  }
  .flex01-row.wid06 .text01-p {
    width: calc(100% - 25rem);
    padding-right: 4rem;
    box-sizing: border-box;
  }
  .flex01-row.wid06 .btns-wrapper {
    flex-shrink: 0;
    width: 25rem;
    margin-top: 0;
  }
}
@media screen and (max-width: 768px) {
  .flex01-row.wid06 {
    padding-top: 4rem;
  }
  .flex01-row.wid06 .btns-wrapper {
    margin-top: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .flex01-row.wid07 {
    justify-content: center;
  }
  .flex01-row.wid07 > div {
    width: 48rem;
  }
  .flex01-row.wid07 > div + div {
    margin-left: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .flex01-row.wid07 > div + div {
    margin-top: 2rem;
  }
}
@media screen and (min-width: 769px) {
  .flex01-row.wid08 > div .text01-p {
    padding-bottom: 1rem;
  }
  .flex01-row.wid08 > div + div {
    margin-left: 3rem;
  }
}
@media screen and (min-width: 769px) {
  .flex01-row.wid09 {
    justify-content: space-between;
    padding: 2rem;
  }
  .flex01-row.wid09 .img-default {
    width: 12rem;
  }
  .flex01-row.wid09 > div {
    width: 100%;
    padding-left: 5rem;
  }
  .flex01-row.wid09 > div .text01-p {
    padding-top: 2.5rem;
  }
  .flex01-row.wid09 + .flex01-row.wid09 {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .flex01-row.wid09 {
    align-items: center;
  }
  .flex01-row.wid09 .img-default {
    width: 24rem;
  }
  .flex01-row.wid09 > div {
    padding-top: 4rem;
  }
  .flex01-row.wid09 > div .text01-p {
    padding-top: 3.5rem;
  }
  .flex01-row.wid09 + .flex01-row.wid09 {
    margin-top: 8rem;
  }
}
@media screen and (min-width: 769px) {
  .flex01-row + .tag-list {
    margin-top: 1rem;
  }
}

.head01-dl {
  position: relative;
}
.head01-bg {
  line-height: 0;
  text-align: center;
}
.head01-df {
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}
@media screen and (min-width: 769px) {
  .head01-df {
    align-items: center;
    padding: 0 1rem;
  }
}
@media screen and (max-width: 768px) {
  .head01-df {
    padding: 0 4rem;
  }
}
.head01-dt {
  font-weight: 700;
  color: #fff;
}
@media screen and (min-width: 769px) {
  .head01-dt {
    line-height: 1.7em;
    font-size: 4rem;
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  .head01-dt {
    line-height: 1.417em;
    font-size: 4.8rem;
  }
}
@media screen and (min-width: 769px) {
  .head01-dt + .head01-dd {
    margin-top: 1.2rem;
  }
}
@media screen and (max-width: 768px) {
  .head01-dt + .head01-dd {
    margin-top: 4rem;
  }
}
.head01-dd {
  font-weight: 700;
  color: #fff;
}
@media screen and (min-width: 769px) {
  .head01-dd {
    line-height: 1.5em;
    font-size: 1.6rem;
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  .head01-dd {
    line-height: 1.715em;
    font-size: 2.8rem;
  }
}

.title-h2 {
  position: relative;
  letter-spacing: 0.02em;
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .title-h2 {
    padding: 0 0 1.167em;
    line-height: 1.667em;
    font-size: 3rem;
  }
  .title-h2 > h2 {
    line-height: inherit;
    font: inherit;
  }
  .title-h2 > h2:first-of-type {
    margin-top: -0.333em;
  }
  .title-h2 > h2:last-of-type {
    margin-bottom: -0.333em;
  }
}
@media screen and (max-width: 768px) {
  .title-h2 {
    padding: 0 0 1.042em;
    line-height: 1.417em;
    font-size: 4.8rem;
  }
  .title-h2 > h2 {
    line-height: inherit;
    font: inherit;
  }
  .title-h2 > h2:first-of-type {
    margin-top: -0.208em;
  }
  .title-h2 > h2:last-of-type {
    margin-bottom: -0.208em;
  }
}
.title-h2::after {
  content: "";
  position: absolute;
  background: #000;
  left: 0;
  bottom: 0;
}
@media screen and (min-width: 769px) {
  .title-h2::after {
    border-radius: 0.167em;
    width: 1.334em;
    height: 0.167em;
  }
}
@media screen and (max-width: 768px) {
  .title-h2::after {
    border-radius: 0.209em;
    width: 1.667em;
    height: 0.209em;
  }
}
@media screen and (min-width: 769px) {
  .title-h2 > p {
    line-height: 1.5em;
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 769px) {
  .title-h2 > p + h2 {
    padding-top: 1.2rem;
  }
}
@media screen and (min-width: 769px) {
  .title-h2 + .tabs {
    margin-top: 6rem;
  }
}
@media screen and (max-width: 768px) {
  .title-h2 + .tabs {
    margin-top: 10rem;
  }
}
.title-h2 + .btns-wrapper {
  margin-top: 6rem;
}
@media screen and (min-width: 769px) {
  .title-h2 + .bg-box {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .title-h2 + .bg-box {
    margin-top: 6rem;
  }
}
.title-h2 + .dropdown-box {
  margin-top: 6rem;
}
.title-h2 + .pulldown-box {
  margin-top: 6rem;
}
.title-h2 + .title-h3 {
  margin-top: 6rem;
}
.title-h2 + .lower-table01 {
  margin-top: 6rem;
}
.title-h2 + .table01-dl {
  margin-top: 4rem;
}
.title-h2 + .table02-dl {
  margin-top: 6rem;
}
.title-h2 + .step02-ol {
  padding-top: 6rem;
}
@media screen and (min-width: 769px) {
  .title-h2 + .dot01-ul {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .title-h2 + .dot01-ul {
    margin-top: 6rem;
  }
}
.title-h2 + .card02-ul {
  padding-top: 6rem;
}
.title-h2 + .card03-ul {
  padding-top: 6rem;
}
.title-h2 + .panel01-ul {
  padding-top: 6rem;
}
.title-h2 + .row01-ul {
  padding-top: 6rem;
}
.title-h2 + .flex01-row {
  padding-top: 6rem;
}
.title-h2 + .text01-p {
  padding-top: 6rem;
}

.title-h3 {
  position: relative;
  letter-spacing: 0.02em;
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .title-h3 {
    padding: 0 0 0 1.046em;
    line-height: 1.5em;
    font-size: 2.2rem;
  }
  .title-h3 > h3 {
    line-height: inherit;
    font: inherit;
  }
  .title-h3 > h3:first-of-type {
    margin-top: -0.25em;
  }
  .title-h3 > h3:last-of-type {
    margin-bottom: -0.25em;
  }
}
@media screen and (max-width: 768px) {
  .title-h3 {
    padding: 0 0 0 0.65em;
    line-height: 1.5em;
    font-size: 4rem;
  }
  .title-h3 > h3 {
    line-height: inherit;
    font: inherit;
  }
  .title-h3 > h3:first-of-type {
    margin-top: -0.25em;
  }
  .title-h3 > h3:last-of-type {
    margin-bottom: -0.25em;
  }
}
.title-h3::after {
  content: "";
  position: absolute;
  background: #000;
  left: 0;
  transform: translate(0, -50%);
}
@media screen and (min-width: 769px) {
  .title-h3::after {
    border-radius: 0.137em;
    width: 0.137em;
    height: 1.182em;
    top: 0.841em;
  }
}
@media screen and (max-width: 768px) {
  .title-h3::after {
    border-radius: 0.15em;
    width: 0.15em;
    height: 1.3em;
    top: 0.9em;
  }
}
@media screen and (min-width: 769px) {
  .title-h3 > h3 {
    padding: 0.046em 0 0.137em;
  }
}
@media screen and (max-width: 768px) {
  .title-h3 > h3 {
    padding: 0.125em 0 0.175em;
  }
}
@media screen and (min-width: 769px) {
  .title-h3 > h3 .mrks-wrapper {
    display: inline-block;
    margin-left: 3rem;
    vertical-align: bottom;
    transform: translate(0, -5%);
  }
}
@media screen and (max-width: 768px) {
  .title-h3 > h3 .mrks-wrapper {
    display: block;
    margin-top: 2.6rem;
    transform: translate(-0.65em, 0);
  }
}
.title-h3 + .btns-wrapper {
  margin-top: 4rem;
}
.title-h3 + .bnrs-wrapper {
  margin-top: 4rem;
}
.title-h3 + .scroll-box {
  margin-top: 4rem;
}
.title-h3 + .bg-box {
  margin-top: 4rem;
}
.title-h3 + .lower-table01 {
  margin-top: 4rem;
}
.title-h3 + .lower-table01.flex01 {
  margin-top: 4rem;
}
.title-h3 + .lower-table01-aside {
  padding-top: 4rem;
}
.title-h3 + .table01-dl {
  margin-top: 4rem;
}
.title-h3 + .table01-dl-sub {
  margin-top: 4rem;
}
@media screen and (min-width: 769px) {
  .title-h3 + .table03-dl {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .title-h3 + .table03-dl {
    margin-top: 4rem;
  }
}
.title-h3 + .desc04-dl {
  margin-top: 4rem;
}
.title-h3 + .num01-ol {
  padding-top: 4rem;
}
.title-h3 + .step02-ol {
  padding-top: 4rem;
}
.title-h3 + .dot01-ul {
  padding-top: 4rem;
}
.title-h3 + .check01-ul {
  padding-top: 4rem;
}
.title-h3 + .text01-p {
  padding-top: 4rem;
}
.title-h3 + .text05-p {
  padding-top: 4rem;
}

.calendar-table {
  background: #ccc;
  border-collapse: separate;
  border-spacing: 1px;
  table-layout: fixed;
}
@media screen and (max-width: 768px) {
  .calendar-table {
    width: 100%;
  }
}
.calendar-table th {
  background: #fff;
  font-weight: 400;
  text-align: center;
  vertical-align: middle;
}
@media screen and (min-width: 769px) {
  .calendar-table th {
    height: 5.3rem;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .calendar-table th {
    height: 9rem;
    font-size: 2.8rem;
  }
}
.calendar-table td {
  position: relative;
  background: #fff;
  font-weight: 400;
  text-align: center;
  vertical-align: middle;
}
@media screen and (min-width: 769px) {
  .calendar-table td {
    width: 5rem;
    height: 7rem;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 768px) {
  .calendar-table td {
    width: 8.8rem;
    height: 12.8rem;
    font-size: 2.8rem;
  }
}
.calendar-table td.week {
  background: #eee;
}
@media screen and (min-width: 769px) {
  .calendar-table td.week {
    height: 3.5rem;
  }
}
@media screen and (max-width: 768px) {
  .calendar-table td.week {
    height: 7rem;
  }
}
.calendar-table td.closed {
  background: #f9dbec;
}
.calendar-table td .sunday, .calendar-table td.sunday {
  color: #fc4042;
}
.calendar-table td .saturday, .calendar-table td.saturday {
  color: #0d5faf;
}

.tag-list {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
}
.tag-list > li {
  display: block;
}
@media screen and (min-width: 769px) {
  .tag-list > li {
    padding: 1rem 1rem 0 0;
  }
}
@media screen and (max-width: 768px) {
  .tag-list > li {
    padding: 2rem 2rem 0 0;
  }
}
.tag-list-item {
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid;
  min-width: 5.715em;
  min-height: 1.858em;
  padding: 0.143em 0.786em;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .tag-list-item {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 768px) {
  .tag-list-item {
    font-size: 2.8rem;
  }
}
.tag-list-item.fitness01 {
  background: #000;
  border-color: #000;
  color: #fff;
}
.tag-list-item.fitness02 {
  background: #e6e6e3;
  border-color: #e6e6e3;
  color: #000;
}
.tag-list-item.fitness03 {
  color: #000;
}

.app-list {
  display: flex;
}
@media screen and (min-width: 769px) {
  .app-list {
    justify-content: center;
  }
}
@media screen and (max-width: 768px) {
  .app-list {
    flex-direction: column;
    align-items: center;
  }
}
.app-list > li {
  display: block;
}
@media screen and (min-width: 769px) {
  .app-list > li.appstore {
    width: 19.1rem;
  }
}
@media screen and (max-width: 768px) {
  .app-list > li.appstore {
    width: 37.5rem;
  }
}
@media screen and (min-width: 769px) {
  .app-list > li.googleplay {
    width: 23.3rem;
  }
}
@media screen and (max-width: 768px) {
  .app-list > li.googleplay {
    width: 46.7rem;
  }
}
.app-list > li a {
  display: block;
  line-height: 0;
}
@media screen and (min-width: 769px) {
  .app-list > li + li {
    margin-left: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .app-list > li + li {
    margin-top: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .app-list + .text01-p {
    padding-top: 5rem;
  }
}
@media screen and (max-width: 768px) {
  .app-list + .text01-p {
    padding-top: 8rem;
  }
}

.lower-table01 {
  background: #ccc;
  border-collapse: separate;
  border-spacing: 1px;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .lower-table01-sp {
    padding: 1px;
  }
  .lower-table01-sp > dt {
    position: relative;
    background: #eee;
    padding: 0.907em 0.938em;
    letter-spacing: 0.02em;
    font-weight: 400;
    line-height: 1.5em;
    font-size: 3.2rem;
  }
  .lower-table01-sp > dt > a {
    line-height: inherit;
    font: inherit;
  }
  .lower-table01-sp > dt > a:first-of-type {
    margin-top: -0.25em;
  }
  .lower-table01-sp > dt > a:last-of-type {
    margin-bottom: -0.25em;
  }
  .lower-table01-sp > dt > a {
    display: block;
    cursor: pointer;
  }
  .lower-table01-sp > dt > a::before, .lower-table01-sp > dt > a::after {
    content: "";
    position: absolute;
    background: #333;
    width: 0.688em;
    height: 0.125em;
    right: 0.938em;
    top: 0;
    bottom: 0;
    margin: auto 0;
  }
  .lower-table01-sp > dt > a::after {
    transform: rotateZ(90deg);
  }
  .lower-table01-sp > dt.active > a::after {
    display: none;
  }
  .lower-table01-sp > dt + dd {
    border-top: 1px solid #ccc;
  }
  .lower-table01-sp > dd {
    background: #fff;
  }
  .lower-table01-sp > dd .lower-table01-icon {
    width: 7.4rem;
  }
  .lower-table01-sp > dd + dt {
    margin-top: 1px;
  }
  .lower-table01-sp > dd table {
    width: calc(100% - 6rem);
    margin: 0 3rem;
  }
  .lower-table01-sp > dd table tr + tr {
    border-top: 1px solid #ccc;
  }
  .lower-table01-sp > dd table th {
    background: transparent;
    padding: 0 5rem 0 0;
    text-align: left;
    white-space: nowrap;
  }
  .lower-table01-sp > dd table td {
    width: 100%;
    padding: 3rem 0;
  }
  .lower-table01-sp > dd table .lower-table01-text {
    text-align: left;
  }
  .lower-table01-sp.blue01 {
    background: #0d5faf;
    padding: 2px;
  }
  .lower-table01-sp.blue01 > dt {
    background: #0d5faf;
    color: #fff;
  }
  .lower-table01-sp.blue01 > dt + dd {
    border-top: none;
  }
  .lower-table01-sp.blue01 th {
    color: #0d5faf;
  }
  .lower-table01-sp.blue02 {
    background: #00baea;
    padding: 2px;
  }
  .lower-table01-sp.blue02 > dt {
    background: #00baea;
    color: #fff;
  }
  .lower-table01-sp.blue02 > dt + dd {
    border-top: none;
  }
  .lower-table01-sp.blue02 th {
    color: #00baea;
  }
}
.lower-table01.bg02 {
  background: #fff;
}
.lower-table01.fixed {
  height: auto;
  overflow: visible;
  table-layout: fixed;
}
@media screen and (min-width: 769px) {
  .lower-table01.flex01 th:nth-of-type(1) {
    width: 38rem;
  }
}
@media screen and (max-width: 768px) {
  .lower-table01.flex01 th:nth-of-type(1) {
    width: 23rem;
  }
}
.lower-table01.flex01 td {
  text-align: left;
}
@media screen and (min-width: 769px) {
  .lower-table01.flex02 th {
    padding: 1.7rem 0;
  }
}
@media screen and (min-width: 769px) {
  .lower-table01.flex02 th:nth-of-type(1) {
    width: 16rem;
  }
}
@media screen and (max-width: 768px) {
  .lower-table01.flex02 th:nth-of-type(1) {
    width: 26rem;
  }
}
.lower-table01.flex02 td {
  text-align: left;
}
@media screen and (min-width: 769px) {
  .lower-table01.wid01 th:nth-of-type(1):nth-last-of-type(1) {
    width: 25.5rem;
  }
  .lower-table01.wid01 th:nth-of-type(1):nth-last-of-type(2) {
    width: 11rem;
  }
  .lower-table01.wid01 th:nth-of-type(2) {
    width: 14.4rem;
  }
}
.lower-table01.blue01 {
  background: #0d5faf;
}
@media screen and (min-width: 769px) {
  .lower-table01.blue01 tr:first-of-type th::after {
    border-top: none;
  }
}
.lower-table01.blue01 th {
  position: relative;
  background: #0d5faf !important;
  color: #fff;
}
@media screen and (min-width: 769px) {
  .lower-table01.blue01 th {
    border-right: 1px solid #fff;
  }
  .lower-table01.blue01 th:last-of-type {
    border-right: none;
  }
  .lower-table01.blue01 th::after {
    content: "";
    position: absolute;
    border-top: 1px solid #fff;
    left: -1px;
    right: -1px;
    top: -1px;
  }
}
@media screen and (min-width: 769px) {
  .lower-table01.blue01 th:empty::after {
    display: none;
  }
  .lower-table01.blue01 th:empty + th::after {
    left: -2px;
  }
}
.lower-table01.blue02 {
  background: #00baea;
}
@media screen and (min-width: 769px) {
  .lower-table01.blue02 tr:first-of-type th::after {
    border-top: none;
  }
}
.lower-table01.blue02 th {
  position: relative;
  background: #00baea !important;
  color: #fff;
}
@media screen and (min-width: 769px) {
  .lower-table01.blue02 th {
    border-right: 1px solid #fff;
  }
  .lower-table01.blue02 th:last-of-type {
    border-right: none;
  }
  .lower-table01.blue02 th::after {
    content: "";
    position: absolute;
    border-top: 1px solid #fff;
    left: -1px;
    right: -1px;
    top: -1px;
  }
}
@media screen and (min-width: 769px) {
  .lower-table01.blue02 th:empty::after {
    display: none;
  }
  .lower-table01.blue02 th:empty + th::after {
    left: -2px;
  }
}
.lower-table01 th {
  background: #eee;
  letter-spacing: 0.02em;
  font-weight: 400;
  text-align: center;
  vertical-align: top;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .lower-table01 th {
    padding: 2.1rem 3rem;
    line-height: 1.5em;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .lower-table01 th {
    padding: 1.8rem 0;
    line-height: 1.688em;
    font-size: 3.2rem;
  }
}
.lower-table01 th.left {
  padding-left: 2rem;
  padding-right: 2rem;
  text-align: left;
}
.lower-table01 th.middle {
  vertical-align: middle;
}
@media screen and (min-width: 769px) {
  .lower-table01 th.thin {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }
}
.lower-table01 th em {
  font-size: 1.125em;
  font-style: normal;
}
.lower-table01 td {
  background: #fff;
  text-align: center;
  vertical-align: top;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .lower-table01 td {
    padding: 2.5rem 3rem;
  }
}
@media screen and (max-width: 768px) {
  .lower-table01 td {
    padding: 1.8rem 2rem;
  }
}
.lower-table01 td.middle {
  vertical-align: middle;
}
.lower-table01 td.left {
  text-align: left;
}
.lower-table01 td.left .text01-p p + p {
  margin-top: 0.844em;
}
.lower-table01.td_left td {
  text-align: left;
}
@media screen and (min-width: 769px) {
  .lower-table01-icon {
    width: 3.7rem;
  }
}
@media screen and (max-width: 768px) {
  .lower-table01-icon {
    width: 7.4rem;
  }
}
@media screen and (min-width: 769px) {
  .lower-table01-icon + .lower-table01-text {
    padding-top: 0.286em;
  }
}
.lower-table01-text {
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .lower-table01-text {
    line-height: 1.5em;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .lower-table01-text {
    line-height: 1.715em;
    font-size: 2.8rem;
  }
  .lower-table01-text.sp_center {
    text-align: center !important;
  }
}
@media screen and (min-width: 769px) {
  .lower-table01-sub {
    line-height: 1.65em;
    font-size: 2rem;
  }
  .lower-table01-sub > p {
    line-height: inherit;
    font: inherit;
  }
  .lower-table01-sub > p:first-of-type {
    margin-top: -0.325em;
  }
  .lower-table01-sub > p:last-of-type {
    margin-bottom: -0.325em;
  }
}
@media screen and (max-width: 768px) {
  .lower-table01-sub {
    line-height: 1.563em;
    font-size: 3.2rem;
  }
  .lower-table01-sub > p {
    line-height: inherit;
    font: inherit;
  }
  .lower-table01-sub > p:first-of-type {
    margin-top: -0.281em;
  }
  .lower-table01-sub > p:last-of-type {
    margin-bottom: -0.281em;
  }
}
.lower-table01 + .lower-table01-sub {
  padding-top: 4rem;
}
.lower-table01-sub + .lower-table01 {
  padding-top: 2rem;
}
.lower-table01-aside {
  position: relative;
}
@media screen and (min-width: 769px) {
  .lower-table01-aside .btn-larrow02 {
    position: absolute;
    right: 0;
    top: 0;
  }
}
.lower-table01-aside + .lower-table01 {
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .lower-table01 + .lower-table01 {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .lower-table01.pc_only + .lower-table01.lower-table01-sp {
    margin-top: 0;
  }
}
@media screen and (min-width: 769px) {
  .lower-table01 + .lnks-wrapper {
    padding-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .lower-table01 + .lnks-wrapper {
    padding-top: 6rem;
  }
}
@media screen and (min-width: 769px) {
  .lower-table01 + .btns-wrapper {
    margin-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .lower-table01 + .btns-wrapper {
    margin-top: 4rem;
  }
}
.lower-table01 + .dot01-ul {
  padding-top: 4rem;
}
@media screen and (min-width: 769px) {
  .lower-table01 + .kome-ul {
    padding-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .lower-table01 + .kome-ul {
    padding-top: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .lower-table01 + .note01-p {
    padding-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .lower-table01 + .note01-p {
    padding-top: 4rem;
  }
}

.table01-dl {
  background: #ccc;
  padding: 1px;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .table01-dl.wid02 .table01-dl-dt {
    justify-content: flex-start;
    width: 25.5rem;
    padding-left: 2rem;
    padding-right: 2rem;
    text-align: left;
  }
}
@media screen and (min-width: 769px) {
  .table01-dl.wid03 .table01-dl-dt {
    width: 38rem;
  }
}
@media screen and (max-width: 768px) {
  .table01-dl.wid03 .flex01 .table01-dl-dt {
    width: 19rem;
  }
}
@media screen and (min-width: 769px) {
  .table01-dl-sub {
    line-height: 1.65em;
    font-size: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .table01-dl-sub {
    line-height: 1.5em;
    font-size: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .table01-dl-sub + .table01-dl {
    margin-top: 2.1rem;
  }
}
@media screen and (max-width: 768px) {
  .table01-dl-sub + .table01-dl {
    margin-top: 1rem;
  }
}
.table01-dl-row {
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .table01-dl-row {
    display: flex;
    justify-content: space-between;
  }
}
@media screen and (max-width: 768px) {
  .table01-dl-row.flex01 {
    display: flex;
    justify-content: space-between;
  }
  .table01-dl-row.flex01 .table01-dl-dt {
    flex-shrink: 0;
  }
  .table01-dl-row.flex01 .table01-dl-dd {
    width: 100%;
    margin-top: 0;
    margin-left: 1px;
  }
}
.table01-dl-row + .table01-dl-row {
  margin-top: 1px;
}
.table01-dl-dt {
  background: #eee;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .table01-dl-dt {
    flex-shrink: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 20rem;
    margin-right: 1px;
    padding: 2rem 1rem;
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  .table01-dl-dt {
    padding: 3rem;
  }
}
.table01-dl-dd {
  background: #fff;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .table01-dl-dd {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 2rem 3rem;
  }
}
@media screen and (max-width: 768px) {
  .table01-dl-dd {
    margin-top: 1px;
    padding: 3rem;
  }
}
.table01-dl-dd.row {
  display: block;
  padding: 0;
}
.table01-dl-dd + .table01-dl-dd {
  border-top: 1px solid #ccc;
}
.table01-dl.mt0 {
  margin-top: 0 !important;
}
.table01-dl.bt0 {
  padding-top: 0;
}
.table01-dl + .table01-dl {
  margin-top: 2rem;
}
.table01-dl + .btns-wrapper {
  margin-top: 4rem;
}
@media screen and (min-width: 769px) {
  .table01-dl + .text01-p {
    margin-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .table01-dl + .text01-p {
    margin-top: 4rem;
  }
}
.table01-dl + .note01-p {
  margin-top: 3rem;
}

.table02-dl {
  border: 1px solid #ccc;
  box-sizing: border-box;
}
.table02-dl-sub {
  background: #ccc;
  width: 100%;
  font-weight: 700;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .table02-dl-sub {
    padding: 3rem;
    line-height: 1.2em;
    font-size: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .table02-dl-sub {
    padding: 2.3rem 3rem;
    line-height: 1.35em;
    font-size: 4rem;
  }
}
.table02-dl-row {
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .table02-dl-row {
    display: flex;
  }
  .table02-dl > .table02-dl-row {
    justify-content: space-between;
  }
  .table02-dl > .table02-dl-row.vertcal {
    flex-direction: column;
  }
  .table02-dl > .table02-dl-row.vertcal > .table02-dl-head {
    border-right: none;
    border-bottom: 1px solid #ccc;
    width: 100%;
  }
}
.table02-dl-row + .table02-dl-row {
  border-top: 1px solid #ccc;
}
@media screen and (min-width: 769px) {
  .table02-dl-row + .table02-dl-item {
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .table02-dl-row + .table02-dl-item {
    padding-top: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .table02-dl-row + .table02-dl-note {
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .table02-dl-row + .table02-dl-note {
    padding-top: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .table02-dl-row + .text02-p.error {
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .table02-dl-row + .text02-p.error {
    padding-top: 4rem;
  }
}
.table02-dl-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  background: #eee;
  font-weight: 700;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .table02-dl-head {
    flex-shrink: 0;
    border-right: 1px solid #ccc;
    width: 35rem;
    padding: 3rem 3rem;
    line-height: 1.2em;
    font-size: 2rem;
  }
  .table02-dl-head > p {
    line-height: inherit;
    font: inherit;
  }
  .table02-dl-head > p:first-of-type {
    margin-top: -0.1em;
  }
  .table02-dl-head > p:last-of-type {
    margin-bottom: -0.1em;
  }
}
@media screen and (max-width: 768px) {
  .table02-dl-head {
    border-bottom: 1px solid #ccc;
    padding: 2.5rem 3rem;
    line-height: 1.35em;
    font-size: 4rem;
  }
  .table02-dl-head > p {
    line-height: inherit;
    font: inherit;
  }
  .table02-dl-head > p:first-of-type {
    margin-top: -0.175em;
  }
  .table02-dl-head > p:last-of-type {
    margin-bottom: -0.175em;
  }
}
.table02-dl-head .table02-dl-head {
  border: none;
  width: 100%;
  padding: 0;
}
.table02-dl-head .table02-dl-head + .table02-dl-note {
  padding-top: 1em;
}
.table02-dl-body {
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .table02-dl-body {
    width: 100%;
    padding: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .table02-dl-body {
    padding: 6rem 3rem;
  }
}
@media screen and (max-width: 768px) {
  .table02-dl-clum .radio01-label {
    display: block;
  }
}
@media screen and (min-width: 769px) {
  .table02-dl-clum + .table02-dl-clum {
    padding-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .table02-dl-clum + .table02-dl-clum {
    padding-top: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .table02-dl-clum + .text02-p.error {
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .table02-dl-clum + .text02-p.error {
    padding-top: 4rem;
  }
}
.table02-dl-item {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .table02-dl-item > .table02-dl-item {
    margin-top: 0 !important;
  }
  .table02-dl-item > .table02-dl-item:nth-of-type(even) {
    margin-left: 4rem;
  }
  .table02-dl-item > .table02-dl-item:nth-of-type(n+3) {
    margin-top: 4rem !important;
  }
  .table02-dl-item > label .radio01-row {
    width: 30rem;
    margin-right: 0;
    text-align: left;
  }
  .table02-dl-item > label:nth-of-type(n+3) .radio01-row {
    margin-top: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .table02-dl-item + .table02-dl-item {
    margin-left: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .table02-dl-item + .table02-dl-item {
    margin-top: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .table02-dl-item + .table02-dl-note {
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .table02-dl-item + .table02-dl-note {
    padding-top: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .table02-dl-item + .text02-p.error {
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .table02-dl-item + .text02-p.error {
    padding-top: 4rem;
  }
}
.table02-dl-desc {
  width: 100%;
}
.table02-dl-desc > dt {
  letter-spacing: 0.02em;
  line-height: 1;
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .table02-dl-desc > dt {
    font-size: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .table02-dl-desc > dt {
    font-size: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .table02-dl-desc > dt + dd {
    margin-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .table02-dl-desc > dt + dd {
    margin-top: 6rem;
  }
}
.table02-dl-desc > dd + dt {
  border-top: 1px solid #ccc;
}
@media screen and (min-width: 769px) {
  .table02-dl-desc > dd + dt {
    margin-top: 3rem;
    padding-top: 3.1rem;
  }
}
@media screen and (max-width: 768px) {
  .table02-dl-desc > dd + dt {
    margin-top: 6rem;
    padding-top: 6.2rem;
  }
}
.table02-dl-text {
  letter-spacing: 0.02em;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .table02-dl-text {
    line-height: 1.4em;
    font-size: 2rem;
  }
  .table02-dl-text > p {
    line-height: inherit;
    font: inherit;
  }
  .table02-dl-text > p:first-of-type {
    margin-top: -0.2em;
  }
  .table02-dl-text > p:last-of-type {
    margin-bottom: -0.2em;
  }
}
@media screen and (max-width: 768px) {
  .table02-dl-text {
    line-height: 1.4em;
    font-size: 4rem;
  }
  .table02-dl-text > p {
    line-height: inherit;
    font: inherit;
  }
  .table02-dl-text > p:first-of-type {
    margin-top: -0.2em;
  }
  .table02-dl-text > p:last-of-type {
    margin-bottom: -0.2em;
  }
}
@media screen and (min-width: 769px) {
  .table02-dl-text + .table02-dl-note {
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .table02-dl-text + .table02-dl-note {
    padding-top: 4rem;
  }
}
.table02-dl-note {
  letter-spacing: 0.02em;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .table02-dl-note {
    line-height: 2em;
    font-size: 1.4rem;
  }
  .table02-dl-note > p {
    line-height: inherit;
    font: inherit;
  }
  .table02-dl-note > p:first-of-type {
    margin-top: -0.5em;
  }
  .table02-dl-note > p:last-of-type {
    margin-bottom: -0.5em;
  }
}
@media screen and (max-width: 768px) {
  .table02-dl-note {
    line-height: 1.715em;
    font-size: 2.8rem;
  }
  .table02-dl-note > p {
    line-height: inherit;
    font: inherit;
  }
  .table02-dl-note > p:first-of-type {
    margin-top: -0.357em;
  }
  .table02-dl-note > p:last-of-type {
    margin-bottom: -0.357em;
  }
}
.table02-dl-note .icn_pink {
  display: inline-block;
  background: #f9dbec;
  border: 1px solid #ccc;
  margin-right: 0.5em;
  vertical-align: middle;
  transform: translate(0, -5%);
}
@media screen and (min-width: 769px) {
  .table02-dl-note .icn_pink {
    width: 1.858em;
    height: 1.858em;
  }
}
@media screen and (max-width: 768px) {
  .table02-dl-note .icn_pink {
    width: 1.643em;
    height: 1.643em;
  }
}
@media screen and (min-width: 769px) {
  .table02-dl-note + .table02-dl-row {
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .table02-dl-note + .table02-dl-row {
    padding-top: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .table02-dl-note + .table02-dl-clum {
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .table02-dl-note + .table02-dl-clum {
    padding-top: 3rem;
  }
}
@media screen and (min-width: 769px) {
  .table02-dl-note + .table02-dl-item {
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .table02-dl-note + .table02-dl-item {
    padding-top: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .text02-p.error + .table02-dl-note {
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .text02-p.error + .table02-dl-note {
    padding-top: 4rem;
  }
}
.table02-dl-checks {
  list-style: none;
  width: 100%;
}
@media screen and (min-width: 769px) {
  .table02-dl-checks {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
@media screen and (min-width: 769px) {
  .table02-dl-checks > li {
    flex-shrink: 0;
    width: 33.3333333333%;
  }
  .table02-dl-checks > li:not(.full):nth-child(3n+2):last-child {
    margin-right: auto;
  }
  .table02-dl-checks > li:nth-child(n+4) {
    margin-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .table02-dl-checks > li {
    width: 100%;
  }
  .table02-dl-checks > li + li {
    margin-top: 6rem;
  }
}
.table02-dl-checks > li.full {
  width: 100%;
}
.table02-dl-checks > li .checkbox01-row {
  text-align: left;
}
@media screen and (min-width: 769px) {
  .table02-dl + .kome-ul {
    padding-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .table02-dl + .kome-ul {
    padding-top: 4rem;
  }
}

.table03-dl {
  display: flex;
  justify-content: space-between;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .table03-dl {
    background: #ccc;
    padding: 0 1px 1px;
  }
}
@media screen and (max-width: 768px) {
  .table03-dl {
    flex-wrap: wrap;
  }
}
.table03-dl-row {
  padding: 0 !important;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .table03-dl-row {
    display: flex;
    justify-content: space-between;
  }
}
.table03-dl-clm {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .table03-dl-clm {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .table03-dl-clm:nth-of-type(2) {
    width: 26.009%;
  }
  .table03-dl-clm:nth-of-type(3) {
    width: 39.761%;
  }
  .table03-dl-clm:nth-of-type(4) {
    width: 34.23%;
  }
}
@media screen and (min-width: 769px) {
  .table03-dl-clm:not(.table03-dl-sub) {
    margin-left: 1px;
  }
}
@media screen and (max-width: 768px) {
  .table03-dl-clm:not(.table03-dl-sub) {
    background: #eee;
    border-right: 1px solid #ccc;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
  }
  .table03-dl-clm:not(.table03-dl-sub) .table03-dl-dt {
    padding: 1.8rem 0 1.8rem 1.5rem;
  }
  .table03-dl-clm:not(.table03-dl-sub) .table03-dl-dd {
    background: #fff;
    border-top: 1px solid #ccc;
    height: 100%;
    padding: 1.8rem 0 1.8rem 1.5rem;
  }
}
.table03-dl-clm.full {
  width: 100%;
}
@media screen and (min-width: 769px) {
  .table03-dl-clm.full {
    margin-left: 0;
  }
  .table03-dl-clm.full .table03-dl-dt .text01-p {
    line-height: 1;
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 768px) {
  .table03-dl-clm.full {
    border-left: 1px solid #ccc;
  }
  .table03-dl-clm.full .table03-dl-dt {
    padding: 3rem;
  }
  .table03-dl-clm.full .table03-dl-dd {
    padding: 3rem;
  }
}
.table03-dl-clm.full .table03-dl-dt, .table03-dl-clm.full .table03-dl-dd {
  text-align: left;
}
@media screen and (min-width: 769px) {
  .table03-dl-sub {
    flex-shrink: 0;
    width: 15.2rem;
  }
}
@media screen and (max-width: 768px) {
  .table03-dl-sub {
    width: 100%;
    color: #000;
  }
  .table03-dl-sub .table03-dl-dt {
    display: none;
  }
  .table03-dl-sub .table03-dl-dd {
    padding: 0 0 2rem;
  }
  .table03-dl-sub .hidden_pc {
    display: inline;
  }
  .table03-dl-sub .text01-p {
    display: flex;
    align-items: flex-end;
    font-weight: 700;
  }
  .table03-dl-sub .text01-p::before {
    content: "";
    display: block;
    background: #000;
    border-radius: 50%;
    width: 3rem;
    height: 3rem;
    margin-right: 0.2em;
  }
  .table03-dl-sub + .table03-dl-clm {
    border-left: 1px solid #ccc;
  }
}
@media screen and (min-width: 769px) {
  .table03-dl-dt {
    flex-shrink: 0;
    background: #eee;
    margin-top: 1px;
    padding: 2.5rem 3rem;
    text-align: center;
  }
}
@media screen and (min-width: 769px) {
  .table03-dl-dd {
    background: #fff;
    height: 100%;
    margin-top: 1px;
    padding: 2.5rem 3rem;
    text-align: center;
  }
}
.table03-dl-cell {
  position: relative;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .table03-dl-cell {
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
@media screen and (min-width: 769px) {
  .table03-dl-cell.wid01 {
    flex-shrink: 0;
    width: 38rem;
  }
}
@media screen and (max-width: 768px) {
  .table03-dl-cell.wid01 {
    padding: 4rem 0;
  }
}
@media screen and (min-width: 769px) {
  .table03-dl-cell.wid01 .img-default {
    width: 36.053%;
  }
}
@media screen and (max-width: 768px) {
  .table03-dl-cell.wid01 .img-default {
    width: 27.2rem;
    margin: 0 auto;
  }
}
.table03-dl-cell.wid01 + .table03-dl-cell {
  width: 100%;
}
@media screen and (min-width: 769px) {
  .table03-dl-cell.wid01 + .table03-dl-cell {
    padding: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .table03-dl-cell.wid01 + .table03-dl-cell {
    padding: 4rem 3rem;
  }
}
.table03-dl-cell.wid01 + .table03-dl-cell::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
}
@media screen and (min-width: 769px) {
  .table03-dl-cell.wid01 + .table03-dl-cell::before {
    border-left: 1px solid #ccc;
    bottom: 0;
  }
}
@media screen and (max-width: 768px) {
  .table03-dl-cell.wid01 + .table03-dl-cell::before {
    border-top: 1px solid #ccc;
    right: 0;
  }
}
.table03-dl-cell.wid01 + .table03-dl-cell .desc05-dl {
  width: 100%;
}
@media screen and (min-width: 769px) {
  .table03-dl + .table03-dl .table03-dl-dt {
    display: none;
  }
  .table03-dl + .table03-dl .table03-dl-dd {
    margin-top: 0;
  }
}
@media screen and (max-width: 768px) {
  .table03-dl + .table03-dl {
    margin-top: 4rem;
  }
  .table03-dl + .table03-dl.sticky {
    margin-top: -1px;
  }
  .table03-dl + .table03-dl.sticky .table03-dl-sub {
    display: none;
  }
}
@media screen and (min-width: 769px) {
  .table03-dl + .title-h3 {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .table03-dl + .title-h3 {
    margin-top: 8rem;
  }
}
@media screen and (min-width: 769px) {
  .table03-dl + .note01-p {
    padding-top: 5rem;
  }
}
@media screen and (max-width: 768px) {
  .table03-dl + .note01-p {
    padding-top: 8rem;
  }
}

.table04-dl {
  background: #000;
  padding: 2px;
  line-height: 1;
  font-weight: 400;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .table04-dl {
    display: flex;
    justify-content: space-between;
    font-size: 1.6rem;
  }
  .table04-dl > div {
    width: 100%;
  }
  .table04-dl.clm3 > div:nth-child(1), .table04-dl.clm3 > div:nth-child(2) {
    flex-shrink: 0;
    width: 43.208%;
  }
}
@media screen and (max-width: 768px) {
  .table04-dl {
    font-size: 3.2rem;
  }
}
.table04-dl-head {
  position: relative;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .table04-dl-head {
    display: flex;
    flex-direction: column;
  }
  .table04-dl-head ~ .table04-dl-body {
    margin-left: 2px;
  }
}
@media screen and (max-width: 768px) {
  .table04-dl-head {
    margin-bottom: 2px;
    padding: 3.6rem 2.8rem;
    letter-spacing: -0.01em;
    color: #fff;
  }
}
@media screen and (max-width: 768px) {
  .table04-dl-head .table04-dl-dt {
    display: none;
  }
}
.table04-dl-body {
  position: relative;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .table04-dl-body {
    display: flex;
    flex-direction: column;
  }
}
@media screen and (max-width: 768px) {
  .table04-dl-body {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #fff;
    padding: 4rem 2.8rem;
  }
  .table04-dl-body + .table04-dl-body {
    margin-top: 1px;
  }
  .table04-dl-body + .table04-dl-body::before {
    content: "";
    display: block;
    position: absolute;
    background: #fff;
    height: 1px;
    left: 0;
    right: 0;
    top: -1px;
  }
  .table04-dl-body + .table04-dl-body::after {
    content: "";
    position: absolute;
    border-top: 1px solid #dcdcdc;
    left: 2.8rem;
    right: 2.8rem;
    top: -1px;
    margin: 0 auto;
  }
}
@media screen and (min-width: 769px) {
  .table04-dl-body .table04-dl-dt::before {
    content: "";
    position: absolute;
    border-left: 2px solid;
    left: -2px;
    top: -2px;
    bottom: 0;
    pointer-events: none;
  }
}
@media screen and (max-width: 768px) {
  .table04-dl-body .table04-dl-dt {
    width: 19rem;
    color: #000;
  }
}
.table04-dl-dt {
  position: relative;
  letter-spacing: 0.02em;
  font-weight: 700;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .table04-dl-dt {
    flex-shrink: 0;
    padding: 2rem;
    text-align: center;
    color: #fff;
  }
}
@media screen and (max-width: 768px) {
  .table04-dl-dt {
    flex-shrink: 0;
  }
}
.table04-dl-dd {
  position: relative;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .table04-dl-dd {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #fff;
    height: 100%;
    padding: 3rem;
    margin-top: 2px;
  }
}
@media screen and (max-width: 768px) {
  .table04-dl-dd {
    width: 100%;
  }
}
@media screen and (min-width: 769px) {
  .table04-dl-dd strong {
    font-size: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .table04-dl-dd strong {
    font-size: 4.8rem;
  }
}
.table04-dl-dd strong.orange01 {
  color: #ff9b0b;
}
.table04-dl-dd strong.orange02 {
  color: #ff6700;
}
.table04-dl-dd strong ~ small {
  display: inline-block;
}
@media screen and (min-width: 769px) {
  .table04-dl-dd strong ~ small {
    margin-top: 1rem;
    font-size: inherit;
  }
}
@media screen and (max-width: 768px) {
  .table04-dl-dd strong ~ small {
    margin-top: 2rem;
    font-size: 2.8rem;
  }
}
@media screen and (min-width: 769px) {
  .table04-dl-dd strong + small {
    margin-top: 0;
  }
}
@media screen and (min-width: 769px) {
  .table04-dl + .table04-dl {
    padding-top: 0;
  }
  .table04-dl + .table04-dl .table04-dl-dt {
    display: none;
  }
  .table04-dl + .table04-dl .table04-dl-dd {
    margin-top: 0;
  }
}
@media screen and (min-width: 769px) {
  .table04-dl + .table01-dl {
    margin-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .table04-dl + .table01-dl {
    margin-top: 2rem;
  }
}

.table05-dl {
  background: #ccc;
  padding: 1px;
  box-sizing: border-box;
}
.table05-dl * {
  box-sizing: border-box;
}
.table05-dl *::before, .table05-dl *::after {
  box-sizing: border-box;
}
@media screen and (max-width: 768px) {
  .table05-head {
    background: #eee;
    padding: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .table05-body {
    background: #fff;
    margin-top: 1px;
    padding: 6rem 3rem;
  }
}
@media screen and (min-width: 769px) {
  .table05-row {
    display: flex;
    justify-content: space-between;
  }
}
@media screen and (min-width: 769px) {
  .table05-row + .table05-row {
    margin-top: 1px;
  }
}
@media screen and (max-width: 768px) {
  .table05-row + .table05-row {
    margin-top: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .table05-row-dt {
    flex-shrink: 0;
    background: #eee;
    width: 35rem;
    padding: 3rem;
  }
}
@media screen and (min-width: 769px) {
  .table05-row-dt + .table05-row-dd {
    margin-left: 1px;
  }
}
@media screen and (max-width: 768px) {
  .table05-row-dt + .table05-row-dd {
    margin-top: 1rem;
  }
}
.table05-row-dd {
  width: 100%;
}
@media screen and (min-width: 769px) {
  .table05-row-dd {
    background: #fff;
    padding: 3rem;
  }
}

.card01-ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.card01-ul-li {
  display: block;
}
@media screen and (min-width: 769px) {
  .card01-ul-li {
    width: 30.965%;
  }
  .card01-ul-li:nth-of-type(n+4) {
    margin-top: 3.6rem;
  }
  .card01-ul-li:nth-of-type(3n+2) {
    margin-left: 3.553%;
    margin-right: auto;
  }
}
@media screen and (max-width: 768px) {
  .card01-ul-li {
    width: 47.762%;
  }
  .card01-ul-li:nth-of-type(n+3) {
    margin-top: 3.35rem;
  }
}
.card01-ul-link {
  display: block;
  position: relative;
}
@media screen and (min-width: 769px) {
  .card01-ul-link {
    padding-bottom: 6.5rem;
  }
}
.card01-ul-link[data-href]::after {
  content: "";
  position: absolute;
  background-color: rgba(0, 0, 0, 0.4);
  background-image: url(/assets/common/img/icon_scale02_w.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  border-radius: 50%;
}
@media screen and (min-width: 769px) {
  .card01-ul-link[data-href]::after {
    width: 4rem;
    height: 4rem;
    right: 1rem;
    top: 1rem;
  }
}
@media screen and (max-width: 768px) {
  .card01-ul-link[data-href]::after {
    width: 7rem;
    height: 7rem;
    right: 1rem;
    top: 1rem;
  }
}
.card01-ul-thumb {
  line-height: 0;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .card01-ul-thumb {
    position: relative;
  }
}
.card01-ul-thumb img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
@media screen and (-ms-high-contrast: none) {
  .card01-ul-thumb img {
    position: absolute;
    top: 0;
    left: 0;
    width: auto;
    height: auto;
    min-width: 100%;
    min-height: 100%;
    max-width: inherit;
  }
}
.card01-ul-name {
  letter-spacing: 0.02em;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .card01-ul-name {
    padding-top: 1.6rem;
    line-height: 1.5em;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .card01-ul-name {
    padding-top: 1.3rem;
    line-height: 1.465em;
    font-size: 2.8rem;
  }
}
.card01-ul-modal {
  display: none;
}
.card01-ul-image {
  line-height: 0;
  text-align: center;
}
.card01-ul-text {
  letter-spacing: 0.02em;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .card01-ul-text {
    padding-top: 1.2rem;
    line-height: 1.5em;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .card01-ul-text {
    padding: 2.8rem 4rem;
    line-height: 1.715em;
    font-size: 2.8rem;
  }
}
.card01-ul-text strong {
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .card01-ul-text + .btns-wrapper {
    margin-top: 3rem;
  }
}

.card02-ul {
  list-style: none;
}
@media screen and (min-width: 769px) {
  .card02-ul {
    display: flex;
    justify-content: center;
  }
}
.card02-li {
  display: block;
}
@media screen and (min-width: 769px) {
  .card02-li {
    width: 55rem;
  }
}
@media screen and (min-width: 769px) {
  .card02-li + .card02-li {
    margin-left: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .card02-li + .card02-li {
    margin-top: 6rem;
  }
}
.card02-item {
  background: #fff;
  border-radius: 0 0 1.6rem 1.6rem;
  box-sizing: border-box;
  box-shadow: 0 5px 7px rgba(0, 0, 0, 0.1);
  overflow: hidden;
}
@media screen and (min-width: 769px) {
  .card02-item {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    padding: 0 0 4rem;
  }
}
@media screen and (max-width: 768px) {
  .card02-item {
    padding: 0 0 6rem;
  }
}
@media screen and (min-width: 769px) {
  .card02-item .text01-p {
    flex-shrink: 0;
    padding: 0 2.9rem;
  }
}
@media screen and (max-width: 768px) {
  .card02-item .text01-p {
    padding: 0 4rem;
  }
}
.card02-thumb {
  position: relative;
  line-height: 0;
  text-align: center;
}
.card02-thumb.video::after {
  content: "";
  position: absolute;
  background-color: #000;
  background-image: url(/assets/common/img/icon_play01.png);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  border-radius: 50%;
  width: 8rem;
  height: 8rem;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  opacity: 0.5;
  pointer-events: none;
}
.card02-title {
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .card02-title {
    flex-shrink: 0;
    padding: 4rem 2.9rem 3rem;
    line-height: 1.455em;
    font-size: 2.2rem;
  }
  .card02-title > h3 {
    line-height: inherit;
    font: inherit;
  }
  .card02-title > h3:first-of-type {
    margin-top: -0.227em;
  }
  .card02-title > h3:last-of-type {
    margin-bottom: -0.227em;
  }
}
@media screen and (max-width: 768px) {
  .card02-title {
    padding: 6rem 4rem;
    line-height: 1.5em;
    font-size: 4rem;
  }
  .card02-title > h3 {
    line-height: inherit;
    font: inherit;
  }
  .card02-title > h3:first-of-type {
    margin-top: -0.25em;
  }
  .card02-title > h3:last-of-type {
    margin-bottom: -0.25em;
  }
}
.card02-title + .card02-btns {
  padding-top: 0;
}
.card02-btns {
  display: flex;
  align-items: center;
}
@media screen and (min-width: 769px) {
  .card02-btns {
    flex-shrink: 0;
    justify-content: center;
    margin-top: auto;
    padding: 4rem 2.9rem 0;
  }
}
@media screen and (max-width: 768px) {
  .card02-btns {
    flex-direction: column;
    padding: 6rem 0 0;
  }
}
.card02-btns > a {
  border: 1px solid;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .card02-btns > a {
    width: 42.728%;
    min-width: auto;
    height: 2.938em;
  }
}
@media screen and (min-width: 769px) {
  .card02-btns > a ~ a {
    margin-left: 2.2rem;
  }
}
@media screen and (max-width: 768px) {
  .card02-btns > a ~ a {
    margin-top: 2rem;
  }
}

@media screen and (min-width: 769px) {
  .card03-ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
  }
}
.card03-li {
  display: block;
}
@media screen and (min-width: 769px) {
  .card03-li {
    width: 30.393%;
  }
  .card03-li:nth-of-type(n+4) {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .card03-li + li {
    margin-top: 2rem;
  }
}
.card03-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  background: #f7f6f5;
  border-radius: 1rem;
}
@media screen and (min-width: 769px) {
  .card03-item {
    min-height: 8rem;
    padding: 0 4rem 0 0;
  }
}
@media screen and (max-width: 768px) {
  .card03-item {
    min-height: 15rem;
    padding: 0 8rem 0 0;
  }
}
.card03-item::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  transform: rotateZ(45deg);
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .card03-item::after {
    border-right: 0.3rem solid;
    border-top: 0.3rem solid;
    width: 0.85rem;
    height: 0.85rem;
    right: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .card03-item::after {
    border-right: 0.6rem solid;
    border-top: 0.6rem solid;
    width: 1.6rem;
    height: 1.6rem;
    right: 4rem;
  }
}
.card03-thumb {
  flex-shrink: 0;
  line-height: 0;
}
@media screen and (min-width: 769px) {
  .card03-thumb {
    width: 29.63%;
  }
}
@media screen and (max-width: 768px) {
  .card03-thumb {
    width: 29.412%;
  }
}
.card03-name {
  width: 100%;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .card03-name {
    padding: 0 0 0 2rem;
    line-height: 1.5em;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .card03-name {
    padding: 0 0 0 4rem;
    line-height: 1.7em;
    font-size: 3rem;
  }
}

.card04-ul {
  list-style: none;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .card04-ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
.card04-ul * {
  box-sizing: border-box;
}
.card04-ul *::before, .card04-ul *::after {
  box-sizing: border-box;
}
.card04-ul + .btns-wrapper {
  margin-top: 10rem;
}
@media screen and (min-width: 769px) {
  .card04-li {
    width: 30.965%;
  }
  .card04-li:nth-of-type(n+4) {
    margin-top: 5rem;
  }
  .card04-li:nth-of-type(3n+2):last-of-type {
    margin-left: 3.553%;
    margin-right: auto;
  }
}
@media screen and (max-width: 768px) {
  .card04-li + .card04-li {
    margin-top: 6rem;
  }
}
.card04-item {
  background: #fff;
  border-radius: 1.6rem;
  overflow: hidden;
}
@media screen and (min-width: 769px) {
  .card04-item {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    box-shadow: 0 5px 7px rgba(0, 0, 0, 0.1);
  }
}
@media screen and (max-width: 768px) {
  .card04-item {
    display: block;
    box-shadow: 0 0.5rem 0.7rem rgba(0, 0, 0, 0.1);
  }
}
.card04-item-thumb {
  line-height: 0;
  text-align: center;
  overflow: hidden;
}
@media screen and (min-width: 769px) {
  .card04-item-thumb {
    flex-shrink: 0;
  }
}
@media screen and (min-width: 769px) {
  .card04-item-desc {
    height: 100%;
    padding: 2.5rem 3rem 4rem;
  }
}
@media screen and (max-width: 768px) {
  .card04-item-desc {
    padding: 5rem 4rem 6rem;
  }
}
.card04-item-desc > dt {
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .card04-item-desc > dt {
    line-height: 1.455em;
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 768px) {
  .card04-item-desc > dt {
    line-height: 1.5em;
    font-size: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .card04-item-desc > dd {
    padding-top: 2.5rem;
  }
}
@media screen and (max-width: 768px) {
  .card04-item-desc > dd {
    padding-top: 5rem;
  }
}

.card05-items {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  list-style: none;
}
@media screen and (min-width: 769px) {
  .card05-item {
    width: 22.17%;
  }
  .card05-item:nth-of-type(n+5) {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .card05-item {
    width: 47.973%;
  }
  .card05-item:nth-of-type(n+3) {
    margin-top: 4rem;
  }
}
.card05-item-image {
  line-height: 0;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .card05-item-text {
    padding-top: 1.25em;
    line-height: 1.5em;
    font-size: 1.6rem;
  }
  .card05-item-text > p {
    line-height: inherit;
    font: inherit;
  }
  .card05-item-text > p:first-of-type {
    margin-top: -0.25em;
  }
  .card05-item-text > p:last-of-type {
    margin-bottom: -0.25em;
  }
}
@media screen and (max-width: 768px) {
  .card05-item-text {
    padding-top: 0.715em;
    line-height: 1.429em;
    font-size: 2.8rem;
  }
  .card05-item-text > p {
    line-height: inherit;
    font: inherit;
  }
  .card05-item-text > p:first-of-type {
    margin-top: -0.214em;
  }
  .card05-item-text > p:last-of-type {
    margin-bottom: -0.214em;
  }
}

.panel01-ul {
  list-style: none;
  box-sizing: border-box;
}
.panel01-ul * {
  box-sizing: border-box;
}
.panel01-ul::before, .panel01-ul::after {
  box-sizing: border-box;
}
.panel01-li + .panel01-li {
  margin-top: 4rem;
}
.panel01-item {
  background: #f7f6f5;
}
@media screen and (min-width: 769px) {
  .panel01-item {
    padding: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .panel01-item {
    padding: 6rem 4rem;
  }
}
.panel01-tags {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.panel01-tags > span {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #fff;
  border: 1px solid;
  height: 1.858em;
  padding: 0 0.715em;
  line-height: 1;
  text-align: center;
  color: #000;
  white-space: nowrap;
}
@media screen and (min-width: 769px) {
  .panel01-tags > span {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 768px) {
  .panel01-tags > span {
    font-size: 2.8rem;
  }
}
.panel01-tags > span.fitness01 {
  background: #0d5faf;
  border: none;
  color: #fff;
}
.panel01-tags > span.fitness02 {
  color: #0d5faf;
}
.panel01-tags > span.kids01 {
  background: #00a1e9;
  border: none;
  color: #fff;
}
.panel01-tags > span.kids02 {
  color: #00a1e9;
}
.panel01-tags > span.green01 {
  color: #31c473;
}
.panel01-tags > span.pink01 {
  color: #f97171;
}
.panel01-tags > span.purple01 {
  color: #9e7bd6;
}
.panel01-tags > span + span {
  margin-left: 1rem;
}
.title-h3 + .panel01-tags {
  padding-top: 4rem;
}
.panel01-body {
  padding-top: 4rem;
}
@media screen and (max-width: 768px) {
  .panel01-body .btn-carrow01 {
    width: 15.938em;
    height: 2.75em;
  }
}
.panel01-desc {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  border-top: 1px solid #dcdcdc;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .panel01-desc {
    line-height: 1.5em;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .panel01-desc {
    line-height: 1.688em;
    font-size: 3.2rem;
  }
}
.panel01-desc > dt {
  flex-shrink: 0;
  border-bottom: 1px solid #dcdcdc;
}
@media screen and (min-width: 769px) {
  .panel01-desc > dt {
    width: 10rem;
    padding: 2rem 0 2rem 2rem;
  }
}
@media screen and (max-width: 768px) {
  .panel01-desc > dt {
    width: 13.2rem;
    padding: 2.8rem 0;
  }
}
.panel01-desc > dd {
  border-bottom: 1px solid #dcdcdc;
}
@media screen and (min-width: 769px) {
  .panel01-desc > dd {
    width: calc(100% - 10rem);
    padding: 2rem 2rem 2rem 0;
  }
}
@media screen and (max-width: 768px) {
  .panel01-desc > dd {
    width: calc(100% - 13.2rem);
    padding: 2.8rem 0;
  }
}
.panel01-desc > dd a {
  display: inline-block;
  text-decoration: underline;
  color: #0d5faf;
}
.panel01-desc > dd a[target=_blank]::after {
  content: "";
  display: inline-block;
  background-image: url(/assets/common/img/icon_blank.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 1em;
  height: 1em;
  margin-left: 0.3em;
  vertical-align: baseline;
  transform: translate(0, 15%);
}
.panel01-desc + .btns-wrapper {
  margin-top: 4rem;
}

.row01-ul > li {
  display: block;
  border-bottom: 1px solid #dcdcdc;
}
@media screen and (min-width: 769px) {
  .row01-ul > li {
    padding: 3.5rem 0;
  }
}
@media screen and (max-width: 768px) {
  .row01-ul > li {
    padding: 6rem 0;
  }
}
.row01-ul > li:first-of-type {
  border-top: 1px solid #dcdcdc;
}

.img-default {
  line-height: 0;
}
.img-default.wid01 {
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .img-default.wid01 {
    max-width: 980px;
  }
}
.img-border01 {
  line-height: 0;
  text-align: center;
}
.img-border01 > img {
  border: 1px solid #dcdcdc;
}

.desc01-dl-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .desc01-dl-row {
    padding: 0 3rem;
  }
}
.desc01-dl-head {
  flex-shrink: 0;
}
@media screen and (max-width: 768px) {
  .desc01-dl-head {
    padding: 0 5rem 0 0;
  }
}
.desc01-dl-body {
  width: 100%;
}

.desc02-dl > dt {
  letter-spacing: 0.02em;
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .desc02-dl > dt {
    line-height: 1.778em;
    font-size: 1.8rem;
  }
  .desc02-dl > dt > p {
    line-height: inherit;
    font: inherit;
  }
  .desc02-dl > dt > p:first-of-type {
    margin-top: -0.388em;
  }
  .desc02-dl > dt > p:last-of-type {
    margin-bottom: -0.388em;
  }
}
@media screen and (max-width: 768px) {
  .desc02-dl > dt {
    line-height: 1.778em;
    font-size: 3.6rem;
  }
  .desc02-dl > dt > p {
    line-height: inherit;
    font: inherit;
  }
  .desc02-dl > dt > p:first-of-type {
    margin-top: -0.388em;
  }
  .desc02-dl > dt > p:last-of-type {
    margin-bottom: -0.388em;
  }
}
@media screen and (min-width: 769px) {
  .desc02-dl > dt + dd {
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .desc02-dl > dt + dd {
    padding-top: 3rem;
  }
}
@media screen and (min-width: 769px) {
  .desc02-dl > dd + dt {
    padding-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .desc02-dl > dd + dt {
    padding-top: 6rem;
  }
}
.desc02-dl-text {
  letter-spacing: 0.02em;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .desc02-dl-text {
    line-height: 2em;
    font-size: 1.6rem;
  }
  .desc02-dl-text > p {
    line-height: inherit;
    font: inherit;
  }
  .desc02-dl-text > p:first-of-type {
    margin-top: -0.5em;
  }
  .desc02-dl-text > p:last-of-type {
    margin-bottom: -0.5em;
  }
}
@media screen and (max-width: 768px) {
  .desc02-dl-text {
    line-height: 1.688em;
    font-size: 3.2rem;
  }
  .desc02-dl-text > p {
    line-height: inherit;
    font: inherit;
  }
  .desc02-dl-text > p:first-of-type {
    margin-top: -0.343em;
  }
  .desc02-dl-text > p:last-of-type {
    margin-bottom: -0.343em;
  }
}
@media screen and (min-width: 769px) {
  .desc02-dl-text + .num02-ol {
    padding-top: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .desc02-dl-text + .num02-ol {
    padding-top: 2.2rem;
  }
}

.desc03-dl {
  display: flex;
}
@media screen and (min-width: 769px) {
  .desc03-dl {
    justify-content: space-between;
  }
}
.desc03-dl > dt {
  flex-shrink: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #000;
  line-height: 1;
  font-weight: 700;
  color: #fff;
}
@media screen and (min-width: 769px) {
  .desc03-dl > dt {
    width: 5.682em;
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 768px) {
  .desc03-dl > dt {
    width: 5em;
    font-size: 2.4rem;
  }
}
.desc03-dl > dd {
  display: flex;
  align-items: center;
  background: #f7f6f5;
  width: 100%;
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .desc03-dl > dd {
    padding: 0.584em 0.667em;
    line-height: 1.5em;
    font-size: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .desc03-dl > dd {
    padding: 0.5em 0.5em;
    line-height: 1.5em;
    font-size: 4rem;
  }
}

@media screen and (min-width: 769px) {
  .desc04-dl > dt {
    line-height: 1.65em;
    font-size: 2rem;
  }
  .desc04-dl > dt > p {
    line-height: inherit;
    font: inherit;
  }
  .desc04-dl > dt > p:first-of-type {
    margin-top: -0.325em;
  }
  .desc04-dl > dt > p:last-of-type {
    margin-bottom: -0.325em;
  }
}
@media screen and (max-width: 768px) {
  .desc04-dl > dt {
    line-height: 1.5em;
    font-size: 4rem;
  }
  .desc04-dl > dt > p {
    line-height: inherit;
    font: inherit;
  }
  .desc04-dl > dt > p:first-of-type {
    margin-top: -0.25em;
  }
  .desc04-dl > dt > p:last-of-type {
    margin-bottom: -0.25em;
  }
}
@media screen and (min-width: 769px) {
  .desc04-dl > dd {
    padding-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .desc04-dl > dd {
    padding-top: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .desc04-dl + .desc04-dl {
    padding-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .desc04-dl + .desc04-dl {
    padding-top: 8rem;
  }
}

@media screen and (min-width: 769px) {
  .desc05-dl.wid01 .desc05-dl-dt {
    width: 22rem;
  }
}
@media screen and (min-width: 769px) {
  .desc05-dl-row {
    display: flex;
  }
}
@media screen and (min-width: 769px) {
  .desc05-dl-row + .desc05-dl-row {
    padding-top: 2.6rem;
  }
}
@media screen and (max-width: 768px) {
  .desc05-dl-row + .desc05-dl-row {
    border-top: 1px solid #ccc;
    margin-top: 3.8rem;
    padding-top: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .desc05-dl-dt {
    flex-shrink: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    line-height: 1.5em;
    font-size: 1.6rem;
  }
  .desc05-dl-dt > p {
    line-height: inherit;
    font: inherit;
  }
  .desc05-dl-dt > p:first-of-type {
    margin-top: -0.25em;
  }
  .desc05-dl-dt > p:last-of-type {
    margin-bottom: -0.25em;
  }
  .desc05-dl-dt::after {
    content: "";
    display: block;
    background: #ccc;
    width: 100%;
    height: 1px;
    margin: 0 0.625em;
    box-sizing: border-box;
  }
  .desc05-dl-dt > p {
    flex-shrink: 0;
  }
}
@media screen and (max-width: 768px) {
  .desc05-dl-dt {
    line-height: 1.688em;
    font-size: 3.2rem;
  }
  .desc05-dl-dt > p {
    line-height: inherit;
    font: inherit;
  }
  .desc05-dl-dt > p:first-of-type {
    margin-top: -0.343em;
  }
  .desc05-dl-dt > p:last-of-type {
    margin-bottom: -0.343em;
  }
}
@media screen and (min-width: 769px) {
  .desc05-dl-dd {
    width: 100%;
    line-height: 1.5em;
    font-size: 1.6rem;
  }
  .desc05-dl-dd > p {
    line-height: inherit;
    font: inherit;
  }
  .desc05-dl-dd > p:first-of-type {
    margin-top: -0.25em;
  }
  .desc05-dl-dd > p:last-of-type {
    margin-bottom: -0.25em;
  }
}
@media screen and (max-width: 768px) {
  .desc05-dl-dd {
    padding-top: 0.625em;
    line-height: 1.688em;
    font-size: 3.2rem;
  }
  .desc05-dl-dd > p {
    line-height: inherit;
    font: inherit;
  }
  .desc05-dl-dd > p:first-of-type {
    margin-top: -0.343em;
  }
  .desc05-dl-dd > p:last-of-type {
    margin-bottom: -0.343em;
  }
}

.step01-ol {
  counter-reset: step01;
  display: flex;
  justify-content: center;
  position: relative;
}
.step01-ol > li {
  counter-increment: step01;
  display: block;
  position: relative;
  color: #bbb;
}
@media screen and (min-width: 769px) {
  .step01-ol > li {
    padding-bottom: 2.143em;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 768px) {
  .step01-ol > li {
    padding-bottom: 3.334em;
    font-size: 2.4rem;
  }
}
.step01-ol > li::before {
  content: "";
  position: absolute;
  background: #bbb;
  left: 50%;
  transform: translate(0, -50%);
  pointer-events: none;
}
@media screen and (min-width: 769px) {
  .step01-ol > li::before {
    width: 16rem;
    height: 0.2rem;
    top: 3.1rem;
  }
}
@media screen and (max-width: 768px) {
  .step01-ol > li::before {
    width: 17rem;
    height: 0.4rem;
    top: 5.6rem;
  }
}
.step01-ol > li:last-of-type::before {
  display: none;
}
.step01-ol > li::after {
  content: counter(step01, decimal-leading-zero);
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  background: #fff;
  border: 2px solid;
  border-radius: 50%;
  margin: 0 auto;
  font-weight: 700;
  color: #bbb;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .step01-ol > li::after {
    width: 3em;
    height: 3em;
    font-size: 1.429em;
  }
}
@media screen and (max-width: 768px) {
  .step01-ol > li::after {
    width: 3.056em;
    height: 3.056em;
    font-size: 1.5em;
  }
}
.step01-ol > li p {
  position: absolute;
  left: 50%;
  font-weight: 700;
  text-align: center;
  transform: translate(-50%, 0);
  white-space: nowrap;
}
@media screen and (min-width: 769px) {
  .step01-ol > li p {
    bottom: -0.214em;
    line-height: 1.429em;
  }
}
@media screen and (max-width: 768px) {
  .step01-ol > li p {
    bottom: -0.125em;
    line-height: 1.25em;
  }
}
@media screen and (max-width: 768px) {
  .step01-ol > li p small {
    font-size: 0.834em;
  }
}
.step01-ol > li.is-current {
  color: #0d5faf;
}
.step01-ol > li.is-current::after {
  background: #0d5faf;
  border-color: #0d5faf;
  color: #fff;
}
@media screen and (min-width: 769px) {
  .step01-ol > li + li {
    margin-left: 10rem;
  }
}
@media screen and (max-width: 768px) {
  .step01-ol > li + li {
    margin-left: 6rem;
  }
}

.step02-ol {
  list-style: none;
  counter-reset: step02;
}
.step02-ol > li {
  position: relative;
  counter-increment: step02;
}
.step02-ol > li::before {
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  transform: rotateZ(45deg);
  box-sizing: border-box;
  pointer-events: none;
}
@media screen and (min-width: 769px) {
  .step02-ol > li::before {
    border-right: 0.65rem solid #dcdcdc;
    border-bottom: 0.65rem solid #dcdcdc;
    width: 2.15rem;
    height: 2.15rem;
    top: -4.8rem;
  }
}
@media screen and (max-width: 768px) {
  .step02-ol > li::before {
    border-right: 1.15rem solid #dcdcdc;
    border-bottom: 1.15rem solid #dcdcdc;
    width: 4.25rem;
    height: 4.25rem;
    top: -8rem;
  }
}
@media screen and (min-width: 769px) {
  .step02-ol > li + li {
    margin-top: 6.4rem;
  }
}
@media screen and (max-width: 768px) {
  .step02-ol > li + li {
    margin-top: 10rem;
  }
}
.step02-ol > li + li::before {
  content: "";
}
@media screen and (min-width: 769px) {
  .step02-ol-item {
    display: flex;
    justify-content: space-between;
  }
}
.step02-ol-item::before, .step02-ol-item::after {
  flex-shrink: 0;
  display: flex;
  line-height: 1;
  font-weight: 700;
  color: #fff;
  box-sizing: border-box;
  pointer-events: none;
}
@media screen and (min-width: 769px) {
  .step02-ol-item::before, .step02-ol-item::after {
    justify-content: center;
    width: 13rem;
    min-height: 12.8rem;
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  .step02-ol-item::before, .step02-ol-item::after {
    align-items: flex-end;
    width: 100%;
    height: 7rem;
  }
}
.step02-ol-item::before {
  content: "STEP";
  background: #0d5faf;
}
@media screen and (min-width: 769px) {
  .step02-ol-item::before {
    border-radius: 1rem 0 0 1rem;
    padding-top: 3.1rem;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .step02-ol-item::before {
    border-radius: 1rem 1rem 0 0;
    padding: 0 0 2rem 4.4rem;
    font-size: 2.4rem;
  }
}
.step02-ol-item::after {
  content: counter(step02);
  position: absolute;
  left: 0;
  top: 0;
}
@media screen and (min-width: 769px) {
  .step02-ol-item::after {
    bottom: 0;
    padding-top: 5.3rem;
    font-size: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .step02-ol-item::after {
    padding: 0 0 1.2rem 11.4rem;
    font-size: 5rem;
  }
}
.step02-ol-body {
  position: relative;
  width: 100%;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .step02-ol-body {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 3.1rem 2rem 3.1rem 4rem;
  }
}
@media screen and (max-width: 768px) {
  .step02-ol-body {
    padding: 4rem;
  }
}
.step02-ol-body::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  box-sizing: border-box;
  pointer-events: none;
}
@media screen and (min-width: 769px) {
  .step02-ol-body::before {
    border: 2px solid #0d5faf;
    border-radius: 0 1rem 1rem 0;
  }
}
@media screen and (max-width: 768px) {
  .step02-ol-body::before {
    border: 1px solid #0d5faf;
    border-radius: 0 0 1rem 1rem;
  }
}
.step02-ol-desc > dt {
  font-weight: 700;
  color: #0d5faf;
}
@media screen and (min-width: 769px) {
  .step02-ol-desc > dt {
    line-height: 1.2em;
    font-size: 3rem;
  }
  .step02-ol-desc > dt > p {
    line-height: inherit;
    font: inherit;
  }
  .step02-ol-desc > dt > p:first-of-type {
    margin-top: -0.1em;
  }
  .step02-ol-desc > dt > p:last-of-type {
    margin-bottom: -0.1em;
  }
}
@media screen and (max-width: 768px) {
  .step02-ol-desc > dt {
    line-height: 1.209em;
    font-size: 4.8rem;
  }
  .step02-ol-desc > dt > p {
    line-height: inherit;
    font: inherit;
  }
  .step02-ol-desc > dt > p:first-of-type {
    margin-top: -0.104em;
  }
  .step02-ol-desc > dt > p:last-of-type {
    margin-bottom: -0.104em;
  }
}
@media screen and (min-width: 769px) {
  .step02-ol-desc > dt + dd {
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .step02-ol-desc > dt + dd {
    padding-top: 3rem;
  }
}
@media screen and (min-width: 769px) {
  .step02-ol-desc > dd .text01-p + .kome-ul {
    padding-top: 0.8rem;
  }
}
@media screen and (max-width: 768px) {
  .step02-ol-desc > dd .text01-p + .kome-ul {
    padding-top: 2.2rem;
  }
}

.step03-ol {
  list-style: none;
  counter-set: step03;
  box-sizing: border-box;
}
.step03-ol * {
  box-sizing: border-box;
}
.step03-ol *::before, .step03-ol *::after {
  box-sizing: border-box;
}
.step03-li {
  counter-increment: step03;
}
.step03-li + .step03-li {
  margin-top: 4rem;
}
.step03-item-head {
  display: flex;
  align-items: center;
  background: #000;
  font-weight: 700;
  color: #fff;
}
@media screen and (min-width: 769px) {
  .step03-item-head {
    min-height: 3em;
    padding: 0.334em 0.834em;
    line-height: 1.1em;
    font-size: 3rem;
  }
  .step03-item-head > p {
    line-height: inherit;
    font: inherit;
  }
  .step03-item-head > p:first-of-type {
    margin-top: -0.05em;
  }
  .step03-item-head > p:last-of-type {
    margin-bottom: -0.05em;
  }
}
@media screen and (max-width: 768px) {
  .step03-item-head {
    min-height: 2.75em;
    padding: 0.5em;
    line-height: 1.25em;
    font-size: 4rem;
  }
  .step03-item-head > p {
    line-height: inherit;
    font: inherit;
  }
  .step03-item-head > p:first-of-type {
    margin-top: -0.125em;
  }
  .step03-item-head > p:last-of-type {
    margin-bottom: -0.125em;
  }
}
.step03-item-head::before {
  content: counter(step03);
  flex-shrink: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #fff;
  border-radius: 50%;
  line-height: 1;
  color: #000;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .step03-item-head::before {
    width: 1.667em;
    height: 1.667em;
  }
}
@media screen and (max-width: 768px) {
  .step03-item-head::before {
    width: 1.75em;
    height: 1.75em;
  }
}
.step03-item-head > p {
  width: 100%;
}
@media screen and (min-width: 769px) {
  .step03-item-head > p {
    padding-left: 0.667em;
  }
}
@media screen and (max-width: 768px) {
  .step03-item-head > p {
    padding-left: 0.5em;
  }
}
.step03-item-body {
  background: #f7f6f5;
}
@media screen and (min-width: 769px) {
  .step03-item-body {
    padding: 5rem 4rem 7rem;
  }
}
@media screen and (max-width: 768px) {
  .step03-item-body {
    padding: 6rem 4rem;
  }
}
.step03-item-list {
  list-style: none;
}
.step03-item-list > li {
  position: relative;
}
@media screen and (min-width: 769px) {
  .step03-item-list > li + li {
    margin-top: 7rem;
  }
}
@media screen and (max-width: 768px) {
  .step03-item-list > li + li {
    margin-top: 8rem;
  }
}
.step03-item-flow {
  list-style: none;
}
.step03-item-flow > li {
  position: relative;
}
@media screen and (min-width: 769px) {
  .step03-item-flow > li + li {
    margin-top: 10rem;
  }
}
@media screen and (max-width: 768px) {
  .step03-item-flow > li + li {
    margin-top: 16rem;
  }
}
.step03-item-flow > li + li::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  transform: rotateZ(45deg);
  pointer-events: none;
}
@media screen and (min-width: 769px) {
  .step03-item-flow > li + li::before {
    border-right: 0.7rem solid #dcdcdc;
    border-bottom: 0.7rem solid #dcdcdc;
    width: 2.15rem;
    height: 2.15rem;
    top: -7rem;
  }
}
@media screen and (max-width: 768px) {
  .step03-item-flow > li + li::before {
    border-right: 1.1rem solid #dcdcdc;
    border-bottom: 1.1rem solid #dcdcdc;
    width: 4.25rem;
    height: 4.25rem;
    top: -11rem;
  }
}

.num01-ol {
  counter-reset: num01;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .num01-ol {
    line-height: 2em;
    font-size: 1.6rem;
  }
  .num01-ol > li {
    line-height: inherit;
    font: inherit;
  }
  .num01-ol > li:first-of-type {
    margin-top: -0.5em;
  }
  .num01-ol > li:last-of-type {
    margin-bottom: -0.5em;
  }
}
@media screen and (max-width: 768px) {
  .num01-ol {
    line-height: 1.688em;
    font-size: 3.2rem;
  }
  .num01-ol > li {
    line-height: inherit;
    font: inherit;
  }
  .num01-ol > li:first-of-type {
    margin-top: -0.343em;
  }
  .num01-ol > li:last-of-type {
    margin-bottom: -0.343em;
  }
}
.num01-ol.wrap > li {
  flex-wrap: wrap;
}
.num01-ol.wrap > li > *:first-of-type {
  width: calc(100% - 1.2em);
}
.num01-ol.mt01 > li + li {
  margin-top: 0 !important;
  padding-top: 3rem;
}
.num01-ol.mt02 > li + li {
  margin-top: 0 !important;
  padding-top: 1em;
}
.num01-ol > li {
  counter-increment: num01;
  display: flex;
}
.num01-ol > li::before {
  content: counter(num01) ".";
  flex-shrink: 0;
  display: block;
  margin-right: 0.2em;
}
@media screen and (max-width: 768px) {
  .num01-ol > li + li {
    margin-top: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .num01-ol > li p.text01-p + .kome-ul {
    padding-top: 0.4rem;
  }
}
@media screen and (max-width: 768px) {
  .num01-ol > li p.text01-p + .kome-ul {
    padding-top: 1.1rem;
  }
}
@media screen and (min-width: 769px) {
  .num01-ol + .scroll-box {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .num01-ol + .scroll-box {
    margin-top: 6rem;
  }
}

.num02-ol {
  counter-reset: num02;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .num02-ol {
    line-height: 2em;
    font-size: 1.6rem;
  }
  .num02-ol > li {
    line-height: inherit;
    font: inherit;
  }
  .num02-ol > li:first-of-type {
    margin-top: -0.5em;
  }
  .num02-ol > li:last-of-type {
    margin-bottom: -0.5em;
  }
}
@media screen and (max-width: 768px) {
  .num02-ol {
    line-height: 1.688em;
    font-size: 3.2rem;
  }
  .num02-ol > li {
    line-height: inherit;
    font: inherit;
  }
  .num02-ol > li:first-of-type {
    margin-top: -0.343em;
  }
  .num02-ol > li:last-of-type {
    margin-bottom: -0.343em;
  }
}
.num02-ol > li {
  counter-increment: num02;
  display: flex;
}
.num02-ol > li::before {
  content: counter(num02) ")";
  flex-shrink: 0;
  display: block;
  margin-right: 0.2em;
}

.dot01-ul {
  list-style: none;
}
.dot01-ul > li {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
}
.dot01-ul > li::before {
  content: "";
  flex-shrink: 0;
  display: block;
  background: #0d5faf;
  border-radius: 50%;
}
@media screen and (min-width: 769px) {
  .dot01-ul > li::before {
    width: 0.6rem;
    height: 0.6rem;
    margin-right: 1.4rem;
    transform: translate(0, -0.312em);
  }
}
@media screen and (max-width: 768px) {
  .dot01-ul > li::before {
    width: 1.6rem;
    height: 1.6rem;
    margin-right: 2.4rem;
    transform: translate(0, -0.375em);
  }
}
.dot01-ul > li > * {
  width: 100%;
}
@media screen and (min-width: 769px) {
  .dot01-ul > li + li {
    padding-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .dot01-ul > li + li {
    padding-top: 4rem;
  }
}
.dot01-ul a {
  text-decoration: underline;
  color: #0d5faf;
}
@media screen and (min-width: 769px) {
  .dot01-ul + .btns-wrapper {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .dot01-ul + .btns-wrapper {
    margin-top: 8rem;
  }
}
.dot01-ul + .note01-p {
  padding-top: 3rem;
}

.dot02-ul {
  list-style: none;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .dot02-ul {
    line-height: 1.5em;
    font-size: 1.6rem;
  }
  .dot02-ul > li {
    line-height: inherit;
    font: inherit;
  }
  .dot02-ul > li:first-of-type {
    margin-top: -0.25em;
  }
  .dot02-ul > li:last-of-type {
    margin-bottom: -0.25em;
  }
}
@media screen and (max-width: 768px) {
  .dot02-ul {
    line-height: 1.688em;
    font-size: 3.2rem;
  }
  .dot02-ul > li {
    line-height: inherit;
    font: inherit;
  }
  .dot02-ul > li:first-of-type {
    margin-top: -0.343em;
  }
  .dot02-ul > li:last-of-type {
    margin-bottom: -0.343em;
  }
}
.dot02-ul > li {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
}
.dot02-ul > li::before {
  content: "";
  flex-shrink: 0;
  display: block;
  background: #0d5faf;
  border-radius: 50%;
}
@media screen and (min-width: 769px) {
  .dot02-ul > li::before {
    width: 0.6rem;
    height: 0.6rem;
    margin-right: 1.2rem;
    transform: translate(0, -0.187em);
  }
}
@media screen and (max-width: 768px) {
  .dot02-ul > li::before {
    width: 1.6rem;
    height: 1.6rem;
    margin-right: 2.2rem;
    transform: translate(0, -0.093em);
  }
}
.dot02-ul > li > * {
  width: 100%;
}
.dot02-ul a {
  text-decoration: underline;
  color: #0d5faf;
}
@media screen and (min-width: 769px) {
  .dot02-ul + .btns-wrapper {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .dot02-ul + .btns-wrapper {
    margin-top: 8rem;
  }
}
.dot02-ul + .note01-p {
  padding-top: 3rem;
}

.kome-ul {
  letter-spacing: 0.02em;
  list-style: none;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .kome-ul {
    line-height: 1.5em;
    font-size: 1.6rem;
  }
  .kome-ul > li {
    line-height: inherit;
    font: inherit;
  }
  .kome-ul > li:first-of-type {
    margin-top: -0.25em;
  }
  .kome-ul > li:last-of-type {
    margin-bottom: -0.25em;
  }
}
@media screen and (max-width: 768px) {
  .kome-ul {
    line-height: 1.715em;
    font-size: 2.8rem;
  }
  .kome-ul > li {
    line-height: inherit;
    font: inherit;
  }
  .kome-ul > li:first-of-type {
    margin-top: -0.357em;
  }
  .kome-ul > li:last-of-type {
    margin-bottom: -0.357em;
  }
  .kome-ul.sp_large {
    line-height: 1.688em;
    font-size: 3.2rem;
  }
  .kome-ul.sp_large > li {
    line-height: inherit;
    font: inherit;
  }
  .kome-ul.sp_large > li:first-of-type {
    margin-top: -0.343em;
  }
  .kome-ul.sp_large > li:last-of-type {
    margin-bottom: -0.343em;
  }
}
.kome-ul > li {
  padding-left: 1em;
  text-indent: -1em;
}
.kome-ul a {
  text-decoration: underline;
  color: #0d5faf;
}
@media screen and (min-width: 769px) {
  .kome-ul + .text01-p {
    padding-top: 1.5rem;
  }
}
@media screen and (max-width: 768px) {
  .kome-ul + .text01-p {
    padding-top: 3rem;
  }
}

.check01-ul {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.tab_content_inner .check01-ul {
  width: 100% !important;
}
.check01-ul > li {
  display: flex;
  width: 100%;
  margin-top: 0 !important;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .check01-ul > li {
    background: transparent !important;
  }
}
@media screen and (max-width: 768px) {
  .check01-ul > li {
    background: #f7f6f5;
    border-radius: 0.6rem;
  }
}
.check01-ul > li.middle {
  align-items: center;
}
@media screen and (min-width: 769px) {
  .check01-ul.pc_clm3 > li {
    width: 30%;
  }
  .check01-ul.pc_clm3 > li:nth-of-type(n+4) {
    margin-top: 2rem !important;
  }
  .check01-ul.pc_clm3 > li:nth-of-type(3n+2):last-of-type {
    margin-left: 5%;
    margin-right: auto;
  }
  .check01-ul.pc_clm4 > li {
    width: 22%;
  }
  .check01-ul.pc_clm4 > li:nth-of-type(n+5) {
    margin-top: 2rem !important;
  }
  .check01-ul.pc_clm4 > li:nth-of-type(4n+2):nth-last-of-type(2) {
    margin-left: 4%;
  }
  .check01-ul.pc_clm4 > li:nth-of-type(4n+2):nth-last-of-type(2) + li {
    margin-left: 4%;
    margin-right: auto;
  }
  .check01-ul.pc_clm4 > li:nth-of-type(4n+2):last-of-type {
    margin-left: 4%;
    margin-right: auto;
  }
}
@media screen and (max-width: 768px) {
  .check01-ul > li {
    padding: 1rem;
  }
  .check01-ul.sp_clm1 > li {
    width: 100%;
  }
  .check01-ul.sp_clm1 > li:nth-of-type(n+2) {
    margin-top: 2rem !important;
  }
  .check01-ul.sp_clm2 > li {
    width: 49%;
  }
  .check01-ul.sp_clm2 > li:nth-of-type(n+3) {
    margin-top: 2rem !important;
  }
}
@media screen and (min-width: 769px) {
  .check01-ul + .check01-ul {
    margin-top: 5rem;
  }
}
@media screen and (max-width: 768px) {
  .check01-ul + .check01-ul {
    margin-top: 4rem;
  }
}

.alert01-p {
  background: #fff3f3;
  font-weight: 700;
  color: #fc4042;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .alert01-p {
    border: 2px solid;
    padding: 2.3rem;
    line-height: 1.5em;
    font-size: 3rem;
  }
  .alert01-p > p {
    line-height: inherit;
    font: inherit;
  }
  .alert01-p > p:first-of-type {
    margin-top: -0.25em;
  }
  .alert01-p > p:last-of-type {
    margin-bottom: -0.25em;
  }
  .alert01-p.pc_center {
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  .alert01-p {
    border: 0.4rem solid;
    padding: 4.6rem;
    line-height: 1.5em;
    font-size: 4rem;
  }
  .alert01-p > p {
    line-height: inherit;
    font: inherit;
  }
  .alert01-p > p:first-of-type {
    margin-top: -0.25em;
  }
  .alert01-p > p:last-of-type {
    margin-bottom: -0.25em;
  }
}
.alert01-p > p + .text01-p {
  padding-top: 3rem;
}

.lead01-p {
  position: relative;
  letter-spacing: 0.05em;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .lead01-p {
    padding: 0 0 1.137em;
    line-height: 1.5em;
    font-size: 2.2rem;
  }
  .lead01-p > p {
    line-height: inherit;
    font: inherit;
  }
  .lead01-p > p:first-of-type {
    margin-top: -0.25em;
  }
  .lead01-p > p:last-of-type {
    margin-bottom: -0.25em;
  }
}
@media screen and (max-width: 768px) {
  .lead01-p {
    padding: 0 0 1.2em;
    line-height: 1.5em;
    font-size: 4rem;
  }
  .lead01-p > p {
    line-height: inherit;
    font: inherit;
  }
  .lead01-p > p:first-of-type {
    margin-top: -0.25em;
  }
  .lead01-p > p:last-of-type {
    margin-bottom: -0.25em;
  }
}
.lead01-p::after {
  content: "";
  position: absolute;
  background: #000;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .lead01-p::after {
    border-radius: 0.228em;
    width: 1.819em;
    height: 0.228em;
  }
}
@media screen and (max-width: 768px) {
  .lead01-p::after {
    border-radius: 0.25em;
    width: 2em;
    height: 0.25em;
  }
}
@media screen and (min-width: 769px) {
  .lead01-p + .btn-carrow01 {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .lead01-p + .btn-carrow01 {
    margin-top: 8rem;
  }
}
@media screen and (min-width: 769px) {
  .lead01-p + .btns-wrapper {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .lead01-p + .btns-wrapper {
    margin-top: 8rem;
  }
}
@media screen and (min-width: 769px) {
  .lead01-p + .app-list {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .lead01-p + .app-list {
    margin-top: 8rem;
  }
}

.lead02-p {
  text-align: center;
}
@media screen and (min-width: 769px) {
  .lead02-p {
    line-height: 1.5em;
    font-size: 2.2rem;
  }
  .lead02-p > p {
    line-height: inherit;
    font: inherit;
  }
  .lead02-p > p:first-of-type {
    margin-top: -0.25em;
  }
  .lead02-p > p:last-of-type {
    margin-bottom: -0.25em;
  }
}
@media screen and (max-width: 768px) {
  .lead02-p {
    line-height: 1.5em;
    font-size: 4rem;
  }
  .lead02-p > p {
    line-height: inherit;
    font: inherit;
  }
  .lead02-p > p:first-of-type {
    margin-top: -0.25em;
  }
  .lead02-p > p:last-of-type {
    margin-bottom: -0.25em;
  }
}
.lead02-p.col01 {
  color: #fff;
}
.lead02-p.col01 em {
  font-style: normal;
  color: #fffa55;
}
@media screen and (min-width: 769px) {
  .lead02-p.col01 em {
    font-size: 1.364em;
  }
}
@media screen and (max-width: 768px) {
  .lead02-p.col01 em {
    font-size: 1.2em;
  }
}

.text01-p {
  letter-spacing: 0.02em;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .text01-p {
    line-height: 1.5em;
    font-size: 1.6rem;
  }
  .text01-p > p {
    line-height: inherit;
    font: inherit;
  }
  .text01-p > p:first-of-type {
    margin-top: -0.25em;
  }
  .text01-p > p:last-of-type {
    margin-bottom: -0.25em;
  }
  .text01-p.pc_center {
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  .text01-p {
    line-height: 1.688em;
    font-size: 3.2rem;
  }
  .text01-p > p {
    line-height: inherit;
    font: inherit;
  }
  .text01-p > p:first-of-type {
    margin-top: -0.343em;
  }
  .text01-p > p:last-of-type {
    margin-bottom: -0.343em;
  }
}
.text01-p em {
  font-size: 1.125em;
  font-style: normal;
}
.text01-p sup {
  display: inline-block;
  line-height: 1;
  font-size: 0.5em;
  vertical-align: super;
}
.text01-p span.error {
  color: #fc4042;
}
.text01-p a {
  text-decoration: underline;
  color: #0d5faf;
}
.text01-p.center {
  text-align: center;
}
.text01-p.att {
  color: #fc4042;
}
.text01-p.att-box {
  border: 1px solid;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .text01-p.att-box {
    padding: 1.875em !important;
  }
}
@media screen and (max-width: 768px) {
  .text01-p.att-box {
    padding: 1.25em !important;
  }
}
@media screen and (min-width: 769px) {
  .text01-p + .text01-p.att {
    padding-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .text01-p + .text01-p.att {
    padding-top: 6rem;
  }
}
@media screen and (min-width: 769px) {
  .text01-p + .text01-p.att-box {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .text01-p + .text01-p.att-box {
    margin-top: 6rem;
  }
}
@media screen and (min-width: 769px) {
  .text01-p + .select01-wrap {
    margin-top: 1rem;
  }
}
@media screen and (max-width: 768px) {
  .text01-p + .select01-wrap {
    margin-top: 2rem;
  }
}
@media screen and (min-width: 769px) {
  .text01-p + .textline01-input {
    margin-top: 1rem;
  }
}
@media screen and (max-width: 768px) {
  .text01-p + .textline01-input {
    margin-top: 2rem;
  }
}
@media screen and (min-width: 769px) {
  .text01-p + .btns-wrapper {
    margin-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .text01-p + .btns-wrapper {
    margin-top: 2rem;
  }
}
@media screen and (min-width: 769px) {
  .text01-p + .btns-wrapper.left {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .text01-p + .btns-wrapper.left {
    margin-top: 6rem;
  }
}
@media screen and (min-width: 769px) {
  .text01-p + .scroll-box {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .text01-p + .scroll-box {
    margin-top: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .text01-p + .bg-box {
    margin-top: 6rem;
  }
}
@media screen and (max-width: 768px) {
  .text01-p + .bg-box {
    margin-top: 5rem;
  }
}
@media screen and (min-width: 769px) {
  .text01-p + .flex01-row {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .text01-p + .flex01-row {
    margin-top: 6rem;
  }
}
@media screen and (min-width: 769px) {
  .text01-p + .lower-table01 {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .text01-p + .lower-table01 {
    margin-top: 5rem;
  }
}
@media screen and (min-width: 769px) {
  .text01-p + .table02-dl {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .text01-p + .table02-dl {
    margin-top: 6rem;
  }
}
@media screen and (min-width: 769px) {
  .text01-p + .table03-dl {
    margin-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .text01-p + .table03-dl {
    margin-top: 4rem;
  }
}
.text01-p + .table04-dl {
  margin-top: 2rem;
}
@media screen and (min-width: 769px) {
  .text01-p + .card05-items {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .text01-p + .card05-items {
    margin-top: 6rem;
  }
}
@media screen and (min-width: 769px) {
  .text01-p + .text02-p.error {
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .text01-p + .text02-p.error {
    padding-top: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .text01-p + .kome-ul {
    padding-top: 1.5rem;
  }
}
@media screen and (max-width: 768px) {
  .text01-p + .kome-ul {
    padding-top: 3rem;
  }
}
.text01-p + .step02-ol {
  padding-top: 4rem;
}
@media screen and (min-width: 769px) {
  .text01-p + .num01-ol {
    padding-top: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .text01-p + .num01-ol {
    padding-top: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .text01-p + .note01-p {
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .text01-p + .note01-p {
    padding-top: 4rem;
  }
}

.text02-p {
  letter-spacing: 0.02em;
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .text02-p {
    line-height: 1.7em;
    font-size: 2rem;
  }
  .text02-p > p {
    line-height: inherit;
    font: inherit;
  }
  .text02-p > p:first-of-type {
    margin-top: -0.35em;
  }
  .text02-p > p:last-of-type {
    margin-bottom: -0.35em;
  }
  .text02-p.pc_center {
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  .text02-p {
    line-height: 1.7em;
    font-size: 4rem;
  }
  .text02-p > p {
    line-height: inherit;
    font: inherit;
  }
  .text02-p > p:first-of-type {
    margin-top: -0.35em;
  }
  .text02-p > p:last-of-type {
    margin-bottom: -0.35em;
  }
}
.text02-p a {
  text-decoration: underline;
  color: #0d5faf;
}
.text02-p span.md {
  font-weight: 500;
}
.text02-p.error {
  color: #fc4042;
}
@media screen and (min-width: 769px) {
  .text02-p.error {
    order: 10;
    width: 100%;
  }
}
@media screen and (min-width: 769px) {
  .text02-p.error + .table02-dl-item {
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .text02-p.error + .table02-dl-item {
    padding-top: 4rem;
  }
}
.text02-p.error-box {
  background: #fff3f3;
  border: 2px solid;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .text02-p.error-box {
    padding: 1.6em;
  }
}
@media screen and (max-width: 768px) {
  .text02-p.error-box {
    padding: 0.95em;
  }
}
.text02-p + .step03-item-list {
  margin-top: 6rem;
}

.text03-p {
  letter-spacing: 0.02em;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .text03-p {
    line-height: 1.367em;
    font-size: 3rem;
  }
  .text03-p > p {
    line-height: inherit;
    font: inherit;
  }
  .text03-p > p:first-of-type {
    margin-top: -0.183em;
  }
  .text03-p > p:last-of-type {
    margin-bottom: -0.183em;
  }
  .text03-p.pc_center {
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  .text03-p {
    line-height: 1.417em;
    font-size: 4.8rem;
  }
  .text03-p > p {
    line-height: inherit;
    font: inherit;
  }
  .text03-p > p:first-of-type {
    margin-top: -0.208em;
  }
  .text03-p > p:last-of-type {
    margin-bottom: -0.208em;
  }
}
.text03-p a {
  text-decoration: underline;
  color: #0d5faf;
}
.text03-p + .text01-p {
  padding-top: 4rem;
}

.text04-p {
  letter-spacing: 0.02em;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .text04-p {
    line-height: 1.4em;
    font-size: 1.8rem;
  }
  .text04-p > p {
    line-height: inherit;
    font: inherit;
  }
  .text04-p > p:first-of-type {
    margin-top: -0.199em;
  }
  .text04-p > p:last-of-type {
    margin-bottom: -0.199em;
  }
}
@media screen and (max-width: 768px) {
  .text04-p {
    line-height: 1.4em;
    font-size: 3.6rem;
  }
  .text04-p > p {
    line-height: inherit;
    font: inherit;
  }
  .text04-p > p:first-of-type {
    margin-top: -0.199em;
  }
  .text04-p > p:last-of-type {
    margin-bottom: -0.199em;
  }
}

.text05-p {
  font-weight: 500;
}
@media screen and (min-width: 769px) {
  .text05-p {
    line-height: 1.7em;
    font-size: 2rem;
  }
  .text05-p > p {
    line-height: inherit;
    font: inherit;
  }
  .text05-p > p:first-of-type {
    margin-top: -0.35em;
  }
  .text05-p > p:last-of-type {
    margin-bottom: -0.35em;
  }
}
@media screen and (max-width: 768px) {
  .text05-p {
    line-height: 1.688em;
    font-size: 3.2rem;
  }
  .text05-p > p {
    line-height: inherit;
    font: inherit;
  }
  .text05-p > p:first-of-type {
    margin-top: -0.343em;
  }
  .text05-p > p:last-of-type {
    margin-bottom: -0.343em;
  }
}
@media screen and (min-width: 769px) {
  .text05-p + .text05-p {
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .text05-p + .text05-p {
    padding-top: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .text05-p + .kome-ul {
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .text05-p + .kome-ul {
    padding-top: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .text05-p + .text01-p {
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .text05-p + .text01-p {
    padding-top: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .text05-p + .note01-p {
    padding-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .text05-p + .note01-p {
    padding-top: 4rem;
  }
}

.note01-p {
  letter-spacing: 0.02em;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .note01-p {
    line-height: 1.5em;
    font-size: 1.6rem;
  }
  .note01-p > p {
    line-height: inherit;
    font: inherit;
  }
  .note01-p > p:first-of-type {
    margin-top: -0.25em;
  }
  .note01-p > p:last-of-type {
    margin-bottom: -0.25em;
  }
  .note01-p.pc_center {
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  .note01-p {
    line-height: 1.715em;
    font-size: 2.8rem;
  }
  .note01-p > p {
    line-height: inherit;
    font: inherit;
  }
  .note01-p > p:first-of-type {
    margin-top: -0.357em;
  }
  .note01-p > p:last-of-type {
    margin-bottom: -0.357em;
  }
}
.note01-p.kome > p {
  padding-left: 1em;
  text-indent: -1em;
}
.note01-p-icon {
  display: inline-block;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (min-width: 769px) {
  .note01-p-icon {
    margin-right: 0.215em;
    vertical-align: text-top;
  }
}
@media screen and (max-width: 768px) {
  .note01-p-icon {
    margin-right: 0.143em;
    vertical-align: text-bottom;
  }
}
.note01-p-icon.scale {
  background-image: url(/assets/common/img/icon_scale01_k.svg);
}
@media screen and (min-width: 769px) {
  .note01-p-icon.scale {
    width: 1.5em;
    height: 1.5em;
  }
}
@media screen and (max-width: 768px) {
  .note01-p-icon.scale {
    width: 1.429em;
    height: 1.429em;
  }
}
.note01-p a {
  text-decoration: underline;
  color: #0d5faf;
}
@media screen and (min-width: 769px) {
  .note01-p + .card01-ul {
    padding-top: 6rem;
  }
}
@media screen and (max-width: 768px) {
  .note01-p + .card01-ul {
    padding-top: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .note01-p + .btns-wrapper {
    margin-top: 5rem;
  }
}
@media screen and (max-width: 768px) {
  .note01-p + .btns-wrapper {
    margin-top: 8rem;
  }
}

.modal01-wrapper {
  position: fixed;
  background: rgba(0, 0, 0, 0.75);
  width: 0;
  height: 0;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  transition: 300ms;
  overflow: hidden;
  z-index: 9999;
}
.modal01-wrapper:not(.is-active) {
  pointer-events: none;
}
.modal01-wrapper.is-active {
  border-radius: 0;
  width: 100%;
  height: 100%;
}
.modal01-inner {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}
.modal01-box {
  width: 80vw;
}
@media screen and (min-width: 769px) {
  .modal01-box {
    max-width: 800px;
    height: calc(45vw + 70px);
    max-height: 520px;
  }
}
.modal01-box iframe {
  width: 100%;
  height: 45vw;
  max-height: calc(100% - 70px);
}
.modal01-close {
  display: block;
  position: relative;
  width: 54px;
  height: 54px;
  margin: 0 0 16px auto;
  cursor: pointer;
}
.modal01-close::before, .modal01-close::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 2px;
  transform: translateY(-50%) rotate(45deg);
  background-color: #fff;
}
.modal01-close::after {
  transform: rotate(135deg);
}

#cboxOverlay {
  background: #000;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.iframe-modal01#cboxOverlay {
  z-index: 10005;
}
.iframe-modal01#colorbox {
  overflow: visible;
  z-index: 10005;
}
.iframe-modal01 #cboxWrapper {
  overflow: visible;
}
@media screen and (min-width: 769px) {
  .iframe-modal01 #cboxWrapper {
    background: #fff;
  }
}
.iframe-modal01 #cboxContent {
  overflow: visible;
}
.iframe-modal01 #cboxTopLeft, .iframe-modal01 #cboxTopRight, .iframe-modal01 #cboxBottomLeft, .iframe-modal01 #cboxBottomRight, .iframe-modal01 #cboxMiddleLeft, .iframe-modal01 #cboxMiddleRight, .iframe-modal01 #cboxTopCenter, .iframe-modal01 #cboxBottomCenter, .iframe-modal01 #cboxLoadingOverlay, .iframe-modal01 #cboxLoadingGraphic {
  background: none;
}
.iframe-modal01 #cboxLoadedContent {
  margin-bottom: 0;
}
.iframe-modal01 #cboxClose {
  background: none;
  width: 3.6rem;
  height: 3.6rem;
  color: transparent;
}
@media screen and (min-width: 769px) {
  .iframe-modal01 #cboxClose {
    top: -9.5rem;
    right: -21px;
  }
}
@media screen and (max-width: 768px) {
  .iframe-modal01 #cboxClose {
    top: -6.6rem;
    right: 0;
  }
}
.iframe-modal01 #cboxClose::before, .iframe-modal01 #cboxClose::after {
  content: "";
  position: absolute;
  background: #fff;
  border-radius: 0.5rem;
  width: 4.25rem;
  height: 0.5rem;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}
.iframe-modal01 #cboxClose::before {
  transform: rotateZ(45deg);
}
.iframe-modal01 #cboxClose::after {
  transform: rotateZ(-45deg);
}

.facilities-slide#cboxOverlay {
  z-index: 10005;
}
.facilities-slide#colorbox {
  overflow: visible;
  z-index: 10005;
}
.facilities-slide #cboxWrapper {
  overflow: visible;
}
@media screen and (min-width: 769px) {
  .facilities-slide #cboxWrapper {
    background: #fff;
  }
}
.facilities-slide #cboxContent {
  overflow: visible;
}
.facilities-slide #cboxLoadedContent {
  margin-bottom: 0;
}
@media screen and (min-width: 769px) {
  .facilities-slide #cboxLoadedContent {
    padding: 1.9rem 0 1.1rem;
  }
}
.facilities-slide #cboxLoadedContent > div {
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .facilities-slide #cboxLoadedContent > div {
    max-width: 800px;
  }
}
@media screen and (max-width: 768px) {
  .facilities-slide #cboxLoadedContent > div .btns-wrapper:last-child {
    padding-bottom: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .facilities-slide #cboxTopLeft, .facilities-slide #cboxTopRight, .facilities-slide #cboxBottomLeft, .facilities-slide #cboxBottomRight, .facilities-slide #cboxMiddleLeft, .facilities-slide #cboxMiddleRight {
    width: 10px;
  }
}
.facilities-slide #cboxTopLeft, .facilities-slide #cboxTopRight, .facilities-slide #cboxBottomLeft, .facilities-slide #cboxBottomRight, .facilities-slide #cboxMiddleLeft, .facilities-slide #cboxMiddleRight, .facilities-slide #cboxTopCenter, .facilities-slide #cboxBottomCenter, .facilities-slide #cboxLoadingOverlay, .facilities-slide #cboxLoadingGraphic {
  background: none;
}
.facilities-slide #cboxPrevious, .facilities-slide #cboxNext {
  transform: translate(0, -50%);
  border-radius: 50%;
}
@media screen and (min-width: 769px) {
  .facilities-slide #cboxPrevious, .facilities-slide #cboxNext {
    background: #333;
    width: 4rem;
    height: 4rem;
    top: 50%;
  }
}
@media screen and (max-width: 768px) {
  .facilities-slide #cboxPrevious, .facilities-slide #cboxNext {
    background: rgba(51, 51, 51, 0.5);
    width: 4.5rem;
    height: 4.5rem;
    top: 22rem;
  }
}
.facilities-slide #cboxPrevious::after, .facilities-slide #cboxNext::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  .facilities-slide #cboxPrevious::after, .facilities-slide #cboxNext::after {
    border-right: 0.35rem solid #fff;
    border-top: 0.35rem solid #fff;
    width: 0.85rem;
    height: 0.85rem;
  }
}
@media screen and (max-width: 768px) {
  .facilities-slide #cboxPrevious::after, .facilities-slide #cboxNext::after {
    border-right: 0.4rem solid #fff;
    border-top: 0.4rem solid #fff;
    width: 1.2rem;
    height: 1.2rem;
  }
}
@media screen and (min-width: 769px) {
  .facilities-slide #cboxPrevious {
    left: 0;
  }
}
@media screen and (max-width: 768px) {
  .facilities-slide #cboxPrevious {
    left: 1rem;
  }
}
.facilities-slide #cboxPrevious::after {
  left: 0.2rem;
  transform: rotateZ(45deg) scale(-1, -1);
}
.facilities-slide #cboxNext {
  left: auto;
}
@media screen and (min-width: 769px) {
  .facilities-slide #cboxNext {
    right: 0;
  }
}
@media screen and (max-width: 768px) {
  .facilities-slide #cboxNext {
    right: 1rem;
  }
}
.facilities-slide #cboxNext::after {
  right: 0.2rem;
  transform: rotateZ(45deg);
}
.facilities-slide #cboxClose {
  background: none;
  width: 3.6rem;
  height: 3.6rem;
  color: transparent;
}
@media screen and (min-width: 769px) {
  .facilities-slide #cboxClose {
    top: -9.5rem;
    right: -21px;
  }
}
@media screen and (max-width: 768px) {
  .facilities-slide #cboxClose {
    top: -6.6rem;
    right: 0;
  }
}
.facilities-slide #cboxClose::before, .facilities-slide #cboxClose::after {
  content: "";
  position: absolute;
  background: #fff;
  border-radius: 0.5rem;
  width: 4.25rem;
  height: 0.5rem;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}
.facilities-slide #cboxClose::before {
  transform: rotateZ(45deg);
}
.facilities-slide #cboxClose::after {
  transform: rotateZ(-45deg);
}

.nyukai-modal01#cboxOverlay {
  z-index: 10005;
}
.nyukai-modal01#colorbox {
  overflow: visible;
  z-index: 10005;
}
.nyukai-modal01 #cboxWrapper {
  overflow: visible;
}
@media screen and (min-width: 769px) {
  .nyukai-modal01 #cboxWrapper {
    background: #fff6f0;
  }
}
.nyukai-modal01 #cboxContent {
  overflow: visible;
}
.nyukai-modal01 #cboxTopLeft, .nyukai-modal01 #cboxTopRight, .nyukai-modal01 #cboxBottomLeft, .nyukai-modal01 #cboxBottomRight, .nyukai-modal01 #cboxMiddleLeft, .nyukai-modal01 #cboxMiddleRight, .nyukai-modal01 #cboxTopCenter, .nyukai-modal01 #cboxBottomCenter, .nyukai-modal01 #cboxLoadingOverlay, .nyukai-modal01 #cboxLoadingGraphic {
  background: none;
}
.nyukai-modal01 #cboxLoadedContent {
  margin-bottom: 0;
}
.nyukai-modal01 #cboxClose {
  background: none;
  width: 3.6rem;
  height: 3.6rem;
  color: transparent;
}
@media screen and (min-width: 769px) {
  .nyukai-modal01 #cboxClose {
    top: -9.5rem;
    right: -21px;
  }
}
@media screen and (max-width: 768px) {
  .nyukai-modal01 #cboxClose {
    top: -6.6rem;
    right: 0;
  }
}
.nyukai-modal01 #cboxClose::before, .nyukai-modal01 #cboxClose::after {
  content: "";
  position: absolute;
  background: #fff;
  border-radius: 0.5rem;
  width: 4.25rem;
  height: 0.5rem;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}
.nyukai-modal01 #cboxClose::before {
  transform: rotateZ(45deg);
}
.nyukai-modal01 #cboxClose::after {
  transform: rotateZ(-45deg);
}
.nyukai-modal01 .cboxIframe {
  background-color: #fff6f0;
}

html.modal-inner {
  overflow: auto;
}

@media screen and (min-width: 769px) {
  .modal-inner .title-h2 {
    margin-bottom: 3.3rem;
    font-size: 4.4rem !important;
  }
}
@media screen and (max-width: 768px) {
  .modal-inner .title-h2 {
    margin-bottom: 4rem;
    font-size: 4.8rem !important;
  }
}

.modal_item {
  margin: 0 auto;
  border: solid 1px #5a5a5a;
}
@media screen and (min-width: 769px) {
  .modal_item {
    width: 71.501rem;
  }
}
@media screen and (max-width: 768px) {
  .modal_item {
    width: 100%;
  }
}
@media screen and (min-width: 769px) {
  .modal_item + .modal_item {
    margin-top: 2.751rem;
  }
}
@media screen and (max-width: 768px) {
  .modal_item + .modal_item {
    margin-top: 2rem;
  }
}

.modal_title {
  font-weight: 700;
  background-color: #5a5a5a;
  text-align: center;
  color: #fff;
}
@media screen and (min-width: 769px) {
  .modal_title {
    padding: 1.65rem;
    line-height: 1.201em;
    font-size: 2.2rem;
  }
  .modal_title > h3 {
    line-height: inherit;
    font: inherit;
  }
  .modal_title > h3:first-of-type {
    margin-top: -0.1em;
  }
  .modal_title > h3:last-of-type {
    margin-bottom: -0.1em;
  }
}
@media screen and (max-width: 768px) {
  .modal_title {
    padding: 3rem;
    line-height: 1.375em;
    font-size: 3.2rem;
  }
  .modal_title > h3 {
    line-height: inherit;
    font: inherit;
  }
  .modal_title > h3:first-of-type {
    margin-top: -0.187em;
  }
  .modal_title > h3:last-of-type {
    margin-bottom: -0.187em;
  }
}

.modal_cont {
  background-color: #fff;
}
@media screen and (min-width: 769px) {
  .modal_cont {
    padding: 2.2rem;
  }
}
@media screen and (max-width: 768px) {
  .modal_cont {
    padding: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .modal_cont .web_link {
    width: 35.2rem;
    padding-top: 2.2rem;
    padding-bottom: 2.2rem;
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 768px) {
  .modal_cont .web_link {
    width: 59rem;
    padding-top: 4.5rem;
    padding-bottom: 4.5rem;
    font-size: 3.2rem;
  }
}

@media screen and (min-width: 769px) {
  .modal_txt {
    line-height: 2.5em;
    font-size: 1.321rem;
    text-align: center;
  }
  .modal_txt > p {
    line-height: inherit;
    font: inherit;
  }
  .modal_txt > p:first-of-type {
    margin-top: -0.749em;
  }
  .modal_txt > p:last-of-type {
    margin-bottom: -0.749em;
  }
}
@media screen and (max-width: 768px) {
  .modal_txt {
    line-height: 1.667em;
    font-size: 2.4rem;
  }
  .modal_txt > p {
    line-height: inherit;
    font: inherit;
  }
  .modal_txt > p:first-of-type {
    margin-top: -0.333em;
  }
  .modal_txt > p:last-of-type {
    margin-bottom: -0.333em;
  }
}

.modal_tenpo {
  display: flex;
  flex-wrap: wrap;
}
@media screen and (min-width: 769px) {
  .modal_tenpo {
    gap: 2.2rem;
    margin-top: 2.2rem;
  }
}
@media screen and (max-width: 768px) {
  .modal_tenpo {
    flex-direction: column;
    gap: 2.751rem;
    margin-top: 4rem;
  }
}

.modal_tenpo_area_name {
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .modal_tenpo_area_name {
    margin-bottom: 1.1rem;
    line-height: 2.425em;
    font-size: 1.321rem;
  }
  .modal_tenpo_area_name > p {
    line-height: inherit;
    font: inherit;
  }
  .modal_tenpo_area_name > p:first-of-type {
    margin-top: -0.712em;
  }
  .modal_tenpo_area_name > p:last-of-type {
    margin-bottom: -0.712em;
  }
}
@media screen and (max-width: 768px) {
  .modal_tenpo_area_name {
    margin-bottom: 2rem;
    line-height: 1.334em;
    font-size: 2.4rem;
  }
  .modal_tenpo_area_name > p {
    line-height: inherit;
    font: inherit;
  }
  .modal_tenpo_area_name > p:first-of-type {
    margin-top: -0.166em;
  }
  .modal_tenpo_area_name > p:last-of-type {
    margin-bottom: -0.166em;
  }
}

.modal_tenpo_item_wrap {
  display: flex;
}
@media screen and (min-width: 769px) {
  .modal_tenpo_item_wrap {
    gap: 1.1rem;
  }
}
@media screen and (max-width: 768px) {
  .modal_tenpo_item_wrap {
    gap: 2rem;
  }
}

.modal_tenpo_item_link {
  position: relative;
  display: flex;
}
.modal_tenpo_item_link::after {
  position: absolute;
  content: "";
  clip-path: polygon(0 100%, 100% 100%, 100% 0);
  background-color: #fff;
}
@media screen and (min-width: 769px) {
  .modal_tenpo_item_link::after {
    right: 0.55rem;
    bottom: 0.55rem;
    width: 0.88rem;
    height: 0.88rem;
  }
}
@media screen and (max-width: 768px) {
  .modal_tenpo_item_link::after {
    right: 0.7rem;
    bottom: 0.7rem;
    width: 1.2rem;
    height: 1.2rem;
  }
}
.modal_tenpo_item_link > figure {
  flex-shrink: 0;
}
@media screen and (min-width: 769px) {
  .modal_tenpo_item_link > figure {
    width: 8.8rem;
  }
}
@media screen and (max-width: 768px) {
  .modal_tenpo_item_link > figure {
    width: 12rem;
  }
}

.modal_tenpo_item_cont {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background-color: #dcdcdc;
}
@media screen and (min-width: 769px) {
  .modal_tenpo_item_cont {
    width: 12.101rem;
  }
}
@media screen and (max-width: 768px) {
  .modal_tenpo_item_cont {
    width: 16.5rem;
  }
}

.modal_tenpo_badge {
  color: #fff;
  background-color: #ff6700;
}
@media screen and (min-width: 769px) {
  .modal_tenpo_badge {
    margin-bottom: 0.55rem;
    padding: 0.11rem 0.55rem;
    line-height: 1em;
    font-size: 1.1rem;
  }
}
@media screen and (max-width: 768px) {
  .modal_tenpo_badge {
    margin-bottom: 0.4rem;
    padding: 0.5rem 0.6rem 0;
    line-height: 1em;
    font-size: 1.8rem;
  }
}

.modal_tenpo_name {
  text-align: center;
}
@media screen and (min-width: 769px) {
  .modal_tenpo_name {
    line-height: 1.5em;
    font-size: 1.321rem;
  }
}
@media screen and (max-width: 768px) {
  .modal_tenpo_name {
    line-height: 1.5em;
    font-size: 2rem;
  }
}

.club-modal#cboxOverlay {
  z-index: 10005;
}
.club-modal#colorbox {
  overflow: visible;
  z-index: 10005;
}
.club-modal #cboxWrapper {
  overflow: visible;
}
.club-modal #cboxContent {
  overflow: visible;
}
.club-modal #cboxTopLeft, .club-modal #cboxTopRight, .club-modal #cboxBottomLeft, .club-modal #cboxBottomRight, .club-modal #cboxMiddleLeft, .club-modal #cboxMiddleRight, .club-modal #cboxTopCenter, .club-modal #cboxBottomCenter, .club-modal #cboxLoadingOverlay, .club-modal #cboxLoadingGraphic {
  background: none;
}
.club-modal #cboxLoadedContent {
  margin-bottom: 0;
}
.club-modal #cboxClose {
  background: none;
  width: 3.6rem;
  height: 3.6rem;
  color: transparent;
}
@media screen and (min-width: 769px) {
  .club-modal #cboxClose {
    top: -4.5rem;
    right: 0;
  }
}
@media screen and (max-width: 768px) {
  .club-modal #cboxClose {
    top: -6.6rem;
    right: 0;
  }
}
.club-modal #cboxClose::before, .club-modal #cboxClose::after {
  content: "";
  position: absolute;
  background: #fff;
  border-radius: 0.5rem;
  width: 4.25rem;
  height: 0.5rem;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}
.club-modal #cboxClose::before {
  transform: rotateZ(45deg);
}
.club-modal #cboxClose::after {
  transform: rotateZ(-45deg);
}
.club-modal.savas .cboxIframe {
  background-color: #fff6f0;
}
.club-modal.central .cboxIframe {
  background-color: #e6f1fc;
}
.club-modal .modal_item {
  border: none;
}
@media screen and (min-width: 769px) {
  .club-modal .modal_item {
    width: 107.8rem;
  }
}
@media screen and (max-width: 768px) {
  .club-modal .modal_item {
    width: 67rem;
  }
}
.club-modal .modal_cont {
  padding: 0;
  background-color: transparent;
}
@media screen and (min-width: 769px) {
  .club-modal .modal_cont {
    margin-top: 2.2rem;
  }
}
@media screen and (max-width: 768px) {
  .club-modal .modal_cont {
    margin-top: 11rem;
  }
}
@media screen and (min-width: 769px) {
  .club-modal .modal_tenpo {
    gap: 3.3rem 0.99rem;
  }
}
@media screen and (max-width: 768px) {
  .club-modal .modal_tenpo {
    flex-direction: row;
    gap: 6rem 3rem;
  }
}
@media screen and (min-width: 769px) {
  .club-modal .modal_tenpo_area_name {
    margin-bottom: 1.1rem;
    line-height: 2.182em;
    font-size: 2.2rem;
  }
  .club-modal .modal_tenpo_area_name > p {
    line-height: inherit;
    font: inherit;
  }
  .club-modal .modal_tenpo_area_name > p:first-of-type {
    margin-top: -0.59em;
  }
  .club-modal .modal_tenpo_area_name > p:last-of-type {
    margin-bottom: -0.59em;
  }
}
@media screen and (max-width: 768px) {
  .club-modal .modal_tenpo_area_name {
    margin-bottom: 2rem;
    line-height: 0.8em;
    font-size: 4rem;
  }
  .club-modal .modal_tenpo_area_name > p {
    line-height: inherit;
    font: inherit;
  }
  .club-modal .modal_tenpo_area_name > p:first-of-type {
    margin-top: 0.1em;
  }
  .club-modal .modal_tenpo_area_name > p:last-of-type {
    margin-bottom: 0.1em;
  }
}
.club-modal .modal_tenpo_item_wrap {
  display: flex;
  flex-wrap: wrap;
}
@media screen and (min-width: 769px) {
  .club-modal .modal_tenpo_item_wrap {
    gap: 0.99rem;
  }
}
@media screen and (max-width: 768px) {
  .club-modal .modal_tenpo_item_wrap {
    gap: 3rem;
  }
}
.club-modal .club_contents {
  background-color: #fff;
  margin-bottom: 0;
  position: relative;
}
@media screen and (min-width: 769px) {
  .club-modal .club_contents {
    width: 26.18rem;
  }
}
@media screen and (max-width: 768px) {
  .club-modal .club_contents {
    width: 32rem;
  }
}
.club-modal .club_contents::before {
  content: "";
  display: inline-block;
  box-sizing: border-box;
  position: absolute;
  transform: rotate(225deg);
}
@media screen and (min-width: 769px) {
  .club-modal .club_contents::before {
    width: 2.2rem;
    height: 2.2rem;
    border: 2.2rem solid transparent;
    border-left: 2.2rem solid #e6e6e3;
    top: -1.32rem;
    left: -1.32rem;
  }
}
@media screen and (max-width: 768px) {
  .club-modal .club_contents::before {
    width: 2.6rem;
    height: 2.6rem;
    border: 2.6rem solid transparent;
    border-left: 2.6rem solid #e6e6e3;
    top: 0;
    left: -1rem;
  }
}
.club-modal .club_contents .place {
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .club-modal .club_contents .place {
    padding: 2.2rem 3.3rem 1.1rem;
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 768px) {
  .club-modal .club_contents .place {
    padding: 5rem 2rem 2rem;
    font-size: 4rem;
  }
}
.club-modal .club_contents p {
  font-weight: 600;
}
@media screen and (min-width: 769px) {
  .club-modal .club_contents p {
    padding: 2.2rem 3.3rem;
    font-size: 1.76rem;
    line-height: 1.5em;
  }
}
@media screen and (max-width: 768px) {
  .club-modal .club_contents p {
    padding: 5rem 2rem;
    font-size: 3rem;
    line-height: 1.6em;
  }
}
.club-modal .club_contents p span {
  font-size: 1.5rem;
  padding-bottom: 0.5rem;
  display: block;
}
@media screen and (min-width: 769px) {
  .club-modal .club_contents p.arrow::after {
    right: 1.1rem;
  }
}
@media screen and (max-width: 768px) {
  .club-modal .club_contents p.arrow::after {
    right: 2rem;
  }
}
.club-modal .club_contents img {
  display: block;
  margin: auto;
}
@media screen and (min-width: 769px) {
  .club-modal .club_contents img {
    width: 24.421rem;
  }
}
@media screen and (max-width: 768px) {
  .club-modal .club_contents img {
    width: 28rem;
  }
}
.club-modal .club_contents.last {
  width: 100%;
  margin-top: 6rem;
  margin-bottom: 0;
}
.club-modal .club_contents.last img {
  width: 100%;
}
.club-modal .club_contents.last p {
  text-align: left;
  padding-left: 6rem;
}
.club-modal .club_contents.last p span {
  padding-bottom: 0;
  font-size: 2.4rem;
  line-height: 1.5em;
}
.club-modal .club_contents.last p.arrow::after {
  right: 2rem;
}
.club-modal .club_contents.last::before {
  content: none;
}
.club-modal .club_contents.last a {
  display: flex;
  align-items: center;
}
.club-modal .club_contents.last a figure {
  width: 26.6rem;
}
.club-modal .club_contents.last a .name {
  flex-grow: 1;
}
.club-modal.--savas {
  background: #fff6f0;
}
@media screen and (min-width: 769px) {
  .club-modal.--savas .modal_logo_club {
    width: 16.94rem;
  }
}
@media screen and (max-width: 768px) {
  .club-modal.--savas .modal_logo_club {
    width: 30.2rem;
  }
}
.club-modal.--central {
  background: #e6f1fc;
}
@media screen and (min-width: 769px) {
  .club-modal.--central .modal_logo_club {
    width: 31.68rem;
  }
}
@media screen and (max-width: 768px) {
  .club-modal.--central .modal_logo_club {
    width: 57.5rem;
  }
}

html {
  width: 100%;
  margin: 0 auto;
  font-size: 0.6666666667vw;
  color: #333333;
  overflow-y: scroll;
}
@media screen and (max-width: 768px) {
  html {
    min-width: 100%;
    font-size: 1.3333333333vw;
  }
}
@media screen and (min-width: 1441px) {
  html {
    font-size: 62.5%;
  }
}

body {
  font-family: Noto Sans JP, sans-serif, serif;
  position: relative;
  font-weight: 500;
  width: 100%;
  overflow-x: hidden;
}
body > * {
  box-sizing: border-box;
}
body.fixed {
  overflow: hidden;
}

a {
  color: inherit;
  text-decoration: none;
}
a:hover {
  opacity: 0.8;
}

header {
  position: relative;
  width: 100%;
  z-index: 4;
}
header .inner {
  max-width: 1440px;
  width: 93.5%;
  margin: 0 auto;
}
@media screen and (max-width: 1024px) {
  header .inner {
    width: 95%;
  }
}
header h1.logo {
  width: 19.7rem;
  margin-right: 7rem;
}
header .outsideLink {
  display: flex;
  justify-content: flex-end;
}
header .outsideLink > ul {
  display: flex;
  font-size: 1.4rem;
  padding: 0 1.6rem;
}
header .outsideLink > ul li {
  padding: 1.9rem 0;
  list-style: none;
}
header .outsideLink > ul li + li {
  margin-left: 2.5rem;
}
header .outsideLink > ul a {
  text-decoration: none;
}
header .outsideLink > ul li:last-of-type {
  position: relative;
  padding-left: 1.563em;
}
header .outsideLink > ul li:last-of-type::before {
  content: "";
  display: inline-block;
  width: 1px;
  height: 1.5em;
  background-color: #000;
  position: absolute;
  top: 50%;
  left: 2%;
  transform: translate(-50%, -50%);
}
header .gNav_wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 1.2rem;
}
header .gNav_wrapper .gNav {
  border-radius: 1.5rem 0 0 1.5rem;
  padding: 0 3.5rem 0 4.5rem;
  background-color: #fff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}
header .gNav_wrapper .gNav ul {
  display: flex;
  align-items: center;
  margin-left: 20rem;
}
header .gNav_wrapper .gNav ul li + li {
  margin-left: 6rem;
}
header .gNav_wrapper .gNav ul a {
  color: #333333;
  text-decoration: none;
  font-size: 1.6rem;
  line-height: 2.5rem;
}
header .gNav_wrapper .gNav ul li.headernav_parent-ac {
  font-size: 1.6rem;
  position: static;
  cursor: pointer;
}
header .gNav_wrapper .gNav ul li.headernav_parent-ac p.arrow.anchor::after {
  bottom: 0.3em;
}
header .gNav_wrapper .gNav ul li.headernav_parent-ac:hover ul.headernav_child-ac {
  bottom: -6rem;
  visibility: visible;
  opacity: 1;
}
header .gNav_wrapper .gNav ul li.headernav_parent-ac:hover p.arrow.anchor::after {
  transform: rotate(-45deg);
  bottom: -0.1em;
}
header .gNav_wrapper .gNav ul ul.headernav_child-ac {
  margin-left: 0;
  z-index: -1;
  left: 0;
  right: 0;
  height: 6rem;
  visibility: hidden;
  opacity: 0;
  position: absolute;
  bottom: 0;
  background: #fff;
  transition: all 0.2s ease;
  border-bottom: 1px solid #000;
}
header .gNav_wrapper .gNav ul ul.headernav_child-ac > div {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}
header .gNav_wrapper .gNav ul ul.headernav_child-ac > div li + li {
  margin-left: 10rem;
}
header .gNav_wrapper > div {
  font-weight: bold;
  font-size: 1.6rem;
}
header .gNav_wrapper > div a {
  color: #fff;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}
header .gNav_wrapper > div.web {
  width: 22rem;
  background-color: #f03264;
  line-height: 4rem;
  margin-left: 10rem;
}
header .gNav_wrapper > div.kids {
  width: 18rem;
  background-color: #00baea;
  border-radius: 3rem;
  padding: 0.8rem 0;
  margin-left: 3rem;
}
header .gNav_wrapper > div.kids.arrow::after {
  right: 1.5rem;
  border-top: 0.3rem solid #fff;
  border-right: 0.3rem solid #fff;
}
header .burger-btn {
  position: fixed;
  width: 8vw;
  max-width: 115px;
  top: 0;
  right: 0;
  box-shadow: 0 -3px 40px rgba(0, 0, 0, 0.23);
  cursor: pointer;
  opacity: 0;
  transition: 0.3s;
  z-index: -1;
}
header .burger-btn.active {
  z-index: 10001;
  opacity: 1;
  transition: 0.3s;
}
header .burger-btn.close {
  transition: 0s;
  opacity: 1;
  z-index: 3;
  background-image: url(../../common/img/close.png);
  background-size: contain;
}
header .burger-btn.close img {
  opacity: 0;
}
@media screen and (max-width: 768px) {
  header .burger-btn {
    width: 10rem;
    opacity: 1;
    z-index: 10001;
  }
}
header .nav-wrapper {
  position: fixed;
  display: none;
  width: 100vw;
  height: 100vh;
  top: 0;
  right: 0;
  z-index: 2;
}
header .nav-wrapper .header-nav {
  overflow-y: scroll;
  position: relative;
  background-color: #b8b8af;
  -ms-overflow-style: none; /* IE, Edge 対応 */
  scrollbar-width: none; /* Firefox 対応 */
}
header .nav-wrapper .header-nav::-webkit-scrollbar { /* Chrome, Safari 対応 */
  display: none;
}
header .nav-wrapper .header-nav .header-nav-top {
  z-index: 1;
  height: 10rem;
  padding: 0 3.5rem 0 4.5rem;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  position: absolute;
  max-width: 1300px;
  width: 90%;
  top: 3%;
  left: 50%;
  transform: translate(-50%, 0);
}
header .nav-wrapper .header-nav .header-nav-top .burger-btn-close {
  width: 4rem;
  height: 4rem;
}
header .nav-wrapper .header-nav .header-nav-main {
  max-width: 142rem;
  background-color: #fff;
  margin: 2.5rem auto;
}
header .nav-wrapper .header-nav .header-nav-main .inner {
  max-width: 100rem;
  display: flex;
  margin: auto;
  padding: 10rem 0 5rem;
}
header .nav-wrapper .header-nav .header-nav-main .inner > ul {
  width: 29%;
}
header .nav-wrapper .header-nav .header-nav-main .inner > ul + ul {
  margin-left: 4rem;
}
header .nav-wrapper .header-nav .header-nav-main .inner > ul ul {
  border-top: 0.2rem solid #e6e6e3;
  background-color: #f5f5f4;
  padding: 2rem;
  border-top: none;
  margin-top: 3rem;
}
header .nav-wrapper .header-nav .header-nav-main .inner > ul ul li {
  background-color: #fff;
  border: none;
  border-radius: 1rem;
  padding: 1.5rem 0;
  border-bottom: 0.2rem solid #e6e6e3;
}
header .nav-wrapper .header-nav .header-nav-main .inner > ul ul li + li {
  margin-top: 1rem;
  border-top: none;
}
@media screen and (max-width: 768px) {
  header .nav-wrapper .header-nav .header-nav-main .inner > ul ul li:last-of-type {
    border: none;
  }
}
header .nav-wrapper .header-nav .header-nav-main .inner > ul ul li a {
  font-size: 1.6rem;
  padding: 0 1rem;
}
header .nav-wrapper .header-nav .header-nav-main .inner > ul ul li a::after {
  border-top: 0.4rem solid #000;
  border-right: 0.4rem solid #000;
  right: 1rem;
  width: 0.6rem;
  height: 0.6rem;
}
header .nav-wrapper .header-nav .header-nav-main .inner > ul li {
  padding: 3rem 0;
  position: relative;
}
header .nav-wrapper .header-nav .header-nav-main .inner > ul li + li {
  border-top: 0.2rem solid #e6e6e3;
}
header .nav-wrapper .header-nav .header-nav-main .inner > ul li:last-of-type {
  border-bottom: 0.2rem solid #e6e6e3;
}
header .nav-wrapper .header-nav .header-nav-main .inner > ul li.kids {
  padding: 1rem 0;
  border-bottom: none;
}
header .nav-wrapper .header-nav .header-nav-main .inner > ul li.kids a {
  background-color: #00baea;
  color: #fff;
  padding: 1.8rem;
  width: 80%;
  border-radius: 5rem;
  text-align: center;
}
header .nav-wrapper .header-nav .header-nav-main .inner > ul li.kids a::after {
  border-top: 0.5rem solid #fff;
  border-right: 0.5rem solid #fff;
  right: 2rem;
}
header .nav-wrapper .header-nav .header-nav-main .inner > ul li a {
  font-size: 2.2rem;
  font-weight: 700;
  color: #000;
  display: block;
  line-height: 1.5;
}
header .nav-wrapper .header-nav .header-nav-main .inner > ul li a::after {
  border-top: 0.5rem solid #000;
  border-right: 0.5rem solid #000;
  left: auto;
  right: 0;
  width: 0.8rem;
  height: 0.8rem;
}
header .nav-wrapper .header-nav .header-nav-main .inner > ul li a.ac-parent_all::before {
  content: "";
  position: absolute;
  background: #333;
  width: 0.157em;
  height: 0.657em;
  right: 0.25em;
  top: 0;
  bottom: 0;
  margin: auto 0;
}
header .nav-wrapper .header-nav .header-nav-main .inner > ul li a.ac-parent_all::after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto 0;
  background: #333;
  border: none;
  width: 0.657em;
  height: 0.157em;
  transform: none;
}
header .nav-wrapper .header-nav .header-nav-main .inner > ul li a.ac-parent_all.active::before {
  display: none;
}
header .nav-wrapper .header-nav .header-nav-main .other_link {
  padding-bottom: 3rem;
}
header .nav-wrapper .header-nav .header-nav-main .other_link ul {
  display: flex;
}
header .nav-wrapper .header-nav .header-nav-main .other_link ul li a {
  font-size: 1.4rem;
}
header .nav-wrapper .header-nav .header-nav-main .other_link ul li + li {
  margin-left: 5rem;
}
header .nav-wrapper .header-nav .header-nav-main .other_link.contact ul {
  display: flex;
  justify-content: center;
}
header .nav-wrapper .header-nav .header-nav-main .other_link.contact ul li {
  margin-left: 5rem;
}
header .nav-wrapper .header-nav .header-nav-main .other_link.contact ul li + li {
  margin-top: 0;
  margin-left: 6rem;
}
header .nav-wrapper .header-nav .header-nav-bottom {
  padding-bottom: 1rem;
  position: relative;
}
header .nav-wrapper .header-nav .header-nav-bottom form.search {
  width: 70rem;
  max-width: 700px;
  margin: auto;
  position: relative;
}
header .nav-wrapper .header-nav .header-nav-bottom form.search input {
  font-size: 2rem;
  height: 6rem;
  border-radius: 50px;
  width: 100%;
  padding-left: 5rem;
  border: none;
  background-color: #fff;
}
header .nav-wrapper .header-nav .header-nav-bottom form.search::after {
  width: 1.7rem;
  height: 1.7rem;
  right: 2rem;
  content: "";
  display: inline-block;
  background-image: url(../img/search_black.svg);
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}
.savas-top header .utility {
  display: none;
}
@media screen and (max-width: 768px) {
  header {
    position: relative;
  }
  header .inner {
    width: 100%;
  }
  header .inner .gNav_wrapper {
    padding: 1.5rem 0;
  }
  header .inner .gNav_wrapper .gNav {
    width: 100%;
    border-radius: 0;
    height: 7rem;
  }
  header .nav-wrapper .header-nav {
    height: 100vh;
  }
  header .nav-wrapper .header-nav .header-nav-top {
    background-color: #fff;
    top: 0;
    position: relative;
    left: 0;
    transform: translate(0, 0);
    width: auto;
  }
  header .nav-wrapper .header-nav .header-nav-main {
    background-color: #b8b8af;
    padding: 8rem 0 3rem;
    border-radius: 0;
    margin: 0 auto;
  }
  header .nav-wrapper .header-nav .header-nav-main .inner {
    max-width: 67rem;
    margin: auto;
    background-color: #fff;
    display: block;
    padding: 0;
  }
  header .nav-wrapper .header-nav .header-nav-main .inner > ul {
    display: block;
    width: 100%;
  }
  header .nav-wrapper .header-nav .header-nav-main .inner > ul + ul {
    margin: 0;
  }
  header .nav-wrapper .header-nav .header-nav-main .inner > ul li {
    padding: 5rem;
    position: relative;
  }
  header .nav-wrapper .header-nav .header-nav-main .inner > ul li + li {
    border-top: 0.2rem solid #e6e6e3;
  }
  header .nav-wrapper .header-nav .header-nav-main .inner > ul li a {
    font-size: 3.2rem;
    font-weight: 700;
    color: #000;
    display: block;
  }
  header .nav-wrapper .header-nav .header-nav-main .inner > ul li a::after {
    border-top: 0.5rem solid #000;
    border-right: 0.5rem solid #000;
    left: auto;
    right: 0;
    width: 0.8rem;
    height: 0.8rem;
  }
  header .nav-wrapper .header-nav .header-nav-main .inner > ul li.kids {
    background: none;
  }
  header .nav-wrapper .header-nav .header-nav-main .inner > ul li.kids a {
    font-size: 3.4rem;
    padding: 2.5rem 0;
    width: 100%;
  }
  header .nav-wrapper .header-nav .header-nav-main .inner > ul li.kids a::after {
    right: 4.7rem;
  }
  header .nav-wrapper .header-nav .header-nav-main .inner > ul ul {
    max-width: 59rem;
    margin: 0 auto 4rem;
    border: none;
    padding: 0;
    background: none;
  }
  header .nav-wrapper .header-nav .header-nav-main .inner > ul ul li {
    background-color: #f5f5f4;
    border-radius: 0;
    padding: 2.5rem 5rem;
    margin-top: 1rem;
  }
  header .nav-wrapper .header-nav .header-nav-main .inner > ul ul li a {
    font-size: 2.8rem;
    font-weight: 500;
    line-height: 3.9rem;
  }
  header .nav-wrapper .header-nav .header-nav-main .inner > ul ul li a::after {
    width: 0.8rem;
    height: 0.8rem;
    right: -0.4rem;
  }
  header .nav-wrapper .header-nav .header-nav-main .inner > ul ul li:first-of-type {
    margin-top: 0;
  }
  header .nav-wrapper .header-nav .header-nav-main .inner > ul ul li + li {
    border: none;
    margin-top: 1rem;
  }
  header .nav-wrapper .header-nav .header-nav-main .inner > ul ul ul.ac-child_all {
    display: none;
    background-color: #f5f5f4;
    margin: 0 auto 1rem;
  }
  header .nav-wrapper .header-nav .header-nav-main .inner > ul ul ul.ac-child_all .inner {
    background: none;
    padding-bottom: 4rem;
  }
  header .nav-wrapper .header-nav .header-nav-main .inner > ul ul ul.ac-child_all .inner li {
    background-color: #fff;
    width: 65%;
    margin: auto;
    border: 1px solid #dcdcdc;
  }
  header .nav-wrapper .header-nav .header-nav-main .inner > ul ul ul.ac-child_all .inner li + li {
    margin-top: 1rem;
  }
  header .nav-wrapper .header-nav .header-nav-bottom {
    padding-bottom: 25rem;
    max-width: 67rem;
    margin: auto;
  }
  header .nav-wrapper .header-nav .header-nav-bottom .inner {
    position: relative;
    top: auto;
    display: block;
  }
  header .nav-wrapper .header-nav .header-nav-bottom .other_link ul {
    font-size: 2.8rem;
    display: flex;
    flex-wrap: wrap;
  }
  header .nav-wrapper .header-nav .header-nav-bottom .other_link ul li {
    width: 50%;
  }
  header .nav-wrapper .header-nav .header-nav-bottom .other_link ul li a {
    padding: 3rem;
    display: block;
  }
  header .nav-wrapper .header-nav .header-nav-bottom .other_link ul li.arrow::after {
    right: 5rem;
  }
  header .nav-wrapper .header-nav .header-nav-bottom .other_link ul + ul {
    justify-content: center;
    margin: 1rem 0 4rem;
  }
  header .nav-wrapper .header-nav .header-nav-bottom .other_link ul + ul li {
    width: auto;
  }
  header .nav-wrapper .header-nav .header-nav-bottom .other_link ul + ul li + li {
    margin-left: 3rem;
  }
  header h1.logo {
    width: 20.9rem;
  }
}

footer {
  position: relative;
  padding-bottom: 4.5vw;
}
@media screen and (max-width: 768px) {
  footer {
    padding-bottom: 12.5vw;
  }
}
footer #page_top {
  position: fixed;
  width: 2.8vw;
  bottom: 15%;
  right: 3%;
  z-index: 3;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  footer #page_top {
    width: 4rem;
    height: 4rem;
  }
}
@media screen and (max-width: 768px) {
  footer #page_top {
    width: 8rem;
    height: 8rem;
  }
}
footer #page_top > a {
  display: block;
  background: #000;
  border: 2px solid;
  border-radius: 50%;
  width: 100%;
  height: 100%;
  color: #fff;
  box-sizing: border-box;
  text-decoration: none;
}
footer #page_top > a:hover {
  opacity: 0.5;
  text-decoration: none;
}
footer #page_top > a::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  top: 10%;
  bottom: 0;
  margin: auto;
  transform: rotateZ(45deg);
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  footer #page_top > a::after {
    border-left: 0.3rem solid;
    border-top: 0.3rem solid;
    width: 0.9rem;
    height: 0.9rem;
  }
}
@media screen and (max-width: 768px) {
  footer #page_top > a::after {
    border-left: 0.55rem solid;
    border-top: 0.55rem solid;
    width: 1.6rem;
    height: 1.6rem;
  }
}
footer .footer_wrapper .footer_top {
  border-top: 1px solid #e4ebf2;
  padding: 6rem 0;
}
@media screen and (max-width: 768px) {
  footer .footer_wrapper .footer_top {
    padding: 3rem 0;
  }
}
footer .footer_wrapper .footer_top .menu {
  width: 90%;
  margin: auto;
  background-color: #fff;
  border-radius: 2rem;
  max-width: 1440px;
  margin: auto;
}
footer .footer_wrapper .footer_top .menu .inner {
  display: flex;
  justify-content: space-between;
  padding: 4rem 0;
}
@media screen and (min-width: 769px) {
  footer .footer_wrapper .footer_top .menu .inner {
    width: 114rem;
    margin: 0 auto;
  }
}
footer .footer_wrapper .footer_top .menu .menu_l table tr:first-of-type td {
  padding-top: 0;
}
footer .footer_wrapper .footer_top .menu .menu_l table tr td {
  padding-top: 3rem;
}
footer .footer_wrapper .footer_top .menu .menu_l table tr td ul tr td + td {
  padding-left: 8rem;
}
footer .footer_wrapper .footer_top .menu .menu_l table tr td ul li a {
  color: #000;
  font-size: 1.8rem;
  font-weight: 700;
}
footer .footer_wrapper .footer_top .menu .menu_l table tr td ul li a::after {
  width: 0.6rem;
  height: 0.6rem;
  left: -3rem;
  right: auto;
  border-top: 0.3rem solid #fff;
  border-right: 0.3rem solid #fff;
}
footer .footer_wrapper .footer_top .menu .menu_l table tr td ul li a::before {
  background-color: #000;
  left: -3.5rem;
  right: auto;
}
footer .footer_wrapper .footer_top .menu .menu_l table tr td ul ul {
  padding-left: 3em;
}
footer .footer_wrapper .footer_top .menu .menu_l table tr td ul ul li {
  padding-top: 2rem;
}
footer .footer_wrapper .footer_top .menu .menu_l table tr td ul ul li a {
  font-size: 1.4rem;
  line-height: 2.5rem;
}
footer .footer_wrapper .footer_top .menu .menu_l table tr td ul ul li a::after {
  border-top: 0.3rem solid #000;
  border-right: 0.3rem solid #000;
}
footer .footer_wrapper .footer_top .menu .menu_l table tr td ul ul li ul {
  padding-left: 0;
}
footer .footer_wrapper .footer_top .menu .menu_l table tr td ul ul li ul ul li a {
  font-size: 1.2rem;
  font-weight: 500;
  padding-left: 2em;
}
footer .footer_wrapper .footer_top .menu .menu_l table tr td ul ul li ul ul li a::after {
  content: none;
}
footer .footer_wrapper .footer_top .menu .menu_l table tr td + td {
  padding-left: 12rem;
}
@media screen and (max-width: 768px) {
  footer .footer_wrapper .footer_top .menu {
    display: block;
  }
}
footer .footer_wrapper .footer_bottom {
  border-top: 1px solid #e4ebf2;
}
footer .footer_wrapper .footer_bottom .inner {
  width: 75%;
  max-width: 1440px;
  margin: auto;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 1024px) {
  footer .footer_wrapper .footer_bottom .inner {
    width: 85%;
  }
}
footer .footer_wrapper .footer_bottom .submenu {
  padding: 4rem 0;
}
footer .footer_wrapper .footer_bottom .submenu ul {
  display: flex;
}
footer .footer_wrapper .footer_bottom .submenu ul li + li {
  margin-left: 8rem;
}
footer .footer_wrapper .footer_bottom .submenu ul a {
  font-size: 1.4rem;
  line-height: 2.5rem;
}
footer .footer_wrapper .footer_bottom .policy {
  padding: 1.5rem 0;
  border-top: 1px solid #e4ebf2;
}
footer .footer_wrapper .footer_bottom .policy .inner {
  display: flex;
  justify-content: space-between;
}
footer .footer_wrapper .footer_bottom .policy .inner a {
  font-size: 1.2rem;
}
footer .footer_wrapper .footer_bottom .policy .inner p {
  font-size: 0.9rem;
}
@media screen and (max-width: 768px) {
  footer .footer_wrapper .footer_top .menu {
    max-width: 67rem;
  }
  footer .footer_wrapper .footer_top .menu .inner {
    display: block;
    padding: 0;
  }
  footer .footer_wrapper .footer_top .menu .menu_l {
    padding: 0;
  }
  footer .footer_wrapper .footer_top .menu .menu_l table {
    width: 100%;
  }
  footer .footer_wrapper .footer_top .menu .menu_l table tr td {
    width: 100%;
    display: block;
    padding: 0;
    border-bottom: 0.2rem solid rgba(13, 95, 175, 0.2);
  }
  footer .footer_wrapper .footer_top .menu .menu_l table tr td.last {
    border-bottom: 0.2rem solid rgba(13, 95, 175, 0.2);
  }
  footer .footer_wrapper .footer_top .menu .menu_l table tr td ul li {
    padding: 5rem;
  }
  footer .footer_wrapper .footer_top .menu .menu_l table tr td ul li a {
    font-size: 3.2rem;
    display: block;
  }
  footer .footer_wrapper .footer_top .menu .menu_l table tr td ul li a::before {
    content: none;
  }
  footer .footer_wrapper .footer_top .menu .menu_l table tr td ul li a::after {
    border-top: 0.5rem solid #000;
    border-right: 0.5rem solid #000;
    left: auto;
    right: 0;
    width: 1rem;
    height: 1rem;
  }
  footer .footer_wrapper .footer_top .menu .menu_l table tr td ul ul {
    padding-left: 0;
    padding-bottom: 4rem;
  }
  footer .footer_wrapper .footer_top .menu .menu_l table tr td ul ul tr:first-of-type td {
    padding: 0;
    border-top: none;
  }
  footer .footer_wrapper .footer_top .menu .menu_l table tr td ul ul li {
    padding: 0;
    max-width: 59rem;
    margin: auto;
  }
  footer .footer_wrapper .footer_top .menu .menu_l table tr td ul ul li a {
    display: block;
    padding: 3.5rem;
    margin-bottom: 1rem;
    background-color: #f5f5f4;
    border-radius: 1.5rem;
    font-size: 2.8rem;
  }
  footer .footer_wrapper .footer_top .menu .menu_l table tr td ul ul li a::after {
    left: auto;
    right: 3rem;
    border-top: 0.5rem solid #000;
    border-right: 0.5rem solid #000;
  }
  footer .footer_wrapper .footer_top .menu .menu_l table tr td ul ul li ul {
    background-color: #f5f5f4;
    border-radius: 1.5rem;
    margin-bottom: 1rem;
    padding-bottom: 1rem;
  }
  footer .footer_wrapper .footer_top .menu .menu_l table tr td ul ul li ul ul li {
    max-width: 51rem;
  }
  footer .footer_wrapper .footer_top .menu .menu_l table tr td ul ul li ul ul li a {
    background-color: #fff;
    border: 0.2rem solid #d9e0e2;
    font-size: 2.8rem;
  }
  footer .footer_wrapper .footer_top .menu .menu_l table tr td ul ul li ul ul li a::after {
    content: "";
  }
  footer .footer_wrapper .footer_top .menu .menu_l table tr td + td {
    padding-left: 0;
  }
  footer .footer_wrapper .footer_top .menu .menu_l table tr:first-of-type td {
    padding: 0;
  }
  footer .footer_wrapper .footer_top .menu .menu_r {
    padding: 0;
    margin: 8rem auto 0;
  }
  footer .footer_wrapper .footer_top .menu .menu_r > a {
    width: 59rem;
    font-size: 6rem;
    padding: 3rem 0;
  }
  footer .footer_wrapper .footer_top .menu .menu_r .sns_contents {
    padding-bottom: 8rem;
  }
  footer .footer_wrapper .footer_top .menu .menu_r .sns_contents p {
    font-size: 3.2rem;
    padding-bottom: 4rem;
  }
  footer .footer_wrapper .footer_top .menu .menu_r .sns_contents .sns a img {
    width: 7.2rem;
  }
  footer .footer_wrapper .footer_top .menu .menu_r .sns_contents .sns a + a {
    padding-left: 3rem;
  }
  footer .footer_wrapper .footer_top .menu .menu_r .sns_contents .sns a:nth-of-type(3) {
    padding-left: 3.3rem;
  }
  footer .footer_wrapper .footer_bottom .inner {
    max-width: 67rem;
  }
  footer .footer_wrapper .footer_bottom .submenu {
    padding: 8rem 0;
  }
  footer .footer_wrapper .footer_bottom .submenu ul {
    display: block;
  }
  footer .footer_wrapper .footer_bottom .submenu ul li a {
    font-size: 2.8rem;
  }
  footer .footer_wrapper .footer_bottom .submenu ul li + li {
    margin-left: 0;
    margin-top: 6rem;
  }
  footer .footer_wrapper .footer_bottom .policy {
    padding: 3rem 0;
  }
  footer .footer_wrapper .footer_bottom .policy .inner {
    display: block;
    text-align: center;
  }
  footer .footer_wrapper .footer_bottom .policy .inner a {
    font-size: 2.3rem;
    padding-bottom: 3rem;
    display: inline-block;
  }
  footer .footer_wrapper .footer_bottom .policy .inner p {
    font-size: 10px;
  }
}
@media screen and (min-width: 1441px) {
  footer .footer_wrapper .footer_top .menu .menu_l table tr td ul li a {
    font-size: 2rem;
  }
  footer .footer_wrapper .footer_top .menu .menu_l table tr td ul ul li a {
    font-size: 1.6rem;
  }
  footer .footer_wrapper .footer_top .menu .menu_l table tr td ul ul li ul ul li a {
    font-size: 1.4rem;
  }
}
footer .menu_left {
  box-sizing: border-box;
}
footer .menu_left * {
  box-sizing: border-box;
}
footer .menu_left *::before, footer .menu_left *::after {
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
  footer .menu_left {
    display: flex;
  }
}
@media screen and (min-width: 769px) {
  footer .menu_left_clm1 {
    width: 63rem;
  }
}
@media screen and (min-width: 769px) {
  footer .menu_left_clm2 {
    width: 30rem;
  }
}
@media screen and (max-width: 768px) {
  footer .menu_left_clm2 .menu_left_li {
    padding-top: 2.2rem;
  }
}
@media screen and (max-width: 768px) {
  footer .menu_left_li {
    border-bottom: 1px solid #e6e6e3;
    padding: 0 3.6rem 2.2rem 3.6rem;
  }
}
footer .menu_left_li > a {
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  footer .menu_left_li > a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 3rem 0;
    font-size: 3.2rem;
    font-weight: bold !important;
  }
  footer .menu_left_li > a::after {
    content: "";
    position: absolute;
    border-right: 0.157em solid;
    border-top: 0.157em solid;
    width: 0.5em;
    height: 0.5em;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
    transform: rotateZ(45deg);
  }
  footer .menu_left_li > a.ac-parent_all::before {
    content: "";
    position: absolute;
    background: #333;
    width: 0.157em;
    height: 0.657em;
    right: 0.25em;
    top: 0;
    bottom: 0;
    margin: auto 0;
  }
  footer .menu_left_li > a.ac-parent_all::after {
    background: #333;
    border: none;
    width: 0.657em;
    height: 0.157em;
    transform: none;
  }
  footer .menu_left_li > a.active::before {
    display: none;
  }
}
@media screen and (min-width: 769px) {
  footer .menu_left_liacc {
    display: flex;
  }
  footer .menu_left_liacc > ul:nth-of-type(1) {
    flex-shrink: 0;
    width: 33.2rem;
  }
  footer .menu_left_liacc > ul:nth-of-type(2) {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  footer .menu_left_liacc {
    padding: 0.8rem 0 2.2rem;
  }
}
@media screen and (max-width: 768px) {
  footer .menu_left_child + .menu_left_child {
    margin-top: 1rem;
  }
}
@media screen and (min-width: 769px) {
  footer .menu_left_child > li {
    display: block;
  }
  footer .menu_left_child > li + li {
    margin-top: 3.2rem;
  }
}
footer .menu_left_child > li > a {
  position: relative;
}
@media screen and (min-width: 769px) {
  footer .menu_left_child > li > a:not(.menu_left_banner) {
    display: flex;
    align-items: center;
    line-height: 1.334em;
    font-size: 1.8rem;
    font-weight: 700;
  }
  footer .menu_left_child > li > a:not(.menu_left_banner)::before {
    content: "";
    display: block;
    border-radius: 50%;
    background: #000;
    width: 1.334em;
    height: 1.334em;
    margin-right: 0.556em;
  }
  footer .menu_left_child > li > a:not(.menu_left_banner)::after {
    content: "";
    position: absolute;
    border-right: 0.3rem solid;
    border-top: 0.3rem solid;
    width: 0.85rem;
    height: 0.85rem;
    left: 0.334em;
    top: 0;
    bottom: 0;
    margin: auto 0;
    color: #fff;
    transform: rotateZ(45deg);
  }
}
@media screen and (max-width: 768px) {
  footer .menu_left_child > li > a:not(.menu_left_banner) {
    font-weight: 400;
  }
  footer .menu_left_child > li > a:not(.menu_left_banner)::after {
    content: "";
    position: absolute;
    border-right: 0.157em solid;
    border-top: 0.157em solid;
    width: 0.5em;
    height: 0.5em;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
    transform: rotateZ(45deg);
  }
  footer .menu_left_child > li > a:not(.menu_left_banner).ac-parent_all::after {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  footer .menu_left_child > li:not([class*=menu_left_li]) {
    padding: 0 4rem;
  }
  footer .menu_left_child > li:not([class*=menu_left_li]) > a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 3rem 0;
    font-size: 2.8rem;
  }
}
@media screen and (max-width: 768px) {
  footer .menu_left_child:not([class*=menu_left_clm2]) > li {
    background: #f5f5f4;
    border-radius: 1rem;
  }
  footer .menu_left_child:not([class*=menu_left_clm2]) > li + li {
    margin-top: 1rem;
  }
}
@media screen and (min-width: 769px) {
  footer .menu_left_items {
    margin-top: 1.8rem;
    padding-left: 3.8rem;
  }
  footer .menu_left_items.ac-child_all {
    display: block !important;
  }
}
@media screen and (max-width: 768px) {
  footer .menu_left_items {
    padding-bottom: 3rem;
  }
  footer .menu_left_items.ac-child_all {
    display: block;
  }
}
@media screen and (min-width: 769px) {
  footer .menu_left_items > li {
    display: block;
    padding-right: 0.5em;
  }
  footer .menu_left_items > li + li {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  footer .menu_left_items > li + li {
    margin-top: 1rem;
  }
}
footer .menu_left_items > li > a {
  display: flex;
  align-items: center;
  font-weight: 500;
  cursor: pointer;
}
@media screen and (min-width: 769px) {
  footer .menu_left_items > li > a {
    line-height: 1.286em;
    font-size: 1.4rem;
  }
  footer .menu_left_items > li > a::before {
    content: "";
    display: block;
    border-right: 0.3rem solid;
    border-top: 0.3rem solid;
    width: 0.85rem;
    height: 0.85rem;
    margin-right: 1em;
    transform: rotateZ(45deg);
  }
}
@media screen and (max-width: 768px) {
  footer .menu_left_items > li > a {
    background: #fff;
    border: 1px solid #dcdcdc;
    border-radius: 0.7rem;
    position: relative;
    padding: 3.2rem 4rem;
    line-height: 1;
    font-size: 2.4rem;
  }
  footer .menu_left_items > li > a::after {
    content: "";
    position: absolute;
    border-right: 0.204em solid;
    border-top: 0.204em solid;
    width: 0.563em;
    height: 0.563em;
    right: 4rem;
    top: 0;
    bottom: 0;
    margin: auto 0;
    transform: rotateZ(45deg);
  }
}
footer .menu_left_banner {
  display: block;
  line-height: 0;
}
@media screen and (min-width: 769px) {
  footer .menu_left_banner {
    width: 27.1rem;
  }
}
@media screen and (max-width: 768px) {
  footer .menu_left_banner {
    width: 59rem;
  }
}
@media screen and (min-width: 769px) {
  footer .menu_left_banner + .menu_left_banner {
    margin-top: 1rem;
  }
}
footer .menu_right {
  box-sizing: border-box;
}
footer .menu_right * {
  box-sizing: border-box;
}
footer .menu_right *::before, footer .menu_right *::after {
  box-sizing: border-box;
}
footer .menu_right .btn {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #f03264;
  color: #fff;
}
@media screen and (min-width: 769px) {
  footer .menu_right .btn {
    width: 20.8rem;
    height: 6rem;
    font-size: 2rem;
  }
}
@media screen and (max-width: 768px) {
  footer .menu_right .btn {
    width: 59rem;
    font-size: 6rem;
    padding: 3rem 0;
  }
}
@media screen and (min-width: 769px) {
  footer .menu_right .btn::before {
    right: 2rem;
  }
}
@media screen and (max-width: 768px) {
  footer .menu_right .btn::before {
    width: 3.2rem;
    height: 3.2rem;
  }
}
@media screen and (min-width: 769px) {
  footer .menu_right .btn::after {
    border-right: 0.3rem solid #f03264;
    border-top: 0.3rem solid #f03264;
    width: 0.85rem;
    height: 0.85rem;
    right: 2.8rem;
  }
}
@media screen and (max-width: 768px) {
  footer .menu_right .btn::after {
    border-right: 0.45rem solid #f03264;
    border-top: 0.45rem solid #f03264;
    width: 1.15rem;
    height: 1.15rem;
    right: 4.2rem;
  }
}
@media screen and (min-width: 769px) {
  footer .menu_right .btn + .bnr {
    margin-top: 4.7rem;
  }
}
@media screen and (max-width: 768px) {
  footer .menu_right .btn + .bnr {
    margin-top: 10rem;
  }
}
footer .menu_right .bnr {
  display: block;
  margin: 0 auto;
  line-height: 0;
}
@media screen and (min-width: 769px) {
  footer .menu_right .bnr {
    width: 15.4rem;
  }
}
@media screen and (max-width: 768px) {
  footer .menu_right .bnr {
    width: 30rem;
  }
}
@media screen and (min-width: 769px) {
  footer .menu_right .bnr + .bnr {
    margin-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  footer .menu_right .bnr + .bnr {
    margin-top: 9rem;
  }
}
footer .footer_nav {
  opacity: 0;
  position: fixed;
  z-index: 10001;
  transition: 0.3s;
  bottom: -3px;
  left: 0;
  width: 100%;
}
footer .footer_nav.active {
  opacity: 1;
}
footer .footer_nav .footer_nav_contents {
  display: flex;
}
footer .footer_nav .footer_nav_contents .footer_nav_item {
  width: 50%;
  padding: 2.4rem 0;
  font-size: 2rem;
  text-align: center;
  color: #fff;
  font-weight: 700;
  justify-content: center;
  align-items: center;
  display: flex;
  border-top: 0.2rem solid #fff;
}
footer .footer_nav .footer_nav_contents .footer_nav_item p {
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
footer .footer_nav .footer_nav_contents .footer_nav_item:nth-of-type(1) {
  background-color: #f03264;
}
footer .footer_nav .footer_nav_contents .footer_nav_item:nth-of-type(1) p::after {
  right: -1.6em;
  border-top: 0.3rem solid #f03264;
  border-right: 0.3rem solid #f03264;
}
footer .footer_nav .footer_nav_contents .footer_nav_item:nth-of-type(1) p::before {
  right: -2em;
}
footer .footer_nav .footer_nav_contents .footer_nav_item:nth-of-type(2) {
  background-color: #0abec8;
}
footer .footer_nav .footer_nav_contents .footer_nav_item:nth-of-type(2) p::after {
  right: -3rem;
  border-top: 0.3rem solid #fff;
  border-right: 0.3rem solid #fff;
}
footer .footer_nav .footer_nav_contents .footer_nav_item + .footer_nav_item {
  border-left: 0.2rem solid #fff;
}
@media screen and (max-width: 768px) {
  footer .footer_nav {
    opacity: 1;
  }
  footer .footer_nav .footer_nav_contents {
    height: 10rem;
  }
  footer .footer_nav .footer_nav_contents .footer_nav_item {
    padding: 1.2rem 0;
    font-size: 2.8rem;
  }
  footer .footer_nav .footer_nav_contents .footer_nav_item p {
    left: -1.2rem;
    position: relative;
  }
  footer .footer_nav .footer_nav_contents .footer_nav_item p:nth-of-type(1)::before {
    right: -1.2em;
  }
  footer .footer_nav .footer_nav_contents .footer_nav_item p:nth-of-type(1)::after {
    right: -0.95em;
    border-top: 0.5rem solid #f03264;
    border-right: 0.5rem solid #f03264;
  }
  footer .footer_nav .footer_nav_contents .footer_nav_item:nth-of-type(2) p, footer .footer_nav .footer_nav_contents .footer_nav_item:nth-of-type(3) p {
    line-height: 3.8rem;
  }
  footer .footer_nav .footer_nav_contents .footer_nav_item:nth-of-type(2) p::after, footer .footer_nav .footer_nav_contents .footer_nav_item:nth-of-type(3) p::after {
    right: -3.5rem;
    border-top: 0.5rem solid #fff;
    border-right: 0.5rem solid #fff;
  }
}
@media screen and (max-width: 768px) {
  footer .footer_wrapper .footer_bottom {
    border-top: none;
    padding-top: 4rem;
  }
}
@media screen and (min-width: 769px) {
  footer .footer_wrapper .footer_bottom .submenu ul {
    justify-content: space-between;
  }
  footer .footer_wrapper .footer_bottom .submenu ul li + li {
    margin-left: 0;
  }
}

h2.mainTitle1 {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (min-width: 769px) {
  h2.mainTitle1 {
    min-height: 8rem;
  }
}
@media screen and (max-width: 768px) {
  h2.mainTitle1 {
    min-height: 9.4rem;
  }
}
h2.mainTitle1::before, h2.mainTitle1::after {
  content: "";
  display: block;
  position: static;
  background-color: transparent;
  background-image: url(../../common/img/maintitle1.png);
  background-position: left top;
  background-repeat: no-repeat;
  background-size: contain;
  border: none;
  border-radius: 0;
  pointer-events: none;
}
@media screen and (min-width: 769px) {
  h2.mainTitle1::before, h2.mainTitle1::after {
    width: 0.85em;
    height: 2em;
  }
}
@media screen and (max-width: 768px) {
  h2.mainTitle1::before, h2.mainTitle1::after {
    width: 0.834em;
    height: 1.959em;
  }
}
h2.mainTitle1::before {
  margin: 0;
}
@media screen and (min-width: 769px) {
  h2.mainTitle1::before {
    margin-right: 0.9em;
  }
}
@media screen and (max-width: 768px) {
  h2.mainTitle1::before {
    margin-right: 0.688em;
  }
}
h2.mainTitle1::after {
  transform: scale(-1);
}
@media screen and (min-width: 769px) {
  h2.mainTitle1::after {
    margin-left: 0.95em;
  }
}
@media screen and (max-width: 768px) {
  h2.mainTitle1::after {
    margin-left: 0.688em;
  }
}

.lead01 {
  font-size: 2rem;
  text-align: center;
  padding-bottom: 4rem;
}
@media screen and (max-width: 768px) {
  .lead01 {
    font-size: 3.2rem;
    line-height: 5.4rem;
    text-align: left;
    padding-bottom: 6rem;
  }
}

.slick01 .slick-dots li button:before {
  content: "●";
  opacity: 0.3;
  color: #333333;
  font-size: 12px;
}
.slick01 .slick-dots {
  bottom: 1.2rem;
}
.slick01 .slick-dots li.slick-active button:before {
  color: #333333;
  opacity: 1;
}
.slick01 .slick-dots li {
  margin: 0;
}
.slick01 .slick-slide {
  margin: 0 1rem;
}
.slick01.slick-dotted.slick-slider {
  padding-bottom: 5rem;
}

.slider .slick03 .slick-slide {
  margin: 0 0.5rem;
}
@media screen and (max-width: 768px) {
  .slider .slick03 .slick-slide {
    margin: 0 1rem;
  }
}
.slider .slick03 .slide-arrow {
  top: 50%;
}
.slider .slick03 .slick-track.under3 {
  transform: translate(0) !important;
}
.slider ul {
  list-style: none;
}
.slider .slide-arrow {
  position: absolute;
  z-index: 1;
  transform: translate(-50%, -50%);
  background-color: #333333;
  width: 4rem;
  height: 4rem;
  border: 0.3rem solid #fff;
  top: 39%;
  border-radius: 50px;
}
.slider .slide-arrow.prev-arrow {
  left: 13%;
}
.slider .slide-arrow.prev-arrow::before {
  content: "";
  position: absolute;
  border-bottom: solid 0.4rem #fff;
  border-left: solid 0.4rem #fff;
  width: 0.8rem;
  height: 0.8rem;
  top: 50%;
  left: 50%;
  transform: rotate(45deg) translate(-63%, -12%);
}
.slider .slide-arrow.next-arrow {
  right: 10.5%;
}
.slider .slide-arrow.next-arrow::before {
  content: "";
  border-top: solid 0.4rem #fff;
  border-right: solid 0.4rem #fff;
  position: absolute;
  width: 0.8rem;
  height: 0.8rem;
  top: 50%;
  left: 50%;
  transform: rotate(45deg) translate(-80%, 0);
}
@media screen and (max-width: 768px) {
  .slider .slide-arrow {
    width: 5rem;
    height: 5rem;
  }
  .slider .slide-arrow.next-arrow {
    right: 8%;
  }
}
@media screen and (min-width: 1500px) {
  .slider .slide-arrow.prev-arrow {
    left: 22%;
  }
  .slider .slide-arrow.next-arrow {
    right: 19.5%;
  }
}

.arrow {
  position: relative;
}
.arrow::after {
  position: absolute;
  top: 0;
  bottom: -0.1em;
  right: -2rem;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 0.6rem;
  height: 0.6rem;
  border-top: 0.3rem solid #333333;
  border-right: 0.3rem solid #333333;
  transform: rotate(45deg);
}
@media screen and (max-width: 768px) {
  .arrow::after {
    border-top: 0.4rem solid #333333;
    border-right: 0.4rem solid #333333;
  }
}
.arrow.anchor::after {
  transform: rotate(135deg);
}

.arrow-c {
  position: relative;
}
.arrow-c::before, .arrow-c::after {
  position: absolute;
  top: 0;
  bottom: -0.1em;
  right: -0.4em;
  margin: auto;
  content: "";
  vertical-align: middle;
}
.arrow-c::before {
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 50%;
  background: #fff;
}
.arrow-c::after {
  right: -1.4rem;
  width: 0.6rem;
  height: 0.6rem;
  border-top: 0.4rem solid #000;
  border-right: 0.4rem solid #000;
  transform: rotate(45deg);
}

.pc_arrow_none::after {
  content: none;
}

@media screen and (max-width: 768px) {
  .pc_arrow_none::after {
    content: "";
  }
  .sp_arrow_none::after {
    content: none;
  }
}
.pdf {
  position: relative;
}
.pdf::after {
  content: "";
  width: 2.6rem;
  height: 2rem;
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 2rem;
  transform: translate(-50%, -50%);
  background-image: url(../img/icon_pdf.svg);
  background-size: contain;
  background-repeat: no-repeat;
}
@media screen and (max-width: 768px) {
  .pdf::after {
    width: 4.9rem;
    height: 3.6rem;
  }
}

.blank {
  position: relative;
}
.blank::after {
  content: "";
  width: 1.8rem;
  height: 1.8rem;
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 2rem;
  transform: translate(-50%, -50%);
  background-image: url(../img/icon_blank.svg);
  background-size: contain;
  background-repeat: no-repeat;
}
@media screen and (max-width: 768px) {
  .blank::after {
    width: 2.8rem;
    height: 2.8rem;
    right: 3rem;
  }
}

a.btn {
  text-decoration: none;
  color: #333333;
  background-color: #fff;
  border-radius: 8rem;
  margin: 0 auto;
  font-weight: 700;
  text-align: center;
  width: 28rem;
  display: block;
  padding: 1.2rem;
  font-size: 3.4rem;
}
a.btn.arrow-c::before {
  right: 3rem;
}
a.btn.arrow-c::after {
  right: 3.9rem;
}
a.btn.web_link {
  background-color: #f03264;
  color: #fff;
}
a.btn.web_link::after {
  border-top: 0.4rem solid #f03264;
  border-right: 0.4rem solid #f03264;
}
a.btn span.ex::before {
  content: "";
  width: 3.1rem;
  height: 4.4rem;
  display: inline-block;
  position: absolute;
  top: 53%;
  left: 10rem;
  transform: translate(-50%, -50%);
  background-image: url(../img/icon_ex.png);
  background-size: contain;
  background-repeat: no-repeat;
}
@media screen and (max-width: 768px) {
  a.btn span.ex::before {
    width: 4rem;
    height: 5.4rem;
    top: 53%;
    left: 12rem;
  }
}
a.btn.blc {
  background-color: #5a5a5a;
  color: #fff;
}
@media screen and (min-width: 769px) {
  a.btn.blc {
    width: 32rem;
    margin-top: 4rem;
    padding: 2.2rem 0;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  a.btn.blc {
    font-size: 3.2rem;
    padding: 4.4rem 0;
    width: 59rem;
    margin-top: 8rem;
  }
}
@media screen and (min-width: 769px) {
  a.btn.blc::after {
    right: 3rem;
    border-top: 0.3rem solid #fff;
    border-right: 0.3rem solid #fff;
  }
}
@media screen and (max-width: 768px) {
  a.btn.blc::after {
    right: 4rem;
    border-top: 0.5rem solid #fff;
    border-right: 0.5rem solid #fff;
    width: 0.8rem;
    height: 0.8rem;
  }
}

h2.mainTitle1 {
  font-size: 4rem;
  font-weight: 700;
  position: relative;
  margin-top: 10rem;
  margin-bottom: 4rem;
}
@media screen and (max-width: 768px) {
  h2.mainTitle1 {
    font-size: 4.8rem;
  }
}

h2.mainTitle2 {
  font-size: 3.2rem;
  font-weight: 700;
  margin-bottom: 4rem;
}
@media screen and (max-width: 768px) {
  h2.mainTitle2 {
    font-size: 4rem;
    text-align: center;
  }
}

.ac-parent_all {
  position: relative;
}
.ac-parent_all.active .ac_btn span:nth-of-type(2) {
  display: none;
}

.ac-child_all {
  display: none;
}
.ac-child_all.open {
  display: block;
}

@media screen and (max-width: 768px) {
  .ac-child {
    display: none;
  }
}
.ac-parent {
  position: relative;
}
.ac-parent.active .ac_btn span:nth-of-type(2) {
  display: none;
}

.ac_btn {
  position: absolute;
  display: inline-block;
  width: 8rem;
  height: 8rem;
  right: -1rem;
  top: 50%;
  transform: translate(-50%, -50%);
}
.ac_btn span:nth-of-type(1) {
  display: inline-block;
  position: absolute;
  right: -5%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 2.5rem;
  height: 0.5rem;
  background-color: #000;
}
.ac_btn span:nth-of-type(2) {
  display: inline-block;
  position: absolute;
  right: 20%;
  top: 50%;
  transform: translate(-50%, -50%);
  height: 2.5rem;
  width: 0.5rem;
  background-color: #000;
}

.catchup_wrapper {
  padding: 10rem 0;
}
@media screen and (max-width: 768px) {
  .catchup_wrapper {
    padding-bottom: 20rem;
  }
}
.catchup_wrapper .inner {
  display: flex;
  justify-content: center;
  width: 80%;
  margin: auto;
  max-width: 1440px;
}
.catchup_wrapper .inner .txt h3 {
  width: 32rem;
}
.catchup_wrapper .inner .txt p {
  font-size: 2rem;
  line-height: 3.4rem;
  padding: 4rem 0;
}
.catchup_wrapper .inner .btn {
  font-size: 1.6rem;
  background-color: #013b6b;
  color: #fff;
  margin-left: 0;
  padding: 2.2rem 3rem 2.2rem 0;
  width: 25rem;
}
.catchup_wrapper .inner .btn::after {
  border-top: 0.4rem solid #013b6b;
  border-right: 0.4rem solid #013b6b;
}
.catchup_wrapper .inner .banner {
  display: flex;
  justify-content: space-between;
  align-content: flex-start;
  flex-wrap: wrap;
  margin-left: 8rem;
}
.catchup_wrapper .inner .banner a {
  width: 31%;
  margin-bottom: 3%;
  display: block;
}
@media screen and (min-width: 769px) {
  .catchup_wrapper .inner .banner a:nth-of-type(3n+2):last-of-type {
    margin-left: 3.5%;
    margin-right: auto;
  }
}
@media screen and (max-width: 768px) {
  .catchup_wrapper .inner {
    display: block;
    max-width: 100%;
  }
  .catchup_wrapper .inner .txt h3 {
    width: 47.8rem;
    margin: auto;
  }
  .catchup_wrapper .inner .txt p {
    font-size: 3.2rem;
    line-height: 5.4rem;
    text-align: center;
  }
  .catchup_wrapper .inner .banner {
    margin: auto;
    max-width: 67rem;
  }
  .catchup_wrapper .inner .banner a {
    width: 48%;
  }
  .catchup_wrapper .inner .btn {
    width: 48rem;
    padding: 3.5rem 0;
    margin: 5rem auto 0;
    font-size: 3.2rem;
  }
  .catchup_wrapper .inner .btn::before {
    width: 3rem;
    height: 3rem;
  }
  .catchup_wrapper .inner .btn::after {
    right: 4.2rem;
  }
}