@charset "UTF-8";
/* Reset Style */
html {
  overflow-y: scroll; }

body {
  line-height: 1;
  color: #000; }

/* html5doctor.com Reset Stylesheet v1.6.1
	Last Updated: 2010-09-17 Author: Richard Clark - http://richclarkdesign.com Twitter: @rich_clark */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  background: transparent; }

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

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

a {
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  background: transparent; }

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

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

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

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0; }

input, select {
  vertical-align: middle; }

/* YUI 3.4.1 (build 4118) Copyright 2011 Yahoo! Inc. All rights reserved.
Licensed under the BSD License. http://yuilibrary.com/license/ */
body {
  font: 13px/1.231 arial,helvetica,clean,sans-serif;
  *font-size: small;
  *font: x-small; }

select, input, button, textarea {
  font: 99% arial,helvetica,clean,sans-serif; }

table {
  font-size: inherit;
  font: 100%; }

pre, code, kbd, samp, tt {
  font-family: monospace;
  *font-size: 108%;
  line-height: 100%; }

@font-face {
  font-family: "din-demi";
  src: url("../fonts/URWDIN-Demi.eot");
  /* IE9 Compat Modes */
  src: url("../fonts/URWDIN-Demi.eot?#iefix") format("embedded-opentype"), url("../fonts/URWDIN-Demi.woff") format("woff"), url("../fonts/URWDIN-Demi.ttf") format("truetype"), url("../fonts/URWDIN-Demi.svg#svgFontName") format("svg");
  /* Legacy iOS */
  font-weight: normal; }

@font-face {
  font-family: "din-demi-m";
  src: url("../fonts/URWDIN-Medium.eot");
  /* IE9 Compat Modes */
  src: url("../fonts/URWDIN-Medium.eot?#iefix") format("embedded-opentype"), url("../fonts/URWDIN-Medium.woff") format("woff"), url("../fonts/URWDIN-Medium.ttf") format("truetype"), url("../fonts/URWDIN-Medium.svg#svgFontName") format("svg");
  /* Legacy iOS */
  font-weight: 500; }

@font-face {
  font-family: "din-demi-b";
  src: url("../fonts/URWDIN-Bold.eot");
  /* IE9 Compat Modes */
  src: url("../fonts/URWDIN-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/URWDIN-Bold.woff") format("woff"), url("../fonts/URWDIN-Bold.ttf") format("truetype"), url("../fonts/URWDIN-Bold.svg#svgFontName") format("svg");
  /* Legacy iOS */
  font-weight: 600; }

@font-face {
  font-family: "din-demi-bl";
  src: url("../fonts/URWDIN-Black.eot");
  /* IE9 Compat Modes */
  src: url("../fonts/URWDIN-Black.eot?#iefix") format("embedded-opentype"), url("../fonts/URWDIN-Black.woff") format("woff"), url("../fonts/URWDIN-Black.ttf") format("truetype"), url("../fonts/URWDIN-Black.svg#svgFontName") format("svg");
  /* Legacy iOS */
  font-weight: 700; }

/**以下レスポンシブグリッド用**/
.mt0 {
  margin-top: 0px !important; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.container-fluid, .container {
  margin-right: auto;
  margin-left: auto;
  padding-left: 20px;
  padding-right: 20px; }

.row {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -webkit-flex: 0 1 auto;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -20px;
  margin-left: -20px; }
  .row.reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse; }

.col.reverse {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
  -ms-flex-direction: column-reverse;
  flex-direction: column-reverse; }

.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl {
  width: 100%;
  position: relative;
  padding-right: 20px;
  padding-left: 20px; }

.col-xs, .col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12, .col-xs-offset-0, .col-xs-offset-1, .col-xs-offset-2, .col-xs-offset-3, .col-xs-offset-4, .col-xs-offset-5, .col-xs-offset-6, .col-xs-offset-7, .col-xs-offset-8, .col-xs-offset-9, .col-xs-offset-10, .col-xs-offset-11, .col-xs-offset-12 {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  padding-right: 20px;
  padding-left: 20px; }

.col-xs {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -webkit-flex-basis: 0;
  -ms-flex-preferred-size: 0;
  flex-basis: 0;
  max-width: 100%; }

.col-xs-1 {
  -webkit-flex-basis: 8.33333333%;
  -ms-flex-preferred-size: 8.33333333%;
  flex-basis: 8.33333333%;
  max-width: 8.33333333%; }

.col-xs-2 {
  -webkit-flex-basis: 16.66666667%;
  -ms-flex-preferred-size: 16.66666667%;
  flex-basis: 16.66666667%;
  max-width: 16.66666667%; }

.col-xs-3 {
  -webkit-flex-basis: 25%;
  -ms-flex-preferred-size: 25%;
  flex-basis: 25%;
  max-width: 25%; }

.col-xs-4 {
  -webkit-flex-basis: 33.33333333%;
  -ms-flex-preferred-size: 33.33333333%;
  flex-basis: 33.33333333%;
  max-width: 33.33333333%; }

.col-xs-5 {
  -webkit-flex-basis: 41.66666667%;
  -ms-flex-preferred-size: 41.66666667%;
  flex-basis: 41.66666667%;
  max-width: 41.66666667%; }

.col-xs-6 {
  -webkit-flex-basis: 50%;
  -ms-flex-preferred-size: 50%;
  flex-basis: 50%;
  max-width: 50%; }

.col-xs-7 {
  -webkit-flex-basis: 58.33333333%;
  -ms-flex-preferred-size: 58.33333333%;
  flex-basis: 58.33333333%;
  max-width: 58.33333333%; }

.col-xs-8 {
  -webkit-flex-basis: 66.66666667%;
  -ms-flex-preferred-size: 66.66666667%;
  flex-basis: 66.66666667%;
  max-width: 66.66666667%; }

.col-xs-9 {
  -webkit-flex-basis: 75%;
  -ms-flex-preferred-size: 75%;
  flex-basis: 75%;
  max-width: 75%; }

.col-xs-10 {
  -webkit-flex-basis: 83.33333333%;
  -ms-flex-preferred-size: 83.33333333%;
  flex-basis: 83.33333333%;
  max-width: 83.33333333%; }

.col-xs-11 {
  -webkit-flex-basis: 91.66666667%;
  -ms-flex-preferred-size: 91.66666667%;
  flex-basis: 91.66666667%;
  max-width: 91.66666667%; }

.col-xs-12 {
  -webkit-flex-basis: 100%;
  -ms-flex-preferred-size: 100%;
  flex-basis: 100%;
  max-width: 100%; }

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

.col-xs-offset-1 {
  margin-left: 8.33333333%; }

.col-xs-offset-2 {
  margin-left: 16.66666667%; }

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

.col-xs-offset-4 {
  margin-left: 33.33333333%; }

.col-xs-offset-5 {
  margin-left: 41.66666667%; }

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

.col-xs-offset-7 {
  margin-left: 58.33333333%; }

.col-xs-offset-8 {
  margin-left: 66.66666667%; }

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

.col-xs-offset-10 {
  margin-left: 83.33333333%; }

.col-xs-offset-11 {
  margin-left: 91.66666667%; }

.start-xs {
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  text-align: start; }

.center-xs {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center; }

.end-xs {
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  text-align: end; }

.top-xs {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start; }

.middle-xs {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center; }

.bottom-xs {
  -webkit-box-align: end;
  -ms-flex-align: end;
  -webkit-align-items: flex-end;
  align-items: flex-end; }

.around-xs {
  -ms-flex-pack: distribute;
  -webkit-justify-content: space-around;
  justify-content: space-around; }

.between-xs {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between; }

.first-xs {
  -webkit-box-ordinal-group: 0;
  -ms-flex-order: -1;
  -webkit-order: -1;
  order: -1; }

.last-xs {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  -webkit-order: 1;
  order: 1; }

@media (min-width: 768px) {
  .container {
    width: 768px; }
  .col-sm, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-offset-0, .col-sm-offset-1, .col-sm-offset-2, .col-sm-offset-3, .col-sm-offset-4, .col-sm-offset-5, .col-sm-offset-6, .col-sm-offset-7, .col-sm-offset-8, .col-sm-offset-9, .col-sm-offset-10, .col-sm-offset-11, .col-sm-offset-12 {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    padding-right: 20px;
    padding-left: 20px; }
  .col-sm {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -webkit-flex-basis: 0;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    max-width: 100%; }
  .col-sm-1 {
    -webkit-flex-basis: 8.33333333%;
    -ms-flex-preferred-size: 8.33333333%;
    flex-basis: 8.33333333%;
    max-width: 8.33333333%; }
  .col-sm-2 {
    -webkit-flex-basis: 16.66666667%;
    -ms-flex-preferred-size: 16.66666667%;
    flex-basis: 16.66666667%;
    max-width: 16.66666667%; }
  .col-sm-3 {
    -webkit-flex-basis: 25%;
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
    max-width: 25%; }
  .col-sm-4 {
    -webkit-flex-basis: 33.33333333%;
    -ms-flex-preferred-size: 33.33333333%;
    flex-basis: 33.33333333%;
    max-width: 33.33333333%; }
  .col-sm-5 {
    -webkit-flex-basis: 41.66666667%;
    -ms-flex-preferred-size: 41.66666667%;
    flex-basis: 41.66666667%;
    max-width: 41.66666667%; }
  .col-sm-6 {
    -webkit-flex-basis: 50%;
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    max-width: 50%; }
  .col-sm-7 {
    -webkit-flex-basis: 58.33333333%;
    -ms-flex-preferred-size: 58.33333333%;
    flex-basis: 58.33333333%;
    max-width: 58.33333333%; }
  .col-sm-8 {
    -webkit-flex-basis: 66.66666667%;
    -ms-flex-preferred-size: 66.66666667%;
    flex-basis: 66.66666667%;
    max-width: 66.66666667%; }
  .col-sm-9 {
    -webkit-flex-basis: 75%;
    -ms-flex-preferred-size: 75%;
    flex-basis: 75%;
    max-width: 75%; }
  .col-sm-10 {
    -webkit-flex-basis: 83.33333333%;
    -ms-flex-preferred-size: 83.33333333%;
    flex-basis: 83.33333333%;
    max-width: 83.33333333%; }
  .col-sm-11 {
    -webkit-flex-basis: 91.66666667%;
    -ms-flex-preferred-size: 91.66666667%;
    flex-basis: 91.66666667%;
    max-width: 91.66666667%; }
  .col-sm-12 {
    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    max-width: 100%; }
  .col-sm-offset-0 {
    margin-left: 0; }
  .col-sm-offset-1 {
    margin-left: 8.33333333%; }
  .col-sm-offset-2 {
    margin-left: 16.66666667%; }
  .col-sm-offset-3 {
    margin-left: 25%; }
  .col-sm-offset-4 {
    margin-left: 33.33333333%; }
  .col-sm-offset-5 {
    margin-left: 41.66666667%; }
  .col-sm-offset-6 {
    margin-left: 50%; }
  .col-sm-offset-7 {
    margin-left: 58.33333333%; }
  .col-sm-offset-8 {
    margin-left: 66.66666667%; }
  .col-sm-offset-9 {
    margin-left: 75%; }
  .col-sm-offset-10 {
    margin-left: 83.33333333%; }
  .col-sm-offset-11 {
    margin-left: 91.66666667%; }
  .start-sm {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    text-align: start; }
  .center-sm {
    text-align: center; }
  .end-sm {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    text-align: end; }
  .top-sm {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start; }
  .middle-sm {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center; }
  .bottom-sm {
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end; }
  .around-sm {
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;
    justify-content: space-around; }
  .between-sm {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between; }
  .first-sm {
    -webkit-box-ordinal-group: 0;
    -webkit-order: -1;
    -ms-flex-order: -1;
    order: -1; }
  .last-sm {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1; } }

@media (min-width: 992px) {
  .container {
    width: 992px; }
  .col-md, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md-offset-0, .col-md-offset-1, .col-md-offset-2, .col-md-offset-3, .col-md-offset-4, .col-md-offset-5, .col-md-offset-6, .col-md-offset-7, .col-md-offset-8, .col-md-offset-9, .col-md-offset-10, .col-md-offset-11, .col-md-offset-12 {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    padding-right: 20px;
    padding-left: 20px; }
  .col-md {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    -webkit-flex-grow: 1;
    flex-grow: 1;
    -webkit-flex-basis: 0;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    max-width: 100%; }
  .col-md-1 {
    -webkit-flex-basis: 8.33333333%;
    -ms-flex-preferred-size: 8.33333333%;
    flex-basis: 8.33333333%;
    max-width: 8.33333333%; }
  .col-md-2 {
    -webkit-flex-basis: 16.66666667%;
    -ms-flex-preferred-size: 16.66666667%;
    flex-basis: 16.66666667%;
    max-width: 16.66666667%; }
  .col-md-3 {
    -webkit-flex-basis: 25%;
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
    max-width: 25%; }
  .col-md-4 {
    -webkit-flex-basis: 33.33333333%;
    -ms-flex-preferred-size: 33.33333333%;
    flex-basis: 33.33333333%;
    max-width: 33.33333333%; }
  .col-md-5 {
    -webkit-flex-basis: 41.66666667%;
    -ms-flex-preferred-size: 41.66666667%;
    flex-basis: 41.66666667%;
    max-width: 41.66666667%; }
  .col-md-6 {
    -webkit-flex-basis: 50%;
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    max-width: 50%; }
  .col-md-7 {
    -webkit-flex-basis: 58.33333333%;
    -ms-flex-preferred-size: 58.33333333%;
    flex-basis: 58.33333333%;
    max-width: 58.33333333%; }
  .col-md-8 {
    -webkit-flex-basis: 66.66666667%;
    -ms-flex-preferred-size: 66.66666667%;
    flex-basis: 66.66666667%;
    max-width: 66.66666667%; }
  .col-md-9 {
    -webkit-flex-basis: 75%;
    -ms-flex-preferred-size: 75%;
    flex-basis: 75%;
    max-width: 75%; }
  .col-md-10 {
    -webkit-flex-basis: 83.33333333%;
    -ms-flex-preferred-size: 83.33333333%;
    flex-basis: 83.33333333%;
    max-width: 83.33333333%; }
  .col-md-11 {
    -webkit-flex-basis: 91.66666667%;
    -ms-flex-preferred-size: 91.66666667%;
    flex-basis: 91.66666667%;
    max-width: 91.66666667%; }
  .col-md-12 {
    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    max-width: 100%; }
  .col-md-offset-0 {
    margin-left: 0; }
  .col-md-offset-1 {
    margin-left: 8.33333333%; }
  .col-md-offset-2 {
    margin-left: 16.66666667%; }
  .col-md-offset-3 {
    margin-left: 25%; }
  .col-md-offset-4 {
    margin-left: 33.33333333%; }
  .col-md-offset-5 {
    margin-left: 41.66666667%; }
  .col-md-offset-6 {
    margin-left: 50%; }
  .col-md-offset-7 {
    margin-left: 58.33333333%; }
  .col-md-offset-8 {
    margin-left: 66.66666667%; }
  .col-md-offset-9 {
    margin-left: 75%; }
  .col-md-offset-10 {
    margin-left: 83.33333333%; }
  .col-md-offset-11 {
    margin-left: 91.66666667%; }
  .start-md {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    text-align: start; }
  .center-md {
    text-align: center; }
  .end-md {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    text-align: end; }
  .top-md {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start; }
  .middle-md {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center; }
  .bottom-md {
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end; }
  .around-md {
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;
    justify-content: space-around; }
  .between-md {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between; }
  .first-md {
    -webkit-box-ordinal-group: 0;
    -webkit-order: -1;
    -ms-flex-order: -1;
    order: -1; }
  .last-md {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1; } }

@media (min-width: 1300px) {
  .container {
    width: 1300px; }
  .col-lg, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-offset-0, .col-lg-offset-1, .col-lg-offset-2, .col-lg-offset-3, .col-lg-offset-4, .col-lg-offset-5, .col-lg-offset-6, .col-lg-offset-7, .col-lg-offset-8, .col-lg-offset-9, .col-lg-offset-10, .col-lg-offset-11, .col-lg-offset-12 {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    padding-right: 20px;
    padding-left: 20px; }
  .col-lg {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -webkit-flex-basis: 0;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    max-width: 100%; }
  .col-lg-1 {
    -webkit-flex-basis: 8.33333333%;
    -ms-flex-preferred-size: 8.33333333%;
    flex-basis: 8.33333333%;
    max-width: 8.33333333%; }
  .col-lg-2 {
    -webkit-flex-basis: 16.66666667%;
    -ms-flex-preferred-size: 16.66666667%;
    flex-basis: 16.66666667%;
    max-width: 16.66666667%; }
  .col-lg-3 {
    -webkit-flex-basis: 25%;
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
    max-width: 25%; }
  .col-lg-4 {
    -webkit-flex-basis: 33.33333333%;
    -ms-flex-preferred-size: 33.33333333%;
    flex-basis: 33.33333333%;
    max-width: 33.33333333%; }
  .col-lg-5 {
    -webkit-flex-basis: 41.66666667%;
    -ms-flex-preferred-size: 41.66666667%;
    flex-basis: 41.66666667%;
    max-width: 41.66666667%; }
  .col-lg-6 {
    -webkit-flex-basis: 50%;
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    max-width: 50%; }
  .col-lg-7 {
    -webkit-flex-basis: 58.33333333%;
    -ms-flex-preferred-size: 58.33333333%;
    flex-basis: 58.33333333%;
    max-width: 58.33333333%; }
  .col-lg-8 {
    -webkit-flex-basis: 66.66666667%;
    -ms-flex-preferred-size: 66.66666667%;
    flex-basis: 66.66666667%;
    max-width: 66.66666667%; }
  .col-lg-9 {
    -webkit-flex-basis: 75%;
    -ms-flex-preferred-size: 75%;
    flex-basis: 75%;
    max-width: 75%; }
  .col-lg-10 {
    -webkit-flex-basis: 83.33333333%;
    -ms-flex-preferred-size: 83.33333333%;
    flex-basis: 83.33333333%;
    max-width: 83.33333333%; }
  .col-lg-11 {
    -webkit-flex-basis: 91.66666667%;
    -ms-flex-preferred-size: 91.66666667%;
    flex-basis: 91.66666667%;
    max-width: 91.66666667%; }
  .col-lg-12 {
    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    max-width: 100%; }
  .col-lg-offset-0 {
    margin-left: 0; }
  .col-lg-offset-1 {
    margin-left: 8.33333333%; }
  .col-lg-offset-2 {
    margin-left: 16.66666667%; }
  .col-lg-offset-3 {
    margin-left: 25%; }
  .col-lg-offset-4 {
    margin-left: 33.33333333%; }
  .col-lg-offset-5 {
    margin-left: 41.66666667%; }
  .col-lg-offset-6 {
    margin-left: 50%; }
  .col-lg-offset-7 {
    margin-left: 58.33333333%; }
  .col-lg-offset-8 {
    margin-left: 66.66666667%; }
  .col-lg-offset-9 {
    margin-left: 75%; }
  .col-lg-offset-10 {
    margin-left: 83.33333333%; }
  .col-lg-offset-11 {
    margin-left: 91.66666667%; }
  .start-lg {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    text-align: start; }
  .center-lg {
    text-align: center; }
  .end-lg {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    text-align: end; }
  .top-lg {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start; }
  .middle-lg {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center; }
  .bottom-lg {
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end; }
  .around-lg {
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;
    justify-content: space-around; }
  .between-lg {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between; }
  .first-lg {
    -webkit-box-ordinal-group: 0;
    -webkit-order: -1;
    -ms-flex-order: -1;
    order: -1; }
  .last-lg {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1; } }

.visible-xs {
  display: none !important; }

.visible-sm {
  display: none !important; }

.visible-md {
  display: none !important; }

.visible-lg {
  display: none !important; }

.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
  display: none !important; }

@media (max-width: 767px) {
  .visible-xs {
    display: block !important; }
  table.visible-xs {
    display: table !important; }
  tr.visible-xs {
    display: table-row !important; }
  th.visible-xs,
  td.visible-xs {
    display: table-cell !important; } }

@media (max-width: 767px) {
  .visible-xs-block {
    display: block !important; } }

@media (max-width: 767px) {
  .visible-xs-inline {
    display: inline !important; } }

@media (max-width: 767px) {
  .visible-xs-inline-block {
    display: inline-block !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm {
    display: block !important; }
  table.visible-sm {
    display: table !important; }
  tr.visible-sm {
    display: table-row !important; }
  th.visible-sm,
  td.visible-sm {
    display: table-cell !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-block {
    display: block !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline {
    display: inline !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline-block {
    display: inline-block !important; } }

@media (min-width: 992px) and (max-width: 1299px) {
  .visible-md {
    display: block !important; }
  table.visible-md {
    display: table !important; }
  tr.visible-md {
    display: table-row !important; }
  th.visible-md,
  td.visible-md {
    display: table-cell !important; } }

@media (min-width: 992px) and (max-width: 1299px) {
  .visible-md-block {
    display: block !important; } }

@media (min-width: 992px) and (max-width: 1299px) {
  .visible-md-inline {
    display: inline !important; } }

@media (min-width: 992px) and (max-width: 1299px) {
  .visible-md-inline-block {
    display: inline-block !important; } }

@media (min-width: 1300px) {
  .visible-lg {
    display: block !important; }
  table.visible-lg {
    display: table !important; }
  tr.visible-lg {
    display: table-row !important; }
  th.visible-lg,
  td.visible-lg {
    display: table-cell !important; } }

@media (min-width: 1300px) {
  .visible-lg-block {
    display: block !important; } }

@media (min-width: 1300px) {
  .visible-lg-inline {
    display: inline !important; } }

@media (min-width: 1300px) {
  .visible-lg-inline-block {
    display: inline-block !important; } }

@media (max-width: 767px) {
  .hidden-xs {
    display: none !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important; } }

@media (min-width: 992px) and (max-width: 1299px) {
  .hidden-md {
    display: none !important; } }

@media (min-width: 1300px) {
  .hidden-lg {
    display: none !important; } }

@media (max-width: 767px) {
  .xs-center {
    text-align: center !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .sm-center {
    text-align: center !important; } }

@media (min-width: 992px) and (max-width: 1299px) {
  .md-center {
    text-align: center !important; } }

@media (min-width: 1300px) {
  .lg-center {
    text-align: center !important; } }

@media (max-width: 767px) {
  .xs-right {
    text-align: right !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .sm-right {
    text-align: right !important; } }

@media (min-width: 992px) and (max-width: 1299px) {
  .md-right {
    text-align: right !important; } }

@media (min-width: 1300px) {
  .lg-right {
    text-align: right !important; } }

html {
  font-size: 62.5%; }

body {
  background: #fff;
  color: #444;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Verdana, sans-serif;
  -webkit-text-size-adjust: 100%; }

#page {
  position: relative;
  font-size: 1.5rem;
  overflow: hidden;
  font-weight: 500; }

#page {
  min-width: 1140px; }

.container {
  width: 1140px; }

a:link {
  color: #444;
  text-decoration: none; }

a:visited {
  color: #444; }

a:hover {
  color: #444; }

a:active {
  color: #444; }

img {
  line-height: 1;
  font-size: 0;
  vertical-align: top;
  height: auto;
  max-width: 100%; }

table {
  width: 100%;
  margin: 0 auto 20px;
  border-collapse: collapse; }

th, td {
  padding: 10px;
  border: 1px solid #CCC;
  vertical-align: top; }

section {
  margin-bottom: 40px; }

.inline_block {
  display: inline-block; }

.table_cell {
  display: table-cell;
  *display: inline;
  *zoom: 1;
  vertical-align: middle; }

.ovfl {
  overflow: hidden; }

.fr,
.imgR,
.alignright {
  float: right;
  margin-left: 10px; }

.fl,
.imgL,
.alignleft {
  float: left;
  margin-right: 10px; }

.imgC,
.tC,
.btn,
.aligncenter {
  text-align: center; }

.imgC,
.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto; }

.tR,
.sign {
  text-align: right; }

.center-block {
  display: block;
  margin-right: auto;
  margin-left: auto; }

/* clearfix */
.clearfix {
  *zoom: 1; }
  .clearfix:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden; }

/*!
	Modaal - accessible modals - v0.4.0
	by Humaan, for all humans.
	http://humaan.com
 */
.modaal-noscroll {
  overflow: hidden; }

.modaal-accessible-hide {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden; }

.modaal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 999;
  opacity: 0; }

.modaal-wrapper {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
  overflow: auto;
  opacity: 1;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-overflow-scrolling: touch;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out; }
  .modaal-wrapper * {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-backface-visibility: hidden; }
  .modaal-wrapper .modaal-close {
    border: none;
    background: #00a2cb;
    padding: 0;
    -webkit-appearance: none; }
  .modaal-wrapper.modaal-start_none {
    display: none;
    opacity: 1; }
  .modaal-wrapper.modaal-start_fade {
    opacity: 0; }
  .modaal-wrapper *[tabindex="0"] {
    outline: none !important; }
  .modaal-wrapper.modaal-fullscreen {
    overflow: hidden; }

.modaal-outer-wrapper {
  display: table;
  position: relative;
  width: 100%;
  height: 100%; }
  .modaal-fullscreen .modaal-outer-wrapper {
    display: block; }

.modaal-inner-wrapper {
  display: table-cell;
  width: 100%;
  height: 100%;
  position: relative;
  vertical-align: middle;
  text-align: center;
  padding: 80px 25px; }
  .modaal-fullscreen .modaal-inner-wrapper {
    padding: 0;
    display: block;
    vertical-align: top; }

.modaal-container {
  position: relative;
  display: inline-block;
  width: 100%;
  margin: auto;
  text-align: left;
  color: #000;
  max-width: 1000px;
  border-radius: 0px;
  background: #fff;
  -webkit-box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
  cursor: auto; }
  .modaal-container.is_loading {
    height: 100px;
    width: 100px;
    overflow: hidden; }
  .modaal-fullscreen .modaal-container {
    max-width: none;
    height: 100%;
    overflow: auto; }

.modaal-close {
  position: absolute;
  right: -20px;
  top: -20px;
  color: #fff;
  cursor: pointer;
  opacity: 1;
  width: 50px;
  height: 50px;
  background: rgba(0, 0, 0, 0);
  border-radius: 100%;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out; }
  .modaal-close:focus, .modaal-close:hover {
    outline: none;
    background: #111; }
    .modaal-close:focus:before, .modaal-close:focus:after, .modaal-close:hover:before, .modaal-close:hover:after {
      background: #fff; }
  .modaal-close span {
    position: absolute !important;
    clip: rect(1px 1px 1px 1px);
    /* IE6, IE7 */
    clip: rect(1px, 1px, 1px, 1px);
    padding: 0 !important;
    border: 0 !important;
    height: 1px !important;
    width: 1px !important;
    overflow: hidden; }
  .modaal-close:before, .modaal-close:after {
    display: block;
    content: " ";
    position: absolute;
    top: 14px;
    left: 23px;
    width: 4px;
    height: 22px;
    border-radius: 4px;
    background: #fff;
    -webkit-transition: background 0.2s ease-in-out;
    transition: background 0.2s ease-in-out; }
  .modaal-close:before {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg); }
  .modaal-close:after {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg); }
  .modaal-fullscreen .modaal-close {
    background: #afb7bc;
    right: 10px;
    top: 10px; }

.modaal-content-container {
  padding: 30px; }

.modaal-confirm-wrap {
  padding: 30px 0 0;
  text-align: center;
  font-size: 0; }

.modaal-confirm-btn {
  font-size: 14px;
  display: inline-block;
  margin: 0 10px;
  vertical-align: middle;
  cursor: pointer;
  border: none;
  background: transparent; }
  .modaal-confirm-btn.modaal-ok {
    padding: 10px 15px;
    color: #fff;
    background: #555;
    border-radius: 3px;
    -webkit-transition: background 0.2s ease-in-out;
    transition: background 0.2s ease-in-out; }
    .modaal-confirm-btn.modaal-ok:hover {
      background: #2f2f2f; }
  .modaal-confirm-btn.modaal-cancel {
    text-decoration: underline; }
    .modaal-confirm-btn.modaal-cancel:hover {
      text-decoration: none;
      color: #2f2f2f; }

@keyframes instaReveal {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@-webkit-keyframes instaReveal {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

.modaal-instagram .modaal-container {
  width: auto;
  background: transparent;
  -webkit-box-shadow: none !important;
  box-shadow: none !important; }

.modaal-instagram .modaal-content-container {
  padding: 0;
  background: transparent; }

.modaal-instagram .modaal-content-container > blockquote {
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important; }

.modaal-instagram iframe {
  opacity: 0;
  margin: -6px !important;
  border-radius: 0 !important;
  width: 1000px !important;
  max-width: 800px !important;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  -webkit-animation: instaReveal 1s linear forwards;
  animation: instaReveal 1s linear forwards; }

.modaal-image .modaal-inner-wrapper {
  padding-left: 140px;
  padding-right: 140px; }

.modaal-image .modaal-container {
  width: auto;
  max-width: 100%; }

.modaal-gallery-wrap {
  position: relative;
  color: #fff; }

.modaal-gallery-item {
  display: none; }
  .modaal-gallery-item img {
    display: block; }
  .modaal-gallery-item.is_active {
    display: block; }

.modaal-gallery-label {
  position: absolute;
  left: 0;
  width: 100%;
  margin: 20px 0 0;
  font-size: 18px;
  text-align: center;
  color: #fff; }
  .modaal-gallery-label:focus {
    outline: none; }

.modaal-gallery-control {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  opacity: 1;
  cursor: pointer;
  color: #fff;
  width: 50px;
  height: 50px;
  background: rgba(0, 0, 0, 0);
  border: none;
  border-radius: 100%;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out; }
  .modaal-gallery-control.is_hidden {
    opacity: 0;
    cursor: default; }
  .modaal-gallery-control:focus, .modaal-gallery-control:hover {
    outline: none;
    background: #fff; }
    .modaal-gallery-control:focus:before, .modaal-gallery-control:focus:after, .modaal-gallery-control:hover:before, .modaal-gallery-control:hover:after {
      background: #afb7bc; }
  .modaal-gallery-control span {
    position: absolute !important;
    clip: rect(1px 1px 1px 1px);
    /* IE6, IE7 */
    clip: rect(1px, 1px, 1px, 1px);
    padding: 0 !important;
    border: 0 !important;
    height: 1px !important;
    width: 1px !important;
    overflow: hidden; }
  .modaal-gallery-control:before, .modaal-gallery-control:after {
    display: block;
    content: " ";
    position: absolute;
    top: 16px;
    left: 25px;
    width: 4px;
    height: 18px;
    border-radius: 4px;
    background: #fff;
    -webkit-transition: background 0.2s ease-in-out;
    transition: background 0.2s ease-in-out; }
  .modaal-gallery-control:before {
    margin: -5px 0 0;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg); }
  .modaal-gallery-control:after {
    margin: 5px 0 0;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg); }

.modaal-gallery-next-inner {
  left: 100%;
  margin-left: 40px; }

.modaal-gallery-next-outer {
  right: 45px; }

.modaal-gallery-prev:before, .modaal-gallery-prev:after {
  left: 22px; }

.modaal-gallery-prev:before {
  margin: 5px 0 0;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg); }

.modaal-gallery-prev:after {
  margin: -5px 0 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg); }

.modaal-gallery-prev-inner {
  right: 100%;
  margin-right: 40px; }

.modaal-gallery-prev-outer {
  left: 45px; }

.modaal-video-wrap {
  margin: auto 50px;
  position: relative; }

.modaal-video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  background: #000;
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto; }
  .modaal-video-container iframe,
  .modaal-video-container object,
  .modaal-video-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.modaal-iframe .modaal-content {
  width: 100%;
  height: 100%; }

.modaal-iframe-elem {
  width: 100%;
  height: 100%;
  display: block; }

@media only screen and (min-width: 1400px) {
  .modaal-video-container {
    padding-bottom: 0;
    height: 731px; } }

@media only screen and (max-width: 1140px) {
  .modaal-image .modaal-inner-wrapper {
    padding-left: 25px;
    padding-right: 25px; }
  .modaal-gallery-control {
    top: auto;
    bottom: 20px;
    -webkit-transform: none;
    transform: none;
    background: rgba(0, 0, 0, 0.7); }
    .modaal-gallery-control:before, .modaal-gallery-control:after {
      background: #fff; }
  .modaal-gallery-next {
    left: auto;
    right: 20px; }
  .modaal-gallery-prev {
    left: 20px;
    right: auto; } }

@media screen and (max-width: 900px) {
  .modaal-instagram iframe {
    width: 500px !important; } }

@media screen and (max-height: 1100px) {
  .modaal-instagram iframe {
    width: 700px !important; } }

@media screen and (max-height: 1000px) {
  .modaal-inner-wrapper {
    padding-top: 60px;
    padding-bottom: 60px; }
  .modaal-instagram iframe {
    width: 600px !important; } }

@media screen and (max-height: 900px) {
  .modaal-instagram iframe {
    width: 500px !important; }
  .modaal-video-container {
    max-width: 900px;
    max-height: 510px; } }

@media only screen and (max-width: 600px) {
  .modaal-instagram iframe {
    width: 280px !important; } }

@media only screen and (max-height: 820px) {
  .modaal-gallery-label {
    display: none; } }

.modaal-loading-spinner {
  background: none;
  position: absolute;
  width: 200px;
  height: 200px;
  top: 50%;
  left: 50%;
  margin: -100px 0 0 -100px;
  -webkit-transform: scale(0.25);
  transform: scale(0.25); }

@-webkit-keyframes modaal-loading-spinner {
  0% {
    opacity: 1;
    -webkit-transform: scale(1.5);
    transform: scale(1.5); }
  100% {
    opacity: .1;
    -webkit-transform: scale(1);
    transform: scale(1); } }

@keyframes modaal-loading-spinner {
  0% {
    opacity: 1;
    -webkit-transform: scale(1.5);
    transform: scale(1.5); }
  100% {
    opacity: .1;
    -webkit-transform: scale(1);
    transform: scale(1); } }

.modaal-loading-spinner > div {
  width: 24px;
  height: 24px;
  margin-left: 4px;
  margin-top: 4px;
  position: absolute; }

.modaal-loading-spinner > div > div {
  width: 100%;
  height: 100%;
  border-radius: 15px;
  background: #fff; }

.modaal-loading-spinner > div:nth-of-type(1) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: 0s;
  animation-delay: 0s; }

.modaal-loading-spinner > div:nth-of-type(2) > div, .modaal-loading-spinner > div:nth-of-type(3) > div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite; }

.modaal-loading-spinner > div:nth-of-type(1) {
  -webkit-transform: translate(84px, 84px) rotate(45deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(45deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(2) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .12s;
  animation-delay: .12s; }

.modaal-loading-spinner > div:nth-of-type(2) {
  -webkit-transform: translate(84px, 84px) rotate(90deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(90deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(3) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .25s;
  animation-delay: .25s; }

.modaal-loading-spinner > div:nth-of-type(4) > div, .modaal-loading-spinner > div:nth-of-type(5) > div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite; }

.modaal-loading-spinner > div:nth-of-type(3) {
  -webkit-transform: translate(84px, 84px) rotate(135deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(135deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(4) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .37s;
  animation-delay: .37s; }

.modaal-loading-spinner > div:nth-of-type(4) {
  -webkit-transform: translate(84px, 84px) rotate(180deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(180deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(5) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .5s;
  animation-delay: .5s; }

.modaal-loading-spinner > div:nth-of-type(6) > div, .modaal-loading-spinner > div:nth-of-type(7) > div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite; }

.modaal-loading-spinner > div:nth-of-type(5) {
  -webkit-transform: translate(84px, 84px) rotate(225deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(225deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(6) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .62s;
  animation-delay: .62s; }

.modaal-loading-spinner > div:nth-of-type(6) {
  -webkit-transform: translate(84px, 84px) rotate(270deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(270deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(7) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .75s;
  animation-delay: .75s; }

.modaal-loading-spinner > div:nth-of-type(7) {
  -webkit-transform: translate(84px, 84px) rotate(315deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(315deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(8) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .87s;
  animation-delay: .87s; }

.modaal-loading-spinner > div:nth-of-type(8) {
  -webkit-transform: translate(84px, 84px) rotate(360deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(360deg) translate(70px, 0); }

/* Slider */
/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  width: 60px;
  height: 60px;
  line-height: 60px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 30%;
  padding: 0;
  border: none;
  outline: none;
  z-index: 100;
  border-radius: 50%;
  background: #87afff; }
  .slick-prev.slick-disabled:before,
  .slick-next.slick-disabled:before {
    opacity: 1; }
  .slick-prev:before,
  .slick-next:before {
    font-family: "Font Awesome 5 Pro";
    font-size: 20px;
    line-height: 1;
    color: white;
    opacity: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    line-height: 60px; }

.slick-prev {
  left: -20px; }
  .slick-prev::before {
    content: "\f104"; }

.slick-next {
  right: -20px; }
  .slick-next::before {
    content: "\f105"; }

/* Dots */
.slick-dots {
  position: absolute;
  right: 5%;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0; }
  .slick-dots li {
    position: relative;
    height: 20px;
    width: 20px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer; }
    .slick-dots li button {
      border: 0;
      background: #999999;
      display: block;
      height: 10px;
      width: 10px;
      outline: none;
      line-height: 0px;
      font-size: 0px;
      color: transparent;
      padding: 5px;
      cursor: pointer;
      border-radius: 50%;
      border: 1px solid #999; }
      .slick-dots li button:hover, .slick-dots li button:focus {
        outline: none; }
    .slick-dots li.slick-active button {
      background: #444;
      border: 1px solid #444; }

/* 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; }
  .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; }

.main_visual {
  height: 70vh;
  margin-bottom: 50px;
  position: relative; }
  .main_visual .main_copy {
    position: absolute;
    top: 20%;
    right: 15%;
    z-index: 5; }
  .main_visual .main_bnr {
    position: absolute;
    bottom: 0;
    right: 10%;
    z-index: 10;
    width: 220px;
    height: 229px; }
    .main_visual .main_bnr a {
      display: block;
      width: 100%;
      height: 100%;
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease;
      opacity: 1;
      position: relative;
      background: url(../../img/main/main_bnr@2x.png) no-repeat center center;
      background-size: cover; }
      .main_visual .main_bnr a:hover {
        opacity: .7; }
      .main_visual .main_bnr a .schedule {
        font-family: "din-demi-m";
        text-align: center;
        position: absolute;
        bottom: 30px;
        left: 90px; }
        .main_visual .main_bnr a .schedule .date {
          display: block;
          color: #fff;
          font-size: 3.2rem;
          line-height: 1em; }
        .main_visual .main_bnr a .schedule .week {
          display: block;
          color: #fff118;
          font-size: 1.3rem;
          line-height: 1em; }
  .main_visual .main_bnr2 {
    position: absolute;
    bottom: 0px;
    left: 0px;
    z-index: 10;
    width: 360px;
    height: 102px; }
    .main_visual .main_bnr2 a {
      display: block;
      width: 100%;
      height: 100%;
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease;
      opacity: 1;
      position: relative;
      background: url(../../img/main/main_bnr2@2x.png) no-repeat center center;
      background-size: cover; }
      .main_visual .main_bnr2 a:hover {
        opacity: .7; }
      .main_visual .main_bnr2 a .year {
        font-family: "din-demi-m";
        position: absolute;
        color: #2d83b2;
        font-size: 1.8rem;
		font-style:italic;
		font-weight:bold;
        line-height: 1em;
        bottom: 70px;
        left: 105px; }
      .main_visual .main_bnr2 a .schedule {
        font-family: "din-demi-m";
        text-align: center;
        position: absolute;
        bottom: 7px;
        left: 160px; }
        .main_visual .main_bnr2 a .schedule .date {
          color: #000;
          font-size: 2.6rem;
          line-height: 1em; }
        .main_visual .main_bnr2 a .schedule .week {
		  margin-left:6px;
          color: #000;
          font-size: 1.2rem;
          line-height: 1em; }
  .main_visual .main_in {
    position: relative; }
  .main_visual .swiper-slide {
    height: 80vh;
    position: relative; }
    .main_visual .swiper-slide.slide01 a::before, .main_visual .swiper-slide.slide01 span::before {
      background-image: url(../../img/main/main_slide01@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center; }
    .main_visual .swiper-slide.slide02 a::before, .main_visual .swiper-slide.slide02 span::before {
      background-image: url(../../img/main/main_slide02@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center; }
    .main_visual .swiper-slide.slide03 a::before, .main_visual .swiper-slide.slide03 span::before {
      background-image: url(../../img/main/main_slide03@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center; }
    .main_visual .swiper-slide.slide04 a::before, .main_visual .swiper-slide.slide04 span::before {
      background-image: url(../../img/main/main_slide04@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center; }
    .main_visual .swiper-slide.slide05 a::before, .main_visual .swiper-slide.slide05 span::before {
      background-image: url(../../img/main/main_slide05@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center; }
    .main_visual .swiper-slide.slide06 a::before, .main_visual .swiper-slide.slide06 span::before {
      background-image: url(../../img/main/main_slide06@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center; }
    .main_visual .swiper-slide.slide07 a::before, .main_visual .swiper-slide.slide07 span::before {
      background-image: url(../../img/main/main_slide07@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center; }
    .main_visual .swiper-slide.slide08 a::before, .main_visual .swiper-slide.slide08 span::before {
      background-image: url(../../img/main/main_slide08@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center; }
    .main_visual .swiper-slide.slide09 a::before, .main_visual .swiper-slide.slide09 span::before {
      background-image: url(../../img/main/main_slide09@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center; }
    .main_visual .swiper-slide.slide10 a::before, .main_visual .swiper-slide.slide10 span::before {
      background-image: url(../../img/main/main_slide10@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center; }
    .main_visual .swiper-slide.slide11 a::before, .main_visual .swiper-slide.slide11 span::before {
      background-image: url(../../img/main/main_slide11@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center; }
    .main_visual .swiper-slide.slide12 a::before, .main_visual .swiper-slide.slide12 span::before {
      background-image: url(../../img/main/main_slide12@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center; }
    .main_visual .swiper-slide.slide13 a::before, .main_visual .swiper-slide.slide13 span::before {
      background-image: url(../../img/main/main_slide13@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center; }
    .main_visual .swiper-slide.slide14 a::before, .main_visual .swiper-slide.slide14 span::before {
      background-image: url(../../img/main/main_slide14@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center; }
    .main_visual .swiper-slide.slide15 a::before, .main_visual .swiper-slide.slide15 span::before {
      background-image: url(../../img/main/main_slide15@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center; }
    .main_visual .swiper-slide.slide16 a::before, .main_visual .swiper-slide.slide16 span::before {
      background-image: url(../../img/main/main_slide16@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center; }
    .main_visual .swiper-slide.slide17 a::before, .main_visual .swiper-slide.slide17 span::before {
      background-image: url(../../img/main/main_slide17@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center; }
    .main_visual .swiper-slide.slide18 a::before, .main_visual .swiper-slide.slide18 span::before {
      background-image: url(../../img/main/main_slide18@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center; }
    .main_visual .swiper-slide.slide19 a::before, .main_visual .swiper-slide.slide19 span::before {
      background-image: url(../../img/main/main_slide19@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center; }
    .main_visual .swiper-slide.slide20 a::before, .main_visual .swiper-slide.slide20 span::before {
      background-image: url(../../img/main/main_slide20@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center; }
    .main_visual .swiper-slide.slide21 a::before, .main_visual .swiper-slide.slide21 span::before {
      background-image: url(../../img/main/main_slide21@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center; }
    .main_visual .swiper-slide.slide22 a::before, .main_visual .swiper-slide.slide22 span::before {
      background-image: url(../../img/main/main_slide22@2x.png);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center; }
    .main_visual .swiper-slide.slide23 a::before, .main_visual .swiper-slide.slide23 span::before {
      background-image: url(../../img/main/main_slide23@2x.png);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center; }
    .main_visual .swiper-slide.slide24 a::before, .main_visual .swiper-slide.slide24 span::before {
      background-image: url(../../img/main/main_slide24@2x.png);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center; }
    .main_visual .swiper-slide.slide25 a::before, .main_visual .swiper-slide.slide25 span::before {
      background-image: url(../../img/main/main_slide25@2x.png);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center center; }
    .main_visual .swiper-slide a, .main_visual .swiper-slide span {
      display: block;
      width: 100%;
      height: 100%;
      position: relative; }
      .main_visual .swiper-slide a::before, .main_visual .swiper-slide span::before {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease; }
  .main_visual .control_area {
    z-index: 100;
    position: absolute;
    bottom: 0;
    right: 0;
    width: 530px;
    height: 60px;
    background: #fff;
    color: #fff;
    font-size: 1.3rem;
    letter-spacing: .2rem;
    line-height: 2.5;
    padding-left: 30px; }
    .main_visual .control_area .swiper-pagination {
      width: 100%;
      -webkit-transform: translate3d(0, 50%, 0);
      transform: translate3d(0, 50%, 0);
      text-align: left; }
    .main_visual .control_area .swiper-pagination-bullet {
      width: 10px;
      height: 10px;
      border: 1px solid #5a5a5a;
      background: #fff;
      opacity: 1;
      margin: 0 7px; }
    .main_visual .control_area .swiper-pagination-bullet-active {
      background: #5a5a5a; }

.lower_ttl_parent {
  position: relative;
  height: 505px;
  margin-bottom: 70px; }
  .lower_ttl_parent::before, .lower_ttl_parent::after {
    content: "";
    position: absolute;
    right: 0; }
  .lower_ttl_parent::before {
    top: 85px;
    width: 52.5%;
    z-index: 1;
    height: 420px; }
  .lower_ttl_parent::after {
    top: 0;
    width: 100%;
    height: 400px; }
  .lower_ttl_parent .container {
    position: relative;
    z-index: 2; }
  .lower_ttl_parent h1 {
    position: relative;
    padding-top: 190px;
    margin-left: 20px;
    color: #111;
    letter-spacing: 0.2rem; }
    .lower_ttl_parent h1 .en {
      font-family: "din-demi-m";
      font-size: 1.5rem;
      display: block;
      margin-bottom: 30px; }
    .lower_ttl_parent h1 .jp {
      display: inline-block;
      font-size: 4.2rem;
      position: relative; }
      .lower_ttl_parent h1 .jp .deco {
        display: block;
        position: absolute;
        top: 8px;
        right: 10px;
        z-index: -1;
        -webkit-transform-origin: 50% center;
        transform-origin: 50% center;
        -webkit-transform: translate(100%, 0);
        transform: translate(100%, 0); }
  .lower_ttl_parent p {
    font-size: 1.5rem;
    line-height: 1.7;
    margin-top: 35px;
    margin-left: 20px;
    width: 35%; }
  .lower_ttl_parent.main_about::before {
    background: url(../../img/main/main_about@2x.jpg) no-repeat top center;
    background-size: cover; }
  .lower_ttl_parent.main_about::after {
    background: url(../../img/main/main_about_bg@2x.jpg) no-repeat top center;
    background-size: cover; }
  .lower_ttl_parent.main_examination::before {
    background: url(../../img/main/main_examination@2x.jpg) no-repeat top center;
    background-size: cover; }
  .lower_ttl_parent.main_examination::after {
    background: url(../../img/main/main_examination_bg@2x.jpg) no-repeat top center;
    background-size: cover; }
  .lower_ttl_parent.main_campuslife::before {
    background: url(../../img/main/main_campuslife@2x.jpg) no-repeat top center;
    background-size: cover; }
  .lower_ttl_parent.main_campuslife::after {
    background: url(../../img/main/main_campuslife_bg@2x.jpg) no-repeat top center;
    background-size: cover; }
  .lower_ttl_parent.main_employment::before {
    background: url(../../img/main/main_employment@2x.jpg) no-repeat top center;
    background-size: cover; }
  .lower_ttl_parent.main_employment::after {
    background: url(../../img/main/main_employment_bg@2x.jpg) no-repeat top center;
    background-size: cover; }
  .lower_ttl_parent.main_course::before {
    background: url(../../img/main/main_course@2x.jpg) no-repeat top center;
    background-size: cover; }
  .lower_ttl_parent.main_course::after {
    background: url(../../img/main/main_course_bg@2x.jpg) no-repeat top center;
    background-size: cover; }
  .lower_ttl_parent.main_licenses::before {
    background: url(../../img/main/main_licenses@2x.jpg) no-repeat top center;
    background-size: cover; }
  .lower_ttl_parent.main_licenses::after {
    background: url(../../img/main/main_licenses_bg@2x.jpg) no-repeat top center;
    background-size: cover; }

.lower_ttl_child {
  position: relative;
  height: 260px;
  margin-bottom: 70px;
  z-index: 1;
  background: url(../../img/main/main_other_bg@2x.jpg) no-repeat top center;
  background-size: cover; }
  .lower_ttl_child .container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    height: 100%; }
  .lower_ttl_child h1 {
    color: #111;
    letter-spacing: 0.2rem;
    padding-left: 15px; }
    .lower_ttl_child h1 .en {
      font-family: "din-demi-m";
      font-size: 1.5rem;
      display: inline-block;
      margin-bottom: 20px;
      padding-bottom: 7px;
      border-bottom: 3px solid #222; }
    .lower_ttl_child h1 .jp {
      display: block;
      font-size: 3.8rem; }
      .lower_ttl_child h1 .jp .square {
        display: inline-block;
        color: #fff;
        position: relative;
        top: -8px;
        background: #00a2cb;
        line-height: 1.7em;
        padding: 0px 12px;
        margin-right: 15px;
        font-size: 2rem; }
        .lower_ttl_child h1 .jp .square.orange {
          background: #f5b723; }
    .lower_ttl_child h1 .small {
      font-size: 2.0rem;
      padding-left: 20px; }
  .lower_ttl_child.main_parent_about {
    background: url(../../img/main/main_about_bg@2x.jpg) no-repeat top center;
    background-size: cover; }
  .lower_ttl_child.main_faq {
    background: url(../../img/main/main_campuslife_child_bg@2x.jpg) no-repeat top center;
    background-size: cover; }
  .lower_ttl_child.main_drone {
    background: url(../../img/main/main_campuslife_drone_bg@2x.jpg) no-repeat top center;
    background-size: cover; }
  .lower_ttl_child.main_space {
    background: url(../../img/main/main_space_bg@2x.jpg) no-repeat top center;
    background-size: cover; }
  .lower_ttl_child.main_parent_examination {
    background: url(../../img/main/main_examination_bg@2x.jpg) no-repeat top center;
    background-size: cover; }
  .lower_ttl_child.main_parent_employment {
    background: url(../../img/main/main_employment_low@2x.jpg) no-repeat top center;
    background-size: cover; }
  .lower_ttl_child.main_topics {
    background: url(../../img/main/main_topics_bg@2x.jpg) no-repeat top center;
    background-size: cover; }
  .lower_ttl_child.main_parent_licenses {
    background: url(../../img/main/main_merit_bg@2x.jpg) no-repeat top center;
    background-size: cover; }
  .lower_ttl_child.main_success {
    margin-bottom: 0; }

.lower_ttl_special {
  position: relative;
  height: 400px;
  margin-bottom: 70px; }
  .lower_ttl_special .container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100%; }
  .lower_ttl_special.main_reason {
    background: url(../../img/main/main_reason_bg@2x.jpg) no-repeat top center;
    background-size: cover;
    padding-top: 110px; }
  .lower_ttl_special.main_snap {
    background: url(../../img/main/main_campuslife_child_bg@2x.jpg) no-repeat top center;
    background-size: cover;
    padding-top: 60px;
    margin-bottom: 0; }
  .lower_ttl_special.main_graduation_work {
    background: url(../../img/main/main_graduation_work_bg@2x.jpg) no-repeat top center;
    background-size: cover;
    padding-top: 90px; }
    .lower_ttl_special.main_graduation_work .container {
      -webkit-box-pack: left;
      -webkit-justify-content: left;
      -ms-flex-pack: left;
      justify-content: left; }
      .lower_ttl_special.main_graduation_work .container h1 {
        padding-left: 95px; }
  .lower_ttl_special.main_location {
    background: url(../../img/main/main_location_bg@2x.jpg) no-repeat top center;
    background-size: cover;
    padding-top: 65px; }
  .lower_ttl_special.main_boast {
    background: url(../../img/main/main_boast_bg@2x.jpg) no-repeat top center;
    background-size: cover;
    padding-top: 80px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 0; }
  .lower_ttl_special.main_schedule {
    background: url(../../img/main/main_campuslife_child_bg@2x.jpg) no-repeat top center;
    background-size: cover;
    padding-top: 100px; }
  .lower_ttl_special.main_circle {
    background: url(../../img/main/main_circle_bg@2x.jpg) no-repeat top center;
    background-size: cover; }
  .lower_ttl_special.main_boarding {
    background: url(../../img/main/main_boarding_bg@2x.jpg) no-repeat top center;
    background-size: cover; }
  .lower_ttl_special.main_girls {
    background: url(../../img/main/main_girls_bg@2x.jpg) no-repeat top center;
    background-size: cover; }
  .lower_ttl_special.main_closs {
    background: url(../../img/main/main_girls_low@2x.jpg) no-repeat top center;
    background-size: cover;
    padding-top: 130px; }
  .lower_ttl_special.main_current {
    background: url(../../img/main/main_girls_low@2x.jpg) no-repeat top center;
    background-size: cover;
    padding-top: 90px; }

.lower_ttl_opencampus {
  padding-top: 30px;
  height: 500px;
  margin-bottom: 70px;
  background-image: url(../../img/main/main_opencampus_bg@2x.jpg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover; }
  .lower_ttl_opencampus h1 {
    text-align: center;
    padding-top: 90px; }

.lower_ttl_course {
  padding-top: 330px; }
  .lower_ttl_course.senkou .label_bg::before {
    background: #43a71c; }
  .lower_ttl_course.senkou h1 span {
    color: #43a71c; }
  .lower_ttl_course.main_archi2 .label_bg::before {
    background: #f5a823; }
  .lower_ttl_course.main_archi2 h1 span {
    color: #f5a823; }
  .lower_ttl_course.main_archi_expert .label_bg::before {
    background: #333; }
  .lower_ttl_course.main_archi_earliest .label_bg::before {
    background: #333; }
  .lower_ttl_course.main_archi_expert h1 span {
    color: #333; }
  .lower_ttl_course.main_archi_earliest h1 span {
    color: #333; }
  .lower_ttl_course .label_bg {
    position: relative;
    top: 90px; }
    .lower_ttl_course .label_bg::before {
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      background: #00a2cb;
      max-width: 60vw;
      width: 50vw;
      height: 100%;
      z-index: 1; }
  .lower_ttl_course h1 {
    color: #fff;
    padding: 40px 0;
    position: relative;
    z-index: 10;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center; }
    .lower_ttl_course h1 span {
      background: #fff;
      color: #00a2cb;
      display: inline-block;
      font-size: 1.6rem;
      padding: 5px 20px;
      margin-left: 20px; }
  .lower_ttl_course.main_archi1 {
    background: url(../../img/main/main_archi1@2x.jpg) 50%;
    background-size: cover; }
  .lower_ttl_course.main_archi_expert {
    background: url(../../img/main/main_expert@2x.jpg) 50%;
    background-size: cover; }
  .lower_ttl_course.main_archi_earliest {
    background: url(../../img/main/main_earliest@2x.jpg) 50%;
    background-size: cover; }
  .lower_ttl_course.main_archi2 {
    background: url(../../img/main/main_archi2@2x.jpg) 50%;
    background-size: cover; }
  .lower_ttl_course.main_archi_course {
    background: url(../../img/main/main_archi_course@2x.jpg) 50%;
    background-size: cover; }
  .lower_ttl_course.main_interior_course {
    background: url(../../img/main/main_interior_course@2x.jpg) 50%;
    background-size: cover; }
  .lower_ttl_course.main_archi_year1 {
    background: url(../../img/main/main_archi_year1@2x.jpg) 50%;
    background-size: cover; }
  .lower_ttl_course.main_archi_year2 {
    background: url(../../img/main/main_archi_year2@2x.jpg) 50%;
    background-size: cover; }
  .lower_ttl_course.main_seminar {
    background: url(../../img/main/main_seminar_bg.jpg) no-repeat top center;
    background-size: cover;
    height: 400px;
    padding: 0;
    position: relative; }
    .lower_ttl_course.main_seminar h1 {
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%); }

.lower_ttl_course2 {
  padding-top: 330px; }
  .lower_ttl_course2.senkou .label_bg::before {
    background: #38b296; }
  .lower_ttl_course2.senkou h1 span {
    color: #38b296; }
  .lower_ttl_course2.main_archi2 .label_bg::before {
    background: #f5a823; }
  .lower_ttl_course2.main_archi2 h1 span {
    color: #f5a823; }
  .lower_ttl_course2.main_archi_expert .label_bg::before {
    background: #333; }
  .lower_ttl_course2.main_archi_earliest .label_bg::before {
    background: #333; }
  .lower_ttl_course2.main_archi_expert h1 span {
    color: #333; }
  .lower_ttl_course2.main_archi_earliest h1 span {
    color: #333; }
  .lower_ttl_course2 .label_bg {
    position: relative;
    top: 90px; }
    .lower_ttl_course2 .label_bg::before {
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      background: #38b296;
      max-width: 60vw;
      width: 50vw;
      height: 100%;
      z-index: 1; }
  .lower_ttl_course2 h1 {
    color: #fff;
    padding: 40px 0;
    position: relative;
    z-index: 10;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center; }
    .lower_ttl_course2 h1 span {
      background: #fff;
      color: #38b296;
      display: inline-block;
      font-size: 1.6rem;
      padding: 5px 20px;
      margin-left: 20px; }
  .lower_ttl_course2.main_archi1 {
    background: url(../../img/main/main_archi1@2x.jpg) 50%;
    background-size: cover; }
  .lower_ttl_course2.main_archi_expert {
    background: url(../../img/main/main_expert@2x.jpg) 50%;
    background-size: cover; }
  .lower_ttl_course2.main_archi_earliest {
    background: url(../../img/main/main_earliest@2x.jpg) 50%;
    background-size: cover; }
  .lower_ttl_course2.main_archi2 {
    background: url(../../img/main/main_archi2@2x.jpg) 50%;
    background-size: cover; }
  .lower_ttl_course2.main_archi_course {
    background: url(../../img/main/main_archi_course@2x.jpg) 50%;
    background-size: cover; }
  .lower_ttl_course2.main_interior_course {
    background: url(../../img/main/main_interior_course@2x.jpg) 50%;
    background-size: cover; }
  .lower_ttl_course2.main_archi_year1 {
    background: url(../../img/main/main_archi_year1@2x.jpg) 50%;
    background-size: cover; }
  .lower_ttl_course2.main_archi_year2 {
    background: url(../../img/main/main_archi_year2@2x.jpg) 50%;
    background-size: cover; }
  .lower_ttl_course2.main_seminar {
    background: url(../../img/main/main_seminar_bg.jpg) no-repeat top center;
    background-size: cover;
    height: 400px;
    padding: 0;
    position: relative; }
    .lower_ttl_course2.main_seminar h1 {
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%); }

.js-tab_area .js-tab_body {
  display: none; }
  .js-tab_area .js-tab_body:nth-child(1) {
    display: block; }

.news_list .news_box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 20px; }
  .news_list .news_box time {
    font-size: 1.5rem;
    font-family: "din-demi";
    padding-right: 0px;
    margin-right: 0px;
    display: inline-block;
    position: relative;
    -webkit-flex-basis: 13%;
    -ms-flex-preferred-size: 13%;
    flex-basis: 13%;
    color: #111; }
    .news_list .news_box time::before {
      content: "";
      position: absolute;
      right: 0;
      top: 50%;
      width: 0px;
      height: 1px;
      background: #111; }
  .news_list .news_box .cat {
    display: inline-block;
    font-size: 1.2rem;
    border: 1px solid #ccc;
    margin-right: 20px;
    padding: 2px 20px;
    -webkit-flex-basis: 18%;
    -ms-flex-preferred-size: 18%;
    flex-basis: 18%;
    text-align: center; }
  .news_list .news_box a {
    -webkit-flex-basis: 69%;
    -ms-flex-preferred-size: 69%;
    flex-basis: 69%; }
    .news_list .news_box a:hover {
      text-decoration: underline; }

.cat_list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  border-right: 1px solid #ccc;
  margin-bottom: 45px; }
  .cat_list li {
    border-left: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    border-top: 1px solid #ccc; }
    .cat_list li span, .cat_list li a {
      font-size: 1.3rem;
      display: block;
      padding: 10px 20px;
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease;
      cursor: pointer; }
      .cat_list li span.is-act, .cat_list li span:hover, .cat_list li a.is-act, .cat_list li a:hover {
        background: #333;
        color: #fff; }

.news_list_archive .news_box a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
  padding: 15px 40px; }
  .news_list_archive .news_box a:hover {
    background: #f5f5f5; }
    .news_list_archive .news_box a:hover strong {
      color: #00a2cb; }

.news_list_archive .news_box time {
  font-family: "din-demi-m";
  padding-right: 30px;
  -webkit-flex-basis: 12%;
  -ms-flex-preferred-size: 12%;
  flex-basis: 12%;
  display: block; }

.news_list_archive .news_box strong {
  -webkit-flex-basis: 88%;
  -ms-flex-preferred-size: 88%;
  flex-basis: 88%;
  display: block;
  font-weight: 500; }

.careers_list .type01 {
  color: #ec82b1; }

.careers_list .type02 {
  color: #428fca; }

.careers_list .type03 {
  color: #4eb7ba; }

.careers_list .type04 {
  color: #5ab651; }

.careers_list .type05 {
  color: #f7b000; }

.careers_list .careers_box a {
  display: block; }
  .careers_list .careers_box a:hover .thumb img {
    -webkit-transform: scale(1.08);
    transform: scale(1.08); }
  .careers_list .careers_box a .thumb {
    overflow: hidden; }
    .careers_list .careers_box a .thumb img {
      width: 100%;
      -webkit-transition: all .3s ease;
      transition: all .3s ease; }
  .careers_list .careers_box a .text {
    font-size: 1.3rem;
    background: #fff;
    padding: 16px 30px;
    min-height: 180px; }
    .careers_list .careers_box a .text .company {
      font-weight: bold;
      margin-bottom: 15px; }
      .careers_list .careers_box a .text .company .label {
        line-height: 1.5em;
        display: block;
        font-weight: 500; }
        .careers_list .careers_box a .text .company .label .ico {
          display: inline-block;
          padding-right: 8px; }
    .careers_list .careers_box a .text h3 {
      font-size: 2.2rem;
      color: #212121; }
    .careers_list .careers_box a .text .en {
      font-size: 1.1rem;
      font-family: "din-demi";
      margin-bottom: 7px;
      display: block; }
    .careers_list .careers_box a .text .license {
      line-height: 1.7; }

.topics_list .topics_box {
  margin-bottom: 50px; }
  .topics_list .topics_box a:hover .thumb .img img {
    -webkit-transform: scale(1.08);
    transform: scale(1.08); }
  .topics_list .topics_box a .thumb {
    position: relative; }
    .topics_list .topics_box a .thumb .img {
      overflow: hidden; }
      .topics_list .topics_box a .thumb .img img {
        width: 100%;
        -webkit-transition: all .3s ease;
        transition: all .3s ease; }
    .topics_list .topics_box a .thumb .time {
      font-family: "din-demi-m";
      background: #00a2cb;
      padding-top: 16px;
      width: 80px;
      height: 70px;
      color: #fff;
      font-size: 1.8rem;
      text-align: center;
      position: absolute;
      top: 25px;
      left: -15px;
      z-index: 1; }
      .topics_list .topics_box a .thumb .time span {
        display: block;
        font-size: 1.4rem;
        line-height: 1.0; }
  .topics_list .topics_box a .text {
    position: relative;
    background: #fff;
    width: 95%;
    margin-top: -30px;
    margin-left: auto;
    padding: 20px 25px; }
    .topics_list .topics_box a .text h3 {
      font-size: 1.6rem;
      line-height: 1.6;
      color: #111;
      margin-bottom: 5px; }
    .topics_list .topics_box a .text .cat span {
      display: inline-block;
      padding-right: 5px;
      font-size: 1.3rem;
      color: #00a2cb; }

.bottom_menu {
  margin-top: 180px;
  background: url(../img/bg/line_border03@2x.png);
  background-size: 150%;
  padding-bottom: 30px; }
  .bottom_menu h2 {
    font-size: 2.2rem;
    color: #fff;
    background: #00a2cb;
    max-width: 240px;
    height: 100px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
    top: -50px; }
    .bottom_menu h2::after {
      content: "";
      display: block;
      position: absolute;
      top: -10px;
      left: 10px;
      width: 100%;
      height: 100%;
      border: 3px solid #00a2cb;
      -webkit-box-sizing: border-box;
      box-sizing: border-box; }
  .bottom_menu .menu_list_text {
    margin-top: -10px; }

.menu_list_img {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 40px; }
  .menu_list_img .menu_box a {
    display: block;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    position: relative; }
    .menu_list_img .menu_box a:hover {
      color: #fff118; }
      .menu_list_img .menu_box a:hover .img img {
        -webkit-transform: scale(1.05);
        transform: scale(1.05); }
  .menu_list_img .menu_box .img {
    overflow: hidden; }
    .menu_list_img .menu_box .img img {
      -webkit-transition: all 0.5s ease;
      transition: all 0.5s ease; }
  .menu_list_img .menu_box span {
    display: block;
    top: -20px;
    position: relative;
    padding: 20px;
    background: #fff;
    width: 88%;
    font-size: 1.6rem;
    font-weight: bold;
    color: #111; }
    .menu_list_img .menu_box span::before {
      content: "\f061";
      display: block;
      font-family: "Font Awesome 5 Pro";
      position: absolute;
      top: 50%;
      -webkit-transform: translate(0, -50%);
      transform: translate(0, -50%);
      right: 20px;
      font-size: 1.4rem;
      font-weight: normal; }

.menu_list_text .menu_box {
  margin-bottom: 20px; }
  .menu_list_text .menu_box.blue a {
    background: #00a2cb;
    color: #fff; }
    .menu_list_text .menu_box.blue a:hover {
      color: #00a2cb; }
      .menu_list_text .menu_box.blue a:hover::after {
        background: #fff; }
  .menu_list_text .menu_box.red a {
    background: #db7093;
    color: #fff; }
    .menu_list_text .menu_box.red a::after {
      background: #db7093; }
    .menu_list_text .menu_box.red a:hover {
      color: #db7093; }
      .menu_list_text .menu_box.red a:hover::after {
        background: #fff; }
  .menu_list_text .menu_box.black a {
    background: #333;
    color: #fff; }
    .menu_list_text .menu_box.black a::after {
      background: #333; }
    .menu_list_text .menu_box.black a:hover {
      color: #333; }
      .menu_list_text .menu_box.black a:hover::after {
        background: #fff; }
  .menu_list_text .menu_box.green a {
    background: #43a71c;
    color: #fff; }
    .menu_list_text .menu_box.green a::after {
      background: #43a71c; }
    .menu_list_text .menu_box.green a:hover {
      color: #43a71c; }
      .menu_list_text .menu_box.green a:hover::after {
        background: #fff; }
  .menu_list_text .menu_box.green2 a {
    background: #38b296;
    color: #fff; }
    .menu_list_text .menu_box.green2 a::after {
      background: #38b296; }
    .menu_list_text .menu_box.green2 a:hover {
      color: #38b296; }
      .menu_list_text .menu_box.green2 a:hover::after {
        background: #fff; }
  .menu_list_text .menu_box.orrange a {
    background: #f5b723;
    color: #fff; }
    .menu_list_text .menu_box.orrange a::after {
      background: #f5b723; }
    .menu_list_text .menu_box.orrange a:hover {
      color: #f5b723; }
      .menu_list_text .menu_box.orrange a:hover::after {
        background: #fff; }
  .menu_list_text .menu_box a {
    display: block;
    position: relative;
    background: #fff;
    color: #111;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease; }
    .menu_list_text .menu_box a span {
      display: block;
      position: relative;
      padding: 20px 25px;
      font-size: 1.6rem;
      font-weight: bold;
      z-index: 1; }
      .menu_list_text .menu_box a span::before {
        content: "\f061";
        display: block;
        font-family: "Font Awesome 5 Pro";
        position: absolute;
        top: 50%;
        -webkit-transform: translate(0, -50%);
        transform: translate(0, -50%);
        right: 20px;
        font-size: 1.4rem;
        font-weight: normal;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease; }
      .menu_list_text .menu_box a span.external::before {
        content: "\f08e"; }
    .menu_list_text .menu_box a .square {
      display: inline-block;
      vertical-align: bottom;
      background: #00a2cb;
      color: #fff;
      font-size: 1.2rem;
      line-height: 1.0;
      padding: 7px 10px;
      margin-right: 10px;
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease; }
      .menu_list_text .menu_box a .square.orange {
        background: #f5b723; }
    .menu_list_text .menu_box a::after {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      height: 100%;
      width: 4px;
      background: #00a2cb;
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease; }
    .menu_list_text .menu_box a:hover, .menu_list_text .menu_box a.is-act {
      color: #fff; }
      .menu_list_text .menu_box a:hover span::before, .menu_list_text .menu_box a.is-act span::before {
        color: #fff118; }
      .menu_list_text .menu_box a:hover::after, .menu_list_text .menu_box a.is-act::after {
        width: 100%; }
      .menu_list_text .menu_box a:hover .square, .menu_list_text .menu_box a.is-act .square {
        background: #fff;
        color: #00a2cb; }
        .menu_list_text .menu_box a:hover .square.orange, .menu_list_text .menu_box a.is-act .square.orange {
          color: #f5b723; }

.anchor_list {
  margin-right: -10px;
  margin-left: -10px;
  margin-bottom: 70px; }
  .anchor_list > div {
    padding-right: 10px;
    padding-left: 10px; }
  .anchor_list .anchor_box a {
    display: block;
    position: relative;
    color: #111;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    border: 3px solid #00a2cb;
    text-align: center;
    font-weight: bold;
    padding: 14px; }
    .anchor_list .anchor_box a::before {
      content: "\f063";
      display: block;
      font-family: "Font Awesome 5 Pro";
      position: absolute;
      top: 50%;
      -webkit-transform: translate(0, -50%);
      transform: translate(0, -50%);
      right: 15px;
      font-size: 1.4rem;
      font-weight: normal;
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease; }
    .anchor_list .anchor_box a:hover {
      color: #00a2cb; }

.anc {
  margin-top: -95px;
  padding-top: 95px; }

.common_bnr {
  padding: 40px 0 50px; }
  .common_bnr .row {
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end; }

.crumbs {
  color: #444;
  text-align: right;
  position: absolute;
  top: 170px;
  left: 0;
  width: 100%;
  z-index: 2; }
  .crumbs li {
    display: inline;
    font-size: 1.3rem; }
    .crumbs li a:hover {
      text-decoration: underline; }
  .page-opencampus .crumbs {
    top: 640px; }

.pagetop {
  position: fixed;
  right: 0;
  bottom: 0;
  z-index: 1000; }
  .pagetop a {
    display: block;
    background: #00a2cb;
    border: 1px solid #3879ab;
    border-bottom: 5px solid #0069a5;
    width: 65px;
    height: 70px;
    line-height: 70px;
    text-align: center;
    color: #fff;
    font-size: 1.8rem; }

.ttl01 {
  text-align: center;
  font-size: 5.0rem;
  margin-bottom: 45px;
  font-weight: 500;
  font-family: "din-demi-m";
  color: #111;
  position: relative; }
  .ttl01::before, .ttl01::after {
    content: "";
    display: block;
    background: url(../img/bg/line_border@2x.png) repeat-x;
    background-size: auto 20px;
    width: 100%;
    height: 20px;
    position: absolute;
    top: 0; }
  .ttl01::before {
    margin-right: 160px;
    right: 50%; }
  .ttl01::after {
    margin-left: 160px;
    left: 50%; }

.ttl02 {
  text-align: center;
  margin-bottom: 70px;
  position: relative; }
  .ttl02::before {
    content: "";
    display: block;
    position: absolute;
    bottom: -20px;
    left: 0;
    width: 100%;
    height: 30px;
    background: url(../img/bg/line_border02@2x.png) repeat-x;
    background-size: auto 30px; }
  .ttl02 strong {
    color: #00a2cb;
    font-size: 2rem;
    display: inline-block;
    margin-bottom: 15px; }
  .ttl02 span {
    display: block;
    font-size: 3.5rem;
    padding-bottom: 25px;
    color: #111;
    position: relative; }
    .ttl02 span::before, .ttl02 span::after {
      content: "";
      position: absolute;
      left: 50%;
      -webkit-transform: translate(-50%, 0);
      transform: translate(-50%, 0);
      display: block;
      bottom: 0;
      border-bottom-width: 4px;
      border-bottom-style: solid; }
    .ttl02 span::before {
      border-bottom-color: #222;
      width: 215px; }
    .ttl02 span::after {
      border-bottom-color: #00a2cb;
      width: 15px;
      margin-left: -100px; }
    .ttl02 span em {
      padding: 0 5px;
      vertical-align: bottom;
      display: inline-block; }

.ttl03 {
  font-size: 2.4rem;
  position: relative;
  border-bottom: 1px solid #aaa;
  padding-bottom: 15px;
  margin-bottom: 35px;
  color: #111;
  padding-left: 20px;
  line-height: 1.4;
  font-weight: 500; }
  .ttl03::before, .ttl03::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    bottom: 10px; }
  .ttl03::before {
    border-left: 4px solid #00a2cb;
    height: 90%; }
  .ttl03::after {
    border-left: 4px solid #fff118;
    height: 45%; }

.ttl04 {
  font-size: 2.2rem;
  color: #fff;
  background: #00a2cb;
  padding: 15px 20px;
  margin-bottom: 35px;
  line-height: 1.4; }

.ttl05 {
  font-size: 2.4rem;
  color: #111;
  border-bottom: 3px solid #fff118;
  position: relative;
  line-height: 1.4;
  padding-bottom: 20px;
  margin-bottom: 40px; }
  .ttl05::before {
    content: "";
    display: block;
    border-bottom: 3px solid #00a2cb;
    position: absolute;
    bottom: -3px;
    left: 0;
    width: 50%; }

.ttl06 {
  text-align: center;
  margin-bottom: 50px; }
  .ttl06 span {
    color: #111;
    font-size: 3.0rem;
    display: inline-block;
    border-bottom: 3px solid #00a2cb;
    padding-bottom: 15px; }
  .ttl06.color_blue span {
    color: #00a2cb; }

.subttl01 {
  display: block;
  text-align: center;
  font-size: 1.6rem;
  margin-bottom: 20px;
  color: #111; }

.more_btn {
  max-width: 80px; }
  .more_btn a {
    font-family: "din-demi-m";
    color: #111;
    display: block;
    border-bottom: 3px solid #111;
    padding: 0 40px 5px 5px;
    font-weight: bold;
    position: relative; }
    .more_btn a::after {
      content: "\f061";
      display: block;
      font-family: "Font Awesome 5 Pro";
      position: absolute;
      top: 0;
      right: 5px;
      font-size: 1.4rem;
      font-weight: normal; }

.btn01 a {
  color: #fff;
  background-color: #00a2cb;
  border-bottom: 3px solid #0069a5;
  display: block;
  text-align: center;
  max-width: 275px;
  font-weight: bold;
  padding: 12px;
  position: relative; }
  .btn01 a::after {

    content: "\f061";
    display: block;
    font-family: "Font Awesome 5 Pro";
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    right: 15px;
    font-size: 1.4rem;
    font-weight: normal; }

.dot_list {
  padding-left: 25px; }
  .dot_list li {
    list-style: disc;
    margin-bottom: 10px; }

.num_list li {
  padding-left: 40px;
  position: relative;
  margin-bottom: 10px;
  list-style: none; }
  .num_list li::before {
    position: absolute;
    left: 0;
    color: #444; }
  .num_list li::after {
    content: "";
    position: absolute;
    top: 13px;
    left: 20px;
    width: 5px;
    height: 1px;
    background: #444; }
  .num_list li:nth-child(1)::before {
    content: "1"; }
  .num_list li:nth-child(2)::before {
    content: "2"; }
  .num_list li:nth-child(3)::before {
    content: "3"; }
  .num_list li:nth-child(4)::before {
    content: "4"; }
  .num_list li:nth-child(5)::before {
    content: "5"; }
  .num_list li:nth-child(6)::before {
    content: "6"; }
  .num_list li:nth-child(7)::before {
    content: "7"; }
  .num_list li:nth-child(8)::before {
    content: "8"; }
  .num_list li:nth-child(9)::before {
    content: "9"; }
  .num_list li:nth-child(10)::before {
    content: "10"; }
  .num_list li:nth-child(11)::before {
    content: "11"; }
  .num_list li:nth-child(12)::before {
    content: "12"; }
  .num_list li:nth-child(13)::before {
    content: "13"; }
  .num_list li:nth-child(14)::before {
    content: "14"; }

.sm_txt {
  font-size: 1.3rem; }

.table {
  border-top: 1px solid #ccc; }
  .table th, .table td {
    border: none;
    border-bottom: 1px solid #ccc;
    padding: 15px 30px;
    background: #fff; }
  .table th {
    background: #f5f5f5; }

.table02 {
  border-top: 3px solid #00a2cb; }
  .table02 th, .table02 td {
    border: none;
    border-bottom: 1px solid #ccc;
    padding: 15px;
    text-align: center;
    background: #fff;
    vertical-align: middle;
    line-height: 150%; }
  .table02 th {
    background: #f5f5f5;
    color: #111; }
  .table02.txt_left th, .table02.txt_left td {
    text-align: left; }
  .table02.nowrap th {
    white-space: nowrap; }

.hamburger {
  width: 55px;
  height: 55px;
  background: #00a2cb;
  position: relative;
  cursor: pointer; }
  .hamburger span {
    height: 2px;
    width: 50%;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-top: -1px;
    margin-left: -25%;
    background-color: #fff;
    text-indent: -9999px;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease; }
    .hamburger span.hidden {
      display: none; }
  .hamburger::before, .hamburger::after {
    content: "";
    height: 2px;
    width: 50%;
    position: absolute;
    left: 50%;
    margin-left: -25%;
    background-color: #fff;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease; }
  .hamburger::before {
    top: 35%; }
  .hamburger::after {
    bottom: 35%; }
  .hamburger.is-act {
    color: #fff; }
    .hamburger.is-act:before {
      -webkit-transform: rotate(135deg);
      transform: rotate(135deg);
      top: 45%;
      background: #fff; }
    .hamburger.is-act:after {
      -webkit-transform: rotate(-135deg);
      transform: rotate(-135deg);
      top: 45%;
      background: #fff; }

.dropdown_list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  margin-bottom: 30px; }
  .dropdown_list .dropdown {
    margin-left: 20px; }
    .dropdown_list .dropdown select {
      font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Verdana, sans-serif;
      padding: 5px 10px; }

.careers_support {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  .careers_support .support_box {
    -webkit-flex-basis: 40%;
    -ms-flex-preferred-size: 40%;
    flex-basis: 40%; }
    .careers_support .support_box.color_b .top {
      margin: 0 30px 0 55px;
      background: #0069a5; }
      .careers_support .support_box.color_b .top::before {
        border-width: 30px 0 30px 30px;
        border-color: transparent transparent transparent #0069a5;
        right: -30px; }
      .careers_support .support_box.color_b .top .subttl {
        color: #0069a5; }
      .careers_support .support_box.color_b .top .mainttl {
        background-image: url(../../img/employment/support_img01@2x.png); }
      .careers_support .support_box.color_b .top dl dt span {
        background: #fff118;
        color: #0069a5; }
    .careers_support .support_box.color_b .bottom {
      border: 3px solid #0069a5; }
      .careers_support .support_box.color_b .bottom .subttl {
        background: #0069a5; }
      .careers_support .support_box.color_b .bottom dl dt {
        color: #0069a5; }
        .careers_support .support_box.color_b .bottom dl dt::before {
          background: #fff118;
          color: #0069a5; }
    .careers_support .support_box.color_p {
      -webkit-flex-basis: 20%;
      -ms-flex-preferred-size: 20%;
      flex-basis: 20%; }
      .careers_support .support_box.color_p .top {
        background: #fa7f7f;
        margin: 0 20px; }
        .careers_support .support_box.color_p .top::before {
          content: none; }
        .careers_support .support_box.color_p .top .mainttl {
          text-align: center;
          padding: 0;
          margin-top: 30px;
          margin-bottom: 15px;
          height: auto;
          font-size: 2.4rem; }
        .careers_support .support_box.color_p .top .img {
          text-align: center;
          margin-bottom: 30px; }
        .careers_support .support_box.color_p .top p {
          line-height: 1.5;
          font-size: 1.6rem;
          margin-bottom: 0; }
    .careers_support .support_box.color_y .top {
      margin: 0 55px 0 30px;
      background: #f5b723; }
      .careers_support .support_box.color_y .top::before {
        border-width: 30px 30px 30px 0;
        border-color: transparent #f5b723 transparent transparent;
        left: -30px; }
      .careers_support .support_box.color_y .top .subttl {
        color: #f5b723; }
      .careers_support .support_box.color_y .top .mainttl {
        background-image: url(../../img/employment/support_img03@2x.png); }
      .careers_support .support_box.color_y .top dl dt span {
        background: #00a2cb;
        color: #fff; }
    .careers_support .support_box.color_y .bottom {
      border: 3px solid #f5b723; }
      .careers_support .support_box.color_y .bottom .subttl {
        background: #f5b723; }
      .careers_support .support_box.color_y .bottom dl dt {
        color: #f5b723; }
        .careers_support .support_box.color_y .bottom dl dt::before {
          background: #00a2cb;
          color: #fff; }
    .careers_support .support_box .top {
      border-radius: 10px;
      padding: 20px 25px;
      color: #fff;
      position: relative;
      height: 310px; }
      .careers_support .support_box .top::before {
        content: "";
        display: block;
        width: 0;
        height: 0;
        border-style: solid;
        position: absolute;
        top: 50%;
        -webkit-transform: translate(0, -50%);
        transform: translate(0, -50%); }
      .careers_support .support_box .top .subttl {
        background: #fff;
        display: block;
        text-align: center;
        font-size: 1.8rem;
        border-radius: 20px;
        padding: 6px;
        margin-bottom: 20px; }
      .careers_support .support_box .top .mainttl {
        font-size: 2.8rem;
        padding-left: 100px;
        padding-top: 15px;
        background-repeat: no-repeat;
        background-position: 30px center;
        background-size: auto 90px;
        line-height: 1.3;
        height: 95px; }
        .careers_support .support_box .top .mainttl span {
          font-size: 1.6rem;
          display: block;
          margin-top: 5px; }
      .careers_support .support_box .top dl {
        border-top: 1px solid #fff;
        overflow: hidden;
        padding-top: 20px;
        margin-top: 25px; }
        .careers_support .support_box .top dl dt {
          float: left; }
          .careers_support .support_box .top dl dt span {
            display: block;
            text-align: center;
            font-size: 1.3rem;
            border-radius: 50%;
            width: 52px;
            line-height: 52px;
            font-family: "din-demi"; }
        .careers_support .support_box .top dl dd {
          overflow: hidden;
          font-weight: bold;
          line-height: 1.5;
          font-size: 1.6rem;
          padding: 5px 0 0 15px; }
    .careers_support .support_box .bottom {
      margin-top: 30px;
      padding: 15px 20px 30px; }
      .careers_support .support_box .bottom .subttl {
        color: #fff;
        display: block;
        text-align: center;
        font-size: 1.8rem;
        border-radius: 20px;
        padding: 6px;
        margin-bottom: 30px; }
      .careers_support .support_box .bottom dl dt {
        font-size: 2.0rem;
        position: relative;
        padding-left: 67px;
        font-weight: bold;
        margin-bottom: 15px; }
        .careers_support .support_box .bottom dl dt.num1::before {
          content: "01"; }
        .careers_support .support_box .bottom dl dt.num2::before {
          content: "02"; }
        .careers_support .support_box .bottom dl dt::before {
          display: block;
          position: absolute;
          left: 0;
          top: -3px;
          font-size: 2.0rem;
          font-family: "din-demi-m";
          text-align: center;
          line-height: 52px;
          width: 52px;
          border-radius: 100px; }
      .careers_support .support_box .bottom dl dd {
        padding-left: 65px;
        margin-bottom: 30px; }
      .careers_support .support_box .bottom .img {
        text-align: center; }

.careers_probability {
  margin-bottom: 30px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  .careers_probability .text {
    -webkit-flex-basis: 32%;
    -ms-flex-preferred-size: 32%;
    flex-basis: 32%; }
    .careers_probability .text p {
      font-size: 2.4rem;
      color: #111;
      line-height: 2.1;
      margin-bottom: 0;
      -webkit-font-feature-settings: "palt";
      font-feature-settings: "palt";
      letter-spacing: .5px; }
      .careers_probability .text p strong {
        border-bottom: 2px solid #111;
        padding-bottom: 3px; }
  .careers_probability .rate {
    -webkit-flex-basis: 36%;
    -ms-flex-preferred-size: 36%;
    flex-basis: 36%;
    text-align: center; }
    .careers_probability .rate strong {
      display: block;
      color: #222;
      font-size: 2.0rem;
      margin-bottom: 5px; }
      .careers_probability .rate strong span {
        font-family: "din-demi"; }
    .careers_probability .rate .num {
      color: #00a2cb;
      font-size: 9.7rem;
      font-family: "din-demi";
      line-height: .9;
      display: inline-block;
      background: -webkit-gradient(linear, left top, left bottom, color-stop(85%, transparent), color-stop(15%, #fff118));
      background: linear-gradient(transparent 85%, #fff118 15%); }
      .careers_probability .rate .num .big {
        font-size: 15.7rem;
        letter-spacing: -3px; }
      .careers_probability .rate .num .sm {
        font-size: 7.7rem; }
  .careers_probability .img {
    -webkit-flex-basis: 32%;
    -ms-flex-preferred-size: 32%;
    flex-basis: 32%; }

.point_list {
  margin-top: 40px; }
  .point_list .point_box .thumb {
    margin-bottom: 20px; }
  .point_list .point_box h3 {
    text-align: center;
    font-size: 2.2rem;
    margin-bottom: 15px;
    line-height: 1.5; }

.common_gray_contents {
  background: #f5f5f5;
  padding: 80px 0; }
  .common_gray_contents .contents_in {
    background: #fff;
    padding: 70px 50px 40px;
    position: relative;
    margin-bottom: 90px; }
    .common_gray_contents .contents_in.interior h2 {
      background: #99cb00; }
  .common_gray_contents h2 {
    background: #00a2cb;
    color: #fff;
    padding: 30px;
    font-size: 2.4rem;
    position: absolute;
    left: 2%;
    top: -40px;
    width: 96%; }
  .common_gray_contents p span {
    color: #e94609; }
  .common_gray_contents table th, .common_gray_contents table td {
    border: none;
    border-bottom: 1px solid #ddd; }
  .common_gray_contents table th {
    text-align: center;
    background: #f5f5f5;
    border-top: 2px solid #00a2cb; }
  .common_gray_contents table td {
    padding: 20px; }
    .common_gray_contents table td span {
      font-size: 2rem;
      font-family: "din-demi";
      color: #00a2cb; }
    .common_gray_contents table td:last-child {
      text-align: right; }
  .common_gray_contents .fukidashi {
    border: 3px solid #000;
    padding: 50px;
    position: relative; }
    .common_gray_contents .fukidashi::before {
      content: "";
      position: absolute;
      right: -20px;
      top: 50px;
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 10px 0 10px 20px;
      border-color: transparent transparent transparent #000; }
    .common_gray_contents .fukidashi h3 {
      font-size: 2rem;
      margin-bottom: 25px;
      color: #111; }
  .common_gray_contents .number {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center; }
    .common_gray_contents .number h3 {
      font-size: 2rem; }
      .common_gray_contents .number h3 small {
        display: block;
        font-size: 1.3rem; }
    .common_gray_contents .number .num {
      font-size: 3.2rem;
      line-height: 1;
      color: #111;
      font-weight: bold; }
      .common_gray_contents .number .num span {
        font-family: "din-demi";
        font-size: 10rem; }

.voice {
  position: relative; }
  .voice::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: 100%;
    height: 70px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 1; }
  .voice .voice_area {
    border: 1px dashed #222;
    padding: 30px;
    z-index: 10;
    background: #fff;
    position: relative; }
    .voice .voice_area .voice_in {
      position: relative;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
      justify-content: space-between;
      margin-bottom: 30px; }
    .voice .voice_area .circle {
      width: 270px; }
    .voice .voice_area .text {
      width: 710px; }
    .voice .voice_area .name {
      position: absolute;
      right: 0;
      top: 0;
      font-weight: bold;
      color: #111; }
      .voice .voice_area .name span {
        font-weight: 500; }
    .voice .voice_area h2 {
      color: #111;
      font-size: 2.4rem;
      margin-bottom: 30px;
      padding-top: 15px;
      position: relative;
      z-index: 10; }
      .voice .voice_area h2 span {
        position: relative;
        display: inline-block;
        z-index: 10; }
        .voice .voice_area h2 span::before {
          content: "";
          position: absolute;
          top: -10px;
          right: -110px;
          width: 130px;
          height: 50px;
          background-size: cover;
          z-index: -1; }
    .voice .voice_area .copy {
      display: inline-block;
      font-size: 2.2rem;
      color: #fff;
      background: #00a2cb;
      padding: 15px 30px;
      margin-bottom: 20px;
      margin-left: -90px;
      font-weight: bold;
      line-height: 1.5; }
    .voice .voice_area .name {
      text-align: right;
      font-size: 2rem;
      padding-right: 10px;
      border-right: 2px solid #00a2cb; }
      .voice .voice_area .name span {
        font-size: 1.5rem; }
  .voice .qualification {
    border: 3px solid #ccc;
    padding: 25px;
    margin-top: 30px; }
    .voice .qualification h3 {
      font-size: 2rem;
      margin-bottom: 20px;
      color: #111; }
    .voice .qualification p {
      margin-bottom: 0; }
  .voice .stepup h2 {
    border-bottom: 1px solid #333;
    font-size: 2.4rem;
    padding-bottom: 15px;
    margin-bottom: 60px;
    color: #111; }
  .voice .stepup .year_list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between; }
  .voice .stepup .year_box {
    width: 24%;
    border: 2px solid #000;
    padding: 65px 30px 30px;
    position: relative; }
    .voice .stepup .year_box::before {
      content: "";
      position: absolute;
      right: -15px;
      top: 150px;
      width: 15px;
      height: 5px;
      background: #000; }
    .voice .stepup .year_box:nth-child(1), .voice .stepup .year_box:nth-child(2) {
      border: 2px solid #00a2cb; }
      .voice .stepup .year_box:nth-child(1)::before, .voice .stepup .year_box:nth-child(2)::before {
        background: #00a2cb; }
      .voice .stepup .year_box:nth-child(1) .year_no, .voice .stepup .year_box:nth-child(2) .year_no {
        color: #00a2cb; }
    .voice .stepup .year_box:nth-child(3), .voice .stepup .year_box:nth-child(4) {
      border: 2px solid #f5a823; }
      .voice .stepup .year_box:nth-child(3)::before, .voice .stepup .year_box:nth-child(4)::before {
        background: #f5a823; }
      .voice .stepup .year_box:nth-child(3) .year_no, .voice .stepup .year_box:nth-child(4) .year_no {
        color: #f5a823; }
    .voice .stepup .year_box:nth-child(4)::before {
      display: none; }
    .voice .stepup .year_box:nth-child(4) .human {
      right: -30px; }
    .voice .stepup .year_box h3 {
      margin-bottom: 15px;
      font-size: 1.6rem;
      color: #111; }
    .voice .stepup .year_box .incorporation {
      position: absolute;
      top: -25px;
      left: 50%;
      background: #f5a823;
      color: #fff;
      width: 50px;
      height: 50px;
      line-height: 50px;
      border-radius: 50%;
      text-align: center; }
    .voice .stepup .year_box .year_no {
      font-family: "din-demi-m";
      font-size: 7rem;
      position: absolute;
      left: 20px;
      top: -25px;
      background: #fff; }
      .voice .stepup .year_box .year_no small {
        font-size: 5rem; }
      .voice .stepup .year_box .year_no span {
        display: block;
        font-size: 2.4rem;
        padding-left: 20px;
        margin-top: 10px; }
    .voice .stepup .year_box p {
      margin-bottom: 0; }
    .voice .stepup .year_box .human {
      position: absolute;
      right: -50px;
      bottom: -70px;
      z-index: 10; }

.grade_successful {
  background: url(../../img/shortest/successful_bg@2x.jpg);
  background-size: cover;
  padding: 35px 50px;
  color: #fff;
  margin-bottom: 30px; }
  .grade_successful h3 {
    color: #fff;
    border-bottom: 1px solid #fff;
    padding-bottom: 15px;
    margin-bottom: 30px;
    font-size: 3rem; }
  .grade_successful .number {
    background: url(../../img/shortest/successful_ico@2x.png) no-repeat;
    background-size: 67px;
    padding-left: 80px; }
    .grade_successful .number span {
      color: #fff118;
      font-size: 10rem;
      line-height: 1;
      font-weight: bold;
      letter-spacing: -.4rem;
      font-family: "din-demi"; }
    .grade_successful .number small {
      font-size: 3.2rem;
      font-weight: bold; }
  .grade_successful dl {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    font-weight: bold; }
    .grade_successful dl dt {
      background: #fff;
      color: #00a2cb;
      font-size: 1.6rem;
      border-radius: 30px;
      padding: 5px 10px;
      width: 135px;
      text-align: center; }
    .grade_successful dl dd {
      margin-left: 5px; }
      .grade_successful dl dd span {
        font-size: 3.5rem; }
      .grade_successful dl dd .num {
        font-size: 3.5rem;
        letter-spacing: 0; }
  .grade_successful.first_grade_successful p {
    font-size: 2rem;
    margin-bottom: 20px; }
    .grade_successful.first_grade_successful p span {
      color: #fff118;
      font-size: 3.5rem;
      font-weight: bold;
      font-family: "din-demi"; }
    .grade_successful.first_grade_successful p small {
      font-size: 1.3rem;
      line-height: 1; }
  .grade_successful.first_grade_successful ul li {
    padding: 0 10px;
    font-size: 1.6rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    font-weight: bold; }
    .grade_successful.first_grade_successful ul li .i {
      padding-right: 10px;
      font-weight: bold;
      font-family: "din-demi"; }
    .grade_successful.first_grade_successful ul li .num {
      margin-left: auto; }
      .grade_successful.first_grade_successful ul li .num strong {
        font-size: 2.2rem;
        font-weight: bold;
        font-family: "din-demi"; }
    .grade_successful.first_grade_successful ul li.kasd {
      font-size: 2.2rem;
      color: #111;
      background: #fff118;
      padding: 10px; }
      .grade_successful.first_grade_successful ul li.kasd .num strong {
        font-size: 3.5rem; }

.loading {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  z-index: 10001;
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease; }
  .loading.is-hide {
    opacity: 0; }
  .loading .logo_loading {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 250px; }
    .loading .logo_loading .st {
      opacity: 0;
      stroke: #448FCB;
      stroke-miterlimit: 10;
      -webkit-transition: fill-opacity .5s ease;
      transition: fill-opacity .5s ease;
      fill-opacity: 0; }
    .loading .logo_loading .fill .st {
      fill-opacity: 1; }
    .loading .logo_loading .fill .blue {
      fill: #448FCB; }
    .loading .logo_loading .fill .red {
      fill: #E94709; }

/*IEのみ*/
@media all and (-ms-high-contrast: none) {
  /* IE11 */
  *::-ms-backdrop, .m-course .course_list .course_box.department .title span {
    padding: 5px 10px 0 !important;
    position: relative;
    bottom: 7px; }
  *::-ms-backdrop, .m-course .course_list .course_box.course .title .dept_cat {
    padding: 5px 10px 0 !important; }
  *::-ms-backdrop, .lower_ttl_course h1 span {
    padding: 7px 20px 3px;
    position: relative;
    bottom: 5px; }
  *::-ms-backdrop, .lower_ttl_course2 h1 span {
    padding: 7px 20px 3px;
    position: relative;
    bottom: 5px; }
  *::-ms-backdrop, .lower_ttl_child h1 .jp .square {
    padding: 5px 12px 0; }
  *::-ms-backdrop, .grade_successful.first_grade_successful ul li.kasd {
    padding: 20px 10px 4px; }
  *::-ms-backdrop, .grade_successful.first_grade_successful ul li.kasd .i {
    position: relative;
    bottom: 3px; }
  *::-ms-backdrop, .grade_successful.first_grade_successful ul li.kasd .num {
    position: relative;
    bottom: 5px; }
  *::-ms-backdrop, .m-success .successful_box dl dt {
    padding: 7px 10px 3px !important; }
  *::-ms-backdrop, .l-header .mega_menu ul li a .square {
    padding: 9px 10px 5px !important; }
  *::-ms-backdrop, .menu_list_text .menu_box a .square {
    padding: 10px 10px 7px !important; }
  *::-ms-backdrop, .m-examination_child .examination_child_contents .ttl04 .square {
    padding: 9px 10px 2px !important; }
  *::-ms-backdrop, .m-index .index_careers .index_careers_rate .text_area {
    -ms-flex-preferred-size: 34% !important;
    flex-basis: 34% !important; }
  *::-ms-backdrop, .m-index .index_careers .index_careers_rate .rate_area {
    -ms-flex-preferred-size: 38% !important;
    flex-basis: 38% !important; }
  *::-ms-backdrop, .m-index .index_careers .index_careers_rate .type_area {
    -ms-flex-preferred-size: 28% !important;
    flex-basis: 28% !important; } }

/*Macのみ*/
.mac .m-index .index_results .index_results_box .results_box .point_up .top .jp {
  margin-bottom: 20px; }

.mac .m-index .index_results .index_results_box .results_box.box02 .point_up .num strong {
  line-height: .6; }

.mac .m-index .index_results .index_results_box .results_box.box03 .point_up {
  top: 60px; }

.mac .m-course_child2 .voice .stepup .year_box .year_no span {
  margin-top: 0; }

.mac .m-course_child2 .voice .stepup .year_box .year_no {
  top: -10px; }

.mac .m-success .second_grade_successful .successful_in .no1 .one {
  top: 77px; }

.mac .m-success .second_grade_successful .successful_in .no1 .japan {
  margin-bottom: 20px; }

.mac .m-course_child2 .course_child2_head .course_border .num strong {
  padding-bottom: 0; }

.mac .m-index .index_careers .index_careers_rate .rate_area .text .num {
  margin-top: 30px; }

.mac .careers_probability .rate strong {
  margin-bottom: 20px; }

/*----------------------------------------------------
	form要素
--------------------------------------------------- */
input, textarea {
  padding: 5px 7px;
  border-radius: 2px;
  margin: 0;
  border: none;
  background-color: #fff;
  border: 1px solid #A7A6AA; }

input[type="text"],
textarea {
  outline: none;
  border: 1px solid #aaa;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease; }

input[type="text"]:focus,
textarea:focus {
  -webkit-box-shadow: 0 0 7px #52a8ec;
  box-shadow: 0 0 7px #52a8ec;
  border: 1px solid #52a8ec; }

input[type="radio"], input[type="checkbox"] {
  margin-right: 5px;
  vertical-align: baseline;
  border-style: none; }

label {
  margin-right: 15px; }

input[type="submit"] {
  -webkit-appearance: none; }

.contactForm input, .contactForm textarea, .contact_form input, .contact_form textarea {
  padding: 10px 15px;
  font-size: 1.6rem; }

.contactForm .mwform-radio-field, .contact_form .mwform-radio-field {
  display: block;
  margin-left: 0 !important; }

.contactForm .radio-field, .contactForm .check-field, .contact_form .radio-field, .contact_form .check-field {
  cursor: pointer;
  vertical-align: -webkit-baseline-middle; }

.contactForm input[type="radio"], .contact_form input[type="radio"] {
  top: -1px;
  position: relative;
  -webkit-appearance: button;
  appearance: button;
  -moz-appearance: none;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 20px;
  height: 20px;
  content: "";
  background-color: #FFFFFF;
  border: 2px solid #ccc;
  border-radius: 50%;
  -webkit-box-shadow: none;
  box-shadow: none;
  vertical-align: middle;
  cursor: pointer;
  padding: 5px; }

.contactForm input[type="radio"]:checked:after, .contact_form input[type="radio"]:checked:after {
  display: block;
  position: absolute;
  top: 3px;
  left: 3px;
  content: "";
  width: 10px;
  height: 10px;
  background: #00a2cb;
  border-radius: 50%; }

.contactForm input[type="checkbox"], .contact_form input[type="checkbox"] {
  display: inline-block;
  position: relative;
  margin-right: 5px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-appearance: button;
  appearance: button;
  -moz-appearance: none;
  width: 24px;
  height: 24px;
  border: 2px solid #ccc;
  vertical-align: middle;
  padding: 5px;
  border-radius: 5px; }
  .contactForm input[type="checkbox"]:checked, .contact_form input[type="checkbox"]:checked {
    border: 2px solid #00a2cb; }

.contactForm input[type="checkbox"]:checked::after, .contact_form input[type="checkbox"]:checked::after {
  position: absolute;
  content: "";
  top: 2px;
  left: 6px;
  width: 5px;
  height: 10px;
  border-right: 3px solid #00a2cb;
  border-bottom: 3px solid #00a2cb;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg); }

/*----------------------------------------------------
	ページ分割ナビ
--------------------------------------------------- */
.wp-pagenavi {
  padding: 40px 0 60px;
  text-align: center;
  overflow: hidden; }
  .wp-pagenavi.single {
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    padding: 0;
    margin-bottom: 60px; }
    .wp-pagenavi.single .container {
      position: relative;
      height: 100px;
      overflow: hidden; }
  .wp-pagenavi a, .wp-pagenavi span {
    padding: 15px 24px;
    background: #fff;
    border: 1px solid #ddd;
    color: #aaa;
    margin: 0 5px 10px 0;
    text-decoration: none;
    display: inline-block;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    font-size: 1.8rem; }
  .wp-pagenavi span {
    background: #00a2cb;
    color: #fff; }
  .wp-pagenavi .current, .wp-pagenavi .extend {
    background: #00a2cb;
    color: #fff; }
  .wp-pagenavi .pages {
    margin-right: 12px;
    background: #f5f5f5;
    color: #444;
    font-size: 1.6rem;
    border: 1px solid #f5f5f5; }
  .wp-pagenavi a:hover {
    background: #00a2cb;
    color: #fff; }
  .wp-pagenavi .alignleft, .wp-pagenavi .alignright {
    margin: 0;
    width: 46%;
    height: 100%; }
    .wp-pagenavi .alignleft a, .wp-pagenavi .alignright a {
      border: none;
      color: #444;
      padding: 0;
      margin: 0;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      font-size: 1.5rem;
      height: 100%;
      position: relative; }
      .wp-pagenavi .alignleft a::after, .wp-pagenavi .alignright a::after {
        font-family: "Font Awesome 5 Pro";
        position: absolute;
        position: absolute;
        top: 50%;
        -webkit-transform: translate(0, -50%);
        transform: translate(0, -50%); }
      .wp-pagenavi .alignleft a:hover, .wp-pagenavi .alignright a:hover {
        color: #fff;
        background: #00a2cb; }
  .wp-pagenavi .alignleft a {
    padding-left: 90px;
    padding-right: 15px; }
    .wp-pagenavi .alignleft a::after {
      content: "\f104";
      left: 30px; }
  .wp-pagenavi .alignright a {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    padding-right: 90px;
    padding-left: 15px; }
    .wp-pagenavi .alignright a::after {
      content: "\f105";
      right: 50px; }
  .wp-pagenavi .center {
    margin-top: 0;
    margin-bottom: 0;
    float: none;
    display: block;
    position: absolute;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    top: 0;
    height: 100%;
    width: 8%; }
    .wp-pagenavi .center a {
      background: #fff118;
      padding: 0;
      margin: 0;
      border: none;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      height: 100%; }
      .wp-pagenavi .center a:hover {
        opacity: .8; }

/*----------------------------------------------------
  送信確認ボタン
--------------------------------------------------- */
.btnArea {
  text-align: center;
  margin-bottom: 40px;
  margin-top: 40px;
  overflow: hidden; }
  .btnArea input {
    margin: 15px 20px;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Verdana, sans-serif;
    font-weight: bold;
    border-radius: 0; }
    .btnArea input:hover {
      opacity: .8; }

input[name="submitConfirm"] {
  background: #00a2cb;
  color: #FFF;
  padding: 0;
  width: 350px;
  height: 70px;
  border: none;
  display: block;
  margin: 20px auto;
  cursor: pointer;
  border-bottom: 3px solid #0069a5; }

/*----------------------------------------------------
  戻るボタン
--------------------------------------------------- */
input[name="submitBack"] {
  background: #ddd;
  padding: 0;
  height: 70px;
  border: none;
  cursor: pointer;
  float: left;
  margin: 1%;
  width: 48%; }

/*----------------------------------------------------
  送信ボタン
--------------------------------------------------- */
input[name="submitSubmit"] {
  background: #00a2cb;
  color: #FFF;
  height: 70px;
  border: none;
  cursor: pointer;
  float: left;
  margin: 1%;
  width: 48%; }

/*----------------------------------------------------
	#contents
----------------------------------------------------*/
.l-contents {
  word-break: normal;
  word-wrap: break-word; }

/*----------------------------------------------------
	ヘッダー
----------------------------------------------------*/
#page.is-act {
  padding-top: 95px; }
  #page.is-act .l-header {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10000;
    -webkit-animation: headerFadeOut .5s ease forwards;
    animation: headerFadeOut .5s ease forwards; }
    #page.is-act .l-header .header_logo {
      position: relative;
      top: 10px; }
      #page.is-act .l-header .header_logo .txt {
        display: none; }
    #page.is-act .l-header .header_right .cv_list .list01 {
      display: none; }
    #page.is-act .l-header .gnavi_wrapper {
      bottom: 0; }
    #page.is-act .l-header .gnavi {
      height: 50px;
      width: 75%;
      padding-left: 10px; }
      @media (max-width: 1280px) {
        #page.is-act .l-header .gnavi {
          max-width: 1000px; }
          #page.is-act .l-header .gnavi > li > a {
            padding: 0 20px; } }
      #page.is-act .l-header .gnavi > li.is-act > a::before {
        height: 10px; }
    #page.is-act .l-header .mega_menu {
      top: 50px; }

@-webkit-keyframes headerFadeOut {
  0% {
    -webkit-transform: translate(0, -95px);
    transform: translate(0, -95px);
    opacity: 0; }
  100% {
    height: 95px;
    background: #fff;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    opacity: 1; } }

.l-header {
  width: 100%;
  background: #fff;
  position: relative;
  padding-bottom: 35px;
  padding-top: 10px;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease; }
  .l-header .in {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center; }
  .l-header .header_logo {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding-left: 30px; }
    .l-header .header_logo .logo a {
      display: block; }
    .l-header .header_logo .txt {
      font-size: 1.3rem;
      line-height: 1.4;
      padding-left: 40px;
      padding-top: 10px; }
  .l-header .header_right {
    font-size: 1.4rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding-bottom: 20px; }
    .l-header .header_right .cv_list {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-flow: column;
      -ms-flex-flow: column;
      flex-flow: column;
      -webkit-box-align: end;
      -webkit-align-items: flex-end;
      -ms-flex-align: end;
      align-items: flex-end;
      padding-right: 25px; }
      .l-header .header_right .cv_list ul {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: end;
        -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        -webkit-justify-content: space-around;
        -ms-flex-pack: distribute;
        justify-content: space-around; }
        .l-header .header_right .cv_list ul li a {
          display: block; }
      .l-header .header_right .cv_list .list01 {
        margin-bottom: 12px; }
        .l-header .header_right .cv_list .list01 li {
          margin: 0 3px; }
          .l-header .header_right .cv_list .list01 li a {
            font-size: 1.3rem;
            border: 1px solid #ccc;
            padding: 5px 12px;
            -webkit-transition: all 0.3s ease;
            transition: all 0.3s ease; }
            .l-header .header_right .cv_list .list01 li a:hover {
              background: #f5f5f5; }
      .l-header .header_right .cv_list .list02 li {
        margin-right: 10px;
        padding-right: 10px;
        border-right: 1px solid #ccc; }
        .l-header .header_right .cv_list .list02 li:last-child {
          margin: 0;
          border: none; }
        .l-header .header_right .cv_list .list02 li a {
          font-weight: bold; }
          .l-header .header_right .cv_list .list02 li a .fas {
            color: #6bc4da;
            padding-right: 5px; }
          .l-header .header_right .cv_list .list02 li a:hover span {
            text-decoration: underline; }
    .l-header .header_right .cv_btn a {
      color: #fff;
      background: #222;
      position: relative;
      padding: 33px 47px;
      display: block;
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease;
      opacity: 1; }
      .l-header .header_right .cv_btn a:hover {
        opacity: .7; }
      .l-header .header_right .cv_btn a::before {
        content: "";
        display: block;
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 3px;
        background: #f19292; }
  .l-header .gnavi_wrapper {
    position: absolute;
    right: 0;
    z-index: 15;
    width: 100%; }
  .l-header .gnavi {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    background: #fff;
    height: 70px;
    max-width: 1050px;
    margin-left: auto;
    background: #00a2cb;
    border-bottom: 3px solid #0069a5;
    padding-left: 30px; }
    .l-header .gnavi > li:first-child > a {
      font-family: "din-demi-m"; }
    .l-header .gnavi > li {
      font-weight: bold; }
      .l-header .gnavi > li > a {
        position: relative;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease;
        color: #fff;
        padding: 0 30px;
        height: 100%;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center; }
        .l-header .gnavi > li > a::before {
          content: "";
          position: absolute;
          left: 50%;
          bottom: 0;
          width: 1px;
          height: 0;
          background: #222;
          -webkit-transition: all 0.3s ease;
          transition: all 0.3s ease; }
        .l-header .gnavi > li > a:hover {
          color: #fff118; }
      .l-header .gnavi > li.is-act > a {
        color: #fff118; }
        .l-header .gnavi > li.is-act > a::before {
          height: 20px; }
  .l-header .mega_menu {
    width: 100%;
    position: absolute;
    left: 0;
    top: 70px;
    z-index: 100;
    background: #f5f5f5;
    padding: 40px 0 15px;
    display: none; }
    .l-header .mega_menu .mega_menu_in {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      max-width: 1140px;
      margin: 0 auto; }
    .l-header .mega_menu .ttl_area a {
      display: block; }
      .l-header .mega_menu .ttl_area a:hover .thumb img {
        -webkit-transform: scale(1.08);
        transform: scale(1.08); }
      .l-header .mega_menu .ttl_area a .thumb {
        overflow: hidden; }
        .l-header .mega_menu .ttl_area a .thumb img {
          width: 100%;
          -webkit-transition: all .3s ease;
          transition: all .3s ease; }
      .l-header .mega_menu .ttl_area a .ttl {
        border-bottom: 2px solid #00a2cb;
        position: relative;
        top: -35px; }
        .l-header .mega_menu .ttl_area a .ttl h2 {
          font-size: 2.4rem;
          color: #111;
          padding-top: 20px;
          position: relative;
          width: 90%;
          background: #f5f5f5; }
        .l-header .mega_menu .ttl_area a .ttl strong {
          display: block;
          font-size: 1.3rem;
          color: #00a2cb;
          font-family: "din-demi";
          position: relative;
          padding: 15px 0 10px; }
          .l-header .mega_menu .ttl_area a .ttl strong::after {
            content: "\f061";
            display: block;
            font-family: "Font Awesome 5 Pro";
            position: absolute;
            top: 50%;
            -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
            right: 0;
            font-size: 1.4rem;
            font-weight: normal; }
    .l-header .mega_menu ul {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      margin: 0 -10px; }
      .l-header .mega_menu ul li {
        margin-bottom: 10px;
        width: 33.333333%;
        padding: 0 10px; }
        .l-header .mega_menu ul li a {
          display: block;
          position: relative;
          background: #fff;
          color: #111;
          -webkit-transition: all 0.3s ease;
          transition: all 0.3s ease;
          padding: 20px 25px;
          font-size: 1.4rem;
          font-weight: bold;
          z-index: 1; }
          .l-header .mega_menu ul li a.blue {
            color: #00a2cb;
            background: #fff; }
          .l-header .mega_menu ul li a.bluex {
            color: #4682b4;
            background: #fff; }
            .l-header .mega_menu ul li a.bluex:hover {
              background: #4682b4; }
          .l-header .mega_menu ul li a.blue2 {
            color: #00a2cb;
            background: #e0ffff; }
          .l-header .mega_menu ul li a.red {
            color: #db7093;
            background: #fff; }
            .l-header .mega_menu ul li a.red:hover {
              background: #db7093; }
          .l-header .mega_menu ul li a.black {
            color: #333;
            background: #fff; }
            .l-header .mega_menu ul li a.black:hover {
              background: #333; }
          .l-header .mega_menu ul li a.green {
            color: #43a71c; }
            .l-header .mega_menu ul li a.green:hover {
              background: #43a71c; }
          .l-header .mega_menu ul li a.green2 {
            color: #38b296; }
            .l-header .mega_menu ul li a.green2:hover {
              background: #38b296; }
          .l-header .mega_menu ul li a.orange {
            color: #f5b723; }
            .l-header .mega_menu ul li a.orange:hover {
              background: #f5b723; }
          .l-header .mega_menu ul li a .square {
            display: inline-block;
            vertical-align: middle;
            background: #00a2cb;
            color: #fff;
            font-size: 1.2rem;
            line-height: 1.0;
            padding: 5px 10px;
            margin-right: 7px;
            -webkit-transition: all 0.3s ease;
            transition: all 0.3s ease; }
            .l-header .mega_menu ul li a .square.orange {
              background: #f5b723; }
          .l-header .mega_menu ul li a::before {
            content: "\f061";
            display: block;
            font-family: "Font Awesome 5 Pro";
            position: absolute;
            top: 50%;
            -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
            right: 15px;
            font-size: 1.4rem;
            font-weight: normal;
            -webkit-transition: all 0.3s ease;
            transition: all 0.3s ease; }
          .l-header .mega_menu ul li a:hover {
            color: #fff;
            background: #00a2cb; }
            .l-header .mega_menu ul li a:hover::before {
              color: #fff118; }
            .l-header .mega_menu ul li a:hover .square {
              background: #fff;
              color: #00a2cb; }
              .l-header .mega_menu ul li a:hover .square.orange {
                color: #f5b723; }

@media (max-width: 1200px) {
  .l-header .header_logo {
    padding-left: 10px; }
    .l-header .header_logo .txt {
      padding-left: 20px; } }

/*----------------------------------------------------
	#main
----------------------------------------------------*/
.l-main {
  line-height: 180%; }
  .l-main table, .l-main ol, .l-main ul, .l-main dl, .l-main blockquote, .l-main pre, .l-main p {
    margin-bottom: 20px; }

/*----------------------------------------------------
	#side
----------------------------------------------------*/
/*-----------------------------------------------------
	フッター
-----------------------------------------------------*/
.l-footer {
  width: 100%;
  position: relative; }
  .l-footer .foot_copy {
    background: url(../img/footer/foot_copy_bg@2x.jpg) no-repeat;
    background-size: cover;
    text-align: center;
    padding: 140px 0; }
  .l-footer .foot_bg {
    background: #f5f5f5;
    margin-bottom: 35px; }
  .l-footer .foot_top {
    padding: 55px 0 40px; }
    .l-footer .foot_top .row {
      -webkit-box-align: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center; }
    .l-footer .foot_top .logo {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center; }
      .l-footer .foot_top .logo .add {
        line-height: 1.8;
        padding-left: 60px;
        font-size: 1.3rem; }
        .l-footer .foot_top .logo .add i {
          color: #00a2cb; }
  .l-footer .sns_list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center; }
    .l-footer .sns_list li {
      font-size: 2.4rem;
      margin: 0 20px; }
      .l-footer .sns_list li a {
        color: #aaa;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease; }
        .l-footer .sns_list li a:hover {
          opacity: .8; }
  .l-footer .foot_middle {
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    padding: 45px 0 70px;
    position: relative; }
    .l-footer .foot_middle dl {
      margin-bottom: 60px; }
      .l-footer .foot_middle dl dt {
        font-weight: bold;
        margin-bottom: 20px; }
        .l-footer .foot_middle dl dt a {
          color: #111; }
      .l-footer .foot_middle dl dd {
        margin-bottom: 12px;
        font-size: 1.3rem; }
      .l-footer .foot_middle dl ul {
        margin-top: 15px;
        margin-bottom: 25px; }
        .l-footer .foot_middle dl ul li {
          padding-left: 15px;
          margin-bottom: 10px;
          position: relative; }
          .l-footer .foot_middle dl ul li::before {
            content: "－";
            position: absolute;
            left: 0; }
      .l-footer .foot_middle dl .plus {
        padding-left: 15px;
        margin-bottom: 15px;
        position: relative; }
        .l-footer .foot_middle dl .plus::before {
          content: "＋";
          position: absolute;
          left: 0; }
      .l-footer .foot_middle dl a:hover {
        text-decoration: underline; }
    .l-footer .foot_middle .f_navi_other {
      position: absolute;
      right: 50px;
      bottom: 45px; }
      .l-footer .foot_middle .f_navi_other ul {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex; }
      .l-footer .foot_middle .f_navi_other li {
        margin: 0 10px;
        width: 170px; }
        .l-footer .foot_middle .f_navi_other li a {
          font-size: 1.3rem;
          color: #111;
          display: block;
          border-bottom: 3px solid #00a2cb;
          padding: 0 40px 12px 10px;
          font-weight: bold;
          position: relative; }
          .l-footer .foot_middle .f_navi_other li a::after {
            content: "\f061";
            display: block;
            font-family: "Font Awesome 5 Pro";
            position: absolute;
            top: 0;
            right: 10px;
            font-size: 1.4rem;
            font-weight: normal; }
  .l-footer .foot_bottom {
    padding: 45px 0 90px; }
    .l-footer .foot_bottom .row {
      -webkit-box-align: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center; }
    .l-footer .foot_bottom ul {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center; }
      .l-footer .foot_bottom ul li {
        margin: 0 15px; }
  .l-footer .copyright {
    font-family: "din-demi-m";
    color: #fff;
    background: #00a2cb;
    position: absolute;
    right: 0;
    bottom: -35px;
    font-size: 1.3rem;
    padding: 0 40px;
    line-height: 70px;
    height: 70px;
    width: 45%; }

/*----------------------------------------------------
	各ページのスタイル
----------------------------------------------------*/
/* トップページ */
.m-index .index_news {
  position: relative;
  padding: 30px 0; }
  .m-index .index_news .btn01 a {
    margin: 30px auto 0;
	margin-bottom:20px;
}
  .m-index .index_news h2 {
    font-size: 3.0rem;
    font-family: "din-demi-m";
    color: #111;
    margin-bottom: 60px; }
  .m-index .index_news .news_in {
    position: relative; }
    .m-index .index_news .news_in .cat_list {
      position: absolute;
      right: 0;
      top: 0; }

.m-index .index_results {
  background: url(../../img/index/index_results_bg@2x.jpg);
  background-size: 100%;
  padding-top: 50px;
  padding-bottom: 60px; }
  .m-index .index_results .container {
    position: relative; }
  .m-index .index_results h2 {
    padding-left: 95px;
    margin-bottom: 45px; }
  .m-index .index_results .results_btn {
    position: absolute;
    top: -20px;
    right: 95px; }
  .m-index .index_results .index_results_box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    padding-right: 55px; }
    .m-index .index_results .index_results_box .results_box {
      margin: 0 15px;
      position: relative; }
      .m-index .index_results .index_results_box .results_box .point_up {
        position: absolute;
        left: 0;
        width: 100%;
        color: #fff;
        font-weight: bold;
        text-align: center; }
        .m-index .index_results .index_results_box .results_box .point_up .top {
          display: inline-block; }
          .m-index .index_results .index_results_box .results_box .point_up .top span {
            display: block; }
          .m-index .index_results .index_results_box .results_box .point_up .top .jp {
            color: #fff;
            font-size: 3.2rem;
            position: relative;
            padding-bottom: 12px;
            margin-bottom: 10px; }
            .m-index .index_results .index_results_box .results_box .point_up .top .jp::before {
              content: "";
              position: absolute;
              bottom: 0;
              left: 3px;
              display: block;
              width: 55px;
              border-bottom: 3px solid #fff; }
          .m-index .index_results .index_results_box .results_box .point_up .top .no {
            font-size: 4.4rem;
            font-family: "din-demi";
            color: #fff118; }
        .m-index .index_results .index_results_box .results_box .point_up .num {
          font-size: 3.2rem; }
          .m-index .index_results .index_results_box .results_box .point_up .num strong {
            font-family: "din-demi";
            color: #fff118; }
        .m-index .index_results .index_results_box .results_box .point_up .ranking {
          font-size: 1.4rem;
          position: relative;
          display: -webkit-box;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: center;
          -webkit-align-items: center;
          -ms-flex-align: center;
          align-items: center;
          -webkit-box-pack: center;
          -webkit-justify-content: center;
          -ms-flex-pack: center;
          justify-content: center;
          margin-top: 9px;
          padding-top: 3px; }
          .m-index .index_results .index_results_box .results_box .point_up .ranking::before {
            content: "";
            display: block;
            position: absolute;
            left: 50%;
            -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
            top: 0;
            border-top: 1px solid #9ddbeb;
            width: 60px; }
          .m-index .index_results .index_results_box .results_box .point_up .ranking span {
            display: inline-block;
            line-height: 1.3; }
          .m-index .index_results .index_results_box .results_box .point_up .ranking .rank strong {
            font-size: 4.0rem;
            font-family: "din-demi";
            color: #fff118; }
      .m-index .index_results .index_results_box .results_box.box01 .point_up {
        top: 40px;
        padding-left: 30px; }
        .m-index .index_results .index_results_box .results_box.box01 .point_up .num {
          margin-left: -10px;
          display: inline-block; }
          .m-index .index_results .index_results_box .results_box.box01 .point_up .num strong {
            font-size: 12.3rem; }
      .m-index .index_results .index_results_box .results_box.box02 .point_up {
        top: 25px; }
        .m-index .index_results .index_results_box .results_box.box02 .point_up .txt {
          display: block;
          margin-bottom: 25px; }
        .m-index .index_results .index_results_box .results_box.box02 .point_up .num {
          letter-spacing: -.1em;
          display: -webkit-box;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-pack: center;
          -webkit-justify-content: center;
          -ms-flex-pack: center;
          justify-content: center; }
          .m-index .index_results .index_results_box .results_box.box02 .point_up .num strong {
            font-size: 10.0rem; }
          .m-index .index_results .index_results_box .results_box.box02 .point_up .num .per {
            text-align: left;
            padding-left: 5px;
            letter-spacing: 0; }
            .m-index .index_results .index_results_box .results_box.box02 .point_up .num .per .sm {
              display: block;
              font-size: 1.6rem; }
      .m-index .index_results .index_results_box .results_box.box03 .point_up {
        top: 40px; }
        .m-index .index_results .index_results_box .results_box.box03 .point_up .num {
          letter-spacing: -.1em; }
          .m-index .index_results .index_results_box .results_box.box03 .point_up .num strong {
            font-size: 10.0rem; }
        .m-index .index_results .index_results_box .results_box.box03 .point_up .sm {
          font-size: 1.4rem;
          line-height: 1; }
  .m-index .index_results .results_obj {
    position: absolute;
    left: 30px;
    bottom: 0; }

.m-index .index_opencampus .in {
  background: url(../../img/index/index_opencampus_bnr@2x.png) no-repeat;
  background-size: cover;
  width: 1327px;
  height: 367px;
  margin: 70px auto;
  display: block;
  position: relative; }
  .m-index .index_opencampus .in .date_list {
    position: absolute;
    bottom: 20px;
    right: 130px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    .m-index .index_opencampus .in .date_list li {
      margin: 0 5px;
      max-width: 200px;
      text-align: center;
      background: url(../img/ico/label_p@2x.png) no-repeat;
      background-size: cover;
      width: 110px;
      height: 110px;
      font-family: "din-demi-m";
      color: #fff;
      padding-top: 40px; }
      .m-index .index_opencampus .in .date_list li .month {
        font-size: 3.2rem;
        display: inline-block;
        vertical-align: top;
        padding-right: 3px;
        letter-spacing: -.03em; }
      .m-index .index_opencampus .in .date_list li .day {
        font-size: 5.0rem;
        display: inline-block;
        vertical-align: top;
        letter-spacing: -.03em; }
      .m-index .index_opencampus .in .date_list li .week {
        display: block;
        color: #fff118;
        padding-top: 5px; }

.m-index .index_course {
  margin-bottom: 50px; }
  .m-index .index_course .course_box {
    position: relative;
    margin-bottom: 70px; }
    .m-index .index_course .course_box::before {
      content: "";
      display: block;
      position: absolute;
      right: 50%;
      top: 0;
      width: 705px;
      height: 515px;
      background: url(../../img/index/index_course_img01@2x.jpg) no-repeat center center;
      background-size: cover;
      margin-right: 95px; }
    .m-index .index_course .course_box .text {
      margin-left: 42%;
      padding-top: 20px;
      padding-left: 40px; }
      .m-index .index_course .course_box .text h3 {
        font-size: 2.8rem;
        color: #111;
        line-height: 1.5;
        margin-bottom: 20px; }
        .m-index .index_course .course_box .text h3 span {
          background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(70%, #fff118));
          background: linear-gradient(transparent 70%, #fff118 70%); }
      .m-index .index_course .course_box .text p {
        margin-bottom: 30px; }
  .m-index .index_course .course_nav .nav_box a {
    display: block; }
    .m-index .index_course .course_nav .nav_box a:hover .img > img {
      -webkit-transform: scale(1.08);
      transform: scale(1.08); }
    .m-index .index_course .course_nav .nav_box a .img {
      overflow: hidden;
      position: relative; }
      .m-index .index_course .course_nav .nav_box a .img > img {
        width: 100%;
        -webkit-transition: all .3s ease;
        transition: all .3s ease; }
      .m-index .index_course .course_nav .nav_box a .img span {
        display: block;
        width: 100%;
        position: absolute;
        top: 50%;
        left: 0;
        margin-top: -29.5px;
        text-align: center; }
    .m-index .index_course .course_nav .nav_box a h3 {
      font-size: 2.0rem;
      text-align: center;
      color: #111;
      margin: 15px 0; }

.m-index .index_careers {
  background: url(../../img/index/index_careers_bg@2x.jpg) no-repeat center center;
  background-size: cover;
  padding-top: 60px;
  padding-bottom: 70px; }
  .m-index .index_careers .index_careers_rate {
    margin-bottom: 30px; }
    .m-index .index_careers .index_careers_rate .container {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center; }
    .m-index .index_careers .index_careers_rate .text_area {
      -webkit-flex-basis: 32%;
      -ms-flex-preferred-size: 32%;
      flex-basis: 32%; }
      .m-index .index_careers .index_careers_rate .text_area p {
        font-size: 2.4rem;
        color: #111;
        line-height: 2.1;
        margin-bottom: 0;
        -webkit-font-feature-settings: "palt";
        font-feature-settings: "palt";
        letter-spacing: .5px; }
        .m-index .index_careers .index_careers_rate .text_area p strong {
          border-bottom: 2px solid #111;
          padding-bottom: 3px; }
    .m-index .index_careers .index_careers_rate .rate_area {
      -webkit-flex-basis: 36%;
      -ms-flex-preferred-size: 36%;
      flex-basis: 36%;
      position: relative;
      text-align: center; }
      .m-index .index_careers .index_careers_rate .rate_area .text {
        line-height: 1.3;
        font-size: 2.5rem;
        color: #fff;
        font-weight: bold;
        position: absolute;
        top: 50%;
        -webkit-transform: translate(0, -50%);
        transform: translate(0, -50%);
        width: 100%;
        left: 0; }
        .m-index .index_careers .index_careers_rate .rate_area .text .en {
          font-family: "din-demi"; }
        .m-index .index_careers .index_careers_rate .rate_area .text .num {
          color: #fff118;
          font-size: 5.2rem;
          font-family: "din-demi";
          line-height: 1; }
          .m-index .index_careers .index_careers_rate .rate_area .text .num .big {
            font-size: 11.9rem;
            letter-spacing: -3px; }
          .m-index .index_careers .index_careers_rate .rate_area .text .num .sm {
            font-size: 7.2rem; }
    .m-index .index_careers .index_careers_rate .type_area {
      -webkit-flex-basis: 32%;
      -ms-flex-preferred-size: 32%;
      flex-basis: 32%;
      background: rgba(255, 255, 255, 0.7);
      padding: 15px 30px; }
      .m-index .index_careers .index_careers_rate .type_area .type01 {
        color: #ec82b1; }
      .m-index .index_careers .index_careers_rate .type_area .type02 {
        color: #428fca; }
      .m-index .index_careers .index_careers_rate .type_area .type03 {
        color: #4eb7ba; }
      .m-index .index_careers .index_careers_rate .type_area .type04 {
        color: #5ab651; }
      .m-index .index_careers .index_careers_rate .type_area .type05 {
        color: #f7b000; }
      .m-index .index_careers .index_careers_rate .type_area ul {
        margin-bottom: 0; }
        .m-index .index_careers .index_careers_rate .type_area ul li {
          font-weight: bold;
          display: inline-block;
          line-height: 1.3em;
          margin-right: 20px;
          margin-bottom: 10px; }
          .m-index .index_careers .index_careers_rate .type_area ul li .ico {
            display: inline-block;
            vertical-align: middle;
            padding-right: 8px; }
  .m-index .index_careers .careers_box {
    max-width: 280px;
    margin: 10px; }

.m-index .index_bnr_slide {
  margin: 70px 0 80px; }
  .m-index .index_bnr_slide li {
    margin: 10px;
    }
    .m-index .index_bnr_slide li a {
      display: block;
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease;
      opacity: 1; }
      .m-index .index_bnr_slide li a:hover {
        opacity: .7; }
    .m-index .index_bnr_slide li img {
      width: 100%; }
  .m-index .index_bnr_slide .slick-prev, .m-index .index_bnr_slide .slick-next {
    z-index: 1000;
    top: 40%;
    background-color: #0069a5;
    background-size: 13.5px 12px;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url(../../common/img/ico/more_arrow02@2x.png); }
    .m-index .index_bnr_slide .slick-prev::before, .m-index .index_bnr_slide .slick-next::before {
      display: none; }
  .m-index .index_bnr_slide .slick-prev {
    left: 25%;
    -webkit-transform: scale(-1, 1);
    transform: scale(-1, 1); }
  .m-index .index_bnr_slide .slick-next {
    right: 25%; }

.m-index .index_topics {
  margin-bottom: 20px;
  background: #f5f5f5;
  padding: 65px 0 40px;
  margin-bottom: 0; }
  .m-index .index_topics .more_btn {
    margin-left: auto;
    margin-bottom: 20px; }

/* 学校案内 */
.m-about .about_box {
  position: relative;
  margin-bottom: 80px; }
  .m-about .about_box::before {
    content: "";
    display: block; }
  .m-about .about_box .text .num {
    font-family: "din-demi-m";
    color: #00a2cb;
    font-size: 6.0rem;
    font-weight: 500;
    margin-bottom: 30px; }
    .m-about .about_box .text .num span {
      display: inline-block;
      position: relative; }
      .m-about .about_box .text .num span::after {
        content: "";
        display: block;
        border-bottom: 3px solid #222;
        width: .9em;
        margin: 0 auto;
        padding-bottom: 25px; }
  .m-about .about_box .text h3 {
    font-size: 2.8rem;
    color: #111;
    margin-bottom: 30px; }
  .m-about .about_box .text p {
    background: #fff; }
  .m-about .about_box.no01, .m-about .about_box.no02 {
    margin-bottom: 70px; }
    .m-about .about_box.no01::before, .m-about .about_box.no02::before {
      position: absolute;
      top: 0;
      width: 69%;
      height: 320px; }
    .m-about .about_box.no01 .text, .m-about .about_box.no02 .text {
      width: 43%;
      position: relative;
      top: 45px; }
      .m-about .about_box.no01 .text .num, .m-about .about_box.no02 .text .num {
        text-align: right; }
      .m-about .about_box.no01 .text p, .m-about .about_box.no02 .text p {
        padding: 40px; }
  .m-about .about_box.no01::before {
    background: url(../../img/about/about_img01@2x.jpg);
    background-size: cover;
    right: 20px; }
  .m-about .about_box.no01 .text .num, .m-about .about_box.no01 .text h3 {
    margin-right: 115px; }
  .m-about .about_box.no01 .text p {
    padding-left: 0; }
  .m-about .about_box.no02::before {
    background: url(../../img/about/about_img02@2x.jpg);
    background-size: cover;
    left: 20px; }
  .m-about .about_box.no02 .text {
    margin-left: auto; }
    .m-about .about_box.no02 .text h3 {
      text-align: right; }
    .m-about .about_box.no02 .text p {
      padding-right: 0; }
  .m-about .about_box.no03::before, .m-about .about_box.no04::before {
    height: 320px;
    width: 100%; }
  .m-about .about_box.no03 .text, .m-about .about_box.no04 .text {
    padding-left: 40px;
    position: relative;
    top: -10px; }
  .m-about .about_box.no03::before {
    background: url(../../img/about/about_img03@2x.jpg);
    background-size: cover; }
  .m-about .about_box.no04::before {
    background: url(../../img/about/about_img04@2x.jpg);
    background-size: cover; }

.m-about .about_menu {
  background: #f5f5f5;
  padding: 70px 0 60px; }

/* 教育理念・沿革 */
.m-philosophy .idea {
  margin-bottom: 70px; }
  .m-philosophy .idea .idea_head {
    position: relative;
    margin-bottom: 80px; }
    .m-philosophy .idea .idea_head h3 {
      position: absolute;
      top: 50px;
      left: 0; }
    .m-philosophy .idea .idea_head .director {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
      -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
      flex-direction: row-reverse;
      -webkit-box-align: end;
      -webkit-align-items: flex-end;
      -ms-flex-align: end;
      align-items: flex-end;
      padding-right: 50px; }
      .m-philosophy .idea .idea_head .director .name {
        font-size: 1.3rem;
        text-align: right;
        margin-bottom: 0;
        padding-right: 20px; }
        .m-philosophy .idea .idea_head .director .name strong {
          display: block;
          font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "MS P明朝", "MS 明朝", serif;
          font-size: 2.0rem;
          margin-bottom: 5px; }
  .m-philosophy .idea .en_text {
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "MS P明朝", "MS 明朝", serif; }

.m-philosophy .history .head {
  background: url(../../img/philosophy/history_bg@2x.jpg) no-repeat center center;
  background-size: cover;
  height: 350px;
  text-align: center;
  padding-top: 40px;
  margin-bottom: 30px; }

.m-philosophy .history .tC {
  margin-bottom: 90px;
  line-height: 2.0; }

.m-philosophy .history .history_list:nth-child(even) {
  background: #f5f5f5; }

.m-philosophy .history .history_list .container {
  position: relative;
  top: -27px; }

.m-philosophy .history .history_list h3 {
  text-align: center;
  position: relative; }
  .m-philosophy .history .history_list h3::after {
    font-family: "din-demi-m";
    font-style: italic;
    display: block;
    position: absolute;
    top: 40px;
    right: -90px;
    color: #f5f5f5;
    font-size: 20rem;
    font-weight: 500; }
  .m-philosophy .history .history_list h3.y1990::after {
    content: "1990-"; }
  .m-philosophy .history .history_list h3.y2000::after {
    content: "2000-";
    color: #fff; }
  .m-philosophy .history .history_list h3.y2010::after {
    content: "2010-"; }
  .m-philosophy .history .history_list h3::before {
    content: "";
    border-bottom: 1px solid #ddd;
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    z-index: 1; }
  .m-philosophy .history .history_list h3 span {
    display: inline-block;
    font-family: "din-demi-m";
    background: #00a2cb;
    color: #fff118;
    font-size: 3.5rem;
    width: 400px;
    line-height: 50px;
    border-radius: 25px;
    font-weight: 500;
    font-style: italic;
    position: relative;
    z-index: 1; }

.m-philosophy .history .history_list .box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  position: relative;
  padding: 40px 0; }
  .m-philosophy .history .history_list .box:first-of-type {
    padding-top: 80px; }
    .m-philosophy .history .history_list .box:first-of-type.noimg {
      padding-top: 40px; }
  .m-philosophy .history .history_list .box:last-of-type {
    padding-bottom: 60px; }
  .m-philosophy .history .history_list .box::before {
    content: "";
    position: absolute;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    top: 0;
    height: 100%;
    border-left: 2px solid #00a2cb; }
  .m-philosophy .history .history_list .box .img {
    padding: 0 30px;
    width: 50%;
    text-align: right;
    position: relative;
    top: -40px; }
  .m-philosophy .history .history_list .box .box_in {
    width: 50%;
    padding: 0 70px;
    position: relative;
    margin-left: auto; }
    .m-philosophy .history .history_list .box .box_in::before, .m-philosophy .history .history_list .box .box_in::after {
      content: "";
      position: absolute; }
    .m-philosophy .history .history_list .box .box_in::before {
      border-top: 1px solid #00a2cb;
      left: 0;
      top: 17px;
      width: 50px; }
    .m-philosophy .history .history_list .box .box_in::after {
      width: 12px;
      height: 12px;
      background: #00a2cb;
      left: -6px;
      top: 12px;
      border-radius: 100%; }
    .m-philosophy .history .history_list .box .box_in .month {
      font-family: "din-demi-m";
      color: #00a2cb;
      font-size: 3.5rem;
      display: block;
      margin-bottom: 20px; }
    .m-philosophy .history .history_list .box .box_in p {
      margin-bottom: 0; }
  .m-philosophy .history .history_list .box.reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row; }
    .m-philosophy .history .history_list .box.reverse .img {
      text-align: left; }
    .m-philosophy .history .history_list .box.reverse .box_in {
      text-align: right; }
      .m-philosophy .history .history_list .box.reverse .box_in::before, .m-philosophy .history .history_list .box.reverse .box_in::after {
        left: auto; }
      .m-philosophy .history .history_list .box.reverse .box_in::before {
        right: 0; }
      .m-philosophy .history .history_list .box.reverse .box_in::after {
        right: -6px; }
  .m-philosophy .history .history_list .box.noimg {
    padding-top: 0; }
    .m-philosophy .history .history_list .box.noimg.reverse .box_in {
      margin-left: 0;
      margin-right: auto; }
  .m-philosophy .history .history_list .box.end::after {
    content: "";
    border-left: 2px solid #00a2cb;
    position: absolute;
    bottom: 0;
    left: 50%;
    height: 20px;
    -webkit-transform: skewX(45deg);
    transform: skewX(45deg);
    -webkit-transform-origin: 50% bottom;
    transform-origin: 50% bottom; }

.m-philosophy .history .history_list .bottom {
  margin-top: 20px;
  text-align: center;
  color: #00a2cb;
  font-family: "din-demi-m";
  font-style: italic;
  font-size: 3.5rem; }

/* KASDで学ぶ8つの魅力 */
.m-reason .head_text {
  margin-bottom: 70px; }
  .m-reason .head_text p {
    padding: 0 70px; }

.m-reason .reason_sec {
  margin-bottom: 60px; }
  .m-reason .reason_sec .profile {
    margin-top: 15px; }
    .m-reason .reason_sec .profile .in {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      font-size: 1.3rem;
      margin-bottom: 15px; }
      .m-reason .reason_sec .profile .in .name {
        display: block;
        color: #111;
        font-size: 1.8rem;
        width: 50%; }
        .m-reason .reason_sec .profile .in .name span {
          font-size: 1.3rem;
          display: inline-block;
          vertical-align: middle;
          padding-right: 5px; }
      .m-reason .reason_sec .profile .in p {
        width: 50%;
        line-height: 1.6;
        margin-bottom: 0; }
  .m-reason .reason_sec .reason_head {
    position: relative;
    padding-top: 30px;
    margin-bottom: 30px; }
    .m-reason .reason_sec .reason_head .img {
      position: absolute;
      top: 0;
      left: 50%;
      margin-left: -100px;
      width: 900px; }
    .m-reason .reason_sec .reason_head .head_in .ttl {
      background: url(../img/bg/bg01@2x.jpg);
      background-size: 50%;
      padding: 40px 140px 35px 0;
      width: 50%;
      text-align: right;
      margin-bottom: 60px; }
      .m-reason .reason_sec .reason_head .head_in .ttl .num {
        margin-bottom: 35px; }
      .m-reason .reason_sec .reason_head .head_in .ttl h2 {
        color: #fff;
        font-size: 3.6rem;
        line-height: 1.4;
        -webkit-font-feature-settings: "palt";
        font-feature-settings: "palt";
        letter-spacing: 2px; }
        .m-reason .reason_sec .reason_head .head_in .ttl h2 span {
          color: #fff118; }
          .m-reason .reason_sec .reason_head .head_in .ttl h2 span.kome {
            position: relative; }
            .m-reason .reason_sec .reason_head .head_in .ttl h2 span.kome::after {
              content: "※";
              display: block;
              position: absolute;
              top: -10px;
              right: -5px;
              font-size: 1.3rem; }
      .m-reason .reason_sec .reason_head .head_in .ttl .kome_txt {
        margin: 5px 0 0; }
        .m-reason .reason_sec .reason_head .head_in .ttl .kome_txt span {
          display: inline-block;
          background: #fff;
          font-size: 1.3rem;
          padding: 0 10px; }
      .m-reason .reason_sec .reason_head .head_in .ttl .emp {
        display: inline-block;
        background: #fff118;
        color: #00a2cb;
        font-weight: bold;
        padding: 2px 12px;
        border-radius: 5px;
        margin-top: 10px; }
    .m-reason .reason_sec .reason_head .head_in .balloon {
      width: 500px;
      position: relative;
      right: 50%;
      margin-left: auto;
      margin-right: 55px; }
      .m-reason .reason_sec .reason_head .head_in .balloon::before {
        content: "";
        display: block;
        background: #fff;
        position: absolute;
        top: -3px;
        right: -3px;
        width: 100%;
        height: 100%; }
      .m-reason .reason_sec .reason_head .head_in .balloon .in {
        position: relative;
        padding: 15px 0 20px 40px;
        border: 3px solid #231815;
        background: #fff;
        height: 250px; }
        .m-reason .reason_sec .reason_head .head_in .balloon .in::before {
          content: "";
          background: url(../../img/reason/reason_arrow@2x.png);
          background-size: cover;
          position: absolute;
          right: -27px;
          top: 40px;
          width: 29px;
          height: 36px;
          -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1); }
        .m-reason .reason_sec .reason_head .head_in .balloon .in .sub {
          display: block;
          color: #00a2cb;
          font-family: "din-demi-m";
          font-size: 1.3rem;
          margin-bottom: 10px;
          position: relative; }
          .m-reason .reason_sec .reason_head .head_in .balloon .in .sub::before {
            content: "";
            display: block;
            position: absolute;
            top: 50%;
            left: -40px;
            width: 25px;
            border-bottom: 1px solid #231815; }
        .m-reason .reason_sec .reason_head .head_in .balloon .in strong {
          display: block;
          color: #111;
          font-size: 2.2rem;
          margin-top: 25px;
          line-height: 1.5; }
    .m-reason .reason_sec .reason_head .head_in .profile {
      max-width: 500px;
      position: relative;
      right: 50%;
      margin-left: auto;
      margin-right: 55px; }
      .m-reason .reason_sec .reason_head .head_in .profile .in .name, .m-reason .reason_sec .reason_head .head_in .profile .in p {
        width: auto; }
      .m-reason .reason_sec .reason_head .head_in .profile .in .name {
        padding-right: 15px; }
    .m-reason .reason_sec .reason_head.reverse .img {
      left: auto;
      right: 50%;
      margin-right: -100px; }
    .m-reason .reason_sec .reason_head.reverse .head_in .ttl {
      padding-left: 140px;
      padding-right: 0;
      text-align: left;
      margin-left: auto; }
    .m-reason .reason_sec .reason_head.reverse .head_in .balloon {
      left: 50%;
      right: auto;
      margin-left: 55px;
      margin-right: 0; }
      .m-reason .reason_sec .reason_head.reverse .head_in .balloon::before {
        right: 3px; }
      .m-reason .reason_sec .reason_head.reverse .head_in .balloon .in::before {
        left: -27px;
        right: auto;
        -webkit-transform: scale(1, 1);
        transform: scale(1, 1); }
    .m-reason .reason_sec .reason_head.reverse .head_in .profile {
      left: 50%;
      right: auto;
      margin-left: 55px;
      margin-right: 0; }
      .m-reason .reason_sec .reason_head.reverse .head_in .profile .in {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
        text-align: right; }
        .m-reason .reason_sec .reason_head.reverse .head_in .profile .in .name {
          padding-right: 0;
          padding-left: 15px; }
  .m-reason .reason_sec .reason_detail .detail dt {
    float: left;
    color: #00a2cb;
    line-height: 1.4;
    font-weight: bold; }
  .m-reason .reason_sec .reason_detail .detail dd {
    overflow: hidden;
    padding-left: 15px; }

/* 職業実践専門課程 認定校 */
.m-accredited section {
  margin-bottom: 60px; }

.m-accredited .department ul {
  padding-left: 25px; }
  .m-accredited .department ul li {
    list-style: disc;
    margin-bottom: 10px; }
    .m-accredited .department ul li a {
      display: inline-block;
      color: #dc2f2f;
      border: 1px solid #ccc;
      font-family: "din-demi-m";
      font-size: 1.4rem;
      padding: 0 15px; }
      .m-accredited .department ul li a .far {
        padding-right: 5px; }

.m-accredited .overview dl {
  margin-bottom: 60px; }
  .m-accredited .overview dl dt {
    color: #0069a5;
    font-size: 2rem;
    font-weight: bold; }

.m-accredited .overview ul li {
  padding-left: 40px;
  position: relative;
  margin-bottom: 10px; }
  .m-accredited .overview ul li::before {
    position: absolute;
    left: 0;
    color: #444; }
  .m-accredited .overview ul li::after {
    content: "";
    position: absolute;
    top: 13px;
    left: 15px;
    width: 5px;
    height: 1px;
    background: #444; }
  .m-accredited .overview ul li:nth-child(1)::before {
    content: "1"; }
  .m-accredited .overview ul li:nth-child(2)::before {
    content: "2"; }
  .m-accredited .overview ul li:nth-child(3)::before {
    content: "3"; }
  .m-accredited .overview ul li:nth-child(4)::before {
    content: "4"; }
  .m-accredited .overview ul li:nth-child(5)::before {
    content: "5"; }
  .m-accredited .overview ul li:nth-child(6)::before {
    content: "6"; }
  .m-accredited .overview ul li:nth-child(7)::before {
    content: "7"; }
  .m-accredited .overview ul li:nth-child(8)::before {
    content: "8"; }
  .m-accredited .overview ul li:nth-child(9)::before {
    content: "9"; }
  .m-accredited .overview ul li:nth-child(10)::before {
    content: "10"; }

/* キャンパスマップ */
.m-campusmap .map {
  margin-bottom: 80px; }
  .m-campusmap .map h2 {
    margin-bottom: 35px; }
    .m-campusmap .map h2 span {
      color: #00a2cb;
      font-size: 2.8rem;
      display: inline-block;
      border-bottom: 3px solid #00a2cb;
      padding-bottom: 10px; }
  .m-campusmap .map p {
    margin-bottom: 50px; }
  .m-campusmap .map .map_area {
    max-width: 910px;
    margin: 0 auto; }
    .m-campusmap .map .map_area a {
      display: block;
      position: relative; }
      .m-campusmap .map .map_area a span {
        display: block;
        color: #fff;
        background: #00a2cb;
        position: absolute;
        right: 0;
        bottom: 0;
        font-size: 2rem;
        line-height: 60px;
        width: 60px;
        text-align: center; }

.m-campusmap .bldg .bldg_box {
  margin-bottom: 60px; }
  .m-campusmap .bldg .bldg_box a {
    display: block;
    position: relative;
    color: #111;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease; }
    .m-campusmap .bldg .bldg_box a:hover {
      color: #00a2cb; }
      .m-campusmap .bldg .bldg_box a:hover .img img {
        -webkit-transform: scale(1.05);
        transform: scale(1.05); }
  .m-campusmap .bldg .bldg_box .img {
    overflow: hidden; }
    .m-campusmap .bldg .bldg_box .img img {
      -webkit-transition: all 0.5s ease;
      transition: all 0.5s ease; }
    .m-campusmap .bldg .bldg_box .img span {
      position: absolute;
      display: block;
      font-family: "din-demi-m";
      font-size: 2rem;
      -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl;
      top: -30px;
      left: 15px;
      letter-spacing: 2px;
      font-weight: bold; }
  .m-campusmap .bldg .bldg_box strong {
    font-size: 1.6rem;
    text-align: center;
    padding: 15px;
    display: block;
    position: relative; }
    .m-campusmap .bldg .bldg_box strong::after {
      content: "\f061";
      display: block;
      font-family: "Font Awesome 5 Pro";
      position: absolute;
      top: 50%;
      -webkit-transform: translate(0, -50%);
      transform: translate(0, -50%);
      right: 10px;
      font-size: 1.4rem;
      font-weight: normal; }

/* キャンパスマップ　\ 各施設 */
.m-campusmap_child .ttl02 {
  margin-bottom: 100px; }

.m-campusmap_child .detail {
  margin-bottom: 70px; }
  .m-campusmap_child .detail .head_box {
    margin-bottom: 50px; }
    .m-campusmap_child .detail .head_box .table th {
      white-space: nowrap; }
  .m-campusmap_child .detail .facility_list .facility_box {
    margin-bottom: 30px; }
    .m-campusmap_child .detail .facility_list .facility_box h3 {
      font-size: 1.8rem;
      color: #111;
      padding: 15px 0; }

.m-campusmap_child .bldg_list .bldg_box .box {
  margin-bottom: 15px; }
  .m-campusmap_child .bldg_list .bldg_box .box a {
    font-size: 1.6rem;
    text-align: center;
    padding: 13px;
    display: block;
    position: relative;
    border-bottom: 3px solid #222;
    font-weight: bold;
    color: #222;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease; }
    .m-campusmap_child .bldg_list .bldg_box .box a:hover, .m-campusmap_child .bldg_list .bldg_box .box a.is-act {
      background: #f5f5f5; }
    .m-campusmap_child .bldg_list .bldg_box .box a::after {
      content: "\f061";
      display: block;
      font-family: "Font Awesome 5 Pro";
      position: absolute;
      top: 50%;
      -webkit-transform: translate(0, -50%);
      transform: translate(0, -50%);
      right: 10px;
      font-size: 1.4rem;
      font-weight: normal; }

/* 交通アクセス */
.m-access .sub_ttl {
  text-align: center;
  margin-bottom: 28px; }
  .m-access .sub_ttl span {
    display: inline-block;
    color: #fff;
    background: #00a2cb;
    font-size: 1.4rem;
    border-radius: 12px;
    font-weight: bold;
    padding: 5px 33px;
    line-height: 1em; }
    .m-access .sub_ttl span strong {
      font-size: 2.2rem;
      font-family: "din-demi-m";
      font-weight: 500;
      display: inline-block;
      vertical-align: bottom;
      padding-right: 8px; }

.m-access section {
  margin-bottom: 70px; }

.m-access .g_map .detail iframe {
  height: 540px;
  width: 100%; }

.m-access .g_map .detail p {
  margin-top: 10px; }
  .m-access .g_map .detail p i {
    color: #00a2cb; }

.m-access .access {
  max-width: 910px;
  margin: 0 auto; }

.m-access .map {
  margin-bottom: 60px; }
  .m-access .map a {
    display: block;
    position: relative; }
    .m-access .map a span {
      display: block;
      color: #fff;
      background: #00a2cb;
      position: absolute;
      right: 0;
      bottom: 0;
      font-size: 2rem;
      line-height: 60px;
      width: 60px;
      text-align: center; }

.m-access .from, .m-access .route {
  margin-bottom: 70px; }
  .m-access .from h4, .m-access .route h4 {
    color: #0069a5;
    font-size: 2.0rem;
    margin-bottom: 20px;
    line-height: 1.6; }
  .m-access .from span, .m-access .route span {
    color: #e94609; }

.m-access .point {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-bottom: 50px; }
  .m-access .point .point_box {
    background: #0069a5;
    text-align: center;
    border-radius: 200px;
    width: 230px;
    height: 230px;
    color: #fff;
    font-size: 2.0rem;
    font-weight: bold;
    margin: 0 20px;
    padding-top: 35px; }
    .m-access .point .point_box .num {
      display: inline-block;
      color: #fff118;
      font-size: 5.0rem;
      font-family: "din-demi-m";
      font-weight: 500;
      margin-bottom: 30px; }
      .m-access .point .point_box .num::after {
        content: "";
        display: block;
        border-bottom: 2px solid #fff118;
        padding-top: 17px;
        width: 40px;
        margin: 0 auto; }
    .m-access .point .point_box p {
      line-height: 1.6; }

.m-access .bus .route {
  margin-bottom: 60px; }

.m-access .bus .viewpoint {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  .m-access .bus .viewpoint .img {
    width: 40%; }
  .m-access .bus .viewpoint .text {
    width: 60%; }
    .m-access .bus .viewpoint .text ul li {
      position: relative;
      margin-bottom: 10px;
      padding-left: 20px; }
      .m-access .bus .viewpoint .text ul li::before {
        content: "※";
        display: block;
        position: absolute;
        top: 0;
        left: 0; }

.m-access .bus .bus_route {
  margin-top: 60px;
  margin-bottom: 100px; }
  .m-access .bus .bus_route .route_in {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    .m-access .bus .bus_route .route_in .in {
      width: 50%; }
      .m-access .bus .bus_route .route_in .in h4 {
        color: #0069a5;
        font-size: 2.0rem;
        margin-bottom: 25px; }

.m-access .train .head {
  margin-bottom: 40px; }
  .m-access .train .head h3 {
    margin-bottom: 35px; }
    .m-access .train .head h3 span {
      color: #00a2cb;
      font-size: 2.8rem;
      display: inline-block;
      border-bottom: 3px solid #00a2cb;
      padding-bottom: 10px; }
  .m-access .train .head .img {
    margin-bottom: 10px; }

.m-access .train .departure_time {
  margin-bottom: 60px; }
  .m-access .train .departure_time .table th {
    text-align: left;
    font-weight: 500;
    width: 25%; }
  .m-access .train .departure_time .table td {
    font-size: 1.8rem;
    font-weight: bold;
    width: 25%; }
    .m-access .train .departure_time .table td .sm {
      font-size: 1.5rem;
      font-weight: 500; }

.m-access .car {
  margin-bottom: 150px; }

/* 千里中央からスクールバスをご利用される方へ */
.m-route section {
  padding-top: 30px;
  margin-bottom: 80px; }

.m-route .ttl02 {
  margin-bottom: 100px; }

.m-route .route_box {
  position: relative;
  margin-bottom: 60px; }
  .m-route .route_box.num1::before {
    content: "01"; }
  .m-route .route_box.num2::before {
    content: "02"; }
  .m-route .route_box.num3::before {
    content: "03"; }
  .m-route .route_box.num4::before {
    content: "04"; }
  .m-route .route_box.num5::before {
    content: "05"; }
  .m-route .route_box.num6::before {
    content: "06"; }
  .m-route .route_box.num7::before {
    content: "07"; }
  .m-route .route_box.num8::before {
    content: "08"; }
  .m-route .route_box.num9::before {
    content: "09"; }
  .m-route .route_box.num10::before {
    content: "010"; }
  .m-route .route_box::before {
    display: block;
    color: #fff;
    position: absolute;
    left: 10px;
    top: -30px;
    font-size: 3.0rem;
    font-family: "din-demi-m";
    background: #00a2cb;
    text-align: center;
    line-height: 60px;
    width: 60px;
    border-radius: 100px; }
  .m-route .route_box .img {
    margin-bottom: 20px; }
    .m-route .route_box .img img {
      width: 100%; }

.m-route .map {
  text-align: center; }

/* 入試情報一覧 */
.m-examination .examination_news {
  position: relative;
  margin-bottom: 50px; }
  .m-examination .examination_news .btn01 a {
    margin: 30px auto 0; }
  .m-examination .examination_news h2 {
    font-size: 3.0rem;
    font-family: "din-demi-m";
    color: #111;
    margin-bottom: 60px; }
  .m-examination .examination_news .news_in {
    position: relative; }
    .m-examination .examination_news .news_in .cat_list {
      position: absolute;
      right: 0;
      top: 0; }

.m-examination .examination_menu {
  background: #f5f5f5;
  padding: 70px 0 60px; }

/* 入試情報　\ 下層 */
.m-examination_child .examination_child_contents {
  padding-top: 60px; }
  .m-examination_child .examination_child_contents .contents_in {
    margin-bottom: 60px; }
  .m-examination_child .examination_child_contents a {
    color: #00a2cb;
    text-decoration: underline; }
    .m-examination_child .examination_child_contents a:hover {
      text-decoration: none; }
  .m-examination_child .examination_child_contents .ttl04 .square {
    display: inline-block;
    color: #00a2cb;
    background: #fff;
    padding: 2px 10px;
    margin-left: 10px;
    font-size: 2rem; }
  .m-examination_child .examination_child_contents dl {
    margin-bottom: 30px; }
    .m-examination_child .examination_child_contents dl dt {
      color: #0069a5;
      font-size: 2rem;
      font-weight: bold; }
    .m-examination_child .examination_child_contents dl dd ul, .m-examination_child .examination_child_contents dl dd ol {
      margin-bottom: 0 !important; }
  .m-examination_child .examination_child_contents .bd_area {
    border: 2px solid #ccc;
    padding: 30px;
    margin: 30px 0; }
  .m-examination_child .examination_child_contents .num_list {
    margin-bottom: 30px; }
  .m-examination_child .examination_child_contents .dot_list {
    margin-bottom: 30px; }
  .m-examination_child .examination_child_contents .note_list li {
    padding-left: 40px;
    position: relative;
    margin-bottom: 10px;
    list-style: none; }
    .m-examination_child .examination_child_contents .note_list li::before {
      position: absolute;
      left: 0; }
    .m-examination_child .examination_child_contents .note_list li:nth-child(1)::before {
      content: "※1"; }
    .m-examination_child .examination_child_contents .note_list li:nth-child(2)::before {
      content: "※2"; }
    .m-examination_child .examination_child_contents .note_list li:nth-child(3)::before {
      content: "※3"; }
    .m-examination_child .examination_child_contents .note_list li:nth-child(4)::before {
      content: "※4"; }
    .m-examination_child .examination_child_contents .note_list li:nth-child(5)::before {
      content: "※5"; }
    .m-examination_child .examination_child_contents .note_list li:nth-child(6)::before {
      content: "※6"; }
    .m-examination_child .examination_child_contents .note_list li:nth-child(7)::before {
      content: "※7"; }
    .m-examination_child .examination_child_contents .note_list li:nth-child(8)::before {
      content: "※8"; }
    .m-examination_child .examination_child_contents .note_list li:nth-child(9)::before {
      content: "※9"; }
    .m-examination_child .examination_child_contents .note_list li:nth-child(10)::before {
      content: "※10"; }
    .m-examination_child .examination_child_contents .note_list li:nth-child(11)::before {
      content: "※11"; }
    .m-examination_child .examination_child_contents .note_list li:nth-child(12)::before {
      content: "※12"; }
    .m-examination_child .examination_child_contents .note_list li:nth-child(13)::before {
      content: "※13"; }
    .m-examination_child .examination_child_contents .note_list li:nth-child(14)::before {
      content: "※14"; }
    .m-examination_child .examination_child_contents .note_list li:nth-child(15)::before {
      content: "※15"; }
    .m-examination_child .examination_child_contents .note_list li:nth-child(16)::before {
      content: "※16"; }
    .m-examination_child .examination_child_contents .note_list li:nth-child(17)::before {
      content: "※17"; }
    .m-examination_child .examination_child_contents .note_list li:nth-child(18)::before {
      content: "※18"; }
    .m-examination_child .examination_child_contents .note_list li:nth-child(19)::before {
      content: "※19"; }
    .m-examination_child .examination_child_contents .note_list li:nth-child(20)::before {
      content: "※20"; }
  .m-examination_child .examination_child_contents .head_txt {
    font-size: 1.8rem;
    color: #111;
    line-height: 1.8; }
  .m-examination_child .examination_child_contents .special {
    font-weight: bold;
    color: #111; }
    .m-examination_child .examination_child_contents .special .ttl {
      display: inline-block;
      border: 2px solid #111;
      padding: 1px 20px;
      margin-bottom: 10px; }
  .m-examination_child .examination_child_contents .tuition_price {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding-left: 25px; }
    .m-examination_child .examination_child_contents .tuition_price .in {
      padding-right: 50px; }
      .m-examination_child .examination_child_contents .tuition_price .in h4 {
        color: #111;
        font-size: 1.6rem;
        margin-bottom: 5px; }
  .m-examination_child .examination_child_contents .tuition_breakdown {
    margin-bottom: 30px; }
    .m-examination_child .examination_child_contents .tuition_breakdown h4 {
      color: #111;
      font-size: 1.6rem;
      margin-bottom: 5px; }
    .m-examination_child .examination_child_contents .tuition_breakdown .dot_list {
      margin-bottom: 0;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      padding-left: 50px; }
      .m-examination_child .examination_child_contents .tuition_breakdown .dot_list li {
        padding-right: 50px; }
    .m-examination_child .examination_child_contents .tuition_breakdown .total {
      padding-left: 50px; }
      .m-examination_child .examination_child_contents .tuition_breakdown .total strong {
        display: inline-block;
        border-bottom: 2px solid #222;
        padding-bottom: 5px; }
  .m-examination_child .examination_child_contents .table02.bd_all th, .m-examination_child .examination_child_contents .table02.bd_all td {
    border: 1px solid #ccc; }
  .m-examination_child .examination_child_contents .table02 .ttl {
    display: block;
    color: #111;
    margin-bottom: 10px; }
  .m-examination_child .examination_child_contents .table02 ul, .m-examination_child .examination_child_contents .table02 ol {
    margin-bottom: 0; }
  .m-examination_child .examination_child_contents .table02 .entry {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    .m-examination_child .examination_child_contents .table02 .entry li {
      -webkit-flex-basis: 50%;
      -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
      margin-bottom: 10px; }
      .m-examination_child .examination_child_contents .table02 .entry li strong {
        display: inline-block;
        background: #f5f5f5;
        padding: 5px 10px;
        margin-right: 10px;
        color: #111; }
      .m-examination_child .examination_child_contents .table02 .entry li:last-child {
        -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%; }
  .m-examination_child .examination_child_contents .table02 .bd_r {
    border-right: 1px solid #ccc; }
  .m-examination_child .examination_child_contents .table02 .bd_l {
    border-left: 1px solid #ccc; }
  .m-examination_child .examination_child_contents .table02 .document {
    white-space: normal;
    width: 240px; }
  .m-examination_child .examination_child_contents .table02 .length {
    -webkit-writing-mode: tb-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: tb-rl;
    /* IE用 */
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    /* Chrome、Firefox用 */
    margin: 0 auto;
    white-space: nowrap;
    width: 1em;
    /* firefox対策 */
    line-height: 1em;
    /* firefox対策 */
    text-orientation: upright; }
  .m-examination_child .examination_child_contents .table02 .blank {
    background: #eee; }
  .m-examination_child .examination_child_contents .table02 .total th, .m-examination_child .examination_child_contents .table02 .total td {
    background: #ccc;
    font-weight: bold;
    color: #111; }
  .m-examination_child .examination_child_contents .table_application th, .m-examination_child .examination_child_contents .table_application td {
    border: 1px solid #ccc; }
  .m-examination_child .examination_child_contents .table_application thead th {
    text-align: center; }
  .m-examination_child .examination_child_contents .table_application tbody th {
    text-align: left; }
  .m-examination_child .examination_child_contents .table_application tbody td {
    text-align: center; }
  .m-examination_child .examination_child_contents .table_application tbody .sup {
    font-size: 1.3rem;
    vertical-align: top;
    position: relative;
    top: -0.1em;
    padding-left: 3px; }
  .m-examination_child .examination_child_contents .table_application tbody .num {
    text-align: center;
    background: #bbb; }
  .m-examination_child .examination_child_contents .table_application tbody .length_w {
    text-align: center;
    padding: 0; }
    .m-examination_child .examination_child_contents .table_application tbody .length_w .length {
      width: 2em;
      line-height: 1.2em; }

/* オープンキャンパス */
.m-opencampus .opencampus_ttl {
  text-align: center;
  font-size: 1.6rem;
  color: #111;
  margin-bottom: 40px; }
  .m-opencampus .opencampus_ttl::before {
    content: "";
    display: block;
    background: #fff118;
    height: 30px;
    width: 3px;
    margin: 0 auto 25px; }
  .m-opencampus .opencampus_ttl .en {
    font-size: 6.0rem;
    color: #fa7f7f;
    font-family: "din-demi-m";
    display: block;
    text-transform: uppercase;
    -webkit-transform: skew(-5deg, -5deg);
    transform: skew(-5deg, -5deg);
    letter-spacing: 2px;
    margin-bottom: 25px; }

.m-opencampus .schedule {
  background: #f8f6f2;
  padding-bottom: 40px; }
  .m-opencampus .schedule .opencampus_ttl {
    position: relative;
    top: -15px; }
  .m-opencampus .schedule .btn {
    margin-left: 20px;
    display: inline-block;
    min-width: 124px;
    line-height: 30px;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    cursor: pointer;
    background: #fa7f7f;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    -o-user-select: none;
    user-select: none;
    border: none;
    border-radius: 20px;
    color: #fff;
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Verdana, sans-serif;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    position: relative; }
    .m-opencampus .schedule .btn::after {
      content: "\f105";
      font-family: "Font Awesome 5 Pro";
      position: absolute;
      top: 2px;
      right: 10px; }
    .m-opencampus .schedule .btn:hover {
      opacity: .8; }
  .m-opencampus .schedule .schedule_table {
    margin-bottom: 50px; }
    .m-opencampus .schedule .schedule_table table {
      background: #fff;
      border-top: 3px solid #00a2cb; }
      .m-opencampus .schedule .schedule_table table td {
        border: none;
        border-bottom: 1px solid #ccc;
        padding: 15px 20px; }
        .m-opencampus .schedule .schedule_table table td:first-child {
          text-align-last: center;
          font-weight: bold; }
        .m-opencampus .schedule .schedule_table table td a {
          text-decoration: underline;
          color: #0069a5; }
          .m-opencampus .schedule .schedule_table table td a:hover {
            text-decoration: none; }
      .m-opencampus .schedule .schedule_table table tr:first-child td {
        border: none;
        text-align: center;
        color: #111;
        font-weight: bold;
        padding-bottom: 20px; }
  .m-opencampus .schedule .schedule_in {
    background: #fff;
    padding: 50px;
    margin-bottom: 50px; }
    .m-opencampus .schedule .schedule_in h3 {
      border-top: 1px solid #fa7f7f;
      border-left: 5px solid #fa7f7f;
      color: #111;
      font-size: 2.4rem;
      padding: 30px 30px 0;
      margin-bottom: 45px;
      position: relative; }
      .m-opencampus .schedule .schedule_in h3::before {
        content: "";
        display: block;
        border-top: 4px solid #fa7f7f;
        width: 120px;
        position: absolute;
        top: 0;
        left: 0; }
    .m-opencampus .schedule .schedule_in .top {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      margin-bottom: 40px; }
      .m-opencampus .schedule .schedule_in .top .text {
        width: 55%;
        padding-right: 70px; }
        .m-opencampus .schedule .schedule_in .top .text .plans h4 {
          color: #00a2cb;
          font-size: 2.0rem;
          margin-bottom: 5px; }
          .m-opencampus .schedule .schedule_in .top .text .plans h4 strong {
            display: inline-block;
            border-bottom: 3px solid #00a2cb;
            padding-bottom: 5px; }
        .m-opencampus .schedule .schedule_in .top .text .plans ul li {
          border-bottom: 1px solid #ccc;
          padding: 10px 0;
          font-size: 1.8rem;
          font-weight: bold; }
          .m-opencampus .schedule .schedule_in .top .text .plans ul li .btn {
            font-size: 1.5rem; }
        .m-opencampus .schedule .schedule_in .top .text .gray {
          background: #f8f6f2;
          padding: 15px 20px; }
      .m-opencampus .schedule .schedule_in .top .img {
        width: 45%; }
        .m-opencampus .schedule .schedule_in .top .img li {
          margin-bottom: 20px; }
    .m-opencampus .schedule .schedule_in .time {
      border: 2px solid #fa7f7f; }
      .m-opencampus .schedule .schedule_in .time .time_btn {
        text-align: center;
        font-size: 1.6rem;
        font-weight: bold;
        padding: 20px;
        cursor: pointer; }
        .m-opencampus .schedule .schedule_in .time .time_btn i {
          color: #fa7f7f;
          padding-right: 10px; }
      .m-opencampus .schedule .schedule_in .time .js-time_in {
        overflow: hidden;
        max-height: 0;
        -webkit-transition: max-height .3s;
        transition: max-height .3s; }
        .m-opencampus .schedule .schedule_in .time .js-time_in.is-act {
          max-height: 100vh; }
      .m-opencampus .schedule .schedule_in .time .time_in {
        margin: 0 20px; }
        .m-opencampus .schedule .schedule_in .time .time_in .time_schedule {
          display: -webkit-box;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap;
          margin-bottom: 40px;
          padding-top: 45px;
          border-top: 1px solid #fa7f7f; }
          .m-opencampus .schedule .schedule_in .time .time_in .time_schedule .ttl_waku {
            width: 25%;
            padding-left: 25px; }
          .m-opencampus .schedule .schedule_in .time .time_in .time_schedule .table_waku {
            width: 75%;
            border-left: 2px solid #222;
            padding-left: 30px;
            margin-top: 15px; }
          .m-opencampus .schedule .schedule_in .time .time_in .time_schedule h4 {
            color: #111;
            font-size: 3.0rem;
            text-transform: uppercase;
            -webkit-transform: skew(-10deg, 0);
            transform: skew(-10deg, 0);
            line-height: 1.2; }
            .m-opencampus .schedule .schedule_in .time .time_in .time_schedule h4 span {
              display: block; }
              .m-opencampus .schedule .schedule_in .time .time_in .time_schedule h4 span:first-child {
                position: relative;
                left: -8px; }
          .m-opencampus .schedule .schedule_in .time .time_in .time_schedule table {
            margin-bottom: 0; }
            .m-opencampus .schedule .schedule_in .time .time_in .time_schedule table th {
              color: #111;
              font-size: 1.7rem;
              font-family: "din-demi";
              white-space: nowrap;
              text-align: left; }
            .m-opencampus .schedule .schedule_in .time .time_in .time_schedule table th, .m-opencampus .schedule .schedule_in .time .time_in .time_schedule table td {
              border: none;
              padding: 8px 15px; }
        .m-opencampus .schedule .schedule_in .time .time_in .close {
          border: 1px solid #fa7f7f;
          text-align: center;
          width: 200px;
          line-height: 50px;
          margin: 0 auto 30px;
          font-size: 1.6rem;
          font-weight: bold;
          cursor: pointer;
          -webkit-transition: all 0.3s ease;
          transition: all 0.3s ease; }
          .m-opencampus .schedule .schedule_in .time .time_in .close i {
            color: #fa7f7f;
            padding-right: 10px; }
          .m-opencampus .schedule .schedule_in .time .time_in .close:hover {
            background: #fa7f7f;
            color: #fff; }
            .m-opencampus .schedule .schedule_in .time .time_in .close:hover i {
              color: #fff; }

.m-opencampus .access .detail iframe {
  height: 540px;
  width: 100%; }

.m-opencampus .access .detail p {
  margin-top: 10px; }
  .m-opencampus .access .detail p i {
    color: #00a2cb; }

.m-opencampus .contact {
  margin-bottom: 60px; }
  .m-opencampus .contact .contact_in {
    text-align: center;
    border-top: 2px solid #222;
    border-bottom: 2px solid #222;
    padding: 10px 0; }
    .m-opencampus .contact .contact_in .row {
      -webkit-box-align: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center; }
    .m-opencampus .contact .contact_in .tel {
      color: #111; }
      .m-opencampus .contact .contact_in .tel .ttl {
        display: block;
        margin-bottom: 5px; }
      .m-opencampus .contact .contact_in .tel .num em {
        font-style: normal;
        display: inline-block;
        vertical-align: middle;
        font-size: 1.8rem;
        font-weight: bold; }
      .m-opencampus .contact .contact_in .tel .num span {
        display: inline-block;
        vertical-align: middle;
        color: #fa7f7f;
        font-size: 3.6rem;
        font-family: "din-demi-m";
        padding-left: 10px; }
    .m-opencampus .contact .contact_in .mail {
      border-left: 2px solid #222;
      border-right: 2px solid #222;
      color: #111;
      font-family: "din-demi";
      font-size: 1.8rem;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      height: 130px;
      -webkit-box-align: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center; }
      .m-opencampus .contact .contact_in .mail i {
        color: #00a2cb;
        padding-right: 10px; }
    .m-opencampus .contact .contact_in .btn {
      padding: 0 40px; }
      .m-opencampus .contact .contact_in .btn a {
        display: block;
        background: #00a2cb;
        color: #fff;
        font-size: 1.8rem;
        line-height: 90px;
        border-bottom: 3px solid #0069a5;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease; }
        .m-opencampus .contact .contact_in .btn a i {
          color: #fff118;
          padding-right: 10px; }
        .m-opencampus .contact .contact_in .btn a:hover {
          opacity: .8; }

/* キャンパスライフ */
.m-campuslife .campuslife_menu {
  background: #f5f5f5;
  padding: 70px 0 60px; }
  .m-campuslife .campuslife_menu .menu_list_img {
    margin-bottom: 0; }
    .m-campuslife .campuslife_menu .menu_list_img > div {
      margin-bottom: 20px; }

/* KASD Girls */
.m-girls .head {
  text-align: center;
  margin-bottom: 90px; }
  .m-girls .head .catch {
    margin: 30px 0 20px; }
  .m-girls .head p {
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "MS P明朝", "MS 明朝", serif;
    color: #333;
    font-size: 1.6rem;
    line-height: 2.5; }

.m-girls .cross {
  background: url(../../img/girls/cross_bg@2x.jpg) no-repeat center center;
  background-size: cover;
  margin-bottom: 80px; }
  .m-girls .cross .container {
    position: relative;
    height: 520px; }
  .m-girls .cross .cross_box {
    width: 370px;
    padding: 60px 0 70px;
    text-align: center;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    right: 15px;
    background: #fff; }
    .m-girls .cross .cross_box strong {
      display: block;
      font-size: 1.8rem;
      color: #ee87b4; }
    .m-girls .cross .cross_box .img {
      text-align: center;
      margin: 24px 0 40px; }
    .m-girls .cross .cross_box .btn01 {
      width: 240px;
      margin: 0 auto; }

.m-girls .current {
  margin-bottom: 80px; }
  .m-girls .current h2 {
    text-align: center;
    background: url(../img/bg/line_border02@2x.png) repeat-x bottom;
    background-size: auto 30px;
    padding-bottom: 5px;
    margin-bottom: 40px; }
  .m-girls .current .current_box a {
    display: block; }
    .m-girls .current .current_box a:hover .thumb img {
      -webkit-transform: scale(1.08);
      transform: scale(1.08); }
    .m-girls .current .current_box a .thumb {
      overflow: hidden; }
      .m-girls .current .current_box a .thumb img {
        width: 100%;
        -webkit-transition: all .3s ease;
        transition: all .3s ease; }
  .m-girls .current .current_box .text {
    margin-top: -70px;
    background: #fff;
    width: 380px;
    padding: 25px 0 0 35px;
    margin-left: auto;
    position: relative; }
    .m-girls .current .current_box .text::after {
      content: "\f061";
      display: block;
      font-family: "Font Awesome 5 Pro";
      font-size: 1.4rem;
      font-weight: normal;
      position: absolute;
      right: 0;
      bottom: 0; }
    .m-girls .current .current_box .text h3 {
      font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "MS P明朝", "MS 明朝", serif;
      color: #111;
      font-size: 2.8rem;
      font-weight: 400;
      line-height: 1.4;
      margin-bottom: 20px;
      -webkit-font-feature-settings: "palt";
      font-feature-settings: "palt";
      letter-spacing: 2px; }
    .m-girls .current .current_box .text .name {
      line-height: 1.6; }
      .m-girls .current .current_box .text .name strong {
        color: #111;
        font-size: 2.0rem;
        display: block;
        margin-bottom: 8px; }
      .m-girls .current .current_box .text .name span {
        display: block;
        font-size: 1.3rem; }

.m-girls .message {
  background: url(../img/bg/line_border04@2x.jpg) repeat-x bottom;
  background-size: auto 85%;
  padding-bottom: 50px; }
  .m-girls .message .ttl {
    padding-top: 180px; }
    .m-girls .message .ttl h2 {
      text-align: center;
      margin-bottom: 35px; }
    .m-girls .message .ttl p {
      width: 290px;
      margin: 0 auto; }
  .m-girls .message .careers_list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    .m-girls .message .careers_list .careers_box {
      width: 50%;
      padding: 0 10px; }

/* CROSS TALK */
.m-closs .member {
  margin-bottom: 100px; }
  .m-closs .member h2 {
    text-align: center;
    position: relative;
    margin-bottom: 20px; }
    .m-closs .member h2::before, .m-closs .member h2::after {
      content: "";
      display: block;
      position: absolute;
      top: 50%;
      border-bottom: 1px solid #ddd;
      width: 40%; }
    .m-closs .member h2::before {
      left: 0; }
    .m-closs .member h2::after {
      right: 0; }
  .m-closs .member .member_box {
    text-align: center; }
    .m-closs .member .member_box .img {
      margin-bottom: 25px; }
    .m-closs .member .member_box h3 {
      color: #111;
      font-size: 2.0rem; }
    .m-closs .member .member_box .from {
      display: block;
      font-size: 1.3rem;
      margin-bottom: 20px; }
    .m-closs .member .member_box .course {
      font-size: 1.3rem;
      display: block;
      color: #fff;
      width: 220px;
      line-height: 1em;
      margin: 0 auto;
      padding: 10px 0; }
      .m-closs .member .member_box .course.m01 {
        background: #ee87b4; }
      .m-closs .member .member_box .course.m02 {
        background: #f7b000; }
      .m-closs .member .member_box .course.m03 {
        background: #5ab651; }
      .m-closs .member .member_box .course.m04 {
        background: #50b4e7; }

.m-closs .closs {
  margin-bottom: 100px; }
  .m-closs .closs.closs1 .main_ttl::before {
    border-bottom: 3px solid #ee87b4; }
  .m-closs .closs.closs1 .main_ttl h3 strong span {
    width: 224px; }
  .m-closs .closs.closs1::after {
    content: "";
    display: block;
    background: url(../../img/closs/closs_bg@2x.jpg) no-repeat center center;
    background-size: cover;
    width: 100%;
    height: 520px; }
  .m-closs .closs.closs2 .main_ttl::before {
    border-bottom: 3px solid #f7b000; }
  .m-closs .closs.closs2 .main_ttl h3 strong span {
    width: 287px; }
  .m-closs .closs.closs3 .main_ttl::before {
    border-bottom: 3px solid #00a2cb; }
  .m-closs .closs.closs3 .main_ttl h3 strong span {
    width: 485px; }
  .m-closs .closs.closs3 .row {
    margin: 0 -40px; }
    .m-closs .closs.closs3 .row > div {
      padding: 0 40px; }
  .m-closs .closs.closs3 .closs_in {
    margin: 30px 0 0; }
    .m-closs .closs.closs3 .closs_in .text .container {
      padding-left: 475px;
      padding-right: 15px; }
    .m-closs .closs.closs3 .closs_in .img {
      margin-left: -820px; }
  .m-closs .closs .main_ttl {
    position: relative;
    background: url(../img/bg/line_border02@2x.png) repeat-x;
    background-size: auto 30px;
    margin-bottom: 70px; }
    .m-closs .closs .main_ttl::before {
      content: "";
      display: block;
      position: absolute;
      bottom: 0;
      right: 50%;
      margin-right: 500px;
      width: 100%; }
    .m-closs .closs .main_ttl h3 {
      width: 1140px;
      margin: 0 auto;
      padding: 2px 15px 0 90px; }
      .m-closs .closs .main_ttl h3 strong {
        display: inline-block;
        color: #111;
        font-size: 3.5rem;
        font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "MS P明朝", "MS 明朝", serif;
        position: relative;
        font-weight: 400; }
        .m-closs .closs .main_ttl h3 strong span {
          display: block;
          position: absolute;
          top: 50%;
          right: 30px;
          z-index: -1;
          -webkit-transform-origin: 50% center;
          transform-origin: 50% center;
          -webkit-transform: translate(100%, -50%);
          transform: translate(100%, -50%); }
  .m-closs .closs dl {
    overflow: hidden;
    margin-bottom: 30px; }
    .m-closs .closs dl dt {
      font-size: 1.6rem;
      float: left;
      padding-right: 20px;
      font-weight: bold; }
      .m-closs .closs dl dt.b {
        color: #50b4e7; }
      .m-closs .closs dl dt.g {
        color: #5ab651; }
      .m-closs .closs dl dt.y {
        color: #f7b000; }
      .m-closs .closs dl dt.p {
        color: #ee87b4; }
    .m-closs .closs dl dd {
      overflow: hidden; }
      .m-closs .closs dl dd strong {
        font-size: 1.6rem; }
  .m-closs .closs .twin_text {
    margin: 0 -50px; }
    .m-closs .closs .twin_text > div {
      padding: 0 50px; }
      .m-closs .closs .twin_text > div:last-child {
        border-left: 1px solid #ddd; }
  .m-closs .closs .closs_in {
    position: relative;
    margin-bottom: 60px; }
    .m-closs .closs .closs_in .text .container {
      padding-right: 475px; }
    .m-closs .closs .closs_in .img {
      position: absolute;
      left: 50%;
      top: 0;
      margin-left: 170px;
      width: 650px; }

.m-closs .girls_bnr {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center; }
  .m-closs .girls_bnr .bnr {
    padding: 0 15px; }

/* 在校生インタビュー */
.m-current .interview .wrapper {
  padding-bottom: 70px; }

.m-current .interview .head {
  margin-bottom: 70px; }
  .m-current .interview .head .container {
    position: relative;
    height: 530px; }
    .m-current .interview .head .container:before {
      content: "";
      position: absolute;
      left: -230px;
      top: 0;
      width: 780px;
      height: 530px;
      background: url(../../img/current/current_img01@2x.jpg) no-repeat center center;
      background-size: cover; }
  .m-current .interview .head .head_in {
    position: relative;
    padding-top: 20px;
    width: 690px;
    margin-left: auto;
    margin-bottom: 70px; }
    .m-current .interview .head .head_in .subttl {
      font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "MS P明朝", "MS 明朝", serif;
      font-size: 1.6rem;
      display: block;
      color: #8dbb00;
      margin-bottom: 20px;
      padding-left: 100px; }
    .m-current .interview .head .head_in h2 {
      margin-bottom: 50px; }
    .m-current .interview .head .head_in .info {
      margin-left: 190px; }
      .m-current .interview .head .head_in .info strong {
        display: block;
        color: #111;
        font-size: 2.0rem;
        margin-bottom: 10px; }
      .m-current .interview .head .head_in .info p span {
        font-size: 1.3rem;
        display: block; }
    .m-current .interview .head .head_in .license {
      margin-left: 190px;
      border: 3px solid #8dbb00;
      padding: 25px;
      width: 500px;
      background: #fff; }
      .m-current .interview .head .head_in .license strong {
        color: #8dbb00;
        display: block;
        font-size: 2.0rem;
        margin-bottom: 20px; }
      .m-current .interview .head .head_in .license p {
        margin-bottom: 0; }

.m-current .interview .detail .timeline .timeline_in {
  position: relative;
  padding-left: 120px;
  margin-bottom: 35px; }
  .m-current .interview .detail .timeline .timeline_in .subttl {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%; }
    .m-current .interview .detail .timeline .timeline_in .subttl::before, .m-current .interview .detail .timeline .timeline_in .subttl::after {
      content: "";
      display: block;
      position: absolute;
      left: 30px; }
    .m-current .interview .detail .timeline .timeline_in .subttl::before {
      width: 7px;
      height: 7px;
      border-radius: 50%;
      top: 23%;
      left: 27px;
      background: #222; }
    .m-current .interview .detail .timeline .timeline_in .subttl::after {
      border-left: #222 solid 1px;
      height: 75%;
      bottom: 0; }
  .m-current .interview .detail .timeline .timeline_in .text {
    padding-bottom: 20px;
    padding-right: 20px; }
    .m-current .interview .detail .timeline .timeline_in .text h3 {
      margin-bottom: 20px; }
      .m-current .interview .detail .timeline .timeline_in .text h3 span {
        display: inline-block;
        color: #8dbb00;
        font-size: 2.0rem;
        position: relative;
        line-height: 1.5;
        padding: 15px 20px; }
        .m-current .interview .detail .timeline .timeline_in .text h3 span::before, .m-current .interview .detail .timeline .timeline_in .text h3 span::after {
          content: "";
          display: block;
          position: absolute;
          width: 35px;
          height: 35px;
          background-repeat: no-repeat;
          background-size: cover; }
        .m-current .interview .detail .timeline .timeline_in .text h3 span::before {
          background-image: url(../img/bg/bg_waku01@2x.png);
          top: 0;
          left: 0; }
        .m-current .interview .detail .timeline .timeline_in .text h3 span::after {
          background-image: url(../img/bg/bg_waku02@2x.png);
          bottom: 0;
          right: 0; }
    .m-current .interview .detail .timeline .timeline_in .text p {
      margin-bottom: 0; }

.m-current .interview .detail .imglist li {
  margin-bottom: 40px; }

.m-current .interview .btn01 a {
  max-width: 450px;
  margin: 0 auto;
  background-color: #8dbb00;
  border-bottom: 3px solid #6d9100;
  padding: 20px; }

.m-current .interview.second_interview .wrapper {
  background: #f5f5f5;
  padding-top: 80px; }

.m-current .interview.second_interview .head .container:before {
  right: -230px;
  left: auto;
  background: url(../../img/current/current_img04@2x.jpg) no-repeat center center;
  background-size: cover; }

.m-current .interview.second_interview .head .head_in {
  margin-left: 0; }
  .m-current .interview.second_interview .head .head_in .subttl {
    color: #00a2cb;
    padding-left: 160px; }
  .m-current .interview.second_interview .head .head_in h2 {
    padding-left: 60px; }
  .m-current .interview.second_interview .head .head_in .info {
    margin-left: 0; }
  .m-current .interview.second_interview .head .head_in .license {
    margin-left: 0;
    border: 3px solid #00a2cb; }
    .m-current .interview.second_interview .head .head_in .license strong {
      color: #00a2cb; }

.m-current .interview.second_interview .detail .timeline .timeline_in .text h3 span {
  color: #00a2cb; }

.m-current .interview.second_interview .btn01 a {
  background-color: #00a2cb;
  border-bottom: 3px solid #0069a5; }

.m-current .girls_bnr {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 80px; }
  .m-current .girls_bnr .bnr {
    padding: 0 15px; }

/* KASD SNAP */
.m-snap .question {
  background: url(../img/bg/bg01@2x.jpg);
  background-size: 50%;
  padding: 40px 30px;
  margin-bottom: 70px; }
  .m-snap .question .question_in {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    max-width: 1140px;
    margin: 0 auto;
    padding: 0 15px; }
    .m-snap .question .question_in .title {
      width: 16%;
      color: #fff118;
      font-family: "din-demi-m";
      position: relative;
      padding: 30px 0 0 60px; }
      .m-snap .question .question_in .title::before {
        content: "";
        display: block;
        border-left: 1px solid #fff118;
        height: 180px;
        position: absolute;
        top: 0;
        left: 0; }
      .m-snap .question .question_in .title span {
        font-size: 1.8rem;
        display: block;
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        display: block;
        position: absolute;
        left: 25px;
        top: 0;
        letter-spacing: 1px; }
      .m-snap .question .question_in .title h2 {
        font-size: 12rem;
        font-weight: 500; }
    .m-snap .question .question_in .box {
      background: #fff;
      padding: 30px 40px 10px;
      width: 84%;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
      .m-snap .question .question_in .box ol {
        list-style: none;
        padding-right: 50px; }
        .m-snap .question .question_in .box ol li {
          padding-left: 40px;
          position: relative;
          font-style: normal;
          margin-bottom: 8px; }
          .m-snap .question .question_in .box ol li.num1::before {
            content: "1"; }
          .m-snap .question .question_in .box ol li.num2::before {
            content: "2"; }
          .m-snap .question .question_in .box ol li.num3::before {
            content: "3"; }
          .m-snap .question .question_in .box ol li.num4::before {
            content: "4"; }
          .m-snap .question .question_in .box ol li.num5::before {
            content: "5"; }
          .m-snap .question .question_in .box ol li.num6::before {
            content: "6"; }
          .m-snap .question .question_in .box ol li.num7::before {
            content: "7"; }
          .m-snap .question .question_in .box ol li.num8::before {
            content: "8"; }
          .m-snap .question .question_in .box ol li.num9::before {
            content: "9"; }
          .m-snap .question .question_in .box ol li.num10::before {
            content: "10"; }
          .m-snap .question .question_in .box ol li::before {
            display: block;
            color: #fff;
            position: absolute;
            left: 0;
            top: 0;
            font-size: 1.6rem;
            font-family: "din-demi-m";
            background: #00a2cb;
            text-align: center;
            line-height: 25px;
            width: 25px;
            border-radius: 100px; }

.m-snap .snap_content {
  position: relative; }
  .m-snap .snap_content::after {
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 500px;
    z-index: -1; }
  .m-snap .snap_content.bg_y::after {
    content: "";
    -webkit-transform: skew(0deg, -5deg);
    transform: skew(0deg, -5deg);
    -webkit-transform-origin: right 50%;
    transform-origin: right 50%;
    background: #fffcd1; }
  .m-snap .snap_content.bg_b::after {
    content: "";
    background: #e5f6fa;
    -webkit-transform: skew(0deg, 5deg);
    transform: skew(0deg, 5deg);
    -webkit-transform-origin: left 50%;
    transform-origin: left 50%; }
  .m-snap .snap_content.first::after {
    top: 10%; }
  .m-snap .snap_content.reverse .pic {
    padding-left: 0;
    padding-right: 150px;
    text-align: right; }
    .m-snap .snap_content.reverse .pic .title {
      left: auto;
      right: 0; }
      .m-snap .snap_content.reverse .pic .title span {
        left: auto;
        right: 45px; }
      .m-snap .snap_content.reverse .pic .title h2 {
        padding-left: 0;
        padding-right: 90px; }
  .m-snap .snap_content.reverse .box {
    right: auto;
    left: 110px; }
  .m-snap .snap_content .container {
    position: relative; }
  .m-snap .snap_content .pic {
    position: relative;
    padding-left: 150px; }
    .m-snap .snap_content .pic .title {
      position: absolute;
      top: 0;
      left: 0;
      font-family: "din-demi-m";
      color: #111; }
      .m-snap .snap_content .pic .title span {
        font-size: 2.0rem;
        position: absolute;
        left: 45px;
        top: 10px;
        letter-spacing: 1px;
        font-weight: bold;
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center; }
        .m-snap .snap_content .pic .title span::after {
          content: "";
          display: inline-block;
          vertical-align: middle;
          height: 270px;
          width: 1px;
          background: #111;
          margin-top: 20px; }
      .m-snap .snap_content .pic .title h2 {
        font-size: 3.0rem;
        padding: 70px 0 0 90px;
        letter-spacing: 2px;
        line-height: 1.3; }
  .m-snap .snap_content .box {
    background: #fff;
    padding: 30px 35px;
    width: 430px;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    right: 110px; }
    .m-snap .snap_content .box.ml {
      margin-left: 60px; }
    .m-snap .snap_content .box h3 {
      margin-bottom: 25px;
      position: relative;
      padding-left: 40px;
      padding-bottom: 5px; }
      .m-snap .snap_content .box h3 span {
        color: #111;
        font-size: 2.4rem;
        background: -webkit-gradient(linear, left top, left bottom, color-stop(92%, transparent), color-stop(8%, #111));
        background: linear-gradient(transparent 92%, #111 8%);
        display: inline;
        padding: 0 0 3px;
        line-height: 1.7; }
      .m-snap .snap_content .box h3.num1::before {
        content: "1"; }
      .m-snap .snap_content .box h3.num2::before {
        content: "2"; }
      .m-snap .snap_content .box h3.num3::before {
        content: "3"; }
      .m-snap .snap_content .box h3.num4::before {
        content: "4"; }
      .m-snap .snap_content .box h3.num5::before {
        content: "5"; }
      .m-snap .snap_content .box h3.num6::before {
        content: "6"; }
      .m-snap .snap_content .box h3.num7::before {
        content: "7"; }
      .m-snap .snap_content .box h3.num8::before {
        content: "8"; }
      .m-snap .snap_content .box h3.num9::before {
        content: "9"; }
      .m-snap .snap_content .box h3.num10::before {
        content: "10"; }
      .m-snap .snap_content .box h3::before {
        display: block;
        color: #fff;
        position: absolute;
        left: 0;
        top: 8px;
        font-size: 1.6rem;
        font-family: "din-demi";
        background: #00a2cb;
        text-align: center;
        line-height: 25px;
        width: 25px;
        border-radius: 100px; }
    .m-snap .snap_content .box ol {
      list-style: none; }
    .m-snap .snap_content .box .name {
      font-size: 1.3rem;
      border-top: 1px solid #ccc;
      padding-top: 20px;
      margin-bottom: 0; }
      .m-snap .snap_content .box .name strong {
        color: #111;
        font-size: 2.0rem;
        padding-right: 10px; }
  .m-snap .snap_content .bottom {
    margin-top: -115px; }
    .m-snap .snap_content .bottom .box {
      -webkit-transform: none;
      transform: none;
      position: static; }

/* 卒業作品 */
.m-graduation_work .work_content {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 60px; }
  .m-graduation_work .work_content:nth-child(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse; }
    .m-graduation_work .work_content:nth-child(even) .content .content_in {
      margin-left: auto;
      padding-left: 0;
      padding-right: 40px; }
  .m-graduation_work .work_content .img {
    width: 48.2%; }
    .m-graduation_work .work_content .img img {
      width: 100%; }
    .m-graduation_work .work_content .img .top {
      margin-bottom: 20px; }
  .m-graduation_work .work_content .content {
    width: 51.8%;
    padding-top: 2%; }
    .m-graduation_work .work_content .content .content_in {
      width: 570px;
      padding-left: 40px; }
  .m-graduation_work .work_content h2 {
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "MS P明朝", "MS 明朝", serif;
    color: #111;
    font-size: 3.5rem;
    font-weight: 400;
    margin-bottom: 13px;
    line-height: 1.2; }
  .m-graduation_work .work_content .sub_ttl {
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "MS P明朝", "MS 明朝", serif;
    color: #111;
    font-size: 2.2rem;
    font-weight: 400; }
  .m-graduation_work .work_content .career {
    font-size: 1.3rem;
    border-left: 1px solid #ccc;
    padding: 10px 0 10px 18px;
    line-height: 1.5;
    margin: 30px 0; }
  .m-graduation_work .work_content .concept {
    margin-bottom: 40px; }
    .m-graduation_work .work_content .concept h3 {
      font-size: 1.2rem;
      font-family: "din-demi";
      color: #00a2cb;
      margin-bottom: 5px;
      position: relative;
      text-transform: uppercase; }
      .m-graduation_work .work_content .concept h3::before {
        content: "";
        display: block;
        width: 30px;
        border-top: 1px solid #00a2cb;
        position: absolute;
        top: 50%;
        left: 60px; }
  .m-graduation_work .work_content .info {
    background: #f5f5f5;
    padding: 20px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center; }
    .m-graduation_work .work_content .info .thumb {
      padding-right: 30px; }
    .m-graduation_work .work_content .info .text h3 {
      font-size: 1.8rem;
      color: #111;
      margin-bottom: 5px; }
      .m-graduation_work .work_content .info .text h3 span {
        font-size: 1.2rem;
        font-family: "din-demi";
        color: #00a2cb;
        display: inline-block;
        vertical-align: middle;
        padding-left: 20px;
        line-height: 1em; }
    .m-graduation_work .work_content .info .text p {
      font-size: 1.3rem;
      margin-bottom: 0;
      line-height: 1.7; }

/* 園部＆京都周辺MAP */
.m-location .area_map.kyoto {
  margin-top: 60px; }
  .m-location .area_map.kyoto .location_box::before {
    background: #ee7748; }

.m-location .area_map .map {
  margin-bottom: 80px; }

.m-location .area_map .location_box {
  position: relative;
  margin-bottom: 60px; }
  .m-location .area_map .location_box.num1::before {
    content: "01"; }
  .m-location .area_map .location_box.num2::before {
    content: "02"; }
  .m-location .area_map .location_box.num3::before {
    content: "03"; }
  .m-location .area_map .location_box.num4::before {
    content: "04"; }
  .m-location .area_map .location_box.num5::before {
    content: "05"; }
  .m-location .area_map .location_box.num6::before {
    content: "06"; }
  .m-location .area_map .location_box.num7::before {
    content: "07"; }
  .m-location .area_map .location_box.num8::before {
    content: "08"; }
  .m-location .area_map .location_box.num9::before {
    content: "09"; }
  .m-location .area_map .location_box.num10::before {
    content: "010"; }
  .m-location .area_map .location_box::before {
    display: block;
    color: #fff;
    position: absolute;
    left: 10px;
    top: -30px;
    font-size: 3.0rem;
    font-family: "din-demi";
    background: #0eb5bb;
    text-align: center;
    line-height: 60px;
    width: 60px;
    border-radius: 100px; }
  .m-location .area_map .location_box .img img {
    width: 100%; }
  .m-location .area_map .location_box h3 {
    color: #111;
    font-size: 1.8rem;
    margin: 15px 0 18px; }

/* お国自慢 */
.m-boast .boast_content {
  background: #f5f5f5;
  padding: 80px 0 30px; }
  .m-boast .boast_content .row > div {
    margin-bottom: 50px; }
  .m-boast .boast_content .boast_box {
    background: #fff;
    padding: 40px 35px 15px;
    position: relative;
    height: 100%; }
    .m-boast .boast_content .boast_box.bd01::after {
      background-image: linear-gradient(45deg, transparent 25%, #3f3a39 25%, #3f3a39 50%, transparent 50%, transparent 75%, #3f3a39 75%, #3f3a39); }
    .m-boast .boast_content .boast_box.bd02::after {
      background-image: linear-gradient(45deg, transparent 25%, #1a7aaf 25%, #1a7aaf 50%, transparent 50%, transparent 75%, #1a7aaf 75%, #1a7aaf); }
    .m-boast .boast_content .boast_box.bd03::after {
      background-image: linear-gradient(45deg, transparent 25%, #6a9e3d 25%, #6a9e3d 50%, transparent 50%, transparent 75%, #6a9e3d 75%, #6a9e3d); }
    .m-boast .boast_content .boast_box.bd04::after {
      background-image: linear-gradient(45deg, transparent 25%, #5fc0b3 25%, #5fc0b3 50%, transparent 50%, transparent 75%, #5fc0b3 75%, #5fc0b3); }
    .m-boast .boast_content .boast_box.bd05::after {
      background-image: linear-gradient(45deg, transparent 25%, #ebac1c 25%, #ebac1c 50%, transparent 50%, transparent 75%, #ebac1c 75%, #ebac1c); }
    .m-boast .boast_content .boast_box.bd06::after {
      background-image: linear-gradient(45deg, transparent 25%, #c09147 25%, #c09147 50%, transparent 50%, transparent 75%, #c09147 75%, #c09147); }
    .m-boast .boast_content .boast_box.bd07::after {
      background-image: linear-gradient(45deg, transparent 25%, #ec7388 25%, #ec7388 50%, transparent 50%, transparent 75%, #ec7388 75%, #ec7388); }
    .m-boast .boast_content .boast_box.bd08::after {
      background-image: linear-gradient(45deg, transparent 25%, #dd2b13 25%, #dd2b13 50%, transparent 50%, transparent 75%, #dd2b13 75%, #dd2b13); }
    .m-boast .boast_content .boast_box::after {
      content: "";
      display: block;
      position: absolute;
      right: 10px;
      bottom: -5px;
      width: 100px;
      height: 10px;
      background-size: 20px 20px;
      background-position: 5px; }
    .m-boast .boast_content .boast_box h2 {
      color: #111;
      font-size: 2.4rem;
      text-align: center;
      border-top: 1px solid #111;
      border-bottom: 1px solid #111;
      position: relative;
      padding: 25px;
      margin-bottom: 20px; }
      .m-boast .boast_content .boast_box h2::before {
        content: "";
        border-top: 1px solid #111;
        display: block;
        width: 100%;
        position: absolute;
        top: -4px;
        left: 0; }
      .m-boast .boast_content .boast_box h2 span {
        font-size: 1.3rem;
        font-family: "din-demi-m";
        display: block;
        letter-spacing: 1px;
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        position: absolute;
        top: 50%;
        -webkit-transform: translate(0, -50%);
        transform: translate(0, -50%);
        left: -30px; }
    .m-boast .boast_content .boast_box .img {
      position: absolute;
      top: -10px;
      right: -10px;
      z-index: 1; }
    .m-boast .boast_content .boast_box .comment {
      font-size: 1.4rem;
      color: #111;
      font-weight: bold;
      background: #f5f5f5;
      border-radius: 10px;
      padding: 14px 0 14px 20px;
      line-height: 1.5;
      width: 80%;
      height: 70px;
      position: relative; }
      .m-boast .boast_content .boast_box .comment span {
        position: relative; }
      .m-boast .boast_content .boast_box .comment::before {
        content: "\f10d";
        display: block;
        font-family: "Font Awesome 5 Pro";
        color: #e7e7e7;
        position: absolute;
        top: 10px;
        left: 10px;
        top: 5px;
        left: 13px;
        font-size: 2.0rem; }
      .m-boast .boast_content .boast_box .comment::after {
        content: "";
        display: block;
        position: absolute;
        top: 50%;
        -webkit-transform: translate(0, -50%);
        transform: translate(0, -50%);
        right: -10px;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 7.5px 0 7.5px 10px;
        border-color: transparent transparent transparent #f5f5f5; }
    .m-boast .boast_content .boast_box h3 {
      font-size: 2.0rem;
      color: #111; }
    .m-boast .boast_content .boast_box .from {
      font-size: 1.3rem;
      margin-bottom: 10px; }
    .m-boast .boast_content .boast_box .reason {
      font-size: 1.4rem; }
      .m-boast .boast_content .boast_box .reason strong {
        display: block;
        color: #00a2cb;
        text-align: center;
        font-size: 1.5rem;
        position: relative;
        margin-bottom: 10px; }
        .m-boast .boast_content .boast_box .reason strong::before, .m-boast .boast_content .boast_box .reason strong::after {
          content: "";
          display: block;
          position: absolute;
          top: 50%;
          border-top: 2px solid #00a2cb;
          width: 20%; }
        .m-boast .boast_content .boast_box .reason strong::before {
          left: 0; }
        .m-boast .boast_content .boast_box .reason strong::after {
          right: 0; }
      .m-boast .boast_content .boast_box .reason p {
        line-height: 1.6; }

/* 年間スケジュール */
.m-schedule .schedule_list .month_list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding-bottom: 30px;
  position: relative; }
  .m-schedule .schedule_list .month_list::before {
    content: "";
    display: block;
    border-left: 3px solid #00a2cb;
    height: 100%;
    position: absolute;
    left: 32%;
    top: 0; }
  .m-schedule .schedule_list .month_list:last-of-type::before {
    content: none; }

.m-schedule .schedule_list h2 {
  color: #111;
  font-family: "din-demi-m";
  position: relative;
  width: 25%;
  font-size: 1.5rem;
  padding-top: 20px; }
  .m-schedule .schedule_list h2::before {
    content: "";
    display: block;
    border-bottom: 1px dotted #ccc;
    width: 70px;
    position: absolute;
    top: 35px;
    right: 10px; }

.m-schedule .schedule_list .month {
  position: relative;
  z-index: 1;
  width: 15%; }
  .m-schedule .schedule_list .month span {
    color: #111;
    font-size: 4.5rem;
    font-family: "din-demi-m";
    color: #fff118;
    background: #00a2cb;
    line-height: 70px;
    width: 70px;
    text-align: center;
    border-radius: 100px;
    display: block;
    position: relative;
    margin: 0 auto; }

.m-schedule .schedule_list ul {
  margin-bottom: 0;
  padding: 10px 0 0 40px;
  position: relative;
  width: 60%; }
  .m-schedule .schedule_list ul li {
    list-style: disc; }

.m-schedule .img_list li {
  margin-bottom: 145px; }
  .m-schedule .img_list li:nth-child(-n+2) {
    margin-bottom: 40px; }
  .m-schedule .img_list li:nth-child(3), .m-schedule .img_list li:nth-child(5) {
    position: relative;
    top: 200px; }
  .m-schedule .img_list li:last-child {
    text-align: right;
    margin-bottom: 0; }

/* サークル紹介 */
.m-circle .circle_box {
  border-top: 1px solid #222;
  position: relative;
  margin-bottom: 70px; }
  .m-circle .circle_box .en {
    font-family: "din-demi-m";
    color: #111;
    position: absolute;
    top: 40px;
    left: 120px;
    font-weight: bold;
    text-align: right; }
    .m-circle .circle_box .en span {
      color: #00a2cb;
      display: block;
      font-size: 10rem;
      font-weight: 500;
      margin-bottom: 30px;
      position: relative;
      right: -8px; }
  .m-circle .circle_box .box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    position: relative; }
  .m-circle .circle_box .text {
    width: 60%;
    padding-top: 50px;
    padding-left: 35px;
    position: relative; }
    .m-circle .circle_box .text::before {
      content: "";
      display: block;
      height: 95px;
      border-right: 1px solid #111;
      position: absolute;
      top: 0;
      left: 0; }
    .m-circle .circle_box .text h2 {
      margin-bottom: 20px; }
      .m-circle .circle_box .text h2 span {
        color: #111;
        font-size: 2.4rem;
        min-width: 170px;
        background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(30%, #fff118));
        background: linear-gradient(transparent 70%, #fff118 30%);
        display: inline-block;
        padding: 0 0 2px; }
    .m-circle .circle_box .text .txt {
      line-height: 1.7; }
    .m-circle .circle_box .text .profile {
      font-size: 1.3rem;
      border-top: 1px solid #ccc;
      padding-top: 15px;
      line-height: 1.7; }
      .m-circle .circle_box .text .profile strong {
        display: block;
        color: #111;
        font-size: 1.5rem; }
  .m-circle .circle_box .img {
    width: 40%;
    padding-top: 60px; }

.m-circle .circle_other {
  background: url(../img/bg/bg_bd.png);
  padding: 2px; }
  .m-circle .circle_other .in {
    background: #fff;
    padding: 20px 50px 40px; }
  .m-circle .circle_other ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -50px; }
    .m-circle .circle_other ul li {
      width: 33.333333%;
      padding: 0 50px; }
      .m-circle .circle_other ul li span {
        display: block;
        border-bottom: 2px solid #00a2cb;
        padding: 10px 0 10px 32px;
        position: relative; }
        .m-circle .circle_other ul li span::before {
          content: "";
          display: block;
          width: 5px;
          height: 5px;
          border-radius: 50px;
          position: absolute;
          background: #222;
          left: 15px;
          top: 20px; }

/* Q&A */
.m-faq .faq {
  padding-top: 40px; }

.m-faq .faq_box {
  border-bottom: 1px solid #ccc;
  margin-bottom: 1px; }
  .m-faq .faq_box .ico {
    display: block;
    font-family: "din-demi-m";
    position: absolute;
    font-weight: 500; }
  .m-faq .faq_box h3 {
    position: relative;
    font-size: 1.6rem;
    padding: 22px 50px 22px 100px;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    cursor: pointer; }
    .m-faq .faq_box h3 .ico {
      color: #fff118;
      background: #00a2cb;
      font-size: 2.8rem;
      width: 70px;
      height: 100%;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      top: 0;
      left: 0; }
    .m-faq .faq_box h3::after {
      content: "\f067";
      position: absolute;
      right: 20px;
      top: 22px;
      color: #00a2cb;
      font-family: "Font Awesome 5 Pro";
      font-weight: 500;
      font-size: 2.0rem; }
    .m-faq .faq_box h3.is-act {
      background: #00a2cb;
      color: #fff118; }
      .m-faq .faq_box h3.is-act::after {
        content: "\f068";
        color: #fff; }
  .m-faq .faq_box .faq_in {
    position: relative;
    background: #f5f5f5;
    padding: 40px 30px 30px 130px;
    overflow: hidden;
    display: none; }
    .m-faq .faq_box .faq_in .ico {
      color: #fa7f7f;
      font-size: 13.5rem;
      left: -10px;
      top: 80px; }
    .m-faq .faq_box .faq_in h4 {
      color: #00a2cb;
      font-size: 1.8rem;
      margin-bottom: 15px; }
    .m-faq .faq_box .faq_in .table02 th {
      background: #eee; }
    .m-faq .faq_box .faq_in .table02 th, .m-faq .faq_box .faq_in .table02 td {
      padding: 10px; }

/* 学生寮・マンション */
.m-boarding .dormitory .head {
  margin-bottom: 20px; }
  .m-boarding .dormitory .head h3 {
    margin-bottom: 30px; }
    .m-boarding .dormitory .head h3 span {
      font-size: 2.8rem;
      color: #00a2cb;
      display: inline-block;
      border-bottom: 3px solid #00a2cb;
      padding-bottom: 8px; }
  .m-boarding .dormitory .head .dormitory_box {
    position: relative; }
    .m-boarding .dormitory .head .dormitory_box strong {
      position: absolute;
      left: 0;
      bottom: 0;
      padding-right: 30px; }

.m-boarding .dormitory .dormitory_box {
  margin-bottom: 50px;
  position: relative; }
  .m-boarding .dormitory .dormitory_box .badge {
    position: absolute;
    right: 0;
    top: -40px;
    z-index: 1; }
  .m-boarding .dormitory .dormitory_box .img {
    position: relative; }
    .m-boarding .dormitory .dormitory_box .img .label {
      position: absolute;
      right: 0;
      bottom: 0;
      margin: 0;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
      .m-boarding .dormitory .dormitory_box .img .label li {
        font-size: 1.4rem;
        color: #fff;
        line-height: 1em;
        padding: 10px 16px; }
        .m-boarding .dormitory .dormitory_box .img .label li.p {
          background: #fa7f7f; }
        .m-boarding .dormitory .dormitory_box .img .label li.b {
          background: #0069a5; }
        .m-boarding .dormitory .dormitory_box .img .label li.y {
          background: #f5b723; }
  .m-boarding .dormitory .dormitory_box strong {
    display: block;
    color: #111;
    font-size: 1.6rem;
    padding: 13px 13px 13px 40px;
    background: #fff;
    position: relative; }
    .m-boarding .dormitory .dormitory_box strong.num1::before {
      content: "01"; }
    .m-boarding .dormitory .dormitory_box strong.num2::before {
      content: "02"; }
    .m-boarding .dormitory .dormitory_box strong.num3::before {
      content: "03"; }
    .m-boarding .dormitory .dormitory_box strong.num4::before {
      content: "04"; }
    .m-boarding .dormitory .dormitory_box strong.num5::before {
      content: "05"; }
    .m-boarding .dormitory .dormitory_box strong.num6::before {
      content: "06"; }
    .m-boarding .dormitory .dormitory_box strong.num7::before {
      content: "07"; }
    .m-boarding .dormitory .dormitory_box strong.num8::before {
      content: "08"; }
    .m-boarding .dormitory .dormitory_box strong.num9::before {
      content: "09"; }
    .m-boarding .dormitory .dormitory_box strong.num10::before {
      content: "10"; }
    .m-boarding .dormitory .dormitory_box strong.num11::before {
      content: "11"; }
    .m-boarding .dormitory .dormitory_box strong.num12::before {
      content: "12"; }
    .m-boarding .dormitory .dormitory_box strong.num13::before {
      content: "13"; }
    .m-boarding .dormitory .dormitory_box strong::before {
      display: block;
      color: #fff;
      position: absolute;
      left: 0;
      top: 11px;
      font-size: 1.5rem;
      font-family: "din-demi";
      background: #00a2cb;
      text-align: center;
      line-height: 30px;
      width: 30px;
      border-radius: 100px; }

.m-boarding .feature .feature_content {
  margin-bottom: 50px; }
  .m-boarding .feature .feature_content:nth-of-type(2) {
    background: #f2fafc;
    padding: 50px 0 40px;
    margin-bottom: 90px; }
    .m-boarding .feature .feature_content:nth-of-type(2) .row {
      margin-top: 20px; }
  .m-boarding .feature .feature_content .container {
    position: relative;
    padding-left: 300px; }
  .m-boarding .feature .feature_content h3 {
    position: absolute;
    top: 10px;
    left: 20px; }
  .m-boarding .feature .feature_content .tR {
    font-size: 1.3rem; }
  .m-boarding .feature .feature_content dl {
    overflow: hidden;
    margin-bottom: 35px; }
    .m-boarding .feature .feature_content dl dt {
      float: left;
      font-size: 5.0rem;
      font-family: "din-demi-m";
      color: #00a2cb;
      padding-left: 50px;
      position: relative;
      line-height: 1.0; }
      .m-boarding .feature .feature_content dl dt span {
        font-size: 1.5rem;
        border-top: 2px solid #00a2cb;
        border-bottom: 2px solid #00a2cb;
        position: absolute;
        top: 15px;
        left: 0;
        padding: 2px 2px; }
    .m-boarding .feature .feature_content dl dd {
      overflow: hidden;
      padding: 10px 0 0 35px; }
      .m-boarding .feature .feature_content dl dd .title {
        display: block; }
        .m-boarding .feature .feature_content dl dd .title span {
          color: #111;
          font-size: 2.4rem;
          background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(30%, #fff118));
          background: linear-gradient(transparent 70%, #fff118 30%);
          display: inline-block;
          padding: 0 0 2px; }
          .m-boarding .feature .feature_content dl dd .title span em {
            font-size: 4.1rem;
            font-family: "din-demi";
            color: #00a2cb;
            font-style: normal;
            letter-spacing: 2px; }
      .m-boarding .feature .feature_content dl dd .emphasis {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        line-height: 51px;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        margin-top: 15px; }
        .m-boarding .feature .feature_content dl dd .emphasis strong {
          display: block;
          font-size: 2.0rem;
          color: #111;
          padding-right: 25px; }
          .m-boarding .feature .feature_content dl dd .emphasis strong em {
            font-family: "din-demi";
            font-size: 3.6rem;
            font-style: normal; }
        .m-boarding .feature .feature_content dl dd .emphasis .bg {
          color: #00a2cb;
          padding-left: 65px;
          background-repeat: no-repeat;
          background-position: center left;
          background-size: 56px; }
          .m-boarding .feature .feature_content dl dd .emphasis .bg.p01 {
            font-size: 3.0rem;
            background-image: url(../../img/boarding/feature_ico01@2x.png); }
          .m-boarding .feature .feature_content dl dd .emphasis .bg.p02 {
            background-image: url(../../img/boarding/feature_ico02@2x.png); }
      .m-boarding .feature .feature_content dl dd .catch {
        color: #111;
        font-size: 2.0rem;
        font-weight: bold;
        margin: 15px 0 10px; }
      .m-boarding .feature .feature_content dl dd .note {
        font-size: 1.3rem;
        position: relative;
        padding-left: 20px;
        margin-bottom: 0; }
        .m-boarding .feature .feature_content dl dd .note::before {
          content: "※";
          display: block;
          position: absolute;
          top: 0;
          left: 0; }
      .m-boarding .feature .feature_content dl dd ul {
        margin: 20px -10px 0; }
        .m-boarding .feature .feature_content dl dd ul li {
          padding-right: 10px;
          padding-left: 10px; }
          .m-boarding .feature .feature_content dl dd ul li span {
            display: block;
            text-align: center;
            line-height: 1.4;
            padding: 10px 0 15px;
            font-size: 1.4rem; }

.m-boarding .share {
  background: #f5f5f5;
  padding: 70px 0 100px; }
  .m-boarding .share .ttl02 {
    margin-bottom: 180px; }
  .m-boarding .share .share_content {
    background: #fff;
    padding: 50px 0; }
    .m-boarding .share .share_content.blue {
      margin-top: 150px; }
      .m-boarding .share .share_content.blue h3 {
        background: url(../../img/boarding/share_bg02.jpg) no-repeat #0069a5; }
      .m-boarding .share .share_content.blue .top .text .title {
        color: #0069a5; }
      .m-boarding .share .share_content.blue .bottom h4::after {
        border-bottom: 4px dotted #0069a5; }
      .m-boarding .share .share_content.blue .bottom .point {
        border: 3px solid #0069a5; }
        .m-boarding .share .share_content.blue .bottom .point ol li {
          border-bottom: 1px solid #0069a5; }
          .m-boarding .share .share_content.blue .bottom .point ol li::before {
            color: #0069a5; }
      .m-boarding .share .share_content.blue .bottom .layout .floor dl dt {
        border-left: 4px solid #0069a5; }
    .m-boarding .share .share_content h3 {
      color: #fff;
      background: url(../../img/boarding/share_bg01.jpg) no-repeat #fa7f7f;
      padding: 40px;
      font-size: 2.4rem;
      margin: -130px 30px 40px; }
    .m-boarding .share .share_content .top {
      margin-bottom: 50px; }
      .m-boarding .share .share_content .top .text {
        padding-left: 50px; }
        .m-boarding .share .share_content .top .text .title {
          display: block;
          color: #fa7f7f;
          line-height: 1.5;
          font-size: 2.4rem;
          margin-bottom: 20px; }
      .m-boarding .share .share_content .top .img {
        position: relative; }
        .m-boarding .share .share_content .top .img .info {
          background: #fff;
          position: absolute;
          right: 0;
          bottom: 0;
          text-align: right;
          font-size: 1.3rem;
          padding: 25px 15px 0 30px; }
          .m-boarding .share .share_content .top .img .info strong {
            display: block;
            color: #222;
            font-size: 2.0rem; }
    .m-boarding .share .share_content .bottom {
      margin: 0 50px; }
      .m-boarding .share .share_content .bottom h4 {
        text-align: center;
        color: #111;
        font-size: 2.0rem;
        margin-bottom: 20px; }
        .m-boarding .share .share_content .bottom h4::after {
          content: "";
          display: block;
          border-bottom: 4px dotted #fa7f7f;
          width: 115px;
          margin: 15px auto 0; }
      .m-boarding .share .share_content .bottom .point {
        border: 3px solid #fa7f7f;
        padding: 35px 35px 15px; }
        .m-boarding .share .share_content .bottom .point ol li {
          list-style: none;
          border-bottom: 1px solid #fa7f7f;
          padding: 10px 10px 10px 50px;
          position: relative; }
          .m-boarding .share .share_content .bottom .point ol li.num1::before {
            content: "01"; }
          .m-boarding .share .share_content .bottom .point ol li.num2::before {
            content: "02"; }
          .m-boarding .share .share_content .bottom .point ol li.num3::before {
            content: "03"; }
          .m-boarding .share .share_content .bottom .point ol li.num4::before {
            content: "04"; }
          .m-boarding .share .share_content .bottom .point ol li::before {
            display: block;
            color: #fa7f7f;
            position: absolute;
            left: 10px;
            top: 10px;
            font-size: 2.0rem;
            letter-spacing: 1px;
            font-family: "din-demi"; }
      .m-boarding .share .share_content .bottom .layout {
        background: #f5f5f5;
        padding: 35px; }
        .m-boarding .share .share_content .bottom .layout h4 {
          margin-bottom: 30px; }
        .m-boarding .share .share_content .bottom .layout .floor {
          display: -webkit-box;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          padding: 0 20px; }
          .m-boarding .share .share_content .bottom .layout .floor dl {
            margin-left: auto;
            margin-bottom: 0; }
            .m-boarding .share .share_content .bottom .layout .floor dl dt {
              border-left: 4px solid #fa7f7f;
              line-height: 1em;
              margin-bottom: 3px;
              padding-left: 10px;
              font-weight: bold; }
            .m-boarding .share .share_content .bottom .layout .floor dl dd {
              margin-bottom: 10px;
              padding-left: 15px; }
        .m-boarding .share .share_content .bottom .layout .facility strong {
          display: block;
          color: #00a2cb;
          font-size: 1.6rem;
          position: relative;
          margin-bottom: 7px; }
          .m-boarding .share .share_content .bottom .layout .facility strong::after {
            content: "";
            display: block;
            border-bottom: 1px solid #ccc;
            position: absolute;
            top: 50%;
            right: 0;
            width: 65%; }
        .m-boarding .share .share_content .bottom .layout .facility .in {
          display: -webkit-box;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex; }
          .m-boarding .share .share_content .bottom .layout .facility .in span {
            display: block;
            padding-right: 15px; }
        .m-boarding .share .share_content .bottom .layout .facility ul {
          margin-bottom: 0; }
          .m-boarding .share .share_content .bottom .layout .facility ul li {
            position: relative;
            display: inline-block;
            padding-left: 20px;
            margin: 0 5px 5px 0; }
            .m-boarding .share .share_content .bottom .layout .facility ul li::before {
              content: "\f058";
              font-family: "Font Awesome 5 Pro";
              color: #00a2cb;
              display: block;
              position: absolute;
              top: 0;
              left: 0; }

/* 就職 */
.m-employment .careers {
  margin-bottom: 60px; }
  .m-employment .careers .support h3 {
    text-align: center;
    color: #111;
    font-size: 2.6rem;
    margin-bottom: 30px; }

.m-employment .employment_menu {
  background: #f5f5f5;
  padding: 70px 0 60px; }

/* 就職サポート */
.m-support .system {
  margin-bottom: 80px; }

.m-support .feature .feature_box {
  position: relative; }
  .m-support .feature .feature_box .img {
    text-align: right; }
  .m-support .feature .feature_box .text {
    width: 43%;
    position: absolute;
    left: 20px;
    bottom: 0; }
    .m-support .feature .feature_box .text .num {
      margin-right: 115px;
      font-family: "din-demi-m";
      color: #00a2cb;
      font-size: 6.0rem;
      font-weight: 500;
      margin-bottom: 30px;
      text-align: right; }
      .m-support .feature .feature_box .text .num span {
        display: inline-block;
        position: relative; }
        .m-support .feature .feature_box .text .num span::after {
          content: "";
          display: block;
          border-bottom: 3px solid #222;
          width: .9em;
          margin: 0 auto;
          padding-bottom: 25px; }
    .m-support .feature .feature_box .text h3 {
      font-size: 2.8rem;
      color: #111;
      margin-bottom: 20px;
      line-height: 1.4; }
    .m-support .feature .feature_box .text p {
      background: #fff;
      margin: 0;
      padding: 40px 40px 0 0; }
  .m-support .feature .feature_box.reverse {
    margin-top: 90px; }
    .m-support .feature .feature_box.reverse .img {
      text-align: left; }
    .m-support .feature .feature_box.reverse .text {
      left: auto;
      right: 20px; }
      .m-support .feature .feature_box.reverse .text .num {
        text-align: left;
        padding-left: 110px; }
      .m-support .feature .feature_box.reverse .text h3 {
        padding-left: 110px; }
      .m-support .feature .feature_box.reverse .text p {
        padding: 40px 0 0 40px; }

.m-support .feature .bottom .feature_box .img {
  text-align: center; }

.m-support .feature .bottom .feature_box .text {
  width: 100%;
  position: relative;
  left: 0;
  top: -10px;
  padding-left: 35px; }
  .m-support .feature .bottom .feature_box .text .num {
    margin-right: 0;
    text-align: left; }
  .m-support .feature .bottom .feature_box .text p {
    padding: 0; }

.m-support .feature .uturn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  border: 3px solid #eee;
  padding: 35px 70px 15px 45px;
  margin: 50px 0 100px; }
  .m-support .feature .uturn .row {
    width: 100%; }
  .m-support .feature .uturn h3 {
    color: #0069a5;
    font-size: 2.0rem;
    background: url(../../img/support/uturn_img@2x.png) no-repeat bottom left;
    background-size: 206px;
    height: 100%; }
  .m-support .feature .uturn .uturn_box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -30px; }
    .m-support .feature .uturn .uturn_box .box {
      padding: 0 30px;
      width: 50%;
      margin-bottom: 10px; }
      .m-support .feature .uturn .uturn_box .box strong {
        display: block;
        color: #111;
        font-size: 1.6rem;
        padding-left: 30px;
        position: relative;
        margin-bottom: 10px; }
        .m-support .feature .uturn .uturn_box .box strong::before {
          content: "";
          display: block;
          position: absolute;
          top: 12px;
          left: 0;
          border-top: 3px solid #00a2cb;
          width: 20px; }
      .m-support .feature .uturn .uturn_box .box p {
        font-size: 1.4rem; }

.m-support .feature .flow {
  margin: 60px 0 50px; }
  .m-support .feature .flow .flow_content {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    height: 350px; }
  .m-support .feature .flow .flow_box {
    border: 1px solid #222;
    border-right: none;
    position: relative;
    padding: 40px 0px 0 30px;
    width: 18%;
    margin-right: 5.5%;
    height: 100%;
    background: #fff; }
    .m-support .feature .flow .flow_box .num {
      display: block;
      font-family: "din-demi-m";
      color: #00a2cb;
      font-size: 4.0rem;
      font-weight: 500;
      margin-bottom: 15px;
      text-align: center; }
    .m-support .feature .flow .flow_box h3 {
      color: #00a2cb;
      font-size: 2.0rem;
      text-align: center;
      margin-bottom: 25px; }
      .m-support .feature .flow .flow_box h3::after {
        content: "";
        display: block;
        border-bottom: 1px solid #222;
        width: 30px;
        margin: 15px auto 0; }
    .m-support .feature .flow .flow_box::before, .m-support .feature .flow .flow_box::after {
      content: "";
      display: block;
      border-right: 1px solid #222;
      position: absolute;
      right: 0;
      height: 53%; }
    .m-support .feature .flow .flow_box::before {
      top: 0;
      -webkit-transform: rotate(-19deg);
      transform: rotate(-19deg);
      -webkit-transform-origin: right 0;
      transform-origin: right 0; }
    .m-support .feature .flow .flow_box::after {
      bottom: 0;
      -webkit-transform: rotate(19deg);
      transform: rotate(19deg);
      -webkit-transform-origin: right 100%;
      transform-origin: right 100%; }
  .m-support .feature .flow .last {
    width: 6%;
    border: 1px solid #222;
    text-align: center;
    position: relative; }
    .m-support .feature .flow .last span {
      font-weight: bold;
      /* -webkit-writing-mode: vertical-rl; */
      -ms-writing-mode: tb-rl;
      -webkit-writing-mode: vertical-rl;
      writing-mode: vertical-rl;
      color: #222;
      display: inline-block;
      font-size: 1.8rem;
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%); }

.m-support .feature .schedule h4 {
  color: #0069a5;
  font-size: 2.0rem;
  margin-bottom: 20px; }

.m-support .feature .schedule .table02 th {
  font-weight: 500;
  width: 120px; }

.m-support .feature .schedule .table02 td {
  text-align: left;
  padding-left: 30px; }

.m-support .feature .schedule .table02 th, .m-support .feature .schedule .table02 td {
  padding: 12px; }

.m-support .guidance {
  background: url(../img/bg/bg02@2x.jpg);
  background-size: 100%;
  padding: 60px 0 20px; }
  .m-support .guidance h3 {
    color: #00a2cb;
    margin-bottom: 20px;
    position: relative;
    padding-left: 80px;
    font-size: 2.0rem; }
    .m-support .guidance h3 span {
      display: block;
      color: #fff;
      background: #00a2cb;
      font-size: 1.3rem;
      line-height: 1em;
      padding: 11px 0 9px;
      width: 66px;
      position: absolute;
      top: -4px;
      left: 0;
      text-align: center; }
  .m-support .guidance p {
    margin-bottom: 40px; }

/* 就職保証 */
.m-guarantee .careers {
  margin-bottom: 60px; }
  .m-guarantee .careers .briefing .top strong {
    display: block;
    color: #00a2cb;
    font-size: 2.6rem;
    line-height: 1.5;
    margin-bottom: 30px; }
  .m-guarantee .careers .briefing .bottom {
    border: 3px solid #eee;
    padding: 35px 40px 20px;
    margin-top: 40px; }
    .m-guarantee .careers .briefing .bottom h3 {
      color: #111;
      font-size: 1.8rem;
      position: relative;
      margin-bottom: 20px;
      padding-left: 28px; }
      .m-guarantee .careers .briefing .bottom h3::before {
        content: "";
        display: block;
        position: absolute;
        left: 0;
        top: 12px;
        border-bottom: 3px solid #00a2cb;
        width: 20px; }
    .m-guarantee .careers .briefing .bottom ul {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-flow: column wrap;
      -ms-flex-flow: column wrap;
      flex-flow: column wrap;
      height: 360px;
      padding: 0 5px; }
      .m-guarantee .careers .briefing .bottom ul li {
        font-size: 1.4rem;
        overflow: hidden;
        padding: 0 25px; }
        .m-guarantee .careers .briefing .bottom ul li span {
          display: block;
          float: right; }

.m-guarantee .entry {
  background: url(../img/bg/bg02@2x.jpg);
  background-size: 100%;
  padding: 60px 0 40px;
  margin-bottom: 90px; }
  .m-guarantee .entry .catch {
    display: block;
    font-size: 2.6rem;
    color: #00a2cb;
    text-align: center;
    margin-bottom: 30px; }
  .m-guarantee .entry .point {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 50px; }
    .m-guarantee .entry .point .point_box {
      background: #0069a5;
      text-align: center;
      border-radius: 200px;
      width: 230px;
      height: 230px;
      color: #fff;
      font-size: 2.0rem;
      font-weight: bold;
      margin: 0 20px;
      padding-top: 35px; }
      .m-guarantee .entry .point .point_box .num {
        display: inline-block;
        color: #fff;
        font-size: 5.0rem;
        font-family: "din-demi-m";
        font-weight: 500;
        margin-bottom: 30px; }
        .m-guarantee .entry .point .point_box .num::after {
          content: "";
          display: block;
          border-bottom: 2px solid #fff118;
          padding-top: 17px;
          width: 40px;
          margin: 0 auto; }
      .m-guarantee .entry .point .point_box p {
        line-height: 1.2; }
        .m-guarantee .entry .point .point_box p strong {
          color: #fff118;
          font-size: 3.0rem; }
  .m-guarantee .entry .bottom table th, .m-guarantee .entry .bottom table td {
    padding: 10px; }
  .m-guarantee .entry .bottom table tr td:last-child {
    text-align: left;
    padding: 10px 20px; }

.m-guarantee .message h3 {
  color: #00a2cb;
  font-size: 2.6rem;
  line-height: 1.5;
  margin-bottom: 20px; }

/* 目指す職業 */
.m-job {
  margin-top: -70px; }
  .m-job section .row > div {
    margin-bottom: 40px; }
  .m-job .archi {
    background: #f5f5f5;
    padding: 70px 0 50px;
    margin-bottom: 70px; }
  .m-job .interior .job_box {
    background: #f7f7f7; }
    .m-job .interior .job_box strong {
      color: #8dbb00; }
  .m-job .job_box {
    background: #fff;
    padding: 0 35px 20px;
    position: relative;
    height: 100%; }
    .m-job .job_box::after {
      content: "";
      display: block;
      border-bottom: 2px solid #222;
      width: 94%;
      margin: 0 auto;
      position: absolute;
      bottom: -4px;
      left: 3%; }
    .m-job .job_box .ico {
      text-align: center; }
    .m-job .job_box h3 {
      text-align: center;
      color: #111;
      font-size: 2.4rem;
      margin: 30px 0 25px; }
      .m-job .job_box h3 span {
        font-size: 2.0rem; }
    .m-job .job_box strong {
      display: block;
      text-align: center;
      color: #00a2cb;
      line-height: 1.5;
      margin-bottom: 20px; }

/* 内定者メッセージ */
.m-message .message {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(20%, transparent), color-stop(20%, #f5f5f5));
  background: linear-gradient(transparent 20%, #f5f5f5 20%);
  padding-bottom: 90px; }
  .m-message .message .careers_list .row {
    margin-right: -10px;
    margin-left: -10px; }
    .m-message .message .careers_list .row > div {
      padding-right: 10px;
      padding-left: 10px; }

/* 内定者メッセージ　\ 下層 */
.m-message_child .head {
  margin-bottom: 30px; }
  .m-message_child .head h3 {
    margin-bottom: 20px; }
    .m-message_child .head h3 span {
      color: #111;
      font-size: 2.4rem;
      border-bottom: 2px solid #222;
      line-height: 2.0;
      padding: 0 0 3px; }
  .m-message_child .head .goods {
    width: 280px;
    height: 280px;
    border: 2px dotted #ccc;
    border-radius: 50%; }
    .m-message_child .head .goods .in {
      text-align: center;
      padding-top: 10px; }
      .m-message_child .head .goods .in span {
        display: inline-block;
        padding: 1px 22px;
        color: #fff;
        background: #00a2cb;
        border-radius: 15px;
        font-weight: bold; }
      .m-message_child .head .goods .in strong {
        display: block;
        color: #111;
        font-size: 2.0rem;
        margin: 17px 0 10px; }
      .m-message_child .head .goods .in p {
        padding: 0 10px;
        font-size: 1.3rem;
        line-height: 1.5;
        margin-bottom: 10px; }

.m-message_child .process {
  background: #f5f5f5;
  padding: 60px 0;
  margin-bottom: 50px; }
  .m-message_child .process .ttl03 {
    margin-bottom: 70px; }
  .m-message_child .process .process_box {
    background: #fff;
    padding: 10px 30px;
    height: 100%; }
    .m-message_child .process .process_box h3 {
      color: #111;
      font-family: "din-demi-m";
      font-weight: 500;
      position: relative;
      top: -30px;
      left: -10px; }
      .m-message_child .process .process_box h3 strong {
        display: block;
        font-size: 5.0rem;
        font-weight: 500; }
        .m-message_child .process .process_box h3 strong em {
          font-style: normal;
          font-size: 7.0rem; }
      .m-message_child .process .process_box h3 span {
        font-size: 2.4rem;
        display: block;
        padding-top: 3px;
        padding-left: 30px; }
    .m-message_child .process .process_box.current {
      position: relative; }
      .m-message_child .process .process_box.current::after {
        content: "";
        display: block;
        position: absolute;
        left: 50%;
        bottom: -40px;
        height: 50px;
        border-right: 3px solid #00a2cb; }
      .m-message_child .process .process_box.current h3 {
        color: #00a2cb; }
  .m-message_child .process .turning {
    background: url(../img/bg/bg01@2x.jpg);
    background-size: 50%;
    padding: 40px 50px 20px;
    margin: 40px 70px 0;
    color: #fff; }
    .m-message_child .process .turning h3 {
      text-align: center;
      font-style: italic;
      font-weight: 500;
      margin-bottom: 20px;
      font-size: 2.8rem; }
      .m-message_child .process .turning h3::after {
        content: "";
        display: block;
        width: 60px;
        border-bottom: 3px solid #fff118;
        margin: 20px auto 0; }

.m-message_child .message_btn {
  width: 360px;
  margin: 0 auto; }
  .m-message_child .message_btn a {
    display: block;
    text-align: center;
    font-weight: bold;
    color: #111;
    border: 3px solid #00a2cb;
    padding: 20px;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease; }
    .m-message_child .message_btn a .ico {
      padding-right: 15px;
      display: inline-block;
      vertical-align: middle;
      line-height: 22px; }
    .m-message_child .message_btn a:hover {
      opacity: .8; }

/* 企業採用ご担当者様へ */
.m-offers .greeting strong {
  display: block;
  color: #222;
  font-size: 1.8rem;
  margin-bottom: 15px; }

.m-offers .requirements .requirements_box {
  border: 2px solid #ccc;
  background: #f5f5f5;
  padding: 30px;
  margin-top: 30px; }
  .m-offers .requirements .requirements_box h3 {
    color: #00a2cb;
    font-size: 2.0rem;
    margin-bottom: 20px; }

/* 就職先企業一覧 */
.m-company .results_box {
  margin-bottom: 60px; }
  .m-company .results_box .dot_list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    .m-company .results_box .dot_list li {
      width: 33.333333%; }

.m-company .btn01 a {
  max-width: 450px;
  margin: 0 auto;
  padding: 20px; }

/* ニュース・トピックス */
.m-news .ttl03 {
  margin-bottom: 50px; }

.m-news .news_archive {
  margin-bottom: 40px; }
  .m-news .news_archive h2 {
    color: #111;
    font-family: "din-demi-m";
    font-size: 2.0rem;
    text-align: center; }
  .m-news .news_archive .list {
    border-left: 1px solid #111; }

.post_box {
  margin-bottom: 90px; }

.post_info .cat {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 10px; }
  .post_info .cat span {
    font-size: 1.4rem;
    color: #fff;
    display: block;
    width: 90px;
    line-height: 35px;
    text-align: center;
    font-family: "din-demi-m";
    background: #00a2cb; }

.post_info time {
  font-size: 1.4rem;
  font-family: "din-demi";
  display: block;
  color: #999; }

.post_body {
  overflow: hidden; }

/* 学科・コース一覧 */
.m-course .course_list .course_box {
  margin-bottom: 60px; }
  .m-course .course_list .course_box .thumb {
    overflow: hidden; }
  .m-course .course_list .course_box a {
    display: block; }
    .m-course .course_list .course_box a img {
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease; }
    .m-course .course_list .course_box a:hover img {
      -webkit-transform: scale(1.05);
      transform: scale(1.05); }
  .m-course .course_list .course_box.department.blue .title {
    background: #00a2cb; }
    .m-course .course_list .course_box.department.blue .title span {
      color: #00a2cb; }
  .m-course .course_list .course_box.department.red .title {
    background: #db7093; }
    .m-course .course_list .course_box.department.red .title span {
      color: #db7093; }
  .m-course .course_list .course_box.department.red p {
    font-size: 1.6rem;
    color: #db7093; }
  .m-course .course_list .course_box.department.green .title {
    background: #43a71c; }
    .m-course .course_list .course_box.department.green .title span {
      color: #43a71c; }
  .m-course .course_list .course_box.department.green p {
      color: #333; }
  .m-course .course_list .course_box.department.green2 .title {
    background: #38b290; }
    .m-course .course_list .course_box.department.green2 .title span {
      color: #38b296; }
  .m-course .course_list .course_box.department.orrange .title {
    background: #f5a823; }
    .m-course .course_list .course_box.department.orrange .title span {
      color: #f5a823; }
  .m-course .course_list .course_box.department .title {
    color: #fff;
    font-size: 2.4rem;
    font-weight: bold;
    padding: 40px;
    max-width: 90%;
    margin: -30px auto 20px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    position: relative; }
    .m-course .course_list .course_box.department .title span {
      font-size: 1.3rem;
      background: #fff;
      display: inline-block;
      padding: 0 10px;
      margin-left: 30px; }
    .m-course .course_list .course_box.department .title::before {
      content: "\f061";
      font-family: "Font Awesome 5 Pro";
      position: absolute;
      right: 20px;
      top: 50%;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
      color: #fff;
      font-weight: 300; }
  .m-course .course_list .course_box.course .title {
    position: relative;
    margin-bottom: 25px; }
    .m-course .course_list .course_box.course .title .dept_cat {
      font-size: 1.3rem;
      color: #fff;
      background: #00a2cb;
      display: inline-block;
      padding: 0 10px;
      margin: 10px 0; }
    .m-course .course_list .course_box.course .title .course_ttl {
      display: block;
      font-size: 2rem;
      font-weight: bold; }
    .m-course .course_list .course_box.course .title::before {
      content: "\f061";
      font-family: "Font Awesome 5 Pro";
      position: absolute;
      right: 20px;
      top: 80%;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
      color: #333;
      font-weight: 300; }
  .m-course .course_list .course_box.course p {
    color: #00a2cb;
    font-size: 1.6rem;
    max-width: 250px; }

.m-course .course_system {
  margin-bottom: 100px; }

/* 学科・コース　\ 下層 */
.m-course_child {
  padding-top: 150px; }
  .m-course_child.archi1 {
    background: url(../../img/archi1/archi1_head_bg.jpg) no-repeat right top; }
    .m-course_child.archi1 .point_list h3 {
      color: #00a2cb; }
  .m-course_child.senkou {
    background: url(../../img/archi_year1/archi_year1_bg.jpg) no-repeat right top; }
    .m-course_child.senkou .course_child_head .point_list .point_box h3 {
      color: #43a71c; }
    .m-course_child.senkou .voice::before {
      background: #43a71c;
      top: 150px; }
    .m-course_child.senkou .voice .voice_area {
      margin-top: 80px;
      padding-bottom: 80px; }
      .m-course_child.senkou .voice .voice_area .copy {
        background: #43a71c; }
      .m-course_child.senkou .voice .voice_area .name {
        border-right: 2px solid #43a71c; }
      .m-course_child.senkou .voice .voice_area h2 span::before {
        background: url(../../img/archi_year1/voice_en@2x.png);
        background-size: cover; }
    .m-course_child.senkou .voice .qualification {
      border: 3px solid #43a71c; }
    .m-course_child.senkou .voice .stepup .year_box {
      width: 24%;
      border: 2px solid #43a71c; }
      .m-course_child.senkou .voice .stepup .year_box::before {
        background: #43a71c; }
      .m-course_child.senkou .voice .stepup .year_box:nth-child(1), .m-course_child.senkou .voice .stepup .year_box:nth-child(2) {
        border: 2px solid #00a2cb; }
        .m-course_child.senkou .voice .stepup .year_box:nth-child(1)::before, .m-course_child.senkou .voice .stepup .year_box:nth-child(2)::before {
          background: #00a2cb; }
        .m-course_child.senkou .voice .stepup .year_box:nth-child(1) .year_no, .m-course_child.senkou .voice .stepup .year_box:nth-child(2) .year_no {
          color: #00a2cb; }
      .m-course_child.senkou .voice .stepup .year_box:nth-child(4) .human {
        right: -70px; }
      .m-course_child.senkou .voice .stepup .year_box .year_no {
        color: #43a71c; }
    .m-course_child.senkou .voice .stepup.archi_year1 .year_box:nth-child(3) {
      width: 49.5%;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
      .m-course_child.senkou .voice .stepup.archi_year1 .year_box:nth-child(3)::before {
        display: none; }
      .m-course_child.senkou .voice .stepup.archi_year1 .year_box:nth-child(3) .in.line {
        border-left: 1px solid #43a71c;
        padding-left: 20px;
        margin-left: 20px; }
  .m-course_child.archi2 {
    background: url(../../img/archi_year1/archi2_bg.jpg) no-repeat right top; }
    .m-course_child.archi2 .course_child_head .point_list .point_box h3 {
      color: #f5a823; }
  .m-course_child .course_child_head {
    margin-bottom: 60px; }
    .m-course_child .course_child_head h2 {
      font-size: 2.8rem;
      line-height: 1.6;
      margin-bottom: 30px;
      color: #111; }
  .m-course_child .divide_course {
    margin-bottom: 80px; }
    .m-course_child .divide_course .divide_course_list {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
    .m-course_child .divide_course .divide_course_box {
      width: 50%;
      position: relative;
      overflow: hidden; }
      .m-course_child .divide_course .divide_course_box:hover::before {
        -webkit-transform: scale(1.05);
        transform: scale(1.05); }
      .m-course_child .divide_course .divide_course_box::before {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        z-index: 1;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease; }
      .m-course_child .divide_course .divide_course_box.architecture::before {
        background: url(../../img/archi1/divide_course01@2x.jpg) 50%;
        background-size: cover; }
      .m-course_child .divide_course .divide_course_box.architecture .num {
        color: #00a2cb; }
      .m-course_child .divide_course .divide_course_box.architecture p {
        color: #00a2cb; }
      .m-course_child .divide_course .divide_course_box a {
        padding-top: 400px;
        display: block;
        position: relative;
        z-index: 10; }
      .m-course_child .divide_course .divide_course_box.interior::before {
        background: url(../../img/archi1/divide_course02@2x.jpg) 50%;
        background-size: cover; }
      .m-course_child .divide_course .divide_course_box.interior .num {
        color: #8dbb00;
        left: 20px;
        right: auto; }
      .m-course_child .divide_course .divide_course_box.interior p {
        color: #8dbb00; }
      .m-course_child .divide_course .divide_course_box .box_in {
        background: #fff;
        width: 70%;
        margin-left: auto;
        padding: 50px 40px 0;
        position: absolute;
        bottom: 0;
        right: 50px; }
      .m-course_child .divide_course .divide_course_box h3 {
        font-size: 2.6rem;
        margin-bottom: 20px;
        position: relative;
        color: #111; }
        .m-course_child .divide_course .divide_course_box h3::before {
          content: "\f061";
          font-family: "Font Awesome 5 Pro";
          position: absolute;
          right: 20px;
          top: 50%;
          -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
          color: #333;
          font-weight: 300;
          font-size: 1.4rem; }
      .m-course_child .divide_course .divide_course_box p {
        margin-bottom: 0;
        font-weight: bold; }
      .m-course_child .divide_course .divide_course_box .num {
        font-family: "din-demi-m";
        position: absolute;
        right: 20px;
        top: -75px;
        text-align: center; }
        .m-course_child .divide_course .divide_course_box .num strong {
          display: block;
          font-size: 8rem;
          line-height: 0.7;
          border-bottom: 3px solid #000;
          padding-bottom: 15px;
          margin-bottom: 2px;
          font-weight: 500; }
  .m-course_child .class_organization {
    background: #f5f5f5;
    padding: 60px 0;
    margin-bottom: 50px; }
    .m-course_child .class_organization .class_box {
      margin-bottom: 40px; }
      .m-course_child .class_organization .class_box.standard .class_ttl {
        background: url(../../img/archi1/class_ttl01@2x.jpg);
        background-size: cover; }
      .m-course_child .class_organization .class_box.standard .class_in .before {
        border: 2px solid #fa7f7f; }
      .m-course_child .class_organization .class_box.standard .class_in .after h4 {
        color: #fa7f7f; }
      .m-course_child .class_organization .class_box.standard .class_in .after .tag {
        background: #fa7f7f; }
        .m-course_child .class_organization .class_box.standard .class_in .after .tag::before {
          border-color: transparent transparent transparent #fa7f7f; }
      .m-course_child .class_organization .class_box.standard .class_in .after_in .profile .name span {
        color: #fa7f7f; }
      .m-course_child .class_organization .class_box.architecture .class_ttl {
        background: url(../../img/archi1/class_ttl02@2x.jpg);
        background-size: cover; }
      .m-course_child .class_organization .class_box.architecture .class_in .before {
        border: 2px solid #0069a5; }
      .m-course_child .class_organization .class_box.architecture .class_in .after h4 {
        color: #0069a5; }
      .m-course_child .class_organization .class_box.architecture .class_in .after .tag {
        background: #0069a5; }
        .m-course_child .class_organization .class_box.architecture .class_in .after .tag::before {
          border-color: transparent transparent transparent #0069a5; }
      .m-course_child .class_organization .class_box.architecture .class_in .after_in .profile .name span {
        color: #0069a5; }
      .m-course_child .class_organization .class_box.recurrent .class_ttl {
        background: url(../../img/archi1/class_ttl03@2x.jpg);
        background-size: cover; }
      .m-course_child .class_organization .class_box.recurrent .class_in .before {
        border: 2px solid #f5b723; }
      .m-course_child .class_organization .class_box.recurrent .class_in .after h4 {
        color: #f5b723; }
      .m-course_child .class_organization .class_box.recurrent .class_in .after .tag {
        background: #f5b723; }
        .m-course_child .class_organization .class_box.recurrent .class_in .after .tag::before {
          border-color: transparent transparent transparent #f5b723; }
      .m-course_child .class_organization .class_box.recurrent .class_in .after_in .profile .name span {
        color: #f5b723; }
    .m-course_child .class_organization .class_ttl {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      padding: 30px;
      color: #fff;
      max-width: 95%;
      margin: 0 auto;
      position: relative;
      z-index: 10; }
      .m-course_child .class_organization .class_ttl h3 {
        font-size: 2.4rem;
        min-width: 300px; }
      .m-course_child .class_organization .class_ttl p {
        margin-bottom: 0; }
    .m-course_child .class_organization .class_in {
      margin-top: -30px;
      background: #fff;
      padding: 55px;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
      .m-course_child .class_organization .class_in h4 {
        font-size: 2rem;
        margin-bottom: 20px;
        color: #222; }
      .m-course_child .class_organization .class_in p {
        margin-bottom: 0; }
      .m-course_child .class_organization .class_in .before {
        width: 380px;
        padding: 30px 20px 30px 60px;
        position: relative; }
        .m-course_child .class_organization .class_in .before .tag {
          background: #bbb; }
          .m-course_child .class_organization .class_in .before .tag::before {
            border-color: transparent transparent transparent #bbb; }
      .m-course_child .class_organization .class_in .after {
        position: relative;
        width: 590px;
        margin-left: 60px;
        padding: 30px 0 0; }
        .m-course_child .class_organization .class_in .after .human {
          position: absolute;
          right: 0;
          bottom: 0; }
        .m-course_child .class_organization .class_in .after .after_in {
          width: 300px;
          margin-left: 70px; }
          .m-course_child .class_organization .class_in .after .after_in .profile {
            font-size: 1.3rem;
            margin-top: 20px; }
            .m-course_child .class_organization .class_in .after .after_in .profile .name {
              font-size: 2.0rem;
              display: block;
              color: #111; }
              .m-course_child .class_organization .class_in .after .after_in .profile .name span {
                font-size: 1.3rem;
                display: inline-block;
                vertical-align: middle;
                padding-left: 13px; }
      .m-course_child .class_organization .class_in .tag {
        position: absolute;
        left: -30px;
        top: 30px;
        color: #fff;
        display: inline-block;
        padding: 5px 10px; }
        .m-course_child .class_organization .class_in .tag::before {
          content: "";
          position: absolute;
          right: -10px;
          top: 0;
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 19px 0 19px 10px; }
  .m-course_child .passed {
    background: #f5f5f5;
    padding: 50px 0;
    margin-bottom: 60px; }
    .m-course_child .passed .passed_box {
      background: #fff;
      padding: 30px; }
    .m-course_child .passed h2 {
      font-size: 2rem;
      padding-bottom: 15px;
      margin-bottom: 15px;
      border-bottom: 1px solid #ccc; }
    .m-course_child .passed h3 {
      color: #43a71c;
      margin-bottom: 20px; }
    .m-course_child .passed .num {
      text-align: center;
      font-family: "din-demi";
      color: #43a71c;
      font-size: 10rem;
      line-height: 1;
      letter-spacing: -.5rem; }
      .m-course_child .passed .num small {
        font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Verdana, sans-serif;
        color: #333;
        font-size: 3.2rem;
        font-weight: bold; }
    .m-course_child .passed .woman_area {
      text-align: center;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center;
      margin-bottom: 20px; }
      .m-course_child .passed .woman_area .woman {
        display: inline-block;
        padding: 3px 15px;
        background: #43a71c;
        color: #fff;
        border-radius: 30px;
        font-size: 1.6rem; }
      .m-course_child .passed .woman_area .num {
        font-size: 3.8rem;
        margin: 0 10px;
        position: relative;
        top: 3px; }
      .m-course_child .passed .woman_area small {
        font-size: 1.6rem;
        color: #43a71c;
        font-weight: bold; }
    .m-course_child .passed .other {
      color: #fff;
      background: #999;
      border-radius: 20px;
      text-align: center;
      padding: 5px 10px;
      font-size: 1.3rem; }
  .m-course_child .schedule p {
    line-height: 1.2; }

.m-course_child2 {
  padding-top: 150px;
  background: url(../../img/archi1/archi1_head_bg.jpg) no-repeat right top; }
  .m-course_child2.architectural_course .course_child2_head .course_border .num {
    color: #00a2cb; }
  .m-course_child2.architectural_course .course_child2_head h3 {
    color: #00a2cb; }
    .m-course_child2.architectural_course .course_child2_head h3 span {
      border-bottom: 3px solid #00a2cb; }
  .m-course_child2.architectural_course .certification_job {
    background: url(../../img/archi_course/architectural_course_bg@2x.jpg); }
  .m-course_child2.architectural_course .voice::before {
    background: #00a2cb; }
  .m-course_child2.architectural_course .voice .voice_area .copy {
    background: #00a2cb; }
  .m-course_child2.architectural_course .voice .voice_area .name {
    border-right: 2px solid #00a2cb; }
  .m-course_child2.architectural_course .voice .voice_area h2 span::before {
    background: url(../../img/archi_course/voice_en@2x.png);
    background-size: cover; }
  .m-course_child2.interior_course .course_child2_head .course_border .num {
    color: #99cb00; }
  .m-course_child2.interior_course .course_child2_head h3 {
    color: #99cb00; }
    .m-course_child2.interior_course .course_child2_head h3 span {
      border-bottom: 3px solid #99cb00; }
  .m-course_child2.interior_course .certification_job {
    background: url(../../img/interior_course/interior_course_bg@2x.jpg);
    background-size: cover; }
  .m-course_child2.interior_course .voice::before {
    background: #99cb00; }
  .m-course_child2.interior_course .voice .voice_area .copy {
    background: #99cb00; }
  .m-course_child2.interior_course .voice .voice_area .name {
    border-right: 2px solid #99cb00; }
  .m-course_child2.interior_course .voice .voice_area h2 span::before {
    background: url(../../img/interior_course/voice_en@2x.png);
    background-size: cover; }
  .m-course_child2.archi2 .course_child2_head .course_border .num {
    color: #99cb00; }
  .m-course_child2.archi2 .course_child2_head h3 {
    color: #99cb00;
    border-bottom: 3px solid #99cb00; }
  .m-course_child2.archi2 .certification_job {
    background: url(../../img/archi2/archi2_bg02@2x.jpg);
    background-size: cover; }
    .m-course_child2.archi2 .certification_job h2 {
      color: #f5a823; }
      .m-course_child2.archi2 .certification_job h2 span {
        color: #333; }
  .m-course_child2.archi2 .voice::before {
    background: #f5a823;
    top: 150px; }
  .m-course_child2.archi2 .voice .voice_area {
    padding-bottom: 80px; }
    .m-course_child2.archi2 .voice .voice_area .copy {
      background: #f5a823; }
    .m-course_child2.archi2 .voice .voice_area .name {
      border-right: 2px solid #f5a823; }
    .m-course_child2.archi2 .voice .voice_area h2 span::before {
      background: url(../../img/archi2/voice_en@2x.png);
      background-size: cover; }
  .m-course_child2.archi2 .voice .qualification {
    border: 3px solid #f5a823; }
  .m-course_child2 .course_child2_head .course_border {
    border: 3px solid #333;
    text-align: center;
    width: 250px;
    height: 250px;
    position: relative;
    background: #fff; }
    .m-course_child2 .course_child2_head .course_border .border_in {
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      width: 100%; }
    .m-course_child2 .course_child2_head .course_border .num {
      font-family: "din-demi-m";
      text-align: center;
      display: inline-block;
      margin-bottom: 20px; }
      .m-course_child2 .course_child2_head .course_border .num strong {
        display: block;
        font-size: 8rem;
        line-height: 0.7;
        border-bottom: 3px solid #000;
        padding-bottom: 15px;
        margin-bottom: 2px;
        font-weight: 500; }
    .m-course_child2 .course_child2_head .course_border h2 {
      color: #111; }
  .m-course_child2 .course_child2_head h3 {
    font-size: 2.8rem;
    margin-bottom: 25px; }
    .m-course_child2 .course_child2_head h3 span {
      display: inline-block;
      padding-bottom: 7px; }
  .m-course_child2 .certification_job {
    background-size: cover;
    padding: 50px 0 60px;
    margin-bottom: 70px; }
    .m-course_child2 .certification_job h2 {
      text-align: center;
      color: #fff118;
      font-size: 2.6rem;
      margin-bottom: 25px; }
      .m-course_child2 .certification_job h2 span {
        font-family: "din-demi-m";
        display: block;
        color: #fff;
        font-size: 1.5rem;
        margin-bottom: 5px; }
    .m-course_child2 .certification_job .bg_white {
      border-radius: 5px;
      background: #fff;
      padding: 30px 40px; }
      .m-course_child2 .certification_job .bg_white.job ul li::before {
        color: #fa7f7f; }
      .m-course_child2 .certification_job .bg_white ul {
        margin-bottom: 30px;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
        .m-course_child2 .certification_job .bg_white ul li {
          position: relative;
          padding-left: 20px;
          margin-bottom: 10px;
          width: 50%; }
          .m-course_child2 .certification_job .bg_white ul li::before {
            content: "\f058";
            font-family: "Font Awesome 5 Pro";
            position: absolute;
            left: 0;
            color: #00a2cb; }
      .m-course_child2 .certification_job .bg_white dl dt {
        font-size: 1.6rem;
        color: #00a2cb;
        font-weight: bold;
        margin-bottom: 10px;
        position: relative; }
        .m-course_child2 .certification_job .bg_white dl dt::before {
          content: "";
          position: absolute;
          top: 50%;
          right: 0;
          width: 370px;
          height: 1px;
          background: #ccc; }
      .m-course_child2 .certification_job .bg_white dl dd ul {
        margin-bottom: 0; }
        .m-course_child2 .certification_job .bg_white dl dd ul li {
          width: auto;
          display: inline-block; }
      .m-course_child2 .certification_job .bg_white .attention {
        color: #d43c3c; }
  .m-course_child2 .pickup .pickup_box h3 {
    margin: 20px 0; }

/* 研究室・ゼミ */
.m-seminar .read {
  margin: 60px 0; }

.m-seminar .feature {
  background: url(../../img/seminar/feature_bg@2x.jpg);
  background-size: cover;
  padding: 50px 0;
  margin-bottom: 120px; }
  .m-seminar .feature h2 {
    color: #fff;
    text-align: center;
    margin-bottom: 40px; }
    .m-seminar .feature h2 span {
      font-size: 2.8rem;
      display: inline-block;
      border-bottom: 2px solid #00a2cb;
      padding-bottom: 5px; }
  .m-seminar .feature .feature_box {
    background: #fff;
    padding: 25px 40px;
    height: 100%; }
    .m-seminar .feature .feature_box .point_ttl {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      margin-bottom: 30px; }
      .m-seminar .feature .feature_box .point_ttl .point {
        font-family: "din-demi";
        font-size: 5rem;
        color: #00a2cb;
        text-align: center;
        line-height: 1; }
      .m-seminar .feature .feature_box .point_ttl small {
        font-size: 1.5rem;
        display: block;
        border-bottom: 1px solid #333;
        margin-bottom: 10px;
        padding-bottom: 10px; }
      .m-seminar .feature .feature_box .point_ttl .title {
        font-size: 2.8rem;
        font-weight: bold;
        margin-left: 25px;
        color: #111; }
    .m-seminar .feature .feature_box h3 {
      margin-bottom: 20px;
      color: #00a2cb; }

.m-seminar .labo .labo_list {
  border-bottom: 1px solid #111;
  padding-bottom: 40px;
  margin-bottom: 60px; }

.m-seminar .labo .labo_box h2 {
  background: #fff;
  padding: 30px 40px 30px 0;
  display: inline-block;
  margin-top: -30px; }
  .m-seminar .labo .labo_box h2.small {
    font-size: 3.0rem;
    letter-spacing: 1px; }

.m-seminar .labo .labo_box_small h2 {
  margin-top: 20px;
  font-size: 2.4rem;
  line-height: 1.5; }

.m-seminar .labo h2 {
  font-size: 3.5rem;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "MS P明朝", "MS 明朝", serif;
  font-weight: 500;
  padding-bottom: 30px;
  margin-bottom: 35px;
  position: relative;
  color: #111; }
  .m-seminar .labo h2::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 50px;
    height: 1px;
    background: #111; }

.m-seminar .labo .award {
  background: url(../../img/seminar/award_img@2x.jpg) no-repeat center left;
  background-size: 47px;
  padding-left: 50px;
  margin-left: 30px;
  margin-top: 10px; }

.m-seminar .labo h3 {
  margin-bottom: 25px;
  color: #111; }

.m-seminar .labo .teacher {
  margin-top: 30px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  .m-seminar .labo .teacher .thumb {
    width: 100px; }
  .m-seminar .labo .teacher dl {
    max-width: 300px;
    margin-left: 20px; }
    .m-seminar .labo .teacher dl dt {
      font-size: 1.8rem;
      font-weight: bold;
      margin-bottom: 10px; }
  .m-seminar .labo .teacher ul li {
    position: relative;
    padding-left: 15px;
    font-size: 1.3rem; }
    .m-seminar .labo .teacher ul li::before {
      content: "-";
      position: absolute;
      left: 0; }

/* 資格取得一覧 */
.m-licenses .second_architect_list {
  text-align: center; }
  .m-licenses .second_architect_list h3 {
    font-size: 2.4rem;
    margin-bottom: 15px;
    line-height: 1.3; }
    .m-licenses .second_architect_list h3 span {
      color: #00a2cb;
      font-size: 3rem; }

.m-licenses .licenses_menu {
  background: #f5f5f5;
  padding: 70px 0; }

/* 在学中の資格取得メリット */
.m-merit .merit_point {
  margin-bottom: 50px; }
  .m-merit .merit_point.interior .point_list .point_box h3 {
    color: #8dbb00; }
  .m-merit .merit_point.architect .point_list .point_box h3 {
    color: #00a2cb; }

.m-merit .mistake {
  background: #f5f5f5;
  padding: 50px 0; }
  .m-merit .mistake h2 {
    position: relative;
    background: #e94609;
    color: #fff;
    width: 110px;
    height: 110px;
    border-radius: 50%; }
    .m-merit .mistake h2 span {
      text-align: center;
      width: 100%;
      font-size: 2rem;
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%); }
  .m-merit .mistake .mistake_in {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    position: relative; }
  .m-merit .mistake .mistake_contents {
    width: 710px;
    margin-left: 35px; }
    .m-merit .mistake .mistake_contents h3 {
      font-size: 2.2rem;
      margin-bottom: 20px;
      color: #e94609; }
    .m-merit .mistake .mistake_contents p span {
      color: #e94609; }
  .m-merit .mistake .human {
    position: absolute;
    right: 0;
    bottom: -30px; }

.m-merit .second_architect_schedule {
  margin-top: 45px; }

/* 大学卒業資格取得システム */
.m-university .system_head {
  margin-bottom: 40px; }
  .m-university .system_head h2 {
    text-align: center;
    margin-bottom: 45px; }
    .m-university .system_head h2 i {
      display: block;
      margin-bottom: 25px; }
  .m-university .system_head .cricle_list .circle {
    background: #00a2cb;
    color: #fff;
    width: 230px;
    height: 230px;
    border-radius: 50%;
    position: relative;
    margin: 0 auto 30px; }
    .m-university .system_head .cricle_list .circle .title {
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      font-size: 2rem;
      width: 100%;
      text-align: center; }
      .m-university .system_head .cricle_list .circle .title strong {
        color: #fff118;
        font-size: 3rem; }
      .m-university .system_head .cricle_list .circle .title .num {
        font-size: 5rem;
        color: #fff;
        display: block;
        width: 60px;
        margin: 0 auto 10px;
        padding-bottom: 10px;
        margin-bottom: 20px;
        border-bottom: 2px solid #fff; }

.m-university .common_gray_contents .contents_in:nth-child(1) h2 {
  background: url(../../img/university/num_ttl_bg01@2x.jpg) no-repeat;
  background-size: cover; }

.m-university .common_gray_contents .contents_in:nth-child(2) h2 {
  background: url(../../img/university/num_ttl_bg02@2x.jpg) no-repeat;
  background-size: cover; }

.m-university .common_gray_contents .contents_in .fukidashi {
  border-color: #009fa3; }
  .m-university .common_gray_contents .contents_in .fukidashi::before {
    border-color: transparent transparent transparent #009fa3; }

.m-university .common_gray_contents .contents_in .number {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center; }
  .m-university .common_gray_contents .contents_in .number h3 {
    color: #009fa3; }
  .m-university .common_gray_contents .contents_in .number .num span {
    color: #009fa3; }

.m-university .support dl {
  overflow: hidden;
  margin-bottom: 30px; }
  .m-university .support dl dt {
    float: left;
    font-size: 5rem;
    font-family: "din-demi-m";
    color: #00a2cb;
    padding-left: 50px;
    position: relative;
    line-height: 1; }
    .m-university .support dl dt span {
      font-size: 1.5rem;
      border-top: 2px solid #00a2cb;
      border-bottom: 2px solid #00a2cb;
      position: absolute;
      top: 15px;
      left: 0;
      padding: 2px; }
  .m-university .support dl dd {
    overflow: hidden;
    padding: 0 0 0 35px; }
    .m-university .support dl dd strong {
      display: block;
      font-size: 2.4rem;
      margin-bottom: 20px;
      line-height: 1.2;
      color: #111; }
      .m-university .support dl dd strong span {
        font-size: 2.4rem;
        background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(30%, #fff118));
        background: linear-gradient(transparent 70%, #fff118 30%);
        display: inline-block;
        padding: 0 0 2px; }
    .m-university .support dl dd p {
      margin-bottom: 0; }

/* 一級建築士最短取得サポート */
.m-shortest .system_head {
  margin-bottom: 50px; }
  .m-shortest .system_head h2 {
    text-align: center; }
    .m-shortest .system_head h2 i {
      display: block;
      margin-bottom: 20px; }
  .m-shortest .system_head p {
    max-width: 840px;
    margin: 0 auto; }
  .m-shortest .system_head .grade_successful p {
    margin-bottom: 20px; }

.m-shortest .grade_successful {
  margin-top: 40px; }

.m-shortest .common_gray_contents .ttl02 {
  position: relative;
  background: none; }

.m-shortest .common_gray_contents h4 {
  color: #0069a5;
  font-size: 2.2rem;
  margin-bottom: 25px; }

.m-shortest .common_gray_contents dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center; }
  .m-shortest .common_gray_contents dl dt {
    font-family: "din-demi";
    font-size: 2.4rem;
    width: 50px;
    height: 50px;
    line-height: 2.2;
    background: #0069a5;
    color: #fff;
    border-radius: 50%;
    text-align: center; }
  .m-shortest .common_gray_contents dl dd {
    max-width: 480px;
    margin-left: 20px; }

.m-shortest .common_gray_contents .contents_in:nth-child(1) h2 {
  background: url(../../img/shortest/num_ttl_bg01@2x.jpg) no-repeat;
  background-size: cover; }

.m-shortest .common_gray_contents .contents_in:nth-child(2) h2 {
  background: url(../../img/shortest/num_ttl_bg02@2x.jpg) no-repeat;
  background-size: cover; }

.m-shortest .common_gray_contents .contents_in .fukidashi {
  border-color: #0069a5; }
  .m-shortest .common_gray_contents .contents_in .fukidashi::before {
    border-color: transparent transparent transparent #0069a5; }

.m-shortest .voice::before {
  background: #0069a5; }

.m-shortest .voice .voice_area .copy {
  background: #0069a5; }

.m-shortest .voice .voice_area .name {
  border-right: 2px solid #0069a5; }

.m-shortest .voice .voice_area h2 span::before {
  background: url(../../img/shortest/voice_en@2x.png);
  background-size: cover; }

/* 資格合格実績 */
.m-success {
  padding-top: 70px;
  background: #f5f5f5; }
  .m-success .first_grade_successful ul li.kasd {
    position: relative; }
    .m-success .first_grade_successful ul li.kasd::before, .m-success .first_grade_successful ul li.kasd::after {
      content: "";
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease; }
    .m-success .first_grade_successful ul li.kasd::before {
      background: #fff;
      z-index: 10; }
    .m-success .first_grade_successful ul li.kasd::after {
      -webkit-transition-delay: .3s;
      transition-delay: .3s;
      background: #fff118; }
  .m-success .first_grade_successful ul li.is-act::before, .m-success .first_grade_successful ul li.is-act::after {
    width: 0;
    left: 100%; }
  .m-success .second_grade_successful {
    position: relative; }
    .m-success .second_grade_successful::before {
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      width: 364px;
      height: 344px;
      background: url(../../img/success/japan_bg@2x.png) no-repeat;
      background-size: cover; }
    .m-success .second_grade_successful .anim_elm {
      opacity: 0;
      position: relative;
      top: 30px;
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease;
      -webkit-transform: scale(0.7);
      transform: scale(0.7); }
      .m-success .second_grade_successful .anim_elm.is-act {
        top: 0;
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1); }
    .m-success .second_grade_successful .successful_in {
      min-height: 300px; }
      .m-success .second_grade_successful .successful_in .no1 {
        display: inline-block;
        position: relative; }
        .m-success .second_grade_successful .successful_in .no1 small {
          font-size: 1.6rem;
          display: block;
          font-weight: bold;
          text-align: center; }
        .m-success .second_grade_successful .successful_in .no1 .japan {
          font-size: 3.2rem;
          font-weight: bold;
          border-bottom: 2px solid #fff;
          margin-bottom: 15px;
          padding-bottom: 10px;
          line-height: 1;
          display: inline-block; }
        .m-success .second_grade_successful .successful_in .no1 .no {
          display: block;
          font-family: "din-demi";
          font-size: 4.4rem;
          color: #fff118; }
        .m-success .second_grade_successful .successful_in .no1 .one {
          position: absolute;
          right: -40px;
          font-family: "din-demi";
          font-size: 12.2rem;
          top: 55px;
          color: #fff118; }
      .m-success .second_grade_successful .successful_in .number {
        position: absolute;
        right: 0;
        bottom: 0;
        background: none;
        padding-left: 0; }
      .m-success .second_grade_successful .successful_in h4 {
        font-size: 2rem;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        margin-bottom: 20px; }
        .m-success .second_grade_successful .successful_in h4 span {
          font-size: 5rem;
          color: #fff118;
          font-weight: bold;
          font-family: "din-demi"; }
      .m-success .second_grade_successful .successful_in .border_l {
        padding-left: 20px;
        border-left: 1px solid #fff; }
      .m-success .second_grade_successful .successful_in .border {
        border: 2px solid #fff;
        padding: 20px;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between; }
        .m-success .second_grade_successful .successful_in .border .text {
          font-size: 2rem;
          font-weight: bold; }
          .m-success .second_grade_successful .successful_in .border .text span {
            font-size: 5rem;
            color: #fff118;
            font-family: "din-demi"; }
          .m-success .second_grade_successful .successful_in .border .text small {
            display: block;
            color: #fff118;
            font-size: 1.4rem; }
  .m-success .successful_box {
    background: #fff;
    padding: 40px;
    margin-bottom: 30px; }
    .m-success .successful_box.small h3 {
      font-size: 2.2rem; }
    .m-success .successful_box.small .number {
      display: block; }
    .m-success .successful_box.small .successful_in {
      -webkit-box-align: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center; }
    .m-success .successful_box h3 {
      color: #111;
      border-bottom: 1px solid #00a2cb;
      padding-bottom: 15px;
      margin-bottom: 30px;
      font-size: 3rem; }
    .m-success .successful_box .number {
      font-weight: bold;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
      .m-success .successful_box .number span {
        font-size: 10rem;
        line-height: 1;
        font-family: "din-demi";
        color: #00a2cb; }
      .m-success .successful_box .number small {
        font-size: 3.2rem; }
    .m-success .successful_box .number_bg {
      background: url(../../img/success/successfull_img01@2x.png) no-repeat;
      background-size: 76px;
      padding-left: 100px; }
    .m-success .successful_box dl {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      font-weight: bold;
      margin-left: 20px; }
      .m-success .successful_box dl dt {
        background: #00a2cb;
        color: #fff;
        font-size: 1.6rem;
        border-radius: 30px;
        padding: 5px 10px;
        width: 135px;
        text-align: center; }
      .m-success .successful_box dl dd {
        margin-left: 5px; }
        .m-success .successful_box dl dd span {
          font-size: 3.5rem; }
        .m-success .successful_box dl dd .num {
          font-size: 3.5rem;
          letter-spacing: 0; }
    .m-success .successful_box ul {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
      .m-success .successful_box ul li .number {
        margin-left: 20px;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center; }
        .m-success .successful_box ul li .number span {
          font-size: 5rem; }
  .m-success .university_successful .number {
    background: url(../../img/success/successful_ico01@2x.png) no-repeat left center;
    background-size: 40px;
    padding-left: 70px; }
  .m-success .university_successful .rate {
    font-size: 2rem; }
    .m-success .university_successful .rate .num span {
      font-size: 10rem;
      line-height: 1;
      font-family: "din-demi";
      color: #fff118; }
    .m-success .university_successful .rate .num small {
      font-size: 3.2rem;
      font-family: "din-demi"; }
  .m-success .university_successful .successful_in {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center; }
  .m-success .university_successful .rate {
    margin-left: 60px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center; }
    .m-success .university_successful .rate .num {
      line-height: 1; }
    .m-success .university_successful .rate p {
      margin-right: 20px;
      margin-bottom: 0;
      text-align: right; }
      .m-success .university_successful .rate p span {
        font-size: 2rem; }

/* 資格合格者インタビュー */
.m-interview .interview_content {
  background: -webkit-gradient(linear, left top, right top, color-stop(38%, transparent), color-stop(38%, #f5f5f5));
  background: linear-gradient(to right, transparent 38%, #f5f5f5 38%);
  padding-top: 165px;
  margin-top: -70px;
  position: relative; }
  .m-interview .interview_content::before {
    content: "INTERVIEW";
    display: block;
    position: absolute;
    top: 50px;
    left: 40%;
    color: #fff;
    font-family: "din-demi-m";
    font-size: 20rem;
    font-style: italic;
    letter-spacing: 5px; }

.m-interview .top .row {
  margin-bottom: 110px; }

.m-interview .top .interview_text {
  margin: 0;
  padding-left: 20px;
  padding-top: 20px; }
  .m-interview .top .interview_text .mainttl {
    position: relative;
    left: -100px;
    margin-right: -100px;
    margin-bottom: 10px; }
    .m-interview .top .interview_text .mainttl .sub {
      font-size: 1.8rem;
      line-height: 45px; }
    .m-interview .top .interview_text .mainttl .en {
      color: #00a2cb;
      padding-left: 20px;
      display: inline-block;
      font-family: "din-demi-m";
      font-weight: 500;
      letter-spacing: 1px; }
    .m-interview .top .interview_text .mainttl h2 span {
      font-size: 2.4rem; }

.m-interview .interview_box {
  margin-bottom: 80px; }
  .m-interview .interview_box .img {
    position: relative;
    padding-left: 80px; }
    .m-interview .interview_box .img .en {
      position: absolute;
      top: 0;
      left: 40px;
      display: block;
      font-family: "din-demi-m";
      font-weight: bold;
      font-size: 1.3rem;
      -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl;
      color: #00a2cb;
      letter-spacing: 1.5px; }

.m-interview .interview_text {
  margin-top: -130px;
  position: relative; }
  .m-interview .interview_text .mainttl {
    margin-bottom: 45px; }
    .m-interview .interview_text .mainttl .sub {
      color: #fff;
      background: #00a2cb;
      display: inline-block;
      line-height: 37px;
      padding: 0 20px; }
    .m-interview .interview_text .mainttl h2 span {
      display: inline-block;
      background: #fff;
      color: #111;
      font-size: 2.2rem;
      padding: 17px 20px; }
  .m-interview .interview_text .name {
    text-align-last: right;
    font-size: 1.3rem; }
    .m-interview .interview_text .name strong {
      color: #111;
      font-size: 2.0rem;
      padding-left: 15px; }
  .m-interview .interview_text .license {
    border: 3px solid #00a2cb;
    padding: 25px;
    background: #fff;
    margin-top: 25px; }
    .m-interview .interview_text .license strong {
      color: #00a2cb;
      display: block;
      font-size: 2.0rem;
      margin-bottom: 15px; }
    .m-interview .interview_text .license p {
      margin-bottom: 0; }

.m-interview .other {
  background: #fff;
  padding: 25px 30px; }
  .m-interview .other strong {
    display: block;
    font-size: 2.0rem;
    color: #111;
    margin-bottom: 20px; }
  .m-interview .other .dot_list {
    margin-bottom: 0; }
    .m-interview .other .dot_list li {
      margin-bottom: 5px; }
  .m-interview .other span {
    display: block;
    margin-bottom: 10px;
    padding-left: 25px; }
  .m-interview .other .link a {
    color: #0069a5;
    text-decoration: underline;
    position: relative;
    padding-left: 25px; }
    .m-interview .other .link a::before {
      content: "\f061";
      display: block;
      font-family: "Font Awesome 5 Pro";
      position: absolute;
      top: -4px;
      left: 0;
      font-size: 1.4rem;
      color: #111; }
    .m-interview .other .link a:hover {
      text-decoration: none; }

/* 目指す資格 */
.m-goal .goal h2 {
  font-size: 2.8rem;
  line-height: 1.6;
  margin-bottom: 40px; }

.m-goal .goal .top {
  margin-bottom: 60px; }
  .m-goal .goal .top .table02 td:nth-child(2) {
    text-align: left; }

.m-goal .goal .bottom .ico_list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  .m-goal .goal .bottom .ico_list li {
    margin-right: 15px; }
    .m-goal .goal .bottom .ico_list li .ico {
      display: inline-block;
      vertical-align: text-top;
      line-height: 1.5; }

.m-goal .goal .bottom .disc {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  display: inline-block;
  position: relative; }
  .m-goal .goal .bottom .disc.kome::after {
    content: "※";
    position: absolute;
    top: -12px;
    right: -12px;
    font-size: 1.2rem;
    color: #444; }
  .m-goal .goal .bottom .disc.c01 {
    background: #e4007f; }
  .m-goal .goal .bottom .disc.c02 {
    background: #f39800; }

.m-goal .goal .bottom .table02 thead th {
  width: 9%;
  font-size: 1.2rem; }
  .m-goal .goal .bottom .table02 thead th:first-child {
    width: 2.5%; }
  .m-goal .goal .bottom .table02 thead th:nth-child(2) {
    width: 13%; }
  .m-goal .goal .bottom .table02 thead th:nth-child(5) {
    width: 18.5%; }
  .m-goal .goal .bottom .table02 thead th:nth-child(6) {
    width: 24%; }
  .m-goal .goal .bottom .table02 thead th:nth-child(7) {
    width: 24%; }

.m-goal .goal .bottom .table02 th, .m-goal .goal .bottom .table02 td {
  border: 1px solid #ccc;
  font-size: 1.3rem;
  padding: 10px 5px; }

.m-goal .goal .bottom .table02 td {
  text-align: left; }

.m-goal .goal .bottom .table02 .ttl {
  position: relative; }
  .m-goal .goal .bottom .table02 .ttl span {
    color: #fff;
    display: block;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    position: absolute;
    top: 0;
    left: 0;
    text-align: center;
    width: 1.8em;
    height: 100%;
    letter-spacing: 7px; }
  .m-goal .goal .bottom .table02 .ttl.t01 {
    background: #00a2cb; }
  .m-goal .goal .bottom .table02 .ttl.t02 {
    background: #99cb00; }

.m-goal .goal .bottom .table02 .tC {
  text-align: center; }

.m-goal .goal .bottom .table02 .ico {
  display: block;
  text-align: center;
  margin-bottom: 2px; }

.m-goal .goal .bottom .table02 .disc {
  margin: 0 auto 5px;
  display: block; }

.m-goal .goal .bottom .table02 .list {
  margin-top: 10px; }
  .m-goal .goal .bottom .table02 .list li {
    padding-left: 50px;
    position: relative;
    margin-bottom: 5px; }
    .m-goal .goal .bottom .table02 .list li strong {
      display: block;
      position: absolute;
      top: 0;
      left: 0; }

.m-goal .goal .bottom .table02 .sm_txt {
  font-size: 1.2rem; }

.m-goal .goal .bottom .table02 .blue {
  color: #00a2cb; }

.m-goal .goal .bottom .table02 .pink {
  color: #fa7f7f; }

/* 共通投稿 */
/* プライバシーポリシー */
.m-privacy ol {
  padding-left: 25px; }

/* 404 notfound */
.m-notfound .body {
  padding: 0 30px 30px; }

/* お問い合わせフォーム */
.m-contact {
  /*-------------------------------------
	    お電話でのお問い合わせ
	--------------------------------------*/
  /*-------------------------------------
	    フォームダイアログ
	--------------------------------------*/
  /*-------------------------------------
	    フォーム入力部
	--------------------------------------*/
  /*-------------------------------------
	    メールが届かない方へ
	--------------------------------------*/ }
  .m-contact .text_content {
    max-width: 910px;
    margin: 0 auto 60px; }
    .m-contact .text_content h3 {
      color: #111;
      font-size: 2.4rem;
      margin: 30px 0 20px; }
    .m-contact .text_content h4 {
      color: #111;
      font-size: 2.0rem;
      margin: 30px 0 15px; }
    .m-contact .text_content .pink {
      color: #fa7f7f; }
    .m-contact .text_content .blue {
      color: #00a2cb; }
    .m-contact .text_content .f_big {
      font-size: 1.7rem; }
    .m-contact .text_content .bd {
      border: 2px solid #ccc;
      padding: 30px;
      margin: 30px 0; }
    .m-contact .text_content .bg {
      background: #f8f6f2;
      padding: 30px;
      margin: 30px 0; }
    .m-contact .text_content a {
      text-decoration: underline;
      color: #00a2cb;
      position: relative;
      padding-left: 20px; }
      .m-contact .text_content a::before {
        content: "\f061";
        display: block;
        font-family: "Font Awesome 5 Pro";
        position: absolute;
        top: -3px;
        left: 0;
        font-size: 1.3rem;
        color: #222; }
      .m-contact .text_content a:hover {
        text-decoration: none; }
  .m-contact .form_content {
    max-width: 910px;
    margin: 0 auto 60px; }
    .m-contact .form_content h3 {
      font-size: 1.8rem;
      color: #111;
      margin-bottom: 20px; }
    .m-contact .form_content .table02 th, .m-contact .form_content .table02 td {
      text-align: left;
      padding: 15px 30px; }
    .m-contact .form_content .table02 th {
      width: 250px; }
    .m-contact .form_content .table02 select {
      font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Verdana, sans-serif;
      padding: 5px 10px; }
    .m-contact .form_content .table02 .require {
      font-size: 1.3rem;
      padding: 2px 7px;
      color: #fff;
      letter-spacing: 1px;
      margin: 0px 0px 0px 10px;
      border-radius: 11px;
      zoom: normal;
      background: #e94609;
      font-style: normal; }
    .m-contact .form_content .table02 .any {
      border: 2px solid #00a2cb;
      font-size: 1.3rem;
      padding: 2px 7px;
      color: #00a2cb;
      letter-spacing: 1px;
      margin: 0px 0px 0px 10px;
      border-radius: 11px;
      zoom: normal;
      font-style: normal; }
    .m-contact .form_content .one_column {
      margin: 50px 0; }
  .m-contact .contactTel {
    max-width: 898px;
    outline: solid 1px #ddd;
    border: 9px solid #00a2cb;
    margin: 30px auto;
    padding: 20px;
    text-align: center; }
    .m-contact .contactTel p {
      margin: 0; }
    .m-contact .contactTel .number {
      font-size: 2.4rem;
      font-weight: bold;
      margin: 15px 0; }
  .m-contact .mw_wp_form_confirm .contactTel {
    display: none; }
  .m-contact .contactInput, .m-contact .contactConfirm {
    max-width: 960px;
    margin: 20px auto; }
  .m-contact .contactComplete {
    max-width: 960px;
    margin: 20px auto; }
  .m-contact .contactForm {
    max-width: 960px;
    margin: 0 auto; }
    .m-contact .contactForm th, .m-contact .contactForm td {
      border-style: none;
      padding: 10px 0;
      vertical-align: top; }
    .m-contact .contactForm th {
      padding-right: 20px; }
    .m-contact .contactForm .require {
      margin-left: 10px;
      padding: 3px 4px;
      color: #fafafa;
      font-size: 9px;
      letter-spacing: 1px;
      margin: 0px 0px 0px 10px;
      line-height: 9px;
      border-radius: 3px;
      zoom: normal;
      background: #C9171E; }
  .m-contact .contactNotice {
    max-width: 920px;
    border: 1px solid #ddd;
    border-radius: 2px;
    padding: 20px;
    margin: 20px auto; }
    .m-contact .contactNotice .ttl {
      background: #f5f5f5;
      color: #fff;
      padding: 5px 20px;
      margin: -20px -20px 20px; }
    .m-contact .contactNotice p {
      margin: 0; }

/*-------------------------------------
    メディアクエリ用
--------------------------------------*/
/* スマホ
-------------------------------------------------- */
@media only screen and (max-width: 767px) {
  #page {
    min-width: 100%; }
  .container {
    width: 100%; }
  .table-responsive {
    width: 100%;
    margin-bottom: 15px;
    overflow-y: hidden;
    overflow-x: scroll; }
    .table-responsive tbody {
      width: auto;
      position: relative;
      overflow-x: auto;
      white-space: nowrap; }
    .table-responsive tr {
      vertical-align: top; }
  .table-responsive2 tr, .table-responsive2 th, .table-responsive2 td {
    display: block; }
  .img-responsive {
    width: 100%;
    margin-bottom: 15px;
    overflow-y: hidden;
    overflow-x: scroll; }
    .img-responsive .in {
      width: 700px; }
  .crumbs {
    overflow-x: scroll;
    white-space: nowrap; }
  /* スクロールバーの装飾 */
  .crumbs::-webkit-scrollbar {
    height: 10px; }
  .crumbs::-webkit-scrollbar-track {
    background-color: #FFF; }
  .crumbs::-webkit-scrollbar-thumb {
    background-color: rgba(238, 238, 238, 0.8); }
  .container-fluid, .container {
    padding-left: 15px;
    padding-right: 15px; }
  .row {
    margin-left: -5px;
    margin-right: -5px; }
  .col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-lg, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9 {
    padding-left: 5px;
    padding-right: 5px; }
  #page {
    min-width: 100%;
    font-size: 1.4rem; }
  #page.is-act {
    padding-top: 0; }
    #page.is-act .l-header {
      -webkit-animation: none;
      animation: none; }
      #page.is-act .l-header .header_logo {
        position: static; }
      #page.is-act .l-header .gnavi_wrapper {
        bottom: auto; }
      #page.is-act .l-header .gnavi {
        height: auto;
        width: 100%;
        padding: 25px; }
        #page.is-act .l-header .gnavi > li > a {
          padding: 0; }
      #page.is-act .l-header .mega_menu {
        top: 0; }
  .main_visual {
    margin-top: 56px;
    height: 520px; }
    .main_visual .swiper-slide {
      height: 400px; }
    .main_visual .main_copy {
      width: 25%;
      top: 6%;
      right: 15px; }
    .main_visual .main_bnr {
      bottom: -50px;
      right: 5px;
      width: 150px;
      height: 160px; }
      .main_visual .main_bnr a .schedule {
        bottom: 18px;
        left: 60px; }
        .main_visual .main_bnr a .schedule .date {
          font-size: 2.2rem; }
        .main_visual .main_bnr a .schedule .week {
          font-size: 1.1rem; }
    .main_visual .main_bnr2 {
      bottom: -50px;
      right: 5px;
      width: 150px;
      height: 160px; }
      .main_visual .main_bnr2 a .schedule {
        bottom: 18px;
        left: 60px; }
        .main_visual .main_bnr2 a .schedule .date {
          font-size: 2.2rem; }
        .main_visual .main_bnr2 a .schedule .week {
          font-size: 1.1rem; }
    .main_visual .control_area {
      width: 100%;
      position: static;
      height: 40px;
      line-height: 1.6;
      padding-left: 0; }
      .main_visual .control_area .swiper-pagination {
        text-align: center; }
    .main_visual .swiper-slide.slide01 a::before, .main_visual .swiper-slide.slide01 span::before {
      background-image: url(../../img/main/main_slide01_sp@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left bottom; }
    .main_visual .swiper-slide.slide02 a::before, .main_visual .swiper-slide.slide02 span::before {
      background-image: url(../../img/main/main_slide02_sp@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left bottom; }
    .main_visual .swiper-slide.slide03 a::before, .main_visual .swiper-slide.slide03 span::before {
      background-image: url(../../img/main/main_slide03_sp@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left bottom; }
    .main_visual .swiper-slide.slide04 a::before, .main_visual .swiper-slide.slide04 span::before {
      background-image: url(../../img/main/main_slide04_sp@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left bottom; }
    .main_visual .swiper-slide.slide05 a::before, .main_visual .swiper-slide.slide05 span::before {
      background-image: url(../../img/main/main_slide05_sp@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left bottom; }
    .main_visual .swiper-slide.slide06 a::before, .main_visual .swiper-slide.slide06 span::before {
      background-image: url(../../img/main/main_slide06_sp@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left bottom; }
    .main_visual .swiper-slide.slide07 a::before, .main_visual .swiper-slide.slide07 span::before {
      background-image: url(../../img/main/main_slide07_sp@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left bottom; }
    .main_visual .swiper-slide.slide08 a::before, .main_visual .swiper-slide.slide08 span::before {
      background-image: url(../../img/main/main_slide08_sp@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left bottom; }
    .main_visual .swiper-slide.slide09 a::before, .main_visual .swiper-slide.slide09 span::before {
      background-image: url(../../img/main/main_slide09_sp@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left bottom; }
    .main_visual .swiper-slide.slide10 a::before, .main_visual .swiper-slide.slide10 span::before {
      background-image: url(../../img/main/main_slide10_sp@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left bottom; }
    .main_visual .swiper-slide.slide11 a::before, .main_visual .swiper-slide.slide11 span::before {
      background-image: url(../../img/main/main_slide11_sp@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left bottom; }
    .main_visual .swiper-slide.slide12 a::before, .main_visual .swiper-slide.slide12 span::before {
      background-image: url(../../img/main/main_slide12_sp@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left bottom; }
    .main_visual .swiper-slide.slide13 a::before, .main_visual .swiper-slide.slide13 span::before {
      background-image: url(../../img/main/main_slide13_sp@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left bottom; }
    .main_visual .swiper-slide.slide14 a::before, .main_visual .swiper-slide.slide14 span::before {
      background-image: url(../../img/main/main_slide14_sp@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left bottom; }
    .main_visual .swiper-slide.slide15 a::before, .main_visual .swiper-slide.slide15 span::before {
      background-image: url(../../img/main/main_slide15_sp@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left bottom; }
    .main_visual .swiper-slide.slide16 a::before, .main_visual .swiper-slide.slide16 span::before {
      background-image: url(../../img/main/main_slide16_sp@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left bottom; }
    .main_visual .swiper-slide.slide17 a::before, .main_visual .swiper-slide.slide17 span::before {
      background-image: url(../../img/main/main_slide17_sp@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left bottom; }
    .main_visual .swiper-slide.slide18 a::before, .main_visual .swiper-slide.slide18 span::before {
      background-image: url(../../img/main/main_slide18_sp@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left bottom; }
    .main_visual .swiper-slide.slide19 a::before, .main_visual .swiper-slide.slide19 span::before {
      background-image: url(../../img/main/main_slide19_sp@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left bottom; }
    .main_visual .swiper-slide.slide20 a::before, .main_visual .swiper-slide.slide20 span::before {
      background-image: url(../../img/main/main_slide20_sp@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left bottom; }
    .main_visual .swiper-slide.slide21 a::before, .main_visual .swiper-slide.slide21 span::before {
      background-image: url(../../img/main/main_slide21_sp@2x.jpg);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left bottom; }
    .main_visual .swiper-slide.slide22 a::before, .main_visual .swiper-slide.slide22 span::before {
      background-image: url(../../img/main/main_slide22_sp@2x.png);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left bottom; }
    .main_visual .swiper-slide.slide23 a::before, .main_visual .swiper-slide.slide23 span::before {
      background-image: url(../../img/main/main_slide23_sp@2x.png);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left bottom; }
    .main_visual .swiper-slide.slide24 a::before, .main_visual .swiper-slide.slide24 span::before {
      background-image: url(../../img/main/main_slide24_sp@2x.png);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left bottom; }
    .main_visual .swiper-slide.slide25 a::before, .main_visual .swiper-slide.slide25 span::before {
      background-image: url(../../img/main/main_slide25_sp@2x.png);
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left bottom; }
  .lower_ttl_parent {
    margin-top: 55px;
    height: 250px;
    margin-bottom: 10px; }
    .lower_ttl_parent::before {
      top: 0;
      width: 90%;
      height: 160px; }
    .lower_ttl_parent::after {
      height: 130px; }
    .lower_ttl_parent .container {
      height: 100%; }
    .lower_ttl_parent h1 {
      position: absolute;
      left: 0;
      bottom: 0;
      width: 100%; }
      .lower_ttl_parent h1 .en {
        font-size: 1.4rem;
        margin-bottom: 10px; }
      .lower_ttl_parent h1 .jp {
        font-size: 3.8rem; }
        .lower_ttl_parent h1 .jp .deco {
          width: 60%; }
  .lower_ttl_child {
    margin-top: 55px;
    height: 150px;
    margin-bottom: 10px; }
    .lower_ttl_child h1 {
      margin-top: -20px; }
      .lower_ttl_child h1 .en {
        font-size: 1.2rem; }
      .lower_ttl_child h1 .jp {
        font-size: 2.6rem; }
        .lower_ttl_child h1 .jp .square {
          top: -5px;
          padding: 0px 8px;
          margin-right: 8px;
          font-size: 1.6rem; }
      .lower_ttl_child h1 .small {
        display: block;
        font-size: 1.2rem;
        padding-left: 0;
        padding-top: 5px; }
  .lower_ttl_special {
    margin-top: 55px;
    height: 200px;
    margin-bottom: 10px; }
    .lower_ttl_special.main_reason {
      padding-top: 40px; }
      .lower_ttl_special.main_reason h1 {
        max-width: 250px; }
    .lower_ttl_special.main_graduation_work {
      padding-top: 0; }
      .lower_ttl_special.main_graduation_work .container {
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center; }
        .lower_ttl_special.main_graduation_work .container h1 {
          padding-left: 0;
          width: 180px; }
    .lower_ttl_special.main_location {
      padding-top: 25px; }
      .lower_ttl_special.main_location h1 {
        max-width: 280px; }
    .lower_ttl_special.main_boast {
      padding-top: 50px; }
      .lower_ttl_special.main_boast h1 {
        max-width: 500px; }
    .lower_ttl_special.main_schedule {
      padding-top: 0; }
      .lower_ttl_special.main_schedule .container {
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center; }
        .lower_ttl_special.main_schedule .container h1 {
          max-width: 220px; }
    .lower_ttl_special.main_circle h1 img {
      height: 100%; }
    .lower_ttl_special.main_boarding h1 img {
      height: 100%; }
    .lower_ttl_special.main_closs {
      padding-top: 50px; }
      .lower_ttl_special.main_closs h1 {
        max-width: 320px; }
    .lower_ttl_special.main_current {
      padding-top: 20px; }
      .lower_ttl_special.main_current h1 {
        max-width: 320px; }
  .lower_ttl_opencampus {
    margin-top: 55px;
    height: 310px;
    margin-bottom: 20px;
    padding-top: 0; }
    .lower_ttl_opencampus h1 {
      max-width: 300px;
      margin: 0 auto;
      padding-top: 65px; }
  .lower_ttl_course {
    padding: 120px 0 100px;
    margin-bottom: 10px; }
    .lower_ttl_course .label_bg {
      top: 0; }
      .lower_ttl_course .label_bg::before {
        max-width: 70vw;
        width: 100%; }
    .lower_ttl_course .label_red {
      top: 0; }
      .lower_ttl_course .label_red::before {
        max-width: 70vw;
        width: 100%; }
    .lower_ttl_course.main_seminar {
      height: 300px; }
  .lower_ttl_course2 {
    padding: 120px 0 100px;
    margin-bottom: 10px; }
    .lower_ttl_course2 .label_bg {
      top: 0; }
      .lower_ttl_course2 .label_bg::before {
        max-width: 70vw;
        width: 100%; }
    .lower_ttl_course2 .label_red {
      top: 0; }
      .lower_ttl_course2 .label_red::before {
        max-width: 70vw;
        width: 100%; }
    .lower_ttl_course2.main_seminar {
      height: 300px; }
  .lower_ttl_message {
    height: 580px;
    margin: 55px auto 20px; }
    .lower_ttl_message::before {
      height: 300px; }
    .lower_ttl_message .front {
      padding: 0; }
      .lower_ttl_message .front .subttl {
        font-size: 1.6rem;
        margin-bottom: 25px;
        padding-left: 15px; }
        .lower_ttl_message .front .subttl::before {
          width: 20px; }
      .lower_ttl_message .front .offer {
        padding: 20px 15px;
        width: 90%; }
        .lower_ttl_message .front .offer .job {
          margin-bottom: 20px; }
          .lower_ttl_message .front .offer .job .ico {
            width: 70px;
            padding-right: 15px; }
          .lower_ttl_message .front .offer .job .company {
            font-size: 2.0rem;
            padding: 3px 15px; }
            .lower_ttl_message .front .offer .job .company span {
              font-size: 1.5rem; }
        .lower_ttl_message .front .offer h2 {
          font-size: 2.2rem; }
      .lower_ttl_message .front .license {
        padding: 15px;
        width: 90%;
        margin: 0;
        margin-left: auto; }
        .lower_ttl_message .front .license strong {
          font-size: 1.8rem;
          margin-bottom: 10px; }
        .lower_ttl_message .front .license p {
          font-size: 1.2rem; }
  .cat_list {
    position: relative; }
    .cat_list li {
      -webkit-box-flex: 1;
      -webkit-flex: 1;
      -ms-flex: 1;
      flex: 1;
      text-align: center; }
      .cat_list li span, .cat_list li a {
        font-size: 3vw;
        padding: 5px; }
  .news_list .news_box {
    display: block;
    margin-bottom: 30px; }
    .news_list .news_box time {
      padding-right: 40px; }
      .news_list .news_box time::before {
        width: 20px;
		margin-right:10px;
	}
    .news_list .news_box a {
      display: block;
      margin-top: 15px; }
  .news_list_archive .news_box a {
    padding: 10px; }
  .news_list_archive .news_box time {
    padding-right: 20px; }
  .careers_list .careers_box a .text {
    padding: 10px 15px; }
    .careers_list .careers_box a .text .company {
      margin-bottom: 10px;
      font-size: 1.2rem;
      line-height: 1.5; }
      .careers_list .careers_box a .text .company .label {
        font-size: 1.1rem;
        margin-bottom: 5px; }
        .careers_list .careers_box a .text .company .label .ico {
          padding-right: 5px; }
    .careers_list .careers_box a .text h3 {
      font-size: 1.9rem; }
    .careers_list .careers_box a .text .license {
      font-size: 1.2rem; }
  .topics_list .topics_box {
    margin-bottom: 30px; }
    .topics_list .topics_box a .thumb {
      margin-bottom: 20px; }
      .topics_list .topics_box a .thumb .time {
        padding-top: 14px;
        width: 70px;
        height: 60px;
        font-size: 1.6rem;
        top: 15px;
        left: -10px; }
        .topics_list .topics_box a .thumb .time span {
          font-size: 1.3rem; }
    .topics_list .topics_box a .text {
      margin-top: -40px;
      padding: 10px 15px; }
      .topics_list .topics_box a .text h3 {
        font-size: 1.5rem; }
  .bottom_menu {
    margin-top: 90px;
    padding-bottom: 50px;
    background-size: cover; }
    .bottom_menu h2 {
      font-size: 1.8rem;
      width: 170px;
      height: 60px;
      top: -30px; }
      .bottom_menu h2::after {
        top: -5px;
        left: 5px;
        border-width: 2px; }
    .bottom_menu .menu_list_text {
      margin-top: 0; }
  .menu_list_img {
    margin-bottom: 20px; }
    .menu_list_img .menu_box {
      margin-bottom: 10px; }
      .menu_list_img .menu_box span {
        width: 95%;
        top: -10px;
        padding: 10px;
        padding-right: 15px;
        font-size: 1.4rem;
        line-height: 1.6; }
        .menu_list_img .menu_box span::before {
          right: 5px;
          font-size: 1.3rem; }
  .menu_list_text .menu_box {
    margin-bottom: 15px; }
    .menu_list_text .menu_box a span {
      padding: 15px 20px 15px 25px;
      font-size: 3vw; }
      .menu_list_text .menu_box a span::before {
        font-size: 3vw;
        right: 10px; }
    .menu_list_text .menu_box a .square {
      font-size: 3vw;
      padding: 5px 7px;
      margin-right: 7px;
      vertical-align: middle; }
  .anchor_list {
    margin-bottom: 50px; }
    .anchor_list .anchor_box {
      margin-bottom: 15px; }
  .common_bnr {
    padding: 20px 0 30px; }
    .common_bnr .row > div:first-child {
      margin-bottom: 20px; }
  .more_btn {
    width: 85px;
    max-width: inherit; }
  .crumbs {
    position: static;
    margin-bottom: 20px; }
  .pagetop {
    position: absolute; }
    .pagetop a {
      border-bottom: 3px solid #0069a5;
      width: 35px;
      height: 40px;
      line-height: 40px;
      font-size: 1.4rem; }
  .common_gray_contents {
    padding-bottom: 30px; }
    .common_gray_contents h2 {
      position: relative;
      padding: 20px;
      font-size: 1.8rem;
      left: 0;
      width: 100%; }
    .common_gray_contents .contents_in {
      padding: 20px;
      margin-bottom: 40px; }
      .common_gray_contents .contents_in ul li {
        margin-bottom: 30px; }
    .common_gray_contents .fukidashi {
      padding: 20px;
      margin-bottom: 20px; }
      .common_gray_contents .fukidashi::before {
        display: none; }
      .common_gray_contents .fukidashi h3 {
        line-height: 1.4; }
    .common_gray_contents dl dt {
      width: 20vw;
      height: 20vw; }
    .common_gray_contents dl dd {
      max-width: 70%; }
  .voice .voice_area {
    padding: 10px; }
    .voice .voice_area .voice_in {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column; }
    .voice .voice_area .circle {
      margin: 0 auto 20px; }
    .voice .voice_area .name {
      position: relative;
      margin-bottom: 20px; }
    .voice .voice_area .copy {
      margin-left: 0;
      font-size: 1.8rem;
      padding: 10px; }
    .voice .voice_area .text {
      width: 100%; }
  .voice .qualification {
    padding: 15px; }
    .voice .qualification h3 {
      font-size: 1.8rem;
      margin-bottom: 15px; }
  .voice .stepup h2 {
    font-size: 2.0rem; }
  .voice .stepup .year_list {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
  .voice .stepup .year_box {
    width: 100%;
    padding: 50px 15px 20px;
    margin-bottom: 50px; }
    .voice .stepup .year_box::before {
      right: auto;
      top: auto;
      left: 50%;
      bottom: -52px;
      width: 5px;
      height: 50px; }
    .voice .stepup .year_box:nth-child(4) .human {
      right: -15px;
      bottom: -140px;
      width: 65px; }
    .voice .stepup .year_box .incorporation {
      left: 35%; }
    .voice .stepup .year_box .year_no {
      font-size: 6rem;
      top: -12px; }
      .voice .stepup .year_box .year_no small {
        font-size: 4rem; }
      .voice .stepup .year_box .year_no span {
        font-size: 2.0rem;
        margin-top: 0; }
    .voice .stepup .year_box .human {
      right: -15px;
      bottom: -100px;
      width: 100px; }
  .grade_successful {
    padding: 20px; }
    .grade_successful h3 {
      font-size: 2.2rem;
      line-height: 1.4; }
    .grade_successful dl {
      margin-bottom: 10px; }
      .grade_successful dl dd {
        padding-top: 10px; }
    .grade_successful .number span {
      font-size: 7rem; }
    .grade_successful .number dl dt {
      width: 100px;
      font-size: 1.4rem; }
    .grade_successful p br {
      display: none; }
    .grade_successful ul li.kasd {
      font-size: 1.8rem; }
  .ttl01 {
    font-size: 4.0rem;
    margin-bottom: 35px; }
    .ttl01::before, .ttl01::after {
      background-size: auto 12px;
      height: 12px;
      top: 10px; }
    .ttl01::before {
      margin-right: 100px; }
    .ttl01::after {
      margin-left: 100px; }
  .ttl02 {
    margin-bottom: 50px; }
    .ttl02::before {
      bottom: -10px;
      height: 20px;
      background-size: auto 20px; }
    .ttl02 span {
      font-size: 2.6rem;
      padding-bottom: 20px;
      line-height: 1.5; }
      .ttl02 span::before {
        width: 150px; }
      .ttl02 span::after {
        margin-left: -68px; }
  .ttl03 {
    font-size: 2.0rem;
    padding-bottom: 10px;
    margin-bottom: 25px; }
    .ttl03::before, .ttl03::after {
      bottom: 7px; }
  .ttl05 {
    font-size: 2.0rem;
    padding-bottom: 15px;
    margin-bottom: 20px; }
  .ttl06 {
    margin-bottom: 40px;
    line-height: 1.4; }
    .ttl06 span {
      font-size: 2rem;
      display: inline-block; }
  .subttl01 {
    font-size: 1.4rem;
    margin-bottom: 10px; }
  .table th, .table td {
    padding: 10px;
    line-height: 1.6; }
  .table02 th, .table02 td {
    padding: 10px;
    line-height: 1.6; }
  .anc {
    margin-top: -55px;
    padding-top: 55px; }
  .dropdown_list {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center; }
    .dropdown_list .dropdown {
      margin-left: 0; }
  .careers_support .support_box {
    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%; }
    .careers_support .support_box.color_b .top {
      margin: 0; }
      .careers_support .support_box.color_b .top::before {
        right: auto;
        bottom: -30px; }
      .careers_support .support_box.color_b .top .modal_btn a {
        color: #0069a5;
        background: #fff118; }
    .careers_support .support_box.color_p {
      -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
      flex-basis: 100%; }
      .careers_support .support_box.color_p .top {
        margin: 30px 0; }
        .careers_support .support_box.color_p .top .mainttl {
          margin-top: 0; }
        .careers_support .support_box.color_p .top .img {
          margin-bottom: 15px; }
        .careers_support .support_box.color_p .top p {
          font-size: 1.4rem; }
    .careers_support .support_box.color_y .top {
      margin: 0; }
      .careers_support .support_box.color_y .top::before {
        left: 50%;
        top: -60px; }
      .careers_support .support_box.color_y .top .modal_btn a {
        color: #fff;
        background: #00a2cb; }
    .careers_support .support_box .top {
      padding: 20px 15px;
      height: auto; }
      .careers_support .support_box .top::before {
        top: auto;
        left: 50%;
        -webkit-transform: none;
        transform: none;
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
        -webkit-transform-origin: 0 50%;
        transform-origin: 0 50%; }
      .careers_support .support_box .top .subttl {
        font-size: 1.6rem;
        padding: 4px;
        margin-bottom: 15px; }
      .careers_support .support_box .top .mainttl {
        font-size: 2.4rem;
        padding-left: 75px;
        background-position: 10px center;
        background-size: auto 80px;
        height: 80px; }
        .careers_support .support_box .top .mainttl span {
          font-size: 1.4rem;
          margin-top: 2px; }
      .careers_support .support_box .top dl {
        padding-top: 10px;
        margin-top: 15px;
        margin-bottom: 0; }
        .careers_support .support_box .top dl dt span {
          font-size: 1.2rem;
          width: 48px;
          line-height: 48px; }
        .careers_support .support_box .top dl dd {
          font-size: 1.4rem;
          padding: 7px 0 0 10px; }
      .careers_support .support_box .top .modal_btn {
        margin: 20px 0 0; }
        .careers_support .support_box .top .modal_btn a {
          text-align: center;
          display: block;
          padding: 8px;
          border-radius: 20px;
          font-weight: bold; }
    .careers_support .support_box .bottom {
      padding: 20px 15px;
      display: none; }
      .careers_support .support_box .bottom .subttl {
        font-size: 1.6rem;
        padding: 4px;
        margin-bottom: 20px; }
      .careers_support .support_box .bottom dl dt {
        font-size: 1.8rem;
        padding-left: 60px;
        margin-bottom: 10px; }
        .careers_support .support_box .bottom dl dt::before {
          font-size: 1.8rem;
          line-height: 48px;
          width: 48px; }
      .careers_support .support_box .bottom dl dd {
        padding-left: 60px;
        margin-bottom: 20px; }
  .modaal-content-container {
    padding: 20px 15px; }
  .inline-content {
    display: none; }
  .modal_support.color_b .subttl {
    background: #0069a5; }
  .modal_support.color_b dl dt {
    color: #0069a5; }
    .modal_support.color_b dl dt::before {
      background: #fff118;
      color: #0069a5; }
  .modal_support.color_y .subttl {
    background: #f5b723; }
  .modal_support.color_y dl dt {
    color: #f5b723; }
    .modal_support.color_y dl dt::before {
      background: #00a2cb;
      color: #fff; }
  .modal_support .subttl {
    color: #fff;
    display: block;
    text-align: center;
    border-radius: 20px;
    font-size: 1.6rem;
    padding: 10px;
    margin-bottom: 20px; }
  .modal_support dl dt {
    font-size: 1.7rem;
    padding-left: 50px;
    margin-bottom: 10px;
    position: relative;
    font-weight: bold;
    line-height: 1.5; }
    .modal_support dl dt.num1::before {
      content: "01"; }
    .modal_support dl dt.num2::before {
      content: "02"; }
    .modal_support dl dt::before {
      display: block;
      position: absolute;
      left: 0;
      top: -3px;
      font-family: "din-demi-m";
      text-align: center;
      border-radius: 100px;
      font-size: 1.6rem;
      line-height: 40px;
      width: 40px; }
  .modal_support dl dd {
    padding-left: 50px;
    margin-bottom: 20px;
    line-height: 1.5; }
  .modal_support .img {
    text-align: center; }
  .careers_probability {
    margin-bottom: 40px; }
    .careers_probability .text {
      -webkit-flex-basis: 100%;
      -ms-flex-preferred-size: 100%;
      flex-basis: 100%; }
      .careers_probability .text p {
        font-size: 2.0rem;
        margin-bottom: 20px;
        text-align: center; }
    .careers_probability .rate {
      -webkit-flex-basis: 60%;
      -ms-flex-preferred-size: 60%;
      flex-basis: 60%; }
      .careers_probability .rate strong {
        color: #00a2cb;
        font-size: 1.6rem; }
      .careers_probability .rate .num {
        font-size: 5.0rem; }
        .careers_probability .rate .num .big {
          font-size: 8.0rem; }
        .careers_probability .rate .num .sm {
          font-size: 4.5rem; }
    .careers_probability .img {
      -webkit-flex-basis: 40%;
      -ms-flex-preferred-size: 40%;
      flex-basis: 40%; }
  .point_list .point_box h3 {
    text-align: left;
    font-size: 1.8rem; }
    .point_list .point_box h3 br {
      display: none; }
  .grade_successful.first_grade_successful p strong {
    line-height: 1.4; }
  .grade_successful.first_grade_successful p span {
    font-size: 3.2rem; }
  .grade_successful.first_grade_successful ul li .i {
    padding-top: 3px; }
  .grade_successful.first_grade_successful ul li.kasd {
    font-size: 2rem; }
    .grade_successful.first_grade_successful ul li.kasd .num {
      padding-top: 5px; }
  .grade_successful .number {
    background-size: 57px;
    padding-left: 70px; }
  .l-header {
    position: fixed;
    top: 0;
    left: 0;
    background: #fff;
    z-index: 10000;
    padding-bottom: 0;
    padding-top: 0; }
    .l-header .header_logo {
      padding-left: 3%;
      width: 42%; }
      .l-header .header_logo .txt {
        display: none; }
    .l-header .gnavi {
      margin: 0;
      display: none;
      position: fixed;
      left: 0;
      top: 89px;
      overflow-y: auto;
      width: 100%;
      z-index: 1001;
      display: none;
      background: #00a2cb;
      color: #fff;
      padding-bottom: 0;
      z-index: 10000;
      padding: 25px;
      height: 530px;
      overflow-y: scroll; }
      .l-header .gnavi li {
        margin: 0;
        padding: 13px 0;
        border-bottom: 1px solid #fff; }
        .l-header .gnavi li a {
          color: #fff;
          font-size: 1.3rem;
          position: relative;
          padding: 0; }
          .l-header .gnavi li a::after {
            content: "\f105";
            font-family: "Font Awesome 5 Pro";
            position: absolute;
            right: 15px;
            font-weight: 300; }
    .l-header .sp_menu {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
    .l-header .ico_btn {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
      .l-header .ico_btn li {
        text-align: center;
        position: relative;
        border-left: 1px solid #fff; }
        .l-header .ico_btn li:first-child i {
          color: #fa7f7f; }
        .l-header .ico_btn li:first-child .text {
          line-height: 1.2em; }
        .l-header .ico_btn li a {
          display: block;
          height: 100%;
          padding: 0 5px;
          padding-top: 7px;
          background: #f5f5f5;
          border-bottom: 3px solid #00a2cb; }
        .l-header .ico_btn li i {
          font-size: 1.3rem;
          display: block;
          margin-bottom: 5px;
          color: #00a2cb; }
        .l-header .ico_btn li .text {
          font-size: 1.0rem;
          display: block;
          line-height: 2.4em;
          font-weight: bold;
          color: #222; }
    .l-header .mega_trg.is-act span::before {
      content: "\f106"; }
    .l-header .mega_trg span {
      position: relative;
      font-size: 1.3rem; }
      .l-header .mega_trg span::before {
        content: "\f107";
        position: absolute;
        right: 15px;
        font-family: "Font Awesome 5 Pro";
        font-weight: 300; }
    .l-header .mega_menu {
      position: relative;
      padding-top: 10px;
      padding-bottom: 0;
      background: transparent;
      top: 0; }
      .l-header .mega_menu .mega_menu_in {
        margin: 0 -5px; }
      .l-header .mega_menu ul {
        margin: 0;
        padding: 20px;
        background: #f5f5f5; }
        .l-header .mega_menu ul li {
          margin-bottom: 0;
          width: 100%;
          padding: 0;
          border-bottom: 1px solid #222 !important; }
          .l-header .mega_menu ul li.child a {
            padding-left: 15px; }
            .l-header .mega_menu ul li.child a::before {
              content: "‐";
              left: 0;
              top: 50%;
              -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
              width: auto;
              height: auto;
              background: none; }
          .l-header .mega_menu ul li a {
            padding: 13px 0;
            font-size: 1.3rem;
            background: #f5f5f5; }
            .l-header .mega_menu ul li a::before {
              content: none; }
            .l-header .mega_menu ul li a:hover {
              color: #111;
              background: #f5f5f5; }
              .l-header .mega_menu ul li a:hover::before {
                color: #111; }
  .l-footer .foot_copy {
    padding: 60px 30px; }
  .l-footer .foot_bg {
    margin-bottom: 20px; }
  .l-footer .foot_top {
    padding: 35px 0; }
  .l-footer .sns_list li {
    margin: 0 12px; }
  .l-footer .foot_bottom {
    padding: 0 0 30px; }
    .l-footer .foot_bottom ul {
      margin-bottom: 15px;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center; }
      .l-footer .foot_bottom ul li {
        margin: 0 5px; }
  .l-footer .copyright {
    bottom: -20px;
    font-size: 1.2rem;
    padding: 0 15px;
    line-height: 40px;
    height: 40px;
    width: 90%; }
  .m-index .index_news {
    margin-bottom: 30px; }
    .m-index .index_news h2 {
      font-size: 2.0rem;
      margin-bottom: 20px; }
    .m-index .index_news .news_in .cat_list {
      position: relative; }
  .m-index .index_results {
    padding-top: 60px;
    padding-bottom: 40px; }
    .m-index .index_results h2 {
      padding-left: 0px; }
    .m-index .index_results .results_btn {
      top: -50px;
      right: 0;
      width: 100px; }
    .m-index .index_results .index_results_box {
      display: block;
      padding-right: 0; }
      .m-index .index_results .index_results_box .results_box {
        margin: 0 auto 20px;
        width: 100%;
        max-width: 320px; }
        .m-index .index_results .index_results_box .results_box .point_up {
          text-align: left; }
          .m-index .index_results .index_results_box .results_box .point_up .top .jp {
            font-size: 2.5rem;
            padding-bottom: 10px;
            margin-bottom: 12px; }
            .m-index .index_results .index_results_box .results_box .point_up .top .jp::before {
              width: 48px;
              border-bottom: 2px solid #fff; }
          .m-index .index_results .index_results_box .results_box .point_up .top .no {
            font-size: 3.2rem; }
          .m-index .index_results .index_results_box .results_box .point_up .num {
            font-size: 2.3rem; }
          .m-index .index_results .index_results_box .results_box .point_up .ranking {
            font-size: 1.1rem;
            -webkit-box-pack: left;
            -webkit-justify-content: left;
            -ms-flex-pack: left;
            justify-content: left;
            margin-top: 4px; }
            .m-index .index_results .index_results_box .results_box .point_up .ranking::before {
              left: 18%; }
            .m-index .index_results .index_results_box .results_box .point_up .ranking span {
              line-height: 1.4; }
            .m-index .index_results .index_results_box .results_box .point_up .ranking .rank strong {
              font-size: 2.5rem; }
        .m-index .index_results .index_results_box .results_box.box01 .point_up {
          top: 23%;
          padding-left: 11%; }
          .m-index .index_results .index_results_box .results_box.box01 .point_up .num {
            margin-left: -3px; }
            .m-index .index_results .index_results_box .results_box.box01 .point_up .num strong {
              font-size: 9.5rem; }
        .m-index .index_results .index_results_box .results_box.box02 .point_up {
          top: 13%;
          padding-left: 6%; }
          .m-index .index_results .index_results_box .results_box.box02 .point_up .txt {
            font-size: 1.2rem;
            margin-bottom: 13px; }
          .m-index .index_results .index_results_box .results_box.box02 .point_up .num {
            -webkit-box-pack: start;
            -webkit-justify-content: flex-start;
            -ms-flex-pack: start;
            justify-content: flex-start; }
            .m-index .index_results .index_results_box .results_box.box02 .point_up .num strong {
              font-size: 7.5rem;
              padding-top: 15px; }
            .m-index .index_results .index_results_box .results_box.box02 .point_up .num .per {
              text-align: left;
              padding-left: 5px;
              letter-spacing: 0; }
              .m-index .index_results .index_results_box .results_box.box02 .point_up .num .per .sm {
                font-size: 1.2rem; }
        .m-index .index_results .index_results_box .results_box.box03 .point_up {
          padding-left: 10%;
          top: 25%; }
          .m-index .index_results .index_results_box .results_box.box03 .point_up .num strong {
            font-size: 7.0rem; }
          .m-index .index_results .index_results_box .results_box.box03 .point_up .sm {
            font-size: 1.2rem; }
  .m-index .index_opencampus {
    margin: 0 5px; }
    .m-index .index_opencampus .in {
      background: url(../../img/index/index_opencampus_bnr_sp@2x.png) no-repeat;
      background-size: 100%;
      width: 100%;
      height: 0;
      padding-top: 51.67%;
      margin: 50px auto 90px; }
      .m-index .index_opencampus .in .date_list {
        bottom: -40px;
        right: auto;
        left: 50%;
        -webkit-transform: translate(-50%, 0);
        transform: translate(-50%, 0);
        margin-bottom: 0; }
        .m-index .index_opencampus .in .date_list li {
          margin: 0 2px;
          width: 75px;
          height: 75px;
          padding-top: 20px; }
          .m-index .index_opencampus .in .date_list li .month {
            font-size: 2.1rem; }
          .m-index .index_opencampus .in .date_list li .day {
            font-size: 3.0rem; }
          .m-index .index_opencampus .in .date_list li .week {
            font-size: 1.2rem;
            padding-top: 0px;
            line-height: 1.5; }
  .m-index .index_course {
    margin-bottom: 30px; }
    .m-index .index_course .course_box {
      margin-bottom: 50px; }
      .m-index .index_course .course_box::before {
        position: static;
        width: 100%;
        height: 0;
        padding-top: 73.04%;
        background-size: 100%;
        margin-right: 0; }
      .m-index .index_course .course_box .text {
        margin-left: 0;
        padding-top: 30px;
        padding-left: 0; }
        .m-index .index_course .course_box .text h3 {
          font-size: 2.0rem; }
        .m-index .index_course .course_box .text p {
          margin-bottom: 20px; }
        .m-index .index_course .course_box .text .btn01 {
          margin-bottom: 20px; }
    .m-index .index_course .course_nav .nav_box {
      margin-bottom: 20px; }
      .m-index .index_course .course_nav .nav_box a h3 {
        font-size: 1.8rem;
        margin: 10px 0; }
  .m-index .index_careers {
    padding-bottom: 60px; }
    .m-index .index_careers .index_careers_rate .text_area {
      -webkit-flex-basis: 62%;
      -ms-flex-preferred-size: 62%;
      flex-basis: 62%; }
      .m-index .index_careers .index_careers_rate .text_area p {
        font-size: 1.4rem;
        line-height: 2.4; }
    .m-index .index_careers .index_careers_rate .rate_area {
      -webkit-flex-basis: 38%;
      -ms-flex-preferred-size: 38%;
      flex-basis: 38%;
      padding-left: 2%; }
      .m-index .index_careers .index_careers_rate .rate_area .text {
        font-size: 1.4rem; }
        .m-index .index_careers .index_careers_rate .rate_area .text .num {
          font-size: 2rem;
          padding-top: 15px;
          line-height: .6; }
          .m-index .index_careers .index_careers_rate .rate_area .text .num .big {
            font-size: 5rem; }
          .m-index .index_careers .index_careers_rate .rate_area .text .num .sm {
            font-size: 3.5rem; }
    .m-index .index_careers .careers_box {
      max-width: 200px; }
  .m-index .index_bnr_slide .slick-prev, .m-index .index_bnr_slide .slick-next {
    top: 40%; }
  .m-index .index_bnr_slide .slick-prev {
    left: 15px; }
  .m-index .index_bnr_slide .slick-next {
    right: 15px; }
  .m-about .about_box {
    margin-bottom: 30px; }
    .m-about .about_box .text {
      margin-top: -5px; }
      .m-about .about_box .text .num {
        font-size: 4.2rem;
        margin-bottom: 20px; }
        .m-about .about_box .text .num span::after {
          padding-bottom: 15px; }
      .m-about .about_box .text h3 {
        font-size: 2.0rem;
        margin-bottom: 20px; }
    .m-about .about_box.no01, .m-about .about_box.no02 {
      margin-bottom: 30px; }
      .m-about .about_box.no01::before, .m-about .about_box.no02::before {
        position: static;
        width: 100%;
        height: 0;
        padding-top: 42%; }
      .m-about .about_box.no01 .text, .m-about .about_box.no02 .text {
        width: 100%;
        top: 0; }
        .m-about .about_box.no01 .text .num, .m-about .about_box.no02 .text .num {
          text-align: left; }
        .m-about .about_box.no01 .text h3, .m-about .about_box.no02 .text h3 {
          font-size: 2.2rem; }
        .m-about .about_box.no01 .text p, .m-about .about_box.no02 .text p {
          padding: 0; }
    .m-about .about_box.no01::before {
      right: 0; }
    .m-about .about_box.no01 .text .num, .m-about .about_box.no01 .text h3 {
      margin-right: 0; }
    .m-about .about_box.no02 .text h3 {
      text-align: left; }
    .m-about .about_box.no03::before, .m-about .about_box.no04::before {
      height: 0;
      padding-top: 60%; }
    .m-about .about_box.no03 .text, .m-about .about_box.no04 .text {
      padding-left: 0;
      position: static; }
  .m-about .about_menu {
    padding: 60px 0 40px;
    margin-bottom: 30px; }
  .m-philosophy .idea .idea_head {
    margin-bottom: 40px; }
    .m-philosophy .idea .idea_head h3 {
      position: static;
      margin-bottom: 30px; }
    .m-philosophy .idea .idea_head .director {
      padding-right: 0; }
      .m-philosophy .idea .idea_head .director .pic {
        width: 120px; }
      .m-philosophy .idea .idea_head .director .name strong {
        font-size: 1.8rem;
        margin-bottom: 0; }
  .m-philosophy .history .head {
    height: 260px; }
    .m-philosophy .history .head h2 {
      width: 220px;
      margin: 0 auto; }
  .m-philosophy .history .tC {
    padding: 0 15px;
    text-align: left; }
  .m-philosophy .history .history_list h3::after {
    font-size: 10rem; }
  .m-philosophy .history .history_list h3 span {
    font-size: 3.0rem;
    width: 100%;
    padding-top: 5px; }
  .m-philosophy .history .history_list .box {
    display: block;
    padding: 20px 0 20px 40px; }
    .m-philosophy .history .history_list .box:first-of-type {
      padding-top: 40px; }
    .m-philosophy .history .history_list .box::before {
      left: 20px; }
    .m-philosophy .history .history_list .box .img {
      padding: 0 0 0 30px;
      width: 100%;
      text-align: left;
      top: 0; }
    .m-philosophy .history .history_list .box .box_in {
      width: 100%;
      left: -20px;
      padding: 0 0 0 50px; }
      .m-philosophy .history .history_list .box .box_in::before {
        width: 35px; }
      .m-philosophy .history .history_list .box .box_in .month {
        font-size: 3.0rem;
        margin-bottom: 10px;
        padding-top: 8px; }
      .m-philosophy .history .history_list .box .box_in p {
        margin-bottom: 10px; }
    .m-philosophy .history .history_list .box.reverse .box_in {
      text-align: left; }
      .m-philosophy .history .history_list .box.reverse .box_in::before, .m-philosophy .history .history_list .box.reverse .box_in::after {
        left: 0; }
      .m-philosophy .history .history_list .box.reverse .box_in::after {
        left: -6px; }
    .m-philosophy .history .history_list .box.noimg {
      padding-top: 20px; }
    .m-philosophy .history .history_list .box.end::after {
      left: 20px; }
  .m-philosophy .history .history_list .bottom {
    text-align: left; }
  .m-reason .head_text p {
    padding: 0; }
  .m-reason .reason_sec {
    margin-bottom: 30px; }
    .m-reason .reason_sec.sec03 .reason_head {
      padding-top: 180px; }
    .m-reason .reason_sec .profile .in {
      margin-bottom: 10px; }
      .m-reason .reason_sec .profile .in .name {
        font-size: 1.6rem;
        width: 40%; }
      .m-reason .reason_sec .profile .in p {
        width: 60%; }
    .m-reason .reason_sec .reason_head {
      padding-top: 150px;
      margin-bottom: 30px; }
      .m-reason .reason_sec .reason_head .img {
        position: static;
        margin-left: 0;
        margin-bottom: 10px;
        width: 100%; }
      .m-reason .reason_sec .reason_head .head_in .ttl {
        background-size: cover;
        padding: 20px 15px;
        width: 95%;
        margin: 0;
        position: absolute;
        top: 0;
        left: 0;
        text-align: left;
        margin-bottom: 0; }
        .m-reason .reason_sec .reason_head .head_in .ttl .num {
          margin-bottom: 15px;
          width: 70px; }
        .m-reason .reason_sec .reason_head .head_in .ttl h2 {
          font-size: 2.4rem;
          letter-spacing: 1px; }
        .m-reason .reason_sec .reason_head .head_in .ttl .kome_txt span {
          font-size: 1.2rem;
          padding: 0 7px; }
        .m-reason .reason_sec .reason_head .head_in .ttl .emp {
          padding: 1px 12px;
          margin-top: 7px; }
      .m-reason .reason_sec .reason_head .head_in .balloon {
        width: 90%;
        right: 0;
        margin: 0 auto; }
        .m-reason .reason_sec .reason_head .head_in .balloon .in {
          padding: 15px 15px 15px 20px;
          height: auto; }
          .m-reason .reason_sec .reason_head .head_in .balloon .in::before {
            right: auto;
            top: -31px;
            left: 50%;
            margin-left: -14.5px;
            bottom: -31px;
            -webkit-transform: rotate(90deg);
            transform: rotate(90deg); }
          .m-reason .reason_sec .reason_head .head_in .balloon .in .sub {
            margin-bottom: 5px; }
            .m-reason .reason_sec .reason_head .head_in .balloon .in .sub::before {
              left: -20px;
              width: 15px; }
          .m-reason .reason_sec .reason_head .head_in .balloon .in .multiply img {
            max-height: 30px; }
          .m-reason .reason_sec .reason_head .head_in .balloon .in strong {
            font-size: 1.8rem;
            margin-top: 15px; }
      .m-reason .reason_sec .reason_head .head_in .profile {
        width: 90%;
        right: 0;
        margin: 15px auto 0; }
      .m-reason .reason_sec .reason_head.reverse .img {
        margin-right: 0; }
      .m-reason .reason_sec .reason_head.reverse .head_in .ttl {
        padding: 20px 15px; }
      .m-reason .reason_sec .reason_head.reverse .head_in .balloon {
        left: auto;
        margin: 0 auto; }
        .m-reason .reason_sec .reason_head.reverse .head_in .balloon .in::before {
          left: 50%;
          -webkit-transform: rotate(90deg);
          transform: rotate(90deg); }
      .m-reason .reason_sec .reason_head.reverse .head_in .profile {
        left: auto;
        margin: 15px auto 0; }
        .m-reason .reason_sec .reason_head.reverse .head_in .profile .in {
          text-align: left; }
    .m-reason .reason_sec .reason_detail .in_img {
      margin-bottom: 20px; }
    .m-reason .reason_sec .reason_detail .detail {
      margin-bottom: 20px; }
  .m-accredited .overview dl {
    margin-bottom: 30px; }
    .m-accredited .overview dl dt {
      font-size: 1.8rem;
      margin-bottom: 10px; }
  .m-campusmap .map h2 {
    line-height: 1.4;
    margin-bottom: 25px; }
    .m-campusmap .map h2 span {
      font-size: 2.0rem;
      padding-bottom: 15px; }
  .m-campusmap .map p {
    margin-bottom: 30px; }
  .m-campusmap .map .map_area a span {
    font-size: 1.5rem;
    line-height: 40px;
    width: 40px; }
  .m-campusmap .bldg .ttl03 {
    margin-bottom: 50px; }
  .m-campusmap .bldg .bldg_box {
    margin-bottom: 30px; }
  .m-campusmap_child .ttl02 {
    margin-bottom: 50px; }
  .m-campusmap_child .detail {
    margin-bottom: 40px; }
    .m-campusmap_child .detail .head_box {
      margin-bottom: 30px; }
      .m-campusmap_child .detail .head_box .img {
        margin-bottom: 15px; }
    .m-campusmap_child .detail .facility_list .facility_box .img img {
      width: 100%; }
    .m-campusmap_child .detail .facility_list .facility_box h3 {
      padding: 10px 0; }
  .m-campusmap_child .bldg_list .bldg_box .box a {
    font-size: 1.5rem; }
  .m-access .sub_ttl {
    margin-bottom: 25px; }
    .m-access .sub_ttl span {
      font-size: 1.3rem;
      padding: 5px 25px; }
      .m-access .sub_ttl span strong {
        font-size: 2.0rem; }
  .m-access section {
    margin-bottom: 50px; }
  .m-access .g_map .detail iframe {
    height: 300px; }
  .m-access .g_map .detail p {
    margin-top: 5px; }
  .m-access .map {
    margin-bottom: 40px; }
    .m-access .map a span {
      font-size: 1.5rem;
      line-height: 40px;
      width: 40px; }
  .m-access .from, .m-access .route {
    margin-bottom: 40px; }
    .m-access .from h4, .m-access .route h4 {
      font-size: 1.8rem;
      margin-bottom: 10px; }
  .m-access .route .img {
    margin-bottom: 20px; }
  .m-access .point {
    display: block; }
    .m-access .point .point_box {
      width: 100%;
      height: auto;
      border-radius: 0;
      font-size: 1.6rem;
      margin: 0 auto 20px;
      font-size: 1.6rem;
      padding: 15px; }
      .m-access .point .point_box .num {
        font-size: 3.0rem;
        margin-bottom: 15px; }
        .m-access .point .point_box .num::after {
          padding-top: 10px;
          width: 30px; }
      .m-access .point .point_box p {
        margin-bottom: 0; }
  .m-access .bus .route {
    margin-bottom: 40px; }
  .m-access .bus .viewpoint .img {
    width: 100%;
    margin-bottom: 20px;
    text-align: center; }
  .m-access .bus .viewpoint .text {
    width: 100%; }
  .m-access .bus .bus_route {
    margin-top: 40px;
    margin-bottom: 0; }
    .m-access .bus .bus_route .route_in .in {
      width: 100%;
      margin-bottom: 30px; }
      .m-access .bus .bus_route .route_in .in h4 {
        font-size: 1.8rem;
        margin-bottom: 15px; }
      .m-access .bus .bus_route .route_in .in .btn01 a {
        margin: 0 auto; }
  .m-access .train .head h3 {
    line-height: 1.4;
    margin-bottom: 25px; }
    .m-access .train .head h3 span {
      font-size: 2.0rem;
      padding-bottom: 10px; }
  .m-access .train .departure_time .table th, .m-access .train .departure_time .table td {
    display: block;
    width: 100%;
    text-align: center; }
  .m-access .car {
    margin-bottom: 100px; }
  .m-route section {
    padding-top: 10px;
    margin-bottom: 60px; }
  .m-route .ttl02 {
    margin-bottom: 60px; }
  .m-route .route_box {
    margin-bottom: 50px; }
    .m-route .route_box::before {
      left: 5px;
      top: -25px;
      font-size: 2.5rem;
      padding-top: 7px;
      line-height: 43px;
      width: 50px; }
    .m-route .route_box .img {
      margin-bottom: 20px; }
      .m-route .route_box .img img {
        width: 100%; }
  .m-examination .examination_news {
    margin-bottom: 40px; }
    .m-examination .examination_news h2 {
      font-size: 2.0rem;
      margin-bottom: 20px; }
    .m-examination .examination_news .news_in .cat_list {
      position: relative; }
  .m-examination .examination_menu {
    padding: 60px 0 40px;
    margin-bottom: 30px; }
  .m-examination_child .examination_child_contents {
    padding-top: 30px; }
    .m-examination_child .examination_child_contents .ttl04 .square {
      font-size: 1.8rem; }
    .m-examination_child .examination_child_contents dl dt {
      font-size: 1.8rem;
      margin-bottom: 10px; }
    .m-examination_child .examination_child_contents .bd_area {
      padding: 15px; }
      .m-examination_child .examination_child_contents .bd_area .table {
        font-size: 1.3rem; }
        .m-examination_child .examination_child_contents .bd_area .table th {
          width: 100px; }
    .m-examination_child .examination_child_contents .head_txt {
      font-size: 1.6rem; }
    .m-examination_child .examination_child_contents .tuition_price {
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      padding-left: 0; }
      .m-examination_child .examination_child_contents .tuition_price .in {
        padding: 0 10px;
        width: 50%; }
    .m-examination_child .examination_child_contents .tuition_breakdown .dot_list {
      display: block; }
      .m-examination_child .examination_child_contents .tuition_breakdown .dot_list li {
        padding-right: 0; }
    .m-examination_child .examination_child_contents .table02 .ttl {
      margin-bottom: 0; }
    .m-examination_child .examination_child_contents .table02 .entry li strong {
      padding: 2px 10px; }
    .m-examination_child .examination_child_contents .table02 .document {
      width: auto; }
  .m-opencampus .opencampus_ttl {
    margin-bottom: 30px;
    font-size: 1.4rem; }
    .m-opencampus .opencampus_ttl::before {
      height: 25px;
      margin: 0 auto 20px; }
    .m-opencampus .opencampus_ttl .en {
      font-size: 4.2rem;
      letter-spacing: 1px;
      margin-bottom: 20px; }
  .m-opencampus .schedule {
    padding-bottom: 20px; }
    .m-opencampus .schedule .opencampus_ttl {
      top: -10px; }
    .m-opencampus .schedule .btn {
      margin-left: 10px;
      min-width: 110px; }
    .m-opencampus .schedule .schedule_table {
      margin-bottom: 30px; }
      .m-opencampus .schedule .schedule_table table td {
        padding: 10px; }
        .m-opencampus .schedule .schedule_table table td a::after {
          right: -12px; }
      .m-opencampus .schedule .schedule_table table tr:first-child td {
        padding-bottom: 10px; }
    .m-opencampus .schedule .schedule_in {
      padding: 15px;
      margin-bottom: 30px; }
      .m-opencampus .schedule .schedule_in h3 {
        font-size: 2.0rem;
        padding: 20px 15px 0;
        margin-bottom: 30px; }
        .m-opencampus .schedule .schedule_in h3::before {
          width: 90px; }
      .m-opencampus .schedule .schedule_in .top {
        margin-bottom: 30px; }
        .m-opencampus .schedule .schedule_in .top .text {
          width: 100%;
          padding-right: 0;
          margin-bottom: 30px; }
          .m-opencampus .schedule .schedule_in .top .text .plans h4 {
            font-size: 1.8rem; }
          .m-opencampus .schedule .schedule_in .top .text .plans ul li {
            font-size: 1.6rem; }
          .m-opencampus .schedule .schedule_in .top .text .gray {
            padding: 10px 15px; }
        .m-opencampus .schedule .schedule_in .top .img {
          width: 100%; }
          .m-opencampus .schedule .schedule_in .top .img img {
            width: 100%; }
      .m-opencampus .schedule .schedule_in .time .time_btn {
        padding: 15px; }
      .m-opencampus .schedule .schedule_in .time .js-time_in.is-act {
        max-height: 200vh; }
      .m-opencampus .schedule .schedule_in .time .time_in {
        margin: 0 15px; }
        .m-opencampus .schedule .schedule_in .time .time_in .time_schedule {
          padding-top: 20px;
          margin-bottom: 20px; }
          .m-opencampus .schedule .schedule_in .time .time_in .time_schedule .ttl_waku {
            width: 100%;
            padding-left: 0; }
          .m-opencampus .schedule .schedule_in .time .time_in .time_schedule .table_waku {
            width: 100%;
            border: none;
            padding-left: 0;
            margin-top: 20px; }
          .m-opencampus .schedule .schedule_in .time .time_in .time_schedule h4 {
            text-align: center;
            font-size: 2.5rem; }
          .m-opencampus .schedule .schedule_in .time .time_in .time_schedule table th {
            background: #f8f6f2; }
          .m-opencampus .schedule .schedule_in .time .time_in .time_schedule table th, .m-opencampus .schedule .schedule_in .time .time_in .time_schedule table td {
            padding: 5px;
            display: block;
            width: 100%;
            text-align: center; }
        .m-opencampus .schedule .schedule_in .time .time_in .close {
          width: 100%; }
  .m-opencampus .access .detail iframe {
    height: 300px; }
  .m-opencampus .access .detail p {
    margin-top: 5px; }
  .m-opencampus .contact .contact_in {
    padding: 0; }
    .m-opencampus .contact .contact_in .tel {
      padding-top: 20px;
      padding-bottom: 20px; }
      .m-opencampus .contact .contact_in .tel .num em {
        font-size: 1.6rem; }
      .m-opencampus .contact .contact_in .tel .num span {
        font-size: 3.2rem; }
    .m-opencampus .contact .contact_in .mail {
      border: none;
      border-top: 2px solid #222;
      border-bottom: 2px solid #222;
      padding-top: 20px;
      padding-bottom: 20px;
      height: auto; }
    .m-opencampus .contact .contact_in .btn {
      padding: 20px; }
      .m-opencampus .contact .contact_in .btn a {
        font-size: 1.6rem;
        line-height: 60px; }
  .m-campuslife .campuslife_menu {
    padding: 60px 0 40px;
    margin-bottom: 30px; }
    .m-campuslife .campuslife_menu .menu_list_img > div {
      margin-bottom: 0; }
  .m-girls .head {
    margin-bottom: 50px;
    padding: 0 15px; }
    .m-girls .head h1 {
      width: 150px;
      margin: 0 auto; }
    .m-girls .head .catch {
      margin: 30px 0 10px; }
    .m-girls .head p {
      font-size: 1.4rem;
      line-height: 2.2; }
  .m-girls .cross {
    margin-bottom: 60px;
    background-position: 20% center; }
    .m-girls .cross .container {
      padding: 20px 15px;
      height: auto; }
    .m-girls .cross .cross_box {
      width: 100%;
      padding: 30px 15px;
      position: static;
      -webkit-transform: none;
      transform: none;
      background: rgba(255, 255, 255, 0.8); }
      .m-girls .cross .cross_box strong {
        font-size: 1.6rem; }
      .m-girls .cross .cross_box .img {
        width: 230px;
        margin: 15px auto 25px; }
  .m-girls .current {
    margin-bottom: 30px; }
    .m-girls .current .row > div {
      margin-bottom: 20px; }
      .m-girls .current .row > div:last-child .current_box .text {
        margin-left: 0;
        padding: 15px 25px 0 0; }
    .m-girls .current h2 {
      background-size: auto 15px;
      margin-bottom: 30px; }
    .m-girls .current .current_box .text {
      margin-top: -50px;
      width: 90%;
      padding: 15px 0 0 25px; }
      .m-girls .current .current_box .text h3 {
        font-size: 2.2rem;
        margin-bottom: 10px; }
      .m-girls .current .current_box .text .name {
        font-size: 1.4rem; }
        .m-girls .current .current_box .text .name strong {
          font-size: 1.7rem;
          margin-bottom: 5px; }
        .m-girls .current .current_box .text .name span {
          font-size: 1.2rem; }
  .m-girls .message {
    background-size: 200% 100%; }
    .m-girls .message .ttl {
      padding-top: 70px;
      margin-bottom: 30px; }
      .m-girls .message .ttl h2 {
        width: 250px;
        margin: 0 auto 30px; }
      .m-girls .message .ttl p {
        width: 100%; }
    .m-girls .message .careers_list .careers_box {
      padding: 0 5px; }
  .m-closs .member {
    margin-bottom: 40px; }
    .m-closs .member h2 {
      margin-bottom: 30px; }
      .m-closs .member h2::before, .m-closs .member h2::after {
        width: 25%; }
    .m-closs .member .member_box {
      margin-bottom: 30px; }
      .m-closs .member .member_box .img {
        margin-bottom: 15px; }
      .m-closs .member .member_box h3 {
        font-size: 1.8rem; }
      .m-closs .member .member_box .from {
        font-size: 1.2rem;
        margin-bottom: 10px;
        margin-top: 7px;
        line-height: 1.4; }
      .m-closs .member .member_box .course {
        font-size: 1.0rem;
        width: 100%;
        padding: 5px 7px;
        line-height: 1.4; }
  .m-closs .closs {
    margin-bottom: 50px; }
    .m-closs .closs.closs1::after {
      height: 200px; }
    .m-closs .closs.closs3 .row {
      margin: 0 -5px; }
      .m-closs .closs.closs3 .row > div {
        padding: 0 5px; }
        .m-closs .closs.closs3 .row > div .img {
          margin-bottom: 30px; }
          .m-closs .closs.closs3 .row > div .img img {
            width: 100%; }
    .m-closs .closs.closs3 .closs_in .text .container {
      padding-left: 15px; }
    .m-closs .closs.closs3 .closs_in .img {
      margin-left: 0; }
    .m-closs .closs .main_ttl {
      margin-bottom: 30px;
      background-size: auto 100%; }
      .m-closs .closs .main_ttl::before {
        right: 0;
        margin-right: 0; }
      .m-closs .closs .main_ttl h3 {
        padding: 15px;
        width: 100%; }
        .m-closs .closs .main_ttl h3 strong {
          font-size: 2.4rem; }
          .m-closs .closs .main_ttl h3 strong span {
            width: 80% !important;
            right: 20px; }
    .m-closs .closs dl {
      margin-bottom: 20px; }
    .m-closs .closs .twin_text {
      margin: 0 -5px; }
      .m-closs .closs .twin_text > div {
        padding: 0 5px; }
        .m-closs .closs .twin_text > div:last-child {
          border-left: none; }
    .m-closs .closs .closs_in {
      margin-bottom: 30px; }
      .m-closs .closs .closs_in .text .container {
        padding-right: 15px; }
      .m-closs .closs .closs_in .img {
        position: static;
        margin-left: 0;
        width: 100%;
        margin-bottom: 30px; }
        .m-closs .closs .closs_in .img img {
          width: 100%; }
  .m-closs .girls_bnr {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    .m-closs .girls_bnr .bnr {
      padding: 10px 15px; }
      .m-closs .girls_bnr .bnr img {
        width: 100%; }
  .m-current .interview .wrapper {
    padding-bottom: 40px; }
  .m-current .interview .head {
    margin-bottom: 60px; }
    .m-current .interview .head .container {
      height: 100%;
      padding: 0; }
      .m-current .interview .head .container:before {
        left: 0;
        width: 500px;
        height: 250px;
        background-position: -50px center; }
    .m-current .interview .head .head_in {
      padding: 275px 15px 0;
      width: 100%;
      margin-bottom: 0; }
      .m-current .interview .head .head_in .subttl {
        font-size: 1.4rem;
        margin-bottom: 10px;
        padding-left: 0;
        text-align: center; }
      .m-current .interview .head .head_in h2 {
        margin-bottom: 20px; }
      .m-current .interview .head .head_in .info {
        margin-left: 0; }
        .m-current .interview .head .head_in .info strong {
          font-size: 1.8rem;
          margin-bottom: 7px; }
        .m-current .interview .head .head_in .info p span {
          font-size: 1.2rem; }
      .m-current .interview .head .head_in .license {
        margin-left: 0;
        padding: 15px;
        width: 100%; }
        .m-current .interview .head .head_in .license strong {
          font-size: 1.6rem;
          margin-bottom: 5px; }
  .m-current .interview .detail .timeline .timeline_in {
    padding-left: 100px; }
    .m-current .interview .detail .timeline .timeline_in .subttl::before {
      top: 15%; }
    .m-current .interview .detail .timeline .timeline_in .subttl::after {
      height: 85%; }
    .m-current .interview .detail .timeline .timeline_in .text {
      padding-right: 0; }
      .m-current .interview .detail .timeline .timeline_in .text h3 span {
        font-size: 1.6rem;
        padding: 10px 15px; }
        .m-current .interview .detail .timeline .timeline_in .text h3 span::before, .m-current .interview .detail .timeline .timeline_in .text h3 span::after {
          width: 20px;
          height: 20px; }
  .m-current .interview .detail .imglist li {
    margin-bottom: 20px; }
    .m-current .interview .detail .imglist li img {
      width: 100%; }
  .m-current .interview .btn01 {
    margin: 20px 15px; }
  .m-current .interview.second_interview .wrapper {
    padding-top: 70px; }
  .m-current .interview.second_interview .head .container:before {
    right: 0;
    background-position: 90px center; }
  .m-current .interview.second_interview .head .head_in .subttl {
    padding-left: 0; }
  .m-current .interview.second_interview .head .head_in h2 {
    padding-left: 0; }
  .m-current .girls_bnr {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 50px; }
    .m-current .girls_bnr .bnr {
      padding: 10px 15px; }
      .m-current .girls_bnr .bnr img {
        width: 100%; }
  .m-snap .question {
    background-size: 100%;
    padding: 30px 15px;
    margin-bottom: 160px; }
    .m-snap .question .question_in .title {
      width: 100%;
      padding: 20px 0 20px 55px; }
      .m-snap .question .question_in .title::before {
        height: 100px; }
      .m-snap .question .question_in .title span {
        font-size: 1.5rem;
        left: 10px;
        line-height: 1.4; }
      .m-snap .question .question_in .title h2 {
        font-size: 10rem; }
    .m-snap .question .question_in .box {
      padding: 20px 15px 0;
      width: 100%;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
      .m-snap .question .question_in .box ol {
        padding-right: 0; }
        .m-snap .question .question_in .box ol li {
          padding-left: 35px; }
          .m-snap .question .question_in .box ol li::before {
            line-height: 20px;
            padding-top: 5px; }
  .m-snap .snap_content {
    margin-bottom: 120px; }
    .m-snap .snap_content::after {
      height: 300px;
      top: 80%; }
    .m-snap .snap_content.first .pic {
      margin-top: 120px; }
      .m-snap .snap_content.first .pic .title {
        top: -120px; }
    .m-snap .snap_content.reverse .pic {
      padding-right: 0; }
      .m-snap .snap_content.reverse .pic .title span {
        right: -10px;
        left: auto; }
      .m-snap .snap_content.reverse .pic .title h2 {
        padding-right: 20px; }
    .m-snap .snap_content.reverse .box {
      left: 0; }
    .m-snap .snap_content .pic {
      padding-left: 0;
      margin-top: 100px; }
      .m-snap .snap_content .pic .title {
        top: -100px; }
        .m-snap .snap_content .pic .title span {
          font-size: 1.8rem;
          left: -10px;
          top: 0; }
          .m-snap .snap_content .pic .title span::after {
            height: 150px;
            margin-top: 10px; }
        .m-snap .snap_content .pic .title h2 {
          font-size: 2.0rem;
          padding: 30px 0 0 20px; }
    .m-snap .snap_content .box {
      padding: 15px;
      width: 100%;
      position: relative;
      -webkit-transform: none;
      transform: none;
      right: auto;
      top: -20px; }
      .m-snap .snap_content .box.ml {
        margin-left: 0; }
      .m-snap .snap_content .box h3 {
        margin-bottom: 15px;
        padding-left: 35px; }
        .m-snap .snap_content .box h3::before {
          top: 5px;
          line-height: 20px;
          padding-top: 5px; }
        .m-snap .snap_content .box h3 span {
          font-size: 1.9rem; }
      .m-snap .snap_content .box ol {
        margin-bottom: 15px; }
      .m-snap .snap_content .box .name {
        padding-top: 15px; }
        .m-snap .snap_content .box .name strong {
          display: block;
          font-size: 1.9rem;
          padding-right: 0; }
    .m-snap .snap_content .bottom {
      margin-top: 0; }
      .m-snap .snap_content .bottom .box {
        margin-bottom: 10px; }
  .m-graduation_work .work_content {
    margin-bottom: 80px; }
    .m-graduation_work .work_content:nth-child(even) .content .content_in {
      padding-right: 0; }
    .m-graduation_work .work_content .img {
      width: 100%; }
      .m-graduation_work .work_content .img .top {
        margin-bottom: 10px; }
    .m-graduation_work .work_content .content {
      width: 100%;
      padding: 0 15px;
      margin-top: 20px; }
      .m-graduation_work .work_content .content .content_in {
        width: 100%;
        padding: 0; }
    .m-graduation_work .work_content h2 {
      font-size: 2.8rem; }
    .m-graduation_work .work_content .sub_ttl {
      font-size: 1.9rem; }
    .m-graduation_work .work_content .career {
      padding: 5px 0 5px 15px;
      margin: 20px 0; }
    .m-graduation_work .work_content .concept {
      margin-bottom: 30px; }
    .m-graduation_work .work_content .info {
      padding: 15px;
      -webkit-box-align: start;
      -webkit-align-items: flex-start;
      -ms-flex-align: start;
      align-items: flex-start; }
      .m-graduation_work .work_content .info .thumb {
        padding-right: 15px; }
      .m-graduation_work .work_content .info .text h3 {
        margin-bottom: 10px; }
        .m-graduation_work .work_content .info .text h3 span {
          display: block;
          padding-left: 0;
          margin-top: 3px; }
      .m-graduation_work .work_content .info .text p {
        font-size: 1.2rem;
        line-height: 1.6; }
  .m-location .area_map.kyoto {
    margin-top: 30px; }
  .m-location .area_map .map {
    margin-bottom: 50px; }
  .m-location .area_map .location_box {
    margin-bottom: 50px; }
    .m-location .area_map .location_box::before {
      left: 5px;
      top: -25px;
      font-size: 2.5rem;
      padding-top: 7px;
      line-height: 43px;
      width: 50px; }
    .m-location .area_map .location_box h3 {
      margin: 12px 0 10px; }
  .m-boast .boast_content {
    padding: 60px 0 30px; }
    .m-boast .boast_content .boast_box {
      padding: 30px 20px 15px; }
      .m-boast .boast_content .boast_box h2 span {
        left: -20px;
        font-size: 1.0rem; }
      .m-boast .boast_content .boast_box .comment {
        height: auto;
        font-size: 1.3rem;
        padding: 10px 15px;
        width: 70%; }
        .m-boast .boast_content .boast_box .comment::before {
          top: 0px;
          left: 5px;
          font-size: 1.6rem; }
  .m-schedule .schedule_list {
    margin-bottom: 30px; }
    .m-schedule .schedule_list .month_list::before {
      left: 30%; }
    .m-schedule .schedule_list h2 {
      width: 20%;
      -webkit-box-align: start;
      -webkit-align-items: flex-start;
      -ms-flex-align: start;
      align-items: flex-start;
      padding-top: 16px; }
      .m-schedule .schedule_list h2::before {
        width: 20px;
        top: 30px; }
    .m-schedule .schedule_list .month {
      width: 20%; }
      .m-schedule .schedule_list .month span {
        font-size: 3.5rem;
        line-height: 50px;
        width: 60px;
        padding-top: 10px; }
    .m-schedule .schedule_list ul {
      padding: 10px 0 0 30px; }
  .m-schedule .img_list li {
    margin-bottom: 20px; }
    .m-schedule .img_list li:nth-child(-n+2) {
      margin-bottom: 30px; }
    .m-schedule .img_list li:first-child, .m-schedule .img_list li:nth-child(3), .m-schedule .img_list li:nth-child(5) {
      top: 50px; }
    .m-schedule .img_list li:last-child img {
      width: 48%; }
  .m-circle .circle_box {
    margin-bottom: 50px; }
    .m-circle .circle_box .en {
      top: 45px;
      left: 13px;
      text-align: center; }
      .m-circle .circle_box .en span {
        font-size: 8rem;
        margin-bottom: 10px;
        right: 0; }
    .m-circle .circle_box .box {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      position: relative; }
    .m-circle .circle_box .text {
      width: 70%;
      padding-top: 15px;
      padding-left: 20px; }
      .m-circle .circle_box .text::before {
        height: 80px; }
      .m-circle .circle_box .text h2 {
        margin-bottom: 15px; }
        .m-circle .circle_box .text h2 span {
          font-size: 2.2rem;
          display: inline;
          padding: 0;
          line-height: 1.6; }
      .m-circle .circle_box .text .txt {
        margin-bottom: 10px; }
      .m-circle .circle_box .text .profile {
        padding-top: 10px; }
    .m-circle .circle_box .img {
      width: 30%;
      padding-top: 120px; }
  .m-circle .circle_other .in {
    padding: 15px 15px 20px; }
  .m-circle .circle_other ul {
    margin: 0 -5px; }
    .m-circle .circle_other ul li {
      width: 50%;
      padding: 0 5px; }
      .m-circle .circle_other ul li span {
        padding: 5px 0 5px 20px; }
        .m-circle .circle_other ul li span::before {
          left: 5px;
          top: 14px; }
  .m-faq .faq {
    margin-bottom: 60px;
    padding-top: 0; }
  .m-faq .faq_box h3 {
    font-size: 1.5rem;
    padding: 15px 40px 15px 70px; }
    .m-faq .faq_box h3 .ico {
      font-size: 2.6rem;
      width: 50px; }
    .m-faq .faq_box h3::after {
      right: 15px;
      top: 15px;
      font-size: 1.6rem; }
  .m-faq .faq_box .faq_in {
    padding: 20px 15px 10px 70px; }
    .m-faq .faq_box .faq_in .ico {
      top: 45px;
      font-size: 10rem; }
    .m-faq .faq_box .faq_in h4 {
      font-size: 1.6rem;
      margin-bottom: 10px; }
    .m-faq .faq_box .faq_in .table02 th, .m-faq .faq_box .faq_in .table02 td {
      padding: 5px;
      font-size: 1.3rem; }
  .m-boarding .dormitory .head h3 {
    margin-bottom: 20px; }
    .m-boarding .dormitory .head h3 span {
      font-size: 2.4rem; }
  .m-boarding .dormitory .dormitory_box {
    margin-bottom: 30px; }
    .m-boarding .dormitory .dormitory_box .badge {
      right: -10px;
      width: 80px; }
    .m-boarding .dormitory .dormitory_box .img .label li {
      font-size: 1.3rem;
      padding: 5px 7px; }
    .m-boarding .dormitory .dormitory_box strong {
      font-size: 1.5rem; }
      .m-boarding .dormitory .dormitory_box strong::before {
        line-height: 25px;
        padding-top: 5px; }
  .m-boarding .feature .feature_content {
    margin-bottom: 40px; }
    .m-boarding .feature .feature_content:nth-of-type(2) {
      padding: 50px 0 20px;
      margin-bottom: 60px; }
      .m-boarding .feature .feature_content:nth-of-type(2) .row p {
        margin-top: 10px; }
    .m-boarding .feature .feature_content .container {
      padding-left: 15px; }
    .m-boarding .feature .feature_content h3 {
      position: static;
      width: 140px;
      margin: 0 auto 20px; }
    .m-boarding .feature .feature_content .tR {
      font-size: 1.3rem;
      text-align: left !important; }
    .m-boarding .feature .feature_content dl {
      margin-bottom: 30px; }
      .m-boarding .feature .feature_content dl dt {
        float: none;
        font-size: 4.5rem; }
        .m-boarding .feature .feature_content dl dt span {
          font-size: 1.4rem;
          top: 3px;
          padding: 8px 2px 2px; }
      .m-boarding .feature .feature_content dl dd {
        padding: 10px 0 0 0; }
        .m-boarding .feature .feature_content dl dd .title span {
          font-size: 2.2rem;
          display: inline;
          line-height: 1.5; }
          .m-boarding .feature .feature_content dl dd .title span em {
            font-size: 3.5rem; }
        .m-boarding .feature .feature_content dl dd .emphasis {
          -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
          .m-boarding .feature .feature_content dl dd .emphasis strong {
            font-size: 1.7rem;
            padding-right: 10px; }
            .m-boarding .feature .feature_content dl dd .emphasis strong em {
              font-size: 2.9rem;
              letter-spacing: 0; }
          .m-boarding .feature .feature_content dl dd .emphasis .bg.p01 {
            font-size: 2.4rem; }
        .m-boarding .feature .feature_content dl dd .catch {
          font-size: 1.8rem; }
        .m-boarding .feature .feature_content dl dd ul {
          margin: 20px -5px 0; }
          .m-boarding .feature .feature_content dl dd ul li {
            padding-right: 5px;
            padding-left: 5px; }
            .m-boarding .feature .feature_content dl dd ul li span {
              font-size: 1.3rem; }
  .m-boarding .share {
    padding: 60px 0 80px; }
    .m-boarding .share .ttl02 {
      margin-bottom: 80px; }
    .m-boarding .share .share_content {
      padding: 50px 15px 15px; }
      .m-boarding .share .share_content.blue {
        margin-top: 80px; }
      .m-boarding .share .share_content h3 {
        padding: 15px;
        font-size: 2.2rem;
        margin: -80px 0 20px;
        background-size: 70%; }
      .m-boarding .share .share_content .top {
        margin-bottom: 20px; }
        .m-boarding .share .share_content .top .text {
          padding: 0; }
          .m-boarding .share .share_content .top .text .title {
            font-size: 2.0rem;
            margin-bottom: 15px; }
        .m-boarding .share .share_content .top .img {
          margin-bottom: 20px; }
          .m-boarding .share .share_content .top .img .info {
            padding: 12px 10px 0 20px;
            bottom: -1px; }
            .m-boarding .share .share_content .top .img .info strong {
              font-size: 1.8rem; }
      .m-boarding .share .share_content .bottom {
        margin: 0; }
        .m-boarding .share .share_content .bottom h4 {
          font-size: 1.8rem; }
          .m-boarding .share .share_content .bottom h4::after {
            width: 90px; }
        .m-boarding .share .share_content .bottom .point {
          padding: 30px 15px 10px; }
          .m-boarding .share .share_content .bottom .point ol li {
            padding: 10px 10px 10px 35px; }
            .m-boarding .share .share_content .bottom .point ol li::before {
              left: 5px;
              top: 14px; }
        .m-boarding .share .share_content .bottom .layout {
          padding: 30px 15px;
          margin-top: 30px; }
          .m-boarding .share .share_content .bottom .layout .floor {
            display: block;
            padding: 0;
            margin-bottom: 20px; }
            .m-boarding .share .share_content .bottom .layout .floor .img {
              text-align: center;
              margin-bottom: 25px; }
            .m-boarding .share .share_content .bottom .layout .floor dl {
              display: -webkit-box;
              display: -webkit-flex;
              display: -ms-flexbox;
              display: flex;
              -webkit-flex-wrap: wrap;
              -ms-flex-wrap: wrap;
              flex-wrap: wrap;
              -webkit-box-align: center;
              -webkit-align-items: center;
              -ms-flex-align: center;
              align-items: center; }
              .m-boarding .share .share_content .bottom .layout .floor dl dt {
                width: 35%; }
              .m-boarding .share .share_content .bottom .layout .floor dl dd {
                margin-bottom: 0;
                padding-left: 0;
                width: 65%; }
          .m-boarding .share .share_content .bottom .layout .facility strong {
            margin-bottom: 10px; }
            .m-boarding .share .share_content .bottom .layout .facility strong::after {
              width: 50%; }
          .m-boarding .share .share_content .bottom .layout .facility .in span {
            padding-right: 10px; }
  .m-employment .careers .support h3 {
    font-size: 2.2rem;
    line-height: 1.5;
    margin-bottom: 20px; }
  .m-employment .employment_menu {
    padding: 60px 0 40px;
    margin-bottom: 30px; }
  .m-support .system {
    margin-bottom: 60px; }
  .m-support .feature .feature_box {
    margin-bottom: 40px; }
    .m-support .feature .feature_box .img {
      text-align: center; }
    .m-support .feature .feature_box .text {
      width: 100%;
      position: relative;
      left: 0;
      bottom: auto;
      margin-top: -5px; }
      .m-support .feature .feature_box .text .num {
        margin-right: 0;
        font-size: 4.2rem;
        margin-bottom: 20px;
        text-align: left; }
        .m-support .feature .feature_box .text .num span::after {
          padding-bottom: 15px; }
      .m-support .feature .feature_box .text h3 {
        font-size: 2.2rem; }
      .m-support .feature .feature_box .text p {
        padding: 0; }
    .m-support .feature .feature_box.reverse {
      margin-top: 0; }
      .m-support .feature .feature_box.reverse .img {
        text-align: center; }
      .m-support .feature .feature_box.reverse .text {
        left: 0;
        right: 0; }
        .m-support .feature .feature_box.reverse .text .num {
          padding-left: 0; }
        .m-support .feature .feature_box.reverse .text h3 {
          padding-left: 0; }
        .m-support .feature .feature_box.reverse .text p {
          padding: 0; }
  .m-support .feature .bottom .feature_box .text {
    top: 0;
    padding-left: 0; }
    .m-support .feature .bottom .feature_box .text h3 {
      font-size: 2rem;
      margin-bottom: 20px; }
  .m-support .feature .uturn {
    padding: 25px 15px 5px;
    margin: 10px 0 50px; }
    .m-support .feature .uturn h3 {
      font-size: 2.0rem;
      background: none;
      margin-bottom: 20px; }
    .m-support .feature .uturn .uturn_box {
      margin: 0; }
      .m-support .feature .uturn .uturn_box .box {
        padding: 0;
        width: 100%;
        margin-bottom: 0; }
  .m-support .feature .flow {
    margin: 30px 0 60px; }
    .m-support .feature .flow .flow_content {
      height: auto; }
    .m-support .feature .flow .flow_box {
      padding: 15px;
      width: 100%;
      margin-right: 0;
      margin-bottom: 40px;
      border: 1px solid #222; }
      .m-support .feature .flow .flow_box .num {
        font-size: 3.2rem;
        margin-bottom: 10px; }
      .m-support .feature .flow .flow_box h3 {
        margin-bottom: 15px; }
        .m-support .feature .flow .flow_box h3::after {
          margin: 10px auto 0; }
      .m-support .feature .flow .flow_box p {
        margin-bottom: 0; }
      .m-support .feature .flow .flow_box::before {
        content: none; }
      .m-support .feature .flow .flow_box::after {
        -webkit-transform: none;
        transform: none;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 25px 30px 0;
        border-color: #00a2cb transparent transparent transparent;
        position: absolute;
        left: 50%;
        -webkit-transform: translate(-50%, 0);
        transform: translate(-50%, 0);
        bottom: -34px; }
    .m-support .feature .flow .last {
      width: 100%; }
      .m-support .feature .flow .last span {
        -ms-writing-mode: inherit;
        -webkit-writing-mode: inherit;
        writing-mode: inherit;
        display: block;
        position: static;
        -webkit-transform: none;
        transform: none;
        padding: 10px; }
  .m-support .feature .schedule h4 {
    font-size: 1.8rem;
    margin-bottom: 15px; }
  .m-support .feature .schedule .table02 {
    margin-bottom: 30px; }
    .m-support .feature .schedule .table02 th {
      width: auto;
      white-space: nowrap; }
    .m-support .feature .schedule .table02 th, .m-support .feature .schedule .table02 td {
      padding: 10px 15px; }
  .m-support .guidance {
    background-size: 200%;
    padding: 50px 0 20px; }
    .m-support .guidance h3 {
      padding-left: 0;
      font-size: 1.7rem;
      margin-bottom: 10px; }
      .m-support .guidance h3 span {
        padding: 8px 0 7px;
        width: 50px;
        position: static;
        margin-bottom: 10px; }
    .m-support .guidance p {
      margin-bottom: 30px; }
  .m-guarantee .careers .briefing .top strong {
    font-size: 1.8rem;
    margin: 20px 0; }
  .m-guarantee .careers .briefing .bottom {
    padding: 20px 15px 10px;
    margin-top: 20px; }
    .m-guarantee .careers .briefing .bottom h3 {
      font-size: 1.7rem;
      padding-left: 25px; }
      .m-guarantee .careers .briefing .bottom h3::before {
        top: 10px;
        width: 15px; }
    .m-guarantee .careers .briefing .bottom ul {
      display: block;
      height: auto;
      padding: 0; }
      .m-guarantee .careers .briefing .bottom ul li {
        font-size: 1.3rem;
        padding: 0 0 3px; }
  .m-guarantee .entry {
    background-size: 200%;
    padding: 50px 0 30px;
    margin-bottom: 50px; }
    .m-guarantee .entry .catch {
      font-size: 2.0rem;
      line-height: 1.6; }
    .m-guarantee .entry .point {
      margin-bottom: 10px; }
      .m-guarantee .entry .point .point_box {
        width: 180px;
        height: 180px;
        font-size: 1.6rem;
        margin: 0 auto 20px; }
        .m-guarantee .entry .point .point_box:nth-child(2) {
          padding-top: 15px; }
        .m-guarantee .entry .point .point_box .num {
          font-size: 3rem;
          margin-bottom: 15px; }
          .m-guarantee .entry .point .point_box .num::after {
            padding-top: 10px;
            width: 30px; }
        .m-guarantee .entry .point .point_box p {
          line-height: 1.3; }
          .m-guarantee .entry .point .point_box p strong {
            font-size: 2.4rem; }
    .m-guarantee .entry .bottom table {
      margin-top: 40px; }
      .m-guarantee .entry .bottom table tr td:last-child {
        padding: 10px; }
      .m-guarantee .entry .bottom table tr td:nth-child(-n+2) {
        white-space: nowrap; }
  .m-guarantee .message h3 {
    font-size: 2.0rem;
    margin: 20px 0; }
  .m-job {
    margin-top: -60px; }
    .m-job section .row {
      margin-left: -5px;
      margin-right: -5px; }
      .m-job section .row > div {
        margin-bottom: 30px;
        padding-left: 5px;
        padding-right: 5px; }
    .m-job .archi {
      padding: 70px 0 30px;
      margin-bottom: 50px; }
    .m-job .job_box {
      padding: 0 15px 10px; }
      .m-job .job_box h3 {
        font-size: 2.2rem;
        margin: 20px 0 15px; }
        .m-job .job_box h3 span {
          font-size: 1.6rem; }
      .m-job .job_box strong {
        margin-bottom: 15px; }
  .m-message .message {
    padding-bottom: 30px; }
    .m-message .message .careers_list .row {
      margin-right: -5px;
      margin-left: -5px; }
      .m-message .message .careers_list .row > div {
        padding-right: 5px;
        padding-left: 5px;
        margin-bottom: 30px; }
  .m-message_child .head {
    margin-bottom: 80px; }
    .m-message_child .head h3 {
      margin-bottom: 25px; }
      .m-message_child .head h3 span {
        font-size: 2.0rem; }
    .m-message_child .head .goods {
      width: 250px;
      height: 250px;
      margin: 0 auto; }
      .m-message_child .head .goods .in {
        padding-top: 5px; }
        .m-message_child .head .goods .in span {
          padding: 1px 15px; }
        .m-message_child .head .goods .in strong {
          font-size: 1.8rem;
          margin: 15px 0 10px; }
        .m-message_child .head .goods .in p {
          font-size: 1.2rem; }
  .m-message_child .process {
    padding: 50px 0; }
    .m-message_child .process .ttl03 {
      margin-bottom: 40px; }
    .m-message_child .process .row > div {
      margin-bottom: 35px; }
    .m-message_child .process .process_box {
      padding: 10px 15px 0; }
      .m-message_child .process .process_box h3 {
        top: -20px; }
        .m-message_child .process .process_box h3 strong {
          font-size: 4.0rem; }
          .m-message_child .process .process_box h3 strong em {
            font-size: 6.0rem; }
        .m-message_child .process .process_box h3 span {
          font-size: 2.0rem;
          padding-left: 25px; }
      .m-message_child .process .process_box.current::after {
        content: none; }
    .m-message_child .process .turning {
      background-size: 150%;
      padding: 20px 15px 10px;
      margin: 0; }
      .m-message_child .process .turning h3 {
        font-size: 2.2rem;
        line-height: 1.4; }
        .m-message_child .process .turning h3::after {
          width: 40px;
          margin: 12px auto 0; }
  .m-message_child .message_btn {
    width: 100%;
    padding: 0 15px; }
  .m-offers .requirements .requirements_box {
    padding: 20px 15px; }
    .m-offers .requirements .requirements_box h3 {
      font-size: 1.8rem;
      margin-bottom: 15px; }
  .m-company .results_box .dot_list {
    margin-bottom: 0; }
    .m-company .results_box .dot_list li {
      width: 100%; }
  .m-course .course_list .course_box.department .title {
    padding: 10px;
    font-size: 2rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column; }
    .m-course .course_list .course_box.department .title span {
      margin-left: 0;
      margin-top: 10px;
      max-width: 60px;
      text-align: center; }
  .m-course .course_system {
    margin-bottom: 50px; }
  .m-course_child {
    padding-top: 30px; }
    .m-course_child.senkou .voice .stepup h2 {
      font-size: 2.0rem; }
    .m-course_child.senkou .voice .stepup .year_list {
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
    .m-course_child.senkou .voice .stepup .year_box {
      width: 100%;
      padding: 50px 15px 20px;
      margin-bottom: 50px; }
      .m-course_child.senkou .voice .stepup .year_box::before {
        right: auto;
        top: auto;
        left: 50%;
        bottom: -52px;
        width: 5px;
        height: 50px; }
      .m-course_child.senkou .voice .stepup .year_box:nth-child(4) .human {
        right: -15px;
        bottom: -140px;
        width: 65px; }
      .m-course_child.senkou .voice .stepup .year_box .incorporation {
        left: 35%; }
      .m-course_child.senkou .voice .stepup .year_box .year_no {
        font-size: 6rem; }
        .m-course_child.senkou .voice .stepup .year_box .year_no small {
          font-size: 4rem; }
        .m-course_child.senkou .voice .stepup .year_box .year_no span {
          font-size: 2.0rem; }
      .m-course_child.senkou .voice .stepup .year_box .human {
        right: -15px;
        bottom: -100px;
        width: 80px; }
    .m-course_child.senkou .voice .stepup.archi_year1 .year_box:nth-child(3) {
      width: 100%;
      display: block; }
      .m-course_child.senkou .voice .stepup.archi_year1 .year_box:nth-child(3) .in.line {
        border: none;
        padding: 0;
        margin: 0;
        border-top: 1px solid #43a71c;
        padding-top: 20px;
        margin-top: 20px; }
      .m-course_child.senkou .voice .stepup.archi_year1 .year_box:nth-child(3) .human {
        right: -15px;
        bottom: -140px;
        width: 65px; }
    .m-course_child .course_child_head h2 {
      font-size: 2rem;
      line-height: 1.4; }
    .m-course_child .course_child_head .point_list .point_box h3 {
      font-size: 1.8rem;
      text-align: left; }
      .m-course_child .course_child_head .point_list .point_box h3 br {
        display: none; }
    .m-course_child .divide_course .divide_course_box {
      width: 100%; }
      .m-course_child .divide_course .divide_course_box a {
        padding-top: 300px; }
      .m-course_child .divide_course .divide_course_box .box_in {
        width: 100%;
        padding: 30px 15px 15px;
        right: 0;
        background: rgba(255, 255, 255, 0.8); }
      .m-course_child .divide_course .divide_course_box h3 {
        font-size: 2.4rem;
        margin-bottom: 15px; }
      .m-course_child .divide_course .divide_course_box .num {
        top: -70px; }
        .m-course_child .divide_course .divide_course_box .num strong {
          font-size: 7rem; }
    .m-course_child .class_organization .container {
      padding: 0; }
    .m-course_child .class_organization .class_ttl {
      padding: 20px 15px;
      max-width: inherit;
      display: block; }
      .m-course_child .class_organization .class_ttl h3 {
        min-width: inherit;
        margin-bottom: 15px; }
    .m-course_child .class_organization .class_in {
      margin-top: 0;
      padding: 20px 15px 50px;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
      .m-course_child .class_organization .class_in h4 {
        margin-bottom: 15px; }
      .m-course_child .class_organization .class_in .before {
        width: 100%;
        padding: 65px 15px 15px;
        margin-bottom: 10px; }
      .m-course_child .class_organization .class_in .after {
        width: 100%;
        margin-left: 0;
        padding: 65px 0 0; }
        .m-course_child .class_organization .class_in .after .human {
          right: -20px;
          width: 120px; }
        .m-course_child .class_organization .class_in .after .after_in {
          width: 100%;
          margin-left: 0; }
          .m-course_child .class_organization .class_in .after .after_in p {
            padding-right: 80px; }
          .m-course_child .class_organization .class_in .after .after_in .profile .name {
            font-size: 1.8rem; }
      .m-course_child .class_organization .class_in .tag {
        left: 0;
        top: 15px; }
        .m-course_child .class_organization .class_in .tag::before {
          border-width: 18px 0 18px 10px; }
    .m-course_child .passed h2 {
      font-size: 1.8rem; }
    .m-course_child .passed .passed_box {
      padding: 30px 15px;
      margin-bottom: 30px; }
    .m-course_child .passed .num {
      font-size: 6rem; }
    .m-course_child .passed .woman_area .num {
      font-size: 3rem;
      letter-spacing: 0; }
  .m-course_child2 {
    padding-top: 30px; }
    .m-course_child2 .course_child2_head .course_border {
      margin: 0 auto 30px; }
      .m-course_child2 .course_child2_head .course_border .border_in {
        width: 100%; }
      .m-course_child2 .course_child2_head .course_border .num strong {
        padding-bottom: 0; }
    .m-course_child2 .course_child2_head h3 {
      font-size: 2.2rem;
      line-height: 1.4; }
    .m-course_child2 .certification_job h2 {
      font-size: 2rem; }
    .m-course_child2 .certification_job .col-sm-7 {
      margin-bottom: 30px; }
    .m-course_child2 .certification_job .bg_white {
      padding: 15px; }
      .m-course_child2 .certification_job .bg_white dl dt::before {
        display: none; }
    .m-course_child2 .pickup .pickup_box {
      margin-bottom: 30px; }
      .m-course_child2 .pickup .pickup_box .thumb {
        text-align: center; }
      .m-course_child2 .pickup .pickup_box h3 {
        margin: 15px 0 10px;
        text-align: center; }
      .m-course_child2 .pickup .pickup_box p {
        line-height: 1.5;
        font-size: 1.3rem; }
  .m-seminar .feature {
    margin-bottom: 50px; }
    .m-seminar .feature h2 span {
      font-size: 2.4rem; }
    .m-seminar .feature .feature_box {
      padding: 20px;
      margin-bottom: 30px;
      height: auto; }
      .m-seminar .feature .feature_box .point_ttl {
        margin-bottom: 10px; }
        .m-seminar .feature .feature_box .point_ttl .point {
          font-size: 4rem; }
  .m-seminar .labo .award {
    font-size: 1.2rem;
    line-height: 1.6;
    margin-left: 0; }
  .m-seminar .labo h2 {
    font-size: 2.2rem;
    padding-bottom: 20px;
    margin-bottom: 25px; }
  .m-seminar .labo .labo_list {
    padding-bottom: 20px;
    margin-bottom: 30px; }
  .m-seminar .labo .labo_box h2 {
    padding: 20px;
    padding-left: 0; }
    .m-seminar .labo .labo_box h2.small {
      font-size: 2.2rem; }
  .m-seminar .labo .labo_box_small h2 {
    font-size: 2.2rem; }
  .m-licenses .licenses_menu {
    padding: 60px 0 40px;
    margin-bottom: 30px; }
  .m-licenses .second_architect_list .second_architect_box {
    margin-bottom: 40px; }
  .m-licenses .second_architect_list h3 {
    font-size: 2rem;
    line-height: 1.4;
    margin-bottom: 10px; }
    .m-licenses .second_architect_list h3 span {
      font-size: 2.8rem; }
  .m-merit .mistake h2 {
    margin: 0 auto 30px; }
    .m-merit .mistake h2 span {
      width: 100%; }
  .m-merit .mistake .mistake_in {
    display: block; }
  .m-merit .mistake .mistake_contents {
    width: 100%;
    margin-left: 0; }
    .m-merit .mistake .mistake_contents h3 {
      line-height: 1.4; }
  .m-merit .mistake .human {
    display: none; }
  .m-university .system_head .cricle_list .circle .title {
    line-height: 1.4; }
    .m-university .system_head .cricle_list .circle .title .num {
      font-size: 4rem; }
  .m-university .common_gray_contents .contents_in .number {
    display: block; }
    .m-university .common_gray_contents .contents_in .number .num {
      margin-top: 10px; }
      .m-university .common_gray_contents .contents_in .number .num span {
        font-size: 7rem; }
  .m-university .support dl {
    margin-bottom: 30px; }
    .m-university .support dl dt {
      float: none;
      font-size: 4.5rem; }
      .m-university .support dl dt span {
        font-size: 1.4rem;
        top: 3px;
        padding: 8px 2px 2px; }
    .m-university .support dl dd {
      padding: 10px 0 0 0; }
      .m-university .support dl dd strong {
        font-size: 2rem;
        line-height: 1.4; }
        .m-university .support dl dd strong span {
          display: inline; }
  .m-success .second_grade_successful::before {
    display: none; }
  .m-success .second_grade_successful .successful_in .no1 {
    text-align: center; }
    .m-success .second_grade_successful .successful_in .no1 .japan {
      font-size: 1.8rem;
      margin-bottom: 8px;
      padding-bottom: 7px; }
    .m-success .second_grade_successful .successful_in .no1 .no {
      font-size: 2.5rem; }
    .m-success .second_grade_successful .successful_in .no1 .one {
      font-size: 7rem;
      right: -10px;
      top: 52px; }
  .m-success .second_grade_successful .successful_in .number {
    right: 0;
    bottom: auto;
    top: 5px;
    text-align: right; }
    .m-success .second_grade_successful .successful_in .number span {
      font-size: 5rem; }
    .m-success .second_grade_successful .successful_in .number dl dt {
      font-size: 1.6rem;
      width: auto; }
    .m-success .second_grade_successful .successful_in .number dl dd .num {
      font-size: 2.4rem; }
  .m-success .second_grade_successful .successful_in h4 {
    display: block;
    margin-top: 30px;
    line-height: 1.4; }
    .m-success .second_grade_successful .successful_in h4 span {
      font-size: 2.6rem; }
  .m-success .second_grade_successful .successful_in .border {
    padding: 10px; }
    .m-success .second_grade_successful .successful_in .border .text {
      line-height: 1.4; }
      .m-success .second_grade_successful .successful_in .border .text span {
        font-size: 2.6rem; }
  .m-success .successful_box {
    padding: 15px; }
    .m-success .successful_box h3 {
      font-size: 2rem;
      line-height: 1.4; }
    .m-success .successful_box .number {
      display: block; }
      .m-success .successful_box .number span {
        font-size: 8rem; }
    .m-success .successful_box dl {
      text-align: right;
      margin-left: 0; }
      .m-success .successful_box dl dd {
        padding-top: 12px; }
    .m-success .successful_box .number_bg {
      background-size: 66px;
      padding-left: 70px; }
  .m-success .university_successful .successful_in {
    display: block; }
  .m-success .university_successful .number {
    background-position: top left; }
  .m-success .university_successful .rate {
    text-align: center;
    display: block;
    margin-left: 0;
    margin-top: 20px; }
    .m-success .university_successful .rate p {
      margin: 0 0 15px;
      text-align: center; }
  .m-shortest .common_gray_contents dl dd {
    max-width: 70%; }
  .m-interview .interview_content {
    background: -webkit-gradient(linear, left top, right top, color-stop(15%, transparent), color-stop(15%, #f5f5f5));
    background: linear-gradient(to right, transparent 15%, #f5f5f5 15%);
    padding-top: 75px;
    margin-top: 0;
    overflow: hidden; }
    .m-interview .interview_content::before {
      top: 10px;
      left: 20%;
      font-size: 8rem;
      letter-spacing: 0px; }
  .m-interview .top .row {
    margin-bottom: 60px; }
  .m-interview .top .interview_text {
    padding-left: 0;
    padding-top: 0;
    margin-top: -80px; }
    .m-interview .top .interview_text .mainttl {
      left: 0;
      margin-right: 0;
      margin-bottom: 20px; }
      .m-interview .top .interview_text .mainttl .sub {
        font-size: 1.5rem;
        line-height: 30px; }
      .m-interview .top .interview_text .mainttl .en {
        font-size: 1.4rem;
        padding-left: 15px; }
      .m-interview .top .interview_text .mainttl h2 span {
        font-size: 2.0rem; }
  .m-interview .interview_box {
    margin-bottom: 60px; }
    .m-interview .interview_box .img {
      padding-left: 25px; }
      .m-interview .interview_box .img .en {
        left: -2px; }
      .m-interview .interview_box .img img {
        width: 100%; }
  .m-interview .interview_text {
    margin-top: -50px; }
    .m-interview .interview_text .mainttl {
      margin-bottom: 20px; }
      .m-interview .interview_text .mainttl .sub {
        line-height: 30px;
        padding: 0 15px; }
      .m-interview .interview_text .mainttl h2 span {
        font-size: 2.0rem;
        padding: 10px 12px;
        line-height: 1.5; }
    .m-interview .interview_text .name strong {
      font-size: 1.8rem;
      padding-left: 0;
      display: block; }
    .m-interview .interview_text .license {
      padding: 15px;
      margin-top: 15px; }
      .m-interview .interview_text .license strong {
        font-size: 1.8rem;
        margin-bottom: 7px; }
  .m-interview .other {
    padding: 15px; }
    .m-interview .other strong {
      font-size: 1.8rem; }
  .m-goal .goal h2 {
    font-size: 2.0rem;
    margin-bottom: 30px; }
  .m-goal .goal .top {
    margin-bottom: 40px; }
  .m-goal .goal .bottom .ico_list {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    .m-goal .goal .bottom .ico_list li {
      margin-right: 0;
      width: 33.333333%;
      margin-bottom: 5px; }
  .m-goal .goal .bottom .table02 thead th {
    width: 9%; }
    .m-goal .goal .bottom .table02 thead th:first-child {
      width: 2.5%; }
    .m-goal .goal .bottom .table02 thead th:nth-child(2) {
      width: 13%; }
    .m-goal .goal .bottom .table02 thead th:nth-child(5) {
      width: 18.5%; }
    .m-goal .goal .bottom .table02 thead th:nth-child(6) {
      width: 24%; }
    .m-goal .goal .bottom .table02 thead th:nth-child(7) {
      width: 24%; }
  .m-goal .goal .bottom .table02 th, .m-goal .goal .bottom .table02 td {
    padding: 5px; }
  .m-goal .goal .bottom .table02 .ttl span {
    position: static; }
  .m-news .ttl03 {
    margin-bottom: 30px; }
  .m-news .news_archive {
    margin-bottom: 40px; }
    .m-news .news_archive h2 {
      margin-bottom: 20px; }
    .m-news .news_archive .list {
      border: none; }
  .post_box {
    margin-bottom: 30px; }
  .post_info {
    margin-bottom: 20px; }
    .post_info .cat span {
      font-size: 1.3rem;
      min-width: 70px;
      line-height: 30px; }
    .post_info time {
      font-size: 1.3rem; }
  input, textarea, select {
    font-size: 1.6rem;
    -webkit-transform: scale(0.9);
    transform: scale(0.9); }
  .wp-pagenavi {
    padding: 20px 0 60px; }
    .wp-pagenavi.single {
      border: none; }
      .wp-pagenavi.single .container {
        position: relative;
        height: auto;
        min-height: 60px; }
    .wp-pagenavi a, .wp-pagenavi span {
      padding: 10px 18px;
      font-size: 1.6rem; }
    .wp-pagenavi .pages {
      font-size: 1.5rem; }
    .wp-pagenavi .alignleft, .wp-pagenavi .alignright {
      width: 41%; }
      .wp-pagenavi .alignleft a, .wp-pagenavi .alignright a {
        font-size: 1.3rem;
        line-height: 1.6; }
        .wp-pagenavi .alignleft a::after, .wp-pagenavi .alignright a::after {
          top: 15px; }
    .wp-pagenavi .alignleft a {
      padding-left: 15px;
      padding-right: 10px; }
      .wp-pagenavi .alignleft a::after {
        left: 0; }
    .wp-pagenavi .alignright a {
      padding-right: 15px;
      padding-left: 10px; }
      .wp-pagenavi .alignright a::after {
        right: 0px; }
    .wp-pagenavi .center {
      width: 16%; }
      .wp-pagenavi .center a {
        max-height: 60px;
        min-height: 60px;
        height: 87%; }
  .btnArea {
    margin-top: 20px; }
  input[name=submitConfirm] {
    margin: 0 auto; }
  .m-contact .text_content h3 {
    font-size: 2.2rem; }
  .m-contact .text_content .f_big {
    font-size: 1.6rem; }
  .m-contact .text_content .bd {
    padding: 10px 15px;
    margin: 20px 0; }
  .m-contact .text_content .bg {
    padding: 10px 15px;
    margin: 20px 0; }
  .m-contact .form_content h3 {
    font-size: 1.6rem; }
  .m-contact .form_content .table02 th, .m-contact .form_content .table02 td {
    padding: 10px;
    width: 100%;
    display: block;
    font-size: 1.4rem; }
  .m-contact .form_content .table02 td input {
    width: 100%; }
  .m-contact .form_content .table02 td textarea {
    width: 100%; }
  .m-contact .form_content .table02 td .radio-field input {
    width: 20px; }
  .m-contact .form_content .table02 td .check-field input {
    width: 24px; }
  .m-contact .form_content .table02 .require {
    font-size: 1.1rem;
    padding: 2px 5px; }
  .m-contact .form_content .table02 .any {
    font-size: 1.1rem;
    padding: 2px 5px; }
  .m-contact .form_content .one_column {
    margin: 40px 0; }
  .m-contact .contactForm th, .m-contact .contactForm td {
    display: block;
    font-size: 16px;
    font-size: 1.6rem; }
  .m-contact .contactForm td input {
    width: 100%; }
  .m-contact .contactForm td textarea {
    width: 100%; }
  .m-contact .contactForm td.zip input, .m-contact .contactForm td.tel input, .m-contact .contactForm td.radio input {
    width: auto; }
  .m-contact .contactForm input[type="radio"] {
    position: relative;
    -webkit-appearance: button;
    appearance: button;
    -moz-appearance: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 18px;
    height: 18px;
    content: "";
    background-color: #FFFFFF;
    border: 1px solid #999999;
    border-radius: 24px;
    -webkit-box-shadow: inset 4px 4px 10px rgba(0, 0, 0, 0.2);
    box-shadow: inset 4px 4px 10px rgba(0, 0, 0, 0.2);
    vertical-align: middle;
    cursor: pointer;
    padding: 5px; }
  .m-contact .contactForm input[type="radio"]:checked:after {
    display: block;
    position: absolute;
    top: 5px;
    left: 5px;
    content: "";
    width: 6px;
    height: 6px;
    background: #00a2cb;
    border-radius: 12px; }
  .m-contact .contactForm input[type="checkbox"] {
    display: inline-block;
    position: relative;
    margin-right: 5px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-appearance: button;
    appearance: button;
    -moz-appearance: none;
    width: 20px;
    height: 20px;
    border: 1px solid #999;
    vertical-align: middle;
    padding: 5px; }
  .m-contact .contactForm input[type="checkbox"]:checked::after {
    position: absolute;
    content: "";
    top: -3px;
    left: 3px;
    width: 8px;
    height: 14px;
    border-right: 4px solid #00a2cb;
    border-bottom: 4px solid #00a2cb;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg); } }

/* タブレット
-------------------------------------------------- */
/* PC(small)
-------------------------------------------------- */
/* PC(large)
-------------------------------------------------- */
