@charset "UTF-8";
/* --------------------------
color
-------------------------- */
/* --------------------------
spacing
-------------------------- */
/* --------------------------
font
-------------------------- */
/* --------------------------
contents width
-------------------------- */
/* --------------------------
z-index order
-------------------------- */
/* --------------------------
media query
-------------------------- */
/* --------------------------
h with center-line
-------------------------- */
@import url("http://fast.fonts.net/t/1.css?apiType=css&projectid=21750147-d652-4704-9a95-8b5f2d411f76");
@font-face {
  font-family: "FrutigerNeueW01-Regular";
  src: url("../../fonts/e2e74e1c-9e18-4127-adfd-feb8f6a9ceaf.eot?#iefix");
  src: url("../../fonts/e2e74e1c-9e18-4127-adfd-feb8f6a9ceaf.eot?#iefix") format("eot"), url("../../fonts/9edf3443-80c6-4de6-b582-122401f63ad4.woff2") format("woff2"), url("../../fonts/aa94077e-cdcd-4e33-abe0-ddcfe27e3485.woff") format("woff"), url("../../fonts/22dfb43f-26df-46f9-aa0f-30038f8da834.ttf") format("truetype"), url("../../fonts/36ad2de1-95ea-4eb3-a836-29c86179a248.svg#36ad2de1-95ea-4eb3-a836-29c86179a248") format("svg");
}

@font-face {
  font-family: "Frutiger Neue W01 Md";
  src: url("../../fonts/979450a2-8d59-4cc2-9937-94255a4f3923.eot?#iefix");
  src: url("../../fonts/979450a2-8d59-4cc2-9937-94255a4f3923.eot?#iefix") format("eot"), url("../../fonts/1f198a6d-f4fe-44f1-b78c-1b6a1cf66d00.woff2") format("woff2"), url("../../fonts/4748e3d8-1b23-420a-a419-d7a367ea1076.woff") format("woff"), url("../../fonts/11f76f62-1d4f-4327-bce7-1eee2aba08bf.ttf") format("truetype"), url("../../fonts/ce4a6e96-f298-4ab1-a2ac-bdbbbc1467d6.svg#ce4a6e96-f298-4ab1-a2ac-bdbbbc1467d6") format("svg");
}

@font-face {
  font-family: "Frutiger Neue W01 Bd";
  src: url("../../fonts/62057895-1f9e-4d70-bd1a-65751a20a878.eot?#iefix");
  src: url("../../fonts/62057895-1f9e-4d70-bd1a-65751a20a878.eot?#iefix") format("eot"), url("../../fonts/26f1236c-a914-477f-9d0f-10d758702626.woff2") format("woff2"), url("../../fonts/7875f3d5-b62b-445c-8c9e-d65da1514e9d.woff") format("woff"), url("../../fonts/1c242f4e-0c64-47cc-8cbc-e53d949280ba.ttf") format("truetype"), url("../../fonts/ec132df9-012a-4594-bbd9-c86574bee7b0.svg#ec132df9-012a-4594-bbd9-c86574bee7b0") format("svg");
}

html,
body,
p,
ol,
ul,
li,
dl,
dt,
dd,
blockquote,
figure,
fieldset,
legend,
textarea,
pre,
iframe,
hr,
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
  line-height: 1;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: 300;
}

ul {
  list-style: none;
}

button,
input,
select,
textarea {
  margin: 0;
}

html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

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

img,
embed,
iframe,
object,
audio,
video {
  height: auto;
  max-width: 100%;
}

iframe {
  border: 0;
}

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

td,
th {
  padding: 0;
  text-align: left;
}

body {
  font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  color: #231815;
  letter-spacing: 0.05em;
  text-indent: inherit;
}

a {
  color: #231815;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

a:hover {
  opacity: 0.6;
}

p {
  font-size: 16px;
  line-height: 2;
  margin-bottom: 20px;
}

p:last-child {
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  p {
    font-size: 14px;
    margin-bottom: 10px;
  }
}

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

.main {
  overflow: hidden;
}

.animated-shape {
  width: 600px;
  height: 600px;
  background-color: #add8e673;
  opacity: 0.4;
  border-radius: 50%;
  /* -webkit-animation: transformShape 20s infinite;
          animation: transformShape 20s infinite; */
  -webkit-filter: blur(20px);
          filter: blur(20px);
  /* ブラー効果強化 */
  position: fixed;
  top: 0;
  left: -100px;
  z-index: -1;
}

@media screen and (max-width: 767px) {
  .animated-shape {
    width: 300px;
    height: 300px;
  }
}

.animated-shape.sub {
  width: 400px;
  height: 400px;
  left: auto;
  top: auto;
  right: -100px;
  bottom: -100px;
}

@media screen and (max-width: 767px) {
  .animated-shape.sub {
    width: 200px;
    height: 200px;
  }
}

@-webkit-keyframes transformShape {
  0% {
    border-radius: 50%;
    /* 初期状態は円 */
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  25% {
    -webkit-transform: scale(1, 1.5);
            transform: scale(1, 1.5);
  }
  50% {
    -webkit-transform: perspective(300px) rotateX(10deg);
            transform: perspective(300px) rotateX(10deg);
  }
  75% {
    border-radius: 50%;
    /* 楕円 */
    -webkit-transform: scale(1.5, 1);
            transform: scale(1.5, 1);
  }
  100% {
    border-radius: 50%;
    /* 再び円 */
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@keyframes transformShape {
  0% {
    border-radius: 50%;
    /* 初期状態は円 */
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  25% {
    -webkit-transform: scale(1, 1.5);
            transform: scale(1, 1.5);
  }
  50% {
    -webkit-transform: perspective(300px) rotateX(10deg);
            transform: perspective(300px) rotateX(10deg);
  }
  75% {
    border-radius: 50%;
    /* 楕円 */
    -webkit-transform: scale(1.5, 1);
            transform: scale(1.5, 1);
  }
  100% {
    border-radius: 50%;
    /* 再び円 */
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

.slick-dots {
  left: 5px !important;
  text-align: left !important;
}
    
@media screen and (max-width: 767px) {
  .slick-dots {
        bottom: -15px;
        display: flex;
    justify-content: center;
  }
}

.slick-dots li {
  width: 25px !important;
  height: 5px !important;
}

.slick-dots li button {
  width: 25px !important;
  height: 5px !important;
  padding: 0;
}

.slick-dots li button:before {
  width: 25px !important;
  height: 5px !important;
  background: #231815;
  content: "" !important;
  display: block;
}

.page-mv {
  margin: 120px 0 80px;
}

@media screen and (max-width: 767px) {
  .page-mv {
    margin: 80px 0 20px;
  }
}
.youtube-wrapper {
  width: 100%;
  max-width: 1000px;
  flex-shrink: 0;       /* flex で潰れない */
}

.youtube {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
}

.youtube iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

/* --------------------------
パンくずナビ
-------------------------- */
.c-breadcrumb {
  list-style: none;
  margin: 0;
  padding: 20px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 12px;
}

.c-breadcrumb li {
  max-width: 250px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

@media screen and (max-width: 767px) {
  .c-breadcrumb li {
    display: none;
  }
}

.c-breadcrumb li::after {
  content: '>';
  padding: 0 1em;
}

.c-breadcrumb li:last-child::after {
  content: none;
}

/* --------------------------
ボタン
-------------------------- */
.c-button {
  display: inline-block;
  width: auto;
  padding: 20px 55px;
  cursor: pointer;
  text-decoration: none;
  text-align: center;
  background-color: #005bac;
  border: 2px solid #005bac;
  border-radius: 50px;
  position: relative;
  color: white;
  font-weight: bold;
}

.c-button:hover {
  opacity: 0.7;
  text-decoration: none;
}

.c-button--arrow,.c-button--arrow-left {
  font-weight: bold;
  text-decoration: none;
  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;
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  gap: 10px;
  font-size: 16px;
}

@media screen and (max-width: 767px) {
  .c-button--arrow,.c-button--arrow-left {
    font-size: 14px;
  }
}

.c-button--arrow.center {
  margin: 0 auto;
}

.c-button--arrow.right {
  margin-left: auto;
}

.c-button--arrow::after {
  content: "";
  width: 40px;
  height: 40px;
  display: inline-block;
  background: #005bac;
  border-radius: 50px;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.c-button--arrow::before {
  content: "";
  width: 7px;
  height: 7px;
  display: inline-block;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  right: 20px;
  top: 47%;
  -webkit-transform: rotate(45deg) translateY(-50%);
          transform: rotate(45deg) translateY(-50%);
  z-index: +1;
}

.c-button--arrow-left::before {
  content: "";
  width: 40px;
  height: 40px;
  display: inline-block;
  background: #005bac;
  border-radius: 50px;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.c-button--arrow-left::after {
  content: "";
  width: 7px;
  height: 7px;
  display: inline-block;
  border-bottom: 2px solid #fff;
  border-left: 2px solid #fff;
  position: absolute;
  left: 15px;
  top: 47%;
  -webkit-transform: rotate(45deg) translateY(-50%);
          transform: rotate(45deg) translateY(-50%);
  z-index: +1;
}
.c-button--arrow:hover,
.c-button--arrow-left:hover {
  opacity: 1;
}

.c-button--arrow:hover::after,
.c-button--arrow-left:hover::before  {
  -webkit-transform: scale(1.2);
          transform: scale(1.2);
}

/* --------------------------
フォーム
-------------------------- */
.c-form tr th {
  width: 30%;
  padding-bottom: 20px;
}
.c-form tr td {
      padding-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .c-form tbody {
        display: block;
    width: 100%;
  }
  .c-form tr {
        display: block;
  }
  .c-form tr th {
        display: block;
    width: 100%;
        padding-bottom: 10px;
  }
}
.c-form-text {
  border: 1px solid #c5c5c5;
  width: 100%;
  padding: 3px 15px;
  border-radius: 4px;
  font-size: 16px;
  line-height: 22px;
}
@media screen and (max-width: 767px) {
  .c-form-text {
    padding: 3px 12px;
  }
}

.c-form-textarea {
  border: 1px solid #c5c5c5;
  width: 100%;
  padding: 8px 5px;
  height: 100px;
  border-radius: 3px;
}

.c-form-checkbox-input {
  display: none;
}

.c-form-checkbox-input:checked + .c-form-checkbox-span::after {
  content: "";
  display: block;
  position: absolute;
  top: 5px;
  left: 4px;
  width: 8px;
  height: 12px;
  -webkit-transform: rotate(40deg);
          transform: rotate(40deg);
  border-bottom: 3px solid #e20013;
  border-right: 3px solid #e20013;
}

.c-form-checkbox span {
    display: inline-block;
    margin: 0 !important;
    margin-right: 10px !important;
}

.c-form-checkbox-span::before {
  content: "";
  display: block;
  position: absolute;
  top: 5px;
  left: 0;
  width: 16px;
  height: 16px;
  border: 2px solid #ababab;
  background-color: #fff;
}

.c-form-radio-input {
  display: none;
}

.c-form-radio-input:checked + .c-form-radio-span::after {
  content: "";
  display: block;
  position: absolute;
  top: 9px;
  left: 4px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #e20013;
}

.c-form-radio-span {
  padding-left: 28px;
  position: relative;
}

.c-form-radio-span::before {
  content: "";
  display: block;
  position: absolute;
  top: 5px;
  left: 0;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  border: 2px solid #c5c5c5;
  background-color: #fff;
}

/* --------------------------
見出し
-------------------------- */
.c-h1 {
  color: #231815;
  font-weight: 400;
  letter-spacing: 0.1em;
  font-family: "Marcellus", serif;
  font-size: 36px;
  line-height: 1.5;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .c-h1 {
    font-size: 26px;
    margin-bottom: 20px;
  }
}

.c-h2 {
  font-family: "Marcellus", serif;
  margin-bottom: 20px;
  font-size: 36px;
  line-height: 1.5;
}

@media screen and (max-width: 767px) {
  .c-h2 {
    font-size: 26px;
    text-align: center;
    margin-bottom: 10px;
  }
}

.c-h2::after {
  content: "";
  display: block;
  width: 40px;
  height: 20px;
  background: url(../images/common/h2.png) no-repeat;
  background-size: contain;
  margin-top: 20px;
}

@media screen and (max-width: 767px) {
  .c-h2::after {
    width: 25px;
    height: 15px;
    margin: 10px auto 0;
  }
}

.c-h2.center::after {
  margin: 20px auto 0;
}

.c-h3 {
  font-size: 28px;
  letter-spacing: 0.08em;
  margin-bottom: 20px;
  font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho Pro", serif;
  line-height: 1.5;
}

@media screen and (max-width: 767px) {
  .c-h3 {
    font-size: 20px;
  }
}
.c-h3.sub {
  font-weight: bold;
  font-family: "Noto Sans JP", sans-serif;
  /* border-left: 5px solid #005bac;
  padding-left: 10px; */
  margin-bottom: 10px;
}

.c-h4 {
  font-size: 20px;
  line-height: 1.5;
  letter-spacing: 0.08em;
  font-weight: bold;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .c-h4 {
    font-size: 16px;
    margin-bottom: 15px;
  }
}

.c-h5 {
  font-size: 16px;
  line-height: 22px;
  letter-spacing: 0.08em;
  font-weight: 400;
  margin-bottom: 1em;
}

@media screen and (max-width: 767px) {
  .c-h5 {
    font-size: 14px;
    line-height: 22px;
  }
}

.c-h6 {
  font-size: 16px;
  line-height: 22px;
  letter-spacing: 0.08em;
  font-weight: 400;
  margin-bottom: 1em;
}

@media screen and (max-width: 767px) {
  .c-h6 {
    font-size: 10px;
    line-height: 16px;
  }
}

.c-h--center-line {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.c-h--center-line::before, .c-h--center-line::after {
  content: "";
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  height: 1px;
  background: #005bac;
  display: block;
}

.c-h--center-line::before {
  margin-right: 30px;
}

@media screen and (max-width: 767px) {
  .c-h--center-line::before {
    margin-right: 15px;
  }
}

.c-h--center-line::after {
  margin-left: 30px;
}

@media screen and (max-width: 767px) {
  .c-h--center-line::after {
    margin-left: 15px;
  }
}

/* --------------------------
ラベル
-------------------------- */
.c-label {
  display: inline-block;
  padding: 5px 15px;
  line-height: 1;
  background-color: #c5c5c5;
  color: #fff;
  font-size: 12px;
  letter-spacing: 1px;
}

.c-label--blue-dark {
  background-color: #0b2b75;
}

.c-label--red {
  background-color: #e20013;
}

.c-label--blue {
  background-color: #009dbf;
}

.c-label--green {
  background-color: #009940;
}

.c-label--large {
  padding: 6px 12px;
  font-size: 16px;
}

.c-label--small {
  padding: 5px 8px;
  font-size: 12px;
}

/* --------------------------
リンク
-------------------------- */
.c-link {
  color: #009dbf;
}

.c-link--block {
  display: block;
  text-decoration: none;
}

.c-link--block img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.c-link--none {
  text-decoration: none;
}

/* --------------------------
リスト
-------------------------- */
.c-list {
  font-size: 16px;
}

.c-list > li {
  margin-bottom: 5px;
  line-height: 24px;
  position: relative;
}

.c-list > li:last-child {
  margin-bottom: 0;
}

.c-list--point {
  margin-bottom: 1em;
}

.c-list--point > li {
  padding-left: 15px;
  margin-bottom: 10px;
  line-height: 1.5;
  position: relative;
}
@media screen and (max-width: 767px) {
  .c-list--point > li {
    font-size: 14px;
}
}
.c-list--point > li::before {
  content: '';
  width: 6px;
  height: 6px;
  border-radius: 3px;
  display: inline-block;
  background-color: #005bac;
  position: absolute;
  top: 10px;
  left: 0;
}

.c-list--point > li:last-child {
  margin-bottom: 0;
}

.c-list--link li {
  padding-left: 15px;
  margin-bottom: 5px;
  line-height: 24px;
  position: relative;
}

.c-list--link li::before {
  content: '';
  display: inline-block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4px 0 4px 6.9px;
  border-color: transparent transparent transparent #e20013;
  position: absolute;
  top: 8px;
  left: 2px;
}

.c-list--link li a {
  text-decoration: none;
}

.c-list--link li a:hover {
  text-decoration: underline;
}

.c-list--horizontal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.c-list--horizontal li {
  margin-left: 25px;
  margin-bottom: 0;
}

.c-list--horizontal li:first-child {
  margin-left: 0;
}

.c-list--border li {
  background-position: left 16px;
  padding: 14px;
  border-bottom: 1px dashed #d4d4d4;
  overflow-x: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  width: 100%;
  line-height: 1;
}

.c-list--border li:last-child {
  border-bottom: 0;
}

.c-list--border li a {
  color: #231815;
  text-decoration: none;
}

.c-list--border li a:hover {
  color: #009dbf;
}

.c-list--order {
  padding-left: 20px;
  margin-bottom: 1em;
}

.c-list--order > li {
  margin-bottom: 5px;
  line-height: 32px;
  position: relative;
}

.c-list--order > li:last-child {
  margin-bottom: 0;
}

.c-list--note li {
  font-size: 13px;
  color: #8d8d8d;
  line-height: 1.5;
}

.c-list--note li::before {
  content: '※';
  margin-right: 3px;
}

/* --------------------------
ハンバーガーメニューアイコン
-------------------------- */
.c-menu {
  position: fixed;
  right: 30px;
  top: 30px;
  display: block;
  z-index: 999;
  background: white;
  border-radius: 50px;
      height: 45px;
    width: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
  border: 2px solid #005bac;
  cursor: pointer;
}

@media screen and (max-width: 767px) {
  .c-menu {
    top: 15px;
    right: 15px;
    padding: 13px 11px;
  }
}

.c-menu-trigger,
.c-menu-trigger span {
  display: inline-block;
  -webkit-transition: all .2s;
  transition: all .2s;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.c-menu-trigger {
  position: relative;
  width: 20px;
  height: 12px;
}

.c-menu-trigger-label {
  display: block;
  font-size: 8px;
  letter-spacing: 1.1px;
  position: absolute;
  left: 0;
  right: 0;
  top: 20px;
  margin: auto;
  text-align: center;
  width: 100%;
  background-color: transparent;
  height: auto;
  color: #fff;
}

.c-menu-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #005bac;
}

.c-menu-trigger span:nth-of-type(1) {
  top: 0;
}

.c-menu-trigger span:nth-of-type(2) {
  top: 5px;
}

.c-menu-trigger span:nth-of-type(3) {
  bottom: 0;
}

.c-menu-trigger.active span:nth-of-type(1) {
  -webkit-transform: translateY(5px) translateX(1px) rotate(-30deg);
  transform: translateY(5px) translateX(1px) rotate(-30deg);
}

.c-menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}

.c-menu-trigger.active span:nth-of-type(3) {
  -webkit-transform: translateY(-5px) translateX(1px) rotate(30deg);
  transform: translateY(-5px) translateX(1px) rotate(30deg);
}

.c-menu-recruit {
  right: 20px;
}

/* --------------------------
パネル
-------------------------- */
.c-panel {
  background-color: #e0e0e0;
  filter: drop-shadow(0px 0px 10px #c5c5c5);
}

.c-panel--border {
  border: 1px solid #c5c5c5;
  background-color: #fff;
}

.c-panel--rounded {
  border-radius: 8px;
}

.c-panel--white {
  background-color: #fff;
}

.c-panel-contents {
  padding: 40px;
}

@media screen and (max-width: 767px) {
  .c-panel-contents {
    padding: 20px;
  }
}

.c-panel-contents--narrow {
  padding: 15px;
}

/* --------------------------
セクション
-------------------------- */
@media screen and (min-width: 768px) {
  .c-section {
    margin: 150px 0;
  }
}

@media screen and (max-width: 767px) {
  .c-section {
    margin: 60px 0;
  }
}

@media screen and (min-width: 768px) {
  .c-section--middle {
    margin: 80px 0;
  }
}

@media screen and (max-width: 767px) {
  .c-section--middle {
    margin: 30px 0;
  }
}

@media screen and (min-width: 768px) {
  .c-section--narrow {
    margin: 30px 0;
  }
}

@media screen and (max-width: 767px) {
  .c-section--narrow {
    margin: 20px 0;
  }
}

@media screen and (min-width: 768px) {
  .c-section--bg {
    padding: 150px 0;
  }
}

@media screen and (max-width: 767px) {
  .c-section--bg {
    padding: 60px 0;
  }
}

@media screen and (min-width: 768px) {
  .c-section--bg--middle {
    padding: 80px 0;
  }
}

@media screen and (max-width: 767px) {
  .c-section--bg--middle {
    padding: 30px 0;
  }
}

@media screen and (min-width: 768px) {
  .c-section--bg--narrow {
    padding: 30px 0;
  }
}

@media screen and (max-width: 767px) {
  .c-section--bg--narrow {
    padding: 20px 0;
  }
}

.c-section-container {
  max-width: 1400px;
  margin: 0 auto;
}

@media screen and (min-width: 768px) {
  .c-section-container {
    padding: 0 40px;
  }
}

@media screen and (max-width: 1023px) {
  .c-section-container {
    max-width: 100%;
    padding: 0 20px;
  }
}

@media screen and (max-width: 767px) {
  .c-section-container {
    max-width: 100%;
    padding: 0 20px;
  }
}

.c-section-container-inner {
  max-width: 1040px;
  margin: auto;
}

/* --------------------------
タブ
-------------------------- */
.c-tab-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
}

@media screen and (max-width: 767px) {
  .c-tab-nav {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 0 -5px 5px;
  }
}

.c-tab-nav-item {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

@media screen and (max-width: 767px) {
  .c-tab-nav-item {
    width: 50%;
    padding: 5px;
  }
}

.c-tab-nav-item:last-child a {
  border-right: 1px solid #c5c5c5;
}

.c-tab-nav-item a {
  background-color: #e0e0e0;
  border: 1px solid #c5c5c5;
  border-right: 0;
  display: block;
  padding: 20px;
  text-align: center;
  text-decoration: none;
  color: #231815;
  font-weight: 400;
}

@media screen and (max-width: 767px) {
  .c-tab-nav-item a {
    border-right: 1px solid #c5c5c5;
  }
}

.c-tab-nav-item a[aria-selected="true"] {
  background-color: #fff;
  border-bottom: 0;
  border-top: 2px solid #e20013;
  color: #231815;
}

@media screen and (max-width: 767px) {
  .c-tab-nav-item a[aria-selected="true"] {
    border: 0;
    background-color: #e20013;
    color: #fff;
  }
}

.c-tab-contents-item {
  display: none;
  background-color: #fff;
  border: 1px solid #c5c5c5;
  border-top: 0;
  padding: 30px;
}

@media screen and (max-width: 767px) {
  .c-tab-contents-item {
    padding: 20px;
    border-top: 1px solid #c5c5c5;
  }
}

.c-tab-contents-item[aria-hidden="false"] {
  display: block;
}

/* --------------------------
テーブル
-------------------------- */
.c-table {
  width: 100%;
  font-size: 14px;
  border-right: 1px solid #c5c5c5;
  border-bottom: 1px solid #c5c5c5;
}

@media screen and (max-width: 767px) {
  .c-table {
    font-size: 11px;
    /* width: 580px; */
  }
}

.c-table-wrap {
  overflow-x: auto;
  padding-bottom: 15px;
}

.c-table tbody tr.head th {
  /* background: transparent;
  border: none; */
  color: #005bac;
  font-weight: bold;
}

.c-table tbody tr.head td {
  border-left: 1px solid #c5c5c5;
  border-top: 1px solid #c5c5c5;
  text-align: center;
  color: #005bac;
  font-weight: bold;
}

.c-table tbody tr.head td a {
  text-decoration: none;
  color: #005bac;
}

.c-table tbody th {
  padding: 15px 25px;
  line-height: 1.5;
  font-weight: 400;
  width: 30%;
  background-color: #f3f7fa;
  vertical-align: top;
  border-top: 1px solid #c5c5c5;
  border-left: 1px solid #c5c5c5;
}

@media screen and (max-width: 767px) {
  .c-table tbody th {
    padding: 10px;
  }
}

.c-table tbody td {
  padding: 15px 25px;
  border-top: 1px solid #c5c5c5;
  border-left: 1px solid #c5c5c5;
  width: 17.5%;
  background: white;
}

@media screen and (max-width: 767px) {
  .c-table tbody td {
    padding: 10px;
  }
}

.c-table--narrow {
  border-color: #c5c5c5;
}

.c-table--narrow tbody tr {
  border-color: #c5c5c5;
}

.c-table--narrow tbody th {
  padding: 8px 10px;
  line-height: 1.5;
  font-weight: normal;
  width: 120px;
  font-weight: 400;
  text-align: right;
}

@media screen and (max-width: 767px) {
  .c-table--narrow tbody th {
    padding: 8px;
    width: 80px;
  }
}

.c-table--narrow tbody td {
  padding: 8px 10px 8px 20px;
  line-height: 1.5;
}

@media screen and (max-width: 767px) {
  .c-table--narrow tbody td {
    padding: 8px 10px 8px 15px;
  }
}

/* --------------------------
テキスト整列
-------------------------- */
.u-align-left {
  text-align: left;
}

.u-align-right {
  text-align: right;
}

.u-align-center {
  text-align: center;
}

.u-align-justify {
  text-align: justify;
  word-wrap: break-word;
}

@media screen and (min-width: 768px) {
  .u-align-left--pc {
    text-align: left;
  }
  .u-align-right--pc {
    text-align: right;
  }
  .u-align-center--pc {
    text-align: center;
  }
}

@media screen and (max-width: 1180px) {
  .u-align-left--laptop {
    text-align: left;
  }
  .u-align-right--laptop {
    text-align: right;
  }
  .u-align-center--laptop {
    text-align: center;
  }
}

@media screen and (max-width: 1023px) {
  .u-align-left--tab {
    text-align: left;
  }
  .u-align-right--tab {
    text-align: right;
  }
  .u-align-center--tab {
    text-align: center;
  }
}

@media screen and (max-width: 767px) {
  .u-align-left--sp {
    text-align: left;
  }
  .u-align-right--sp {
    text-align: right;
  }
  .u-align-center--sp {
    text-align: center;
  }
}

/* --------------------------
背景色
-------------------------- */
.u-bg-light {
  background-color: #e0e0e0;
}

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

.u-bg-green {
  background-color: #d1f2ec;
}

.u-bg-blue {
  background-color: rgba(0, 91, 172, 0.1);
}

.u-bg-gold {
  background-color: #dbc583;
}

.u-bg-blue-dark {
  background-color: #0b2b75;
}

.u-bg-red {
  background-color: #f8ebed;
}

/* --------------------------
枠線
-------------------------- */
.u-border-bottom {
  border-bottom: 1px solid #e0e0e0;
}

.u-border-top {
  border-top: 1px solid #e0e0e0;
}
@media screen and (max-width: 767px) {
.u-border-top--sp {
  border-top: 1px solid #e0e0e0;
}

}
.u-border-right {
  border-right: 1px solid #e0e0e0;
}

.u-border-left {
  border-left: 1px solid #e0e0e0;
}

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

/* --------------------------
Float解除
-------------------------- */
.u-clearfix::after {
  content: "";
  clear: both;
  font-size: 0;
  height: 0;
  display: block;
  visibility: hidden;
}

/* --------------------------
グリッド
-------------------------- */
.u-row {
  margin: -20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .u-row {
    margin: 0 -10px;
  }
}

.u-row-align-center {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.u-row-justify-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.u-row-reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

@media screen and (max-width: 767px) {
  .u-row-reverse-sp {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}

.u-row--nomargin {
  margin: 0;
}

.u-row--narrow {
  margin: 0 -10px;
}

@media screen and (max-width: 767px) {
  .u-row--narrow {
    margin: 0 -5px;
  }
}

.u-row--middle {
  margin: 0 -40px;
}

@media screen and (max-width: 767px) {
  .u-row--middle {
    margin: 0 -10px;
  }
}

.u-col-1 {
  width: 8.3333333333%;
  padding: 20px;
}

@media screen and (max-width: 767px) {
  .u-col-1 {
    padding: 10px;
  }
}

.u-col-offset-0 {
  margin-left: 0;
}

.u-col-offset-1 {
  margin-left: 8.3333333333%;
}

.u-row--nomargin .u-col-1 {
  padding: 0;
}

.u-row--narrow .u-col-1 {
  padding: 10px;
}

.u-row--middle .u-col-1 {
  padding: 40px;
}

.u-col-2 {
  width: 16.6666666667%;
  padding: 20px;
}

@media screen and (max-width: 767px) {
  .u-col-2 {
    padding: 10px;
  }
}

.u-col-offset-0 {
  margin-left: 0;
}

.u-col-offset-2 {
  margin-left: 16.6666666667%;
}

.u-row--nomargin .u-col-2 {
  padding: 0;
}

.u-row--narrow .u-col-2 {
  padding: 10px;
}

.u-row--middle .u-col-2 {
  padding: 40px;
}

.u-col-3 {
  width: 25%;
  padding: 20px;
}

@media screen and (max-width: 767px) {
  .u-col-3 {
    padding: 10px;
  }
}

.u-col-offset-0 {
  margin-left: 0;
}

.u-col-offset-3 {
  margin-left: 25%;
}

.u-row--nomargin .u-col-3 {
  padding: 0;
}

.u-row--narrow .u-col-3 {
  padding: 10px;
}

.u-row--middle .u-col-3 {
  padding: 40px;
}

.u-col-4 {
  width: 33.3333333333%;
  padding: 20px;
}

@media screen and (max-width: 767px) {
  .u-col-4 {
    padding: 10px;
  }
}

.u-col-offset-0 {
  margin-left: 0;
}

.u-col-offset-4 {
  margin-left: 33.3333333333%;
}

.u-row--nomargin .u-col-4 {
  padding: 0;
}

.u-row--narrow .u-col-4 {
  padding: 10px;
}

.u-row--middle .u-col-4 {
  padding: 40px;
}

.u-col-5 {
  width: 41.6666666667%;
  padding: 20px;
}

@media screen and (max-width: 767px) {
  .u-col-5 {
    padding: 10px;
  }
}

.u-col-offset-0 {
  margin-left: 0;
}

.u-col-offset-5 {
  margin-left: 41.6666666667%;
}

.u-row--nomargin .u-col-5 {
  padding: 0;
}

.u-row--narrow .u-col-5 {
  padding: 10px;
}

.u-row--middle .u-col-5 {
  padding: 40px;
}

.u-col-6 {
  width: 50%;
  padding: 20px;
}

@media screen and (max-width: 767px) {
  .u-col-6 {
    padding: 10px;
  }
}

.u-col-offset-0 {
  margin-left: 0;
}

.u-col-offset-6 {
  margin-left: 50%;
}

.u-row--nomargin .u-col-6 {
  padding: 0;
}
.u-row--middle .u-col-6 {
  padding: 40px;
}

.u-row--narrow .u-col-6 {
  padding: 10px;
}


.u-col-7 {
  width: 58.3333333333%;
  padding: 20px;
}

@media screen and (max-width: 767px) {
  .u-col-7 {
    padding: 10px;
  }
}

.u-col-offset-0 {
  margin-left: 0;
}

.u-col-offset-7 {
  margin-left: 58.3333333333%;
}

.u-row--nomargin .u-col-7 {
  padding: 0;
}

.u-row--middle .u-col-7 {
  padding: 40px;
}
.u-row--narrow .u-col-7 {
  padding: 10px;
}


.u-col-8 {
  width: 66.6666666667%;
  padding: 20px;
}

@media screen and (max-width: 767px) {
  .u-col-8 {
    padding: 10px;
  }
}

.u-col-offset-0 {
  margin-left: 0;
}

.u-col-offset-8 {
  margin-left: 66.6666666667%;
}

.u-row--nomargin .u-col-8 {
  padding: 0;
}

.u-row--middle .u-col-8 {
  padding: 40px;
}
.u-row--narrow .u-col-8 {
  padding: 10px;
}


.u-col-9 {
  width: 75%;
  padding: 20px;
}

@media screen and (max-width: 767px) {
  .u-col-9 {
    padding: 10px;
  }
}

.u-col-offset-0 {
  margin-left: 0;
}

.u-col-offset-9 {
  margin-left: 75%;
}

.u-row--nomargin .u-col-9 {
  padding: 0;
}
.u-row--middle .u-col-9 {
  padding: 40px;
}

.u-row--narrow .u-col-9 {
  padding: 10px;
}


.u-col-10 {
  width: 83.3333333333%;
  padding: 20px;
}

@media screen and (max-width: 767px) {
  .u-col-10 {
    padding: 10px;
  }
}

.u-col-offset-0 {
  margin-left: 0;
}

.u-col-offset-10 {
  margin-left: 83.3333333333%;
}

.u-row--nomargin .u-col-10 {
  padding: 0;
}

.u-row--narrow .u-col-10 {
  padding: 10px;
}

.u-row--middle .u-col-10 {
  padding: 40px;
}

.u-col-11 {
  width: 91.6666666667%;
  padding: 20px;
}

@media screen and (max-width: 767px) {
  .u-col-11 {
    padding: 10px;
  }
}

.u-col-offset-0 {
  margin-left: 0;
}

.u-col-offset-11 {
  margin-left: 91.6666666667%;
}

.u-row--nomargin .u-col-11 {
  padding: 0;
}

.u-row--narrow .u-col-11 {
  padding: 10px;
}

.u-row--middle .u-col-11 {
  padding: 40px;
}

.u-col-12 {
  width: 100%;
  padding: 20px;
}

@media screen and (max-width: 767px) {
  .u-col-12 {
    padding: 10px;
  }
}

.u-col-offset-0 {
  margin-left: 0;
}

.u-col-offset-12 {
  margin-left: 100%;
}

.u-row--nomargin .u-col-12 {
  padding: 0;
}

.u-row--narrow .u-col-12 {
  padding: 10px;
}

.u-row--middle .u-col-12 {
  padding: 40px;
}

@media screen and (min-width: 768px) {
  .u-col-1--pc {
    width: 8.3333333333%;
    padding: 20px;
  }
  .u-col-offset-0--pc {
    margin-left: 0;
  }
  .u-col-offset-1--pc {
    margin-left: 8.3333333333%;
  }
  .u-row--nomargin .u-col-1--pc {
    padding: 0;
  }
  .u-row--narrow .u-col-1--pc {
    padding: 10px;
  }
  .u-row--middle .u-col-1--pc {
    padding: 40px;
  }
  .u-col-2--pc {
    width: 16.6666666667%;
    padding: 20px;
  }
  .u-col-offset-0--pc {
    margin-left: 0;
  }
  .u-col-offset-2--pc {
    margin-left: 16.6666666667%;
  }
  .u-row--nomargin .u-col-2--pc {
    padding: 0;
  }
  .u-row--narrow .u-col-2--pc {
    padding: 10px;
  }
  .u-row--middle .u-col-2--pc {
    padding: 40px;
  }
  .u-col-3--pc {
    width: 25%;
    padding: 20px;
  }
  .u-col-offset-0--pc {
    margin-left: 0;
  }
  .u-col-offset-3--pc {
    margin-left: 25%;
  }
  .u-row--nomargin .u-col-3--pc {
    padding: 0;
  }
  .u-row--narrow .u-col-3--pc {
    padding: 10px;
  }
  .u-row--middle .u-col-3--pc {
    padding: 40px;
  }
  .u-col-4--pc {
    width: 33.3333333333%;
    padding: 20px;
  }
  .u-col-offset-0--pc {
    margin-left: 0;
  }
  .u-col-offset-4--pc {
    margin-left: 33.3333333333%;
  }
  .u-row--nomargin .u-col-4--pc {
    padding: 0;
  }
  .u-row--narrow .u-col-4--pc {
    padding: 10px;
  }
  .u-row--middle .u-col-4--pc {
    padding: 40px;
  }
  .u-col-5--pc {
    width: 41.6666666667%;
    padding: 20px;
  }
  .u-col-offset-0--pc {
    margin-left: 0;
  }
  .u-col-offset-5--pc {
    margin-left: 41.6666666667%;
  }
  .u-row--nomargin .u-col-5--pc {
    padding: 0;
  }
  .u-row--narrow .u-col-5--pc {
    padding: 10px;
  }
  .u-row--middle .u-col-5--pc {
    padding: 40px;
  }
  .u-col-6--pc {
    width: 50%;
    padding: 20px;
  }
  .u-col-offset-0--pc {
    margin-left: 0;
  }
  .u-col-offset-6--pc {
    margin-left: 50%;
  }
  .u-row--nomargin .u-col-6--pc {
    padding: 0;
  }
  .u-row--narrow .u-col-6--pc {
    padding: 10px;
  }
  .u-row--middle .u-col-6--pc {
    padding: 40px;
  }
  .u-col-7--pc {
    width: 58.3333333333%;
    padding: 20px;
  }
  .u-col-offset-0--pc {
    margin-left: 0;
  }
  .u-col-offset-7--pc {
    margin-left: 58.3333333333%;
  }
  .u-row--nomargin .u-col-7--pc {
    padding: 0;
  }
  .u-row--narrow .u-col-7--pc {
    padding: 10px;
  }
  .u-row--middle .u-col-7--pc {
    padding: 40px;
  }
  .u-col-8--pc {
    width: 66.6666666667%;
    padding: 20px;
  }
  .u-col-offset-0--pc {
    margin-left: 0;
  }
  .u-col-offset-8--pc {
    margin-left: 66.6666666667%;
  }
  .u-row--nomargin .u-col-8--pc {
    padding: 0;
  }
  .u-row--narrow .u-col-8--pc {
    padding: 10px;
  }
  .u-row--middle .u-col-8--pc {
    padding: 40px;
  }
  .u-col-9--pc {
    width: 75%;
    padding: 20px;
  }
  .u-col-offset-0--pc {
    margin-left: 0;
  }
  .u-col-offset-9--pc {
    margin-left: 75%;
  }
  .u-row--nomargin .u-col-9--pc {
    padding: 0;
  }
  .u-row--narrow .u-col-9--pc {
    padding: 10px;
  }
  .u-row--middle .u-col-9--pc {
    padding: 40px;
  }
  .u-col-10--pc {
    width: 83.3333333333%;
    padding: 20px;
  }
  .u-col-offset-0--pc {
    margin-left: 0;
  }
  .u-col-offset-10--pc {
    margin-left: 83.3333333333%;
  }
  .u-row--nomargin .u-col-10--pc {
    padding: 0;
  }
  .u-row--narrow .u-col-10--pc {
    padding: 10px;
  }
  .u-row--middle .u-col-10--pc {
    padding: 40px;
  }
  .u-col-11--pc {
    width: 91.6666666667%;
    padding: 20px;
  }
  .u-col-offset-0--pc {
    margin-left: 0;
  }
  .u-col-offset-11--pc {
    margin-left: 91.6666666667%;
  }
  .u-row--nomargin .u-col-11--pc {
    padding: 0;
  }
  .u-row--narrow .u-col-11--pc {
    padding: 10px;
  }
  .u-row--middle .u-col-11--pc {
    padding: 40px;
  }
  .u-col-12--pc {
    width: 100%;
    padding: 20px;
  }
  .u-col-offset-0--pc {
    margin-left: 0;
  }
  .u-col-offset-12--pc {
    margin-left: 100%;
  }
  .u-row--nomargin .u-col-12--pc {
    padding: 0;
  }
  .u-row--narrow .u-col-12--pc {
    padding: 10px;
  }
  .u-row--middle .u-col-12--pc {
    padding: 40px;
  }
}

@media screen and (max-width: 1180px) {
  .u-col-1--laptop {
    width: 8.3333333333%;
    padding: 20px;
  }
  .u-col-offset-0--laptop {
    margin-left: 0;
  }
  .u-col-offset-1--laptop {
    margin-left: 8.3333333333%;
  }
  .u-row--nomargin .u-col-1--laptop {
    padding: 0;
  }
  .u-row--narrow .u-col-1--laptop {
    padding: 10px;
  }
  .u-col-2--laptop {
    width: 16.6666666667%;
    padding: 20px;
  }
  .u-col-offset-0--laptop {
    margin-left: 0;
  }
  .u-col-offset-2--laptop {
    margin-left: 16.6666666667%;
  }
  .u-row--nomargin .u-col-2--laptop {
    padding: 0;
  }
  .u-row--narrow .u-col-2--laptop {
    padding: 10px;
  }
  .u-col-3--laptop {
    width: 25%;
    padding: 20px;
  }
  .u-col-offset-0--laptop {
    margin-left: 0;
  }
  .u-col-offset-3--laptop {
    margin-left: 25%;
  }
  .u-row--nomargin .u-col-3--laptop {
    padding: 0;
  }
  .u-row--narrow .u-col-3--laptop {
    padding: 10px;
  }
  .u-col-4--laptop {
    width: 33.3333333333%;
    padding: 20px;
  }
  .u-col-offset-0--laptop {
    margin-left: 0;
  }
  .u-col-offset-4--laptop {
    margin-left: 33.3333333333%;
  }
  .u-row--nomargin .u-col-4--laptop {
    padding: 0;
  }
  .u-row--narrow .u-col-4--laptop {
    padding: 10px;
  }
  .u-col-5--laptop {
    width: 41.6666666667%;
    padding: 20px;
  }
  .u-col-offset-0--laptop {
    margin-left: 0;
  }
  .u-col-offset-5--laptop {
    margin-left: 41.6666666667%;
  }
  .u-row--nomargin .u-col-5--laptop {
    padding: 0;
  }
  .u-row--narrow .u-col-5--laptop {
    padding: 10px;
  }
  .u-col-6--laptop {
    width: 50%;
    padding: 20px;
  }
  .u-col-offset-0--laptop {
    margin-left: 0;
  }
  .u-col-offset-6--laptop {
    margin-left: 50%;
  }
  .u-row--nomargin .u-col-6--laptop {
    padding: 0;
  }
  .u-row--narrow .u-col-6--laptop {
    padding: 10px;
  }
  .u-col-7--laptop {
    width: 58.3333333333%;
    padding: 20px;
  }
  .u-col-offset-0--laptop {
    margin-left: 0;
  }
  .u-col-offset-7--laptop {
    margin-left: 58.3333333333%;
  }
  .u-row--nomargin .u-col-7--laptop {
    padding: 0;
  }
  .u-row--narrow .u-col-7--laptop {
    padding: 10px;
  }
  .u-col-8--laptop {
    width: 66.6666666667%;
    padding: 20px;
  }
  .u-col-offset-0--laptop {
    margin-left: 0;
  }
  .u-col-offset-8--laptop {
    margin-left: 66.6666666667%;
  }
  .u-row--nomargin .u-col-8--laptop {
    padding: 0;
  }
  .u-row--narrow .u-col-8--laptop {
    padding: 10px;
  }
  .u-col-9--laptop {
    width: 75%;
    padding: 20px;
  }
  .u-col-offset-0--laptop {
    margin-left: 0;
  }
  .u-col-offset-9--laptop {
    margin-left: 75%;
  }
  .u-row--nomargin .u-col-9--laptop {
    padding: 0;
  }
  .u-row--narrow .u-col-9--laptop {
    padding: 10px;
  }
  .u-col-10--laptop {
    width: 83.3333333333%;
    padding: 20px;
  }
  .u-col-offset-0--laptop {
    margin-left: 0;
  }
  .u-col-offset-10--laptop {
    margin-left: 83.3333333333%;
  }
  .u-row--nomargin .u-col-10--laptop {
    padding: 0;
  }
  .u-row--narrow .u-col-10--laptop {
    padding: 10px;
  }
  .u-col-11--laptop {
    width: 91.6666666667%;
    padding: 20px;
  }
  .u-col-offset-0--laptop {
    margin-left: 0;
  }
  .u-col-offset-11--laptop {
    margin-left: 91.6666666667%;
  }
  .u-row--nomargin .u-col-11--laptop {
    padding: 0;
  }
  .u-row--narrow .u-col-11--laptop {
    padding: 10px;
  }
  .u-col-12--laptop {
    width: 100%;
    padding: 20px;
  }
  .u-col-offset-0--laptop {
    margin-left: 0;
  }
  .u-col-offset-12--laptop {
    margin-left: 100%;
  }
  .u-row--nomargin .u-col-12--laptop {
    padding: 0;
  }
  .u-row--narrow .u-col-12--laptop {
    padding: 10px;
  }
}

@media screen and (max-width: 1023px) {
  .u-col-1--tab {
    width: 8.3333333333%;
    padding: 20px;
  }
  .u-col-offset-0--tab {
    margin-left: 0;
  }
  .u-col-offset-1--tab {
    margin-left: 8.3333333333%;
  }
  .u-row--nomargin .u-col-1--tab {
    padding: 0;
  }
  .u-row--narrow .u-col-1--tab {
    padding: 10px;
  }
  .u-col-2--tab {
    width: 16.6666666667%;
    padding: 20px;
  }
  .u-col-offset-0--tab {
    margin-left: 0;
  }
  .u-col-offset-2--tab {
    margin-left: 16.6666666667%;
  }
  .u-row--nomargin .u-col-2--tab {
    padding: 0;
  }
  .u-row--narrow .u-col-2--tab {
    padding: 10px;
  }
  .u-col-3--tab {
    width: 25%;
    padding: 20px;
  }
  .u-col-offset-0--tab {
    margin-left: 0;
  }
  .u-col-offset-3--tab {
    margin-left: 25%;
  }
  .u-row--nomargin .u-col-3--tab {
    padding: 0;
  }
  .u-row--narrow .u-col-3--tab {
    padding: 10px;
  }
  .u-col-4--tab {
    width: 33.3333333333%;
    padding: 20px;
  }
  .u-col-offset-0--tab {
    margin-left: 0;
  }
  .u-col-offset-4--tab {
    margin-left: 33.3333333333%;
  }
  .u-row--nomargin .u-col-4--tab {
    padding: 0;
  }
  .u-row--narrow .u-col-4--tab {
    padding: 10px;
  }
  .u-col-5--tab {
    width: 41.6666666667%;
    padding: 20px;
  }
  .u-col-offset-0--tab {
    margin-left: 0;
  }
  .u-col-offset-5--tab {
    margin-left: 41.6666666667%;
  }
  .u-row--nomargin .u-col-5--tab {
    padding: 0;
  }
  .u-row--narrow .u-col-5--tab {
    padding: 10px;
  }
  .u-col-6--tab {
    width: 50%;
    padding: 20px;
  }
  .u-col-offset-0--tab {
    margin-left: 0;
  }
  .u-col-offset-6--tab {
    margin-left: 50%;
  }
  .u-row--nomargin .u-col-6--tab {
    padding: 0;
  }
  .u-row--narrow .u-col-6--tab {
    padding: 10px;
  }
  .u-col-7--tab {
    width: 58.3333333333%;
    padding: 20px;
  }
  .u-col-offset-0--tab {
    margin-left: 0;
  }
  .u-col-offset-7--tab {
    margin-left: 58.3333333333%;
  }
  .u-row--nomargin .u-col-7--tab {
    padding: 0;
  }
  .u-row--narrow .u-col-7--tab {
    padding: 10px;
  }
  .u-col-8--tab {
    width: 66.6666666667%;
    padding: 20px;
  }
  .u-col-offset-0--tab {
    margin-left: 0;
  }
  .u-col-offset-8--tab {
    margin-left: 66.6666666667%;
  }
  .u-row--nomargin .u-col-8--tab {
    padding: 0;
  }
  .u-row--narrow .u-col-8--tab {
    padding: 10px;
  }
  .u-col-9--tab {
    width: 75%;
    padding: 20px;
  }
  .u-col-offset-0--tab {
    margin-left: 0;
  }
  .u-col-offset-9--tab {
    margin-left: 75%;
  }
  .u-row--nomargin .u-col-9--tab {
    padding: 0;
  }
  .u-row--narrow .u-col-9--tab {
    padding: 10px;
  }
  .u-col-10--tab {
    width: 83.3333333333%;
    padding: 20px;
  }
  .u-col-offset-0--tab {
    margin-left: 0;
  }
  .u-col-offset-10--tab {
    margin-left: 83.3333333333%;
  }
  .u-row--nomargin .u-col-10--tab {
    padding: 0;
  }
  .u-row--narrow .u-col-10--tab {
    padding: 10px;
  }
  .u-col-11--tab {
    width: 91.6666666667%;
    padding: 20px;
  }
  .u-col-offset-0--tab {
    margin-left: 0;
  }
  .u-col-offset-11--tab {
    margin-left: 91.6666666667%;
  }
  .u-row--nomargin .u-col-11--tab {
    padding: 0;
  }
  .u-row--narrow .u-col-11--tab {
    padding: 10px;
  }
  .u-col-12--tab {
    width: 100%;
    padding: 20px;
  }
  .u-col-offset-0--tab {
    margin-left: 0;
  }
  .u-col-offset-12--tab {
    margin-left: 100%;
  }
  .u-row--nomargin .u-col-12--tab {
    padding: 0;
  }
  .u-row--narrow .u-col-12--tab {
    padding: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-col-1--sp {
    width: 8.3333333333%;
    padding: 20px;
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .u-col-1--sp {
    padding: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-col-offset-0--sp {
    margin-left: 0;
  }
  .u-col-offset-1--sp {
    margin-left: 8.3333333333%;
  }
  .u-row--nomargin .u-col-1--sp {
    padding: 0;
  }
  .u-row--narrow .u-col-1--sp {
    padding: 5px;
  }
  .u-row--middle .u-col-1--sp {
    padding: 10px;
  }
  .u-col-2--sp {
    width: 16.6666666667%;
    padding: 20px;
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .u-col-2--sp {
    padding: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-col-offset-0--sp {
    margin-left: 0;
  }
  .u-col-offset-2--sp {
    margin-left: 16.6666666667%;
  }
  .u-row--nomargin .u-col-2--sp {
    padding: 0;
  }
  .u-row--narrow .u-col-2--sp {
    padding: 5px;
  }
  .u-row--middle .u-col-2--sp {
    padding: 10px;
  }
  .u-col-3--sp {
    width: 25%;
    padding: 20px;
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .u-col-3--sp {
    padding: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-col-offset-0--sp {
    margin-left: 0;
  }
  .u-col-offset-3--sp {
    margin-left: 25%;
  }
  .u-row--nomargin .u-col-3--sp {
    padding: 0;
  }
  .u-row--narrow .u-col-3--sp {
    padding: 5px;
  }
  .u-row--middle .u-col-3--sp {
    padding: 10px;
  }
  .u-col-4--sp {
    width: 33.3333333333%;
    padding: 20px;
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .u-col-4--sp {
    padding: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-col-offset-0--sp {
    margin-left: 0;
  }
  .u-col-offset-4--sp {
    margin-left: 33.3333333333%;
  }
  .u-row--nomargin .u-col-4--sp {
    padding: 0;
  }
  .u-row--narrow .u-col-4--sp {
    padding: 5px;
  }
  .u-row--middle .u-col-4--sp {
    padding: 10px;
  }
  .u-col-5--sp {
    width: 41.6666666667%;
    padding: 20px;
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .u-col-5--sp {
    padding: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-col-offset-0--sp {
    margin-left: 0;
  }
  .u-col-offset-5--sp {
    margin-left: 41.6666666667%;
  }
  .u-row--nomargin .u-col-5--sp {
    padding: 0;
  }
  .u-row--narrow .u-col-5--sp {
    padding: 5px;
  }
  .u-row--middle .u-col-5--sp {
    padding: 10px;
  }
  .u-col-6--sp {
    width: 50%;
    padding: 20px;
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .u-col-6--sp {
    padding: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-col-offset-0--sp {
    margin-left: 0;
  }
  .u-col-offset-6--sp {
    margin-left: 50%;
  }
  .u-row--nomargin .u-col-6--sp {
    padding: 0;
  }
  .u-row--narrow .u-col-6--sp {
    padding: 5px;
  }
  .u-row--middle .u-col-6--sp {
    padding: 10px;
  }
  .u-col-7--sp {
    width: 58.3333333333%;
    padding: 20px;
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .u-col-7--sp {
    padding: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-col-offset-0--sp {
    margin-left: 0;
  }
  .u-col-offset-7--sp {
    margin-left: 58.3333333333%;
  }
  .u-row--nomargin .u-col-7--sp {
    padding: 0;
  }
  .u-row--narrow .u-col-7--sp {
    padding: 5px;
  }
  .u-row--middle .u-col-7--sp {
    padding: 10px;
  }
  .u-col-8--sp {
    width: 66.6666666667%;
    padding: 20px;
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .u-col-8--sp {
    padding: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-col-offset-0--sp {
    margin-left: 0;
  }
  .u-col-offset-8--sp {
    margin-left: 66.6666666667%;
  }
  .u-row--nomargin .u-col-8--sp {
    padding: 0;
  }
  .u-row--narrow .u-col-8--sp {
    padding: 5px;
  }
  .u-row--middle .u-col-8--sp {
    padding: 10px;
  }
  .u-col-9--sp {
    width: 75%;
    padding: 20px;
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .u-col-9--sp {
    padding: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-col-offset-0--sp {
    margin-left: 0;
  }
  .u-col-offset-9--sp {
    margin-left: 75%;
  }
  .u-row--nomargin .u-col-9--sp {
    padding: 0;
  }
  .u-row--narrow .u-col-9--sp {
    padding: 5px;
  }
  .u-row--middle .u-col-9--sp {
    padding: 10px;
  }
  .u-col-10--sp {
    width: 83.3333333333%;
    padding: 20px;
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .u-col-10--sp {
    padding: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-col-offset-0--sp {
    margin-left: 0;
  }
  .u-col-offset-10--sp {
    margin-left: 83.3333333333%;
  }
  .u-row--nomargin .u-col-10--sp {
    padding: 0;
  }
  .u-row--narrow .u-col-10--sp {
    padding: 5px;
  }
  .u-row--middle .u-col-10--sp {
    padding: 10px;
  }
  .u-col-11--sp {
    width: 91.6666666667%;
    padding: 20px;
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .u-col-11--sp {
    padding: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-col-offset-0--sp {
    margin-left: 0;
  }
  .u-col-offset-11--sp {
    margin-left: 91.6666666667%;
  }
  .u-row--nomargin .u-col-11--sp {
    padding: 0;
  }
  .u-row--narrow .u-col-11--sp {
    padding: 5px;
  }
  .u-row--middle .u-col-11--sp {
    padding: 10px;
  }
  .u-col-12--sp {
    width: 100%;
    padding: 20px;
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .u-col-12--sp {
    padding: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-col-offset-0--sp {
    margin-left: 0;
  }
  .u-col-offset-12--sp {
    margin-left: 100%;
  }
  .u-row--nomargin .u-col-12--sp {
    padding: 0;
  }
  .u-row--narrow .u-col-12--sp {
    padding: 5px;
  }
  .u-row--middle .u-col-12--sp {
    padding: 10px;
  }
}

/* --------------------------
非表示切り替え
-------------------------- */
@media screen and (min-width: 768px) {
  .u-hide--pc {
    display: none;
  }
}

@media screen and (max-width: 1023px) {
  .u-hide--tab {
    display: none;
  }
}

@media screen and (max-width: 1180px) {
  .u-hide--laptop {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .u-hide--sp {
    display: none;
  }
}

/* --------------------------
margin、padding指定
-------------------------- */
.u-mt0 {
  margin-top: 0px !important;
}

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

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

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

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

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

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

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

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

.u-mr5 {
  margin-right: 5px !important;
}

.u-ml5 {
  margin-left: 5px !important;
}

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

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

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

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

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

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

.u-mr10 {
  margin-right: 10px !important;
}

.u-ml10 {
  margin-left: 10px !important;
}

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

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

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

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

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

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

.u-mr15 {
  margin-right: 15px !important;
}

.u-ml15 {
  margin-left: 15px !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.u-mr25 {
  margin-right: 25px !important;
}

.u-ml25 {
  margin-left: 25px !important;
}

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

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

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

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

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

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

.u-mr30 {
  margin-right: 30px !important;
}

.u-ml30 {
  margin-left: 30px !important;
}

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

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

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

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

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

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

.u-mr35 {
  margin-right: 35px !important;
}

.u-ml35 {
  margin-left: 35px !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.u-mr45 {
  margin-right: 45px !important;
}

.u-ml45 {
  margin-left: 45px !important;
}

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

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

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

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

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

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

.u-mr50 {
  margin-right: 50px !important;
}

.u-ml50 {
  margin-left: 50px !important;
}

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

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

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

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

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

.u-mt55 {
  margin-top: 55px !important;
}

.u-mr55 {
  margin-right: 55px !important;
}

.u-ml55 {
  margin-left: 55px !important;
}

.u-mb55 {
  margin-bottom: 55px !important;
}

.u-pt55 {
  padding-top: 55px !important;
}

.u-pr55 {
  padding-right: 55px !important;
}

.u-pl55 {
  padding-left: 55px !important;
}

.u-pb55 {
  padding-bottom: 55px !important;
}

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

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

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

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

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

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

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

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

.u-mt65 {
  margin-top: 65px !important;
}

.u-mr65 {
  margin-right: 65px !important;
}

.u-ml65 {
  margin-left: 65px !important;
}

.u-mb65 {
  margin-bottom: 65px !important;
}

.u-pt65 {
  padding-top: 65px !important;
}

.u-pr65 {
  padding-right: 65px !important;
}

.u-pl65 {
  padding-left: 65px !important;
}

.u-pb65 {
  padding-bottom: 65px !important;
}

.u-mt70 {
  margin-top: 70px !important;
}

.u-mr70 {
  margin-right: 70px !important;
}

.u-ml70 {
  margin-left: 70px !important;
}

.u-mb70 {
  margin-bottom: 70px !important;
}

.u-pt70 {
  padding-top: 70px !important;
}

.u-pr70 {
  padding-right: 70px !important;
}

.u-pl70 {
  padding-left: 70px !important;
}

.u-pb70 {
  padding-bottom: 70px !important;
}

.u-mt75 {
  margin-top: 75px !important;
}

.u-mr75 {
  margin-right: 75px !important;
}

.u-ml75 {
  margin-left: 75px !important;
}

.u-mb75 {
  margin-bottom: 75px !important;
}

.u-pt75 {
  padding-top: 75px !important;
}

.u-pr75 {
  padding-right: 75px !important;
}

.u-pl75 {
  padding-left: 75px !important;
}

.u-pb75 {
  padding-bottom: 75px !important;
}

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

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

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

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

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

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

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

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

.u-mt85 {
  margin-top: 85px !important;
}

.u-mr85 {
  margin-right: 85px !important;
}

.u-ml85 {
  margin-left: 85px !important;
}

.u-mb85 {
  margin-bottom: 85px !important;
}

.u-pt85 {
  padding-top: 85px !important;
}

.u-pr85 {
  padding-right: 85px !important;
}

.u-pl85 {
  padding-left: 85px !important;
}

.u-pb85 {
  padding-bottom: 85px !important;
}

.u-mt90 {
  margin-top: 90px !important;
}

.u-mr90 {
  margin-right: 90px !important;
}

.u-ml90 {
  margin-left: 90px !important;
}

.u-mb90 {
  margin-bottom: 90px !important;
}

.u-pt90 {
  padding-top: 90px !important;
}

.u-pr90 {
  padding-right: 90px !important;
}

.u-pl90 {
  padding-left: 90px !important;
}

.u-pb90 {
  padding-bottom: 90px !important;
}

.u-mt95 {
  margin-top: 95px !important;
}

.u-mr95 {
  margin-right: 95px !important;
}

.u-ml95 {
  margin-left: 95px !important;
}

.u-mb95 {
  margin-bottom: 95px !important;
}

.u-pt95 {
  padding-top: 95px !important;
}

.u-pr95 {
  padding-right: 95px !important;
}

.u-pl95 {
  padding-left: 95px !important;
}

.u-pb95 {
  padding-bottom: 95px !important;
}

.u-mt100 {
  margin-top: 100px !important;
}

.u-mr100 {
  margin-right: 100px !important;
}

.u-ml100 {
  margin-left: 100px !important;
}

.u-mb100 {
  margin-bottom: 100px !important;
}

.u-pt100 {
  padding-top: 100px !important;
}

.u-pr100 {
  padding-right: 100px !important;
}

.u-pl100 {
  padding-left: 100px !important;
}

.u-pb100 {
  padding-bottom: 100px !important;
}

@media screen and (max-width: 767px) {
  .u-mt0--sp {
    margin-top: 0px !important;
  }
  .u-mr0--sp {
    margin-right: 0px !important;
  }
  .u-ml0--sp {
    margin-left: 0px !important;
  }
  .u-mb0--sp {
    margin-bottom: 0px !important;
  }
  .u-pt0--sp {
    padding-top: 0px !important;
  }
  .u-pr0--sp {
    padding-right: 0px !important;
  }
  .u-pl0--sp {
    padding-left: 0px !important;
  }
  .u-pb0--sp {
    padding-bottom: 0px !important;
  }
  .u-mt5--sp {
    margin-top: 5px !important;
  }
  .u-mr5--sp {
    margin-right: 5px !important;
  }
  .u-ml5--sp {
    margin-left: 5px !important;
  }
  .u-mb5--sp {
    margin-bottom: 5px !important;
  }
  .u-pt5--sp {
    padding-top: 5px !important;
  }
  .u-pr5--sp {
    padding-right: 5px !important;
  }
  .u-pl5--sp {
    padding-left: 5px !important;
  }
  .u-pb5--sp {
    padding-bottom: 5px !important;
  }
  .u-mt10--sp {
    margin-top: 10px !important;
  }
  .u-mr10--sp {
    margin-right: 10px !important;
  }
  .u-ml10--sp {
    margin-left: 10px !important;
  }
  .u-mb10--sp {
    margin-bottom: 10px !important;
  }
  .u-pt10--sp {
    padding-top: 10px !important;
  }
  .u-pr10--sp {
    padding-right: 10px !important;
  }
  .u-pl10--sp {
    padding-left: 10px !important;
  }
  .u-pb10--sp {
    padding-bottom: 10px !important;
  }
  .u-mt15--sp {
    margin-top: 15px !important;
  }
  .u-mr15--sp {
    margin-right: 15px !important;
  }
  .u-ml15--sp {
    margin-left: 15px !important;
  }
  .u-mb15--sp {
    margin-bottom: 15px !important;
  }
  .u-pt15--sp {
    padding-top: 15px !important;
  }
  .u-pr15--sp {
    padding-right: 15px !important;
  }
  .u-pl15--sp {
    padding-left: 15px !important;
  }
  .u-pb15--sp {
    padding-bottom: 15px !important;
  }
  .u-mt20--sp {
    margin-top: 20px !important;
  }
  .u-mr20--sp {
    margin-right: 20px !important;
  }
  .u-ml20--sp {
    margin-left: 20px !important;
  }
  .u-mb20--sp {
    margin-bottom: 20px !important;
  }
  .u-pt20--sp {
    padding-top: 20px !important;
  }
  .u-pr20--sp {
    padding-right: 20px !important;
  }
  .u-pl20--sp {
    padding-left: 20px !important;
  }
  .u-pb20--sp {
    padding-bottom: 20px !important;
  }
  .u-mt25--sp {
    margin-top: 25px !important;
  }
  .u-mr25--sp {
    margin-right: 25px !important;
  }
  .u-ml25--sp {
    margin-left: 25px !important;
  }
  .u-mb25--sp {
    margin-bottom: 25px !important;
  }
  .u-pt25--sp {
    padding-top: 25px !important;
  }
  .u-pr25--sp {
    padding-right: 25px !important;
  }
  .u-pl25--sp {
    padding-left: 25px !important;
  }
  .u-pb25--sp {
    padding-bottom: 25px !important;
  }
  .u-mt30--sp {
    margin-top: 30px !important;
  }
  .u-mr30--sp {
    margin-right: 30px !important;
  }
  .u-ml30--sp {
    margin-left: 30px !important;
  }
  .u-mb30--sp {
    margin-bottom: 30px !important;
  }
  .u-pt30--sp {
    padding-top: 30px !important;
  }
  .u-pr30--sp {
    padding-right: 30px !important;
  }
  .u-pl30--sp {
    padding-left: 30px !important;
  }
  .u-pb30--sp {
    padding-bottom: 30px !important;
  }
  .u-mt35--sp {
    margin-top: 35px !important;
  }
  .u-mr35--sp {
    margin-right: 35px !important;
  }
  .u-ml35--sp {
    margin-left: 35px !important;
  }
  .u-mb35--sp {
    margin-bottom: 35px !important;
  }
  .u-pt35--sp {
    padding-top: 35px !important;
  }
  .u-pr35--sp {
    padding-right: 35px !important;
  }
  .u-pl35--sp {
    padding-left: 35px !important;
  }
  .u-pb35--sp {
    padding-bottom: 35px !important;
  }
  .u-mt40--sp {
    margin-top: 40px !important;
  }
  .u-mr40--sp {
    margin-right: 40px !important;
  }
  .u-ml40--sp {
    margin-left: 40px !important;
  }
  .u-mb40--sp {
    margin-bottom: 40px !important;
  }
  .u-pt40--sp {
    padding-top: 40px !important;
  }
  .u-pr40--sp {
    padding-right: 40px !important;
  }
  .u-pl40--sp {
    padding-left: 40px !important;
  }
  .u-pb40--sp {
    padding-bottom: 40px !important;
  }
  .u-mt45--sp {
    margin-top: 45px !important;
  }
  .u-mr45--sp {
    margin-right: 45px !important;
  }
  .u-ml45--sp {
    margin-left: 45px !important;
  }
  .u-mb45--sp {
    margin-bottom: 45px !important;
  }
  .u-pt45--sp {
    padding-top: 45px !important;
  }
  .u-pr45--sp {
    padding-right: 45px !important;
  }
  .u-pl45--sp {
    padding-left: 45px !important;
  }
  .u-pb45--sp {
    padding-bottom: 45px !important;
  }
  .u-mt50--sp {
    margin-top: 50px !important;
  }
  .u-mr50--sp {
    margin-right: 50px !important;
  }
  .u-ml50--sp {
    margin-left: 50px !important;
  }
  .u-mb50--sp {
    margin-bottom: 50px !important;
  }
  .u-pt50--sp {
    padding-top: 50px !important;
  }
  .u-pr50--sp {
    padding-right: 50px !important;
  }
  .u-pl50--sp {
    padding-left: 50px !important;
  }
  .u-pb50--sp {
    padding-bottom: 50px !important;
  }
  .u-mt55--sp {
    margin-top: 55px !important;
  }
  .u-mr55--sp {
    margin-right: 55px !important;
  }
  .u-ml55--sp {
    margin-left: 55px !important;
  }
  .u-mb55--sp {
    margin-bottom: 55px !important;
  }
  .u-pt55--sp {
    padding-top: 55px !important;
  }
  .u-pr55--sp {
    padding-right: 55px !important;
  }
  .u-pl55--sp {
    padding-left: 55px !important;
  }
  .u-pb55--sp {
    padding-bottom: 55px !important;
  }
  .u-mt60--sp {
    margin-top: 60px !important;
  }
  .u-mr60--sp {
    margin-right: 60px !important;
  }
  .u-ml60--sp {
    margin-left: 60px !important;
  }
  .u-mb60--sp {
    margin-bottom: 60px !important;
  }
  .u-pt60--sp {
    padding-top: 60px !important;
  }
  .u-pr60--sp {
    padding-right: 60px !important;
  }
  .u-pl60--sp {
    padding-left: 60px !important;
  }
  .u-pb60--sp {
    padding-bottom: 60px !important;
  }
  .u-mt65--sp {
    margin-top: 65px !important;
  }
  .u-mr65--sp {
    margin-right: 65px !important;
  }
  .u-ml65--sp {
    margin-left: 65px !important;
  }
  .u-mb65--sp {
    margin-bottom: 65px !important;
  }
  .u-pt65--sp {
    padding-top: 65px !important;
  }
  .u-pr65--sp {
    padding-right: 65px !important;
  }
  .u-pl65--sp {
    padding-left: 65px !important;
  }
  .u-pb65--sp {
    padding-bottom: 65px !important;
  }
  .u-mt70--sp {
    margin-top: 70px !important;
  }
  .u-mr70--sp {
    margin-right: 70px !important;
  }
  .u-ml70--sp {
    margin-left: 70px !important;
  }
  .u-mb70--sp {
    margin-bottom: 70px !important;
  }
  .u-pt70--sp {
    padding-top: 70px !important;
  }
  .u-pr70--sp {
    padding-right: 70px !important;
  }
  .u-pl70--sp {
    padding-left: 70px !important;
  }
  .u-pb70--sp {
    padding-bottom: 70px !important;
  }
  .u-mt75--sp {
    margin-top: 75px !important;
  }
  .u-mr75--sp {
    margin-right: 75px !important;
  }
  .u-ml75--sp {
    margin-left: 75px !important;
  }
  .u-mb75--sp {
    margin-bottom: 75px !important;
  }
  .u-pt75--sp {
    padding-top: 75px !important;
  }
  .u-pr75--sp {
    padding-right: 75px !important;
  }
  .u-pl75--sp {
    padding-left: 75px !important;
  }
  .u-pb75--sp {
    padding-bottom: 75px !important;
  }
  .u-mt80--sp {
    margin-top: 80px !important;
  }
  .u-mr80--sp {
    margin-right: 80px !important;
  }
  .u-ml80--sp {
    margin-left: 80px !important;
  }
  .u-mb80--sp {
    margin-bottom: 80px !important;
  }
  .u-pt80--sp {
    padding-top: 80px !important;
  }
  .u-pr80--sp {
    padding-right: 80px !important;
  }
  .u-pl80--sp {
    padding-left: 80px !important;
  }
  .u-pb80--sp {
    padding-bottom: 80px !important;
  }
  .u-mt85--sp {
    margin-top: 85px !important;
  }
  .u-mr85--sp {
    margin-right: 85px !important;
  }
  .u-ml85--sp {
    margin-left: 85px !important;
  }
  .u-mb85--sp {
    margin-bottom: 85px !important;
  }
  .u-pt85--sp {
    padding-top: 85px !important;
  }
  .u-pr85--sp {
    padding-right: 85px !important;
  }
  .u-pl85--sp {
    padding-left: 85px !important;
  }
  .u-pb85--sp {
    padding-bottom: 85px !important;
  }
  .u-mt90--sp {
    margin-top: 90px !important;
  }
  .u-mr90--sp {
    margin-right: 90px !important;
  }
  .u-ml90--sp {
    margin-left: 90px !important;
  }
  .u-mb90--sp {
    margin-bottom: 90px !important;
  }
  .u-pt90--sp {
    padding-top: 90px !important;
  }
  .u-pr90--sp {
    padding-right: 90px !important;
  }
  .u-pl90--sp {
    padding-left: 90px !important;
  }
  .u-pb90--sp {
    padding-bottom: 90px !important;
  }
  .u-mt95--sp {
    margin-top: 95px !important;
  }
  .u-mr95--sp {
    margin-right: 95px !important;
  }
  .u-ml95--sp {
    margin-left: 95px !important;
  }
  .u-mb95--sp {
    margin-bottom: 95px !important;
  }
  .u-pt95--sp {
    padding-top: 95px !important;
  }
  .u-pr95--sp {
    padding-right: 95px !important;
  }
  .u-pl95--sp {
    padding-left: 95px !important;
  }
  .u-pb95--sp {
    padding-bottom: 95px !important;
  }
  .u-mt100--sp {
    margin-top: 100px !important;
  }
  .u-mr100--sp {
    margin-right: 100px !important;
  }
  .u-ml100--sp {
    margin-left: 100px !important;
  }
  .u-mb100--sp {
    margin-bottom: 100px !important;
  }
  .u-pt100--sp {
    padding-top: 100px !important;
  }
  .u-pr100--sp {
    padding-right: 100px !important;
  }
  .u-pl100--sp {
    padding-left: 100px !important;
  }
  .u-pb100--sp {
    padding-bottom: 100px !important;
  }
}

@media screen and (max-width: 1023px) {
  .u-mt0--tab {
    margin-top: 0px !important;
  }
  .u-mr0--tab {
    margin-right: 0px !important;
  }
  .u-ml0--tab {
    margin-left: 0px !important;
  }
  .u-mb0--tab {
    margin-bottom: 0px !important;
  }
  .u-pt0--tab {
    padding-top: 0px !important;
  }
  .u-pr0--tab {
    padding-right: 0px !important;
  }
  .u-pl0--tab {
    padding-left: 0px !important;
  }
  .u-pb0--tab {
    padding-bottom: 0px !important;
  }
  .u-mt5--tab {
    margin-top: 5px !important;
  }
  .u-mr5--tab {
    margin-right: 5px !important;
  }
  .u-ml5--tab {
    margin-left: 5px !important;
  }
  .u-mb5--tab {
    margin-bottom: 5px !important;
  }
  .u-pt5--tab {
    padding-top: 5px !important;
  }
  .u-pr5--tab {
    padding-right: 5px !important;
  }
  .u-pl5--tab {
    padding-left: 5px !important;
  }
  .u-pb5--tab {
    padding-bottom: 5px !important;
  }
  .u-mt10--tab {
    margin-top: 10px !important;
  }
  .u-mr10--tab {
    margin-right: 10px !important;
  }
  .u-ml10--tab {
    margin-left: 10px !important;
  }
  .u-mb10--tab {
    margin-bottom: 10px !important;
  }
  .u-pt10--tab {
    padding-top: 10px !important;
  }
  .u-pr10--tab {
    padding-right: 10px !important;
  }
  .u-pl10--tab {
    padding-left: 10px !important;
  }
  .u-pb10--tab {
    padding-bottom: 10px !important;
  }
  .u-mt15--tab {
    margin-top: 15px !important;
  }
  .u-mr15--tab {
    margin-right: 15px !important;
  }
  .u-ml15--tab {
    margin-left: 15px !important;
  }
  .u-mb15--tab {
    margin-bottom: 15px !important;
  }
  .u-pt15--tab {
    padding-top: 15px !important;
  }
  .u-pr15--tab {
    padding-right: 15px !important;
  }
  .u-pl15--tab {
    padding-left: 15px !important;
  }
  .u-pb15--tab {
    padding-bottom: 15px !important;
  }
  .u-mt20--tab {
    margin-top: 20px !important;
  }
  .u-mr20--tab {
    margin-right: 20px !important;
  }
  .u-ml20--tab {
    margin-left: 20px !important;
  }
  .u-mb20--tab {
    margin-bottom: 20px !important;
  }
  .u-pt20--tab {
    padding-top: 20px !important;
  }
  .u-pr20--tab {
    padding-right: 20px !important;
  }
  .u-pl20--tab {
    padding-left: 20px !important;
  }
  .u-pb20--tab {
    padding-bottom: 20px !important;
  }
  .u-mt25--tab {
    margin-top: 25px !important;
  }
  .u-mr25--tab {
    margin-right: 25px !important;
  }
  .u-ml25--tab {
    margin-left: 25px !important;
  }
  .u-mb25--tab {
    margin-bottom: 25px !important;
  }
  .u-pt25--tab {
    padding-top: 25px !important;
  }
  .u-pr25--tab {
    padding-right: 25px !important;
  }
  .u-pl25--tab {
    padding-left: 25px !important;
  }
  .u-pb25--tab {
    padding-bottom: 25px !important;
  }
  .u-mt30--tab {
    margin-top: 30px !important;
  }
  .u-mr30--tab {
    margin-right: 30px !important;
  }
  .u-ml30--tab {
    margin-left: 30px !important;
  }
  .u-mb30--tab {
    margin-bottom: 30px !important;
  }
  .u-pt30--tab {
    padding-top: 30px !important;
  }
  .u-pr30--tab {
    padding-right: 30px !important;
  }
  .u-pl30--tab {
    padding-left: 30px !important;
  }
  .u-pb30--tab {
    padding-bottom: 30px !important;
  }
  .u-mt35--tab {
    margin-top: 35px !important;
  }
  .u-mr35--tab {
    margin-right: 35px !important;
  }
  .u-ml35--tab {
    margin-left: 35px !important;
  }
  .u-mb35--tab {
    margin-bottom: 35px !important;
  }
  .u-pt35--tab {
    padding-top: 35px !important;
  }
  .u-pr35--tab {
    padding-right: 35px !important;
  }
  .u-pl35--tab {
    padding-left: 35px !important;
  }
  .u-pb35--tab {
    padding-bottom: 35px !important;
  }
  .u-mt40--tab {
    margin-top: 40px !important;
  }
  .u-mr40--tab {
    margin-right: 40px !important;
  }
  .u-ml40--tab {
    margin-left: 40px !important;
  }
  .u-mb40--tab {
    margin-bottom: 40px !important;
  }
  .u-pt40--tab {
    padding-top: 40px !important;
  }
  .u-pr40--tab {
    padding-right: 40px !important;
  }
  .u-pl40--tab {
    padding-left: 40px !important;
  }
  .u-pb40--tab {
    padding-bottom: 40px !important;
  }
  .u-mt45--tab {
    margin-top: 45px !important;
  }
  .u-mr45--tab {
    margin-right: 45px !important;
  }
  .u-ml45--tab {
    margin-left: 45px !important;
  }
  .u-mb45--tab {
    margin-bottom: 45px !important;
  }
  .u-pt45--tab {
    padding-top: 45px !important;
  }
  .u-pr45--tab {
    padding-right: 45px !important;
  }
  .u-pl45--tab {
    padding-left: 45px !important;
  }
  .u-pb45--tab {
    padding-bottom: 45px !important;
  }
  .u-mt50--tab {
    margin-top: 50px !important;
  }
  .u-mr50--tab {
    margin-right: 50px !important;
  }
  .u-ml50--tab {
    margin-left: 50px !important;
  }
  .u-mb50--tab {
    margin-bottom: 50px !important;
  }
  .u-pt50--tab {
    padding-top: 50px !important;
  }
  .u-pr50--tab {
    padding-right: 50px !important;
  }
  .u-pl50--tab {
    padding-left: 50px !important;
  }
  .u-pb50--tab {
    padding-bottom: 50px !important;
  }
  .u-mt55--tab {
    margin-top: 55px !important;
  }
  .u-mr55--tab {
    margin-right: 55px !important;
  }
  .u-ml55--tab {
    margin-left: 55px !important;
  }
  .u-mb55--tab {
    margin-bottom: 55px !important;
  }
  .u-pt55--tab {
    padding-top: 55px !important;
  }
  .u-pr55--tab {
    padding-right: 55px !important;
  }
  .u-pl55--tab {
    padding-left: 55px !important;
  }
  .u-pb55--tab {
    padding-bottom: 55px !important;
  }
  .u-mt60--tab {
    margin-top: 60px !important;
  }
  .u-mr60--tab {
    margin-right: 60px !important;
  }
  .u-ml60--tab {
    margin-left: 60px !important;
  }
  .u-mb60--tab {
    margin-bottom: 60px !important;
  }
  .u-pt60--tab {
    padding-top: 60px !important;
  }
  .u-pr60--tab {
    padding-right: 60px !important;
  }
  .u-pl60--tab {
    padding-left: 60px !important;
  }
  .u-pb60--tab {
    padding-bottom: 60px !important;
  }
  .u-mt65--tab {
    margin-top: 65px !important;
  }
  .u-mr65--tab {
    margin-right: 65px !important;
  }
  .u-ml65--tab {
    margin-left: 65px !important;
  }
  .u-mb65--tab {
    margin-bottom: 65px !important;
  }
  .u-pt65--tab {
    padding-top: 65px !important;
  }
  .u-pr65--tab {
    padding-right: 65px !important;
  }
  .u-pl65--tab {
    padding-left: 65px !important;
  }
  .u-pb65--tab {
    padding-bottom: 65px !important;
  }
  .u-mt70--tab {
    margin-top: 70px !important;
  }
  .u-mr70--tab {
    margin-right: 70px !important;
  }
  .u-ml70--tab {
    margin-left: 70px !important;
  }
  .u-mb70--tab {
    margin-bottom: 70px !important;
  }
  .u-pt70--tab {
    padding-top: 70px !important;
  }
  .u-pr70--tab {
    padding-right: 70px !important;
  }
  .u-pl70--tab {
    padding-left: 70px !important;
  }
  .u-pb70--tab {
    padding-bottom: 70px !important;
  }
  .u-mt75--tab {
    margin-top: 75px !important;
  }
  .u-mr75--tab {
    margin-right: 75px !important;
  }
  .u-ml75--tab {
    margin-left: 75px !important;
  }
  .u-mb75--tab {
    margin-bottom: 75px !important;
  }
  .u-pt75--tab {
    padding-top: 75px !important;
  }
  .u-pr75--tab {
    padding-right: 75px !important;
  }
  .u-pl75--tab {
    padding-left: 75px !important;
  }
  .u-pb75--tab {
    padding-bottom: 75px !important;
  }
  .u-mt80--tab {
    margin-top: 80px !important;
  }
  .u-mr80--tab {
    margin-right: 80px !important;
  }
  .u-ml80--tab {
    margin-left: 80px !important;
  }
  .u-mb80--tab {
    margin-bottom: 80px !important;
  }
  .u-pt80--tab {
    padding-top: 80px !important;
  }
  .u-pr80--tab {
    padding-right: 80px !important;
  }
  .u-pl80--tab {
    padding-left: 80px !important;
  }
  .u-pb80--tab {
    padding-bottom: 80px !important;
  }
  .u-mt85--tab {
    margin-top: 85px !important;
  }
  .u-mr85--tab {
    margin-right: 85px !important;
  }
  .u-ml85--tab {
    margin-left: 85px !important;
  }
  .u-mb85--tab {
    margin-bottom: 85px !important;
  }
  .u-pt85--tab {
    padding-top: 85px !important;
  }
  .u-pr85--tab {
    padding-right: 85px !important;
  }
  .u-pl85--tab {
    padding-left: 85px !important;
  }
  .u-pb85--tab {
    padding-bottom: 85px !important;
  }
  .u-mt90--tab {
    margin-top: 90px !important;
  }
  .u-mr90--tab {
    margin-right: 90px !important;
  }
  .u-ml90--tab {
    margin-left: 90px !important;
  }
  .u-mb90--tab {
    margin-bottom: 90px !important;
  }
  .u-pt90--tab {
    padding-top: 90px !important;
  }
  .u-pr90--tab {
    padding-right: 90px !important;
  }
  .u-pl90--tab {
    padding-left: 90px !important;
  }
  .u-pb90--tab {
    padding-bottom: 90px !important;
  }
  .u-mt95--tab {
    margin-top: 95px !important;
  }
  .u-mr95--tab {
    margin-right: 95px !important;
  }
  .u-ml95--tab {
    margin-left: 95px !important;
  }
  .u-mb95--tab {
    margin-bottom: 95px !important;
  }
  .u-pt95--tab {
    padding-top: 95px !important;
  }
  .u-pr95--tab {
    padding-right: 95px !important;
  }
  .u-pl95--tab {
    padding-left: 95px !important;
  }
  .u-pb95--tab {
    padding-bottom: 95px !important;
  }
  .u-mt100--tab {
    margin-top: 100px !important;
  }
  .u-mr100--tab {
    margin-right: 100px !important;
  }
  .u-ml100--tab {
    margin-left: 100px !important;
  }
  .u-mb100--tab {
    margin-bottom: 100px !important;
  }
  .u-pt100--tab {
    padding-top: 100px !important;
  }
  .u-pr100--tab {
    padding-right: 100px !important;
  }
  .u-pl100--tab {
    padding-left: 100px !important;
  }
  .u-pb100--tab {
    padding-bottom: 100px !important;
  }
}

@media screen and (max-width: 1180px) {
  .u-mt0--laptop {
    margin-top: 0px !important;
  }
  .u-mr0--laptop {
    margin-right: 0px !important;
  }
  .u-ml0--laptop {
    margin-left: 0px !important;
  }
  .u-mb0--laptop {
    margin-bottom: 0px !important;
  }
  .u-pt0--laptop {
    padding-top: 0px !important;
  }
  .u-pr0--laptop {
    padding-right: 0px !important;
  }
  .u-pl0--laptop {
    padding-left: 0px !important;
  }
  .u-pb0--laptop {
    padding-bottom: 0px !important;
  }
  .u-mt5--laptop {
    margin-top: 5px !important;
  }
  .u-mr5--laptop {
    margin-right: 5px !important;
  }
  .u-ml5--laptop {
    margin-left: 5px !important;
  }
  .u-mb5--laptop {
    margin-bottom: 5px !important;
  }
  .u-pt5--laptop {
    padding-top: 5px !important;
  }
  .u-pr5--laptop {
    padding-right: 5px !important;
  }
  .u-pl5--laptop {
    padding-left: 5px !important;
  }
  .u-pb5--laptop {
    padding-bottom: 5px !important;
  }
  .u-mt10--laptop {
    margin-top: 10px !important;
  }
  .u-mr10--laptop {
    margin-right: 10px !important;
  }
  .u-ml10--laptop {
    margin-left: 10px !important;
  }
  .u-mb10--laptop {
    margin-bottom: 10px !important;
  }
  .u-pt10--laptop {
    padding-top: 10px !important;
  }
  .u-pr10--laptop {
    padding-right: 10px !important;
  }
  .u-pl10--laptop {
    padding-left: 10px !important;
  }
  .u-pb10--laptop {
    padding-bottom: 10px !important;
  }
  .u-mt15--laptop {
    margin-top: 15px !important;
  }
  .u-mr15--laptop {
    margin-right: 15px !important;
  }
  .u-ml15--laptop {
    margin-left: 15px !important;
  }
  .u-mb15--laptop {
    margin-bottom: 15px !important;
  }
  .u-pt15--laptop {
    padding-top: 15px !important;
  }
  .u-pr15--laptop {
    padding-right: 15px !important;
  }
  .u-pl15--laptop {
    padding-left: 15px !important;
  }
  .u-pb15--laptop {
    padding-bottom: 15px !important;
  }
  .u-mt20--laptop {
    margin-top: 20px !important;
  }
  .u-mr20--laptop {
    margin-right: 20px !important;
  }
  .u-ml20--laptop {
    margin-left: 20px !important;
  }
  .u-mb20--laptop {
    margin-bottom: 20px !important;
  }
  .u-pt20--laptop {
    padding-top: 20px !important;
  }
  .u-pr20--laptop {
    padding-right: 20px !important;
  }
  .u-pl20--laptop {
    padding-left: 20px !important;
  }
  .u-pb20--laptop {
    padding-bottom: 20px !important;
  }
  .u-mt25--laptop {
    margin-top: 25px !important;
  }
  .u-mr25--laptop {
    margin-right: 25px !important;
  }
  .u-ml25--laptop {
    margin-left: 25px !important;
  }
  .u-mb25--laptop {
    margin-bottom: 25px !important;
  }
  .u-pt25--laptop {
    padding-top: 25px !important;
  }
  .u-pr25--laptop {
    padding-right: 25px !important;
  }
  .u-pl25--laptop {
    padding-left: 25px !important;
  }
  .u-pb25--laptop {
    padding-bottom: 25px !important;
  }
  .u-mt30--laptop {
    margin-top: 30px !important;
  }
  .u-mr30--laptop {
    margin-right: 30px !important;
  }
  .u-ml30--laptop {
    margin-left: 30px !important;
  }
  .u-mb30--laptop {
    margin-bottom: 30px !important;
  }
  .u-pt30--laptop {
    padding-top: 30px !important;
  }
  .u-pr30--laptop {
    padding-right: 30px !important;
  }
  .u-pl30--laptop {
    padding-left: 30px !important;
  }
  .u-pb30--laptop {
    padding-bottom: 30px !important;
  }
  .u-mt35--laptop {
    margin-top: 35px !important;
  }
  .u-mr35--laptop {
    margin-right: 35px !important;
  }
  .u-ml35--laptop {
    margin-left: 35px !important;
  }
  .u-mb35--laptop {
    margin-bottom: 35px !important;
  }
  .u-pt35--laptop {
    padding-top: 35px !important;
  }
  .u-pr35--laptop {
    padding-right: 35px !important;
  }
  .u-pl35--laptop {
    padding-left: 35px !important;
  }
  .u-pb35--laptop {
    padding-bottom: 35px !important;
  }
  .u-mt40--laptop {
    margin-top: 40px !important;
  }
  .u-mr40--laptop {
    margin-right: 40px !important;
  }
  .u-ml40--laptop {
    margin-left: 40px !important;
  }
  .u-mb40--laptop {
    margin-bottom: 40px !important;
  }
  .u-pt40--laptop {
    padding-top: 40px !important;
  }
  .u-pr40--laptop {
    padding-right: 40px !important;
  }
  .u-pl40--laptop {
    padding-left: 40px !important;
  }
  .u-pb40--laptop {
    padding-bottom: 40px !important;
  }
  .u-mt45--laptop {
    margin-top: 45px !important;
  }
  .u-mr45--laptop {
    margin-right: 45px !important;
  }
  .u-ml45--laptop {
    margin-left: 45px !important;
  }
  .u-mb45--laptop {
    margin-bottom: 45px !important;
  }
  .u-pt45--laptop {
    padding-top: 45px !important;
  }
  .u-pr45--laptop {
    padding-right: 45px !important;
  }
  .u-pl45--laptop {
    padding-left: 45px !important;
  }
  .u-pb45--laptop {
    padding-bottom: 45px !important;
  }
  .u-mt50--laptop {
    margin-top: 50px !important;
  }
  .u-mr50--laptop {
    margin-right: 50px !important;
  }
  .u-ml50--laptop {
    margin-left: 50px !important;
  }
  .u-mb50--laptop {
    margin-bottom: 50px !important;
  }
  .u-pt50--laptop {
    padding-top: 50px !important;
  }
  .u-pr50--laptop {
    padding-right: 50px !important;
  }
  .u-pl50--laptop {
    padding-left: 50px !important;
  }
  .u-pb50--laptop {
    padding-bottom: 50px !important;
  }
  .u-mt55--laptop {
    margin-top: 55px !important;
  }
  .u-mr55--laptop {
    margin-right: 55px !important;
  }
  .u-ml55--laptop {
    margin-left: 55px !important;
  }
  .u-mb55--laptop {
    margin-bottom: 55px !important;
  }
  .u-pt55--laptop {
    padding-top: 55px !important;
  }
  .u-pr55--laptop {
    padding-right: 55px !important;
  }
  .u-pl55--laptop {
    padding-left: 55px !important;
  }
  .u-pb55--laptop {
    padding-bottom: 55px !important;
  }
  .u-mt60--laptop {
    margin-top: 60px !important;
  }
  .u-mr60--laptop {
    margin-right: 60px !important;
  }
  .u-ml60--laptop {
    margin-left: 60px !important;
  }
  .u-mb60--laptop {
    margin-bottom: 60px !important;
  }
  .u-pt60--laptop {
    padding-top: 60px !important;
  }
  .u-pr60--laptop {
    padding-right: 60px !important;
  }
  .u-pl60--laptop {
    padding-left: 60px !important;
  }
  .u-pb60--laptop {
    padding-bottom: 60px !important;
  }
  .u-mt65--laptop {
    margin-top: 65px !important;
  }
  .u-mr65--laptop {
    margin-right: 65px !important;
  }
  .u-ml65--laptop {
    margin-left: 65px !important;
  }
  .u-mb65--laptop {
    margin-bottom: 65px !important;
  }
  .u-pt65--laptop {
    padding-top: 65px !important;
  }
  .u-pr65--laptop {
    padding-right: 65px !important;
  }
  .u-pl65--laptop {
    padding-left: 65px !important;
  }
  .u-pb65--laptop {
    padding-bottom: 65px !important;
  }
  .u-mt70--laptop {
    margin-top: 70px !important;
  }
  .u-mr70--laptop {
    margin-right: 70px !important;
  }
  .u-ml70--laptop {
    margin-left: 70px !important;
  }
  .u-mb70--laptop {
    margin-bottom: 70px !important;
  }
  .u-pt70--laptop {
    padding-top: 70px !important;
  }
  .u-pr70--laptop {
    padding-right: 70px !important;
  }
  .u-pl70--laptop {
    padding-left: 70px !important;
  }
  .u-pb70--laptop {
    padding-bottom: 70px !important;
  }
  .u-mt75--laptop {
    margin-top: 75px !important;
  }
  .u-mr75--laptop {
    margin-right: 75px !important;
  }
  .u-ml75--laptop {
    margin-left: 75px !important;
  }
  .u-mb75--laptop {
    margin-bottom: 75px !important;
  }
  .u-pt75--laptop {
    padding-top: 75px !important;
  }
  .u-pr75--laptop {
    padding-right: 75px !important;
  }
  .u-pl75--laptop {
    padding-left: 75px !important;
  }
  .u-pb75--laptop {
    padding-bottom: 75px !important;
  }
  .u-mt80--laptop {
    margin-top: 80px !important;
  }
  .u-mr80--laptop {
    margin-right: 80px !important;
  }
  .u-ml80--laptop {
    margin-left: 80px !important;
  }
  .u-mb80--laptop {
    margin-bottom: 80px !important;
  }
  .u-pt80--laptop {
    padding-top: 80px !important;
  }
  .u-pr80--laptop {
    padding-right: 80px !important;
  }
  .u-pl80--laptop {
    padding-left: 80px !important;
  }
  .u-pb80--laptop {
    padding-bottom: 80px !important;
  }
  .u-mt85--laptop {
    margin-top: 85px !important;
  }
  .u-mr85--laptop {
    margin-right: 85px !important;
  }
  .u-ml85--laptop {
    margin-left: 85px !important;
  }
  .u-mb85--laptop {
    margin-bottom: 85px !important;
  }
  .u-pt85--laptop {
    padding-top: 85px !important;
  }
  .u-pr85--laptop {
    padding-right: 85px !important;
  }
  .u-pl85--laptop {
    padding-left: 85px !important;
  }
  .u-pb85--laptop {
    padding-bottom: 85px !important;
  }
  .u-mt90--laptop {
    margin-top: 90px !important;
  }
  .u-mr90--laptop {
    margin-right: 90px !important;
  }
  .u-ml90--laptop {
    margin-left: 90px !important;
  }
  .u-mb90--laptop {
    margin-bottom: 90px !important;
  }
  .u-pt90--laptop {
    padding-top: 90px !important;
  }
  .u-pr90--laptop {
    padding-right: 90px !important;
  }
  .u-pl90--laptop {
    padding-left: 90px !important;
  }
  .u-pb90--laptop {
    padding-bottom: 90px !important;
  }
  .u-mt95--laptop {
    margin-top: 95px !important;
  }
  .u-mr95--laptop {
    margin-right: 95px !important;
  }
  .u-ml95--laptop {
    margin-left: 95px !important;
  }
  .u-mb95--laptop {
    margin-bottom: 95px !important;
  }
  .u-pt95--laptop {
    padding-top: 95px !important;
  }
  .u-pr95--laptop {
    padding-right: 95px !important;
  }
  .u-pl95--laptop {
    padding-left: 95px !important;
  }
  .u-pb95--laptop {
    padding-bottom: 95px !important;
  }
  .u-mt100--laptop {
    margin-top: 100px !important;
  }
  .u-mr100--laptop {
    margin-right: 100px !important;
  }
  .u-ml100--laptop {
    margin-left: 100px !important;
  }
  .u-mb100--laptop {
    margin-bottom: 100px !important;
  }
  .u-pt100--laptop {
    padding-top: 100px !important;
  }
  .u-pr100--laptop {
    padding-right: 100px !important;
  }
  .u-pl100--laptop {
    padding-left: 100px !important;
  }
  .u-pb100--laptop {
    padding-bottom: 100px !important;
  }
}

@media screen and (min-width: 768px) {
  .u-mt0--pc {
    margin-top: 0px !important;
  }
  .u-mr0--pc {
    margin-right: 0px !important;
  }
  .u-ml0--pc {
    margin-left: 0px !important;
  }
  .u-mb0--pc {
    margin-bottom: 0px !important;
  }
  .u-pt0--pc {
    padding-top: 0px !important;
  }
  .u-pr0--pc {
    padding-right: 0px !important;
  }
  .u-pl0--pc {
    padding-left: 0px !important;
  }
  .u-pb0--pc {
    padding-bottom: 0px !important;
  }
  .u-mt5--pc {
    margin-top: 5px !important;
  }
  .u-mr5--pc {
    margin-right: 5px !important;
  }
  .u-ml5--pc {
    margin-left: 5px !important;
  }
  .u-mb5--pc {
    margin-bottom: 5px !important;
  }
  .u-pt5--pc {
    padding-top: 5px !important;
  }
  .u-pr5--pc {
    padding-right: 5px !important;
  }
  .u-pl5--pc {
    padding-left: 5px !important;
  }
  .u-pb5--pc {
    padding-bottom: 5px !important;
  }
  .u-mt10--pc {
    margin-top: 10px !important;
  }
  .u-mr10--pc {
    margin-right: 10px !important;
  }
  .u-ml10--pc {
    margin-left: 10px !important;
  }
  .u-mb10--pc {
    margin-bottom: 10px !important;
  }
  .u-pt10--pc {
    padding-top: 10px !important;
  }
  .u-pr10--pc {
    padding-right: 10px !important;
  }
  .u-pl10--pc {
    padding-left: 10px !important;
  }
  .u-pb10--pc {
    padding-bottom: 10px !important;
  }
  .u-mt15--pc {
    margin-top: 15px !important;
  }
  .u-mr15--pc {
    margin-right: 15px !important;
  }
  .u-ml15--pc {
    margin-left: 15px !important;
  }
  .u-mb15--pc {
    margin-bottom: 15px !important;
  }
  .u-pt15--pc {
    padding-top: 15px !important;
  }
  .u-pr15--pc {
    padding-right: 15px !important;
  }
  .u-pl15--pc {
    padding-left: 15px !important;
  }
  .u-pb15--pc {
    padding-bottom: 15px !important;
  }
  .u-mt20--pc {
    margin-top: 20px !important;
  }
  .u-mr20--pc {
    margin-right: 20px !important;
  }
  .u-ml20--pc {
    margin-left: 20px !important;
  }
  .u-mb20--pc {
    margin-bottom: 20px !important;
  }
  .u-pt20--pc {
    padding-top: 20px !important;
  }
  .u-pr20--pc {
    padding-right: 20px !important;
  }
  .u-pl20--pc {
    padding-left: 20px !important;
  }
  .u-pb20--pc {
    padding-bottom: 20px !important;
  }
  .u-mt25--pc {
    margin-top: 25px !important;
  }
  .u-mr25--pc {
    margin-right: 25px !important;
  }
  .u-ml25--pc {
    margin-left: 25px !important;
  }
  .u-mb25--pc {
    margin-bottom: 25px !important;
  }
  .u-pt25--pc {
    padding-top: 25px !important;
  }
  .u-pr25--pc {
    padding-right: 25px !important;
  }
  .u-pl25--pc {
    padding-left: 25px !important;
  }
  .u-pb25--pc {
    padding-bottom: 25px !important;
  }
  .u-mt30--pc {
    margin-top: 30px !important;
  }
  .u-mr30--pc {
    margin-right: 30px !important;
  }
  .u-ml30--pc {
    margin-left: 30px !important;
  }
  .u-mb30--pc {
    margin-bottom: 30px !important;
  }
  .u-pt30--pc {
    padding-top: 30px !important;
  }
  .u-pr30--pc {
    padding-right: 30px !important;
  }
  .u-pl30--pc {
    padding-left: 30px !important;
  }
  .u-pb30--pc {
    padding-bottom: 30px !important;
  }
  .u-mt35--pc {
    margin-top: 35px !important;
  }
  .u-mr35--pc {
    margin-right: 35px !important;
  }
  .u-ml35--pc {
    margin-left: 35px !important;
  }
  .u-mb35--pc {
    margin-bottom: 35px !important;
  }
  .u-pt35--pc {
    padding-top: 35px !important;
  }
  .u-pr35--pc {
    padding-right: 35px !important;
  }
  .u-pl35--pc {
    padding-left: 35px !important;
  }
  .u-pb35--pc {
    padding-bottom: 35px !important;
  }
  .u-mt40--pc {
    margin-top: 40px !important;
  }
  .u-mr40--pc {
    margin-right: 40px !important;
  }
  .u-ml40--pc {
    margin-left: 40px !important;
  }
  .u-mb40--pc {
    margin-bottom: 40px !important;
  }
  .u-pt40--pc {
    padding-top: 40px !important;
  }
  .u-pr40--pc {
    padding-right: 40px !important;
  }
  .u-pl40--pc {
    padding-left: 40px !important;
  }
  .u-pb40--pc {
    padding-bottom: 40px !important;
  }
  .u-mt45--pc {
    margin-top: 45px !important;
  }
  .u-mr45--pc {
    margin-right: 45px !important;
  }
  .u-ml45--pc {
    margin-left: 45px !important;
  }
  .u-mb45--pc {
    margin-bottom: 45px !important;
  }
  .u-pt45--pc {
    padding-top: 45px !important;
  }
  .u-pr45--pc {
    padding-right: 45px !important;
  }
  .u-pl45--pc {
    padding-left: 45px !important;
  }
  .u-pb45--pc {
    padding-bottom: 45px !important;
  }
  .u-mt50--pc {
    margin-top: 50px !important;
  }
  .u-mr50--pc {
    margin-right: 50px !important;
  }
  .u-ml50--pc {
    margin-left: 50px !important;
  }
  .u-mb50--pc {
    margin-bottom: 50px !important;
  }
  .u-pt50--pc {
    padding-top: 50px !important;
  }
  .u-pr50--pc {
    padding-right: 50px !important;
  }
  .u-pl50--pc {
    padding-left: 50px !important;
  }
  .u-pb50--pc {
    padding-bottom: 50px !important;
  }
  .u-mt55--pc {
    margin-top: 55px !important;
  }
  .u-mr55--pc {
    margin-right: 55px !important;
  }
  .u-ml55--pc {
    margin-left: 55px !important;
  }
  .u-mb55--pc {
    margin-bottom: 55px !important;
  }
  .u-pt55--pc {
    padding-top: 55px !important;
  }
  .u-pr55--pc {
    padding-right: 55px !important;
  }
  .u-pl55--pc {
    padding-left: 55px !important;
  }
  .u-pb55--pc {
    padding-bottom: 55px !important;
  }
  .u-mt60--pc {
    margin-top: 60px !important;
  }
  .u-mr60--pc {
    margin-right: 60px !important;
  }
  .u-ml60--pc {
    margin-left: 60px !important;
  }
  .u-mb60--pc {
    margin-bottom: 60px !important;
  }
  .u-pt60--pc {
    padding-top: 60px !important;
  }
  .u-pr60--pc {
    padding-right: 60px !important;
  }
  .u-pl60--pc {
    padding-left: 60px !important;
  }
  .u-pb60--pc {
    padding-bottom: 60px !important;
  }
  .u-mt65--pc {
    margin-top: 65px !important;
  }
  .u-mr65--pc {
    margin-right: 65px !important;
  }
  .u-ml65--pc {
    margin-left: 65px !important;
  }
  .u-mb65--pc {
    margin-bottom: 65px !important;
  }
  .u-pt65--pc {
    padding-top: 65px !important;
  }
  .u-pr65--pc {
    padding-right: 65px !important;
  }
  .u-pl65--pc {
    padding-left: 65px !important;
  }
  .u-pb65--pc {
    padding-bottom: 65px !important;
  }
  .u-mt70--pc {
    margin-top: 70px !important;
  }
  .u-mr70--pc {
    margin-right: 70px !important;
  }
  .u-ml70--pc {
    margin-left: 70px !important;
  }
  .u-mb70--pc {
    margin-bottom: 70px !important;
  }
  .u-pt70--pc {
    padding-top: 70px !important;
  }
  .u-pr70--pc {
    padding-right: 70px !important;
  }
  .u-pl70--pc {
    padding-left: 70px !important;
  }
  .u-pb70--pc {
    padding-bottom: 70px !important;
  }
  .u-mt75--pc {
    margin-top: 75px !important;
  }
  .u-mr75--pc {
    margin-right: 75px !important;
  }
  .u-ml75--pc {
    margin-left: 75px !important;
  }
  .u-mb75--pc {
    margin-bottom: 75px !important;
  }
  .u-pt75--pc {
    padding-top: 75px !important;
  }
  .u-pr75--pc {
    padding-right: 75px !important;
  }
  .u-pl75--pc {
    padding-left: 75px !important;
  }
  .u-pb75--pc {
    padding-bottom: 75px !important;
  }
  .u-mt80--pc {
    margin-top: 80px !important;
  }
  .u-mr80--pc {
    margin-right: 80px !important;
  }
  .u-ml80--pc {
    margin-left: 80px !important;
  }
  .u-mb80--pc {
    margin-bottom: 80px !important;
  }
  .u-pt80--pc {
    padding-top: 80px !important;
  }
  .u-pr80--pc {
    padding-right: 80px !important;
  }
  .u-pl80--pc {
    padding-left: 80px !important;
  }
  .u-pb80--pc {
    padding-bottom: 80px !important;
  }
  .u-mt85--pc {
    margin-top: 85px !important;
  }
  .u-mr85--pc {
    margin-right: 85px !important;
  }
  .u-ml85--pc {
    margin-left: 85px !important;
  }
  .u-mb85--pc {
    margin-bottom: 85px !important;
  }
  .u-pt85--pc {
    padding-top: 85px !important;
  }
  .u-pr85--pc {
    padding-right: 85px !important;
  }
  .u-pl85--pc {
    padding-left: 85px !important;
  }
  .u-pb85--pc {
    padding-bottom: 85px !important;
  }
  .u-mt90--pc {
    margin-top: 90px !important;
  }
  .u-mr90--pc {
    margin-right: 90px !important;
  }
  .u-ml90--pc {
    margin-left: 90px !important;
  }
  .u-mb90--pc {
    margin-bottom: 90px !important;
  }
  .u-pt90--pc {
    padding-top: 90px !important;
  }
  .u-pr90--pc {
    padding-right: 90px !important;
  }
  .u-pl90--pc {
    padding-left: 90px !important;
  }
  .u-pb90--pc {
    padding-bottom: 90px !important;
  }
  .u-mt95--pc {
    margin-top: 95px !important;
  }
  .u-mr95--pc {
    margin-right: 95px !important;
  }
  .u-ml95--pc {
    margin-left: 95px !important;
  }
  .u-mb95--pc {
    margin-bottom: 95px !important;
  }
  .u-pt95--pc {
    padding-top: 95px !important;
  }
  .u-pr95--pc {
    padding-right: 95px !important;
  }
  .u-pl95--pc {
    padding-left: 95px !important;
  }
  .u-pb95--pc {
    padding-bottom: 95px !important;
  }
  .u-mt100--pc {
    margin-top: 100px !important;
  }
  .u-mr100--pc {
    margin-right: 100px !important;
  }
  .u-ml100--pc {
    margin-left: 100px !important;
  }
  .u-mb100--pc {
    margin-bottom: 100px !important;
  }
  .u-pt100--pc {
    padding-top: 100px !important;
  }
  .u-pr100--pc {
    padding-right: 100px !important;
  }
  .u-pl100--pc {
    padding-left: 100px !important;
  }
  .u-pb100--pc {
    padding-bottom: 100px !important;
  }
}

/* --------------------------
テキスト装飾
-------------------------- */
.u-text-accent {
  color: #005bac;
}

.u-text-important {
  color: #e20013;
}

.u-text-inverse {
  color: #fff;
}

.u-text-sub {
  color: #ababab;
}

.u-text-serif {
  font-family: 'Times New Roman', Times, serif;
}

.u-text-bold {
  font-weight: 400;
}

.u-text-normal {
  font-weight: 300;
}

.u-text-highlight {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(70%, #f08080));
  background: linear-gradient(transparent 70%, #f08080 70%);
}

.u-text-x-large {
  font-size: 36px;
  letter-spacing: 0.06em;
}

@media screen and (max-width: 767px) {
  .u-text-x-large {
    font-size: 26px;
  }
}

.u-text-large {
  font-size: 26px;
  letter-spacing: 0.05em;
}

@media screen and (max-width: 767px) {
  .u-text-large {
    font-size: 20px;
  }
}

.u-text-bit-large {
  font-size: 20px;
}

@media screen and (max-width: 767px) {
  .u-text-bit-large {
    font-size: 16px;
  }
}

.u-text-default {
  font-size: 16px;
}

@media screen and (max-width: 767px) {
  .u-text-default {
    font-size: 14px;
  }
}

.u-text-small {
  font-size: 14px;
}

@media screen and (max-width: 767px) {
  .u-text-small {
    font-size: 12px;
  }
}

.u-text-x-small {
  font-size: 12px;
}

@media screen and (max-width: 767px) {
  .u-text-x-small {
    font-size: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-text-x-small--sp {
    font-size: 10px;
  }
}

/* --------------------------
幅指定
-------------------------- */
.u-w0 {
  width: 0%;
  display: block;
}

.u-w10 {
  width: 10%;
  display: block;
}

.u-w20 {
  width: 20%;
  display: block;
}

.u-w30 {
  width: 30%;
  display: block;
}

.u-w40 {
  width: 40%;
  display: block;
}

.u-w50 {
  width: 50%;
  display: block;
}

.u-w60 {
  width: 60%;
  display: block;
}

.u-w70 {
  width: 70%;
  display: block;
}

.u-w80 {
  width: 80%;
  display: block;
}

.u-w90 {
  width: 90%;
  display: block;
}

.u-w100 {
  width: 100%;
  display: block;
}

@media screen and (min-width: 768px) {
  .u-w0--pc {
    width: 0%;
    display: block;
  }
  .u-w10--pc {
    width: 10%;
    display: block;
  }
  .u-w20--pc {
    width: 20%;
    display: block;
  }
  .u-w30--pc {
    width: 30%;
    display: block;
  }
  .u-w40--pc {
    width: 40%;
    display: block;
  }
  .u-w50--pc {
    width: 50%;
    display: block;
  }
  .u-w60--pc {
    width: 60%;
    display: block;
  }
  .u-w70--pc {
    width: 70%;
    display: block;
  }
  .u-w80--pc {
    width: 80%;
    display: block;
  }
  .u-w90--pc {
    width: 90%;
    display: block;
  }
  .u-w100--pc {
    width: 100%;
    display: block;
  }
}

@media screen and (max-width: 1180px) {
  .u-w0--laptop {
    width: 0%;
    display: block;
  }
  .u-w10--laptop {
    width: 10%;
    display: block;
  }
  .u-w20--laptop {
    width: 20%;
    display: block;
  }
  .u-w30--laptop {
    width: 30%;
    display: block;
  }
  .u-w40--laptop {
    width: 40%;
    display: block;
  }
  .u-w50--laptop {
    width: 50%;
    display: block;
  }
  .u-w60--laptop {
    width: 60%;
    display: block;
  }
  .u-w70--laptop {
    width: 70%;
    display: block;
  }
  .u-w80--laptop {
    width: 80%;
    display: block;
  }
  .u-w90--laptop {
    width: 90%;
    display: block;
  }
  .u-w100--laptop {
    width: 100%;
    display: block;
  }
}

@media screen and (max-width: 1023px) {
  .u-w0--tab {
    width: 0%;
    display: block;
  }
  .u-w10--tab {
    width: 10%;
    display: block;
  }
  .u-w20--tab {
    width: 20%;
    display: block;
  }
  .u-w30--tab {
    width: 30%;
    display: block;
  }
  .u-w40--tab {
    width: 40%;
    display: block;
  }
  .u-w50--tab {
    width: 50%;
    display: block;
  }
  .u-w60--tab {
    width: 60%;
    display: block;
  }
  .u-w70--tab {
    width: 70%;
    display: block;
  }
  .u-w80--tab {
    width: 80%;
    display: block;
  }
  .u-w90--tab {
    width: 90%;
    display: block;
  }
  .u-w100--tab {
    width: 100%;
    display: block;
  }
}

@media screen and (max-width: 767px) {
  .u-w0--sp {
    width: 0%;
    display: block;
  }
  .u-w10--sp {
    width: 10%;
    display: block;
  }
  .u-w20--sp {
    width: 20%;
    display: block;
  }
  .u-w30--sp {
    width: 30%;
    display: block;
  }
  .u-w40--sp {
    width: 40%;
    display: block;
  }
  .u-w50--sp {
    width: 50%;
    display: block;
  }
  .u-w60--sp {
    width: 60%;
    display: block;
  }
  .u-w70--sp {
    width: 70%;
    display: block;
  }
  .u-w80--sp {
    width: 80%;
    display: block;
  }
  .u-w90--sp {
    width: 90%;
    display: block;
  }
  .u-w100--sp {
    width: 100%;
    display: block;
  }
}

.u-h100 {
  height: 100%;
}

.p-header-inner {
  position: absolute;
  top: 30px;
  left: 50px;
  z-index: 9999;
  width: 190px;
}

@media screen and (max-width: 767px) {
  .p-header-inner {
    position: fixed;
    top: 20px;
    left: 20px;
    width: auto;
  }
}

.p-header-logo {
  text-decoration: none;
  margin-bottom: 30px;
  display: block;
}

@media screen and (min-width: 768px) {
  .p-header-logo {
    text-align: center;
  }
}

.p-header-logo img {
  width: 100px;
}

@media screen and (max-width: 767px) {
  .p-header-logo img {
    width: 60px;
  }
}

.p-gnav {
  display: none;
  background-color: white;
  position: fixed;
  top: 0;
  right: 0;
  height: 100vh;
  z-index: 998;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 80px;
  -webkit-filter: drop-shadow(2px 4px 6px #e0e0e0);
          filter: drop-shadow(2px 4px 6px #e0e0e0);
}

@media screen and (max-width: 767px) {
  .p-gnav {
    padding: 80px 40px 40px;
    width: 100%;
    height: auto;
    max-height: 100vh;
    border-radius: 0 0 10px 10px;
  }
}

.p-gnav-list-item {
  padding: 15px 20px;
}

.p-gnav-list-item a {
  font-size: 12px;
  letter-spacing: 0.05em;
  text-decoration: none;
  line-height: 1;
  font-weight: 400;
  position: relative;
}

@media screen and (max-width: 767px) {
  .p-gnav-list-item a {
    font-size: 10px;
  }
}

.p-gnav-list-item a span {
  font-family: "Marcellus", serif;
  font-size: 18px;
  display: block;
  margin-bottom: 5px;
}

@media screen and (max-width: 767px) {
  .p-gnav-list-item a span {
    font-size: 16px;
  }
}

.p-gnav-list-item ul {
  display: grid;
  gap: 10px;
  margin-top: 15px;
  list-style: disc;
  padding-left: 20px;
}

.p-footer-inner {
  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;
  gap: 40px;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-footer-inner {
    display: block;
  }
}

.p-footer-logo {
  max-width: 200px;
}

@media screen and (max-width: 767px) {
  .p-footer-logo {
    max-width: 120px;
    margin: 0 auto 40px;
  }
}

.p-footer-bnr {
      max-width: 500px;
}
@media screen and (max-width: 767px) {
  .p-footer-tel {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto;
  }
.p-footer-bnr {
      margin: 20px 0 0;
}
}

.p-footer-tel a {
  font-family: "Marcellus", serif;
  font-size: 150%;
  text-decoration: none;
  display: inline-block;
  line-height: 0;
}

.p-footer-copyright {
  text-align: center;
  padding: 20px;
  font-family: "Marcellus", serif;
  font-weight: 500;
}

.p-footer-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 20px;
  font-size: 14px;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-footer-link {
    font-size: 12px;
    padding: 0 20px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 15px;
  }
}

.p-footer-pagetop {
  background: #005bac;
  padding: 15px;
  font-family: "Marcellus", serif;
  font-weight: 500;
  color: white;
  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;
  gap: 5px;
  font-size: 16px;
  text-decoration: none;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .p-footer-pagetop {
    font-size: 14px;
  }
}

.p-footer-pagetop::after {
  content: "";
  width: 20px;
  height: 20px;
  background: url(../images/common/pagetop.png) no-repeat;
  background-size: contain;
  display: block;
}

.p-footer-sns {
  position: fixed;
  bottom: 30px;
  left: 30px;
}

@media screen and (max-width: 767px) {
  .p-footer-sns {
    bottom: 10px;
    left: 10px;
  }
}

.p-footer-sns ul {
  display: grid;
  gap: 20px;
}

@media screen and (max-width: 767px) {
  .p-footer-sns ul {
    gap: 10px;
  }
}

.p-footer-sns ul li a {
  background: white;
  border-radius: 30px;
  padding: 10px;
  display: block;
  -webkit-filter: drop-shadow(1px 1px 4px rgba(0, 0, 0, 0.2));
          filter: drop-shadow(1px 1px 4px rgba(0, 0, 0, 0.2));
}

.p-footer-sns ul li a img {
  width: 20px;
}

.top-mv {
  position: relative;
}

.top-mv .slick {
  max-width: calc(100% - 400px);
  margin-left: auto;
  display: block;
  border-radius: 0 0 0 30px;
  overflow: hidden;
}

@media screen and (max-width: 767px) {
  .top-mv .slick {
    max-width: 95%;
    margin-top: 40px;
    border-radius: 20px 0 0 20px;
  }
}

.top-mv .slick img{
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
.top-mv-service {
  position: absolute;
  bottom: 0;
  right: 0;
  text-decoration: none;
  background: white;
  padding: 15px 30px 10px;
  z-index: 900;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  border-radius: 10px 0 0 0;
}

@media screen and (max-width: 767px) {
  .top-mv-service {
    padding: 15px 20px 10px;
    position: relative;
    border-radius: 7px;
    margin: 20px;
    -webkit-filter: drop-shadow(2px 4px 6px #e0e0e0);
            filter: drop-shadow(2px 4px 6px #e0e0e0);
    margin-bottom: 80px;
          display: block;
        text-align: center;
  }
}

.top-mv-service p {
  font-weight: bold;
  margin-bottom: 0;
  border-right: 1px solid #e0e0e0;
  line-height: 1.3;
  padding-right: 20px;
}

@media screen and (max-width: 767px) {
  .top-mv-service p {
            font-size: 14px;
        padding-right: 0;
        border: none;
  margin-bottom: 10px;
  }
}

.top-mv-service span {
  font-size: 12px;
  font-weight: bold;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

@media screen and (max-width: 767px) {
  .top-mv-service span {
    font-size: 11px;
        margin: 0 auto;
  }
}

.top-mv-service span.ttl {
  background: #005bac;
  color: white;
  padding: 5px;
  border-radius: 5px;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.top-mv-service:hover {
  opacity: 1;
}

.top-mv-service:hover span {
  opacity: 0.6;
}

.top-mv-info {
     position: absolute;
    top: 50%;
    left: 100px;
    transform: translateY(-50%);
}
.top-mv-info .logo {
      width: 200px;
    display: inline-block;
}

@media screen and (max-width: 767px) {
  .top-mv-info {
    display: none;
  }
}

.top-mv-info a {
  font-family: "Marcellus", serif;
  font-size: 250%;
  text-decoration: none;
  line-height: 1.5;
}

.top-topics {
  overflow: hidden;
}

.top-topics-inner {
  margin-right: calc(-1 * ((100vw - 1180px) / 2));
}

@media screen and (max-width: 767px) {
  .top-topics-inner {
    margin-right: 0;
  }
}

.top-topics-inner img {
  border-radius: 10px;
  overflow: hidden;
  border: 1px solid #e0e0e0;
}

.top-topics-inner .slide-topics {
  margin: 0 -10px !important;
}
@media screen and (max-width: 767px) {
  .top-topics-inner .slide-topics {
        margin: 0 -20px 20px !important;
  }
}

.top-topics-inner .slide-topics li {
  padding: 0 10px;
}

.top-strengths {
  display: grid;
  grid-template-columns: 1.8fr 1fr;
  gap: 60px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (max-width: 767px) {
  .top-strengths {
    grid-template-columns: 1fr;
    gap: 40px;
    margin-bottom: 40px;
  }
}

.top-strengths .grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(200px, 1fr));
  gap: 10px;
  grid-auto-rows: 120px;
}

@media screen and (max-width: 767px) {
  .top-strengths .grid {
    grid-template-columns: repeat(3, minmax(70px, 1fr));
    grid-auto-rows: 70px;
  }
}

.top-strengths .grid div {
  position: relative;
  overflow: hidden;
  border-radius: 8px;
  -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15);
          box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15);
  grid-column: span 1;
  grid-row: span 1;
  /* ランダム風にサイズを変える */
}

.top-strengths .grid div img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.top-strengths .grid div img:hover {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}

.top-strengths .grid div:nth-child(1) {
  grid-row: span 2;
}

.top-strengths .grid div:nth-child(3) {
  grid-row: span 2;
}

.top-strengths .grid div:nth-child(4) {
  grid-row: span 2;
}

.top-strengths-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}

@media screen and (max-width: 767px) {
  .top-strengths-list {
    grid-template-columns: repeat(1, 1fr);
  }
}

.top-strengths-list li {
  text-align: center;
  position: relative;
  font-weight: bold;
  border-radius: 7px;
  padding: 30px 15px;
  background: white;
  -webkit-filter: drop-shadow(2px 4px 10px #e0e0e0);
          filter: drop-shadow(2px 4px 10px #e0e0e0);
}

@media screen and (max-width: 767px) {
  .top-strengths-list li {
    gap: 10px;
    padding: 20px 15px;
  }
}

.top-strengths-list li a {
  text-decoration: none;
}

.top-strengths-list li span {
  font-size: 25px;
  border-radius: 50%;
  text-align: center;
  margin-right: 12px;
  line-height: 1;
  margin-bottom: 10px;
  display: block;
  color: #005bac;
}

.top-strengths-list li span.check{
  margin: 20px auto 0;
    font-size: 12px;
    font-weight: bold;
    color: white;
    background: #005bac;
    border-radius: 0;
    padding: 7px 10px;
    width: 120px;
}

@media screen and (max-width: 767px) {
  .top-strengths-list li span {
    
  }
}

.top-strengths-list li span small {
  display: block;
  font-size: 10px;
}

.top-service-nemu {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
      background: white;
    padding: 40px 40px 0;
    border-radius: 10px;
        -webkit-filter: drop-shadow(2px 4px 10px #e0e0e0);
    filter: drop-shadow(2px 4px 10px #e0e0e0);
}

@media screen and (max-width: 767px) {
  .top-service-nemu {
    grid-template-columns: repeat(2, 1fr);
    padding: 0;
  }
}

.top-service-nemu li {
  padding: 20px;
  position: relative;
}
.top-service-nemu li::after {
  content: "";
    display: block;
    width: 1px;
    background: #ababab;
    height: 75%;
    position: absolute;
    top: 15px;
    right: 0;
    opacity: 0.3;
}
.top-service-nemu li:nth-last-child(1)::after {
  content: none;
}
@media screen and (max-width: 767px) {
  .top-service-nemu li:nth-child(1),
  .top-service-nemu li:nth-child(2) {
    border-bottom: 1px solid #ababab2d;
  }
  .top-service-nemu li:nth-child(1),
  .top-service-nemu li:nth-child(3) {
    border-right: 1px solid #ababab2d;
  }
.top-service-nemu li::after {
  content: none;
}
}

@media screen and (max-width: 767px) {
  .top-service-nemu li img {
  }
}

.top-service-nemu li h5 {
  font-size: 18px;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .top-service-nemu li h5 {
    font-size: 14px;
    line-height: 1.3;
        padding: 5px;
  }
}

@media screen and (max-width: 767px) {
  .top-service-nemu li p {
    line-height: 1.5;
  }
}

.top-service-nemu li .point {
  background: rgba(0, 91, 172, 0.1);
  padding: 10px;
  font-weight: bold;
  border-radius: 30px;
  font-size: 14px;
  color: #005bac;
}

@media screen and (max-width: 767px) {
  .top-service-nemu li .point {
    font-size: 12px;
    line-height: 1.3;
  }
}

.top-service-nemu li .tag {
  font-size: 12px;
  line-height: 1.5;
  text-align: left;
}

@media screen and (max-width: 767px) {
  .top-service-nemu li .tag {
    font-size: 12px;
  }
}

.top-service-nemu li .tag span {
  display: block;
  font-size: 12px;
  margin-bottom: 8px;
  text-align: left;
}
.top-service-nemu li .tag span::before {
  content: "・";
}

@media screen and (max-width: 767px) {
  .top-service-nemu li .tag span {
    font-size: 12px;
  }
}

.top-service-link {
  display: grid;
  grid-template-columns: 40px 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: left;
  gap: 15px;
  border: 2px solid #005bac;
  border-radius: 7px;
  padding: 10px 20px;
  text-decoration: none;
  position: relative;
  background: white;
}

@media screen and (max-width: 767px) {
  .top-service-link {
    grid-template-columns: 36px 1fr;
    padding: 7px 10px;
            padding-right: 22px;
    gap: 0;
  }
}

.top-service-link img {
  width: 40px;
}

@media screen and (max-width: 767px) {
  .top-service-link img {
    width: 28px;
  }
}

.top-service-link p {
  font-size: 14px;
  color: #005bac;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .top-service-link p {
    font-size: 12px;
    line-height: 1.2;
  }
}

.top-service-link::after {
  content: "";
  width: 8px;
  height: 8px;
  display: block;
  border-top: 2px solid #005bac;
  border-right: 2px solid #005bac;
  position: absolute;
  top: 48%;
  right: 20px;
  -webkit-transform: rotate(45deg) translateY(-50%);
          transform: rotate(45deg) translateY(-50%);
}

@media screen and (max-width: 767px) {
  .top-service-link::after {
    width: 5px;
    height: 5px;
    right: 15px;
    border-width: 1px;
  }
}

.top-service-bnr {
  max-width: 600px;
  margin: 0 auto;
}

.top-service-panel {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 0;
}

@media screen and (max-width: 767px) {
  .top-service-panel {
    grid-template-columns: 1fr 1fr;
  }
}

.top-service-panel-list {
  position: relative;
  height: 400px;
}

.top-service-panel-list img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 767px) {
  .top-service-panel-list {
    height: 180px;
  }
  .top-service-panel-list:nth-last-child(1) {
    grid-column: 1/3;
  }
}

.top-service-panel-list p {
  position: absolute;
  bottom: 10px;
  left: 15px;
  font-weight: 500;
}

@media screen and (max-width: 767px) {
  .top-service-panel-list p {
    bottom: 5px;
    left: 15px;
    font-size: 12px;
  }
}

.top-service-panel-list::before {
  content: "";
  width: 50px;
  height: 50px;
  display: block;
  background: white;
  position: absolute;
  bottom: 0;
  right: 0;
}

@media screen and (max-width: 767px) {
  .top-service-panel-list::before {
    width: 30px;
    height: 30px;
  }
}

.top-service-panel-list::after {
  content: "";
  width: 10px;
  height: 10px;
  display: block;
  border-top: 2px solid;
  border-right: 2px solid;
  position: absolute;
  bottom: 18px;
  right: 20px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

@media screen and (max-width: 767px) {
  .top-service-panel-list::after {
    width: 7px;
    height: 7px;
    bottom: 12px;
    right: 12px;
  }
}

.top-app {
  background: white;
}

@media screen and (min-width: 768px) {
  .top-app .slide-app {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 15px;
  }
}

@media screen and (max-width: 767px) {
  .top-app .slide-app li {
    padding-right: 10px;
  }
}

.top-app-dl {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 15px;
}
.top-app-dl a{
    max-width: 185px;
}

@media screen and (max-width: 767px) {
  .top-app-dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 0;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    max-width: 80%;
    margin: 0 auto;
  }
  .top-app-dl a {
    width: 50%;
    padding: 5px;
  }
}

.top-youtube {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 15px;
}

@media screen and (max-width: 767px) {
  .top-youtube {
    grid-template-columns: repeat(1, 1fr);
    padding-bottom: 40px;
  }
}

.top-store-inner {
  padding: 80px;
  background: white;
  margin-top: -80px;
  position: relative;
}

@media screen and (max-width: 767px) {
  .top-store-inner {
    margin-top: 0;
    padding: 20px;
  }
}

.top-store-inner .map, .top-store-inner .calendar {
  width: 100%;
  aspect-ratio: 9 / 9;
}

.top-store-inner .map iframe, .top-store-inner .calendar iframe {
  width: 100%;
  height: 100%;
}

.faq-item {
  border: 1px solid #ddd;
  margin-bottom: 10px;
  background: #fff;
  overflow: hidden;
}

.faq-question {
  width: 100%;
  text-align: left;
  padding: 20px;
  padding-right: 30px;
  font-size: 16px;
  border: none;
  background: #fff;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
}

@media screen and (max-width: 767px) {
  .faq-question {
    font-size: 14px;
  }
}

.faq-answer {
  max-height: 0;
  overflow: hidden;
  -webkit-transition: max-height 0.3s ease, padding 0.3s ease;
  transition: max-height 0.3s ease, padding 0.3s ease;
  padding: 0 20px;
  font-size: 15px;
  color: #333;
  font-size: 14px;
}

@media screen and (max-width: 767px) {
  .faq-answer {
    font-size: 12px;
    line-height: 1.5em;
  }
}

.faq-item.active .faq-answer {
  max-height: 200px;
  padding: 0 20px 20px;
}

.faq-question::after {
  content: "";
  display: block;
  width: 7px;
  height: 7px;
  border-top: 2px solid;
  border-right: 2px solid;
  position: absolute;
  top: 40%;
  right: 20px;
  -webkit-transform: rotate(135deg) translateY(-50%);
          transform: rotate(135deg) translateY(-50%);
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

.faq-item.active .chevron {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

.topics-list {
  max-width: 960px;
  margin: 0 auto;
}

.topics-list li {
  border-bottom: 1px solid #e0e0e0;
  padding: 20px 0;
}

.topics-list li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-decoration: none;
}

@media screen and (max-width: 767px) {
  .topics-list li a {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

.topics-list li a img {
  width: 250px;
  border-radius: 10px;
  overflow: hidden;
  border: 1px solid #e0e0e0;
}

@media screen and (max-width: 767px) {
  .topics-list li a img {
    width: 100px;
  }
}

.topics-list li a > div {
  width: calc(100% - 250px);
  padding-left: 40px;
}

@media screen and (max-width: 767px) {
  .topics-list li a > div {
    width: calc(100% - 100px);
    padding-left: 20px;
  }
}

.topics-list li a > div p.day {
  color: #ababab;
  font-weight: bold;
  font-size: 12px;
  margin-bottom: 10px;
}

@media screen and (max-width: 767px) {
  .topics-list li a > div p.day {
    font-size: 11px;
    margin-bottom: 5px;
  }
}

.topics-list li a > div h5 {
  font-size: 17px;
  font-weight: bold;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .topics-list li a > div h5 {
    font-size: 14px;
    line-height: 1.5;
  }
}

@media screen and (max-width: 767px) {
  .service-nemu {
    grid-template-columns: 1fr;
  }
  .service-nemu img {
    max-width: 50%;
  }
}

.service-hinmoku {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 15px;
}

@media screen and (max-width: 767px) {
  .service-hinmoku {
    grid-template-columns: 1fr;
    gap: 15px;
  }
}

.service-hinmoku .accordion h5 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer;
  padding: 15px;
  border: 1px solid #005bac;
  border-radius: 5px;
  color: #005bac;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  font-weight: bold;
  font-size: 14px;
}

.service-hinmoku .accordion h5:hover {
  background: #005bac;
  color: #fff;
}

.service-hinmoku .accordion h5::after {
  content: "+";
  font-size: 18px;
  margin-left: auto;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.service-hinmoku .accordion ul {
  display: none;
  padding-top: 15px;
  list-style: disc;
  padding-left: 20px;
  font-size: 14px;
}

.service-hinmoku .accordion ul li {
  margin-bottom: 10px;
}

.service-hinmoku .accordion.open h5::after {
  content: "–";
}

.service-tokushu-nav ul {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}

@media screen and (max-width: 767px) {
  .service-tokushu-nav ul {
    grid-template-columns: repeat(2, 1fr);
  }
}

.service-tokushu-nav ul li a {
  text-decoration: none;
  background: white;
  border: 2px solid #005bac;
  text-align: center;
  font-weight: bold;
  display: block;
  padding: 20px;
  position: relative;
}

@media screen and (max-width: 767px) {
  .service-tokushu-nav ul li a {
    font-size: 12px;
    text-align: left;
    padding: 15px;
  }
}

.service-tokushu-nav ul li a::after {
  content: "";
  display: block;
  width: 7px;
  height: 7px;
  border-bottom: 2px solid #005bac;
  border-right: 2px solid #005bac;
  position: absolute;
  top: 45%;
  right: 20px;
  -webkit-transform: rotate(45deg) translateY(-50%);
          transform: rotate(45deg) translateY(-50%);
}

.service-tokushu-howto h5 {
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  color: #005bac;
  margin-bottom: 10px;
}

.price-nav {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}

@media screen and (max-width: 767px) {
  .price-nav {
    grid-template-columns: repeat(2, 1fr);
  }
}

.price-nav a {
  text-decoration: none;
  font-weight: bold;
  border: 1px solid #005bac;
  color: #005bac;
  padding: 20px;
  border-radius: 5px;
  display: block;
  background: white;
  position: relative;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  font-size: 14px;
}

@media screen and (max-width: 767px) {
  .price-nav a {
    padding: 10px 15px;
    font-size: 12px;
    padding-right: 30px;
    line-height: 1.3;
  }
}

.price-nav a::after {
  content: "";
  width: 8px;
  height: 8px;
  display: block;
  border-bottom: 2px solid #005bac;
  border-right: 2px solid #005bac;
  position: absolute;
  top: 48%;
  right: 20px;
  -webkit-transform: rotate(45deg) translateY(-50%);
          transform: rotate(45deg) translateY(-50%);
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

@media screen and (max-width: 767px) {
  .price-nav a::after {
    width: 5px;
    height: 5px;
    right: 15px;
    border-width: 1px;
  }
}

.price-nav a:hover {
  background: #005bac;
  color: white;
  opacity: 1;
}

.price-nav a:hover::after {
  border-color: #fff;
}



/* 固定ページ全体に適用するスタイル */
.page {
  font-size: 16px;
  line-height: 1.8rem;
  color: #333;
}

.page h2 {
  font-size: 1.6em;
  margin-top: 1.5em;
  margin-bottom: 0.8em;
  font-weight: bold;
  line-height: 1.5;
}

.page h3 {
  font-size: 1.2em;
  margin-top: 40px;
  margin-bottom: 0.6em;
  font-weight: bold;
  border-bottom: 1px solid #ddd;
  padding-bottom: 0.3em;
  line-height: 1.5;
}

.page h4 {
  font-size: 1.1em;
  margin-bottom: 0.6em;
  font-weight: bold;
  line-height: 1.5;
}
.page p {
  margin-bottom: 1em;
  line-height: 1.8;
}

.page ul {
  margin: 0 0 1em 1.5em;
  padding: 0;
  list-style-type: disc;
}

.page li {
  margin-bottom:  0.6em;
  line-height: 1.5rem;
}

.page ol {
  margin: 0 0 1em 1.5em;
  padding: 0;
}

.page blockquote {
  border-left: 4px solid #ccc;
  margin: 1.5em 0;
  padding: 0.5em 1em;
  background: #f9f9f9;
  font-style: italic;
}

.page figure {
  text-align: center;
}

.is-provider-youtube .wp-block-embed__wrapper{
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.is-provider-youtube .wp-block-embed__wrapper iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 767px) {
  .page h2 {
    font-size: 1.2em;
  }

  .page h3 {
    font-size: 1.1em;
  }
  .page h4 {
    font-size: 1em;
  }
  .page li {
    font-size: 14px;
  }
}



.instagram-responsive {
  max-width: 630px;   /* 最大幅 */
  width: 100%;        /* 親要素に合わせて拡大縮小 */
  margin: 0 auto;     /* 中央寄せ */
  height: 348px;
}
@media screen and (max-width: 767px) {
  .instagram-responsive {
    max-width: 100%;
  }
}



.fadeIn {
  transition: 1.5s;
  opacity: 0;
}

.fadeIn.animated {
  opacity: 1;
}


/* --------------------------
modal
-------------------------- */
.modal {
  display: none;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 999999;
}

.modal__bg {
  background: rgba(0, 0, 0, 0.6);
  height: 100vh;
  position: absolute;
  width: 100%;
}

.modal__content {
  background: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 60%;
  max-height: 95%;
  text-align: center;
  /* overflow-y: scroll; */
}
.modal__content.sub {
  width: fit-content;
}

.modal__content img {
  width: auto;
  max-width: 100%;
}

@media screen and (max-width: 1023px) {
  .modal__content {
    width: 80%;
  }
  .modal__content.sub {
    width: 80%;
  }
}

@media screen and (max-width: 767px) {
  .modal__content {
    width: 90%;
    height: auto;
    max-height: 95%;
  }
  .modal__content.sub {
    width: 90%;
  }
}

.modal__content .inner {
  padding: 40px;
}

@media screen and (max-width: 767px) {
  .modal__content .inner {
    padding: 20px;
  }
}

.modal__close {
      background: #005bac;
    width: 30px;
    height: 30px;
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    color: white;
    text-decoration: none;
    font-size: 18px;
    text-align: center;
    line-height: 30px;
    cursor: pointer;
        font-weight: bold;
}


.slider .slick-slide {
  padding: 0 10px;
}
@media screen and (max-width: 767px) {
  .slider .slick-slide {
    padding: 0;
  }
}



.service-nemu {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

@media screen and (max-width: 767px) {
  .service-nemu {
    gap: 10px;
  grid-template-columns: repeat(2, 1fr);
  }
}

.service-nemu li {
  padding: 20px;
  position: relative;
  -webkit-filter: drop-shadow(2px 4px 10px #e0e0e0);
    filter: drop-shadow(2px 4px 10px #e0e0e0);
    background: white;
}

@media screen and (max-width: 767px) {
.service-nemu li {
  padding: 10px;
}
  .service-nemu li img {
    max-width: 100%;
  }
}

.service-nemu li h5 {
  font-size: 18px;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .service-nemu li h5 {
    font-size: 14px;
    line-height: 1.3;
        padding: 5px;
  }
}

@media screen and (max-width: 767px) {
  .service-nemu li p {
    line-height: 1.5;
  }
}

.service-nemu li a {
      background: rgba(0, 91, 172, 0.1);
    padding: 10px 20px;
    font-weight: bold;
    border-radius: 30px;
    font-size: 14px;
    color: #005bac;
    text-decoration: none;
    display: inline-block;
}

@media screen and (max-width: 767px) {
  .service-nemu li a {
    font-size: 10px;
    line-height: 1.3;
  }
}
