@charset "UTF-8";
/*!
 * Josh's Custom CSS Reset
 * https://www.joshwcomeau.com/css/custom-css-reset/ */
*, *::before, *::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

* {
  margin: 0;
  padding: 0;
}

html, body {
  height: 100%;
}

body {
  -webkit-font-smoothing: antialiased;
}

img, picture, video, canvas, svg {
  display: block;
  max-width: 100%;
}

input, button, textarea, select {
  font: inherit;
}

p, h1, h2, h3, h4, h5, h6 {
  overflow-wrap: break-word;
}

body {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

main {
  display: block;
}

li {
  list-style: none;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 16px;
  font-weight: bold;
}

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

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

address {
  font-style: normal;
}

sup {
  vertical-align: super;
  font-size: smaller;
}

input,
button,
textarea,
select {
  display: block;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  width: 100%;
  margin: 0;
  padding: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -moz-appearance: textfield;
}
input:-webkit-autofill,
button:-webkit-autofill,
textarea:-webkit-autofill,
select:-webkit-autofill {
  color: #424547;
  -webkit-box-shadow: 0 0 0px 1000px #fff inset;
}
input::-webkit-input-placeholder, button::-webkit-input-placeholder, textarea::-webkit-input-placeholder, select::-webkit-input-placeholder {
  color: #b5b5b6;
}
input::-moz-placeholder, button::-moz-placeholder, textarea::-moz-placeholder, select::-moz-placeholder {
  color: #b5b5b6;
}
input:-ms-input-placeholder, button:-ms-input-placeholder, textarea:-ms-input-placeholder, select:-ms-input-placeholder {
  color: #b5b5b6;
}
input::-ms-input-placeholder, button::-ms-input-placeholder, textarea::-ms-input-placeholder, select::-ms-input-placeholder {
  color: #b5b5b6;
}
input::placeholder,
button::placeholder,
textarea::placeholder,
select::placeholder {
  color: #b5b5b6;
}
input::-webkit-outer-spin-button, input::-webkit-inner-spin-button,
button::-webkit-outer-spin-button,
button::-webkit-inner-spin-button,
textarea::-webkit-outer-spin-button,
textarea::-webkit-inner-spin-button,
select::-webkit-outer-spin-button,
select::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input,
textarea,
select {
  background-color: #F3F2F3;
  border: solid 1px #F3F2F3;
  border-radius: 3px;
  padding: 10px 12px;
}
input[readonly],
textarea[readonly],
select[readonly] {
  color: rgba(66, 69, 71, 0.7);
  border: none;
  border-radius: 0;
}

textarea {
  min-height: 100px;
  resize: vertical;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
select::-ms-expand {
  display: none;
}

button {
  cursor: pointer;
}

label.__radio input[type=radio], label.__checkbox input[type=checkbox] {
  position: absolute;
  white-space: nowrap;
  width: 1px;
  height: 1px;
  border: 0;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
}

label.__checkbox {
  display: block;
}
label.__checkbox input[type=checkbox] + span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  cursor: pointer;
}
label.__checkbox input[type=checkbox] + span::before {
  content: "";
  display: block;
  background-color: #fff;
  border: solid 1px #fff;
  outline: solid 1px #F3F2F3;
  border-radius: 1px;
  width: 16px;
  height: 16px;
  margin-right: 11px;
}
label.__checkbox input[type=checkbox]:checked + span::before {
  background-color: #007698;
  border: solid 2px #fff;
}

label.__radio {
  display: block;
}
label.__radio input[type=radio] + span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  cursor: pointer;
}
label.__radio input[type=radio] + span::before {
  content: "";
  display: block;
  background-color: #fff;
  border-radius: 50%;
  outline: solid 2px #007698;
  width: 16px;
  height: 16px;
  margin-right: 11px;
}
label.__radio input[type=radio]:checked + span::before {
  background-color: #007698;
  border: solid 3px #fff;
  outline: solid 2px #007698;
}

select {
  cursor: pointer;
  padding-right: 32px;
  background-repeat: no-repeat;
  background-position: right 8px center;
  background-size: 15px 15px;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAuUlEQVRoge3WwQ6CMBCE4b4etx40HPTp4TEw0Uq6hJQWFXZDif+X7HWYUaM6BwAAAACfNeH6eN4g38/yG4P8MfgZbwjXKma3MVPye8XsyXyA5oi0/Ps6hdwFn3nQ3hG58oOz+YiOLpkHPsLdN2RdC1k3laYrNEYcVl7sGXF4ebFlRDXlxS8jqisvvhlRbXmxNqL68qL0na7922Eq905U/8qnSiNOUV6kI05VXsjf484Z/rcBAAAA8L9eveqSk3Ij7QgAAAAASUVORK5CYII=);
}

body,
input,
button,
textarea,
select {
  color: #424547;
  font-size: clamp(0.875rem, 0.83rem + 0.23vw, 1rem);
  font-family: "Noto Sans JP", sans-serif;
}

body {
  line-height: 1.7;
}

.l-wrapper {
  margin: auto;
}

@media screen and (max-width: 768px) {
  .l-outer {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media screen and (max-width: 640px) {
  .l-outer {
    padding-left: 20px;
    padding-right: 20px;
  }
}

.l-inner {
  max-width: 1160px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}
@media screen and (max-width: 768px) {
  .l-inner {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media screen and (max-width: 640px) {
  .l-inner {
    padding-left: 20px;
    padding-right: 20px;
  }
}

.c-btn {
  position: relative;
  display: inline-block;
  background-color: transparent;
  color: #007698;
  border: 1px solid #007698;
  overflow: hidden;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
  padding: 4px 24px;
}
.c-btn span {
  position: relative;
  z-index: 1;
}
.c-btn:before, .c-btn:after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border: 0 solid;
  -webkit-transform: rotate(360deg);
          transform: rotate(360deg);
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
  z-index: -1;
}
@media (any-hover: none) {
  .c-btn:before, .c-btn:after {
    display: none;
  }
}
.c-btn:before {
  bottom: 0;
  left: 0;
  border-color: transparent transparent transparent #007698;
}
.c-btn:after {
  top: 0;
  right: 0;
  border-color: transparent #007698 transparent transparent;
}
.c-btn:hover {
  color: #fff;
}
.c-btn:hover:before, .c-btn:hover:after {
  border-width: 49px 420px;
}
@media screen and (max-width: 768px) {
  .c-btn:hover:before, .c-btn:hover:after {
    border-width: 49px 262.5px;
  }
}

.c-contact-btn {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  padding: 16px 20px;
  background-color: #007698;
  border: 1px solid #007698;
  color: #fff;
  overflow: hidden;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
@media screen and (max-width: 768px) {
  .c-contact-btn {
    display: inline-block;
  }
}
.c-contact-btn span {
  position: relative;
  z-index: 1;
}
.c-contact-btn__icon {
  display: block;
  margin-top: 3px;
  width: 24px;
  height: 24px;
  background-color: #fff;
  -webkit-mask-image: url("../img/common/contact.svg");
          mask-image: url("../img/common/contact.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: 0 0;
          mask-position: 0 0;
  -webkit-mask-size: 100%;
          mask-size: 100%;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
.c-contact-btn:before, .c-contact-btn:after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border: 0 solid;
  -webkit-transform: rotate(360deg);
          transform: rotate(360deg);
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
@media (any-hover: none) {
  .c-contact-btn:before, .c-contact-btn:after {
    display: none;
  }
}
.c-contact-btn:before {
  bottom: 0;
  left: 0;
  border-color: transparent transparent transparent #fff;
}
.c-contact-btn:after {
  top: 0;
  right: 0;
  border-color: transparent #fff transparent transparent;
}
.c-contact-btn:hover {
  color: #007698;
}
.c-contact-btn:hover .c-contact-btn__icon {
  background-color: #007698;
}
.c-contact-btn:hover:before, .c-contact-btn:hover:after {
  border-width: 52px 225px;
}

.c-line-btn {
  background-color: #fff;
  border: 1px solid #007698;
  color: #007698;
  padding: 8px 24px;
}
.c-line-btn:hover {
  color: #fff;
  background-color: #007698;
}

.c-section-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: clamp(1.25rem, 0.6208rem + 2.6846vw, 2.5rem);
}
.c-section-title--left {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.c-section-title::before {
  content: attr(data-en);
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  text-transform: uppercase;
  font-size: clamp(0.875rem, 0.83rem + 0.23vw, 1rem);
}

.c-card {
  position: relative;
  color: #fff;
  aspect-ratio: 1/1;
}
@media screen and (max-width: 768px) {
  .c-card {
    aspect-ratio: 16/9;
  }
}
.c-card::before {
  content: "";
  display: block;
  position: absolute;
  height: 100%;
  width: 100%;
  background: rgba(66, 69, 71, 0.4);
  top: 0;
  left: 0;
}
.c-card__content {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  min-height: 224px;
  width: 80%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .c-card__content {
    min-height: 0;
  }
}
.c-card span {
  font-size: clamp(0.75rem, 0.6871rem + 0.2685vw, 0.875rem);
}
.c-card__title {
  font-size: clamp(1.125rem, 0.8733rem + 1.0738vw, 1.625rem);
}
.c-card__text {
  margin-top: auto;
}
@media screen and (max-width: 768px) {
  .c-card__text {
    margin-top: 0;
  }
}

.c-tracking-in-expand.invisible {
  opacity: 0;
}
.c-tracking-in-expand.visible {
  -webkit-animation: tracking-in-expand 1s cubic-bezier(0.215, 0.61, 0.355, 1) both;
          animation: tracking-in-expand 1s cubic-bezier(0.215, 0.61, 0.355, 1) both;
}

@-webkit-keyframes tracking-in-expand {
  0% {
    letter-spacing: -0.5em;
    opacity: 0;
  }
  40% {
    opacity: 0.6;
  }
  100% {
    opacity: 1;
  }
}

@keyframes tracking-in-expand {
  0% {
    letter-spacing: -0.5em;
    opacity: 0;
  }
  40% {
    opacity: 0.6;
  }
  100% {
    opacity: 1;
  }
}
.c-section {
  padding-top: 120px;
}
@media screen and (max-width: 768px) {
  .c-section {
    padding-top: 80px;
  }
}
.c-section__lead {
  text-align: center;
}

.p-header {
  position: fixed;
  top: 0;
  right: 0;
  width: 100%;
  z-index: 100;
  -webkit-transition: background-color 0.3s, color 0.3s;
  transition: background-color 0.3s, color 0.3s;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .p-header {
    width: 60px;
    height: 60px;
    top: 20px;
    right: 10px;
  }
}
.p-header[data-active=false] {
  background-color: transparent;
}
.p-header[data-active=true] {
  background-color: rgba(255, 255, 255, 0.8);
  color: #424547;
}
.p-header[data-active=true] .p-gnav__logo {
  background-color: #007698;
}
@media screen and (max-width: 768px) {
  .p-header[data-active=true] {
    background-color: rgba(0, 118, 152, 0.8);
  }
}

.p-footer {
  background-color: #fff;
  padding: 60px;
}
@media screen and (max-width: 768px) {
  .p-footer {
    padding: 40px 0;
  }
}
.p-footer__inner {
  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: 768px) {
  .p-footer__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media screen and (max-width: 768px) {
  .p-footer__logo {
    display: contents;
  }
}
.p-footer__logo-img {
  width: 130px;
  height: 32px;
  background-color: #007698;
  -webkit-mask-image: url("../img/common/logo.svg");
          mask-image: url("../img/common/logo.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: 0 0;
          mask-position: 0 0;
  -webkit-mask-size: 100%;
          mask-size: 100%;
}
@media screen and (max-width: 768px) {
  .p-footer__logo-img {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}
@media screen and (max-width: 768px) {
  .p-footer__links {
    display: contents;
  }
}
.p-footer__menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 40px;
  font-size: clamp(0.75rem, 0.6871rem + 0.2685vw, 0.875rem);
}
@media screen and (max-width: 768px) {
  .p-footer__menu {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 20px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
}
.p-footer__sns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: 24px;
}
@media screen and (max-width: 768px) {
  .p-footer__sns {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    gap: 16px;
  }
}
.p-footer__sns li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}
.p-footer__sns img {
  width: 24px;
  height: 24px;
}
.p-footer__sns span {
  margin-top: -4px;
}
@media screen and (max-width: 768px) {
  .p-footer__copyright {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4;
  }
}

.c-loading {
  position: fixed;
  z-index: 1000;
  width: 100%;
  height: 100vh;
  margin: 0;
  padding: 0;
  background: #fdfdfd;
}
.c-loading.hide {
  opacity: 0;
  pointer-events: none;
  -webkit-transition: opacity 500ms;
  transition: opacity 500ms;
}
.c-loading__text {
  display: block;
  text-align: center;
  position: relative;
  top: calc(50% - 30px);
}
.c-loading__circle {
  display: block;
  position: relative;
  top: calc(50% - 20px);
  width: 40px;
  height: 40px;
  margin: 0 auto;
  border: 8px solid #DEE7EC;
  border-top: 7px solid #007698;
  border-radius: 50px;
  -webkit-animation: loading 700ms linear 0ms infinite normal both;
          animation: loading 700ms linear 0ms infinite normal both;
}

@-webkit-keyframes loading {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

@keyframes loading {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
.p-main-view__video-area {
  position: relative;
  height: 100vh;
  z-index: -1;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  overflow: hidden;
}
.p-main-view__video {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-main-view__text {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  color: #fff;
}
@media screen and (max-width: 768px) {
  .p-main-view__text {
    margin-left: -10px;
  }
}
.p-main-view__text span {
  display: block;
  font-size: clamp(0.75rem, 0.6871rem + 0.2685vw, 0.875rem);
}
.p-main-view__title {
  font-size: clamp(40px, 1.4304rem + 4.5638vw, 74px);
}
.p-main-view__subtitle span {
  display: inline;
  white-space: nowrap;
  line-height: 2.25;
  font-size: clamp(18px, 0.8733rem + 1.0738vw, 26px);
  color: #424547;
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(0%, rgba(250, 250, 250, 0.8)));
  background: linear-gradient(transparent 0%, rgba(250, 250, 250, 0.8) 0%);
  padding: 4px;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}

.p-concept__container {
  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;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-concept__container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 40px;
  }
}
.p-concept__container::before, .p-concept__container::after {
  position: absolute;
  content: "";
  display: block;
  height: 1px;
  width: 50%;
  background-color: #424547;
}
.p-concept__container::before {
  top: 0;
  right: -20px;
}
@media screen and (max-width: 768px) {
  .p-concept__container::before {
    top: auto;
    bottom: 110px;
    right: 0;
  }
}
.p-concept__container::after {
  bottom: 0;
  right: 60px;
}
@media screen and (max-width: 768px) {
  .p-concept__container::after {
    bottom: -10px;
    right: auto;
    left: 0;
  }
}
.p-concept__title h2 {
  font-size: clamp(18px, 0.1812rem + 4.0268vw, 48px);
}
.p-concept__lead {
  display: inline-block;
}
.p-concept__img {
  position: relative;
  height: 25vw;
  -webkit-transform: skewX(34deg);
          transform: skewX(34deg);
  left: -14%;
}
@media screen and (max-width: 768px) {
  .p-concept__img {
    height: 240px;
    width: 100%;
    left: -30%;
  }
}
.p-concept__img img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 768px) {
  .p-concept__img img {
    -o-object-position: top left;
       object-position: top left;
  }
}

.p-works__swiper {
  padding-left: 160px;
  padding-bottom: 84px;
  /* プログレスバーの色変更 */
}
@media screen and (max-width: 768px) {
  .p-works__swiper {
    padding-left: 20px;
  }
}
.p-works__swiper .swiper-horizontal > .swiper-pagination-progressbar,
.p-works__swiper .swiper-pagination-progressbar.swiper-pagination-horizontal {
  width: 90%;
  bottom: 0;
  top: auto;
}
.p-works__swiper .swiper-pagination-progressbar {
  left: 160px;
  background-color: #E5E5E5;
}
@media screen and (max-width: 768px) {
  .p-works__swiper .swiper-pagination-progressbar {
    left: 20px;
  }
}
.p-works__swiper .swiper-pagination-progressbar > .swiper-pagination-progressbar-fill {
  background: #424547;
}

.p-service {
  position: relative;
}
.p-service::before {
  content: "";
  position: absolute;
  background-color: #007698;
  width: 100%;
  min-height: 440px;
  top: -80px;
  left: 0;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .p-service::before {
    min-height: 300px;
    top: -40px;
  }
}
.p-service .c-section-title {
  color: #fff;
}
.p-service__cards {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[3];
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
@media screen and (max-width: 768px) {
  .p-service__cards {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.p-service .c-card:first-child {
  background: url(../img/top/service-1.jpg) center/cover;
}
.p-service .c-card:nth-child(2) {
  background: url(../img/top/service-2.jpg) center/cover;
}
.p-service .c-card:nth-child(3) {
  background: url(../img/top/service-3.jpg) center/cover;
}

.p-profile__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 900px;
  gap: 36px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 768px) {
  .p-profile__container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
.p-profile__img {
  width: 46%;
}
@media screen and (max-width: 768px) {
  .p-profile__img {
    width: 100%;
  }
}
.p-profile__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 56px;
}
@media screen and (max-width: 768px) {
  .p-profile__content {
    gap: 40px;
  }
}
.p-profile__title {
  font-size: clamp(1.125rem, 0.8733rem + 1.0738vw, 1.625rem);
}
.p-profile__title span {
  display: block;
  font-size: clamp(0.875rem, 0.83rem + 0.23vw, 1rem);
}
.p-profile__icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 24px;
}
.p-profile__icon > * {
  width: 24px;
}

.p-license__body {
  background: url(../img/top/license.jpg) center/cover;
  min-height: 400px;
  display: -ms-grid;
  display: grid;
}
@media screen and (max-width: 768px) {
  .p-license__body {
    background: url(../img/top/license-sp.jpg) center/cover;
  }
}
.p-license__container {
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
}
@media screen and (max-width: 768px) {
  .p-license__container {
    -ms-flex-item-align: end;
        align-self: flex-end;
    padding-bottom: 20px;
  }
}
.p-license .c-section-title {
  position: relative;
  display: inline-block;
}
.p-license .c-section-title::after {
  content: "";
  display: block;
  height: 1px;
  width: 120%;
  background-color: #424547;
}
.p-license__list {
  padding-left: 1rem;
}
.p-license__list li {
  list-style: disc;
}

.p-plan__list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[3];
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
@media screen and (max-width: 768px) {
  .p-plan__list {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.p-plan .p-planCard {
  background: #fff;
  text-align: center;
  -webkit-box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, 0.2);
          box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, 0.2);
}
.p-plan .p-planCard__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 14px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 10px;
}
.p-plan .p-planCard__title {
  background-color: #DEE7EC;
  font-size: clamp(1.5rem, 1.3112rem + 0.8054vw, 1.875rem);
  text-align: center;
  font-weight: normal;
  padding: 24px;
}
.p-plan .p-planCard__price {
  font-size: clamp(1.5rem, 1.3112rem + 0.8054vw, 1.875rem);
}
.p-plan .p-planCard__price span {
  font-size: clamp(1rem, 0.8742rem + 0.5369vw, 1.25rem);
  font-weight: normal;
}
.p-plan .p-planCard__label {
  background: #DEE7EC;
  border-radius: 50px;
  padding: 0 8px;
}
.p-plan .p-planCard:nth-child(2) .p-planCard__title {
  background-color: #007698;
  color: #fff;
}

.p-skew__1 {
  position: relative;
  overflow-x: hidden;
}
.p-skew__1::before {
  content: "";
  display: block;
  position: absolute;
  background-color: #DEE7EC;
  -webkit-transform: skewX(34deg);
          transform: skewX(34deg);
  top: -120px;
  left: 75%;
  width: 50%;
  height: 100%;
}
@media screen and (max-width: 768px) {
  .p-skew__1::before {
    width: 80%;
    left: 64%;
  }
}
.p-skew__2 {
  position: relative;
  overflow-x: hidden;
}
.p-skew__2::before {
  content: "";
  display: block;
  position: absolute;
  background-color: #F3F2F3;
  -webkit-transform: skewX(34deg);
          transform: skewX(34deg);
  top: -36%;
  left: 0%;
  width: 74%;
  height: 120%;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .p-skew__2::before {
    width: 80%;
  }
}

.p-contact {
  background: #F3F2F3;
  position: relative;
  overflow: hidden;
}
.p-contact::before {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  -webkit-clip-path: polygon(0 0, 10% 0, 100% 100%, 0 100%);
          clip-path: polygon(0 0, 10% 0, 100% 100%, 0 100%);
  top: 0;
  left: -90px;
  background: #EBEBEB;
  z-index: 1;
}
.p-contact__header {
  height: 20vw;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 768px) {
  .p-contact__header {
    height: 120px;
  }
}
.p-contact__header img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-contact__body {
  position: relative;
}
.p-contact__content {
  position: relative;
  width: 90%;
  max-width: 1120px;
  background-color: #fff;
  padding: 96px 40px;
  margin: 96px auto;
  z-index: 2;
}
@media screen and (max-width: 768px) {
  .p-contact__content {
    padding: 40px 20px;
    margin: 40px auto;
  }
}

.p-contactForm > .formrun {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
  max-width: 740px;
  margin: auto;
}
.p-contactForm > .formrun dd, .p-contactForm > .formrun ul, .p-contactForm > .formrun ul > li > label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px;
}
.p-contactForm > .formrun .red, .p-contactForm > .formrun .error_match, .p-contactForm > .formrun .error_format, .p-contactForm > .formrun .error_blank {
  color: #D55757;
}
.p-contactForm > .formrun input[type=radio] {
  position: relative;
  width: 24px;
  height: 24px;
  border: 1px solid rgba(66, 69, 71, 0.5);
  background-color: #fff;
  border-radius: 50%;
  padding: 0;
}
.p-contactForm > .formrun input[type=radio]::after {
  display: none;
  content: "";
  position: absolute;
  background-color: #007698;
  border-radius: 50%;
  width: 14px;
  height: 14px;
  top: 4px;
  left: 4px;
}
.p-contactForm > .formrun input[type=radio]:checked::after {
  display: block;
}
.p-contactForm__btn {
  width: 300px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 768px) {
  .p-contactForm__btn {
    width: 250px;
  }
}

.p-gnav__inner {
  padding: 20px;
  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;
}
.p-gnav__nav ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 40px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 1024px) {
  .p-gnav__nav ul {
    gap: 24px;
  }
}
.p-gnav__logo {
  width: 160px;
  height: 38px;
  background-color: #fff;
  -webkit-mask-image: url("../img/common/logo.svg");
          mask-image: url("../img/common/logo.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: 0 0;
          mask-position: 0 0;
  -webkit-mask-size: 100%;
          mask-size: 100%;
}

.p-hamburger {
  display: block;
  z-index: 3;
  position: relative;
  top: 10px;
  left: 10px;
  width: 40px;
  height: 40px;
  cursor: pointer;
  text-align: center;
}

.p-hamburger span {
  display: block;
  position: absolute;
  width: 30px;
  height: 2px;
  left: 6px;
  background-color: #fff;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

.p-hamburger span:nth-child(1) {
  top: 10px;
}

.p-hamburger span:nth-child(2) {
  top: 20px;
}

.p-hamburger span:nth-child(3) {
  top: 30px;
}

/* ナビ開いてる時のバツボタン */
.p-hamburger.is-active span:nth-child(1) {
  top: 16px;
  left: 6px;
  background: #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.p-hamburger.is-active span:nth-child(2),
.p-hamburger.is-active span:nth-child(3) {
  top: 16px;
  background: #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* ナビメニュー内 */
.p-drawer {
  position: fixed;
  z-index: 2;
  top: 0;
  left: 0;
  color: #fff;
  background: rgba(51, 51, 51, 0.8);
  text-align: center;
  width: 100%;
  height: 100%;
  padding-top: 50px;
  opacity: 0;
  -webkit-transition: opacity 0.6s ease, visibility 0.6s ease;
  transition: opacity 0.6s ease, visibility 0.6s ease;
  visibility: hidden;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
}

.p-drawer ul {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  padding: 0;
  width: 100%;
}

.p-drawer__link {
  list-style-type: none;
  padding: 0;
  width: 100%;
  -webkit-transition: 0.4s all;
  transition: 0.4s all;
}

.p-drawer__link:last-child {
  padding-bottom: 0;
}

.p-drawer__link a {
  display: block;
  color: #fff;
  padding: 1em 0;
  text-decoration: none;
}

/* ハンバーガーメニュー押してactiveクラスを付いたら表示する */
nav.p-drawer.is-active {
  opacity: 100;
  visibility: visible;
}

.u-dn {
  display: none !important;
}
.u-db {
  display: block !important;
}
.u-di {
  display: inline !important;
}
.u-diib {
  display: inline-block !important;
}
.u-absolute {
  position: absolute !important;
}
.u-relative {
  position: relative !important;
}
.u-static {
  position: static !important;
}
.u-normal {
  font-weight: normal !important;
}
.u-bold {
  font-weight: bold !important;
}
.u-text-center {
  text-align: center !important;
}
.u-text-left {
  text-align: left !important;
}
.u-text-right {
  text-align: right !important;
}
.u-link {
  color: #007698;
  text-decoration: underline;
}
.u-link:hover {
  text-decoration: none;
}

.u-mt-0 {
  margin-top: 0px;
}

.u-mt-4 {
  margin-top: 4px;
}

.u-mt-8 {
  margin-top: 8px;
}

.u-mt-12 {
  margin-top: 12px;
}

.u-mt-16 {
  margin-top: 16px;
}

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

.u-mt-24 {
  margin-top: 24px;
}

.u-mt-28 {
  margin-top: 28px;
}

.u-mt-32 {
  margin-top: 32px;
}

.u-mt-36 {
  margin-top: 36px;
}

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

.u-mt-44 {
  margin-top: 44px;
}

.u-mt-48 {
  margin-top: 48px;
}

.u-mt-52 {
  margin-top: 52px;
}

.u-mt-56 {
  margin-top: 56px;
}

.u-mt-60 {
  margin-top: 60px;
}

.u-mt-64 {
  margin-top: 64px;
}

.u-mt-68 {
  margin-top: 68px;
}

.u-mt-72 {
  margin-top: 72px;
}

.u-mt-76 {
  margin-top: 76px;
}

.u-mt-80 {
  margin-top: 80px;
}

.u-ml-0 {
  margin-left: 0px;
}

.u-ml-4 {
  margin-left: 4px;
}

.u-ml-8 {
  margin-left: 8px;
}

.u-ml-12 {
  margin-left: 12px;
}

.u-ml-16 {
  margin-left: 16px;
}

.u-ml-20 {
  margin-left: 20px;
}

.u-ml-24 {
  margin-left: 24px;
}

.u-ml-28 {
  margin-left: 28px;
}

.u-ml-32 {
  margin-left: 32px;
}

.u-ml-36 {
  margin-left: 36px;
}

.u-ml-40 {
  margin-left: 40px;
}

.u-ml-44 {
  margin-left: 44px;
}

.u-ml-48 {
  margin-left: 48px;
}

.u-ml-52 {
  margin-left: 52px;
}

.u-ml-56 {
  margin-left: 56px;
}

.u-ml-60 {
  margin-left: 60px;
}

.u-ml-64 {
  margin-left: 64px;
}

.u-ml-68 {
  margin-left: 68px;
}

.u-ml-72 {
  margin-left: 72px;
}

.u-ml-76 {
  margin-left: 76px;
}

.u-ml-80 {
  margin-left: 80px;
}

.u-mr-0 {
  margin-right: 0px;
}

.u-mr-4 {
  margin-right: 4px;
}

.u-mr-8 {
  margin-right: 8px;
}

.u-mr-12 {
  margin-right: 12px;
}

.u-mr-16 {
  margin-right: 16px;
}

.u-mr-20 {
  margin-right: 20px;
}

.u-mr-24 {
  margin-right: 24px;
}

.u-mr-28 {
  margin-right: 28px;
}

.u-mr-32 {
  margin-right: 32px;
}

.u-mr-36 {
  margin-right: 36px;
}

.u-mr-40 {
  margin-right: 40px;
}

.u-mr-44 {
  margin-right: 44px;
}

.u-mr-48 {
  margin-right: 48px;
}

.u-mr-52 {
  margin-right: 52px;
}

.u-mr-56 {
  margin-right: 56px;
}

.u-mr-60 {
  margin-right: 60px;
}

.u-mr-64 {
  margin-right: 64px;
}

.u-mr-68 {
  margin-right: 68px;
}

.u-mr-72 {
  margin-right: 72px;
}

.u-mr-76 {
  margin-right: 76px;
}

.u-mr-80 {
  margin-right: 80px;
}

.u-mb-0 {
  margin-bottom: 0px;
}

.u-mb-4 {
  margin-bottom: 4px;
}

.u-mb-8 {
  margin-bottom: 8px;
}

.u-mb-12 {
  margin-bottom: 12px;
}

.u-mb-16 {
  margin-bottom: 16px;
}

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

.u-mb-24 {
  margin-bottom: 24px;
}

.u-mb-28 {
  margin-bottom: 28px;
}

.u-mb-32 {
  margin-bottom: 32px;
}

.u-mb-36 {
  margin-bottom: 36px;
}

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

.u-mb-44 {
  margin-bottom: 44px;
}

.u-mb-48 {
  margin-bottom: 48px;
}

.u-mb-52 {
  margin-bottom: 52px;
}

.u-mb-56 {
  margin-bottom: 56px;
}

.u-mb-60 {
  margin-bottom: 60px;
}

.u-mb-64 {
  margin-bottom: 64px;
}

.u-mb-68 {
  margin-bottom: 68px;
}

.u-mb-72 {
  margin-bottom: 72px;
}

.u-mb-76 {
  margin-bottom: 76px;
}

.u-mb-80 {
  margin-bottom: 80px;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.u-ml-sp-0 {
  margin-left: 0px !important;
}

.u-ml-sp-4 {
  margin-left: 4px !important;
}

.u-ml-sp-8 {
  margin-left: 8px !important;
}

.u-ml-sp-12 {
  margin-left: 12px !important;
}

.u-ml-sp-16 {
  margin-left: 16px !important;
}

.u-ml-sp-20 {
  margin-left: 20px !important;
}

.u-ml-sp-24 {
  margin-left: 24px !important;
}

.u-ml-sp-28 {
  margin-left: 28px !important;
}

.u-ml-sp-32 {
  margin-left: 32px !important;
}

.u-ml-sp-36 {
  margin-left: 36px !important;
}

.u-ml-sp-40 {
  margin-left: 40px !important;
}

.u-ml-sp-44 {
  margin-left: 44px !important;
}

.u-ml-sp-48 {
  margin-left: 48px !important;
}

.u-ml-sp-52 {
  margin-left: 52px !important;
}

.u-ml-sp-56 {
  margin-left: 56px !important;
}

.u-ml-sp-60 {
  margin-left: 60px !important;
}

.u-ml-sp-64 {
  margin-left: 64px !important;
}

.u-ml-sp-68 {
  margin-left: 68px !important;
}

.u-ml-sp-72 {
  margin-left: 72px !important;
}

.u-ml-sp-76 {
  margin-left: 76px !important;
}

.u-ml-sp-80 {
  margin-left: 80px !important;
}

.u-mr-sp-0 {
  margin-right: 0px !important;
}

.u-mr-sp-4 {
  margin-right: 4px !important;
}

.u-mr-sp-8 {
  margin-right: 8px !important;
}

.u-mr-sp-12 {
  margin-right: 12px !important;
}

.u-mr-sp-16 {
  margin-right: 16px !important;
}

.u-mr-sp-20 {
  margin-right: 20px !important;
}

.u-mr-sp-24 {
  margin-right: 24px !important;
}

.u-mr-sp-28 {
  margin-right: 28px !important;
}

.u-mr-sp-32 {
  margin-right: 32px !important;
}

.u-mr-sp-36 {
  margin-right: 36px !important;
}

.u-mr-sp-40 {
  margin-right: 40px !important;
}

.u-mr-sp-44 {
  margin-right: 44px !important;
}

.u-mr-sp-48 {
  margin-right: 48px !important;
}

.u-mr-sp-52 {
  margin-right: 52px !important;
}

.u-mr-sp-56 {
  margin-right: 56px !important;
}

.u-mr-sp-60 {
  margin-right: 60px !important;
}

.u-mr-sp-64 {
  margin-right: 64px !important;
}

.u-mr-sp-68 {
  margin-right: 68px !important;
}

.u-mr-sp-72 {
  margin-right: 72px !important;
}

.u-mr-sp-76 {
  margin-right: 76px !important;
}

.u-mr-sp-80 {
  margin-right: 80px !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.u-pl-0 {
  padding-left: 0px !important;
}

.u-pl-4 {
  padding-left: 4px !important;
}

.u-pl-8 {
  padding-left: 8px !important;
}

.u-pl-12 {
  padding-left: 12px !important;
}

.u-pl-16 {
  padding-left: 16px !important;
}

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

.u-pl-24 {
  padding-left: 24px !important;
}

.u-pl-28 {
  padding-left: 28px !important;
}

.u-pl-32 {
  padding-left: 32px !important;
}

.u-pl-36 {
  padding-left: 36px !important;
}

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

.u-pl-44 {
  padding-left: 44px !important;
}

.u-pl-48 {
  padding-left: 48px !important;
}

.u-pl-52 {
  padding-left: 52px !important;
}

.u-pl-56 {
  padding-left: 56px !important;
}

.u-pl-60 {
  padding-left: 60px !important;
}

.u-pl-64 {
  padding-left: 64px !important;
}

.u-pl-68 {
  padding-left: 68px !important;
}

.u-pl-72 {
  padding-left: 72px !important;
}

.u-pl-76 {
  padding-left: 76px !important;
}

.u-pl-80 {
  padding-left: 80px !important;
}

.u-pr-0 {
  padding-right: 0px !important;
}

.u-pr-4 {
  padding-right: 4px !important;
}

.u-pr-8 {
  padding-right: 8px !important;
}

.u-pr-12 {
  padding-right: 12px !important;
}

.u-pr-16 {
  padding-right: 16px !important;
}

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

.u-pr-24 {
  padding-right: 24px !important;
}

.u-pr-28 {
  padding-right: 28px !important;
}

.u-pr-32 {
  padding-right: 32px !important;
}

.u-pr-36 {
  padding-right: 36px !important;
}

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

.u-pr-44 {
  padding-right: 44px !important;
}

.u-pr-48 {
  padding-right: 48px !important;
}

.u-pr-52 {
  padding-right: 52px !important;
}

.u-pr-56 {
  padding-right: 56px !important;
}

.u-pr-60 {
  padding-right: 60px !important;
}

.u-pr-64 {
  padding-right: 64px !important;
}

.u-pr-68 {
  padding-right: 68px !important;
}

.u-pr-72 {
  padding-right: 72px !important;
}

.u-pr-76 {
  padding-right: 76px !important;
}

.u-pr-80 {
  padding-right: 80px !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.u-w-0 {
  width: 0px !important;
}

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

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

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

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

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

.u-w-120 {
  width: 120px !important;
}

.u-w-140 {
  width: 140px !important;
}

.u-w-160 {
  width: 160px !important;
}

.u-w-180 {
  width: 180px !important;
}

.u-w-200 {
  width: 200px !important;
}

.u-w-220 {
  width: 220px !important;
}

.u-w-240 {
  width: 240px !important;
}

.u-w-260 {
  width: 260px !important;
}

.u-w-280 {
  width: 280px !important;
}

.u-w-300 {
  width: 300px !important;
}

.u-w-320 {
  width: 320px !important;
}

.u-w-340 {
  width: 340px !important;
}

.u-w-360 {
  width: 360px !important;
}

.u-w-380 {
  width: 380px !important;
}

.u-w-400 {
  width: 400px !important;
}

.u-w-full {
  width: 100% !important;
}
.u-w-auto {
  width: auto !important;
}
.u-h-full {
  height: 100% !important;
}
.u-h-auto {
  height: auto !important;
}

.u-mincho {
  font-family: "Shippori Mincho", serif;
}
.u-mincho span {
  display: block;
}
.u-uppercase {
  text-transform: uppercase;
}
.u-mt-160 {
  margin-top: 160px;
}
.u-pb-120 {
  padding-bottom: 120px;
}
.u-text-shadow {
  text-shadow: 0 0 18px rgba(0, 0, 0, 0.35);
}

@media screen and (max-width: 640px) {
  .is-sm:hide {
    display: none;
  }
}

@media screen and (max-width: 768px) {
  .is-md:hide {
    display: none;
  }
}

@media screen and (max-width: 1024px) {
  .is-lg:hide {
    display: none;
  }
}

@media screen and (max-width: 1280px) {
  .is-xl:hide {
    display: none;
  }
}

.is-sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .is-sp {
    display: block;
  }
}

.is-pc {
  display: block;
}
@media screen and (max-width: 768px) {
  .is-pc {
    display: none;
  }
}

/*# sourceMappingURL=style.css.map*/