@charset "UTF-8";
/*! destyle.css v3.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model and set borders */
/* ============================================ */
* {
  font-family: "Noto Sans JP", sans-serif;
  color: #282828;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  letter-spacing: 0.01em;
}

p {
  color: #333;
  line-height: 1.8;
}

*,
::before,
::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-style: solid;
  border-width: 0;
}

/* Document */
/* ============================================ */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */
html {
  line-height: 1.15;
  overflow-x: hidden;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -webkit-tap-highlight-color: transparent;
  /* 3*/
}

/* Sections */
/* ============================================ */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/* Vertical rhythm */
/* ============================================ */
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

/* Headings */
/* ============================================ */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
  margin: 0;
}

/* Lists (enumeration) */
/* ============================================ */
ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Lists (definition) */
/* ============================================ */
dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Grouping content */
/* ============================================ */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
  border-top-width: 1px;
  margin: 0;
  clear: both;
  color: inherit;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: inherit;
  /* 2 */
}

address {
  font-style: inherit;
}

/* Text-level semantics */
/* ============================================ */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
  text-decoration: none;
  color: inherit;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: inherit;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Replaced content */
/* ============================================ */
/**
 * Prevent vertical alignment issues.
 */
svg,
img,
embed,
object,
iframe {
  vertical-align: bottom;
}

/* Forms */
/* ============================================ */
/**
 * Reset form fields to make them styleable.
 * 1. Make form elements stylable across systems iOS especially.
 * 2. Inherit text-transform from parent.
 */
button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none;
  /* 1 */
  -moz-appearance: none;
       appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  border-radius: 0;
  text-align: inherit;
  text-transform: inherit;
  /* 2 */
}

/**
 * Reset radio and checkbox appearance to preserve their look in iOS.
 */
[type=checkbox] {
  -webkit-appearance: checkbox;
  -moz-appearance: checkbox;
       appearance: checkbox;
}

[type=radio] {
  -webkit-appearance: radio;
  -moz-appearance: radio;
       appearance: radio;
}

/**
 * Correct cursors for clickable elements.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
}

button:disabled,
[type=button]:disabled,
[type=reset]:disabled,
[type=submit]:disabled {
  cursor: default;
}

/**
 * Improve outlines for Firefox and unify style with input elements & buttons.
 */
:-moz-focusring {
  outline: auto;
}

select:disabled {
  opacity: inherit;
}

/**
 * Remove padding
 */
option {
  padding: 0;
}

/**
 * Reset to invisible
 */
fieldset {
  margin: 0;
  padding: 0;
  min-width: 0;
}

legend {
  padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the outline style in Safari.
 */
[type=search] {
  outline-offset: -2px;
  /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Fix font inheritance.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/**
 * Clickable labels
 */
label[for] {
  cursor: pointer;
}

/* Interactive */
/* ============================================ */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/*
 * Remove outline for editable content.
 */
[contenteditable]:focus {
  outline: auto;
}

/* Tables */
/* ============================================ */
/**
1. Correct table border color inheritance in all Chrome and Safari.
*/
table {
  border-color: inherit;
  /* 1 */
}

caption {
  text-align: left;
}

td,
th {
  vertical-align: top;
  padding: 0;
}

th {
  text-align: left;
  font-weight: bold;
}

li {
  list-style-type: none;
}

img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

a {
  width: 100%;
  height: 100%;
  display: block;
}
a:hover {
  opacity: 0.7;
}

.dib {
  display: inline-block;
  color: inherit;
  font-size: inherit;
}

@media screen and (max-width: 768px) {
  p {
    font-size: 14px;
  }
}
@media screen and (max-width: 480px) {
  p {
    font-size: 13px;
  }
}

@-webkit-keyframes nav_appear {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes nav_appear {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes border-lit {
  0% {
    border: 2px dashed #00A6DC;
  }
  100% {
    border: 2px dashed #fff;
  }
}
@keyframes border-lit {
  0% {
    border: 2px dashed #00A6DC;
  }
  100% {
    border: 2px dashed #fff;
  }
}
@-webkit-keyframes header-active {
  0% {
    display: none;
    opacity: 0;
  }
  10% {
    display: block;
    opacity: 100%;
  }
  100% {
    -webkit-transform: translate(-50%, -170%);
            transform: translate(-50%, -170%);
  }
}
@keyframes header-active {
  0% {
    display: none;
    opacity: 0;
  }
  10% {
    display: block;
    opacity: 100%;
  }
  100% {
    -webkit-transform: translate(-50%, -170%);
            transform: translate(-50%, -170%);
  }
}
@-webkit-keyframes contact-active {
  0% {
    display: none;
    opacity: 0;
  }
  10% {
    display: block;
    opacity: 100%;
  }
  50% {
    right: 0%;
  }
  100% {
    right: -9%;
  }
}
@keyframes contact-active {
  0% {
    display: none;
    opacity: 0;
  }
  10% {
    display: block;
    opacity: 100%;
  }
  50% {
    right: 0%;
  }
  100% {
    right: -9%;
  }
}
@-webkit-keyframes slide1 {
  0% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
@keyframes slide1 {
  0% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
@-webkit-keyframes slide2 {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-200%);
            transform: translateX(-200%);
  }
}
@keyframes slide2 {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-200%);
            transform: translateX(-200%);
  }
}
@-webkit-keyframes move-icon {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  20% {
    -webkit-transform: rotate(-8deg);
            transform: rotate(-8deg);
  }
  40% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
}
@keyframes move-icon {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  20% {
    -webkit-transform: rotate(-8deg);
            transform: rotate(-8deg);
  }
  40% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
}
@-webkit-keyframes move-icon2 {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  20% {
    -webkit-transform: rotate(-8deg);
            transform: rotate(-8deg);
  }
  40% {
    -webkit-transform: rotate(8deg);
            transform: rotate(8deg);
  }
  100% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
}
@keyframes move-icon2 {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  20% {
    -webkit-transform: rotate(-8deg);
            transform: rotate(-8deg);
  }
  40% {
    -webkit-transform: rotate(8deg);
            transform: rotate(8deg);
  }
  100% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
}
@-webkit-keyframes change-anim-02 {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes change-anim-02 {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes change-img-anim-first {
  0% {
    opacity: 1;
  }
  30% {
    opacity: 1;
  }
  36% {
    opacity: 1;
  }
  45% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes change-img-anim-first {
  0% {
    opacity: 1;
  }
  30% {
    opacity: 1;
  }
  36% {
    opacity: 1;
  }
  45% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes change-img-anim {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  36% {
    opacity: 1;
  }
  45% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes change-img-anim {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  36% {
    opacity: 1;
  }
  45% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
/*-- 
スライドin用
---*/
.sa {
  opacity: 0;
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
}

.sa.show {
  opacity: 1;
  -webkit-transform: none;
          transform: none;
}

.sa--lr {
  -webkit-transform: translate(-100px, 0);
          transform: translate(-100px, 0);
}

.sa--rl {
  -webkit-transform: translate(100px, 0);
          transform: translate(100px, 0);
}

.sa--up {
  -webkit-transform: translate(0, 100px);
          transform: translate(0, 100px);
}

.sa--down {
  -webkit-transform: translate(0, -100px);
          transform: translate(0, -100px);
}

.sa--scaleUp {
  -webkit-transform: scale(0.5);
          transform: scale(0.5);
}

.sa--scaleDown {
  -webkit-transform: scale(1.5);
          transform: scale(1.5);
}

.sa--rotateL {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

.sa--rotateR {
  -webkit-transform: rotate(-180deg);
          transform: rotate(-180deg);
}

@-webkit-keyframes zoomUp {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}

@keyframes zoomUp {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}
/*-- 
title
---*/
.c-title {
  font-size: 60px;
  text-align: center;
  font-weight: bold;
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}
@media screen and (max-width: 767px) {
  .c-title {
    font-size: 40px;
  }
}

@media screen and (max-width: 767px) {
  .c-btn {
    margin: 0 auto;
  }
}
.c-btn a {
  margin: 0 auto;
  max-width: 230px;
  height: 60px;
  background-color: #00A6DC;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  border: 2px solid #00A6DC;
  border-radius: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: #fff;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 14px;
  letter-spacing: 0.2em;
  transition: all 0.2s;
  position: relative;
}
.c-btn a:hover {
  background-color: #fff;
  color: #00A6DC;
}
.c-btn a:hover:after {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  width: 22px;
  height: 22px;
  background-color: #0097D9;
  border-radius: 50%;
  display: inline-block;
  content: "";
  position: absolute;
  right: 16px;
  top: 18px;
  transition: all 0.3s;
}
.c-btn a:hover:before {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  width: 10px;
  height: 7px;
  background: url("../img/top/btn_icon_hover.svg") no-repeat;
  background-size: contain;
  display: inline-block;
  content: "";
  position: absolute;
  right: 22px;
  top: 26px;
  z-index: 2;
}
.c-btn a:before {
  width: 6px;
  height: 6px;
  background-color: #fff;
  border-radius: 50%;
  display: inline-block;
  content: "";
  position: absolute;
  right: 24px;
  top: 26px;
  z-index: 2;
}
.c-btn a:after {
  width: 22px;
  height: 22px;
  background-color: rgba(255, 255, 255, 0.64);
  border-radius: 50%;
  display: inline-block;
  content: "";
  position: absolute;
  right: 16px;
  top: 18px;
}

.c-subtitle p {
  font-size: 22px;
  font-weight: bold;
  color: #00A6DC;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .c-subtitle p {
    font-size: 16px;
  }
}

.c-page__title__block {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .c-page__title__block {
    margin-top: 40px;
  }
}
.c-page__title__block .wrapper {
  max-width: 1000px;
  padding-left: 45px;
  margin: 0 auto;
}
@media screen and (max-width: 1023px) {
  .c-page__title__block .wrapper {
    padding-right: 5%;
    padding-left: 5%;
  }
}
.c-page__title__block .c-page-titleblock .cat {
  font-size: 14px;
}
.c-page__title__block .c-page-titleblock .cat a {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  background-color: #00A6DC;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-left: 18px;
  padding-right: 18px;
  pointer-events: none;
}
.c-page__title__block .c-page-titleblock h2 {
  font-size: 38px;
  line-height: 1.7105263158;
  font-weight: bold;
  letter-spacing: 0.06em;
  margin-top: 4px;
}
@media screen and (max-width: 767px) {
  .c-page__title__block .c-page-titleblock h2 {
    font-size: 28px;
  }
}
.c-page__title__block .c-page-titleblock__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 11%;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (max-width: 767px) {
  .c-page__title__block .c-page-titleblock__box {
    display: block;
  }
}
.c-page__title__block .c-page-titleblock__box .textblock .text {
  font-size: 16px;
  font-weight: bold;
  line-height: 2.0625;
  letter-spacing: 0.02em;
  -webkit-font-feature-settings: initial;
          font-feature-settings: initial;
}
@media screen and (max-width: 480px) {
  .c-page__title__block .c-page-titleblock__box .textblock .text {
    font-size: 15px;
    font-weight: 500;
    line-height: 1.6;
  }
}
.c-page__title__block .c-page-titleblock__box .itemblock {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 220px;
          flex: 0 0 220px;
}
@media screen and (max-width: 767px) {
  .c-page__title__block .c-page-titleblock__box .itemblock {
    max-width: 220px;
    margin-top: 24px;
  }
}
@media screen and (max-width: 480px) {
  .c-page__title__block .c-page-titleblock__box .itemblock.sp_dn {
    display: none;
  }
}

.c-nav-btn {
  height: 44px;
  width: 44px;
  position: absolute;
  background: none;
  border: none;
  left: 34%;
  z-index: 30;
  background-color: #00A6DC;
  border-radius: 50%;
}
.c-nav-btn.is-active {
  background-color: #fff;
}

.c-nav-btn::after,
.c-nav-btn::before {
  position: absolute;
  top: calc(50% - 1px);
  content: "";
  width: 22px;
  height: 3px;
  display: block;
  background: #282828;
  left: 12px;
  background-color: #fff;
}

.c-nav-btn::before {
  -webkit-transform: translateY(-4px);
          transform: translateY(-4px);
}

.c-nav-btn::after {
  -webkit-transform: translateY(4px);
          transform: translateY(4px);
}

.c-nav-btn::after,
.c-nav-btn::before {
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.c-nav-btn.is-active::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-box-shadow: none;
          box-shadow: none;
  background: #00A6DC;
}

.c-nav-btn.is-active::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  background: #00A6DC;
}

.p-introduce__facility__swiper .swiper-button-next {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  border: 2px solid #ddd;
}
@media screen and (max-width: 767px) {
  .p-introduce__facility__swiper .swiper-button-next {
    width: 40px;
    height: 40px;
  }
}
.p-introduce__facility__swiper .swiper-button-next:after {
  content: ">";
  color: #ddd;
  font-size: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  right: -3px;
  top: -2px;
}
@media screen and (max-width: 767px) {
  .p-introduce__facility__swiper .swiper-button-next:after {
    font-size: 24px;
  }
}
.p-introduce__facility__swiper .swiper-button-next:hover {
  background-color: #00A6DC;
  border: none;
}
.p-introduce__facility__swiper .swiper-button-next:hover:after {
  color: #fff;
}

.p-introduce__facility__swiper .swiper-button-prev {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  border: 2px solid #ddd;
}
@media screen and (max-width: 767px) {
  .p-introduce__facility__swiper .swiper-button-prev {
    width: 40px;
    height: 40px;
  }
}
.p-introduce__facility__swiper .swiper-button-prev:after {
  content: "<";
  color: #ddd;
  font-size: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  right: 1px;
  top: -2px;
}
@media screen and (max-width: 767px) {
  .p-introduce__facility__swiper .swiper-button-prev:after {
    font-size: 24px;
  }
}
.p-introduce__facility__swiper .swiper-button-prev:hover {
  background-color: #00A6DC;
  border: none;
}
.p-introduce__facility__swiper .swiper-button-prev:hover:after {
  color: #fff;
}

.swiper__content {
  position: relative;
}
.swiper__content .swiper-button-next {
  right: calc((100% - 1200px) / 2);
  top: -80px;
}
@media screen and (max-width: 1300px) {
  .swiper__content .swiper-button-next {
    right: calc((100% - 900px) / 2);
  }
}
@media screen and (max-width: 1023px) {
  .swiper__content .swiper-button-next {
    right: calc((100% - 700px) / 2);
  }
}
@media screen and (max-width: 767px) {
  .swiper__content .swiper-button-next {
    right: 10%;
    top: -30px;
  }
}
.swiper__content .swiper-button-prev {
  right: calc((100% - 1200px) / 2 + 100px);
  left: initial;
  top: -80px;
}
@media screen and (max-width: 1300px) {
  .swiper__content .swiper-button-prev {
    right: calc((100% - 900px) / 2 + 100px);
  }
}
@media screen and (max-width: 1023px) {
  .swiper__content .swiper-button-prev {
    right: calc((100% - 700px) / 2 + 100px);
  }
}
@media screen and (max-width: 767px) {
  .swiper__content .swiper-button-prev {
    top: -30px;
    right: calc(10% + 60px);
  }
}

/*-- 
header
---*/
/*- 
追加仮
---*/
/*- 
追加 仮 end
---*/
.header__container {
  padding-top: 8px;
  padding-bottom: 8px;
  padding-top: 40px;
}

.header__container__topbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.header__container__topbox .block__left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.header__container__topbox .block__left .snsblock {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
}
.header__container__topbox .block__left .snsblock .icon__block {
  width: 30px;
}
.header__container__topbox .block__left .text {
  display: inline-block;
  padding-left: 20px;
}
.header__container__topbox .block__left .text p {
  font-size: 11px;
  color: #00A6DC;
}
.header__container__topbox .block__right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.header__container__topbox .block__right .block {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 200px;
          flex: 0 0 200px;
}

.header__container__navbox ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.header__container__navbox ul li a {
  font-weight: bold;
  letter-spacing: 0.1em;
  color: #00A6DC;
}
.header__container__navbox ul .logo {
  background: rgba(255, 255, 255, 0.5);
  -webkit-box-flex: 0;
      -ms-flex: 0 0 140px;
          flex: 0 0 140px;
  border-radius: 50%;
  padding: 4px;
}

.page__firstview__item {
  position: relative;
}
.page__firstview__item .page__firstview__item__back {
  height: 380px;
}
.page__firstview__item .page__firstview__item__back img {
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-filter: brightness(0.8);
          filter: brightness(0.8);
}
.page__firstview__item .page__firstview__item__filter {
  position: absolute;
  bottom: -100px;
  width: 120%;
}
@media screen and (max-width: 767px) {
  .page__firstview__item .page__firstview__item__filter {
    width: 1400px;
  }
}
.page__firstview__item .page__firstview__item__filter img {
  -o-object-fit: cover;
     object-fit: cover;
}
.page__firstview__item h2 {
  position: absolute;
  width: calc(100px + 10vw);
  right: 10%;
  top: 70%;
}
.page__firstview__item .page__breadcrumb {
  position: absolute;
  left: 13.4%;
  bottom: -100px;
}

.header__container.header_scroll {
  display: none;
  -webkit-transform: translate(-50%, -200%);
          transform: translate(-50%, -200%);
  position: fixed;
  left: 50%;
  z-index: 5;
}
.header__container.header_scroll.active {
  display: block;
  -webkit-animation-name: header-active;
          animation-name: header-active;
  -webkit-animation-duration: 0.5s;
          animation-duration: 0.5s;
  -webkit-animation-delay: 0s;
          animation-delay: 0s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  background-color: #fff;
  width: 100%;
  -webkit-box-shadow: 1px 1px 1px 1px rgba(255, 255, 255, 0.7);
          box-shadow: 1px 1px 1px 1px rgba(255, 255, 255, 0.7);
}

.block__right {
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
.block__right.js-contact {
  display: none;
  position: fixed;
  bottom: 10%;
  right: -20%;
  z-index: 100;
  -webkit-transition: right 0.3s;
  transition: right 0.3s;
}
.block__right.js-contact.active {
  display: block;
  -webkit-animation-name: contact-active;
          animation-name: contact-active;
  -webkit-animation-duration: 0.8s;
          animation-duration: 0.8s;
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-timing-function: ease-out;
          animation-timing-function: ease-out;
}
.block__right.js-contact.active .block {
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
.block__right.js-contact.active .block:hover {
  -webkit-transform: translateX(-65%);
          transform: translateX(-65%);
}
.block__right.js-contact .block {
  width: 250px;
}

/*-- 
footer

---*/
.top__btnblock {
  width: 50px;
  height: 50px;
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 12;
}
@media screen and (max-width: 480px) {
  .top__btnblock {
    height: 40px;
    width: 40px;
  }
}

.footer {
  background-color: #00A6DC;
  padding-top: 102px;
  margin-bottom: 96px;
}
@media screen and (max-width: 767px) {
  .footer {
    padding-top: 60px;
  }
}
@media screen and (max-width: 480px) {
  .footer {
    padding-top: 48px;
  }
}
.footer .wrapper {
  max-width: 800px;
  margin: 0 auto;
}
@media screen and (max-width: 1023px) {
  .footer .wrapper {
    max-width: 700px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 767px) {
  .footer .wrapper {
    max-width: 700px;
    margin: 0 auto;
  }
}
.footer .footer__content__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-bottom: 40px;
  border-bottom: 1px solid #fff;
}
@media screen and (max-width: 480px) {
  .footer .footer__content__box {
    padding-bottom: 20px;
  }
}
@media screen and (max-width: 1023px) {
  .footer .footer__content__box {
    display: block;
  }
}
.footer .footer__content__box .footer__content__box__infoblock {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 200px;
          flex: 0 0 200px;
}
.footer .footer__content__box .footer__content__box__infoblock h3 {
  max-width: 221px;
  margin-bottom: 20px;
}
.footer .footer__content__box .footer__content__box__infoblock p {
  font-size: 13px;
  color: #fff;
  line-height: 1.7692307692;
}
.footer .footer__content__box .footer__content__box__navblock {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 480px;
          flex: 0 0 480px;
}
@media screen and (max-width: 1023px) {
  .footer .footer__content__box .footer__content__box__navblock {
    margin-top: 40px;
  }
}
.footer .footer__content__box .footer__content__box__navblock ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 45px;
}
@media screen and (max-width: 767px) {
  .footer .footer__content__box .footer__content__box__navblock ul {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 20px;
  }
}
@media screen and (max-width: 767px) {
  .footer .footer__content__box .footer__content__box__navblock ul li:first-child {
    margin-top: -4px;
  }
}
@media screen and (max-width: 480px) {
  .footer .footer__content__box .footer__content__box__navblock ul li.introduce a:first-child {
    margin-bottom: 8px;
  }
}
@media screen and (max-width: 480px) {
  .footer .footer__content__box .footer__content__box__navblock ul li.introduce a {
    margin-bottom: 4px;
  }
}
@media screen and (max-width: 480px) {
  .footer .footer__content__box .footer__content__box__navblock ul li.sp_dn {
    display: none;
  }
}
.footer .footer__content__box .footer__content__box__navblock ul li a {
  margin-bottom: 12px;
  color: #fff;
  font-size: 12px;
  display: inline-block;
  height: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}
@media screen and (max-width: 767px) {
  .footer .footer__content__box .footer__content__box__navblock ul li a {
    font-size: 13px;
  }
}
.footer .footer__content__box .footer__content__box__navblock ul li a span {
  color: #FCC103;
  display: inline-block;
  margin-left: 10px;
}
.footer .footer__content__box .footer__content__box__navblock ul li a p {
  color: #fff;
}
@media screen and (max-width: 767px) {
  .footer .footer__content__box .footer__content__box__navblock ul li a p {
    margin-left: 4px;
  }
}
.footer .footer__content__box .footer__content__box__navblock ul li .sp_db {
  display: none;
}
@media screen and (max-width: 480px) {
  .footer .footer__content__box .footer__content__box__navblock ul li .sp_db {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.footer .footer__privacy__block {
  padding-top: 58px;
  padding-bottom: 108px;
}
@media screen and (max-width: 767px) {
  .footer .footer__privacy__block {
    padding-bottom: 60px;
  }
}
@media screen and (max-width: 480px) {
  .footer .footer__privacy__block {
    padding-top: 25px;
  }
}
.footer .footer__privacy__block ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 68%;
}
@media screen and (max-width: 767px) {
  .footer .footer__privacy__block ul {
    display: block;
  }
}
@media screen and (max-width: 480px) {
  .footer .footer__privacy__block ul {
    width: 100%;
  }
}
.footer .footer__privacy__block ul li a {
  color: #fff;
  margin-right: 48px;
}
@media screen and (max-width: 767px) {
  .footer .footer__privacy__block ul li a {
    font-size: 14px;
    margin-bottom: 20px;
  }
}
.footer .footer__privacy__block ul small {
  color: #fff;
  text-align: center;
}

html {
  scroll-behavior: smooth;
}

@media screen and (max-width: 767px) {
  body {
    overflow-x: hidden;
  }
}

.wrapper {
  max-width: 1200px;
  margin: 0 auto;
}
@media screen and (max-width: 1300px) {
  .wrapper {
    max-width: 1000px;
  }
}
@media screen and (max-width: 1023px) {
  .wrapper {
    max-width: 760px;
  }
}
@media screen and (max-width: 767px) {
  .wrapper {
    padding: 0 5%;
  }
}
.topmv_container {
  width: 200vw;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 3%;
  height: 600px;
  position: relative;
  left: -50%;
}
@media screen and (max-width: 767px) {
  .topmv_container {
    width: 320vw;
    left: -109%;
    gap: 7%;
  }
}
@media screen and (max-width: 480px) {
  .topmv_container {
    height: 150vw;
  }
}
.topmv_container .slide-wrap {
  -webkit-transition: all 18s;
  transition: all 18s;
  -webkit-animation: zoomUp 18s linear infinite;
          animation: zoomUp 18s linear infinite;
}
.topmv_container .slide-wrap img {
  display: block;
}
@media screen and (max-width: 767px) {
  .topmv_container .slide-wrap img {
    display: none;
  }
}
.topmv_container .slide-wrap img.item_sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .topmv_container .slide-wrap img.item_sp {
    display: block;
  }
}
.topmv_container .topmv_item {
  width: 75vw;
  overflow: hidden;
  height: 600px;
}
@media screen and (max-width: 767px) {
  .topmv_container .topmv_item {
    height: 90vh;
    width: 95vw;
  }
}
.topmv_container .topmv_item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 767px) {
  .topmv_container .topmv_item img {
    -o-object-fit: contain;
       object-fit: contain;
    -o-object-position: top;
       object-position: top;
  }
}
.topmv_container .swiper-slide {
  height: 522px;
  overflow: hidden;
  border-radius: 20px;
}
@media screen and (max-width: 480px) {
  .topmv_container .swiper-slide {
    height: auto;
  }
}
.topmv_container .slide-wrap {
  width: 100%;
  height: 100%;
  border-radius: 20px;
}
.topmv_container .slide-wrap img {
  border-radius: 20px;
}

.firstview__nav__bg {
  background-color: #00A6DC;
}
@media screen and (max-width: 767px) {
  .firstview__nav__bg {
    display: none;
  }
}

.firstview__nav__top {
  max-width: 1000px;
  padding-top: 20px;
  margin: 0 auto;
}
@media screen and (max-width: 1023px) {
  .firstview__nav__top {
    max-width: 760px;
  }
}
@media screen and (max-width: 767px) {
  .firstview__nav__top {
    padding-top: 0;
  }
}
.firstview__nav__top .firstview__nav__top__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 8.5px;
}
.firstview__nav__top h1 {
  max-width: 300px;
}
@media screen and (max-width: 767px) {
  .firstview__nav__top h1 {
    max-width: 233px;
  }
}
.firstview__nav__top .infobox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 28px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 767px) {
  .firstview__nav__top .infobox {
    display: none;
  }
}
.firstview__nav__top .infobox .telblock a {
  color: #00A6DC;
  font-size: 23px;
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-weight: bold;
}
.firstview__nav__top .infobox .mailblock a {
  padding-left: 20px;
  padding-right: 20px;
  padding-top: 4px;
  padding-bottom: 4px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-color: #00A6DC;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 6px;
  color: #fff;
  font-size: 15px;
  height: 32px;
}
.firstview__nav__top .infobox .mailblock a:before {
  content: "";
  display: block;
  width: 21px;
  height: 15px;
  position: relative;
  background: url("./../img/icon/icon_mail.svg") no-repeat;
}

.firstview__nav {
  margin-bottom: 16px;
}
.firstview__nav.js-top-nav {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  padding-top: 14px;
}
.firstview__nav.js-top-nav.active {
  position: fixed;
  top: 0;
  z-index: 20;
  width: 100%;
  background-color: #fff;
  -webkit-animation: nav_appear 0.5s;
          animation: nav_appear 0.5s;
}
.firstview__nav .wrapper {
  max-width: 560px;
}
.firstview__nav ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .firstview__nav ul {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.firstview__nav ul li {
  margin-right: 10px;
  padding-top: 11px;
  padding-bottom: 8px;
}
.firstview__nav ul li.has-sub {
  position: relative;
}
@media screen and (max-width: 767px) {
  .firstview__nav ul li {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
  }
}
.firstview__nav ul li .btn {
  font-size: 15px;
  color: #fff;
  letter-spacing: 0.05em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 6px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-right: 32px;
  padding-left: 32px;
}
.firstview__nav ul li .btn:before {
  content: "";
  display: block;
  width: 18px;
  height: 18px;
  position: relative;
}
.firstview__nav ul li .btn.about__btn:before {
  background: url("./../img/icon/icon_03.svg") no-repeat;
  background-size: contain;
}
.firstview__nav ul li .btn.service__btn:before {
  background: url("./../img/icon/icon_02.svg") no-repeat;
  background-size: contain;
}
.firstview__nav ul li .btn.introduce__btn:before {
  background: url("./../img/icon/icon_02.svg") no-repeat;
  background-size: contain;
}
.firstview__nav ul li .btn.qustion__btn:before {
  background: url("./../img/icon/icon_04.svg") no-repeat;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  .firstview__nav ul li .btn {
    font-size: 13px;
  }
}

.firstview__nav__hide {
  display: block;
  position: fixed;
  top: 0;
  -webkit-transform: translateY(-100px);
          transform: translateY(-100px);
  padding-top: 10px;
  padding-bottom: 10px;
  background-color: #fff;
  width: 100%;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  z-index: 12;
  border-bottom: 1px solid #ededed;
}
@media screen and (max-width: 767px) {
  .firstview__nav__hide {
    display: none;
  }
}
.firstview__nav__hide.active {
  position: fixed;
  top: 0;
  -webkit-transform: translateY(0px);
          transform: translateY(0px);
}
.firstview__nav__hide .wrapper {
  max-width: 1100px;
}
@media screen and (max-width: 1023px) {
  .firstview__nav__hide .wrapper {
    max-width: 760px;
  }
}
.firstview__nav__hide ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 767px) {
  .firstview__nav__hide ul {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.firstview__nav__hide ul .logo {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 150px;
          flex: 0 0 150px;
}
.firstview__nav__hide ul .logo a {
  background: initial;
}
.firstview__nav__hide ul li {
  margin-right: 10px;
}
@media screen and (max-width: 767px) {
  .firstview__nav__hide ul li {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
  }
}
.firstview__nav__hide ul li a {
  font-weight: bold;
  line-height: 1.4;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0, currentColor)) bottom/var(--d, 0) 2px no-repeat;
  background: linear-gradient(currentColor 0 0) bottom/var(--d, 0) 2px no-repeat;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  color: #282828;
}
.firstview__nav__hide ul li a:hover {
  --d: 100%;
}
@media screen and (max-width: 767px) {
  .firstview__nav__hide ul li a {
    font-size: 13px;
  }
}

.nav__inner {
  display: none;
  position: absolute;
  top: 37px;
  background-color: #0097D9;
  width: 100vw;
  left: 47%;
  z-index: 4;
  padding-top: 60px;
  padding-bottom: 100px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.nav__inner.active {
  display: block;
  -webkit-animation: nav_appear 0.3s;
          animation: nav_appear 0.3s;
}

.nav__inner__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 1000px;
  margin: 0 auto;
  gap: 90px;
}
@media screen and (max-width: 1023px) {
  .nav__inner__box {
    max-width: 760px;
    gap: 30px;
  }
}
.nav__inner__box h3 {
  font-weight: bold;
  font-size: 25px;
  letter-spacing: 0.06em;
  position: relative;
  color: #fff;
}
.nav__inner__box h3 span {
  width: 57px;
  height: 6px;
  background-color: #fff;
  display: block;
  margin-bottom: 18px;
}
.nav__inner__box .nav__inner__box__introducebox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 24px;
}
.nav__inner__box .nav__inner__box__introduceblock {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 250px;
          flex: 0 0 250px;
  height: 131px;
  border-radius: 12px;
}
@media screen and (max-width: 1023px) {
  .nav__inner__box .nav__inner__box__introduceblock {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 200px;
            flex: 0 0 200px;
    height: 110px;
  }
}
.nav__inner__box .nav__inner__box__introduceblock a {
  padding-top: 20px;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
.nav__inner__box .nav__inner__box__introduceblock a.desire_s:hover {
  background-color: #00A6DC;
  border-radius: 11px;
  opacity: 1;
}
.nav__inner__box .nav__inner__box__introduceblock a.desire_s:hover .cat {
  background-color: #fff;
  color: #00A6DC;
}
.nav__inner__box .nav__inner__box__introduceblock a.sin:hover {
  background-color: #FCC103;
  border-radius: 11px;
  opacity: 1;
}
.nav__inner__box .nav__inner__box__introduceblock a.sin:hover .cat {
  background-color: #fff;
  color: #FCC103;
}
.nav__inner__box .nav__inner__box__introduceblock a.highway_system:hover {
  background-color: #54CDA3;
  border-radius: 11px;
  opacity: 1;
}
.nav__inner__box .nav__inner__box__introduceblock a.highway_system:hover .cat {
  background-color: #fff;
  color: #54CDA3;
}
.nav__inner__box .nav__inner__box__introduceblock a span {
  display: block;
  color: #fff;
}
.nav__inner__box .nav__inner__box__introduceblock a .title {
  font-size: 20px;
  font-weight: bold;
  letter-spacing: 0.06em;
  color: #fff;
  text-align: center;
  margin-top: 8px;
  line-height: 1.35;
}
@media screen and (max-width: 1023px) {
  .nav__inner__box .nav__inner__box__introduceblock a .title {
    font-size: 14px;
  }
}
.nav__inner__box .nav__inner__box__introduceblock a .cat {
  font-size: 12px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  margin: 0 auto;
  padding-right: 4px;
  padding-left: 4px;
  padding-top: 4px;
  padding-bottom: 4px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.nav__inner__box .nav__inner__box__introduceblock a .arrow {
  width: 16px;
  height: 16px;
  margin: 0 auto;
  line-height: 1;
  margin-top: 4px;
}
.nav__inner__box .nav__inner__box__introduceblock.desire_s {
  background: url("../img/top/nav_back_01.png") no-repeat;
  position: relative;
  background-size: cover;
}
.nav__inner__box .nav__inner__box__introduceblock.desire_s .cat {
  background-color: #00A6DC;
}
.nav__inner__box .nav__inner__box__introduceblock.sin {
  background: url("../img/top/nav_back_02.png") no-repeat;
  position: relative;
  background-size: cover;
}
.nav__inner__box .nav__inner__box__introduceblock.sin .cat {
  background-color: #FCC103;
}
.nav__inner__box .nav__inner__box__introduceblock.highway {
  background: url("../img/top/nav_back_03.png") no-repeat;
  position: relative;
  background-size: cover;
}
.nav__inner__box .nav__inner__box__introduceblock.highway .cat {
  background-color: #54CDA3;
}
.nav__inner__box .nav__inner__box__introduceblock.highway .arrow {
  margin-top: 0;
}

.nav__contact__bottom {
  position: fixed;
  bottom: 0;
  -webkit-transform: translateY(140%);
          transform: translateY(140%);
  z-index: 12;
  padding: 4px;
  background-color: #282828;
  width: 100%;
}
.nav__contact__bottom.active {
  -webkit-transform: translateY(0%);
          transform: translateY(0%);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.nav__contact__bottom ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.nav__contact__bottom ul li {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 16%;
          flex: 0 0 16%;
  padding-right: 16px;
  height: 90px;
}
@media screen and (max-width: 1300px) {
  .nav__contact__bottom ul li {
    height: initial;
    padding-right: 8px;
  }
}
@media screen and (max-width: 767px) {
  .nav__contact__bottom ul li {
    display: none;
  }
}
.nav__contact__bottom ul li a {
  cursor: pointer;
}
.nav__contact__bottom ul .btnblock {
  padding-right: 0;
  margin-top: -48px;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 20%;
          flex: 0 0 20%;
}
@media screen and (max-width: 1300px) {
  .nav__contact__bottom ul .btnblock {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 240px;
            flex: 0 0 240px;
  }
}
@media screen and (max-width: 767px) {
  .nav__contact__bottom ul .btnblock {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
  }
}
.nav__contact__bottom ul .btnblock a {
  height: 80px;
  cursor: pointer;
}
@media screen and (max-width: 1300px) {
  .nav__contact__bottom ul .btnblock a {
    height: 55px;
  }
}
@media screen and (max-width: 767px) {
  .nav__contact__bottom ul .btnblock a {
    height: 100px;
  }
}
@media screen and (max-width: 480px) {
  .nav__contact__bottom ul .btnblock a {
    height: 80px;
  }
}
.nav__contact__bottom ul .btnblock a:nth-child(2n) {
  margin-top: -10px;
}
@media screen and (max-width: 767px) {
  .nav__contact__bottom ul .btnblock a:nth-child(2n) {
    margin-top: initial;
  }
}

.nav__sp__block-btn {
  display: none;
}
@media screen and (max-width: 767px) {
  .nav__sp__block-btn {
    display: block;
    position: fixed;
    width: 50px;
    height: 50px;
    top: 10px;
    right: 20px;
    cursor: pointer;
    z-index: 21;
  }
}
@media screen and (max-width: 480px) {
  .nav__sp__block-btn {
    top: 8px;
  }
}

.nav__sp__block__content {
  display: none;
}
.nav__sp__block__content.open {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 20;
  width: 100%;
  overflow: hidden;
  -webkit-animation: nav_appear 0.3s;
          animation: nav_appear 0.3s;
}

.nav__sp__block__content {
  padding-top: 80px;
  background: #00A6DC;
  height: 100%;
  overflow-y: scroll;
}
.nav__sp__block__content .nav__sp__wrapper {
  max-width: 80%;
  margin: 0 auto;
}
.nav__sp__block__content h3 {
  margin-top: 50px;
  max-width: 70%;
  margin: 0 auto;
  margin-bottom: 24px;
}
@media screen and (max-width: 480px) {
  .nav__sp__block__content h3 {
    max-width: 220px;
    margin: initial;
    margin-bottom: 24px;
  }
}
.nav__sp__block__content .desc {
  color: #fff;
  font-weight: bold;
  font-size: 16px;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  margin: 0 auto;
  text-align: center;
}
.nav__sp__block__content .navsp {
  margin-bottom: 32px;
  margin-top: 32px;
}
@media screen and (max-width: 767px) {
  .nav__sp__block__content .navsp {
    margin-top: 60px;
  }
}
@media screen and (max-width: 1300px) {
  .nav__sp__block__content .navsp {
    margin-bottom: 40px;
    margin-top: 20px;
  }
}
.nav__sp__block__content .navsp li {
  font-size: 14px;
  color: #fff;
  padding-bottom: 6px;
  margin-bottom: 10px;
}
@media screen and (max-width: 1300px) {
  .nav__sp__block__content .navsp li {
    margin-bottom: 2px;
  }
}
.nav__sp__block__content .navsp li.list .text {
  font-size: 20px;
  color: #fff;
}
.nav__sp__block__content .navsp li.list a {
  font-size: 16px;
  padding-left: 20px;
  padding-top: 6px;
  padding-bottom: 6px;
}
.nav__sp__block__content .navsp li a {
  font-size: 20px;
  padding-top: 8px;
  padding-bottom: 8px;
  font-weight: 400;
  letter-spacing: 0.05em;
  text-align: left;
  position: relative;
}
.nav__sp__block__content .telbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 32px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.nav__sp__block__content .telbox li {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 48%;
          flex: 0 0 48%;
  margin-top: 8px;
}
.nav__sp__block__content .btnbox {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.nav__sp__block__content .btnbox li {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 48%;
          flex: 0 0 48%;
}
.nav__sp__block__content .nav_sp_infoblock {
  color: #fff;
  font-size: 14px;
}

.swiper__footer .swiper-horizontal > .swiper-pagination-bullets,
.swiper__footer .swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper__footer .swiper-pagination-custom,
.swiper__footer .swiper-pagination-fraction {
  text-align: right;
  position: relative;
  left: initial;
  right: 0%;
  bottom: -15px;
  z-index: 2;
}
.swiper__footer .swiper-pagination-bullet {
  background-color: #fff;
}

.firstview__slider {
  position: relative;
}
.firstview__slider .catch {
  position: absolute;
  left: 16%;
  top: 75%;
  z-index: 10;
}
@media screen and (max-width: 767px) {
  .firstview__slider .catch {
    left: 5%;
    top: 80%;
  }
}
.firstview__slider .catch h2 {
  font-size: clamp(28px, 3.2352941176vw, 44px);
  font-weight: bold;
  letter-spacing: 0.06em;
  line-height: 1.4545454545;
}
@media screen and (max-width: 767px) {
  .firstview__slider .catch h2 {
    font-size: clamp(22px, 5.7291666667vw, 28px);
  }
}
@media screen and (max-width: 480px) {
  .firstview__slider .catch h2 {
    font-size: clamp(27px, 3.6458333333vw, 32px);
    padding-bottom: 20px;
  }
}

.firstview__back {
  background-color: #00A6DC;
  width: 40%;
  position: absolute;
  right: 0;
  top: 70%;
  z-index: 0;
  height: 60%;
}
@media screen and (max-width: 1023px) {
  .firstview__back {
    top: 50%;
  }
}
@media screen and (max-width: 480px) {
  .firstview__back {
    width: 80%;
    top: 19%;
    height: 80vw;
  }
}

.top__oursolution {
  margin-top: 18%;
  background-color: rgba(0, 166, 220, 0.07);
}
@media screen and (max-width: 480px) {
  .top__oursolution {
    margin-top: calc(-28vw + 179px);
  }
}
.top__oursolution .oursolution__title {
  font-size: 133px;
  color: #fff;
  line-height: 0.5;
}
@media screen and (max-width: 1023px) {
  .top__oursolution .oursolution__title {
    font-size: 80px;
  }
}
@media screen and (max-width: 767px) {
  .top__oursolution .oursolution__title {
    font-size: 46px;
    line-height: 0.8;
    position: relative;
    top: -12px;
  }
}
@media screen and (max-width: 480px) {
  .top__oursolution .oursolution__title {
    font-size: clamp(47px, 14.86px + 8.571vw, 56px);
    top: 0;
  }
}
.top__oursolution .oursolution__subtitle {
  font-size: 40px;
  color: #00A6DC;
  line-height: 1.575;
  letter-spacing: 0.06em;
  -webkit-font-feature-settings: initial;
          font-feature-settings: initial;
}
@media screen and (max-width: 1023px) {
  .top__oursolution .oursolution__subtitle {
    font-size: 32px;
  }
}
@media screen and (max-width: 767px) {
  .top__oursolution .oursolution__subtitle {
    font-size: clamp(27px, 6.96px + 5.344vw, 48px);
    line-height: 1.3333333333;
    margin-top: -10px;
    position: relative;
    z-index: 2;
  }
}
.top__oursolution .top__oursolution__content {
  max-width: 1200px;
  margin: 0 auto;
  margin-top: 80px;
  padding-bottom: 100px;
}
@media screen and (max-width: 1023px) {
  .top__oursolution .top__oursolution__content {
    max-width: 760px;
    margin-top: 60px;
    padding-bottom: 80px;
  }
}
@media screen and (max-width: 767px) {
  .top__oursolution .top__oursolution__content {
    margin-top: 36px;
    padding-bottom: 60px;
  }
}
.top__oursolution .top__oursolution__content__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 90px;
}
@media screen and (max-width: 1023px) {
  .top__oursolution .top__oursolution__content__box {
    gap: 40px;
  }
}
@media screen and (max-width: 767px) {
  .top__oursolution .top__oursolution__content__box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 20px;
  }
}
.top__oursolution .top__oursolution__content .textblock {
  padding-left: 64px;
  position: relative;
  padding-right: 26px;
}
@media screen and (max-width: 1023px) {
  .top__oursolution .top__oursolution__content .textblock {
    padding-right: 14px;
  }
}
@media screen and (max-width: 767px) {
  .top__oursolution .top__oursolution__content .textblock {
    padding-left: 24px;
    padding-right: 24px;
  }
}
.top__oursolution .top__oursolution__content .textblock h3 {
  font-size: 33px;
  line-height: 1.9696969697;
  font-weight: bold;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 1023px) {
  .top__oursolution .top__oursolution__content .textblock h3 {
    font-size: 24px;
  }
}
@media screen and (max-width: 767px) {
  .top__oursolution .top__oursolution__content .textblock h3 {
    font-size: 22px;
    line-height: 1.6363636364;
    margin-top: 8px;
  }
}
.top__oursolution .top__oursolution__content .textblock .desc {
  margin-top: 18px;
  font-size: 17px;
  font-weight: bold;
  line-height: 2.5294117647;
  letter-spacing: 0.02em;
  -webkit-font-feature-settings: initial;
          font-feature-settings: initial;
  padding-bottom: 20px;
}
@media screen and (max-width: 1023px) {
  .top__oursolution .top__oursolution__content .textblock .desc {
    font-size: 16px;
  }
}
@media screen and (max-width: 767px) {
  .top__oursolution .top__oursolution__content .textblock .desc {
    font-size: 16px;
    line-height: 2.1875;
  }
}
.top__oursolution .top__oursolution__content .textblock .text__design {
  position: absolute;
  -webkit-transform: translate(-28%, 184%) rotate(90deg);
          transform: translate(-28%, 184%) rotate(90deg);
  color: #00A6DC;
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 15px;
  top: 0;
  left: 0;
  line-height: 1.0666666667;
}
.top__oursolution .top__oursolution__content .textblock .text__design span {
  color: inherit;
}
@media screen and (max-width: 767px) {
  .top__oursolution .top__oursolution__content .textblock .text__design span {
    margin-left: 1em;
  }
}
@media screen and (max-width: 767px) {
  .top__oursolution .top__oursolution__content .textblock .text__design {
    position: relative;
    -webkit-transform: initial;
            transform: initial;
  }
  .top__oursolution .top__oursolution__content .textblock .text__design br {
    display: none;
  }
}
.top__oursolution .top__oursolution__content .textblock .sec01_btn {
  margin-top: 42px;
}
.top__oursolution .top__oursolution__content .itemblock {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 45%;
          flex: 0 0 45%;
  position: relative;
}
@media screen and (max-width: 767px) {
  .top__oursolution .top__oursolution__content .itemblock {
    padding: 0 5%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.top__oursolution .top__oursolution__content .itemblock .item01 {
  position: absolute;
  right: 0;
  top: 0;
  width: 336px;
}
@media screen and (max-width: 767px) {
  .top__oursolution .top__oursolution__content .itemblock .item01 {
    max-width: 400px;
    position: relative;
    margin: 0 auto;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 48%;
            flex: 0 0 48%;
  }
}
.top__oursolution .top__oursolution__content .itemblock .item02 {
  position: absolute;
  width: 336px;
  bottom: 0;
  left: 0;
}
@media screen and (max-width: 1023px) {
  .top__oursolution .top__oursolution__content .itemblock .item02 {
    left: -20px;
  }
}
@media screen and (max-width: 767px) {
  .top__oursolution .top__oursolution__content .itemblock .item02 {
    max-width: 400px;
    position: relative;
    margin: 0 auto;
    margin-top: 0;
    left: 0;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 48%;
            flex: 0 0 48%;
  }
}

.top__about__wrapper {
  max-width: 1200px;
  margin: 0 auto;
  padding-top: 280px;
}
@media screen and (max-width: 1023px) {
  .top__about__wrapper {
    max-width: 760px;
    padding-top: 140px;
  }
}
@media screen and (max-width: 767px) {
  .top__about__wrapper {
    padding: 0 5%;
    padding-top: 120px;
  }
}

.top__about__content__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 50px;
  position: relative;
  z-index: 2;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (max-width: 1023px) {
  .top__about__content__box {
    gap: 30px;
  }
}
@media screen and (max-width: 767px) {
  .top__about__content__box {
    display: block;
  }
}
.top__about__content__box .top__about__text {
  position: absolute;
  opacity: 0.4;
  color: #fff;
  -webkit-transform: translate(-32%, 85%) rotate(90deg);
          transform: translate(-32%, 85%) rotate(90deg);
  z-index: 2;
  font-size: 70px;
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-weight: bold;
  top: -225px;
  left: 100px;
  -webkit-font-feature-settings: initial;
          font-feature-settings: initial;
}
@media screen and (max-width: 1023px) {
  .top__about__content__box .top__about__text {
    top: -90px;
    font-size: 58px;
  }
}
@media screen and (max-width: 767px) {
  .top__about__content__box .top__about__text {
    font-size: clamp(70px, 988.42px - 244.912vw, 768px);
    top: 6%;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    left: 79%;
    letter-spacing: 0;
    color: #00A6DC;
    opacity: 0.1;
    line-height: 1;
  }
}
.top__about__content__box .itemblock {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
          flex: 0 0 50%;
}
@media screen and (max-width: 1023px) {
  .top__about__content__box .itemblock {
    padding-left: 20px;
  }
}
@media screen and (max-width: 767px) {
  .top__about__content__box .itemblock {
    padding-left: 0px;
    position: relative;
    left: -6%;
  }
}
.top__about__content__box .textblock {
  position: relative;
  padding-right: 80px;
  padding-top: 4px;
}
@media screen and (max-width: 1023px) {
  .top__about__content__box .textblock {
    padding-right: 40px;
  }
}
@media screen and (max-width: 767px) {
  .top__about__content__box .textblock {
    padding-right: 0;
    margin-top: 20px;
  }
}
.top__about__content__box .textblock h3 {
  font-size: 33px;
  line-height: 1.9696969697;
  font-weight: bold;
  letter-spacing: 0.06em;
}
.top__about__content__box .textblock .desc {
  margin-top: -10px;
  font-size: 17px;
  font-weight: bold;
  line-height: 2.5294117647;
  letter-spacing: 0.02em;
  -webkit-font-feature-settings: initial;
          font-feature-settings: initial;
}
@media screen and (max-width: 1023px) {
  .top__about__content__box .textblock .desc {
    font-size: 15px;
  }
}
@media screen and (max-width: 767px) {
  .top__about__content__box .textblock .desc {
    font-size: 16px;
    line-height: 2.1875;
    padding-left: 17px;
    margin-top: 10px;
  }
}
.top__about__content__box .textblock .text__design {
  position: absolute;
  -webkit-transform: translate(-32%, 85%) rotate(90deg);
          transform: translate(-32%, 85%) rotate(90deg);
  color: #00A6DC;
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 15px;
  top: 0;
  left: 0;
}
.top__about__content__box .textblock .sec02_btn {
  margin-top: 44px;
  max-width: 300px;
}
@media screen and (max-width: 1023px) {
  .top__about__content__box .textblock .sec02_btn {
    margin-top: 40px;
  }
}
@media screen and (max-width: 767px) {
  .top__about__content__box .textblock .sec02_btn {
    margin: 0 auto;
    margin-top: 24px;
  }
}

.top__about {
  position: relative;
  padding-bottom: 180px;
  background-color: rgba(0, 166, 220, 0.07);
}
@media screen and (max-width: 1023px) {
  .top__about {
    padding-bottom: 120px;
  }
}
@media screen and (max-width: 480px) {
  .top__about {
    padding-bottom: 180px;
  }
}

.top__about__back01 {
  background-color: #00A6DC;
  position: absolute;
  width: 90%;
  left: 0;
  height: calc(100% - 110px);
  top: 0;
  z-index: 0;
}
@media screen and (max-width: 1023px) {
  .top__about__back01 {
    height: calc(100% - 55px);
  }
}
@media screen and (max-width: 1023px) and (max-width: 767px) {
  .top__about__back01 {
    width: 83%;
  }
}
@media screen and (max-width: 1023px) and (max-width: 480px) {
  .top__about__back01 {
    height: calc(100% - 70px);
  }
}

.top__about__back02 {
  background-color: #fff;
  position: absolute;
  width: 70%;
  right: 0;
  height: 74%;
  top: 150px;
  z-index: 0;
}
@media screen and (max-width: 1023px) {
  .top__about__back02 {
    top: 70px;
    height: 77%;
  }
}
@media screen and (max-width: 767px) {
  .top__about__back02 {
    width: 83%;
    height: 79%;
  }
}
@media screen and (max-width: 480px) {
  .top__about__back02 {
    height: 80%;
    width: 95%;
  }
}

.top__lineup {
  padding-top: 128px;
  padding-bottom: 160px;
}
@media screen and (max-width: 1023px) {
  .top__lineup {
    padding-top: 60px;
    padding-bottom: 100px;
  }
}
@media screen and (max-width: 767px) {
  .top__lineup {
    padding-top: 40px;
    padding-bottom: 80px;
  }
}

.top__lineup__wrapper {
  max-width: 1000px;
  margin: 0 auto;
}
@media screen and (max-width: 1023px) {
  .top__lineup__wrapper {
    max-width: 760px;
    padding: 0 2%;
  }
}
@media screen and (max-width: 767px) {
  .top__lineup__wrapper {
    padding: 0 5%;
  }
}

.top__lineup__content {
  margin-top: 68px;
}
@media screen and (max-width: 767px) {
  .top__lineup__content {
    margin-top: 30px;
  }
}

.top__lineup__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 60px;
  margin-top: 48px;
  padding: 32px 29px;
  background-color: #f2f6f9;
}
@media screen and (max-width: 1023px) {
  .top__lineup__box {
    gap: 30px;
    margin-top: 28px;
  }
}
@media screen and (max-width: 767px) {
  .top__lineup__box {
    display: block;
  }
}
.top__lineup__box .itemblock {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 368px;
          flex: 0 0 368px;
}
@media screen and (max-width: 1023px) {
  .top__lineup__box .itemblock {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 200px;
            flex: 0 0 200px;
  }
}
.top__lineup__box .textblock .cat {
  font-size: 14px;
}
@media screen and (max-width: 767px) {
  .top__lineup__box .textblock .cat {
    margin-top: 16px;
  }
}
.top__lineup__box .textblock .cat a {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  background-color: #00A6DC;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-left: 18px;
  padding-right: 18px;
}
.top__lineup__box .textblock h3 {
  font-size: 33px;
  font-weight: bold;
  margin-top: 20px;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 1023px) {
  .top__lineup__box .textblock h3 {
    font-size: 24px;
  }
}
@media screen and (max-width: 767px) {
  .top__lineup__box .textblock h3 {
    font-size: 25px;
    line-height: 1.4;
  }
}
.top__lineup__box .textblock h3 span {
  font-size: 24px;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 767px) {
  .top__lineup__box .textblock h3 span {
    font-size: 25px;
  }
}
.top__lineup__box .textblock h3 span.desire-m {
  font-size: 33px;
}
@media screen and (max-width: 767px) {
  .top__lineup__box .textblock h3 span.desire-m {
    font-size: 25px;
    line-height: 1.4;
  }
}
.top__lineup__box .textblock .desc {
  margin-top: 20px;
  font-size: 16px;
  font-weight: bold;
  line-height: 2.0625;
  letter-spacing: 0.02em;
  -webkit-font-feature-settings: initial;
          font-feature-settings: initial;
  max-width: 446px;
}
@media screen and (max-width: 1023px) {
  .top__lineup__box .textblock .desc {
    font-size: 15px;
  }
}
@media screen and (max-width: 767px) {
  .top__lineup__box .textblock .desc {
    font-size: 16px;
  }
}
.top__lineup__box .textblock .link {
  margin-top: 16px;
}
@media screen and (max-width: 480px) {
  .top__lineup__box .textblock .link {
    margin-top: 22px;
    margin-bottom: 4px;
  }
}
.top__lineup__box .textblock .link a {
  color: #00A6DC;
  font-weight: bold;
  letter-spacing: 0.02em;
  position: relative;
  line-height: 1;
  display: block;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  font-size: 14px;
}
.top__lineup__box .textblock .link a:hover:before {
  -webkit-transition: all 0.1s;
  transition: all 0.1s;
  width: 11px;
  height: 8px;
  background: url("../img/top/btn_icon_hover.svg") no-repeat;
  background-size: contain;
  display: inline-block;
  content: "";
  position: absolute;
  right: -24px;
  top: 3px;
  z-index: 2;
}
.top__lineup__box .textblock .link a:hover:after {
  width: 22px;
  height: 22px;
  background-color: rgba(0, 166, 220, 0.93);
  border-radius: 50%;
  display: inline-block;
  content: "";
  position: absolute;
  right: -30px;
  top: -4px;
}
@media screen and (max-width: 480px) {
  .top__lineup__box .textblock .link a:hover:after {
    right: -35px;
  }
}
.top__lineup__box .textblock .link a:after {
  width: 22px;
  height: 22px;
  background-color: rgba(0, 166, 220, 0.64);
  border-radius: 50%;
  display: inline-block;
  content: "";
  position: absolute;
  right: -30px;
  top: -4px;
}
@media screen and (max-width: 480px) {
  .top__lineup__box .textblock .link a:after {
    right: -35px;
  }
}
.top__lineup__box .textblock .link a:before {
  width: 6px;
  height: 6px;
  background-color: #fff;
  border-radius: 50%;
  display: inline-block;
  content: "";
  position: absolute;
  right: -22px;
  top: 4px;
  z-index: 2;
}
@media screen and (max-width: 480px) {
  .top__lineup__box .textblock .link a:before {
    right: -27px;
  }
}
.top__lineup__box.ver2 .cat a {
  background-color: #FCC103;
}
.top__lineup__box.ver2 .link a {
  color: #FCC103;
}
.top__lineup__box.ver2 .link a:hover:before {
  -webkit-transition: all 0.1s;
  transition: all 0.1s;
  width: 11px;
  height: 8px;
  background: url("../img/top/btn_icon_hover.svg") no-repeat;
  background-size: contain;
  display: inline-block;
  content: "";
  position: absolute;
  right: -24px;
  top: 3px;
  z-index: 2;
}
.top__lineup__box.ver2 .link a:hover:after {
  width: 22px;
  height: 22px;
  background-color: rgba(252, 193, 3, 0.93);
  border-radius: 50%;
  display: inline-block;
  content: "";
  position: absolute;
  right: -30px;
  top: -4px;
}
@media screen and (max-width: 480px) {
  .top__lineup__box.ver2 .link a:hover:after {
    right: -35px;
  }
}
.top__lineup__box.ver2 .link a:after {
  background-color: rgba(252, 193, 3, 0.64);
}
.top__lineup__box.ver3 .cat a {
  background-color: #54CDA3;
}
.top__lineup__box.ver3 .link a {
  color: #54CDA3;
}
.top__lineup__box.ver3 .link a:after {
  background-color: rgba(84, 205, 163, 0.64);
}
.top__lineup__box.ver3 .link a:hover:before {
  -webkit-transition: all 0.1s;
  transition: all 0.1s;
  width: 11px;
  height: 8px;
  background: url("../img/top/btn_icon_hover.svg") no-repeat;
  background-size: contain;
  display: inline-block;
  content: "";
  position: absolute;
  right: -24px;
  top: 3px;
  z-index: 2;
}
.top__lineup__box.ver3 .link a:hover:after {
  width: 22px;
  height: 22px;
  background-color: rgba(84, 205, 163, 0.93);
  border-radius: 50%;
  display: inline-block;
  content: "";
  position: absolute;
  right: -30px;
  top: -4px;
}
@media screen and (max-width: 480px) {
  .top__lineup__box.ver3 .link a:hover:after {
    right: -35px;
  }
}

.top__news__wrapper {
  padding-bottom: 120px;
}
@media screen and (max-width: 1023px) {
  .top__news__wrapper {
    padding-bottom: 80px;
  }
}

.top__topics {
  background-color: rgba(0, 166, 220, 0.07);
  padding-top: 128px;
}
@media screen and (max-width: 1023px) {
  .top__topics {
    padding-top: 80px;
  }
}
@media screen and (max-width: 767px) {
  .top__topics {
    padding-top: 60px;
  }
}

.top__info__wrapper {
  max-width: 1000px;
  margin: 0 auto;
  margin-top: 64px;
}
@media screen and (max-width: 1023px) {
  .top__info__wrapper {
    max-width: 760px;
  }
}
@media screen and (max-width: 767px) {
  .top__info__wrapper {
    padding: 0 5%;
    margin-top: 30px;
  }
}
.top__info__wrapper ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 26px;
}
@media screen and (max-width: 1023px) {
  .top__info__wrapper ul {
    gap: 2%;
  }
}
@media screen and (max-width: 767px) {
  .top__info__wrapper ul {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.top__info__wrapper ul li {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 33%;
          flex: 0 0 33%;
}
@media screen and (max-width: 767px) {
  .top__info__wrapper ul li {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
  }
}
@media screen and (max-width: 767px) {
  .top__info__wrapper ul li {
    margin-top: 40px;
  }
}
@media screen and (max-width: 767px) {
  .top__info__wrapper ul li:first-child {
    margin-top: 10px;
  }
}
.top__info__wrapper ul li .thumb {
  height: 167px;
}
@media screen and (max-width: 767px) {
  .top__info__wrapper ul li .thumb {
    height: 240px;
  }
}
@media screen and (max-width: 480px) {
  .top__info__wrapper ul li .thumb {
    height: auto;
  }
}
.top__info__wrapper ul li .thumb img {
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 480px) {
  .top__info__wrapper ul li .thumb img {
    -o-object-fit: contain;
       object-fit: contain;
  }
}
.top__info__wrapper ul li .time {
  font-size: 15px;
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  margin-top: 24px;
}
@media screen and (max-width: 1023px) {
  .top__info__wrapper ul li .time {
    font-size: 14px;
  }
}
@media screen and (max-width: 767px) {
  .top__info__wrapper ul li .time {
    margin-top: 16px;
  }
}
.top__info__wrapper ul li h4 {
  font-size: 16px;
  font-weight: bold;
  line-height: 1.5625;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 1023px) {
  .top__info__wrapper ul li h4 {
    font-size: 15px;
  }
}
@media screen and (max-width: 767px) {
  .top__info__wrapper ul li h4 {
    font-size: 16px;
  }
}

.top__topics .sec04_btn {
  margin: 0 auto;
  margin-top: 65px;
}
@media screen and (max-width: 767px) {
  .top__topics .sec04_btn {
    margin-top: 40px;
  }
}
.top__topics .sec04_btn .c-btn {
  margin: 0 auto;
}

@media screen and (max-width: 1023px) {
  .page__about .c-page__title__block .itemblock {
    display: none;
  }
}

.page__about__catch {
  margin-top: 60px;
  height: 566px;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .page__about__catch {
    height: 300px;
  }
}
@media screen and (max-width: 480px) {
  .page__about__catch {
    height: 225px;
    margin-top: 48px;
  }
}
.page__about__catch img {
  -o-object-fit: cover;
     object-fit: cover;
}

.page__about__message {
  background-color: #fff;
  padding-top: 80px;
  background-color: rgba(0, 166, 220, 0.07);
  position: relative;
}
@media screen and (max-width: 1023px) {
  .page__about__message {
    padding-top: 60px;
  }
}
@media screen and (max-width: 480px) {
  .page__about__message {
    padding-top: 40px;
  }
}

.page__about__message__content {
  position: relative;
  z-index: 3;
  margin-top: 340px;
  padding-bottom: 400px;
}
@media screen and (max-width: 1023px) {
  .page__about__message__content {
    margin-top: 160px;
    padding-bottom: 240px;
  }
}
@media screen and (max-width: 767px) {
  .page__about__message__content {
    margin-top: 160px;
    padding-bottom: 270px;
  }
}
@media screen and (max-width: 480px) {
  .page__about__message__content {
    padding-bottom: 160px;
    margin-top: 138px;
  }
}
.page__about__message__content .wrapper {
  max-width: 730px;
  margin: 0 auto;
}
@media screen and (max-width: 1023px) {
  .page__about__message__content .wrapper {
    max-width: 550px;
  }
}
.page__about__message__content h3 {
  font-size: 33px;
  line-height: 1.6666666667;
  letter-spacing: 0.05em;
  font-weight: bold;
}
@media screen and (max-width: 1023px) {
  .page__about__message__content h3 {
    font-size: 28px;
  }
}
@media screen and (max-width: 767px) {
  .page__about__message__content h3 {
    font-size: 20px;
  }
}
@media screen and (max-width: 480px) {
  .page__about__message__content h3 {
    font-size: 22px;
    padding-right: 40px;
  }
}
.page__about__message__content .about__message__text {
  margin-top: 36px;
  margin-bottom: 50px;
  font-size: 17px;
  line-height: 2.5294117647;
  letter-spacing: 0.029em;
  font-weight: bold;
  -webkit-font-feature-settings: initial;
          font-feature-settings: initial;
}
@media screen and (max-width: 1023px) {
  .page__about__message__content .about__message__text {
    font-size: 16px;
  }
}
@media screen and (max-width: 767px) {
  .page__about__message__content .about__message__text {
    font-size: 16px;
    margin-top: 20px;
    margin-bottom: 20px;
    line-height: 2.1875;
  }
}
@media screen and (max-width: 480px) {
  .page__about__message__content .about__message__text.sp_dn {
    display: none;
  }
}

.about__message__back01 {
  background-color: #00A6DC;
  height: 1664px;
  width: 87%;
  margin: 0 auto 0 0;
  position: absolute;
  right: 0;
  top: 276px;
  z-index: 1;
}
@media screen and (max-width: 1023px) {
  .about__message__back01 {
    top: 200px;
    height: 1400px;
  }
}
@media screen and (max-width: 767px) {
  .about__message__back01 {
    height: 1120px;
  }
}
@media screen and (max-width: 480px) {
  .about__message__back01 {
    top: 150px;
  }
}
@media screen and (max-width: 480px) {
  .about__message__back01 {
    height: 894px;
  }
}

.about__message__back02 {
  height: 1304px;
  background-color: #fff;
  width: 87%;
  margin: 0 0 auto 0;
  position: absolute;
  left: 0;
  top: 436px;
  z-index: 2;
}
@media screen and (max-width: 1023px) {
  .about__message__back02 {
    top: 260px;
    height: 1255px;
  }
}
@media screen and (max-width: 767px) {
  .about__message__back02 {
    top: 240px;
    height: 1000px;
  }
}
@media screen and (max-width: 480px) {
  .about__message__back02 {
    top: 208px;
    height: 784px;
  }
}

.about__overview {
  background-color: rgba(0, 166, 220, 0.07);
}

.about__overview {
  padding-bottom: 180px;
}
@media screen and (max-width: 767px) {
  .about__overview {
    padding-bottom: 80px;
  }
}

.about__overview__content {
  max-width: 1000px;
  margin: 0 auto;
  margin-top: 70px;
}
.about__overview__content dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-top: 1px solid #282828;
  padding-top: 24px;
  padding-bottom: 24px;
}
@media screen and (max-width: 480px) {
  .about__overview__content dl {
    display: block;
  }
}
.about__overview__content dl:last-child {
  border-bottom: 1px solid #282828;
}
@media screen and (max-width: 480px) {
  .about__overview__content dl:first-child {
    border: none;
  }
}
.about__overview__content dl dt {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 218px;
          flex: 0 0 218px;
  color: #00A6DC;
  font-size: 17px;
  -webkit-font-feature-settings: initial;
          font-feature-settings: initial;
  font-weight: initial;
  padding-left: 40px;
}
@media screen and (max-width: 767px) {
  .about__overview__content dl dt {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100px;
            flex: 0 0 100px;
    font-size: 16px;
  }
}
@media screen and (max-width: 480px) {
  .about__overview__content dl dt {
    font-size: 16px;
    padding-left: 0;
    margin-bottom: 10px;
    font-weight: 500;
  }
}
.about__overview__content dl dd {
  font-size: 17px;
  -webkit-font-feature-settings: initial;
          font-feature-settings: initial;
}
@media screen and (max-width: 767px) {
  .about__overview__content dl dd {
    font-size: 16px;
    font-weight: 400;
  }
}
.about__overview__content dl .text {
  line-height: 2;
}

.page__privacypolicy .wrapper {
  max-width: 1000px;
  margin: 0 auto;
}
@media screen and (max-width: 1023px) {
  .page__privacypolicy .wrapper {
    padding: 0 5%;
  }
}

.page__privacypolicy .c-page__title__block {
  padding-bottom: 100px;
}
@media screen and (max-width: 767px) {
  .page__privacypolicy .c-page__title__block {
    padding-bottom: 60px;
  }
}

.page__privacypolicy__content {
  padding-top: 80px;
  background-color: rgba(0, 166, 220, 0.07);
  padding-bottom: 160px;
}
@media screen and (max-width: 767px) {
  .page__privacypolicy__content {
    padding-bottom: 80px;
    padding-top: 60px;
  }
}
.page__privacypolicy__content .desc {
  font-size: 16px;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .page__privacypolicy__content .desc {
    font-size: 14px;
  }
}

.page__privacypolicy__content__block {
  margin-top: 60px;
}
@media screen and (max-width: 480px) {
  .page__privacypolicy__content__block {
    margin-top: 30px;
  }
}
.page__privacypolicy__content__block .title {
  font-size: 24px;
  font-weight: bold;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .page__privacypolicy__content__block .title {
    font-size: 15px;
  }
}
.page__privacypolicy__content__block .text {
  font-weight: 400;
  margin-top: 20px;
  line-height: 2;
  -webkit-font-feature-settings: initial;
          font-feature-settings: initial;
}
@media screen and (max-width: 767px) {
  .page__privacypolicy__content__block .text {
    margin-top: 10px;
  }
}

.topics__archiveblock {
  margin-top: 80px;
  padding-top: 80px;
  background-color: rgba(0, 166, 220, 0.07);
  padding-bottom: 160px;
}
@media screen and (max-width: 767px) {
  .topics__archiveblock {
    padding-bottom: 80px;
    margin-top: 60px;
  }
}
.topics__archiveblock .wrapper {
  max-width: 914px;
  margin: 0 auto;
}
@media screen and (max-width: 1023px) {
  .topics__archiveblock .wrapper {
    padding: 0 5%;
  }
}
@media screen and (max-width: 480px) {
  .topics__archiveblock .wrapper {
    padding: 0 10%;
  }
}
.topics__archiveblock .topics__archive__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 24px;
  border-top: 1px solid #282828;
  padding-top: 35px;
  padding-bottom: 35px;
}
.topics__archiveblock .topics__archive__box:last-child {
  border-bottom: 1px solid #282828;
}
@media screen and (max-width: 480px) {
  .topics__archiveblock .topics__archive__box {
    display: block;
  }
}
.topics__archiveblock .topics__archive__box .topics__itemblock {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 300px;
          flex: 0 0 300px;
  height: 158px;
}
@media screen and (max-width: 767px) {
  .topics__archiveblock .topics__archive__box .topics__itemblock {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 150px;
            flex: 0 0 150px;
    height: 100px;
  }
}
@media screen and (max-width: 480px) {
  .topics__archiveblock .topics__archive__box .topics__itemblock {
    height: auto;
  }
}
.topics__archiveblock .topics__archive__box .topics__itemblock img {
  -o-object-fit: cover;
     object-fit: cover;
}
.topics__archiveblock .topics__archive__box .topics__textblock {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
.topics__archiveblock .topics__archive__box .topics__textblock .date {
  font-family: "Quicksand", sans-serif;
  font-weight: bold;
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  .topics__archiveblock .topics__archive__box .topics__textblock .date {
    font-size: 14px;
    margin-top: 20px;
  }
}
.topics__archiveblock .topics__archive__box .topics__textblock .text {
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 0.02em;
  -webkit-font-feature-settings: initial;
          font-feature-settings: initial;
}
@media screen and (max-width: 767px) {
  .topics__archiveblock .topics__archive__box .topics__textblock .text {
    font-size: 15px;
  }
}

.pagination-list {
  margin-top: 64px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.pagination-list .page-numbers {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 7px;
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}
.pagination-list span {
  background-color: #fff;
  width: 28px;
  height: 29px;
  border-radius: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #00A6DC;
}
.pagination-list span.current {
  background-color: #00A6DC;
  color: #fff;
}
.pagination-list a {
  background-color: #fff;
  width: 28px;
  height: 29px;
  border-radius: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #00A6DC;
}
.pagination-list a.next {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  padding-left: 10px;
  padding-right: 10px;
  background-color: initial;
}
.pagination-list a.prev {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  padding-left: 10px;
  padding-right: 10px;
  background-color: initial;
}

.arrow-nav {
  height: 14px;
}

.contact__content {
  background-color: rgba(0, 166, 220, 0.07);
  padding-top: 80px;
  margin-top: 90px;
  padding-bottom: 160px;
}
@media screen and (max-width: 767px) {
  .contact__content {
    margin-top: 60px;
    padding-bottom: 80px;
  }
}
.contact__content .wrapper {
  max-width: 1000px;
  margin: 0 auto;
}
@media screen and (max-width: 1023px) {
  .contact__content .wrapper {
    padding: 0 5%;
  }
}

.contact__text {
  background-color: #fff;
  padding-top: 24px;
  padding-bottom: 24px;
  max-width: 870px;
  margin: 0 auto;
}
.contact__text .text {
  font-size: 17px;
  font-weight: 500;
  line-height: 1.9411764706;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .contact__text .text {
    font-size: 15px;
    padding: 0 5%;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .contact__text .text br {
    display: none;
  }
}
.contact__text .tel {
  font-size: 36px;
  font-weight: bold;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .contact__text .tel {
    font-size: 28px;
  }
}
.contact__text .desc {
  font-size: 17px;
  font-weight: 500;
  text-align: center;
  margin-top: 10px;
}
@media screen and (max-width: 767px) {
  .contact__text .desc {
    font-size: 15px;
  }
}

.contact__formblock .contact__confirm {
  font-size: 22px;
  font-weight: 500;
  text-align: center;
  margin-top: 60px;
  line-height: 1.8181818182;
}
@media screen and (max-width: 767px) {
  .contact__formblock .contact__confirm {
    font-size: 17px;
  }
}
.contact__formblock .contact__block {
  margin-top: 50px;
}
.contact__formblock .contact__title {
  font-size: 18px;
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  margin-bottom: 15px;
}
@media screen and (max-width: 767px) {
  .contact__formblock .contact__title {
    font-size: 16px;
  }
}
.contact__formblock .contact__title span {
  border: 1px solid #00A6DC;
  border-radius: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #fff;
  font-size: 14px;
  font-weight: bold;
  color: #00A6DC;
  padding: 3px 13px 3px 13px;
}
.contact__formblock .contact__title .any {
  border: 1px solid #bebebe;
  color: #bebebe;
}
.contact__formblock .contact__nameblock {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 30px;
}
@media screen and (max-width: 767px) {
  .contact__formblock .contact__nameblock {
    display: block;
  }
}
.contact__formblock .contact__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 15px;
}
@media screen and (max-width: 767px) {
  .contact__formblock .contact__box {
    margin-top: 20px;
  }
}
.contact__formblock input {
  background-color: #fff;
  padding: 14px 25px;
  width: 100%;
}
.contact__formblock input[name=address] {
  margin-top: 14px;
}
.contact__formblock input::-webkit-input-placeholder {
  color: #bebebe;
}
.contact__formblock input::-moz-placeholder {
  color: #bebebe;
}
.contact__formblock input:-ms-input-placeholder {
  color: #bebebe;
}
.contact__formblock input::-ms-input-placeholder {
  color: #bebebe;
}
.contact__formblock input::placeholder {
  color: #bebebe;
}
.contact__formblock .contact__name {
  font-weight: 500;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
.contact__formblock .mw_wp_form .mwform-checkbox-field {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.contact__formblock .mw_wp_form .mwform-checkbox-field.horizontal-item {
  margin-left: 0;
  margin-top: 18px;
}
.contact__formblock .mw_wp_form .mwform-checkbox-field input {
  width: initial;
  width: 24px;
  height: 24px;
}
.contact__formblock .mw_wp_form .mwform-checkbox-field input[type=checkbox] {
  display: none;
}
.contact__formblock textarea {
  background-color: #fff;
  width: 100%;
  padding: 16px 25px;
  color: #282828;
  font-size: 16px;
}

.check_btn td {
  margin-top: 10px;
}

.check_btn input[type=checkbox].check_btn_item {
  display: none;
}

.check_btn label {
  display: inline-block;
}

.check_btn .check_btn_item + span {
  padding-left: 40px;
  display: inline-block;
  position: relative;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .check_btn .check_btn_item + span {
    font-size: 14px;
  }
}

.check_btn .check_btn_item + span::after,
.check_btn .check_btn_item + span::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
}

.check_btn .check_btn_item + span::before {
  border: 1px solid #aaaaaa;
  border-radius: 4px;
  left: 0;
  height: 24px;
  width: 24px;
  background-color: #fff;
}

.check_btn .check_btn_item + span::after {
  border: none;
  border-right: 3px solid #00A6DC;
  border-bottom: 3px solid #00A6DC;
  height: 12px;
  left: 9px;
  opacity: 0;
  top: 4px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  width: 7px;
}

.check_btn .check_btn_item:checked + span::after {
  opacity: 1;
}

/*-- 
    privacypolicyに同意
    --*/
.contact__formblock .mw_wp_form .check_btn.privacy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.contact__formblock .mw_wp_form .check_btn.privacy .horizontal-item {
  margin-top: 0;
}
.contact__formblock .mw_wp_form .check_btn.privacy .contact_privacy_check {
  border: 1px solid #00A6DC;
  border-radius: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #fff;
  font-size: 14px;
  font-weight: bold;
  color: #00A6DC;
  padding: 3px 13px 3px 13px;
  margin-left: 10px;
}
@media screen and (max-width: 767px) {
  .contact__formblock .mw_wp_form .check_btn.privacy .contact_privacy_check {
    font-size: 12px;
  }
}
.contact__formblock .mw_wp_form .check_btn.privacy .mwform-checkbox-field-text {
  font-weight: bold;
  font-size: 17px;
  text-decoration: underline;
}
@media screen and (max-width: 767px) {
  .contact__formblock .mw_wp_form .check_btn.privacy .mwform-checkbox-field-text {
    font-size: 15px;
  }
}

/*--
contact__btn
--*/
.contact__btn {
  position: relative;
  max-width: 230px;
  margin: 0 auto;
}
.contact__btn button {
  border: 2px solid #00A6DC;
  border-radius: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #fff;
  font-size: 14px;
  font-weight: bold;
  color: #00A6DC;
  padding: 3px 13px 3px 13px;
  margin-left: 10px;
  position: relative;
  width: 100%;
  height: 60px;
  border-radius: 30px;
  margin: 0 auto;
  margin-top: 64px;
}
.contact__btn button:after {
  content: "";
  width: 20px;
  height: 20px;
  background: url("../img/contact/contact_arrow.png") no-repeat;
  background-size: contain;
  position: absolute;
  right: 10%;
  display: block;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

/*-- 
ボタンを画像か
---*/
.page__topic__article {
  margin-top: 80px;
  padding-top: 80px;
  background-color: rgba(0, 166, 220, 0.07);
  padding-bottom: 160px;
}
@media screen and (max-width: 767px) {
  .page__topic__article {
    margin-top: 60px;
    padding-top: 60px;
    padding-bottom: 80px;
  }
}
@media screen and (max-width: 480px) {
  .page__topic__article {
    padding-top: 50px;
    padding-bottom: 60px;
  }
}
.page__topic__article .wrapper {
  max-width: 914px;
  margin: 0 auto;
}
.page__topic__article .topics__textblock .date {
  font-size: 21px;
  font-family: "Quicksand", sans-serif;
  font-weight: bold;
  color: #00A6DC;
}
@media screen and (max-width: 767px) {
  .page__topic__article .topics__textblock .date {
    font-size: 16px;
  }
}
.page__topic__article .topics__textblock .title {
  font-size: 24px;
  font-weight: bold;
  letter-spacing: 0.02em;
  -webkit-font-feature-settings: initial;
          font-feature-settings: initial;
  margin-top: 10px;
  padding-bottom: 40px;
  border-bottom: 2px solid #282828;
}
@media screen and (max-width: 767px) {
  .page__topic__article .topics__textblock .title {
    font-size: 20px;
  }
}
@media screen and (max-width: 480px) {
  .page__topic__article .topics__textblock .title {
    font-size: 17px;
  }
}
.page__topic__article .topics__textblock .text {
  margin-top: 48px;
  font-size: 16px;
  line-height: 1.875;
}
@media screen and (max-width: 767px) {
  .page__topic__article .topics__textblock .text {
    margin-top: 32px;
  }
}
.page__topic__article .topics__textblock p {
  font-size: 16px;
  line-height: 1.875;
}
.page__topic__article .topics__itemblock {
  margin-top: 48px;
}

.topic__btnblock {
  margin: 0 auto;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 74px;
}
@media screen and (max-width: 480px) {
  .topic__btnblock {
    margin-top: 40px;
  }
}
.topic__btnblock .c-btn {
  margin: 0 auto;
}

#single-post_content * {
  font-size: revert;
  margin: revert;
  font-weight: revert;
}
#single-post_content p {
  padding-top: 0.01em;
  padding-bottom: 0.01em;
  margin-top: 0.5em;
  margin-bottom: 0.5em;
}
#single-post_content strong {
  color: revert;
}
#single-post_content span {
  color: revert;
}

.page__question__content {
  background-color: rgba(0, 166, 220, 0.07);
  margin-top: 70px;
  padding-top: 80px;
  padding-bottom: 160px;
}
@media screen and (max-width: 1023px) {
  .page__question__content {
    padding-top: 60px;
  }
}
@media screen and (max-width: 767px) {
  .page__question__content {
    padding-bottom: 80px;
    margin-top: 35px;
  }
}

.details {
  max-width: 1000px;
  margin: 0 auto;
  color: #00A6DC;
  line-height: 2;
}
@media screen and (max-width: 1023px) {
  .details {
    padding: 0 5%;
  }
}
.details__summary {
  position: relative;
  display: block;
  background: #fff;
  cursor: pointer;
  margin: 0;
  padding: 10px 40px 10px 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 12px;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.03em;
  border-radius: 12px;
  margin-top: 24px;
  color: #00A6DC;
}
@media screen and (max-width: 1023px) {
  .details__summary {
    font-size: 15px;
  }
}
@media screen and (max-width: 767px) {
  .details__summary {
    font-size: 15px;
  }
}
.details__summary::-webkit-details-marker {
  display: none;
}
.details__summary span {
  width: 39px;
  height: 39px;
  background-color: #00A6DC;
  color: #fff;
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-weight: bold;
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 22px;
}
@media screen and (max-width: 767px) {
  .details__summary span {
    width: 20px;
    height: 20px;
    font-size: 14px;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 20px;
            flex: 0 0 20px;
  }
}
.details__summary::before {
  display: block;
  content: "";
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: absolute;
  top: 50%;
  width: 16px;
  height: 2px;
  background-color: #00A6DC;
  right: 24px;
  -webkit-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
@media screen and (max-width: 767px) {
  .details__summary::before {
    right: 8px;
  }
}
@media screen and (max-width: 480px) {
  .details__summary::before {
    right: 11px;
  }
}
.details[open] .details__summary::before {
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
  background-color: #fff;
}
.details__summary::after {
  display: block;
  content: "";
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: absolute;
  top: 50%;
  width: 16px;
  height: 2px;
  background-color: #00A6DC;
  right: 24px;
  -webkit-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out;
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
}
@media screen and (max-width: 767px) {
  .details__summary::after {
    right: 8px;
  }
}
@media screen and (max-width: 480px) {
  .details__summary::after {
    right: 11px;
  }
}
.details[open] .details__summary::after {
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
  background-color: #fff;
}
.details__content {
  overflow: hidden;
  margin: 0;
  padding-left: 16px;
  padding-right: 16px;
  border-radius: 0px 0px 12px 12px;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 480px) {
  .details__content p {
    font-size: 15px;
  }
}
@media screen and (max-width: 767px) {
  .details__content br {
    display: none;
  }
}
.details__content.open {
  background-color: #fff;
}
.details__content > * {
  margin: 0;
  padding-top: 16px;
  padding-left: 20px;
}
.details__content > *:last-child {
  padding-bottom: 28px;
}

.details__summary.open {
  background-color: #00A6DC;
  color: #fff;
  border-radius: 12px 12px 0 0;
}
.details__summary.open span {
  background-color: #fff;
  color: #00A6DC;
}

.page__question__content__title {
  max-width: 1000px;
  margin: 0 auto;
  margin-top: 100px;
  margin-bottom: 40px;
}
@media screen and (max-width: 1023px) {
  .page__question__content__title {
    padding: 0 5%;
    margin-top: 80px;
  }
}
@media screen and (max-width: 767px) {
  .page__question__content__title {
    margin-top: 60px;
    margin-bottom: 30px;
  }
}
.page__question__content__title:first-child {
  margin-top: 20px;
}
.page__question__content__title h3 {
  color: #00A6DC;
  font-weight: bold;
  font-size: 28px;
  margin-left: 20px;
}
@media screen and (max-width: 767px) {
  .page__question__content__title h3 {
    font-size: 20px;
    line-height: 1.5;
  }
}
.page__question__content__title h3 span {
  color: #00A6DC;
  font-size: 1.2em;
  display: inline-block;
}
.page__question__content__title h3 .dib {
  font-size: 1em;
}
@media screen and (max-width: 480px) {
  .page__question__content__title h3 .dib {
    padding-left: 1em;
  }
}

.page__introduce__title {
  margin-top: 85px;
}
.page__introduce__title .wrapper {
  max-width: 1000px;
  padding-left: 45px;
  margin: 0 auto;
}
.page__introduce__title .page__introduce__title__titleblock {
  padding-left: 45px;
}
.page__introduce__title .page__introduce__title__titleblock .cat {
  font-size: 14px;
}
.page__introduce__title .page__introduce__title__titleblock .cat a {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  background-color: #00A6DC;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-left: 18px;
  padding-right: 18px;
}
.page__introduce__title .page__introduce__title__titleblock h2 {
  font-size: 38px;
  line-height: 1.7105263158;
  font-weight: bold;
  letter-spacing: 0.06em;
  margin-top: 4px;
}
.page__introduce__title .page__introduce__title__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 11%;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.page__introduce__title .page__introduce__title__box .textblock {
  padding-left: 45px;
}
.page__introduce__title .page__introduce__title__box .textblock .text {
  font-size: 16px;
  font-weight: bold;
  line-height: 2.0625;
  letter-spacing: 0.02em;
  -webkit-font-feature-settings: initial;
          font-feature-settings: initial;
}
.page__introduce__title .page__introduce__title__box .itemblock {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 220px;
          flex: 0 0 220px;
}

.page__introduce__catch {
  margin-top: 60px;
}
@media screen and (max-width: 480px) {
  .page__introduce__catch {
    height: 220px;
    margin-top: 50px;
  }
  .page__introduce__catch img {
    -o-object-fit: cover;
       object-fit: cover;
  }
}

.page__introduce__task {
  background-color: rgba(0, 166, 220, 0.07);
  padding-top: 100px;
}
@media screen and (max-width: 767px) {
  .page__introduce__task {
    padding-top: 90px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__task {
    padding-top: 70px;
  }
}
.page__introduce__task .wrapper {
  max-width: 1000px;
  margin: 0 auto;
}
@media screen and (max-width: 1023px) {
  .page__introduce__task .wrapper {
    max-width: 760px;
  }
}
@media screen and (max-width: 767px) {
  .page__introduce__task .wrapper {
    max-width: 500px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__task .wrapper {
    padding: 0;
    padding-right: 10px;
    padding-left: 10px;
  }
}

.page__introduce__task__titleblock {
  position: relative;
}
.page__introduce__task__titleblock h2 {
  font-size: 33px;
  letter-spacing: 0.06em;
  font-weight: bold;
  text-align: center;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(48%, transparent), color-stop(30%, #ffec00));
  background: linear-gradient(transparent 48%, #ffec00 30%);
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  margin: 0 auto;
}
@media screen and (max-width: 1023px) {
  .page__introduce__task__titleblock h2 {
    font-size: 28px;
  }
}
@media screen and (max-width: 767px) {
  .page__introduce__task__titleblock h2 {
    font-size: 24px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__task__titleblock h2 {
    font-size: 21px;
    letter-spacing: 0.06em;
  }
}
.page__introduce__task__titleblock .desc {
  position: absolute;
  top: -24px;
  left: 10.2%;
  -webkit-transform: rotate(-10deg);
          transform: rotate(-10deg);
  font-size: 25px;
  font-weight: bold;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 1023px) {
  .page__introduce__task__titleblock .desc {
    font-size: 20px;
  }
}
@media screen and (max-width: 767px) {
  .page__introduce__task__titleblock .desc {
    font-size: 17px;
    top: -40px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__task__titleblock .desc {
    -webkit-transform: initial;
            transform: initial;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}
.page__introduce__task__titleblock .desc span {
  font-size: 22px;
}
@media screen and (max-width: 767px) {
  .page__introduce__task__titleblock .desc span {
    font-size: 17px;
  }
}
.page__introduce__task__titleblock .desc:before {
  height: 35px;
  width: 2px;
  background-color: #000;
  -webkit-transform: rotate(-30deg);
          transform: rotate(-30deg);
  content: "";
  display: block;
  position: absolute;
  top: 3px;
  left: -20px;
}
@media screen and (max-width: 767px) {
  .page__introduce__task__titleblock .desc:before {
    height: 20px;
  }
}
.page__introduce__task__titleblock .desc:after {
  height: 35px;
  width: 2px;
  background-color: #000;
  -webkit-transform: rotate(30deg);
          transform: rotate(30deg);
  content: "";
  display: block;
  position: absolute;
  top: 3px;
  right: -20px;
}
@media screen and (max-width: 767px) {
  .page__introduce__task__titleblock .desc:after {
    height: 20px;
  }
}

.page__introduce__task__content__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-right: 10px;
  padding-left: 10px;
}
@media screen and (max-width: 767px) {
  .page__introduce__task__content__box {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__task__content__box {
    display: block;
    padding: 0;
  }
}
.page__introduce__task__content__box .page__introduce__task__content__box__block {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 247px;
          flex: 0 0 247px;
}
@media screen and (max-width: 1023px) {
  .page__introduce__task__content__box .page__introduce__task__content__box__block {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 24.5%;
            flex: 0 0 24.5%;
  }
}
@media screen and (max-width: 767px) {
  .page__introduce__task__content__box .page__introduce__task__content__box__block {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 45%;
            flex: 0 0 45%;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__task__content__box .page__introduce__task__content__box__block {
    max-width: 375px;
    margin: 0 auto;
  }
}
.page__introduce__task__content__box .page__introduce__task__content__box__block.second {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 232px;
          flex: 0 0 232px;
}
@media screen and (max-width: 1023px) {
  .page__introduce__task__content__box .page__introduce__task__content__box__block.second {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 24.5%;
            flex: 0 0 24.5%;
  }
}
@media screen and (max-width: 767px) {
  .page__introduce__task__content__box .page__introduce__task__content__box__block.second {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 45%;
            flex: 0 0 45%;
  }
}
.page__introduce__task__content__box .page__introduce__task__content__box__block.third {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 236px;
          flex: 0 0 236px;
}
@media screen and (max-width: 1023px) {
  .page__introduce__task__content__box .page__introduce__task__content__box__block.third {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 24.5%;
            flex: 0 0 24.5%;
  }
}
@media screen and (max-width: 767px) {
  .page__introduce__task__content__box .page__introduce__task__content__box__block.third {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 45%;
            flex: 0 0 45%;
    margin-top: 24px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__task__content__box .page__introduce__task__content__box__block.third {
    padding-left: 17px;
  }
}
.page__introduce__task__content__box .page__introduce__task__content__box__block.fourth {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 236px;
          flex: 0 0 236px;
}
@media screen and (max-width: 1023px) {
  .page__introduce__task__content__box .page__introduce__task__content__box__block.fourth {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 24.5%;
            flex: 0 0 24.5%;
  }
}
@media screen and (max-width: 767px) {
  .page__introduce__task__content__box .page__introduce__task__content__box__block.fourth {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 45%;
            flex: 0 0 45%;
    margin-top: 24px;
    padding-right: 17px;
  }
}
.page__introduce__task__content__box .page__introduce__task__content__box__block .titleblock {
  background: url("../img/page/desire_03.png") no-repeat;
  background-size: contain;
  height: 179px;
  padding-top: 30px;
}
@media screen and (max-width: 767px) {
  .page__introduce__task__content__box .page__introduce__task__content__box__block .titleblock {
    padding-top: 20px;
    height: 140px;
    position: relative;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__task__content__box .page__introduce__task__content__box__block .titleblock {
    width: 192px;
    height: 170px;
    position: relative;
    z-index: 3;
  }
}
.page__introduce__task__content__box .page__introduce__task__content__box__block .titleblock.second {
  background: url("../img/page/desire_03_2.png") no-repeat;
  background-size: contain;
}
@media screen and (max-width: 480px) {
  .page__introduce__task__content__box .page__introduce__task__content__box__block .titleblock.second {
    width: 203px;
    margin: 0 0 0 auto;
    margin-top: -103px;
    z-index: 2;
  }
}
.page__introduce__task__content__box .page__introduce__task__content__box__block .titleblock.third {
  background: url("../img/page/desire_03_3.png") no-repeat;
  background-size: contain;
}
@media screen and (max-width: 480px) {
  .page__introduce__task__content__box .page__introduce__task__content__box__block .titleblock.third {
    width: 211px;
    margin-top: -93px;
    z-index: 1;
  }
}
.page__introduce__task__content__box .page__introduce__task__content__box__block .titleblock.fourth {
  background: url("../img/page/desire_03_4.png") no-repeat;
  background-size: contain;
}
@media screen and (max-width: 480px) {
  .page__introduce__task__content__box .page__introduce__task__content__box__block .titleblock.fourth {
    width: 212px;
    margin: 0 0 0 auto;
    margin-top: -60px;
    z-index: 1;
  }
}
.page__introduce__task__content__box .page__introduce__task__content__box__block .titleblock h4 {
  color: #00A6DC;
  font-weight: 500;
  font-size: 21px;
  letter-spacing: 0.06em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .page__introduce__task__content__box .page__introduce__task__content__box__block .titleblock h4 {
    font-size: 18px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__task__content__box .page__introduce__task__content__box__block .titleblock h4 {
    font-size: 21px;
  }
}
.page__introduce__task__content__box .page__introduce__task__content__box__block .titleblock h4 span {
  font-size: 27px;
  color: #00A6DC;
}
@media screen and (max-width: 767px) {
  .page__introduce__task__content__box .page__introduce__task__content__box__block .titleblock h4 span {
    font-size: 22px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__task__content__box .page__introduce__task__content__box__block .titleblock h4 span {
    font-size: 27px;
  }
}
.page__introduce__task__content__box .page__introduce__task__content__box__block .titleblock .text {
  text-align: center;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.875;
  margin-top: 8px;
}
@media screen and (max-width: 1023px) {
  .page__introduce__task__content__box .page__introduce__task__content__box__block .titleblock .text {
    font-size: 13px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__task__content__box .page__introduce__task__content__box__block .titleblock .text {
    font-size: 16px;
  }
}
.page__introduce__task__content__box .page__introduce__task__content__box__block .titleblock .text.third {
  line-height: 1.5;
}
.page__introduce__task__content__box .page__introduce__task__content__box__block .item {
  max-width: 145px;
  margin: 0 auto;
  margin-top: -40px;
}
@media screen and (max-width: 767px) {
  .page__introduce__task__content__box .page__introduce__task__content__box__block .item {
    position: relative;
    z-index: 2;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__task__content__box .page__introduce__task__content__box__block .item.sp_dn {
    display: none;
  }
}
.page__introduce__task__content__box .page__introduce__task__content__box__block .item.fourth {
  position: relative;
  left: -10px;
}

.page__introduce__task__content__box__block_box_sp {
  display: none;
}
@media screen and (max-width: 480px) {
  .page__introduce__task__content__box__block_box_sp {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    max-width: 340px;
    margin: 0 auto;
    padding-right: 22px;
    margin-top: -44px;
    z-index: 2;
    position: relative;
  }
}

.page__introduce__task__content__box {
  margin-top: 50px;
}
@media screen and (max-width: 480px) {
  .page__introduce__task__content__box {
    margin-top: 16px;
  }
}

.page__introduce__task__desc {
  background-color: #00A6DC;
  padding-top: 80px;
  padding-bottom: 90px;
  position: relative;
}
@media screen and (max-width: 1023px) {
  .page__introduce__task__desc {
    padding-top: 50px;
    padding-bottom: 60px;
  }
}
@media screen and (max-width: 767px) {
  .page__introduce__task__desc {
    padding-top: 30px;
    padding-bottom: 40px;
  }
}
.page__introduce__task__desc:before {
  position: absolute;
  display: block;
  content: "";
  background: url("../img/page/desire_tri.png");
  width: 72px;
  top: -60px;
  -webkit-transform: translate(-50%);
          transform: translate(-50%);
  background-size: contain;
  height: 63px;
  left: 50%;
}
@media screen and (max-width: 767px) {
  .page__introduce__task__desc:before {
    height: 40px;
    width: 50px;
    top: -30px;
  }
}
.page__introduce__task__desc h2 {
  font-size: 45px;
  color: #fff;
  text-align: center;
  font-weight: bold;
  line-height: 1.6888888889;
  letter-spacing: 0.02em;
  -webkit-font-feature-settings: initial;
          font-feature-settings: initial;
}
@media screen and (max-width: 1023px) {
  .page__introduce__task__desc h2 {
    font-size: 36px;
  }
}
@media screen and (max-width: 767px) {
  .page__introduce__task__desc h2 {
    font-size: 28px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__task__desc h2 {
    font-size: 24px;
  }
}
.page__introduce__task__desc h2 span {
  font-size: 39px;
  color: #fff;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.02em;
  -webkit-font-feature-settings: initial;
          font-feature-settings: initial;
}
@media screen and (max-width: 1023px) {
  .page__introduce__task__desc h2 span {
    font-size: 28px;
  }
}
@media screen and (max-width: 767px) {
  .page__introduce__task__desc h2 span {
    font-size: 24px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__task__desc h2 span {
    font-size: 21px;
  }
}

.page__introduce__feature {
  padding-top: 128px;
  padding-bottom: 128px;
}
@media screen and (max-width: 1023px) {
  .page__introduce__feature {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
@media screen and (max-width: 767px) {
  .page__introduce__feature {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__feature {
    padding-top: 50px;
  }
}
.page__introduce__feature .wrapper {
  max-width: 1000px;
  margin: 0 auto;
}
@media screen and (max-width: 1023px) {
  .page__introduce__feature .wrapper {
    padding-right: 5%;
    padding-left: 5%;
  }
}
.page__introduce__feature .page__introduce__feature__titleblock .cat {
  background: url("../img/page/desire_cat_back.png") no-repeat;
  background-size: contain;
  color: #fff;
  padding: 0px 51px;
  padding-bottom: 16px;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  margin: 0 auto;
  font-weight: bold;
}
@media screen and (max-width: 480px) {
  .page__introduce__feature .page__introduce__feature__titleblock .cat {
    padding: 13px 66px;
    font-size: 14px;
    padding-top: 5px;
  }
}
.page__introduce__feature .page__introduce__feature__titleblock h2 {
  font-size: 40px;
  font-weight: bold;
  letter-spacing: 0.06em;
  line-height: 1.625;
  text-align: center;
  margin-top: 18px;
}
@media screen and (max-width: 767px) {
  .page__introduce__feature .page__introduce__feature__titleblock h2 {
    font-size: 27px;
  }
}
.page__introduce__feature .page__introduce__feature__contentbox {
  padding: 64px 43px;
  background-color: rgba(0, 166, 220, 0.07);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 48px;
  gap: 57px;
}
@media screen and (max-width: 1023px) {
  .page__introduce__feature .page__introduce__feature__contentbox {
    gap: 30px;
  }
}
@media screen and (max-width: 767px) {
  .page__introduce__feature .page__introduce__feature__contentbox {
    margin-top: 30px;
    display: block;
    padding: 32px 21px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__feature .page__introduce__feature__contentbox {
    margin-top: 50px;
    padding-bottom: 48px;
  }
}
.page__introduce__feature .page__introduce__feature__contentbox .textblock .titlebox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
}
@media screen and (max-width: 767px) {
  .page__introduce__feature .page__introduce__feature__contentbox .textblock .titlebox {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.page__introduce__feature .page__introduce__feature__contentbox .textblock .titlebox .num {
  width: 88px;
  height: 88px;
  background-color: #00A6DC;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  -webkit-font-feature-settings: initial;
          font-feature-settings: initial;
  letter-spacing: 0.08em;
  text-align: center;
  padding-top: 14px;
  border-radius: 5px;
}
@media screen and (max-width: 1023px) {
  .page__introduce__feature .page__introduce__feature__contentbox .textblock .titlebox .num {
    width: 60px;
    height: 60px;
    padding-top: 7px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__feature .page__introduce__feature__contentbox .textblock .titlebox .num {
    margin: 0 auto;
    font-size: 11px;
    width: 56px;
    height: 56px;
    padding-top: 12px;
  }
}
.page__introduce__feature .page__introduce__feature__contentbox .textblock .titlebox .num span {
  font-size: 40px;
  font-weight: bold;
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  display: block;
  line-height: 1;
  color: #fff;
  -webkit-font-feature-settings: initial;
          font-feature-settings: initial;
  letter-spacing: -0.03em;
  text-align: center;
}
@media screen and (max-width: 1023px) {
  .page__introduce__feature .page__introduce__feature__contentbox .textblock .titlebox .num span {
    font-size: 30px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__feature .page__introduce__feature__contentbox .textblock .titlebox .num span {
    font-size: 24px;
  }
}
.page__introduce__feature .page__introduce__feature__contentbox .textblock .titlebox .text {
  font-size: 27px;
  color: #000;
  font-weight: bold;
  letter-spacing: 0.06em;
  -webkit-font-feature-settings: initial;
          font-feature-settings: initial;
  padding-top: 6px;
  line-height: 1.4444444444;
}
@media screen and (max-width: 1023px) {
  .page__introduce__feature .page__introduce__feature__contentbox .textblock .titlebox .text {
    font-size: 20px;
  }
}
@media screen and (max-width: 767px) {
  .page__introduce__feature .page__introduce__feature__contentbox .textblock .titlebox .text {
    font-size: 22px;
    letter-spacing: 0.03em;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__feature .page__introduce__feature__contentbox .textblock .titlebox .text {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 100%;
            flex: 1 1 100%;
  }
}
@media screen and (max-width: 767px) {
  .page__introduce__feature .page__introduce__feature__contentbox .textblock .titlebox .text br {
    display: none;
  }
}
.page__introduce__feature .page__introduce__feature__contentbox .textblock .list {
  padding-top: 6px;
  padding-left: 38px;
}
@media screen and (max-width: 767px) {
  .page__introduce__feature .page__introduce__feature__contentbox .textblock .list {
    padding-left: 0;
  }
}
.page__introduce__feature .page__introduce__feature__contentbox .textblock .list p {
  font-size: 17px;
  font-weight: bold;
  letter-spacing: 0.02em;
  position: relative;
  padding-left: 28px;
  margin-top: 28px;
  line-height: 1.8823529412;
}
@media screen and (max-width: 1023px) {
  .page__introduce__feature .page__introduce__feature__contentbox .textblock .list p {
    font-size: 15px;
  }
}
@media screen and (max-width: 767px) {
  .page__introduce__feature .page__introduce__feature__contentbox .textblock .list p {
    font-size: 15px;
    margin-top: 18px;
    padding-left: 0;
    line-height: 1.3333333333;
  }
}
@media screen and (max-width: 1023px) {
  .page__introduce__feature .page__introduce__feature__contentbox .textblock .list p br {
    display: none;
  }
}
.page__introduce__feature .page__introduce__feature__contentbox .textblock .list p:before {
  display: block;
  content: "";
  width: 20px;
  height: 20px;
  background: url("../img/page/desire_arrow.png");
  position: absolute;
  top: 7px;
  left: 0;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  .page__introduce__feature .page__introduce__feature__contentbox .textblock .list p:before {
    width: 18px;
    height: 18px;
  }
}
.page__introduce__feature .page__introduce__feature__contentbox .textblock .list p .dib {
  display: initial;
}
@media screen and (max-width: 480px) {
  .page__introduce__feature .page__introduce__feature__contentbox .textblock .list p .dib {
    display: inline-block;
  }
}
.page__introduce__feature .page__introduce__feature__contentbox .itemblock {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 374px;
          flex: 0 0 374px;
}
@media screen and (max-width: 1023px) {
  .page__introduce__feature .page__introduce__feature__contentbox .itemblock {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 40%;
            flex: 0 0 40%;
  }
}
@media screen and (max-width: 767px) {
  .page__introduce__feature .page__introduce__feature__contentbox .itemblock {
    max-width: 90%;
    margin: 0 auto;
    margin-top: 40px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__feature .page__introduce__feature__contentbox .itemblock {
    margin-top: 30px;
    max-width: 100%;
  }
}

.desire .page__introduce__feature .page__introduce__feature__contentbox .textblock .list p {
  padding-left: 28px;
}

.page__introduce__breadcrumb {
  margin-bottom: 18px;
  margin-top: 18px;
}
.page__introduce__breadcrumb .wrapper {
  max-width: 1000px;
  margin: 0 auto;
}
@media screen and (max-width: 1023px) {
  .page__introduce__breadcrumb .wrapper {
    max-width: 700px;
  }
}
.page__introduce__breadcrumb .wrapper p {
  font-size: 14px;
  color: #777777;
}
.page__introduce__breadcrumb .wrapper p span {
  color: #00A6DC;
}
.page__introduce__breadcrumb .wrapper p a {
  display: inline;
}

.page__introduce__sample {
  margin-bottom: 100px;
}
@media screen and (max-width: 1023px) {
  .page__introduce__sample {
    margin-bottom: 80px;
  }
}
.page__introduce__sample .wrapper {
  max-width: 1000px;
  margin: 0 auto;
  overflow-x: hidden;
}
@media screen and (max-width: 1023px) {
  .page__introduce__sample .wrapper {
    padding-right: 5%;
    padding-left: 5%;
  }
}
.page__introduce__sample h2 {
  background-color: #00A6DC;
  font-size: 27px;
  letter-spacing: 0.06em;
  -webkit-font-feature-settings: initial;
          font-feature-settings: initial;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 43px;
  color: #fff;
  font-weight: bold;
}
@media screen and (max-width: 480px) {
  .page__introduce__sample h2 {
    font-size: 20px;
  }
}
.page__introduce__sample .page__introduce__sample__content {
  margin-top: 48px;
}
@media screen and (max-width: 480px) {
  .page__introduce__sample .page__introduce__sample__content {
    margin-top: 24px;
  }
}
.page__introduce__sample .page__introduce__sample__content .swiper-slide .text {
  font-size: 17px;
  font-weight: normal;
  text-align: center;
  margin-top: 10px;
}
@media screen and (max-width: 1023px) {
  .page__introduce__sample .page__introduce__sample__content .swiper-slide .text {
    font-size: 15px;
  }
}
@media screen and (max-width: 767px) {
  .page__introduce__sample .page__introduce__sample__content .swiper-slide .text {
    font-size: 13px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__sample .page__introduce__sample__content .swiper-slide .text {
    font-size: 12px;
  }
}
.page__introduce__sample .page__introduce__sample__content .swiper-horizontal > .swiper-pagination-bullets, .page__introduce__sample .page__introduce__sample__content .swiper-pagination-bullets.swiper-pagination-horizontal, .page__introduce__sample .page__introduce__sample__content .swiper-pagination-custom, .page__introduce__sample .page__introduce__sample__content .swiper-pagination-fraction {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  margin-inline: auto;
  margin-top: 28px;
}
.page__introduce__sample .page__introduce__sample__content .swiper-pagination-bullet {
  width: 12px;
  height: 12px;
}
@media screen and (max-width: 480px) {
  .page__introduce__sample .page__introduce__sample__content .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
  }
}
.page__introduce__sample .page__introduce__sample__content .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: #00A6DC;
}
.page__introduce__sample .page__introduce__sample__content ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.page__introduce__sample .page__introduce__sample__content ul li {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 47%;
          flex: 0 0 47%;
  margin-bottom: 48px;
}
@media screen and (max-width: 767px) {
  .page__introduce__sample .page__introduce__sample__content ul li {
    margin-bottom: 24px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__sample .page__introduce__sample__content ul li {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 100%;
            flex: 1 1 100%;
  }
}
.page__introduce__sample .page__introduce__sample__content ul li .text {
  font-size: 17px;
  font-weight: normal;
  text-align: center;
  margin-top: 10px;
}
@media screen and (max-width: 1023px) {
  .page__introduce__sample .page__introduce__sample__content ul li .text {
    font-size: 15px;
  }
}
@media screen and (max-width: 767px) {
  .page__introduce__sample .page__introduce__sample__content ul li .text {
    font-size: 13px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__sample .page__introduce__sample__content ul li .text {
    font-size: 12px;
  }
}

/*--

SIN system

-------*/
.c-page-titleblock .cat.sinsystem a {
  background-color: #FCC103;
}

@media screen and (max-width: 1023px) {
  .sin_system .wrapper {
    max-width: initial;
  }
}
@media screen and (max-width: 767px) {
  .sin_system .page__introduce__task {
    padding-top: 60px;
  }
}
@media screen and (max-width: 480px) {
  .sin_system .page__introduce__task {
    padding-top: 30px;
  }
}
.sin_system .page__introduce__sinsystem__task {
  padding: 0 43px;
  padding-bottom: 124px;
}
@media screen and (max-width: 767px) {
  .sin_system .page__introduce__sinsystem__task {
    padding: 0 20px;
    padding-bottom: 80px;
  }
}
@media screen and (max-width: 480px) {
  .sin_system .page__introduce__sinsystem__task {
    padding-bottom: 60px;
  }
}
.sin_system .page__introduce__sinsystem__task .desc {
  text-align: center;
  font-size: 17px;
  line-height: 2.5294117647;
  letter-spacing: 0.02em;
  -webkit-font-feature-settings: initial;
          font-feature-settings: initial;
  font-weight: bold;
  margin-bottom: 80px;
}
@media screen and (max-width: 767px) {
  .sin_system .page__introduce__sinsystem__task .desc {
    font-size: 16px;
    margin-bottom: 40px;
    line-height: 1.6875;
  }
}
@media screen and (max-width: 480px) {
  .sin_system .page__introduce__sinsystem__task .desc {
    margin-bottom: 20px;
  }
}
.sin_system .page__introduce__sinsystem__task .desc .dib {
  display: initial;
}
@media screen and (max-width: 480px) {
  .sin_system .page__introduce__sinsystem__task .desc .dib {
    display: inline-block;
  }
}
@media screen and (max-width: 767px) {
  .sin_system .page__introduce__sinsystem__task .desc br {
    display: none;
  }
}
.sin_system .page__introduce__sinsystem__task .text {
  font-weight: 500;
  font-size: 16px;
  margin-bottom: 48px;
}
@media screen and (max-width: 767px) {
  .sin_system .page__introduce__sinsystem__task .text {
    font-size: 15px;
  }
}
@media screen and (max-width: 480px) {
  .sin_system .page__introduce__sinsystem__task .text {
    max-width: 314px;
    margin: 0 auto;
    margin-bottom: 20px;
  }
}
.sin_system .page__introduce__sinsystem__task .text .dib {
  display: initial;
}
@media screen and (max-width: 480px) {
  .sin_system .page__introduce__sinsystem__task .text .dib {
    display: inline-block;
  }
}
@media screen and (max-width: 480px) {
  .sin_system .page__introduce__sinsystem__task .text .dib:nth-child(2) {
    margin-left: 1em;
  }
}
@media screen and (max-width: 480px) {
  .sin_system .page__introduce__sinsystem__task .text .dib:last-child {
    margin-left: 1em;
  }
}
.sin_system .page__introduce__sinsystem__task .item {
  margin-bottom: 48px;
}
@media screen and (max-width: 480px) {
  .sin_system .page__introduce__sinsystem__task .item {
    margin-bottom: 10px;
  }
}

.page__introduce__feature.sinsystem {
  padding-bottom: 100px;
}
@media screen and (max-width: 767px) {
  .page__introduce__feature.sinsystem {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
.page__introduce__feature .page__introduce__feature__titleblock.sinsystem .cat {
  background: url("../img/sinsystem/sinsystem_cat_back.png") no-repeat;
  background-size: contain;
}
.page__introduce__feature .page__introduce__feature__contentbox.sinsystem {
  background-color: rgba(252, 193, 3, 0.07);
}
.page__introduce__feature .page__introduce__feature__contentbox.sinsystem .textblock .titlebox {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.page__introduce__feature .page__introduce__feature__contentbox.sinsystem .textblock .titlebox .num {
  background-color: #FCC103;
}
.page__introduce__feature .page__introduce__feature__contentbox.sinsystem .textblock .list p {
  -webkit-font-feature-settings: initial;
          font-feature-settings: initial;
  line-height: 2.5294117647;
  letter-spacing: 0.07em;
}
@media screen and (max-width: 480px) {
  .page__introduce__feature .page__introduce__feature__contentbox.sinsystem .textblock .list p {
    line-height: 1.6666666667;
  }
}
.page__introduce__feature .page__introduce__feature__contentbox.sinsystem .textblock .list p:before {
  content: none;
}

.page__introduce__sinsystem__example {
  margin-bottom: 100px;
}
.page__introduce__sinsystem__example .wrapper {
  max-width: 1000px;
  margin: 0 auto;
}
.page__introduce__sinsystem__example .page__introduce__sinsystem__example__block {
  margin-top: 64px;
}
@media screen and (max-width: 767px) {
  .page__introduce__sinsystem__example .page__introduce__sinsystem__example__block {
    margin-top: 48px;
  }
}
.page__introduce__sinsystem__example .page__introduce__sinsystem__example__block:first-child {
  margin-top: 0;
}
.page__introduce__sinsystem__example .page__introduce__sinsystem__example__block h3 {
  background-color: #FCC103;
  font-size: 27px;
  letter-spacing: 0.06em;
  -webkit-font-feature-settings: initial;
          font-feature-settings: initial;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 43px;
  color: #fff;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .page__introduce__sinsystem__example .page__introduce__sinsystem__example__block h3 {
    font-size: 24px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__sinsystem__example .page__introduce__sinsystem__example__block h3 {
    font-size: 20px;
    height: 66px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-left: 17px;
    letter-spacing: 0.06em;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.page__introduce__sinsystem__example .page__introduce__sinsystem__example__block h3 .dib {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 100%;
          flex: 1 1 100%;
}
.page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content {
  max-width: 914px;
  margin: 0 auto;
}
@media screen and (max-width: 1023px) {
  .page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content {
    padding-right: 5%;
    padding-left: 5%;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content {
    padding-right: 0;
    padding-left: 0;
  }
}
.page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content .desc {
  font-weight: bold;
  font-size: 17px;
  line-height: 2.5294117647;
  margin-top: 44px;
  letter-spacing: 0.02em;
  -webkit-font-feature-settings: initial;
          font-feature-settings: initial;
}
@media screen and (max-width: 767px) {
  .page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content .desc {
    font-size: 15px;
    margin-top: 24px;
    line-height: 1.6666666667;
  }
}
@media screen and (max-width: 767px) {
  .page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content .desc br {
    display: none;
  }
}
.page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content .text {
  margin-top: 20px;
  font-weight: 500;
  font-size: 17px;
  line-height: 2.5294117647;
  margin-top: 44px;
  letter-spacing: 0.02em;
  -webkit-font-feature-settings: initial;
          font-feature-settings: initial;
}
@media screen and (max-width: 767px) {
  .page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content .text {
    font-size: 15px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content .text {
    display: none;
  }
}
.page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content .item {
  margin-top: 42px;
}
.page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content .signalbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 42px;
}
@media screen and (max-width: 1023px) {
  .page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content .signalbox {
    display: block;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content .signalbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 20px;
  }
}
.page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content .signalbox .item-before {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 24px;
}
@media screen and (max-width: 480px) {
  .page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content .signalbox .item-before {
    display: block;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 48%;
            flex: 0 0 48%;
  }
}
.page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content .signalbox .item-before.last {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
@media screen and (max-width: 1023px) {
  .page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content .signalbox .item-before.last {
    -webkit-box-pack: initial;
        -ms-flex-pack: initial;
            justify-content: initial;
    margin-top: 20px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content .signalbox .item-before.last {
    margin-top: 0;
  }
}
.page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content .signalbox .item-before img {
  max-width: 209px;
}
@media screen and (max-width: 767px) {
  .page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content .signalbox .item-before img {
    max-width: 170px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content .signalbox .item-before img {
    height: auto;
  }
}
.page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content .signalbox .item-before p {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 170px;
          flex: 0 0 170px;
}
@media screen and (max-width: 1023px) {
  .page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content .signalbox .item-before p {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content .signalbox .item-before p {
    margin-top: 10px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content .signalbox .item-before p br {
    display: none;
  }
}
.page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content .signal__box2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 1023px) {
  .page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content .signal__box2 {
    display: block;
  }
}
.page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content .signal__box2 .item {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 49%;
          flex: 0 0 49%;
}
.page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content .signal__box2 .text {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 49%;
          flex: 0 0 49%;
  font-size: 16px;
  line-height: 1.6875;
}
@media screen and (max-width: 1023px) {
  .page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content .signal__box2 .text {
    font-size: 14px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__sinsystem__example .page__introduce__sinsystem__example__block .page__introduce__sinsystem__example__block__content .signal__box2 .text {
    display: block;
    margin-top: 20px;
  }
}

/*--
highwaysystem
----*/
.c-page-titleblock .cat.highwaysystem a {
  background-color: #54CDA3;
}

@media screen and (max-width: 767px) {
  .highway .page__introduce__task {
    padding-top: 60px;
  }
}
@media screen and (max-width: 480px) {
  .highway .page__introduce__task {
    padding-top: 30px;
  }
}
@media screen and (max-width: 767px) {
  .highway .page__introduce__task .wrapper {
    max-width: 1000px;
    padding-right: 5%;
    padding-left: 5%;
  }
}
@media screen and (max-width: 767px) {
  .highway .page__introduce__task .wrapper br {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .highway .page__introduce__task__desc h2 {
    font-size: 22px;
  }
}
@media screen and (max-width: 480px) {
  .highway .page__introduce__task__desc h2 {
    max-width: 236px;
    margin: 0 auto;
  }
}

.page__introduce__highwaysystem__task {
  padding-bottom: 124px;
}
@media screen and (max-width: 767px) {
  .page__introduce__highwaysystem__task {
    padding-bottom: 8px;
  }
}
.page__introduce__highwaysystem__task .desc {
  text-align: center;
  font-size: 17px;
  line-height: 2.5294117647;
  letter-spacing: 0.02em;
  -webkit-font-feature-settings: initial;
          font-feature-settings: initial;
  font-weight: bold;
  margin-bottom: 60px;
}
@media screen and (max-width: 767px) {
  .page__introduce__highwaysystem__task .desc {
    font-size: 16px;
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__highwaysystem__task .desc {
    line-height: 1.6875;
    margin-bottom: 14px;
  }
}
.page__introduce__highwaysystem__task .desc .dib {
  display: initial;
}
@media screen and (max-width: 480px) {
  .page__introduce__highwaysystem__task .desc .dib {
    display: inline-block;
  }
}
.page__introduce__highwaysystem__task .text {
  font-weight: 500;
  font-size: 16px;
  margin-bottom: 48px;
}
@media screen and (max-width: 767px) {
  .page__introduce__highwaysystem__task .text {
    font-size: 14px;
    margin-bottom: 24px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__highwaysystem__task .text {
    font-size: 15px;
    padding-left: 20px;
  }
}
.page__introduce__highwaysystem__task .main__item {
  margin-bottom: 48px;
}
@media screen and (max-width: 767px) {
  .page__introduce__highwaysystem__task .main__item {
    margin-bottom: 24px;
  }
}
.page__introduce__highwaysystem__task .textbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 914px;
  margin: 0 auto;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 480px) {
  .page__introduce__highwaysystem__task .textbox {
    display: block;
  }
}
.page__introduce__highwaysystem__task .textbox .block {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 47%;
          flex: 0 0 47%;
}
.page__introduce__highwaysystem__task .textbox .block .tertiary_title {
  background-color: #FFEC00;
  font-size: 20px;
  font-weight: bold;
  letter-spacing: 0.03em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .page__introduce__highwaysystem__task .textbox .block .tertiary_title {
    font-size: 15px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__highwaysystem__task .textbox .block .tertiary_title {
    font-size: 17px;
    padding-top: 0.4em;
    padding-bottom: 0.4em;
    text-align: left;
    padding-left: 17px;
  }
}
.page__introduce__highwaysystem__task .textbox .block .tertiary_text {
  text-align: left;
  font-weight: bold;
  letter-spacing: 0.02em;
  font-size: 19px;
  margin-top: 12px;
}
@media screen and (max-width: 767px) {
  .page__introduce__highwaysystem__task .textbox .block .tertiary_text {
    font-size: 14px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__highwaysystem__task .textbox .block .tertiary_text {
    font-size: 15px;
    margin-bottom: 30px;
  }
}
.page__introduce__highwaysystem__task .explain__primary__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 16px;
  max-width: 914px;
  margin: 0 auto;
  margin-top: 64px;
}
@media screen and (max-width: 767px) {
  .page__introduce__highwaysystem__task .explain__primary__box {
    display: block;
  }
}
.page__introduce__highwaysystem__task .explain__primary__box .item {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 34%;
          flex: 0 0 34%;
}
@media screen and (max-width: 767px) {
  .page__introduce__highwaysystem__task .explain__primary__box .item img:first-child {
    display: none;
  }
}
.page__introduce__highwaysystem__task .explain__primary__box .item img:last-child {
  display: none;
}
@media screen and (max-width: 767px) {
  .page__introduce__highwaysystem__task .explain__primary__box .item img:last-child {
    display: block;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__highwaysystem__task .explain__primary__box .item img:last-child {
    max-width: 280px;
    margin: 0 auto;
  }
}
.page__introduce__highwaysystem__task .explain__primary__box .explain__primary__box__textblock {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
@media screen and (max-width: 767px) {
  .page__introduce__highwaysystem__task .explain__primary__box .explain__primary__box__textblock {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 20px;
    gap: 10px;
  }
}
.page__introduce__highwaysystem__task .explain__primary__box .secondary__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (max-width: 767px) {
  .page__introduce__highwaysystem__task .explain__primary__box .secondary__box {
    display: block;
  }
}
.page__introduce__highwaysystem__task .explain__primary__box .secondary__box:first-child {
  margin-bottom: 32px;
}
.page__introduce__highwaysystem__task .explain__primary__box .secondary__box .textblock {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
          flex: 0 0 50%;
  margin-right: 16px;
}
@media screen and (max-width: 767px) {
  .page__introduce__highwaysystem__task .explain__primary__box .secondary__box .textblock {
    margin-right: 0;
  }
}
.page__introduce__highwaysystem__task .explain__primary__box .secondary__box .textblock .tertiary_title {
  background-color: #00A6DC;
  color: #fff;
  padding-left: 20px;
  font-size: 16px;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .page__introduce__highwaysystem__task .explain__primary__box .secondary__box .textblock .tertiary_title {
    font-size: 14px;
  }
}
@media screen and (max-width: 767px) {
  .page__introduce__highwaysystem__task .explain__primary__box .secondary__box .textblock .tertiary_title {
    font-size: 14px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__highwaysystem__task .explain__primary__box .secondary__box .textblock .tertiary_title {
    font-size: 16px;
    line-height: 1.5;
    padding-top: 4px;
    padding-bottom: 4px;
  }
}
.page__introduce__highwaysystem__task .explain__primary__box .secondary__box .textblock .tertiary_text {
  font-size: 15px;
  line-height: 1.6666666667;
  margin-top: 12px;
}
@media screen and (max-width: 767px) {
  .page__introduce__highwaysystem__task .explain__primary__box .secondary__box .textblock .tertiary_text {
    font-size: 14px;
    margin-bottom: 24px;
  }
}
@media screen and (max-width: 480px) {
  .page__introduce__highwaysystem__task .explain__primary__box .secondary__box .textblock .tertiary_text.last {
    padding-bottom: 3.4em;
  }
}
.page__introduce__highwaysystem__task .explain__primary__box .secondary__box .itemblock {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 274px;
          flex: 0 0 274px;
}
@media screen and (max-width: 1023px) {
  .page__introduce__highwaysystem__task .explain__primary__box .secondary__box .itemblock {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 225px;
            flex: 0 0 225px;
  }
}

.page__introduce__feature.highwaysystem {
  padding-bottom: 100px;
}
@media screen and (max-width: 767px) {
  .page__introduce__feature.highwaysystem {
    padding-bottom: 60px;
  }
}
.page__introduce__feature .page__introduce__feature__titleblock.highwaysystem .cat {
  background: url("../img/highwaysystem/highwaysystem_cat.png") no-repeat;
  background-size: contain;
}
.page__introduce__feature .page__introduce__feature__titleblock.highwaysystem .text {
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 0.02em;
  line-height: 2.0625;
  text-align: center;
  margin-top: 18px;
}
@media screen and (max-width: 767px) {
  .page__introduce__feature .page__introduce__feature__titleblock.highwaysystem .text {
    font-size: 15px;
    -webkit-font-feature-settings: initial;
            font-feature-settings: initial;
  }
}
@media screen and (max-width: 767px) {
  .page__introduce__feature .page__introduce__feature__titleblock.highwaysystem .text span {
    -webkit-font-feature-settings: initial;
            font-feature-settings: initial;
  }
}
@media screen and (max-width: 767px) {
  .page__introduce__feature .page__introduce__feature__titleblock.highwaysystem .text br {
    display: none;
  }
}
.page__introduce__feature .page__introduce__feature__contentbox.highwaysystem {
  background-color: rgba(84, 205, 163, 0.07);
  margin-top: 40px;
}
@media screen and (max-width: 480px) {
  .page__introduce__feature .page__introduce__feature__contentbox.highwaysystem {
    margin-top: 24px;
  }
}
.page__introduce__feature .page__introduce__feature__contentbox.highwaysystem .textblock .titlebox {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.page__introduce__feature .page__introduce__feature__contentbox.highwaysystem .textblock .titlebox .num {
  background-color: #54CDA3;
}
.page__introduce__feature .page__introduce__feature__contentbox.highwaysystem .textblock .list {
  padding-left: 0;
}
.page__introduce__feature .page__introduce__feature__contentbox.highwaysystem .textblock .list p {
  padding-left: 0;
  -webkit-font-feature-settings: initial;
          font-feature-settings: initial;
  line-height: 2.5294117647;
  letter-spacing: 0.07em;
  margin-top: 20px;
}
@media screen and (max-width: 480px) {
  .page__introduce__feature .page__introduce__feature__contentbox.highwaysystem .textblock .list p {
    line-height: 1.6666666667;
  }
}
.page__introduce__feature .page__introduce__feature__contentbox.highwaysystem .textblock .list p:before {
  content: none;
}

.highway__feature__primarybox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
}
@media screen and (max-width: 767px) {
  .highway__feature__primarybox {
    display: block;
  }
}
.highway__feature__primarybox .highway__feature__itemblock {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 393px;
          flex: 0 0 393px;
  gap: 4px;
}
@media screen and (max-width: 767px) {
  .highway__feature__primarybox .highway__feature__itemblock {
    max-width: 90%;
    margin: 0 auto;
    margin-top: 40px;
  }
}
.highway__feature__primarybox .highway__feature__textblock {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}

.bread__block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  max-width: 1200px;
  margin: 0 auto;
  margin-bottom: 120px;
  margin-top: 28px;
  padding-left: 20px;
}
@media screen and (max-width: 768px) {
  .bread__block {
    font-size: 15px;
    margin-bottom: 80px;
  }
}
@media screen and (max-width: 480px) {
  .bread__block {
    font-size: 13px;
  }
}

.pagenavi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 300px;
  margin: 0 auto;
}
.pagenavi a {
  width: initial;
  padding: 10px;
  border-radius: 4px;
  border: 1px solid #aaa;
  background-color: #fff;
  color: #aaa;
  margin: 5px;
}
.pagenavi a:hover {
  background-color: #c80110;
  color: #fff;
  border: initial;
}
.pagenavi span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 10px;
}

.pnavi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.pnavi .page-numbers {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  border: 1px solid #282828;
  color: #282828;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.pnavi .page-numbers.current {
  background-color: #282828;
  color: #fff;
}
.pnavi .prev {
  border: initial;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 50px;
          flex: 0 0 50px;
}
.pnavi .next {
  border: initial;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 50px;
          flex: 0 0 50px;
}/*# sourceMappingURL=style.css.map */