@charset "UTF-8";
html {
  line-height: 1.15;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%
}

h1 {
  font-size: 2em;
  margin: .67em 0
}

dl dl, dl ol, dl ul, ol dl, ul dl {
  margin: 0
}

ol ol, ol ul, ul ol, ul ul {
  margin: 0
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible
}

main {
  display: block
}

pre {
  font-family: monospace, monospace;
  font-size: 1em
}

abbr[title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted
}

b, strong {
  font-weight: bolder
}

code, kbd, samp {
  font-family: monospace, monospace;
  font-size: 1em
}

small {
  font-size: 80%
}

svg:not(:root) {
  overflow: hidden
}

button, input, select {
  margin: 0
}

button {
  overflow: visible;
  text-transform: none
}

[type=button], [type=reset], [type=submit], button {
  -webkit-appearance: button
}

fieldset {
  padding: .35em .75em .625em
}

input {
  overflow: visible
}

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  white-space: normal
}

progress {
  display: inline-block;
  vertical-align: baseline
}

select {
  text-transform: none
}

textarea {
  margin: 0;
  overflow: auto
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px
}

::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
  height: auto
}

::-webkit-input-placeholder {
  color: inherit;
  opacity: .54
}

::-webkit-search-decoration {
  -webkit-appearance: none
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit
}

::-moz-focus-inner {
  border-style: none;
  padding: 0
}

:-moz-focusring {
  outline: 1px dotted ButtonText
}

:-moz-ui-invalid {
  box-shadow: none
}

details {
  display: block
}

dialog {
  background-color: #fff;
  border: solid;
  color: #000;
  display: block;
  height: -moz-fit-content;
  height: -webkit-fit-content;
  height: fit-content;
  left: 0;
  margin: auto;
  padding: 1em;
  position: absolute;
  right: 0;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content
}

dialog:not([open]) {
  display: none
}

summary {
  display: list-item
}

template {
  display: none
}

.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0
}

.slick-list:focus {
  outline: 0
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand
}

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

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto
}

.slick-track:after, .slick-track:before {
  content: "";
  display: table
}

.slick-track:after {
  clear: both
}

.slick-loading .slick-track {
  visibility: hidden
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none
}

[dir=rtl] .slick-slide {
  float: right
}

.slick-slide img {
  display: block
}

.slick-slide.slick-loading img {
  display: none
}

.slick-slide.dragging img {
  pointer-events: none
}

.slick-initialized .slick-slide {
  display: block
}

.slick-loading .slick-slide {
  visibility: hidden
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent
}

.slick-arrow.slick-hidden {
  display: none
}

@font-face {
  font-family: "Yu Gothic M";
  src: local("Yu Gothic Medium")
}

@font-face {
  font-family: "Yu Gothic M";
  src: local("Yu Gothic Bold");
  font-weight: 700
}

@font-face {
  font-family: MyHiragino;
  src: local("HiraginoSans-W3"), local("ヒラギノ角ゴ ProN W3"), local("Hiragino Kaku Gothic ProN")
}

@font-face {
  font-family: MyHiragino;
  font-weight: 700;
  src: local("HiraginoSans-W6"), local("ヒラギノ角ゴ ProN W6"), local("Hiragino Kaku Gothic ProN W6")
}

@font-face {
  font-family: MyHiragino;
  font-weight: 800;
  src: local("HiraginoSans-W8"), local("ヒラギノ角ゴ StdN"), local("Hiragino Kaku Gothic StdN")
}

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

html {
  height: 100%;
  font-size: 62.5%
}

body {
  margin: 0;
  padding: 0;
  height: 100%;
  color: #151515;
  font-size: 2.8rem;
  font-family: dnp-shuei-mgothic-std, sans-serif;
  line-height: 1.57143
}

a {
  text-decoration: none
}

img {
  max-width: 100%;
  vertical-align: bottom
}

.main {
  overflow: hidden
}

.inner {
  margin: 0 auto;
  padding: 0 80px;
  max-width: 1280px
}

.inner-02 {
  max-width: 1120px
}

.header {
  display: flex;
  align-items: center;
  padding: 48px 11%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0
}

.header .logo {
  width: 180px
}

.header p {
  font-size: 1.4rem;
  font-weight: 600;
  margin-left: 36px;
  flex: 1
}

.footer {
  text-align: center;
  padding: 0 0 5px
}

.footer .logo {
  width: 237px;
  margin: 0 auto 43px
}

.footer p {
  font-size: 1.6rem;
  line-height: 1.625;
  letter-spacing: .06em;
  margin: 0
}

.footer p a {
  color: #151515
}

.footer .copyright {
  font-size: 1.6rem;
  font-weight: 600;
  font-family: Montserrat, sans-serif;
  letter-spacing: .12em;
  opacity: .5;
  margin: 36px auto 84px
}

.menu-trigger {
  position: fixed;
  top: 10px;
  right: 17.5px;
  padding-top: 33px;
  color: #df002b;
  font-size: 1.2rem;
  font-family: MyHiragino;
  font-weight: 700;
  line-height: 1;
  z-index: 12
}

.menu-trigger span {
  display: block;
  position: absolute;
  top: -18px;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  border-top: 4px solid #ff6000;
  width: 40px;
  height: 0;
  transition: opacity .2s
}

.menu-trigger:after, .menu-trigger:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  border-top: 4px solid #ff6000;
  width: 40px;
  height: 0;
  transition: all .2s
}

.menu-trigger:before {
  top: -40px
}

.menu-trigger:after {
  bottom: -5px
}

.menu-trigger.is-show>span {
  opacity: 0
}

.menu-trigger.is-show:before {
  top: -14px;
  width: 40px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}

.menu-trigger.is-show:after {
  bottom: 14px;
  width: 40px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg)
}

.menu-trigger p {
  margin: 0;
  padding: 0
}

.button {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 40px;
  border-radius: 50px;
  width: 460px;
  height: 88px;
  background-color: #ff6000;
  color: #fff
}

.button>span {
  font-size: 3.2rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: .12em
}

.button-wrap-fixed {
  display: flex;
  flex-direction: column;
  position: fixed;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 2
}

.button-block {
  background-image: url(../img/bg/bg_3.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  padding: 230px 0;
  display: flex;
  justify-content: center;
  align-items: center
}

.button-block .icon {
  margin-bottom: -3px
}

.button-block .icon::before {
  width: 31px
}

.button-block .icon-file {
  margin-right: 19px
}

.button-block .icon-mail {
  margin-right: 14px
}

.button .opacity {
  display: flex;
  justify-content: center;
  align-items: center
}

.button-mail {
  background-color: #2294ff
}

.section-10 .button {
  margin: 50px auto 0;
  font-size: 3.2rem;
  background: #ff5330
}

.button-fixed {
  font-size: 1.4rem;
  font-weight: 600;
  letter-spacing: .12em;
  color: #fff;
  text-align: center;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  padding: 19px;
  height: 213px;
  min-width: 4em;
}

.button-fixed-file {
  background-color: #ff5330;
  border-top-left-radius: 30px
}

.button-fixed-mail {
  background-color: #2294ff;
  border-bottom-left-radius: 30px
}

.button-fixed .opacity {
  display: flex;
  justify-content: center;
  align-items: center
}

.button-acordion {
  background: #ff6000;
  text-align: center;
  cursor: pointer;
  border-bottom-left-radius: 50px;
  border-bottom-right-radius: 50px;
  width: calc(100% + 16px);
  padding: 20px;
  margin: 0 -8px -8px
}

.button-acordion::before {
  content: 'もっと見る';
  font-size: 2.2rem;
  font-weight: 600;
  color: #fff;
  line-height: 1
}

.button-acordion:hover::before {
  opacity: .6
}

.button-acordion.is-open::before {
  content: '閉じる'
}

.icon {
  display: inline-block;
  line-height: 1
}

.icon::before {
  content: '';
  width: 1em;
  height: 1em;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  display: inline-block
}

.icon-file {
  margin-bottom: 15px
}

.icon-file::before {
  background-image: url(../img/icon/icon_file.png)
}

.section-10 .icon-file {
  margin-bottom: -3px;
  margin-right: 19px
}

.icon-mail {
  margin-bottom: 17px
}

.icon-mail::before {
  background-image: url(../img/icon/icon_mail.png)
}

.kv {
  background: url(../img/bg/bg_kv.jpg);
  background-size: cover;
  height: 100vh;
  min-height: 750px;
  position: relative;
  overflow: hidden
}

.kv-main {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50vw;
  height: 100vh;
  min-height: 100%;
  position: relative;
  z-index: 2
}

.kv-copy {
  width: 100%;
  max-width: calc(1056px / 2);
  margin: 0 auto;
  padding: 0 80px;
  padding: 0;
  position: relative;
  z-index: 1
}

.kv-copy-wrap {
  position: relative;
  width: 100%
}

.kv-slider {
  width: 50vw;
  min-height: 100%;
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 0
}

.kv-slider .slick-track {
  height: calc(450px / 2)
}

.kv-slider .slick-slide:focus {
  outline: 0
}

.kv-slider .slick-vertical .slick-slide {
  border: none
}

.kv-slider .slick-slide img {
  width: 100%;
  border: 8px solid #ffe116;
  border-bottom: none
}

.kv-slider-wrap {
  display: none
}

.kv-slider-wrap.slick-initialized {
  display: block
}

.kv-slider.pc {
  display: block
}

.kv-slider.sp {
  display: none
}

.kv-scroll {
  text-align: center;
  position: absolute;
  bottom: 40px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%)
}

.kv-scroll img {
  width: 63px
}

.kv-scroll p {
  font-family: Montserrat, sans-serif;
  font-size: 1.6rem;
  font-weight: 600;
  letter-spacing: .12em;
  margin: 0;
  text-shadow: 1px 1px 0 #fff, -1px -1px 0 #fff, -1px 1px 0 #fff, 1px -1px 0 #fff, 0 1px 0 #fff, 0 -1px 0 #fff, -1px 0 0 #fff, 1px 0 0 #fff
}

.kv .star {
  display: none;
  width: 26.54%;
  max-width: 140px;
  position: absolute;
  top: -23%;
  right: -2.5%;
  z-index: -1
}

.section-wrapper {
  padding: 150px 0;
  position: relative
}

.section-wrapper.section-10 {
  background-image: url(../img/bg/bg_4.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center
}

.section-title {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 4.6rem;
  margin: 0;
  position: relative;
  z-index: 1
}

.section-title-body {
  padding: 0 24px;
  text-align: center;
  line-height: 1.3;
  letter-spacing: .06em
}

.section-04 .section-title-body {
  padding: 0 82px
}

.section-06 .section-title-body {
  padding: 0 27px
}

.section-title::after, .section-title::before {
  content: '';
  display: inline-block;
  width: 61px;
  height: 62px;
  background: url(../img/logo_mark.png) no-repeat;
  background-size: contain
}

.section-title .en {
  display: block;
  font-family: Montserrat, sans-serif;
  font-size: 2rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: .12em;
  margin-top: 16px;
  opacity: .5
}

.section-02 .section-title {
  margin-bottom: 64px
}

.section-06 .section-title {
  font-size: 4.6rem
}

.section-lead {
  font-size: 2.4rem;
  line-height: 1.61765;
  text-align: center;
  letter-spacing: .06em;
  margin: 54px 0 0;
  position: relative;
  z-index: 1
}

.section-lead:not(:first-of-type) {
  margin-top: 34px
}

.section-04 .section-lead {
  margin-bottom: 85.5px
}

.section-lead .em-primary {
  font-size: 3.4rem;
  font-style: normal;
  color: #ff6000;
  line-height: 1
}

.section-lead .em-second {
  font-style: normal;
  color: #e6002d
}
.contents-block-class {
}
.contents-block-class .section-lead {
  font-size: 2.2rem;
  font-weight: 600;
  line-height: 1.4;
  margin-top: 44px
}

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

.bg-gray {
  background-color: #fafafa
}

.bg-curve-01 {
  background-image: url(../img/bg/bg_1.png);
  background-repeat: repeat-y;
  background-size: 2472px auto;
  background-position: left calc(50% + 8px) top -55px
}

.bg-curve-02 {
  background-image: url(../img/bg/bg_2.png);
  background-repeat: repeat-y;
  background-size: 2478px auto;
  background-position: left calc(50% + 0px) top -49px
}

.contents-block {
  background-color: #fff;
  padding: 80px 0;
  margin-top: 58px;
  border: 8px solid #ff6000;
  border-radius: 50px;
  position: relative
}

.section-04 .contents-block {
  margin-top: 40px
}

.section-09 .contents-block {
  border: none;
  padding: 0;
  margin-top: 58px;
  background: 0 0;
  border-radius: 0
}

.contents-block-change-image {
  width: 100%;
  max-width: 710px;
  display: block;
  margin: 70px auto 0
}

.contents-block-research-target {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 55px;
  border: 5px solid #efefef;
  border-radius: 20px;
  margin-top: 60px
}

.contents-block-research-target-logo {
  width: 190px
}

.contents-block-research-target p {
  font-size: 3.6rem;
  font-weight: 600;
  line-height: 1.94444;
  width: 430px;
  text-align: left;
  margin: 0 0 0 67px
}

.contents-block-research-target p span {
  font-size: 4.2rem
}

.contents-block-research-target p em {
  font-size: 5.2rem;
  font-style: normal;
  color: #e60020;
  line-height: 1;
  position: relative;
  z-index: 1
}

.contents-block-research-target p em::before {
  content: '';
  width: 100%;
  height: 14px;
  border-radius: 7px;
  background: #ffe116;
  position: absolute;
  left: 50%;
  bottom: -4px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: -1
}

.contents-block-feature-01 {
  border-color: #e60020;
  margin-top: 76px
}

.contents-block-feature-01 .contents-lead, .contents-block-feature-01 .contents-title-feature {
  color: #e60020
}

.contents-block-feature-02 {
  border-color: #00a971
}

.contents-block-feature-02 .contents-lead, .contents-block-feature-02 .contents-title-feature {
  color: #00a971
}

.contents-block-feature-03 {
  border-color: #f5aa00
}

.contents-block-feature-03 .contents-lead, .contents-block-feature-03 .contents-title-feature {
  color: #f5aa00
}

.contents-block-feature-04 {
  border-color: #6a1684
}

.contents-block-feature-04 .contents-lead, .contents-block-feature-04 .contents-title-feature {
  color: #6a1684
}

.contents-block-class {
  padding-bottom: 0
}

.contents-block-message, .contents-block-schedule {
  border: none;
  background: 0 0;
  padding: 0;
  margin: 0
}

.contents-block-application {
  background: #fff;
  padding: 62px 80px 82px;
  border-radius: 20px;
  border: none;
  margin-top: 49.5px
}

.contents-block-access {
  border: none;
  margin-top: 60px;
  padding: 0
}

.contents-block-curve {
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain
}

.contents-block-curve-01 {
  width: calc((354 / 1104) * 100%);
  top: calc((-196 / 2272) * 100%);
  left: calc((-208 / 1104) * 100%)
}

.contents-block-curve-02 {
  width: calc((300 / 1104) * 100%);
  top: calc((-176 / 2272) * 100%);
  right: calc((-74 / 1104) * 100%)
}

.contents-block-curve-03 {
  width: calc((313 / 1104) * 100%);
  top: calc((1010 / 2272) * 100%);
  left: calc((-187 / 1104) * 100%)
}

.contents-block-curve-04 {
  width: calc((243 / 1104) * 100%);
  top: calc((1011 / 2272) * 100%);
  right: calc((-161 / 1104) * 100%)
}

.contents-block-curve-05 {
  width: calc((272 / 1104) * 100%);
  right: calc((-188 / 1104) * 100%);
  bottom: calc((-70 / 2272) * 100%)
}

.contents-block-curve-06 {
  width: calc((342 / 1104) * 100%);
  top: calc((-10 / 2326) * 100%);
  left: calc((-242 / 1104) * 100%)
}

.contents-block-curve-07 {
  width: calc((282 / 1104) * 100%);
  top: calc((867 / 2326) * 100%);
  left: calc((-200 / 1104) * 100%)
}

.contents-block-curve-08 {
  width: calc((313 / 1104) * 100%);
  right: calc((-220 / 1104) * 100%);
  bottom: calc((580 / 2326) * 100%)
}

.contents-block-curve-09 {
  width: calc((208 / 1104) * 100%);
  left: calc((226 / 1104) * 100%);
  bottom: calc((-92 / 2326) * 100%)
}

.contents-block-curve-10 {
  width: calc((300 / 1104) * 100%);
  top: calc((-151 / 1340) * 100%);
  right: calc((-72 / 1104) * 100%)
}

.contents-block-curve-11 {
  width: calc((344 / 1104) * 100%);
  top: calc((502 / 1340) * 100%);
  left: calc((-316 / 1104) * 100%)
}

.contents-block-curve-12 {
  width: calc((282 / 1104) * 100%);
  top: calc((376 / 1340) * 100%);
  right: calc((-188 / 1104) * 100%)
}

.contents-block-curve-13 {
  width: calc((243 / 1104) * 100%);
  right: calc((-161 / 1104) * 100%);
  bottom: calc((156 / 1340) * 100%)
}

.contents-block-curve-14 {
  width: calc((290 / 1104) * 100%);
  top: calc((-43 / 1775) * 100%);
  right: calc((-249 / 1104) * 100%)
}

.contents-block-curve-15 {
  width: calc((354 / 1104) * 100%);
  right: calc((-193 / 1104) * 100%);
  bottom: calc((298 / 1755) * 100%)
}

.contents-block-curve-16 {
  width: calc((344 / 1104) * 100%);
  top: calc((-83 / 2412) * 100%);
  right: calc((-228 / 1104) * 100%)
}

.contents-block-curve-17 {
  width: calc((243 / 1104) * 100%);
  top: calc((755 / 2412) * 100%);
  left: calc((-207 / 1104) * 100%)
}

.contents-block-curve-18 {
  width: calc((463 / 1104) * 100%);
  top: calc((992 / 2412) * 100%);
  right: calc((-285 / 1104) * 100%)
}

.contents-block-curve-19 {
  width: calc((354 / 1104) * 100%);
  top: calc((1553 / 2412) * 100%);
  left: calc((-229 / 1104) * 100%)
}

.contents-block-curve-20 {
  width: calc((300 / 1104) * 100%);
  right: calc((-187 / 1104) * 100%);
  bottom: calc((351 / 2412) * 100%)
}

.contents-block-curve-21 {
  width: calc((344 / 1104) * 100%);
  top: calc((81 / 1980) * 100%);
  left: calc((-306 / 1104) * 100%)
}

.contents-block-curve-22 {
  width: calc((175 / 1104) * 100%);
  top: calc((765 / 1980) * 100%);
  right: calc((-121 / 1104) * 100%)
}

.contents-block-curve-23 {
  width: calc((342 / 1104) * 100%);
  right: calc((-287 / 1104) * 100%);
  bottom: calc((357 / 1980) * 100%)
}

.contents-block-curve-24 {
  width: calc((325 / 1104) * 100%);
  left: calc((-217 / 1104) * 100%);
  bottom: calc((-125 / 1980) * 100%)
}

.contents-inner {
  padding: 0 72px
}

.section-06 .contents-inner, .section-09 .contents-inner {
  padding: 0 80px
}

.contents-title {
  display: inline-block;
  margin: 0 auto;
  font-size: 3.4rem;
  font-weight: 600;
  line-height: 1.72727;
  letter-spacing: .06em;
  text-align: center;
  position: relative;
  z-index: 1
}

.contents-block-class .contents-title {
  font-size: 3.6rem
}

.contents-title-wrap {
  text-align: center
}

.contents-block-class .contents-title-wrap {
  margin-top: -120px
}

.contents-title .underline::before {
  content: '';
  width: calc(100% + (14px * 2));
  height: 14px;
  border-radius: 7px;
  background: #ffe116;
  position: absolute;
  left: 50%;
  bottom: 9px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: -1
}

.contents-block-class .contents-title .underline::before {
  width: calc(100% + (3px * 2));
  top: 53px;
  bottom: auto
}

.contents-title .underline::after {
  content: none;
  width: calc(100% + (27px * 2));
  height: 100%;
  background: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: -2
}

.contents-block-class .contents-title .underline::after {
  content: ''
}

.contents-title .grade {
  display: block;
  font-size: 3rem;
  font-weight: 600;
  line-height: 1;
  margin-top: 10px
}

.contents-title em {
  font-style: normal;
  color: #e60020
}

.contents-title-sub {
  font-size: 3.2rem;
  font-weight: 600;
  line-height: 1.5;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  margin: 0
}

.contents-title-sub-body {
  padding: 0 30px
}

.contents-title-sub::after, .contents-title-sub::before {
  content: '';
  display: block;
  width: 43px;
  height: 61px;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url(../img/icon/icon_light_left.png)
}

.contents-title-sub::after {
  -webkit-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg)
}

.contents-title-sub em {
  font-style: normal;
  font-size: 4.2rem;
  line-height: 1;
  letter-spacing: .06em;
  color: #ff6000
}

.contents-block-research .contents-title-sub {
  margin-top: 64px;
  margin-bottom: 58px
}

.contents-title-feature {
  font-size: 5.6rem;
  font-weight: 600;
  letter-spacing: .06em;
  margin: 0
}

.contents-title-feature .en {
  display: block;
  font-family: Montserrat, sans-serif;
  font-size: 2.2rem;
  font-weight: 600;
  letter-spacing: .12em;
  line-height: 1;
  color: #151515
}

.contents-lead {
  font-size: 2.2rem;
  line-height: 1.40625;
  letter-spacing: .06em;
  margin: 0
}

.contents-lead:not(:first-of-type) {
  margin-top: 45px
}

.contents-lead-wrap {
  margin-top: 71.5px;
  text-align: center
}

.contents-block-feature .contents-lead-wrap {
  margin-top: 48px
}

.contents-block-feature .contents-lead {
  font-size: 3.8rem;
  font-weight: 600;
  line-height: 1.45833
}

.contents-text {
  font-size: 2.4rem;
  line-height: 1.61765;
  letter-spacing: .06em;
  margin: 0
}

.contents-text:not(:first-of-type) {
  margin-top: 45px
}

.contents-block-feature .contents-text:not(:first-of-type) {
  margin-top: 39px
}

.contents-text-wrap {
  text-align: center;
  margin-top: 68.5px
}

.contents-text-wrap+.contents-image {
  margin-top: 68.5px
}

.section-03 .contents-text-wrap {
  margin-top: 35px
}

.contents-block-feature .contents-text-wrap {
  margin-top: 44.5px
}

.contents-text .em-primary {
  font-size: 3.4rem;
  font-style: normal;
  color: #ff6000;
  line-height: 1
}

.contents-block-feature .contents-text {
  font-size: 2.2rem;
  line-height: 1.39286
}

.contents-block-feature .contents-text:nth-child(2) {
  margin-top: 0
}

.contents-image {
  margin-top: 50px;
  position: relative
}

.contents-image .main {
  border-radius: 20px;
  width: 80%;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.contents-image-curve {
  position: absolute
}

.contents-image-curve-01 {
  width: calc((232 / 960) * 100%);
  top: calc((-65 / 526) * 100%);
  left: calc((-15 / 960) * 100%)
}

.contents-image-curve-02 {
  width: calc((103 / 960) * 100%);
  top: calc((47 / 526) * 100%);
  right: calc((-36 / 960) * 100%)
}

.contents-image-curve-03 {
  width: calc((165 / 960) * 100%);
  left: calc((-40 / 960) * 100%);
  bottom: calc((-51 / 526) * 100%)
}

.contents-image-curve-04 {
  width: calc((213 / 960) * 100%);
  right: calc((-54 / 960) * 100%);
  bottom: calc((-69 / 526) * 100%)
}

.contents-image-curve-05 {
  width: calc((103 / 960) * 100%);
  top: calc((-43 / 526) * 100%);
  left: calc((-2 / 960) * 100%)
}

.contents-image-curve-06 {
  width: calc((232 / 960) * 100%);
  top: calc((-37 / 526) * 100%);
  right: calc((-66 / 960) * 100%)
}

.contents-image-curve-07 {
  width: calc((213 / 960) * 100%);
  left: calc((-59 / 960) * 100%);
  bottom: calc((-5 / 526) * 100%)
}

.contents-image-curve-08 {
  width: calc((165 / 960) * 100%);
  right: calc((-50 / 960) * 100%);
  bottom: calc((-21 / 526) * 100%)
}

.contents-image-curve-09 {
  width: calc((232 / 960) * 100%);
  top: calc((-65 / 526) * 100%);
  left: calc((-15 / 960) * 100%)
}

.contents-image-curve-10 {
  width: calc((165 / 960) * 100%);
  top: calc((55 / 526) * 100%);
  right: calc((-73 / 960) * 100%)
}

.contents-image-curve-11 {
  width: calc((103 / 960) * 100%);
  left: calc((41 / 960) * 100%);
  bottom: calc((-41 / 526) * 100%)
}

.contents-image-curve-12 {
  width: calc((213 / 960) * 100%);
  right: calc((-54 / 960) * 100%);
  bottom: calc((-69 / 526) * 100%)
}

.contents-image-curve-13 {
  width: calc((165 / 960) * 100%);
  top: calc((41 / 526) * 100%);
  left: calc((-40 / 960) * 100%)
}

.contents-image-curve-14 {
  width: calc((213 / 960) * 100%);
  top: calc((-41 / 526) * 100%);
  right: calc((-54 / 960) * 100%)
}

.contents-image-curve-15 {
  width: calc((232 / 960) * 100%);
  left: calc((-76 / 960) * 100%);
  bottom: calc((-48 / 526) * 100%)
}

.contents-image-curve-16 {
  width: calc((103 / 960) * 100%);
  right: calc((-36 / 960) * 100%);
  bottom: calc((-20 / 526) * 100%)
}

.contents-image-curve-17 {
  width: calc((103 / 960) * 100%);
  top: calc((51 / 526) * 100%);
  left: calc((-40 / 960) * 100%)
}

.contents-image-curve-18 {
  width: calc((232 / 960) * 100%);
  top: calc((-43 / 526) * 100%);
  right: calc((-64 / 960) * 100%)
}

.contents-image-curve-19 {
  width: calc((213 / 960) * 100%);
  left: calc((-76 / 960) * 100%);
  bottom: calc((-61 / 526) * 100%)
}

.contents-image-curve-20 {
  width: calc((165 / 960) * 100%);
  right: calc((-50 / 960) * 100%);
  bottom: calc((-31 / 526) * 100%)
}

.contents-image-curve-21 {
  width: calc((213 / 960) * 100%);
  top: calc((-41 / 526) * 100%);
  left: calc((-85 / 960) * 100%)
}

.contents-image-curve-22 {
  width: calc((103 / 960) * 100%);
  top: calc((44 / 526) * 100%);
  right: calc((-46 / 960) * 100%)
}

.contents-image-curve-23 {
  width: calc((165 / 960) * 100%);
  left: calc((-40 / 960) * 100%);
  bottom: calc((-14 / 526) * 100%)
}

.contents-image-curve-24 {
  width: calc((232 / 960) * 100%);
  right: calc((44 / 960) * 100%);
  bottom: calc((-48 / 526) * 100%)
}

.contents-image-curve-25 {
  width: calc((213 / 960) * 100%);
  top: calc((-63 / 526) * 100%);
  left: calc((-33 / 960) * 100%)
}

.contents-image-curve-26 {
  width: calc((103 / 960) * 100%);
  top: calc((60 / 526) * 100%);
  right: calc((-36 / 960) * 100%)
}

.contents-image-curve-27 {
  width: calc((165 / 960) * 100%);
  left: calc((-40 / 960) * 100%);
  bottom: calc((-34 / 526) * 100%)
}

.contents-image-curve-28 {
  width: calc((232 / 960) * 100%);
  right: calc((-54 / 960) * 100%);
  bottom: calc((-70 / 526) * 100%)
}

.contents-image-curve-29 {
  width: calc((103 / 960) * 100%);
  top: calc((9 / 526) * 100%);
  left: calc((-38 / 960) * 100%)
}

.contents-image-curve-30 {
  width: calc((232 / 960) * 100%);
  top: calc((-35 / 526) * 100%);
  right: calc((-45 / 960) * 100%)
}

.contents-image-curve-31 {
  width: calc((213 / 960) * 100%);
  left: calc((-70 / 960) * 100%);
  bottom: calc((-44 / 526) * 100%)
}

.contents-image-curve-32 {
  width: calc((165 / 960) * 100%);
  right: calc((-10 / 960) * 100%);
  bottom: calc((-40 / 526) * 100%)
}

.contents-image-curve-33 {
  width: calc((103 / 960) * 100%);
  top: calc((-38 / 526) * 100%);
  left: calc((-28 / 960) * 100%)
}

.contents-image-curve-34 {
  width: calc((232 / 960) * 100%);
  top: calc((-36 / 526) * 100%);
  right: calc((-64 / 960) * 100%)
}

.contents-image-curve-35 {
  width: calc((165 / 960) * 100%);
  left: calc((-40 / 960) * 100%);
  bottom: calc((-19 / 526) * 100%)
}

.contents-image-curve-36 {
  width: calc((213 / 960) * 100%);
  right: calc((-54 / 960) * 100%);
  bottom: calc((-83 / 526) * 100%)
}

.contents-image-curve-37 {
  width: calc((165 / 960) * 100%);
  top: calc((-38 / 526) * 100%);
  left: calc((48 / 960) * 100%)
}

.contents-image-curve-38 {
  width: calc((213 / 960) * 100%);
  top: calc((-41 / 526) * 100%);
  right: calc((-54 / 960) * 100%)
}

.contents-image-curve-39 {
  width: calc((232 / 960) * 100%);
  left: calc((-38 / 960) * 100%);
  bottom: calc((-32 / 526) * 100%)
}

.contents-image-curve-40 {
  width: calc((103 / 960) * 100%);
  right: calc((60 / 960) * 100%);
  bottom: calc((-43 / 526) * 100%)
}

.contents-image-curve-41 {
  width: calc((232 / 960) * 100%);
  top: calc((-58 / 526) * 100%);
  left: calc((-33 / 960) * 100%)
}

.contents-image-curve-42 {
  width: calc((103 / 960) * 100%);
  top: calc((42 / 526) * 100%);
  right: calc((-36 / 960) * 100%)
}

.contents-image-curve-43 {
  width: calc((165 / 960) * 100%);
  left: calc((-40 / 960) * 100%);
  bottom: calc((-36 / 526) * 100%)
}

.contents-image-curve-44 {
  width: calc((213 / 960) * 100%);
  right: calc((-78 / 960) * 100%);
  bottom: calc((-48 / 526) * 100%)
}

.contents-image-title {
  font-size: 4.2rem;
  font-weight: 600;
  letter-spacing: .06em;
  line-height: 1;
  margin: 0 0 60px;
  text-align: center
}

.contents-image-text {
  font-size: 2.2rem;
  letter-spacing: .06em;
  margin: 50px 0 0;
  text-align: center
}

.section-02 .contents-image {
  margin-top: 68.5px
}

.section-04 .contents-image {
  margin-top: 39px
}

.contents-image.contents-block-feature-02-image {
  max-width: calc(1196px / 2);
  margin-left: auto;
  margin-right: auto;
  margin-top: 48.5px
}

.contents-image.contents-block-feature-03-image {
  border: 4px solid #f6f6f6;
  border-radius: 20px;
  padding: 80px 45px 65px;
  margin-top: 54px
}

.contents-block-message .contents-image {
  margin-top: 80px
}

.list-research {
  display: flex;
  flex-wrap: wrap;
  margin: -36px;
  padding: 0;
  list-style-type: none;
  text-align: center
}

.list-research>li {
  width: calc(50% - 72px);
  margin: 28px 36px;
  position: relative;
  counter-increment: number
}

.list-research>li::before {
  content: "0" counter(number);
  background-color: #ffe116;
  border-radius: 50%;
  width: 70px;
  height: 70px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2.2rem;
  font-weight: 600;
  font-family: Montserrat, sans-serif;
  line-height: 1;
  position: absolute;
  top: -16px;
  left: -16px
}

.list-research-thumbnail {
  border-radius: 20px;
  overflow: hidden
}

.list-research-text {
  font-size: 2.5rem;
  font-weight: 600;
  line-height: 1;
  margin: 20px 0 0;
  white-space: nowrap
}

.list-research-text em {
  color: #ff6000;
  font-style: normal
}

.list-point {
  display: flex;
  justify-content: center;
  list-style-type: none;
  padding: 0;
  margin: 83px -22.5px 0
}

.kv .list-point {
  justify-content: space-between;
  width: 100%;
  margin: 30px 0 0
}

.list-point>li {
  width: 200px;
  margin: 0 22.5px
}

.kv .list-point>li {
  margin: 0 11.5px
}

.list-graph {
  list-style-type: none;
  margin: 50px -26px 0;
  padding: 0;
  display: flex;
  justify-content: space-between
}

.list-graph>li {
  width: calc((100% - 52px)/ 2);
  margin: 0 26px
}

.list-graph-thumbnail {
  border: 4px solid #f6f6f6;
  border-radius: 20px;
  padding: 28px 30px;
  margin-bottom: 25px
}

.list-graph-title {
  font-size: 2rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: .06em;
  text-align: center;
  color: #6a1684;
  margin: 0 0 28px
}

.list-graph-text {
  font-size: 1.6rem;
  line-height: 1.42;
  text-align: left;
  letter-spacing: .06em;
  margin: 0
}

.list-graph-text+.list-graph-class {
  margin-top: 18px
}

.list-graph-class {
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 1.26222;
  text-align: left;
  margin: 0 0 5px
}

.list-class {
  list-style-type: none;
  margin: 0;
  padding: 0
}

.list-class>li {
  border-top: 2px solid #e7e7e7;
  display: flex;
  flex-wrap: wrap;
  padding: 60px 0
}

.list-class-item:not(:first-child) {
  margin-top: 38px
}

.list-class-title {
  color: #ff6000;
  font-size: 3.6rem;
  font-weight: 600;
  letter-spacing: .06em;
  line-height: 1;
  width: calc((320 / 960) * 100%);
  margin: 0
}

.list-class-title-sub {
  font-size: 3.2rem;
  font-weight: 600;
  letter-spacing: .06em;
  line-height: 1;
  margin: 0 0 22px
}

.list-class-desc {
  width: calc(100% - ((320 / 960) * 100%))
}

.list-class-text {
  line-height: 1.57143;
  letter-spacing: .06em;
  margin: 0;
  font-size: 2.2rem;
}

.list-class-point {
  list-style-type: none;
  margin: 48px auto 0;
  padding: 0;
  max-width: 800px;
  width: 100%;
  color: #fff;
  text-align: center
}

.list-class-point>li {
  border-radius: 10px;
  padding: 13.5px;
  font-size: 2.4rem;
  font-weight: 600;
  letter-spacing: .06em
}

.list-class-point>li:not(:first-of-type) {
  margin-top: 30px
}

.list-class-point .price {
  background-color: #f5aa00
}

.list-class-point .times {
  background-color: #e6002d
}

.list-course {
  list-style-type: none;
  margin: 30px auto 0;
  padding: 0;
  display: flex;
  justify-content: space-between;
  max-width: 800px
}

.list-course>li {
  border-radius: 10px;
  border-width: 4px;
  border-style: solid;
  font-weight: 600;
  text-align: center;
  width: calc((100% - 18px)/ 2);
  padding: 26px
}

.list-course .math {
  border-color: #92308d
}

.list-course .humanities {
  border-color: #009d85
}

.list-schedule {
  list-style-type: none;
  padding: 0;
  margin: -20px;
  display: flex;
  justify-content: center;
  flex-wrap: wrap
}

.list-schedule>li {
  width: 100%;
  max-width: 540px;
  margin: 20px;
  background: #fff;
  position: relative;
  border-bottom-left-radius: 20px;
  border-bottom-right-radius: 20px
}

.list-schedule-class {
  text-align: center;
  font-size: 2rem;
  font-weight: 600;
  letter-spacing: .06em;
  color: #fff;
  padding: 15px;
  margin: 0;
  border-top-left-radius: 20px;
  border-top-right-radius: 20px
}

.list-schedule-wrap {
  display: flex;
  justify-content: space-between;
  position: relative;
  padding: 30px 28px
}

.list-schedule-wrap::before {
  content: '';
  width: 1px;
  height: calc(100% - (30px * 2));
  background: #e5e5e5;
  position: absolute;
  top: 30px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%)
}

.list-schedule-week {
  padding: 0;
  margin: 4px 0 10px;
  list-style-type: none
}

.list-schedule-week>li {
  display: flex;
  line-height: 1;
  border-bottom: 1px solid #e5e5e5;
  padding: 15px 0
}

.list-schedule-week .day {
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  margin-right: 10px;
  font-size: 1.2rem;
  font-weight: 600;
  line-height: 1;
  margin-top: 3px
}

.list-schedule-week .time {
  flex: 1;
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.6875
}

.list-schedule-kinder .list-schedule-class, .list-schedule-kinder .list-schedule-week .day {
  background-color: #6a1684
}

.list-schedule-kinder .schedule-week-cource {
  color: #6a1684
}

.list-schedule-hop .list-schedule-class, .list-schedule-hop .list-schedule-week .day {
  background-color: #f5aa00
}

.list-schedule-hop .schedule-week-cource {
  color: #f5aa00
}

.list-schedule-step .list-schedule-class, .list-schedule-step .list-schedule-week .day {
  background-color: #0aac76
}

.list-schedule-step .schedule-week-cource {
  color: #0aac76
}

.list-schedule-jump .list-schedule-class, .list-schedule-jump .list-schedule-week .day {
  background-color: #e50020
}

.list-schedule-jump .schedule-week-cource {
  color: #e50020
}

.list-QA {
  list-style-type: none;
  padding: 0;
  margin: 0;
  letter-spacing: .06em
}

.list-QA>li {
  padding: 30px;
  background: #fff;
  border-radius: 20px
}

.list-QA>li:not(:first-child) {
  margin-top: 40px
}

.list-QA-question {
  font-size: 2.4rem;
  line-height: 1.25;
  margin: 0;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between
}

.list-QA-question::before {
  content: 'Q';
  font-family: Montserrat, sans-serif;
  font-size: 2rem;
  color: #fff;
  background: #e60020;
  width: 55px;
  height: 55px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center
}

.list-QA-question .text {
  width: 84.4%;
  padding-left: 24px;
  flex: 1
}

.list-QA-answer {
  font-size: 2.4rem;
  line-height: 1.41667;
  border-top: 2px solid #e7e7e7;
  margin: 30px 0 0;
  padding-top: 30px;
  position: relative;
  display: flex
}

.list-QA-answer::before {
  content: 'A';
  font-family: Montserrat, sans-serif;
  font-size: 2rem;
  color: #fff;
  background: #00aa71;
  width: 55px;
  height: 55px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center
}

.list-QA-answer .text {
  width: 90%;
  padding-left: 24px;
  flex: 1
}

.list-QA-status::before {
  content: '';
  background: url(../img/icon/icon_toggle_status.svg) no-repeat;
  background-size: contain;
  width: 55px;
  height: 55px;
  display: inline-block;
  transition: .2s;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}

.is-open .list-QA-status::before {
  -webkit-transform: rotate(0);
  transform: rotate(0)
}

.list-access {
  list-style-type: none;
  display: flex;
  /* justify-content: center; */
  flex-wrap: wrap;
  /* margin: -23px; */

  padding: 0
}

.list-access .list-access-item {
  margin: 0px 12px 24px;
  padding: 26px 20px 30px;
  border: 5px solid #ff6000;
  border-radius: 30px;
  width: calc(33% - 24px);
  max-width: 357px;
  -webkit-font-feature-settings: 'palt' 1;
  font-feature-settings: 'palt' 1;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  justify-content: center;
}

.list-access-name {
  display: block;
  width: 100%;
  font-size: 2.3rem;
  font-weight: 600;
  letter-spacing: .06em;
  line-height: 1.52778;
  text-align: center;
  margin: 0;
}
.list-access-name span {
  display: block;
  width: 100%;
  text-align: center;
  font-size: 1.6rem;
}

.list-access-tel {
  display: inline-block;
  background: #f5f5f5;
  font-size: 1.8rem;
  margin: 16px 0 0;
  padding: 7px 22px;
  border-radius: 22px;
}
.list-access-tel:before {
  content: '';
  display: inline-block;
  margin-right: 2px;
  width: 16px;
  height: 16px;
  background: url(../img/icon/icon_tel.svg) no-repeat;
  background-size: contain;
  vertical-align: middle;
  position: relative;
  top: -2px;
}

.list-access dl {
  font-size: 1.8rem;
  line-height: 1.33333;
  letter-spacing: .06em
}

.list-access dt {
  font-weight: 600
}

.list-access dd {
  margin: 0
}

.list-access dd:not(:last-child) {
  margin-bottom: 24px
}

.list-access a {
  color: #151515
}

.message-body {
  margin-top: 60px
}

.message-name {
  font-size: 3.6rem;
  font-weight: 600;
  letter-spacing: .06em;
  line-height: 1;
  text-align: center
}

.message-name .en {
  display: block;
  color: #878787;
  font-size: 2.2rem;
  font-family: Montserrat, sans-serif;
  line-height: 1;
  letter-spacing: .12em;
  margin-top: 22px
}

.message-text {
  margin: 44px 0 0;
  letter-spacing: .06em;
  font-size: 2.2rem;
}

.gallery-slider {
  margin-top: 56px;
  position: relative;
  width: 3000px;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%)
}

.gallery-slider .slick-slide {
  margin: 0 20px
}

.gallery-slider .slick-slide img {
  width: 100%
}

.gallery-slider-wrap {
  position: relative
}

.gallery-slider .caption {
  font-size: 2.6rem;
  line-height: 1.5;
  letter-spacing: .06em;
  text-align: center;
  margin: 34px 0 0
}

.gallery-slider-arrow {
  width: 60px;
  cursor: pointer;
  position: absolute;
  top: calc((100% - 86px)/ 2);
  z-index: 1
}

.gallery-slider-arrow.prev-arrow {
  left: calc(50% - (480px + 30px));
  -webkit-transform: translateY(-50%) scale(-1, -1);
  transform: translateY(-50%) scale(-1, -1)
}

.gallery-slider-arrow.next-arrow {
  right: calc(50% - (480px + 30px));
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}

.schedule-school-spot {
  font-size: 4rem;
  font-weight: 600;
  letter-spacing: .06em;
  color: #ff6000;
  line-height: 1;
  text-align: center;
  margin: 78px auto 0
}

.schedule-week {
  width: calc((212 / 486) * 100%)
}

.schedule-week-cource {
  font-size: 1.8rem;
  font-weight: 600;
  letter-spacing: .06em;
  line-height: 1;
  margin: 0
}

.form-application {
  font-size: 2.6rem;
  letter-spacing: .06em
}

.form-application-label {
  display: block
}

.form-application-label:not(:first-child) {
  margin-top: 45px
}

.form-application-label .required {
  color: #e6002d
}

.form-application-input {
  margin-top: 12px;
  border-radius: 10px;
  border: 2px solid #ebebeb;
  padding: 33px 40px;
  width: 100%;
  font-size: 2.4rem;
  line-height: 1.25;
  letter-spacing: .06em;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none
}

.form-application-submit {
  display: block;
  margin: 50px auto 0;
  padding: 29.5px;
  width: 100%;
  max-width: 480px;
  background-color: #ff5330;
  border-radius: 50px;
  border: none;
  color: #fff;
  font-size: 2.6rem;
  font-weight: 600;
  font-family: Montserrat, sans-serif;
  letter-spacing: .12em;
  cursor: pointer;
  font-family: dnp-shuei-mgothic-std, sans-serif
}

.form-application-submit:hover {
  opacity: .6
}

.color-01 {
  color: #e60020
}

.color-02 {
  color: #6a1684
}

.color-03 {
  color: #00aa71
}

.color-04 {
  color: #f6ab00
}

.color-05 {
  color: #131313
}

.annotation {
  text-align: center;
  letter-spacing: .06em;
  margin: 34px 0 0;
  font-size: 2rem;
}

.contents-block-class {
  margin-top: 100px;
}
.contents-block-class .annotation {
  margin-bottom: 74px
}

.contents-block-schedule .annotation {
  font-size: 1.6rem;
  margin-top: 15px;
  margin-bottom: 35.5px
}

.is-visible-pc {
  display: block
}

.is-visible-sp {
  display: none
}

.section-13 {
  padding-bottom: 0px;
}
.section-13 .contents-lead {
  margin: 70px 0 0;
  text-align: center;
  font-weight: bold;
  font-size: 3.2rem;
}
.section-13 .contents-text-wrap {
  padding: 0 80px;
  margin: 50px auto 0;
  max-width: 960px;
}
.section-13 .contents-text-wrap .contents-text {
  text-align: left;
}
.section-13 .online-point {
  display: flex;
  justify-content: center;
  list-style-type: none;
  max-width: 1140px;
  padding: 0 0 10px;
  margin: 60px auto 0px;
}
.section-13 .online-point>li {
  max-width: 364px;
  width: 32%;
  margin: 0 8px
}
.section-13 .contents-block-online-campaign {
  padding: 0 80px;
  margin: 65px auto 0;
  max-width: 1120px;
  background: none;
}
.section-13 .contents-block-online-campaign .contents-block-title {
  margin: 50px 0 0;
  font-size: 3.6rem;
  font-weight: bold;
  text-align: center;
  color: #e60020;
}
.section-13 .online-campaign-item {
  padding: 35px 80px;
  border-bottom: 1px solid #eeeeee;
  text-align: center;
}
.section-13 .online-campaign-item:last-child {
  border-bottom: 0;
}
.section-13 .online-campaign-item .item-title {
  margin: 0;
  font-size: 3rem;
  font-weight: bold;
  text-align: center;
  display: block;
}
.section-13 .online-campaign-item .item-title span::before {
  content: '';
  width: 100%;
  height: 10px;
  border-radius: 7px;
  background: #ffe116;
  position: absolute;
  left: 50%;
  bottom: 4px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: -1
}
.section-13 .online-campaign-item .item-title span {
  display: inline-block;
  position: relative;
}
.section-13 .online-campaign-item .item-title em {
  color: #e60020;
  font-style: normal;
}
.section-13 .online-campaign-item .item-text {
  font-size: 1.6rem;
  margin: 1.5em 0 1em;
}

@media screen and (max-width:767px) {
  body {
    padding: 0;
    min-width: 0;
    font-size: 1.4rem;
    line-height: 1.39286
  }
  .inner {
    padding: 0 10px
  }
  .inner-02 {
    max-width: 89.33%;
    padding: 0 20px
  }
  .header {
    padding: 17px 20px
  }
  .header .logo {
    width: calc(214px / 2)
  }
  .header p {
    font-size: 1rem;
    margin-left: 20px
  }
  .footer {
    margin-bottom: 60px
  }
  .footer .logo {
    width: calc(237px / 2);
    margin: 0 auto 32px
  }
  .footer p {
    font-size: 1.3rem;
    line-height: 1.34615
  }
  .footer .copyright {
    font-size: 1rem;
    opacity: .5;
    margin-top: 43px
  }
  .button {
    border-radius: 4px;
    width: 100%;
    max-width: 300px;
    height: auto;
    font-size: 1.6rem
  }
  .button>span {
    font-size: 1.2rem
  }
  .button-wrap-fixed {
    flex-direction: row;
    top: auto;
    right: auto;
    bottom: 0;
    left: 0;
    width: 100%;
    -webkit-transform: none;
    transform: none
  }
  .button-block {
    background-image: url(../img/bg/bg_3_sp.jpg);
    padding: 55px 0;
    flex-direction: column
  }
  .button-block .icon::before {
    width: calc(31px / 2)
  }
  .button-block .icon-file {
    margin-right: 9px
  }
  .button-block .icon-mail {
    margin-right: 10px
  }
  .button .opacity {
    font-size: 1.6rem;
    padding: 10px
  }
  .section-10 .button {
    margin: 25px auto 0;
    border-radius: 25px;
    padding: 10px
  }
  .button-block .button {
    width: 100%;
    max-width: 295px;
    border-radius: 25px;
    margin: 10px;
    padding: 10px
  }
  .button-fixed {
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-tb;
    writing-mode: horizontal-tb;
    height: auto;
    width: 100%;
    font-size: 1.3rem;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 60px;
    padding: 24px 10px
  }
  .button-fixed-file {
    border-radius: 0
  }
  .button-fixed-mail {
    border-radius: 0
  }
  .button-acordion {
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
    width: calc(100% + 2.5px);
    margin: 0 -2.5px -2.5px;
    padding: 20px
  }
  .button-acordion::before {
    font-size: 1.6rem
  }
  .icon-file {
    margin-bottom: 0;
    margin-right: 9px
  }
  .icon-file::before {
    width: 14px;
    height: 12.5px
  }
  .icon-mail {
    margin-bottom: 0;
    margin-right: 7.5px
  }
  .icon-mail::before {
    width: 15px;
    height: 11px
  }
  .kv {
    min-height: 430px
  }
  .kv-main {
    width: 100%;
    height: auto
  }
  .kv-copy {
    max-width: 310px
  }
  .kv-copy-wrap {
    padding-top: calc(290px / 2)
  }
  .kv-slider {
    width: calc((704px / 2) * 5);
    height: calc(450px / 2);
    min-height: auto;
    top: 0;
    right: auto;
    left: 50%;
    -webkit-transform-origin: top;
    transform-origin: top;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
  }
  .kv-slider .slick-slide {
    margin: 0 -2px
  }
  .kv-slider .slick-slide img {
    border: 4px solid #ffe116;
    border-radius: 20px
  }
  .kv-slider.pc {
    display: none
  }
  .kv-slider.sp {
    display: block
  }
  .kv-scroll {
    display: none
  }
  .kv .star {
    display: block;
    width: calc(181px / 2);
    top: calc(-360px / 2);
    right: calc(-60px / 2);
    z-index: 1
  }
  .section-wrapper {
    padding: 60px 0
  }
  .section-wrapper.section-10 {
    background-image: url(../img/bg/bg_4_sp.jpg)
  }
  .section-wrapper.section-12 {
    padding-bottom: 40px
  }
  .section-title {
    font-size: 2.3rem;
    line-height: 1.65217
  }
  .section-title-body {
    padding: 0 12px
  }
  .section-04 .section-title-body {
    padding: 0 11px
  }
  .section-06 .section-title-body {
    padding: 0 9px
  }
  .section-title::after, .section-title::before {
    width: calc(61px / 2);
    height: calc(62px / 2)
  }
  .section-title .en {
    font-size: 1rem;
    margin-top: 9px
  }
  .section-02 .section-title {
    margin-bottom: 30px
  }
  .section-06 .section-title {
    font-size: 2.3rem
  }
  .section-lead {
    font-size: 1.7rem;
    margin-top: 24px
  }
  .section-lead:not(:first-of-type) {
    margin-top: 17px
  }
  .section-04 .section-lead {
    margin-bottom: 25px
  }
  .section-lead .em-primary {
    font-size: 2.2rem
  }
  .contents-block-class {

  }
  .contents-block-class .section-lead {
    font-size: 2rem;
    line-height: 1.4;
    margin-top: 24px
  }
  .bg-curve-01 {
    background-image: url(../img/bg/bg_1_sp.png);
    background-size: calc(1625px / 2) auto;
    background-position: left calc(50% - 30px) top -241px
  }
  .bg-curve-02 {
    background-image: url(../img/bg/bg_2_sp.png);
    background-size: calc(1621px / 2) auto;
    background-position: left calc(50% + 0px) top -145px
  }
  .contents-block {
    padding: 18.5px 0;
    margin-top: 25px;
    border-width: 5px;
    border-radius: 25px
  }
  .contents-block+.contents-block {
    margin-top: 20px
  }
  .section-04 .contents-block {
    margin-top: 30px;
    padding: 33px 0 27px
  }
  .section-04 .contents-block:first-child {
    margin-top: 25px
  }
  .section-05 .contents-block {
    border-radius: 15px;
    border-width: 2.5px
  }
  .section-09 .contents-block {
    margin-top: 30px
  }
  .contents-block-change-image {
    margin: 26px auto 10px;
    padding: 0 15px
  }
  .contents-block-research-target {
    border-radius: 10px;
    border-width: 2.5px;
    flex-direction: column;
    padding: 21px 0 23px;
    margin-top: 28px
  }
  .contents-block-research-target-logo {
    width: calc(91px / 2)
  }
  .contents-block-research-target p {
    font-size: 1.8rem;
    margin: 13px 0 0;
    text-align: center;
    width: auto
  }
  .contents-block-research-target p span {
    font-size: 2.1rem
  }
  .contents-block-research-target p em {
    font-size: 2.6rem
  }
  .contents-block-research-target p em::before {
    height: 9px;
    bottom: -3px
  }
  .contents-block-class {
    padding-bottom: 0
  }
  .contents-block-class:not(:first-child) {
    margin-top: 42px
  }
  .contents-block-message, .contents-block-schedule {
    border: none;
    background: 0 0;
    padding: 0;
    margin: 0
  }
  .contents-block-application {
    padding: 20px 20px 40px;
    border-radius: 10px
  }
  .contents-block-curve-01 {
    width: calc((320 / 690) * 100%);
    top: calc((-572 / (1698 - 20)) * 100%);
    left: calc((-160 / 690) * 100%)
  }
  .contents-block-curve-02 {
    width: calc((279 / 690) * 100%);
    top: calc((-99 / (1698 - 20)) * 100%);
    right: calc((-230 / 690) * 100%);
    -webkit-transform: rotate(63deg);
    transform: rotate(63deg)
  }
  .contents-block-curve-03 {
    width: calc((463 / 690) * 100%);
    top: calc((880 / (1698 - 20)) * 100%);
    left: auto;
    right: calc((-360 / 690) * 100%)
  }
  .contents-block-curve-04 {
    width: calc((469 / 690) * 100%);
    top: auto;
    right: auto;
    bottom: calc((182 / (1698 - 20)) * 100%);
    left: calc((-430 / 690) * 100%)
  }
  .contents-block-curve-05 {
    width: calc((297 / 690) * 100%);
    right: auto;
    bottom: calc((-135 / (1698 - 20)) * 100%);
    left: calc((-280 / 690) * 100%)
  }
  .contents-block-curve-06 {
    width: calc((159 / 690) * 100%);
    top: calc((584 / (1821 - 20)) * 100%);
    left: calc((-117 / 690) * 100%)
  }
  .contents-block-curve-07 {
    width: calc((382 / 690) * 100%);
    top: calc((584 / (1821 - 20)) * 100%);
    left: auto;
    right: calc((-344 / 690) * 100%);
    -webkit-transform: rotate(-95deg);
    transform: rotate(-95deg)
  }
  .contents-block-curve-08 {
    width: calc((139 / 690) * 100%);
    right: calc((-111 / 690) * 100%);
    bottom: calc((729 / (1821 - 20)) * 100%);
    -webkit-transform: rotate(75deg);
    transform: rotate(75deg)
  }
  .contents-block-curve-09 {
    width: calc((290 / 690) * 100%);
    left: auto;
    right: calc((-179 / 690) * 100%);
    bottom: calc((247 / (1821 - 20)) * 100%);
    -webkit-transform: rotate(-92deg);
    transform: rotate(-92deg)
  }
  .contents-block-curve-10 {
    width: calc((340 / 690) * 100%);
    top: calc((-165 / (1048 - 20)) * 100%);
    right: calc((-290 / 690) * 100%);
    -webkit-transform: rotate(165deg);
    transform: rotate(165deg)
  }
  .contents-block-curve-11 {
    width: calc((263 / 690) * 100%);
    top: auto;
    left: auto;
    bottom: calc((-160 / (1048 - 20)) * 100%);
    right: calc((-90 / 690) * 100%);
    -webkit-transform: rotate(50deg);
    transform: rotate(50deg)
  }
  .contents-block-curve-14 {
    width: calc((340 / 690) * 100%);
    top: calc((-150 / (1396 - 20)) * 100%);
    right: calc((-180 / 690) * 100%);
    -webkit-transform: rotate(50deg);
    transform: rotate(50deg)
  }
  .contents-block-curve-15 {
    width: calc((248 / 690) * 100%);
    bottom: auto;
    top: calc((650 / (1396 - 20)) * 100%);
    right: calc((-130 / 690) * 100%);
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg)
  }
  .contents-block-curve-16 {
    width: calc((306 / 690) * 100%);
    right: auto;
    top: calc((-50 / (1396 - 20)) * 100%);
    left: calc((-210 / 690) * 100%);
    -webkit-transform: rotate(-15deg);
    transform: rotate(-15deg)
  }
  .contents-block-curve-17 {
    width: calc((281 / 690) * 100%);
    top: calc((700 / (1396 - 20)) * 100%);
    left: calc((-210 / 690) * 100%);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
  }
  .contents-block-curve-18 {
    width: calc((273 / 690) * 100%);
    top: calc((7 / (1678 - 20)) * 100%);
    right: auto;
    left: calc((-130 / 690) * 100%);
    -webkit-transform: rotate(110deg);
    transform: rotate(110deg)
  }
  .contents-block-curve-19 {
    width: calc((249 / 690) * 100%);
    top: calc((447 / (1678 - 20)) * 100%);
    left: auto;
    right: calc((-190 / 690) * 100%);
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg)
  }
  .contents-block-curve-20 {
    width: calc((240 / 690) * 100%);
    top: calc((655 / (1678 - 20)) * 100%);
    right: auto;
    left: calc((-115 / 690) * 100%);
    -webkit-transform: rotate(-15deg);
    transform: rotate(-15deg)
  }
  .contents-block-curve-21 {
    width: calc((180 / 690) * 100%);
    top: calc((35 / (2685 - 20)) * 100%);
    left: calc((-65 / 690) * 100%);
    -webkit-transform: rotate(-105deg);
    transform: rotate(-105deg)
  }
  .contents-block-curve-22 {
    width: calc((285 / 690) * 100%);
    top: calc((-130 / (1980 - 20)) * 100%);
    right: calc((-65 / 690) * 100%);
    -webkit-transform: rotate(155deg);
    transform: rotate(155deg)
  }
  .contents-block-curve-23 {
    width: calc((255 / 690) * 100%);
    right: auto;
    bottom: auto;
    top: calc((605 / (1980 - 20)) * 100%);
    left: calc((-145 / 690) * 100%);
    -webkit-transform: rotate(5deg);
    transform: rotate(5deg)
  }
  .contents-block-curve-24 {
    width: calc((255 / 690) * 100%);
    left: auto;
    right: calc((-150 / 690) * 100%);
    bottom: calc((410 / (1980 - 20)) * 100%);
    -webkit-transform: rotate(-75deg);
    transform: rotate(-75deg)
  }
  .contents-block-curve-25 {
    width: calc((328 / 690) * 100%);
    bottom: calc((-96 / (1821 - 20)) * 100%);
    left: calc((-256 / 690) * 100%)
  }
  .contents-block-curve-26 {
    width: calc((248 / 690) * 100%);
    top: calc((955 / (2685 - 20)) * 100%);
    right: calc((-165 / 690) * 100%);
    -webkit-transform: rotate(-25deg);
    transform: rotate(-25deg)
  }
  .contents-block-curve-27 {
    width: calc((165 / 690) * 100%);
    bottom: calc((-170 / (2685 - 20)) * 100%);
    left: calc((-45 / 690) * 100%);
    -webkit-transform: rotate(-35deg);
    transform: rotate(-35deg)
  }
  .contents-inner {
    padding: 0 25px
  }
  .section-06 .contents-inner, .section-09 .contents-inner {
    padding: 0 30px
  }
  .section-09 .contents-inner {
    padding: 0 10px
  }
  .contents-title {
    font-size: 2.2rem;
    -webkit-font-feature-settings: 'palt' 1;
    font-feature-settings: 'palt' 1
  }
  .contents-block-class .contents-title {
    font-size: 2.3rem
  }
  .contents-block-class .contents-title-wrap {
    margin-top: -40px
  }
  .contents-title .underline::before {
    width: calc(100% + (7px * 2));
    height: 7px;
    bottom: 5px
  }
  .contents-block-class .contents-title .underline::before {
    width: 100%;
    top: 26px
  }
  .contents-title .underline::after {
    width: calc(100% + (12px * 2))
  }
  .contents-title .grade {
    font-size: 1.5rem;
    margin-top: 6px
  }
  .contents-title-sub {
    font-size: 1.6rem
  }
  .contents-title-sub-body {
    padding: 0 14px
  }
  .contents-title-sub::after, .contents-title-sub::before {
    width: calc(41px / 2);
    height: calc(61px / 2)
  }
  .contents-title-sub em {
    font-size: 2.1rem
  }
  .contents-block-research .contents-title-sub {
    margin-top: 27.5px;
    margin-bottom: 22.5px
  }
  .contents-title-feature {
    font-size: 2.3rem
  }
  .contents-title-feature .en {
    font-size: 1.1rem;
    margin-bottom: 2.5px
  }
  .contents-lead {
    font-size: 1.4rem;
    line-height: 1.39286
  }
  .contents-lead:not(:first-of-type) {
    margin-top: 20px
  }
  .contents-lead-wrap {
    margin-top: 27px
  }
  .contents-block-feature .contents-lead-wrap {
    margin-top: 20.5px
  }
  .contents-block-feature .contents-lead {
    font-size: 1.7rem;
    line-height: 1.47059
  }
  .contents-text {
    font-size: 1.7rem
  }
  .contents-text:not(:first-of-type) {
    margin-top: 20px
  }
  .contents-block-feature .contents-text:not(:first-of-type) {
    margin-top: 23.5px
  }
  .contents-text-wrap {
    margin-top: 25px
  }
  .contents-block-feature .contents-text-wrap {
    margin-top: 18px
  }
  .contents-text .em-primary {
    font-size: 2.2rem
  }
  .section-03 .contents-text:not(:first-of-type) {
    margin-top: 27px
  }
  .contents-block-feature .contents-text {
    font-size: 1.3rem;
    line-height: 1.5
  }
  .contents-image {
    margin-top: 25px
  }
  .contents-image .main {
    border-radius: 10px;
    width: 100%;
  }
  .contents-image-title {
    font-size: 1.5rem;
    margin-bottom: 20px
  }
  .section-02 .contents-image {
    margin-top: 25px
  }
  .section-03 .contents-image {
    margin-top: 35px
  }
  .section-04 .contents-image {
    margin-top: 20px
  }
  .contents-image.contents-block-feature-03-image {
    border-radius: 10px;
    border-width: 2px;
    padding: 23px 13.5px 29px
  }
  .contents-block-message .contents-image {
    margin-top: 29px
  }
  .list-research {
    margin: -10px
  }
  .list-research>li {
    width: calc(50% - 20px);
    margin: 10px
  }
  .list-research>li::before {
    width: 5.866vw;
    height: 5.866vw;
    font-size: 2.4vw;
    top: -1.33vw;
    left: -1.33vw
  }
  .list-research-thumbnail {
    border-radius: 10px
  }
  .list-research-text {
    font-size: 1.4rem;
    margin-top: 9px
  }
  .list-point {
    margin: 28px -4px 0
  }
  .kv .list-point {
    margin-top: 24px
  }
  .list-point>li {
    width: calc(200px / 2);
    margin: 0 4px
  }
  .kv .list-point>li {
    width: calc(215px / 2);
    margin: 0 6.25px
  }
  .list-graph {
    flex-direction: column;
    margin: 25px 0 0
  }
  .list-graph>li {
    width: 100%;
    margin: 0
  }
  .list-graph>li:not(:first-child) {
    margin-top: 28px
  }
  .list-graph-thumbnail {
    border-width: 2px;
    padding: 20px 18px;
    margin-bottom: 17px
  }
  .list-graph-title {
    font-size: 1.4rem;
    margin-bottom: 18px
  }
  .list-graph-text {
    font-size: 1.1rem;
    line-height: 1.45455
  }
  .list-graph-text+.list-graph-class {
    margin-top: 15px
  }
  .list-graph-class {
    font-size: 1.3rem;
    margin-bottom: 1px
  }
  .list-class>li {
    flex-direction: column;
    padding: 30px 0 26px
  }
  .list-class-item:not(:first-child) {
    margin-top: 24px
  }
  .list-class-title {
    width: 100%;
    font-size: 2rem
  }
  .list-class-title-sub {
    font-size: 1.6rem;
    margin-bottom: 11px
  }
  .list-class-text {
    font-size: 1.6rem;
  }
  .list-class-desc {
    width: 100%;
    margin-top: 24px
  }
  .list-class-point {
    max-width: 295px;
    margin-top: 21px
  }
  .list-class-point>li {
    font-size: 1.7rem;
    padding: 10.5px;
    border-radius: 5px
  }
  .list-class-point>li:not(:first-of-type) {
    margin-top: 10px
  }
  .list-course {
    max-width: 295px;
    margin: 10px auto 0
  }
  .list-course>li {
    border-radius: 5px;
    border-width: 2px;
    width: calc((100% - 9px)/ 2);
    padding: 14px 4px
  }
  .list-schedule {
    margin: -10px;
    padding: 0 10px
  }
  .list-schedule>li {
    margin: 10px;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px
  }
  .list-schedule-class {
    font-size: 1.3rem;
    padding: 10px;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px
  }
  .list-schedule-wrap {
    padding: 15px 17.5px 14px
  }
  .list-schedule-wrap::before {
    height: calc(100% - (14px * 2));
    top: 15px
  }
  .list-schedule-week {
    margin: 3.5px 0 7px
  }
  .list-schedule-week>li {
    padding: 9px 0
  }
  .list-schedule-week .day {
    font-size: 1rem;
    width: 18px;
    height: 18px;
    margin: 0 5px 0 0
  }
  .list-schedule-week .time {
    font-size: 1.1rem
  }
  .list-QA>li {
    padding: 15px
  }
  .list-QA>li:not(:first-child) {
    margin-top: 20px
  }
  .list-QA-question {
    font-size: 1.2rem
  }
  .list-QA-question::before {
    font-size: 1rem;
    width: calc(55px / 2);
    height: calc(55px / 2)
  }
  .list-QA-question .text {
    padding-left: calc(19px / 2)
  }
  .list-QA-answer {
    font-size: 1.2rem;
    padding-top: calc(27px / 2);
    margin-top: calc(27px / 2);
    border-width: 1px
  }
  .list-QA-answer::before {
    font-size: 1rem;
    width: calc(55px / 2);
    height: calc(55px / 2)
  }
  .list-QA-answer .text {
    padding-left: calc(19px / 2)
  }
  .list-QA-status::before {
    width: calc(55px / 2);
    height: calc(55px / 2)
  }
  .list-access {
    flex-direction: column;
    align-items: center
  }
  .list-access .list-access-item {
    border-width: 2.5px;
    border-radius: 15px;
    max-width: 355px;
    width: 100%;
    margin: 0;
    padding: 24px 30px 27px
  }
  .list-access>li:not(:first-child) {
    margin-top: 20px
  }
  .list-access-name {
    font-size: 1.8rem;
  }
  .list-access-name span {
    font-size: 1.3rem;
  }

  .list-access dl {
    font-size: 1.2rem;
    line-height: 1.41667
  }
  .list-access dd:not(:last-child) {
    margin-bottom: 15px
  }
  .message-body {
    margin-top: 17px
  }
  .message-name {
    font-size: 2.3rem;
    margin-bottom: 35px
  }
  .message-name .en {
    font-size: 1.1rem;
    margin-top: 10px
  }
  .message-text {
    line-height: 1.57143;
    font-size: 1.6rem;
  }
  .message-text:not(:first-child) {
    margin-top: 26px
  }
  .gallery-slider {
    margin-top: 29px
  }
  .gallery-slider .slick-slide {
    margin: 0 5px
  }
  .gallery-slider .caption {
    font-size: 1.3rem;
    margin-top: 13px
  }
  .gallery-slider-arrow {
    width: 8%;
    top: calc((100% - 52px)/ 2)
  }
  .gallery-slider-arrow.prev-arrow {
    left: 20px
  }
  .gallery-slider-arrow.next-arrow {
    right: 20px
  }
  .schedule-school-spot {
    font-size: 2rem;
    margin-top: 28px
  }
  .schedule-week {
    height: auto!important
  }
  .schedule-week-cource {
    font-size: 1.2rem
  }
  .form-application {
    font-size: 1.3rem
  }
  .form-application-label:not(:first-child) {
    margin-top: 23px
  }
  .form-application-input {
    border-radius: 5px;
    margin-top: 6px;
    padding: 16px 20px;
    border-width: 1px;
    font-size: 1.2rem
  }
  .form-application-submit {
    margin-top: 25px;
    font-size: 1.3rem;
    max-width: 240px;
    border-radius: 25px;
    padding: 15px 20px
  }
  .annotation {
    font-size: 1.4rem
  }
  .contents-block-class .annotation {
    margin: 20px 0 28px
  }
  .contents-block-schedule .annotation {
    font-size: 1.2rem;
    margin-top: 8px;
    margin-bottom: 18px
  }
  .is-visible-pc {
    display: none
  }
  .is-visible-sp {
    display: block
  }

  .section-13 {
    padding-bottom: 0;
  }
  .section-13 .contents-lead {
    margin: 25px 0 0;
    font-size: 1.6rem;
  }
  .section-13 .contents-text-wrap {
    padding: 0 40px;
    margin: 20px auto 0;
  }
  .section-13 .contents-text-wrap .contents-text {
    font-size: 1.4rem;
  }
  .section-13 .online-point {
    display: block;
    padding: 0 10px 10px;
    margin: 30px auto 0px;
  }
  .section-13 .online-point>li {
    max-width: 100%;
    width: 100%;
    margin: 0 0 20px;
  }
  .section-13 .contents-block-online-campaign {
    padding: 0 20px 10px;
    margin: 0 auto 20px;
    max-width: 100%;
  }
  .section-13 .contents-block-online-campaign .contents-block-title {
    margin: 25px 0 0;
    font-size: 1.8rem;
  }
  .section-13 .online-campaign-item {
    padding: 16px 0px;
  }
  .section-13 .online-campaign-item .item-title {
    font-size: 1.8rem;
  }
  .section-13 .online-campaign-item .item-title span::before {
    height: 5px;
    border-radius: 3px;
    bottom: 4px;
  }
  .section-13 .online-campaign-item .item-text {
    font-size: 1.2rem;
    margin: 0.5em 0 0em;
    line-height: 1.7;
  }
}

@media screen and (min-width:768px) {
  a:hover {
    opacity: 1
  }
  a:hover .opacity {
    opacity: .6
  }
  a:focus {
    outline: 0
  }
  .menu-trigger {
    display: none
  }
}

@media screen and (max-width:1279px) {
  .gallery-slider {
    width: auto
  }
}

@media screen and (max-width:1279px) and (min-width:768px) {
  .gallery-slider-arrow.prev-arrow {
    left: calc(160px - 30px)
  }
  .gallery-slider-arrow.next-arrow {
    right: calc(160px - 30px)
  }
}


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