@charset "UTF-8";
.js-breakpointSp {
  width: 750px;
}

.js-viewportWidthSp {
  width: 375px;
}

.js-viewportWidthTb {
  width: 1280px;
}

.js-viewportWidthPc {
  width: 1280px;
}

/*----------------------------------------------------------------
  reset
-----------------------------------------------------------------*/
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
.p-mission-block1 table th,
.c-post h4,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
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;
  background-repeat: no-repeat;
}

h1,
h2,
h3,
.p-mission-block1 table th,
.c-post h4,
h4,
h5,
h6,
th,
td {
  font-weight: normal;
}

/*
h1,
h2,
h3,
h4,
h5,
h6 {
  line-height: 1;
}
*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

del {
  text-decoration: line-through;
}

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-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input,
select {
  vertical-align: middle;
}

img,
svg {
  vertical-align: top;
}

img {
  vertical-align: top;
  font-size: 0;
  line-height: 0;
}

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

main {
  display: block;
}

/* Form
______________________________________________*/
/*
input,
button,
textarea,
select {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-size: 100%;
  display: inline-block;
  font-family: inherit;
}
*/
/* ios
______________________________________________*/
* {
  -webkit-overflow-scrolling: touch;
}

/* IE
______________________________________________*/
::-ms-expand {
  display: none;
}

::-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #828c9a;
}

/* clearfix
______________________________________________*/
.clearfix:after, .p-organization section:after, .c-post:after {
  content: " ";
  display: block;
  clear: both;
}

/* bugfix
______________________________________________*/
body {
  -webkit-text-size-adjust: 100%;
}

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}
/*----------------------------------------------------------------
    base
-----------------------------------------------------------------*/
html {
  overflow: auto;
  font-size: 62.5%;
  /* 1px = .1rem */
  min-width: 1280px;
}
html.js-modalOpen, html.js-menuOpen {
  height: 100%;
  overflow: hidden;
}
@media screen and (max-width: 375px) {
  html {
    min-width: 0;
  }
}

body {
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
  position: relative;
  font-size: 1.8rem;
  line-height: 1.7777777778;
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
  color: #080000;
  background-color: #fff;
  min-height: 100%;
  padding-top: 163px;
}
@media screen and (max-width: 375px) {
  body {
    font-size: 1.5rem;
    line-height: 1.7333333333;
    overflow-x: hidden;
    padding-top: 60px;
  }
}
@media screen and (max-width: 375px) {
  body::before {
    display: block !important;
  }
}

body.home,
body.page-id-11 {
  overflow: hidden;
}
body.home::before,
body.page-id-11::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: -1336px;
  width: 696px;
  height: 10000px;
  background-color: #f5f2ea;
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  z-index: -1;
}

.u-sans {
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
}

.u-serif {
  font-family: "游明朝", "Yu Mincho", "YuMincho", "Noto Serif JP", "Noto Serif JP", "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", "HGS明朝E", serif;
}

svg {
  width: 100%;
  height: auto;
}

small {
  font-size: 0.8em;
}

a {
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  color: inherit;
  text-decoration: none;
}

a:hover,
button:hover {
  opacity: 0.6;
}

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

i.fa {
  margin: 0 0.3em;
}

h1 {
  font-weight: bold;
  font-family: "游明朝", "Yu Mincho", "YuMincho", "Noto Serif JP", "Noto Serif JP", "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", "HGS明朝E", serif;
}

h2,
h3,
.p-mission-block1 table th,
.c-post h4,
h4,
h5 {
  font-weight: bold;
  font-family: "游明朝", "Yu Mincho", "YuMincho", "Noto Serif JP", "Noto Serif JP", "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", "HGS明朝E", serif;
}

h1 {
  font-size: 3.6rem;
}
@media screen and (max-width: 375px) {
  h1 {
    font-size: 3.2rem;
  }
}

h2 {
  font-size: 3.2rem;
}
@media screen and (max-width: 375px) {
  h2 {
    font-size: 2.4rem;
  }
}

h3, .p-mission-block1 table th, .c-post h4 {
  font-size: 2.4rem;
  line-height: 1.35;
}
@media screen and (max-width: 375px) {
  h3, .p-mission-block1 table th, .c-post h4 {
    font-size: 1.6rem;
  }
}

h4 {
  font-size: 1em;
}
@media screen and (max-width: 375px) {
  h4 {
    font-size: 1em;
  }
}

h5 {
  font-size: 1.4rem;
}
@media screen and (max-width: 375px) {
  h5 {
    font-size: 1.2rem;
  }
}

table {
  width: 100%;
}
table th {
  text-align: left;
}

/* Tel click off
______________________________________________*/
a[href^="tel:"] {
  pointer-events: none;
}
@media screen and (max-width: 375px) {
  a[href^="tel:"] {
    pointer-events: auto;
  }
}

/* slick
______________________________________________*/
.slick-track {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.slick-slide {
  height: auto !important;
}

/*----------------------------------------------------------------
    layout
-----------------------------------------------------------------*/
/* inner
______________________________________________*/
.l-innerA, .p-policy-block1, .l-col2, .l-inner2, .p-message-block2, .p-message-block1, .p-voice-block-text, .p-voice-block4, .p-voice-block2, .l-inner2--sp, .l-inner1, .p-school-block1, .p-top-bnr2, .p-top-news, .p-top-blog, .p-top-bnr, .p-top-program, .p-top-voice, .p-top-reason, .c-school-child-nav, .c-nav-slide-program > *, .f-bottom > *, .f-body, .h-big-menu > *, .l-inner3, .p-program-strengths, .p-program-about, .p-reason-strengths, .p-reason-proven, .c-block1 {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
@media screen and (max-width: 375px) {
  .l-innerA, .p-policy-block1, .l-col2, .l-inner2, .p-message-block2, .p-message-block1, .p-voice-block-text, .p-voice-block4, .p-voice-block2, .l-inner2--sp, .l-inner1, .p-school-block1, .p-top-bnr2, .p-top-news, .p-top-blog, .p-top-bnr, .p-top-program, .p-top-voice, .p-top-reason, .c-school-child-nav, .c-nav-slide-program > *, .f-bottom > *, .f-body, .h-big-menu > *, .l-inner3, .p-program-strengths, .p-program-about, .p-reason-strengths, .p-reason-proven, .c-block1 {
    max-width: none;
  }
}

.l-inner1, .p-school-block1, .p-top-bnr2, .p-top-news, .p-top-blog, .p-top-bnr, .p-top-program, .p-top-voice, .p-top-reason, .c-school-child-nav, .c-nav-slide-program > *, .f-bottom > *, .f-body, .h-big-menu > *, .l-inner3, .p-program-strengths, .p-program-about, .p-reason-strengths, .p-reason-proven, .c-block1 {
  max-width: 1200px;
  padding-right: 40px;
  padding-left: 40px;
}
@media screen and (max-width: 375px) {
  .l-inner1, .p-school-block1, .p-top-bnr2, .p-top-news, .p-top-blog, .p-top-bnr, .p-top-program, .p-top-voice, .p-top-reason, .c-school-child-nav, .c-nav-slide-program > *, .f-bottom > *, .f-body, .h-big-menu > *, .l-inner3, .p-program-strengths, .p-program-about, .p-reason-strengths, .p-reason-proven, .c-block1 {
    padding-right: 20px;
    padding-left: 20px;
  }
}

.l-inner2, .p-message-block2, .p-message-block1, .p-voice-block-text, .p-voice-block4, .p-voice-block2, .l-inner2--sp {
  max-width: 1200px;
}

@media screen and (max-width: 375px) {
  .l-inner2--sp {
    padding-right: 20px;
    padding-left: 20px;
  }
}

.l-inner3, .p-program-strengths, .p-program-about, .p-reason-strengths, .p-reason-proven, .c-block1 {
  max-width: 1184px;
}

.l-col2 {
  max-width: 1440px;
  padding-left: 80px;
  padding-right: 80px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-top: 70px;
}
@media screen and (max-width: 375px) {
  .l-col2 {
    display: block;
    padding: 0 20px;
    margin: 50px 0 0;
  }
}
.l-col2 > *:nth-child(1) {
  width: calc(100% - 250px);
  padding: 0 78px 0 0;
}
@media screen and (max-width: 375px) {
  .l-col2 > *:nth-child(1) {
    width: 100%;
    padding: 0;
  }
}
.l-col2 > *:nth-child(2) {
  width: 250px;
}
@media screen and (max-width: 375px) {
  .l-col2 > *:nth-child(2) {
    width: 100%;
    min-height: 0;
    padding: 100px 0 130px;
  }
}

.c-modal .container {
  margin-top: auto;
  height: 100%;
  display: block;
}

/*----------------------------------------------------------------
    Post 投稿記事用
-----------------------------------------------------------------*/
/* .post  投稿用
______________________________________________*/
.c-post {
  padding-bottom: 6em;
}
.c-post header {
  padding-bottom: 60px;
  margin-bottom: 58px;
  border-bottom: solid 1px #dddddd;
}
@media screen and (max-width: 375px) {
  .c-post header {
    padding-bottom: 45px;
    margin-bottom: 35px;
  }
}
.c-post header .info {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 375px) {
  .c-post header .info {
    display: block;
  }
}
.c-post header .info .cat {
  display: inline-block;
  margin-left: 1em;
}
@media screen and (max-width: 375px) {
  .c-post header .info .cat {
    margin-left: 0;
    margin-right: 1em;
  }
}
.c-post h1 {
  padding: 0 0 0.5em;
  line-height: 1.5;
}
@media screen and (max-width: 375px) {
  .c-post h1 {
    font-size: 2.6rem;
    padding: 0.5em 0 1.5em;
    text-align: left;
  }
}
.c-post h2 {
  margin: 3.4em 0 1.5em !important;
}
@media screen and (max-width: 375px) {
  .c-post h2 {
    margin: 1em 0 0.9em;
    font-size: 2.4rem;
  }
}
.c-post h3, .c-post .p-mission-block1 table th, .p-mission-block1 table .c-post th, .c-post h4 {
  margin: 2.5em 0 1.2em;
}
.c-post h4 {
  padding-left: 0.6em;
  border-left: solid 2px #ad002d;
}
.c-post h5 {
  margin: 1em 0;
}
.c-post h6 {
  margin: 1em 0;
}
.c-post section {
  clear: both;
  padding-bottom: 1em;
}
.c-post > p {
  display: block;
  margin-bottom: 2em;
	line-height:2em;
}
.c-post a:not(.notPstyle) {
  color: #ad002d;
  text-decoration: underline;
}
.c-post a:hover,
.c-post a.hover {
  opacity: 1;
  text-decoration: underline;
}
.c-post a:active {
  color: #ad002d;
}
.c-post a[target=_blank]::after {
  content: "";
  display: inline-block;
  width: 1.5em;
  height: 1em;
  background-image: url("../../../../uploads/ico-blank.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: left center;
  margin: 0 0.2em;
}
.c-post strong {
  font-weight: bold;
  color: #ad002d;
}
.c-post em {
  font-style: italic;
}
.c-post figcaption {
  font-size: 1.4rem;
  margin-top: -2em;
}
@media screen and (max-width: 375px) {
  .c-post figcaption {
    font-size: 1.3rem;
  }
}
.c-post blockquote,
.c-post q {
  color: #666;
  background-color: #fff;
  font-style: italic;
  padding: 0em 2em 0em 2em;
  position: relative;
  margin: 1em 0;
  border-left: solid 5px #ccc;
	margin-left: auto;
}
@media screen and (max-width: 375px) {
  .c-post blockquote,
  .c-post q {
    padding: 0em 2.5em 0em;
  }
}
.c-post blockquote::before,
.c-post q::before {
  content: "";
  display: block;
  background-image: url("../images/ico6.png");
  background-size: contain;
  background-repeat: no-repeat;
  width: 2em;
  height: 2em;
  position: absolute;
  left: 2em;
  top: 2em;
}
@media screen and (max-width: 375px) {
  .c-post blockquote::before,
  .c-post q::before {
    left: 2.5em;
    top: 0.3em;
  }
}
.c-post blockquote footer,
.c-post q footer {
  text-align: right;
  font-size: calc(12 / 18px * 1em);
}
@media screen and (max-width: 375px) {
  .c-post blockquote footer,
  .c-post q footer {
    font-size: 0.9em;
  }
}
.c-post blockquote a,
.c-post q a {
  color: #666;
}
.c-post ul {
  list-style-type: disc;
  list-style-position: inside;
}
.c-post > ul {
  margin: 1em 0;
  padding-left: 0;
  list-style-type: none;
}
.c-post > ul > li {
  position: relative;
  padding-left: 1.2em;
}
.c-post > ul > li::before {
  content: "";
  display: block;
  width: 0.3em;
  height: 0.3em;
  top: 0.8em;
  left: 0;
  position: absolute;
  border-radius: 50%;
  background-color: #ad002d;
}
.c-post ol {
  margin: 1em 0;
  padding-left: 1em;
  list-style-type: decimal;
}
.c-post ol ol {
  margin: 1em 0;
  padding-left: 0;
  list-style-type: none;
  counter-reset: item_a;
}
.c-post ol ol > li {
  position: relative;
  text-indent: -2.6em;
  margin-left: 2.5em;
}
.c-post ol ol > li::before {
  content: "（" counter(item_a) "）";
  counter-increment: item_a;
}
.c-post mark {
  font-weight: bold;
  text-decoration: underline;
  -webkit-text-decoration-color: #ad002d;
          text-decoration-color: #ad002d;
}
.c-post .textcenter {
  text-align: center;
}
.c-post .textright {
  text-align: right;
}
.c-post .textleft {
  text-align: left;
}
.c-post .aligncenter {
  display: block;
  margin: 0 auto;
}
.c-post .alignright {
  float: right;
}
.c-post .alignleft {
  float: left;
}
.c-post img {
  display: block;
  width: auto;
  height: auto;
  max-width: 720px;
  margin-top: 40px;
  margin-bottom: 40px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 720px) {
  .c-post img {
    width: 100%;
  }
}
@media screen and (max-width: 375px) {
  .c-post img {
    margin-top: 40px;
    margin-bottom: 40px;
    max-width: none;
  }
}
.c-post > img.centered {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.c-post > img.alignright {
  margin-left: 40px;
  display: inline;
}
@media screen and (max-width: 375px) {
  .c-post > img.alignright {
    margin-left: 40px;
  }
}
.c-post > img.alignleft {
  margin-right: 40px;
  display: inline;
}
@media screen and (max-width: 375px) {
  .c-post > img.alignleft {
    margin-right: 40px;
  }
}
.c-post .imgBox {
  padding-left: 2em;
  padding-right: 2em;
}
@media screen and (max-width: 375px) {
  .c-post .imgBox {
    padding-left: 0;
    padding-right: 0;
  }
}
.c-post > table {
  margin: 3em 0;
}
.c-post .wp-caption {
  width: 100%;
  max-width: 720px;
  margin: 0 auto;
}
@media screen and (max-width: 375px) {
  .c-post .wp-caption {
    max-width: 100%;
  }
}
.c-post .wp-caption img {
  width: 100%;
  height: auto;
}
.c-post .wp-caption-text {
  color: #707070;
  font-size: 0.875em;
  margin: -2em 0 2em;
}

/*----------------------------------------------------------------
  background
-----------------------------------------------------------------*/
.c-bgImg, .c-zoombox1 > *, .js-imgsList > * > * {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.c-shadow1, .c-card2, .c-card-program, .c-card-textbook .img_box, .c-sidebar__list1, .h-gNav .main > li.has_children > .nav {
  -webkit-box-shadow: 0 3px 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 3px 8px rgba(0, 0, 0, 0.1);
}

.c-bg1-- {
  position: relative;
  overflow: hidden;
}
.c-bg1--::before {
  content: "";
  display: block;
  position: absolute;
  top: -10000px;
  left: calc(50% - 10070px);
  width: 20000px;
  height: 910px;
  background-color: #f5f2ea;
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  z-index: -1;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
}

.c-bg1, .p-top-bg1, .p-top-main {
  position: relative;
  overflow: hidden;
  max-width: 100vw;
}
.c-bg1::before, .p-top-bg1::before, .p-top-main::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("../../../../uploads/bg2.png");
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: left top;
}

/*----------------------------------------------------------------
  Table
-----------------------------------------------------------------*/
/* .c-table-history
______________________________________________*/
.c-table-history th {
  width: 123px;
  font-size: 2.2rem;
  font-weight: bold;
  position: relative;
}
@media screen and (max-width: 375px) {
  .c-table-history th {
    display: block;
    width: 100%;
    font-size: 1.8rem;
    padding: 3px 0 20px 30px;
  }
}
.c-table-history th::after {
  content: "";
  display: block;
  position: absolute;
  top: 14px;
  right: 0;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background-color: #e2e2e2;
  -webkit-transform: translateX(50%);
          transform: translateX(50%);
}
@media screen and (max-width: 375px) {
  .c-table-history th::after {
    right: auto;
    left: 0;
  }
}
.c-table-history th::before,
.c-table-history td::before {
  content: "";
  display: block;
  position: absolute;
  top: 18px;
  right: 0;
  width: 1px;
  height: 100%;
  background-color: #e2e2e2;
  -webkit-transform: translateX(50%);
          transform: translateX(50%);
}
@media screen and (max-width: 375px) {
  .c-table-history th::before,
  .c-table-history td::before {
    right: auto;
    left: 8px;
  }
}
.c-table-history td::before {
  display: none;
}
@media screen and (max-width: 375px) {
  .c-table-history td::before {
    display: block;
  }
}
.c-table-history tr:last-child td::before,
.c-table-history tr:last-child th::before {
  display: none;
}
.c-table-history td {
  font-size: 1.6rem;
  padding: 0 0 34px 46px;
  line-height: 2;
  position: relative;
}
@media screen and (max-width: 375px) {
  .c-table-history td {
    display: block;
    padding: 0 0 34px 30px;
    font-size: 1.5rem;
    line-height: 1.7333333333;
  }
}
.c-table-history td h3, .c-table-history td .p-mission-block1 table th, .p-mission-block1 table .c-table-history td th, .c-table-history td .c-post h4, .c-post .c-table-history td h4 {
  font-size: 1.6rem;
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
  margin-bottom: 20px;
}
@media screen and (max-width: 375px) {
  .c-table-history td h3, .c-table-history td .p-mission-block1 table th, .p-mission-block1 table .c-table-history td th, .c-table-history td .c-post h4, .c-post .c-table-history td h4 {
    font-size: 1.5rem;
    margin-bottom: 1em;
    line-height: 1.7333333333;
  }
}
.c-table-history td > * {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 375px) {
  .c-table-history td > * {
    display: block;
  }
}
.c-table-history td > * > *:nth-child(1) {
  width: 560px;
  min-width: 560px;
}
@media screen and (max-width: 375px) {
  .c-table-history td > * > *:nth-child(1) {
    width: 100%;
    min-width: 0;
  }
}
.c-table-history td > * > * img {
  width: 170px;
}
@media screen and (max-width: 375px) {
  .c-table-history td > * > * img {
    margin-top: 20px;
  }
}

/* .c-table1
______________________________________________*/
.c-table1, .c-table1-2, .c-post > table {
  width: 100%;
}
.c-table1 > * > tr > th, .c-table1-2 > * > tr > th, .c-post > table > * > tr > th,
.c-table1 > * > tr > td,
.c-table1-2 > * > tr > td,
.c-post > table > * > tr > td {
  padding: 1.15em 0;
  border-top: solid 1px #dddddd;
  border-bottom: solid 1px #dddddd;
  text-align: left;
}
@media screen and (max-width: 375px) {
  .c-table1 > * > tr > th, .c-table1-2 > * > tr > th, .c-post > table > * > tr > th,
  .c-table1 > * > tr > td,
  .c-table1-2 > * > tr > td,
  .c-post > table > * > tr > td {
    display: block;
  }
}
.c-table1 > * > tr > th, .c-table1-2 > * > tr > th, .c-post > table > * > tr > th {
  font-weight: bold;
  width: 165px;
}
@media screen and (max-width: 375px) {
  .c-table1 > * > tr > th, .c-table1-2 > * > tr > th, .c-post > table > * > tr > th {
    width: 100%;
    border-bottom: none;
    padding-bottom: 0;
  }
}
@media screen and (max-width: 375px) {
  .c-table1 > * > tr > td, .c-table1-2 > * > tr > td, .c-post > table > * > tr > td {
    border: none;
    padding-top: 0;
  }
}
.c-table1 a, .c-table1-2 a, .c-post > table a {
  text-decoration: underline;
  color: #ad002d;
}

.c-table1-2 > * > tr:first-child th,
.c-table1-2 > * > tr:first-child td {
  border-top: none;
}

/* .c-table2
______________________________________________*/
.c-table2 {
  width: 100%;
  line-height: 1.9;
}
@media screen and (max-width: 375px) {
  .c-table2 {
    border-top: solid 1px #dddddd;
  }
}
.c-table2 > * > tr > th,
.c-table2 > * > tr > td {
  padding: 1.5em 2em;
  border: solid 1px #dddddd;
  text-align: left;
}
@media screen and (max-width: 375px) {
  .c-table2 > * > tr > th,
  .c-table2 > * > tr > td {
    display: block;
    padding: 1em 1.2em;
  }
}
.c-table2 > * > tr > th h3, .c-table2 > * > tr > th .p-mission-block1 table th, .p-mission-block1 table .c-table2 > * > tr > th th, .c-table2 > * > tr > th .c-post h4, .c-post .c-table2 > * > tr > th h4,
.c-table2 > * > tr > td h3,
.c-table2 > * > tr > td .p-mission-block1 table th,
.p-mission-block1 table .c-table2 > * > tr > td th,
.c-table2 > * > tr > td .c-post h4,
.c-post .c-table2 > * > tr > td h4 {
  font-size: 1.6rem;
  margin: 3em 0 1em;
}
@media screen and (max-width: 375px) {
  .c-table2 > * > tr > th h3, .c-table2 > * > tr > th .p-mission-block1 table th, .p-mission-block1 table .c-table2 > * > tr > th th, .c-table2 > * > tr > th .c-post h4, .c-post .c-table2 > * > tr > th h4,
  .c-table2 > * > tr > td h3,
  .c-table2 > * > tr > td .p-mission-block1 table th,
  .p-mission-block1 table .c-table2 > * > tr > td th,
  .c-table2 > * > tr > td .c-post h4,
  .c-post .c-table2 > * > tr > td h4 {
    font-size: 1em;
    margin: 2em 0 1em;
  }
}
.c-table2 > * > tr > th h3:nth-of-type(1), .c-table2 > * > tr > th .p-mission-block1 table th:nth-of-type(1), .p-mission-block1 table .c-table2 > * > tr > th th:nth-of-type(1), .c-table2 > * > tr > th .c-post h4:nth-of-type(1), .c-post .c-table2 > * > tr > th h4:nth-of-type(1),
.c-table2 > * > tr > td h3:nth-of-type(1),
.c-table2 > * > tr > td .p-mission-block1 table th:nth-of-type(1),
.p-mission-block1 table .c-table2 > * > tr > td th:nth-of-type(1),
.c-table2 > * > tr > td .c-post h4:nth-of-type(1),
.c-post .c-table2 > * > tr > td h4:nth-of-type(1) {
  margin-top: 0;
}
.c-table2 > * > tr > th {
  width: 242px;
  background-color: #fcfaf7;
  vertical-align: middle;
  text-align: center;
  font-weight: bold;
}
@media screen and (max-width: 375px) {
  .c-table2 > * > tr > th {
    width: 100%;
    border-bottom: none;
    border-top: none;
  }
}
.c-table2 h1,
.c-table2 h2,
.c-table2 h3,
.c-table2 .p-mission-block1 table th,
.p-mission-block1 table .c-table2 th,
.c-table2 .c-post h4,
.c-post .c-table2 h4,
.c-table2 h4,
.c-table2 h5,
.c-table2 h6 {
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
}

/* .c-table-wrap
______________________________________________*/
@media screen and (max-width: 375px) {
  .c-table-wrap {
    position: relative;
  }
  .c-table-wrap::after {
    content: "";
    display: block;
    position: absolute;
    top: -70px;
    right: -8px;
    width: 32px;
    height: 58px;
    background-image: url("../../../../uploads/ico-swipe.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
  }
  .c-table-wrap > * {
    width: calc(100vw - 20px);
    overflow-x: scroll;
  }
}

/*----------------------------------------------------------------
  HEADER
-----------------------------------------------------------------*/
/* .h-header
______________________________________________*/
.h-header {
  z-index: 100;
  min-width: 1280px;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 163px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
  line-height: 1;
}
@media screen and (max-width: 375px) {
  .h-header {
    height: 60px;
    background-color: #fff;
  }
}
.h-header > * {
  position: relative;
  z-index: 1;
}
.h-header::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  z-index: 0;
}
@media screen and (max-width: 375px) {
  .h-header::after {
    display: none;
  }
}
.h-header::before {
  content: "";
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 0;
  pointer-events: none;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
@media screen and (max-width: 375px) {
  .h-header::before {
    display: none;
  }
}

.h-bg {
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 45%;
  height: 100%;
  z-index: 1;
  background-image: url("../../../../uploads/bg3.png");
  background-size: auto 100%;
  background-position: bottom right;
}
@media screen and (max-width: 375px) {
  .h-bg {
    display: none;
  }
}
.h-bg::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 300px;
  width: 100%;
  height: 100%;
  background-color: #f5f2ea;
}

body:not(.home) .h-bg {
  display: none;
}

.h-logo {
  margin: 45px 0 0 50px;
  width: 550px;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
@media screen and (max-width: 375px) {
  .h-logo {
    margin: 10px 0 0 13px;
    width: 300px;
  }
}

@media screen and (min-width: 376px) {
  .is-scroll .h-header {
    height: 112px;
    -webkit-box-shadow: 0 3px 4px rgba(0, 0, 0, 0.16);
            box-shadow: 0 3px 4px rgba(0, 0, 0, 0.16);
  }
  .is-scroll .h-header .h-bg {
    opacity: 0;
  }
  .is-scroll .h-logo {
    margin: 30px 0 0 50px;
    width: 450px;
  }
}
.is-bigMenu .h-header::before {
  opacity: 1;
  pointer-events: auto;
}

/* .h-gNav
______________________________________________*/
.h-gNav {
  z-index: 10;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  height: 100%;
}
@media screen and (max-width: 375px) {
  .h-gNav {
    position: fixed;
    top: 60px;
    left: 0;
    width: 100%;
    height: calc(100% - 60px);
    z-index: 10;
    overflow-y: scroll;
    background-color: #fff;
    padding: 0 20px;
    display: block;
    -webkit-transition: all 0.25s ease;
    transition: all 0.25s ease;
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
}
.h-gNav .top {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: 71px;
}
@media screen and (max-width: 375px) {
  .h-gNav .top {
    display: block;
    min-height: 0;
    height: auto;
  }
}
.h-gNav .bottom {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  height: 100%;
}
@media screen and (max-width: 375px) {
  .h-gNav .bottom {
    display: block;
    height: auto;
  }
}
.h-gNav .sub1 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  font-size: 1.4rem;
  font-weight: bold;
}
@media screen and (max-width: 375px) {
  .h-gNav .sub1 {
    display: block;
    border-bottom: solid 1px #dddddd;
  }
}
.h-gNav .sub1 a {
  margin-right: 34px;
}
@media screen and (max-width: 375px) {
  .h-gNav .sub1 a {
    margin-right: 0;
    min-height: 63px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    border-top: solid 1px #dddddd;
  }
}
.h-gNav .sub1 a:hover {
  color: #ad002d;
}
.h-gNav .sub2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
}
@media screen and (max-width: 375px) {
  .h-gNav .sub2 {
    display: block;
    height: auto;
    padding: 40px 0;
  }
}
.h-gNav .main {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding-right: 20px;
}
@media screen and (max-width: 375px) {
  .h-gNav .main {
    display: block;
    padding-right: 0;
  }
}
.h-gNav .main > li {
  border-right: solid 1px #dddddd;
  height: 26px;
}
@media screen and (max-width: 375px) {
  .h-gNav .main > li {
    height: auto;
    padding: 0;
    border-right: none;
    border-top: solid 1px #dddddd;
  }
}
.h-gNav .main > li:last-child {
  border-right: none;
}
.h-gNav .main > li > a {
  line-height: 1;
  font-size: 1.5rem;
  white-space: nowrap;
  font-weight: bold;
  display: block;
  padding: 5px 24px;
  height: 59px;
  position: relative;
}
@media screen and (max-width: 375px) {
  .h-gNav .main > li > a {
    height: auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    min-height: 77px;
    padding: 5px 0;
    background-image: url("../../../../uploads/ico-arrow1-clr.svg");
    background-size: 20px auto;
    background-repeat: no-repeat;
    background-position: center right 20px;
  }
}
.h-gNav .main > li > a.current {
  color: #ad002d;
}
.h-gNav .main > li > a:hover {
  color: #ad002d;
}
.h-gNav .main > li.has_children {
  position: relative;
}
@media screen and (max-width: 375px) {
  .h-gNav .main > li.has_children > a {
    background-image: none;
  }
  .h-gNav .main > li.has_children > a::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 20px;
    width: 28px;
    height: 28px;
    -webkit-transform: translateY(-50%) rotate(180deg);
            transform: translateY(-50%) rotate(180deg);
    border: solid 1px #ebe7db;
    background-color: #faf9f5;
    background-image: url("../../../../uploads/ico-up.svg");
    background-size: 11px auto;
    background-repeat: no-repeat;
    background-position: center;
    -webkit-transition: all 0.1s ease;
    transition: all 0.1s ease;
  }
  .h-gNav .main > li.has_children > a.open::after {
    -webkit-transform: translateY(-50%) rotate(0);
            transform: translateY(-50%) rotate(0);
  }
}
.h-gNav .main > li.has_children > .nav {
  z-index: 100;
  display: block;
  position: absolute;
  background-color: #fff;
  left: 50%;
  -webkit-transform: translate(-50%, 100%);
          transform: translate(-50%, 100%);
  white-space: nowrap;
  padding: 46px 40px 30px;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
  bottom: -50px;
  opacity: 0;
  pointer-events: none;
}
@media screen and (max-width: 375px) {
  .h-gNav .main > li.has_children > .nav {
    -webkit-box-shadow: none;
            box-shadow: none;
    -webkit-transform: none;
            transform: none;
    opacity: 1;
    position: relative;
    left: auto;
    bottom: auto;
    padding: 20px;
    background-color: #faf9f5;
    -webkit-transition: none;
    transition: none;
    display: none;
  }
}
.h-gNav .main > li.has_children > .nav > ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 60px;
}
@media screen and (max-width: 375px) {
  .h-gNav .main > li.has_children > .nav > ul {
    display: block;
  }
}
.h-gNav .main > li.has_children > .nav > ul > li {
  min-width: 340px;
}
@media screen and (max-width: 375px) {
  .h-gNav .main > li.has_children > .nav > ul > li {
    min-width: 0;
  }
}
.h-gNav .main > li.has_children > .nav > ul > li h3, .h-gNav .main > li.has_children > .nav > ul > li .p-mission-block1 table th, .p-mission-block1 table .h-gNav .main > li.has_children > .nav > ul > li th, .h-gNav .main > li.has_children > .nav > ul > li .c-post h4, .c-post .h-gNav .main > li.has_children > .nav > ul > li h4 {
  font-size: 1.6rem;
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
  color: #ad002d;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 18px;
}
@media screen and (max-width: 375px) {
  .h-gNav .main > li.has_children > .nav > ul > li h3, .h-gNav .main > li.has_children > .nav > ul > li .p-mission-block1 table th, .p-mission-block1 table .h-gNav .main > li.has_children > .nav > ul > li th, .h-gNav .main > li.has_children > .nav > ul > li .c-post h4, .c-post .h-gNav .main > li.has_children > .nav > ul > li h4 {
    margin: 20px 0 10px;
  }
}
.h-gNav .main > li.has_children > .nav > ul > li h3::after, .h-gNav .main > li.has_children > .nav > ul > li .p-mission-block1 table th::after, .p-mission-block1 table .h-gNav .main > li.has_children > .nav > ul > li th::after, .h-gNav .main > li.has_children > .nav > ul > li .c-post h4::after, .c-post .h-gNav .main > li.has_children > .nav > ul > li h4::after {
  content: "";
  display: block;
  border-top: solid 1px #dddddd;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-left: 20px;
}
@media screen and (max-width: 375px) {
  .h-gNav .main > li.has_children > .nav a {
    pointer-events: auto !important;
  }
}
@media screen and (max-width: 375px) {
  .h-gNav .main > li.has_children > .nav > a {
    border-top: solid 1px #dddddd;
    margin-top: 1.4em !important;
    padding-top: 2em !important;
  }
}
.h-gNav .main > li.has_children > .nav .index {
  float: right;
  margin-top: 10px;
}
@media screen and (max-width: 375px) {
  .h-gNav .main > li.has_children > .nav .index {
    float: none;
    margin-top: 0;
  }
}
@media screen and (max-width: 375px) {
  .h-gNav .main > li.has_children > .nav.school {
    display: none;
  }
}
.h-gNav .main > li.has_children > .nav.school > * {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 50px;
}
@media screen and (max-width: 375px) {
  .h-gNav .main > li.has_children > .nav.school > * {
    display: block;
  }
}
.h-gNav .main > li.has_children.open > .nav {
  bottom: -10px;
  opacity: 1;
  pointer-events: auto;
}
@media screen and (max-width: 375px) {
  .h-gNav .main > li.has_children.open > a::after {
    -webkit-transform: translateY(-50%) rotate(0);
            transform: translateY(-50%) rotate(0);
  }
}

.is-scroll .h-gNav .top {
  min-height: 53px;
}

@media screen and (max-width: 375px) {
  .js-menuOpen .h-gNav {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}

/* .h-menuBtn
______________________________________________*/
.h-menuBtn {
  display: none;
}
@media screen and (max-width: 375px) {
  .h-menuBtn {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    position: fixed;
    width: 60px;
    height: 60px;
    top: 0;
    right: 0;
    z-index: 10;
    width: 60px;
    height: 60px;
    background-color: #fff;
    font-size: 1rem;
    font-family: "Tiro Tamil", "游明朝", "Yu Mincho", "YuMincho", "Noto Serif JP", "Noto Serif JP", "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", "HGS明朝E", serif;
    line-height: 1;
  }
  .h-menuBtn:hover {
    opacity: 1;
  }
  .h-menuBtn > i {
    display: block;
    position: absolute;
    top: 21px;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 18px;
    height: 26px;
    border-top: 2px solid #ad002d;
    -webkit-transition: all 0.25s;
    transition: all 0.25s;
  }
  .h-menuBtn > i::before, .h-menuBtn > i::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 2px;
    background-color: #ad002d;
    right: 0;
    top: 5px;
    -webkit-transition: all 0.25s;
    transition: all 0.25s;
  }
  .h-menuBtn > i::before {
    opacity: 0;
  }
  .h-menuBtn > * {
    position: absolute;
    bottom: 12px;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    font-size: 7px;
    line-height: 1;
    color: #ad002d;
  }
}

.js-menuOpen .h-menuBtn > * {
  border-color: transparent;
}
.js-menuOpen .h-menuBtn > *::before {
  opacity: 1;
  -webkit-transform: rotate(35deg);
          transform: rotate(35deg);
}
.js-menuOpen .h-menuBtn > *::after {
  -webkit-transform: rotate(-35deg);
          transform: rotate(-35deg);
}

/* .h-big-menu
______________________________________________*/
.h-big-menu {
  position: absolute;
  bottom: 1px;
  left: 0;
  width: 100%;
  height: 480px;
  padding-bottom: 50px;
  background-color: #fff;
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
  display: none;
}
@media screen and (max-width: 375px) {
  .h-big-menu {
    display: none;
  }
}
.h-big-menu > * {
  padding-top: 60px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
.h-big-menu > *.hide {
  opacity: 0;
  pointer-events: none;
  display: none;
  z-index: -100;
}
.h-big-menu .c-btn2, .h-big-menu .c-btn2--dl, .h-big-menu .c-pager2 > *, .h-big-menu .h-big-menu--program .ttl, .h-big-menu--program .h-big-menu .ttl {
  margin-top: 34px;
  color: #080000;
}

.h-big-menu--program .nav {
  max-width: 1011px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 17px;
}
.h-big-menu--program .nav li {
  opacity: 0;
  -webkit-transform: translateY(50px);
          transform: translateY(50px);
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
}
.h-big-menu--program .nav li.on {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.h-big-menu--program .ttl {
  font-size: 1.6rem;
  font-weight: bold;
  margin: 18px 0 0 !important;
  color: #080000 !important;
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.h-big-menu--school .c-school-nav {
  max-width: 1011px;
  gap: 27px;
}
.h-big-menu--school .c-school-nav .c-btn1, .h-big-menu--school .c-school-nav .c-btn3, .h-big-menu--school .c-school-nav .c-btn3--red, .h-big-menu--school .c-school-nav .c-btn1--play, .h-big-menu--school .c-school-nav .c-btn1--dl, .h-big-menu--school .c-school-nav .c-btn1--wh {
  height: 60px;
  background-position: center right 22px;
  padding: 0 27px;
}

/*----------------------------------------------------------------
  Footer
-----------------------------------------------------------------*/
/* f footer
______________________________________________*/
.f-container {
  background-color: #080000;
  color: #fff;
  position: relative;
}

.f-contact {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  color: #fff;
  font-size: 1.5rem;
  padding: 122px 0 90px;
  border-bottom: solid 1px rgba(255, 255, 255, 0.2);
}
@media screen and (max-width: 375px) {
  .f-contact {
    display: block;
    padding: 49px 20px 46px;
  }
}
.f-contact .c-ttl1, .f-contact .c-ttl1--center {
  font-size: 3.2rem;
  margin-right: 50px;
  margin-top: 0;
  line-height: 1;
  -webkit-transform: translateY(-12px);
          transform: translateY(-12px);
  white-space: nowrap;
}
@media screen and (max-width: 375px) {
  .f-contact .c-ttl1, .f-contact .c-ttl1--center {
    font-size: 2.6rem;
    margin-right: 0;
    margin-top: 0;
    line-height: 1;
    -webkit-transform: none;
            transform: none;
    text-align: center;
    margin-bottom: 44px;
  }
}
.f-contact .c-ttl1 strong, .f-contact .c-ttl1--center strong {
  color: #fff;
  margin-bottom: 24px;
}
@media screen and (max-width: 375px) {
  .f-contact .c-ttl1 strong, .f-contact .c-ttl1--center strong {
    margin-bottom: 14px;
  }
}
.f-contact .c-btn1, .f-contact .c-btn3, .f-contact .c-btn3--red, .f-contact .c-btn1--play, .f-contact .c-btn1--dl, .f-contact .c-btn1--wh {
  color: #fff;
  border: none;
  margin-left: auto;
  background-color: #ad002d;
}
@media screen and (max-width: 375px) {
  .f-contact .c-btn1, .f-contact .c-btn3, .f-contact .c-btn3--red, .f-contact .c-btn1--play, .f-contact .c-btn1--dl, .f-contact .c-btn1--wh {
    margin: 39px 0 10px;
  }
}
.f-contact .c-btn1::after, .f-contact .c-btn3::after, .f-contact .c-btn3--red::after, .f-contact .c-btn1--play::after, .f-contact .c-btn1--dl::after, .f-contact .c-btn1--wh::after {
  background-image: url("../../../../uploads/ico-arrow1-wh.svg");
}
.f-contact .c-btn1:hover, .f-contact .c-btn3:hover, .f-contact .c-btn3--red:hover, .f-contact .c-btn1--play:hover, .f-contact .c-btn1--dl:hover, .f-contact .c-btn1--wh:hover {
  background-color: #ad002d;
  opacity: 0.6;
}
.f-contact .c-btn1.btn2, .f-contact .btn2.c-btn3, .f-contact .btn2.c-btn3--red, .f-contact .btn2.c-btn1--play, .f-contact .btn2.c-btn1--dl, .f-contact .btn2.c-btn1--wh {
  background-color: #1f497d;
  margin-left: 20px;
}
@media screen and (max-width: 375px) {
  .f-contact .c-btn1.btn2, .f-contact .btn2.c-btn3, .f-contact .btn2.c-btn3--red, .f-contact .btn2.c-btn1--play, .f-contact .btn2.c-btn1--dl, .f-contact .btn2.c-btn1--wh {
    margin: 0 0 0;
  }
}
.f-contact .txt1 {
  max-width: 410px;
  padding: 0 1em 0 0;
}

.f-main {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-bottom: 113px;
}
@media screen and (max-width: 375px) {
  .f-main {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    padding: 0 20px 56px;
  }
}

.f-logo {
  display: block;
  width: 162px;
  margin: 65px 0 30px;
}
@media screen and (max-width: 375px) {
  .f-logo {
    margin: 42px auto 13px;
  }
}

@media screen and (max-width: 375px) {
  .f-txt1 {
    font-size: 1.4rem;
    text-align: center;
  }
}

.f-sns {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 50px 0 0 5px;
}
@media screen and (max-width: 375px) {
  .f-sns {
    margin: 25px 0 0;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.f-sns a {
  display: block;
  width: 28px;
  margin-right: 8px;
}

.f-nav {
  margin-top: 50px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  white-space: nowrap;
}
@media screen and (max-width: 375px) {
  .f-nav {
    margin-top: 36px;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    padding-bottom: 14px;
    border-bottom: solid 1px rgba(255, 255, 255, 0.2);
    white-space: normal;
  }
}
.f-nav h4 {
  font-size: 1.3rem;
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
  font-weight: normal;
}
.f-nav h4 + * {
  margin: 0 0 0.5em 1em;
}
@media screen and (max-width: 375px) {
  .f-nav h4 + * {
    margin: 0.5em 0 1em;
  }
}
.f-nav > ul {
  margin-left: 40px;
}
@media screen and (max-width: 375px) {
  .f-nav > ul {
    margin: 0 0 20px;
    width: 50%;
  }
  .f-nav > ul:nth-child(odd) {
    padding-right: 20px;
  }
  .f-nav > ul:nth-child(even) {
    padding-left: 26px;
  }
  .f-nav > ul:nth-child(-n+2) {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }
}
.f-nav > ul > li {
  margin-bottom: 2px;
}
.f-nav > ul > li > a {
  font-size: 1.5rem;
  font-weight: bold;
}
@media screen and (max-width: 375px) {
  .f-nav > ul > li > ul {
    margin-top: 5px;
  }
}
.f-nav > ul > li > ul a {
  display: block;
  font-size: 1.4rem;
  padding-left: 1em;
  position: relative;
}
.f-nav > ul > li > ul a::before {
  content: "- ";
  position: absolute;
  left: 0;
}
.f-nav [target=_blank]::after {
  content: "";
  display: inline-block;
  width: 1.2em;
  height: 1em;
  background-image: url("../../../../uploads/ico-window.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  margin-left: 0.5em;
}
.f-nav a:hover {
  opacity: 0.6;
}

.f-bottom {
  background-color: #393333;
}
.f-bottom > * {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  height: 80px;
  font-size: 1.3rem;
}
@media screen and (max-width: 375px) {
  .f-bottom > * {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 10px;
    height: 122px;
  }
}

/*----------------------------------------------------------------
  SIDEBAR
-----------------------------------------------------------------*/
.c-sidebar1 {
  padding-bottom: 100px;
}
.c-sidebar1 h2 {
  font-size: 1.5rem;
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
  padding-left: 18px;
  border-left: solid 3px #ad002d;
}

.c-sidebar__list1 {
  margin-top: 22px;
  margin-bottom: 50px;
}
.c-sidebar__list1 a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 54px;
  padding: 0 18px;
  font-size: 1.5rem;
}
.c-sidebar__list1 > li:not(:last-child) {
  border-bottom: solid 1px #ededed;
}
.c-sidebar__list1 > li.current-cat a {
  background-color: #f5f2ea;
  color: #ad002d;
}

.c-sidebar__list2 {
  padding: 5px 0;
}
.c-sidebar__list2 > li {
  padding: 20px 0;
  border-bottom: solid 1px #dddddd;
}
.c-sidebar__list2 .c-card3 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.c-sidebar__list2 .c-card3 .img_box {
  min-width: 90px;
  width: 90px;
}
.c-sidebar__list2 .c-card3 .img_box img {
  height: 90px;
}
.c-sidebar__list2 .c-card3 .main {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  font-size: 1rem;
  padding: 0 0 0 17px;
}
.c-sidebar__list2 .c-card3 .main .title {
  font-size: 1.3rem;
}
.c-sidebar__list2 .c-card3 .header {
  margin: 1em 0 0;
}

/*----------------------------------------------------------------
    Box
-----------------------------------------------------------------*/
/* .c-box1
______________________________________________*/
.c-box1 {
  border: solid 1px #dddddd;
  position: relative;
  padding: 100px 50px 66px;
}
@media screen and (max-width: 375px) {
  .c-box1 {
    padding: 30px 20px 30px;
  }
}
.c-box1 h2 {
  font-size: 2.2rem;
  color: #ad002d;
  position: absolute;
  top: 0;
  left: 26px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  line-height: 1;
  background-color: #fff;
  padding: 0 0.7em;
}
/* .c-box2
______________________________________________*/
.c-box2, .c-box2-2 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border: solid 1px #dddddd;
  position: relative;
}
@media screen and (max-width: 375px) {
  .c-box2, .c-box2-2 {
    display: block;
  }
}
.c-box2::after, .c-box2-2::after {
  content: "";
  display: block;
  position: absolute;
  bottom: -1px;
  left: 50%;
  width: 268px;
  height: 93px;
  background-image: url("../../../../uploads/ico-arrow-next-down.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: top center;
  -webkit-transform: translate(-50%, 100%);
          transform: translate(-50%, 100%);
  z-index: -1;
}
@media screen and (max-width: 375px) {
  .c-box2::after, .c-box2-2::after {
    bottom: -60px;
  }
}
.c-box2 > *, .c-box2-2 > * {
  padding: 40px 25px 33px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
@media screen and (max-width: 375px) {
  .c-box2 > *, .c-box2-2 > * {
    padding: 40px 30px 40px;
  }
}
.c-box2 > *:not(:last-child), .c-box2-2 > *:not(:last-child) {
  border-right: solid 1px #dddddd;
}
@media screen and (max-width: 375px) {
  .c-box2 > *:not(:last-child), .c-box2-2 > *:not(:last-child) {
    border-right: none;
    border-bottom: solid 1px #dddddd;
  }
}
.c-box2 > * a, .c-box2-2 > * a {
  width: 100%;
  margin-top: auto;
}
.c-box2 > * h3, .c-box2 > * .p-mission-block1 table th, .p-mission-block1 table .c-box2 > * th, .c-box2-2 > * h3, .c-box2-2 > * .p-mission-block1 table th, .p-mission-block1 table .c-box2-2 > * th, .c-box2 > * .c-post h4, .c-box2-2 > * .c-post h4, .c-post .c-box2 > * h4, .c-post .c-box2-2 > * h4 {
  text-align: center;
  font-size: 2rem;
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
  margin-bottom: 10px;
}
.c-box2 > * h3 > span, .c-box2 > * .p-mission-block1 table th > span, .p-mission-block1 table .c-box2 > * th > span, .c-box2-2 > * h3 > span, .c-box2-2 > * .p-mission-block1 table th > span, .p-mission-block1 table .c-box2-2 > * th > span, .c-box2 > * .c-post h4 > span, .c-box2-2 > * .c-post h4 > span, .c-post .c-box2 > * h4 > span, .c-post .c-box2-2 > * h4 > span {
  font-size: 1.5rem;
  font-size: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
  color: #ad002d;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 7px;
}
.c-box2 > * h3 > span::before, .c-box2 > * .p-mission-block1 table th > span::before, .p-mission-block1 table .c-box2 > * th > span::before, .c-box2-2 > * h3 > span::before, .c-box2-2 > * .p-mission-block1 table th > span::before, .p-mission-block1 table .c-box2-2 > * th > span::before, .c-box2 > * .c-post h4 > span::before, .c-box2-2 > * .c-post h4 > span::before, .c-post .c-box2 > * h4 > span::before, .c-post .c-box2-2 > * h4 > span::before, .c-box2 > * h3 > span::after, .c-box2 > * .p-mission-block1 table th > span::after, .p-mission-block1 table .c-box2 > * th > span::after, .c-box2-2 > * h3 > span::after, .c-box2-2 > * .p-mission-block1 table th > span::after, .p-mission-block1 table .c-box2-2 > * th > span::after, .c-box2 > * .c-post h4 > span::after, .c-box2-2 > * .c-post h4 > span::after, .c-post .c-box2 > * h4 > span::after, .c-post .c-box2-2 > * h4 > span::after {
  content: "";
  display: block;
  width: 15px;
  height: 1px;
  background-color: #ad002d;
  opacity: 0.2;
  margin: 0 12px;
}
.c-box2 > * h4, .c-box2-2 > * h4 {
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
  font-size: 1.6rem;
  margin: 24px 0 30px;
  text-align: center;
  line-height: 1.375;
}
.c-box2 .txt1, .c-box2-2 .txt1 {
  font-size: 1.5rem;
  line-height: 2;
  margin-bottom: 25px;
}

.c-box2-2 .img {
  display: block;
  margin: 15px auto 15px;
  width: 97%;
}
.c-box2-2 h4 {
  font-size: 1.8rem;
  margin-bottom: 20px;
}

/* .c-box-caution 
______________________________________________*/
.c-box-caution {
  border: solid 1px #ad002d;
  padding: 26px 36px 35px;
  font-size: 1.4rem;
  line-height: 2.1428571429;
}
@media screen and (max-width: 375px) {
  .c-box-caution {
    padding: 20px 20px 30px;
  }
}
.c-box-caution h2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.8rem;
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
  color: #ad002d;
  margin-bottom: 0.8em;
}
.c-box-caution h2::before {
  content: "";
  display: block;
  width: 27px;
  height: 24px;
  background-image: url("../../../../uploads/ico-caution.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  margin-right: 5px;
}
.c-box-caution ol {
  list-style-type: decimal;
  margin-left: 1em;
}
.c-box-caution .c-btn2, .c-box-caution .c-btn2--dl, .c-box-caution .c-pager2 > *, .c-box-caution .h-big-menu--program .ttl, .h-big-menu--program .c-box-caution .ttl {
  margin-top: 0.4em;
}

/* .c-modal__textbook 
______________________________________________*/
.c-modal__textbook {
  padding: 100px 70px;
}
@media screen and (max-width: 375px) {
  .c-modal__textbook {
    padding: 60px 20px;
  }
}
.c-modal__textbook .c-btn1--dl {
  margin-top: 32px;
}
.c-modal__textbook .contents {
  margin-top: 67px;
  padding: 60px 0 60px;
  border-top: solid 1px #dddddd;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.6rem;
}
@media screen and (max-width: 375px) {
  .c-modal__textbook .contents {
    margin-top: 30px;
    padding: 30px 0 30px;
    display: block;
    font-size: 1em;
  }
}
.c-modal__textbook .contents > * {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.c-modal__textbook .contents > *:nth-child(2) {
  border-left: solid 1px #dddddd;
  padding-left: 46px;
}
@media screen and (max-width: 375px) {
  .c-modal__textbook .contents > *:nth-child(2) {
    border-left: none;
    border-top: solid 1px #dddddd;
    padding: 30px 0 0;
    margin-top: 30px;
  }
}
.c-modal__textbook .contents > * h3, .c-modal__textbook .contents > * .p-mission-block1 table th, .p-mission-block1 table .c-modal__textbook .contents > * th, .c-modal__textbook .contents > * .c-post h4, .c-post .c-modal__textbook .contents > * h4 {
  font-size: 1.8rem;
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
  margin-bottom: 1em;
}
.c-modal__textbook .cc h3, .c-modal__textbook .cc .p-mission-block1 table th, .p-mission-block1 table .c-modal__textbook .cc th, .c-modal__textbook .cc .c-post h4, .c-post .c-modal__textbook .cc h4 {
  font-size: 1.5rem;
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
  opacity: 0.3;
  margin-bottom: 1.5rem;
}
.c-modal__textbook .cc .txt {
  font-size: 1.3rem;
  color: rgba(8, 0, 0, 0.5);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (max-width: 375px) {
  .c-modal__textbook .cc .txt {
    display: block;
  }
}
.c-modal__textbook .cc .txt > *:nth-child(1) {
  width: 88px;
  margin-right: 20px;
}
@media screen and (max-width: 375px) {
  .c-modal__textbook .cc .txt > *:nth-child(1) {
    margin-bottom: 10px;
  }
}
.c-modal__textbook > h2:first-child {
  margin-top: 0 !important;
}

.c-attention {
  color: #ad002d;
  border: solid 1px #ad002d;
  padding: 0.8em 1em;
  margin: 2em 0 0;
}

.c-service_policy {
  max-width: 1200px;
  max-height: 500px;
  overflow-y: scroll;
  border: solid 1px #dddddd;
  padding: 40px 40px;
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
  font-size: 1.6rem;
}
@media screen and (max-width: 375px) {
  .c-service_policy {
    padding: 20px 20px;
    font-size: 1em;
    max-height: 300px;
  }
}
.c-service_policy h2 {
  font-size: 2.2rem;
  border-bottom: solid 1px #dddddd;
  margin-bottom: 1em;
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
}
@media screen and (max-width: 375px) {
  .c-service_policy h2 {
    font-size: 1.2em;
  }
}
.c-service_policy h3, .c-service_policy .p-mission-block1 table th, .p-mission-block1 table .c-service_policy th, .c-service_policy .c-post h4, .c-post .c-service_policy h4 {
  font-size: 1.8rem;
  margin: 2em 0 1em;
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
}
@media screen and (max-width: 375px) {
  .c-service_policy h3, .c-service_policy .p-mission-block1 table th, .p-mission-block1 table .c-service_policy th, .c-service_policy .c-post h4, .c-post .c-service_policy h4 {
    font-size: 1.1em;
  }
}
.c-service_policy strong {
  font-weight: bold;
  border-bottom: solid 2px #ad002d;
}

/* .c-box-speaker
______________________________________________*/
.c-box-speaker {
  border: solid 1px #dddddd;
  padding: 50px 40px;
  position: relative;
  font-size: 1.6rem;
  margin-top: 80px;
}
@media screen and (max-width: 375px) {
  .c-box-speaker {
    padding: 40px 20px;
    font-size: 1em;
  }
}
.c-box-speaker h3, .c-box-speaker .p-mission-block1 table th, .p-mission-block1 table .c-box-speaker th, .c-box-speaker .c-post h4, .c-post .c-box-speaker h4 {
  font-size: 3rem;
  background: #fff;
  padding: 0 0.5em;
  position: absolute;
  top: 0;
  left: 58px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  line-height: 1;
}
@media screen and (max-width: 375px) {
  .c-box-speaker h3, .c-box-speaker .p-mission-block1 table th, .p-mission-block1 table .c-box-speaker th, .c-box-speaker .c-post h4, .c-post .c-box-speaker h4 {
    font-size: 1.3em;
    left: 1em;
  }
}
.c-box-speaker h4 {
  font-size: 2.2rem;
  font-family: "Tiro Tamil", "游明朝", "Yu Mincho", "YuMincho", "Noto Serif JP", "Noto Serif JP", "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", "HGS明朝E", serif;
  color: #ad002d;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 42px 0 38px;
}
@media screen and (max-width: 375px) {
  .c-box-speaker h4 {
    font-size: 1.1em;
    margin: 2em 0 1em;
  }
}
.c-box-speaker h4::after {
  content: "";
  display: block;
  margin-left: 30px;
  border-top: solid 1px #dddddd;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.c-box-speaker > *:nth-child(2) {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 375px) {
  .c-box-speaker > *:nth-child(2) {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.c-box-speaker > *:nth-child(2) img {
  max-width: 180px;
  width: 180px;
  margin-right: 35px;
}
@media screen and (max-width: 375px) {
  .c-box-speaker > *:nth-child(2) img {
    margin: 0 auto 20px;
  }
}
.c-box-speaker > *:nth-child(2) .bio {
  font-size: 0.9em;
}
.c-box-speaker > *:nth-child(2) .name {
  font-size: 2.4rem;
}
@media screen and (max-width: 375px) {
  .c-box-speaker > *:nth-child(2) .name {
    font-size: 1.4em;
    text-align: center;
  }
}

/*----------------------------------------------------------------
    Block
-----------------------------------------------------------------*/
/* .c-block1
______________________________________________*/
.c-block1 {
  padding-top: 110px;
  padding-bottom: 150px;
}
@media screen and (max-width: 375px) {
  .c-block1 {
    padding-top: 42px;
    padding-bottom: 60px;
  }
}
.c-block1 > h2 {
  margin-bottom: 60px;
}
@media screen and (max-width: 375px) {
  .c-block1 > h2 {
    margin-bottom: 20px;
  }
}

/* .c-hero
______________________________________________*/
.c-hero {
  position: relative;
}

.c-hero__slide-item {
  height: 100%;
  overflow: hidden;
}
.c-hero__slide-item img {
  position: relative;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  min-height: 620px;
  height: calc(100vh - 190px);
}
@media screen and (max-width: 375px) {
  .c-hero__slide-item img {
    min-height: 510px;
    height: calc(100vh - 147px);
  }
}
.c-hero__slide-item.on img {
  -webkit-animation: zoomSlide 20s linear forwards;
          animation: zoomSlide 20s linear forwards;
}

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

@keyframes zoomSlide {
  0% {
    -webkit-transform: scale(1.3);
            transform: scale(1.3);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@-webkit-keyframes fadeSlide {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeSlide {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.c-hero__info {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: rgba(31, 22, 2, 0.51);
  color: #fff;
  text-align: center;
  font-size: 1.6rem;
}
@media screen and (max-width: 375px) {
  .c-hero__info {
    padding: 0 40px 10px;
    font-size: 1.5rem;
    text-align: left;
  }
}
.c-hero__info h2 {
  margin: 10px 0 30px;
}
@media screen and (max-width: 375px) {
  .c-hero__info h2 {
    margin: 0 0 21px;
  }
}
.c-hero__info h2 span {
  display: block;
  font-size: 2.3rem;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 375px) {
  .c-hero__info h2 span {
    font-size: 1.6rem;
    white-space: nowrap;
    margin: 0 0 3px 0;
    display: block;
    letter-spacing: 0.1em;
  }
}
.c-hero__info h2 img {
  margin: 0 auto;
  width: 878px;
}
@media screen and (max-width: 375px) {
  .c-hero__info h2 img {
    width: 295px;
    min-width: 295px;
  }
}
.c-hero__info nav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 20px;
  margin: 54px 0 25px;
}
@media screen and (max-width: 375px) {
  .c-hero__info nav {
    display: block;
    margin: 42px 0 25px;
  }
  .c-hero__info nav > * {
    width: 100%;
  }
  .c-hero__info nav > *:nth-child(1) {
    border-bottom: none;
  }
}

/* c-scrollDown
______________________________________________*/
.c-scrollDown {
  position: absolute;
  right: 36px;
  bottom: 90px;
  line-height: 1;
  font-size: 1.5rem;
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
  z-index: 10;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  font-family: "Tiro Tamil", "游明朝", "Yu Mincho", "YuMincho", "Noto Serif JP", "Noto Serif JP", "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", "HGS明朝E", serif;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 375px) {
  .c-scrollDown {
    display: none;
  }
}
.c-scrollDown::before, .c-scrollDown::after {
  content: "";
  display: block;
  width: 1px;
  height: 78px;
  background-color: rgba(255, 255, 255, 0.3);
  position: absolute;
  bottom: -90px;
  left: 50%;
}
.c-scrollDown::after {
  background-color: #fff;
  -webkit-transform: scaleY(0);
          transform: scaleY(0);
  -webkit-transform-origin: top;
          transform-origin: top;
  -webkit-animation: scroll_anime 2s cubic-bezier(0.415, 0.15, 0.15, 1) infinite;
          animation: scroll_anime 2s cubic-bezier(0.415, 0.15, 0.15, 1) infinite;
}

@-webkit-keyframes scroll_anime {
  0% {
    -webkit-transform: scaleY(0);
            transform: scaleY(0);
  }
  25% {
    -webkit-transform: scaleY(1);
            transform: scaleY(1);
    -webkit-transform-origin: top;
            transform-origin: top;
  }
  30% {
    -webkit-transform-origin: bottom;
            transform-origin: bottom;
  }
  40% {
    -webkit-transform: scaleY(1);
            transform: scaleY(1);
  }
  65% {
    -webkit-transform: scaleY(0);
            transform: scaleY(0);
    -webkit-transform-origin: bottom;
            transform-origin: bottom;
  }
  100% {
    -webkit-transform-origin: top;
            transform-origin: top;
  }
}

@keyframes scroll_anime {
  0% {
    -webkit-transform: scaleY(0);
            transform: scaleY(0);
  }
  25% {
    -webkit-transform: scaleY(1);
            transform: scaleY(1);
    -webkit-transform-origin: top;
            transform-origin: top;
  }
  30% {
    -webkit-transform-origin: bottom;
            transform-origin: bottom;
  }
  40% {
    -webkit-transform: scaleY(1);
            transform: scaleY(1);
  }
  65% {
    -webkit-transform: scaleY(0);
            transform: scaleY(0);
    -webkit-transform-origin: bottom;
            transform-origin: bottom;
  }
  100% {
    -webkit-transform-origin: top;
            transform-origin: top;
  }
}
/* .c-mv1
______________________________________________*/
.c-mv1 {
  margin: 0px auto 0;
  height: 385px;
  position: relative;
  padding: 112px 0 0 0;
  line-height: 1.8888888889;
}

.c-mv2 {
  margin: 150px auto 0;
  height: 385px;
  position: relative;
  padding: 112px 0 0 0;
  line-height: 1.8888888889;
}

@media screen and (max-width: 375px) {
  .c-mv1, .c-mv2 {
    height: auto;
    padding: 20px 20px 0;
  }
}
.c-mv1::before, .c-mv2::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  right: calc(50% + 534px);
  width: 385px;
  height: 385px;
  background-image: url("../../../../uploads/mv-bg1.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: left bottom;
  z-index: -1;
  -webkit-transition: all 1.25s ease;
  transition: all 1.25s ease;
}
@media screen and (max-width: 1380px) {
  .c-mv1::before, .c-mv2::before {
    right: calc(50% + 480px);
  }
}
.c-mv1::after, .c-mv2::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: calc(50% + 534px + 385px);
  width: 100vw;
  height: 100%;
  background-color: #f5f2ea;
}
.c-mv1 .bg, .c-mv2 .bg {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  z-index: -1;
}
@media screen and (max-width: 375px) {
  .c-mv1 .bg, .c-mv2 .bg {
    top: 100px;
    height: 200px;
  }
}
.c-mv1 .bg img, .c-mv2 .bg img {
  width: auto;
  height: 100%;
}
@media screen and (max-width: 375px) {
  .c-mv1 .bg img, .c-mv2 .bg img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
.c-mv1 .c-ttl1, .c-mv1 .c-ttl1--center, .c-mv2 .c-ttl1, .c-mv2 .c-ttl1--center {
  font-size: 5rem;
  padding-bottom: 46px;
}
@media screen and (max-width: 375px) {
  .c-mv1 .c-ttl1, .c-mv1 .c-ttl1--center, .c-mv2 .c-ttl1, .c-mv2 .c-ttl1--center {
    font-size: 3.2rem;
    padding-bottom: 258px;
  }
}
@media screen and (max-width: 375px) {
  .c-mv1 .c-ttl1 strong, .c-mv1 .c-ttl1--center strong, .c-mv2 .c-ttl1 strong, .c-mv2 .c-ttl1--center strong {
    margin-bottom: 3px;
  }
}
@media screen and (max-width: 375px) {
  .c-mv1 .txt1, .c-mv2 .txt1 {
    line-height: 1.7333333333;
  }
  .c-mv1 .txt1 br, .c-mv2 .txt1 br {
    display: none;
  }
}
.c-mv1 > *, .c-mv2 > * {
  max-width: 1200px;
  margin: 0 auto;
}
.c-mv1 small, .c-mv2 small {
  font-size: 1.2rem;
}

/* .c-mv2
______________________________________________*/
@media screen and (max-width: 375px) {
  .c-mv2 {
    height: 110px !important;
  }
}
.c-mv2::before {
  bottom: auto;
  left: auto;
  top: 0;
  right: 0;
  width: 253px;
  height: 253px;
  background-image: url("../../../../uploads/mv-bg2.svg");
  background-position: top right;
}
@media screen and (max-width: 375px) {
  .c-mv2::before {
    display: none;
  }
}
.c-mv2::after {
  display: none;
}
.c-mv2 > * {
  position: relative;
}
.c-mv2 .bg-txt {
  font-size: 19.5rem;
  font-family: "Tiro Tamil", "游明朝", "Yu Mincho", "YuMincho", "Noto Serif JP", "Noto Serif JP", "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", "HGS明朝E", serif;
  color: #fff;
  -webkit-text-stroke: 1px #e6e2d5;
  line-height: 1;
  position: absolute;
  top: 0;
  right: 0;
  white-space: nowrap;
  max-width: none;
}
@media screen and (max-width: 375px) {
  .c-mv2 .bg-txt {
    display: none;
  }
}
@media screen and (max-width: 375px) {
  .c-mv2 .c-ttl1, .c-mv2 .c-ttl1--center {
    padding-bottom: 0;
  }
}

/* .c-header1
______________________________________________*/
.c-header1 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 56px;
}
@media screen and (max-width: 375px) {
  .c-header1 {
    display: block;
    margin-bottom: 34px;
  }
}
.c-header1 .c-ttl1, .c-header1 .c-ttl1--center {
  margin-right: 70px;
}
@media screen and (max-width: 375px) {
  .c-header1 .c-ttl1, .c-header1 .c-ttl1--center {
    margin-right: 0;
    padding-right: 0;
  }
}
.c-header1 .txt1 {
  font-size: 1.6rem;
  line-height: 2;
  margin: -7px 0 0;
}
@media screen and (max-width: 375px) {
  .c-header1 .txt1 {
    font-size: 1.5rem;
    margin: 17px 0 0;
    line-height: 1.7333333333;
  }
}
/* .c-slide1
______________________________________________*/
.c-slide1__slide {
  width: 100vw;
}
.c-slide1__slide .c-card-program {
  margin: 3px 30px 8px 3px;
  -webkit-transform: translateX(8px);
          transform: translateX(8px);
}
.c-slide1__slide .c-card2 {
  margin: 3px 22px 8px 3px;
}
.c-slide1__slide .slick-dots {
  bottom: auto;
  position: relative;
  margin-top: 35px;
  margin-left: calc((100vw - 1120px) / -2);
}
.c-slide1__slide .slick-dots button::before {
  font-size: 15px;
}
.c-slide1__slide .slick-dots .slick-active button::before {
  color: #ad002d;
}
.c-slide1__slide .slick-prev,
.c-slide1__slide .slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: calc(50% - 62px);
  width: 50px;
  height: 50px;
  padding: 0;
  -webkit-transform: translateX(-58px);
          transform: translateX(-58px);
  background: #000;
  border-radius: 50%;
  background-image: url("../../../../uploads/ico-arrow2-wh.svg");
  background-size: 14px auto;
  background-repeat: no-repeat;
  background-position: center;
  z-index: 99;
}
.c-slide1__slide .slick-prev::before,
.c-slide1__slide .slick-next::before {
  display: none;
}
.c-slide1__slide .slick-prev {
  -webkit-transform: translateX(-58px) rotate(180deg);
          transform: translateX(-58px) rotate(180deg);
}
.c-slide1__slide .slick-next {
  left: 1160px;
}

.c-slide1__btn2 {
  position: absolute;
  bottom: 0;
  right: 38px;
}
@media screen and (max-width: 375px) {
  .c-slide1__btn2 {
    right: 50%;
    -webkit-transform: translateX(50%);
            transform: translateX(50%);
  }
}

/* .c-modal
______________________________________________*/
.c-modal {
  z-index: 100;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  height: 100svh;
  padding: 80px;
  background-color: rgba(0, 0, 0, 0.8);
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
}
@media screen and (max-width: 375px) {
  .c-modal {
    padding: 60px 20px;
  }
}
.c-modal > * {
  max-width: 1200px;
  max-height: 100%;
  height: 100%;
  margin: auto;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.c-modal > * > * {
  width: 100%;
  max-height: 100%;
  height: 100%;
  overflow: scroll;
  background-color: #fff;
}
.c-modal > * > * > * {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.c-modal > * .close {
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 220px;
  height: 60px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #080000;
  color: #fff;
  font-size: 1.6rem;
  font-weight: bold;
  -webkit-transform: translate(-50%, 50%);
          transform: translate(-50%, 50%);
  border-radius: 30px;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
.c-modal > * .close::before {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  background-image: url("../../../../uploads/ico-close1.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  margin-right: 11px;
}
.c-modal > * .close:hover {
  opacity: 1;
  background-color: #444;
}

.is-modal {
  overflow: hidden;
}
.is-modal .c-modal {
  opacity: 1;
  pointer-events: auto;
}
.is-modal .c-modal > * {
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.c-modal__contents {
  display: none;
}

/* .c-modal__member 
______________________________________________*/
.c-modal__member {
  padding: 86px 100px;
}
@media screen and (max-width: 375px) {
  .c-modal__member {
    padding: 36px 20px;
  }
}
.c-modal__member .header {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.6rem;
}
@media screen and (max-width: 375px) {
  .c-modal__member .header {
    display: block;
    font-size: 1.5rem;
  }
}
.c-modal__member .header > *:nth-child(1) {
  max-width: 220px;
  width: 220px;
  margin-right: 52px;
}
@media screen and (max-width: 375px) {
  .c-modal__member .header > *:nth-child(1) {
    margin: 0 auto 30px;
  }
}
.c-modal__member .header .title {
  color: #231816;
  line-height: 1.75;
  margin-bottom: 1em;
}
.c-modal__member .header .name_en {
  color: #838383;
  font-family: "Tiro Tamil", "游明朝", "Yu Mincho", "YuMincho", "Noto Serif JP", "Noto Serif JP", "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", "HGS明朝E", serif;
}
.c-modal__member .header .name {
  font-size: 3rem;
}
.c-modal__member .sns {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 16px;
}
.c-modal__member .sns a {
  display: block;
  width: 28px;
  margin-right: 9px;
}
.c-modal__member .c-ttl4 {
  margin: 80px 0 30px;
}
@media screen and (max-width: 375px) {
  .c-modal__member .c-ttl4 {
    margin: 30px 0 20px;
  }
}
.c-modal__member .content {
  font-size: 1.6rem;
}
@media screen and (max-width: 375px) {
  .c-modal__member .content {
    font-size: 1.5rem;
    line-height: 1.7333333333;
  }
}
.c-modal__member .content p {
  margin-bottom: 2em;
}

.c-modal__video {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.c-modal__video .c-youtube {
  width: 100%;
}

.c-corporate-slide {
  mix-blend-mode: multiply;
  width: 100vw;
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.c-corporate-slide .item {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-right: 20px;
}
.c-corporate-slide .item img {
  width: 120px;
  height: 60px;
  margin-right: 20px;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (max-width: 375px) {
  .c-corporate-slide .item img {
    -o-object-fit: contain;
       object-fit: contain;
  }
}
.c-corporate-slide .slick-track {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

/*----------------------------------------------------------------
  Card
-----------------------------------------------------------------*/
.c-card-textbook {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (max-width: 375px) {
  .c-card-textbook {
    display: block;
  }
}
.c-card-textbook .img_box {
  width: 195px;
  min-width: 195px;
  margin-right: 56px;
}
@media screen and (max-width: 375px) {
  .c-card-textbook .img_box {
    margin: 0 auto 30px;
  }
}
.c-card-textbook .title {
  font-size: 2.4rem;
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
  margin-bottom: 1em;
}
@media screen and (max-width: 375px) {
  .c-card-textbook .title {
    font-size: 1.8rem;
    text-align: left;
  }
}
.c-card-textbook .credit1 {
  font-size: 1.5rem;
  color: #909090;
  margin: 2em 0;
}
.c-card-textbook nav > ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
@media screen and (max-width: 375px) {
  .c-card-textbook nav > ul {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.c-card-textbook nav > ul > li {
  padding: 0 30px;
  white-space: nowrap;
}
@media screen and (max-width: 375px) {
  .c-card-textbook nav > ul > li {
    padding: 0 20px;
  }
}
.c-card-textbook nav > ul > li:nth-child(2) {
  border-left: solid 1px #dddddd;
  padding-right: 0;
}

/* .c-card-program
______________________________________________*/
.c-card-program {
  display: block;
  width: 350px;
  background-color: #fff;
  font-size: 1.5rem;
  position: relative;
}
@media screen and (max-width: 375px) {
  .c-card-program {
    width: 100%;
  }
}
.c-card-program .main {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 12px 25px 50px;
}
@media screen and (max-width: 375px) {
  .c-card-program .main {
    padding: 28px 20px 26px;
  }
}
.c-card-program .img_box img {
  aspect-ratio: 1.5350877193;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.c-card-program h3, .c-card-program .p-mission-block1 table th, .p-mission-block1 table .c-card-program th, .c-card-program .c-post h4, .c-post .c-card-program h4 {
  font-size: 2rem;
  padding-bottom: 0.7em;
  border-bottom: solid 1px #dddddd;
  position: relative;
  margin-bottom: 22px;
}
@media screen and (max-width: 375px) {
  .c-card-program h3, .c-card-program .p-mission-block1 table th, .p-mission-block1 table .c-card-program th, .c-card-program .c-post h4, .c-post .c-card-program h4 {
    font-size: 2rem;
    margin-bottom: 24px;
  }
}
.c-card-program h3::after, .c-card-program .p-mission-block1 table th::after, .p-mission-block1 table .c-card-program th::after, .c-card-program .c-post h4::after, .c-post .c-card-program h4::after {
  content: "";
  display: block;
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 2em;
  height: 1px;
  background-color: #ad002d;
}
.c-card-program .tab {
  position: relative;
  background-color: #ad002d;
  font-size: 1.1rem;
  line-height: 1;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 21px;
  border-radius: 13px;
  color: #fff;
  font-weight: bold;
  padding: 0.2em 10px;
  margin: 10px 0 14px;
}
@media screen and (max-width: 375px) {
  .c-card-program .tab {
    height: 21px;
    border-radius: 10px;
    font-size: 1rem;
    margin: 10px 0 14px;
  }
}
.c-card-program .tab::after {
  content: "";
  display: block;
  position: absolute;
  bottom: -6px;
  left: 21px;
  width: 12px;
  height: 6px;
  background-image: url("../../../../uploads/ico-tab-p.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: top center;
}
.c-card-program h4 {
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
  margin-bottom: 10px;
  font-size: 1.6rem;
  line-height: 1.3;
}
.c-card-program h4 strong {
  display: inline-block;
  border-bottom: solid 2px #ad002d;
}
.c-card-program .bottom {
  margin: 20px 0 0 auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  position: absolute;
  bottom: 20px;
  right: 20px;
}
@media screen and (max-width: 375px) {
  .c-card-program .bottom {
    margin: 10px 0 0 auto;
    position: relative;
    bottom: auto;
    right: auto;
  }
}

.c-program_card_list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  font-size: 1.3rem;
  font-weight: bold;
}
@media screen and (max-width: 375px) {
  .c-program_card_list {
    font-size: 1.5rem;
  }
}
.c-program_card_list li {
  position: relative;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin-right: 10px;
  margin-bottom: 6px;
}
@media screen and (max-width: 375px) {
  .c-program_card_list li {
    margin-right: 10px;
    margin-bottom: 5px;
  }
}
.c-program_card_list li::before {
  content: "";
  display: block;
  width: 17px;
  height: 17px;
  background-image: url("../../../../uploads/ico-time.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  margin-right: 3px;
}
.c-program_card_list li.num::before {
  background-image: url("../../../../uploads/ico-man.svg");
}
.c-program_card_list li.program::before {
  background-image: url("../../../../uploads/ico-program.svg");
}
.c-program_card_list li.place::before {
  background-image: url("../../../../uploads/ico-pin.svg");
}

.c-program_cat_list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.c-program_cat_list > li {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  line-height: 1;
  font-size: 1.1rem;
  padding: 0.3em 1em;
  border: solid 1px #ad002d;
  color: #ad002d;
  margin: 0 8px 8px 0;
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
  white-space: nowrap;
}
@media screen and (max-width: 375px) {
  .c-program_cat_list > li {
    font-size: 1.1rem;
  }
}

/* .c-card2
______________________________________________*/
.c-card2 {
  display: block;
  width: 100%;
  height: calc(100% - 20px);
  background-color: #fff;
  font-size: 1.5rem;
}
.c-card2 .main {
  padding: 16px 30px 50px;
}
.c-card2 .c-cat-program {
  margin: 0 0 14px;
}
.c-card2 .title {
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
  font-size: 1.8rem;
  line-height: 1.4444444444;
  /*
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  overflow: hidden;
  */
  padding-bottom: 14px;
  position: relative;
}
.c-card2 .title::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 22px;
  height: 1px;
  background-color: #080000;
}
.c-card2 .company {
  font-weight: bold;
  margin: 10px 0 2px;
}
.c-card2 .department {
  font-size: 1.2rem;
  line-height: 1.5;
}

.c-cat-program {
  position: relative;
  font-size: 1.2rem;
  line-height: 1;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 1.8333333333em;
  border-radius: 0.9166666667em;
  color: #ad002d;
  padding: 0.2em 0.5em;
  border: solid 1px #ad002d;
}

/* .c-card3
______________________________________________*/
.c-card3 {
  display: block;
  font-size: 1.3rem;
}
.c-card3 .img_box img {
  aspect-ratio: 1.5;
  -o-object-fit: contain;
     object-fit: contain;
}
.c-card3 .header {
  margin: 15px 0 10px;
}
.c-card3 .header,
.c-card3 .cat {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  color: #909090;
}
.c-card3 .header > *,
.c-card3 .cat > * {
  margin-right: 1em;
}
.c-card3 .title {
  font-size: 1.6rem;
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
  line-height: 1.625;
}

.c-slide1__slide .c-card2 {
  width: 262px;
}
.c-slide1__slide .c-card3 {
  width: 264px;
  margin: 0 22px 0 0;
}

/* PCサイズの横長カード
______________________________________________*/
@media screen and (min-width: 376px) {
  .c-list-program .c-card-program {
    display: block;
    width: 400px;
    background-color: #fff;
    font-size: 1.5rem;
  }
}
@media screen and (min-width: 376px) and (max-width: 375px) {
  .c-list-program .c-card-program {
    width: 100%;
  }
}
@media screen and (min-width: 376px) {
  .c-list-program .c-card-program .main {
    padding: 42px 30px 26px;
  }
}
@media screen and (min-width: 376px) and (max-width: 375px) {
  .c-list-program .c-card-program .main {
    padding: 28px 20px 26px;
  }
}
@media screen and (min-width: 376px) {
  .c-list-program .c-card-program .img_box img {
    aspect-ratio: 1.5384615385;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .c-list-program .c-card-program h3, .c-list-program .c-card-program .p-mission-block1 table th, .p-mission-block1 table .c-list-program .c-card-program th, .c-list-program .c-card-program .c-post h4, .c-post .c-list-program .c-card-program h4 {
    font-size: 2.4rem;
    padding-bottom: 0.7em;
    border-bottom: solid 1px #dddddd;
    position: relative;
    margin-bottom: 30px;
  }
}
@media screen and (min-width: 376px) and (max-width: 375px) {
  .c-list-program .c-card-program h3, .c-list-program .c-card-program .p-mission-block1 table th, .p-mission-block1 table .c-list-program .c-card-program th, .c-list-program .c-card-program .c-post h4, .c-post .c-list-program .c-card-program h4 {
    font-size: 2rem;
    margin-bottom: 24px;
  }
}
@media screen and (min-width: 376px) {
  .c-list-program .c-card-program h3::after, .c-list-program .c-card-program .p-mission-block1 table th::after, .p-mission-block1 table .c-list-program .c-card-program th::after, .c-list-program .c-card-program .c-post h4::after, .c-post .c-list-program .c-card-program h4::after {
    content: "";
    display: block;
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 2em;
    height: 1px;
    background-color: #ad002d;
  }
  .c-list-program .c-card-program .tab {
    position: relative;
    background-color: #ad002d;
    font-size: 1.2rem;
    line-height: 1;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 26px;
    border-radius: 13px;
    color: #fff;
    font-weight: bold;
    padding: 0.2em 10px;
    margin: 10px 0 14px;
  }
}
@media screen and (min-width: 376px) and (max-width: 375px) {
  .c-list-program .c-card-program .tab {
    height: 21px;
    border-radius: 10px;
    font-size: 1rem;
  }
}
@media screen and (min-width: 376px) {
  .c-list-program .c-card-program .tab::after {
    content: "";
    display: block;
    position: absolute;
    width: 20px;
    height: 10px;
    background-image: url("../../../../uploads/ico-tab-p.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: top center;
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
    bottom: 8px;
    right: -10px;
    left: auto;
  }
  .c-list-program .c-card-program h4 {
    font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
    margin-bottom: 10px;
    font-size: 1.8rem;
  }
  .c-list-program .c-card-program h4 strong {
    display: inline-block;
    border-bottom: solid 2px #ad002d;
  }
  .c-list-program .c-card-program .bottom {
    margin: 28px 0 0 auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
@media screen and (min-width: 376px) and (max-width: 375px) {
  .c-list-program .c-card-program .bottom {
    margin: 10px 0 0 auto;
  }
}
@media screen and (min-width: 376px) {
  .c-list-program .c-program_card_list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    font-size: 1.4rem;
    font-weight: bold;
  }
}
@media screen and (min-width: 376px) and (max-width: 375px) {
  .c-list-program .c-program_card_list {
    font-size: 1.5rem;
  }
}
@media screen and (min-width: 376px) {
  .c-list-program .c-program_card_list li {
    position: relative;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    margin-right: 20px;
    margin-bottom: 10px;
  }
}
@media screen and (min-width: 376px) and (max-width: 375px) {
  .c-list-program .c-program_card_list li {
    margin-right: 10px;
    margin-bottom: 5px;
  }
}
@media screen and (min-width: 376px) {
  .c-list-program .c-program_card_list li::before {
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    background-image: url("../../../../uploads/ico-time.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    margin-right: 7px;
  }
  .c-list-program .c-program_card_list li.num::before {
    background-image: url("../../../../uploads/ico-man.svg");
  }
  .c-list-program .c-program_card_list li.program::before {
    background-image: url("../../../../uploads/ico-program.svg");
  }
  .c-list-program .c-program_card_list li.place::before {
    background-image: url("../../../../uploads/ico-pin.svg");
  }
  .c-list-program .c-program_cat_list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .c-list-program .c-program_cat_list > li {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    line-height: 1;
    font-size: 1.4rem;
    padding: 0.3em 0.7em;
    border: solid 1px #ad002d;
    color: #ad002d;
    margin: 0 8px 8px 0;
    font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
  }
}
@media screen and (min-width: 376px) and (max-width: 375px) {
  .c-list-program .c-program_cat_list > li {
    font-size: 1.2rem;
  }
}
/*----------------------------------------------------------------
  Navs
-----------------------------------------------------------------*/
.c-nav-slide-program {
  overflow-x: hidden;
  padding: 113px 0 117px;
  position: relative;
}
@media screen and (max-width: 375px) {
  .c-nav-slide-program {
    padding: 60px 0 117px;
    background-color: #f5f2ea;
  }
}
.c-nav-slide-program::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: calc(50% - 480px);
  width: 100vw;
  height: 718px;
  background-color: #f5f2ea;
}
@media screen and (max-width: 375px) {
  .c-nav-slide-program::before {
    display: none;
  }
}
.c-nav-slide-program::after {
  content: "Program";
  font-family: "Tiro Tamil", "游明朝", "Yu Mincho", "YuMincho", "Noto Serif JP", "Noto Serif JP", "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", "HGS明朝E", serif;
  line-height: 1;
  position: absolute;
  top: 45px;
  right: calc(50% - 480px);
  font-size: 22.9rem;
  color: rgba(255, 255, 255, 0.8);
  opacity: 0.6;
}
@media screen and (max-width: 375px) {
  .c-nav-slide-program::after {
    display: none;
  }
}
.c-nav-slide-program > * {
  z-index: 1;
}
@media screen and (max-width: 375px) {
  .c-nav-slide-program > * {
    padding-bottom: 70px;
  }
}
@media screen and (max-width: 375px) {
  .c-nav-slide-program .c-slide1 .c-slide1__nav,
  .c-nav-slide-program .c-slide1 .c-slide1__slide {
    display: none;
  }
}

/* .c-nav-tabs 
______________________________________________*/
.c-nav-tabs {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 47px;
  padding: 10px 0 50px;
}
@media screen and (max-width: 375px) {
  .c-nav-tabs {
    gap: 2em;
    padding: 0 0 30px;
  }
}
.c-nav-tabs button {
  font-weight: bold;
  font-size: 1.8rem;
}
@media screen and (max-width: 375px) {
  .c-nav-tabs button {
    font-size: 1.6rem;
  }
}
.c-nav-tabs button.current {
  color: #ad002d;
}

/* .c-nav-tab1 
______________________________________________*/
.c-nav-tab1 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 44px;
  margin: 20px 0 100px;
}
@media screen and (max-width: 375px) {
  .c-nav-tab1 {
    gap: 0;
    margin: 0 0 60px;
  }
}
.c-nav-tab1 > * {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 60px;
  font-size: 1.6rem;
  font-weight: bold;
  color: #ad002d;
  border: solid 1px #ad002d;
  position: relative;
}
@media screen and (max-width: 375px) {
  .c-nav-tab1 > * {
    display: block;
    font-size: 1.4rem;
  }
}
.c-nav-tab1 > *:hover {
  opacity: 1;
}
.c-nav-tab1 > * strong {
  font-size: 2.2rem;
}
@media screen and (max-width: 375px) {
  .c-nav-tab1 > * strong {
    font-size: 1.8rem;
    display: block;
  }
}
.c-nav-tab1 > *.current {
  background-color: #ad002d;
  color: #fff;
}
.c-nav-tab1 > *.current::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 30px;
  height: 10px;
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-top: 10px solid #ad002d;
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  -webkit-transform: translate(-50%, 100%);
          transform: translate(-50%, 100%);
}

/* .c-nav-sns1 
______________________________________________*/
.c-sns {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.c-sns > * {
  width: 40px;
  display: block;
  margin-right: 10px;
}

.c-nav-sns1 {
  border-top: solid 1px #dddddd;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding-top: 30px;
}
@media screen and (max-width: 375px) {
  .c-nav-sns1 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.c-nav-sns1 h2 {
  font-size: 1.4rem;
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
  margin-right: 1.5rem;
}
@media screen and (max-width: 375px) {
  .c-nav-sns1 h2 {
    margin-bottom: 1em;
  }
}

.c-nav-sns2 {
  position: fixed;
  right: 80px;
  top: 270px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 375px) {
  .c-nav-sns2 {
    display: none;
  }
}
.c-nav-sns2 h2 {
  font-size: 1.4rem;
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
  -webkit-writing-mode: vertical-lr;
      -ms-writing-mode: tb-lr;
          writing-mode: vertical-lr;
  text-align: center;
}
.c-nav-sns2 .c-sns {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.c-nav-sns2 .c-sns > * {
  margin: 10px 0 0;
}

/* .c-nav-block1 
______________________________________________*/
.c-nav-block1, .c-nav-block2 {
  background-color: #f5f2ea;
  padding: 96px 0 150px;
  position: relative;
}
@media screen and (max-width: 375px) {
  .c-nav-block1, .c-nav-block2 {
    padding: 46px 0 60px;
  }
}
.c-nav-block1 > *, .c-nav-block2 > * {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 80px;
}
@media screen and (max-width: 375px) {
  .c-nav-block1 > *, .c-nav-block2 > * {
    padding: 0 20px;
  }
}
.c-nav-block1 h2, .c-nav-block2 h2 {
  text-align: center;
  font-size: 3.4rem;
  margin-bottom: 42px;
}
@media screen and (max-width: 375px) {
  .c-nav-block1 h2, .c-nav-block2 h2 {
    font-size: 2.6rem;
    text-align: left;
    margin-bottom: 22px;
  }
}
.c-nav-block1 .c-btn2, .c-nav-block1 .c-btn2--dl, .c-nav-block1 .c-pager2 > *, .c-nav-block2 .c-btn2, .c-nav-block2 .c-btn2--dl, .c-nav-block2 .c-pager2 > *, .c-nav-block1 .h-big-menu--program .ttl, .c-nav-block2 .h-big-menu--program .ttl, .h-big-menu--program .c-nav-block1 .ttl, .h-big-menu--program .c-nav-block2 .ttl {
  float: right;
  margin-top: 55px;
}
.c-nav-block1 .c-btn1, .c-nav-block1 .c-btn3, .c-nav-block1 .c-btn3--red, .c-nav-block1 .c-btn1--play, .c-nav-block1 .c-btn1--dl, .c-nav-block1 .c-btn1--wh, .c-nav-block2 .c-btn1, .c-nav-block2 .c-btn3, .c-nav-block2 .c-btn3--red, .c-nav-block2 .c-btn1--play, .c-nav-block2 .c-btn1--dl, .c-nav-block2 .c-btn1--wh {
  margin: 85px auto 0;
}
@media screen and (max-width: 375px) {
  .c-nav-block1 .c-btn1, .c-nav-block1 .c-btn3, .c-nav-block1 .c-btn3--red, .c-nav-block1 .c-btn1--play, .c-nav-block1 .c-btn1--dl, .c-nav-block1 .c-btn1--wh, .c-nav-block2 .c-btn1, .c-nav-block2 .c-btn3, .c-nav-block2 .c-btn3--red, .c-nav-block2 .c-btn1--play, .c-nav-block2 .c-btn1--dl, .c-nav-block2 .c-btn1--wh {
    margin: 40px auto 0;
  }
}

/* .c-nav-block2
______________________________________________*/
.c-nav-block2 {
  padding: 76px 0 150px;
}
@media screen and (max-width: 375px) {
  .c-nav-block2 {
    padding: 55px 0 48px;
  }
}
.c-nav-block2 h2 {
  margin-bottom: 67px;
}
@media screen and (max-width: 375px) {
  .c-nav-block2 h2 {
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 375px) {
  .c-nav-block2 .c-btn1, .c-nav-block2 .c-btn3, .c-nav-block2 .c-btn3--red, .c-nav-block2 .c-btn1--play, .c-nav-block2 .c-btn1--dl, .c-nav-block2 .c-btn1--wh {
    margin-top: 30px;
  }
}

.c-nav-block1::after,
.c-nav-block2::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: calc(50% - 25px);
  width: 50px;
  height: 5px;
  background-color: #ad002d;
}
@media screen and (max-width: 375px) {
  .c-nav-block1::after,
  .c-nav-block2::after {
    left: 20px;
  }
}

/* .c-nav1
______________________________________________*/
.c-nav1 {
  margin-bottom: 40px;
}
@media screen and (max-width: 375px) {
  .c-nav1 {
    margin-bottom: 20px;
  }
}
.c-nav1 > ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 10px;
}
@media screen and (max-width: 375px) {
  .c-nav1 > ul {
    gap: 8px;
  }
}
.c-nav1 > ul > li a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 135px;
  height: 40px;
  border: solid 1px #ad002d;
  color: #ad002d;
  font-size: 1.5rem;
  padding: 10px;
}
@media screen and (max-width: 375px) {
  .c-nav1 > ul > li a {
    min-width: 102px;
    height: 23px;
    font-size: 1.3rem;
    padding: 0 10px;
  }
}
.c-nav1 > ul > li:hover a, .c-nav1 > ul > li.current-cat a {
  background-color: #ad002d;
  color: #fff;
}

/* .c-nav2
______________________________________________*/
.c-nav2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 375px) {
  .c-nav2 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}
.c-nav2 a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-right: 30px;
  padding-left: 30px;
  font-weight: bold;
  background-image: url("../../../../uploads/ico-arrow_down1.svg");
  background-size: 17px auto;
  background-repeat: no-repeat;
  background-position: center left 6px;
}
@media screen and (max-width: 375px) {
  .c-nav2 a {
    margin: 0 20px 20px 0;
    white-space: nowrap;
  }
}

/* .c-nav3
______________________________________________*/
.c-nav3 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: 0 0 120px;
}
@media screen and (max-width: 375px) {
  .c-nav3 {
    display: block;
    margin: 0 0 40px;
  }
}
.c-nav3 > * {
  font-size: 1.8rem;
  font-weight: bold;
  padding-right: 34px;
  margin-right: 34px;
  border-right: solid 1px #dddddd;
}
@media screen and (max-width: 375px) {
  .c-nav3 > * {
    font-size: 1.3rem;
    padding-right: 1em;
    margin-right: 1em;
    margin-bottom: 1em;
  }
}
.c-nav3 > *:last-child {
  border-right: none;
}
.c-nav3 > *.current {
  color: #ad002d;
}

/* .c-school-nav
______________________________________________*/
.c-school-nav {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 36px;
}
@media screen and (max-width: 375px) {
  .c-school-nav {
    grid-template-columns: repeat(1, 1fr);
    gap: 10px;
  }
}
.c-school-nav .c-btn1, .c-school-nav .c-btn3, .c-school-nav .c-btn3--red, .c-school-nav .c-btn1--play, .c-school-nav .c-btn1--dl, .c-school-nav .c-btn1--wh {
  width: 100%;
  border-color: #ddd;
  color: #080000;
  height: 80px;
  background-position: center right 30px;
  padding: 0 35px;
  background-color: #fff;
}
@media screen and (max-width: 375px) {
  .c-school-nav .c-btn1, .c-school-nav .c-btn3, .c-school-nav .c-btn3--red, .c-school-nav .c-btn1--play, .c-school-nav .c-btn1--dl, .c-school-nav .c-btn1--wh {
    height: 60px;
  }
}
.c-school-nav .c-btn1:hover, .c-school-nav .c-btn3:hover, .c-school-nav .c-btn3--red:hover, .c-school-nav .c-btn1--play:hover, .c-school-nav .c-btn1--dl:hover, .c-school-nav .c-btn1--wh:hover, .c-school-nav .c-btn1.current, .c-school-nav .current.c-btn3, .c-school-nav .current.c-btn3--red, .c-school-nav .current.c-btn1--play, .c-school-nav .current.c-btn1--dl, .c-school-nav .current.c-btn1--wh {
  border-color: #ad002d;
  color: #ad002d;
  background-color: rgba(245, 242, 234, 0.5);
}
.c-school-nav .c-btn1:hover::after, .c-school-nav .c-btn3:hover::after, .c-school-nav .c-btn3--red:hover::after, .c-school-nav .c-btn1--play:hover::after, .c-school-nav .c-btn1--dl:hover::after, .c-school-nav .c-btn1--wh:hover::after {
  -webkit-animation: hoverAnime1-2 0.3s ease-out forwards;
          animation: hoverAnime1-2 0.3s ease-out forwards;
}
.c-school-nav .c-btn1.current, .c-school-nav .current.c-btn3, .c-school-nav .current.c-btn3--red, .c-school-nav .current.c-btn1--play, .c-school-nav .current.c-btn1--dl, .c-school-nav .current.c-btn1--wh {
  pointer-events: none;
}

.c-school-child-nav {
  margin-top: 150px;
  padding-bottom: 140px;
}
@media screen and (max-width: 375px) {
  .c-school-child-nav {
    margin-top: 60px;
    padding-bottom: 60px;
  }
}

/* .c-slide1__nav
______________________________________________*/
.c-slide1__nav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  display: none;
}
.c-slide1__nav button {
  position: absolute;
  left: 0;
  top: 400px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background-color: #000;
  margin-left: 10px;
}
.c-slide1__nav button::after {
  content: "";
  display: block;
  width: 18px;
  height: 18px;
  background-image: url("../../../../uploads/ico-arrow2-wh.svg");
  background-size: 18px auto;
  background-repeat: no-repeat;
  background-position: center;
}
.c-slide1__nav button.prev {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.c-slide1__nav button:hover {
  opacity: 1;
  background-color: #080000;
}
.c-slide1__nav button:hover::after {
  -webkit-animation: hoverAnime1-2 0.3s ease-out forwards;
          animation: hoverAnime1-2 0.3s ease-out forwards;
}

/* .c-pager
______________________________________________*/
.c-pager {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1;
  margin-top: 125px;
  padding-bottom: 120px;
  position: relative;
  font-size: 14px;
}
@media screen and (max-width: 375px) {
  .c-pager {
    padding: 0 0 60px;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin-top: 120px;
    margin-bottom: 80px;
  }
  .c-pager > *:nth-child(3) {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}

.c-pagerNum {
  font-weight: bold;
}
.c-pagerBtn1 {
  color: #ad002d;
}
@media screen and (max-width: 375px) {
  .c-pagerBtn1 {
    font-size: 1.4rem;
  }
}
.c-pagerBtn1.off {
  color: rgba(0, 0, 0, 0.5) !important;
  pointer-events: none !important;
}
.c-pagerBtn1 a:hover {
  opacity: 1;
  text-decoration: underline;
}
.c-pagerBtn1 i {
  margin: 0 1em;
}

.post_type-members-only .c-pagerBtn1 {
  color: #080000;
}

.c-pagerBtn2, .c-pagerBtn2-2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 200px;
  height: 50px;
  background-color: #ad002d;
  color: #fff;
  margin: 0 25px;
  border: solid 1px #ad002d;
}
.c-pagerBtn2:hover, .c-pagerBtn2-2:hover {
  background-color: rgba(173, 0, 45, 0.6);
}
@media screen and (max-width: 375px) {
  .c-pagerBtn2, .c-pagerBtn2-2 {
    font-size: 1.3rem;
    width: 150px;
    height: 50px;
    margin: 0;
    position: absolute;
    left: 50%;
    top: 50%;
  }
  .c-pagerBtn2:nth-child(2), .c-pagerBtn2-2:nth-child(2) {
    -webkit-transform: translate(-50%, -100px);
            transform: translate(-50%, -100px);
  }
  .c-pagerBtn2:nth-child(4), .c-pagerBtn2-2:nth-child(4) {
    -webkit-transform: translate(-50%, -10px);
            transform: translate(-50%, -10px);
  }
}

.c-pagerBtn2.off, .off.c-pagerBtn2-2 {
  color: rgba(0, 0, 0, 0.5);
  background-color: #fff;
  border-color: #ddd;
  pointer-events: none;
}

.c-pagerBtn2-2 {
  color: #444 !important;
  background: none !important;
  border-color: #ddd !important;
  min-width: 150px;
  width: 200px;
  white-space: nowrap;
}
.c-pagerBtn2-2:hover {
  opacity: 1;
  background-color: #dddddd;
}
@media screen and (max-width: 375px) {
  .c-pagerBtn2-2 {
    width: 150px;
    padding: 0;
    min-width: none;
  }
}

/* .c-breadcrumb
______________________________________________*/
.c-breadcrumb {
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: absolute;
  bottom: 0;
  left: 75px;
  text-align: center;
  font-size: 1.3rem;
  line-height: 1;
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
}
@media screen and (max-width: 375px) {
  .c-breadcrumb {
    display: none;
  }
}
.c-breadcrumb .separate {
  display: block;
  width: 1px;
  height: 20px;
  background-color: #dddddd;
  margin: 0 16px;
  -webkit-transform: rotate(-40deg);
          transform: rotate(-40deg);
}
.c-breadcrumb a {
  color: #ad002d;
}

.is-scroll .c-breadcrumb {
  opacity: 0;
  pointer-events: none;
}

body.home .c-breadcrumb {
  display: none;
}

/* .c-pager-d
______________________________________________*/
.c-pager-d {
  margin-top: 100px;
}
@media screen and (max-width: 375px) {
  .c-pager-d {
    margin-top: 40px;
  }
}
.c-pager-d a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 900px;
  height: 75px;
  line-height: 1;
  margin: 0 auto;
  border: solid 1px #dddddd;
  padding: 0 15px;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
  background-image: url("../../../../uploads/ico-arrow-clr.svg");
  background-repeat: no-repeat;
  background-size: 13px auto;
  background-position: right 20px center;
}
@media screen and (max-width: 375px) {
  .c-pager-d a {
    width: 335px;
    padding: 0 15px;
  }
}
.c-pager-d a:hover {
  background-position: right 10px center;
}
.c-pager-d a > * {
  display: block;
}
.c-pager-d a > *:nth-child(1) {
  font-size: 1.2rem;
  color: #080000;
  margin-bottom: 8px !important;
}
.c-pager-d a > *:nth-child(2) {
  font-size: 1.9rem;
  font-weight: bold;
}

/* .c-pager-e 四角形ページャー
______________________________________________*/
.c-pager-e {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 16px;
  font-weight: bold;
  margin-top: 115px;
  white-space: nowrap;
}
@media screen and (max-width: 375px) {
  .c-pager-e {
    font-size: 11px;
    margin-top: 40px;
  }
}
.c-pager-e > * {
  min-width: 45px;
  height: 45px;
  background-color: #f5f5f5;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 4.5px;
  padding: 0 10px;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
@media screen and (max-width: 375px) {
  .c-pager-e > * {
    min-width: 34px;
    height: 34px;
  }
}
@media screen and (min-width: 376px) {
  .c-pager-e > *:hover {
    background-color: #ad002d;
    color: #fff;
  }
}
.c-pager-e > .current {
  background-color: #ad002d;
  color: #fff;
}
/* .c-pager2
______________________________________________*/
.c-pager2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 90px 0;
}
@media screen and (max-width: 375px) {
  .c-pager2 {
    font-size: 1.2rem;
    padding: 30px 0 40px;
  }
}
.c-pager2 > * {
  max-width: 46%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.6rem;
  color: #ad002d;
}
@media screen and (max-width: 375px) {
  .c-pager2 > * {
    font-size: 1.2rem !important;
  }
}
.c-pager2 > *[rel=prev] {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.c-pager2 > *[rel=prev]::after {
  -webkit-transform: scaleX(-1);
          transform: scaleX(-1);
}

/*----------------------------------------------------------------
  Button
-----------------------------------------------------------------*/
/* .h-btn1
______________________________________________*/
.h-btn1 {
  line-height: 1.2;
  width: 190px;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 1.6rem;
  color: #fff;
  font-weight: bold;
}
@media screen and (max-width: 375px) {
  .h-btn1 {
    width: 100%;
    height: 77px;
  }
}
.h-btn1-contact {
  background-color: #ad002d;
}
.h-btn1-apply {
  background-color: #1f497d;
}
.h-btn1:hover {
  background-color: #000;
}

/* .c-btn1
______________________________________________*/
.c-btn1, .c-btn3, .c-btn3--red, .c-btn1--play, .c-btn1--dl, .c-btn1--wh {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 270px;
  height: 60px;
  padding: 0 40px 0 24px;
  border: solid 1px #ad002d;
  color: #ad002d;
  font-size: 1.6rem;
  font-weight: bold;
  position: relative;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  text-decoration: none !important;
}
@media screen and (max-width: 375px) {
  .c-btn1, .c-btn3, .c-btn3--red, .c-btn1--play, .c-btn1--dl, .c-btn1--wh {
    width: 295px;
  }
}
.c-btn1::after, .c-btn3::after, .c-btn3--red::after, .c-btn1--play::after, .c-btn1--dl::after, .c-btn1--wh::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 17px;
  width: 20px;
  height: 40px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-image: url("../../../../uploads/ico-arrow1-clr.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center left 0;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.c-btn1:hover, .c-btn3:hover, .c-btn3--red:hover, .c-btn1--play:hover, .c-btn1--dl:hover, .c-btn1--wh:hover {
  background-color: #000;
  color: #fff;
  border-color: #000;
  opacity: 1;
}
.c-btn1:hover::after, .c-btn3:hover::after, .c-btn3--red:hover::after, .c-btn1--play:hover::after, .c-btn1--dl:hover::after, .c-btn1--wh:hover::after {
  -webkit-animation: hoverAnime1 0.3s ease-out forwards;
          animation: hoverAnime1 0.3s ease-out forwards;
}

@-webkit-keyframes hoverAnime1 {
  0% {
    background-position: center left 0;
  }
  50% {
    background-position: center left 20px;
  }
  51% {
    background-image: url("../../../../uploads/ico-arrow1-wh.svg");
    background-position: center left -20px;
  }
  100% {
    background-image: url("../../../../uploads/ico-arrow1-wh.svg");
    background-position: center left 0;
  }
}

@keyframes hoverAnime1 {
  0% {
    background-position: center left 0;
  }
  50% {
    background-position: center left 20px;
  }
  51% {
    background-image: url("../../../../uploads/ico-arrow1-wh.svg");
    background-position: center left -20px;
  }
  100% {
    background-image: url("../../../../uploads/ico-arrow1-wh.svg");
    background-position: center left 0;
  }
}
@-webkit-keyframes hoverAnime1-2 {
  0% {
    background-position: center left 0;
  }
  50% {
    background-position: center left 20px;
  }
  51% {
    background-position: center left -20px;
  }
  100% {
    background-position: center left 0;
  }
}
@keyframes hoverAnime1-2 {
  0% {
    background-position: center left 0;
  }
  50% {
    background-position: center left 20px;
  }
  51% {
    background-position: center left -20px;
  }
  100% {
    background-position: center left 0;
  }
}
.c-btn1--wh {
  color: #fff;
  border-color: #fff;
}
.c-btn1--wh::after {
  background-image: url("../../../../uploads/ico-arrow1-wh.svg");
}

.c-btn1--dl::after {
  background-image: url("../../../../uploads/ico-dl.svg");
}
.c-btn1--dl:hover {
  background-color: #000;
  color: #fff;
  border-color: #000;
  opacity: 1;
}
.c-btn1--dl:hover::after {
  -webkit-animation: hoverAnime2 0.5s ease-out forwards;
          animation: hoverAnime2 0.5s ease-out forwards;
}

@-webkit-keyframes hoverAnime2 {
  0% {
    background-position: center left;
  }
  50% {
    background-position: bottom -20px left;
  }
  51% {
    background-image: url("../../../../uploads/ico-dl-wh.svg");
    background-position: top 0 left;
  }
  100% {
    background-image: url("../../../../uploads/ico-dl-wh.svg");
    background-position: center left;
  }
}

@keyframes hoverAnime2 {
  0% {
    background-position: center left;
  }
  50% {
    background-position: bottom -20px left;
  }
  51% {
    background-image: url("../../../../uploads/ico-dl-wh.svg");
    background-position: top 0 left;
  }
  100% {
    background-image: url("../../../../uploads/ico-dl-wh.svg");
    background-position: center left;
  }
}
@-webkit-keyframes hoverAnime2-2 {
  0% {
    background-position: center left;
  }
  50% {
    background-position: bottom -20px left;
  }
  51% {
    background-position: top -20px left;
  }
  100% {
    background-position: center left;
  }
}
@keyframes hoverAnime2-2 {
  0% {
    background-position: center left;
  }
  50% {
    background-position: bottom -20px left;
  }
  51% {
    background-position: top -20px left;
  }
  100% {
    background-position: center left;
  }
}
.c-btn1--play::after {
  background-image: url("../../../../uploads/ico-play.svg");
}
.c-btn1--play:hover::after {
  -webkit-animation: hoverAnime3 0.5s ease-out forwards;
          animation: hoverAnime3 0.5s ease-out forwards;
}

@-webkit-keyframes hoverAnime3 {
  0% {
    background-position: center left 0;
  }
  50% {
    background-position: center left 20px;
  }
  51% {
    background-image: url("../../../../uploads/ico-play-wh.svg");
    background-position: center left -20px;
  }
  100% {
    background-image: url("../../../../uploads/ico-play-wh.svg");
    background-position: center left 0;
  }
}

@keyframes hoverAnime3 {
  0% {
    background-position: center left 0;
  }
  50% {
    background-position: center left 20px;
  }
  51% {
    background-image: url("../../../../uploads/ico-play-wh.svg");
    background-position: center left -20px;
  }
  100% {
    background-image: url("../../../../uploads/ico-play-wh.svg");
    background-position: center left 0;
  }
}
/* .c-btn2
______________________________________________*/
.c-btn2, .c-btn2--dl, .h-big-menu--program .ttl, .c-pager2 > * {
  font-size: 1.6rem;
  color: #ad002d;
  font-weight: bold;
  text-align: right;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.c-btn2::after, .c-btn2--dl::after, .h-big-menu--program .ttl::after, .c-pager2 > ::after {
  content: "";
  display: block;
  min-width: 16px;
  width: 16px;
  height: 1em;
  background-image: url("../../../../uploads/ico-arrow1-clr.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  margin-left: 10px;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
.c-btn2:hover::after, .c-btn2--dl:hover::after, .h-big-menu--program .ttl:hover::after, .c-pager2 > :hover::after {
  content: "";
  -webkit-animation: hoverAnime1-2 0.5s ease-out forwards;
          animation: hoverAnime1-2 0.5s ease-out forwards;
}

a:hover .c-btn2::after, a:hover .c-btn2--dl::after, a:hover .h-big-menu--program .ttl::after, .h-big-menu--program a:hover .ttl::after, a:hover .c-pager2 > ::after {
  -webkit-animation: hoverAnime1-2 0.5s ease-out forwards;
          animation: hoverAnime1-2 0.5s ease-out forwards;
}

.c-btn2--dl::after {
  background-image: url("../../../../uploads/ico-dl.svg");
}
.c-btn2--dl:hover::after {
  -webkit-animation: hoverAnime2-2 0.5s ease-out forwards;
          animation: hoverAnime2-2 0.5s ease-out forwards;
}

/* .c-btn3
______________________________________________*/
.c-btn3, .c-btn3--red {
  width: 500px;
  height: 80px;
  background-color: #1f497d;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #fff !important;
  border: none;
  margin: 0 auto;
}
@media screen and (max-width: 375px) {
  .c-btn3, .c-btn3--red {
    width: 295px;
    height: 60px;
  }
}
.c-btn3::after, .c-btn3--red::after {
  background-image: url("../../../../uploads/ico-arrow1-wh.svg");
}

.c-btn3--red {
  background-color: #ad002d;
}

/* .c-bnr1
______________________________________________*/
.c-bnr1 {
  display: block;
  width: 101%;
  margin-left: -1%;
}

/* .c-bnr2
______________________________________________*/
.c-bnr2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #ad002d;
  height: 200px;
  color: #fff;
  padding: 0 36px 0 52px;
  font-size: 1.5rem;
}
@media screen and (max-width: 375px) {
  .c-bnr2 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    height: auto;
    padding: 40px 20px 40px;
    font-size: 1.5rem;
  }
}
.c-bnr2 .c-ttl1, .c-bnr2 .c-ttl1--center {
  font-size: 3rem;
  margin-right: 70px;
}
@media screen and (max-width: 375px) {
  .c-bnr2 .c-ttl1, .c-bnr2 .c-ttl1--center {
    font-size: 2.2rem;
    margin-right: 0;
    text-align: center;
    margin-bottom: 23px;
  }
}
.c-bnr2 .c-ttl1 strong, .c-bnr2 .c-ttl1--center strong {
  color: #fff;
  margin-bottom: 10px;
  font-size: 1.6rem;
}
.c-bnr2 .c-btn1, .c-bnr2 .c-btn1--wh, .c-bnr2 .c-btn1--dl, .c-bnr2 .c-btn1--play, .c-bnr2 .c-btn3, .c-bnr2 .c-btn3--red {
  background-color: #080000;
  color: #fff;
  margin-left: auto;
}
.c-bnr2 .c-btn1::after, .c-bnr2 .c-btn1--wh::after, .c-bnr2 .c-btn1--dl::after, .c-bnr2 .c-btn1--play::after, .c-bnr2 .c-btn3::after, .c-bnr2 .c-btn3--red::after {
  background-image: url("../../../../uploads/ico-arrow1-wh.svg");
}
@media screen and (max-width: 375px) {
  .c-bnr2 .c-btn1, .c-bnr2 .c-btn1--wh, .c-bnr2 .c-btn1--dl, .c-bnr2 .c-btn1--play, .c-bnr2 .c-btn3, .c-bnr2 .c-btn3--red {
    margin-top: 7px;
  }
}

.c-btn-submit {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 400px;
  height: 80px;
  color: #fff;
  font-weight: bold;
  background-color: #ad002d;
  margin: 50px auto;
}
@media screen and (max-width: 375px) {
  .c-btn-submit {
    width: 100%;
  }
}
.c-btn-submit:hover {
  background-color: #000;
}

/* .c-btn4
______________________________________________*/
.c-btn4, .h-gNav .main > li.has_children > .nav a {
  font-size: 1.6rem;
  font-weight: bold;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 10px 0 10px 22px;
  background-image: url("../../../../uploads/ico-arrow1-clr.svg");
  background-size: 16px auto;
  background-repeat: no-repeat;
  background-position: center left;
}
@media screen and (max-width: 375px) {
  .c-btn4, .h-gNav .main > li.has_children > .nav a {
    padding: 15px 0 15px 22px;
  }
}
.c-btn4:hover, .h-gNav .main > li.has_children > .nav a:hover {
  color: #ad002d;
  background-position: center left 5px;
}

/*----------------------------------------------------------------
  Icons
-----------------------------------------------------------------*/
/*Font Awesome
______________________________________________*/
.ico-fontawesome .icon::before {
  font-family: "Font Awesome 6 Pro";
  font-weight: 300;
  content: "\f015";
}

.c-ico1 {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.c-ico1::before {
  content: "";
  display: block;
  width: 1.6em;
  height: 1.4em;
  margin-right: 0.4em;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.c-ico1-map::before {
  background-image: url("../../../../uploads/ico-map.svg");
}
.c-ico1-book::before {
  background-image: url("../../../../uploads/ico-book.svg");
}
.c-ico1-mail::before {
  background-image: url("../../../../uploads/ico-mail.svg");
}

/*----------------------------------------------------------------
  Form
-----------------------------------------------------------------*/
/* .c-form
______________________________________________*/
form label {
  margin-right: 1em;
}
form ::-webkit-input-placeholder {
  opacity: 0.8;
}
form ::-moz-placeholder {
  opacity: 0.8;
}
form :-ms-input-placeholder {
  opacity: 0.8;
}
form ::-ms-input-placeholder {
  opacity: 0.8;
}
form ::placeholder {
  opacity: 0.8;
}
form input:not([type=radio]):not([type=checkbox]):not([type=submit]),
form textarea {
  border-radius: 0;
  background-color: #f4f4f4;
  width: 100%;
  padding: 0.5em;
  border: solid 1px #bebebe;
}
form textarea {
  height: 138px;
  width: 100%;
}
form [type=checkbox],
form [type=radio] {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 1.4285714286em;
  height: 1.4285714286em;
  background-color: #fff;
  border: solid 1px #bebebe;
  top: 0;
  left: 0;
  border-radius: 3px;
}
/*
form [type=checkbox]:checked,
form [type=radio]:checked {
  border: solid 1px #ad002d;
}
form [type=checkbox]:checked::after,
form [type=radio]:checked::after {
  content: "";
  display: block;
  width: 1em;
  height: 0.5em;
  border-left: solid 3px #ad002d;
  border-bottom: solid 3px #ad002d;
  -webkit-transform: rotate(-45deg) translate(0.1em, 0em);
          transform: rotate(-45deg) translate(0.1em, 0em);
  position: absolute;
}
form [type=checkbox]:checked::before,
form [type=radio]:checked::before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  border: solid 1px #ad002d;
  top: 0;
  left: 0;
  border-radius: 5px;
  background-color: #f5f2ea;
  z-index: -1;
} 
form [type=radio] {
  border-radius: 50%;
  width: 1.2em;
  height: 1.2em;
}
form [type=radio]:checked::after {
  content: "";
  border-radius: 50%;
  position: absolute;
  background-color: #ad002d;
  display: block;
  width: 1.2em;
  height: 1.2em;
  border-radius: 50%;
  -webkit-transform: scale(0.4);
          transform: scale(0.4);
}
*/
form .mwform-checkbox-field > label,
form .mwform-radio-field > label {
  padding: 10px 12px;
  border: solid 1px #dddddd;
  border-radius: 5px;
  margin-right: 10px;
  margin-bottom: 10px;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
}
form .mwform-radio-field > label {
  padding: 12px 40px 12px 40px;
}
@media screen and (max-width: 375px) {
  form .mwform-checkbox-field > label {
    width: 100%;
  }
}
form select {
  background-image: url("data:image/svg+xml,%3Csvg width='17' height='9' viewBox='0 0 17 9' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0 L8.5 9 L17 0' stroke='%23000' stroke-width='2' fill='none'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center right 20px;
  background-size: 17px auto;
  border-radius: 5px;
  line-height: 1;
  background-color: #fff;
  padding: 0.5em 3em 0.5em 1em;
  width: 100%;
  min-height: 60px;
  border: solid 1px #dddddd;
}
form .txt1 {
  margin-right: 1em;
}
@media screen and (max-width: 375px) {
  form .txt1 {
    margin-right: 0.5em;
  }
}
form .cap {
  text-align: center;
}
form .policy-cb {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 50px 0;
}
form .policy-cb * {
  margin-right: 0;
}
form .policy-cb a {
  color: #ad002d;
  text-decoration: underline;
}
form .policy-cb .mwform-checkbox-field {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0;
}
form .policy-cb .mwform-checkbox-field > label {
  padding: 0;
  border: none;
  margin: 0;
}
form .policy-cb .mwform-checkbox-field > label input {
  margin-right: 1em;
}
form .policy-cb .mwform-checkbox-field > label input::before {
  display: none !important;
}

.mw_wp_form_complete .c-selectLabel::before, .mw_wp_form_complete .c-selectLabel::after,
.mw_wp_form_confirm .c-selectLabel::before,
.mw_wp_form_confirm .c-selectLabel::after {
  display: none !important;
}

.p-form__policy {
  text-align: center;
}
.p-form__policy label {
  display: inline-block;
  border: solid 1px #dddddd;
  margin: 60px auto 10px;
  padding: 12px 15px;
  border-radius: 5px;
}
.p-form__policy a {
  display: block;
  font-size: 1.4rem;
  text-decoration: underline;
  color: #ad002d;
}

.mwform-checkbox-field {
  margin-bottom: 0.2em;
  display: inline-block;
}
@media screen and (max-width: 375px) {
  .mwform-checkbox-field {
    display: block;
  }
}
@media screen and (max-width: 375px) {
  .mwform-checkbox-field label {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .mwform-checkbox-field label input {
    width: 1.5em;
    min-width: 1.5em;
  }
}

@media screen and (max-width: 375px) {
  .mwform-radio-field > label {
    display: block;
    margin-bottom: 0.5em;
  }
}


/* .c-formSubmitArea
______________________________________________*/
.c-formSubmitArea {
  pointer-events: none;
  opacity: 0.2;
}

.js-submitChecked .c-formSubmitArea {
  pointer-events: auto;
  opacity: 1;
}

.c-submitCheckBox {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 60px 0 0;
}
.c-submitCheckBox a {
  color: #ad002d;
  font-size: 1.6rem;
  text-decoration: underline;
}

.c-form__bottom {
  text-align: center;
}
@media screen and (max-width: 375px) {
  .c-form__bottom {
    text-align: left;
  }
}

/* for Mw Wpform
______________________________________________*/
.mw_wp_form_complete .c-formComplete--hide,
.mw_wp_form_complete .c-formConfirm--hide,
.mw_wp_form_complete .c-submitCheckBox,
.mw_wp_form_complete .c-form1__policyArea,
.mw_wp_form_confirm .c-formComplete--hide,
.mw_wp_form_confirm .c-formConfirm--hide,
.mw_wp_form_confirm .c-submitCheckBox,
.mw_wp_form_confirm .c-form1__policyArea,
.is-form-confirm .c-formComplete--hide,
.is-form-confirm .c-formConfirm--hide,
.is-form-confirm .c-submitCheckBox,
.is-form-confirm .c-form1__policyArea,
.is-form-complete .c-formComplete--hide,
.is-form-complete .c-formConfirm--hide,
.is-form-complete .c-submitCheckBox,
.is-form-complete .c-form1__policyArea {
  display: none !important;
}

.mw_wp_form .horizontal-item + .horizontal-item {
  margin-left: 0 !important;
}

.c-formConfirm--show {
  display: none;
}

.is-form-confirm .c-formConfirm--show,
.mw_wp_form_confirm .c-formConfirm--show {
  display: block !important;
}

.c-form-thanks h2 {
  margin-bottom: 40px;
}
.c-form-thanks .c-btn1, .c-form-thanks .c-btn1--wh, .c-form-thanks .c-btn1--dl, .c-form-thanks .c-btn1--play, .c-form-thanks .c-btn3, .c-form-thanks .c-btn3--red {
  margin: 40px auto 0;
}

/*----------------------------------------------------------------
グリッドのコンポーネント
-----------------------------------------------------------------*/
/* .c-grid1
______________________________________________*/
.c-grid1 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-right: -40px;
}
.c-grid1 > li {
  padding-right: 40px;
  padding-bottom: 40px;
}

/*----------------------------------------------------------------
  List
-----------------------------------------------------------------*/
/*.c-list1
______________________________________________*/
.c-list1 li, .c-table2 > * > tr > th ul li,
.c-table2 > * > tr > td ul li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.c-list1 li::before, .c-table2 > * > tr > th ul li::before,
.c-table2 > * > tr > td ul li::before {
  content: "";
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  margin: 0.8em 0.6em 0;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #ad002d;
}

/*.c-list2
______________________________________________*/
.c-list2 {
  list-style: none;
  counter-reset: my-counter;
  padding: 0;
}
.c-list2 li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
}
.c-list2 li::before {
  counter-increment: my-counter;
  content: counter(my-counter) ". ";
  margin-right: 0.5em;
}

/*.c-list-check
______________________________________________*/
.c-list-check > li {
  padding-left: 1.5em;
  position: relative;
  margin-bottom: 1.2em;
  font-weight: bold;
}
.c-list-check > li::before {
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  top: 0.3em;
  left: 0;
  background-image: url("../../../../uploads/ico-check.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
}

/*.c-list-textbook
______________________________________________*/
.c-list-textbook > li {
  padding: 50px 0 58px;
  border-bottom: solid 1px #dddddd;
}

/*.c-list-reason1
______________________________________________*/
.c-list-reason1 {
  counter-reset: ctr1 0;
}
.c-list-reason1 li {
  position: relative;
  padding: 45px 20px 34px 99px;
  background-color: #fff;
  margin-bottom: 5px;
  font-size: 1.5rem;
}
@media screen and (max-width: 375px) {
  .c-list-reason1 li {
    padding: 20px 20px 20px 50px;
    margin-bottom: 5px;
    font-size: 1.5rem;
  }
}
.c-list-reason1 li::before {
  content: counter(ctr1);
  counter-increment: ctr1;
  font-size: 3rem;
  font-family: "Tiro Tamil", "游明朝", "Yu Mincho", "YuMincho", "Noto Serif JP", "Noto Serif JP", "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", "HGS明朝E", serif;
  color: #ad002d;
  line-height: 1;
  margin-right: 50px;
  position: absolute;
  top: 35px;
  left: 40px;
}
@media screen and (max-width: 375px) {
  .c-list-reason1 li::before {
    font-size: 2rem;
    margin-right: 50px;
    top: 14px;
    left: 15px;
  }
}
.c-list-reason1 li::after {
  content: "";
  display: block;
  width: 40px;
  height: 1px;
  background-color: #b5b5b5;
  -webkit-transform: rotate(-52deg);
          transform: rotate(-52deg);
  position: absolute;
  top: 58px;
  left: 58px;
}
@media screen and (max-width: 375px) {
  .c-list-reason1 li::after {
    width: 25px;
    top: 30px;
    left: 20px;
  }
}
.c-list-reason1 li h3, .c-list-reason1 li .p-mission-block1 table th, .p-mission-block1 table .c-list-reason1 li th, .c-list-reason1 li .c-post h4, .c-post .c-list-reason1 li h4 {
  font-size: 3rem;
  line-height: 1.5;
  margin-bottom: 10px;
}
@media screen and (max-width: 375px) {
  .c-list-reason1 li h3, .c-list-reason1 li .p-mission-block1 table th, .p-mission-block1 table .c-list-reason1 li th, .c-list-reason1 li .c-post h4, .c-post .c-list-reason1 li h4 {
    font-size: 2rem;
    margin-bottom: 16px;
  }
}
.c-list-reason1 li h3 strong, .c-list-reason1 li .p-mission-block1 table th strong, .p-mission-block1 table .c-list-reason1 li th strong, .c-list-reason1 li .c-post h4 strong, .c-post .c-list-reason1 li h4 strong {
  border-bottom: solid 2px #ad002d;
}

/*.c-list-news
______________________________________________*/
.c-list-news > li:not(last-child) {
  border-bottom: solid 1px #f5f2ea;
}
.c-list-news > li a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 76px;
  background-color: #fff;
  padding: 0 30px;
  line-height: 1;
}
@media screen and (max-width: 375px) {
  .c-list-news > li a {
    height: auto;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    padding: 20px 0;
  }
}
.c-list-news > li a .date {
  font-size: 1.4rem;
  color: #919191;
  margin-right: 20px;
}
.c-list-news > li a .cat {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-right: 20px;
}
.c-list-news > li a .cat > li {
  font-size: 1.3rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 102px;
  height: 23px;
  border: solid 1px #ad002d;
  color: #ad002d;
  margin-right: 4px;
}
.c-list-news > li a .ttl {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media screen and (max-width: 375px) {
  .c-list-news > li a .ttl {
    white-space: normal;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    line-height: 1.7333333333;
    margin-top: 6px;
  }
}
.c-list-news > li a:hover .ttl {
  color: #ad002d;
}

/*.c-list-member
______________________________________________*/
.c-list-member {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}
@media screen and (max-width: 375px) {
  .c-list-member {
    grid-template-columns: repeat(2, 1fr);
    gap: 54px;
  }
}
.c-list-member a {
  display: block;
  padding: 0 50px 6px;
  text-align: center;
  font-size: 1.4rem;
  line-height: 1.2;
}
@media screen and (max-width: 375px) {
  .c-list-member a {
    padding: 0;
  }
}
.c-list-member a .img_box {
  border-radius: 50%;
  overflow: hidden;
  margin-bottom: 26px;
  aspect-ratio: 1;
}
@media screen and (max-width: 375px) {
  .c-list-member a .img_box {
    margin-bottom: 10px;
  }
}
.c-list-member a .name_en {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 375px) {
  .c-list-member a .name_en {
    font-size: 1.2rem;
  }
}
.c-list-member a .name {
  font-size: 2.2rem;
  font-weight: bold;
  margin: 5px 0 5px;
}
@media screen and (max-width: 375px) {
  .c-list-member a .name {
    font-size: 1.5rem;
    margin: 5px 0 0;
  }
}

/*.c-list-faq
______________________________________________*/
.c-list-faq {
  margin-bottom: 10px;
}
.c-list-faq dt,
.c-list-faq dd {
  display: block;
  border: solid 1px #dddddd;
  padding: 20px 50px;
  position: relative;
}
.c-list-faq dt::after,
.c-list-faq dd::after {
  content: "Q";
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: absolute;
  top: 22px;
  left: 17px;
  width: 26px;
  height: 26px;
  background-color: #ad002d;
  border-radius: 50%;
  color: #fff;
  font-weight: bold;
  font-size: 1.4rem;
  line-height: 1;
}
.c-list-faq dt {
  font-weight: bold;
  background-image: url("../../../../uploads/ico-plus.svg");
  background-size: 15px auto;
  background-repeat: no-repeat;
  background-position: center right 22px;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
.c-list-faq dt.open {
  background-image: url("../../../../uploads/ico-minus.svg");
}
.c-list-faq dd {
  border-top: none;
  background-color: #fcfaf7;
  display: none;
}
.c-list-faq dd::after {
  content: "A";
  background-color: #1f497d;
}
.c-list-faq dd a {
  color: #ad002d;
  text-decoration: underline;
}

/*.c-list-feature
______________________________________________*/
.c-list-feature {
  list-style: none;
  counter-reset: my-counter;
  padding: 40px 40px 8px;
  border: solid 1px #dddddd;
  background-color: #fcfaf7;
  font-size: 1.6rem;
  line-height: 2;
}
@media screen and (max-width: 375px) {
  .c-list-feature {
    padding: 30px 20px 8px;
    font-size: 1.5rem;
    line-height: 1.7333333333;
  }
}
.c-list-feature > li {
  margin-bottom: 2.1em;
}
.c-list-feature > li h3, .c-list-feature > li .p-mission-block1 table th, .p-mission-block1 table .c-list-feature > li th, .c-list-feature > li .c-post h4, .c-post .c-list-feature > li h4 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  margin-bottom: 0.4em;
}
@media screen and (max-width: 375px) {
  .c-list-feature > li h3, .c-list-feature > li .p-mission-block1 table th, .p-mission-block1 table .c-list-feature > li th, .c-list-feature > li .c-post h4, .c-post .c-list-feature > li h4 {
    font-size: 2rem;
    margin-bottom: 1em;
  }
}
.c-list-feature > li h3::before, .c-list-feature > li .p-mission-block1 table th::before, .p-mission-block1 table .c-list-feature > li th::before, .c-list-feature > li .c-post h4::before, .c-post .c-list-feature > li h4::before {
  counter-increment: my-counter;
  content: counter(my-counter);
  font-family: "游明朝", "Yu Mincho", "YuMincho", "Noto Serif JP", "Noto Serif JP", "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", "HGS明朝E", serif;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  font-size: 2.4rem;
  width: 1.1em;
  min-width: 1.1em;
  height: 1.1em;
  border-radius: 50%;
  background-color: #ad002d;
  color: #fff;
  line-height: 1;
  margin-right: 0.2em;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 375px) {
  .c-list-feature > li h3::before, .c-list-feature > li .p-mission-block1 table th::before, .p-mission-block1 table .c-list-feature > li th::before, .c-list-feature > li .c-post h4::before, .c-post .c-list-feature > li h4::before {
    font-size: 2rem;
  }
}
.c-list-feature > li .c-list1, .c-list-feature > li .c-table2 > * > tr > th ul, .c-table2 > * > tr > th .c-list-feature > li ul,
.c-list-feature > li .c-table2 > * > tr > td ul,
.c-table2 > * > tr > td .c-list-feature > li ul {
  margin-bottom: 0.9em;
}

/*.c-cardlist
______________________________________________*/
.c-cardlist1 > li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 129px;
}
@media screen and (max-width: 375px) {
  .c-cardlist1 > li {
    display: block;
    margin-bottom: 50px;
  }
}
.c-cardlist1 > li > * {
  font-size: 1.6rem;
  line-height: 1.875;
}
@media screen and (max-width: 375px) {
  .c-cardlist1 > li > * {
    font-size: 1.5rem;
    line-height: 1.7333333333;
  }
}
.c-cardlist1 > li > *:nth-child(1) {
  width: 387px;
  min-width: 387px;
  height: 257px;
  -o-object-fit: cover;
     object-fit: cover;
  margin-right: 59px;
}
@media screen and (max-width: 375px) {
  .c-cardlist1 > li > *:nth-child(1) {
    width: 100%;
    min-width: 0;
    height: 222px;
    margin-right: 0;
  }
}
.c-cardlist1 > li > * h3, .c-cardlist1 > li > * .p-mission-block1 table th, .p-mission-block1 table .c-cardlist1 > li > * th, .c-cardlist1 > li > * .c-post h4, .c-post .c-cardlist1 > li > * h4 {
  font-size: 2.8rem;
  margin: 1px 0 30px;
}
@media screen and (max-width: 375px) {
  .c-cardlist1 > li > * h3, .c-cardlist1 > li > * .p-mission-block1 table th, .p-mission-block1 table .c-cardlist1 > li > * th, .c-cardlist1 > li > * .c-post h4, .c-post .c-cardlist1 > li > * h4 {
    font-size: 2rem;
    margin: 22px 0 15px;
  }
}
.c-cardlist1 > li > * h3 strong, .c-cardlist1 > li > * .p-mission-block1 table th strong, .p-mission-block1 table .c-cardlist1 > li > * th strong, .c-cardlist1 > li > * .c-post h4 strong, .c-post .c-cardlist1 > li > * h4 strong {
  font-size: 1.8rem;
  font-family: "Tiro Tamil", "游明朝", "Yu Mincho", "YuMincho", "Noto Serif JP", "Noto Serif JP", "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", "HGS明朝E", serif;
  color: #ad002d;
  display: block;
  margin-bottom: 10px;
}
@media screen and (max-width: 375px) {
  .c-cardlist1 > li > * h3 strong, .c-cardlist1 > li > * .p-mission-block1 table th strong, .p-mission-block1 table .c-cardlist1 > li > * th strong, .c-cardlist1 > li > * .c-post h4 strong, .c-post .c-cardlist1 > li > * h4 strong {
    margin-bottom: 5px;
    font-size: 1.2rem;
  }
}

/*.c-cardlist
______________________________________________*/
.c-list-program .c-card-program {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  padding: 34px 33px 34px 30px;
  margin-bottom: 30px;
}
@media screen and (max-width: 375px) {
  .c-list-program .c-card-program {
    display: block;
    padding: 0;
    margin-bottom: 30px;
  }
}
.c-list-program .c-card-program .img_box {
  width: 260px;
  height: 260px;
}
@media screen and (max-width: 375px) {
  .c-list-program .c-card-program .img_box {
    width: 100%;
    height: 217px;
  }
}
.c-list-program .c-card-program .main {
  padding: 0 0 0 42px;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media screen and (max-width: 375px) {
  .c-list-program .c-card-program .main {
    padding: 20px 20px 20px 20px;
  }
}
.c-list-program .c-card-program h3, .c-list-program .c-card-program .p-mission-block1 table th, .p-mission-block1 table .c-list-program .c-card-program th, .c-list-program .c-card-program .c-post h4, .c-post .c-list-program .c-card-program h4 {
  margin-bottom: 16px;
}
.c-list-program .c-card-program .recommend {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 5px 0 14px;
}
@media screen and (max-width: 375px) {
  .c-list-program .c-card-program .recommend {
    display: block;
  }
}
.c-list-program .c-card-program .recommend .tab {
  margin: 0 10px 0 0;
}
@media screen and (max-width: 375px) {
  .c-list-program .c-card-program .recommend .tab {
    margin: 0 10px 16px 0;
  }
}
.c-list-program .c-card-program .recommend h4 {
  margin: 0;
}
.c-list-program .c-card-program .c-btn2, .c-list-program .c-card-program .h-big-menu--program .ttl, .h-big-menu--program .c-list-program .c-card-program .ttl, .c-list-program .c-card-program .c-pager2 > *, .c-list-program .c-card-program .c-btn2--dl {
  margin-top: 0;
}

/*.c-list-reviews
______________________________________________*/
.c-list-reviews > li {
  font-size: 1.6rem;
  line-height: 2;
  font-weight: bold;
  background-color: #fcfaf7;
  border-radius: 10px;
  border: solid 1px #dddddd;
  padding: 20px 20px 20px 60px;
  background-image: url("../../../../uploads/ico-student.svg");
  background-size: 21px auto;
  background-repeat: no-repeat;
  background-position: left 20px top 23px;
  margin-bottom: 10px;
}
@media screen and (max-width: 375px) {
  .c-list-reviews > li {
    font-size: 1.5rem;
    line-height: 1.7333333333;
  }
}

/*----------------------------------------------------------------
  Text, Lead
-----------------------------------------------------------------*/
/* Title
______________________________________________*/
.c-txt1, .p-top-reason .bg-txt {
  font-family: "Tiro Tamil", "游明朝", "Yu Mincho", "YuMincho", "Noto Serif JP", "Noto Serif JP", "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", "HGS明朝E", serif;
  font-weight: normal;
}

.c-txt2 {
  font-size: 1.6rem;
  line-height: 2;
}
@media screen and (max-width: 375px) {
  .c-txt2 {
    font-size: 1.5rem;
    line-height: 1.7333333333;
  }
}

.c-ttl1, .c-ttl1--center {
  line-height: 1;
  font-family: "游明朝", "Yu Mincho", "YuMincho", "Noto Serif JP", "Noto Serif JP", "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", "HGS明朝E", serif;
  font-size: 3.4rem;
}
@media screen and (max-width: 375px) {
  .c-ttl1, .c-ttl1--center {
    font-size: 2.6rem;
    line-height: 1.1538461538;
  }
}
.c-ttl1 strong, .c-ttl1--center strong {
  font-family: "Tiro Tamil", "游明朝", "Yu Mincho", "YuMincho", "Noto Serif JP", "Noto Serif JP", "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", "HGS明朝E", serif;
  font-size: 2.2rem;
  font-weight: normal;
  color: #ad002d;
  display: block;
  margin-bottom: 20px;
  text-transform: uppercase;
}
@media screen and (max-width: 375px) {
  .c-ttl1 strong, .c-ttl1--center strong {
    font-size: 1.2rem;
    margin-bottom: 10px;
  }
}

.c-ttl1--center {
  text-align: center;
}
@media screen and (max-width: 375px) {
  .c-ttl1--center {
    text-align: left;
  }
}

.c-ttl2 {
  font-size: 2.2rem;
  color: #ad002d;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 375px) {
  .c-ttl2 {
    text-align: center;
    font-size: 1.6rem;
  }
}
.c-ttl2::before, .c-ttl2::after {
  content: "";
  display: block;
  height: 1px;
  background-color: #ad002d;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.c-ttl2::before {
  margin-right: 26px;
}
.c-ttl2::after {
  margin-left: 26px;
}

.c-ttl3, .c-post h2 {
  font-size: 2.8rem;
  border-bottom: solid 3px #dddddd;
  margin: 124px 0 74px;
  padding-bottom: 0.5em;
  position: relative;
}
@media screen and (max-width: 375px) {
  .c-ttl3, .c-post h2 {
    padding-bottom: 0.2em;
    font-size: 2rem;
    margin: 50px 0 30px;
  }
}
.c-ttl3::after, .c-post h2::after {
  content: "";
  display: block;
  position: absolute;
  bottom: -3px;
  left: 0;
  width: 80px;
  height: 3px;
  background-color: #ad002d;
}

.c-ttl4 {
  font-size: 2.2rem;
  font-family: "Tiro Tamil", "游明朝", "Yu Mincho", "YuMincho", "Noto Serif JP", "Noto Serif JP", "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", "HGS明朝E", serif;
  color: #ad002d;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  white-space: nowrap;
}
.c-ttl4::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: #dddddd;
  margin-left: 34px;
}

.c-ttl5 {
  font-size: 3.4rem;
  padding-left: 1em;
  border-left: solid 5px #ad002d;
}
@media screen and (max-width: 375px) {
  .c-ttl5 {
    font-size: 2.6rem;
    line-height: 1.5384615385;
  }
}

.c-ttl6 {
  font-size: 2.8rem;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 0 30px;
  padding-left: 2em;
  position: relative;
}
@media screen and (max-width: 375px) {
  .c-ttl6 {
    font-size: 2rem;
  }
}
.c-ttl6 > span {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 44px;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  line-height: 1;
  color: #fff;
  background-color: #ad002d;
  font-family: "Tiro Tamil", "游明朝", "Yu Mincho", "YuMincho", "Noto Serif JP", "Noto Serif JP", "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", "HGS明朝E", serif;
  font-size: 2.2rem;
  font-weight: normal;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 375px) {
  .c-ttl6 > span {
    min-width: 36px;
    width: 36px;
    height: 36px;
    font-size: 1.8rem;
  }
}
.c-ttl6 > strong {
  color: #ad002d;
}

.c-link1, .c-link2, .c-table2 > * > tr > th a,
.c-table2 > * > tr > td a {
  color: #ad002d;
}
.c-link1:hover, .c-link2:hover, .c-table2 > * > tr > th a:hover,
.c-table2 > * > tr > td a:hover {
  text-decoration: underline;
}
.c-link1[target=_blank]::after, [target=_blank].c-link2::after, .c-table2 > * > tr > th a[target=_blank]::after,
.c-table2 > * > tr > td a[target=_blank]::after {
  content: "";
  display: inline-block;
  width: 1em;
  height: 1em;
  background-image: url("../../../../uploads/ico-window-clr.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  margin-left: 0.5em;
  opacity: 0.2;
}

.c-link2, .c-table2 > * > tr > th a,
.c-table2 > * > tr > td a {
  font-weight: normal;
  text-decoration: underline;
}

.c-ttl7 {
  font-size: 3.4rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 375px) {
  .c-ttl7 {
    font-size: 2.2rem;
    white-space: nowrap;
  }
}
.c-ttl7::before, .c-ttl7::after {
  content: "";
  display: block;
  width: 50px;
  height: 1px;
  background-color: #ad002d;
}
.c-ttl7::before {
  margin-right: 26px;
}
@media screen and (max-width: 375px) {
  .c-ttl7::before {
    margin-right: 10px;
  }
}
.c-ttl7::after {
  margin-left: 26px;
}
@media screen and (max-width: 375px) {
  .c-ttl7::after {
    margin-left: 10px;
  }
}
.c-ttl7 strong {
  color: #ad002d;
}

.required {
  display: inline-block;
}
.required::after {
  content: "*";
  color: #ad002d;
  vertical-align: super;
}

/*----------------------------------------------------------------
    Media
-----------------------------------------------------------------*/
/* Responsive Video(16:9)
______________________________________________*/
.c-video {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.c-video iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

/* Responsive MAP
______________________________________________*/
.c-gmap {
  position: relative;
  padding-top: 46.1538461538%;
}
@media screen and (max-width: 375px) {
  .c-gmap {
    padding-top: 100%;
  }
}
.c-gmap iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

/*----------------------------------------------------------------
	Color
-----------------------------------------------------------------*/
/*----------------------------------------------------------------
  プロジェクト、ページ用ユニークスタイル .p-
-----------------------------------------------------------------*/
/* トップページ
______________________________________________*/
.p-top-head-news {
  position: absolute;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  max-width: 1200px;
  padding: 0 40px;
  width: 100%;
}
@media screen and (max-width: 375px) {
  .p-top-head-news {
    position: relative;
    left: auto;
    -webkit-transform: none;
            transform: none;
    max-width: none;
    padding: 0;
    width: 100%;
  }
}
.p-top-head-news a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #ad002d;
  height: 55px;
  color: #fff;
  padding: 0 36px;
  background-image: url("../../../../uploads/ico-arrow1-wh.svg");
  background-size: 20px auto;
  background-repeat: no-repeat;
  background-position: center right 24px;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
@media screen and (max-width: 375px) {
  .p-top-head-news a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 10px 20px;
    height: 87px;
  }
}
.p-top-head-news a:hover {
  background-position: center right 14px;
  background-color: #000;
}
.p-top-head-news a .date {
  font-size: 1.4rem;
  width: 96px;
}
.p-top-head-news a .ttl {
  font-size: 1.5rem;
  font-weight: bold;
  text-decoration: underline;
}
@media screen and (max-width: 375px) {
  .p-top-head-news a .ttl {
    width: 85%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
}

.p-top-reason {
  padding-top: 26px;
}
.p-top-reason .bg-txt {
  line-height: 1;
  font-size: 229px;
  color: rgba(255, 255, 255, 0.5);
  position: absolute;
  top: 69px;
  left: calc(50% - 534px);
  pointer-events: none;
  z-index: 1;
  white-space: nowrap;
}
@media screen and (max-width: 375px) {
  .p-top-reason .bg-txt {
    font-size: 53px;
    top: 21px;
    left: 7px;
    z-index: -1;
  }
}
.p-top-reason > .block1 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 375px) {
  .p-top-reason > .block1 {
    display: block;
    position: relative;
    padding-bottom: 78px;
  }
  .p-top-reason > .block1 .c-btn1, .p-top-reason > .block1 .c-btn1--wh, .p-top-reason > .block1 .c-btn1--dl, .p-top-reason > .block1 .c-btn1--play, .p-top-reason > .block1 .c-btn3, .p-top-reason > .block1 .c-btn3--red {
    position: absolute;
    left: 20px;
    bottom: 0;
  }
}
.p-top-reason > .block1 > *:nth-child(1) {
  width: 43%;
}
@media screen and (max-width: 375px) {
  .p-top-reason > .block1 > *:nth-child(1) {
    width: 100%;
  }
}
.p-top-reason > .block1 > *:nth-child(2) {
  width: 57%;
}
@media screen and (max-width: 375px) {
  .p-top-reason > .block1 > *:nth-child(2) {
    width: 100%;
  }
}
.p-top-reason > .block1 h2 {
  margin: 203px 0 40px;
}
@media screen and (max-width: 375px) {
  .p-top-reason > .block1 h2 {
    margin: 42px 0 18px;
  }
}
.p-top-reason > .block1 .c-txt2 {
  width: 88%;
  margin: 0 0 30px;
}
@media screen and (max-width: 375px) {
  .p-top-reason > .block1 .c-txt2 {
    width: 100%;
    margin: 0 0 0;
  }
}
.p-top-reason > .block1 .c-list-reason1 {
  margin-top: 148px;
}
@media screen and (max-width: 375px) {
  .p-top-reason > .block1 .c-list-reason1 {
    margin-top: 22px;
  }
}
.p-top-reason .block2 .c-ttl2 {
  margin: 134px 0 83px;
}
@media screen and (max-width: 375px) {
  .p-top-reason .block2 .c-ttl2 {
    margin: 60px 0 0;
  }
}

.p-top-program, .p-top-voice {
  padding-top: 114px;
}
@media screen and (max-width: 375px) {
  .p-top-program, .p-top-voice {
    padding-top: 69px;
    padding-bottom: 40px;
  }
  .p-top-program .c-slide1__slide, .p-top-voice .c-slide1__slide,
  .p-top-program .c-slide1__nav,
  .p-top-voice .c-slide1__nav {
    display: none;
  }
}

.p-top-program-loop > * {
  margin-bottom: 20px;
}

@media screen and (max-width: 375px) {
  .p-top-voice {
    padding-top: 36px;
  }
}

@media screen and (max-width: 375px) {
  .p-top-voice .c-slide1__nav,
  .p-top-blog .c-slide1__nav {
    display: none;
  }
  .p-top-voice .c-slide1__slide,
  .p-top-blog .c-slide1__slide {
    display: block !important;
  }
  .p-top-voice .c-slide1__slide .slick-dots,
  .p-top-blog .c-slide1__slide .slick-dots {
    position: relative;
    bottom: auto;
    position: relative;
    margin: 0 0 15px -20px;
    padding: 0;
    width: 100vw;
  }
  .p-top-voice .c-slide1__slide .slick-dots li,
  .p-top-blog .c-slide1__slide .slick-dots li {
    margin: 0;
  }
  .p-top-voice .c-slide1__slide .slick-dots li button:before,
  .p-top-blog .c-slide1__slide .slick-dots li button:before {
    font-size: 4px !important;
  }
}

.p-top-bnr {
  margin-top: 78px;
  margin-bottom: 6px;
}

.p-top-bg1 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 10000px;
  z-index: -1;
}
.p-top-bg1::before {
  background-image: url("../../../../uploads/bg1.png");
}
@media screen and (max-width: 375px) {
  .p-top-bg1 {
    -webkit-transform-origin: top left;
            transform-origin: top left;
    -webkit-transform: scale(3);
            transform: scale(3);
  }
}

.p-top-record {
  position: relative;
  padding: 145px 0 0;
}
@media screen and (max-width: 375px) {
  .p-top-record {
    padding: 90px 20px 0;
  }
}
.p-top-record .box1 {
  max-width: 1170px;
  margin: 0 auto;
  border: solid 1px #dddddd;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 95px 0 60px;
  background-color: #fff;
}
@media screen and (max-width: 375px) {
  .p-top-record .box1 {
    display: block;
    padding: 0 15px 12px;
  }
}
.p-top-record .box1 h2 {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-size: 2.2rem;
  background-color: #fff;
  padding: 0 10px;
  line-height: 1;
  color: #ad002d;
  white-space: nowrap;
}
.p-top-record .box1 h3, .p-top-record .box1 .p-mission-block1 table th, .p-mission-block1 table .p-top-record .box1 th, .p-top-record .box1 .c-post h4, .c-post .p-top-record .box1 h4 {
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
  color: #ad002d;
  font-size: 1.6rem;
  margin-bottom: 25px;
}
@media screen and (max-width: 375px) {
  .p-top-record .box1 h3, .p-top-record .box1 .p-mission-block1 table th, .p-mission-block1 table .p-top-record .box1 th, .p-top-record .box1 .c-post h4, .c-post .p-top-record .box1 h4 {
    margin-bottom: 18px;
    font-size: 1.5rem;
  }
}
.p-top-record .box1 > div {
  width: 50%;
  padding: 0 40px 0 80px;
}
@media screen and (max-width: 375px) {
  .p-top-record .box1 > div {
    width: 100%;
    padding: 35px 0 18px;
  }
}
.p-top-record .box1 > div:nth-of-type(1) {
  border-right: solid 1px #dddddd;
}
@media screen and (max-width: 375px) {
  .p-top-record .box1 > div:nth-of-type(1) {
    border-right: none;
    border-bottom: solid 1px #dddddd;
  }
}
.p-top-record .box1 ul {
  font-size: 1.6rem;
  list-style-type: disc;
  margin-left: 1em;
}
@media screen and (max-width: 375px) {
  .p-top-record .box1 ul {
    font-size: 1.5rem;
  }
}
.p-top-record .box1 ul li {
  margin-bottom: 6px;
}
@media screen and (max-width: 375px) {
  .p-top-record .box1 ul li {
    margin-bottom: 8px;
  }
}
@media screen and (max-width: 375px) {
  .p-top-record .p-top-bg1 {
    display: none;
  }
}

.p-top-blog {
  padding-top: 130px;
}
@media screen and (max-width: 375px) {
  .p-top-blog {
    padding-top: 46px;
    padding-bottom: 45px;
  }
}
.p-top-blog .c-header1 {
  margin-bottom: 76px;
}
@media screen and (max-width: 375px) {
  .p-top-blog .c-header1 {
    margin-bottom: 50px;
  }
}

.p-top-news {
  padding-top: 105px;
  padding-bottom: 98px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;

}
@media screen and (max-width: 375px) {
  .p-top-news {
    padding-top: 74px;
    padding-bottom: 58px;
    margin-bottom: 60px;
    display: block;
  }
}
.p-top-news .header {
  width: 300px;
  padding: 0 0 0 10px;
}
@media screen and (max-width: 375px) {
  .p-top-news .header {
    padding: 0 0 25px;
  }
}
.p-top-news .header .c-btn2, .p-top-news .header .h-big-menu--program .ttl, .h-big-menu--program .p-top-news .header .ttl, .p-top-news .header .c-pager2 > *, .p-top-news .header .c-btn2--dl {
  margin: 42px 0 0 6px;
}
@media screen and (max-width: 375px) {
  .p-top-news .header .c-btn2, .p-top-news .header .h-big-menu--program .ttl, .h-big-menu--program .p-top-news .header .ttl, .p-top-news .header .c-pager2 > *, .p-top-news .header .c-btn2--dl {
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}
.p-top-news .main {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
	max-width: 950px;
}

.p-top-bnr2 {
  padding-bottom: 152px;
}
@media screen and (max-width: 375px) {
  .p-top-bnr2 {
    padding-bottom: 58px;
  }
}

/* VOICE
______________________________________________*/
.p-voice-block1 {
  max-width: 1440px;
  margin: 0 auto;
  padding: 94px 80px 140px;
}
@media screen and (max-width: 375px) {
  .p-voice-block1 {
    padding: 40px 20px;
  }
}

.p-voice-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  -webkit-column-gap: 26px;
     -moz-column-gap: 26px;
          column-gap: 26px;
  row-gap: 28px;
}
@media screen and (max-width: 375px) {
  .p-voice-list {
    grid-template-columns: repeat(1, 1fr);
    gap: 15px;
  }
}

.p-mv-voice {
  height: auto;
}
@media screen and (max-width: 375px) {
  .p-mv-voice {
    height: auto !important;
  }
}
.p-mv-voice .c-ttl1, .p-mv-voice .c-ttl1--center {
  position: relative;
  margin-bottom: 35px;
  font-size: 4rem;
  line-height: 1.44;
}
@media screen and (max-width: 375px) {
  .p-mv-voice .c-ttl1, .p-mv-voice .c-ttl1--center {
    padding-bottom: 30px;
    margin-bottom: 30px;
    font-size: 2.6rem;
  }
}
.p-mv-voice .c-ttl1::after, .p-mv-voice .c-ttl1--center::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 60px;
  height: 1px;
  background-color: #dddddd;
}
.p-mv-voice .company {
  font-size: 2.2rem;
  font-weight: bold;
}
.p-mv-voice .name {
  font-size: 1.6rem;
  margin: 3px 0 18px;
}
@media screen and (max-width: 375px) {
  .p-mv-voice .name {
    font-size: 1.5rem;
  }
}
.p-mv-voice .name span {
  display: inline-block;
  margin-right: 0.8em;
}
.p-mv-voice .c-cat-program {
  font-size: 1.5rem;
}

.p-voice-block2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding-top: 20px;
}
@media screen and (max-width: 375px) {
  .p-voice-block2 {
    display: block;
    padding: 20px 20px;
  }
}
.p-voice-block2 > *:nth-child(1) {
  min-width: 380px;
  margin-right: 55px;
}
@media screen and (max-width: 375px) {
  .p-voice-block2 > *:nth-child(1) {
    min-width: 0;
    margin-right: 0;
    margin-bottom: 20px;
  }
}
.p-voice-block2 table {
  font-size: 1.6rem;
}
@media screen and (max-width: 375px) {
  .p-voice-block2 table {
    font-size: 1.5rem;
    border-bottom: solid 1px #dddddd;
  }
}
.p-voice-block2 table th,
.p-voice-block2 table td {
  border-top: solid 1px #dddddd;
  border-bottom: solid 1px #dddddd;
  padding: 0.9em 0;
}
@media screen and (max-width: 375px) {
  .p-voice-block2 table th,
  .p-voice-block2 table td {
    display: block;
    border: none;
    padding: 0;
  }
}
.p-voice-block2 table th {
  font-weight: bold;
  white-space: nowrap;
  padding-right: 50px;
}
@media screen and (max-width: 375px) {
  .p-voice-block2 table th {
    border-top: solid 1px #dddddd;
    padding: 1em 0 0;
  }
}
.p-voice-block2 table td {
  padding: 0 0 1em 0;
}

.p-voice-block3 {
  max-width: 753px;
  margin: 112px auto 0;
}
@media screen and (max-width: 375px) {
  .p-voice-block3 {
    margin: 40px auto 0;
  }
}
.p-voice-block3 img {
  width: 100%;
  height: auto;
}

.p-voice-block4 {
  margin: 126px auto 190px;
}
@media screen and (max-width: 375px) {
  .p-voice-block4 {
    margin: 40px auto 40px;
    padding: 0 20px 50px;
  }
}
.p-voice-block4 h3, .p-voice-block4 .p-mission-block1 table th, .p-mission-block1 table .p-voice-block4 th, .p-voice-block4 .c-post h4, .c-post .p-voice-block4 h4 {
  font-size: 2.2rem;
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
  padding-left: 44px;
  position: relative;
  margin: 60px 0 20px;
}
@media screen and (max-width: 375px) {
  .p-voice-block4 h3, .p-voice-block4 .p-mission-block1 table th, .p-mission-block1 table .p-voice-block4 th, .p-voice-block4 .c-post h4, .c-post .p-voice-block4 h4 {
    font-size: 1.8rem;
    font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
    padding-left: 30px;
    position: relative;
    margin: 2em 0 1em;
  }
}
.p-voice-block4 h3::after, .p-voice-block4 .p-mission-block1 table th::after, .p-mission-block1 table .p-voice-block4 th::after, .p-voice-block4 .c-post h4::after, .c-post .p-voice-block4 h4::after {
  content: "";
  display: block;
  position: absolute;
  top: 0.6em;
  left: 0;
  width: 30px;
  height: 1px;
  background-color: #ad002d;
}
@media screen and (max-width: 375px) {
  .p-voice-block4 h3::after, .p-voice-block4 .p-mission-block1 table th::after, .p-mission-block1 table .p-voice-block4 th::after, .p-voice-block4 .c-post h4::after, .c-post .p-voice-block4 h4::after {
    width: 20px;
  }
}

.p-voice-block-text {
  margin: 126px auto 190px;
}

/* 代表挨拶
______________________________________________*/
.p-mv-message {
  height: 318px;
}
@media screen and (max-width: 375px) {
  .p-mv-message {
    height: 110px;
  }
}

@media screen and (max-width: 375px) {
  .p-message-block1 {
    padding: 0 20px;
  }
}
@media screen and (max-width: 375px) {
  .p-message-block1 > img {
    min-width: 100vw;
    margin-left: -20px;
  }
}
.p-message-block1 h2 {
  font-size: 4rem;
  margin: 90px 0 20px;
  line-height: 1.625;
  margin-bottom: 48px;
}
@media screen and (max-width: 375px) {
  .p-message-block1 h2 {
    font-size: 2.4rem;
    margin: 30px 0 20px;
    line-height: 1.6666666667;
  }
}
.p-message-block1 p {
  margin-bottom: 1.8em;
}
.p-message-block1 .signature {
  text-align: right;
  -webkit-transform: translate(23px, -15px);
          transform: translate(23px, -15px);
}
.p-message-block1 .signature img {
  width: 263px;
}
@media screen and (max-width: 375px) {
  .p-message-block1 .signature img {
    width: 189px;
    -webkit-transform: translate(-20px, -15px);
            transform: translate(-20px, -15px);
  }
}

@media screen and (max-width: 375px) {
  .p-message-block2 {
    padding: 0 20px;
  }
}
.p-message-block2 .c-box1 {
  margin: 145px auto 134px;
}
@media screen and (max-width: 375px) {
  .p-message-block2 .c-box1 {
    margin: 70px auto 64px;
  }
}
.p-message-block2 .header {
  font-size: 1.6rem;
  font-weight: bold;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 55px;
}
@media screen and (max-width: 375px) {
  .p-message-block2 .header {
    display: block;
    font-size: 1.4rem;
    margin-bottom: 35px;
  }
}
.p-message-block2 .header h3, .p-message-block2 .header .p-mission-block1 table th, .p-mission-block1 table .p-message-block2 .header th, .p-message-block2 .header .c-post h4, .c-post .p-message-block2 .header h4 {
  font-size: 2.2rem;
  margin-top: 10px;
}
@media screen and (max-width: 375px) {
  .p-message-block2 .header h3, .p-message-block2 .header .p-mission-block1 table th, .p-mission-block1 table .p-message-block2 .header th, .p-message-block2 .header .c-post h4, .c-post .p-message-block2 .header h4 {
    font-size: 1.8rem;
    margin-top: 10px;
    margin-bottom: 20px;
  }
}
.p-message-block2 .header .sns {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 10px;
}
.p-message-block2 .header .sns a {
  display: block;
  width: 28px;
  margin: 0 4px 0 4px;
}
.p-message-block2 .txt1 {
  font-size: 1.6rem;
  line-height: 2;
}
@media screen and (max-width: 375px) {
  .p-message-block2 .txt1 {
    font-size: 1.5rem;
    line-height: 1.7333333333;
  }
}
.p-message-block2 .txt1 p {
  margin-bottom: 1.8em;
}
.p-message-block2 .box1 {
  background-color: rgba(245, 242, 234, 0.5);
  padding: 52px 45px 70px;
  margin: 70px 0 0;
}
@media screen and (max-width: 375px) {
  .p-message-block2 .box1 {
    padding: 40px 20px 40px;
    margin: 42px 0 0;
  }
}
.p-message-block2 .box1 h3, .p-message-block2 .box1 .p-mission-block1 table th, .p-mission-block1 table .p-message-block2 .box1 th, .p-message-block2 .box1 .c-post h4, .c-post .p-message-block2 .box1 h4 {
  font-size: 2.3rem;
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
}
@media screen and (max-width: 375px) {
  .p-message-block2 .box1 h3, .p-message-block2 .box1 .p-mission-block1 table th, .p-mission-block1 table .p-message-block2 .box1 th, .p-message-block2 .box1 .c-post h4, .c-post .p-message-block2 .box1 h4 {
    font-size: 1.8rem;
    text-align: center;
  }
}
.p-message-block2 .box1 .block1 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 28px 0 54px;
}
@media screen and (max-width: 375px) {
  .p-message-block2 .box1 .block1 {
    display: block;
    margin: 28px 0 32px;
  }
}
.p-message-block2 .box1 .block1 > *:nth-child(1) {
  width: 166px;
  min-width: 166px;
  margin-right: 38px;
}
@media screen and (max-width: 375px) {
  .p-message-block2 .box1 .block1 > *:nth-child(1) {
    min-width: 0;
    margin: 20px auto 20px;
  }
}
.p-message-block2 .box1 .block1 > *:nth-child(2) {
  font-size: 1.5rem;
  line-height: 2;
}
@media screen and (max-width: 375px) {
  .p-message-block2 .box1 .block1 > *:nth-child(2) {
    line-height: 1.7333333333;
  }
}
.p-message-block2 .box1 .block1 > *:nth-child(2) h4 {
  font-size: 1.8rem;
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
  margin: 16px 0 16px;
}
@media screen and (max-width: 375px) {
  .p-message-block2 .box1 .block1 > *:nth-child(2) h4 {
    line-height: 1.6666666667;
    margin: 16px 0 21px;
  }
}
.p-message-block2 .box1 .block1 > *:nth-child(2) a {
  display: block;
  width: 164px;
  margin: 30px 0 0;
}
@media screen and (max-width: 375px) {
  .p-message-block2 .box1 .block1 > *:nth-child(2) a {
    margin: 30px auto 0;
  }
}
.p-message-block2 .box1 table {
  font-size: 1.6rem;
  margin: 28px 0 0;
}
.p-message-block2 .box1 table th,
.p-message-block2 .box1 table td {
  border-top: solid 1px #dddddd;
  padding: 12px 0;
  word-break: break-all;
}
@media screen and (max-width: 375px) {
  .p-message-block2 .box1 table th,
  .p-message-block2 .box1 table td {
    display: block;
    border: none;
    padding: 0;
  }
}
.p-message-block2 .box1 table th {
  width: 186px;
}
@media screen and (max-width: 375px) {
  .p-message-block2 .box1 table th {
    width: 100%;
    border-top: solid 1px #dddddd;
    padding-top: 1em;
    margin-top: 1em;
  }
}
.p-message-block2 .box1 table a {
  color: #ad002d;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.p-message-block2 .box1 table a[target=_blank]::after {
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  background-image: url("../../../../uploads/ico-window-clr.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  margin-left: 0.5em;
  opacity: 0.2;
}

/* スクール情報
______________________________________________*/
.p-school-block1 {
  padding-top: 135px;
  padding-bottom: 145px;
}
@media screen and (max-width: 375px) {
  .p-school-block1 {
    padding-top: 40px;
    padding-bottom: 70px;
  }
}

/* ミッション
______________________________________________*/
.p-mv-mission {
  height: 320px;
}
@media screen and (max-width: 375px) {
  .p-mv-mission {
    height: 110px;
  }
}

@media screen and (max-width: 375px) {
  .p-mission-block1 {
    padding: 20px 20px 0;
  }
}
.p-mission-block1 .c-box1.box1 {
  padding: 74px 50px 45px;
  font-size: 2.2rem;
  line-height: 2.2727272727;
  font-family: "游明朝", "Yu Mincho", "YuMincho", "Noto Serif JP", "Noto Serif JP", "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", "HGS明朝E", serif;
  font-weight: bold;
}
@media screen and (max-width: 375px) {
  .p-mission-block1 .c-box1.box1 {
    padding: 40px 20px 45px;
    font-size: 1.8rem;
    line-height: 1.6666666667;
  }
}
.p-mission-block1 .c-box1.box2 {
  margin-top: 90px;
  padding: 50px 50px 26px;
}
@media screen and (max-width: 375px) {
  .p-mission-block1 .c-box1.box2 {
    margin-top: 52px;
    padding: 20px 20px 26px;
  }
}
.p-mission-block1 .c-box1.box2 h2 {
  font-size: 1.8rem;
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
  color: #080000;
}
.p-mission-block1 table th {
  width: 140px;
  font-size: 2.6rem;
  color: #ad002d;
  vertical-align: middle;
}
@media screen and (max-width: 375px) {
  .p-mission-block1 table th {
    width: 100%;
    font-size: 2.2rem;
    padding: 30px 0 10px !important;
    border-bottom: none !important;
  }
}
.p-mission-block1 table th,
.p-mission-block1 table td {
  padding: 40px 0;
  border-bottom: solid 1px #dddddd;
}
@media screen and (max-width: 375px) {
  .p-mission-block1 table th,
  .p-mission-block1 table td {
    display: block;
  }
}
@media screen and (max-width: 375px) {
  .p-mission-block1 table td {
    padding: 0 0 30px;
  }
}
.p-mission-block1 table tr:last-child th,
.p-mission-block1 table tr:last-child td {
  border-bottom: none;
}

/* 概要
______________________________________________*/
.p-mv-outline {
  height: 330px;
}
@media screen and (max-width: 375px) {
  .p-mv-outline {
    height: 110px;
  }
}

.p-outline-block1 {
  padding-bottom: 60px;
}
@media screen and (max-width: 375px) {
  .p-outline-block1 {
    padding: 0 20px 40px;
  }
}

@media screen and (max-width: 375px) {
  .p-history-block1 {
    padding: 0 20px 0;
  }
}

/* 遠隔
______________________________________________*/
.p-mv-history {
  height: 320px;
}
@media screen and (max-width: 375px) {
  .p-mv-history {
    height: 111px;
  }
}

/* メンバー
______________________________________________*/
.p-mv-member {
  height: 322px;
}
@media screen and (max-width: 375px) {
  .p-mv-member {
    height: 111px;
  }
}

@media screen and (max-width: 375px) {
  .p-member-block1 {
    padding: 0 20px 0;
  }
}

/* 付属機関
______________________________________________*/
.p-mv-organization {
  height: 318px;
}
@media screen and (max-width: 375px) {
  .p-mv-organization {
    height: 111px;
  }
}

.p-organization {
  padding: 10px 0 40px;
  font-size: 1.6rem;
}
@media screen and (max-width: 375px) {
  .p-organization {
    padding: 10px 20px 40px;
  }
}
.p-organization section:nth-child(1) {
  border-bottom: solid 1px #dddddd;
  padding-bottom: 60px;
  margin-bottom: 88px;
}
@media screen and (max-width: 375px) {
  .p-organization section:nth-child(1) {
    padding-bottom: 40px;
    margin-bottom: 40px;
  }
}
.p-organization section > h2 {
  font-size: 2.8rem;
  line-height: 1;
  margin-bottom: 35px;
}
@media screen and (max-width: 375px) {
  .p-organization section > h2 {
    font-size: 2rem;
    margin-bottom: 1em;
  }
}
.p-organization section > .c-link1, .p-organization section > .c-link2, .p-organization .c-table2 > * > tr > th section > a, .c-table2 > * > tr > th .p-organization section > a,
.p-organization .c-table2 > * > tr > td section > a,
.c-table2 > * > tr > td .p-organization section > a {
  float: right;
  margin-top: 20px;
  font-weight: bold;
}
.p-organization section .c-table2 {
  margin: 30px 0 0;
}

/* お知らせ
______________________________________________*/
.p-mv-news {
  height: 318px;
}

.p-news-block1 {
  padding-bottom: 180px;
}
@media screen and (max-width: 375px) {
  .p-news-block1 {
    padding: 0 20px 60px;
  }
}

.p-mv-news-single {
  height: 300px;
  padding-top: 105px;
}
@media screen and (max-width: 375px) {
  .p-mv-news-single {
    height: auto;
    padding-top: 17px;
  }
}
.p-mv-news-single .c-ttl1, .p-mv-news-single .c-ttl1--center {
  font-size: 4rem;
  line-height: 1.625;
}
@media screen and (max-width: 375px) {
  .p-mv-news-single .c-ttl1, .p-mv-news-single .c-ttl1--center {
    font-size: 2.6rem;
  }
}
.p-mv-news-single .c-ttl1 strong, .p-mv-news-single .c-ttl1--center strong {
  margin-bottom: 0;
}

.p-news-single-block1 {
  padding-bottom: 220px;
}
@media screen and (max-width: 375px) {
  .p-news-single-block1 {
    padding: 0 20px 60px;
  }
}
.p-news-single-block1 .date {
  font-size: 1.4rem;
  color: #919191;
  padding-bottom: 28px;
}
@media screen and (max-width: 375px) {
  .p-news-single-block1 .date {
    padding-bottom: 20px;
  }
}
.p-news-single-block1 .c-post {
  border-top: solid 1px #dddddd;
  border-bottom: solid 1px #dddddd;
  padding: 50px 0 30px;
}
@media screen and (max-width: 375px) {
  .p-news-single-block1 .c-post {
    padding: 18px 0 18px;
  }
}
.p-news-single-block1 .c-btn1, .p-news-single-block1 .c-btn1--wh, .p-news-single-block1 .c-btn1--dl, .p-news-single-block1 .c-btn1--play, .p-news-single-block1 .c-btn3, .p-news-single-block1 .c-btn3--red {
  margin: 0 auto;
}
@media screen and (max-width: 375px) {
  .p-news-single-block1 .c-btn1, .p-news-single-block1 .c-btn1--wh, .p-news-single-block1 .c-btn1--dl, .p-news-single-block1 .c-btn1--play, .p-news-single-block1 .c-btn3, .p-news-single-block1 .c-btn3--red {
    width: 270px;
  }
}

/* FAQ
______________________________________________*/
.p-mv-faq {
  height: 312px;
}

.p-faq-block1 {
  padding-bottom: 200px;
}
.p-faq-block1 h2 {
  font-size: 2.8rem;
  margin: 74px 0 26px;
}
.p-faq-block1 .c-nav2 {
  padding: 58px 0 35px;
}

/* BLOG
______________________________________________*/
.p-blog-list, .p-blog-list2 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -webkit-column-gap: 26px;
     -moz-column-gap: 26px;
          column-gap: 26px;
  row-gap: 76px;
}
@media screen and (max-width: 375px) {
  .p-blog-list, .p-blog-list2 {
    display: block;
  }
  .p-blog-list > *:not(:first-child), .p-blog-list2 > *:not(:first-child) {
    padding-top: 40px;
  }
  .p-blog-list > *:not(:last-child), .p-blog-list2 > *:not(:last-child) {
    padding-bottom: 30px;
    border-bottom: solid 1px #dddddd;
  }
}

.p-blog-list2 {
  grid-template-columns: repeat(4, 1fr);
}

.p-blog-block1 {
  padding-bottom: 120px !important;
}

.p-blog-article {
  padding-top: 60px;
  padding-bottom: 60px;
}
@media screen and (max-width: 375px) {
  .p-blog-article {
    padding: 0 20px 60px;
  }
}
@media screen and (max-width: 375px) {
  .p-blog-article > header > img {
    min-width: 100vw;
    margin-left: -20px;
  }
}
.p-blog-article .header {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  font-size: 1.5rem;
  color: #909090;
  margin: 34px 0 0;
}
@media screen and (max-width: 375px) {
  .p-blog-article .header {
    margin: 25px 0 0;
    font-size: 1.3rem;
  }
}
.p-blog-article .header .date {
  margin-right: 28px;
}
@media screen and (max-width: 375px) {
  .p-blog-article .header .date {
    margin-right: 20px;
  }
}
.p-blog-article .header .cat {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.p-blog-article .header .cat > * {
  margin-right: 1em;
}
.p-blog-article .title {
  margin: 20px 0 10px;
  font-size: 4rem;
  line-height: 1.625;
  position: relative;
}
@media screen and (max-width: 375px) {
  .p-blog-article .title {
    font-size: 2.6rem;
    line-height: 1.5384615385;
    margin: 6px 0 6px;
  }
}

/* .p-blog-article .title::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 60px;
  height: 1px;
  background-color: #dddddd;
}
 */
.p-blog-article .sub_title {
  font-size: 2rem;
  font-weight: bold;
	margin: 10px 0 10px;
}
.p-blog-article .index {
  border: solid 1px #dddddd;
  background-color: #fcfaf7;
  padding: 35px 50px 24px;
}
@media screen and (max-width: 375px) {
  .p-blog-article .index {
    padding: 30px 30px 24px;
    margin-bottom: 30px;
  }
}
.p-blog-article .index h2 {
  font-size: 1.8rem;
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
  margin-bottom: 15px;
}
@media screen and (max-width: 375px) {
  .p-blog-article .index h2 {
    margin-bottom: 10px;
  }
}
.p-blog-article .index ol {
  list-style-type: none;
}
.p-blog-article .index ol li {
  counter-increment: cnt;
  position: relative;
  padding-left: 1em;
  color: #ad002d;
  margin-bottom: 13px;
}
@media screen and (max-width: 375px) {
  .p-blog-article .index ol li {
    font-size: 1.6rem;
    margin-bottom: 0;
  }
}
.p-blog-article .index ol li::before {
  content: counter(cnt) ".";
  position: absolute;
  top: 0;
  left: 0;
}

/* メルマガ
______________________________________________*/
.p-mv-magazine {
  height: 312px;
}

.p-magazine-block1 {
  padding-bottom: 160px;
}
@media screen and (max-width: 375px) {
  .p-magazine-block1 {
    padding: 0 20px 60px;
  }
}
.p-magazine-block1 [type=text] {
  display: block;
  max-width: 640px;
  margin: 60px auto 40px;
}
.p-magazine-block1 .c-btn1, .p-magazine-block1 .c-btn1--wh, .p-magazine-block1 .c-btn1--dl, .p-magazine-block1 .c-btn1--play, .p-magazine-block1 .c-btn3, .p-magazine-block1 .c-btn3--red {
  margin: 0 auto;
}

/* 学習マップ
______________________________________________*/
.p-mv-textbook,
.p-mv-learning {
  height: 312px;
}

.p-textbook-block1 {
  padding-bottom: 118px;
}
@media screen and (max-width: 375px) {
  .p-textbook-block1 {
    padding: 0 20px 60px;
  }
}
.p-textbook-block1 .txt1 {
  line-height: 1.8888888889;
}
.p-textbook-block1 .c-box-caution {
  margin: 45px 0 0;
}
.p-textbook-block1 .c-ttl3, .p-textbook-block1 .c-post h2, .c-post .p-textbook-block1 h2 {
  margin: 80px 0 20px;
}

/* 学習マップ
______________________________________________*/
@media screen and (max-width: 375px) {
  .p-learning-block1 {
    padding: 0 20px;
  }
}
.p-learning-block1 .txt1 {
  line-height: 1.8888888889;
}
.p-learning-block1 .c-box-caution {
  margin: 45px 0 0;
}
.p-learning-block1 .c-ttl3, .p-learning-block1 .c-post h2, .c-post .p-learning-block1 h2 {
  margin: 80px 0 20px;
}

.p-learning-block2 {
  padding-bottom: 160px;
}
@media screen and (max-width: 375px) {
  .p-learning-block2 {
    padding: 0 20px 140px;
  }
}
.p-learning-block2 .c-box2, .p-learning-block2 .c-box2-2 {
  margin-bottom: 16px;
}
.p-learning-block2 .c-btn2, .p-learning-block2 .h-big-menu--program .ttl, .h-big-menu--program .p-learning-block2 .ttl, .p-learning-block2 .c-pager2 > *, .p-learning-block2 .c-btn2--dl {
  float: right;
}
@media screen and (max-width: 375px) {
  .p-learning-block2 .c-btn2, .p-learning-block2 .h-big-menu--program .ttl, .h-big-menu--program .p-learning-block2 .ttl, .p-learning-block2 .c-pager2 > *, .p-learning-block2 .c-btn2--dl {
    float: none;
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    white-space: nowrap;
    margin-top: 20px;
  }
}
.p-learning-block2 .c-ttl6 {
  margin-bottom: 30px;
}

.p-learning-ttl1 {
  margin-top: 85px;
}
@media screen and (max-width: 375px) {
  .p-learning-ttl1 {
    margin-top: 40px;
  }
}

.p-learning-ttl2 {
  margin-top: 105px;
}
@media screen and (max-width: 375px) {
  .p-learning-ttl2 {
    margin-top: 190px;
  }
}

.p-learning-ttl3 {
  margin-top: 100px;
}

/* 404
______________________________________________*/
.p-404-block1 {
  padding: 0 0 190px;
  text-align: center;
}
@media screen and (max-width: 375px) {
  .p-404-block1 {
    padding: 40px 0 90px;
  }
}
.p-404-block1 h2 {
  font-size: 8rem;
  font-weight: bold;
  color: #ad002d;
  line-height: 1;
}
@media screen and (max-width: 375px) {
  .p-404-block1 h2 {
    font-size: 4.5rem;
  }
}
.p-404-block1 h3, .p-404-block1 .c-post h4, .c-post .p-404-block1 h4, .p-404-block1 .p-mission-block1 table th, .p-mission-block1 table .p-404-block1 th {
  font-size: 1.6rem;
  font-weight: bold;
  margin: 20px 0 40px;
}
.p-404-block1 .c-btn1, .p-404-block1 .c-btn1--wh, .p-404-block1 .c-btn1--dl, .p-404-block1 .c-btn1--play, .p-404-block1 .c-btn3, .p-404-block1 .c-btn3--red {
  margin: 60px auto 0;
}

/* ポリシー
______________________________________________*/
.p-policy-block1 {
  max-width: 957px;
  padding-top: 110px;
  padding-bottom: 120px;
}
@media screen and (max-width: 375px) {
  .p-policy-block1 {
    padding: 60px 20px 60px;
  }
}
.p-policy-block1 h2 {
  font-size: 3.2rem;
  text-align: center;
  margin: 0 0 1.2em;
}
@media screen and (max-width: 375px) {
  .p-policy-block1 h2 {
    font-size: 2.2rem;
  }
}

/* 選ばれる理由
______________________________________________*/
body.page-id-11 .c-mv1::before, body.page-id-11 .c-mv2::before, body.page-id-11 .c-mv1::after, body.page-id-11 .c-mv2::after {
  display: none;
}

.p-reason-proven {
  padding-top: 104px;
  padding-bottom: 150px;
}
@media screen and (max-width: 375px) {
  .p-reason-proven {
    padding-top: 56px;
    padding-bottom: 0;
  }
}
.p-reason-proven .block1 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 76px 0 50px;
  gap: 40px;
}
@media screen and (max-width: 375px) {
  .p-reason-proven .block1 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    margin: 28px 0 50px;
    gap: 0;
  }
}
.p-reason-proven .block1 > *:nth-child(1) {
  background-color: #fff;
  border: solid 1px #dddddd;
  padding: 32px 36px 0;
  width: 480px;
  min-width: 480px;
  font-size: 1.6rem;
}
@media screen and (max-width: 375px) {
  .p-reason-proven .block1 > *:nth-child(1) {
    width: 100%;
    min-width: 0;
    padding: 19px 20px 20px;
    font-size: 1.5rem;
    margin: 24px 0 0;
  }
}
.p-reason-proven .block1 > *:nth-child(1) img {
  margin-top: 18px;
}
@media screen and (max-width: 375px) {
  .p-reason-proven .block1 > *:nth-child(1) img {
    margin-top: 12px;
  }
}
.p-reason-proven .block1 .c-list-reason1 {
  margin-top: -10px;
}
.p-reason-proven .block1 .c-list-reason1 > li {
  padding: 45px 20px 0 99px;
  background: none;
  margin-bottom: 0;
  white-space: nowrap;
}
@media screen and (max-width: 375px) {
  .p-reason-proven .block1 .c-list-reason1 > li {
    padding: 20px 0 10px 32px;
    white-space: normal;
  }
}
.p-reason-proven .block1 .c-list-reason1 > li:before {
  left: 0;
}
.p-reason-proven .block1 .c-list-reason1 > li:after {
  left: 4px;
}
.p-reason-proven .block2 {
  background-image: url("../../../../uploads/title-ems.svg");
  background-size: calc(100% - 80px) auto;
  background-repeat: no-repeat;
  background-position: top left 80px;
  margin: 154px 0 0;
  padding: 37px 0 0;
  text-align: center;
}
@media screen and (max-width: 375px) {
  .p-reason-proven .block2 {
    margin: -20px 0 0;
    text-align: left;
  }
}
.p-reason-proven .block2 h3, .p-reason-proven .block2 .c-post h4, .c-post .p-reason-proven .block2 h4, .p-reason-proven .block2 .p-mission-block1 table th, .p-mission-block1 table .p-reason-proven .block2 th {
  text-align: center;
  font-size: 3rem;
  line-height: 1.6666666667;
  margin: 0 0 90px;
}
@media screen and (max-width: 375px) {
  .p-reason-proven .block2 h3, .p-reason-proven .block2 .c-post h4, .c-post .p-reason-proven .block2 h4, .p-reason-proven .block2 .p-mission-block1 table th, .p-mission-block1 table .p-reason-proven .block2 th {
    font-size: 2rem;
    line-height: 1.5;
    text-align: left;
    margin: 0 0 27px;
  }
  .p-reason-proven .block2 h3 br, .p-reason-proven .block2 .c-post h4 br, .c-post .p-reason-proven .block2 h4 br, .p-reason-proven .block2 .p-mission-block1 table th br, .p-mission-block1 table .p-reason-proven .block2 th br {
    display: none;
  }
}
.p-reason-proven .block2 h3 strong, .p-reason-proven .block2 .c-post h4 strong, .c-post .p-reason-proven .block2 h4 strong, .p-reason-proven .block2 .p-mission-block1 table th strong, .p-mission-block1 table .p-reason-proven .block2 th strong {
  color: #ad002d;
}
@media screen and (max-width: 375px) {
  .p-reason-proven .block2 h3 strong, .p-reason-proven .block2 .c-post h4 strong, .c-post .p-reason-proven .block2 h4 strong, .p-reason-proven .block2 .p-mission-block1 table th strong, .p-mission-block1 table .p-reason-proven .block2 th strong {
    display: block;
  }
}

.p-reason-strengths {
  padding-top: 87px;
  padding-bottom: 27px;
}
@media screen and (max-width: 375px) {
  .p-reason-strengths {
    padding-top: 63px;
    padding-bottom: 27px;
  }
  .p-reason-strengths .c-ttl1--center {
    line-height: 1.5384615385;
  }
}
.p-reason-strengths .c-cardlist1 {
  margin: 111px 0 0;
}
@media screen and (max-width: 375px) {
  .p-reason-strengths .c-cardlist1 {
    margin: 31px 0 0;
  }
}
.p-reason-strengths .c-cardlist1 > li {
  margin-bottom: 114px;
}
@media screen and (max-width: 375px) {
  .p-reason-strengths .c-cardlist1 > li {
    margin-bottom: 46px;
  }
}

/* プログラム
______________________________________________*/
.p-program-about {
  padding-top: 91px;
  padding-bottom: 27px;
}
@media screen and (max-width: 375px) {
  .p-program-about {
    padding-top: 30px;
    padding-bottom: 27px;
  }
}
.p-program-about .c-cardlist1 {
  margin: 113px 0 0;
}
@media screen and (max-width: 375px) {
  .p-program-about .c-cardlist1 {
    margin: 40px 0 0;
  }
}

.p-program-about__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-top: 80px;
  font-size: 1.6rem;
}
@media screen and (max-width: 375px) {
  .p-program-about__list {
    margin-top: 40px;
    grid-template-columns: repeat(1, 1fr);
    font-size: 1.5rem;
    gap: 40px;
  }
}
.p-program-about__list > * {
  position: relative;
  border: solid 1px #dddddd;
  padding: 53px 29px 22px;
}
@media screen and (max-width: 375px) {
  .p-program-about__list > * {
    padding: 30px 20px 22px;
  }
}
.p-program-about__list > * h3, .p-program-about__list > * .c-post h4, .c-post .p-program-about__list > * h4, .p-program-about__list > * .p-mission-block1 table th, .p-mission-block1 table .p-program-about__list > * th {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background-color: #fff;
  padding: 0 0.2em;
  white-space: nowrap;
}

.p-program-strengths {
  padding-top: 100px;
  padding-bottom: 27px;
}
@media screen and (max-width: 375px) {
  .p-program-strengths {
    padding-top: 40px;
  }
}
.p-program-strengths .c-cardlist1 {
  margin: 92px 0 0;
}
@media screen and (max-width: 375px) {
  .p-program-strengths .c-cardlist1 {
    margin: 40px 0 0;
  }
}

.p-program-lineup > * {
  max-width: 1104px;
  padding: 0;
}
@media screen and (max-width: 375px) {
  .p-program-lineup > * {
    padding: 0 20px 0;
  }
}

.p-mv-program {
  height: auto !important;
}
.p-mv-program .c-ttl1, .p-mv-program .c-ttl1--center {
  padding-bottom: 48px;
  position: relative;
}
@media screen and (max-width: 375px) {
  .p-mv-program .c-ttl1, .p-mv-program .c-ttl1--center {
    padding-bottom: 24px;
  }
}
.p-mv-program .c-ttl1::after, .p-mv-program .c-ttl1--center::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 60px;
  height: 1px;
  background-color: #ddd;
}
@media screen and (max-width: 375px) {
  .p-mv-program .c-ttl1, .p-mv-program .c-ttl1--center {
    font-size: 2.6rem;
  }
}
.p-mv-program .c-ttl1 > span, .p-mv-program .c-ttl1--center > span {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 375px) {
  .p-mv-program .c-ttl1 > span, .p-mv-program .c-ttl1--center > span {
    display: block;
  }
}
.p-mv-program .c-program_cat_list {
  padding-top: 0.5em;
}
.p-mv-program .c-program_cat_list li {
  font-size: 1.8rem;
  padding: 0.5em 1.5em;
}
@media screen and (max-width: 375px) {
  .p-mv-program .c-program_cat_list li {
    font-size: 1.3rem;
  }
}
.p-mv-program .nav-related_links {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 10px;
  margin: 43px 0 60px;
}
@media screen and (max-width: 375px) {
  .p-mv-program .nav-related_links {
    gap: 10px;
    font-size: 1.3rem;
    line-height: 1.2;
    text-align: left;
  }
  .p-mv-program .nav-related_links .c-btn2, .p-mv-program .nav-related_links .h-big-menu--program .ttl, .h-big-menu--program .p-mv-program .nav-related_links .ttl, .p-mv-program .nav-related_links .c-pager2 > *, .p-mv-program .nav-related_links .c-btn2--dl {
    font-size: 1.3rem;
    line-height: 1.2;
    text-align: left;
  }
}

@media screen and (max-width: 375px) {
  .p-program-single {
    padding: 0 20px;
  }
}
.p-program-single > section {
  margin-top: 73px;
}
@media screen and (max-width: 375px) {
  .p-program-single > section {
    margin-top: 40px;
  }
}
.p-program-single > section:nth-child(1) {
  margin-top: 21px;
}
.p-program-single > section a {
  color: #ad002d;
  text-decoration: underline;
}
.p-program-single .c-ttl3, .p-program-single .c-post h2, .c-post .p-program-single h2 {
  margin: 0 0 40px;
}
@media screen and (max-width: 375px) {
  .p-program-single .c-ttl3, .p-program-single .c-post h2, .c-post .p-program-single h2 {
    margin: 0 0 20px;
  }
}
.p-program-single .txt-box1 {
  margin-bottom: 1.5em;
}
.p-program-single > .c-btn3, .p-program-single > .c-btn3--red {
  margin: 100px auto;
}
@media screen and (max-width: 375px) {
  .p-program-single > .c-btn3, .p-program-single > .c-btn3--red {
    margin: 55px auto 55px;
  }
}
.p-program-single > .c-btn1, .p-program-single > .c-btn1--wh, .p-program-single > .c-btn1--dl, .p-program-single > .c-btn1--play, .p-program-single > .c-btn3, .p-program-single > .c-btn3--red {
  margin: 100px auto 150px;
}
@media screen and (max-width: 375px) {
  .p-program-single > .c-btn1, .p-program-single > .c-btn1--wh, .p-program-single > .c-btn1--dl, .p-program-single > .c-btn1--play, .p-program-single > .c-btn3, .p-program-single > .c-btn3--red {
    margin: 55px auto 55px;
  }
}

.p-program-single-sec-feature .c-list-feature {
  margin-bottom: 60px;
}
@media screen and (max-width: 375px) {
  .p-program-single-sec-feature .c-list-feature {
    margin-bottom: 35px;
  }
}
.p-program-single-sec-feature .document {
  display: block;
  max-width: 700px;
  margin: 0 auto 60px;
}
@media screen and (max-width: 375px) {
  .p-program-single-sec-feature .document {
    margin: 0 auto 35px;
  }
}
.p-program-single-sec-feature .document iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 1.4989293362;
}
.p-program-single-sec-feature .link-button {
  width: 100%;
  max-width: 700px;
  margin: 0 auto 60px;
}
@media screen and (max-width: 375px) {
  .p-program-single-sec-feature .link-button {
    margin: 0 auto 35px;
  }
}

.p-program-single-sec-overview {
  margin-bottom: 60px;
}
.p-program-single-sec-overview .block1 > * {
  margin-bottom: 40px;
}

.p-program-flow-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 375px) {
  .p-program-flow-box {
    margin-top: -6px;
  }
}
.p-program-flow-box .flow_term {
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  text-orientation: upright;
  line-height: 1;
  font-size: 1.7rem;
  color: #bfbfbf;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-image: url("../../../../uploads/arrow-top.svg"), url("../../../../uploads/arrow-down.svg");
  background-size: 16px auto;
  background-repeat: no-repeat;
  background-position: center top, center bottom;
  margin: 24px 37px 30px 9px;
}
@media screen and (max-width: 375px) {
  .p-program-flow-box .flow_term {
    margin: 33px 21px 30px 1px;
    font-size: 1.5rem;
  }
}
.p-program-flow-box .flow_term::before, .p-program-flow-box .flow_term::after {
  content: "";
  display: block;
  width: 1px;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  background-color: #bfbfbf;
  margin: 6px 0 6px 0;
}
.p-program-flow-box ol {
  list-style: none;
  counter-reset: my-counter;
  padding: 0;
}
.p-program-flow-box ol li {
  padding: 32px 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  position: relative;
  margin-left: 62px;
  border-bottom: dotted 1px #dddddd;
  font-size: 1.6rem;
}
@media screen and (max-width: 375px) {
  .p-program-flow-box ol li {
    padding: 25px 0;
    display: block;
    margin-left: 35px;
    font-size: 1.5rem;
  }
}
.p-program-flow-box ol li:last-child {
  border-bottom: none;
}
.p-program-flow-box ol li::before {
  counter-increment: my-counter;
  content: counter(my-counter);
  position: absolute;
  top: 28px;
  left: -62px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 1.5rem;
  width: 37px;
  height: 37px;
  border-radius: 50%;
  background-color: #ad002d;
  color: #fff;
}
@media screen and (max-width: 375px) {
  .p-program-flow-box ol li::before {
    top: 22px;
    left: -36px;
    width: 28px;
    min-width: 28px;
    height: 28px;
  }
}
.p-program-flow-box ol li h3, .p-program-flow-box ol li .c-post h4, .c-post .p-program-flow-box ol li h4, .p-program-flow-box ol li .p-mission-block1 table th, .p-mission-block1 table .p-program-flow-box ol li th {
  font-size: 1.8rem;
  font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
  width: 190px;
  min-width: 190px;
}
@media screen and (max-width: 375px) {
  .p-program-flow-box ol li h3, .p-program-flow-box ol li .c-post h4, .c-post .p-program-flow-box ol li h4, .p-program-flow-box ol li .p-mission-block1 table th, .p-mission-block1 table .p-program-flow-box ol li th {
    width: auto;
    min-width: 0;
    margin-bottom: 10px;
  }
}

/* プログラム
______________________________________________*/
.p-master-class-mv {
  height: 310px;
}
@media screen and (max-width: 375px) {
  .p-master-class-mv {
    height: 110px !important;
  }
  .p-master-class-mv .c-ttl1, .p-master-class-mv .c-ttl1--center {
    font-size: 2rem;
  }
}

.p-master-class {
  padding-bottom: 180px;
}
@media screen and (max-width: 375px) {
  .p-master-class {
    padding: 0 20px 50px;
  }
}
.p-master-class .c-post p {
  font-size: 1.6rem;
  line-height: 2;
}
.p-master-class .c-post h2 {
  margin: 2.2em 0 1em !important;
}
.p-master-class .c-post h2:first-child {
  margin-top: 0 !important;
}
.p-master-class .c-post .box1 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 30px 0 30px;
}
@media screen and (max-width: 375px) {
  .p-master-class .c-post .box1 {
    padding: 10px 0 30px;
    display: block;
  }
}
.p-master-class .c-post .box1 > *:nth-child(1) {
  margin-right: 50px;
}
@media screen and (max-width: 375px) {
  .p-master-class .c-post .box1 > *:nth-child(1) {
    margin: 20px auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.p-master-class .c-post figcaption {
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
  margin: 65px 0 0;
}
.p-master-class .c-post ul > li::before {
  background-color: #ad002d !important;
}
.p-master-class .c-post img {
  max-width: 700px;
  margin: 40px auto;
}
.p-master-class .c-post .img1 {
  max-width: 273px;
  margin: 20px 50px 0 26px;
}
.p-master-class .c-post .img2 {
  margin: 20px auto 96px;
}
.p-master-class .c-post .img4 {
  max-width: 350px;
  margin: 0;
}
.p-master-class .c-post .img5 {
  max-width: 150px;
  margin: 0;
}

.p-master-class__nav1 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 20px;
  margin: 120px auto 0;
}
@media screen and (max-width: 375px) {
  .p-master-class__nav1 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    margin: 40px auto 40px;
  }
}
.p-master-class__nav1 .c-btn1, .p-master-class__nav1 .c-btn1--wh, .p-master-class__nav1 .c-btn1--dl, .p-master-class__nav1 .c-btn1--play, .p-master-class__nav1 .c-btn3, .p-master-class__nav1 .c-btn3--red {
  width: 390px;
}
@media screen and (max-width: 375px) {
  .p-master-class__nav1 .c-btn1, .p-master-class__nav1 .c-btn1--wh, .p-master-class__nav1 .c-btn1--dl, .p-master-class__nav1 .c-btn1--play, .p-master-class__nav1 .c-btn3, .p-master-class__nav1 .c-btn3--red {
    width: 100%;
    line-height: 1.2;
  }
}

/* 採用
______________________________________________*/
.p-recruit {
  padding: 0 0 120px;
}
@media screen and (max-width: 375px) {
  .p-recruit {
    padding: 0 20px;
  }
}
.p-recruit h1 {
  text-align: center;
  margin-bottom: 2em;
}
@media screen and (max-width: 375px) {
  .p-recruit h1 {
    text-align: left;
    font-size: 2.2rem;
  }
}
.p-recruit h2:nth-of-type(1) {
  margin-top: 0 !important;
}

.p-recruit__btn {
  margin: 0 auto 120px;
}
@media screen and (max-width: 375px) {
  .p-recruit__btn {
    margin: 0 auto 100px;
  }
}

/* お問い合わせ
______________________________________________*/
.p-mv-contact {
  height: 312px;
}

.p-contact {
  padding-bottom: 120px;
}
@media screen and (max-width: 375px) {
  .p-contact {
    padding: 0 20px 50px;
  }
}
.p-contact .header {
  font-size: 1.8rem;
}
@media screen and (max-width: 375px) {
  .p-contact .header {
    font-size: 1em;
  }
}
.p-contact .header a {
  color: #ad002d;
  text-decoration: underline;
}
.p-contact .header small {
  font-size: 1.6rem;
}
@media screen and (max-width: 375px) {
  .p-contact .header small {
    font-size: 0.9em;
  }
}
.p-contact .required-note {
  font-size: 1.6rem;
  margin: 35px 0 0px;
}
.p-contact dl {
  margin: 30px 0 0;
}
@media screen and (max-width: 375px) {
  .p-contact dl {
    margin: 30px 0 0;
  }
}
.p-contact dt {
  margin-bottom: 0.6em;
}
.p-contact dd {
  margin-bottom: 1.6em;
}

/*----------------------------------------------------------------
  for JavaScript
-----------------------------------------------------------------*/
/* .js-
______________________________________________*/
/* .js-pagerList
______________________________________________*/
.js-pagerList .hide {
  display: none;
}

/* .js-imgsList
______________________________________________*/
.js-imgsList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
}
.js-imgsList::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  background-color: rgba(0, 0, 0, 0.38);
}
.js-imgsList > * {
  width: 33.3333333333%;
  padding-top: 22.5225225225%;
  position: relative;
}
@media screen and (max-width: 375px) {
  .js-imgsList > * {
    width: 25%;
    padding-top: 20.5%;
  }
}
.js-imgsList > * > * {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-transition: all 1.5s ease;
  transition: all 1.5s ease;
}
.js-imgsList > *.change > *:nth-child(2) {
  opacity: 0;
}

/* .js-tab
______________________________________________*/
.js-tab .js-tab-contents > * {
  display: none;
}
.js-tab .js-tab-contents > *.current {
  display: block;
}

/* .js-fade1
______________________________________________*/
.js-fade1 > * {
  -webkit-transition: all 0.8s ease;
  transition: all 0.8s ease;
  opacity: 0;
  -webkit-transform: translateY(100px);
          transform: translateY(100px);
}
.js-fade1 > *.effOn {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

/* .js-fade2
______________________________________________*/
.js-fade2 > * {
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  opacity: 0;
}
.js-fade2 > *.effOn {
  opacity: 1;
}

/* .js-fade3
______________________________________________*/
.js-fade3 {
  opacity: 0;
}
.js-fade3.effOn {
  opacity: 1;
}

/* .c-zoombox
______________________________________________*/
.c-zoombox {
  position: relative;
  display: block;
  overflow: hidden;
}
.c-zoombox::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  opacity: 0;
}
.c-zoombox::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  opacity: 0;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
.c-zoombox:hover {
  opacity: 1;
}
.c-zoombox:hover::after {
  opacity: 1;
}
.c-zoombox:hover::before {
  opacity: 1;
}
.c-zoombox:hover > * {
  -webkit-transform: scale(1.03);
          transform: scale(1.03);
}
.c-zoombox > * {
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}

a:hover {
  opacity: 1;
}
a:hover .c-zoombox::after {
  opacity: 1;
}
a:hover .c-zoombox::before {
  opacity: 1;
}
a:hover .c-zoombox > * {
  -webkit-transform: scale(1.03);
          transform: scale(1.03);
}

/* .c-zoombox1
______________________________________________*/
.c-zoombox1 {
  background-color: #dddddd;
  position: relative;
  display: block;
  overflow: hidden;
}
.c-zoombox1::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  background-color: rgba(0, 0, 0, 0.2);
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
  opacity: 0;
}
.c-zoombox1::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: solid 5px #ad002d;
  z-index: 1;
  opacity: 0;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
.c-zoombox1:hover {
  opacity: 1;
}
.c-zoombox1:hover::after {
  opacity: 1;
}
.c-zoombox1:hover::before {
  opacity: 1;
}
.c-zoombox1:hover > * {
  -webkit-transform: scale(1.03);
          transform: scale(1.03);
}
.c-zoombox1 > * {
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}

a:hover {
  opacity: 1;
}
a:hover .c-zoombox1::after {
  opacity: 1;
}
a:hover .c-zoombox1::before {
  opacity: 1;
}
a:hover .c-zoombox1 > * {
  -webkit-transform: scale(1.03);
          transform: scale(1.03);
}

/*----------------------------------------------------------------
  状態管理
-----------------------------------------------------------------*/
/* .is-
______________________________________________*/
.is-tb,
.is-tb-flex,
.is-tb-inline-flex,
.is-tb-inline,
.is-tb-inline-block {
  display: none !important;
}

.is-sp,
.is-sp-flex,
.is-sp-inline-flex,
.is-sp-inline,
.is-sp-inline-block {
  display: none !important;
}

.is-pc {
  display: block !important;
}

.is-pc-flex {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
}

.is-pc-inline-flex {
  display: -webkit-inline-box !important;
  display: -webkit-inline-flex !important;
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
}

.is-pc-inline {
  display: inline !important;
}

.is-pc-inline-block {
  display: inline-block !important;
}

@media only screen and (max-width: 750px) {
  .is-pc,
  .is-pc-flex,
  .is-pc-inline-flex,
  .is-pc-inline,
  .is-pc-inline-block {
    display: none !important;
  }
  .is-sp {
    display: block !important;
  }
  .is-sp-flex {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .is-sp-inline-flex {
    display: -webkit-inline-box !important;
    display: -webkit-inline-flex !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
  .is-sp-inline {
    display: inline !important;
  }
  .is-sp-inline-block {
    display: inline-block !important;
  }
}
/*----------------------------------------------------------------
    Utilitys
-----------------------------------------------------------------*/
/*  カラー
______________________________________________*/
.u-clrBase1 {
  color: #fff !important;
}

.u-bgClrBase1 {
  background-color: #fff !important;
}

.u-borderClrBase1 {
  background-color: #fff !important;
}

.u-clrMain1 {
  color: #ad002d !important;
}

.u-bgClrMain1 {
  background-color: #ad002d !important;
}

.u-borderClrMain1 {
  background-color: #ad002d !important;
}

.u-clrAccent1 {
  color: #1f497d !important;
}

.u-bgClrAccent1 {
  background-color: #1f497d !important;
}

.u-borderClrAccent1 {
  background-color: #1f497d !important;
}

.u-clrText1 {
  color: #080000 !important;
}

.u-bgClrText1 {
  background-color: #080000 !important;
}

.u-borderClrText1 {
  background-color: #080000 !important;
}

.u-clrBorder1 {
  color: #dddddd !important;
}

.u-bgClrBorder1 {
  background-color: #dddddd !important;
}

.u-borderClr1 {
  background-color: #dddddd !important;
}

.u-clrWh,
.u-clrWhite {
  color: white !important;
}

.u-clrBk,
.u-clrBlack {
  color: black !important;
}

.u-clrRed {
  color: red !important;
}

.u-clrBlue {
  color: blue !important;
}

@media screen and (max-width: 375px) {
  .u-clrBase1--sp {
    color: #fff !important;
  }
  .u-bgClrBase1--sp {
    background-color: #fff !important;
  }
  .u-borderClrBase1--sp {
    background-color: #fff !important;
  }
  .u-clrMain1--sp {
    color: #ad002d !important;
  }
  .u-bgClrMain1--sp {
    background-color: #ad002d !important;
  }
  .u-borderClrMain1--sp {
    background-color: #ad002d !important;
  }
  .u-clrAccent1--sp {
    color: #1f497d !important;
  }
  .u-bgClrAccent1--sp {
    background-color: #1f497d !important;
  }
  .u-borderClrAccent1--sp {
    background-color: #1f497d !important;
  }
  .u-clrText1--sp {
    color: #080000 !important;
  }
  .u-bgClrText1--sp {
    background-color: #080000 !important;
  }
  .u-borderClrText1--sp {
    background-color: #080000 !important;
  }
  .u-clrBorder1--sp {
    color: #dddddd !important;
  }
  .u-bgClrBorder1--sp {
    background-color: #dddddd !important;
  }
  .u-borderClr1--sp {
    background-color: #dddddd !important;
  }
  .u-clrWh--sp,
  .u-clrWhite--sp {
    color: white !important;
  }
  .u-clrBk--sp,
  .u-clrBlack--sp {
    color: black !important;
  }
  .u-clrRed--sp {
    color: red !important;
  }
  .u-clrBlue--sp {
    color: blue !important;
  }
}
/*  モノクロ
______________________________________________*/
.u-mono {
  -webkit-filter: grayscale(100%);
          filter: grayscale(100%);
}

@media screen and (max-width: 375px) {
  .u-mono--sp {
    -webkit-filter: grayscale(100%);
            filter: grayscale(100%);
  }
}
/*  背景
______________________________________________*/
.u-bgCover {
  background-size: cover;
  background-position: center;
}

.u-bgContain {
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

@media screen and (max-width: 375px) {
  .u-bgCover--sp {
    background-size: cover;
    background-position: center;
  }
  .u-bgContain--sp {
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
  }
}
/*  Grid System
______________________________________________*/
/*
12カラムグリッドシステム
gutter（隙間）を使用する場合
*/
.u-grid {
  display: grid;
}

.u-grid1 {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
}

.u-grid2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}

.u-grid3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}

.u-grid4 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}

.u-grid5 {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
}

.u-grid6 {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
}

.u-grid7 {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
}

.u-grid8 {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
}

.u-grid9 {
  display: grid;
  grid-template-columns: repeat(9, 1fr);
}

.u-grid10 {
  display: grid;
  grid-template-columns: repeat(10, 1fr);
}

.u-grid11 {
  display: grid;
  grid-template-columns: repeat(11, 1fr);
}

.u-grid12 {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
}

.u-grid13 {
  display: grid;
  grid-template-columns: repeat(13, 1fr);
}

.u-grid14 {
  display: grid;
  grid-template-columns: repeat(14, 1fr);
}

.u-grid15 {
  display: grid;
  grid-template-columns: repeat(15, 1fr);
}

.u-grid16 {
  display: grid;
  grid-template-columns: repeat(16, 1fr);
}

.u-grid17 {
  display: grid;
  grid-template-columns: repeat(17, 1fr);
}

.u-grid18 {
  display: grid;
  grid-template-columns: repeat(18, 1fr);
}

.u-grid19 {
  display: grid;
  grid-template-columns: repeat(19, 1fr);
}

.u-grid20 {
  display: grid;
  grid-template-columns: repeat(20, 1fr);
}

@media screen and (max-width: 375px) {
  .u-grid1--sp {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
  }
  .u-grid2--sp {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
  .u-grid3--sp {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
  }
  .u-grid4--sp {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
  }
  .u-grid5--sp {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
  }
  .u-grid6--sp {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
  }
  .u-grid7--sp {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
  }
  .u-grid8--sp {
    display: grid;
    grid-template-columns: repeat(8, 1fr);
  }
  .u-grid9--sp {
    display: grid;
    grid-template-columns: repeat(9, 1fr);
  }
  .u-grid10--sp {
    display: grid;
    grid-template-columns: repeat(10, 1fr);
  }
  .u-grid11--sp {
    display: grid;
    grid-template-columns: repeat(11, 1fr);
  }
  .u-grid12--sp {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
  }
  .u-grid13--sp {
    display: grid;
    grid-template-columns: repeat(13, 1fr);
  }
  .u-grid14--sp {
    display: grid;
    grid-template-columns: repeat(14, 1fr);
  }
  .u-grid15--sp {
    display: grid;
    grid-template-columns: repeat(15, 1fr);
  }
  .u-grid16--sp {
    display: grid;
    grid-template-columns: repeat(16, 1fr);
  }
  .u-grid17--sp {
    display: grid;
    grid-template-columns: repeat(17, 1fr);
  }
  .u-grid18--sp {
    display: grid;
    grid-template-columns: repeat(18, 1fr);
  }
  .u-grid19--sp {
    display: grid;
    grid-template-columns: repeat(19, 1fr);
  }
  .u-grid20--sp {
    display: grid;
    grid-template-columns: repeat(20, 1fr);
  }
}
.u-gap0px {
  -webkit-column-gap: 0px !important;
     -moz-column-gap: 0px !important;
          column-gap: 0px !important;
  row-gap: 0px !important;
}

.u-gapCol0px {
  -webkit-column-gap: 0px !important;
     -moz-column-gap: 0px !important;
          column-gap: 0px !important;
}

.u-gapRow0px {
  row-gap: 0px !important;
}

.u-gap1px {
  -webkit-column-gap: 1px !important;
     -moz-column-gap: 1px !important;
          column-gap: 1px !important;
  row-gap: 1px !important;
}

.u-gapCol1px {
  -webkit-column-gap: 1px !important;
     -moz-column-gap: 1px !important;
          column-gap: 1px !important;
}

.u-gapRow1px {
  row-gap: 1px !important;
}

.u-gap2px {
  -webkit-column-gap: 2px !important;
     -moz-column-gap: 2px !important;
          column-gap: 2px !important;
  row-gap: 2px !important;
}

.u-gapCol2px {
  -webkit-column-gap: 2px !important;
     -moz-column-gap: 2px !important;
          column-gap: 2px !important;
}

.u-gapRow2px {
  row-gap: 2px !important;
}

.u-gap3px {
  -webkit-column-gap: 3px !important;
     -moz-column-gap: 3px !important;
          column-gap: 3px !important;
  row-gap: 3px !important;
}

.u-gapCol3px {
  -webkit-column-gap: 3px !important;
     -moz-column-gap: 3px !important;
          column-gap: 3px !important;
}

.u-gapRow3px {
  row-gap: 3px !important;
}

.u-gap4px {
  -webkit-column-gap: 4px !important;
     -moz-column-gap: 4px !important;
          column-gap: 4px !important;
  row-gap: 4px !important;
}

.u-gapCol4px {
  -webkit-column-gap: 4px !important;
     -moz-column-gap: 4px !important;
          column-gap: 4px !important;
}

.u-gapRow4px {
  row-gap: 4px !important;
}

.u-gap5px {
  -webkit-column-gap: 5px !important;
     -moz-column-gap: 5px !important;
          column-gap: 5px !important;
  row-gap: 5px !important;
}

.u-gapCol5px {
  -webkit-column-gap: 5px !important;
     -moz-column-gap: 5px !important;
          column-gap: 5px !important;
}

.u-gapRow5px {
  row-gap: 5px !important;
}

.u-gap6px {
  -webkit-column-gap: 6px !important;
     -moz-column-gap: 6px !important;
          column-gap: 6px !important;
  row-gap: 6px !important;
}

.u-gapCol6px {
  -webkit-column-gap: 6px !important;
     -moz-column-gap: 6px !important;
          column-gap: 6px !important;
}

.u-gapRow6px {
  row-gap: 6px !important;
}

.u-gap7px {
  -webkit-column-gap: 7px !important;
     -moz-column-gap: 7px !important;
          column-gap: 7px !important;
  row-gap: 7px !important;
}

.u-gapCol7px {
  -webkit-column-gap: 7px !important;
     -moz-column-gap: 7px !important;
          column-gap: 7px !important;
}

.u-gapRow7px {
  row-gap: 7px !important;
}

.u-gap8px {
  -webkit-column-gap: 8px !important;
     -moz-column-gap: 8px !important;
          column-gap: 8px !important;
  row-gap: 8px !important;
}

.u-gapCol8px {
  -webkit-column-gap: 8px !important;
     -moz-column-gap: 8px !important;
          column-gap: 8px !important;
}

.u-gapRow8px {
  row-gap: 8px !important;
}

.u-gap9px {
  -webkit-column-gap: 9px !important;
     -moz-column-gap: 9px !important;
          column-gap: 9px !important;
  row-gap: 9px !important;
}

.u-gapCol9px {
  -webkit-column-gap: 9px !important;
     -moz-column-gap: 9px !important;
          column-gap: 9px !important;
}

.u-gapRow9px {
  row-gap: 9px !important;
}

.u-gap10px {
  -webkit-column-gap: 10px !important;
     -moz-column-gap: 10px !important;
          column-gap: 10px !important;
  row-gap: 10px !important;
}

.u-gapCol10px {
  -webkit-column-gap: 10px !important;
     -moz-column-gap: 10px !important;
          column-gap: 10px !important;
}

.u-gapRow10px {
  row-gap: 10px !important;
}

.u-gap11px {
  -webkit-column-gap: 11px !important;
     -moz-column-gap: 11px !important;
          column-gap: 11px !important;
  row-gap: 11px !important;
}

.u-gapCol11px {
  -webkit-column-gap: 11px !important;
     -moz-column-gap: 11px !important;
          column-gap: 11px !important;
}

.u-gapRow11px {
  row-gap: 11px !important;
}

.u-gap12px {
  -webkit-column-gap: 12px !important;
     -moz-column-gap: 12px !important;
          column-gap: 12px !important;
  row-gap: 12px !important;
}

.u-gapCol12px {
  -webkit-column-gap: 12px !important;
     -moz-column-gap: 12px !important;
          column-gap: 12px !important;
}

.u-gapRow12px {
  row-gap: 12px !important;
}

.u-gap13px {
  -webkit-column-gap: 13px !important;
     -moz-column-gap: 13px !important;
          column-gap: 13px !important;
  row-gap: 13px !important;
}

.u-gapCol13px {
  -webkit-column-gap: 13px !important;
     -moz-column-gap: 13px !important;
          column-gap: 13px !important;
}

.u-gapRow13px {
  row-gap: 13px !important;
}

.u-gap14px {
  -webkit-column-gap: 14px !important;
     -moz-column-gap: 14px !important;
          column-gap: 14px !important;
  row-gap: 14px !important;
}

.u-gapCol14px {
  -webkit-column-gap: 14px !important;
     -moz-column-gap: 14px !important;
          column-gap: 14px !important;
}

.u-gapRow14px {
  row-gap: 14px !important;
}

.u-gap15px {
  -webkit-column-gap: 15px !important;
     -moz-column-gap: 15px !important;
          column-gap: 15px !important;
  row-gap: 15px !important;
}

.u-gapCol15px {
  -webkit-column-gap: 15px !important;
     -moz-column-gap: 15px !important;
          column-gap: 15px !important;
}

.u-gapRow15px {
  row-gap: 15px !important;
}

.u-gap16px {
  -webkit-column-gap: 16px !important;
     -moz-column-gap: 16px !important;
          column-gap: 16px !important;
  row-gap: 16px !important;
}

.u-gapCol16px {
  -webkit-column-gap: 16px !important;
     -moz-column-gap: 16px !important;
          column-gap: 16px !important;
}

.u-gapRow16px {
  row-gap: 16px !important;
}

.u-gap17px {
  -webkit-column-gap: 17px !important;
     -moz-column-gap: 17px !important;
          column-gap: 17px !important;
  row-gap: 17px !important;
}

.u-gapCol17px {
  -webkit-column-gap: 17px !important;
     -moz-column-gap: 17px !important;
          column-gap: 17px !important;
}

.u-gapRow17px {
  row-gap: 17px !important;
}

.u-gap18px {
  -webkit-column-gap: 18px !important;
     -moz-column-gap: 18px !important;
          column-gap: 18px !important;
  row-gap: 18px !important;
}

.u-gapCol18px {
  -webkit-column-gap: 18px !important;
     -moz-column-gap: 18px !important;
          column-gap: 18px !important;
}

.u-gapRow18px {
  row-gap: 18px !important;
}

.u-gap19px {
  -webkit-column-gap: 19px !important;
     -moz-column-gap: 19px !important;
          column-gap: 19px !important;
  row-gap: 19px !important;
}

.u-gapCol19px {
  -webkit-column-gap: 19px !important;
     -moz-column-gap: 19px !important;
          column-gap: 19px !important;
}

.u-gapRow19px {
  row-gap: 19px !important;
}

.u-gap20px {
  -webkit-column-gap: 20px !important;
     -moz-column-gap: 20px !important;
          column-gap: 20px !important;
  row-gap: 20px !important;
}

.u-gapCol20px {
  -webkit-column-gap: 20px !important;
     -moz-column-gap: 20px !important;
          column-gap: 20px !important;
}

.u-gapRow20px {
  row-gap: 20px !important;
}

.u-gap21px {
  -webkit-column-gap: 21px !important;
     -moz-column-gap: 21px !important;
          column-gap: 21px !important;
  row-gap: 21px !important;
}

.u-gapCol21px {
  -webkit-column-gap: 21px !important;
     -moz-column-gap: 21px !important;
          column-gap: 21px !important;
}

.u-gapRow21px {
  row-gap: 21px !important;
}

.u-gap22px {
  -webkit-column-gap: 22px !important;
     -moz-column-gap: 22px !important;
          column-gap: 22px !important;
  row-gap: 22px !important;
}

.u-gapCol22px {
  -webkit-column-gap: 22px !important;
     -moz-column-gap: 22px !important;
          column-gap: 22px !important;
}

.u-gapRow22px {
  row-gap: 22px !important;
}

.u-gap23px {
  -webkit-column-gap: 23px !important;
     -moz-column-gap: 23px !important;
          column-gap: 23px !important;
  row-gap: 23px !important;
}

.u-gapCol23px {
  -webkit-column-gap: 23px !important;
     -moz-column-gap: 23px !important;
          column-gap: 23px !important;
}

.u-gapRow23px {
  row-gap: 23px !important;
}

.u-gap24px {
  -webkit-column-gap: 24px !important;
     -moz-column-gap: 24px !important;
          column-gap: 24px !important;
  row-gap: 24px !important;
}

.u-gapCol24px {
  -webkit-column-gap: 24px !important;
     -moz-column-gap: 24px !important;
          column-gap: 24px !important;
}

.u-gapRow24px {
  row-gap: 24px !important;
}

.u-gap25px {
  -webkit-column-gap: 25px !important;
     -moz-column-gap: 25px !important;
          column-gap: 25px !important;
  row-gap: 25px !important;
}

.u-gapCol25px {
  -webkit-column-gap: 25px !important;
     -moz-column-gap: 25px !important;
          column-gap: 25px !important;
}

.u-gapRow25px {
  row-gap: 25px !important;
}

.u-gap26px {
  -webkit-column-gap: 26px !important;
     -moz-column-gap: 26px !important;
          column-gap: 26px !important;
  row-gap: 26px !important;
}

.u-gapCol26px {
  -webkit-column-gap: 26px !important;
     -moz-column-gap: 26px !important;
          column-gap: 26px !important;
}

.u-gapRow26px {
  row-gap: 26px !important;
}

.u-gap27px {
  -webkit-column-gap: 27px !important;
     -moz-column-gap: 27px !important;
          column-gap: 27px !important;
  row-gap: 27px !important;
}

.u-gapCol27px {
  -webkit-column-gap: 27px !important;
     -moz-column-gap: 27px !important;
          column-gap: 27px !important;
}

.u-gapRow27px {
  row-gap: 27px !important;
}

.u-gap28px {
  -webkit-column-gap: 28px !important;
     -moz-column-gap: 28px !important;
          column-gap: 28px !important;
  row-gap: 28px !important;
}

.u-gapCol28px {
  -webkit-column-gap: 28px !important;
     -moz-column-gap: 28px !important;
          column-gap: 28px !important;
}

.u-gapRow28px {
  row-gap: 28px !important;
}

.u-gap29px {
  -webkit-column-gap: 29px !important;
     -moz-column-gap: 29px !important;
          column-gap: 29px !important;
  row-gap: 29px !important;
}

.u-gapCol29px {
  -webkit-column-gap: 29px !important;
     -moz-column-gap: 29px !important;
          column-gap: 29px !important;
}

.u-gapRow29px {
  row-gap: 29px !important;
}

.u-gap30px {
  -webkit-column-gap: 30px !important;
     -moz-column-gap: 30px !important;
          column-gap: 30px !important;
  row-gap: 30px !important;
}

.u-gapCol30px {
  -webkit-column-gap: 30px !important;
     -moz-column-gap: 30px !important;
          column-gap: 30px !important;
}

.u-gapRow30px {
  row-gap: 30px !important;
}

.u-gap31px {
  -webkit-column-gap: 31px !important;
     -moz-column-gap: 31px !important;
          column-gap: 31px !important;
  row-gap: 31px !important;
}

.u-gapCol31px {
  -webkit-column-gap: 31px !important;
     -moz-column-gap: 31px !important;
          column-gap: 31px !important;
}

.u-gapRow31px {
  row-gap: 31px !important;
}

.u-gap32px {
  -webkit-column-gap: 32px !important;
     -moz-column-gap: 32px !important;
          column-gap: 32px !important;
  row-gap: 32px !important;
}

.u-gapCol32px {
  -webkit-column-gap: 32px !important;
     -moz-column-gap: 32px !important;
          column-gap: 32px !important;
}

.u-gapRow32px {
  row-gap: 32px !important;
}

.u-gap33px {
  -webkit-column-gap: 33px !important;
     -moz-column-gap: 33px !important;
          column-gap: 33px !important;
  row-gap: 33px !important;
}

.u-gapCol33px {
  -webkit-column-gap: 33px !important;
     -moz-column-gap: 33px !important;
          column-gap: 33px !important;
}

.u-gapRow33px {
  row-gap: 33px !important;
}

.u-gap34px {
  -webkit-column-gap: 34px !important;
     -moz-column-gap: 34px !important;
          column-gap: 34px !important;
  row-gap: 34px !important;
}

.u-gapCol34px {
  -webkit-column-gap: 34px !important;
     -moz-column-gap: 34px !important;
          column-gap: 34px !important;
}

.u-gapRow34px {
  row-gap: 34px !important;
}

.u-gap35px {
  -webkit-column-gap: 35px !important;
     -moz-column-gap: 35px !important;
          column-gap: 35px !important;
  row-gap: 35px !important;
}

.u-gapCol35px {
  -webkit-column-gap: 35px !important;
     -moz-column-gap: 35px !important;
          column-gap: 35px !important;
}

.u-gapRow35px {
  row-gap: 35px !important;
}

.u-gap36px {
  -webkit-column-gap: 36px !important;
     -moz-column-gap: 36px !important;
          column-gap: 36px !important;
  row-gap: 36px !important;
}

.u-gapCol36px {
  -webkit-column-gap: 36px !important;
     -moz-column-gap: 36px !important;
          column-gap: 36px !important;
}

.u-gapRow36px {
  row-gap: 36px !important;
}

.u-gap37px {
  -webkit-column-gap: 37px !important;
     -moz-column-gap: 37px !important;
          column-gap: 37px !important;
  row-gap: 37px !important;
}

.u-gapCol37px {
  -webkit-column-gap: 37px !important;
     -moz-column-gap: 37px !important;
          column-gap: 37px !important;
}

.u-gapRow37px {
  row-gap: 37px !important;
}

.u-gap38px {
  -webkit-column-gap: 38px !important;
     -moz-column-gap: 38px !important;
          column-gap: 38px !important;
  row-gap: 38px !important;
}

.u-gapCol38px {
  -webkit-column-gap: 38px !important;
     -moz-column-gap: 38px !important;
          column-gap: 38px !important;
}

.u-gapRow38px {
  row-gap: 38px !important;
}

.u-gap39px {
  -webkit-column-gap: 39px !important;
     -moz-column-gap: 39px !important;
          column-gap: 39px !important;
  row-gap: 39px !important;
}

.u-gapCol39px {
  -webkit-column-gap: 39px !important;
     -moz-column-gap: 39px !important;
          column-gap: 39px !important;
}

.u-gapRow39px {
  row-gap: 39px !important;
}

.u-gap40px {
  -webkit-column-gap: 40px !important;
     -moz-column-gap: 40px !important;
          column-gap: 40px !important;
  row-gap: 40px !important;
}

.u-gapCol40px {
  -webkit-column-gap: 40px !important;
     -moz-column-gap: 40px !important;
          column-gap: 40px !important;
}

.u-gapRow40px {
  row-gap: 40px !important;
}

.u-gap41px {
  -webkit-column-gap: 41px !important;
     -moz-column-gap: 41px !important;
          column-gap: 41px !important;
  row-gap: 41px !important;
}

.u-gapCol41px {
  -webkit-column-gap: 41px !important;
     -moz-column-gap: 41px !important;
          column-gap: 41px !important;
}

.u-gapRow41px {
  row-gap: 41px !important;
}

.u-gap42px {
  -webkit-column-gap: 42px !important;
     -moz-column-gap: 42px !important;
          column-gap: 42px !important;
  row-gap: 42px !important;
}

.u-gapCol42px {
  -webkit-column-gap: 42px !important;
     -moz-column-gap: 42px !important;
          column-gap: 42px !important;
}

.u-gapRow42px {
  row-gap: 42px !important;
}

.u-gap43px {
  -webkit-column-gap: 43px !important;
     -moz-column-gap: 43px !important;
          column-gap: 43px !important;
  row-gap: 43px !important;
}

.u-gapCol43px {
  -webkit-column-gap: 43px !important;
     -moz-column-gap: 43px !important;
          column-gap: 43px !important;
}

.u-gapRow43px {
  row-gap: 43px !important;
}

.u-gap44px {
  -webkit-column-gap: 44px !important;
     -moz-column-gap: 44px !important;
          column-gap: 44px !important;
  row-gap: 44px !important;
}

.u-gapCol44px {
  -webkit-column-gap: 44px !important;
     -moz-column-gap: 44px !important;
          column-gap: 44px !important;
}

.u-gapRow44px {
  row-gap: 44px !important;
}

.u-gap45px {
  -webkit-column-gap: 45px !important;
     -moz-column-gap: 45px !important;
          column-gap: 45px !important;
  row-gap: 45px !important;
}

.u-gapCol45px {
  -webkit-column-gap: 45px !important;
     -moz-column-gap: 45px !important;
          column-gap: 45px !important;
}

.u-gapRow45px {
  row-gap: 45px !important;
}

.u-gap46px {
  -webkit-column-gap: 46px !important;
     -moz-column-gap: 46px !important;
          column-gap: 46px !important;
  row-gap: 46px !important;
}

.u-gapCol46px {
  -webkit-column-gap: 46px !important;
     -moz-column-gap: 46px !important;
          column-gap: 46px !important;
}

.u-gapRow46px {
  row-gap: 46px !important;
}

.u-gap47px {
  -webkit-column-gap: 47px !important;
     -moz-column-gap: 47px !important;
          column-gap: 47px !important;
  row-gap: 47px !important;
}

.u-gapCol47px {
  -webkit-column-gap: 47px !important;
     -moz-column-gap: 47px !important;
          column-gap: 47px !important;
}

.u-gapRow47px {
  row-gap: 47px !important;
}

.u-gap48px {
  -webkit-column-gap: 48px !important;
     -moz-column-gap: 48px !important;
          column-gap: 48px !important;
  row-gap: 48px !important;
}

.u-gapCol48px {
  -webkit-column-gap: 48px !important;
     -moz-column-gap: 48px !important;
          column-gap: 48px !important;
}

.u-gapRow48px {
  row-gap: 48px !important;
}

.u-gap49px {
  -webkit-column-gap: 49px !important;
     -moz-column-gap: 49px !important;
          column-gap: 49px !important;
  row-gap: 49px !important;
}

.u-gapCol49px {
  -webkit-column-gap: 49px !important;
     -moz-column-gap: 49px !important;
          column-gap: 49px !important;
}

.u-gapRow49px {
  row-gap: 49px !important;
}

.u-gap50px {
  -webkit-column-gap: 50px !important;
     -moz-column-gap: 50px !important;
          column-gap: 50px !important;
  row-gap: 50px !important;
}

.u-gapCol50px {
  -webkit-column-gap: 50px !important;
     -moz-column-gap: 50px !important;
          column-gap: 50px !important;
}

.u-gapRow50px {
  row-gap: 50px !important;
}

.u-gap51px {
  -webkit-column-gap: 51px !important;
     -moz-column-gap: 51px !important;
          column-gap: 51px !important;
  row-gap: 51px !important;
}

.u-gapCol51px {
  -webkit-column-gap: 51px !important;
     -moz-column-gap: 51px !important;
          column-gap: 51px !important;
}

.u-gapRow51px {
  row-gap: 51px !important;
}

.u-gap52px {
  -webkit-column-gap: 52px !important;
     -moz-column-gap: 52px !important;
          column-gap: 52px !important;
  row-gap: 52px !important;
}

.u-gapCol52px {
  -webkit-column-gap: 52px !important;
     -moz-column-gap: 52px !important;
          column-gap: 52px !important;
}

.u-gapRow52px {
  row-gap: 52px !important;
}

.u-gap53px {
  -webkit-column-gap: 53px !important;
     -moz-column-gap: 53px !important;
          column-gap: 53px !important;
  row-gap: 53px !important;
}

.u-gapCol53px {
  -webkit-column-gap: 53px !important;
     -moz-column-gap: 53px !important;
          column-gap: 53px !important;
}

.u-gapRow53px {
  row-gap: 53px !important;
}

.u-gap54px {
  -webkit-column-gap: 54px !important;
     -moz-column-gap: 54px !important;
          column-gap: 54px !important;
  row-gap: 54px !important;
}

.u-gapCol54px {
  -webkit-column-gap: 54px !important;
     -moz-column-gap: 54px !important;
          column-gap: 54px !important;
}

.u-gapRow54px {
  row-gap: 54px !important;
}

.u-gap55px {
  -webkit-column-gap: 55px !important;
     -moz-column-gap: 55px !important;
          column-gap: 55px !important;
  row-gap: 55px !important;
}

.u-gapCol55px {
  -webkit-column-gap: 55px !important;
     -moz-column-gap: 55px !important;
          column-gap: 55px !important;
}

.u-gapRow55px {
  row-gap: 55px !important;
}

.u-gap56px {
  -webkit-column-gap: 56px !important;
     -moz-column-gap: 56px !important;
          column-gap: 56px !important;
  row-gap: 56px !important;
}

.u-gapCol56px {
  -webkit-column-gap: 56px !important;
     -moz-column-gap: 56px !important;
          column-gap: 56px !important;
}

.u-gapRow56px {
  row-gap: 56px !important;
}

.u-gap57px {
  -webkit-column-gap: 57px !important;
     -moz-column-gap: 57px !important;
          column-gap: 57px !important;
  row-gap: 57px !important;
}

.u-gapCol57px {
  -webkit-column-gap: 57px !important;
     -moz-column-gap: 57px !important;
          column-gap: 57px !important;
}

.u-gapRow57px {
  row-gap: 57px !important;
}

.u-gap58px {
  -webkit-column-gap: 58px !important;
     -moz-column-gap: 58px !important;
          column-gap: 58px !important;
  row-gap: 58px !important;
}

.u-gapCol58px {
  -webkit-column-gap: 58px !important;
     -moz-column-gap: 58px !important;
          column-gap: 58px !important;
}

.u-gapRow58px {
  row-gap: 58px !important;
}

.u-gap59px {
  -webkit-column-gap: 59px !important;
     -moz-column-gap: 59px !important;
          column-gap: 59px !important;
  row-gap: 59px !important;
}

.u-gapCol59px {
  -webkit-column-gap: 59px !important;
     -moz-column-gap: 59px !important;
          column-gap: 59px !important;
}

.u-gapRow59px {
  row-gap: 59px !important;
}

.u-gap60px {
  -webkit-column-gap: 60px !important;
     -moz-column-gap: 60px !important;
          column-gap: 60px !important;
  row-gap: 60px !important;
}

.u-gapCol60px {
  -webkit-column-gap: 60px !important;
     -moz-column-gap: 60px !important;
          column-gap: 60px !important;
}

.u-gapRow60px {
  row-gap: 60px !important;
}

.u-gap61px {
  -webkit-column-gap: 61px !important;
     -moz-column-gap: 61px !important;
          column-gap: 61px !important;
  row-gap: 61px !important;
}

.u-gapCol61px {
  -webkit-column-gap: 61px !important;
     -moz-column-gap: 61px !important;
          column-gap: 61px !important;
}

.u-gapRow61px {
  row-gap: 61px !important;
}

.u-gap62px {
  -webkit-column-gap: 62px !important;
     -moz-column-gap: 62px !important;
          column-gap: 62px !important;
  row-gap: 62px !important;
}

.u-gapCol62px {
  -webkit-column-gap: 62px !important;
     -moz-column-gap: 62px !important;
          column-gap: 62px !important;
}

.u-gapRow62px {
  row-gap: 62px !important;
}

.u-gap63px {
  -webkit-column-gap: 63px !important;
     -moz-column-gap: 63px !important;
          column-gap: 63px !important;
  row-gap: 63px !important;
}

.u-gapCol63px {
  -webkit-column-gap: 63px !important;
     -moz-column-gap: 63px !important;
          column-gap: 63px !important;
}

.u-gapRow63px {
  row-gap: 63px !important;
}

.u-gap64px {
  -webkit-column-gap: 64px !important;
     -moz-column-gap: 64px !important;
          column-gap: 64px !important;
  row-gap: 64px !important;
}

.u-gapCol64px {
  -webkit-column-gap: 64px !important;
     -moz-column-gap: 64px !important;
          column-gap: 64px !important;
}

.u-gapRow64px {
  row-gap: 64px !important;
}

.u-gap65px {
  -webkit-column-gap: 65px !important;
     -moz-column-gap: 65px !important;
          column-gap: 65px !important;
  row-gap: 65px !important;
}

.u-gapCol65px {
  -webkit-column-gap: 65px !important;
     -moz-column-gap: 65px !important;
          column-gap: 65px !important;
}

.u-gapRow65px {
  row-gap: 65px !important;
}

.u-gap66px {
  -webkit-column-gap: 66px !important;
     -moz-column-gap: 66px !important;
          column-gap: 66px !important;
  row-gap: 66px !important;
}

.u-gapCol66px {
  -webkit-column-gap: 66px !important;
     -moz-column-gap: 66px !important;
          column-gap: 66px !important;
}

.u-gapRow66px {
  row-gap: 66px !important;
}

.u-gap67px {
  -webkit-column-gap: 67px !important;
     -moz-column-gap: 67px !important;
          column-gap: 67px !important;
  row-gap: 67px !important;
}

.u-gapCol67px {
  -webkit-column-gap: 67px !important;
     -moz-column-gap: 67px !important;
          column-gap: 67px !important;
}

.u-gapRow67px {
  row-gap: 67px !important;
}

.u-gap68px {
  -webkit-column-gap: 68px !important;
     -moz-column-gap: 68px !important;
          column-gap: 68px !important;
  row-gap: 68px !important;
}

.u-gapCol68px {
  -webkit-column-gap: 68px !important;
     -moz-column-gap: 68px !important;
          column-gap: 68px !important;
}

.u-gapRow68px {
  row-gap: 68px !important;
}

.u-gap69px {
  -webkit-column-gap: 69px !important;
     -moz-column-gap: 69px !important;
          column-gap: 69px !important;
  row-gap: 69px !important;
}

.u-gapCol69px {
  -webkit-column-gap: 69px !important;
     -moz-column-gap: 69px !important;
          column-gap: 69px !important;
}

.u-gapRow69px {
  row-gap: 69px !important;
}

.u-gap70px {
  -webkit-column-gap: 70px !important;
     -moz-column-gap: 70px !important;
          column-gap: 70px !important;
  row-gap: 70px !important;
}

.u-gapCol70px {
  -webkit-column-gap: 70px !important;
     -moz-column-gap: 70px !important;
          column-gap: 70px !important;
}

.u-gapRow70px {
  row-gap: 70px !important;
}

.u-gap71px {
  -webkit-column-gap: 71px !important;
     -moz-column-gap: 71px !important;
          column-gap: 71px !important;
  row-gap: 71px !important;
}

.u-gapCol71px {
  -webkit-column-gap: 71px !important;
     -moz-column-gap: 71px !important;
          column-gap: 71px !important;
}

.u-gapRow71px {
  row-gap: 71px !important;
}

.u-gap72px {
  -webkit-column-gap: 72px !important;
     -moz-column-gap: 72px !important;
          column-gap: 72px !important;
  row-gap: 72px !important;
}

.u-gapCol72px {
  -webkit-column-gap: 72px !important;
     -moz-column-gap: 72px !important;
          column-gap: 72px !important;
}

.u-gapRow72px {
  row-gap: 72px !important;
}

.u-gap73px {
  -webkit-column-gap: 73px !important;
     -moz-column-gap: 73px !important;
          column-gap: 73px !important;
  row-gap: 73px !important;
}

.u-gapCol73px {
  -webkit-column-gap: 73px !important;
     -moz-column-gap: 73px !important;
          column-gap: 73px !important;
}

.u-gapRow73px {
  row-gap: 73px !important;
}

.u-gap74px {
  -webkit-column-gap: 74px !important;
     -moz-column-gap: 74px !important;
          column-gap: 74px !important;
  row-gap: 74px !important;
}

.u-gapCol74px {
  -webkit-column-gap: 74px !important;
     -moz-column-gap: 74px !important;
          column-gap: 74px !important;
}

.u-gapRow74px {
  row-gap: 74px !important;
}

.u-gap75px {
  -webkit-column-gap: 75px !important;
     -moz-column-gap: 75px !important;
          column-gap: 75px !important;
  row-gap: 75px !important;
}

.u-gapCol75px {
  -webkit-column-gap: 75px !important;
     -moz-column-gap: 75px !important;
          column-gap: 75px !important;
}

.u-gapRow75px {
  row-gap: 75px !important;
}

.u-gap76px {
  -webkit-column-gap: 76px !important;
     -moz-column-gap: 76px !important;
          column-gap: 76px !important;
  row-gap: 76px !important;
}

.u-gapCol76px {
  -webkit-column-gap: 76px !important;
     -moz-column-gap: 76px !important;
          column-gap: 76px !important;
}

.u-gapRow76px {
  row-gap: 76px !important;
}

.u-gap77px {
  -webkit-column-gap: 77px !important;
     -moz-column-gap: 77px !important;
          column-gap: 77px !important;
  row-gap: 77px !important;
}

.u-gapCol77px {
  -webkit-column-gap: 77px !important;
     -moz-column-gap: 77px !important;
          column-gap: 77px !important;
}

.u-gapRow77px {
  row-gap: 77px !important;
}

.u-gap78px {
  -webkit-column-gap: 78px !important;
     -moz-column-gap: 78px !important;
          column-gap: 78px !important;
  row-gap: 78px !important;
}

.u-gapCol78px {
  -webkit-column-gap: 78px !important;
     -moz-column-gap: 78px !important;
          column-gap: 78px !important;
}

.u-gapRow78px {
  row-gap: 78px !important;
}

.u-gap79px {
  -webkit-column-gap: 79px !important;
     -moz-column-gap: 79px !important;
          column-gap: 79px !important;
  row-gap: 79px !important;
}

.u-gapCol79px {
  -webkit-column-gap: 79px !important;
     -moz-column-gap: 79px !important;
          column-gap: 79px !important;
}

.u-gapRow79px {
  row-gap: 79px !important;
}

.u-gap80px {
  -webkit-column-gap: 80px !important;
     -moz-column-gap: 80px !important;
          column-gap: 80px !important;
  row-gap: 80px !important;
}

.u-gapCol80px {
  -webkit-column-gap: 80px !important;
     -moz-column-gap: 80px !important;
          column-gap: 80px !important;
}

.u-gapRow80px {
  row-gap: 80px !important;
}

.u-gap81px {
  -webkit-column-gap: 81px !important;
     -moz-column-gap: 81px !important;
          column-gap: 81px !important;
  row-gap: 81px !important;
}

.u-gapCol81px {
  -webkit-column-gap: 81px !important;
     -moz-column-gap: 81px !important;
          column-gap: 81px !important;
}

.u-gapRow81px {
  row-gap: 81px !important;
}

.u-gap82px {
  -webkit-column-gap: 82px !important;
     -moz-column-gap: 82px !important;
          column-gap: 82px !important;
  row-gap: 82px !important;
}

.u-gapCol82px {
  -webkit-column-gap: 82px !important;
     -moz-column-gap: 82px !important;
          column-gap: 82px !important;
}

.u-gapRow82px {
  row-gap: 82px !important;
}

.u-gap83px {
  -webkit-column-gap: 83px !important;
     -moz-column-gap: 83px !important;
          column-gap: 83px !important;
  row-gap: 83px !important;
}

.u-gapCol83px {
  -webkit-column-gap: 83px !important;
     -moz-column-gap: 83px !important;
          column-gap: 83px !important;
}

.u-gapRow83px {
  row-gap: 83px !important;
}

.u-gap84px {
  -webkit-column-gap: 84px !important;
     -moz-column-gap: 84px !important;
          column-gap: 84px !important;
  row-gap: 84px !important;
}

.u-gapCol84px {
  -webkit-column-gap: 84px !important;
     -moz-column-gap: 84px !important;
          column-gap: 84px !important;
}

.u-gapRow84px {
  row-gap: 84px !important;
}

.u-gap85px {
  -webkit-column-gap: 85px !important;
     -moz-column-gap: 85px !important;
          column-gap: 85px !important;
  row-gap: 85px !important;
}

.u-gapCol85px {
  -webkit-column-gap: 85px !important;
     -moz-column-gap: 85px !important;
          column-gap: 85px !important;
}

.u-gapRow85px {
  row-gap: 85px !important;
}

.u-gap86px {
  -webkit-column-gap: 86px !important;
     -moz-column-gap: 86px !important;
          column-gap: 86px !important;
  row-gap: 86px !important;
}

.u-gapCol86px {
  -webkit-column-gap: 86px !important;
     -moz-column-gap: 86px !important;
          column-gap: 86px !important;
}

.u-gapRow86px {
  row-gap: 86px !important;
}

.u-gap87px {
  -webkit-column-gap: 87px !important;
     -moz-column-gap: 87px !important;
          column-gap: 87px !important;
  row-gap: 87px !important;
}

.u-gapCol87px {
  -webkit-column-gap: 87px !important;
     -moz-column-gap: 87px !important;
          column-gap: 87px !important;
}

.u-gapRow87px {
  row-gap: 87px !important;
}

.u-gap88px {
  -webkit-column-gap: 88px !important;
     -moz-column-gap: 88px !important;
          column-gap: 88px !important;
  row-gap: 88px !important;
}

.u-gapCol88px {
  -webkit-column-gap: 88px !important;
     -moz-column-gap: 88px !important;
          column-gap: 88px !important;
}

.u-gapRow88px {
  row-gap: 88px !important;
}

.u-gap89px {
  -webkit-column-gap: 89px !important;
     -moz-column-gap: 89px !important;
          column-gap: 89px !important;
  row-gap: 89px !important;
}

.u-gapCol89px {
  -webkit-column-gap: 89px !important;
     -moz-column-gap: 89px !important;
          column-gap: 89px !important;
}

.u-gapRow89px {
  row-gap: 89px !important;
}

.u-gap90px {
  -webkit-column-gap: 90px !important;
     -moz-column-gap: 90px !important;
          column-gap: 90px !important;
  row-gap: 90px !important;
}

.u-gapCol90px {
  -webkit-column-gap: 90px !important;
     -moz-column-gap: 90px !important;
          column-gap: 90px !important;
}

.u-gapRow90px {
  row-gap: 90px !important;
}

.u-gap91px {
  -webkit-column-gap: 91px !important;
     -moz-column-gap: 91px !important;
          column-gap: 91px !important;
  row-gap: 91px !important;
}

.u-gapCol91px {
  -webkit-column-gap: 91px !important;
     -moz-column-gap: 91px !important;
          column-gap: 91px !important;
}

.u-gapRow91px {
  row-gap: 91px !important;
}

.u-gap92px {
  -webkit-column-gap: 92px !important;
     -moz-column-gap: 92px !important;
          column-gap: 92px !important;
  row-gap: 92px !important;
}

.u-gapCol92px {
  -webkit-column-gap: 92px !important;
     -moz-column-gap: 92px !important;
          column-gap: 92px !important;
}

.u-gapRow92px {
  row-gap: 92px !important;
}

.u-gap93px {
  -webkit-column-gap: 93px !important;
     -moz-column-gap: 93px !important;
          column-gap: 93px !important;
  row-gap: 93px !important;
}

.u-gapCol93px {
  -webkit-column-gap: 93px !important;
     -moz-column-gap: 93px !important;
          column-gap: 93px !important;
}

.u-gapRow93px {
  row-gap: 93px !important;
}

.u-gap94px {
  -webkit-column-gap: 94px !important;
     -moz-column-gap: 94px !important;
          column-gap: 94px !important;
  row-gap: 94px !important;
}

.u-gapCol94px {
  -webkit-column-gap: 94px !important;
     -moz-column-gap: 94px !important;
          column-gap: 94px !important;
}

.u-gapRow94px {
  row-gap: 94px !important;
}

.u-gap95px {
  -webkit-column-gap: 95px !important;
     -moz-column-gap: 95px !important;
          column-gap: 95px !important;
  row-gap: 95px !important;
}

.u-gapCol95px {
  -webkit-column-gap: 95px !important;
     -moz-column-gap: 95px !important;
          column-gap: 95px !important;
}

.u-gapRow95px {
  row-gap: 95px !important;
}

.u-gap96px {
  -webkit-column-gap: 96px !important;
     -moz-column-gap: 96px !important;
          column-gap: 96px !important;
  row-gap: 96px !important;
}

.u-gapCol96px {
  -webkit-column-gap: 96px !important;
     -moz-column-gap: 96px !important;
          column-gap: 96px !important;
}

.u-gapRow96px {
  row-gap: 96px !important;
}

.u-gap97px {
  -webkit-column-gap: 97px !important;
     -moz-column-gap: 97px !important;
          column-gap: 97px !important;
  row-gap: 97px !important;
}

.u-gapCol97px {
  -webkit-column-gap: 97px !important;
     -moz-column-gap: 97px !important;
          column-gap: 97px !important;
}

.u-gapRow97px {
  row-gap: 97px !important;
}

.u-gap98px {
  -webkit-column-gap: 98px !important;
     -moz-column-gap: 98px !important;
          column-gap: 98px !important;
  row-gap: 98px !important;
}

.u-gapCol98px {
  -webkit-column-gap: 98px !important;
     -moz-column-gap: 98px !important;
          column-gap: 98px !important;
}

.u-gapRow98px {
  row-gap: 98px !important;
}

.u-gap99px {
  -webkit-column-gap: 99px !important;
     -moz-column-gap: 99px !important;
          column-gap: 99px !important;
  row-gap: 99px !important;
}

.u-gapCol99px {
  -webkit-column-gap: 99px !important;
     -moz-column-gap: 99px !important;
          column-gap: 99px !important;
}

.u-gapRow99px {
  row-gap: 99px !important;
}

.u-gap100px {
  -webkit-column-gap: 100px !important;
     -moz-column-gap: 100px !important;
          column-gap: 100px !important;
  row-gap: 100px !important;
}

.u-gapCol100px {
  -webkit-column-gap: 100px !important;
     -moz-column-gap: 100px !important;
          column-gap: 100px !important;
}

.u-gapRow100px {
  row-gap: 100px !important;
}

@media screen and (max-width: 375px) {
  .u-gap0px--sp {
    -webkit-column-gap: 0px !important;
       -moz-column-gap: 0px !important;
            column-gap: 0px !important;
    row-gap: 0px !important;
  }
  .u-gapCol0px--sp {
    -webkit-column-gap: 0px !important;
       -moz-column-gap: 0px !important;
            column-gap: 0px !important;
  }
  .u-gapRow0px--sp {
    row-gap: 0px !important;
  }
  .u-gap1px--sp {
    -webkit-column-gap: 1px !important;
       -moz-column-gap: 1px !important;
            column-gap: 1px !important;
    row-gap: 1px !important;
  }
  .u-gapCol1px--sp {
    -webkit-column-gap: 1px !important;
       -moz-column-gap: 1px !important;
            column-gap: 1px !important;
  }
  .u-gapRow1px--sp {
    row-gap: 1px !important;
  }
  .u-gap2px--sp {
    -webkit-column-gap: 2px !important;
       -moz-column-gap: 2px !important;
            column-gap: 2px !important;
    row-gap: 2px !important;
  }
  .u-gapCol2px--sp {
    -webkit-column-gap: 2px !important;
       -moz-column-gap: 2px !important;
            column-gap: 2px !important;
  }
  .u-gapRow2px--sp {
    row-gap: 2px !important;
  }
  .u-gap3px--sp {
    -webkit-column-gap: 3px !important;
       -moz-column-gap: 3px !important;
            column-gap: 3px !important;
    row-gap: 3px !important;
  }
  .u-gapCol3px--sp {
    -webkit-column-gap: 3px !important;
       -moz-column-gap: 3px !important;
            column-gap: 3px !important;
  }
  .u-gapRow3px--sp {
    row-gap: 3px !important;
  }
  .u-gap4px--sp {
    -webkit-column-gap: 4px !important;
       -moz-column-gap: 4px !important;
            column-gap: 4px !important;
    row-gap: 4px !important;
  }
  .u-gapCol4px--sp {
    -webkit-column-gap: 4px !important;
       -moz-column-gap: 4px !important;
            column-gap: 4px !important;
  }
  .u-gapRow4px--sp {
    row-gap: 4px !important;
  }
  .u-gap5px--sp {
    -webkit-column-gap: 5px !important;
       -moz-column-gap: 5px !important;
            column-gap: 5px !important;
    row-gap: 5px !important;
  }
  .u-gapCol5px--sp {
    -webkit-column-gap: 5px !important;
       -moz-column-gap: 5px !important;
            column-gap: 5px !important;
  }
  .u-gapRow5px--sp {
    row-gap: 5px !important;
  }
  .u-gap6px--sp {
    -webkit-column-gap: 6px !important;
       -moz-column-gap: 6px !important;
            column-gap: 6px !important;
    row-gap: 6px !important;
  }
  .u-gapCol6px--sp {
    -webkit-column-gap: 6px !important;
       -moz-column-gap: 6px !important;
            column-gap: 6px !important;
  }
  .u-gapRow6px--sp {
    row-gap: 6px !important;
  }
  .u-gap7px--sp {
    -webkit-column-gap: 7px !important;
       -moz-column-gap: 7px !important;
            column-gap: 7px !important;
    row-gap: 7px !important;
  }
  .u-gapCol7px--sp {
    -webkit-column-gap: 7px !important;
       -moz-column-gap: 7px !important;
            column-gap: 7px !important;
  }
  .u-gapRow7px--sp {
    row-gap: 7px !important;
  }
  .u-gap8px--sp {
    -webkit-column-gap: 8px !important;
       -moz-column-gap: 8px !important;
            column-gap: 8px !important;
    row-gap: 8px !important;
  }
  .u-gapCol8px--sp {
    -webkit-column-gap: 8px !important;
       -moz-column-gap: 8px !important;
            column-gap: 8px !important;
  }
  .u-gapRow8px--sp {
    row-gap: 8px !important;
  }
  .u-gap9px--sp {
    -webkit-column-gap: 9px !important;
       -moz-column-gap: 9px !important;
            column-gap: 9px !important;
    row-gap: 9px !important;
  }
  .u-gapCol9px--sp {
    -webkit-column-gap: 9px !important;
       -moz-column-gap: 9px !important;
            column-gap: 9px !important;
  }
  .u-gapRow9px--sp {
    row-gap: 9px !important;
  }
  .u-gap10px--sp {
    -webkit-column-gap: 10px !important;
       -moz-column-gap: 10px !important;
            column-gap: 10px !important;
    row-gap: 10px !important;
  }
  .u-gapCol10px--sp {
    -webkit-column-gap: 10px !important;
       -moz-column-gap: 10px !important;
            column-gap: 10px !important;
  }
  .u-gapRow10px--sp {
    row-gap: 10px !important;
  }
  .u-gap11px--sp {
    -webkit-column-gap: 11px !important;
       -moz-column-gap: 11px !important;
            column-gap: 11px !important;
    row-gap: 11px !important;
  }
  .u-gapCol11px--sp {
    -webkit-column-gap: 11px !important;
       -moz-column-gap: 11px !important;
            column-gap: 11px !important;
  }
  .u-gapRow11px--sp {
    row-gap: 11px !important;
  }
  .u-gap12px--sp {
    -webkit-column-gap: 12px !important;
       -moz-column-gap: 12px !important;
            column-gap: 12px !important;
    row-gap: 12px !important;
  }
  .u-gapCol12px--sp {
    -webkit-column-gap: 12px !important;
       -moz-column-gap: 12px !important;
            column-gap: 12px !important;
  }
  .u-gapRow12px--sp {
    row-gap: 12px !important;
  }
  .u-gap13px--sp {
    -webkit-column-gap: 13px !important;
       -moz-column-gap: 13px !important;
            column-gap: 13px !important;
    row-gap: 13px !important;
  }
  .u-gapCol13px--sp {
    -webkit-column-gap: 13px !important;
       -moz-column-gap: 13px !important;
            column-gap: 13px !important;
  }
  .u-gapRow13px--sp {
    row-gap: 13px !important;
  }
  .u-gap14px--sp {
    -webkit-column-gap: 14px !important;
       -moz-column-gap: 14px !important;
            column-gap: 14px !important;
    row-gap: 14px !important;
  }
  .u-gapCol14px--sp {
    -webkit-column-gap: 14px !important;
       -moz-column-gap: 14px !important;
            column-gap: 14px !important;
  }
  .u-gapRow14px--sp {
    row-gap: 14px !important;
  }
  .u-gap15px--sp {
    -webkit-column-gap: 15px !important;
       -moz-column-gap: 15px !important;
            column-gap: 15px !important;
    row-gap: 15px !important;
  }
  .u-gapCol15px--sp {
    -webkit-column-gap: 15px !important;
       -moz-column-gap: 15px !important;
            column-gap: 15px !important;
  }
  .u-gapRow15px--sp {
    row-gap: 15px !important;
  }
  .u-gap16px--sp {
    -webkit-column-gap: 16px !important;
       -moz-column-gap: 16px !important;
            column-gap: 16px !important;
    row-gap: 16px !important;
  }
  .u-gapCol16px--sp {
    -webkit-column-gap: 16px !important;
       -moz-column-gap: 16px !important;
            column-gap: 16px !important;
  }
  .u-gapRow16px--sp {
    row-gap: 16px !important;
  }
  .u-gap17px--sp {
    -webkit-column-gap: 17px !important;
       -moz-column-gap: 17px !important;
            column-gap: 17px !important;
    row-gap: 17px !important;
  }
  .u-gapCol17px--sp {
    -webkit-column-gap: 17px !important;
       -moz-column-gap: 17px !important;
            column-gap: 17px !important;
  }
  .u-gapRow17px--sp {
    row-gap: 17px !important;
  }
  .u-gap18px--sp {
    -webkit-column-gap: 18px !important;
       -moz-column-gap: 18px !important;
            column-gap: 18px !important;
    row-gap: 18px !important;
  }
  .u-gapCol18px--sp {
    -webkit-column-gap: 18px !important;
       -moz-column-gap: 18px !important;
            column-gap: 18px !important;
  }
  .u-gapRow18px--sp {
    row-gap: 18px !important;
  }
  .u-gap19px--sp {
    -webkit-column-gap: 19px !important;
       -moz-column-gap: 19px !important;
            column-gap: 19px !important;
    row-gap: 19px !important;
  }
  .u-gapCol19px--sp {
    -webkit-column-gap: 19px !important;
       -moz-column-gap: 19px !important;
            column-gap: 19px !important;
  }
  .u-gapRow19px--sp {
    row-gap: 19px !important;
  }
  .u-gap20px--sp {
    -webkit-column-gap: 20px !important;
       -moz-column-gap: 20px !important;
            column-gap: 20px !important;
    row-gap: 20px !important;
  }
  .u-gapCol20px--sp {
    -webkit-column-gap: 20px !important;
       -moz-column-gap: 20px !important;
            column-gap: 20px !important;
  }
  .u-gapRow20px--sp {
    row-gap: 20px !important;
  }
  .u-gap21px--sp {
    -webkit-column-gap: 21px !important;
       -moz-column-gap: 21px !important;
            column-gap: 21px !important;
    row-gap: 21px !important;
  }
  .u-gapCol21px--sp {
    -webkit-column-gap: 21px !important;
       -moz-column-gap: 21px !important;
            column-gap: 21px !important;
  }
  .u-gapRow21px--sp {
    row-gap: 21px !important;
  }
  .u-gap22px--sp {
    -webkit-column-gap: 22px !important;
       -moz-column-gap: 22px !important;
            column-gap: 22px !important;
    row-gap: 22px !important;
  }
  .u-gapCol22px--sp {
    -webkit-column-gap: 22px !important;
       -moz-column-gap: 22px !important;
            column-gap: 22px !important;
  }
  .u-gapRow22px--sp {
    row-gap: 22px !important;
  }
  .u-gap23px--sp {
    -webkit-column-gap: 23px !important;
       -moz-column-gap: 23px !important;
            column-gap: 23px !important;
    row-gap: 23px !important;
  }
  .u-gapCol23px--sp {
    -webkit-column-gap: 23px !important;
       -moz-column-gap: 23px !important;
            column-gap: 23px !important;
  }
  .u-gapRow23px--sp {
    row-gap: 23px !important;
  }
  .u-gap24px--sp {
    -webkit-column-gap: 24px !important;
       -moz-column-gap: 24px !important;
            column-gap: 24px !important;
    row-gap: 24px !important;
  }
  .u-gapCol24px--sp {
    -webkit-column-gap: 24px !important;
       -moz-column-gap: 24px !important;
            column-gap: 24px !important;
  }
  .u-gapRow24px--sp {
    row-gap: 24px !important;
  }
  .u-gap25px--sp {
    -webkit-column-gap: 25px !important;
       -moz-column-gap: 25px !important;
            column-gap: 25px !important;
    row-gap: 25px !important;
  }
  .u-gapCol25px--sp {
    -webkit-column-gap: 25px !important;
       -moz-column-gap: 25px !important;
            column-gap: 25px !important;
  }
  .u-gapRow25px--sp {
    row-gap: 25px !important;
  }
  .u-gap26px--sp {
    -webkit-column-gap: 26px !important;
       -moz-column-gap: 26px !important;
            column-gap: 26px !important;
    row-gap: 26px !important;
  }
  .u-gapCol26px--sp {
    -webkit-column-gap: 26px !important;
       -moz-column-gap: 26px !important;
            column-gap: 26px !important;
  }
  .u-gapRow26px--sp {
    row-gap: 26px !important;
  }
  .u-gap27px--sp {
    -webkit-column-gap: 27px !important;
       -moz-column-gap: 27px !important;
            column-gap: 27px !important;
    row-gap: 27px !important;
  }
  .u-gapCol27px--sp {
    -webkit-column-gap: 27px !important;
       -moz-column-gap: 27px !important;
            column-gap: 27px !important;
  }
  .u-gapRow27px--sp {
    row-gap: 27px !important;
  }
  .u-gap28px--sp {
    -webkit-column-gap: 28px !important;
       -moz-column-gap: 28px !important;
            column-gap: 28px !important;
    row-gap: 28px !important;
  }
  .u-gapCol28px--sp {
    -webkit-column-gap: 28px !important;
       -moz-column-gap: 28px !important;
            column-gap: 28px !important;
  }
  .u-gapRow28px--sp {
    row-gap: 28px !important;
  }
  .u-gap29px--sp {
    -webkit-column-gap: 29px !important;
       -moz-column-gap: 29px !important;
            column-gap: 29px !important;
    row-gap: 29px !important;
  }
  .u-gapCol29px--sp {
    -webkit-column-gap: 29px !important;
       -moz-column-gap: 29px !important;
            column-gap: 29px !important;
  }
  .u-gapRow29px--sp {
    row-gap: 29px !important;
  }
  .u-gap30px--sp {
    -webkit-column-gap: 30px !important;
       -moz-column-gap: 30px !important;
            column-gap: 30px !important;
    row-gap: 30px !important;
  }
  .u-gapCol30px--sp {
    -webkit-column-gap: 30px !important;
       -moz-column-gap: 30px !important;
            column-gap: 30px !important;
  }
  .u-gapRow30px--sp {
    row-gap: 30px !important;
  }
  .u-gap31px--sp {
    -webkit-column-gap: 31px !important;
       -moz-column-gap: 31px !important;
            column-gap: 31px !important;
    row-gap: 31px !important;
  }
  .u-gapCol31px--sp {
    -webkit-column-gap: 31px !important;
       -moz-column-gap: 31px !important;
            column-gap: 31px !important;
  }
  .u-gapRow31px--sp {
    row-gap: 31px !important;
  }
  .u-gap32px--sp {
    -webkit-column-gap: 32px !important;
       -moz-column-gap: 32px !important;
            column-gap: 32px !important;
    row-gap: 32px !important;
  }
  .u-gapCol32px--sp {
    -webkit-column-gap: 32px !important;
       -moz-column-gap: 32px !important;
            column-gap: 32px !important;
  }
  .u-gapRow32px--sp {
    row-gap: 32px !important;
  }
  .u-gap33px--sp {
    -webkit-column-gap: 33px !important;
       -moz-column-gap: 33px !important;
            column-gap: 33px !important;
    row-gap: 33px !important;
  }
  .u-gapCol33px--sp {
    -webkit-column-gap: 33px !important;
       -moz-column-gap: 33px !important;
            column-gap: 33px !important;
  }
  .u-gapRow33px--sp {
    row-gap: 33px !important;
  }
  .u-gap34px--sp {
    -webkit-column-gap: 34px !important;
       -moz-column-gap: 34px !important;
            column-gap: 34px !important;
    row-gap: 34px !important;
  }
  .u-gapCol34px--sp {
    -webkit-column-gap: 34px !important;
       -moz-column-gap: 34px !important;
            column-gap: 34px !important;
  }
  .u-gapRow34px--sp {
    row-gap: 34px !important;
  }
  .u-gap35px--sp {
    -webkit-column-gap: 35px !important;
       -moz-column-gap: 35px !important;
            column-gap: 35px !important;
    row-gap: 35px !important;
  }
  .u-gapCol35px--sp {
    -webkit-column-gap: 35px !important;
       -moz-column-gap: 35px !important;
            column-gap: 35px !important;
  }
  .u-gapRow35px--sp {
    row-gap: 35px !important;
  }
  .u-gap36px--sp {
    -webkit-column-gap: 36px !important;
       -moz-column-gap: 36px !important;
            column-gap: 36px !important;
    row-gap: 36px !important;
  }
  .u-gapCol36px--sp {
    -webkit-column-gap: 36px !important;
       -moz-column-gap: 36px !important;
            column-gap: 36px !important;
  }
  .u-gapRow36px--sp {
    row-gap: 36px !important;
  }
  .u-gap37px--sp {
    -webkit-column-gap: 37px !important;
       -moz-column-gap: 37px !important;
            column-gap: 37px !important;
    row-gap: 37px !important;
  }
  .u-gapCol37px--sp {
    -webkit-column-gap: 37px !important;
       -moz-column-gap: 37px !important;
            column-gap: 37px !important;
  }
  .u-gapRow37px--sp {
    row-gap: 37px !important;
  }
  .u-gap38px--sp {
    -webkit-column-gap: 38px !important;
       -moz-column-gap: 38px !important;
            column-gap: 38px !important;
    row-gap: 38px !important;
  }
  .u-gapCol38px--sp {
    -webkit-column-gap: 38px !important;
       -moz-column-gap: 38px !important;
            column-gap: 38px !important;
  }
  .u-gapRow38px--sp {
    row-gap: 38px !important;
  }
  .u-gap39px--sp {
    -webkit-column-gap: 39px !important;
       -moz-column-gap: 39px !important;
            column-gap: 39px !important;
    row-gap: 39px !important;
  }
  .u-gapCol39px--sp {
    -webkit-column-gap: 39px !important;
       -moz-column-gap: 39px !important;
            column-gap: 39px !important;
  }
  .u-gapRow39px--sp {
    row-gap: 39px !important;
  }
  .u-gap40px--sp {
    -webkit-column-gap: 40px !important;
       -moz-column-gap: 40px !important;
            column-gap: 40px !important;
    row-gap: 40px !important;
  }
  .u-gapCol40px--sp {
    -webkit-column-gap: 40px !important;
       -moz-column-gap: 40px !important;
            column-gap: 40px !important;
  }
  .u-gapRow40px--sp {
    row-gap: 40px !important;
  }
  .u-gap41px--sp {
    -webkit-column-gap: 41px !important;
       -moz-column-gap: 41px !important;
            column-gap: 41px !important;
    row-gap: 41px !important;
  }
  .u-gapCol41px--sp {
    -webkit-column-gap: 41px !important;
       -moz-column-gap: 41px !important;
            column-gap: 41px !important;
  }
  .u-gapRow41px--sp {
    row-gap: 41px !important;
  }
  .u-gap42px--sp {
    -webkit-column-gap: 42px !important;
       -moz-column-gap: 42px !important;
            column-gap: 42px !important;
    row-gap: 42px !important;
  }
  .u-gapCol42px--sp {
    -webkit-column-gap: 42px !important;
       -moz-column-gap: 42px !important;
            column-gap: 42px !important;
  }
  .u-gapRow42px--sp {
    row-gap: 42px !important;
  }
  .u-gap43px--sp {
    -webkit-column-gap: 43px !important;
       -moz-column-gap: 43px !important;
            column-gap: 43px !important;
    row-gap: 43px !important;
  }
  .u-gapCol43px--sp {
    -webkit-column-gap: 43px !important;
       -moz-column-gap: 43px !important;
            column-gap: 43px !important;
  }
  .u-gapRow43px--sp {
    row-gap: 43px !important;
  }
  .u-gap44px--sp {
    -webkit-column-gap: 44px !important;
       -moz-column-gap: 44px !important;
            column-gap: 44px !important;
    row-gap: 44px !important;
  }
  .u-gapCol44px--sp {
    -webkit-column-gap: 44px !important;
       -moz-column-gap: 44px !important;
            column-gap: 44px !important;
  }
  .u-gapRow44px--sp {
    row-gap: 44px !important;
  }
  .u-gap45px--sp {
    -webkit-column-gap: 45px !important;
       -moz-column-gap: 45px !important;
            column-gap: 45px !important;
    row-gap: 45px !important;
  }
  .u-gapCol45px--sp {
    -webkit-column-gap: 45px !important;
       -moz-column-gap: 45px !important;
            column-gap: 45px !important;
  }
  .u-gapRow45px--sp {
    row-gap: 45px !important;
  }
  .u-gap46px--sp {
    -webkit-column-gap: 46px !important;
       -moz-column-gap: 46px !important;
            column-gap: 46px !important;
    row-gap: 46px !important;
  }
  .u-gapCol46px--sp {
    -webkit-column-gap: 46px !important;
       -moz-column-gap: 46px !important;
            column-gap: 46px !important;
  }
  .u-gapRow46px--sp {
    row-gap: 46px !important;
  }
  .u-gap47px--sp {
    -webkit-column-gap: 47px !important;
       -moz-column-gap: 47px !important;
            column-gap: 47px !important;
    row-gap: 47px !important;
  }
  .u-gapCol47px--sp {
    -webkit-column-gap: 47px !important;
       -moz-column-gap: 47px !important;
            column-gap: 47px !important;
  }
  .u-gapRow47px--sp {
    row-gap: 47px !important;
  }
  .u-gap48px--sp {
    -webkit-column-gap: 48px !important;
       -moz-column-gap: 48px !important;
            column-gap: 48px !important;
    row-gap: 48px !important;
  }
  .u-gapCol48px--sp {
    -webkit-column-gap: 48px !important;
       -moz-column-gap: 48px !important;
            column-gap: 48px !important;
  }
  .u-gapRow48px--sp {
    row-gap: 48px !important;
  }
  .u-gap49px--sp {
    -webkit-column-gap: 49px !important;
       -moz-column-gap: 49px !important;
            column-gap: 49px !important;
    row-gap: 49px !important;
  }
  .u-gapCol49px--sp {
    -webkit-column-gap: 49px !important;
       -moz-column-gap: 49px !important;
            column-gap: 49px !important;
  }
  .u-gapRow49px--sp {
    row-gap: 49px !important;
  }
  .u-gap50px--sp {
    -webkit-column-gap: 50px !important;
       -moz-column-gap: 50px !important;
            column-gap: 50px !important;
    row-gap: 50px !important;
  }
  .u-gapCol50px--sp {
    -webkit-column-gap: 50px !important;
       -moz-column-gap: 50px !important;
            column-gap: 50px !important;
  }
  .u-gapRow50px--sp {
    row-gap: 50px !important;
  }
  .u-gap51px--sp {
    -webkit-column-gap: 51px !important;
       -moz-column-gap: 51px !important;
            column-gap: 51px !important;
    row-gap: 51px !important;
  }
  .u-gapCol51px--sp {
    -webkit-column-gap: 51px !important;
       -moz-column-gap: 51px !important;
            column-gap: 51px !important;
  }
  .u-gapRow51px--sp {
    row-gap: 51px !important;
  }
  .u-gap52px--sp {
    -webkit-column-gap: 52px !important;
       -moz-column-gap: 52px !important;
            column-gap: 52px !important;
    row-gap: 52px !important;
  }
  .u-gapCol52px--sp {
    -webkit-column-gap: 52px !important;
       -moz-column-gap: 52px !important;
            column-gap: 52px !important;
  }
  .u-gapRow52px--sp {
    row-gap: 52px !important;
  }
  .u-gap53px--sp {
    -webkit-column-gap: 53px !important;
       -moz-column-gap: 53px !important;
            column-gap: 53px !important;
    row-gap: 53px !important;
  }
  .u-gapCol53px--sp {
    -webkit-column-gap: 53px !important;
       -moz-column-gap: 53px !important;
            column-gap: 53px !important;
  }
  .u-gapRow53px--sp {
    row-gap: 53px !important;
  }
  .u-gap54px--sp {
    -webkit-column-gap: 54px !important;
       -moz-column-gap: 54px !important;
            column-gap: 54px !important;
    row-gap: 54px !important;
  }
  .u-gapCol54px--sp {
    -webkit-column-gap: 54px !important;
       -moz-column-gap: 54px !important;
            column-gap: 54px !important;
  }
  .u-gapRow54px--sp {
    row-gap: 54px !important;
  }
  .u-gap55px--sp {
    -webkit-column-gap: 55px !important;
       -moz-column-gap: 55px !important;
            column-gap: 55px !important;
    row-gap: 55px !important;
  }
  .u-gapCol55px--sp {
    -webkit-column-gap: 55px !important;
       -moz-column-gap: 55px !important;
            column-gap: 55px !important;
  }
  .u-gapRow55px--sp {
    row-gap: 55px !important;
  }
  .u-gap56px--sp {
    -webkit-column-gap: 56px !important;
       -moz-column-gap: 56px !important;
            column-gap: 56px !important;
    row-gap: 56px !important;
  }
  .u-gapCol56px--sp {
    -webkit-column-gap: 56px !important;
       -moz-column-gap: 56px !important;
            column-gap: 56px !important;
  }
  .u-gapRow56px--sp {
    row-gap: 56px !important;
  }
  .u-gap57px--sp {
    -webkit-column-gap: 57px !important;
       -moz-column-gap: 57px !important;
            column-gap: 57px !important;
    row-gap: 57px !important;
  }
  .u-gapCol57px--sp {
    -webkit-column-gap: 57px !important;
       -moz-column-gap: 57px !important;
            column-gap: 57px !important;
  }
  .u-gapRow57px--sp {
    row-gap: 57px !important;
  }
  .u-gap58px--sp {
    -webkit-column-gap: 58px !important;
       -moz-column-gap: 58px !important;
            column-gap: 58px !important;
    row-gap: 58px !important;
  }
  .u-gapCol58px--sp {
    -webkit-column-gap: 58px !important;
       -moz-column-gap: 58px !important;
            column-gap: 58px !important;
  }
  .u-gapRow58px--sp {
    row-gap: 58px !important;
  }
  .u-gap59px--sp {
    -webkit-column-gap: 59px !important;
       -moz-column-gap: 59px !important;
            column-gap: 59px !important;
    row-gap: 59px !important;
  }
  .u-gapCol59px--sp {
    -webkit-column-gap: 59px !important;
       -moz-column-gap: 59px !important;
            column-gap: 59px !important;
  }
  .u-gapRow59px--sp {
    row-gap: 59px !important;
  }
  .u-gap60px--sp {
    -webkit-column-gap: 60px !important;
       -moz-column-gap: 60px !important;
            column-gap: 60px !important;
    row-gap: 60px !important;
  }
  .u-gapCol60px--sp {
    -webkit-column-gap: 60px !important;
       -moz-column-gap: 60px !important;
            column-gap: 60px !important;
  }
  .u-gapRow60px--sp {
    row-gap: 60px !important;
  }
  .u-gap61px--sp {
    -webkit-column-gap: 61px !important;
       -moz-column-gap: 61px !important;
            column-gap: 61px !important;
    row-gap: 61px !important;
  }
  .u-gapCol61px--sp {
    -webkit-column-gap: 61px !important;
       -moz-column-gap: 61px !important;
            column-gap: 61px !important;
  }
  .u-gapRow61px--sp {
    row-gap: 61px !important;
  }
  .u-gap62px--sp {
    -webkit-column-gap: 62px !important;
       -moz-column-gap: 62px !important;
            column-gap: 62px !important;
    row-gap: 62px !important;
  }
  .u-gapCol62px--sp {
    -webkit-column-gap: 62px !important;
       -moz-column-gap: 62px !important;
            column-gap: 62px !important;
  }
  .u-gapRow62px--sp {
    row-gap: 62px !important;
  }
  .u-gap63px--sp {
    -webkit-column-gap: 63px !important;
       -moz-column-gap: 63px !important;
            column-gap: 63px !important;
    row-gap: 63px !important;
  }
  .u-gapCol63px--sp {
    -webkit-column-gap: 63px !important;
       -moz-column-gap: 63px !important;
            column-gap: 63px !important;
  }
  .u-gapRow63px--sp {
    row-gap: 63px !important;
  }
  .u-gap64px--sp {
    -webkit-column-gap: 64px !important;
       -moz-column-gap: 64px !important;
            column-gap: 64px !important;
    row-gap: 64px !important;
  }
  .u-gapCol64px--sp {
    -webkit-column-gap: 64px !important;
       -moz-column-gap: 64px !important;
            column-gap: 64px !important;
  }
  .u-gapRow64px--sp {
    row-gap: 64px !important;
  }
  .u-gap65px--sp {
    -webkit-column-gap: 65px !important;
       -moz-column-gap: 65px !important;
            column-gap: 65px !important;
    row-gap: 65px !important;
  }
  .u-gapCol65px--sp {
    -webkit-column-gap: 65px !important;
       -moz-column-gap: 65px !important;
            column-gap: 65px !important;
  }
  .u-gapRow65px--sp {
    row-gap: 65px !important;
  }
  .u-gap66px--sp {
    -webkit-column-gap: 66px !important;
       -moz-column-gap: 66px !important;
            column-gap: 66px !important;
    row-gap: 66px !important;
  }
  .u-gapCol66px--sp {
    -webkit-column-gap: 66px !important;
       -moz-column-gap: 66px !important;
            column-gap: 66px !important;
  }
  .u-gapRow66px--sp {
    row-gap: 66px !important;
  }
  .u-gap67px--sp {
    -webkit-column-gap: 67px !important;
       -moz-column-gap: 67px !important;
            column-gap: 67px !important;
    row-gap: 67px !important;
  }
  .u-gapCol67px--sp {
    -webkit-column-gap: 67px !important;
       -moz-column-gap: 67px !important;
            column-gap: 67px !important;
  }
  .u-gapRow67px--sp {
    row-gap: 67px !important;
  }
  .u-gap68px--sp {
    -webkit-column-gap: 68px !important;
       -moz-column-gap: 68px !important;
            column-gap: 68px !important;
    row-gap: 68px !important;
  }
  .u-gapCol68px--sp {
    -webkit-column-gap: 68px !important;
       -moz-column-gap: 68px !important;
            column-gap: 68px !important;
  }
  .u-gapRow68px--sp {
    row-gap: 68px !important;
  }
  .u-gap69px--sp {
    -webkit-column-gap: 69px !important;
       -moz-column-gap: 69px !important;
            column-gap: 69px !important;
    row-gap: 69px !important;
  }
  .u-gapCol69px--sp {
    -webkit-column-gap: 69px !important;
       -moz-column-gap: 69px !important;
            column-gap: 69px !important;
  }
  .u-gapRow69px--sp {
    row-gap: 69px !important;
  }
  .u-gap70px--sp {
    -webkit-column-gap: 70px !important;
       -moz-column-gap: 70px !important;
            column-gap: 70px !important;
    row-gap: 70px !important;
  }
  .u-gapCol70px--sp {
    -webkit-column-gap: 70px !important;
       -moz-column-gap: 70px !important;
            column-gap: 70px !important;
  }
  .u-gapRow70px--sp {
    row-gap: 70px !important;
  }
  .u-gap71px--sp {
    -webkit-column-gap: 71px !important;
       -moz-column-gap: 71px !important;
            column-gap: 71px !important;
    row-gap: 71px !important;
  }
  .u-gapCol71px--sp {
    -webkit-column-gap: 71px !important;
       -moz-column-gap: 71px !important;
            column-gap: 71px !important;
  }
  .u-gapRow71px--sp {
    row-gap: 71px !important;
  }
  .u-gap72px--sp {
    -webkit-column-gap: 72px !important;
       -moz-column-gap: 72px !important;
            column-gap: 72px !important;
    row-gap: 72px !important;
  }
  .u-gapCol72px--sp {
    -webkit-column-gap: 72px !important;
       -moz-column-gap: 72px !important;
            column-gap: 72px !important;
  }
  .u-gapRow72px--sp {
    row-gap: 72px !important;
  }
  .u-gap73px--sp {
    -webkit-column-gap: 73px !important;
       -moz-column-gap: 73px !important;
            column-gap: 73px !important;
    row-gap: 73px !important;
  }
  .u-gapCol73px--sp {
    -webkit-column-gap: 73px !important;
       -moz-column-gap: 73px !important;
            column-gap: 73px !important;
  }
  .u-gapRow73px--sp {
    row-gap: 73px !important;
  }
  .u-gap74px--sp {
    -webkit-column-gap: 74px !important;
       -moz-column-gap: 74px !important;
            column-gap: 74px !important;
    row-gap: 74px !important;
  }
  .u-gapCol74px--sp {
    -webkit-column-gap: 74px !important;
       -moz-column-gap: 74px !important;
            column-gap: 74px !important;
  }
  .u-gapRow74px--sp {
    row-gap: 74px !important;
  }
  .u-gap75px--sp {
    -webkit-column-gap: 75px !important;
       -moz-column-gap: 75px !important;
            column-gap: 75px !important;
    row-gap: 75px !important;
  }
  .u-gapCol75px--sp {
    -webkit-column-gap: 75px !important;
       -moz-column-gap: 75px !important;
            column-gap: 75px !important;
  }
  .u-gapRow75px--sp {
    row-gap: 75px !important;
  }
  .u-gap76px--sp {
    -webkit-column-gap: 76px !important;
       -moz-column-gap: 76px !important;
            column-gap: 76px !important;
    row-gap: 76px !important;
  }
  .u-gapCol76px--sp {
    -webkit-column-gap: 76px !important;
       -moz-column-gap: 76px !important;
            column-gap: 76px !important;
  }
  .u-gapRow76px--sp {
    row-gap: 76px !important;
  }
  .u-gap77px--sp {
    -webkit-column-gap: 77px !important;
       -moz-column-gap: 77px !important;
            column-gap: 77px !important;
    row-gap: 77px !important;
  }
  .u-gapCol77px--sp {
    -webkit-column-gap: 77px !important;
       -moz-column-gap: 77px !important;
            column-gap: 77px !important;
  }
  .u-gapRow77px--sp {
    row-gap: 77px !important;
  }
  .u-gap78px--sp {
    -webkit-column-gap: 78px !important;
       -moz-column-gap: 78px !important;
            column-gap: 78px !important;
    row-gap: 78px !important;
  }
  .u-gapCol78px--sp {
    -webkit-column-gap: 78px !important;
       -moz-column-gap: 78px !important;
            column-gap: 78px !important;
  }
  .u-gapRow78px--sp {
    row-gap: 78px !important;
  }
  .u-gap79px--sp {
    -webkit-column-gap: 79px !important;
       -moz-column-gap: 79px !important;
            column-gap: 79px !important;
    row-gap: 79px !important;
  }
  .u-gapCol79px--sp {
    -webkit-column-gap: 79px !important;
       -moz-column-gap: 79px !important;
            column-gap: 79px !important;
  }
  .u-gapRow79px--sp {
    row-gap: 79px !important;
  }
  .u-gap80px--sp {
    -webkit-column-gap: 80px !important;
       -moz-column-gap: 80px !important;
            column-gap: 80px !important;
    row-gap: 80px !important;
  }
  .u-gapCol80px--sp {
    -webkit-column-gap: 80px !important;
       -moz-column-gap: 80px !important;
            column-gap: 80px !important;
  }
  .u-gapRow80px--sp {
    row-gap: 80px !important;
  }
  .u-gap81px--sp {
    -webkit-column-gap: 81px !important;
       -moz-column-gap: 81px !important;
            column-gap: 81px !important;
    row-gap: 81px !important;
  }
  .u-gapCol81px--sp {
    -webkit-column-gap: 81px !important;
       -moz-column-gap: 81px !important;
            column-gap: 81px !important;
  }
  .u-gapRow81px--sp {
    row-gap: 81px !important;
  }
  .u-gap82px--sp {
    -webkit-column-gap: 82px !important;
       -moz-column-gap: 82px !important;
            column-gap: 82px !important;
    row-gap: 82px !important;
  }
  .u-gapCol82px--sp {
    -webkit-column-gap: 82px !important;
       -moz-column-gap: 82px !important;
            column-gap: 82px !important;
  }
  .u-gapRow82px--sp {
    row-gap: 82px !important;
  }
  .u-gap83px--sp {
    -webkit-column-gap: 83px !important;
       -moz-column-gap: 83px !important;
            column-gap: 83px !important;
    row-gap: 83px !important;
  }
  .u-gapCol83px--sp {
    -webkit-column-gap: 83px !important;
       -moz-column-gap: 83px !important;
            column-gap: 83px !important;
  }
  .u-gapRow83px--sp {
    row-gap: 83px !important;
  }
  .u-gap84px--sp {
    -webkit-column-gap: 84px !important;
       -moz-column-gap: 84px !important;
            column-gap: 84px !important;
    row-gap: 84px !important;
  }
  .u-gapCol84px--sp {
    -webkit-column-gap: 84px !important;
       -moz-column-gap: 84px !important;
            column-gap: 84px !important;
  }
  .u-gapRow84px--sp {
    row-gap: 84px !important;
  }
  .u-gap85px--sp {
    -webkit-column-gap: 85px !important;
       -moz-column-gap: 85px !important;
            column-gap: 85px !important;
    row-gap: 85px !important;
  }
  .u-gapCol85px--sp {
    -webkit-column-gap: 85px !important;
       -moz-column-gap: 85px !important;
            column-gap: 85px !important;
  }
  .u-gapRow85px--sp {
    row-gap: 85px !important;
  }
  .u-gap86px--sp {
    -webkit-column-gap: 86px !important;
       -moz-column-gap: 86px !important;
            column-gap: 86px !important;
    row-gap: 86px !important;
  }
  .u-gapCol86px--sp {
    -webkit-column-gap: 86px !important;
       -moz-column-gap: 86px !important;
            column-gap: 86px !important;
  }
  .u-gapRow86px--sp {
    row-gap: 86px !important;
  }
  .u-gap87px--sp {
    -webkit-column-gap: 87px !important;
       -moz-column-gap: 87px !important;
            column-gap: 87px !important;
    row-gap: 87px !important;
  }
  .u-gapCol87px--sp {
    -webkit-column-gap: 87px !important;
       -moz-column-gap: 87px !important;
            column-gap: 87px !important;
  }
  .u-gapRow87px--sp {
    row-gap: 87px !important;
  }
  .u-gap88px--sp {
    -webkit-column-gap: 88px !important;
       -moz-column-gap: 88px !important;
            column-gap: 88px !important;
    row-gap: 88px !important;
  }
  .u-gapCol88px--sp {
    -webkit-column-gap: 88px !important;
       -moz-column-gap: 88px !important;
            column-gap: 88px !important;
  }
  .u-gapRow88px--sp {
    row-gap: 88px !important;
  }
  .u-gap89px--sp {
    -webkit-column-gap: 89px !important;
       -moz-column-gap: 89px !important;
            column-gap: 89px !important;
    row-gap: 89px !important;
  }
  .u-gapCol89px--sp {
    -webkit-column-gap: 89px !important;
       -moz-column-gap: 89px !important;
            column-gap: 89px !important;
  }
  .u-gapRow89px--sp {
    row-gap: 89px !important;
  }
  .u-gap90px--sp {
    -webkit-column-gap: 90px !important;
       -moz-column-gap: 90px !important;
            column-gap: 90px !important;
    row-gap: 90px !important;
  }
  .u-gapCol90px--sp {
    -webkit-column-gap: 90px !important;
       -moz-column-gap: 90px !important;
            column-gap: 90px !important;
  }
  .u-gapRow90px--sp {
    row-gap: 90px !important;
  }
  .u-gap91px--sp {
    -webkit-column-gap: 91px !important;
       -moz-column-gap: 91px !important;
            column-gap: 91px !important;
    row-gap: 91px !important;
  }
  .u-gapCol91px--sp {
    -webkit-column-gap: 91px !important;
       -moz-column-gap: 91px !important;
            column-gap: 91px !important;
  }
  .u-gapRow91px--sp {
    row-gap: 91px !important;
  }
  .u-gap92px--sp {
    -webkit-column-gap: 92px !important;
       -moz-column-gap: 92px !important;
            column-gap: 92px !important;
    row-gap: 92px !important;
  }
  .u-gapCol92px--sp {
    -webkit-column-gap: 92px !important;
       -moz-column-gap: 92px !important;
            column-gap: 92px !important;
  }
  .u-gapRow92px--sp {
    row-gap: 92px !important;
  }
  .u-gap93px--sp {
    -webkit-column-gap: 93px !important;
       -moz-column-gap: 93px !important;
            column-gap: 93px !important;
    row-gap: 93px !important;
  }
  .u-gapCol93px--sp {
    -webkit-column-gap: 93px !important;
       -moz-column-gap: 93px !important;
            column-gap: 93px !important;
  }
  .u-gapRow93px--sp {
    row-gap: 93px !important;
  }
  .u-gap94px--sp {
    -webkit-column-gap: 94px !important;
       -moz-column-gap: 94px !important;
            column-gap: 94px !important;
    row-gap: 94px !important;
  }
  .u-gapCol94px--sp {
    -webkit-column-gap: 94px !important;
       -moz-column-gap: 94px !important;
            column-gap: 94px !important;
  }
  .u-gapRow94px--sp {
    row-gap: 94px !important;
  }
  .u-gap95px--sp {
    -webkit-column-gap: 95px !important;
       -moz-column-gap: 95px !important;
            column-gap: 95px !important;
    row-gap: 95px !important;
  }
  .u-gapCol95px--sp {
    -webkit-column-gap: 95px !important;
       -moz-column-gap: 95px !important;
            column-gap: 95px !important;
  }
  .u-gapRow95px--sp {
    row-gap: 95px !important;
  }
  .u-gap96px--sp {
    -webkit-column-gap: 96px !important;
       -moz-column-gap: 96px !important;
            column-gap: 96px !important;
    row-gap: 96px !important;
  }
  .u-gapCol96px--sp {
    -webkit-column-gap: 96px !important;
       -moz-column-gap: 96px !important;
            column-gap: 96px !important;
  }
  .u-gapRow96px--sp {
    row-gap: 96px !important;
  }
  .u-gap97px--sp {
    -webkit-column-gap: 97px !important;
       -moz-column-gap: 97px !important;
            column-gap: 97px !important;
    row-gap: 97px !important;
  }
  .u-gapCol97px--sp {
    -webkit-column-gap: 97px !important;
       -moz-column-gap: 97px !important;
            column-gap: 97px !important;
  }
  .u-gapRow97px--sp {
    row-gap: 97px !important;
  }
  .u-gap98px--sp {
    -webkit-column-gap: 98px !important;
       -moz-column-gap: 98px !important;
            column-gap: 98px !important;
    row-gap: 98px !important;
  }
  .u-gapCol98px--sp {
    -webkit-column-gap: 98px !important;
       -moz-column-gap: 98px !important;
            column-gap: 98px !important;
  }
  .u-gapRow98px--sp {
    row-gap: 98px !important;
  }
  .u-gap99px--sp {
    -webkit-column-gap: 99px !important;
       -moz-column-gap: 99px !important;
            column-gap: 99px !important;
    row-gap: 99px !important;
  }
  .u-gapCol99px--sp {
    -webkit-column-gap: 99px !important;
       -moz-column-gap: 99px !important;
            column-gap: 99px !important;
  }
  .u-gapRow99px--sp {
    row-gap: 99px !important;
  }
  .u-gap100px--sp {
    -webkit-column-gap: 100px !important;
       -moz-column-gap: 100px !important;
            column-gap: 100px !important;
    row-gap: 100px !important;
  }
  .u-gapCol100px--sp {
    -webkit-column-gap: 100px !important;
       -moz-column-gap: 100px !important;
            column-gap: 100px !important;
  }
  .u-gapRow100px--sp {
    row-gap: 100px !important;
  }
}
.u-gap0px {
  -webkit-column-gap: 0em !important;
     -moz-column-gap: 0em !important;
          column-gap: 0em !important;
  row-gap: 0em !important;
}

.u-gapCol0px {
  -webkit-column-gap: 0em !important;
     -moz-column-gap: 0em !important;
          column-gap: 0em !important;
}

.u-gapRow0px {
  row-gap: 0em !important;
}

.u-gap1px {
  -webkit-column-gap: 1em !important;
     -moz-column-gap: 1em !important;
          column-gap: 1em !important;
  row-gap: 1em !important;
}

.u-gapCol1px {
  -webkit-column-gap: 1em !important;
     -moz-column-gap: 1em !important;
          column-gap: 1em !important;
}

.u-gapRow1px {
  row-gap: 1em !important;
}

.u-gap2px {
  -webkit-column-gap: 2em !important;
     -moz-column-gap: 2em !important;
          column-gap: 2em !important;
  row-gap: 2em !important;
}

.u-gapCol2px {
  -webkit-column-gap: 2em !important;
     -moz-column-gap: 2em !important;
          column-gap: 2em !important;
}

.u-gapRow2px {
  row-gap: 2em !important;
}

.u-gap3px {
  -webkit-column-gap: 3em !important;
     -moz-column-gap: 3em !important;
          column-gap: 3em !important;
  row-gap: 3em !important;
}

.u-gapCol3px {
  -webkit-column-gap: 3em !important;
     -moz-column-gap: 3em !important;
          column-gap: 3em !important;
}

.u-gapRow3px {
  row-gap: 3em !important;
}

.u-gap4px {
  -webkit-column-gap: 4em !important;
     -moz-column-gap: 4em !important;
          column-gap: 4em !important;
  row-gap: 4em !important;
}

.u-gapCol4px {
  -webkit-column-gap: 4em !important;
     -moz-column-gap: 4em !important;
          column-gap: 4em !important;
}

.u-gapRow4px {
  row-gap: 4em !important;
}

.u-gap5px {
  -webkit-column-gap: 5em !important;
     -moz-column-gap: 5em !important;
          column-gap: 5em !important;
  row-gap: 5em !important;
}

.u-gapCol5px {
  -webkit-column-gap: 5em !important;
     -moz-column-gap: 5em !important;
          column-gap: 5em !important;
}

.u-gapRow5px {
  row-gap: 5em !important;
}

.u-gap6px {
  -webkit-column-gap: 6em !important;
     -moz-column-gap: 6em !important;
          column-gap: 6em !important;
  row-gap: 6em !important;
}

.u-gapCol6px {
  -webkit-column-gap: 6em !important;
     -moz-column-gap: 6em !important;
          column-gap: 6em !important;
}

.u-gapRow6px {
  row-gap: 6em !important;
}

.u-gap7px {
  -webkit-column-gap: 7em !important;
     -moz-column-gap: 7em !important;
          column-gap: 7em !important;
  row-gap: 7em !important;
}

.u-gapCol7px {
  -webkit-column-gap: 7em !important;
     -moz-column-gap: 7em !important;
          column-gap: 7em !important;
}

.u-gapRow7px {
  row-gap: 7em !important;
}

.u-gap8px {
  -webkit-column-gap: 8em !important;
     -moz-column-gap: 8em !important;
          column-gap: 8em !important;
  row-gap: 8em !important;
}

.u-gapCol8px {
  -webkit-column-gap: 8em !important;
     -moz-column-gap: 8em !important;
          column-gap: 8em !important;
}

.u-gapRow8px {
  row-gap: 8em !important;
}

.u-gap9px {
  -webkit-column-gap: 9em !important;
     -moz-column-gap: 9em !important;
          column-gap: 9em !important;
  row-gap: 9em !important;
}

.u-gapCol9px {
  -webkit-column-gap: 9em !important;
     -moz-column-gap: 9em !important;
          column-gap: 9em !important;
}

.u-gapRow9px {
  row-gap: 9em !important;
}

.u-gap10px {
  -webkit-column-gap: 10em !important;
     -moz-column-gap: 10em !important;
          column-gap: 10em !important;
  row-gap: 10em !important;
}

.u-gapCol10px {
  -webkit-column-gap: 10em !important;
     -moz-column-gap: 10em !important;
          column-gap: 10em !important;
}

.u-gapRow10px {
  row-gap: 10em !important;
}

@media screen and (max-width: 375px) {
  .u-gap0px--sp {
    -webkit-column-gap: 0em !important;
       -moz-column-gap: 0em !important;
            column-gap: 0em !important;
    row-gap: 0em !important;
  }
  .u-gapCol0px--sp {
    -webkit-column-gap: 0em !important;
       -moz-column-gap: 0em !important;
            column-gap: 0em !important;
  }
  .u-gapRow0px--sp {
    row-gap: 0em !important;
  }
  .u-gap1px--sp {
    -webkit-column-gap: 1em !important;
       -moz-column-gap: 1em !important;
            column-gap: 1em !important;
    row-gap: 1em !important;
  }
  .u-gapCol1px--sp {
    -webkit-column-gap: 1em !important;
       -moz-column-gap: 1em !important;
            column-gap: 1em !important;
  }
  .u-gapRow1px--sp {
    row-gap: 1em !important;
  }
  .u-gap2px--sp {
    -webkit-column-gap: 2em !important;
       -moz-column-gap: 2em !important;
            column-gap: 2em !important;
    row-gap: 2em !important;
  }
  .u-gapCol2px--sp {
    -webkit-column-gap: 2em !important;
       -moz-column-gap: 2em !important;
            column-gap: 2em !important;
  }
  .u-gapRow2px--sp {
    row-gap: 2em !important;
  }
  .u-gap3px--sp {
    -webkit-column-gap: 3em !important;
       -moz-column-gap: 3em !important;
            column-gap: 3em !important;
    row-gap: 3em !important;
  }
  .u-gapCol3px--sp {
    -webkit-column-gap: 3em !important;
       -moz-column-gap: 3em !important;
            column-gap: 3em !important;
  }
  .u-gapRow3px--sp {
    row-gap: 3em !important;
  }
  .u-gap4px--sp {
    -webkit-column-gap: 4em !important;
       -moz-column-gap: 4em !important;
            column-gap: 4em !important;
    row-gap: 4em !important;
  }
  .u-gapCol4px--sp {
    -webkit-column-gap: 4em !important;
       -moz-column-gap: 4em !important;
            column-gap: 4em !important;
  }
  .u-gapRow4px--sp {
    row-gap: 4em !important;
  }
  .u-gap5px--sp {
    -webkit-column-gap: 5em !important;
       -moz-column-gap: 5em !important;
            column-gap: 5em !important;
    row-gap: 5em !important;
  }
  .u-gapCol5px--sp {
    -webkit-column-gap: 5em !important;
       -moz-column-gap: 5em !important;
            column-gap: 5em !important;
  }
  .u-gapRow5px--sp {
    row-gap: 5em !important;
  }
  .u-gap6px--sp {
    -webkit-column-gap: 6em !important;
       -moz-column-gap: 6em !important;
            column-gap: 6em !important;
    row-gap: 6em !important;
  }
  .u-gapCol6px--sp {
    -webkit-column-gap: 6em !important;
       -moz-column-gap: 6em !important;
            column-gap: 6em !important;
  }
  .u-gapRow6px--sp {
    row-gap: 6em !important;
  }
  .u-gap7px--sp {
    -webkit-column-gap: 7em !important;
       -moz-column-gap: 7em !important;
            column-gap: 7em !important;
    row-gap: 7em !important;
  }
  .u-gapCol7px--sp {
    -webkit-column-gap: 7em !important;
       -moz-column-gap: 7em !important;
            column-gap: 7em !important;
  }
  .u-gapRow7px--sp {
    row-gap: 7em !important;
  }
  .u-gap8px--sp {
    -webkit-column-gap: 8em !important;
       -moz-column-gap: 8em !important;
            column-gap: 8em !important;
    row-gap: 8em !important;
  }
  .u-gapCol8px--sp {
    -webkit-column-gap: 8em !important;
       -moz-column-gap: 8em !important;
            column-gap: 8em !important;
  }
  .u-gapRow8px--sp {
    row-gap: 8em !important;
  }
  .u-gap9px--sp {
    -webkit-column-gap: 9em !important;
       -moz-column-gap: 9em !important;
            column-gap: 9em !important;
    row-gap: 9em !important;
  }
  .u-gapCol9px--sp {
    -webkit-column-gap: 9em !important;
       -moz-column-gap: 9em !important;
            column-gap: 9em !important;
  }
  .u-gapRow9px--sp {
    row-gap: 9em !important;
  }
  .u-gap10px--sp {
    -webkit-column-gap: 10em !important;
       -moz-column-gap: 10em !important;
            column-gap: 10em !important;
    row-gap: 10em !important;
  }
  .u-gapCol10px--sp {
    -webkit-column-gap: 10em !important;
       -moz-column-gap: 10em !important;
            column-gap: 10em !important;
  }
  .u-gapRow10px--sp {
    row-gap: 10em !important;
  }
}
/*****************************************************
  object/_utility.scss
*****************************************************/
.u-scroll::-webkit-scrollbar {
  overflow: hidden;
  width: 0.5em;
}
.u-scroll::-webkit-scrollbar:horizontal {
  height: 0.5em;
}
.u-scroll::-webkit-scrollbar-button {
  display: none;
}
.u-scroll::-webkit-scrollbar-thumb {
  border-radius: 0.25em;
  background-color: #c1c1c1;
}
.u-scroll::-webkit-scrollbar-corner {
  display: none;
}

@media screen and (max-width: 375px) {
  .u-scroll--sp::-webkit-scrollbar {
    overflow: hidden;
    width: 0.5em;
  }
  .u-scroll--sp::-webkit-scrollbar:horizontal {
    height: 0.5em;
  }
  .u-scroll--sp::-webkit-scrollbar-button {
    display: none;
  }
  .u-scroll--sp::-webkit-scrollbar-thumb {
    border-radius: 0.25em;
    background-color: #c1c1c1;
  }
  .u-scroll--sp::-webkit-scrollbar-corner {
    display: none;
  }
}
/* -----------------------------------------------
  font weight
----------------------------------------------- */
.u-fwBold,
.u-fontWeightBold {
  font-weight: bold !important;
}

.u-fwNormal,
.u-fontWeightNormal {
  font-weight: normal !important;
}

@media screen and (max-width: 375px) {
  .u-fwBold--sp,
  .u-fontWeightBold--sp {
    font-weight: bold !important;
  }
  .u-fwNormal--sp,
  .u-fontWeightNormal--sp {
    font-weight: normal !important;
  }
}
/* -----------------------------------------------
  font-size
----------------------------------------------- */
.u-fs0_6rem {
  font-size: 0.6rem !important;
}

.u-fs0_7rem {
  font-size: 0.7rem !important;
}

.u-fs0_8rem {
  font-size: 0.8rem !important;
}

.u-fs0_9rem {
  font-size: 0.9rem !important;
}

.u-fs1_0rem {
  font-size: 1rem !important;
}

.u-fs1rem {
  font-size: 1rem !important;
}

.u-fs1_1rem {
  font-size: 1.1rem !important;
}

.u-fs1_2rem {
  font-size: 1.2rem !important;
}

.u-fs1_3rem {
  font-size: 1.3rem !important;
}

.u-fs1_4rem {
  font-size: 1.4rem !important;
}

.u-fs1_5rem {
  font-size: 1.5rem !important;
}

.u-fs1_6rem {
  font-size: 1.6rem !important;
}

.u-fs1_7rem {
  font-size: 1.7rem !important;
}

.u-fs1_8rem {
  font-size: 1.8rem !important;
}

.u-fs1_9rem {
  font-size: 1.9rem !important;
}

.u-fs2_0rem {
  font-size: 2rem !important;
}

.u-fs2rem {
  font-size: 2rem !important;
}

.u-fs2_1rem {
  font-size: 2.1rem !important;
}

.u-fs2_2rem {
  font-size: 2.2rem !important;
}

.u-fs2_3rem {
  font-size: 2.3rem !important;
}

.u-fs2_4rem {
  font-size: 2.4rem !important;
}

.u-fs2_5rem {
  font-size: 2.5rem !important;
}

.u-fs2_6rem {
  font-size: 2.6rem !important;
}

.u-fs2_7rem {
  font-size: 2.7rem !important;
}

.u-fs2_8rem {
  font-size: 2.8rem !important;
}

.u-fs2_9rem {
  font-size: 2.9rem !important;
}

.u-fs3_0rem {
  font-size: 3rem !important;
}

.u-fs3rem {
  font-size: 3rem !important;
}

.u-fs3_1rem {
  font-size: 3.1rem !important;
}

.u-fs3_2rem {
  font-size: 3.2rem !important;
}

.u-fs3_3rem {
  font-size: 3.3rem !important;
}

.u-fs3_4rem {
  font-size: 3.4rem !important;
}

.u-fs3_5rem {
  font-size: 3.5rem !important;
}

.u-fs3_6rem {
  font-size: 3.6rem !important;
}

.u-fs3_7rem {
  font-size: 3.7rem !important;
}

.u-fs3_8rem {
  font-size: 3.8rem !important;
}

.u-fs3_9rem {
  font-size: 3.9rem !important;
}

.u-fs4_0rem {
  font-size: 4rem !important;
}

.u-fs4rem {
  font-size: 4rem !important;
}

.u-fs4_1rem {
  font-size: 4.1rem !important;
}

.u-fs4_2rem {
  font-size: 4.2rem !important;
}

.u-fs4_3rem {
  font-size: 4.3rem !important;
}

.u-fs4_4rem {
  font-size: 4.4rem !important;
}

.u-fs4_5rem {
  font-size: 4.5rem !important;
}

.u-fs4_6rem {
  font-size: 4.6rem !important;
}

.u-fs4_7rem {
  font-size: 4.7rem !important;
}

.u-fs4_8rem {
  font-size: 4.8rem !important;
}

.u-fs4_9rem {
  font-size: 4.9rem !important;
}

.u-fs5_0rem {
  font-size: 5rem !important;
}

.u-fs5rem {
  font-size: 5rem !important;
}

.u-fs0_1em {
  font-size: 0.1em !important;
}

.u-fs0_2em {
  font-size: 0.2em !important;
}

.u-fs0_3em {
  font-size: 0.3em !important;
}

.u-fs0_4em {
  font-size: 0.4em !important;
}

.u-fs0_5em {
  font-size: 0.5em !important;
}

.u-fs0_6em {
  font-size: 0.6em !important;
}

.u-fs0_7em {
  font-size: 0.7em !important;
}

.u-fs0_8em {
  font-size: 0.8em !important;
}

.u-fs0_9em {
  font-size: 0.9em !important;
}

.u-fs1_0em {
  font-size: 1em !important;
}

.u-fs1em {
  font-size: 1em !important;
}

.u-fs1_1em {
  font-size: 1.1em !important;
}

.u-fs1_2em {
  font-size: 1.2em !important;
}

.u-fs1_3em {
  font-size: 1.3em !important;
}

.u-fs1_4em {
  font-size: 1.4em !important;
}

.u-fs1_5em {
  font-size: 1.5em !important;
}

.u-fs1_6em {
  font-size: 1.6em !important;
}

.u-fs1_7em {
  font-size: 1.7em !important;
}

.u-fs1_8em {
  font-size: 1.8em !important;
}

.u-fs1_9em {
  font-size: 1.9em !important;
}

.u-fs2_0em {
  font-size: 2em !important;
}

.u-fs2em {
  font-size: 2em !important;
}

.u-fs2_1em {
  font-size: 2.1em !important;
}

.u-fs2_2em {
  font-size: 2.2em !important;
}

.u-fs2_3em {
  font-size: 2.3em !important;
}

.u-fs2_4em {
  font-size: 2.4em !important;
}

.u-fs2_5em {
  font-size: 2.5em !important;
}

.u-fs2_6em {
  font-size: 2.6em !important;
}

.u-fs2_7em {
  font-size: 2.7em !important;
}

.u-fs2_8em {
  font-size: 2.8em !important;
}

.u-fs2_9em {
  font-size: 2.9em !important;
}

.u-fs3_0em {
  font-size: 3em !important;
}

.u-fs3em {
  font-size: 3em !important;
}

@media screen and (max-width: 375px) {
  .u-fs0_6rem--sp {
    font-size: 0.6rem !important;
  }
  .u-fs0_7rem--sp {
    font-size: 0.7rem !important;
  }
  .u-fs0_8rem--sp {
    font-size: 0.8rem !important;
  }
  .u-fs0_9rem--sp {
    font-size: 0.9rem !important;
  }
  .u-fs1_0rem--sp {
    font-size: 1rem !important;
  }
  .u-fs1rem--sp {
    font-size: 1rem !important;
  }
  .u-fs1_1rem--sp {
    font-size: 1.1rem !important;
  }
  .u-fs1_2rem--sp {
    font-size: 1.2rem !important;
  }
  .u-fs1_3rem--sp {
    font-size: 1.3rem !important;
  }
  .u-fs1_4rem--sp {
    font-size: 1.4rem !important;
  }
  .u-fs1_5rem--sp {
    font-size: 1.5rem !important;
  }
  .u-fs1_6rem--sp {
    font-size: 1.6rem !important;
  }
  .u-fs1_7rem--sp {
    font-size: 1.7rem !important;
  }
  .u-fs1_8rem--sp {
    font-size: 1.8rem !important;
  }
  .u-fs1_9rem--sp {
    font-size: 1.9rem !important;
  }
  .u-fs2_0rem--sp {
    font-size: 2rem !important;
  }
  .u-fs2rem--sp {
    font-size: 2rem !important;
  }
  .u-fs2_1rem--sp {
    font-size: 2.1rem !important;
  }
  .u-fs2_2rem--sp {
    font-size: 2.2rem !important;
  }
  .u-fs2_3rem--sp {
    font-size: 2.3rem !important;
  }
  .u-fs2_4rem--sp {
    font-size: 2.4rem !important;
  }
  .u-fs2_5rem--sp {
    font-size: 2.5rem !important;
  }
  .u-fs2_6rem--sp {
    font-size: 2.6rem !important;
  }
  .u-fs2_7rem--sp {
    font-size: 2.7rem !important;
  }
  .u-fs2_8rem--sp {
    font-size: 2.8rem !important;
  }
  .u-fs2_9rem--sp {
    font-size: 2.9rem !important;
  }
  .u-fs3_0rem--sp {
    font-size: 3rem !important;
  }
  .u-fs3rem--sp {
    font-size: 3rem !important;
  }
  .u-fs3_1rem--sp {
    font-size: 3.1rem !important;
  }
  .u-fs3_2rem--sp {
    font-size: 3.2rem !important;
  }
  .u-fs3_3rem--sp {
    font-size: 3.3rem !important;
  }
  .u-fs3_4rem--sp {
    font-size: 3.4rem !important;
  }
  .u-fs3_5rem--sp {
    font-size: 3.5rem !important;
  }
  .u-fs3_6rem--sp {
    font-size: 3.6rem !important;
  }
  .u-fs3_7rem--sp {
    font-size: 3.7rem !important;
  }
  .u-fs3_8rem--sp {
    font-size: 3.8rem !important;
  }
  .u-fs3_9rem--sp {
    font-size: 3.9rem !important;
  }
  .u-fs4_0rem--sp {
    font-size: 4rem !important;
  }
  .u-fs4rem--sp {
    font-size: 4rem !important;
  }
  .u-fs4_1rem--sp {
    font-size: 4.1rem !important;
  }
  .u-fs4_2rem--sp {
    font-size: 4.2rem !important;
  }
  .u-fs4_3rem--sp {
    font-size: 4.3rem !important;
  }
  .u-fs4_4rem--sp {
    font-size: 4.4rem !important;
  }
  .u-fs4_5rem--sp {
    font-size: 4.5rem !important;
  }
  .u-fs4_6rem--sp {
    font-size: 4.6rem !important;
  }
  .u-fs4_7rem--sp {
    font-size: 4.7rem !important;
  }
  .u-fs4_8rem--sp {
    font-size: 4.8rem !important;
  }
  .u-fs4_9rem--sp {
    font-size: 4.9rem !important;
  }
  .u-fs5_0rem--sp {
    font-size: 5rem !important;
  }
  .u-fs5rem--sp {
    font-size: 5rem !important;
  }
  .u-fs0_1em--sp {
    font-size: 0.1em !important;
  }
  .u-fs0_2em--sp {
    font-size: 0.2em !important;
  }
  .u-fs0_3em--sp {
    font-size: 0.3em !important;
  }
  .u-fs0_4em--sp {
    font-size: 0.4em !important;
  }
  .u-fs0_5em--sp {
    font-size: 0.5em !important;
  }
  .u-fs0_6em--sp {
    font-size: 0.6em !important;
  }
  .u-fs0_7em--sp {
    font-size: 0.7em !important;
  }
  .u-fs0_8em--sp {
    font-size: 0.8em !important;
  }
  .u-fs0_9em--sp {
    font-size: 0.9em !important;
  }
  .u-fs1_0em--sp {
    font-size: 1em !important;
  }
  .u-fs1em--sp {
    font-size: 1em !important;
  }
  .u-fs1_1em--sp {
    font-size: 1.1em !important;
  }
  .u-fs1_2em--sp {
    font-size: 1.2em !important;
  }
  .u-fs1_3em--sp {
    font-size: 1.3em !important;
  }
  .u-fs1_4em--sp {
    font-size: 1.4em !important;
  }
  .u-fs1_5em--sp {
    font-size: 1.5em !important;
  }
  .u-fs1_6em--sp {
    font-size: 1.6em !important;
  }
  .u-fs1_7em--sp {
    font-size: 1.7em !important;
  }
  .u-fs1_8em--sp {
    font-size: 1.8em !important;
  }
  .u-fs1_9em--sp {
    font-size: 1.9em !important;
  }
  .u-fs2_0em--sp {
    font-size: 2em !important;
  }
  .u-fs2em--sp {
    font-size: 2em !important;
  }
  .u-fs2_1em--sp {
    font-size: 2.1em !important;
  }
  .u-fs2_2em--sp {
    font-size: 2.2em !important;
  }
  .u-fs2_3em--sp {
    font-size: 2.3em !important;
  }
  .u-fs2_4em--sp {
    font-size: 2.4em !important;
  }
  .u-fs2_5em--sp {
    font-size: 2.5em !important;
  }
  .u-fs2_6em--sp {
    font-size: 2.6em !important;
  }
  .u-fs2_7em--sp {
    font-size: 2.7em !important;
  }
  .u-fs2_8em--sp {
    font-size: 2.8em !important;
  }
  .u-fs2_9em--sp {
    font-size: 2.9em !important;
  }
  .u-fs3_0em--sp {
    font-size: 3em !important;
  }
  .u-fs3em--sp {
    font-size: 3em !important;
  }
}
/* -----------------------------------------------
  float
----------------------------------------------- */
.u-floatRight {
  float: right !important;
}

.u-floatLeft {
  float: left !important;
}

.u-floatNone {
  float: none !important;
}

@media screen and (max-width: 375px) {
  .u-floatRight--sp {
    float: right !important;
  }
  .u-floatLeft--sp {
    float: left !important;
  }
  .u-floatNone--sp {
    float: none !important;
  }
}
/* -----------------------------------------------
  position
----------------------------------------------- */
.u-pRelative {
  position: relative !important;
}

.u-pAbsolute {
  position: absolute !important;
}

.u-pStatic {
  position: static !important;
}

.u-pFixed {
  position: fixed !important;
}

@media screen and (max-width: 375px) {
  .u-pRelative--sp {
    position: relative !important;
  }
  .u-pAbsolute--sp {
    position: absolute !important;
  }
  .u-pStatic--sp {
    position: static !important;
  }
  .u-pFixed--sp {
    position: fixed !important;
  }
}
/* -----------------------------------------------
  white-space
----------------------------------------------- */
.u-wsNowrap {
  white-space: nowrap !important;
}

.u-wsNormal {
  white-space: normal !important;
}

@media screen and (max-width: 375px) {
  .u-wsNowrap--sp {
    white-space: nowrap !important;
  }
  .u-wsNormal--sp {
    white-space: normal !important;
  }
}
/* -----------------------------------------------
  line-height
----------------------------------------------- */
.u-lh1_1 {
  line-height: 1.1;
}

.u-lh1_2 {
  line-height: 1.2;
}

.u-lh1_3 {
  line-height: 1.3;
}

.u-lh1_4 {
  line-height: 1.4;
}

.u-lh1_5 {
  line-height: 1.5;
}

.u-lh1_6 {
  line-height: 1.6;
}

.u-lh1_7 {
  line-height: 1.7;
}

.u-lh1_8 {
  line-height: 1.8;
}

.u-lh1_9 {
  line-height: 1.9;
}

.u-lh2_0 {
  line-height: 2;
}

.u-lh2_1 {
  line-height: 2.1;
}

.u-lh2_2 {
  line-height: 2.2;
}

.u-lh2_3 {
  line-height: 2.3;
}

.u-lh2_4 {
  line-height: 2.4;
}

.u-lh2_5 {
  line-height: 2.5;
}

.u-lh2_6 {
  line-height: 2.6;
}

.u-lh2_7 {
  line-height: 2.7;
}

.u-lh2_8 {
  line-height: 2.8;
}

.u-lh2_9 {
  line-height: 2.9;
}

.u-lh3_0 {
  line-height: 3;
}

.u-lh3_1 {
  line-height: 3.1;
}

.u-lh3_2 {
  line-height: 3.2;
}

.u-lh3_3 {
  line-height: 3.3;
}

.u-lh3_4 {
  line-height: 3.4;
}

.u-lh3_5 {
  line-height: 3.5;
}

.u-lh3_6 {
  line-height: 3.6;
}

.u-lh3_7 {
  line-height: 3.7;
}

.u-lh3_8 {
  line-height: 3.8;
}

.u-lh3_9 {
  line-height: 3.9;
}

.u-lh4_0 {
  line-height: 4;
}

@media screen and (max-width: 375px) {
  .u-lh1_1 {
    line-height: 1.1;
  }
  .u-lh1_2 {
    line-height: 1.2;
  }
  .u-lh1_3 {
    line-height: 1.3;
  }
  .u-lh1_4 {
    line-height: 1.4;
  }
  .u-lh1_5 {
    line-height: 1.5;
  }
  .u-lh1_6 {
    line-height: 1.6;
  }
  .u-lh1_7 {
    line-height: 1.7;
  }
  .u-lh1_8 {
    line-height: 1.8;
  }
  .u-lh1_9 {
    line-height: 1.9;
  }
  .u-lh2_0 {
    line-height: 2;
  }
  .u-lh2_1 {
    line-height: 2.1;
  }
  .u-lh2_2 {
    line-height: 2.2;
  }
  .u-lh2_3 {
    line-height: 2.3;
  }
  .u-lh2_4 {
    line-height: 2.4;
  }
  .u-lh2_5 {
    line-height: 2.5;
  }
  .u-lh2_6 {
    line-height: 2.6;
  }
  .u-lh2_7 {
    line-height: 2.7;
  }
  .u-lh2_8 {
    line-height: 2.8;
  }
  .u-lh2_9 {
    line-height: 2.9;
  }
  .u-lh3_0 {
    line-height: 3;
  }
  .u-lh3_1 {
    line-height: 3.1;
  }
  .u-lh3_2 {
    line-height: 3.2;
  }
  .u-lh3_3 {
    line-height: 3.3;
  }
  .u-lh3_4 {
    line-height: 3.4;
  }
  .u-lh3_5 {
    line-height: 3.5;
  }
  .u-lh3_6 {
    line-height: 3.6;
  }
  .u-lh3_7 {
    line-height: 3.7;
  }
  .u-lh3_8 {
    line-height: 3.8;
  }
  .u-lh3_9 {
    line-height: 3.9;
  }
  .u-lh4_0 {
    line-height: 4;
  }
}
/* -----------------------------------------------
  Width
----------------------------------------------- */
.u-w0 {
  width: 0% !important;
}

.u-w10 {
  width: 10% !important;
}

.u-w20 {
  width: 20% !important;
}

.u-w30 {
  width: 30% !important;
}

.u-w40 {
  width: 40% !important;
}

.u-w50 {
  width: 50% !important;
}

.u-w60 {
  width: 60% !important;
}

.u-w70 {
  width: 70% !important;
}

.u-w80 {
  width: 80% !important;
}

.u-w90 {
  width: 90% !important;
}

.u-w100 {
  width: 100% !important;
}

@media screen and (max-width: 375px) {
  .u-w0--sp {
    width: 0% !important;
  }
  .u-w10--sp {
    width: 10% !important;
  }
  .u-w20--sp {
    width: 20% !important;
  }
  .u-w30--sp {
    width: 30% !important;
  }
  .u-w40--sp {
    width: 40% !important;
  }
  .u-w50--sp {
    width: 50% !important;
  }
  .u-w60--sp {
    width: 60% !important;
  }
  .u-w70--sp {
    width: 70% !important;
  }
  .u-w80--sp {
    width: 80% !important;
  }
  .u-w90--sp {
    width: 90% !important;
  }
  .u-w100--sp {
    width: 100% !important;
  }
}
/* -----------------------------------------------
  Flex Box
----------------------------------------------- */
.u-flexItem {
  -webkit-box-flex: 1 !important;
  -webkit-flex: 1 1 0% !important;
      -ms-flex: 1 1 0% !important;
          flex: 1 1 0% !important;
}

.u-flexAuto {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-flex-wrap: wrap !important;
      -ms-flex-wrap: wrap !important;
          flex-wrap: wrap !important;
}
.u-flexAuto > * {
  -webkit-box-flex: 1 !important;
  -webkit-flex: 1 1 0% !important;
      -ms-flex: 1 1 0% !important;
          flex: 1 1 0% !important;
}

.u-flexWrap {
  -webkit-flex-wrap: wrap !important;
      -ms-flex-wrap: wrap !important;
          flex-wrap: wrap !important;
}

.u-flexNowrap {
  -webkit-flex-wrap: nowrap !important;
      -ms-flex-wrap: nowrap !important;
          flex-wrap: nowrap !important;
}

.u-flex {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
}

.u-flexLeft {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-pack: start !important;
  -webkit-justify-content: flex-start !important;
      -ms-flex-pack: start !important;
          justify-content: flex-start !important;
}

.u-flexCenter {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-pack: center !important;
  -webkit-justify-content: center !important;
      -ms-flex-pack: center !important;
          justify-content: center !important;
}

.u-flexRight {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-pack: end !important;
  -webkit-justify-content: flex-end !important;
      -ms-flex-pack: end !important;
          justify-content: flex-end !important;
}

.u-flexBetween {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-pack: justify !important;
  -webkit-justify-content: space-between !important;
      -ms-flex-pack: justify !important;
          justify-content: space-between !important;
}

.u-flexAround {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-justify-content: space-around !important;
      -ms-flex-pack: distribute !important;
          justify-content: space-around !important;
}

.u-flexTop {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-align: start !important;
  -webkit-align-items: flex-start !important;
      -ms-flex-align: start !important;
          align-items: flex-start !important;
}

.u-flexMiddle {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-align: center !important;
  -webkit-align-items: center !important;
      -ms-flex-align: center !important;
          align-items: center !important;
}

.u-flexBottom {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-align: end !important;
  -webkit-align-items: flex-end !important;
      -ms-flex-align: end !important;
          align-items: flex-end !important;
}

.u-flexReverse {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-orient: horizontal !important;
  -webkit-box-direction: reverse !important;
  -webkit-flex-direction: row-reverse !important;
      -ms-flex-direction: row-reverse !important;
          flex-direction: row-reverse !important;
}

.u-flexItemTop {
  -webkit-align-self: flex-start !important;
      -ms-flex-item-align: start !important;
          align-self: flex-start !important;
}

.u-flexItemMiddle {
  -webkit-align-self: center !important;
      -ms-flex-item-align: center !important;
          align-self: center !important;
}

.u-flexItemBottom {
  -webkit-align-self: flex-end !important;
      -ms-flex-item-align: end !important;
          align-self: flex-end !important;
}

@media screen and (max-width: 375px) {
  .u-flexItem--sp {
    -webkit-box-flex: 1 !important;
    -webkit-flex: 1 1 0% !important;
        -ms-flex: 1 1 0% !important;
            flex: 1 1 0% !important;
  }
  .u-flexAuto--sp {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-flex-wrap: wrap !important;
        -ms-flex-wrap: wrap !important;
            flex-wrap: wrap !important;
  }
  .u-flexAuto--sp > * {
    -webkit-box-flex: 1 !important;
    -webkit-flex: 1 1 0% !important;
        -ms-flex: 1 1 0% !important;
            flex: 1 1 0% !important;
  }
  .u-flexWrap--sp {
    -webkit-flex-wrap: wrap !important;
        -ms-flex-wrap: wrap !important;
            flex-wrap: wrap !important;
  }
  .u-flexNowrap--sp {
    -webkit-flex-wrap: nowrap !important;
        -ms-flex-wrap: nowrap !important;
            flex-wrap: nowrap !important;
  }
  .u-flex--sp {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .u-flexLeft--sp {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-pack: start !important;
    -webkit-justify-content: flex-start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important;
  }
  .u-flexCenter--sp {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-pack: center !important;
    -webkit-justify-content: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important;
  }
  .u-flexRight--sp {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-pack: end !important;
    -webkit-justify-content: flex-end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important;
  }
  .u-flexBetween--sp {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-pack: justify !important;
    -webkit-justify-content: space-between !important;
        -ms-flex-pack: justify !important;
            justify-content: space-between !important;
  }
  .u-flexAround--sp {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-justify-content: space-around !important;
        -ms-flex-pack: distribute !important;
            justify-content: space-around !important;
  }
  .u-flexTop--sp {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-align: start !important;
    -webkit-align-items: flex-start !important;
        -ms-flex-align: start !important;
            align-items: flex-start !important;
  }
  .u-flexMiddle--sp {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-align: center !important;
    -webkit-align-items: center !important;
        -ms-flex-align: center !important;
            align-items: center !important;
  }
  .u-flexBottom--sp {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-align: end !important;
    -webkit-align-items: flex-end !important;
        -ms-flex-align: end !important;
            align-items: flex-end !important;
  }
  .u-flexReverse--sp {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: reverse !important;
    -webkit-flex-direction: row-reverse !important;
        -ms-flex-direction: row-reverse !important;
            flex-direction: row-reverse !important;
  }
  .u-flexItemTop--sp {
    -webkit-align-self: flex-start !important;
        -ms-flex-item-align: start !important;
            align-self: flex-start !important;
  }
  .u-flexItemMiddle--sp {
    -webkit-align-self: center !important;
        -ms-flex-item-align: center !important;
            align-self: center !important;
  }
  .u-flexItemBottom--sp {
    -webkit-align-self: flex-end !important;
        -ms-flex-item-align: end !important;
            align-self: flex-end !important;
  }
}
/* -----------------------------------------------
  text-arign
----------------------------------------------- */
.u-taCenter {
  text-align: center !important;
}

.u-taLeft {
  text-align: left !important;
}

.u-taRight {
  text-align: right !important;
}

@media screen and (max-width: 375px) {
  .u-taCenter--sp {
    text-align: center !important;
  }
  .u-taLeft--sp {
    text-align: left !important;
  }
  .u-taRight--sp {
    text-align: right !important;
  }
}
/* -----------------------------------------------
  display
----------------------------------------------- */
.u-dNone {
  display: none !important;
}

.u-dBlock {
  display: block !important;
}

.u-dInline {
  display: inline !important;
}

.u-dTable {
  display: table !important;
}

.u-dTableCell {
  display: table-cell !important;
}

.u-dFlex {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
}

.u-dInlineFlex {
  display: -webkit-inline-box !important;
  display: -webkit-inline-flex !important;
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
}

@media screen and (max-width: 375px) {
  .u-dNone--sp {
    display: none !important;
  }
  .u-dBlock--sp {
    display: block !important;
  }
  .u-dInline--sp {
    display: inline !important;
  }
  .u-dTable--sp {
    display: table !important;
  }
  .u-dTableCell--sp {
    display: table-cell !important;
  }
  .u-dFlex--sp {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .u-dInlineFlex--sp {
    display: -webkit-inline-box !important;
    display: -webkit-inline-flex !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}
/* -----------------------------------------------
  margin padding
----------------------------------------------- */
.u-m0px {
  margin: 0px !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media screen and (max-width: 375px) {
  .u-m0px--sp {
    margin: 0px !important;
  }
  .u-mt0px--sp {
    margin-top: 0px !important;
  }
  .u-mb0px--sp {
    margin-bottom: 0px !important;
  }
  .u-ml0px--sp {
    margin-left: 0px !important;
  }
  .u-mr0px--sp {
    margin-right: 0px !important;
  }
  .u-pt0px--sp {
    padding-top: 0px !important;
  }
  .u-pb0px--sp {
    padding-bottom: 0px !important;
  }
  .u-pl0px--sp {
    padding-left: 0px !important;
  }
  .u-pr0px--sp {
    padding-right: 0px !important;
  }
  .u-p0px--sp {
    padding: 0px !important;
  }
  .u-m5px--sp {
    margin: 5px !important;
  }
  .u-mt5px--sp {
    margin-top: 5px !important;
  }
  .u-mb5px--sp {
    margin-bottom: 5px !important;
  }
  .u-ml5px--sp {
    margin-left: 5px !important;
  }
  .u-mr5px--sp {
    margin-right: 5px !important;
  }
  .u-pt5px--sp {
    padding-top: 5px !important;
  }
  .u-pb5px--sp {
    padding-bottom: 5px !important;
  }
  .u-pl5px--sp {
    padding-left: 5px !important;
  }
  .u-pr5px--sp {
    padding-right: 5px !important;
  }
  .u-p5px--sp {
    padding: 5px !important;
  }
  .u-m10px--sp {
    margin: 10px !important;
  }
  .u-mt10px--sp {
    margin-top: 10px !important;
  }
  .u-mb10px--sp {
    margin-bottom: 10px !important;
  }
  .u-ml10px--sp {
    margin-left: 10px !important;
  }
  .u-mr10px--sp {
    margin-right: 10px !important;
  }
  .u-pt10px--sp {
    padding-top: 10px !important;
  }
  .u-pb10px--sp {
    padding-bottom: 10px !important;
  }
  .u-pl10px--sp {
    padding-left: 10px !important;
  }
  .u-pr10px--sp {
    padding-right: 10px !important;
  }
  .u-p10px--sp {
    padding: 10px !important;
  }
  .u-m15px--sp {
    margin: 15px !important;
  }
  .u-mt15px--sp {
    margin-top: 15px !important;
  }
  .u-mb15px--sp {
    margin-bottom: 15px !important;
  }
  .u-ml15px--sp {
    margin-left: 15px !important;
  }
  .u-mr15px--sp {
    margin-right: 15px !important;
  }
  .u-pt15px--sp {
    padding-top: 15px !important;
  }
  .u-pb15px--sp {
    padding-bottom: 15px !important;
  }
  .u-pl15px--sp {
    padding-left: 15px !important;
  }
  .u-pr15px--sp {
    padding-right: 15px !important;
  }
  .u-p15px--sp {
    padding: 15px !important;
  }
  .u-m20px--sp {
    margin: 20px !important;
  }
  .u-mt20px--sp {
    margin-top: 20px !important;
  }
  .u-mb20px--sp {
    margin-bottom: 20px !important;
  }
  .u-ml20px--sp {
    margin-left: 20px !important;
  }
  .u-mr20px--sp {
    margin-right: 20px !important;
  }
  .u-pt20px--sp {
    padding-top: 20px !important;
  }
  .u-pb20px--sp {
    padding-bottom: 20px !important;
  }
  .u-pl20px--sp {
    padding-left: 20px !important;
  }
  .u-pr20px--sp {
    padding-right: 20px !important;
  }
  .u-p20px--sp {
    padding: 20px !important;
  }
  .u-m25px--sp {
    margin: 25px !important;
  }
  .u-mt25px--sp {
    margin-top: 25px !important;
  }
  .u-mb25px--sp {
    margin-bottom: 25px !important;
  }
  .u-ml25px--sp {
    margin-left: 25px !important;
  }
  .u-mr25px--sp {
    margin-right: 25px !important;
  }
  .u-pt25px--sp {
    padding-top: 25px !important;
  }
  .u-pb25px--sp {
    padding-bottom: 25px !important;
  }
  .u-pl25px--sp {
    padding-left: 25px !important;
  }
  .u-pr25px--sp {
    padding-right: 25px !important;
  }
  .u-p25px--sp {
    padding: 25px !important;
  }
  .u-m30px--sp {
    margin: 30px !important;
  }
  .u-mt30px--sp {
    margin-top: 30px !important;
  }
  .u-mb30px--sp {
    margin-bottom: 30px !important;
  }
  .u-ml30px--sp {
    margin-left: 30px !important;
  }
  .u-mr30px--sp {
    margin-right: 30px !important;
  }
  .u-pt30px--sp {
    padding-top: 30px !important;
  }
  .u-pb30px--sp {
    padding-bottom: 30px !important;
  }
  .u-pl30px--sp {
    padding-left: 30px !important;
  }
  .u-pr30px--sp {
    padding-right: 30px !important;
  }
  .u-p30px--sp {
    padding: 30px !important;
  }
  .u-m35px--sp {
    margin: 35px !important;
  }
  .u-mt35px--sp {
    margin-top: 35px !important;
  }
  .u-mb35px--sp {
    margin-bottom: 35px !important;
  }
  .u-ml35px--sp {
    margin-left: 35px !important;
  }
  .u-mr35px--sp {
    margin-right: 35px !important;
  }
  .u-pt35px--sp {
    padding-top: 35px !important;
  }
  .u-pb35px--sp {
    padding-bottom: 35px !important;
  }
  .u-pl35px--sp {
    padding-left: 35px !important;
  }
  .u-pr35px--sp {
    padding-right: 35px !important;
  }
  .u-p35px--sp {
    padding: 35px !important;
  }
  .u-m40px--sp {
    margin: 40px !important;
  }
  .u-mt40px--sp {
    margin-top: 40px !important;
  }
  .u-mb40px--sp {
    margin-bottom: 40px !important;
  }
  .u-ml40px--sp {
    margin-left: 40px !important;
  }
  .u-mr40px--sp {
    margin-right: 40px !important;
  }
  .u-pt40px--sp {
    padding-top: 40px !important;
  }
  .u-pb40px--sp {
    padding-bottom: 40px !important;
  }
  .u-pl40px--sp {
    padding-left: 40px !important;
  }
  .u-pr40px--sp {
    padding-right: 40px !important;
  }
  .u-p40px--sp {
    padding: 40px !important;
  }
  .u-m45px--sp {
    margin: 45px !important;
  }
  .u-mt45px--sp {
    margin-top: 45px !important;
  }
  .u-mb45px--sp {
    margin-bottom: 45px !important;
  }
  .u-ml45px--sp {
    margin-left: 45px !important;
  }
  .u-mr45px--sp {
    margin-right: 45px !important;
  }
  .u-pt45px--sp {
    padding-top: 45px !important;
  }
  .u-pb45px--sp {
    padding-bottom: 45px !important;
  }
  .u-pl45px--sp {
    padding-left: 45px !important;
  }
  .u-pr45px--sp {
    padding-right: 45px !important;
  }
  .u-p45px--sp {
    padding: 45px !important;
  }
  .u-m50px--sp {
    margin: 50px !important;
  }
  .u-mt50px--sp {
    margin-top: 50px !important;
  }
  .u-mb50px--sp {
    margin-bottom: 50px !important;
  }
  .u-ml50px--sp {
    margin-left: 50px !important;
  }
  .u-mr50px--sp {
    margin-right: 50px !important;
  }
  .u-pt50px--sp {
    padding-top: 50px !important;
  }
  .u-pb50px--sp {
    padding-bottom: 50px !important;
  }
  .u-pl50px--sp {
    padding-left: 50px !important;
  }
  .u-pr50px--sp {
    padding-right: 50px !important;
  }
  .u-p50px--sp {
    padding: 50px !important;
  }
  .u-m55px--sp {
    margin: 55px !important;
  }
  .u-mt55px--sp {
    margin-top: 55px !important;
  }
  .u-mb55px--sp {
    margin-bottom: 55px !important;
  }
  .u-ml55px--sp {
    margin-left: 55px !important;
  }
  .u-mr55px--sp {
    margin-right: 55px !important;
  }
  .u-pt55px--sp {
    padding-top: 55px !important;
  }
  .u-pb55px--sp {
    padding-bottom: 55px !important;
  }
  .u-pl55px--sp {
    padding-left: 55px !important;
  }
  .u-pr55px--sp {
    padding-right: 55px !important;
  }
  .u-p55px--sp {
    padding: 55px !important;
  }
  .u-m60px--sp {
    margin: 60px !important;
  }
  .u-mt60px--sp {
    margin-top: 60px !important;
  }
  .u-mb60px--sp {
    margin-bottom: 60px !important;
  }
  .u-ml60px--sp {
    margin-left: 60px !important;
  }
  .u-mr60px--sp {
    margin-right: 60px !important;
  }
  .u-pt60px--sp {
    padding-top: 60px !important;
  }
  .u-pb60px--sp {
    padding-bottom: 60px !important;
  }
  .u-pl60px--sp {
    padding-left: 60px !important;
  }
  .u-pr60px--sp {
    padding-right: 60px !important;
  }
  .u-p60px--sp {
    padding: 60px !important;
  }
  .u-m65px--sp {
    margin: 65px !important;
  }
  .u-mt65px--sp {
    margin-top: 65px !important;
  }
  .u-mb65px--sp {
    margin-bottom: 65px !important;
  }
  .u-ml65px--sp {
    margin-left: 65px !important;
  }
  .u-mr65px--sp {
    margin-right: 65px !important;
  }
  .u-pt65px--sp {
    padding-top: 65px !important;
  }
  .u-pb65px--sp {
    padding-bottom: 65px !important;
  }
  .u-pl65px--sp {
    padding-left: 65px !important;
  }
  .u-pr65px--sp {
    padding-right: 65px !important;
  }
  .u-p65px--sp {
    padding: 65px !important;
  }
  .u-m70px--sp {
    margin: 70px !important;
  }
  .u-mt70px--sp {
    margin-top: 70px !important;
  }
  .u-mb70px--sp {
    margin-bottom: 70px !important;
  }
  .u-ml70px--sp {
    margin-left: 70px !important;
  }
  .u-mr70px--sp {
    margin-right: 70px !important;
  }
  .u-pt70px--sp {
    padding-top: 70px !important;
  }
  .u-pb70px--sp {
    padding-bottom: 70px !important;
  }
  .u-pl70px--sp {
    padding-left: 70px !important;
  }
  .u-pr70px--sp {
    padding-right: 70px !important;
  }
  .u-p70px--sp {
    padding: 70px !important;
  }
  .u-m75px--sp {
    margin: 75px !important;
  }
  .u-mt75px--sp {
    margin-top: 75px !important;
  }
  .u-mb75px--sp {
    margin-bottom: 75px !important;
  }
  .u-ml75px--sp {
    margin-left: 75px !important;
  }
  .u-mr75px--sp {
    margin-right: 75px !important;
  }
  .u-pt75px--sp {
    padding-top: 75px !important;
  }
  .u-pb75px--sp {
    padding-bottom: 75px !important;
  }
  .u-pl75px--sp {
    padding-left: 75px !important;
  }
  .u-pr75px--sp {
    padding-right: 75px !important;
  }
  .u-p75px--sp {
    padding: 75px !important;
  }
  .u-m80px--sp {
    margin: 80px !important;
  }
  .u-mt80px--sp {
    margin-top: 80px !important;
  }
  .u-mb80px--sp {
    margin-bottom: 80px !important;
  }
  .u-ml80px--sp {
    margin-left: 80px !important;
  }
  .u-mr80px--sp {
    margin-right: 80px !important;
  }
  .u-pt80px--sp {
    padding-top: 80px !important;
  }
  .u-pb80px--sp {
    padding-bottom: 80px !important;
  }
  .u-pl80px--sp {
    padding-left: 80px !important;
  }
  .u-pr80px--sp {
    padding-right: 80px !important;
  }
  .u-p80px--sp {
    padding: 80px !important;
  }
  .u-m85px--sp {
    margin: 85px !important;
  }
  .u-mt85px--sp {
    margin-top: 85px !important;
  }
  .u-mb85px--sp {
    margin-bottom: 85px !important;
  }
  .u-ml85px--sp {
    margin-left: 85px !important;
  }
  .u-mr85px--sp {
    margin-right: 85px !important;
  }
  .u-pt85px--sp {
    padding-top: 85px !important;
  }
  .u-pb85px--sp {
    padding-bottom: 85px !important;
  }
  .u-pl85px--sp {
    padding-left: 85px !important;
  }
  .u-pr85px--sp {
    padding-right: 85px !important;
  }
  .u-p85px--sp {
    padding: 85px !important;
  }
  .u-m90px--sp {
    margin: 90px !important;
  }
  .u-mt90px--sp {
    margin-top: 90px !important;
  }
  .u-mb90px--sp {
    margin-bottom: 90px !important;
  }
  .u-ml90px--sp {
    margin-left: 90px !important;
  }
  .u-mr90px--sp {
    margin-right: 90px !important;
  }
  .u-pt90px--sp {
    padding-top: 90px !important;
  }
  .u-pb90px--sp {
    padding-bottom: 90px !important;
  }
  .u-pl90px--sp {
    padding-left: 90px !important;
  }
  .u-pr90px--sp {
    padding-right: 90px !important;
  }
  .u-p90px--sp {
    padding: 90px !important;
  }
  .u-m95px--sp {
    margin: 95px !important;
  }
  .u-mt95px--sp {
    margin-top: 95px !important;
  }
  .u-mb95px--sp {
    margin-bottom: 95px !important;
  }
  .u-ml95px--sp {
    margin-left: 95px !important;
  }
  .u-mr95px--sp {
    margin-right: 95px !important;
  }
  .u-pt95px--sp {
    padding-top: 95px !important;
  }
  .u-pb95px--sp {
    padding-bottom: 95px !important;
  }
  .u-pl95px--sp {
    padding-left: 95px !important;
  }
  .u-pr95px--sp {
    padding-right: 95px !important;
  }
  .u-p95px--sp {
    padding: 95px !important;
  }
  .u-m100px--sp {
    margin: 100px !important;
  }
  .u-mt100px--sp {
    margin-top: 100px !important;
  }
  .u-mb100px--sp {
    margin-bottom: 100px !important;
  }
  .u-ml100px--sp {
    margin-left: 100px !important;
  }
  .u-mr100px--sp {
    margin-right: 100px !important;
  }
  .u-pt100px--sp {
    padding-top: 100px !important;
  }
  .u-pb100px--sp {
    padding-bottom: 100px !important;
  }
  .u-pl100px--sp {
    padding-left: 100px !important;
  }
  .u-pr100px--sp {
    padding-right: 100px !important;
  }
  .u-p100px--sp {
    padding: 100px !important;
  }
}
.u-m0em {
  margin: 0em !important;
}

.u-mt0em {
  margin-top: 0em !important;
}

.u-mb0em {
  margin-bottom: 0em !important;
}

.u-ml0em {
  margin-left: 0em !important;
}

.u-mr0em {
  margin-right: 0em !important;
}

.u-pt0em {
  padding-top: 0em !important;
}

.u-pb0em {
  padding-bottom: 0em !important;
}

.u-pl0em {
  padding-left: 0em !important;
}

.u-pr0em {
  padding-right: 0em !important;
}

.u-p0em {
  padding: 0em !important;
}

.u-m0_5em {
  margin: 0.5em !important;
}

.u-mt0_5em {
  margin-top: 0.5em !important;
}

.u-mb0_5em {
  margin-bottom: 0.5em !important;
}

.u-ml0_5em {
  margin-left: 0.5em !important;
}

.u-mr0_5em {
  margin-right: 0.5em !important;
}

.u-pt0_5em {
  padding-top: 0.5em !important;
}

.u-pb0_5em {
  padding-bottom: 0.5em !important;
}

.u-pl0_5em {
  padding-left: 0.5em !important;
}

.u-pr0_5em {
  padding-right: 0.5em !important;
}

.u-p0_5em {
  padding: 0.5em !important;
}

.u-m1em {
  margin: 1em !important;
}

.u-mt1em {
  margin-top: 1em !important;
}

.u-mb1em {
  margin-bottom: 1em !important;
}

.u-ml1em {
  margin-left: 1em !important;
}

.u-mr1em {
  margin-right: 1em !important;
}

.u-pt1em {
  padding-top: 1em !important;
}

.u-pb1em {
  padding-bottom: 1em !important;
}

.u-pl1em {
  padding-left: 1em !important;
}

.u-pr1em {
  padding-right: 1em !important;
}

.u-p1em {
  padding: 1em !important;
}

.u-m1_5em {
  margin: 1.5em !important;
}

.u-mt1_5em {
  margin-top: 1.5em !important;
}

.u-mb1_5em {
  margin-bottom: 1.5em !important;
}

.u-ml1_5em {
  margin-left: 1.5em !important;
}

.u-mr1_5em {
  margin-right: 1.5em !important;
}

.u-pt1_5em {
  padding-top: 1.5em !important;
}

.u-pb1_5em {
  padding-bottom: 1.5em !important;
}

.u-pl1_5em {
  padding-left: 1.5em !important;
}

.u-pr1_5em {
  padding-right: 1.5em !important;
}

.u-p1_5em {
  padding: 1.5em !important;
}

.u-m2em {
  margin: 2em !important;
}

.u-mt2em {
  margin-top: 2em !important;
}

.u-mb2em {
  margin-bottom: 2em !important;
}

.u-ml2em {
  margin-left: 2em !important;
}

.u-mr2em {
  margin-right: 2em !important;
}

.u-pt2em {
  padding-top: 2em !important;
}

.u-pb2em {
  padding-bottom: 2em !important;
}

.u-pl2em {
  padding-left: 2em !important;
}

.u-pr2em {
  padding-right: 2em !important;
}

.u-p2em {
  padding: 2em !important;
}

.u-m2_5em {
  margin: 2.5em !important;
}

.u-mt2_5em {
  margin-top: 2.5em !important;
}

.u-mb2_5em {
  margin-bottom: 2.5em !important;
}

.u-ml2_5em {
  margin-left: 2.5em !important;
}

.u-mr2_5em {
  margin-right: 2.5em !important;
}

.u-pt2_5em {
  padding-top: 2.5em !important;
}

.u-pb2_5em {
  padding-bottom: 2.5em !important;
}

.u-pl2_5em {
  padding-left: 2.5em !important;
}

.u-pr2_5em {
  padding-right: 2.5em !important;
}

.u-p2_5em {
  padding: 2.5em !important;
}

.u-m3em {
  margin: 3em !important;
}

.u-mt3em {
  margin-top: 3em !important;
}

.u-mb3em {
  margin-bottom: 3em !important;
}

.u-ml3em {
  margin-left: 3em !important;
}

.u-mr3em {
  margin-right: 3em !important;
}

.u-pt3em {
  padding-top: 3em !important;
}

.u-pb3em {
  padding-bottom: 3em !important;
}

.u-pl3em {
  padding-left: 3em !important;
}

.u-pr3em {
  padding-right: 3em !important;
}

.u-p3em {
  padding: 3em !important;
}

.u-m3_5em {
  margin: 3.5em !important;
}

.u-mt3_5em {
  margin-top: 3.5em !important;
}

.u-mb3_5em {
  margin-bottom: 3.5em !important;
}

.u-ml3_5em {
  margin-left: 3.5em !important;
}

.u-mr3_5em {
  margin-right: 3.5em !important;
}

.u-pt3_5em {
  padding-top: 3.5em !important;
}

.u-pb3_5em {
  padding-bottom: 3.5em !important;
}

.u-pl3_5em {
  padding-left: 3.5em !important;
}

.u-pr3_5em {
  padding-right: 3.5em !important;
}

.u-p3_5em {
  padding: 3.5em !important;
}

.u-m4em {
  margin: 4em !important;
}

.u-mt4em {
  margin-top: 4em !important;
}

.u-mb4em {
  margin-bottom: 4em !important;
}

.u-ml4em {
  margin-left: 4em !important;
}

.u-mr4em {
  margin-right: 4em !important;
}

.u-pt4em {
  padding-top: 4em !important;
}

.u-pb4em {
  padding-bottom: 4em !important;
}

.u-pl4em {
  padding-left: 4em !important;
}

.u-pr4em {
  padding-right: 4em !important;
}

.u-p4em {
  padding: 4em !important;
}

.u-m4_5em {
  margin: 4.5em !important;
}

.u-mt4_5em {
  margin-top: 4.5em !important;
}

.u-mb4_5em {
  margin-bottom: 4.5em !important;
}

.u-ml4_5em {
  margin-left: 4.5em !important;
}

.u-mr4_5em {
  margin-right: 4.5em !important;
}

.u-pt4_5em {
  padding-top: 4.5em !important;
}

.u-pb4_5em {
  padding-bottom: 4.5em !important;
}

.u-pl4_5em {
  padding-left: 4.5em !important;
}

.u-pr4_5em {
  padding-right: 4.5em !important;
}

.u-p4_5em {
  padding: 4.5em !important;
}

.u-m5em {
  margin: 5em !important;
}

.u-mt5em {
  margin-top: 5em !important;
}

.u-mb5em {
  margin-bottom: 5em !important;
}

.u-ml5em {
  margin-left: 5em !important;
}

.u-mr5em {
  margin-right: 5em !important;
}

.u-pt5em {
  padding-top: 5em !important;
}

.u-pb5em {
  padding-bottom: 5em !important;
}

.u-pl5em {
  padding-left: 5em !important;
}

.u-pr5em {
  padding-right: 5em !important;
}

.u-p5em {
  padding: 5em !important;
}

.u-m5_5em {
  margin: 5.5em !important;
}

.u-mt5_5em {
  margin-top: 5.5em !important;
}

.u-mb5_5em {
  margin-bottom: 5.5em !important;
}

.u-ml5_5em {
  margin-left: 5.5em !important;
}

.u-mr5_5em {
  margin-right: 5.5em !important;
}

.u-pt5_5em {
  padding-top: 5.5em !important;
}

.u-pb5_5em {
  padding-bottom: 5.5em !important;
}

.u-pl5_5em {
  padding-left: 5.5em !important;
}

.u-pr5_5em {
  padding-right: 5.5em !important;
}

.u-p5_5em {
  padding: 5.5em !important;
}

.u-m6em {
  margin: 6em !important;
}

.u-mt6em {
  margin-top: 6em !important;
}

.u-mb6em {
  margin-bottom: 6em !important;
}

.u-ml6em {
  margin-left: 6em !important;
}

.u-mr6em {
  margin-right: 6em !important;
}

.u-pt6em {
  padding-top: 6em !important;
}

.u-pb6em {
  padding-bottom: 6em !important;
}

.u-pl6em {
  padding-left: 6em !important;
}

.u-pr6em {
  padding-right: 6em !important;
}

.u-p6em {
  padding: 6em !important;
}

.u-m6_5em {
  margin: 6.5em !important;
}

.u-mt6_5em {
  margin-top: 6.5em !important;
}

.u-mb6_5em {
  margin-bottom: 6.5em !important;
}

.u-ml6_5em {
  margin-left: 6.5em !important;
}

.u-mr6_5em {
  margin-right: 6.5em !important;
}

.u-pt6_5em {
  padding-top: 6.5em !important;
}

.u-pb6_5em {
  padding-bottom: 6.5em !important;
}

.u-pl6_5em {
  padding-left: 6.5em !important;
}

.u-pr6_5em {
  padding-right: 6.5em !important;
}

.u-p6_5em {
  padding: 6.5em !important;
}

.u-m7em {
  margin: 7em !important;
}

.u-mt7em {
  margin-top: 7em !important;
}

.u-mb7em {
  margin-bottom: 7em !important;
}

.u-ml7em {
  margin-left: 7em !important;
}

.u-mr7em {
  margin-right: 7em !important;
}

.u-pt7em {
  padding-top: 7em !important;
}

.u-pb7em {
  padding-bottom: 7em !important;
}

.u-pl7em {
  padding-left: 7em !important;
}

.u-pr7em {
  padding-right: 7em !important;
}

.u-p7em {
  padding: 7em !important;
}

.u-m7_5em {
  margin: 7.5em !important;
}

.u-mt7_5em {
  margin-top: 7.5em !important;
}

.u-mb7_5em {
  margin-bottom: 7.5em !important;
}

.u-ml7_5em {
  margin-left: 7.5em !important;
}

.u-mr7_5em {
  margin-right: 7.5em !important;
}

.u-pt7_5em {
  padding-top: 7.5em !important;
}

.u-pb7_5em {
  padding-bottom: 7.5em !important;
}

.u-pl7_5em {
  padding-left: 7.5em !important;
}

.u-pr7_5em {
  padding-right: 7.5em !important;
}

.u-p7_5em {
  padding: 7.5em !important;
}

.u-m8em {
  margin: 8em !important;
}

.u-mt8em {
  margin-top: 8em !important;
}

.u-mb8em {
  margin-bottom: 8em !important;
}

.u-ml8em {
  margin-left: 8em !important;
}

.u-mr8em {
  margin-right: 8em !important;
}

.u-pt8em {
  padding-top: 8em !important;
}

.u-pb8em {
  padding-bottom: 8em !important;
}

.u-pl8em {
  padding-left: 8em !important;
}

.u-pr8em {
  padding-right: 8em !important;
}

.u-p8em {
  padding: 8em !important;
}

.u-m8_5em {
  margin: 8.5em !important;
}

.u-mt8_5em {
  margin-top: 8.5em !important;
}

.u-mb8_5em {
  margin-bottom: 8.5em !important;
}

.u-ml8_5em {
  margin-left: 8.5em !important;
}

.u-mr8_5em {
  margin-right: 8.5em !important;
}

.u-pt8_5em {
  padding-top: 8.5em !important;
}

.u-pb8_5em {
  padding-bottom: 8.5em !important;
}

.u-pl8_5em {
  padding-left: 8.5em !important;
}

.u-pr8_5em {
  padding-right: 8.5em !important;
}

.u-p8_5em {
  padding: 8.5em !important;
}

.u-m9em {
  margin: 9em !important;
}

.u-mt9em {
  margin-top: 9em !important;
}

.u-mb9em {
  margin-bottom: 9em !important;
}

.u-ml9em {
  margin-left: 9em !important;
}

.u-mr9em {
  margin-right: 9em !important;
}

.u-pt9em {
  padding-top: 9em !important;
}

.u-pb9em {
  padding-bottom: 9em !important;
}

.u-pl9em {
  padding-left: 9em !important;
}

.u-pr9em {
  padding-right: 9em !important;
}

.u-p9em {
  padding: 9em !important;
}

.u-m9_5em {
  margin: 9.5em !important;
}

.u-mt9_5em {
  margin-top: 9.5em !important;
}

.u-mb9_5em {
  margin-bottom: 9.5em !important;
}

.u-ml9_5em {
  margin-left: 9.5em !important;
}

.u-mr9_5em {
  margin-right: 9.5em !important;
}

.u-pt9_5em {
  padding-top: 9.5em !important;
}

.u-pb9_5em {
  padding-bottom: 9.5em !important;
}

.u-pl9_5em {
  padding-left: 9.5em !important;
}

.u-pr9_5em {
  padding-right: 9.5em !important;
}

.u-p9_5em {
  padding: 9.5em !important;
}

.u-m10em {
  margin: 10em !important;
}

.u-mt10em {
  margin-top: 10em !important;
}

.u-mb10em {
  margin-bottom: 10em !important;
}

.u-ml10em {
  margin-left: 10em !important;
}

.u-mr10em {
  margin-right: 10em !important;
}

.u-pt10em {
  padding-top: 10em !important;
}

.u-pb10em {
  padding-bottom: 10em !important;
}

.u-pl10em {
  padding-left: 10em !important;
}

.u-pr10em {
  padding-right: 10em !important;
}

.u-p10em {
  padding: 10em !important;
}

.u-mAuto {
  margin-left: auto !important;
  margin-right: auto !important;
}

.u-pAuto {
  padding-left: auto !important;
  padding-right: auto !important;
}

.u-m0 {
  margin: 0 !important;
}

.u-mt0 {
  margin-top: 0 !important;
}

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

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

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

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

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

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

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

.u-p0 {
  padding: 0 !important;
}

@media screen and (max-width: 375px) {
  .u-m0em--sp {
    margin: 0em !important;
  }
  .u-mt0em--sp {
    margin-top: 0em !important;
  }
  .u-mb0em--sp {
    margin-bottom: 0em !important;
  }
  .u-ml0em--sp {
    margin-left: 0em !important;
  }
  .u-mr0em--sp {
    margin-right: 0em !important;
  }
  .u-pt0em--sp {
    padding-top: 0em !important;
  }
  .u-pb0em--sp {
    padding-bottom: 0em !important;
  }
  .u-pl0em--sp {
    padding-left: 0em !important;
  }
  .u-pr0em--sp {
    padding-right: 0em !important;
  }
  .u-p0em--sp {
    padding: 0em !important;
  }
  .u-m0_5em--sp {
    margin: 0.5em !important;
  }
  .u-mt0_5em--sp {
    margin-top: 0.5em !important;
  }
  .u-mb0_5em--sp {
    margin-bottom: 0.5em !important;
  }
  .u-ml0_5em--sp {
    margin-left: 0.5em !important;
  }
  .u-mr0_5em--sp {
    margin-right: 0.5em !important;
  }
  .u-pt0_5em--sp {
    padding-top: 0.5em !important;
  }
  .u-pb0_5em--sp {
    padding-bottom: 0.5em !important;
  }
  .u-pl0_5em--sp {
    padding-left: 0.5em !important;
  }
  .u-pr0_5em--sp {
    padding-right: 0.5em !important;
  }
  .u-p0_5em--sp {
    padding: 0.5em !important;
  }
  .u-m1em--sp {
    margin: 1em !important;
  }
  .u-mt1em--sp {
    margin-top: 1em !important;
  }
  .u-mb1em--sp {
    margin-bottom: 1em !important;
  }
  .u-ml1em--sp {
    margin-left: 1em !important;
  }
  .u-mr1em--sp {
    margin-right: 1em !important;
  }
  .u-pt1em--sp {
    padding-top: 1em !important;
  }
  .u-pb1em--sp {
    padding-bottom: 1em !important;
  }
  .u-pl1em--sp {
    padding-left: 1em !important;
  }
  .u-pr1em--sp {
    padding-right: 1em !important;
  }
  .u-p1em--sp {
    padding: 1em !important;
  }
  .u-m1_5em--sp {
    margin: 1.5em !important;
  }
  .u-mt1_5em--sp {
    margin-top: 1.5em !important;
  }
  .u-mb1_5em--sp {
    margin-bottom: 1.5em !important;
  }
  .u-ml1_5em--sp {
    margin-left: 1.5em !important;
  }
  .u-mr1_5em--sp {
    margin-right: 1.5em !important;
  }
  .u-pt1_5em--sp {
    padding-top: 1.5em !important;
  }
  .u-pb1_5em--sp {
    padding-bottom: 1.5em !important;
  }
  .u-pl1_5em--sp {
    padding-left: 1.5em !important;
  }
  .u-pr1_5em--sp {
    padding-right: 1.5em !important;
  }
  .u-p1_5em--sp {
    padding: 1.5em !important;
  }
  .u-m2em--sp {
    margin: 2em !important;
  }
  .u-mt2em--sp {
    margin-top: 2em !important;
  }
  .u-mb2em--sp {
    margin-bottom: 2em !important;
  }
  .u-ml2em--sp {
    margin-left: 2em !important;
  }
  .u-mr2em--sp {
    margin-right: 2em !important;
  }
  .u-pt2em--sp {
    padding-top: 2em !important;
  }
  .u-pb2em--sp {
    padding-bottom: 2em !important;
  }
  .u-pl2em--sp {
    padding-left: 2em !important;
  }
  .u-pr2em--sp {
    padding-right: 2em !important;
  }
  .u-p2em--sp {
    padding: 2em !important;
  }
  .u-m2_5em--sp {
    margin: 2.5em !important;
  }
  .u-mt2_5em--sp {
    margin-top: 2.5em !important;
  }
  .u-mb2_5em--sp {
    margin-bottom: 2.5em !important;
  }
  .u-ml2_5em--sp {
    margin-left: 2.5em !important;
  }
  .u-mr2_5em--sp {
    margin-right: 2.5em !important;
  }
  .u-pt2_5em--sp {
    padding-top: 2.5em !important;
  }
  .u-pb2_5em--sp {
    padding-bottom: 2.5em !important;
  }
  .u-pl2_5em--sp {
    padding-left: 2.5em !important;
  }
  .u-pr2_5em--sp {
    padding-right: 2.5em !important;
  }
  .u-p2_5em--sp {
    padding: 2.5em !important;
  }
  .u-m3em--sp {
    margin: 3em !important;
  }
  .u-mt3em--sp {
    margin-top: 3em !important;
  }
  .u-mb3em--sp {
    margin-bottom: 3em !important;
  }
  .u-ml3em--sp {
    margin-left: 3em !important;
  }
  .u-mr3em--sp {
    margin-right: 3em !important;
  }
  .u-pt3em--sp {
    padding-top: 3em !important;
  }
  .u-pb3em--sp {
    padding-bottom: 3em !important;
  }
  .u-pl3em--sp {
    padding-left: 3em !important;
  }
  .u-pr3em--sp {
    padding-right: 3em !important;
  }
  .u-p3em--sp {
    padding: 3em !important;
  }
  .u-m3_5em--sp {
    margin: 3.5em !important;
  }
  .u-mt3_5em--sp {
    margin-top: 3.5em !important;
  }
  .u-mb3_5em--sp {
    margin-bottom: 3.5em !important;
  }
  .u-ml3_5em--sp {
    margin-left: 3.5em !important;
  }
  .u-mr3_5em--sp {
    margin-right: 3.5em !important;
  }
  .u-pt3_5em--sp {
    padding-top: 3.5em !important;
  }
  .u-pb3_5em--sp {
    padding-bottom: 3.5em !important;
  }
  .u-pl3_5em--sp {
    padding-left: 3.5em !important;
  }
  .u-pr3_5em--sp {
    padding-right: 3.5em !important;
  }
  .u-p3_5em--sp {
    padding: 3.5em !important;
  }
  .u-m4em--sp {
    margin: 4em !important;
  }
  .u-mt4em--sp {
    margin-top: 4em !important;
  }
  .u-mb4em--sp {
    margin-bottom: 4em !important;
  }
  .u-ml4em--sp {
    margin-left: 4em !important;
  }
  .u-mr4em--sp {
    margin-right: 4em !important;
  }
  .u-pt4em--sp {
    padding-top: 4em !important;
  }
  .u-pb4em--sp {
    padding-bottom: 4em !important;
  }
  .u-pl4em--sp {
    padding-left: 4em !important;
  }
  .u-pr4em--sp {
    padding-right: 4em !important;
  }
  .u-p4em--sp {
    padding: 4em !important;
  }
  .u-m4_5em--sp {
    margin: 4.5em !important;
  }
  .u-mt4_5em--sp {
    margin-top: 4.5em !important;
  }
  .u-mb4_5em--sp {
    margin-bottom: 4.5em !important;
  }
  .u-ml4_5em--sp {
    margin-left: 4.5em !important;
  }
  .u-mr4_5em--sp {
    margin-right: 4.5em !important;
  }
  .u-pt4_5em--sp {
    padding-top: 4.5em !important;
  }
  .u-pb4_5em--sp {
    padding-bottom: 4.5em !important;
  }
  .u-pl4_5em--sp {
    padding-left: 4.5em !important;
  }
  .u-pr4_5em--sp {
    padding-right: 4.5em !important;
  }
  .u-p4_5em--sp {
    padding: 4.5em !important;
  }
  .u-m5em--sp {
    margin: 5em !important;
  }
  .u-mt5em--sp {
    margin-top: 5em !important;
  }
  .u-mb5em--sp {
    margin-bottom: 5em !important;
  }
  .u-ml5em--sp {
    margin-left: 5em !important;
  }
  .u-mr5em--sp {
    margin-right: 5em !important;
  }
  .u-pt5em--sp {
    padding-top: 5em !important;
  }
  .u-pb5em--sp {
    padding-bottom: 5em !important;
  }
  .u-pl5em--sp {
    padding-left: 5em !important;
  }
  .u-pr5em--sp {
    padding-right: 5em !important;
  }
  .u-p5em--sp {
    padding: 5em !important;
  }
  .u-m5_5em--sp {
    margin: 5.5em !important;
  }
  .u-mt5_5em--sp {
    margin-top: 5.5em !important;
  }
  .u-mb5_5em--sp {
    margin-bottom: 5.5em !important;
  }
  .u-ml5_5em--sp {
    margin-left: 5.5em !important;
  }
  .u-mr5_5em--sp {
    margin-right: 5.5em !important;
  }
  .u-pt5_5em--sp {
    padding-top: 5.5em !important;
  }
  .u-pb5_5em--sp {
    padding-bottom: 5.5em !important;
  }
  .u-pl5_5em--sp {
    padding-left: 5.5em !important;
  }
  .u-pr5_5em--sp {
    padding-right: 5.5em !important;
  }
  .u-p5_5em--sp {
    padding: 5.5em !important;
  }
  .u-m6em--sp {
    margin: 6em !important;
  }
  .u-mt6em--sp {
    margin-top: 6em !important;
  }
  .u-mb6em--sp {
    margin-bottom: 6em !important;
  }
  .u-ml6em--sp {
    margin-left: 6em !important;
  }
  .u-mr6em--sp {
    margin-right: 6em !important;
  }
  .u-pt6em--sp {
    padding-top: 6em !important;
  }
  .u-pb6em--sp {
    padding-bottom: 6em !important;
  }
  .u-pl6em--sp {
    padding-left: 6em !important;
  }
  .u-pr6em--sp {
    padding-right: 6em !important;
  }
  .u-p6em--sp {
    padding: 6em !important;
  }
  .u-m6_5em--sp {
    margin: 6.5em !important;
  }
  .u-mt6_5em--sp {
    margin-top: 6.5em !important;
  }
  .u-mb6_5em--sp {
    margin-bottom: 6.5em !important;
  }
  .u-ml6_5em--sp {
    margin-left: 6.5em !important;
  }
  .u-mr6_5em--sp {
    margin-right: 6.5em !important;
  }
  .u-pt6_5em--sp {
    padding-top: 6.5em !important;
  }
  .u-pb6_5em--sp {
    padding-bottom: 6.5em !important;
  }
  .u-pl6_5em--sp {
    padding-left: 6.5em !important;
  }
  .u-pr6_5em--sp {
    padding-right: 6.5em !important;
  }
  .u-p6_5em--sp {
    padding: 6.5em !important;
  }
  .u-m7em--sp {
    margin: 7em !important;
  }
  .u-mt7em--sp {
    margin-top: 7em !important;
  }
  .u-mb7em--sp {
    margin-bottom: 7em !important;
  }
  .u-ml7em--sp {
    margin-left: 7em !important;
  }
  .u-mr7em--sp {
    margin-right: 7em !important;
  }
  .u-pt7em--sp {
    padding-top: 7em !important;
  }
  .u-pb7em--sp {
    padding-bottom: 7em !important;
  }
  .u-pl7em--sp {
    padding-left: 7em !important;
  }
  .u-pr7em--sp {
    padding-right: 7em !important;
  }
  .u-p7em--sp {
    padding: 7em !important;
  }
  .u-m7_5em--sp {
    margin: 7.5em !important;
  }
  .u-mt7_5em--sp {
    margin-top: 7.5em !important;
  }
  .u-mb7_5em--sp {
    margin-bottom: 7.5em !important;
  }
  .u-ml7_5em--sp {
    margin-left: 7.5em !important;
  }
  .u-mr7_5em--sp {
    margin-right: 7.5em !important;
  }
  .u-pt7_5em--sp {
    padding-top: 7.5em !important;
  }
  .u-pb7_5em--sp {
    padding-bottom: 7.5em !important;
  }
  .u-pl7_5em--sp {
    padding-left: 7.5em !important;
  }
  .u-pr7_5em--sp {
    padding-right: 7.5em !important;
  }
  .u-p7_5em--sp {
    padding: 7.5em !important;
  }
  .u-m8em--sp {
    margin: 8em !important;
  }
  .u-mt8em--sp {
    margin-top: 8em !important;
  }
  .u-mb8em--sp {
    margin-bottom: 8em !important;
  }
  .u-ml8em--sp {
    margin-left: 8em !important;
  }
  .u-mr8em--sp {
    margin-right: 8em !important;
  }
  .u-pt8em--sp {
    padding-top: 8em !important;
  }
  .u-pb8em--sp {
    padding-bottom: 8em !important;
  }
  .u-pl8em--sp {
    padding-left: 8em !important;
  }
  .u-pr8em--sp {
    padding-right: 8em !important;
  }
  .u-p8em--sp {
    padding: 8em !important;
  }
  .u-m8_5em--sp {
    margin: 8.5em !important;
  }
  .u-mt8_5em--sp {
    margin-top: 8.5em !important;
  }
  .u-mb8_5em--sp {
    margin-bottom: 8.5em !important;
  }
  .u-ml8_5em--sp {
    margin-left: 8.5em !important;
  }
  .u-mr8_5em--sp {
    margin-right: 8.5em !important;
  }
  .u-pt8_5em--sp {
    padding-top: 8.5em !important;
  }
  .u-pb8_5em--sp {
    padding-bottom: 8.5em !important;
  }
  .u-pl8_5em--sp {
    padding-left: 8.5em !important;
  }
  .u-pr8_5em--sp {
    padding-right: 8.5em !important;
  }
  .u-p8_5em--sp {
    padding: 8.5em !important;
  }
  .u-m9em--sp {
    margin: 9em !important;
  }
  .u-mt9em--sp {
    margin-top: 9em !important;
  }
  .u-mb9em--sp {
    margin-bottom: 9em !important;
  }
  .u-ml9em--sp {
    margin-left: 9em !important;
  }
  .u-mr9em--sp {
    margin-right: 9em !important;
  }
  .u-pt9em--sp {
    padding-top: 9em !important;
  }
  .u-pb9em--sp {
    padding-bottom: 9em !important;
  }
  .u-pl9em--sp {
    padding-left: 9em !important;
  }
  .u-pr9em--sp {
    padding-right: 9em !important;
  }
  .u-p9em--sp {
    padding: 9em !important;
  }
  .u-m9_5em--sp {
    margin: 9.5em !important;
  }
  .u-mt9_5em--sp {
    margin-top: 9.5em !important;
  }
  .u-mb9_5em--sp {
    margin-bottom: 9.5em !important;
  }
  .u-ml9_5em--sp {
    margin-left: 9.5em !important;
  }
  .u-mr9_5em--sp {
    margin-right: 9.5em !important;
  }
  .u-pt9_5em--sp {
    padding-top: 9.5em !important;
  }
  .u-pb9_5em--sp {
    padding-bottom: 9.5em !important;
  }
  .u-pl9_5em--sp {
    padding-left: 9.5em !important;
  }
  .u-pr9_5em--sp {
    padding-right: 9.5em !important;
  }
  .u-p9_5em--sp {
    padding: 9.5em !important;
  }
  .u-m10em--sp {
    margin: 10em !important;
  }
  .u-mt10em--sp {
    margin-top: 10em !important;
  }
  .u-mb10em--sp {
    margin-bottom: 10em !important;
  }
  .u-ml10em--sp {
    margin-left: 10em !important;
  }
  .u-mr10em--sp {
    margin-right: 10em !important;
  }
  .u-pt10em--sp {
    padding-top: 10em !important;
  }
  .u-pb10em--sp {
    padding-bottom: 10em !important;
  }
  .u-pl10em--sp {
    padding-left: 10em !important;
  }
  .u-pr10em--sp {
    padding-right: 10em !important;
  }
  .u-p10em--sp {
    padding: 10em !important;
  }
  .u-mAuto--sp {
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .u-pAuto--sp {
    padding-left: auto !important;
    padding-right: auto !important;
  }
  .u-m0--sp {
    margin: 0 !important;
  }
  .u-mt0--sp {
    margin-top: 0 !important;
  }
  .u-mb0--sp {
    margin-bottom: 0 !important;
  }
  .u-ml0--sp {
    margin-left: 0 !important;
  }
  .u-mr0--sp {
    margin-right: 0 !important;
  }
  .u-pt0--sp {
    padding-top: 0 !important;
  }
  .u-pb0--sp {
    padding-bottom: 0 !important;
  }
  .u-pl0--sp {
    padding-left: 0 !important;
  }
  .u-pr0--sp {
    padding-right: 0 !important;
  }
  .u-p0--sp {
    padding: 0 !important;
  }
}
/* =================================================
 Layout
================================================= */
.u-blockCenter {
  margin-left: auto;
  margin-right: auto;
}

.u-tdUnderline {
  text-decoration: underline;
}

/*----------------------------------------------------------------
	Print
-----------------------------------------------------------------*/
@media print {
  body {
    -webkit-print-color-adjust: exact;
  }
}

/**------2023/10/31 ---- */
	.c-btn3, .c-btn3--red {
    width: 500px;
    height: 60px;
    background-color: #1f497d;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #fff !important;
    border: none;
    margin-top: 20px;  /* 上下のマージンを20pxに設定してスペースを減少させます。 */
	margin-left:20px;
}


/* ページトップ 開催日程*/
.c-btn-top {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #ad002d;
    color: #fff;
    width: fit-content;
    text-align: center;
    padding: 10px 30px;
    column-gap: 20px;
	font-weight: bold;
	font-size: 1.6rem;
}

.c-btn3::after {
    content: "";
    display: block;
    min-width: 16px;
    width: 16px;
    height: 1em;
    background-size: contain;
    background-position: center;
    margin-left: 10px;
    transition: all 0.25s ease;
	background-image: url(https://ems.eireneuniversity.org/cms/wp-content/uploads/ico-arrow1-wh.svg);
    background-repeat: no-repeat;
}


.right-column .overview1 .entr-top {
    border-bottom: 1px solid #ddd; /* 区切り線 */
}

.entry-dates {
    font-size: 1.2em; /* サイズを大きくする */
    font-weight: bold; /* 太字にする */
    margin-bottom: 0.5rem; /* 他のテキストとの間にスペースを追加する */
}
.right-column .overview1 .entry-top div {
    margin-bottom: 0.5rem; /* スペーシング */
}

.right-column .overview1 .entry-top div label {
    display: inline-block;
    width: 90px; /* 項目名の幅を設定 */
    font-weight: bold; /* 太字にする */
}

.right-column .overview1 .entry-top {
    border-bottom: 1px solid #ddd; /* 区切り線 */
    margin-bottom: 2rem;
    padding-bottom: 2rem;
}

.right-column .overview1 .entry-top div {
    margin-bottom: 1rem; /* スペーシング */
}

.right-column .overview1.entry-top div label {
    display: inline-block;
    width: 145px; /* 項目名の幅を設定 */
    font-weight: bold; /* 太字にする */
}

/* 開催日程*/
.p-program-single-sec-overview .entry {
    border-bottom: 1px solid #ddd; /* 区切り線 */
    margin-bottom: 2rem;
    padding-bottom: 2rem;
}

.p-program-single-sec-overview .entry div {
    margin-bottom: 1rem; /* スペーシング */
}

.p-program-single-sec-overview .entry div label {
    display: inline-block;
    width: 165px; /* 項目名の幅を設定 */
    font-weight: bold; /* 太字にする */
}
	
/* Mobile Styles */
@media (max-width: 767px) {
    .p-program-single-sec-overview .entry div {
        margin-bottom: 0.25rem; /* スペーシング (モバイル) */
    }
}

.container {
    display: flex;
    flex-wrap: wrap;
}

.left-column {
    flex: 4;  /* 左カラムの幅を全体の3割に設定 */
    padding: 20px;
}

.right-column {
    flex: 6;  /* 右カラムの幅を全体の7割に設定 */
    padding: 20px;
}

/* Mobile Styles */
@media (max-width: 767px) {
    .left-column, .right-column {
        flex: 100%;
    }
}

/* --------- 2023/11/01追加ーーーー hero-section*/

.hero-section {
    position: relative;
    width: 100vw;
    min-height: 600px;
    background-size: cover;
    background-position: center;
    display: flex;
    justify-content: center; /* Center the wrapper horizontally */
    padding: 50px;
    margin-top: 0px;
}

.hero-wrapper {
    display: flex;
    max-width: 1200px;  /* Set the maximum width */
    width: 100%;
    justify-content: space-between; /* Distribute children (title and description) evenly */
}

.hero-title {
    flex: 1;
	background-color: rgba(173,0,45,1);
    padding: 20px;
    margin-right: 120px;  /* Adjust this value for the desired space */
    align-self: flex-end;  /* Align to the bottom */
    min-width:400px;
}

.hero-title h1 {
    color: white;
    font-size: 2em;
}

.tagline {
	color: white;
	}

.hero-description {
    min-width: 400px;  /* Set a fixed width, adjust as needed */
	max-width: 450px;
    background-color: rgba(255, 255, 255, 0.8);
    padding: 20px;
    margin-left: 50px;  /* Adjust this value for the desired space */
    align-self: flex-start;  /* Align to the top */
}

/* For Mobile */
@media (max-width: 768px) {
    .hero-description {
	max-width: 100%;
    margin-left: 20px;  /* Adjust this value for the desired space */
    align-self: flex-start;  /* Align to the top */
    }
}
	
.hero-description ul {
    list-style-type: none;
    padding-left: 0;
	margin-bottom:20px;
}

.hero-description span {
	    vertical-align: middle;
	display:inline-block;
}

.hero-category {
    font-size: 1.5rem;
    padding: 0.5em 1em;
    display: inline-flex;
    -webkit-box-align: center;
    align-items: center;
    justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    line-height: 1;
    border: solid 1px white;
    color: white;
    font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
    white-space: nowrap;
}

.hero-title-info {
    display: flex;
    align-items: center; /* 垂直方向の中央揃え */
}

.tagline, .hero-category {
    margin-right: 20px; /* これらの要素の間のスペース。必要に応じて調整 */
}

/* 一般的なスマートフォンの画面幅をターゲットとしたメディアクエリ */
@media (max-width: 768px) {

    .hero-section {
        flex-direction: column;
        align-items: center;
        padding-top: 0;
		margin-top:0;
        padding: 20px 0;
        min-height: auto;
        background-size: contain; /* リサイズ */
        background-repeat: no-repeat;
    }

    .hero-wrapper {
        flex-direction: column;
        width: 100%; /* 必要に応じて調整 */
        max-width: none;
        justify-content: center;
    }

    .hero-title {
        margin-right: 0;
        min-width: 100%; /* 100%に変更して画面の幅いっぱいにする */
    }
	
	.hero-title h1 {
    font-size: 1.5em; /* これは例です。サイズは必要に応じて調整してください */
}

    .hero-description {
        min-width: 100%; /* 100%に変更して画面の幅いっぱいにする */
        margin-left: 0;
    }
}


/* パソコンのデフォルトスタイル */
.overview {
    display: flex;
    flex-wrap: wrap;
    margin-top: 0px;
	margin-bottom:30px;
    justify-content: space-between;
}

.overview-card {
    flex: 1 1 calc(30% - 10px); /* 50%の幅を取るように設定 */
	margin:10px 10px;
	border: 1px solid #ccc; /* ボーダーを追加 */
    padding: 20px;
    box-sizing: border-box;
}

/* スマートフォン用のスタイル（画面幅が768px以下の場合） */
@media only screen and (max-width: 768px) {
    .overview-card {
        flex: 0 0 100%; /* 100%の幅を取るように設定 */
        margin: 20px 0; /* 上下のマージンを増やしてスペースを確保 */
    }
}

.overview-card label {
       font-weight: bold;
        display: inline-block; /* Make label inline-block to add width */
        min-width: 100px; /* Add a minimum width to create space after label */
    }

.p-program-single-sec-flow  {
    margin-top: 30px; /* ここでの30pxは例としています。必要に応じて値を調整してください。 */
}

.p-program-single-sec-overview {
    margin-top: 30px; /* ここでの30pxは例としています。必要に応じて値を調整してください。 */
}

.get-brochure input {
    margin: 0px;
}


/* スティッキーボタンコンテナのスタイル */
.sticky-buttons-container {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    display: flex;  /* 変更 */
    justify-content: center;
    background-color: rgba(0, 0, 0, 0.5);
    padding: 10px;
    height: 70px;
    transition: opacity 0.5s, visibility 0.5s;  /* visibilityプロパティのアニメーションも追加 */
    opacity: 0;  /* 変更 */
    visibility: hidden;  /* 追加 */
}

/**/

/* 資料ダウンロードボタンとCTAボタンの共通スタイル */
.sticky-buttons-container .c-btn3 {
    margin: 0 30px;  /* 両ボタンの間に適度な間隔を設ける */
    padding: 10px 20px;  /* パディング（例） */
    color: #fff;  /* 文字色（例：白） */
    background-color: #1f497d;  /* 背景色（例） */
    border: none;  /* 枠線なし */
    border-radius: 0px;  /* 角丸（例） */
    cursor: pointer;  /* カーソルポインタ */
    text-decoration: none;  /* テキスト装飾なし */
    height: 50px;  /* ここでボタンの高さを指定します */
    line-height: 50px;  /* テキストを垂直方向に中央揃えにするための設定 */
	margin-bottom:10px;
}

/* 資料ダウンロードボタンの個別スタイル（必要に応じて） */
.sticky-buttons-container .c-btn3:first-child {
    background-color: #ad002d;  /* 背景色を変更（例） */
}

/* CTAボタンの個別スタイル（必要に応じて） */
.sticky-buttons-container .c-btn3:last-child {
   	margin-bottom:0px;
}

/**/

/* 資料ダウンロードボタンとCTAボタンの共通スタイル */
.sticky-buttons-container .hero-cta-common {
    margin: 0 30px;  /* 両ボタンの間に適度な間隔を設ける */
    padding: 10px 20px;  /* パディング（例） */
    color: #fff;  /* 文字色（例：白） */
    background-color: #1f497d;  /* 背景色（例） */
    border: none;  /* 枠線なし */
    border-radius: 0px;  /* 角丸（例） */
    cursor: pointer;  /* カーソルポインタ */
    text-decoration: none;  /* テキスト装飾なし */
    height: 50px;  /* ここでボタンの高さを指定します */
    line-height: 50px;  /* テキストを垂直方向に中央揃えにするための設定 */
	margin-bottom:10px;
}

/* 資料ダウンロードボタンの個別スタイル（必要に応じて） */
.sticky-buttons-container .hero-cta-common:first-child {
    background-color: #ad002d;  /* 背景色を変更（例） */
}

/* CTAボタンの個別スタイル（必要に応じて） */
.sticky-buttons-container .hero-cta-common:last-child {
   	margin-bottom:0px;
}

@media (max-width: 767px) {
	 .sticky-buttons-container {
			padding:0px;
		 margin:0px;
		 height:auto;
	}
		.sticky-buttons-container .hero-cta-common {
		font-size: 14px; /* or any other size that fits well */
		width: 50%; /* ボタンの幅を50%に設定 */
        box-sizing: border-box; /* パディングとボーダーが幅に含まれるように設定 */
		 display: flex;
    justify-content: center;
    align-items: center;
    width: fit-content;
    text-align: center;
    padding: 0px;
    column-gap: 0px;
        border-radius: 0; /* border-radiusをゼロに設定 */
        margin: 0; /* ボタン間のマージンをゼロに設定 */
    }
	 .sticky-buttons-container  .hero-cta-common::after {
        content: none;
    }
	    .sticky-buttons-container .hero-cta-common:first-child,
    .sticky-buttons-container .hero-cta-common:last-child {
        width: 50%;
        margin: 0; /* マージンをゼロに設定 */
        border-radius: 0; /* border-radiusをゼロに設定 */
    }

}



@media (max-width: 767px) {
	 .sticky-buttons-container {
		padding:0px;
		 margin:0px;
		 height:auto;
	}
		.sticky-buttons-container .c-btn3 {
		font-size: 14px; /* or any other size that fits well */
		width: 50%; /* ボタンの幅を50%に設定 */
        box-sizing: border-box; /* パディングとボーダーが幅に含まれるように設定 */
		 display: flex;
    justify-content: center;
    align-items: center;
    width: fit-content;
    text-align: center;
    padding: 0px;
    column-gap: 0px;
        border-radius: 0; /* border-radiusをゼロに設定 */
        margin: 0; /* ボタン間のマージンをゼロに設定 */
    }
	 .sticky-buttons-container  .c-btn3::after {
        content: none;
    }
	    .sticky-buttons-container .c-btn3:first-child,
    .sticky-buttons-container .c-btn3:last-child {
        width: 50%;
        margin: 0; /* マージンをゼロに設定 */
        border-radius: 0; /* border-radiusをゼロに設定 */
    }

}

.nav-related_links_end {
    display: flex;
    justify-content: center;
    flex-wrap: wrap; /* これにより、ボタンが画面の幅を超える場合に改行されます */
	margin-bottom:0px;
	
}

.center-container {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 20vh; /* or any other height */
}


/* CTA form */
.frm_style_formidable-style {
	 font-family: "游ゴシック", "Yu Gothic", "YuGothic", "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "Helvetica Neue", "Helvetica", "sans-serif";
}

.overview-image {
	margin-top:50px;
	margin-bottom:-20px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.overview-image img {
    max-height: 400px;
    width: auto;
}

.hero-deadlines {
	margin-left:10px;
    display: flex;
    justify-content: center;
    font-weight: normal;
	font-size:18px;
	border-bottom: 1px solid currentColor;
    padding-bottom:0px; /* 線とテキストの間に少しスペースを追加 */
    display: inline-block;
	text-transform: none;
}

.margin-bottom20 {
	margin-bottom:20px;
}




.hero-cta {
	margin-left:0px;
	height:60px;
}

/* hero-cta-common */
.hero-cta-common {
	display: flex;
    align-items: center;
	width: 500px;
	height: 60px;
  	-webkit-box-pack: center;
  	-webkit-justify-content: center;
  	-ms-flex-pack: center;
  	justify-content: center;
  	margin: 0 auto;
    -ms-flex-align: center;
    padding: 0 40px 0 24px;
    font-size: 1.6rem;
    font-weight: bold;
    position: relative;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    text-decoration: none !important;
    justify-content: center;
    color: #fff !important;
    border: none;
    margin-top: 20px;  /* 上下のマージンを20pxに設定してスペースを減少させます。 */
}

.hero-cta-common:hover{
  background-color: #000;
  color: #fff;
  border-color: #000;
  opacity: 1;

}

.hero-cta-common:hover::after
{
  -webkit-animation: hoverAnime1-2 0.3s ease-out forwards;
          animation: hoverAnime1-2 0.3s ease-out forwards;
}


.hero-cta-common::after {
    content: "";
    display: block;
    min-width: 16px;
    position: absolute;
    top: 50%;
    right: 17px;
    margin-left: 10px;
    background-image: url(https://ems.eireneuniversity.org/cms/wp-content/uploads/ico-arrow1-wh.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: all 0.3s ease;
    transition: all 0.25s ease;
    width: 16px;
    height: 1em;
}

@media (max-width: 767px) {
    .hero-cta-common {
        margin-top: 10px;
		margin-left:0px;
		width: 100%;
		height: 60px;
    }
}

/* hero-cta-int */
.hero-cta-int {
	display: flex;
    align-items: center;
	width: 500px;
	height: 60px;
  	-webkit-box-pack: center;
  	-webkit-justify-content: center;
  	-ms-flex-pack: center;
  	justify-content: center;
  	margin: 0 auto;
    -ms-flex-align: center;
    padding: 0 40px 0 24px;
    font-size: 1.6rem;
    font-weight: bold;
    position: relative;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    text-decoration: none !important;
    justify-content: center;
    color: #fff !important;
    border: none;
    margin-top: 20px;  /* 上下のマージンを20pxに設定してスペースを減少させます。 */
}

.hero-cta-int:hover{
  background-color: #000;
  color: #fff;
  border-color: #000;
  opacity: 1;

}

.hero-cta-int:hover::after
{
  -webkit-animation: hoverAnime1-2 0.3s ease-out forwards;
          animation: hoverAnime1-2 0.3s ease-out forwards;
}


.hero-cta-int::after {
    content: "";
    display: block;
    min-width: 16px;
    position: absolute;
    top: 50%;
    right: 17px;
    margin-left: 10px;
    background-image: url(https://ems.eireneuniversity.org/cms/wp-content/uploads/ico-arrow1-wh.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transition: all 0.3s ease;
    transition: all 0.25s ease;
    width: 16px;
    height: 1em;
}

@media (max-width: 767px) {
    .hero-cta-int, .hero-cta-apply {
        margin-top: 10px;
		margin-left:0px;
		width: 100%;
		height: 60px;
    }
}

.red {
	background-color:#ad002d;
}


.blue {
	background-color: #1f497d;
}

.frm_form_field input {
    background-color: white !important;
	box-shadow:none;
}

.frm_form_field input:focus {
    box-shadow: none !important;
}

.frm_button_submit {
    border: none!important;
	-webkit-box-shadow:none !important; 
	box-shadow:none #ffffff !important;
	width: 100%;
    height: 50px;
    background-color: #AD002C;
    color: white;
    font-weight: 600;
}

/*-------------------------------------------*/
/*--------------- videos ----------------*/
/*-------------------------------------------*/
/* 基本スタイル */
.l-inner2.p-program-single.video {
    margin: 0 auto; /* 中央寄せ */
    padding: 20px; /* 内部の余白 */
}

/* ヒーローセクションスタイル */
.hero-section-video {
    position: relative;
    width: 100vw; /* ビューポートの幅全体に */
    background-color: rgba(173,0,45,1); /* 背景色指定 */
    display: flex;
    justify-content: center; /* 中央に配置 */
    padding: 50px 0; /* 上下の余白のみ指定 */
    margin-top: 60px;
	max-height:300px;
    max-width: none;
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
}

.hero-wrapper-video {
    display: flex;
	max-width:1200px;
    justify-content: space-between; /* 子要素を均等に配置 */
    align-items: center; /* 子要素を垂直中央に配置 */
    padding: 20px; /* 内部の余白 */
    box-sizing: border-box; /* パディングを含めた幅が100%になるように設定 */
    max-height: 300px;
    background-color: transparent; /* 背景色を透明に設定 */
}

/* ヒーロータイトル（左側） */
.hero-title-video {
    flex: 1; /* 子要素に均等なスペースを与える */
    margin-right: 20px; /* 右の余白 */
    align-self: flex-start;
    min-width: 400px;
    color: white; /* テキスト色指定 */
    background-color: transparent; /* 背景色を透明に設定 */
}


.hero-title-h1 h1 {
    font-size: 1.6em;
}

.hero-title-h2 h2{
    font-size: 1em;
	font-weight:normal;
}

/* ヒーローサイド（右側） */
.hero-side-video {
    margin-left: 20px; /* 左の余白 */
    width: 450px;
    background: white; /* 背景色指定 */
    align-self: flex-start;
    position: relative; /* 相対位置指定 */
	box-shadow: inset 0px 0px 1px 1px #DDDDDD; /* 軽い影を追加 */
}

.hero-description-video {
    padding: 20px;
}


/* メインコンテンツのスタイル */
.video-main {
    display: flex; /* Flexboxレイアウトを有効化 */
    justify-content: space-between; /* 子要素の間にスペースを作成 */
}

.video-main .video-and-description {
    flex: 1 0 60%; /* コンテンツの幅を60%に設定 */
}

.video-main .video-sidebar {
    flex: 1 0 35%; /* サイドバーの幅を35%に設定 */
    margin-left: 5%; /* コンテンツとの間に5%のスペースを作成 */
    font-size: 1em;
}

@media (max-width: 768px) {
    .hero-section-video {
        flex-direction: column;
    }

    .hero-wrapper-video {
        flex-direction: column;
        align-items: center;
        padding: 0;
    }

    .hero-title-video, .hero-side-video {
        width: 100%;
        margin: 0;
    }
.p-program-single.video > section {
    /* ここに無効化したいスタイルを指定 */
    /* 例: パディングやマージンをリセット */
    padding: 0;
    margin-top: 500px;
    /* その他のスタイルをリセット */
}
    .video-main {
        width: 100%;
    }
    .embedded-video {
        width: 100%; /* コンテナの幅を画面幅に合わせる */
        overflow: hidden; /* はみ出した内容を非表示にする */
    }

    .embedded-video iframe,
    .embedded-video object,
    .embedded-video embed {
        max-width: 100%; /* 動画の最大幅を画面幅に合わせる */
        height: auto; /* 高さを自動調整 */
    }
}

/* 選ばれる理由とプログラムの概要ページ */
.p-reason-strengths .c-cardlist1 img {
	max-width:387px; 
	margin-right:59px;
}

.p-program-strengths .c-cardlist1 img {
	max-width:387px; 
	margin-right:59px;
}

/* 投稿時のリンク埋め込み */
.wp-embedded-content { 
	width: 100%; 
	max-width: 100%; 
}


/* Base styles for blog content area */
/* Article Title */
.l-inner2.blog-content .p-blog-article .article-title {
    font-size: 28px;
    font-weight: bold;
    color: #333;
    margin-bottom: 16px;
}

/* Author Name */
.l-inner2.blog-content .p-blog-article .author-name {
    font-size: 16px;
    color: #666;
    margin-bottom: 12px;
}

/* Headings within Article */
.l-inner2.blog-content .p-blog-article h1,
.l-inner2.blog-content .p-blog-article h2,
.l-inner2.blog-content .p-blog-article h3 {
    color: #333;
    margin-top: 20px;
    margin-bottom: 10px;
}

.l-inner2.blog-content .p-blog-article h1 {
    font-size: 24px;
    font-weight: bold;
}

.l-inner2.blog-content .p-blog-article h2 {
    font-size: 20px;
    font-weight: bold;
}

.l-inner2.blog-content .p-blog-article h3 {
    font-size: 18px;
    font-weight: bold;
}

/* Article Body Text */
.l-inner2.blog-content .p-blog-article .article-body {
    font-size: 16px;
    color: #444;
    line-height: 1.6;
    margin-bottom: 20px;
}

/* Links in Text */
.l-inner2.blog-content .p-blog-article .article-body a {
    color: #0077cc;
    text-decoration: none; /* No underline by default */
}

.l-inner2.blog-content .p-blog-article .article-body a:hover {
    text-decoration: underline; /* Underline on hover */
}


/***---------------------------------****/
/***---------------------------------****/
/***---------------------------------****/
/***カスタマイズCSSから移動****/
/***---------------------------------****/
/***---------------------------------****/
/***---------------------------------****/
/***---------------------------------****/

.page-id-16917 .c-mv2,
.page-id-35 .c-mv2,
.page-id-27 .c-mv2 {
    margin: 0 auto; /* 特定のページだけで margin を変更 */
}

.page-id-16917 .c-ttl3 {
    margin: 80px 0 40px;
}

figcaption {
	text-align:center;
}

.wp-editor-container textarea.wp-editor-area {
    font-size: 20px;
}

.c-form {
	width:1000px;
	padding:20px;
	margin:0 auto 60px;
}


@media screen and (max-width: 799px) {
	.c-form {
	width:100%;
}
}

@media (min-width: 80em)
.c-form {
    max-width: 51rem;
}
@media (min-width: 64em)
.c-form {
    max-width: 40.3333333333rem;
}
@media (min-width: 48em)
.c-form {
    max-width: 33.5rem;
    margin-right: auto;
    margin-left: auto;
}

.c-ttl1 {
	line-height: 1.5;
}

@media screen and (max-width: 375px)
.c-mv1, .c-mv2 {
    height: auto !important;
}

.p-mv-contact {
    height: auto !important;
}

.c-hero__info h1 img {
    margin: 0 auto;
    width: 878px;
}

.c-hero__info h1 {
    margin: 10px 0 30px;
		font-size: 3.2rem;
		font-weight: bold;
    font-family: "游明朝", "Yu Mincho", "YuMincho", "Noto Serif JP", "Noto Serif JP", "Noto Serif Japanese", Georgia, "Hiragino Mincho ProN", "HGS明朝E", serif;
}

/* メインコンテンツ */
main.l-inner2.blog-content {
  max-width: 800px; /* 幅を800pxに設定 */
  margin: 0 auto; /* 中央揃え */
  padding: 0 15px; /* コンテンツとコンテナの間に少しスペースを設ける */
}

/* レスポンシブデザインのためのメディアクエリ */
@media (max-width: 799px) {
  main.l-inner2.blog-content {
    max-width: 100%;
    padding: 0 10px;
  }
}

/* カテゴリラベル */
main.l-inner2.blog-content .category-label {
  background-color: #ad002d;
  color: #ffffff;
  padding: 5px 10px; /* 内側の余白を設定 */
  display: inline-block; 
  margin: 5px 5px 5px 0px; 
  font-size: 0.8em;
}

/* 記事タイトル */
.article-title {
	font-family:游ゴシック, "Yu Gothic", YuGothic, "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, "Helvetica Neue", Helvetica, "sans-serif";
	font-size: 2.8rem;
	margin-top:10px;
}

/* 記事サブタイトル */
.article-sub-title {
	color: #666;
	font-size: 2rem;
  font-weight: bold;
  margin: 10px 0 10px;
}

@media screen and (max-width: 799px) {
  .article-title {
    font-size: 2rem; 
  }
 .article-sub-title {
	 color: #666;
	 margin-bottom: 10px;
	 font-size: 1em;
}
main.l-inner2.blog-content .c-post p{
		font-size: 1.1em !important;
}
}

/* 日付 */
main.l-inner2.blog-content .date {
	font-size:0.8em;
}

/* 著者情報 */
main.l-inner2.blog-content .author-container {
  display: flex;
  align-items: center; 
	margin:20px 0 20px;
}

main.l-inner2.blog-content .author-photo img {
  margin-right: 10px; 
  width: 50px; /* 写真の幅 */
  height: 50px; /* 写真の高さ */
  border-radius: 50%; /* 丸い形状 */
}

main.l-inner2.blog-content .author-info {
  display: flex;
  flex-direction: column; 
}

main.l-inner2.blog-content .author-info p {
  margin: 0;
}


/*アイキャッチ*/
/*
main.l-inner2.blog-content .blog-eye {
  margin:20px 0 -30px 0;
}
*/

main.l-inner2.blog-content .c-list1 {
  list-style-type: none !important;
}

main.l-inner2.blog-content .blog-eye img {
  display: block;
  max-width: 100%;
  height: auto;
  margin-bottom: 10px; /* マージンを追加 */
}

/* 関連記事セクション */
article.p-blog-article .c-nav-block1 {
  background-color: #f8f8f8;
  padding: 20px;
}

article.p-blog-article .p-blog-list2 {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  gap: 20px;
}

article.p-blog-article .c-post {
	padding-bottom:0px;
	font-family:游明朝, "Yu Mincho", YuMincho, "Noto Serif JP", "Noto Serif JP", "Noto Serif Japanese", "Hiragino Mincho ProN", HGS明朝E, serif;
}

/*ブログ設定*/
.post-link-thumb {
    display: flex; 
    flex-direction: column; /* 要素を縦方向に並べる */
    align-items: flex-start; /* 左揃え */
    justify-content: flex-start; /* 子要素を上端から順に配置 */
    overflow: hidden;
    margin-left: 20px;
    height: 100%; 
}

.post-link-thumb img {
    flex-shrink: 0; /* 画像が縮小されないようにする */
    order: 3; /* 画像を最後に配置 */
    height: auto; /* 高さを自動調整 */
    width: 100%; /* 幅をコンテナの100%に設定 */
	max-height:200px;
    object-fit: contain; /* 縦横比を維持しつつコンテナに合わせて調整 */
}

.post-link-label {
		align-items:flex-start;
    order: 1; /* 「前の記事」ラベルを最上部に配置 */
    font-size: smaller; /* より小さなフォントサイズ */
    color: grey; /* グレーのフォントカラー */
    display: block; /* ブロックレベルの要素として表示 */
    margin-bottom: 5px; /* 下に少しスペースを追加 */
}

.post-link-thumb span {
	align-items:flex-start;
	order: 2; /* 記事タイトルを中間に配置 */
    text-align: left; /* テキストを左寄せにする */
    flex-grow: 1; /* テキストに必要なスペースを割り当てる */
    word-break: break-word;
}

/*ブログ記事 メルマガ登録*/
.p-blog-newsletter{
	margin:80px 0;
}

.p-blog-newsletter p{
	margin:0 10px !important;
}

.p-blog-newsletter .c-bnr2{
	height: 140px; padding: 0 20px 0 20px;
}

.p-blog-newsletter .c-bnr2 .h3{
 margin: 0 20px 0 0 !important;
	font-size:2em; 
		font-family:游明朝, "Yu Mincho", YuMincho, "Noto Serif JP", "Noto Serif JP", "Noto Serif Japanese", "Hiragino Mincho ProN", HGS明朝E, serif;
}

.p-blog-newsletter .c-btn1{
	width: 180px;
}

.p-blog-article .c-pager2{
	 padding:24px 0;
	border-top: solid 1px #dddddd;
}


@media screen and (max-width: 767px) {
	.post-link-thumb {
		font-size:1.2em;
}
		.post-link-thumb span{
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3; /* 表示したい最大行数 */
  overflow: hidden;
  text-overflow: ellipsis;
}
  .p-blog-newsletter {
    display: flex;
    flex-direction: column;
    align-items: center;
		margin-bottom:0;
		font-size:1rem;
  }
  
  .p-blog-newsletter  .c-bnr2 {
		height:100%;
    width: 100%;
    padding: 10px;
    text-align: center;
    box-sizing: border-box;
  }

  .p-blog-newsletter p {
    margin-right: 0; 
    margin-bottom: 0px !important; 
    font-size: 1em; /* フォントサイズを調整 */
  }
	
  .p-blog-newsletter  .c-btn1 {
    width: 100%;
  }
}

/*ブログ 見出し調整*/
article.p-blog-article h2{
	font-size:1.4em;
}

article.p-blog-article h3{
	font-size:1.1em;
}

article.p-blog-articlet h2::after {
    content: none;
}

article.p-blog-article h4{
		font-size:1em;
	font-family: 游ゴシック, "Yu Gothic", YuGothic, "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, "Helvetica Neue", Helvetica, "sans-serif";	
	line-height: 2em;
	padding-left: 0; 
	border-left: none;
}
article.p-blog-article .c-post p{
		margin-bottom: 2em !important;
}

article.p-blog-articlet .c-post ol{
padding-left: 36px;
	margin-bottom: 2em;
}

article.p-blog-article .summary{
	background-color: #F6F2EB;
    padding: 3rem;
	margin-bottom:3em;
}

article.p-blog-article .summary p {
	margin-bottom: 0 !important;
}

article.p-blog-article .c-post p{
    margin-bottom: 1em;
}

@media screen and (max-width: 768px) {
	.c-mv1.blog{
		padding-bottom:30px;
		border-bottom: solid 1px #dddddd;
	}
    .bg.blog {
        display: none;
    }
.c-ttl1.blog{
	padding-bottom: 0px;
				font-size:1.8em;
	}
	.l-col2.blog{
		margin-top: 20px;
	}
	article.p-blog-article h2, h3, h4{
	font-family: 游ゴシック, "Yu Gothic", YuGothic, "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, "Helvetica Neue", Helvetica, "sans-serif";	
	border-bottom: none;
	padding-bottom: 0;
	position:none;
	margin: 1em 0 0 0 !important;
	line-height: 2em;
}
	article.p-blog-article h2{
	font-size:1.4em;
}
		article.p-blog-article h2::after{
	content:none;
}
}

@media (max-width: 768px) {
    .hero-section-video {
        padding: 30px 0; /* スマートフォンでの上下の余白を調整 */
    }

    .hero-wrapper-video {
        flex-direction: column; /* 要素を縦に並べ替え */
        max-width: 100%; /* 最大幅を100%に設定 */
        padding: 15px; /* スマートフォンでのパディングを調整 */
    }

    .hero-title-video, .hero-description-video {
        margin-right: 0; /* 右マージンを0に */
        margin-left: 0; /* 左マージンを0に */
        min-width: auto; /* 最小幅を自動に設定 */
    }

    .hero-title-video, .hero-description-video, .hero-side-video {
        width: 100%; /* 幅を100%に設定 */
    }
}

@media screen and (min-width: 783px) {
    body.admin-bar .h-header {
        margin-top: 32px;
    }
}

@media screen and (max-width: 782px) {
    body.admin-bar .h-header {
        margin-top: 46px;
    }
}

/***---------------------------------****/
/***---------------------------------****/
/***---------------------------------****/
/***移動終了***/
/***---------------------------------****/
/***---------------------------------****/
/***---------------------------------****/
/***---------------------------------****/

/* リンク要素のデフォルト下線を消す & ホバー時も消す */
.lc_link,
.lc_link:link,
.lc_link:visited,
.lc_link:active {
  text-decoration: none !important; /* 追加 */
  color: #000 !important;           /* 必要に応じて文字色を指定 */
}

.lc_link::before,
.lc_link::after {
  content: none !important; /* 記号や文字を強制的に削除する */
  background: none !important; /* アイコンフォントの場合は background もリセット */
}
.lc_box {
  display: flex;
  align-items: center; /* 画像とテキストを縦方向に中央寄せ */
  justify-content: flex-start;
  border: 1px solid #7f7f7f;
  /* padding: 10px 20px; ← ここを調整 */
  /* margin: 0 20px 20px; ← ここを調整 */

  /* 例として上下の余白を小さめにして、左右も少しだけ余白に */
  padding: 5px 20px;   /* ここを狭くすると画像上下のスペースが小さくなる */
  margin: 0 0 20px;    /* 左右の余白を削除し、下だけに空きを作る例 */
}

/* サムネ枠の設定 */
.lc_thumb {
  flex: 0 0 160px;  /* 画像の横幅を固定 */
  max-width: 200px;
  margin-right: 20px; /* テキストとの余白 */
}

.lc_thumb img {
  max-width: 100%;   /* 親要素 .lc_thumb の幅以上には伸ばさない */
  height: auto;
  max-height: 150px; /* 高さもいちおう120px上限をキープ */
}
/* テキスト枠の設定 */
.lc_content {
  flex: 1; /* テキスト部分は伸縮できるように */
}

/* タイトル枠の設定 */
.lc_title {
  font-weight: 600;
  font-size: 18px;
  padding-bottom: 10px;
}

/* 説明文の設定 */
.lc_description {
  font-size: 14px;
}

/* ここからスマホ用画面の設定 */
@media only screen and (max-width: 480px) {
  .lc_box {
    flex-direction: column; /* スマホの時は縦型にする */
    justify-content: center;
    text-align: center;
    /* ここも上下の余白を減らすなら調整できる */
    padding: 10px; /* スマホ時は多少余白を残す例 */
    margin: 0 0 20px;
  }
  .lc_thumb {
    width: 100%;
    margin-right: 0;
    margin-bottom: 20px;
  }
  .lc_thumb img {
    max-width: 100%;
  }
  .lc_content {
    width: 100%;
  }
  .lc_title {
    font-size: 18px;
  }
  .lc_description {
    font-size: 14px;
  }
	.lc_link::before,
.lc_link::after {
  content: none !important; /* 記号や文字を強制的に削除する */
  background: none !important; /* アイコンフォントの場合は background もリセット */
}
}