@charset "UTF-8";
/*!
 * ress.css • v1.2.2
 * MIT License
 * github.com/filipelinhares/ress
 */
/* # =================================================================
   # Global selectors
   # ================================================================= */
html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow-y: scroll;
  /* All browsers without overlaying scrollbars */
  -webkit-text-size-adjust: 100%;
  /* iOS 8+ */ }

*,
::before,
::after {
  background-repeat: no-repeat;
  /* Set `background-repeat: no-repeat` to all elements and pseudo elements */
  -webkit-box-sizing: inherit;
          box-sizing: inherit; }

::before,
::after {
  text-decoration: inherit;
  /* Inherit text-decoration and vertical align to ::before and ::after pseudo elements */
  vertical-align: inherit; }

* {
  padding: 0;
  /* Reset `padding` and `margin` of all elements */
  margin: 0; }

/* # =================================================================
   # General elements
   # ================================================================= */
/* Add the correct display in iOS 4-7.*/
audio:not([controls]) {
  display: none;
  height: 0; }

hr {
  overflow: visible;
  /* Show the overflow in Edge and IE */ }

/*
* Correct `block` display not defined for any HTML5 element in IE 8/9
* Correct `block` display not defined for `details` or `summary` in IE 10/11
* and Firefox
* Correct `block` display not defined for `main` in IE 11
*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  display: block; }

summary {
  display: list-item;
  /* Add the correct display in all browsers */ }

small {
  font-size: 80%;
  /* Set font-size to 80% in `small` elements */ }

[hidden],
template {
  display: none;
  /* Add the correct display in IE */ }

abbr[title] {
  border-bottom: 1px dotted;
  /* Add a bordered underline effect in all browsers */
  text-decoration: none;
  /* Remove text decoration in Firefox 40+ */ }

a {
  background-color: transparent;
  /* Remove the gray background on active links in IE 10 */
  -webkit-text-decoration-skip: objects;
  /* Remove gaps in links underline in iOS 8+ and Safari 8+ */ }

a:active,
a:hover {
  outline-width: 0;
  /* Remove the outline when hovering in all browsers */ }

code,
kbd,
pre,
samp {
  font-family: monospace,monospace;
  /* Specify the font family of code elements */ }

b,
strong {
  font-weight: bolder;
  /* Correct style set to `bold` in Edge 12+, Safari 6.2+, and Chrome 18+ */ }

dfn {
  font-style: italic;
  /* Address styling not present in Safari and Chrome */ }

/* Address styling not present in IE 8/9 */
mark {
  background-color: #ff0;
  color: #000; }

/* https://gist.github.com/unruthless/413930 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/* # =================================================================
   # Forms
   # ================================================================= */
input {
  border-radius: 0; }

/* Apply cursor pointer to button elements */
button,
[type="button"],
[type="reset"],
[type="submit"],
[role="button"] {
  cursor: pointer; }

/* Replace pointer cursor in disabled elements */
[disabled] {
  cursor: default; }

[type="number"] {
  width: auto;
  /* Firefox 36+ */ }

[type="search"] {
  -webkit-appearance: textfield;
  /* Safari 8+ */ }

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
  /* Safari 8 */ }

textarea {
  overflow: auto;
  /* Internet Explorer 11+ */
  resize: vertical;
  /* Specify textarea resizability */ }

button,
input,
optgroup,
select,
textarea {
  font: inherit;
  /* Specify font inheritance of form elements */ }

optgroup {
  font-weight: bold;
  /* Restore the font weight unset by the previous rule. */ }

button {
  overflow: visible;
  /* Address `overflow` set to `hidden` in IE 8/9/10/11 */ }

/* Remove inner padding and border in Firefox 4+ */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: 0;
  padding: 0; }

/* Replace focus style removed in the border reset above */
button:-moz-focusring,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  outline: 1px dotted ButtonText; }

button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* Correct the inability to style clickable types in iOS */ }

button,
select {
  text-transform: none;
  /* Firefox 40+, Internet Explorer 11- */ }

/* Remove the default button styling in all browsers */
button,
input,
select,
textarea {
  background-color: transparent;
  border-style: none;
  color: inherit; }

/* Style select like a standard input */
select {
  -moz-appearance: none;
  /* Firefox 36+ */
  -webkit-appearance: none;
  /* Chrome 41+ */ }

select::-ms-expand {
  display: none;
  /* Internet Explorer 11+ */ }

select::-ms-value {
  color: currentColor;
  /* Internet Explorer 11+ */ }

legend {
  border: 0;
  /* Correct `color` not being inherited in IE 8/9/10/11 */
  color: inherit;
  /* Correct the color inheritance from `fieldset` elements in IE */
  display: table;
  /* Correct the text wrapping in Edge and IE */
  max-width: 100%;
  /* Correct the text wrapping in Edge and IE */
  white-space: normal;
  /* Correct the text wrapping in Edge and IE */ }

::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* Correct the inability to style clickable types in iOS and Safari */
  font: inherit;
  /* Change font properties to `inherit` in Chrome and Safari */ }

[type="search"] {
  -webkit-appearance: textfield;
  /* Correct the odd appearance in Chrome and Safari */
  outline-offset: -2px;
  /* Correct the outline style in Safari */ }

/* # =================================================================
   # Specify media element style
   # ================================================================= */
img {
  border-style: none;
  /* Remove border when inside `a` element in IE 8/9/10 */ }

/* Add the correct vertical alignment in Chrome, Firefox, and Opera */
progress {
  vertical-align: baseline; }

svg:not(:root) {
  overflow: hidden;
  /* Internet Explorer 11- */ }

audio,
canvas,
progress,
video {
  display: inline-block;
  /* Internet Explorer 11+, Windows Phone 8.1+ */ }

/* # =================================================================
   # Accessibility
   # ================================================================= */
/* Hide content from screens but not screenreaders */

/* Specify the progress cursor of updating elements */
[aria-busy="true"] {
  cursor: progress; }

/* Specify the pointer cursor of trigger elements */
[aria-controls] {
  cursor: pointer; }

/* Specify the unstyled cursor of disabled, not-editable, or otherwise inoperable elements */
[aria-disabled] {
  cursor: default; }

/* # =================================================================
   # Selection
   # ================================================================= */
/* Specify text selection background color and omit drop shadow */
::-moz-selection {
  background-color: #b3d4fc;
  /* Required when declaring ::selection */
  color: #000;
  text-shadow: none; }

::selection {
  background-color: #b3d4fc;
  /* Required when declaring ::selection */
  color: #000;
  text-shadow: none; }

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

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

@font-face {
  font-family: "Original Yu Gothic";
  src: local("Yu Gothic");
  font-weight: 500; }

@font-face {
  font-family: "Original Yu Gothic";
  src: local("Yu Gothic");
  font-weight: bold; }

html {
  font-size: 62.5%; }

body {
  font-family: "Original Yu Gothic","Yu Gothic",YuGothic,sans-serif;
  font-size: 1rem;
  line-height: 2;
  min-width: 1024px;
  background-image: url(../images/bg.png);
  background-size: 1600px auto;
  background-repeat: repeat-y;
  background-position: 50% -210px;
  counter-reset: number 0; }
  body button, body input, body select, body textarea {
    font-family: "Original Yu Gothic","Yu Gothic",YuGothic,sans-serif; }

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

.sp {
  display: none; }

.pagetop {
  position: fixed;
  right: 20px;
  bottom: 10px;
  width: 100px;
  -webkit-animation: fuwafuwa 2s infinite ease-in-out;
          animation: fuwafuwa 2s infinite ease-in-out; }
  .pagetop a {
    -webkit-transition: opacity .25s ease-in-out;
    transition: opacity .25s ease-in-out; }
    .pagetop a:hover {
      opacity: .5; }

@-webkit-keyframes fuwafuwa {
  0% {
    -webkit-transform: translate(0, 0); }
  50% {
    -webkit-transform: translate(0, -10px); }
  100% {
    -webkit-transform: translate(0, 0); } }

@keyframes fuwafuwa {
  0% {
    -webkit-transform: translate(0, 0); }
  50% {
    -webkit-transform: translate(0, -10px); }
  100% {
    -webkit-transform: translate(0, 0); } }

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  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: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -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:before, .slick-track:after {
    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; }

/*HEADER*/
.l-header {
  padding-top: 77px; }
  .l-header__body {
    width: 960px;
    margin: auto;
    position: relative; }
  .l-header__copy {
    width: 600px;
    margin: auto; }
  .l-header__eye {
    padding-top: 60px;
    width: 927px; }
    .l-header__eye img {
      width: 100%; }
  .l-header__entry {
    text-align: center;
    width: 180px;
    position: absolute;
    right: 29px;
    top: 112px; }
    .l-header__entry a {
      display: block;
      width: 180px;
      height: 180px;
      border-radius: 50%;
      background-color: #5cc2cf;
      color: #fff;
      padding: 15px 0;
      font-size: 1.8rem;
      line-height: 1.3333;
      text-decoration: none;
      position: relative;
      -webkit-transition: all .25s ease-in-out;
      transition: all .25s ease-in-out; }
      .l-header__entry a svg path {
        -webkit-transition: all .25s ease-in-out;
        transition: all .25s ease-in-out; }
      .l-header__entry a:after {
        display: block;
        content: '';
        background-image: url(../images/arrow_down.svg);
        background-repeat: no-repeat;
        width: 23px;
        height: 13px;
        margin: 8px auto 0;
        -webkit-transition: all .25s ease-in-out;
        transition: all .25s ease-in-out; }
      .l-header__entry a span {
        margin-top: 24px;
        position: relative;
        font-size: 2.2rem;
        line-height: 1.0909;
        font-family: 'Oswald',sans-serif;
        font-weight: 600;
        width: 100%;
        display: block;
        padding-bottom: 13px; }
      .l-header__entry a:hover {
        color: #5cc2cf;
        background-color: #fff100; }
        .l-header__entry a:hover svg path {
          fill: #5cc2cf; }
        .l-header__entry a:hover:after {
          background-image: url(../images/arrow_down_on.svg); }
  .l-header__ttl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    margin-left: 38px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  .l-header__sitename {
    width: 640px;
    padding-top: 40px;
    margin: auto;
    padding-left: 20px;
    padding-right: 20px; }
  .l-header__date {
    background-color: rgba(255, 241, 0, 0.8);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    color: #005089;
    padding: 16px;
    margin-right: 27px;
    letter-spacing: .2rem; }
    .l-header__date dt {
      font-size: 1.9rem;
      line-height: 1.2632;
      letter-spacing: .2rem;
      width: 42px;
      margin-right: 15px; }
    .l-header__date dd {
      font-size: 1.6rem;
      line-height: 1;
      font-weight: bold;
      position: relative;
      color: #005089; }
      .l-header__date dd strong {
        font-size: 3.2rem;
        line-height: 1;
        font-family: 'Oswald',sans-serif;
        font-weight: 300; }
      .l-header__date dd .close {
        opacity: .4; }
      .l-header__date dd span {
        font-size: 1.8rem;
        line-height: 1.1111;
        position: relative;
        font-family: 'Oswald',sans-serif;
        font-weight: 200;
        top: 0; }
        .l-header__date dd span.comment {
          color: #005089;
          font-size: 1.8rem;
          line-height: 1.1111;
          letter-spacing: .1em;
          text-align: center;
          position: absolute;
          left: 0;
          right: 0;
          top: -33px; }
  .l-header__comment {
    margin-top: 60px;
    border: 1px #d1dfea solid;
    background-color: rgba(255, 255, 255, 0.8);
    text-align: center;
    font-size: 1.6rem;
    line-height: 2.3125;
    padding: 34px 0; }
  .l-header__info {
    padding: 0px 80px 100px;
    margin-top: 140px;
    border: 1px solid #005089;
    background-color: rgba(255, 255, 255, 0.8); }
    .l-header__info .comment {
      text-align: center;
      margin-bottom: 65px; }
      .l-header__info .comment p {
        padding: 9px 5px 8px;
        background-color: rgba(255, 244, 51, 0.8);
        font-size: 2.4rem;
        line-height: 2.3333;
        font-weight: 600;
        display: inline; }
    .l-header__info .item {
      margin-top: 85px; }
    .l-header__info .ttl {
      text-align: center;
      font-size: 3.2rem;
      line-height: 1;
      letter-spacing: 0.2em;
      font-weight: 200;
      color: #005089;
      padding-bottom: 35px;
      position: relative; }
      .l-header__info .ttl:after {
        position: absolute;
        content: '';
        width: 140px;
        height: 1px;
        background-color: #005089;
        bottom: 0;
        right: 0;
        left: 0;
        margin: auto; }
    .l-header__info .info {
      margin-top: 63px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      .l-header__info .info .thumb {
        width: 290px; }
        .l-header__info .info .thumb figcaption {
          margin-top: 10px;
          text-align: center;
          font-size: 1.2rem;
          line-height: 1; }
      .l-header__info .info .date {
        list-style: none;
        margin-left: 40px; }
        .l-header__info .info .date li {
          margin: 15px 0;
          font-size: 1.8rem;
          line-height: 1.3333; }
          .l-header__info .info .date li strong {
            font-size: 2.4rem;
            line-height: 1;
            font-weight: 200; }
          .l-header__info .info .date li p {
            font-size: 1.8rem;
            line-height: 2.1111; }
          .l-header__info .info .date li .mrk {
            padding: 9px 5px 5px;
            background-color: rgba(255, 244, 51, 0.8); }
          .l-header__info .info .date li .place {
            position: relative;
            margin-left: 20px;
            padding-left: 40px;
            font-size: 2.4rem;
            line-height: 1; }
            .l-header__info .info .date li .place:before {
              position: absolute;
              width: 20px;
              height: 1px;
              background-color: #000;
              content: '';
              top: 0;
              left: 0;
              bottom: 0;
              margin: auto; }
    .l-header__info .detail {
      width: 750px;
      margin: 30px auto 0;
      text-align: center; }
      .l-header__info .detail p {
        font-size: 1.8rem;
        line-height: 2.1111; }
        .l-header__info .detail p.atten {
          margin-top: 20px;
          font-size: 1.4rem;
          line-height: 2.4286; }
      .l-header__info .detail ul {
        margin-top: 8px;
        font-size: 1.3rem;
        line-height: 2.1539;
        list-style: none; }
        .l-header__info .detail ul li {
          margin-left: 1.5em;
          position: relative; }
          .l-header__info .detail ul li:before {
            content: '・';
            position: absolute;
            left: -1.5em; }
      .l-header__info .detail dl {
        margin-top: 55px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        color: #5cc2cf; }
        .l-header__info .detail dl dt {
          font-size: 2.2rem;
          line-height: 1.5455; }
        .l-header__info .detail dl dd {
          margin-left: 35px;
          font-weight: bold;
          font-size: 2.6rem;
          line-height: 1.3077; }
          .l-header__info .detail dl dd.mail {
            font-weight: bold;
            font-size: 2.6rem;
            line-height: 1.3077; }
            .l-header__info .detail dl dd.mail a {
              color: #5ec2cf;
              -webkit-transition: all .25s ease-in-out;
              transition: all .25s ease-in-out; }
              .l-header__info .detail dl dd.mail a:before {
                content: '';
                width: 26px;
                height: 21px;
                background-image: url(../images/ico_mail.svg);
                background-repeat: no-repeat;
                display: inline-block;
                position: relative;
                top: .2rem;
                margin-right: 10px;
                -webkit-transition: all .25s ease-in-out;
                transition: all .25s ease-in-out; }
              .l-header__info .detail dl dd.mail a:hover {
                color: #fff10f; }
                .l-header__info .detail dl dd.mail a:hover:before {
                  background-image: url(../images/ico_mail_on.svg); }
  .l-header__bnr {
    background-color: #fff;
    margin-top: 90px; }
    .l-header__bnr a {
      -webkit-transition: opacity .25s ease;
      transition: opacity .25s ease; }
      .l-header__bnr a:hover {
        opacity: 0.6; }
  .l-header-movie {
    position: relative;
    width: 930px;
    margin: 70px auto 0;
    background-color: black; }
    .l-header-movie__video {
      margin-top: 60px;
      overflow: hidden; }
      .l-header-movie__video:hover .l-header-movie__btn {
        opacity: 0.5; }
      .l-header-movie__video::before {
        content: '';
        display: block;
        padding-top: 56.25%; }
    .l-header-movie__wrapper {
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0; }
    .l-header-movie__poster {
      position: absolute;
      z-index: 1;
      display: block;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      display: block;
      cursor: pointer; }
    .l-header-movie__btn {
      width: 84px;
      height: 84px;
      position: absolute;
      display: block;
      -webkit-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
      border-radius: 50%;
      z-index: 20;
      border: 2px solid #fff;
      top: 50%;
      left: 50%;
      -webkit-transition: opacity .25s ease-in-out;
      transition: opacity .25s ease-in-out; }
    .l-header-movie__icon {
      width: 14px;
      height: 20px;
      left: calc(50% - 4px);
      -webkit-transform: translate(0, -50%);
              transform: translate(0, -50%);
      position: absolute;
      display: block;
      top: 50%;
      z-index: 30;
      cursor: pointer; }
  .l-header__atten {
    padding: 0 10px;
    margin-top: 10px;
    font-size: 1rem;
    line-height: 2;
    text-align: center;
    display: block; }

/*MAIN*/
.l-main__ttl {
  padding-top: 177px;
  text-align: center;
  font-weight: 500;
  font-size: 4rem;
  line-height: 0.5;
  letter-spacing: 0.6rem;
  color: #005089;
  padding-bottom: 40px;
  position: relative; }
  .l-main__ttl:after {
    content: '';
    border-bottom: 1px solid #fff100;
    position: absolute;
    bottom: 0;
    right: 0;
    left: 0;
    width: 140px;
    margin: auto; }
  .l-main__ttl .num {
    font-size: 7rem;
    line-height: 0.2857;
    font-family: 'Oswald',sans-serif;
    font-weight: 600;
    color: #5dc2d0; }

/*ABOUT*/
.l-about {
  width: 960px;
  margin: 116px auto 0; }
  .l-about__ttl {
    text-align: center;
    color: #005089;
    font-size: 4rem;
    line-height: 1.7;
    font-weight: 500;
    letter-spacing: .2rem; }
    .l-about__ttl strong {
      display: block;
      color: #e60012;
      font-size: 4.8rem;
      line-height: 1.4167;
      font-weight: 500; }
  .l-about__flow {
    padding-left: 15px;
    padding-top: 15px;
    padding-bottom: 50px; }
    * + html .l-about__flow {
      zoom: 1; }
    .l-about__flow:after {
      content: "";
      clear: both;
      display: block;
      height: 0; }
    .l-about__flow-ttl {
      border-radius: 50%;
      background-color: #daeff4;
      width: 120px;
      height: 120px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      font-size: 2rem;
      line-height: 1;
      color: #005089;
      margin-left: -15px;
      margin-bottom: -15px;
      font-weight: 500;
      text-align: center; }
    .l-about__flow-item {
      margin-left: 30px;
      float: left;
      width: 270px;
      height: 270px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      border-radius: 50%;
      background-color: #daeff4; }
      .l-about__flow-item dt {
        font-weight: bold;
        min-width: 90px;
        color: #005089;
        -ms-flex-pack: distribute;
            justify-content: space-around;
        margin-top: -17px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: baseline;
            -ms-flex-align: baseline;
                align-items: baseline;
        font-size: 2.4rem;
        line-height: 1; }
      .l-about__flow-item dd {
        margin-top: 15px;
        text-align: center;
        color: #005089;
        font-size: 2.4rem;
        line-height: 1.5;
        font-weight: 500; }
        .l-about__flow-item dd strong {
          color: #e60012;
          font-weight: 500;
          -webkit-font-feature-settings: "palt";
                  font-feature-settings: "palt"; }
        .l-about__flow-item dd span {
          display: block;
          font-size: 1.8rem;
          line-height: 1.6667; }
    .l-about__flow-atten {
      text-align: center;
      font-size: 1.4rem;
      line-height: 1.4286; }
  .l-about__block {
    margin-top: 153px;
    text-align: center; }
    .l-about__block--2 {
      margin-top: 142px; }
  .l-about__sttl {
    font-size: 4rem;
    line-height: 1.875;
    display: inline;
    font-weight: 500;
    background-color: #fff433;
    color: #005089;
    padding: 10px 20px 10px;
    letter-spacing: 0.6rem; }
    .l-about__sttl span {
      padding-left: 20px; }
  .l-about__txt {
    width: 455px;
    margin-top: 80px;
    font-size: 1.6rem;
    line-height: 2.125; }
    .l-about__txt p {
      padding-top: 30px; }
      .l-about__txt p.first {
        padding-top: 20px; }
    .l-about__txt.l-about__detail-left-txt {
      width: 460px; }
  .l-about__detail {
    text-align: left;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .l-about__detail-right {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row; }
      .l-about__detail-right .l-about__thumb img {
        margin: 0 0 30px auto; }
    .l-about__detail-left {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
          -ms-flex-direction: row-reverse;
              flex-direction: row-reverse; }
      .l-about__detail-left .l-about__thumb {
        margin-top: 113px; }
        .l-about__detail-left .l-about__thumb img {
          margin: 0 auto 30px 0; }
      .l-about__detail-left .l-about__txt p {
        padding-top: 33px; }
        .l-about__detail-left .l-about__txt p.first-left {
          padding-top: 80px; }
  .l-about__thumb {
    margin-top: 130px;
    width: 419px;
    width: 450px; }
    .l-about__thumb img {
      display: block;
      margin: 0 auto 30px;
      width: 419px; }
    .l-about__thumb p {
      font-size: 1.4rem;
      line-height: 2; }

/*PEOPLE*/
.l-people {
  margin-top: 278px;
  padding-top: 104px;
  padding-bottom: 50px;
  background-color: rgba(255, 241, 0, 0.8);
  position: relative; }
  .l-people__ttl {
    color: #005089;
    width: 960px;
    position: absolute;
    top: -165px;
    left: 0;
    right: 0;
    margin: auto;
    font-size: 4.4rem;
    line-height: 1.5455;
    font-weight: 500;
    letter-spacing: 0.6rem; }
    .l-people__ttl span {
      display: block; }
  .l-people__slide {
    position: relative; }
    .l-people__slide .slick-arrow {
      width: 12px;
      height: 0;
      padding-top: 19px;
      overflow: hidden;
      position: absolute;
      bottom: -5px;
      margin: auto;
      z-index: 100; }
    .l-people__slide .slick-prev {
      left: 390px;
      background-image: url(../images/arrow_prev_blue.svg);
      outline: none; }
    .l-people__slide .slick-next {
      right: 390px;
      background-image: url(../images/arrow_next_blue.svg);
      outline: none; }
    .l-people__slide .slick-dots {
      display: none;
      padding-top: 40px;
      text-align: center; }
      .l-people__slide .slick-dots li {
        margin: 0 10px;
        display: inline-block; }
        .l-people__slide .slick-dots li button {
          display: block;
          height: 12px;
          width: 12px;
          overflow: hidden;
          border-radius: 50%;
          border: 1px solid #005089;
          font-size: 0;
          line-height: 0;
          color: transparent;
          outline: none; }
        .l-people__slide .slick-dots li.slick-active button {
          background-color: #005089;
          border: 1px solid #005089; }
  .l-people__group.slick-slide {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .l-people__item {
    width: 20%;
    text-align: center;
    position: relative; }
    .l-people__item img {
      width: 100%; }
    .l-people__item .ttl {
      opacity: 0;
      position: absolute;
      top: 0;
      right: 0;
      left: 0;
      bottom: 0;
      margin: auto;
      background-color: rgba(255, 255, 255, 0.8);
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-transition: opacity .25s ease-in-out;
      transition: opacity .25s ease-in-out;
      padding: 20px; }
      .l-people__item .ttl:hover {
        opacity: 1; }
      .l-people__item .ttl dt {
        display: block;
        font-size: 1.6rem;
        line-height: 1.625;
        word-break: break-all;
        width: 100%; }
        .l-people__item .ttl dt span {
          display: block;
          font-size: 1.3rem;
          line-height: 1.8462;
          margin-bottom: 0px; }
      .l-people__item .ttl dd {
        margin-top: 15px;
        letter-spacing: .1rem; }
        .l-people__item .ttl dd span {
          display: inline-block; }
        .l-people__item .ttl dd span.name {
          font-size: 2.2rem;
          line-height: 0.9091; }
        .l-people__item .ttl dd span.other {
          font-size: 1.4rem;
          line-height: 1.4286; }
        .l-people__item .ttl dd span.senkou {
          font-size: 1.4rem;
          line-height: 1.4286;
          display: block;
          margin-bottom: 3px;
          text-align: center; }

/*SUPPORT*/
.l-support {
  overflow: hidden; }
  .l-support__ttl {
    margin-bottom: 110px; }
  .l-support-pc__slide {
    position: relative;
    display: block; }
    .l-support-pc__slide .carousel-3d-container {
      overflow: visible !important; }
    .l-support-pc__slide .carousel-3d-slide {
      overflow: visible;
      border-radius: 50%;
      background-color: rgba(255, 255, 255, 0.8);
      border-color: #cfcfcf;
      opacity: 1 !important;
      width: 720px; }
      .l-support-pc__slide .carousel-3d-slide.current {
        opacity: 1 !important; }
    .l-support-pc__slide .carousel-3d-controls {
      max-width: 800px !important;
      margin: auto !important;
      top: 0 !important;
      height: 80px !important;
      margin-top: -30px;
      left: 0 !important;
      bottom: 0 !important;
      right: 0 !important; }
      .l-support-pc__slide .carousel-3d-controls .next,
      .l-support-pc__slide .carousel-3d-controls .prev {
        border-radius: 50%;
        display: block;
        background-color: #5dc2d0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center; }
        .l-support-pc__slide .carousel-3d-controls .next span,
        .l-support-pc__slide .carousel-3d-controls .prev span {
          display: block;
          width: 18px;
          height: 0;
          padding-top: 30px;
          background-repeat: no-repeat;
          background-position: 50% 50%;
          overflow: hidden; }
      .l-support-pc__slide .carousel-3d-controls .next {
        -webkit-transition: all .25s ease-in-out;
        transition: all .25s ease-in-out; }
        .l-support-pc__slide .carousel-3d-controls .next span {
          -webkit-transition: all .25s ease-in-out;
          transition: all .25s ease-in-out;
          background-image: url(../images/arrow_next.svg); }
        .l-support-pc__slide .carousel-3d-controls .next:hover {
          opacity: 1;
          background-color: #fff100; }
          .l-support-pc__slide .carousel-3d-controls .next:hover span {
            background-image: url(../images/arrow_next_on.svg); }
      .l-support-pc__slide .carousel-3d-controls .prev {
        -webkit-transition: all .25s ease-in-out;
        transition: all .25s ease-in-out; }
        .l-support-pc__slide .carousel-3d-controls .prev span {
          -webkit-transition: all .25s ease-in-out;
          transition: all .25s ease-in-out;
          background-image: url(../images/arrow_prev.svg); }
        .l-support-pc__slide .carousel-3d-controls .prev:hover {
          opacity: 1;
          background-color: #fff100; }
          .l-support-pc__slide .carousel-3d-controls .prev:hover span {
            background-image: url(../images/arrow_prev_on.svg); }
  .l-support-pc__num {
    font-family: 'Oswald',sans-serif;
    font-weight: 600;
    font-size: 7.6rem;
    line-height: 1;
    text-align: center;
    margin-top: -4rem;
    color: #5dc2d0; }
  .l-support-pc__sttl {
    text-align: center;
    font-size: 3.6rem;
    line-height: 1.4444;
    font-weight: 500;
    letter-spacing: .5rem;
    margin-top: 65px;
    color: #005089; }
    .l-support-pc__sttl span {
      display: block; }
    .l-support-pc__sttl .palt {
      display: inline;
      -webkit-font-feature-settings: "palt";
              font-feature-settings: "palt"; }
  .l-support-pc__detail {
    width: 640px;
    margin: auto;
    text-align: center; }
    .l-support-pc__detail p {
      width: 550px;
      line-height: 2.1111;
      text-align: left;
      margin: 25px auto 0;
      font-size: 1.8rem;
      line-height: 2.1111; }
    .l-support-pc__detail h4 {
      font-size: 2.8rem;
      line-height: 0.8929;
      font-weight: 500;
      margin-top: 25px;
      color: #5dc2d0; }
    .l-support-pc__detail ul {
      width: 465px;
      display: inline-block;
      text-align: left;
      font-size: 1.6rem;
      line-height: 2;
      list-style: none;
      margin-top: 10px; }
      .l-support-pc__detail ul li {
        margin-top: 8px;
        padding-right: 1em;
        text-indent: -1em; }
        .l-support-pc__detail ul li:before {
          content: '・'; }
        .l-support-pc__detail ul li strong {
          font-weight: 500;
          padding: 3px 0;
          background-color: #fff100; }
        .l-support-pc__detail ul li.no-bullet {
          text-indent: 0;
          margin-left: -1em;
          margin-bottom: 35px; }
          .l-support-pc__detail ul li.no-bullet:before {
            display: none; }
  .l-support-sp__slide {
    display: none; }
  .l-support-sp__item {
    padding-top: 47px; }
  .l-support-sp__head {
    border: 2px solid rgba(0, 80, 137, 0.302);
    background-color: rgba(255, 255, 255, 0.8);
    color: #005089;
    padding: 25px 65px 15px 15px;
    position: relative; }
    .l-support-sp__head:after {
      position: absolute;
      right: 25px;
      top: 0;
      bottom: 0;
      margin: auto;
      content: '';
      width: 18px;
      height: 10px;
      background-image: url(../images/arrow_down_sp.svg); }
    .l-support-sp__head.active:after {
      background-image: url(../images/arrow_up_sp.svg); }
  .l-support-sp__num {
    font-family: 'Oswald',sans-serif;
    font-weight: 600;
    font-size: 4.7rem;
    line-height: 0.4255;
    text-align: center;
    color: #5dc2d0;
    position: absolute;
    top: -18px;
    left: 0;
    right: 0;
    margin: auto; }
  .l-support-sp__sttl {
    font-size: 2rem;
    line-height: 1.55;
    font-weight: 500; }
  .l-support-sp__detail {
    display: none;
    font-size: 1.6rem;
    line-height: 2; }
    .l-support-sp__detail p {
      margin-top: 37px; }
    .l-support-sp__detail br {
      display: none; }
    .l-support-sp__detail h4 {
      text-align: center;
      font-size: 2.2rem;
      line-height: 1;
      font-weight: 500;
      margin-top: 30px;
      color: #5dc2d0; }
    .l-support-sp__detail ul {
      font-size: 1.4rem;
      line-height: 2;
      display: inline-block;
      list-style: none;
      margin-top: 10px;
      text-indent: -1em;
      padding-left: 1em; }
      .l-support-sp__detail ul li {
        margin-top: 8px;
        padding-right: 1em;
        text-indent: -1em; }
        .l-support-sp__detail ul li:before {
          content: '・'; }
        .l-support-sp__detail ul li strong {
          font-weight: 500;
          padding: 3px 0;
          background-color: #fff100; }

/*COME*/
.l-come {
  margin-top: 135px; }
  .l-come__ttl {
    width: 550px;
    margin: auto;
    font-size: 4.4rem;
    line-height: 1.1818;
    font-weight: 500;
    text-align: center;
    color: #005089;
    position: relative;
    letter-spacing: .6rem; }
  .l-come__three {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 885px;
    margin: 105px auto 0;
    list-style: none; }
    .l-come__three li {
      position: relative;
      width: 260px;
      height: 260px;
      opacity: 0;
      -webkit-transform: rotate(-180deg) scale(0.5, 0.5);
              transform: rotate(-180deg) scale(0.5, 0.5); }
      .l-come__three li div {
        position: relative;
        top: -10px; }
      .l-come__three li strong {
        letter-spacing: -.2rem;
        -webkit-text-fill-color: #fff;
        -webkit-text-stroke: 1px #005089;
        font-size: 4.2rem;
        line-height: 1.2381; }
      .l-come__three li .obj {
        position: absolute;
        display: block; }
    .l-come__three--no1 .obj {
      width: 80px;
      height: 22px;
      top: 42px;
      right: 9px; }
    .l-come__three--no2 .obj {
      width: 50px;
      height: 48px;
      top: 36px;
      right: 29px; }
    .l-come__three--no3 .obj {
      width: 37px;
      height: 72px;
      top: 23px;
      right: 39px; }
  .l-come__txt {
    margin-top: 84px;
    text-align: center;
    font-size: 1.8rem;
    line-height: 2.1111;
    overflow: hidden; }
    .l-come__txt h3 {
      width: 661px;
      margin: auto; }
    .l-come__txt p {
      margin-top: 57px; }
      .l-come__txt p strong {
        font-weight: 500;
        padding: 2px 0;
        background-color: #fff433; }
      .l-come__txt p.outro {
        font-size: 2.4rem;
        line-height: 2.1667;
        color: #005089;
        margin-top: 35px; }

/*ALUMNI*/
.l-alumni {
  position: relative;
  margin-top: 140px;
  padding-top: 53px; }
  .l-alumni__ttl {
    position: relative;
    left: 50%;
    width: 406px;
    width: 36.9091%;
    top: -53px;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    margin-bottom: -18px; }
  .l-alumni__bg {
    background-color: #daeff4;
    width: calc(100% - 180px);
    max-width: 1100px;
    margin: 0 auto; }
  .l-alumni__peopleList {
    list-style: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 0 70px;
    margin: 0 6.3636%;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
    -webkit-column-gap: 36px;
            column-gap: 36px;
    -webkit-column-gap: 3.75%;
            column-gap: 3.75%; }
  .l-alumni__people {
    text-align: center; }
    .l-alumni__people img {
      width: 160px; }
    .l-alumni__people--name {
      font-size: 1.8rem;
      line-height: 2;
      font-weight: 500;
      margin-top: 16px; }
    .l-alumni__people--cls {
      font-size: 1.3rem;
      line-height: 2;
      font-weight: 500; }
  .l-alumni .btn {
    padding-top: 34px;
    padding-bottom: 45px;
    text-align: center; }
    .l-alumni .btn a {
      position: relative;
      padding: 23px 0;
      margin: auto;
      font-size: 1.6rem;
      line-height: 1.625;
      color: #fff;
      display: block;
      text-decoration: none;
      background-color: #5dc2d0;
      border-width: 1px;
      border-color: white;
      border-color: #5dc2d0;
      border-style: solid;
      border-radius: 4px;
      width: 420px;
      -webkit-transition: all .25s ease-in-out;
      transition: all .25s ease-in-out;
      letter-spacing: .3rem; }
      .l-alumni .btn a svg {
        position: absolute;
        top: 0;
        right: 35px;
        bottom: 0;
        margin: auto;
        stroke: white; }
      .l-alumni .btn a:hover {
        color: #5cc2cf;
        background-color: #fff;
        border-color: #5dc2d0; }
        .l-alumni .btn a:hover svg {
          stroke: #5cc2cf; }

/*YOUTUBE*/
.l-youtube {
  position: relative;
  width: 930px;
  margin: 70px auto 0;
  background-color: black; }
  .l-youtube__video {
    margin-top: 60px;
    overflow: hidden; }
    .l-youtube__video:hover .l-header-movie__btn {
      opacity: 0.5; }
    .l-youtube__video::before {
      content: '';
      display: block;
      padding-top: 56.25%; }
  .l-youtube__wrapper {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0; }
  .l-youtube__poster {
    position: absolute;
    z-index: 1;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    cursor: pointer; }
  .l-youtube__btn {
    width: 84px;
    height: 84px;
    position: absolute;
    display: block;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    border-radius: 50%;
    z-index: 20;
    border: 2px solid #fff;
    top: 50%;
    left: 50%;
    -webkit-transition: opacity .25s ease-in-out;
    transition: opacity .25s ease-in-out; }
  .l-youtube__icon {
    width: 14px;
    height: 20px;
    left: calc(50% - 4px);
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
    position: absolute;
    display: block;
    top: 50%;
    z-index: 30;
    cursor: pointer; }

/*RECRUIT*/
.l-recruit {
  margin-top: 155px;
  background-color: #fffbba;
  padding-bottom: 160px; }
  * + html .l-recruit {
    zoom: 1; }
  .l-recruit:after {
    content: "";
    clear: both;
    display: block;
    height: 0; }
  .l-recruit__block {
    width: 865px;
    margin: auto; }
  .l-recruit__ttl {
    color: #005089;
    text-align: center;
    padding-top: 105px;
    font-size: 3.6rem;
    line-height: 1;
    font-weight: 500;
    padding-bottom: 33px;
    position: relative;
    letter-spacing: .6rem; }
    .l-recruit__ttl:after {
      position: absolute;
      content: '';
      width: 140px;
      height: 1px;
      bottom: 0;
      right: 0;
      left: 0;
      margin: auto;
      background-color: #005089; }
  .l-recruit__sttl {
    font-size: 3rem;
    line-height: 1.1333;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #005089;
    margin-top: 67px; }
    .l-recruit__sttl .num {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      width: 53px;
      height: 53px;
      font-family: 'Oswald',sans-serif;
      font-weight: 600;
      font-size: 2.6rem;
      line-height: 1.3077;
      border-radius: 50%;
      margin-right: 10px;
      background-color: #fff100; }
    .l-recruit__sttl--ttl3 {
      margin-top: 100px; }
  .l-recruit__copy {
    font-size: 1.8rem;
    line-height: 2; }
    .l-recruit__copy-center {
      text-align: center; }
    .l-recruit__copy--copy1 {
      margin-top: 65px; }
    .l-recruit__copy--copy2 {
      margin-top: 40px; }
    .l-recruit__copy--copy3 {
      margin-top: 35px; }
    .l-recruit__copy--copy4 {
      margin-top: 15px; }
  .l-recruit__outro {
    margin-top: 38px;
    text-align: center;
    font-size: 1.8rem;
    line-height: 2; }
  .l-recruit__box {
    border: 1px solid #005089; }
    .l-recruit__box--list {
      margin-top: 42px;
      padding: 14px 43px 47px; }
      .l-recruit__box--list li {
        list-style: none;
        margin-top: 26px;
        font-size: 1.8rem;
        line-height: 2;
        font-weight: bold;
        position: relative;
        text-indent: -1em;
        padding-left: 1em; }
        .l-recruit__box--list li:before {
          content: '・'; }
        .l-recruit__box--list li p {
          margin-top: 10px;
          padding: 0;
          text-indent: 0; }
        .l-recruit__box--list li .atten {
          display: block;
          font-weight: 500;
          font-size: 1.4rem;
          line-height: 1.6429;
          padding: 0;
          text-indent: 0; }
    .l-recruit__box--num {
      margin-top: 42px;
      padding: 14px 43px 47px; }
      .l-recruit__box--num li {
        list-style: none;
        margin-top: 26px;
        font-size: 1.8rem;
        line-height: 2;
        font-weight: bold;
        position: relative; }
        .l-recruit__box--num li:before {
          counter-increment: number 1;
          content: counter(number) " "; }
        .l-recruit__box--num li p {
          margin-top: 10px; }
        .l-recruit__box--num li .atten {
          display: block;
          font-weight: 500;
          font-size: 1.4rem;
          line-height: 1.6429; }
    .l-recruit__box--point {
      margin-top: 43px;
      padding: 0 53px 40px; }
      .l-recruit__box--point h4 {
        margin-top: 53px;
        font-size: 2.4rem;
        line-height: 1;
        font-weight: bold;
        color: #005089; }
      .l-recruit__box--point ul {
        margin-top: 16px;
        font-size: 1.6rem;
        line-height: 2.5;
        list-style: none; }
        .l-recruit__box--point ul li {
          text-indent: -4.5rem;
          padding-left: 4.5rem; }
          .l-recruit__box--point ul li:before {
            content: "";
            background-image: url(../images/check.svg);
            background-repeat: no-repeat;
            width: 24px;
            height: 17px;
            margin-right: 22px;
            display: inline-block;
            position: relative;
            top: 0.4rem; }
    .l-recruit__box--txt {
      margin-top: 32px;
      padding: 40px 53px 40px; }
      .l-recruit__box--txt p {
        font-size: 1.6rem;
        line-height: 1.875;
        margin-top: 20px;
        margin-bottom: 20px; }
      .l-recruit__box--txt hr {
        border-top: 1px dotted #000;
        border-right: 0;
        border-left: 0;
        border-bottom: 0;
        -webkit-margin-before: 0;
                margin-block-start: 0;
        -webkit-margin-after: 0;
                margin-block-end: 0; }
  .l-recruit__case {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .l-recruit__case-block {
      background-color: #fffeee;
      width: 405px;
      margin-top: 50px;
      position: relative; }
    .l-recruit__case-ttl {
      color: #005089;
      font-size: 1.8rem;
      line-height: 1;
      font-weight: 500;
      background-color: #fffbba;
      padding-bottom: 20px; }
    .l-recruit__case-detail {
      color: #005089;
      padding: 25px 45px 40px; }
      * + html .l-recruit__case-detail {
        zoom: 1; }
      .l-recruit__case-detail:after {
        content: "";
        clear: both;
        display: block;
        height: 0; }
      .l-recruit__case-detail .txt dl {
        margin-top: 25px; }
        .l-recruit__case-detail .txt dl dt {
          color: #5cc2cf;
          font-size: 1.6rem;
          line-height: 1.875; }
        .l-recruit__case-detail .txt dl dd {
          font-weight: bold;
          font-size: 1.4rem;
          line-height: 2; }
          .l-recruit__case-detail .txt dl dd strong {
            font-size: 2rem;
            line-height: 1.5; }
          .l-recruit__case-detail .txt dl dd ul {
            list-style: none; }
            .l-recruit__case-detail .txt dl dd ul li {
              text-indent: -1em;
              padding-left: 1em; }
              .l-recruit__case-detail .txt dl dd ul li:before {
                content: '・'; }
  .l-recruit__btn {
    text-align: center;
    margin-top: 53px; }
    .l-recruit__btn a {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      font-size: 2.4rem;
      line-height: 0.8333;
      text-decoration: none;
      color: #fff;
      background-color: #71c7d3;
      width: 406px;
      height: 73px;
      margin: auto;
      -webkit-transition: all .25s ease-in-out;
      transition: all .25s ease-in-out; }
      .l-recruit__btn a:after {
        content: '';
        display: inline-block;
        width: 24px;
        height: 31px;
        background-image: url(../images/ico_doc.svg);
        background-repeat: no-repeat;
        margin-left: 10px;
        -webkit-transition: all .25s ease-in-out;
        transition: all .25s ease-in-out; }
      .l-recruit__btn a:hover {
        color: #5ec2cf;
        background-color: #fff100; }
        .l-recruit__btn a:hover:after {
          background-image: url(../images/ico_doc_on.svg); }
    .l-recruit__btn.disabled a {
      pointer-events: none;
      color: rgba(255, 255, 255, 0.6); }
      .l-recruit__btn.disabled a:after {
        opacity: .6; }
    .l-recruit__btn .atten {
      font-size: 1.4rem;
      line-height: 2.7143;
      margin-bottom: 9px; }
  .l-recruit__mail {
    font-weight: bold;
    font-size: 2.6rem;
    line-height: 1.3077;
    margin-top: 10px;
    text-align: center;
    padding-bottom: 60px;
    border-bottom: 1px solid #005089; }
    .l-recruit__mail a {
      color: #5ec2cf;
      -webkit-transition: all .25s ease-in-out;
      transition: all .25s ease-in-out; }
      .l-recruit__mail a:before {
        content: '';
        width: 26px;
        height: 21px;
        background-image: url(../images/ico_mail.svg);
        background-repeat: no-repeat;
        display: inline-block;
        position: relative;
        top: .2rem;
        margin-right: 10px;
        -webkit-transition: all .25s ease-in-out;
        transition: all .25s ease-in-out; }
      .l-recruit__mail a:hover {
        color: #fff10f; }
        .l-recruit__mail a:hover:before {
          background-image: url(../images/ico_mail_on.svg); }

/*ENTRY*/
.l-entry {
  margin-top: 135px;
  background-color: #fffbba;
  position: relative; }
  .l-entry__body {
    padding-bottom: 80px; }
  .l-entry__1st {
    position: absolute;
    right: 0;
    left: 760px;
    top: -80px;
    margin: auto;
    width: 171px;
    height: 283px; }
  .l-entry__ttl {
    padding-top: 75px;
    text-align: center;
    font-family: 'Oswald',sans-serif;
    font-weight: 600;
    font-size: 5.6rem;
    line-height: 1;
    color: #5ec2cf;
    position: relative;
    padding-bottom: 50px; }
    .l-entry__ttl:before {
      content: '';
      width: 140px;
      height: 1px;
      background-color: #5ec2cf;
      position: absolute;
      bottom: 0;
      right: 0;
      left: 0;
      margin: auto; }
    .l-entry__ttl--normal {
      font-family: "Original Yu Gothic","Yu Gothic",YuGothic,sans-serif;
      font-weight: 600;
      font-size: 5.6rem;
      line-height: 1.2143;
      color: #005089; }
      .l-entry__ttl--normal .mintxt {
        display: block;
        color: #5ec2cf;
        font-weight: 500;
        font-size: 2.6rem;
        line-height: 1;
        margin-bottom: 30px; }
  .l-entry__detail p {
    margin-top: 50px;
    font-size: 1.8rem;
    line-height: 1.8889;
    text-align: center; }
    .l-entry__detail p.mail {
      font-weight: bold;
      font-size: 2.6rem;
      line-height: 1.3077;
      margin-top: 10px; }
      .l-entry__detail p.mail a {
        color: #5ec2cf;
        -webkit-transition: all .25s ease-in-out;
        transition: all .25s ease-in-out; }
        .l-entry__detail p.mail a:before {
          content: '';
          width: 26px;
          height: 21px;
          background-image: url(../images/ico_mail.svg);
          background-repeat: no-repeat;
          display: inline-block;
          position: relative;
          top: .2rem;
          margin-right: 10px;
          -webkit-transition: all .25s ease-in-out;
          transition: all .25s ease-in-out; }
        .l-entry__detail p.mail a:hover {
          color: #fff10f; }
          .l-entry__detail p.mail a:hover:before {
            background-image: url(../images/ico_mail_on.svg); }
  .l-entry__detail h4 {
    margin-top: 50px;
    text-align: center;
    font-size: 1.6rem;
    line-height: 1.5;
    color: #005089; }
  .l-entry__detail .must {
    width: 680px;
    margin: auto;
    text-align: center;
    margin-top: 10px;
    font-size: 1.6rem;
    line-height: 1.5; }
    .l-entry__detail .must li {
      font-weight: 600;
      display: inline-block;
      padding-right: 5px;
      padding-left: 5px; }
      .l-entry__detail .must li.atten {
        display: block;
        margin-top: 10px; }
      .l-entry__detail .must li .num {
        text-align: center;
        display: inline-block;
        width: 30px;
        height: 30px;
        font-family: 'Oswald',sans-serif;
        font-weight: 600;
        font-size: 1.6rem;
        line-height: 1.875;
        border-radius: 50%;
        margin-right: 10px;
        background-color: #fff100; }
    .l-entry__detail .must .atten {
      text-align: center;
      color: #f00;
      font-size: 1.4rem;
      line-height: 1.7143; }
  .l-entry__contact {
    max-width: 720px;
    margin: 40px auto 0;
    background: #fff;
    overflow: hidden;
    padding-bottom: 60px;
    border: 2px solid #60c2cf;
    border-radius: 10px; }

.l-entry-top {
  margin: 100px -100px;
  overflow: hidden;
  background-color: rgba(255, 255, 255, 0.8); }
  .l-entry-top__body {
    border: 4px solid #daeff4;
    background-color: rgba(255, 255, 255, 0.8); }
    .l-entry-top__body .obj1,
    .l-entry-top__body .obj2 {
      position: absolute; }
    .l-entry-top__body .obj1 {
      width: 380px;
      top: -90px;
      left: -160px; }
    .l-entry-top__body .obj2 {
      width: 360px;
      bottom: -130px;
      right: -70px;
      z-index: 0; }
  .l-entry-top__1st {
    top: 50px;
    right: 0;
    margin-right: 70px;
    z-index: 10;
    width: 153px;
    height: 283px; }
  .l-entry-top__ttl {
    position: relative;
    z-index: 1;
    padding-bottom: 31px; }
    .l-entry-top__ttl:before {
      display: none; }
    .l-entry-top__ttl .underline {
      padding-bottom: 4px;
      background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(0%, #fff433));
      background: linear-gradient(transparent 70%, #fff433 0%);
      display: inline; }
    .l-entry-top__ttl .mintxt {
      margin-bottom: 50px; }
    .l-entry-top__ttl svg {
      fill: black;
      -webkit-transform: rotate(-183deg);
              transform: rotate(-183deg);
      position: absolute;
      z-index: -1;
      left: 0;
      right: 0;
      margin: auto; }
    .l-entry-top__ttl .bg1 {
      top: 130px;
      width: 670px; }
    .l-entry-top__ttl .bg2 {
      width: 720px;
      top: 189px;
      -webkit-transform: rotate(-5deg);
              transform: rotate(-5deg); }
  .l-entry-top__detail {
    position: relative;
    z-index: 1; }
    .l-entry-top__detail p.mail {
      position: relative;
      margin-top: 20px; }
      .l-entry-top__detail p.mail svg {
        width: 400px;
        z-index: 0;
        position: absolute;
        top: -15px;
        left: 0;
        right: 0;
        margin: auto; }
      .l-entry-top__detail p.mail a {
        position: relative;
        font-weight: 500;
        color: #fff;
        z-index: 1; }
        .l-entry-top__detail p.mail a:before {
          background-image: url(../images/ico_mail_top.svg); }

.l-banner {
  max-width: 960px;
  margin: 100px auto 170px;
  background-color: #fff; }
  .l-banner a {
    -webkit-transition: opacity .25s ease;
    transition: opacity .25s ease; }
    .l-banner a:hover {
      opacity: 0.6; }

/*FOOTER*/
.l-footer {
  position: relative;
  overflow: hidden;
  padding-top: 115px;
  height: 1190px;
  background-image: -webkit-gradient(linear, left bottom, left top, color-stop(4%, #ecf4e3), color-stop(20%, #c0e3dd), color-stop(31%, #93d2d6), color-stop(71%, #5cc2cf));
  background-image: linear-gradient(0deg, #ecf4e3 4%, #c0e3dd 20%, #93d2d6 31%, #5cc2cf 71%); }
  .l-footer__link {
    text-align: center; }
    .l-footer__link .logo {
      width: 276px;
      height: 235px;
      margin: auto; }
    .l-footer__link .btn {
      padding-top: 35px;
      padding-bottom: 125px; }
      .l-footer__link .btn a {
        position: relative;
        padding: 16px 0;
        margin: auto;
        font-size: 1.6rem;
        line-height: 1.625;
        color: #fff;
        display: block;
        text-decoration: none;
        border-width: 1px;
        border-color: white;
        border-style: solid;
        border-radius: 4px;
        width: 498px;
        -webkit-transition: all .25s ease-in-out;
        transition: all .25s ease-in-out;
        letter-spacing: .3rem; }
        .l-footer__link .btn a svg {
          position: absolute;
          top: 0;
          right: 35px;
          bottom: 0;
          margin: auto;
          stroke: white; }
        .l-footer__link .btn a:hover {
          color: #5cc2cf;
          background-color: #fff; }
          .l-footer__link .btn a:hover svg {
            stroke: #5cc2cf; }
  .l-footer__message {
    width: 1150px;
    overflow: hidden;
    margin: auto;
    background-repeat: no-repeat;
    color: #fff;
    text-align: center;
    font-size: 4.2rem;
    line-height: 1;
    letter-spacing: .7rem;
    font-weight: 200;
    -webkit-font-smoothing: antialiased; }
  .l-footer__bg {
    width: 1605px;
    height: 188px;
    position: absolute;
    bottom: 190px;
    right: 0;
    left: -120px;
    margin: auto; }
    .l-footer__bg img {
      width: 1608px;
      height: 403px; }
  .l-footer__sns {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 0;
    list-style-type: none;
    position: absolute;
    bottom: 120px; }
    .l-footer__sns li {
      width: 30px;
      margin: 0 15px; }
      .l-footer__sns li a {
        -webkit-transition: opacity .25s ease;
        transition: opacity .25s ease; }
        .l-footer__sns li a:hover {
          opacity: .6; }
  .l-footer__copy {
    text-align: center;
    position: absolute;
    bottom: 30px;
    right: 0;
    left: 0;
    margin: auto; }
    .l-footer__copy span {
      display: block;
      font-size: 1.1rem;
      line-height: 1.8182;
      padding: 0 10px; }
    .l-footer__copy small {
      font-size: 1.1rem;
      line-height: 1.8182;
      color: #333;
      display: block;
      margin-top: 10px; }

@supports (-ms-ime-align: auto) {
  .carousel-3d-container {
    height: auto !important; }
  .l-people__item .ttl:not(:target) {
    margin: -12% 2% 12%; } }

@-moz-document url-prefix() { }

_::-webkit-full-page-media, _:future, :root .l-header__date dd strong {
  font-weight: 400; }

@media screen {
  [hidden~="screen"] {
    display: inherit; }
  [hidden~="screen"]:not(:active):not(:focus):not(:target) {
    position: absolute !important;
    clip: rect(0 0 0 0) !important; } }

@media screen and (min-width: 0px) and (max-width: 767px) {
    body {
      background-image: url(../images/bg_sp.png);
      background-size: 658px auto;
      background-position: 50% -95px;
      background-repeat: repeat-y;
      min-width: 320px; }
  .pc {
    display: none; }
    .sp {
      display: block; }
    .pagetop {
      width: 70px;
      right: 10px;
      bottom: 5px; }
        .pagetop a:hover {
          opacity: 1; }
    .l-header {
      padding-top: 23px; }
      .l-header__body {
        width: auto; }
      .l-header__copy {
        width: 71.46%;
        margin: 0 20px; }
      .l-header__eye {
        width: auto;
        padding-top: 24px;
        margin: 0 13px; }
        .l-header__eye img {
          width: 100%; }
      .l-header__entry {
        display: none; }
        .l-header__entry a {
          text-align: center;
          display: inline-block;
          width: 113px;
          height: 113px;
          font-size: 1.2rem;
          line-height: 1.2083;
          padding: 5px; }
          .l-header__entry a:after {
            width: 14px;
            height: 8px;
            margin: 12px auto 0; }
          .l-header__entry a span {
            margin-top: 23px;
            font-size: 1.4rem;
            line-height: 1;
            padding-bottom: 8px; }
          .l-header__entry a:hover {
            background-color: #5cc2cf;
            color: #fff; }
            .l-header__entry a:hover:after {
              background-image: url(../images/arrow_down.svg); }
      .l-header__ttl {
        display: block;
        margin-left: 0; }
      .l-header__sitename {
        width: auto;
        padding-top: 9px;
        margin: 0 30px; }
      .l-header__date {
        margin: auto;
        margin-top: 32px;
        margin-left: 20px;
        margin-right: 20px;
        padding: 10px 0;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center; }
        .l-header__date dt {
          font-size: 1.3rem;
          line-height: 1.2308;
          margin-right: 0; }
        .l-header__date dd {
          font-size: 1.2rem;
          line-height: 1.3333;
          margin-right: 0; }
          .l-header__date dd strong {
            font-size: 2.2rem;
            line-height: 1; }
          .l-header__date dd span {
            font-size: 1rem;
            line-height: 1; }
            .l-header__date dd span.comment {
              font-size: 1.3rem;
              line-height: 1.5385;
              top: -26px; }
      .l-header__comment {
        margin: 30px 20px 0;
        padding: 25px 15px;
        font-size: 1.5rem;
        line-height: 2; }
      .l-header__info {
        margin: 35px 20px 0;
        padding: 0 20px 65px; }
        .l-header__info .comment {
          margin-bottom: 35px; }
          .l-header__info .comment p {
            font-size: 1.4rem;
            line-height: 2.8571; }
        .l-header__info .item {
          margin: 40px 0 0; }
        .l-header__info .ttl {
          font-size: 2.4rem;
          line-height: 1.3333;
          padding-bottom: 30px; }
          .l-header__info .ttl:after {
            width: 70px; }
        .l-header__info .info {
          margin-top: 40px;
          display: block; }
          .l-header__info .info .thumb {
            width: 100%; }
          .l-header__info .info .date {
            margin-left: 0; }
            .l-header__info .info .date li {
              margin: 25px 0 0;
              font-size: 1.6rem;
              line-height: 1.875; }
              .l-header__info .info .date li strong {
                font-size: 2rem;
                line-height: 1.2; }
              .l-header__info .info .date li p {
                font-size: 1.6rem;
                line-height: 1.75; }
              .l-header__info .info .date li .mrk {
                padding: 5px 2px 2px; }
              .l-header__info .info .date li .place {
                font-size: 2rem;
                line-height: 1.2;
                padding-left: 35px;
                margin-left: 15px; }
        .l-header__info .detail {
          width: auto;
          text-align: left; }
          .l-header__info .detail p {
            font-size: 1.6rem;
            line-height: 1.75; }
            .l-header__info .detail p.atten {
              font-size: 1.4rem;
              line-height: 1.8571;
              margin-top: 10px; }
          .l-header__info .detail ul {
            font-size: 1.2rem;
            line-height: 2; }
          .l-header__info .detail dl {
            margin-top: 30px;
            display: block;
            text-align: center; }
            .l-header__info .detail dl dt {
              font-size: 1.9rem;
              line-height: 1; }
            .l-header__info .detail dl dd {
              margin-top: 10px;
              margin-left: 0;
              font-size: 2.2rem;
              line-height: 1; }
              .l-header__info .detail dl dd.mail {
                text-align: center;
                font-size: 1.9rem;
                line-height: 1.7895; }
                  .l-header__info .detail dl dd.mail a:before {
                    width: 20px;
                    height: 16px; }
      .l-header__bnr {
        margin-top: 70px;
        margin-left: 20px;
        margin-right: 20px; }
      .l-header-movie {
        width: auto;
        margin: 75px 20px 0; }
        .l-header-movie__video {
          position: relative;
          margin-top: 53px; }
        .l-header-movie__btn {
          width: 60px;
          height: 60px; }
        .l-header-movie__icon {
          -webkit-transform: translate(0, -50%);
                  transform: translate(0, -50%);
          left: calc(50% - 2px);
          width: 7px;
          height: 10px; }
    .l-main__ttl {
      padding-top: 55px;
      font-size: 2.7rem;
      line-height: 1.1852; }
      .l-main__ttl .num {
        font-size: 4.5rem;
        line-height: 0.4444; }
    .l-about {
      width: auto;
      margin: 14.666% auto 0; }
      .l-about__ttl {
        text-align: left;
        font-size: 2.7rem;
        line-height: 1.4815;
        margin: 0 20px; }
        .l-about__ttl strong {
          display: inline;
          font-size: 2.7rem;
          line-height: 1.4815; }
      .l-about__flow {
        margin: 0 40px;
        padding-bottom: 0;
        padding-left: 0; }
        .l-about__flow-ttl {
          width: 95px;
          height: 95px;
          font-size: 1.6rem;
          line-height: 1.25; }
        .l-about__flow-item {
          float: none;
          margin-top: 23px;
          margin-left: auto;
          margin-right: auto;
          width: 230px;
          height: 230px; }
          .l-about__flow-item dt {
            margin-top: -12px; }
          .l-about__flow-item dd {
            font-size: 2.1rem;
            line-height: 1.4762; }
        .l-about__flow-item--no1 {
          width: 22px; }
        .l-about__flow-item--no2 {
          width: 28px; }
        .l-about__flow-item--no3 {
          width: 25px; }
        .l-about__flow-atten {
          text-indent: -1em;
          padding-left: 1em;
          text-align: left;
          margin: 0 20px;
          margin-top: 40px; }
      .l-about__block {
        text-align: left;
        margin: 61px 20px 0; }
      .l-about__sttl {
        font-size: 2.7rem;
        line-height: 1.4815;
        padding: 2px 0 2px; }
      .l-about__txt {
        width: auto;
        margin-top: 0;
        font-size: 1.5rem;
        line-height: 2; }
        .l-about__txt.l-about__detail-left-txt {
          width: auto; }
      .l-about__detail {
        display: block; }
          .l-about__detail-right .l-about__thumb img {
            margin: 0 auto; }
        .l-about__detail-left-txt {
          margin-top: 0; }
          .l-about__detail-left .l-about__thumb {
            margin-top: 38px; }
            .l-about__detail-left .l-about__thumb img {
              margin: 0 auto; }
      .l-about__thumb {
        margin-top: 33px;
        width: auto; }
        .l-about__thumb img {
          width: 80%; }
        .l-about__thumb p {
          font-size: 1.2rem;
          line-height: 2; }
    .l-people {
      margin-top: 162px;
      padding-top: 80px;
      padding-bottom: 40px; }
      .l-people__ttl {
        width: auto;
        font-size: 2.7rem;
        line-height: 1.4815;
        position: relative;
        top: auto;
        left: auto;
        right: auto;
        margin: -180px 20px 30px; }
        .l-people__ttl span {
          display: inline; }
        .l-people__slide .slick-arrow {
          bottom: -1%; }
        .l-people__slide .slick-prev {
          left: 30px; }
        .l-people__slide .slick-next {
          right: 30px; }
        .l-people__slide .slick-dots {
          padding-top: 2.666%; }
      .l-people__group.slick-slide {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
      .l-people__item {
        text-align: left;
        width: 50%;
        padding-bottom: 8%; }
        .l-people__item .ttl {
          background-color: white;
          opacity: 1;
          position: relative;
          top: auto;
          right: auto;
          left: auto;
          bottom: auto;
          display: block;
          margin: -12% 2%;
          padding: 8px 10px; }
            .l-people__item .ttl dt span.job {
              font-size: 1.1rem;
              line-height: 1.3636; }
          .l-people__item .ttl dt {
            font-size: 1.1rem;
            line-height: 1.3636; }
          .l-people__item .ttl dd {
            margin-top: 4px; }
            .l-people__item .ttl dd span.name {
              font-size: 1.3rem;
              line-height: 1; }
            .l-people__item .ttl dd span.other {
              font-size: 1rem;
              line-height: 2; }
            .l-people__item .ttl dd span.senkou {
              text-align: left;
              margin-bottom: 0;
              font-size: 1rem;
              line-height: 2; }
      .l-support__ttl {
        margin-bottom: 5px; }
      .l-support-pc__slide {
        display: none; }
      .l-support-sp__slide {
        display: block;
        margin: 0 20px 0; }
    .l-come {
      margin: 70px 20px 0; }
      .l-come__ttl {
        max-width: 316px;
        margin: auto;
        width: auto; }
      .l-come__three {
        width: auto;
        max-width: 280px;
        margin: 38px auto 0; }
        .l-come__three li {
          font-size: 1.3rem;
          line-height: 2;
          width: 130px;
          height: 130px; }
          .l-come__three li strong {
            font-size: 2rem;
            line-height: 1.9; }
        .l-come__three--no1 .obj {
          width: 47px;
          height: 13px;
          top: 20px;
          right: 5px; }
        .l-come__three--no2 .obj {
          width: 31px;
          height: 29px;
          top: 20px;
          right: 5px; }
      .l-come__three--no3 {
        -webkit-box-ordinal-group: 4;
            -ms-flex-order: 3;
                order: 3;
        margin: auto; }
        .l-come__three--no3 .obj {
          width: 16px;
          height: 50px;
          top: 10px;
          right: 15px; }
      .l-come__txt {
        text-align: left;
        font-size: 1.5rem;
        line-height: 2;
        margin: 35px 0 0; }
        .l-come__txt br {
          display: none; }
        .l-come__txt h3 {
          width: auto;
          max-width: 257px;
          margin: 0 auto; }
        .l-come__txt p {
          margin-top: 20px; }
          .l-come__txt p.outro {
            font-size: 1.8rem;
            line-height: 1.4444; }
    .l-alumni {
      padding-top: 30px;
      margin-top: 66px; }
      .l-alumni__ttl {
        width: 270px;
        width: 96.0854%;
        top: -30px;
        margin-bottom: 0; }
      .l-alumni__bg {
        padding: 0 27px;
        width: 89.3333%; }
      .l-alumni__peopleList {
        margin: 0;
        row-gap: 20px;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-flow: row wrap;
                flex-flow: row wrap; }
      .l-alumni__people {
        width: 46.4286%; }
        .l-alumni__people img {
          width: 100%; }
        .l-alumni__people--name {
          font-size: 1.4rem;
          line-height: 1.2857;
          margin-top: 14px; }
        .l-alumni__people--cls {
          font-size: 1.2rem;
          line-height: 2; }
      .l-alumni .btn {
        padding-top: 37px;
        padding-bottom: 54px; }
        .l-alumni .btn a {
          width: auto;
          padding: 18px 0;
          font-size: 1.4rem;
          line-height: 1.4286; }
          .l-alumni .btn a svg {
            right: 15px; }
          .l-alumni .btn a:hover {
            color: #fff;
            background-color: transparent;
            background-color: #5dc2d0; }
            .l-alumni .btn a:hover svg {
              stroke: white; }
    .l-youtube {
      width: auto;
      margin: 75px 20px 0; }
      .l-youtube__video {
        position: relative;
        margin-top: 53px; }
      .l-youtube__btn {
        width: 60px;
        height: 60px; }
      .l-youtube__icon {
        -webkit-transform: translate(0, -50%);
                transform: translate(0, -50%);
        left: calc(50% - 2px);
        width: 7px;
        height: 10px; }
    .l-recruit {
      margin-top: 63px;
      padding: 0 20px 0; }
      .l-recruit__block {
        width: auto; }
      .l-recruit__block--btm {
        padding-bottom: 80px; }
      .l-recruit__ttl {
        font-size: 2.7rem;
        line-height: 1.1852;
        padding-top: 68px;
        padding-bottom: 23px; }
        .l-recruit__ttl:after {
          width: 70px; }
      .l-recruit__sttl {
        text-align: center;
        display: block;
        font-size: 2.2rem;
        line-height: 1.5;
        margin-top: 30px;
        position: relative; }
        .l-recruit__sttl .num {
          position: absolute;
          top: -5px;
          left: 0;
          width: 40px;
          height: 40px;
          font-size: 2.1rem;
          line-height: 0.9524; }
      .l-recruit__copy {
        font-size: 1.5rem;
        line-height: 2; }
        .l-recruit__copy br {
          display: none; }
        .l-recruit__copy-center {
          text-align: left; }
        .l-recruit__copy--copy1 {
          margin-top: 35px; }
      .l-recruit__outro {
        font-size: 1.5rem;
        line-height: 2;
        text-align: left;
        margin-top: 34px; }
        .l-recruit__box--list {
          margin-top: 32px;
          padding: 0 20px 30px; }
          .l-recruit__box--list li {
            font-size: 1.5rem;
            line-height: 2;
            text-indent: -1em;
            padding-left: 1em; }
            .l-recruit__box--list li .atten {
              text-indent: 0;
              padding-left: .9em;
              margin-left: -.9em; }
        .l-recruit__box--num {
          margin-top: 32px;
          padding: 0 20px 30px; }
          .l-recruit__box--num li {
            font-size: 1.5rem;
            line-height: 2;
            text-indent: -1em;
            padding-left: 1em; }
            .l-recruit__box--num li .atten {
              text-indent: -.9em;
              padding-left: .9em;
              margin-left: -.9em; }
        .l-recruit__box--point {
          padding: 0 20px 30px; }
          .l-recruit__box--point h4 {
            font-size: 2rem;
            line-height: 1;
            margin-top: 37px; }
          .l-recruit__box--point ul {
            margin-top: 0;
            font-size: 1.4rem;
            line-height: 2; }
            .l-recruit__box--point ul li {
              margin-top: 20px;
              text-indent: -3.5rem;
              padding-left: 3.5rem; }
              .l-recruit__box--point ul li:before {
                margin-right: 10px; }
        .l-recruit__box--txt {
          padding: 0 20px 30px; }
      .l-recruit__case {
        display: block; }
        .l-recruit__case-block {
          width: auto;
          margin-top: 25px; }
        .l-recruit__case-detail {
          padding: 0 20px 40px;
          overflow: hidden; }
        .l-recruit__case-detail .txt {
          float: none;
          width: auto; }
          .l-recruit__case-detail .txt dl {
            margin-top: 20px; }
              .l-recruit__case-detail .txt dl dd strong {
                font-size: 1.8rem;
                line-height: 1.4444; }
      .l-recruit__btn {
        margin-top: 40px;
        padding-bottom: 20px; }
        .l-recruit__btn a {
          font-size: 2rem;
          line-height: 1;
          width: 100%; }
        .l-recruit__btn .atten {
          font-size: 1.4rem;
          line-height: 2.7143; }
      .l-recruit__mail {
        margin-bottom: 60px;
        font-size: 1.9rem;
        line-height: 1.7895; }
          .l-recruit__mail a:before {
            width: 20px;
            height: 16px; }
      .l-entry__body {
        padding-bottom: 60px; }
      .l-entry__1st {
        width: 71px;
        height: 118px;
        top: -30px;
        left: auto;
        right: 20px; }
      .l-entry__ttl {
        padding-top: 55px;
        font-size: 5rem;
        line-height: 1;
        margin-bottom: 40px; }
        .l-entry__ttl:before {
          width: 120px; }
        .l-entry__ttl--normal {
          font-size: 3.2rem;
          line-height: 1.375; }
          .l-entry__ttl--normal .mintxt {
            font-size: 1.8rem;
            line-height: 1;
            margin-bottom: 12px; }
    .l-entry__detail {
      padding: 0 20px; }
      .l-entry__detail p {
        margin-top: 25px;
        text-align: left;
        font-size: 1.5rem;
        line-height: 2; }
        .l-entry__detail p br {
          display: none; }
        .l-entry__detail p.mail {
          text-align: center;
          font-size: 1.9rem;
          line-height: 1.7895; }
            .l-entry__detail p.mail a:before {
              width: 20px;
              height: 16px; }
      .l-entry__detail h4 {
        margin-top: 30px; }
      .l-entry__detail .must {
        font-size: 1.4rem;
        line-height: 1.7143;
        width: 100%; }
        .l-entry__detail .must li {
          padding-left: 0;
          margin-top: 5px; }
          .l-entry__detail .must li .num {
            font-size: 1.4rem;
            line-height: 2.1429; }
        .l-entry__detail .must li > .atten {
          text-indent: normal;
          padding-left: 0; }
        .l-entry__detail .must .atten {
          text-align: left;
          text-indent: -1.9em;
          padding-left: 1.9em;
          font-size: 1.2rem;
          line-height: 2; }
      .l-entry__contact {
        padding: 0 10px 30px; }
    .l-entry-top {
      margin: 50px 0 0; }
      .l-entry-top__body {
        padding-bottom: 60px;
        border-top: 4px solid #daeff4;
        border-bottom: 4px solid #DAEFF4;
        border-right: 0;
        border-left: 0; }
        .l-entry-top__body .obj1 {
          display: none; }
        .l-entry-top__body .obj2 {
          width: 230px; }
      .l-entry-top__1st {
        width: 55px;
        height: 88px;
        top: 9px;
        right: 10px;
        z-index: 0;
        margin-right: 0; }
      .l-entry-top__ttl {
        padding-top: 55px;
        font-size: 2.8rem;
        line-height: 1.5714;
        margin-bottom: 0; }
        .l-entry-top__ttl .mintxt {
          margin-bottom: 15px; }
        .l-entry-top__ttl svg {
          width: 290px;
          z-index: 0;
          top: -8px;
          left: 0;
          right: 0; }
        .l-entry-top__ttl .bg1 {
          top: 80px;
          width: 350px;
          z-index: -1; }
        .l-entry-top__ttl .bg2 {
          width: 370px;
          top: 120px;
          z-index: -1; }
      .l-entry-top__detail {
        padding: 0 20px; }
          .l-entry-top__detail p.mail svg {
            width: 290px;
            top: -8px; }
    .l-banner {
      margin: 50px 20px 160px; }
    .l-footer {
      padding: 57px 20px 0;
      height: 700px; }
        .l-footer__link .logo {
          width: 172px;
          height: 147px; }
        .l-footer__link .btn {
          padding-bottom: 60px; }
          .l-footer__link .btn a {
            width: auto;
            font-size: 1.4rem;
            line-height: 1.4286; }
            .l-footer__link .btn a svg {
              right: 15px; }
            .l-footer__link .btn a:hover {
              color: #fff;
              background-color: transparent; }
              .l-footer__link .btn a:hover svg {
                stroke: white; }
      .l-footer__message {
        width: auto;
        background: none;
        padding-top: 0;
        height: auto;
        max-width: 318px;
        min-width: 280px;
        margin: 0 auto;
        font-size: 2.6rem;
        line-height: 1.5769; }
      .l-footer__bg {
        width: 695px;
        bottom: 0; }
        .l-footer__bg img {
          width: 695px;
          height: auto; }
      .l-footer__sns {
        width: calc(100% - 40px);
        bottom: 115px; }
      .l-footer__copy {
        bottom: 20px; }
        .l-footer__copy img {
          width: 100%; }
        .l-footer__copy span {
          text-align: left;
          bottom: 160px;
          font-size: 1rem;
          line-height: 1.6; }
          .l-footer__copy span br {
            display: none; }
        .l-footer__copy small {
          font-size: 1rem;
          line-height: 2; } }

@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop, .l-about__sttl {
    padding: 10px 20px 0; } }

@media screen and (min-width: 0px) and (max-width: 374px) {
        .l-alumni .btn a {
          font-size: 14px;
          font-size: 3.7333vw; }
          .l-footer__link .btn a {
            font-size: 14px;
            font-size: 3.7333vw; }
      .l-footer__message {
        font-size: 25px;
        font-size: 6.6667vw; } }

@media screen and (-ms-high-contrast: active),(-ms-high-contrast: none) {
  .l-people__item:not(:target) {
    width: 16.666%\9; } }

@media screen and (-ms-high-contrast: active) and (min-width: 0) and (max-width: 767px),screen and (-ms-high-contrast: none) and (min-width: 0) and (max-width: 767px) {
  .l-people__item:not(:target) {
    width: 33.333%\9; }
  .l-people__item .ttl:not(:target) {
    margin: -12% 2% -6%; } }

@media screen and (min-width: 0) and (max-width: 767px){
  @-moz-document url-prefix(){
    .l-people__item .ttl:not(:target) {
      margin: -12% 2% 12%; } } }
