@charset "UTF-8";
/*========================================
Foundation（初期化）
==========================================*/
@-ms-viewport {
  width: auto;
}
@page {
  size: 420mm 594mm;
}
@media print and (-ms-high-contrast: none) {
  body {
    width: 1120px;
  }
}

*,
*::before,
*::after {
  box-sizing: border-box;
}
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  line-height: 1.8;
}
html {
  font-size: 62.5%;
  /*overflow: scroll;*/
}
@media (min-width: 768px){
  html {
    overflow: auto;
  }
}
body {
	-webkit-text-size-adjust: 100%;
	background-color: #fff;
	color: #000;
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	font-size: 16px;
	font-weight: 400;
	letter-spacing: 0.07em;
	line-height: 1.8;
	word-wrap: break-word;
  background: url(../img/bg_note_sp2.png) no-repeat center 20vw /94%;
}
body.bottom {
  background: url(../img/bg_note_sp2.png) no-repeat center 20vw /94%;
}
@media (min-width: 768px){
  body {
    font-size: 1.6rem !important;
    background: url(../img/bg_note_pc2.png) no-repeat center 3vw /1090px;
  }
  body.bottom {
    background: url(../img/bg_note_pc2.png) no-repeat center 5vw /1090px;
  }
}
body.is-open,
html.is-open {
  overflow: auto !important;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, main {
  display: block;
}
ul, ol {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
  content: '';
  content: none;
}
h1, h2, h3, h4, h5, h6 {
  line-height: 1.8;
  font-weight: normal;
}
h7 {
  line-height: 1.8;
  font-size: 1.8rem !important;
  font-weight: normal;
}
img {
  max-width: 100%;
  vertical-align: top;
  pointer-events: none;/* 画像取得防止 */
}
a {
  color: inherit;
  text-decoration: none;
}

@media (min-width: 768px) {
  a:hover {
    text-decoration: none;
  }
  a img {
    transition: opacity 0.2s;
  }
  a:hover img {
    opacity: 0.7;
  }
}
abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
hr {
  display: block;
  height: 1px;
  border: 0;
  border-bottom: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}
input, select {
  vertical-align: middle;
}
input[type="radio"] {
  display: inline-block;
  position: relative;
  top: 1px;
  margin: 0 3px 0 0;
}
button, input, select, textarea {
  font: inherit;
}



/*========================================
Layout（接頭辞 l-）
==========================================*/

/* ラッパー
-----------------------*/
.l-wrapper {
  display: flex;
}
.l-wrapper-inner {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-height: 100vh;
}
.l-cont {
  width: 100%;
}
@media (min-width: 768px) {
  .l-wrapper {
    min-width: 1240px;
  }
  .l-cont {
    width: 1240px !important;
    margin: 0 auto;
  }
}

/* ヘッダー
-----------------------*/
.l-header {
  text-align: center;
  padding: 20px 7.3vw 20px;
}
.l-header #tti_wrap {
  margin-top: 7vw;
}
.l-header #tti_wrap a {
  display: inline-block;
}
.bottom .l-header {
  width: 94%;
  margin: 0 auto;
  text-align: left;
  padding: 22px 0;
}
.bottom .l-header #tti_wrap {
  margin-top: 0;
}
.bottom .l-header #ttl {
  width: 30vw;
}

@media (min-width: 768px) {
  .l-header {
    padding: 20px 7.3vw;
  }
  .l-header #ttl {
    max-width: 600px;
  }
  .bottom .l-header {
    padding: 20px 0;
    max-width: 1090px;
  }
  .bottom .l-header #ttl {
    width: 12vw;
    max-width: 245px;
  }
  .bottom .l-header #ttl {
    width: 12vw;
    max-width: 245px;
  }
}
/* メイン
-----------------------*/
main {}
.l-main {
  min-height: calc(100vh - 50px - 545px);
}
@media (min-width: 768px) {
  .l-main {
    min-height: calc(100vh - 65px - 950px);
  }
}

/* フッター
-----------------------*/
.l-footer {
  position: relative;
  background: #202020;
  overflow-x: auto;
}

.l-footer-inner {
  padding: 36px 40px 30px;
  text-align: center;
  color: #fff;
}

.l-footer-banner {
  margin-bottom: 30px;
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  gap: 20px;
}
.l-footer > p {
  background: #fff;
  text-align: right;
}
.l-footer a#top {
  position: relative;
  height: 30px;
  background: #202020;
  color: #fff;
  display: inline-block;
  font-size: 1rem;
  padding: 10px 10px 10px 5px;
  z-index: 5;
  line-height: 1;
}
.l-footer a#top i {
  margin-right: 10px;
}
.l-footer a#top::before {
  position: absolute;
  content: "";
  bottom: -1px;
  left: -29px;
  height: 31px;
  width: 30px;
  background: #202020;
  clip-path: polygon(0% 100%, 100% 100%, 100% 0%);
}
@media screen and (min-width: 376px) {
  .l-footer-entry-inner {
    /*background-position: top 120px center;
    background-size: 100%;*/
  }
}
.l-footer-bottom {
  position: relative;
}
.l-footer-policy a {
  font-size: 1.2rem;
  text-decoration: underline;
}
.l-footer-copyright {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  font-size: 0.8rem;
  line-height: 1;
  text-align: center;
}

@media (min-width: 768px) {
  .l-footer-inner {
    margin: 0 auto;
    background: none;
    color: #fff;
  }
  .l-footer-copyright {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    font-size: 1.2rem;
    line-height: 1;
    text-align: center;
  }
  .l-footer a#top {
    height: 48px;
    font-size: 1.4rem;
    padding: 14px 30px 14px 10px;
  }
  .l-footer a#top::before {
    left: -47px;
    height: 49px;
    width: 48px;
  }
}

/* MOV表示用 */
.movie-open {
	display: none;
}
.movie-content-wrap {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.movie-content-wrap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* メインビジュアル
-----------------------*/
.l-mainV {
  width: 100%;
  padding-top: 20px;
  height: auto;
  position: relative;
  overflow: auto;
}
.l-mainV .kv {
  width: 100%;
  height: auto;
  object-fit: cover;
}
.l-mainV #playMv {
  position: absolute;
  top: 0;
  right: 10px;
  z-index: 10;
  display: block;
  width: 20vw;
  cursor: pointer;
}
@media (min-width: 768px) {
  .l-mainV {
    padding-top: 40px;
  }
  .l-mainV #playMv {
    top: 0;
    right: 100px;
    width: auto;
  }
}

/* 事前登録エリア
-----------------------*/
.l-entry {
  padding: 35px 0 50px;
}
.l-entry a {
  display: block;
}
.l-entry h2 {
  font-size: 1rem;
  text-align: center;
  margin-bottom: 3rem;
}
.l-entry .c-twbox {
  border: 1px solid #202020;
  border-left: 7px solid #202020;
  background: #fff;
  padding: 10px;
  height: 300px;
}
.l-entry .c-twbox h4 {
  text-align: center;
  background: #fff;
  border-bottom: 1px solid #202020;
}
.l-entry .c-twbox h4 img {
  width: 9%;
  margin-bottom: 10px;
}
.l-entry .c-twwrap {
  width: 100%;
  height: 240px;
  overflow-y: scroll;
  overflow-x: auto;
}
.l-entryBox {
  border: 1px solid #202020;
  padding: 30px 38px;
  position: relative;
}
.l-entryBox:before,
.l-entryBox:after {
  position: absolute;
  content:"";
  width: 12%;
  height: 0.5px;
  background: #202020;
}
.l-entryBox:before {
  top: 5%;
  left: -4%;
  transform:rotate(-45deg);
}
.l-entryBox:after {
  bottom: 5%;
  right: -4%;
  transform:rotate(-45deg);
} 
.l-entryBox h3 {
  font-size: 1.6rem;
  text-align: center;
}
.l-entryBox .l-entryBox-inner {
  display: flex;
  flex-wrap: wrap;
  gap: 25px;
  justify-content: center;
}
.l-entryBox .l-entryBox-inner a {
  width: calc(50% - 12.5px);
}
.l-entryBox .l-entryBox-inner a img {
  width: 100%
}
.l-entry .c-pre_entry {
  padding: 20px;
  background: #464646;
}

@media (min-width: 768px) {
  .l-entry {
    padding: 80px 0 120px;
  }
  .l-entryBox h3 {
    font-size: 2.85rem;
  }
  .l-entryBox .l-entryBox-inner {
    flex-wrap: nowrap;
  }
  .l-entryBox .l-entryBox-inner a {
    width: auto;
  }
  .l-entryBox .l-entryBox-inner a img {
    width: auto;
  }
  .l-entry .c-twbox {
    height: 500px;
  }
  .l-entry .c-twwrap {
    height: 410px;
  }
}

/* newsエリア
-----------------------*/
.l-news {
  padding: 36px 0 30px;
  color: #d6d6d6;
  background: #202020;
}
.l-news h3 {
  font-size: 0;
  text-align: center;
  margin-bottom: 2rem;
}
.l-news dl {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  margin: 0 auto 20px;
  font-size: 1rem;
  padding: 0 1rem;
}
.l-news dl dt {
  color: #f9e81e;
  width: 7em;
  border-bottom: 1px solid #464646;
  padding: 10px 0;
}
.l-news dl dd {
  width: calc(100% - 7em);
  border-bottom: 1px solid #464646;
  padding: 10px 0;
}
@media (min-width: 768px) {
  .l-news {
    padding: 70px 0 66px;
  }
  .l-news dl {
    max-width: 606px;
    font-size: 1.4rem;
  }
}
/* シェアエリア
-----------------------*/
.l-share {
  border-top: 2px solid #202020;
  padding: 40px 0;
}
.l-share h4 {
  font-size: 1.4rem;
  text-align: center;
  margin-bottom: 2rem;
}
.l-share h4 img {
  height: 1.4rem;
  margin-right: .5rem;
  vertical-align: middle;
}
.l-share .l-share-inner {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  gap: 20px;
}
.l-share .l-share-inner img {
  width: 10vw;
}
@media (min-width: 768px) {
  .l-share {
    border-top: 5px solid #202020;
  }
  .l-share h4 {
    font-size: 1.8rem;
    margin-bottom: 2rem;
  }
  .l-share .l-share-inner img {
    width: 50px;
  }
}
/* 楽曲情報エリア
-----------------------*/
.l-music {
  border-top: 4px solid #202020;
  padding: 85px 0 115px;
}
.l-music h3,
.l-music h4,
.l-music h5 {
  margin-bottom: 30px;
  text-align: center;
}

.l-music h4.song img {
  width: 32%;
}
.l-music h5.song img {
  width: 46%;
}
.l-music h4.track img {
  width: 25%;
}
.l-music h5.track img {
  width: 54%;
}
.l-music .c-artistbox {
  width: 100%;
  border: 1px solid #202020;
  padding: 1px;
  background: #fff;
  margin-bottom: 40px;
  position: relative;
}
.l-music .c-artistbox:before, 
.l-music .c-artistbox:after {
  position: absolute;
  content: "";
  width: 12%;
  height: 0.5px;
  background: #202020;
}
.l-music .c-artistbox:before {
  top: 4%;
  left: -4%;
  transform: rotate(-45deg);
}
.l-music .c-artistbox:after {
  bottom: 4%;
  right: -4%;
  transform: rotate(-45deg);
}
.l-music .c-artistbox img {
  width: 100%;
  vertical-align:top;
}
.l-music .c-artistcomment {
  width: 100%;
  border: 1px solid #202020;
  border-left: 8px solid #202020;
  background: #fff;
  padding: 20px;
  margin-bottom: 80px;
}
.l-music .c-artistcomment p:nth-child(1),
.l-music .c-artistcomment dl dt {
  font-size: 1.65rem;
  margin-bottom: 8px;
}
.l-music .c-artistcomment p span,
.l-music .c-artistcomment dl dt span:nth-child(1) {
  font-size: 1.3rem;
  padding: 0 4px;
  background:#202020;
  margin-right: 10px;
  color: #fff;
}
.l-music .c-artistcomment dl dt span:nth-child(2) {
  text-decoration: underline;
}
.l-music .c-artistcomment p,
.l-music .c-artistcomment dl dd {
  font-size: 1.4rem;
  letter-spacing: -0.5px;
}
@media (min-width: 768px) {
  .l-music {
    border-top: 6px solid #202020;
    padding: 120px 0 140px;
  }
  .l-music h3,
  .l-music h4,
  .l-music h5 {
    margin-bottom: 50px;
  }
  .l-music h4 img,
  .l-music h5 img {
    width: auto !important;
  }
  .l-music .c-artistbox {
    padding: 2px;
    margin-bottom: 55px;
  }
  .l-music .c-artistcomment {
    border-left: 12px solid #202020;
    padding: 30px;
    margin-bottom: 110px;
  }
  .l-music .c-artistcomment dl dt {
    font-size: 1.8rem;
    margin-bottom: 10px;
  }
  .l-music .c-artistcomment p span,
  .l-music .c-artistcomment dl dt span:nth-child(1) {
    font-size: 1.4rem;
    padding: 1px 7px;
    margin-right: 12px;
  }
}

/* 物語エリア
-----------------------*/
.l-story {
  padding: 0px 0 70px;
}
.l-story h3 {
  text-align: center;
  margin-bottom: 40px;
}
.l-story p {
  font-size: 1.5rem;
  margin-bottom: 30px;
  letter-spacing: -0.08em;
  line-height: 2;
}
.l-story .photo {
  width: auto;
  padding: 0 7.3vw;
}
.l-story .u-fs-mid {
  font-size: 2rem;
}
.l-story .u-fs-large {
  font-size: 2.5rem;
}
.l-story p > img.txt1 {
  width: 315px;
}
.l-story p > img.txt2 {
  width: 334px;
}
[data-ruby] {
	position: relative;
  width: 3em;
}
[data-ruby]::before {
	content: attr(data-ruby);
	position: absolute;
  display: inline-block;
  text-align: center;
	top: -1.5em;
	left: 0;
	right: 0;
	margin: 0 auto;
	font-size: 0.4em;
}
@media (min-width: 768px) {
  .l-story {
    padding: 100px 0 130px;
  }
  .l-story p {
    font-size: 1.8rem;
    margin-bottom: 50px;
    letter-spacing: 0;
  }
  .l-story .u-fs-mid {
    font-size: 2.4rem;
  }
  .l-story .u-fs-large {
    font-size: 3rem;
  }
  .l-story p > img.txt1,
  .l-story p > img.txt2 {
    width: auto;
  }
}
/* 登場人物エリア
-----------------------*/
.l-charahead {/* 背景黒エリア */
  padding: 36px 0 30px;
  color: #d6d6d6;
  background: #202020;
}
.l-charahead h3 {
  text-align: center;
  margin-bottom: 20px;
}
.l-charahead .c-symbollist {
  display: flex;
  flex-wrap: nowrap;
  align-items: top;
  justify-content: center;
  gap: 6px;
}
.l-charahead .c-symbollist .btn {
  cursor: pointer;
}
.l-charahead .c-symbollist .btn.act {
  margin-top: 5px;
}
@media (min-width: 768px) {
  .l-charahead {
    padding: 40px 0 30px;
  }
  .l-charahead h3 {
    margin-bottom: 40px;
  }
  .l-charahead .c-symbollist {
    gap: 10px;
  }
}
.l-charabody {
  padding: 40px 0 80px;
}
.l-charabody h3 {
  text-align: center;
  padding: 0 2vw 0 7.3vw;
}
.l-charabody h4 {
  margin-bottom: 25px;
}
.l-charabody h4 img {
  height: 35px;
}
.l-charabody ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: start;
  gap: 6.6vw;
  margin-bottom: 40px;
}
.l-charabody ul li {
  border: 1px solid #202020;
  padding: 1px;
  position: relative;
  width: 39.4vw;
}
.l-charabody ul li:before, 
.l-charabody ul li:after {
  position: absolute;
  content: "";
  width: 20%;
  height: 0.5px;
  background: #202020;
}
.l-charabody ul li:before{
  top: 4%;
  left: -7%;
  transform: rotate(-45deg);
} 
.l-charabody ul li:after {
  bottom: 4%;
  right: -7%;
  transform: rotate(-45deg);
}
.l-charabody ul li a {
  display: block;
}
.l-charabody ul li img {
  width: 100%;
  vertical-align:top;
}
@media (min-width: 768px) {
  .l-charabody {
    padding: 40px 0 120px;
  }
  .l-charabody h3 {
    padding: 0 7.3vw;
    max-width: 780px;
    margin: 0 auto;
  }
  .l-charabody h4 {
    margin-bottom: 30px;
  }
  .l-charabody h4 img {
    /*width: 25%;*/
    height: auto;
    max-height: 45px;
  }
  .l-charabody ul {
    gap: 26px;
    margin-bottom: 50px;
  }
  .l-charabody ul li {
    padding: 2px;
    width: calc((100% - 52px) / 3);
  }
}



/* 下層ページ共通
-----------------------*/
.bottom main {
  margin-top: 8vw;
}
.bottom h1 {
  margin-bottom: 30px;
}
.bottom h1 img {
  height: 36px;
}

@media (min-width: 768px) {
  .bottom main {
    margin-top: 4vw;
  }
  .bottom h1 {
    margin-bottom: 60px;
  }
  .bottom h1 img {
    height: 64px;
  }
}

/* NEWSページ
-----------------------*/
.l-newsBox {
  border: 1px solid #202020;
  padding: 12px;
  position: relative;
  background: #fff;
  margin-bottom: 30px;
}
.l-newsBox.is-detail {
  padding: 20px;
}
.l-newsBox > a {
  display: flex;
  gap: 12px;
}

.l-newsBox:before,
.l-newsBox:after {
  position: absolute;
  content:"";
  width: 12%;
  height: 0.5px;
  background: #202020;
}
.l-newsBox:before {
  top: 8%;
  left: -4%;
  transform:rotate(-45deg);
}
.l-newsBox:after {
  bottom: 8%;
  right: -4%;
  transform:rotate(-45deg);
}
.l-newsBox > a > div {
  display: flex;
  flex-flow: column;
  justify-content:space-between;
} 
.l-newsBox h2 {
  font-size: 1.2rem;
  font-weight: bold;
}
.l-newsBox:not(.is-detail) img {
  width: 120px;
  height: 67.5px;
  align-self: flex-start;
}
.l-newsBox > a > div {
  flex: 1;
}
.l-newsBox > a > div > p {
  text-align: right;
  font-size: 1rem;
}
.l-newsBox > a > div > p > span {
  margin-right: 20px;
}
/* 詳細 */
.l-newsBox.is-detail:before {
  top: 8px;
  left: -4%;
  transform:rotate(-45deg);
}
.l-newsBox.is-detail:after {
  bottom: 8px;
  right: -4%;
  transform:rotate(-45deg);
}
.l-newsBox.is-detail h5.meta {
  font-size: 1rem;
  margin-bottom: 27px;
}
.l-newsBox.is-detail h5.meta span {
  border: 1px solid #202020;
  margin-right: 15px;
  padding: 2px 8px;
}
.l-newsBox.is-detail h1 {
  font-size: 1.6rem;
  font-weight: bold;
  padding-bottom: 18px;
  border-bottom: 1px solid #202020;
  margin-bottom: 25px;
}
.entry-content section {
  margin-bottom: 40px;
  font-size: 1.2rem;
}
.entry-content section:last-child {
  margin-bottom: 0;
}
.entry-content section h2 {
  border: 1px solid #202020;
  border-left: 5px solid #202020;
  padding: 10px;
  font-size: 1.4rem;
  font-weight: bold;
  margin-bottom: 14px;
}
.entry-content section .youtube-responsive{
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  height: 0;
}
.entry-content section .youtube-responsive iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
.entry-content section p {
  margin-bottom: 20px;
}
.entry-content section h4,
.entry-content section h5 {
  font-weight: bold;
}
.entry-content section a {
  color: #0078fe;
  text-decoration: underline;
}
@media (min-width: 768px) {
  .l-newsBox {
    padding: 20px;
    margin-bottom: 50px;
  }
  .l-newsBox > a {
    gap: 20px;
  }
  .l-newsBox h2 {
    font-size: 1.8rem;
  }
  .l-newsBox:not(.is-detail) img {
    width: 240px;
    height: auto;
  }
  .l-newsBox > a > div > p {
    font-size: 1.2rem;
  }
  .l-newsBox.is-detail {
    padding: 50px;
  }
  /* 詳細 */
  .l-newsBox.is-detail:before {
    top: 16px;
    left: -4%;
    transform:rotate(-45deg);
  }
  .l-newsBox.is-detail:after {
    bottom: 16px;
    right: -4%;
    transform:rotate(-45deg);
  }
  .l-newsBox.is-detail h5.meta {
    font-size: 1.4rem;
    margin-bottom: 40px;
  }
  .l-newsBox.is-detail h5.meta span {
    border: 1px solid #202020;
    margin-right: 20px;
    padding: 4px 16px;
  }
  .l-newsBox.is-detail h1 {
    font-size: 2.4rem;
    padding-bottom: 35px;
    border-bottom: 2px solid #202020;
    margin-bottom: 60px;
  }
  .entry-content section {
    margin-bottom: 70px;
    font-size: 1.6rem;
  }
  .entry-content section h2 {
    border: 1px solid #202020;
    border-left: 10px solid #202020;
    padding: 16px;
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 28px;
  }
}
/* CHARACTERページ
-----------------------*/
.l-charadetail {
  padding: 0 0 80px;
}
.l-charadetail h2 {
  margin-bottom: 25px;
}
.l-charadetail h2 img {
  width: 47vw;
  max-width: 100%;
}
.l-charadetail .c-charadip {
  width: auto;
}
.l-charadetail .c-charadip ul {
  margin: 3vw;
}
.l-charadetail .c-charadip li {
  background: #fff;
  padding: 7px;
  /*box-shadow: 0px 0px 7px 0px rgba(0, 0, 0, 0.49);*/
  border: 1px solid rgba(0, 0, 0, 0.49);
  width: calc(100% - 1px) !important;
}
.l-charadetail .c-charadip li img {
  vertical-align: top;
}
.l-charadetail .c-charadip li .cv {
  display: flex;
  justify-content: start;
  align-items: center;
  margin: 15px;
}
.l-charadetail .c-charadip li .cv p {
  font-size: 2rem;
  line-height: 1;
}
.l-charadetail .c-charadip li .txt {
  padding: 18px;
  background: #f2f1f0;
  line-height: 1.5;
}
@media (min-width: 768px) {
  .l-charadetail h2 img {
    width: auto;
  }
  .l-charadetail .c-charadip ul {
    margin: 3vw auto 0;
    max-width: 760px;
  }
}






/* ナビ
-----------------------*/
nav {
  position: fixed;
  top: 0;
  z-index: 20;
}

nav #menu {
  position: fixed;
  top: 10px;
  right: 0;
  z-index: 25;
}
nav #menu img {
  display: none;
}
nav #menu img.act {
  display: block;
}
nav > div {
  position: fixed;
  height: 100vh;
  width: 83vw;
  background: rgba(0,0,0,.9);
  top: 0;
  right: 0;
  z-index: 21;
  padding: 0 14vw;
  display: none;
  box-shadow:0 0 18px 0 #000;
}
nav.open > div {
  display: flex;
  justify-content: center;
  align-items: center;
}
nav > div ul {
  width: 100%;
}
nav > div ul li {
  margin-bottom: 12.5vw;
}
nav > div ul li:last-child {
  margin-bottom: 0;
}
nav > div ul li a {
  color: #fff;
  display: flex;
  border-bottom: 1px solid #fff;
  justify-content: space-between;
  align-items: flex-end;
  font-size: 2.8vw;
  padding-bottom: .5vw;
}
nav > div ul li a span {
  font-size: 4.7vw;
  border-bottom: 1px solid #fff;
  line-height: 1;
}
@media (min-width: 768px) {
  nav #menu {
    top: 120px;
  }
  nav > div {
    width: 560px;
    padding: 0 100px;
  }
  nav > div ul li {
    margin-bottom: 56px;
  }
  nav > div ul li a {
    font-size: 1.6rem;
    padding-bottom: 2px;
  }
  nav > div ul li a span {
    font-size: 2.4rem;
  }
}

/*========================================
Component（接頭辞 c-）
==========================================*/
.c-cont {/* コンテンツエリア */
  width: auto;
  padding: 0 7.3vw;
}
.bottom .c-cont.c-news {/* NEWS */
  margin-bottom: 60px;
}
@media (min-width: 768px) {
  .c-cont {
    max-width: 780px;
    margin: 0 auto;
  }
  .bottom .c-cont {
    margin: 0 auto;
  }
  .bottom .c-cont.c-news {/* NEWSは枠広げる */
    margin-bottom: 120px;
    padding: 0;
  }
}

/*========================================
Utility（接頭辞 u-）
==========================================*/
/* ディスプレイ
-----------------------*/
/* PCのみ表示 */
@media screen and (max-width: 767px) {
  .u-pc {
    display: none !important;
  }
}
/* SPのみ表示 */
@media (min-width: 768px) {
  .u-sp {
    display: none !important;
  }
}
.u-arrow {
  border-bottom: 2px dotted #489BC5;
}
.u-arrow::before {/* > */
  font-family: "Font Awesome 5 Free";
  content: '\f054';
  margin-right: .2rem;
  font-weight: 900;
  text-decoration: none;
} 
.u-arrow.u-color-blue::before {
  color:#89BCD5;
}
.u-arrow.u-color-pink::before {
  color:#C80498;
}
.u-arrow-back::before {/* < */
  font-family: "Font Awesome 5 Free";
  content: '\f053';
  margin-right: .5rem;
  font-weight: 900;
  text-decoration: none;
}
.u-arrow-bottom::after {/* 下 */
  font-family: "Font Awesome 5 Free";
  content: '\f078';
  margin-left: .5rem;
  font-weight: 900;
  text-decoration: none;
} 

/* XXに戻る */
.u-link-back {
  text-align: center;
  background: #4FB408;
  padding: 10px;
}
.u-link-back.c-coach {
  background: #0599B1;
}
.u-link-back a {
  color: #fff;
  display: block;
}

.u-d-none {
  display: none !important;
}
.u-d-none-before::before {
  display: none !important;
}
.u-d-none-after::after {
  display: none !important;
}
.u-d-block {
  display: block !important;
}
.u-d-inline-block {
  display: inline-block !important;
}
.u-d-inline {
  display: inline !important;
}
.u-d-flex {
  display: flex !important;
}
@media (min-width: 768px) {
  .u-d-none-pc {
    display: none !important;
  }
  .u-d-none-before-pc::before {
    display: none !important;
  }
  .u-d-none-after-pc::after {
    display: none !important;
  }
  .u-d-block-pc {
    display: block !important;
  }
  .u-d-flex-pc {
    display: flex !important;
  }
}
@media screen and (min-width: 768px) and (max-width: 991px) {
  .u-d-none-tab {
    display: none !important;
  }
  .u-d-none-before-tab::before {
    display: none !important;
  }
  .u-d-none-after-tab::after {
    display: none !important;
  }
  .u-d-block-tab {
    display: block !important;
  }
  .u-d-flex-tab {
    display: flex !important;
  }
}
@media screen and (max-width: 767px) {
  .u-d-none-sp {
    display: none !important;
  }
  .u-d-none-before-sp::before {
    display: none !important;
  }
  .u-d-none-after-sp::after {
    display: none !important;
  }
  .u-d-block-sp {
    display: block !important;
  }
}

/* フレックス系
-----------------------*/
.u-flex-none {
  flex: none;
}
.u-flex-flow-column {
  flex-flow: column !important;
}
.u-flex-flow-column-reverse {
  flex-flow: column-reverse !important;
}
.u-flex-flow-row-reverse {
  flex-flow: row-reverse !important;
}
.u-flex-flow-wrap {
  flex-flow: wrap !important;
}
.u-flex-flow-nowrap {
  flex-flow: nowrap !important;
}
.u-flex-shrink-0 {
  flex-shrink: 0 !important;
}
.u-flex-basis-auto {
  flex-basis: auto !important;
}
.u-justify-content-start {
  justify-content: flex-start !important;
}
.u-justify-content-center {
  justify-content: center !important;
}
.u-justify-content-end {
  justify-content: flex-end !important;
}
.u-justify-content-between {
  justify-content: space-between !important;
}
.u-align-items-start {
  align-items: flex-start !important;
}
.u-align-items-center {
  align-items: center !important;
}
.u-align-items-end {
  align-items: flex-end !important;
}
.u-align-items-stretch {
  align-items: stretch !important;
}
.u-align-content-start {
  align-content: flex-start !important;
}
.u-align-content-center {
  align-content: center !important;
}
.u-align-content-end {
  align-content: flex-end !important;
}
.u-align-content-between {
  align-content: space-between !important;
}
.u-align-content-stretch {
  align-content: stretch !important;
}
.u-align-self-start {
  align-self: flex-start;
}
.u-align-self-center {
  align-self: center;
}
.u-align-self-end {
  align-self: flex-end;
}
.u-align-self-stretch {
  align-self: stretch;
}
@media screen and (max-width: 767px) {
  .u-flex-none-sp {
    flex: none;
  }
  .u-flex-flow-column-sp {
    flex-flow: column !important;
  }
  .u-flex-flow-column-reverse-sp {
    flex-flow: column-reverse !important;
  }
  .u-flex-flow-row-reverse-sp {
    flex-flow: row-reverse !important;
  }
  .u-flex-flow-wrap-sp {
    flex-flow: wrap !important;
  }
  .u-flex-flow-nowrap-sp {
    flex-flow: nowrap !important;
  }
  .u-flex-shrink-0-sp {
    flex-shrink: 0 !important;
  }
  .u-flex-basis-auto-sp {
    flex-basis: auto !important;
  }
  .u-justify-content-start-sp {
    justify-content: flex-start !important;
  }
  .u-justify-content-center-sp {
    justify-content: center !important;
  }
  .u-justify-content-end-sp {
    justify-content: flex-end !important;
  }
  .u-justify-content-between-sp {
    justify-content: space-between !important;
  }
  .u-align-items-start-sp {
    align-items: flex-start !important;
  }
  .u-align-items-center-sp {
    align-items: center !important;
  }
  .u-align-items-end-sp {
    align-items: flex-end !important;
  }
  .u-align-items-stretch-sp {
    align-items: stretch !important;
  }
  .u-align-content-start-sp {
    align-content: flex-start !important;
  }
  .u-align-content-center-sp {
    align-content: center !important;
  }
  .u-align-content-end-sp {
    align-content: flex-end !important;
  }
  .u-align-content-between-sp {
    align-content: space-between !important;
  }
  .u-align-content-stretch-sp {
    align-content: stretch !important;
  }
  .u-align-self-start-sp {
    align-self: flex-start;
  }
  .u-align-self-center-sp {
    align-self: center;
  }
  .u-align-self-end-sp {
    align-self: flex-end;
  }
  .u-align-self-stretch-sp {
    align-self: stretch;
  }
}
@media (min-width: 768px) {
  .u-flex-none-pc {
    flex: none;
  }
  .u-flex-flow-column-pc {
    flex-flow: column !important;
  }
  .u-flex-flow-column-reverse-pc {
    flex-flow: column-reverse !important;
  }
  .u-flex-flow-row-reverse-pc {
    flex-flow: row-reverse !important;
  }
  .u-flex-flow-wrap-pc {
    flex-flow: wrap !important;
  }
  .u-flex-flow-nowrap-pc {
    flex-flow: nowrap !important;
  }
  .u-flex-shrink-0-pc {
    flex-shrink: 0 !important;
  }
  .u-flex-basis-auto-pc {
    flex-basis: auto !important;
  }
  .u-justify-content-start-pc {
    justify-content: flex-start !important;
  }
  .u-justify-content-center-pc {
    justify-content: center !important;
  }
  .u-justify-content-end-pc {
    justify-content: flex-end !important;
  }
  .u-justify-content-between-pc {
    justify-content: space-between !important;
  }
  .u-align-items-start-pc {
    align-items: flex-start !important;
  }
  .u-align-items-center-pc {
    align-items: center !important;
  }
  .u-align-items-end-pc {
    align-items: flex-end !important;
  }
  .u-align-items-stretch-pc {
    align-items: stretch !important;
  }
  .u-align-content-start-pc {
    align-content: flex-start !important;
  }
  .u-align-content-center-pc {
    align-content: center !important;
  }
  .u-align-content-end-pc {
    align-content: flex-end !important;
  }
  .u-align-content-between-pc {
    align-content: space-between !important;
  }
  .u-align-content-stretch-pc {
    align-content: stretch !important;
  }
  .u-align-self-start-pc {
    align-self: flex-start;
  }
  .u-align-self-center-pc {
    align-self: center;
  }
  .u-align-self-end-pc {
    align-self: flex-end;
  }
  .u-align-self-stretch-pc {
    align-self: stretch;
  }
}

/* オーバーフロー
-----------------------*/
.u-overflow-auto {
  overflow: auto !important;
}
.u-overflow-auto {
  overflow: auto !important;
}
.u-overflow-scroll {
  overflow: scroll !important;
}
.u-overflow-x-scroll {
  overflow-x: scroll !important;
}
.u-overflow-y-scroll {
  overflow-y: scroll !important;
}
@media (min-width: 768px) {
  .u-overflow-auto-pc {
    overflow: auto !important;
  }
  .u-overflow-auto-pc {
    overflow: auto !important;
  }
  .u-overflow-scroll-pc {
    overflow: scroll !important;
  }
  .u-overflow-x-scroll-pc {
    overflow-x: scroll !important;
  }
  .u-overflow-y-scroll-pc {
    overflow-y: scroll !important;
  }
}
@media screen and (max-width: 767px) {
  .u-overflow-auto-sp {
    overflow: auto !important;
  }
  .u-overflow-auto-sp {
    overflow: auto !important;
  }
  .u-overflow-scroll-sp {
    overflow: scroll !important;
  }
  .u-overflow-x-scroll-sp {
    overflow-x: scroll !important;
  }
  .u-overflow-y-scroll-sp {
    overflow-y: scroll !important;
  }
}

/* ポジション
-----------------------*/
.u-pos-relative {
  position: relative !important;
}
.u-pos-absolute {
  position: absolute !important;
}
.u-z-index-9999 {
  z-index: 9999 !important;
}
.u-top-0 {
  top: 0 !important;
}
.u-bottom-0 {
  bottom: 0 !important;
}
.u-left-0 {
  left: 0 !important;
}
.u-right-0 {
  right: 0 !important;
}
@media screen and (max-width: 767px) {
  .u-pos-relative-sp {
    position: relative !important;
  }
  .u-pos-absolute-sp {
    position: absolute !important;
  }
  .u-z-index-9999-sp {
    z-index: 9999 !important;
  }
  .u-top-0-sp {
    top: 0 !important;
  }
  .u-bottom-0-sp {
    bottom: 0 !important;
  }
  .u-left-0-sp {
    left: 0 !important;
  }
  .u-right-0-sp {
    right: 0 !important;
  }
}
@media (min-width: 768px) {
  .u-pos-relative-pc {
    position: relative !important;
  }
  .u-pos-absolute-pc {
    position: absolute !important;
  }
  .u-z-index-9999-pc {
    z-index: 9999 !important;
  }
  .u-top-0-sp {
    top: 0 !important;
  }
  .u-bottom-0-pc {
    bottom: 0 !important;
  }
  .u-left-0-pc {
    left: 0 !important;
  }
  .u-right-0-pc {
    right: 0 !important;
  }
}


/* マージン
-----------------------*/
@media (min-width: 0px) {
  .u-mt-0 {
    margin-top: 0px !important;
  }
  .u-mt-5 {
    margin-top: 5px !important;
  }
  .u-mt-10 {
    margin-top: 10px !important;
  }
  .u-mt-15 {
    margin-top: 15px !important;
  }
  .u-mt-20 {
    margin-top: 20px !important;
  }
  .u-mt-25 {
    margin-top: 25px !important;
  }
  .u-mt-30 {
    margin-top: 30px !important;
  }
  .u-mt-40 {
    margin-top: 40px !important;
  }
  .u-mt-50 {
    margin-top: 50px !important;
  }
  .u-mt-60 {
    margin-top: 60px !important;
  }
  .u-mt-70 {
    margin-top: 70px !important;
  }
  .u-mt-80 {
    margin-top: 80px !important;
  }
  .u-mt-90 {
    margin-top: 90px !important;
  }
  .u-mt-100 {
    margin-top: 100px !important;
  }
  .u-mt-auto {
    margin-top: auto !important;
  }
}
@media (min-width: 768px) {
  .u-mt-0-pc {
    margin-top: 0px !important;
  }
  .u-mt-5-pc {
    margin-top: 5px !important;
  }
  .u-mt-10-pc {
    margin-top: 10px !important;
  }
  .u-mt-15-pc {
    margin-top: 15px !important;
  }
  .u-mt-20-pc {
    margin-top: 20px !important;
  }
  .u-mt-25-pc {
    margin-top: 25px !important;
  }
  .u-mt-30-pc {
    margin-top: 30px !important;
  }
  .u-mt-40-pc {
    margin-top: 40px !important;
  }
  .u-mt-50-pc {
    margin-top: 50px !important;
  }
  .u-mt-60-pc {
    margin-top: 60px !important;
  }
  .u-mt-70-pc {
    margin-top: 70px !important;
  }
  .u-mt-80-pc {
    margin-top: 80px !important;
  }
  .u-mt-90-pc {
    margin-top: 90px !important;
  }
  .u-mt-100-pc {
    margin-top: 100px !important;
  }
  .u-mt-auto-pc {
    margin-top: auto !important;
  }
}
@media screen and (min-width: 768px) and (max-width: 991px) {
  .u-mt-0-tab {
    margin-top: 0px !important;
  }
  .u-mt-5-tab {
    margin-top: 5px !important;
  }
  .u-mt-10-tab {
    margin-top: 10px !important;
  }
  .u-mt-15-tab {
    margin-top: 15px !important;
  }
  .u-mt-20-tab {
    margin-top: 20px !important;
  }
  .u-mt-25-tab {
    margin-top: 25px !important;
  }
  .u-mt-30-tab {
    margin-top: 30px !important;
  }
  .u-mt-40-tab {
    margin-top: 40px !important;
  }
  .u-mt-50-tab {
    margin-top: 50px !important;
  }
  .u-mt-60-tab {
    margin-top: 60px !important;
  }
  .u-mt-70-tab {
    margin-top: 70px !important;
  }
  .u-mt-80-tab {
    margin-top: 80px !important;
  }
  .u-mt-90-tab {
    margin-top: 90px !important;
  }
  .u-mt-100-tab {
    margin-top: 100px !important;
  }
  .u-mt-auto-tab {
    margin-top: auto !important;
  }
}
@media screen and (max-width: 767px) {
  .u-mt--20-sp {
    margin-top: -20px !important;
  }
  .u-mt-0-sp {
    margin-top: 0px !important;
  }
  .u-mt-5-sp {
    margin-top: 5px !important;
  }
  .u-mt-10-sp {
    margin-top: 10px !important;
  }
  .u-mt-15-sp {
    margin-top: 15px !important;
  }
  .u-mt-20-sp {
    margin-top: 20px !important;
  }
  .u-mt-25-sp {
    margin-top: 25px !important;
  }
  .u-mt-30-sp {
    margin-top: 30px !important;
  }
  .u-mt-40-sp {
    margin-top: 40px !important;
  }
  .u-mt-50-sp {
    margin-top: 50px !important;
  }
  .u-mt-60-sp {
    margin-top: 60px !important;
  }
  .u-mt-70-sp {
    margin-top: 70px !important;
  }
  .u-mt-80-sp {
    margin-top: 80px !important;
  }
  .u-mt-90-sp {
    margin-top: 90px !important;
  }
  .u-mt-100-sp {
    margin-top: 100px !important;
  }
  .u-mt-auto-sp {
    margin-top: auto !important;
  }
}

@media (min-width: 0px) {
  .u-mb-0 {
    margin-bottom: 0px !important;
  }
  .u-mb-5 {
    margin-bottom: 5px !important;
  }
  .u-mb-10 {
    margin-bottom: 10px !important;
  }
  .u-mb-15 {
    margin-bottom: 15px !important;
  }
  .u-mb-20 {
    margin-bottom: 20px !important;
  }
  .u-mb-25 {
    margin-bottom: 25px !important;
  }
  .u-mb-30 {
    margin-bottom: 30px !important;
  }
  .u-mb-40 {
    margin-bottom: 40px !important;
  }
  .u-mb-50 {
    margin-bottom: 50px !important;
  }
  .u-mb-60 {
    margin-bottom: 60px !important;
  }
  .u-mb-70 {
    margin-bottom: 70px !important;
  }
  .u-mb-80 {
    margin-bottom: 80px !important;
  }
  .u-mb-90 {
    margin-bottom: 90px !important;
  }
  .u-mb-100 {
    margin-bottom: 100px !important;
  }
  .u-mb-auto {
    margin-bottom: auto !important;
  }
}
@media (min-width: 768px) {
  .u-mb-0-pc {
    margin-bottom: 0px !important;
  }
  .u-mb-5-pc {
    margin-bottom: 5px !important;
  }
  .u-mb-10-pc {
    margin-bottom: 10px !important;
  }
  .u-mb-15-pc {
    margin-bottom: 15px !important;
  }
  .u-mb-20-pc {
    margin-bottom: 20px !important;
  }
  .u-mb-25-pc {
    margin-bottom: 25px !important;
  }
  .u-mb-30-pc {
    margin-bottom: 30px !important;
  }
  .u-mb-40-pc {
    margin-bottom: 40px !important;
  }
  .u-mb-50-pc {
    margin-bottom: 50px !important;
  }
  .u-mb-60-pc {
    margin-bottom: 60px !important;
  }
  .u-mb-70-pc {
    margin-bottom: 70px !important;
  }
  .u-mb-80-pc {
    margin-bottom: 80px !important;
  }
  .u-mb-90-pc {
    margin-bottom: 90px !important;
  }
  .u-mb-100-pc {
    margin-bottom: 100px !important;
  }
  .u-mb-auto-pc {
    margin-bottom: auto !important;
  }
}
@media screen and (min-width: 768px) and (max-width: 991px) {
  .u-mb-0-tab {
    margin-bottom: 0px !important;
  }
  .u-mb-5-tab {
    margin-bottom: 5px !important;
  }
  .u-mb-10-tab {
    margin-bottom: 10px !important;
  }
  .u-mb-15-tab {
    margin-bottom: 15px !important;
  }
  .u-mb-20-tab {
    margin-bottom: 20px !important;
  }
  .u-mb-25-tab {
    margin-bottom: 25px !important;
  }
  .u-mb-30-tab {
    margin-bottom: 30px !important;
  }
  .u-mb-40-tab {
    margin-bottom: 40px !important;
  }
  .u-mb-50-tab {
    margin-bottom: 50px !important;
  }
  .u-mb-60-tab {
    margin-bottom: 60px !important;
  }
  .u-mb-70-tab {
    margin-bottom: 70px !important;
  }
  .u-mb-80-tab {
    margin-bottom: 80px !important;
  }
  .u-mb-90-tab {
    margin-bottom: 90px !important;
  }
  .u-mb-100-tab {
    margin-bottom: 100px !important;
  }
  .u-mb-auto-tab {
    margin-bottom: auto !important;
  }
}
@media screen and (max-width: 767px) {
  .u-mb-0-sp {
    margin-bottom: 0px !important;
  }
  .u-mb-5-sp {
    margin-bottom: 5px !important;
  }
  .u-mb-10-sp {
    margin-bottom: 10px !important;
  }
  .u-mb-15-sp {
    margin-bottom: 15px !important;
  }
  .u-mb-20-sp {
    margin-bottom: 20px !important;
  }
  .u-mb-25-sp {
    margin-bottom: 25px !important;
  }
  .u-mb-30-sp {
    margin-bottom: 30px !important;
  }
  .u-mb-40-sp {
    margin-bottom: 40px !important;
  }
  .u-mb-50-sp {
    margin-bottom: 50px !important;
  }
  .u-mb-60-sp {
    margin-bottom: 60px !important;
  }
  .u-mb-70-sp {
    margin-bottom: 70px !important;
  }
  .u-mb-80-sp {
    margin-bottom: 80px !important;
  }
  .u-mb-90-sp {
    margin-bottom: 90px !important;
  }
  .u-mb-100-sp {
    margin-bottom: 100px !important;
  }
  .u-mb-auto-sp {
    margin-bottom: auto !important;
  }
}

@media (min-width: 0px) {
  .u-my-0 {
    margin-top: 0px !important;
    margin-bottom: 0px !important;
  }
  .u-my-5 {
    margin-top: 5px !important;
    margin-bottom: 5px !important;
  }
  .u-my-10 {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
  }
  .u-my-15 {
    margin-top: 15px !important;
    margin-bottom: 15px !important;
  }
  .u-my-20 {
    margin-top: 20px !important;
    margin-bottom: 20px !important;
  }
  .u-my-25 {
    margin-top: 25px !important;
    margin-bottom: 25px !important;
  }
  .u-my-30 {
    margin-top: 30px !important;
    margin-bottom: 30px !important;
  }
  .u-my-40 {
    margin-top: 40px !important;
    margin-bottom: 40px !important;
  }
  .u-my-50 {
    margin-top: 50px !important;
    margin-bottom: 50px !important;
  }
  .u-my-60 {
    margin-top: 60px !important;
    margin-bottom: 60px !important;
  }
  .u-my-70 {
    margin-top: 70px !important;
    margin-bottom: 70px !important;
  }
  .u-my-80 {
    margin-top: 80px !important;
    margin-bottom: 80px !important;
  }
  .u-my-90 {
    margin-top: 90px !important;
    margin-bottom: 90px !important;
  }
  .u-my-100 {
    margin-top: 100px !important;
    margin-bottom: 100px !important;
  }
  .u-my-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
}
@media (min-width: 768px) {
  .u-my-0-pc {
    margin-top: 0px !important;
    margin-bottom: 0px !important;
  }
  .u-my-5-pc {
    margin-top: 5px !important;
    margin-bottom: 5px !important;
  }
  .u-my-10-pc {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
  }
  .u-my-15-pc {
    margin-top: 15px !important;
    margin-bottom: 15px !important;
  }
  .u-my-20-pc {
    margin-top: 20px !important;
    margin-bottom: 20px !important;
  }
  .u-my-25-pc {
    margin-top: 25px !important;
    margin-bottom: 25px !important;
  }
  .u-my-30-pc {
    margin-top: 30px !important;
    margin-bottom: 30px !important;
  }
  .u-my-40-pc {
    margin-top: 40px !important;
    margin-bottom: 40px !important;
  }
  .u-my-50-pc {
    margin-top: 50px !important;
    margin-bottom: 50px !important;
  }
  .u-my-60-pc {
    margin-top: 60px !important;
    margin-bottom: 60px !important;
  }
  .u-my-70-pc {
    margin-top: 70px !important;
    margin-bottom: 70px !important;
  }
  .u-my-80-pc {
    margin-top: 80px !important;
    margin-bottom: 80px !important;
  }
  .u-my-90-pc {
    margin-top: 90px !important;
    margin-bottom: 90px !important;
  }
  .u-my-100-pc {
    margin-top: 100px !important;
    margin-bottom: 100px !important;
  }
  .u-my-auto-pc {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
}
@media screen and (min-width: 768px) and (max-width: 991px) {
  .u-my-0-tab {
    margin-top: 0px !important;
    margin-bottom: 0px !important;
  }
  .u-my-5-tab {
    margin-top: 5px !important;
    margin-bottom: 5px !important;
  }
  .u-my-10-tab {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
  }
  .u-my-15-tab {
    margin-top: 15px !important;
    margin-bottom: 15px !important;
  }
  .u-my-20-tab {
    margin-top: 20px !important;
    margin-bottom: 20px !important;
  }
  .u-my-25-tab {
    margin-top: 25px !important;
    margin-bottom: 25px !important;
  }
  .u-my-30-tab {
    margin-top: 30px !important;
    margin-bottom: 30px !important;
  }
  .u-my-40-tab {
    margin-top: 40px !important;
    margin-bottom: 40px !important;
  }
  .u-my-50-tab {
    margin-top: 50px !important;
    margin-bottom: 50px !important;
  }
  .u-my-60-tab {
    margin-top: 60px !important;
    margin-bottom: 60px !important;
  }
  .u-my-70-tab {
    margin-top: 70px !important;
    margin-bottom: 70px !important;
  }
  .u-my-80-tab {
    margin-top: 80px !important;
    margin-bottom: 80px !important;
  }
  .u-my-90-tab {
    margin-top: 90px !important;
    margin-bottom: 90px !important;
  }
  .u-my-100-tab {
    margin-top: 100px !important;
    margin-bottom: 100px !important;
  }
  .u-my-auto-tab {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
}
@media screen and (max-width: 767px) {
  .u-my-0-sp {
    margin-top: 0px !important;
    margin-bottom: 0px !important;
  }
  .u-my-5-sp {
    margin-top: 5px !important;
    margin-bottom: 5px !important;
  }
  .u-my-10-sp {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
  }
  .u-my-15-sp {
    margin-top: 15px !important;
    margin-bottom: 15px !important;
  }
  .u-my-20-sp {
    margin-top: 20px !important;
    margin-bottom: 20px !important;
  }
  .u-my-25-sp {
    margin-top: 25px !important;
    margin-bottom: 25px !important;
  }
  .u-my-30-sp {
    margin-top: 30px !important;
    margin-bottom: 30px !important;
  }
  .u-my-40-sp {
    margin-top: 40px !important;
    margin-bottom: 40px !important;
  }
  .u-my-50-sp {
    margin-top: 50px !important;
    margin-bottom: 50px !important;
  }
  .u-my-60-sp {
    margin-top: 60px !important;
    margin-bottom: 60px !important;
  }
  .u-my-70-sp {
    margin-top: 70px !important;
    margin-bottom: 70px !important;
  }
  .u-my-80-sp {
    margin-top: 80px !important;
    margin-bottom: 80px !important;
  }
  .u-my-90-sp {
    margin-top: 90px !important;
    margin-bottom: 90px !important;
  }
  .u-my-100-sp {
    margin-top: 100px !important;
    margin-bottom: 100px !important;
  }
  .u-my-auto-sp {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
}

@media (min-width: 0px) {
  .u-ml-0 {
    margin-left: 0px !important;
  }
  .u-ml-5 {
    margin-left: 5px !important;
  }
  .u-ml-10 {
    margin-left: 10px !important;
  }
  .u-ml-15 {
    margin-left: 15px !important;
  }
  .u-ml-20 {
    margin-left: 20px !important;
  }
  .u-ml-25 {
    margin-left: 25px !important;
  }
  .u-ml-30 {
    margin-left: 30px !important;
  }
  .u-ml-40 {
    margin-left: 40px !important;
  }
  .u-ml-50 {
    margin-left: 50px !important;
  }
  .u-ml-60 {
    margin-left: 60px !important;
  }
  .u-ml-70 {
    margin-left: 70px !important;
  }
  .u-ml-80 {
    margin-left: 80px !important;
  }
  .u-ml-90 {
    margin-left: 90px !important;
  }
  .u-ml-100 {
    margin-left: 100px !important;
  }
  .u-ml-auto {
    margin-left: auto !important;
  }
  .u-ml-1em {
    margin-left: 1em !important;
  }
  .u-ml-2em {
    margin-left: 2em !important;
  }
}

@media (min-width: 768px) {
  .u-ml-0-pc {
    margin-left: 0px !important;
  }
  .u-ml-5-pc {
    margin-left: 5px !important;
  }
  .u-ml-10-pc {
    margin-left: 10px !important;
  }
  .u-ml-15-pc {
    margin-left: 15px !important;
  }
  .u-ml-20-pc {
    margin-left: 20px !important;
  }
  .u-ml-25-pc {
    margin-left: 25px !important;
  }
  .u-ml-30-pc {
    margin-left: 30px !important;
  }
  .u-ml-40-pc {
    margin-left: 40px !important;
  }
  .u-ml-50-pc {
    margin-left: 50px !important;
  }
  .u-ml-60-pc {
    margin-left: 60px !important;
  }
  .u-ml-70-pc {
    margin-left: 70px !important;
  }
  .u-ml-80-pc {
    margin-left: 80px !important;
  }
  .u-ml-90-pc {
    margin-left: 90px !important;
  }
  .u-ml-100-pc {
    margin-left: 100px !important;
  }
  .u-ml-auto-pc {
    margin-left: auto !important;
  }
  .u-ml-1em-pc {
    margin-left: 1em !important;
  }
  .u-ml-2em-pc {
    margin-left: 2em !important;
  }
}
@media screen and (min-width: 768px) and (max-width: 991px) {
  .u-ml-0-tab {
    margin-left: 0px !important;
  }
  .u-ml-5-tab {
    margin-left: 5px !important;
  }
  .u-ml-10-tab {
    margin-left: 10px !important;
  }
  .u-ml-15-tab {
    margin-left: 15px !important;
  }
  .u-ml-20-tab {
    margin-left: 20px !important;
  }
  .u-ml-25-tab {
    margin-left: 25px !important;
  }
  .u-ml-30-tab {
    margin-left: 30px !important;
  }
  .u-ml-40-tab {
    margin-left: 40px !important;
  }
  .u-ml-50-tab {
    margin-left: 50px !important;
  }
  .u-ml-60-tab {
    margin-left: 60px !important;
  }
  .u-ml-70-tab {
    margin-left: 70px !important;
  }
  .u-ml-80-tab {
    margin-left: 80px !important;
  }
  .u-ml-90-tab {
    margin-left: 90px !important;
  }
  .u-ml-100-tab {
    margin-left: 100px !important;
  }
  .u-ml-auto-tab {
    margin-left: auto !important;
  }
  .u-ml-1em-tab {
    margin-left: 1em !important;
  }
  .u-ml-2em-tab {
    margin-left: 2em !important;
  }
}
@media screen and (max-width: 767px) {
  .u-ml-0-sp {
    margin-left: 0px !important;
  }
  .u-ml-5-sp {
    margin-left: 5px !important;
  }
  .u-ml-10-sp {
    margin-left: 10px !important;
  }
  .u-ml-15-sp {
    margin-left: 15px !important;
  }
  .u-ml-20-sp {
    margin-left: 20px !important;
  }
  .u-ml-25-sp {
    margin-left: 25px !important;
  }
  .u-ml-30-sp {
    margin-left: 30px !important;
  }
  .u-ml-40-sp {
    margin-left: 40px !important;
  }
  .u-ml-50-sp {
    margin-left: 50px !important;
  }
  .u-ml-60-sp {
    margin-left: 60px !important;
  }
  .u-ml-70-sp {
    margin-left: 70px !important;
  }
  .u-ml-80-sp {
    margin-left: 80px !important;
  }
  .u-ml-90-sp {
    margin-left: 90px !important;
  }
  .u-ml-100-sp {
    margin-left: 100px !important;
  }
  .u-ml-auto-sp {
    margin-left: auto !important;
  }
  .u-ml-1em-sp {
    margin-left: 1em !important;
  }
  .u-ml-2em-sp {
    margin-left: 2em !important;
  }
}

@media (min-width: 0px) {
  .u-mr-0 {
    margin-right: 0px !important;
  }
  .u-mr-5 {
    margin-right: 5px !important;
  }
  .u-mr-10 {
    margin-right: 10px !important;
  }
  .u-mr-15 {
    margin-right: 15px !important;
  }
  .u-mr-20 {
    margin-right: 20px !important;
  }
  .u-mr-25 {
    margin-right: 25px !important;
  }
  .u-mr-30 {
    margin-right: 30px !important;
  }
  .u-mr-40 {
    margin-right: 40px !important;
  }
  .u-mr-50 {
    margin-right: 50px !important;
  }
  .u-mr-60 {
    margin-right: 60px !important;
  }
  .u-mr-70 {
    margin-right: 70px !important;
  }
  .u-mr-80 {
    margin-right: 80px !important;
  }
  .u-mr-90 {
    margin-right: 90px !important;
  }
  .u-mr-100 {
    margin-right: 100px !important;
  }
  .u-mr-auto {
    margin-right: auto !important;
  }
  .u-mr-1em {
    margin-right: 1em !important;
  }
  .u-mr-2em {
    margin-right: 2em !important;
  }
}
@media (min-width: 768px) {
  .u-mr-0-pc {
    margin-right: 0px !important;
  }
  .u-mr-5-pc {
    margin-right: 5px !important;
  }
  .u-mr-10-pc {
    margin-right: 10px !important;
  }
  .u-mr-15-pc {
    margin-right: 15px !important;
  }
  .u-mr-20-pc {
    margin-right: 20px !important;
  }
  .u-mr-25-pc {
    margin-right: 25px !important;
  }
  .u-mr-30-pc {
    margin-right: 30px !important;
  }
  .u-mr-40-pc {
    margin-right: 40px !important;
  }
  .u-mr-50-pc {
    margin-right: 50px !important;
  }
  .u-mr-60-pc {
    margin-right: 60px !important;
  }
  .u-mr-70-pc {
    margin-right: 70px !important;
  }
  .u-mr-80-pc {
    margin-right: 80px !important;
  }
  .u-mr-90-pc {
    margin-right: 90px !important;
  }
  .u-mr-100-pc {
    margin-right: 100px !important;
  }
  .u-mr-auto-pc {
    margin-right: auto !important;
  }
  .u-mr-1em-pc {
    margin-right: 1em !important;
  }
  .u-mr-2em-pc {
    margin-right: 2em !important;
  }
}
@media screen and (min-width: 768px) and (max-width: 991px) {
  .u-mr-0-tab {
    margin-right: 0px !important;
  }
  .u-mr-5-tab {
    margin-right: 5px !important;
  }
  .u-mr-10-tab {
    margin-right: 10px !important;
  }
  .u-mr-15-tab {
    margin-right: 15px !important;
  }
  .u-mr-20-tab {
    margin-right: 20px !important;
  }
  .u-mr-25-tab {
    margin-right: 25px !important;
  }
  .u-mr-30-tab {
    margin-right: 30px !important;
  }
  .u-mr-40-tab {
    margin-right: 40px !important;
  }
  .u-mr-50-tab {
    margin-right: 50px !important;
  }
  .u-mr-60-tab {
    margin-right: 60px !important;
  }
  .u-mr-70-tab {
    margin-right: 70px !important;
  }
  .u-mr-80-tab {
    margin-right: 80px !important;
  }
  .u-mr-90-tab {
    margin-right: 90px !important;
  }
  .u-mr-100-tab {
    margin-right: 100px !important;
  }
  .u-mr-auto-tab {
    margin-right: auto !important;
  }
  .u-mr-1em-tab {
    margin-right: 1em !important;
  }
  .u-mr-2em-tab {
    margin-right: 2em !important;
  }
}
@media screen and (max-width: 767px) {
  .u-mr-0-sp {
    margin-right: 0px !important;
  }
  .u-mr-5-sp {
    margin-right: 5px !important;
  }
  .u-mr-10-sp {
    margin-right: 10px !important;
  }
  .u-mr-15-sp {
    margin-right: 15px !important;
  }
  .u-mr-20-sp {
    margin-right: 20px !important;
  }
  .u-mr-25-sp {
    margin-right: 25px !important;
  }
  .u-mr-30-sp {
    margin-right: 30px !important;
  }
  .u-mr-40-sp {
    margin-right: 40px !important;
  }
  .u-mr-50-sp {
    margin-right: 50px !important;
  }
  .u-mr-60-sp {
    margin-right: 60px !important;
  }
  .u-mr-70-sp {
    margin-right: 70px !important;
  }
  .u-mr-80-sp {
    margin-right: 80px !important;
  }
  .u-mr-90-sp {
    margin-right: 90px !important;
  }
  .u-mr-100-sp {
    margin-right: 100px !important;
  }
  .u-mr-auto-sp {
    margin-right: auto !important;
  }
  .u-mr-1em-sp {
    margin-right: 1em !important;
  }
  .u-mr-2em-sp {
    margin-right: 2em !important;
  }
}

@media (min-width: 0px) {
  .u-mx-0 {
    margin-left: 0px !important;
    margin-right: 0px !important;
  }
  .u-mx-2 {
    margin-left: 2px !important;
    margin-right: 2px !important;
  }
  .u-mx-5 {
    margin-left: 5px !important;
    margin-right: 5px !important;
  }
  .u-mx-10 {
    margin-left: 10px !important;
    margin-right: 10px !important;
  }
  .u-mx-15 {
    margin-left: 15px !important;
    margin-right: 15px !important;
  }
  .u-mx-20 {
    margin-left: 20px !important;
    margin-right: 20px !important;
  }
  .u-mx-25 {
    margin-left: 25px !important;
    margin-right: 25px !important;
  }
  .u-mx-30 {
    margin-left: 30px !important;
    margin-right: 30px !important;
  }
  .u-mx-40 {
    margin-left: 40px !important;
    margin-right: 40px !important;
  }
  .u-mx-50 {
    margin-left: 50px !important;
    margin-right: 50px !important;
  }
  .u-mx-60 {
    margin-left: 60px !important;
    margin-right: 60px !important;
  }
  .u-mx-70 {
    margin-left: 70px !important;
    margin-right: 70px !important;
  }
  .u-mx-80 {
    margin-left: 80px !important;
    margin-right: 80px !important;
  }
  .u-mx-90 {
    margin-left: 90px !important;
    margin-right: 90px !important;
  }
  .u-mx-100 {
    margin-left: 100px !important;
    margin-right: 100px !important;
  }
  .u-mx-auto {
    margin-left: auto !important;
    margin-right: auto !important;
  }
}
@media (min-width: 768px) {
  .u-mx-0-pc {
    margin-left: 0px !important;
    margin-right: 0px !important;
  }
  .u-mx-2-pc {
    margin-left: 2px !important;
    margin-right: 2px !important;
  }
  .u-mx-5-pc {
    margin-left: 5px !important;
    margin-right: 5px !important;
  }
  .u-mx-10-pc {
    margin-left: 10px !important;
    margin-right: 10px !important;
  }
  .u-mx-15-pc {
    margin-left: 15px !important;
    margin-right: 15px !important;
  }
  .u-mx-20-pc {
    margin-left: 20px !important;
    margin-right: 20px !important;
  }
  .u-mx-25-pc {
    margin-left: 25px !important;
    margin-right: 25px !important;
  }
  .u-mx-30-pc {
    margin-left: 30px !important;
    margin-right: 30px !important;
  }
  .u-mx-40-pc {
    margin-left: 40px !important;
    margin-right: 40px !important;
  }
  .u-mx-50-pc {
    margin-left: 50px !important;
    margin-right: 50px !important;
  }
  .u-mx-60-pc {
    margin-left: 60px !important;
    margin-right: 60px !important;
  }
  .u-mx-70-pc {
    margin-left: 70px !important;
    margin-right: 70px !important;
  }
  .u-mx-80-pc {
    margin-left: 80px !important;
    margin-right: 80px !important;
  }
  .u-mx-90-pc {
    margin-left: 90px !important;
    margin-right: 90px !important;
  }
  .u-mx-100-pc {
    margin-left: 100px !important;
    margin-right: 100px !important;
  }
  .u-mx-auto-pc {
    margin-left: auto !important;
    margin-right: auto !important;
  }
}
@media screen and (min-width: 768px) and (max-width: 991px) {
  .u-mx-0-tab {
    margin-left: 0px !important;
    margin-right: 0px !important;
  }
  .u-mx-2-tab {
    margin-left: 2px !important;
    margin-right: 2px !important;
  }
  .u-mx-5-tab {
    margin-left: 5px !important;
    margin-right: 5px !important;
  }
  .u-mx-10-tab {
    margin-left: 10px !important;
    margin-right: 10px !important;
  }
  .u-mx-15-tab {
    margin-left: 15px !important;
    margin-right: 15px !important;
  }
  .u-mx-20-tab {
    margin-left: 20px !important;
    margin-right: 20px !important;
  }
  .u-mx-25-tab {
    margin-left: 25px !important;
    margin-right: 25px !important;
  }
  .u-mx-30-tab {
    margin-left: 30px !important;
    margin-right: 30px !important;
  }
  .u-mx-40-tab {
    margin-left: 40px !important;
    margin-right: 40px !important;
  }
  .u-mx-50-tab {
    margin-left: 50px !important;
    margin-right: 50px !important;
  }
  .u-mx-60-tab {
    margin-left: 60px !important;
    margin-right: 60px !important;
  }
  .u-mx-70-tab {
    margin-left: 70px !important;
    margin-right: 70px !important;
  }
  .u-mx-80-tab {
    margin-left: 80px !important;
    margin-right: 80px !important;
  }
  .u-mx-90-tab {
    margin-left: 90px !important;
    margin-right: 90px !important;
  }
  .u-mx-100-tab {
    margin-left: 100px !important;
    margin-right: 100px !important;
  }
  .u-mx-auto-tab {
    margin-left: auto !important;
    margin-right: auto !important;
  }
}
@media screen and (max-width: 767px) {
  .u-mx-0-sp {
    margin-left: 0px !important;
    margin-right: 0px !important;
  }
  .u-mx-2-sp {
    margin-left: 2px !important;
    margin-right: 2px !important;
  }
  .u-mx-5-sp {
    margin-left: 5px !important;
    margin-right: 5px !important;
  }
  .u-mx-10-sp {
    margin-left: 10px !important;
    margin-right: 10px !important;
  }
  .u-mx-15-sp {
    margin-left: 15px !important;
    margin-right: 15px !important;
  }
  .u-mx-20-sp {
    margin-left: 20px !important;
    margin-right: 20px !important;
  }
  .u-mx-25-sp {
    margin-left: 25px !important;
    margin-right: 25px !important;
  }
  .u-mx-30-sp {
    margin-left: 30px !important;
    margin-right: 30px !important;
  }
  .u-mx-40-sp {
    margin-left: 40px !important;
    margin-right: 40px !important;
  }
  .u-mx-50-sp {
    margin-left: 50px !important;
    margin-right: 50px !important;
  }
  .u-mx-60-sp {
    margin-left: 60px !important;
    margin-right: 60px !important;
  }
  .u-mx-70-sp {
    margin-left: 70px !important;
    margin-right: 70px !important;
  }
  .u-mx-80-sp {
    margin-left: 80px !important;
    margin-right: 80px !important;
  }
  .u-mx-90-sp {
    margin-left: 90px !important;
    margin-right: 90px !important;
  }
  .u-mx-100-sp {
    margin-left: 100px !important;
    margin-right: 100px !important;
  }
  .u-mx-auto-sp {
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* パディング
-----------------------*/
@media (min-width: 0px) {
  .u-pt-0 {
    padding-top: 0px !important;
  }
  .u-pt-5 {
    padding-top: 5px !important;
  }
  .u-pt-10 {
    padding-top: 10px !important;
  }
  .u-pt-15 {
    padding-top: 15px !important;
  }
  .u-pt-20 {
    padding-top: 20px !important;
  }
  .u-pt-25 {
    padding-top: 25px !important;
  }
  .u-pt-30 {
    padding-top: 30px !important;
  }
  .u-pt-40 {
    padding-top: 40px !important;
  }
  .u-pt-50 {
    padding-top: 50px !important;
  }
  .u-pt-60 {
    padding-top: 60px !important;
  }
  .u-pt-70 {
    padding-top: 70px !important;
  }
  .u-pt-80 {
    padding-top: 80px !important;
  }
  .u-pt-90 {
    padding-top: 90px !important;
  }
  .u-pt-100 {
    padding-top: 100px !important;
  }
  .u-pt-120 {
    padding-top: 120px !important;
  }
}
@media (min-width: 768px) {
  .u-pt-0-pc {
    padding-top: 0px !important;
  }
  .u-pt-5-pc {
    padding-top: 5px !important;
  }
  .u-pt-10-pc {
    padding-top: 10px !important;
  }
  .u-pt-15-pc {
    padding-top: 15px !important;
  }
  .u-pt-20-pc {
    padding-top: 20px !important;
  }
  .u-pt-25-pc {
    padding-top: 25px !important;
  }
  .u-pt-30-pc {
    padding-top: 30px !important;
  }
  .u-pt-40-pc {
    padding-top: 40px !important;
  }
  .u-pt-50-pc {
    padding-top: 50px !important;
  }
  .u-pt-60-pc {
    padding-top: 60px !important;
  }
  .u-pt-70-pc {
    padding-top: 70px !important;
  }
  .u-pt-80-pc {
    padding-top: 80px !important;
  }
  .u-pt-90-pc {
    padding-top: 90px !important;
  }
  .u-pt-100-pc {
    padding-top: 100px !important;
  }
}
@media screen and (min-width: 768px) and (max-width: 991px) {
  .u-pt-0-tab {
    padding-top: 0px !important;
  }
  .u-pt-5-tab {
    padding-top: 5px !important;
  }
  .u-pt-10-tab {
    padding-top: 10px !important;
  }
  .u-pt-15-tab {
    padding-top: 15px !important;
  }
  .u-pt-20-tab {
    padding-top: 20px !important;
  }
  .u-pt-25-tab {
    padding-top: 25px !important;
  }
  .u-pt-30-tab {
    padding-top: 30px !important;
  }
  .u-pt-40-tab {
    padding-top: 40px !important;
  }
  .u-pt-50-tab {
    padding-top: 50px !important;
  }
  .u-pt-60-tab {
    padding-top: 60px !important;
  }
  .u-pt-70-tab {
    padding-top: 70px !important;
  }
  .u-pt-80-tab {
    padding-top: 80px !important;
  }
  .u-pt-90-tab {
    padding-top: 90px !important;
  }
  .u-pt-100-tab {
    padding-top: 100px !important;
  }
}
@media screen and (max-width: 767px) {
  .u-pt-0-sp {
    padding-top: 0px !important;
  }
  .u-pt-5-sp {
    padding-top: 5px !important;
  }
  .u-pt-10-sp {
    padding-top: 10px !important;
  }
  .u-pt-15-sp {
    padding-top: 15px !important;
  }
  .u-pt-20-sp {
    padding-top: 20px !important;
  }
  .u-pt-25-sp {
    padding-top: 25px !important;
  }
  .u-pt-30-sp {
    padding-top: 30px !important;
  }
  .u-pt-40-sp {
    padding-top: 40px !important;
  }
  .u-pt-50-sp {
    padding-top: 50px !important;
  }
  .u-pt-60-sp {
    padding-top: 60px !important;
  }
  .u-pt-70-sp {
    padding-top: 70px !important;
  }
  .u-pt-80-sp {
    padding-top: 80px !important;
  }
  .u-pt-90-sp {
    padding-top: 90px !important;
  }
  .u-pt-100-sp {
    padding-top: 100px !important;
  }
}

@media (min-width: 0px) {
  .u-pb-0 {
    padding-bottom: 0px !important;
  }
  .u-pb-5 {
    padding-bottom: 5px !important;
  }
  .u-pb-10 {
    padding-bottom: 10px !important;
  }
  .u-pb-15 {
    padding-bottom: 15px !important;
  }
  .u-pb-20 {
    padding-bottom: 20px !important;
  }
  .u-pb-25 {
    padding-bottom: 25px !important;
  }
  .u-pb-30 {
    padding-bottom: 30px !important;
  }
  .u-pb-40 {
    padding-bottom: 40px !important;
  }
  .u-pb-50 {
    padding-bottom: 50px !important;
  }
  .u-pb-60 {
    padding-bottom: 60px !important;
  }
  .u-pb-70 {
    padding-bottom: 70px !important;
  }
  .u-pb-80 {
    padding-bottom: 80px !important;
  }
  .u-pb-90 {
    padding-bottom: 90px !important;
  }
  .u-pb-100 {
    padding-bottom: 100px !important;
  }
}
@media (min-width: 768px) {
  .u-pb-0-pc {
    padding-bottom: 0px !important;
  }
  .u-pb-5-pc {
    padding-bottom: 5px !important;
  }
  .u-pb-10-pc {
    padding-bottom: 10px !important;
  }
  .u-pb-15-pc {
    padding-bottom: 15px !important;
  }
  .u-pb-20-pc {
    padding-bottom: 20px !important;
  }
  .u-pb-25-pc {
    padding-bottom: 25px !important;
  }
  .u-pb-30-pc {
    padding-bottom: 30px !important;
  }
  .u-pb-40-pc {
    padding-bottom: 40px !important;
  }
  .u-pb-50-pc {
    padding-bottom: 50px !important;
  }
  .u-pb-60-pc {
    padding-bottom: 60px !important;
  }
  .u-pb-70-pc {
    padding-bottom: 70px !important;
  }
  .u-pb-80-pc {
    padding-bottom: 80px !important;
  }
  .u-pb-90-pc {
    padding-bottom: 90px !important;
  }
  .u-pb-100-pc {
    padding-bottom: 100px !important;
  }
  .u-pb-200-pc {
    padding-bottom: 200px !important;
  }
}
@media screen and (min-width: 768px) and (max-width: 991px) {
  .u-pb-0-tab {
    padding-bottom: 0px !important;
  }
  .u-pb-5-tab {
    padding-bottom: 5px !important;
  }
  .u-pb-10-tab {
    padding-bottom: 10px !important;
  }
  .u-pb-15-tab {
    padding-bottom: 15px !important;
  }
  .u-pb-20-tab {
    padding-bottom: 20px !important;
  }
  .u-pb-25-tab {
    padding-bottom: 25px !important;
  }
  .u-pb-30-tab {
    padding-bottom: 30px !important;
  }
  .u-pb-40-tab {
    padding-bottom: 40px !important;
  }
  .u-pb-50-tab {
    padding-bottom: 50px !important;
  }
  .u-pb-60-tab {
    padding-bottom: 60px !important;
  }
  .u-pb-70-tab {
    padding-bottom: 70px !important;
  }
  .u-pb-80-tab {
    padding-bottom: 80px !important;
  }
  .u-pb-90-sp {
    padding-bottom: 90px !important;
  }
  .u-pb-100-tab {
    padding-bottom: 100px !important;
  }
}
@media screen and (max-width: 767px) {
  .u-pb-0-sp {
    padding-bottom: 0px !important;
  }
  .u-pb-5-sp {
    padding-bottom: 5px !important;
  }
  .u-pb-10-sp {
    padding-bottom: 10px !important;
  }
  .u-pb-15-sp {
    padding-bottom: 15px !important;
  }
  .u-pb-20-sp {
    padding-bottom: 20px !important;
  }
  .u-pb-25-sp {
    padding-bottom: 25px !important;
  }
  .u-pb-30-sp {
    padding-bottom: 30px !important;
  }
  .u-pb-40-sp {
    padding-bottom: 40px !important;
  }
  .u-pb-50-sp {
    padding-bottom: 50px !important;
  }
  .u-pb-60-sp {
    padding-bottom: 60px !important;
  }
  .u-pb-70-sp {
    padding-bottom: 70px !important;
  }
  .u-pb-80-sp {
    padding-bottom: 80px !important;
  }
  .u-pb-90-sp {
    padding-bottom: 90px !important;
  }
  .u-pb-100-sp {
    padding-bottom: 100px !important;
  }
}

@media (min-width: 0px) {
  .u-py-0 {
    padding-top: 0px !important;
    padding-bottom: 0px !important;
  }
  .u-py-5 {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
  }
  .u-py-10 {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }
  .u-py-15 {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
  }
  .u-py-20 {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
  .u-py-25 {
    padding-top: 25px !important;
    padding-bottom: 25px !important;
  }
  .u-py-30 {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
  .u-py-40 {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
  }
  .u-py-50 {
    padding-top: 50px !important;
    padding-bottom: 50px !important;
  }
  .u-py-60 {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
  }
  .u-py-70 {
    padding-top: 70px !important;
    padding-bottom: 70px !important;
  }
  .u-py-80 {
    padding-top: 80px !important;
    padding-bottom: 80px !important;
  }
  .u-py-90 {
    padding-top: 90px !important;
    padding-bottom: 90px !important;
  }
  .u-py-100 {
    padding-top: 100px !important;
    padding-bottom: 100px !important;
  }
}
@media (min-width: 768px) {
  .u-py-0-pc {
    padding-top: 0px !important;
    padding-bottom: 0px !important;
  }
  .u-py-5-pc {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
  }
  .u-py-10-pc {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }
  .u-py-15-pc {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
  }
  .u-py-20-pc {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
  .u-py-25-pc {
    padding-top: 25px !important;
    padding-bottom: 25px !important;
  }
  .u-py-30-pc {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
  .u-py-40-pc {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
  }
  .u-py-50-pc {
    padding-top: 50px !important;
    padding-bottom: 50px !important;
  }
  .u-py-60-pc {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
  }
  .u-py-70-pc {
    padding-top: 70px !important;
    padding-bottom: 70px !important;
  }
  .u-py-80-pc {
    padding-top: 80px !important;
    padding-bottom: 80px !important;
  }
  .u-py-90-pc {
    padding-top: 90px !important;
    padding-bottom: 90px !important;
  }
  .u-py-100-pc {
    padding-top: 100px !important;
    padding-bottom: 100px !important;
  }
}
@media screen and (min-width: 768px) and (max-width: 991px) {
  .u-py-0-tab {
    padding-top: 0px !important;
    padding-bottom: 0px !important;
  }
  .u-py-5-tab {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
  }
  .u-py-10-tab {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }
  .u-py-15-tab {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
  }
  .u-py-20-tab {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
  .u-py-25-tab {
    padding-top: 25px !important;
    padding-bottom: 25px !important;
  }
  .u-py-30-tab {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
  .u-py-40-tab {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
  }
  .u-py-50-tab {
    padding-top: 50px !important;
    padding-bottom: 50px !important;
  }
  .u-py-60-tab {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
  }
  .u-py-70-tab {
    padding-top: 70px !important;
    padding-bottom: 70px !important;
  }
  .u-py-80-tab {
    padding-top: 80px !important;
    padding-bottom: 80px !important;
  }
  .u-py-90-tab {
    padding-top: 90px !important;
    padding-bottom: 90px !important;
  }
  .u-py-100-tab {
    padding-top: 100px !important;
    padding-bottom: 100px !important;
  }
}
@media screen and (max-width: 767px) {
  .u-py-0-sp {
    padding-top: 0px !important;
    padding-bottom: 0px !important;
  }
  .u-py-5-sp {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
  }
  .u-py-10-sp {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }
  .u-py-15-sp {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
  }
  .u-py-20-sp {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
  .u-py-25-sp {
    padding-top: 25px !important;
    padding-bottom: 25px !important;
  }
  .u-py-30-sp {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
  .u-py-40-sp {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
  }
  .u-py-50-sp {
    padding-top: 50px !important;
    padding-bottom: 50px !important;
  }
  .u-py-60-sp {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
  }
  .u-py-70-sp {
    padding-top: 70px !important;
    padding-bottom: 70px !important;
  }
  .u-py-80-sp {
    padding-top: 80px !important;
    padding-bottom: 80px !important;
  }
  .u-py-90-sp {
    padding-top: 90px !important;
    padding-bottom: 90px !important;
  }
  .u-py-100-sp {
    padding-top: 100px !important;
    padding-bottom: 100px !important;
  }
}

@media (min-width: 0px) {
  .u-pl-0 {
    padding-left: 0px !important;
  }
  .u-pl-5 {
    padding-left: 5px !important;
  }
  .u-pl-10 {
    padding-left: 10px !important;
  }
  .u-pl-15 {
    padding-left: 15px !important;
  }
  .u-pl-20 {
    padding-left: 20px !important;
  }
  .u-pl-22 {
    padding-left: 22px !important;
  }
  .u-pl-25 {
    padding-left: 25px !important;
  }
  .u-pl-30 {
    padding-left: 30px !important;
  }
  .u-pl-40 {
    padding-left: 40px !important;
  }
  .u-pl-50 {
    padding-left: 50px !important;
  }
  .u-pl-60 {
    padding-left: 60px !important;
  }
  .u-pl-70 {
    padding-left: 70px !important;
  }
  .u-pl-80 {
    padding-left: 80px !important;
  }
  .u-pl-90 {
    padding-left: 90px !important;
  }
  .u-pl-100 {
    padding-left: 100px !important;
  }
}
@media (min-width: 768px) {
  .u-pl-0-pc {
    padding-left: 0px !important;
  }
  .u-pl-5-pc {
    padding-left: 5px !important;
  }
  .u-pl-10-pc {
    padding-left: 10px !important;
  }
  .u-pl-15-pc {
    padding-left: 15px !important;
  }
  .u-pl-20-pc {
    padding-left: 20px !important;
  }
  .u-pl-22-pc {
    padding-left: 22px !important;
  }
  .u-pl-25-pc {
    padding-left: 25px !important;
  }
  .u-pl-30-pc {
    padding-left: 30px !important;
  }
  .u-pl-40-pc {
    padding-left: 40px !important;
  }
  .u-pl-50-pc {
    padding-left: 50px !important;
  }
  .u-pl-60-pc {
    padding-left: 60px !important;
  }
  .u-pl-70-pc {
    padding-left: 70px !important;
  }
  .u-pl-80-pc {
    padding-left: 80px !important;
  }
  .u-pl-90-pc {
    padding-left: 90px !important;
  }
  .u-pl-100-pc {
    padding-left: 100px !important;
  }
}
@media screen and (min-width: 768px) and (max-width: 991px) {
  .u-pl-0-tab {
    padding-left: 0px !important;
  }
  .u-pl-5-tab {
    padding-left: 5px !important;
  }
  .u-pl-10-tab {
    padding-left: 10px !important;
  }
  .u-pl-15-tab {
    padding-left: 15px !important;
  }
  .u-pl-20-tab {
    padding-left: 20px !important;
  }
  .u-pl-22-tab {
    padding-left: 22px !important;
  }
  .u-pl-25-tab {
    padding-left: 25px !important;
  }
  .u-pl-30-tab {
    padding-left: 30px !important;
  }
  .u-pl-40-tab {
    padding-left: 40px !important;
  }
  .u-pl-50-tab {
    padding-left: 50px !important;
  }
  .u-pl-60-tab {
    padding-left: 60px !important;
  }
  .u-pl-70-tab {
    padding-left: 70px !important;
  }
  .u-pl-80-tab {
    padding-left: 80px !important;
  }
  .u-pl-90-tab {
    padding-left: 90px !important;
  }
  .u-pl-100-tab {
    padding-left: 100px !important;
  }
}
@media screen and (max-width: 767px) {
  .u-pl-0-sp {
    padding-left: 0px !important;
  }
  .u-pl-5-sp {
    padding-left: 5px !important;
  }
  .u-pl-10-sp {
    padding-left: 10px !important;
  }
  .u-pl-15-sp {
    padding-left: 15px !important;
  }
  .u-pl-20-sp {
    padding-left: 20px !important;
  }
  .u-pl-22-sp {
    padding-left: 22px !important;
  }
  .u-pl-25-sp {
    padding-left: 25px !important;
  }
  .u-pl-30-sp {
    padding-left: 30px !important;
  }
  .u-pl-40-sp {
    padding-left: 40px !important;
  }
  .u-pl-50-sp {
    padding-left: 50px !important;
  }
  .u-pl-60-sp {
    padding-left: 60px !important;
  }
  .u-pl-70-sp {
    padding-left: 70px !important;
  }
  .u-pl-80-sp {
    padding-left: 80px !important;
  }
  .u-pl-90-sp {
    padding-left: 90px !important;
  }
  .u-pl-100-sp {
    padding-left: 100px !important;
  }
}

@media (min-width: 0px) {
  .u-pr-0 {
    padding-right: 0px !important;
  }
  .u-pr-5 {
    padding-right: 5px !important;
  }
  .u-pr-10 {
    padding-right: 10px !important;
  }
  .u-pr-15 {
    padding-right: 15px !important;
  }
  .u-pr-20 {
    padding-right: 20px !important;
  }
  .u-pr-22 {
    padding-right: 22px !important;
  }
  .u-pr-25 {
    padding-right: 25px !important;
  }
  .u-pr-30 {
    padding-right: 30px !important;
  }
  .u-pr-40 {
    padding-right: 40px !important;
  }
  .u-pr-50 {
    padding-right: 50px !important;
  }
  .u-pr-60 {
    padding-right: 60px !important;
  }
  .u-pr-70 {
    padding-right: 70px !important;
  }
  .u-pr-80 {
    padding-right: 80px !important;
  }
  .u-pr-90 {
    padding-right: 90px !important;
  }
  .u-pr-100 {
    padding-right: 100px !important;
  }
}
@media (min-width: 768px) {
  .u-pr-0-pc {
    padding-right: 0px !important;
  }
  .u-pr-5-pc {
    padding-right: 5px !important;
  }
  .u-pr-10-pc {
    padding-right: 10px !important;
  }
  .u-pr-15-pc {
    padding-right: 15px !important;
  }
  .u-pr-20-pc {
    padding-right: 20px !important;
  }
  .u-pr-22-pc {
    padding-right: 22px !important;
  }
  .u-pr-25-pc {
    padding-right: 25px !important;
  }
  .u-pr-30-pc {
    padding-right: 30px !important;
  }
  .u-pr-40-pc {
    padding-right: 40px !important;
  }
  .u-pr-50-pc {
    padding-right: 50px !important;
  }
  .u-pr-60-pc {
    padding-right: 60px !important;
  }
  .u-pr-70-pc {
    padding-right: 70px !important;
  }
  .u-pr-80-pc {
    padding-right: 80px !important;
  }
  .u-pr-90-pc {
    padding-right: 90px !important;
  }
  .u-pr-100-pc {
    padding-right: 100px !important;
  }
}
@media screen and (min-width: 768px) and (max-width: 991px) {
  .u-pr-0-tab {
    padding-right: 0px !important;
  }
  .u-pr-5-tab {
    padding-right: 5px !important;
  }
  .u-pr-10-tab {
    padding-right: 10px !important;
  }
  .u-pr-15-tab {
    padding-right: 15px !important;
  }
  .u-pr-20-tab {
    padding-right: 20px !important;
  }
  .u-pr-22-tab {
    padding-right: 22px !important;
  }
  .u-pr-25-tab {
    padding-right: 25px !important;
  }
  .u-pr-30-tab {
    padding-right: 30px !important;
  }
  .u-pr-40-tab {
    padding-right: 40px !important;
  }
  .u-pr-50-tab {
    padding-right: 50px !important;
  }
  .u-pr-60-tab {
    padding-right: 60px !important;
  }
  .u-pr-70-tab {
    padding-right: 70px !important;
  }
  .u-pr-80-tab {
    padding-right: 80px !important;
  }
  .u-pr-90-tab {
    padding-right: 90px !important;
  }
  .u-pr-100-tab {
    padding-right: 100px !important;
  }
}
@media screen and (max-width: 767px) {
  .u-pr-0-sp {
    padding-right: 0px !important;
  }
  .u-pr-5-sp {
    padding-right: 5px !important;
  }
  .u-pr-10-sp {
    padding-right: 10px !important;
  }
  .u-pr-15-sp {
    padding-right: 15px !important;
  }
  .u-pr-20-sp {
    padding-right: 20px !important;
  }
  .u-pr-22-sp {
    padding-right: 22px !important;
  }
  .u-pr-25-sp {
    padding-right: 25px !important;
  }
  .u-pr-30-sp {
    padding-right: 30px !important;
  }
  .u-pr-40-sp {
    padding-right: 40px !important;
  }
  .u-pr-50-sp {
    padding-right: 50px !important;
  }
  .u-pr-60-sp {
    padding-right: 60px !important;
  }
  .u-pr-70-sp {
    padding-right: 70px !important;
  }
  .u-pr-80-sp {
    padding-right: 80px !important;
  }
  .u-pr-90-sp {
    padding-right: 90px !important;
  }
  .u-pr-100-sp {
    padding-right: 100px !important;
  }
}

@media (min-width: 0px) {
  .u-px-0 {
    padding-left: 0px !important;
    padding-right: 0px !important;
  }
  .u-px-5 {
    padding-left: 5px !important;
    padding-right: 5px !important;
  }
  .u-px-10 {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
  .u-px-15 {
    padding-left: 15px !important;
    padding-right: 15px !important;
  }
  .u-px-20 {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  .u-px-25 {
    padding-left: 25px !important;
    padding-right: 25px !important;
  }
  .u-px-30 {
    padding-left: 30px !important;
    padding-right: 30px !important;
  }
  .u-px-40 {
    padding-left: 40px !important;
    padding-right: 40px !important;
  }
  .u-px-50 {
    padding-left: 50px !important;
    padding-right: 50px !important;
  }
  .u-px-60 {
    padding-left: 60px !important;
    padding-right: 60px !important;
  }
  .u-px-70 {
    padding-left: 70px !important;
    padding-right: 70px !important;
  }
  .u-px-80 {
    padding-left: 80px !important;
    padding-right: 80px !important;
  }
  .u-px-90 {
    padding-left: 90px !important;
    padding-right: 90px !important;
  }
  .u-px-100 {
    padding-left: 100px !important;
    padding-right: 100px !important;
  }
}
@media (min-width: 768px) {
  .u-px-0-pc {
    padding-left: 0px !important;
    padding-right: 0px !important;
  }
  .u-px-5-pc {
    padding-left: 5px !important;
    padding-right: 5px !important;
  }
  .u-px-10-pc {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
  .u-px-15-pc {
    padding-left: 15px !important;
    padding-right: 15px !important;
  }
  .u-px-20-pc {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  .u-px-25-pc {
    padding-left: 25px !important;
    padding-right: 25px !important;
  }
  .u-px-30-pc {
    padding-left: 30px !important;
    padding-right: 30px !important;
  }
  .u-px-40-pc {
    padding-left: 40px !important;
    padding-right: 40px !important;
  }
  .u-px-50-pc {
    padding-left: 50px !important;
    padding-right: 50px !important;
  }
  .u-px-60-pc {
    padding-left: 60px !important;
    padding-right: 60px !important;
  }
  .u-px-70-pc {
    padding-left: 70px !important;
    padding-right: 70px !important;
  }
  .u-px-80-pc {
    padding-left: 80px !important;
    padding-right: 80px !important;
  }
  .u-px-90-pc {
    padding-left: 90px !important;
    padding-right: 90px !important;
  }
  .u-px-100-pc {
    padding-left: 100px !important;
    padding-right: 100px !important;
  }
}
@media screen and (min-width: 768px) and (max-width: 991px) {
  .u-px-0-tab {
    padding-left: 0px !important;
    padding-right: 0px !important;
  }
  .u-px-5-tab {
    padding-left: 5px !important;
    padding-right: 5px !important;
  }
  .u-px-10-tab {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
  .u-px-15-tab {
    padding-left: 15px !important;
    padding-right: 15px !important;
  }
  .u-px-20-tab {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  .u-px-25-tab {
    padding-left: 25px !important;
    padding-right: 25px !important;
  }
  .u-px-30-tab {
    padding-left: 30px !important;
    padding-right: 30px !important;
  }
  .u-px-40-tab {
    padding-left: 40px !important;
    padding-right: 40px !important;
  }
  .u-px-50-tab {
    padding-left: 50px !important;
    padding-right: 50px !important;
  }
  .u-px-60-tab {
    padding-left: 60px !important;
    padding-right: 60px !important;
  }
  .u-px-70-tab {
    padding-left: 70px !important;
    padding-right: 70px !important;
  }
  .u-px-80-tab {
    padding-left: 80px !important;
    padding-right: 80px !important;
  }
  .u-px-90-tab {
    padding-left: 90px !important;
    padding-right: 90px !important;
  }
  .u-px-100-tab {
    padding-left: 100px !important;
    padding-right: 100px !important;
  }
}
@media screen and (max-width: 767px) {
  .u-px-0-sp {
    padding-left: 0px !important;
    padding-right: 0px !important;
  }
  .u-px-5-sp {
    padding-left: 5px !important;
    padding-right: 5px !important;
  }
  .u-px-10-sp {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
  .u-px-15-sp {
    padding-left: 15px !important;
    padding-right: 15px !important;
  }
  .u-px-20-sp {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  .u-px-25-sp {
    padding-left: 25px !important;
    padding-right: 25px !important;
  }
  .u-px-30-sp {
    padding-left: 30px !important;
    padding-right: 30px !important;
  }
  .u-px-40-sp {
    padding-left: 40px !important;
    padding-right: 40px !important;
  }
  .u-px-50-sp {
    padding-left: 50px !important;
    padding-right: 50px !important;
  }
  .u-px-60-sp {
    padding-left: 60px !important;
    padding-right: 60px !important;
  }
  .u-px-70-sp {
    padding-left: 70px !important;
    padding-right: 70px !important;
  }
  .u-px-80-sp {
    padding-left: 80px !important;
    padding-right: 80px !important;
  }
  .u-px-90-sp {
    padding-left: 90px !important;
    padding-right: 90px !important;
  }
  .u-px-100-sp {
    padding-left: 100px !important;
    padding-right: 100px !important;
  }
}

/* ボーダー
-----------------------*/
.u-br-50p {
  border-radius: 50% !important;
}

/* 横幅
-----------------------*/
@media (min-width: 0px) {
  .u-w-auto {
    width: auto !important;
  }
  .u-w-5p {
    width: 5% !important;
  }
  .u-w-10p {
    width: 10% !important;
  }
  .u-w-15p {
    width: 15% !important;
  }
  .u-w-20p {
    width: 20% !important;
  }
  .u-w-25p {
    width: 25% !important;
  }
  .u-w-30p {
    width: 30% !important;
  }
  .u-w-35p {
    width: 35% !important;
  }
  .u-w-40p {
    width: 40% !important;
  }
  .u-w-45p {
    width: 45% !important;
  }
  .u-w-50p {
    width: 50% !important;
  }
  .u-w-55p {
    width: 55% !important;
  }
  .u-w-60p {
    width: 60% !important;
  }
  .u-w-65p {
    width: 65% !important;
  }
  .u-w-70p {
    width: 70% !important;
  }
  .u-w-75p {
    width: 75% !important;
  }
  .u-w-80p {
    width: 80% !important;
  }
  .u-w-85p {
    width: 85% !important;
  }
  .u-w-90p {
    width: 90% !important;
  }
  .u-w-95p {
    width: 90% !important;
  }
  .u-w-100p {
    width: 100% !important;
  }
  .u-w-1 {
    width: 1px !important;
  }
  .u-w-5 {
    width: 5px !important;
  }
  .u-w-10 {
    width: 10px !important;
  }
  .u-w-15 {
    width: 15px !important;
  }
  .u-w-20 {
    width: 20px !important;
  }
  .u-w-25 {
    width: 25px !important;
  }
  .u-w-30 {
    width: 30px !important;
  }
  .u-w-35 {
    width: 35px !important;
  }
  .u-w-40 {
    width: 40px !important;
  }
  .u-w-45 {
    width: 45px !important;
  }
  .u-w-50 {
    width: 50px !important;
  }
  .u-w-55 {
    width: 55px !important;
  }
  .u-w-60 {
    width: 60px !important;
  }
  .u-w-65 {
    width: 65px !important;
  }
  .u-w-70 {
    width: 70px !important;
  }
  .u-w-75 {
    width: 75px !important;
  }
  .u-w-80 {
    width: 80px !important;
  }
  .u-w-85 {
    width: 85px !important;
  }
  .u-w-90 {
    width: 90px !important;
  }
  .u-w-95 {
    width: 95px !important;
  }
  .u-w-100 {
    width: 100px !important;
  }
  .u-w-110 {
    width: 110px !important;
  }
  .u-w-120 {
    width: 120px !important;
  }
  .u-w-130 {
    width: 130px !important;
  }
  .u-w-140 {
    width: 140px !important;
  }
  .u-w-150 {
    width: 150px !important;
  }
  .u-w-160 {
    width: 160px !important;
  }
  .u-w-170 {
    width: 170px !important;
  }
  .u-w-180 {
    width: 180px !important;
  }
  .u-w-190 {
    width: 190px !important;
  }
  .u-w-200 {
    width: 200px !important;
  }
  .u-w-210 {
    width: 210px !important;
  }
  .u-w-220 {
    width: 220px !important;
  }
  .u-w-230 {
    width: 230px !important;
  }
  .u-w-240 {
    width: 240px !important;
  }
  .u-w-250 {
    width: 250px !important;
  }
  .u-w-260 {
    width: 260px !important;
  }
  .u-w-270 {
    width: 270px !important;
  }
  .u-w-280 {
    width: 280px !important;
  }
  .u-w-290 {
    width: 290px !important;
  }
  .u-w-300 {
    width: 300px !important;
  }
  .u-w-350 {
    width: 350px !important;
  }
  .u-w-400 {
    width: 400px !important;
  }
  .u-w-450 {
    width: 450px !important;
  }
  .u-w-500 {
    width: 500px !important;
  }
  .u-w-550 {
    width: 550px !important;
  }
  .u-w-600 {
    width: 600px !important;
  }
  .u-w-650 {
    width: 650px !important;
  }
  .u-w-700 {
    width: 700px !important;
  }
  .u-w-750 {
    width: 750px !important;
  }
  .u-w-800 {
    width: 800px !important;
  }
  .u-w-850 {
    width: 850px !important;
  }
  .u-w-900 {
    width: 900px !important;
  }
  .u-w-950 {
    width: 950px !important;
  }
  .u-w-980 {
    width: 980px !important;
  }
  .u-w-1000 {
    width: 1000px !important;
  }
}
@media (min-width: 768px) {
  .u-w-auto-pc {
    width: auto !important;
  }
  .u-w-5p-pc {
    width: 5% !important;
  }
  .u-w-10p-pc {
    width: 10% !important;
  }
  .u-w-15p-pc {
    width: 15% !important;
  }
  .u-w-20p-pc {
    width: 20% !important;
  }
  .u-w-25p-pc {
    width: 25% !important;
  }
  .u-w-30p-pc {
    width: 30% !important;
  }
  .u-w-35p-pc {
    width: 35% !important;
  }
  .u-w-40p-pc {
    width: 40% !important;
  }
  .u-w-45p-pc {
    width: 45% !important;
  }
  .u-w-50p-pc {
    width: 50% !important;
  }
  .u-w-55p-pc {
    width: 55% !important;
  }
  .u-w-60p-pc {
    width: 60% !important;
  }
  .u-w-65p-pc {
    width: 65% !important;
  }
  .u-w-70p-pc {
    width: 70% !important;
  }
  .u-w-75p-pc {
    width: 75% !important;
  }
  .u-w-80p-pc {
    width: 80% !important;
  }
  .u-w-85p-pc {
    width: 85% !important;
  }
  .u-w-90p-pc {
    width: 90% !important;
  }
  .u-w-95p-pc {
    width: 90% !important;
  }
  .u-w-100p-pc {
    width: 100% !important;
  }
  .u-w-1-pc {
    width: 1px !important;
  }
  .u-w-10-pc {
    width: 10px !important;
  }
  .u-w-20-pc {
    width: 20px !important;
  }
  .u-w-30-pc {
    width: 30px !important;
  }
  .u-w-40-pc {
    width: 40px !important;
  }
  .u-w-50-pc {
    width: 50px !important;
  }
  .u-w-60-pc {
    width: 60px !important;
  }
  .u-w-70-pc {
    width: 70px !important;
  }
  .u-w-80-pc {
    width: 80px !important;
  }
  .u-w-90-pc {
    width: 90px !important;
  }
  .u-w-100-pc {
    width: 100px !important;
  }
  .u-w-110-pc {
    width: 110px !important;
  }
  .u-w-120-pc {
    width: 120px !important;
  }
  .u-w-130-pc {
    width: 130px !important;
  }
  .u-w-140-pc {
    width: 140px !important;
  }
  .u-w-150-pc {
    width: 150px !important;
  }
  .u-w-160-pc {
    width: 160px !important;
  }
  .u-w-170-pc {
    width: 170px !important;
  }
  .u-w-180-pc {
    width: 180px !important;
  }
  .u-w-190-pc {
    width: 190px !important;
  }
  .u-w-200-pc {
    width: 200px !important;
  }
  .u-w-210-pc {
    width: 210px !important;
  }
  .u-w-220-pc {
    width: 220px !important;
  }
  .u-w-230-pc {
    width: 230px !important;
  }
  .u-w-240-pc {
    width: 240px !important;
  }
  .u-w-250-pc {
    width: 250px !important;
  }
  .u-w-260-pc {
    width: 260px !important;
  }
  .u-w-270-pc {
    width: 270px !important;
  }
  .u-w-280-pc {
    width: 280px !important;
  }
  .u-w-290-pc {
    width: 290px !important;
  }
  .u-w-300-pc {
    width: 300px !important;
  }
  .u-w-350-pc {
    width: 350px !important;
  }
  .u-w-400-pc {
    width: 400px !important;
  }
  .u-w-450-pc {
    width: 450px !important;
  }
  .u-w-500-pc {
    width: 500px !important;
  }
  .u-w-550-pc {
    width: 550px !important;
  }
  .u-w-600-pc {
    width: 600px !important;
  }
  .u-w-650-pc {
    width: 650px !important;
  }
  .u-w-700-pc {
    width: 700px !important;
  }
  .u-w-750-pc {
    width: 750px !important;
  }
  .u-w-800-pc {
    width: 800px !important;
  }
  .u-w-850-pc {
    width: 850px !important;
  }
  .u-w-900-pc {
    width: 900px !important;
  }
  .u-w-950-pc {
    width: 950px !important;
  }
  .u-w-980-pc {
    width: 980px !important;
  }
  .u-w-1000-pc {
    width: 1000px !important;
  }
}
@media screen and (min-width: 768px) and (max-width: 991px) {
  .u-w-auto-tab {
    width: auto !important;
  }
  .u-w-5p-tab {
    width: 5% !important;
  }
  .u-w-10p-tab {
    width: 10% !important;
  }
  .u-w-15p-tab {
    width: 15% !important;
  }
  .u-w-20p-tab {
    width: 20% !important;
  }
  .u-w-25p-tab {
    width: 25% !important;
  }
  .u-w-30p-tab {
    width: 30% !important;
  }
  .u-w-35p-tab {
    width: 35% !important;
  }
  .u-w-40p-tab {
    width: 40% !important;
  }
  .u-w-45p-tab {
    width: 45% !important;
  }
  .u-w-50p-tab {
    width: 50% !important;
  }
  .u-w-55p-tab {
    width: 55% !important;
  }
  .u-w-60p-tab {
    width: 60% !important;
  }
  .u-w-65p-tab {
    width: 65% !important;
  }
  .u-w-70p-tab {
    width: 70% !important;
  }
  .u-w-75p-tab {
    width: 75% !important;
  }
  .u-w-80p-tab {
    width: 80% !important;
  }
  .u-w-85p-tab {
    width: 85% !important;
  }
  .u-w-90p-tab {
    width: 90% !important;
  }
  .u-w-95p-tab {
    width: 90% !important;
  }
  .u-w-100p-tab {
    width: 100% !important;
  }
  .u-w-1-tab {
    width: 1px !important;
  }
  .u-w-10-tab {
    width: 10px !important;
  }
  .u-w-20-tab {
    width: 20px !important;
  }
  .u-w-30-tab {
    width: 30px !important;
  }
  .u-w-40-tab {
    width: 40px !important;
  }
  .u-w-50-tab {
    width: 50px !important;
  }
  .u-w-60-tab {
    width: 60px !important;
  }
  .u-w-70-tab {
    width: 70px !important;
  }
  .u-w-80-tab {
    width: 80px !important;
  }
  .u-w-90-tab {
    width: 90px !important;
  }
  .u-w-100-tab {
    width: 100px !important;
  }
  .u-w-110-tab {
    width: 110px !important;
  }
  .u-w-120-tab {
    width: 120px !important;
  }
  .u-w-130-tab {
    width: 130px !important;
  }
  .u-w-140-tab {
    width: 140px !important;
  }
  .u-w-150-tab {
    width: 150px !important;
  }
  .u-w-160-tab {
    width: 160px !important;
  }
  .u-w-170-tab {
    width: 170px !important;
  }
  .u-w-180-tab {
    width: 180px !important;
  }
  .u-w-190-tab {
    width: 190px !important;
  }
  .u-w-200-tab {
    width: 200px !important;
  }
  .u-w-210-tab {
    width: 210px !important;
  }
  .u-w-220-tab {
    width: 220px !important;
  }
  .u-w-230-tab {
    width: 230px !important;
  }
  .u-w-240-tab {
    width: 240px !important;
  }
  .u-w-250-tab {
    width: 250px !important;
  }
  .u-w-260-tab {
    width: 260px !important;
  }
  .u-w-270-tab {
    width: 270px !important;
  }
  .u-w-280-tab {
    width: 280px !important;
  }
  .u-w-290-tab {
    width: 290px !important;
  }
  .u-w-300-tab {
    width: 300px !important;
  }
  .u-w-350-tab {
    width: 350px !important;
  }
  .u-w-400-tab {
    width: 400px !important;
  }
  .u-w-450-tab {
    width: 450px !important;
  }
  .u-w-500-tab {
    width: 500px !important;
  }
  .u-w-550-tab {
    width: 550px !important;
  }
  .u-w-600-tab {
    width: 600px !important;
  }
  .u-w-650-tab {
    width: 650px !important;
  }
  .u-w-700-tab {
    width: 700px !important;
  }
  .u-w-750-tab {
    width: 750px !important;
  }
  .u-w-800-tab {
    width: 800px !important;
  }
  .u-w-850-tab {
    width: 850px !important;
  }
  .u-w-900-tab {
    width: 900px !important;
  }
  .u-w-950-tab {
    width: 950px !important;
  }
  .u-w-980-tab {
    width: 980px !important;
  }
  .u-w-1000-tab {
    width: 1000px !important;
  }}
@media screen and (max-width: 767px) {
  .u-w-auto-sp {
    width: auto !important;
  }
  .u-w-5p-sp {
    width: 5% !important;
  }
  .u-w-10p-sp {
    width: 10% !important;
  }
  .u-w-15p-sp {
    width: 15% !important;
  }
  .u-w-20p-sp {
    width: 20% !important;
  }
  .u-w-25p-sp {
    width: 25% !important;
  }
  .u-w-30p-sp {
    width: 30% !important;
  }
  .u-w-35p-sp {
    width: 35% !important;
  }
  .u-w-40p-sp {
    width: 40% !important;
  }
  .u-w-45p-sp {
    width: 45% !important;
  }
  .u-w-50p-sp {
    width: 50% !important;
  }
  .u-w-55p-sp {
    width: 55% !important;
  }
  .u-w-60p-sp {
    width: 60% !important;
  }
  .u-w-65p-sp {
    width: 65% !important;
  }
  .u-w-70p-sp {
    width: 70% !important;
  }
  .u-w-75p-sp {
    width: 75% !important;
  }
  .u-w-80p-sp {
    width: 80% !important;
  }
  .u-w-85p-sp {
    width: 85% !important;
  }
  .u-w-90p-sp {
    width: 90% !important;
  }
  .u-w-95p-sp {
    width: 90% !important;
  }
  .u-w-100p-sp {
    width: 100% !important;
  }
  .u-w-1-sp {
    width: 1px !important;
  }
  .u-w-10-sp {
    width: 10px !important;
  }
  .u-w-20-sp {
    width: 20px !important;
  }
  .u-w-30-sp {
    width: 30px !important;
  }
  .u-w-40-sp {
    width: 40px !important;
  }
  .u-w-50-sp {
    width: 50px !important;
  }
  .u-w-60-sp {
    width: 60px !important;
  }
  .u-w-70-sp {
    width: 70px !important;
  }
  .u-w-80-sp {
    width: 80px !important;
  }
  .u-w-90-sp {
    width: 90px !important;
  }
  .u-w-100-sp {
    width: 100px !important;
  }
  .u-w-110-sp {
    width: 110px !important;
  }
  .u-w-120-sp {
    width: 120px !important;
  }
  .u-w-130-sp {
    width: 130px !important;
  }
  .u-w-140-sp {
    width: 140px !important;
  }
  .u-w-150-sp {
    width: 150px !important;
  }
  .u-w-160-sp {
    width: 160px !important;
  }
  .u-w-170-sp {
    width: 170px !important;
  }
  .u-w-180-sp {
    width: 180px !important;
  }
  .u-w-190-sp {
    width: 190px !important;
  }
  .u-w-200-sp {
    width: 200px !important;
  }
  .u-w-210-sp {
    width: 210px !important;
  }
  .u-w-220-sp {
    width: 220px !important;
  }
  .u-w-230-sp {
    width: 230px !important;
  }
  .u-w-240-sp {
    width: 240px !important;
  }
  .u-w-250-sp {
    width: 250px !important;
  }
  .u-w-260-sp {
    width: 260px !important;
  }
  .u-w-270-sp {
    width: 270px !important;
  }
  .u-w-280-sp {
    width: 280px !important;
  }
  .u-w-290-sp {
    width: 290px !important;
  }
  .u-w-300-sp {
    width: 300px !important;
  }
  .u-w-350-sp {
    width: 350px !important;
  }
  .u-w-400-sp {
    width: 400px !important;
  }
  .u-w-450-sp {
    width: 450px !important;
  }
  .u-w-500-sp {
    width: 500px !important;
  }
  .u-w-550-sp {
    width: 550px !important;
  }
  .u-w-600-sp {
    width: 600px !important;
  }
  .u-w-650-sp {
    width: 650px !important;
  }
  .u-w-700-sp {
    width: 700px !important;
  }
  .u-w-750-sp {
    width: 750px !important;
  }
  .u-w-800-sp {
    width: 800px !important;
  }
  .u-w-850-sp {
    width: 850px !important;
  }
  .u-w-900-sp {
    width: 900px !important;
  }
  .u-w-950-sp {
    width: 950px !important;
  }
  .u-w-980-sp {
    width: 980px !important;
  }
  .u-w-1000-sp {
    width: 1000px !important;
  }}

.u-min-w-0 {
  min-width: 0 !important;
}
@media (min-width: 768px) {
  .u-min-w-0-pc {
    min-width: 0 !important;
  }
}
@media screen and (max-width: 767px) {
  .u-min-w-0-sp {
    min-width: 0 !important;
  }
}

@media (min-width: 0px) {
  .u-max-w-none {
    max-width: none !important;
  }
  .u-max-w-100 {
    max-width: 100px !important;
  }
  .u-max-w-150 {
    max-width: 150px !important;
  }
  .u-max-w-200 {
    max-width: 200px !important;
  }
  .u-max-w-250 {
    max-width: 250px !important;
  }
  .u-max-w-300 {
    max-width: 300px !important;
  }
  .u-max-w-350 {
    max-width: 350px !important;
  }
  .u-max-w-400 {
    max-width: 400px !important;
  }
  .u-max-w-450 {
    max-width: 450px !important;
  }
  .u-max-w-500 {
    max-width: 500px !important;
  }
}
@media (min-width: 768px) {
  .u-max-w-none-pc {
    max-width: none !important;
  }
  .u-max-w-100-pc {
    max-width: 100px !important;
  }
  .u-max-w-150-pc {
    max-width: 150px !important;
  }
  .u-max-w-200-pc {
    max-width: 200px !important;
  }
  .u-max-w-250-pc {
    max-width: 250px !important;
  }
  .u-max-w-300-pc {
    max-width: 300px !important;
  }
  .u-max-w-350-pc {
    max-width: 350px !important;
  }
  .u-max-w-400-pc {
    max-width: 400px !important;
  }
  .u-max-w-450-pc {
    max-width: 450px !important;
  }
  .u-max-w-500-pc {
    max-width: 500px !important;
  }
}
@media screen and (max-width: 767px) {
  .u-max-w-none-sp {
    max-width: none !important;
  }
  .u-max-w-100-sp {
    max-width: 100px !important;
  }
  .u-max-w-150-sp {
    max-width: 150px !important;
  }
  .u-max-w-200-sp {
    max-width: 200px !important;
  }
  .u-max-w-250-sp {
    max-width: 250px !important;
  }
  .u-max-w-300-sp {
    max-width: 300px !important;
  }
  .u-max-w-350-sp {
    max-width: 350px !important;
  }
  .u-max-w-400-sp {
    max-width: 400px !important;
  }
  .u-max-w-450-sp {
    max-width: 450px !important;
  }
  .u-max-w-500-sp {
    max-width: 500px !important;
  }
}

/* 高さ
-----------------------*/
@media (min-width: 0px) {
  .u-h-auto {
    height: auto !important;
  }
  .u-h-100p {
    height: 100% !important;
  }
  .u-h-100vh {
    height: 100vh!important;
  }
  .u-h-0 {
    height: 0px !important;
  }
  .u-h-50 {
    height: 50px !important;
  }
  .u-h-100 {
    height: 100px !important;
  }
  .u-h-150 {
    height: 150px !important;
  }
  .u-h-200 {
    height: 200px !important;
  }
  .u-h-250 {
    height: 250px !important;
  }
  .u-h-300 {
    height: 300px !important;
  }
  .u-h-350 {
    height: 350px !important;
  }
  .u-h-400 {
    height: 400px !important;
  }
  .u-h-450 {
    height: 450px !important;
  }
  .u-h-470 {
    height: 470px !important;
  }
  .u-h-500 {
    height: 500px !important;
  }
  .u-h-1100 {
    height: 1100px !important;
  }
}
@media (min-width: 768px) {
  .u-h-auto-pc {
    height: auto !important;
  }
  .u-h-100p-pc {
    /*height: 100% !important;*/
  }
  .u-h-100vh-pc {
    height: 100vh!important;
  }
  .u-h-0-pc {
    height: 0px !important;
  }
  .u-h-50-pc {
    height: 50px !important;
  }
  .u-h-100-pc {
    height: 100px !important;
  }
  .u-h-150-pc {
    height: 150px !important;
  }
  .u-h-200-pc {
    height: 200px !important;
  }
  .u-h-250-pc {
    height: 250px !important;
  }
  .u-h-300-pc {
    height: 300px !important;
  }
  .u-h-350-pc {
    height: 350px !important;
  }
  .u-h-400-pc {
    height: 400px !important;
  }
  .u-h-450-pc {
    height: 450px !important;
  }
  .u-h-470-pc {
    height: 470px !important;
  }
  .u-h-500-pc {
    height: 500px !important;
  }
}
@media screen and (max-width: 767px) {
  .u-h-auto-sp {
    height: auto !important;
  }
  .u-h-100p-sp {
    height: 100% !important;
  }
  .u-h-100vh-sp {
    height: 100vh!important;
  }
  .u-h-0-sp {
    height: 0px !important;
  }
  .u-h-50-sp {
    height: 50px !important;
  }
  .u-h-100-sp {
    height: 100px !important;
  }
  .u-h-150-sp {
    height: 150px !important;
  }
  .u-h-200-sp {
    height: 200px !important;
  }
  .u-h-250-sp {
    height: 250px !important;
  }
  .u-h-300-sp {
    height: 300px !important;
  }
  .u-h-350-sp {
    height: 350px !important;
  }
  .u-h-400-sp {
    height: 400px !important;
  }
  .u-h-450-sp {
    height: 450px !important;
  }
  .u-h-500-sp {
    height: 500px !important;
  }
}

@media (min-width: 0px) {
  .u-min-h-0 {
    min-height: 0 !important;
  }
  .u-min-h-50 {
    min-height: 50px !important;
  }
  .u-min-h-100 {
    min-height: 100px !important;
  }
  .u-min-h-150 {
    min-height: 150px !important;
  }
  .u-min-h-200 {
    min-height: 200px !important;
  }
  .u-min-h-250 {
    min-height: 250px !important;
  }
  .u-min-h-300 {
    min-height: 300px !important;
  }
  .u-min-h-350 {
    min-height: 350px !important;
  }
  .u-min-h-400 {
    min-height: 400px !important;
  }
  .u-min-h-450 {
    min-height: 450px !important;
  }
  .u-min-h-500 {
    min-height: 500px !important;
  }
}
@media (min-width: 768px) {
  .u-min-h-0-pc {
    min-height: 0 !important;
  }
  .u-min-h-50-pc {
    min-height: 50px !important;
  }
  .u-min-h-100-pc {
    min-height: 100px !important;
  }
  .u-min-h-150-pc {
    min-height: 150px !important;
  }
  .u-min-h-200-pc {
    min-height: 200px !important;
  }
  .u-min-h-250-pc {
    min-height: 250px !important;
  }
  .u-min-h-300-pc {
    min-height: 300px !important;
  }
  .u-min-h-350-pc {
    min-height: 350px !important;
  }
  .u-min-h-400-pc {
    min-height: 400px !important;
  }
  .u-min-h-450-pc {
    min-height: 450px !important;
  }
  .u-min-h-500-pc {
    min-height: 500px !important;
  }
}
@media screen and (max-width: 767px) {
  .u-min-h-0-sp {
    min-height: 0 !important;
  }
  .u-min-h-50-sp {
    min-height: 50px !important;
  }
  .u-min-h-100-sp {
    min-height: 100px !important;
  }
  .u-min-h-150-sp {
    min-height: 150px !important;
  }
  .u-min-h-200-sp {
    min-height: 200px !important;
  }
  .u-min-h-250-sp {
    min-height: 250px !important;
  }
  .u-min-h-300-sp {
    min-height: 300px !important;
  }
  .u-min-h-350-sp {
    min-height: 350px !important;
  }
  .u-min-h-400-sp {
    min-height: 400px !important;
  }
  .u-min-h-450-sp {
    min-height: 450px !important;
  }
  .u-min-h-500-sp {
    min-height: 500px !important;
  }
}

@media (min-width: 0px) {
  .u-max-h-none {
    max-height: none !important;
  }
  .u-max-h-3em {
    max-height: 6em !important;
  }

  .u-max-h-50 {
    max-height: 50px !important;
  }
  .u-max-h-100 {
    max-height: 100px !important;
  }
  .u-max-h-150 {
    max-height: 150px !important;
  }
  .u-max-h-200 {
    max-height: 200px !important;
  }
  .u-max-h-202 {
    max-height: 202px !important;
  }
  .u-max-h-250 {
    max-height: 250px !important;
  }
  .u-max-h-300 {
    max-height: 300px !important;
  }
  .u-max-h-350 {
    max-height: 350px !important;
  }
  .u-max-h-400 {
    max-height: 400px !important;
  }
  .u-max-h-450 {
    max-height: 450px !important;
  }
  .u-max-h-500 {
    max-height: 500px !important;
  }
}
@media (min-width: 768px) {
  .u-max-h-none-pc {
    max-height: none !important;
  }
  .u-max-h-50-pc {
    max-height: 50px !important;
  }
  .u-max-h-100-pc {
    max-height: 100px !important;
  }
  .u-max-h-150-pc {
    max-height: 150px !important;
  }
  .u-max-h-200-pc {
    max-height: 200px !important;
  }
  .u-max-h-250-pc {
    max-height: 250px !important;
  }
  .u-max-h-300-pc {
    max-height: 300px !important;
  }
  .u-max-h-350-pc {
    max-height: 350px !important;
  }
  .u-max-h-400-pc {
    max-height: 400px !important;
  }
  .u-max-h-450-pc {
    max-height: 450px !important;
  }
  .u-max-h-500-pc {
    max-height: 500px !important;
  }
}
@media screen and (max-width: 767px) {
  .u-max-h-none-sp {
    max-height: none !important;
  }
  .u-max-h-50-sp {
    max-height: 50px !important;
  }
  .u-max-h-100-sp {
    max-height: 100px !important;
  }
  .u-max-h-150-sp {
    max-height: 150px !important;
  }
  .u-max-h-200-sp {
    max-height: 200px !important;
  }
  .u-max-h-250-sp {
    max-height: 250px !important;
  }
  .u-max-h-300-sp {
    max-height: 300px !important;
  }
  .u-max-h-350-sp {
    max-height: 350px !important;
  }
  .u-max-h-400-sp {
    max-height: 400px !important;
  }
  .u-max-h-450-sp {
    max-height: 450px !important;
  }
  .u-max-h-500-sp {
    max-height: 500px !important;
  }
}

/* フォントファミリー
-----------------------*/
.u-ff-hiragino-sans {
  font-family:  'ヒラギノUD角ゴ W3 JIS2004','Hiragino UD Sans W3 JIS2004' !important;
}
.u-ff-montserrat {
  font-family: 'Montserrat' !important;
}
.u-ff-lato {
  font-family: 'Lato' !important;
  font-weight: 300;
}

/* フォントサイズ
-----------------------*/
@media (min-width: 0px) {
  .u-fs-0 {
    font-size: 0 !important;
  }
  .u-fs-10 {
    font-size: 1.0rem !important;
  }
  .u-fs-11 {
    font-size: 1.1rem !important;
  }
  .u-fs-12 {
    font-size: 1.2rem !important;
  }
  .u-fs-13 {
    font-size: 1.3rem !important;
  }
  .u-fs-14 {
    font-size: 1.4rem !important;
  }
  .u-fs-16 {
    font-size: 1.6rem !important;
  }
  .u-fs-18 {
    font-size: 1.8rem !important;
  }
  .u-fs-20 {
    font-size: 2.0rem !important;
  }
  .u-fs-22 {
    font-size: 2.2rem !important;
  }
  .u-fs-24 {
    font-size: 2.4rem !important;
  }
  .u-fs-26 {
    font-size: 2.6rem !important;
  }
  .u-fs-28 {
    font-size: 2.8rem !important;
  }
  .u-fs-30 {
    font-size: 3rem !important;
  }
  .u-fs-32 {
    font-size: 3.2rem !important;
  }
  .u-fs-34 {
    font-size: 3.4rem !important;
  }
  .u-fs-36 {
    font-size: 3.6rem !important;
  }
  .u-fs-38 {
    font-size: 3.8rem !important;
  }
  .u-fs-40 {
    font-size: 4rem !important;
  }
  .u-fs-48 {
    font-size: 4.8rem !important;
  }
  .u-fs-120 {
    font-size: 12rem !important;
  }
}
@media screen and (max-width: 767px) {
  .u-fs-0-sp {
    font-size: 0 !important;
  }
  .u-fs-10-sp {
    font-size: 1.0rem !important;
  }
  .u-fs-11-sp {
    font-size: 1.1rem !important;
  }
  .u-fs-12-sp {
    font-size: 1.2rem !important;
  }
  .u-fs-13-sp {
    font-size: 1.3rem !important;
  }
  .u-fs-14-sp {
    font-size: 1.4rem !important;
  }
  .u-fs-16-sp {
    font-size: 1.6rem !important;
  }
  .u-fs-18-sp {
    font-size: 1.8rem !important;
  }
  .u-fs-20-sp {
    font-size: 2.0rem !important;
  }
  .u-fs-22-sp {
    font-size: 2.2rem !important;
  }
  .u-fs-24-sp {
    font-size: 2.4rem !important;
  }
  .u-fs-26-sp {
    font-size: 2.6rem !important;
  }
  .u-fs-28-sp {
    font-size: 2.8rem !important;
  }
  .u-fs-30-sp {
    font-size: 3rem !important;
  }
  .u-fs-32-sp {
    font-size: 3.2rem !important;
  }
  .u-fs-34-sp {
    font-size: 3.4rem !important;
  }
  .u-fs-36-sp {
    font-size: 3.6rem !important;
  }
  .u-fs-38-sp {
    font-size: 3.8rem !important;
  }
  .u-fs-40-sp {
    font-size: 4rem !important;
  }
  .u-fs-48-sp {
    font-size: 4.8rem !important;
  }
}
@media (min-width: 768px) {
  .u-fs-0-pc {
    font-size: 0 !important;
  }
  .u-fs-10-pc {
    font-size: 1.0rem !important;
  }
  .u-fs-11-pc {
    font-size: 1.1rem !important;
  }
  .u-fs-12-pc {
    font-size: 1.2rem !important;
  }
  .u-fs-13-pc {
    font-size: 1.3rem !important;
  }
  .u-fs-14-pc {
    font-size: 1.4rem !important;
  }
  .u-fs-16-pc {
    font-size: 1.6rem !important;
  }
  .u-fs-18-pc {
    font-size: 1.8rem !important;
  }
  .u-fs-20-pc {
    font-size: 2.0rem !important;
  }
  .u-fs-22-pc {
    font-size: 2.2rem !important;
  }
  .u-fs-24-pc {
    font-size: 2.4rem !important;
  }
  .u-fs-26-pc {
    font-size: 2.6rem !important;
  }
  .u-fs-28-pc {
    font-size: 2.8rem !important;
  }
  .u-fs-30-pc {
    font-size: 3rem !important;
  }
  .u-fs-32-pc {
    font-size: 3.2rem !important;
  }
  .u-fs-34-pc {
    font-size: 3.4rem !important;
  }
  .u-fs-36-pc {
    font-size: 3.6rem !important;
  }
  .u-fs-38-pc {
    font-size: 3.8rem !important;
  }
  .u-fs-40-pc {
    font-size: 4rem !important;
  }
  .u-fs-46-pc {
    font-size: 4.6rem !important;
  }
  .u-fs-48-pc {
    font-size: 4.8rem !important;
  }
}

/* フォントウェイト
-----------------------*/
.u-fw-normal {
  font-weight: normal !important;
}
.u-fw-bold {
  font-weight: bold !important;
}


/* ラインハイト
-----------------------*/
.u-lh-10 {
  line-height: 1.0 !important;
}
.u-lh-13 {
  line-height: 1.3 !important;
}
.u-lh-15 {
  line-height: 1.5 !important;
}
.u-lh-17 {
  line-height: 1.7 !important;
}
.u-lh-20 {
  line-height: 2.0 !important;
}
@media screen and (max-width: 767px) {
  .u-lh-10-sp {
    line-height: 1.0 !important;
  }
  .u-lh-13-sp {
    line-height: 1.3 !important;
  }
  .u-lh-15-sp {
    line-height: 1.5 !important;
  }
  .u-lh-17-sp {
    line-height: 1.7 !important;
  }
  .u-lh-20-sp {
    line-height: 2.0 !important;
  }
}
@media (min-width: 768px) {
  .u-lh-10-pc {
    line-height: 1.0 !important;
  }
  .u-lh-13-pc {
    line-height: 1.3 !important;
  }
  .u-lh-15-pc {
    line-height: 1.5 !important;
  }
  .u-lh-17-pc {
    line-height: 1.7 !important;
  }
  .u-lh-20-pc {
    line-height: 2.0 !important;
  }
}

/* テキストアライン
-----------------------*/
.u-ta-left {
  text-align: left !important;
}
.u-ta-center {
  text-align: center !important;
}
.u-ta-right {
  text-align: right !important;
}
@media (min-width: 768px) {
  .u-ta-left-pc {
    text-align: left !important;
  }
  .u-ta-center-pc {
    text-align: center !important;
  }
  .u-ta-right-pc {
    text-align: right !important;
  }
}
@media screen and (max-width: 767px) {
  .u-ta-left-sp {
    text-align: left !important;
  }
  .u-ta-center-sp {
    text-align: center !important;
  }
  .u-ta-right-sp {
    text-align: right !important;
  }
}

/* バーティカルアライン
-----------------------*/
.u-va-middle {
  vertical-align: middle !important;
}

/* テキストデコレーション
-----------------------*/
.u-td-none {
  text-decoration: none !important;
}
.u-td-underline {
  text-decoration: underline !important;
}

/* ホワイトスペース
-----------------------*/
.u-ws-normal {
  white-space: normal !important;
}
.u-ws-nowrap {
  white-space: nowrap !important;
}

/* ワードブレイク
-----------------------*/
.u-wb-all {
  word-break: break-all !important;
}

/* カーソル
-----------------------*/
.u-cursor-pointer {
  cursor: pointer;
}
/* マーカー
-----------------------*/
.u-marker-yellow {
  background: linear-gradient(transparent 50%, #D4FF24 50%);
  font-weight: bold;
  display: inline-block;
}
.u-marker-blue {
  background: linear-gradient(transparent 50%, #A8ECE4 50%);
  font-weight: bold;
  display: inline-block;
}


/* 吹き出しモチーフ
-----------------------*/
.u-fbox {
  border-radius: 0 16px 16px 16px;
  box-shadow: 0px 2px 3px 2px rgba(0, 0, 0, 0.1);
}

.u-ico-pdf::after {/* icon */
  font-family: "Font Awesome 5 Free";
  content: '\f1c1';
  margin-left: .5rem;
  font-weight: 900;
  text-decoration: none;
}
.u-ico-page::after {/* icon */
  font-family: "Font Awesome 5 Free";
  content: '\f35d';
  margin-left: .5rem;
  font-weight: 900;
  text-decoration: none;
}
.u-ico-acc::after {/* icon */
  font-family: "Font Awesome 5 Free";
  content: '\f0fe';
  margin-left: .5rem;
  font-weight: 900;
  text-decoration: none;
}
.u-ico-acc.is-open::after {/* icon */
  font-family: "Font Awesome 5 Free";
  content: '\f146';
  margin-left: .5rem;
  font-weight: 900;
  text-decoration: none;
}

/* アコーディオン
-----------------------*/
.js-acc {
  color: #1B5E80;
  font-size: 1.6rem;
}
.u-accInner {
  display: none;
  background: #eee;
  padding: 10px;
}

/* Slider */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: auto;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: auto;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: auto;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-auto {
    display: none;
}
/* Slider */


/* Arrows */
.slick-prev,
.slick-next
{
    font-size: 0;
    line-height: 0;

    position: absolute;
    bottom: -80px;
    z-index: 10;
    display: block;

    width: 40px;
    height: 40px;
    padding: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);

    cursor: pointer;

    color: transparent;
    border: none;
    outline: none;
    background: transparent;
}
@media (min-width: 768px) {
  .slick-prev,
  .slick-next {
    bottom: 50%;
  }  
}
.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus
{
    color: transparent;
    outline: none;
    background: transparent;
}
.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before
{
    opacity: 1;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before
{
    opacity: .25;
}

.slick-prev:before,
.slick-next:before
{
    font-family: "Font Awesome 5 Free";
    font-size: 20px;
    line-height: 1;
    font-weight: 900;
    opacity: .75;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;

    background: #202020;
    color: #fff;

    /*display: inline-block !important;*/
    display: flex !important;
    justify-content: center;
    align-items: center;
    width: 40px;
    height: 40px;
}

.slick-prev
{
    left: 0;
}
[dir='rtl'] .slick-prev
{
    right: -25px;
    left: auto;
}
.slick-prev:before
{
    content: '\f104';
}
[dir='rtl'] .slick-prev:before
{
    content: '\f104';
}

.slick-next
{
    right: 0;
}
[dir='rtl'] .slick-next
{
    right: auto;
    left: 0;
}
.slick-next:before
{
    content: '\f054';
}
[dir='rtl'] .slick-next:before
{
    content: '←';
}
@media (min-width: 768px) {
  .slick-prev {
    left: -60px;
  }
  .slick-next {
    right: -60px;
  }
}




/* Dots */
.slick-dotted.slick-slider
{
    margin-bottom: 30px;
}

.slick-dots
{
    position: absolute;
    bottom: 20px;

    display: block;

    width: 100%;
    padding: 0;
    margin: 0;

    list-style: none;

    text-align: center;
}
.slick-dots li
{
    position: relative;

    display: inline-block;

    width: 20px;
    height: 20px;
    margin: 0 5px;
    padding: 0;

    cursor: pointer;
}
.slick-dots li button
{
    font-size: 0;
    line-height: 0;

    display: block;

    width: 20px;
    height: 20px;
    padding: 5px;

    cursor: pointer;

    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}
.slick-dots li button:hover,
.slick-dots li button:focus
{
    outline: none;
}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before
{
    opacity: 1;
}
.slick-dots li button:before
{
    /*font-family: 'slick';*/
    font-size: 60px;
    line-height: 20px;

    position: absolute;
    top: 0;
    left: 0;

    width: 20px;
    height: 20px;

    content: '•';
    text-align: center;

    opacity: .25;
    color: black;
    z-index: 3;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before
{
    opacity: .75;
    color: black;
}
.slick-dots li button:after
{
  
  font-size: 74px;
  content: '•';
  text-align: center;
  position: absolute;
  top: 10px;
  left: -3px;
  color: #fff;
  z-index: 2;
  opacity: .25;
}


/* Sliderカスタム */
.slidenavi {
  margin: 10px 0;
  display: flex;
  justify-content: center;
}
.slidenavi .slick-list .slick-track {
  width: 160px;
  padding: 10px;
  display: flex;
  justify-content: center;
}
.slidenavi .slick-list .slick-slide {
  margin-right: 20px;
  padding: 3px;
  border: 1px solid #000;
  position: relative;
}
.slidenavi .slick-slide:before,
.slidenavi .slick-slide:after {
  position: absolute;
  content:"";
  width: 24%;
  height: 0.5px;
  background: #202020;
}
.slidenavi .slick-slide:before {
  top: 5%;
  left: -8%;
  transform:rotate(-45deg);
}
.slidenavi .slick-slide:after {
  bottom: 5%;
  right: -8%;
  transform:rotate(-45deg);
} 


.slidenavi .slick-list .slick-slide:last-child {
  margin-right: 0;
}
.slidenavi .slick-list .slick-slide.slick-current {
  background: #3a3a3a;
}
.slidenavi .slick-list .slick-slide > div > img {
  vertical-align: bottom;
}
@media (min-width: 768px) {
  .slidenavi {
    margin: 50px 0;
  }
  .slidenavi .slick-list .slick-track {
    width: 380px;
    padding: 20px;
  }
  .slidenavi .slick-list .slick-slide {
    margin-right: 50px;
    padding: 9px;
  }
}