@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;
    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-size:18px;
  font: 100%; }

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

/**以下レスポンシブグリッド用**/
.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: 15px;
  padding-right: 15px; }

.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: -15px;
  margin-left: -15px; }
  .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: 15px;
  padding-left: 15px; }

.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: 15px;
  padding-left: 15px; }

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

/*k.hemni added*/
 .y-logo-margin{
    margin-bottom:0px;
  }

@media (min-width: 768px) {

/*k.hemni added*/
 .y-logo-margin{
    margin-bottom:20px;
  }

  .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: 15px;
    padding-left: 15px; }
  .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: 15px;
    padding-left: 15px; }
  .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: 15px;
    padding-left: 15px; }
  .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: #222;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Verdana, sans-serif;
  -webkit-text-size-adjust: 100%;
  position: relative; }
  body::before, body::after {
    content: "";
    display: block;
    /*border-left: 1px solid #f4f3f1;*/
    height: 100%;
    position: absolute;
    top: 0;
    right: 50%;
    z-index: -2; }
  body::before {
    margin-right: 550px; }
  body::after {
    margin-right: -550px; }

#page {
  position: relative;
  font-size: 15px;
  font-size: 1.5rem;
  overflow: hidden;
  font-weight: 500; }
  #page::before, #page::after {
    content: "";
    display: block;
    /*border-left: 1px solid #f4f3f1;*/
    height: 100%;
    position: absolute;
    top: 0;
    right: 50%;
    z-index: -2; }
  #page::before {
    margin-right: 183px; }
  #page::after {
    margin-right: -183px; }

#page {
  min-width: 1130px; }

.container {
  width: 1000px; }

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

a:visited {
  color: #222; }

a:hover {
  color: #222; }

a:active {
  color: #222; }

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; }

h1, h2, h3, h4, h5, h6 {
  font-weight: 400; }

.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: transparent;
    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: fixed;
  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: #fff; }
    .modaal-close:focus:before, .modaal-close:focus:after, .modaal-close:hover:before, .modaal-close:hover:after {
      background: #b93d0c; }
  .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; }

.copyright {
  font-family: "Roboto Condensed", sans-serif;
  font-size: 1.2rem;
  text-align:center;
  margin-bottom:5px;
  /*-webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  position: fixed;
  left: 2%;
  top: 50%;
  z-index: 100;
  letter-spacing: 2px;*/ }
  .copyright span {
    position: relative; }
    .copyright span::before {
      content: "";
      position: absolute;
      left: -7px;
      width: 0px;
      height: 100%;
      background: #222; }

.main_visual {
  width: 100%;
  height: 80vh;
  margin-bottom: 40px;
  position: relative; }
  .main_visual::before, .main_visual::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 100;
    -webkit-transition: all 0.6s cubic-bezier(1, 0, 0, 1);
    transition: all 0.6s cubic-bezier(1, 0, 0, 1); }
  .main_visual::before {
    /*background: #87afff;*/
    background: #fff;
    z-index: 101; }
  .main_visual::after {
    /*background: #9fd28c;
    -webkit-transition-delay: .3s;
    transition-delay: .3s; 
*/
}
  .main_visual.is-act::before, .main_visual.is-act::after {
    width: 100%;
    left: 100%; }
  .main_visual .main_in {
    margin-left: 0%;
	margin-right: 0% !important;
    position: relative; }
  .main_visual .swiper-slide {
    width: 100%;
    height: 80vh;
    position: relative; }
.swiper-container .swiper-wrapper .swiper-slide.slide03 {
}


    .main_visual .swiper-slide.y-slide01 a::before {
      background: url("../../img/main/y-slide01@2x.jpg") no-repeat left top;
      background-size: cover; }
    .main_visual .swiper-slide.y-slide02 a::before {
      background: url("../../img/main/y-slide02@2x.jpg") no-repeat left top;
      background-size: cover; }
    .main_visual .swiper-slide.y-slide03 a::before {
      background: url("../../img/main/y-slide03@2x.jpg") no-repeat left top;
      background-size: cover; }
    .main_visual .swiper-slide.y-slide04 a::before {
      background: url("../../img/main/y-slide04@2x.jpg") no-repeat left top;
      background-size: cover; }





    .main_visual .swiper-slide.slide01 a::before {
      background: url("../../img/main/main_slide01@2x.jpg") no-repeat left top;
      background-size: cover; }
    .main_visual .swiper-slide.slide02 a::before {
      background: url("../../img/main/main_slide02@2x.jpg") no-repeat left top;
      background-size: cover; }
    .main_visual .swiper-slide.slide03 a::before {
      background: url("../../img/main/main_slide03@2x.jpg") no-repeat left top;
      background-size: cover; }
    .main_visual .swiper-slide.slide04 a::before {
      background: url("../../img/main/main_slide04@2x.jpg") no-repeat left top;
      background-size: cover; }
    .main_visual .swiper-slide.slide05 a::before {
      background: url("../../img/main/main_slide05@2x.jpg") no-repeat left top;
      background-size: cover; }
    .main_visual .swiper-slide.slide06 a::before {
      background: url("../../img/main/main_slide06@2x.jpg") no-repeat left top;
      background-size: cover; }
    .main_visual .swiper-slide.slide07 a::before {
      background: url("../../img/main/main_slide07@2x.jpg") no-repeat left top;
      background-size: cover; }
    .main_visual .swiper-slide.slide08 a::before {
      background: url("../../img/main/main_slide08@2x.jpg") no-repeat left top;
      background-size: cover; }
    .main_visual .swiper-slide.slide09 a::before {
      background: url("https://www.kyobi.ac.jp/img/main/main_slide09@2x.jpg") no-repeat left top;
      background-size: cover; }
    .main_visual .swiper-slide.slide10 a::before {
      background: url("https://www.kyobi.ac.jp/img/main/main_slide10@2x.jpg") no-repeat left top;
      background-size: cover; }
    .main_visual .swiper-slide a {
      display: block;
      width: 100%;
      height: 130%;
      /*position: relative; */
}
      .main_visual .swiper-slide a::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;
    left: 0;
    width: 180px;
    height: 60px;
    background: #111;
    color: #fff;
    font-size: 1.3rem;
    font-family: "Roboto Condensed", sans-serif;
    letter-spacing: .2rem;
    line-height: 2.5;
    display: none; }
    .main_visual .control_area .swiper-pagination-fraction {
      top: 50%;
      bottom: inherit;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
      vertical-align: middle; }
    .main_visual .control_area .swiper-button-next, .main_visual .control_area .swiper-button-prev {
      width: 23px;
      height: 8px;
      margin-top: 0;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
      z-index: 1000; }
    .main_visual .control_area .swiper-button-disabled {
      opacity: 1; }
    .main_visual .control_area .swiper-button-next {
      background: url("../../img/main/main_next@2x.png") no-repeat center;
      background-size: contain; }
    .main_visual .control_area .swiper-button-prev {
      background: url("../../img/main/main_prev@2x.png") no-repeat center;
      background-size: contain; }
  .main_visual .main_arrow {
    position: absolute;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    bottom: -60px;
    z-index: 1000;
    color: #fff;
    font-family: "Roboto Condensed", sans-serif;
    text-align: center;
    font-size: 1.4rem;
    letter-spacing: .1rem; }
    .main_visual .main_arrow span {
      display: block;
      margin-top: 10px;
      -webkit-animation: scroll 1s ease-in-out infinite;
      animation: scroll 1s ease-in-out infinite; }

.lower_ttl {
  height: 650px;
  margin-left: 5%;
  position: relative; }
  .lower_ttl.lower_opencampus {
    background: url("../../img/main/main_opencampus@2x.jpg");
    background-size: cover;
    -webkit-transition: all 0.6s ease;
    transition: all 0.6s ease;
    margin-left: 0; }
    .lower_ttl.lower_opencampus::before, .lower_ttl.lower_opencampus::after {
      content: "";
      position: absolute;
      right: 0;
      top: 0;
      width: 100%;
      height: 100%;
      -webkit-transition: all .8s ease;
      transition: all .8s ease; }
    .lower_ttl.lower_opencampus::before {
      background: #fff884;
      z-index: 1000; }
    .lower_ttl.lower_opencampus::after {
      background: #abecd6;
      -webkit-transition-delay: .4s;
      transition-delay: .4s; }
    .lower_ttl.lower_opencampus.is-act {
      margin-left: 5%;
      -webkit-transition-delay: .4s;
      transition-delay: .4s; }
      .lower_ttl.lower_opencampus.is-act::before, .lower_ttl.lower_opencampus.is-act::after {
        width: 0; }
    .lower_ttl.lower_opencampus h1 {
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      margin-left: -5%;
      top: 55%;
      opacity: 0;
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease; }
      .lower_ttl.lower_opencampus h1.is-act {
        opacity: 1;
        top: 50%; }
  .lower_ttl.main_tour {
    position: relative; }
    .lower_ttl.main_tour::before {
      content: "";
      position: absolute;
      right: 0;
      top: 0;
      width: 100%;
      height: 100%;
      z-index: -1;
      background: url("../../img/main/main_tour@2x.jpg") no-repeat right top;
      background-size: cover !important; }
  .lower_ttl.main_degree_show {
    position: relative; }
    .lower_ttl.main_degree_show::before {
      content: "";
      position: absolute;
      right: 0;
      top: 0;
      width: 100%;
      height: 100%;
      z-index: -1;
      background: url("../../img/main/main_degree_show@2x.jpg") no-repeat right top;
      background-size: cover !important; }
    .lower_ttl.main_degree_show h1 {
      position: relative;
      top: 80px; }
  .lower_ttl.main_project {
    position: relative; }
    .lower_ttl.main_project::before {
      content: "";
      position: absolute;
      right: 0;
      top: 0;
      width: 100%;
      height: 100%;
      z-index: -1;
      background: url("../../img/main/main_project@2x.jpg") no-repeat right top;
      background-size: cover !important; }
    .lower_ttl.main_project h1 {
      position: relative;
      top: 80px;
      text-align: right; }
  .lower_ttl.main_schedule {
    position: relative; }
    .lower_ttl.main_schedule::before {
      content: "";
      position: absolute;
      right: 0;
      top: 0;
      width: 100%;
      height: 100%;
      z-index: -1;
      background: url("../../img/main/main_schedule@2x.jpg") no-repeat right top;
      background-size: cover !important; }
    .lower_ttl.main_schedule h1 {
      position: relative;
      top: 80px;
      text-align: center;
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%); }
  .lower_ttl.main_location {
    position: relative; }
    .lower_ttl.main_location::before {
      content: "";
      position: absolute;
      right: 0;
      top: 0;
      width: 100%;
      height: 100%;
      z-index: -1;
      background: url("../../img/main/main_location@2x.jpg") no-repeat right top;
      background-size: cover !important; }
    .lower_ttl.main_location h1 {
      position: relative;
      top: 80px;
      left: 15%; }
  .lower_ttl.main_facility {
    position: relative; }
    .lower_ttl.main_facility::before {
      content: "";
      position: absolute;
      right: 0;
      top: 0;
      width: 100%;
      height: 100%;
      z-index: -1;
      background: url("../../img/main/main_facility@2x.jpg") no-repeat right top;
      background-size: cover !important; }
    .lower_ttl.main_facility h1 {
      position: relative;
      top: 130px;
      left: 10%; }
  .lower_ttl.main_color {
    position: relative; }
    .lower_ttl.main_color::before {
      content: "";
      position: absolute;
      right: 0;
      top: 0;
      width: 100%;
      height: 100%;
      z-index: -1;
      background: url("../../img/main/main_color@2x.jpg") no-repeat right top;
      background-size: cover !important; }
    .lower_ttl.main_color h1 {
      position: relative;
      bottom: -215px;
      left: 0; }
  .lower_ttl.main_color_detail {
    position: relative;
    height: 580px;
    margin-left: 0;
    padding-bottom: 30px; }
    .lower_ttl.main_color_detail.color01::before {
      background-image: -webkit-gradient(linear, left top, right top, from(#8fd3f4), to(#d6f0ab));
      background-image: linear-gradient(to right, #8fd3f4, #d6f0ab); }
    .lower_ttl.main_color_detail.color02::before {
      background-image: -webkit-gradient(linear, left top, right top, from(#fda085), to(#f6d365));
      background-image: linear-gradient(to right, #fda085, #f6d365); }
    .lower_ttl.main_color_detail.color03::before {
      background-image: -webkit-gradient(linear, left top, right top, from(#8fd2f4), to(#a18dd1));
      background-image: linear-gradient(to right, #8fd2f4, #a18dd1); }
    .lower_ttl.main_color_detail::before {
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      width: 60%;
      height: 330px;
      z-index: -1; }
    .lower_ttl.main_color_detail .img {
      text-align: right; }
    .lower_ttl.main_color_detail h1 {
      position: absolute;
      bottom: 60px; }
      .lower_ttl.main_color_detail h1 span {
        background: #fff;
        line-height: 1;
        padding: 5px;
        font-size: 3.5rem;
        font-weight: bold;
        display: inline-block;
        margin-bottom: 20px; }
      .lower_ttl.main_color_detail h1 small {
        display: block;
        font-size: 1.3rem;
        margin-left: 15px;
        color: #fff;
        text-transform: uppercase; }

.lower_ttl_parent {
  position: relative;
  height: 500px; }
  .lower_ttl_parent::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: -60px;
    width: 50%;
    height: 310px;
    background: rgba(221, 221, 221, 0.4);
    z-index: 1; }
  .lower_ttl_parent::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 70%;
    height: 500px;
    z-index: 10; }
  .lower_ttl_parent.architecture_color::before {
    background: rgba(135, 175, 255, 0.5); }
  .lower_ttl_parent.construction_special_color::before {
    background: rgba(224, 195, 252, 0.5); }
  .lower_ttl_parent.arts_crafts_color::before {
    background: rgba(159, 210, 140, 0.5); }
  .lower_ttl_parent h1 {
    position: relative;
    z-index: 11;
    top: 160px;
    margin-left: 40px;
    height: 350px; }
  .lower_ttl_parent .en {
    font-family: "Roboto Condensed", sans-serif;
    text-transform: uppercase;
    font-size: 1.3rem;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    display: inline-block;
    margin-bottom: 120px;
    margin-left: 55px;
    position: relative;
    letter-spacing: 0.3rem; }
    .lower_ttl_parent .en::before {
      content: "";
      position: absolute;
      left: 50%;
      bottom: -60px;
      width: 1px;
      height: 40px;
      background: #000; }
  .lower_ttl_parent .jp {
    position: absolute;
    left: 0;
    bottom: 0; }
  .lower_ttl_parent.main_about::after {
    background: url("../../img/main/main_about.jpg") no-repeat right center;
    background-size: cover; }
  .lower_ttl_parent.main_subject::after {
    background: url("../../img/main/main_subject.jpg") no-repeat right center;
    background-size: cover; }
  .lower_ttl_parent.main_architecture::after {
    background: url("../../img/main/main_architecture.jpg") no-repeat right center;
    background-size: cover; }
  .lower_ttl_parent.main_construction_study::after {
    background: url("../../img/main/main_construction_study.jpg") no-repeat right center;
    background-size: cover; }
  .lower_ttl_parent.main_construction_special::after {
    background: url("../../img/main/main_construction_special.jpg") no-repeat right center;
    background-size: cover; }
  .lower_ttl_parent.main_arts_crafts::after {
    background: url("../../img/main/main_arts_crafts.jpg") no-repeat right center;
    background-size: cover; }
  .lower_ttl_parent.main_design::after {
    background: url("../../img/main/main_design.jpg") no-repeat right center;
    background-size: cover; }
  .lower_ttl_parent.main_crafts::after {
    background: url("../../img/main/main_crafts.jpg") no-repeat right center;
    background-size: cover; }
  .lower_ttl_parent.main_heritage::after {
    background: url("../../img/main/main_heritage.jpg") no-repeat right center;
    background-size: cover; }
  .lower_ttl_parent.main_campuslife::after {
    background: url("../../img/main/main_campuslife.jpg") no-repeat right center;
    background-size: cover; }
  .lower_ttl_parent.main_employment::after {
    background: url("../../img/main/main_employment.jpg") no-repeat right center;
    background-size: cover; }
  .lower_ttl_parent.main_examination::after {
    background: url("../../img/main/main_examination.jpg") no-repeat right center;
    background-size: cover; }


.lower_ttl_child {
  text-align: center;
  padding: 50px 0;
  background: rgba(221, 221, 221, 0.4); }
  .lower_ttl_child h1 {
    position: relative; }
  .lower_ttl_child small {
    display: block;
    font-size: 1.4rem;
    margin-bottom: 10px; }
  .lower_ttl_child .jp {
    display: inline-block;
    padding: 5px 10px;
    line-height: 1;
    -webkit-transform: scale(0.9, 1);
    transform: scale(0.9, 1);
    font-size: 4.2rem;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "MS P明朝", "MS 明朝", serif;
    background: #fff;
    letter-spacing: 0.5rem; }
  .lower_ttl_child .en {
    font-family: "Roboto Condensed", sans-serif;
    text-transform: uppercase;
    font-size: 1.3rem;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    display: block;
    position: absolute;
    left: 50px;
    bottom: 10px;
    letter-spacing: 0.3rem; }
    .lower_ttl_child .en::before {
      content: "";
      position: absolute;
      left: 50%;
      bottom: -60px;
      width: 1px;
      height: 40px;
      background: #000; }

.lower_ttl_img {
  position: relative;
  height: 630px;
  overflow: hidden; }
  .lower_ttl_img::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 92%;
    height: 650px;
    z-index: 10; }
  .lower_ttl_img h1 {
    position: absolute;
    left: 8%;
    z-index: 20;
    top: 70px; }
  .lower_ttl_img.main_keyword::after {
    background: url("../../img/main/main_keyword.jpg") no-repeat right center;
    background-size: cover; }

.crumbs {
  color: #222;
  margin: 20px 0 80px;
  text-align: right; }
  .crumbs li {
    display: inline;
    font-size: 1.3rem; }
    .crumbs li a:hover {
      text-decoration: underline; }

.pagetop {
  position: fixed;
  right: 10px;
  bottom: 10px;
  z-index: 1000; }
  .pagetop a {
    display: block;
    background: #c59c00;
    color: #fff;
    width: 65px;
    height: 65px;
    line-height: 65px;
    text-align: center;
    border-radius: 50%;
    font-weight: 900; }

.ttl01 {
  border-left: 1px solid #222;
  font-size: 2.6rem;
  margin-bottom: 30px;
  font-weight: 500;
  padding-left: 15px; }

.ttl02 {
  font-size: 2rem;
  font-weight: bold;
  position: relative;
  display: inline-block;
  padding-bottom: 15px;
  margin-bottom: 30px; }
  .ttl02::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 60px;
    height: 3px;
    background: #ddd; }

.ttl03 {
  margin-bottom: 50px; 
  margin-top:130px;
}
  .ttl03 .jp {
    font-size: 3.8rem;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "MS P明朝", "MS 明朝", serif;
    display: block;
    position: relative;
    padding-bottom: 25px;
    margin-bottom: 15px;
    letter-spacing: .1rem; }
    .ttl03 .jp::before {
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      width: 100%;
      height: 1px;
      background: #ccc; }
    .ttl03 .jp::after {
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      width: 250px;
      height: 3px;
      background: #222; }
  .ttl03 .en {
    font-size: 1.3rem;
    font-family: "Roboto Condensed", sans-serif;
    text-transform: uppercase;
    position: relative;
    letter-spacing: .2rem; }
    .ttl03 .en::after {
      content: "";
      position: absolute;
      top: 50%;
      right: -60px;
      width: 40px;
      height: 1px;
      background: #222; }

.ttl04 {
  padding: 30px 0;
  margin-bottom: 50px;
  border-top: 1px solid #222;
  border-bottom: 1px solid #ccc;
  position: relative;
  font-size: 2.6rem; }
  .ttl04::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 75px;
    height: 1px;
    background: #222; }

.ttl05 {
  color: #c59c00;
  font-size: 2rem;
  margin-bottom: 15px; }

.ttl06 {
  text-align: center;
  margin-bottom: 35px; }
  .ttl06.arts_crafts .en {
    color: #9fd28c; }
  .ttl06.arts_crafts .jp {
    background: url("../../img/arts_crafts/point_ttl01@2x.png") no-repeat, url("../../img/arts_crafts/point_ttl02@2x.png") no-repeat right bottom;
    background-size: 25px; }
  .ttl06 .en {
    text-transform: uppercase;
    letter-spacing: .5rem;
    color: #c3d7ff;
    font-size: 1.2rem;
    display: block;
    margin-bottom: 15px; }
  .ttl06 .jp {
    background: url("../../img/architecture/point_ttl01@2x.png") no-repeat, url("../../img/architecture/point_ttl02@2x.png") no-repeat right bottom;
    background-size: 25px;
    font-size: 3rem;
    display: inline-block;
    padding: 15px 60px;
    font-weight: 700;
    letter-spacing: .3rem; }

.ttl07 {
  text-align: center;
  margin-bottom: 25px; }
  .ttl07 span {
    display: inline-block;
    padding: 0 40px;
    font-family: "Roboto Condensed", sans-serif;
    font-size: 3rem;
    font-weight: bold;
    position: relative; }
    .ttl07 span::before, .ttl07 span::after {
      content: "";
      position: absolute;
      width: 5px;
      height: 30px;
      background: url("../img/ttl/ttl07_bg@2x.png");
      background-size: cover; }
    .ttl07 span::before {
      left: 0; }
    .ttl07 span::after {
      right: 0;
      -webkit-transform: rotate(180deg);
      transform: rotate(180deg); }
  .ttl07 small {
    font-size: 1.5rem;
    font-weight: 500;
    display: block;
    position: relative;
    padding-top: 20px;
    margin-top: 20px; }
    .ttl07 small::before {
      content: "";
      position: absolute;
      left: 50%;
      top: 0;
      width: 50px;
      height: 3px;
      background: #000;
      -webkit-transform: translateX(-50%);
      transform: translateX(-50%); }

.ttl08 {
  border-top: 1px solid #222;
  border-bottom: 1px solid #ccc;
  padding: 35px 0;
  position: relative;
  margin-bottom: 40px;
  font-weight: 500; }
  .ttl08::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 75px;
    height: 1px;
    background: #222; }

.ttl09 {
  color: #c59c00;
  font-size: 2rem;
  font-weight: bold;
  margin-bottom: 30px; }

.ttl10 {
  font-weight: bold;
  font-size: 2rem;
  padding-bottom: 20px;
  margin-bottom: 20px;
  position: relative; }
  .ttl10::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 60px;
    height: 3px;
    background: #ddd; }

.ttl11 {
  font-size: 3rem;
  font-family: "Roboto Condensed", sans-serif;
  text-align: center;
  padding-bottom: 30px;
  margin-bottom: 35px;
  position: relative;
  text-transform: uppercase;
  font-weight: bold;
  letter-spacing: .3rem; }
  .ttl11::before {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 50px;
    height: 3px;
    background: #111;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%); }

.ttl12 {
  padding: 10px;
  color: #fff;
  font-weight: bold;
  margin-bottom: 50px; }
  .ttl12.color01 {
    background-image: -webkit-gradient(linear, left top, right top, from(#8fd3f4), to(#d6f0ab));
    background-image: linear-gradient(to right, #8fd3f4, #d6f0ab); }
  .ttl12.color02 {
    background-image: -webkit-gradient(linear, left top, right top, from(#fda085), to(#f6d365));
    background-image: linear-gradient(to right, #fda085, #f6d365); }
  .ttl12.color03 {
    background-image: -webkit-gradient(linear, left top, right top, from(#8fd2f4), to(#a18dd1));
    background-image: linear-gradient(to right, #8fd2f4, #a18dd1); }

.ttl13 {
  font-size: 4.5rem;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "MS P明朝", "MS 明朝", serif;
  padding-bottom: 25px;
  margin-bottom: 40px;
  position: relative; }
  .ttl13::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100px;
    height: 1px;
    background: #111; }

.pager_area .pager_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;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between; }

.pager_area .all {
  position: relative;
  top: -50px; }

.pager_area .pager a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  font-family: "Roboto Condensed", sans-serif;
  font-weight: bold; }

.pager_area .pager .arrow {
  position: relative;
  top: -50px; }

.pager_area .pager.prev .arrow {
  margin-left: 20px; }
  .pager_area .pager.prev .arrow i {
    margin-right: 10px; }

.pager_area .pager.next .arrow {
  margin-right: 20px; }
  .pager_area .pager.next .arrow i {
    margin-left: 10px; }

.pager_area .color_box {
  margin-bottom: 0; }

.btn01 a {
  border-radius: 30px;
  display: block;
  color: #fff;
  padding: 15px;
  background-size: 200% auto;
  background-image: -webkit-gradient(linear, left top, right top, from(#8fd2f4), color-stop(51%, #a18dd2), to(#8fd2f4));
  background-image: linear-gradient(to right, #8fd2f4 0%, #a18dd2 51%, #8fd2f4 100%);
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease; }
  .btn01 a:hover {
    background-position: right center; }

.btn_arrow {
  max-width: 350px;
  text-align: center; }
  .btn_arrow a {
    border-radius: 30px;
    display: block;
    padding: 15px 40px;
    border: 2px solid #111;
    background: url("../img/ico/ico_arrow@2x.png") no-repeat center right 20px;
    background-size: 23px 8px;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease; }
    .btn_arrow a:hover {
      background: #f5f5f5 url("../img/ico/ico_arrow@2x.png") no-repeat center right 20px;
      background-size: 23px 8px; }
  .btn_arrow i {
    color: #f83131; }

.cv_area {
  border-top: 1px solid #ddd;
  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; }
  .cv_area .tel {
    width: 50%;
    text-align: center; }
    .cv_area .tel .tel_in {
      width: 80%;
      margin: 0 auto;
      text-align: left;
      font-family: "Roboto Condensed", sans-serif;
      position: relative;
      padding-left: 65px; }
      .cv_area .tel .tel_in::before {
        content: "";
        position: absolute;
        top: 50%;
        left: 0;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        width: 40px;
        height: 40px;
        background: url("../img/ico/icon-tel@2x.png");
        background-size: cover !important; }
      .cv_area .tel .tel_in span {
        font-size: 3.4rem; }
    .cv_area .tel strong {
      font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Verdana, sans-serif;
      display: block;
      font-weight: 500;
      margin-bottom: 10px; }
  .cv_area .contact {
    width: 50%;
    text-align: center; }
    .cv_area .contact .contact_in {
      background-size: 200% auto;
      background-image: -webkit-gradient(linear, left top, right top, from(#fda085), color-stop(51%, #ffd44d), to(#fda085));
      background-image: linear-gradient(to right, #fda085 0%, #ffd44d 51%, #fda085 100%);
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease; }
      .cv_area .contact .contact_in:hover {
        background-position: right center; }
    .cv_area .contact a {
      padding: 45px 25px;
      width: 100%;
      margin: 0 auto;
      display: block;
      text-align: left;
      font-size: 2rem;
      color: #fff; }
    .cv_area .contact span {
      width: 50%;
      margin: 0 auto;
      display: block;
      position: relative; }
      .cv_area .contact span::before {
        content: "";
        position: absolute;
        top: 50%;
        left: -55px;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        width: 40px;
        height: 45px;
        background: url("../img/ico/icon-mail@2x.png");
        background-size: cover !important; }

.date_list {
  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: 25px; }
  .date_list li {
    max-width: 110px;
    border-radius: 10px;
    padding: 25px 15px 15px;
    color: #fff;
    margin-left: 1px;
    position: relative; }
    .date_list li a {
      color: #fff; }
    .date_list li::before {
      content: "";
      position: absolute;
      right: 10px;
      bottom: 10px;
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 0 0 10px 10px;
      border-color: transparent transparent #fff transparent; }
    .date_list li.end {
      position: relative;
      background: #ccc !important;
      color: #e3e3e3; }
      .date_list li.end::after {
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        content: "終了いたしました";
        line-height: 1;
        font-size: 1.4rem;
        color: #444;
        text-align: center;
        width: 80%; }
      .date_list li.end::before {
        display: none; }
      .date_list li.end .week {
        color: #e3e3e3; }
    .date_list li.comming {
      position: relative;
      background: #ffcfd1 !important;
      color: #fff; }
      .date_list li.comming::after {
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        content: "ComingSoon";
        line-height: 1;
        font-size: 1.4rem;
        color: #fff;
        text-align: center;
        width: 100%;
        padding: 15px 0;
        background: rgba(255, 160, 164, 0.7); }
      .date_list li.comming::before {
        display: none; }
      .date_list li.comming .week {
        color: #e3e3e3; }
    .date_list li.live {
      background: #ffa0a4; }
    .date_list li.freedom {
      background: #ffd44d; }
    .date_list li .month {
      font-size: 2.7rem;
      font-family: "Roboto Condensed", sans-serif;
      font-weight: bold; }
    .date_list li .day {
      font-size: 5rem;
      font-family: "Roboto Condensed", sans-serif;
      font-weight: bold; }
    .date_list li .week {
      font-size: 1.4rem;
      display: block;
      text-align: center; }

.tel_area {
  margin-bottom: 30px; }
  .tel_area .tel_in {
    background: #f2f2f2;
    padding: 50px;
    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; }
  .tel_area .ttl {
    margin: 0 50px; }
    .tel_area .ttl span {
      position: relative;
      display: inline-block;
      border-bottom: 1px solid #222;
      font-weight: bold; }
  .tel_area .tel {
    margin: 0 50px;
    font-family: "Roboto Condensed", sans-serif; }
    .tel_area .tel span {
      font-size: 3.6rem;
      vertical-align: middle;
      margin-left: 15px; }

.hamburger {
  width: 55px;
  height: 55px;
  background: #222;
  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; }

.anim_elm {
  position: relative;
  top: 1px;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  opacity: 0; }
  .anim_elm.is-act {
    top: 0;
    opacity: 1; }

.bottom_menu {
  background: rgba(221, 221, 221, 0.2);
  padding: 50px 0; }
  .bottom_menu .menu_list_text .menu_box a:hover {
    background: #fff;
    color: #222; }

.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: 60px; }
  .menu_list_img .menu_box {
    text-align: center;
    margin-bottom: 30px;
    width: 33.333%; }
    .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: #c59c00; }
        .menu_list_img .menu_box a:hover span::after {
          width: 70px; }
        .menu_list_img .menu_box a:hover .img img {
          -webkit-transform: scale(1.05);
          transform: scale(1.05); }
      .menu_list_img .menu_box a::after {
        content: "";
        position: absolute;
        left: 50%;
        bottom: 0;
        width: 50px;
        height: 1px;
        background: #000;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease; }
    .menu_list_img .menu_box .img {
      overflow: hidden;
      margin-bottom: 20px; }
      .menu_list_img .menu_box .img img {
        -webkit-transition: all 0.5s ease;
        transition: all 0.5s ease; }
    .menu_list_img .menu_box p {
      padding: 15px;
      text-align: left; }
    .menu_list_img .menu_box span {
      display: block;
      position: relative;
      padding-bottom: 20px; }
      .menu_list_img .menu_box span::before {
        content: "\f105";
        font-family: "Font Awesome 5 Pro";
        position: absolute;
        right: 15px; }

.menu_list_text {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 60px; }
  .menu_list_text .menu_box {
    margin-bottom: 20px; }
    .menu_list_text .menu_box a {
      display: block;
      padding: 20px 20px 20px 35px;
      position: relative;
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease;
      border-bottom: 1px solid #000; }
      .menu_list_text .menu_box a.blank_link::after {
        content: "\f08e"; }
      .menu_list_text .menu_box a.pdf_link::after {
        content: "\f1c1"; }
      .menu_list_text .menu_box a::before {
        position: absolute;
        left: 10px;
        content: "\f192";
        font-family: "Font Awesome 5 Pro";
        font-weight: 900;
        color: #c59c00; }
      .menu_list_text .menu_box a::after {
        content: "\f105";
        font-family: "Font Awesome 5 Pro";
        font-weight: 400;
        position: absolute;
        right: 15px; }
      .menu_list_text .menu_box a:hover {
        color: #c59c00; }
      .menu_list_text .menu_box a.is-act {
        background: #fff; }

.subject_child_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;
  margin-bottom: 50px; }
  .subject_child_list.arts_crafts .subject_child_box {
    width: 32.8%; }
  .subject_child_list .subject_child_box {
    width: 49.5%;
    text-align: center;
    padding-top: 10vw;
    padding-bottom: 30px; }
    .subject_child_list .subject_child_box.architecture_design {
      background: #c3d7ff url("../../img/architecture/architecture_img01@2x.jpg") no-repeat;
      background-size: contain; }
      .subject_child_list .subject_child_box.architecture_design .more_btn a {
        border: 3px solid #87afff;
        color: #87afff; }
        .subject_child_list .subject_child_box.architecture_design .more_btn a:hover {
          background: #87afff url("../../img/architecture/more_arrow@2x.png") no-repeat center right 20px;
          background-size: cover;
          background-size: 18px 7px;
          color: #fff; }
    .subject_child_list .subject_child_box.traditional_building {
      background: #efe1fd url("../../img/architecture/architecture_img02@2x.jpg") no-repeat;
      background-size: contain; }
      .subject_child_list .subject_child_box.traditional_building .more_btn a {
        border: 3px solid #dbb6ff;
        color: #dbb6ff; }
        .subject_child_list .subject_child_box.traditional_building .more_btn a:hover {
          background: #dbb6ff url("../../img/architecture/more_arrow@2x.png") no-repeat center right 20px;
          background-size: cover;
          background-size: 18px 7px;
          color: #fff; }
    .subject_child_list .subject_child_box.design {
      background: #cfe8c5 url("../../img/arts_crafts/arts_crafts_img01@2x.jpg") no-repeat;
      background-size: contain; }
      .subject_child_list .subject_child_box.design .more_btn a {
        border: 3px solid #9fd28c;
        color: #9fd28c; }
        .subject_child_list .subject_child_box.design .more_btn a:hover {
          background: #9fd28c url("../../img/architecture/more_arrow@2x.png") no-repeat center right 20px;
          background-size: cover;
          background-size: 18px 7px;
          color: #fff; }
    .subject_child_list .subject_child_box.crafts {
      background: #c5e8dc url("../../img/arts_crafts/arts_crafts_img02@2x.jpg") no-repeat;
      background-size: contain; }
      .subject_child_list .subject_child_box.crafts .more_btn a {
        border: 3px solid #8cd2ba;
        color: #8cd2ba; }
        .subject_child_list .subject_child_box.crafts .more_btn a:hover {
          background: #8cd2ba url("../../img/architecture/more_arrow@2x.png") no-repeat center right 20px;
          background-size: cover;
          background-size: 18px 7px;
          color: #fff; }
    .subject_child_list .subject_child_box.heritage {
      background: #e1eda7 url("../../img/arts_crafts/arts_crafts_img03@2x.jpg") no-repeat;
      background-size: contain; }
      .subject_child_list .subject_child_box.heritage .more_btn a {
        border: 3px solid #c3dc50;
        color: #c3dc50; }
        .subject_child_list .subject_child_box.heritage .more_btn a:hover {
          background: #c3dc50 url("../../img/architecture/more_arrow@2x.png") no-repeat center right 20px;
          background-size: cover;
          background-size: 18px 7px;
          color: #fff; }
    .subject_child_list .subject_child_box h3 {
      margin-bottom: 20px; }
    .subject_child_list .subject_child_box ul {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center;
      max-width: 260px;
      margin: 0 auto 25px; }
      .subject_child_list .subject_child_box ul li {
        background: #ffffff;
        border-radius: 5px;
        text-align: center;
        margin: 5px;
        padding: 5px 10px;
        line-height: 1; }
    .subject_child_list .subject_child_box .more_btn {
      width: 300px;
      margin: 0 auto; }
      .subject_child_list .subject_child_box .more_btn a {
        display: block;
        background: #fff url("../../img/architecture/more_arrow@2x.png") no-repeat center right 20px;
        background-size: cover;
        background-size: 18px 7px;
        display: block;
        padding: 10px;
        border-radius: 30px;
        font-family: "Roboto Condensed", sans-serif;
        font-weight: bold;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease; }

.common_bnr {
  background-color: #f2f2f2;
	bottom left;
  background-size: contain;
  padding-bottom: 30px;
	padding-top: 30px;
  margin-bottom: 50px;
  margin-top: 10px; }

.post .post_info {
  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;
  margin-bottom: 50px; }
  .post .post_info time {
    font-size: 1.3rem;
    font-weight: bold;
    letter-spacing: .3rem;
    font-family: "Roboto Condensed", sans-serif;
    padding-right: 60px;
    margin-right: 20px;
    display: inline-block;
    position: relative; }
    .post .post_info time::before {
      content: "";
      position: absolute;
      right: 0;
      top: 50%;
      width: 40px;
      height: 1px;
      background: #111; }
  .post .post_info .cat {
    display: inline-block;
    font-size: 1.3rem;
    border: 1px solid #ccc;
    margin-right: 20px;
    padding: 2px 20px; }

.post .body {
  overflow: hidden; }
  .post .body a {
    text-decoration: underline; }
    .post .body a:hover {
      text-decoration: none; }

.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: "Roboto Condensed", sans-serif;
    padding-right: 150px;
    margin-right: 20px;
    display: inline-block;
    position: relative;
    -webkit-flex-basis: 12%;
    -ms-flex-preferred-size: 12%;
    flex-basis: 12%; }
    .news_list .news_box time::before {
      content: "";
      position: absolute;
      right: 0;
      top: 50%;
      width: 100px;
      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: 75%;
    -ms-flex-preferred-size: 75%;
    flex-basis: 75%; }
    .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; }

.topics_list .topics_box {
  margin-bottom: 70px;
  position: relative; }
  .topics_list .topics_box:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 90%;
    z-index: -1;
    background: #fff; }
  .topics_list .topics_box a {
    display: block;
    padding-bottom: 10px;
    background: url("../img/ico/ico_arrow@2x.png") no-repeat right 15px bottom 20px;
    background-size: 23px 8px; }
  .topics_list .topics_box .thumb {
    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; }
    .topics_list .topics_box .thumb time {
      font-size: 1.5rem;
      font-family: "Roboto Condensed", sans-serif;
      display: inline-block;
      position: relative;
      -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl;
      padding: 35px 15px 5px; }
      .topics_list .topics_box .thumb time::before {
        content: "";
        position: absolute;
        left: 50%;
        top: 0;
        width: 2px;
        height: 23px;
        background: #111; }
  .topics_list .topics_box h3 {
    font-size: 1.5rem;
    line-height: 1.4;
    margin-bottom: 15px;
    padding-left: 60px;
    min-height: 42px; }
  .topics_list .topics_box .cat {
    font-size: 1.3rem;
    padding-left: 60px;
    color: #87afff; }

.topics_list .slick-prev, .topics_list .slick-next {
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  border-radius: 0; }
  .topics_list .slick-prev::before, .topics_list .slick-next::before {
    display: none; }

.topics_list .slick-prev {
  background: url("../../img/index/topics_slide_prev@2x.jpg");
  background-size: cover; }

.topics_list .slick-next {
  background: url("../../img/index/topics_slide_next@2x.jpg");
  background-size: cover; }

.color_box {
  margin-bottom: 60px; }
  .color_box.color01 .thumb::before {
    background-image: -webkit-gradient(linear, left top, right top, from(#8fd3f4), to(#d6f0ab));
    background-image: linear-gradient(to right, #8fd3f4, #d6f0ab); }
  .color_box.color01:hover .thumb::after {
    background-image: -webkit-gradient(linear, left top, right top, from(#8fd3f4), to(#d6f0ab));
    background-image: linear-gradient(to right, #8fd3f4, #d6f0ab); }
  .color_box.color02 .thumb::before {
    background-image: -webkit-gradient(linear, left top, right top, from(#fda085), to(#f6d365));
    background-image: linear-gradient(to right, #fda085, #f6d365); }
  .color_box.color02:hover .thumb::after {
    background-image: -webkit-gradient(linear, left top, right top, from(#fda085), to(#f6d365));
    background-image: linear-gradient(to right, #fda085, #f6d365); }
  .color_box.color03 .thumb::before {
    background-image: -webkit-gradient(linear, left top, right top, from(#8fd2f4), to(#a18dd1));
    background-image: linear-gradient(to right, #8fd2f4, #a18dd1); }
  .color_box.color03:hover .thumb::after {
    background-image: -webkit-gradient(linear, left top, right top, from(#8fd2f4), to(#a18dd1));
    background-image: linear-gradient(to right, #8fd2f4, #a18dd1); }
  .color_box:hover .thumb::after {
    opacity: 0.6; }
  .color_box:hover .thumb span {
    opacity: 1; }
  .color_box .thumb {
    margin-bottom: 40px;
    position: relative;
    z-index: 10; }
    .color_box .thumb::before {
      content: "";
      position: absolute;
      width: 240px;
      height: 160px;
      bottom: -10px;
      left: -10px;
      z-index: -1;
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease;
      background: -webkit-gradient(linear, left top, right top, from(#8fd3f4), to(#d6f0ab));
      background: linear-gradient(to right, #8fd3f4, #d6f0ab); }
    .color_box .thumb::after {
      content: "";
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      opacity: 0;
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease; }
    .color_box .thumb span {
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      color: #fff;
      z-index: 10;
      font-size: 2.6rem;
      opacity: 0; }
  .color_box h3 {
    font-size: 1.6rem;
    font-weight: bold;
    margin-bottom: 15px; }
  .color_box ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    .color_box ul li {
      font-size: 1.3rem;
      line-height: 1;
      font-family: "Roboto Condensed", sans-serif;
      margin-right: 10px;
      padding-right: 10px;
      border-right: 1px solid #111; }
      .color_box ul li:last-child {
        border: none; }

.more_btn {
  position: relative;
  z-index: 10;
  width: 190px; }
  .more_btn a {
    display: block;
    background: url("../../img/architecture/more_arrow@2x.png") no-repeat center right 20px;
    background-size: cover;
    background-size: 18px 7px;
    display: block;
    padding: 10px;
    border-radius: 30px;
    font-family: "Roboto Condensed", sans-serif;
    font-weight: bold;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    font-size: 1.3rem;
    text-align: center;
    border: 2px solid #000; }
    .more_btn a:hover {
      background: #f5f5f5 url("../../img/architecture/more_arrow@2x.png") no-repeat center right 20px;
      background-size: cover;
      background-size: 18px 7px; }

.dot_list li {
  position: relative;
  padding-left: 25px;
  margin-bottom: 5px; 
  font-size:16px;
}
  .dot_list li::before {
    content: "・";
    position: absolute;
    left: 0;
    top: 0;
    color: #c59c00;
    font-weight: bold;
    font-size: 2.5rem; }

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

.zoom_img {
  overflow: hidden; }
  .zoom_img img {
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease; }
    .zoom_img img:hover {
      -webkit-transform: scale(1.05);
      transform: scale(1.05); }

.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: 350px;
    height: 60px; 
}
    .loading .logo_loading #circle {
      opacity: 0;
      -webkit-transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
      transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
      -webkit-transform: translateX(70px);
      transform: translateX(70px); }
      .loading .logo_loading #circle.is-act {
        -webkit-transform: translateX(0);
        transform: translateX(0); }
    .loading .logo_loading #text {
      opacity: 0;
      -webkit-transform: translateX(-20px);
      transform: translateX(-20px);
      -webkit-transition: all 1s cubic-bezier(0.165, 0.84, 0.44, 1);
      transition: all 1s cubic-bezier(0.165, 0.84, 0.44, 1); }
      .loading .logo_loading #text.is-act {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0); }

/*----------------------------------------------------
	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 {
  padding: 10px 15px;
  font-size: 16px;
  font-size: 1.6rem; }

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

.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: 50%;
  -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; }

.contactForm input[type="radio"]:checked:after {
  display: block;
  position: absolute;
  top: 5px;
  left: 5px;
  content: "";
  width: 6px;
  height: 6px;
  background: #ffa0a4;
  border-radius: 50%; }

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

.contactForm input[type="checkbox"]:checked::after {
  position: absolute;
  content: "";
  top: -3px;
  left: 3px;
  width: 8px;
  height: 14px;
  border-right: 4px solid #ffa0a4;
  border-bottom: 4px solid #ffa0a4;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg); }

/*----------------------------------------------------
	ページ分割ナビ
--------------------------------------------------- */
.wp-pagenavi {
  padding: 40px 0 40px;
  text-align: center;
  overflow: hidden;
  border-top: 1px solid #ccc; }
  .wp-pagenavi a, .wp-pagenavi span {
    padding: 3px 11px;
    background: #ffa0a4;
    border: 1px solid #ffa0a4;
    color: #fff;
    margin: 0 5px 10px 0;
    text-decoration: none;
    display: inline-block;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease; }
  .wp-pagenavi span {
    background: #fff;
    color: #ffa0a4; }
  .wp-pagenavi .pages {
    margin-right: 20px; }
  .wp-pagenavi a:hover {
    background: #fff;
    color: #ffa0a4; }
  .wp-pagenavi .alignleft {
    margin-top: 0;
    margin-bottom: 0;
    float: none;
    vertical-align: top;
    max-width: 40%;
    display: inline-block; }
    .wp-pagenavi .alignleft a {
      border: none;
      background: none;
      color: #222;
      font-weight: bold; }
  .wp-pagenavi .center {
    margin-top: 0;
    margin-bottom: 0;
    float: none;
    display: inline-block; }
    .wp-pagenavi .center a {
      background: none;
      border: none; }
  .wp-pagenavi .alignright {
    margin-top: 0;
    margin-bottom: 0;
    float: none;
    vertical-align: top;
    max-width: 40%;
    display: inline-block; }
    .wp-pagenavi .alignright a {
      border: none;
      background: none;
      color: #222;
      font-weight: bold; }

/*----------------------------------------------------
  送信確認ボタン
--------------------------------------------------- */
.btnArea {
  text-align: center;
  margin-bottom: 40px;
  overflow: hidden; }
  .btnArea input {
    margin: 0 20px; }

input[name="submitConfirm"] {
  background: #ffa0a4;
  color: #FFF;
  padding: 0;
  width: 185px;
  height: 45px;
  border: none;
  display: block;
  margin: 20px auto;
  cursor: pointer; }
  input[name="submitConfirm"]:hover {
    opacity: 0.8;
    filter: alpha(opacity=80); }

/*----------------------------------------------------
  戻るボタン
--------------------------------------------------- */
input[name="submitBack"] {
  background: #ddd;
  padding: 0;
  height: 45px;
  border: none;
  cursor: pointer;
  float: left;
  margin: 1%;
  width: 48%; }
  input[name="submitBack"]:hover {
    opacity: 0.8;
    filter: alpha(opacity=80); }

/*----------------------------------------------------
  送信ボタン
--------------------------------------------------- */
input[name="submitSubmit"] {
  background: #ffa0a4;
  color: #FFF;
  height: 45px;
  border: none;
  cursor: pointer;
  float: left;
  margin: 1%;
  width: 48%; }
  input[name="submitSubmit"]:hover {
    opacity: 0.8;
    filter: alpha(opacity=80); }

/*----------------------------------------------------
  完了画面のトップへ戻るボタン
--------------------------------------------------- */
.return_top {
  background: #ffa0a4;
  color: #FFF !important;
  padding: 0;
  width: 185px;
  height: 45px;
  line-height: 45px;
  border: none;
  display: block;
  margin: 20px auto; }
  .return_top:hover {
    opacity: 0.8;
    filter: alpha(opacity=80); }

/*----------------------------------------------------
  必須
--------------------------------------------------- */
.require {
  margin-left: 10px;
  background-color: #C33;
  padding: 3px 4px;
  color: #fafafa;
  font-size: 9px;
  letter-spacing: 1px;
  margin: 0px 0px 0px 10px;
  line-height: 9px;
  border-radius: 3px;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Verdana, sans-serif;
  zoom: normal; }

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

/*----------------------------------------------------
	ヘッダー
----------------------------------------------------*/
.l-header {
  width: 100%; }
  .l-header .header_top ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end; }
    .l-header .header_top ul li {
      position: relative;
      padding-left: 15px;
      line-height: 1;
      margin-left: 1px;
      font-size: 1.6rem; }
      .l-header .header_top ul li::before {
        content: "・";
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        left: 0;
        color: #c59c00; }
      .l-header .header_top ul li a:hover {
        text-decoration: underline; }
      .l-header .header_top ul li.cv_btn {
        padding-left: 0; }
        .l-header .header_top ul li.cv_btn::before {
          display: none; }
        .l-header .header_top ul li.cv_btn a {
          display: block;
          background: #c59c00;
          color: #fff;
          padding: 10px 25px;
          -webkit-transition: all 0.3s ease;
          transition: all 0.3s ease; }
          .l-header .header_top ul li.cv_btn a:hover {
            opacity: 0.8;
            text-decoration: none; }
  .l-header .header_bottom .header_bottom_in {
    -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;
    padding: 25px 25px 30px;
    border-top: 1px solid #eee;
    position: relative; }
  .l-header .gnavi {
    margin-top:10px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center; }
    .l-header .gnavi li {
      font-size: 1.6rem;
      margin: 0 10px;
      font-weight: bold; }
      .l-header .gnavi li a {
        display: block;
        position: relative;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease; }
        .l-header .gnavi li a::before {
          content: "";
          position: absolute;
          left: 50%;
          top: 25px;
          width: 1px;
          height: 0;
          background: #222;
          -webkit-transition: all 0.3s ease;
          transition: all 0.3s ease; }
        .l-header .gnavi li a:hover {
          color: #c59c00; 
          }
      .l-header .gnavi li.is-act > a {
        color: #c59c00; }
        .l-header .gnavi li.is-act > a::before {
          height: 20px; }
  .l-header .mega_menu {
    width: 100%;
    position: absolute;
    left: 0;
    padding-top: 30px;
    z-index: 100;
    display: none; }
    .l-header .mega_menu .mega_menu_in {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
    .l-header .mega_menu .ttl {
      -webkit-flex-basis: 20%;
      -ms-flex-preferred-size: 20%;
      flex-basis: 20%;
      text-align: right;
      background: #c59c00;
      color: #fff;
      padding: 20px;
      font-size: 1.6rem; }
      .l-header .mega_menu .ttl a {
        color: #fff; }
        .l-header .mega_menu .ttl a:hover {
          color: #fff;
          opacity: .8; }
    .l-header .mega_menu ul {
      min-height: 110px;
      padding: 20px;
      -webkit-flex-basis: 80%;
      -ms-flex-preferred-size: 80%;
      flex-basis: 80%;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      background: #f5f5f5;
      margin-bottom: 0; }
      .l-header .mega_menu ul li {
        font-size: 1.6rem;
        margin: 5px 15px; }
        .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 .current_navi {
    background: #f5f5f5;
    padding: 10px 20px;
    position: relative;
    right: 0;
    top: 26px;
    margin-left: auto;
    margin-bottom: 30px;
    display: none;
    max-width: 1000px; }
    .l-header .current_navi.is-act {
      display: block; }
    .l-header .current_navi ul {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
      .l-header .current_navi ul li {
        font-size: 1.4rem;
        font-weight: 400;
        position: relative;
        margin: 10px 25px; }
        .l-header .current_navi ul li::after {
          content: "/";
          position: absolute;
          right: -25px;
          top: 0; }
        .l-header .current_navi ul li:last-child::after {
          display: none; }
        .l-header .current_navi ul li a {
          padding-bottom: 5px;
          -webkit-transition: all 0.3s ease;
          transition: all 0.3s ease;
          position: relative; }
          .l-header .current_navi ul li a::before {
            content: "";
            position: absolute;
            left: 0;
            top: inherit;
            bottom: 0;
            width: 0;
            height: 2px;
            background: #222;
            -webkit-transition: all 0.3s ease;
            transition: all 0.3s ease; }
          .l-header .current_navi ul li a.is-act, .l-header .current_navi ul li a:hover {
            color: #c59c00; }
            .l-header .current_navi ul li a.is-act::before, .l-header .current_navi ul li a:hover::before {
              width: 100%; }

/*----------------------------------------------------
	#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-top: 5px; 
    margin-bottom: 5px; 
}

/*----------------------------------------------------
	#side
----------------------------------------------------*/
/*-----------------------------------------------------
	フッター
-----------------------------------------------------*/
.l-footer {
  width: 100%; }
  .l-footer .foot_top {
    background: #f2f2f2;
    padding: 35px 0; }
    .l-footer .foot_top .row {
      -webkit-box-align: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center; }
  .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 {
    padding: 45px 0 0; }
    .l-footer .foot_middle dl {
      margin-bottom: 60px; }
      .l-footer .foot_middle dl dt {
        font-size: 1.6rem;
        font-weight: bold;
        margin-bottom: 20px; }
      .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; 
        margin-left: -40px; 
}
        .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 a:hover {
        text-decoration: underline; }
    .l-footer .foot_middle .f_navi_other {
      padding: 25px 0;
      background: #f1f1f1; }
      .l-footer .foot_middle .f_navi_other ul {
        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; }
      .l-footer .foot_middle .f_navi_other li {
        margin: 0 15px;
        font-size: 1.3rem;
        position: relative; }
        .l-footer .foot_middle .f_navi_other li a {
          font-weight: bold;
          padding-left: 20px;
          -webkit-transition: all 0.3s ease;
          transition: all 0.3s ease; }
          .l-footer .foot_middle .f_navi_other li a::before {
            content: "\f105";
            color: #c59c00;
            font-family: "Font Awesome 5 Pro";
            position: absolute;
            left: 0; }
          .l-footer .foot_middle .f_navi_other li a:hover {
            color: #c59c00; }
  .l-footer .foot_bottom {
    padding: 30px 0; }
    .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; }

/*----------------------------------------------------
	各ページのスタイル
----------------------------------------------------*/
/* トップページ */
.m-index h2 {
  font-size: 3.5rem;
  font-family: "Roboto Condensed", sans-serif;
  font-weight: 400;
  text-transform: uppercase;
  margin-bottom: 40px;
  letter-spacing: .2rem; }

.m-index .topics_list .btn01 {
  max-width: 300px;
  margin: 0 auto;
  text-align: center; }

.m-index .index_news {
  background: url("../../img/index/index_news_bg@2x.jpg");
  background-size: cover;
  padding: 45px 5%; }
  .m-index .index_news h2 {
    text-align: center;
    margin-bottom: 20px; }
  .m-index .index_news .topics_box {
    margin: 20px; }

.m-index .index_information {
  position: relative;
  padding: 0px 0; }
  .m-index .index_information .btn01 {
    max-width: 300px;
    margin: 0 auto;
    text-align: center; }
  .m-index .index_information h2 {
    margin-top:40px;
    /*margin-bottom: 60px;*/ }
  .m-index .index_information .information_in {
    position: relative; }
    .m-index .index_information .information_in .cat_list {
      position: absolute;
      right: 0;
      top: 0; }

.m-index .index_subject {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  .m-index .index_subject .subject_box {
    width: 50%;
    padding: 40px;
    position: relative; 
    margin-left:5px;
    margin-right:5px;
    }
    .m-index .index_subject .subject_box::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 480px;
      z-index: -1; }

    /*小学*/
    .m-index .index_subject .subject_box.shougaku:before {
      background: url("../../img/index/index_subject_img01@2x.jpg") no-repeat center;
      background-size: cover; }
    .m-index .index_subject .subject_box.shougaku .box_in ul li:hover::after {
      background: #87afff; }
    .m-index .index_subject .subject_box.shougaku .box_in ul li:hover a {
      background: rgba(135, 175, 255, 0.5); }

    /*中学*/
    .m-index .index_subject .subject_box.chugaku:before {
      background: url("../../img/index/index_subject_img02@2x.jpg") no-repeat;
      background-size: cover; }
    .m-index .index_subject .subject_box.chugaku .box_in ul li:hover::after {
      background: #87afff; }
    .m-index .index_subject .subject_box.chugaku .box_in ul li:hover a {
      background: rgba(135, 175, 255, 0.5); }

    /*高校*/
    .m-index .index_subject .subject_box.koukou:before {
      background: url("../../img/index/index_subject_img03@2x.jpg") no-repeat;
      background-size: cover; }
    .m-index .index_subject .subject_box.koukou .box_in ul li:hover::after {
      background: #87afff; }
    .m-index .index_subject .subject_box.koukou .box_in ul li:hover a {
      background: rgba(135, 175, 255, 0.5); }


    /*個別指導*/
    .m-index .index_subject .subject_box.kobetu:before {
      background: url("../../img/index/index_subject_img04@2x.jpg") no-repeat;
      background-size: cover; }
    .m-index .index_subject .subject_box.kobetu .box_in ul li:hover::after {
      background: #87afff; }
    .m-index .index_subject .subject_box.kobetu .box_in ul li:hover a {
      background: rgba(135, 175, 255, 0.5); }



    .m-index .index_subject .subject_box.architecture:before {
      background: url("../../img/index/index_subject_img01@2x.jpg") no-repeat;
      background-size: cover; }
    .m-index .index_subject .subject_box.architecture .box_in ul li:hover::before {
      background: #87afff; }
    .m-index .index_subject .subject_box.architecture .box_in ul li:hover a {
      background: rgba(135, 175, 255, 0.5); }



    .m-index .index_subject .subject_box.design_kogei:before {
      background: url("../../img/index/index_subject_img02@2x.jpg") no-repeat;
      background-size: cover; }
    .m-index .index_subject .subject_box.design_kogei .box_in ul li:hover::before {
      background: #9fd28c; }
    .m-index .index_subject .subject_box.design_kogei .box_in ul li:hover a {
      background: rgba(159, 210, 140, 0.5); }




  .m-index .index_subject .box_in {
    background: #fff !important;
    margin-top: 300px;
    padding-left: 70px;
    padding-right: 70px;
    position: relative; }
    .m-index .index_subject .box_in .en {
      position: absolute;
      left: 50px;
      top: -85px;
      -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl;
      text-transform: uppercase;
      font-family: "Roboto Condensed", sans-serif;
      letter-spacing: 4px;
      font-size: 1.2rem; }
      .m-index .index_subject .box_in .en::before {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        width: 1px;
        height: 130%;
        background: #111; }
    .m-index .index_subject .box_in h3 {
      position: relative;
      top: 20px;
      }
    .m-index .index_subject .box_in ul {
      border-top: 1px solid #111; }
      .m-index .index_subject .box_in ul li {
        border-bottom: 1px solid #ccc;
        position: relative; 
        font-size:1.2em;
        margin-left:-30px;
}
        .m-index .index_subject .box_in ul li::before {
content: "\f192";
font-family: "Font Awesome 5 Pro";
position: absolute;
left: 10px;
top: 50%;
          -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
color: #c59c00;
font-weight: 900;

}
        .m-index .index_subject .box_in ul li::after {
          content: "\f105";
          font-family: "Font Awesome 5 Pro";
          position: absolute;
          right: 15px;
          top: 50%;
          -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
          width: 20px;
          height: 20px;
          line-height: 20px;
          -webkit-transition: all 0.3s ease;
          transition: all 0.3s ease;
          text-align: center;
          border-radius: 50%;
          z-index: 10; 
}






        .m-index .index_subject .box_in ul li.child a {
          padding-left: 50px;
          position: relative; }
          .m-index .index_subject .box_in ul li.child a::before {
            content: "－";
            position: absolute;
            left: 20px;
            top: 50%;
            -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }
      .m-index .index_subject .box_in ul a {
        display: block;
        padding: 15px 40px;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease; }

.m-index .index_color {
  background: url("../../img/index/index_color_bg@2x.jpg") no-repeat left top;
  background-size: contain;
  padding: 120px 0 150px;
  position: relative; }
  .m-index .index_color::before {
    content: "";
    position: absolute;
    left: 0;
    top: -30px;
    width: 100%;
    height: 100%;
    background: url("../../img/index/index_color_line.png") no-repeat right top;
    z-index: 0; }
  .m-index .index_color h2 {
    margin-bottom: 120px;
    position: relative;
    z-index: 10; }
  .m-index .index_color p span {
    display: inline-block;
    font-weight: bold;
    margin-bottom: 10px;
    padding-bottom: 10px;
    position: relative;
    line-height: 1;
    letter-spacing: 2px; }
    .m-index .index_color p span::before {
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      width: 100%;
      height: 1px;
      background: #111; }
  .m-index .index_color .more_btn {
    width: 190px; }
    .m-index .index_color .more_btn a {
      display: block;
      background: #fff url("../../img/architecture/more_arrow@2x.png") no-repeat center right 20px;
      background-size: cover;
      background-size: 18px 7px;
      display: block;
      padding: 10px;
      border-radius: 30px;
      font-family: "Roboto Condensed", sans-serif;
      font-weight: bold;
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease;
      font-size: 1.3rem;
      text-align: center; }
      .m-index .index_color .more_btn a:hover {
        background: #f5f5f5 url("../../img/architecture/more_arrow@2x.png") no-repeat center right 20px;
        background-size: cover;
        background-size: 18px 7px; }
  .m-index .index_color .index_color_list {
    position: relative;
    z-index: 100; }
    .m-index .index_color .index_color_list .right {
      top: 180px;
      position: relative; }

.m-index .index_pickup {
  padding: 60px 0;
  background: #f1f1f1; }
  .m-index .index_pickup h2 {
    text-align: center; }
  .m-index .index_pickup ul li a {
    margin: 10px;
    display: block; }
  .m-index .index_pickup .slick-prev, .m-index .index_pickup .slick-next {
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    border-radius: 0; }
    .m-index .index_pickup .slick-prev::before, .m-index .index_pickup .slick-next::before {
      display: none; }
  .m-index .index_pickup .slick-prev {
    background: url("../../img/index/topics_slide_prev@2x.jpg");
    background-size: cover;
    left: 25%; }
  .m-index .index_pickup .slick-next {
    background: url("../../img/index/topics_slide_next@2x.jpg");
    background-size: cover;
    right: 25%; }

.m-index .index_campus {
  padding-top:50px;
  background-color:#fff;
}

.m-index .index_campus h2 {
  text-align: center; }

.m-index .index_campus .campus_box {
  position: relative;
  padding-bottom: 100px; }
  .m-index .index_campus .campus_box .name {
    /*
    position: absolute;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    */
    background: #fff;
    text-align: center;
    /*width: 70%;*/
    bottom: 40px;
    -webkit-box-shadow: 0px 5px 25px -3px rgba(0, 0, 0, 0.1);
    box-shadow: 0px 5px 25px -3px rgba(0, 0, 0, 0.1); }
  .m-index .index_campus .campus_box h3 {
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 15px; }
  .m-index .index_campus .campus_box p {
    margin-bottom: 10px; }
  .m-index .index_campus .campus_box span {
    display: block; }
  .m-index .index_campus .campus_box a {
    display: block;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    min-height:10em;
    padding-top: 35px; 
    padding-bottom: 20px; 
    }
    .m-index .index_campus .campus_box a:hover {
      color: #fff;
      background: #c59c00; }

/* 学校案内ページ */
/* 教育理念・目標,3つのポリシーページ */
.m-philosophy .hero, .m-policy .hero {
  margin-bottom: 60px; }

.m-philosophy dl, .m-policy dl {
  margin-bottom: 60px; }
  .m-philosophy dl dt span, .m-policy dl dt span {
    font-size: 2rem;
    font-weight: bold;
    position: relative;
    display: inline-block;
    padding-bottom: 15px; }
    .m-philosophy dl dt span::before, .m-policy dl dt span::before {
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      width: 60px;
      height: 3px;
      background: #ddd; }

.m-philosophy ul li, .m-policy ul li {
  padding-left: 75px;
  position: relative; }
  .m-philosophy ul li::before, .m-policy ul li::before {
    position: absolute;
    left: 20px;
    color: #c59c00; }
  .m-philosophy ul li::after, .m-policy ul li::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 40px;
    width: 10px;
    height: 1px;
    background: #c59c00; }
  .m-philosophy ul li:nth-child(1)::before, .m-policy ul li:nth-child(1)::before {
    content: "1"; }
  .m-philosophy ul li:nth-child(2)::before, .m-policy ul li:nth-child(2)::before {
    content: "2"; }
  .m-philosophy ul li:nth-child(3)::before, .m-policy ul li:nth-child(3)::before {
    content: "3"; }
  .m-philosophy ul li:nth-child(4)::before, .m-policy ul li:nth-child(4)::before {
    content: "4"; }
  .m-philosophy ul li:nth-child(5)::before, .m-policy ul li:nth-child(5)::before {
    content: "5"; }
  .m-philosophy ul li:nth-child(6)::before, .m-policy ul li:nth-child(6)::before {
    content: "6"; }
  .m-philosophy ul li:nth-child(7)::before, .m-policy ul li:nth-child(7)::before {
    content: "7"; }
  .m-philosophy ul li:nth-child(8)::before, .m-policy ul li:nth-child(8)::before {
    content: "8"; }
  .m-philosophy ul li:nth-child(9)::before, .m-policy ul li:nth-child(9)::before {
    content: "9"; }
  .m-philosophy ul li:nth-child(10)::before, .m-policy ul li:nth-child(10)::before {
    content: "10"; }

/* 学校沿革ページ */
.m-history .history_head {
  position: relative;
  padding-bottom: 150px; }
  .m-history .history_head::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    max-width: 780px;
    width: 55%;
    height: 830px;
    background: url("../../img/history/history_img01.jpg");
    background-size: cover; }
  .m-history .history_head h2 {
    margin: 90px auto 130px;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    font-size: 2.4rem;
    font-weight: bold;
    line-height: 1.5;
    min-height: 290px; }
    .m-history .history_head h2 span {
      font-size: 1.3rem;
      display: block;
      margin-top: -30px;
      margin-left: 20px;
      font-weight: 500; }

.m-history .history_list table th, .m-history .history_list table td {
  border: none; }

.m-history .history_list table th {
  width: 190px;
  font-family: "Roboto Condensed", sans-serif;
  color: #c59c00;
  font-size: 2.2rem;
  position: relative;
  text-align: left; }
  .m-history .history_list table th::after {
    content: "";
    position: absolute;
    top: 25px;
    right: 0;
    width: 30px;
    height: 1px;
    background: #333; }
  .m-history .history_list table th span {
    font-size: 1.3rem;
    color: #999;
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Verdana, sans-serif;
    vertical-align: middle;
    font-weight: normal;
    margin-left: 10px; }

/* メッセージページ */
.m-message .message_area {
  margin-bottom: 90px; }
  .m-message .message_area .row {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center; }
  .m-message .message_area h2 {
    font-size: 2rem;
    font-weight: bold; }
  .m-message .message_area .prof_area {
    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: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end; }
    .m-message .message_area .prof_area .name {
      text-align: right;
      margin-right: 30px; }
    .m-message .message_area .prof_area h3 {
      font-size: 2.4rem;
      font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "MS P明朝", "MS 明朝", serif; }
      .m-message .message_area .prof_area h3 span {
        display: block;
        font-size: 1.3rem;
        font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Verdana, sans-serif; }
    .m-message .message_area .prof_area p {
      margin-bottom: 0; }

/* 10のキーワードから知るKYOBIページ */
.m-keyword .keyword {
  background: url("../../img/keyword/keyword_bg.jpg");
  padding: 60px 0; }

.m-keyword .keyword_area .keyword_box {
  margin-bottom: 30px; }

.m-keyword .keyword_area .js-keyword_in {
  display: none; }

.m-keyword .keyword_area .keyword_in {
  background: #fff;
  padding: 35px 50px;
  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; }

.m-keyword .keyword_area .ttl_img {
  cursor: pointer; }

.m-keyword .keyword_area .text {
  width: 490px; }
  .m-keyword .keyword_area .text p {
    margin-top: 20px; }

.m-keyword .keyword_area .img {
  width: 445px; }

/* オープンキャンパスページ */
.m-access .hero {
  margin-bottom: 50px; }

.m-access .map {
  margin-bottom: 50px; }
  .m-access .map .map_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; }
    .m-access .map .map_in p {
      margin-bottom: 0; }
  .m-access .map .btn01 {
    width: 300px;
    text-align: center; }

.m-access .access {
  margin-bottom: 70px; }
  .m-access .access p {
    text-align: center; }
  .m-access .access dl {
    margin-bottom: 40px; }
    .m-access .access dl.train dt::before {
      content: "\f238"; }
    .m-access .access dl.car dt::before {
      content: "\f1b9"; }
    .m-access .access dl dt {
      position: relative;
      padding-left: 20px;
      margin-bottom: 10px;
      font-weight: 500; }
      .m-access .access dl dt::before {
        font-family: "Font Awesome 5 Pro";
        color: #9fc775;
        font-weight: 900;
        position: absolute;
        left: 0; }
    .m-access .access dl dd {
      margin-top: 10px;
      position: relative;
      padding-left: 20px; }
      .m-access .access dl dd::before {
        content: "・";
        color: #ccc;
        position: absolute;
        left: 0;
        top: 2px;
        font-size: 2rem; }

/* コンプライアンスページ */
.m-kenkyuhi .kenkyuhi, .m-kenkyuhi .public_information, .m-public_information .kenkyuhi, .m-public_information .public_information {
  margin-bottom: 50px; }

.m-kenkyuhi .table01, .m-public_information .table01 {
  margin-bottom: 40px; }
  .m-kenkyuhi .table01 tr td, .m-public_information .table01 tr td {
    background: #fff; }
    .m-kenkyuhi .table01 tr td:first-child, .m-public_information .table01 tr td:first-child {
      width: 15%;
      background: #eee; }
    .m-kenkyuhi .table01 tr td:nth-child(2), .m-public_information .table01 tr td:nth-child(2) {
      width: 20%; }
  .m-kenkyuhi .table01 th, .m-public_information .table01 th {
    background: #ddd; }

.m-kenkyuhi .table02, .m-public_information .table02 {
  margin-bottom: 40px; }
  .m-kenkyuhi .table02 th, .m-public_information .table02 th {
    background: #ddd; }
  .m-kenkyuhi .table02 th, .m-kenkyuhi .table02 td, .m-public_information .table02 th, .m-public_information .table02 td {
    vertical-align: middle; }

.m-kenkyuhi .table03 th, .m-public_information .table03 th {
  background: #ddd; }

.m-kenkyuhi .table03 th, .m-kenkyuhi .table03 td, .m-public_information .table03 th, .m-public_information .table03 td {
  text-align: center; }

.m-kenkyuhi .disc, .m-public_information .disc {
  list-style-type: disc;
  padding-left: 20px; }
  .m-kenkyuhi .disc li a, .m-public_information .disc li a {
    text-decoration: underline; }
    .m-kenkyuhi .disc li a:hover, .m-public_information .disc li a:hover {
      text-decoration: none; }

.m-kenkyuhi .kome li, .m-public_information .kome li {
  position: relative;
  padding-left: 20px; }
  .m-kenkyuhi .kome li::before, .m-public_information .kome li::before {
    content: "※";
    position: absolute;
    left: 0; }

.m-kenkyuhi .department_in, .m-public_information .department_in {
  margin-bottom: 40px; }

.m-library dl {
  margin-bottom: 40px; }
  .m-library dl dt {
    font-weight: bold;
    margin-bottom: 10px; }

.m-sitemap a {
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease; }
  .m-sitemap a:hover {
    color: #c59c00; }

.m-sitemap ul li {
  margin-bottom: 10px; }
  .m-sitemap ul li a {
    display: block;
    padding-left: 25px;
    position: relative; }
    .m-sitemap ul li a::before {
      content: "・";
      position: absolute;
      left: 0;
      font-size: 2.4rem;
      color: #c59c00; }

.m-privacy dl {
  margin-bottom: 40px; }
  .m-privacy dl dt {
    font-weight: bold;
    color: #c59c00;
    font-size: 1.8rem;
    margin-bottom: 10px; }

.m-subject .parent_area {
  margin-bottom: 70px; }

.m-subject .subject_ttl {
  margin-bottom: 30px; }
  .m-subject .subject_ttl.architecture a::before {
    background: url("../../img/subject/about_parent_bnr01@2x.jpg") no-repeat 50%;
    background-size: cover; }
  .m-subject .subject_ttl.arts_crafts a::before {
    background: url("../../img/subject/about_parent_bnr02@2x.jpg") no-repeat 50%;
    background-size: cover; }
  .m-subject .subject_ttl a {
    display: block;
    padding: 60px 25px;
    position: relative;
    overflow: hidden;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease; }
    .m-subject .subject_ttl a::before {
      content: "";
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      z-index: -1;
      -webkit-transition: all 0.5s ease;
      transition: all 0.5s ease; }
    .m-subject .subject_ttl a:hover {
      color: #c59c00; }
      .m-subject .subject_ttl a:hover h2 .jp::before {
        background: #c59c00; }
      .m-subject .subject_ttl a:hover h2 .en::after {
        background: #c59c00; }
      .m-subject .subject_ttl a:hover::before {
        -webkit-transform: scale(1.05);
        transform: scale(1.05); }
  .m-subject .subject_ttl h2 {
    max-width: 385px;
    background: #fff;
    padding: 35px; }
    .m-subject .subject_ttl h2 .jp {
      display: block;
      font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "MS P明朝", "MS 明朝", serif;
      font-size: 3.8rem;
      padding-bottom: 30px;
      margin-bottom: 20px;
      position: relative; }
      .m-subject .subject_ttl h2 .jp::before {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 30px;
        height: 2px;
        background: #111; }
      .m-subject .subject_ttl h2 .jp::after {
        content: "\f105";
        font-family: "Font Awesome 5 Pro";
        font-weight: 300;
        position: absolute;
        right: 0;
        font-size: 2rem; }
    .m-subject .subject_ttl h2 .en {
      text-transform: uppercase;
      font-family: "Roboto Condensed", sans-serif;
      font-size: 1.3rem;
      position: relative; }
      .m-subject .subject_ttl h2 .en::after {
        content: "";
        position: absolute;
        right: -60px;
        top: 50%;
        width: 40px;
        height: 1px;
        background: #111; }

.m-subject_child.m-arts_crafts .point .point_box.no01:before {
  background: url("../../img/arts_crafts/point_img01@2x.jpg");
  background-size: cover; }

.m-subject_child.m-arts_crafts .point .point_box.no01 .text::before {
  background: url("../../img/arts_crafts/point_no01@2x.png") no-repeat;
  background-size: 110px; }

.m-subject_child.m-arts_crafts .point .point_box.no02:before {
  background: url("../../img/arts_crafts/point_img02@2x.jpg");
  background-size: cover; }

.m-subject_child.m-arts_crafts .point .point_box.no02 .text::before {
  background: url("../../img/arts_crafts/point_no02@2x.png") no-repeat;
  background-size: 110px; }

.m-subject_child.m-arts_crafts .point .point_box.no03:before {
  background: url("../../img/arts_crafts/point_img03@2x.jpg");
  background-size: cover; }

.m-subject_child.m-arts_crafts .point .point_box.no03 .text::before {
  background: url("../../img/arts_crafts/point_no03@2x.png") no-repeat;
  background-size: 110px; }

.m-subject_child.m-arts_crafts .point .point_box.no04:before {
  background: url("../../img/arts_crafts/point_img04@2x.jpg");
  background-size: cover; }

.m-subject_child.m-arts_crafts .point .point_box.no04 .text::before {
  background: url("../../img/arts_crafts/point_no04@2x.png") no-repeat;
  background-size: 110px; }


.m-subject_child.m-arts_crafts .point .point_box.no05:before {
  background: url("../../img/arts_crafts/point_img04@2x.jpg");
  background-size: cover; }

.m-subject_child.m-arts_crafts .point .point_box.no05 .text::before {
  background: url("../../img/arts_crafts/point_no04@2x.png") no-repeat;
  background-size: 110px; }



.m-subject_child.m-arts_crafts .teaching_staff .slick-prev, .m-subject_child.m-arts_crafts .teaching_staff .slick-next {
  background: #9fd28c; }

.m-subject_child .subject_child_head {
  margin-bottom: 70px; }
  .m-subject_child .subject_child_head .head_in {
    max-width: 910px;
    margin: 0 auto 70px; 
    margin-top:100px;
}
  .m-subject_child .subject_child_head h2 {
    font-size: 3rem;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "MS P明朝", "MS 明朝", serif;
    font-weight: 400;
    text-align: center;
    line-height: 1.5;
    margin-bottom: 50px; }

.m-subject_child .point .point_box {
  position: relative;
  /*height: 380px;*/
  margin-bottom: 100px; }

/*
  .m-subject_child .point .point_box.no01:before {
    background: url("../../img/architecture/point_img01@2x.jpg");
    background-size: cover; }
*/
  .m-subject_child .point .point_box.no01 .text::before {
    background: url("../../img/shougaku/point_no01@2x.png") no-repeat;
    background-size: 110px; }
/*
  .m-subject_child .point .point_box.no02:before {
    background: url("../../img/architecture/point_img02@2x.jpg");
    background-size: cover; }
*/
  .m-subject_child .point .point_box.no02 .text::before {
    background: url("../../img/shougaku/point_no02@2x.png") no-repeat;
    background-size: 110px; }
/*
  .m-subject_child .point .point_box.no03:before {
    background: url("../../img/architecture/point_img03@2x.jpg");
    background-size: cover; }
*/
  .m-subject_child .point .point_box.no03 .text::before {
    background: url("../../img/shougaku/point_no03@2x.png") no-repeat;
    background-size: 110px; }

  .m-subject_child .point .point_box.no04 .text::before {
    background: url("../../img/shougaku/point_no04@2x.png") no-repeat;
    background-size: 110px; }

  .m-subject_child .point .point_box.no05 .text::before {
    background: url("../../img/shougaku/point_no05@2x.png") no-repeat;
    background-size: 110px; }

  .m-subject_child .point .point_box.no06 .text::before {
    background: url("../../img/shougaku/point_no06@2x.png") no-repeat;
    background-size: 110px; }

  .m-subject_child .point .point_box.no07 .text::before {
    background: url("../../img/shougaku/point_no07@2x.png") no-repeat;
    background-size: 110px; }


  .m-subject_child .point .point_box:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    margin-bottom:30px;
}


  .m-subject_child .point .point_box.reverse:before {
    left: inherit;
    right: 0; }
  .m-subject_child .point .point_box.reverse .text {
    margin-left: 0; }
    .m-subject_child .point .point_box.reverse .text::after {
      right: -20px;
      left: inherit; }
  .m-subject_child .point .point_box h3 {
    font-size: 3.0rem;
    margin-bottom: 30px;
    position: relative;
    font-weight: bold;
    line-height: 1.6; }
  .m-subject_child .point .point_box .text {
    width: 100%;
    margin-left: auto;
    padding: 0 60px;
    position: relative;
    top: 5vw; }
    .m-subject_child .point .point_box .text::before {
      content: "";
      position: absolute;
      left: 35px;
      top: -30px;
      z-index: -1;
      width: 100%;
      height: 100%; }
    .m-subject_child .point .point_box .text::after {
      content: "";
      position: absolute;
      left: -20px;
      top: 10px;
      width: 40px;
      height: 1px;
      background: #111; }

.m-subject_child .fourth_year_learning .year_box {
  margin-bottom: 60px; }
  .m-subject_child .fourth_year_learning .year_box .year_ttl {
    text-align: center; }
  .m-subject_child .fourth_year_learning .year_box h3 {
    font-size: 2.4rem;
    font-weight: bold;
    margin-bottom: 25px; }

.m-subject_child .qualification {
  background: url("../../img/architecture/qualification_bg@2x.jpg") no-repeat left top;
  background-size: contain;
  padding-top: 60px; }
  .m-subject_child .qualification .qualification_in {
    background: #fff;
    padding: 50px; }
    .m-subject_child .qualification .qualification_in .after {
      position: relative; }
      .m-subject_child .qualification .qualification_in .after::after {
        content: "";
        position: absolute;
        left: -65px;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        background: url("../../img/architecture/qualification_arrow@2x.png") no-repeat;
        background-size: cover;
        width: 25px;
        height: 85px; }
    .m-subject_child .qualification .qualification_in h3 {
      margin-bottom: 25px; }
      .m-subject_child .qualification .qualification_in h3 span {
        position: relative;
        display: inline-block;
        z-index: 10;
        font-weight: 700;
        padding: 0 10px; }
        .m-subject_child .qualification .qualification_in h3 span::before {
          content: "";
          position: absolute;
          left: 0;
          bottom: -5px;
          width: 100%;
          height: 20px;
          z-index: -1;
          background: #e1ebff; }
    .m-subject_child .qualification .qualification_in ul.flag li span::before {
      content: "\f456"; }
    .m-subject_child .qualification .qualification_in ul.circle li span::before {
      content: "\f111"; }
    .m-subject_child .qualification .qualification_in ul li span {
      border-bottom: 1px solid #ccc;
      display: block;
      padding: 10px 15px 10px 45px;
      position: relative; }
      .m-subject_child .qualification .qualification_in ul li span::before {
        font-family: "Font Awesome 5 Pro";
        position: absolute;
        left: 15px;
        font-weight: 900;
        color: #87afff; }
    .m-subject_child .qualification .qualification_in ul li i {
      font-style: normal;
      font-size: 1rem;
      top: -5px;
      position: relative;
      color: #999; }
    .m-subject_child .qualification .qualification_in p {
      color: #999;
      font-size: 1.3rem;
      line-height: 1.3; }

.m-subject_child .teaching_staff .slide_box a {
  display: block;
  margin: 0 15px; }
  .m-subject_child .teaching_staff .slide_box a:hover .thumb::before {
    background: #ccc;
    color: #fff; }

.m-subject_child .teaching_staff .slide_box .thumb {
  position: relative; }
  .m-subject_child .teaching_staff .slide_box .thumb span {
    position: absolute;
    right: 10px;
    top: 10px;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl; }
  .m-subject_child .teaching_staff .slide_box .thumb::before {
    content: "\f067";
    font-weight: 300;
    font-family: "Font Awesome 5 Pro";
    position: absolute;
    bottom: 10px;
    right: 10px;
    width: 36px;
    height: 36px;
    line-height: 36px;
    text-align: center;
    border: 2px solid #ccc;
    color: #ccc;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease; }

.m-subject_child .teaching_staff .slide_box .text {
  font-size: 2rem;
  padding: 20px;
  background: #fff; }
  .m-subject_child .teaching_staff .slide_box .text span {
    font-size: 1.3rem;
    display: block; }

.m-subject_child .modal_area .inline_modal {
  display: none; }

.modaal-content-container h3 {
  margin-bottom: 30px;
  font-size: 2.4rem; }
  .modaal-content-container h3 .en {
    color: #87afff;
    font-family: "Roboto Condensed", sans-serif;
    font-size: 1.3rem;
    vertical-align: middle;
    margin-left: 20px; }
  .modaal-content-container h3 .position {
    display: block;
    margin-top: 10px;
    font-size: 1.3rem; }

.modaal-content-container p {
  font-size: 1.5rem;
  line-height: 1.6; }

.m-subject_grand.m-construction_study .subject_grand_head {
  background: rgba(225, 235, 255, 0.5); }

.m-subject_grand.m-construction_special .subject_grand_head {
  background: rgba(249, 244, 255, 0.5); }

.m-subject_grand.m-design .subject_grand_head {
  background: rgba(232, 243, 228, 0.5); }

.m-subject_grand.m-design .subject_grand_head ul {
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  .m-subject_grand.m-design .subject_grand_head ul li {
    border-color: #9fd28c;
    margin-bottom: 10px; }

.m-subject_grand.m-crafts .subject_grand_head {
  background: rgba(226, 245, 238, 0.5); }

.m-subject_grand.m-crafts .subject_grand_head ul {
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  .m-subject_grand.m-crafts .subject_grand_head ul li {
    border-color: #9fd28c;
    margin-bottom: 10px; }

.m-subject_grand.m-heritage .subject_grand_head {
  background: rgba(240, 246, 211, 0.5); }

.m-subject_grand.m-heritage .subject_grand_head ul {
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  .m-subject_grand.m-heritage .subject_grand_head ul li {
    border-color: #9fd28c;
    margin-bottom: 10px; }

.m-subject_grand .subject_grand_head {
  padding: 45px 0; }
  .m-subject_grand .subject_grand_head .head_in {
    max-width: 910px;
    margin: 0 auto; }
  .m-subject_grand .subject_grand_head .row {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center; }
  .m-subject_grand .subject_grand_head h3 {
    font-size: 2.9rem;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "MS P明朝", "MS 明朝", serif;
    line-height: 1.5;
    margin-bottom: 25px; }
  .m-subject_grand .subject_grand_head ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    .m-subject_grand .subject_grand_head ul li {
      border: 2px solid #87afff;
      border-radius: 5px;
      line-height: 1.2;
      padding: 3px 10px;
      margin-right: 10px;
      background: #fff; }

.m-subject_grand .exercises {
  margin-bottom: 80px; }
  .m-subject_grand .exercises .exercises_box {
    position: relative;
    padding-top: 220px;
    margin-bottom: 40px; }
    .m-subject_grand .exercises .exercises_box .img {
      position: absolute;
      top: 0;
      left: 0;
      height: 300px;
      z-index: -1; }
    .m-subject_grand .exercises .exercises_box .title {
      background: #fff;
      padding: 40px;
      font-size: 2rem;
      max-width: 480px;
      margin-left: auto;
      font-weight: bold;
      position: relative; }
      .m-subject_grand .exercises .exercises_box .title span {
        position: absolute;
        top: -70px;
        left: 15px;
        font-family: "Roboto Condensed", sans-serif;
        font-size: 2rem;
        font-weight: 400; }
        .m-subject_grand .exercises .exercises_box .title span::before {
          content: "";
          position: absolute;
          left: 50%;
          top: 30px;
          width: 1px;
          height: 70px;
          background: #111; }
    .m-subject_grand .exercises .exercises_box .bg_gray {
      background: #f5f5f5;
      padding: 15px;
      font-size: 1.3rem;
      font-weight: normal;
      line-height: 1.3;
      margin-top: 20px; }

.m-subject_grand .qualification {
  background: url("../../img/architecture/qualification_bg@2x.jpg") no-repeat left top;
  background-size: contain;
  padding-top: 60px; }
  .m-subject_grand .qualification .qualification_in {
    background: #fff;
    padding: 50px; }
    .m-subject_grand .qualification .qualification_in .after {
      position: relative; }
      .m-subject_grand .qualification .qualification_in .after::after {
        content: "";
        position: absolute;
        left: -65px;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        background: url("../../img/architecture/qualification_arrow@2x.png") no-repeat;
        background-size: cover;
        width: 25px;
        height: 85px; }
    .m-subject_grand .qualification .qualification_in h3 {
      margin-bottom: 25px; }
      .m-subject_grand .qualification .qualification_in h3 span {
        position: relative;
        display: inline-block;
        z-index: 10;
        font-weight: 700;
        padding: 0 10px; }
        .m-subject_grand .qualification .qualification_in h3 span::before {
          content: "";
          position: absolute;
          left: 0;
          bottom: -5px;
          width: 100%;
          height: 20px;
          z-index: -1;
          background: #e8f3e4; }
    .m-subject_grand .qualification .qualification_in ul.flag li span::before {
      content: "\f456"; }
    .m-subject_grand .qualification .qualification_in ul.circle li span::before {
      content: "\f111"; }
    .m-subject_grand .qualification .qualification_in ul li span {
      border-bottom: 1px solid #ccc;
      display: block;
      padding: 10px 15px 10px 45px;
      position: relative; }
      .m-subject_grand .qualification .qualification_in ul li span::before {
        font-family: "Font Awesome 5 Pro";
        position: absolute;
        left: 15px;
        font-weight: 900;
        color: #9fd28c; }
    .m-subject_grand .qualification .qualification_in ul li i {
      font-style: normal;
      font-size: 1rem;
      top: -5px;
      position: relative;
      color: #999; }
    .m-subject_grand .qualification .qualification_in p {
      color: #999;
      font-size: 1.3rem;
      line-height: 1.3; }

.m-subject_grand .report {
  background: url("../../img/construction_study/report_bg@2x.jpg") repeat-x;
  background-size: contain;
  padding-top: 55px; }
  .m-subject_grand .report.patarn .report_ttl .img {
    right: 0; }
  .m-subject_grand .report.patarn .report_ttl .ttl_in {
    max-width: 880px;
    margin-left: auto; }
  .m-subject_grand .report.patarn .report_ttl .grade span {
    background: -webkit-gradient(linear, left top, right top, from(#88afff), to(#dab6ff));
    background: linear-gradient(to right, #88afff, #dab6ff); }
  .m-subject_grand .report.patarn2 .report_ttl .img {
    left: 0; }
  .m-subject_grand .report.patarn2 .report_ttl .ttl_in {
    max-width: 480px;
    margin-left: auto;
    margin-right: 90px;
    text-align: right; }
  .m-subject_grand .report.patarn2 .report_ttl .grade {
    text-align: left; }
    .m-subject_grand .report.patarn2 .report_ttl .grade span {
      background: -webkit-gradient(linear, left top, right top, from(#ffcd46), to(#bbe458));
      background: linear-gradient(to right, #ffcd46, #bbe458); }
  .m-subject_grand .report.patarn2 .report_ttl .line_title {
    display: inline-block;
    margin-right: 85px; }
  .m-subject_grand .report .report_ttl .img {
    position: absolute;
    z-index: 1; }
  .m-subject_grand .report .report_ttl h2 {
    margin-bottom: 55px; }
  .m-subject_grand .report .report_ttl .ttl_in {
    margin-bottom: 50px;
    position: relative;
    z-index: 10; }
  .m-subject_grand .report .report_ttl .grade span {
    font-size: 2.4rem;
    font-weight: bold;
    color: #fff;
    display: inline-block;
    padding: 5px;
    margin-bottom: 5px;
    background: -webkit-gradient(linear, left top, right top, from(#88afff), to(#dab6ff));
    background: linear-gradient(to right, #88afff, #dab6ff); }
  .m-subject_grand .report .report_ttl .line_title {
    position: relative;
    padding-left: 60px; }
    .m-subject_grand .report .report_ttl .line_title::before {
      content: "";
      position: absolute;
      left: 0;
      top: 50%;
      width: 40px;
      height: 1px;
      background: #111; }
  .m-subject_grand .report p {
    max-width: 910px;
    margin: 0 auto; }

.m-subject_grand .message .message_list {
  margin-bottom: 50px; }

.m-subject_grand .message .message_box {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 70px; }
  .m-subject_grand .message .message_box .img {
    position: relative; }
  .m-subject_grand .message .message_box .name {
    position: absolute;
    right: 0;
    bottom: -30px;
    background: #fff;
    padding: 30px;
    font-weight: bold;
    font-size: 2rem; }
    .m-subject_grand .message .message_box .name span {
      font-weight: normal;
      font-size: 1.3rem;
      display: block;
      line-height: 1.4;
      margin-bottom: 10px; }
  .m-subject_grand .message .message_box .text h3 {
    font-weight: bold;
    font-size: 1.8rem;
    line-height: 2;
    margin-bottom: 35px; }
    .m-subject_grand .message .message_box .text h3 span {
      border-bottom: 1px solid #000; }

.m-teacher .teacher_box.guest_box .guest_in {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 20px; }

.m-teacher .teacher_box.guest_box .thumb::before {
  display: none; }

.m-teacher .teacher_box a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 20px; }
  .m-teacher .teacher_box a:hover .thumb::before {
    background: #ccc;
    color: #fff; }

.m-teacher .teacher_box .thumb {
  position: relative; }
  .m-teacher .teacher_box .thumb span {
    position: absolute;
    right: 10px;
    top: 10px;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl; }
  .m-teacher .teacher_box .thumb::before {
    content: "\f067";
    font-weight: 300;
    font-family: "Font Awesome 5 Pro";
    position: absolute;
    bottom: 10px;
    right: 10px;
    width: 36px;
    height: 36px;
    line-height: 36px;
    text-align: center;
    border: 2px solid #ccc;
    color: #ccc;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease; }

.m-teacher .teacher_box .text {
  font-size: 2rem;
  padding: 20px;
  background: #fff; }
  .m-teacher .teacher_box .text .name {
    display: block; }
  .m-teacher .teacher_box .text .position {
    font-size: 1.6rem;
    display: inline-block;
    color: #fff;
    background: #aaa;
    text-align: center;
    padding: 5px 15px;
    line-height: 1;
    margin-top: 5px; }

.m-teacher_detail .teacher_info .teacher_ttl {
  margin-bottom: 50px; }
  .m-teacher_detail .teacher_info .teacher_ttl .en {
    font-family: "Roboto Condensed", sans-serif;
    font-size: 1.3rem;
    display: block;
    margin-bottom: 10px; }
  .m-teacher_detail .teacher_info .teacher_ttl h3 {
    font-size: 3.2rem;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "MS P明朝", "MS 明朝", serif;
    position: relative;
    border-bottom: 1px solid #ddd;
    padding-bottom: 20px;
    margin-bottom: 25px; }
    .m-teacher_detail .teacher_info .teacher_ttl h3::before {
      content: "";
      position: absolute;
      bottom: -3px;
      left: 0;
      width: 100px;
      height: 3px;
      background: #333; }
  .m-teacher_detail .teacher_info .teacher_ttl .position {
    font-size: 1.6rem;
    display: inline-block;
    color: #fff;
    background: #aaa;
    text-align: center;
    padding: 5px 15px;
    line-height: 1;
    margin-top: 5px; }

.m-teacher_detail .teacher_content {
  margin-bottom: 50px; }
  .m-teacher_detail .teacher_content table {
    margin-bottom: 5px; }
    .m-teacher_detail .teacher_content table th, .m-teacher_detail .teacher_content table td {
      font-weight: 500;
      text-align: left;
      border: none;
      padding: 2px 0; }
  .m-teacher_detail .teacher_content .img_area span {
    display: block; }

.m-teacher_detail .btn_arrow {
  margin: 0 auto;
  text-align: center; }

/* 新校舎 探検ツアーページ */
.m-tour .tour_head {
  margin-bottom: 120px; }

.m-tour .floor_map {
  background: url("../../img/tour/tour_bg@2x.png") repeat-y center top;
  background-size: 100%; }
  .m-tour .floor_map .floor_detail {
    padding-bottom: 40px;
    margin-bottom: 110px; }
    .m-tour .floor_map .floor_detail.first {
      background: rgba(232, 243, 228, 0.5); }
      .m-tour .floor_map .floor_detail.first .floor_ttl {
        background: #8dc779; }
    .m-tour .floor_map .floor_detail.second {
      background: rgba(225, 235, 255, 0.5); }
      .m-tour .floor_map .floor_detail.second .floor_ttl {
        background: #87afff; }
    .m-tour .floor_map .floor_detail.third {
      background: rgba(249, 244, 255, 0.5); }
      .m-tour .floor_map .floor_detail.third .floor_ttl {
        background: #c39ee9; }
    .m-tour .floor_map .floor_detail h2 {
      display: inline-block;
      text-align: center;
      position: relative;
      top: -40px; }
      .m-tour .floor_map .floor_detail h2 .big {
        position: relative;
        font-family: "Roboto Condensed", sans-serif;
        font-style: italic;
        font-size: 11rem;
        line-height: 0.7; }
      .m-tour .floor_map .floor_detail h2 .small {
        font-size: 1.5rem;
        display: block;
        position: relative; }
        .m-tour .floor_map .floor_detail h2 .small::before {
          content: "";
          position: absolute;
          left: -260px;
          top: 50%;
          width: 270px;
          height: 1px;
          background: #111; }
    .m-tour .floor_map .floor_detail .img_area {
      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: 40px; }
      .m-tour .floor_map .floor_detail .img_area.reverse {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse; }
        .m-tour .floor_map .floor_detail .img_area.reverse .floor_ttl {
          left: inherit;
          right: -60px;
          margin-left: auto; }
      .m-tour .floor_map .floor_detail .img_area .img {
        width: 625px; }
      .m-tour .floor_map .floor_detail .img_area .text {
        width: 445px;
        margin-top: 35px; }
      .m-tour .floor_map .floor_detail .img_area .bgwhite {
        background: #fff;
        padding: 25px; }
        .m-tour .floor_map .floor_detail .img_area .bgwhite h3 {
          font-size: 2rem;
          margin-bottom: 20px;
          font-weight: bold; }
      .m-tour .floor_map .floor_detail .img_area .floor_ttl {
        width: 120px;
        height: 120px;
        position: relative;
        margin-bottom: 20px;
        left: -50px; }
        .m-tour .floor_map .floor_detail .img_area .floor_ttl span {
          position: absolute;
          top: 50%;
          left: 50%;
          -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
          color: #fff;
          font-family: "Roboto Condensed", sans-serif;
          font-size: 3rem;
          display: inline-block;
          width: 100%;
          text-align: center; }
          .m-tour .floor_map .floor_detail .img_area .floor_ttl span i {
            display: block;
            margin-bottom: 5px; }
    .m-tour .floor_map .floor_detail .img_area2 {
      margin-bottom: 40px; }
      .m-tour .floor_map .floor_detail .img_area2 .img {
        text-align: right; }
      .m-tour .floor_map .floor_detail .img_area2 .bgwhite {
        margin-left: 30px;
        background: #fff;
        padding: 25px;
        margin-top: -50px;
        z-index: 10;
        position: relative; }
        .m-tour .floor_map .floor_detail .img_area2 .bgwhite h3 {
          font-size: 2rem;
          margin-bottom: 20px;
          font-weight: bold; }
    .m-tour .floor_map .floor_detail .img_area3 {
      margin-bottom: 45px; }
      .m-tour .floor_map .floor_detail .img_area3 .text {
        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-top: -80px; }
      .m-tour .floor_map .floor_detail .img_area3 .bgwhite {
        background: #fff;
        padding: 25px;
        z-index: 10;
        position: relative;
        width: 70%; }
        .m-tour .floor_map .floor_detail .img_area3 .bgwhite h3 {
          font-size: 2rem;
          margin-bottom: 20px;
          font-weight: bold; }
      .m-tour .floor_map .floor_detail .img_area3 .floor_ttl {
        width: 120px;
        height: 120px;
        position: relative;
        margin-top: -35px; }
        .m-tour .floor_map .floor_detail .img_area3 .floor_ttl span {
          position: absolute;
          top: 50%;
          left: 50%;
          -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
          color: #fff;
          font-family: "Roboto Condensed", sans-serif;
          font-size: 3rem;
          display: inline-block;
          width: 100%;
          text-align: center; }
          .m-tour .floor_map .floor_detail .img_area3 .floor_ttl span i {
            display: block;
            margin-bottom: 5px; }

/* 卒展ページ */
.m-degree_show .degree_show_head {
  margin-bottom: 80px; }
  .m-degree_show .degree_show_head .row {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center; }

.m-degree_show .award {
  margin-bottom: 80px; }
  .m-degree_show .award .award_area {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 40px; }
    .m-degree_show .award .award_area .img {
      margin-bottom: 25px; }
    .m-degree_show .award .award_area .text {
      margin-left: 20px; }
    .m-degree_show .award .award_area h3 {
      font-size: 2rem;
      margin-bottom: 30px;
      font-weight: bold; }
      .m-degree_show .award .award_area h3 span {
        font-size: 1.5rem; }
    .m-degree_show .award .award_area p {
      margin-bottom: 40px; }
    .m-degree_show .award .award_area .name {
      padding: 10px 15px;
      border-left: 1px solid #222; }
      .m-degree_show .award .award_area .name span {
        display: block;
        font-size: 1.8rem; }

/* 下宿案内ページ */
.m-boarding .boarding_info .img {
  text-align: center;
  margin-bottom: 30px; }

.m-boarding .boarding_info table {
  margin-bottom: 30px; }
  .m-boarding .boarding_info table th, .m-boarding .boarding_info table td {
    border: none;
    padding: 15px; }
  .m-boarding .boarding_info table thead th {
    color: #fff;
    background: #666666;
    text-align: left; }
  .m-boarding .boarding_info table tbody tr:nth-child(even) td {
    background: #f5f5f5; }

.m-boarding .boarding_info .tel_bg {
  padding: 40px;
  background: #f2f2f2; }
  .m-boarding .boarding_info .tel_bg dl {
    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; }
    .m-boarding .boarding_info .tel_bg dl dt {
      font-weight: bold;
      margin-right: 40px;
      padding-bottom: 5px;
      position: relative; }
      .m-boarding .boarding_info .tel_bg dl dt::before {
        content: "";
        position: absolute;
        bottom: 0;
        left: -10%;
        width: 120%;
        height: 1px;
        background: #111; }
    .m-boarding .boarding_info .tel_bg dl dd {
      margin-left: 40px; }
      .m-boarding .boarding_info .tel_bg dl dd span {
        font-size: 3.6rem;
        font-family: "Roboto Condensed", sans-serif; }

.m-boarding .dormitory ul li {
  margin-bottom: 15px; }
  .m-boarding .dormitory ul li span {
    display: block;
    margin-top: 10px; }

.m-boarding .dormitory .rent_area h3 {
  font-size: 2.4rem; }

.m-boarding .dormitory .rent_area table {
  margin-bottom: 30px; }
  .m-boarding .dormitory .rent_area table th, .m-boarding .dormitory .rent_area table td {
    border: none;
    padding: 15px;
    text-align: left; }
  .m-boarding .dormitory .rent_area table tbody tr:nth-child(even) {
    background: #f5f5f5; }

.m-boarding .dormitory .rent_area ul {
  padding-left: 15px; }
  .m-boarding .dormitory .rent_area ul li {
    position: relative;
    padding-left: 20px; }
    .m-boarding .dormitory .rent_area ul li::before {
      content: "・";
      position: absolute;
      left: 0;
      color: #c59c00; }

/* サークル紹介ページ */
.m-circle .circle_info .img {
  position: relative; }
  .m-circle .circle_info .img span {
    font-size: 2rem;
    font-weight: bold;
    background: #fff;
    padding: 20px;
    display: block;
    width: 80%;
    position: absolute;
    right: 0;
    bottom: -25px; }

.m-circle .circle_info ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  .m-circle .circle_info ul li {
    position: relative;
    padding-left: 25px;
    -webkit-flex-basis: 25%;
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%; }
    .m-circle .circle_info ul li::before {
      content: "・";
      position: absolute;
      left: 0;
      color: #c59c00;
      font-size: 2.4rem; }

/* 学科共同プロジェクトページ */
.m-project .project_head .row h2 {
  margin-bottom: 40px; }

.m-project .project_area .project_box {
  position: relative;
  margin-bottom: 80px; }
  .m-project .project_area .project_box::before {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    width: 75%;
    height: 100%;
    z-index: -1; }
  .m-project .project_area .project_box:nth-child(1)::before {
    background: url("../../img/project/project_img01@2x.jpg") no-repeat right top;
    background-size: contain; }
  .m-project .project_area .project_box:nth-child(2)::before {
    background: url("../../img/project/project_img02@2x.jpg") no-repeat right top;
    background-size: contain; }
  .m-project .project_area .project_box:nth-child(3)::before {
    background: url("https://www.kyobi.ac.jp/img/project/project_img03@2x.jpg") no-repeat right top;
    background-size: contain; }
  .m-project .project_area .project_box:nth-child(4)::before {
    background: url("https://www.kyobi.ac.jp/img/project/project_img04@2x.jpg") no-repeat right top;
    background-size: contain; }
  .m-project .project_area .project_box .vol {
    margin-bottom: 50px; }
  .m-project .project_area .project_box h3 {
    margin-left: 120px;
    margin-bottom: 30px; }
    .m-project .project_area .project_box h3 span {
      background: #fff;
      display: inline-block;
      padding: 5px;
      font-weight: bold; }
    .m-project .project_area .project_box h3 small {
      display: block;
      font-size: 1.3rem; }
  .m-project .project_area .project_box .more {
    width: 200px;
    margin-left: auto; }
    .m-project .project_area .project_box .more a {
      display: block;
      font-size: 1.3rem;
      font-family: "Roboto Condensed", sans-serif;
      border-radius: 30px;
      padding: 10px;
      text-align: center;
      border: 1px solid #111;
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease;
      background: url("../../img/architecture/more_arrow@2x.png") no-repeat center right 20px;
      background-size: 18px 7px; }
      .m-project .project_area .project_box .more a:hover {
        background: #fefefe url("../../img/architecture/more_arrow@2x.png") no-repeat center right 20px;
        background-size: 18px 7px;
        color: #333; }

.m-project_grand .detail_head {
  margin-bottom: 60px; }
  .m-project_grand .detail_head .head_in {
    position: relative; }
    .m-project_grand .detail_head .head_in .img {
      position: absolute;
      right: 0;
      top: 0;
      z-index: -1; }
    .m-project_grand .detail_head .head_in .vol {
      position: relative;
      top: 10px;
      margin-bottom: 30px; }
    .m-project_grand .detail_head .head_in h1 {
      margin-bottom: 40px; }
      .m-project_grand .detail_head .head_in h1 span {
        background: #fff;
        display: inline-block;
        padding: 5px;
        font-weight: bold;
        font-size: 3rem;
        margin-bottom: 5px; }
      .m-project_grand .detail_head .head_in h1 small {
        display: block;
        font-size: 1.3rem; }
    .m-project_grand .detail_head .head_in p {
      max-width: 810px;
      margin-left: auto; }

.m-project_grand .member {
  background: url("../../img/project/member_bg@2x.jpg");
  padding: 55px 0;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  margin-bottom: 60px; }
  .m-project_grand .member .member_list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    background: url("../../img/project/member_bg02@2x.png") no-repeat center 90px;
    background-size: 8%; }
  .m-project_grand .member .member_box {
    width: 380px;
    text-align: center; }
    .m-project_grand .member .member_box:nth-child(2) .circle span {
      right: inherit;
      left: 0;
      background: #a18cd1; }
    .m-project_grand .member .member_box .circle {
      margin-bottom: 20px;
      position: relative; }
      .m-project_grand .member .member_box .circle span {
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        right: 0;
        font-size: 1.5rem;
        font-family: "Roboto Condensed", sans-serif;
        color: #fff;
        font-weight: bold;
        display: inline-block;
        background: #8fd3f4;
        padding: 10px 30px;
        line-height: 1;
        letter-spacing: .2rem; }
    .m-project_grand .member .member_box h3 {
      font-size: 2rem;
      font-weight: bold;
      margin-bottom: 20px; }
    .m-project_grand .member .member_box p {
      text-align: left; }

.m-project_grand .process {
  margin-bottom: 70px; }
  .m-project_grand .process .process_box {
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px dotted #111; }
    .m-project_grand .process .process_box h3 {
      padding-top: 40px;
      font-weight: bold;
      font-size: 2rem; }
      .m-project_grand .process .process_box h3 span {
        display: block;
        margin-bottom: 15px;
        position: relative;
        font-size: 1.5rem; }
        .m-project_grand .process .process_box h3 span::before {
          content: "";
          position: absolute;
          left: 40px;
          top: 50%;
          width: 30px;
          height: 1px;
          background: #111; }

.m-project_grand .interview .interview_box {
  margin-bottom: 35px; }
  .m-project_grand .interview .interview_box:nth-child(even) {
    margin-left: 245px; }
  .m-project_grand .interview .interview_box h3 {
    font-size: 1.8rem;
    font-weight: bold;
    position: relative;
    margin-bottom: 30px;
    padding: 20px 0 20px 100px; }
    .m-project_grand .interview .interview_box h3::before {
      content: "";
      position: absolute;
      left: 0;
      top: 0;
      width: 73px;
      height: 63px;
      background: url("../../img/project/q_ttl@2x.png");
      background-size: cover; }

.m-project_grand .interview .answer {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  .m-project_grand .interview .answer .img {
    width: 200px;
    margin-right: 45px; }
  .m-project_grand .interview .answer dl {
    width: 570px;
    position: relative; }
    .m-project_grand .interview .answer dl dt {
      color: #98b1e3;
      -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl;
      margin-bottom: 25px; }
    .m-project_grand .interview .answer dl dd {
      margin-left: 10px;
      padding-left: 35px;
      border-left: 1px solid #111; }

.m-schedule .schedule_list .month_list {
  padding-bottom: 45px; }

.m-schedule .schedule_list .month {
  position: relative;
  height: calc(100% + 45px); }
  .m-schedule .schedule_list .month::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 0;
    margin-left: -68px;
    width: 3px;
    height: 100%;
    background: #111; }
  .m-schedule .schedule_list .month .month_in {
    position: relative;
    width: 121px;
    min-height: 150px;
    background: url("../../img/schedule/month_bg@2x.png") no-repeat left top;
    background-size: contain; }
  .m-schedule .schedule_list .month h3 {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    top: 42%;
    text-align: center; }
    .m-schedule .schedule_list .month h3 span {
      display: block;
      font-family: "Roboto Condensed", sans-serif; }
      .m-schedule .schedule_list .month h3 span.en {
        font-weight: bold;
        font-size: 1.3rem;
        font-family: "Roboto Condensed", sans-serif;
        position: relative;
        padding-bottom: 5px;
        margin-bottom: 10px; }
        .m-schedule .schedule_list .month h3 span.en::before {
          content: "";
          position: absolute;
          left: 50%;
          bottom: 0;
          -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
          width: 15px;
          height: 1px;
          background: #111; }
      .m-schedule .schedule_list .month h3 span.jp {
        font-size: 4.7rem;
        line-height: 1; }
        .m-schedule .schedule_list .month h3 span.jp small {
          font-size: 1.5rem;
          font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Verdana, sans-serif; }
  .m-schedule .schedule_list .month ul {
    margin-left: 24%; }
    .m-schedule .schedule_list .month ul li {
      padding-left: 25px;
      margin-bottom: 10px;
      position: relative;
      line-height: 1.2; }
      .m-schedule .schedule_list .month ul li::before {
        content: "";
        position: absolute;
        left: 0;
        top: 50%;
        background: #111;
        width: 20px;
        height: 1px; }

.m-schedule .schedule_list .img ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  .m-schedule .schedule_list .img ul.column-2 li:nth-child(2n) {
    margin-right: 0; }
  .m-schedule .schedule_list .img ul.column-3 li:nth-child(3n) {
    margin-right: 0; }
  .m-schedule .schedule_list .img ul li {
    margin-right: 15px; }

.m-location .location_list {
  padding-top: 80px; }
  .m-location .location_list.shichijo {
    background: url("../../img/location/shichijo_bg.jpg") no-repeat right top; }
    .m-location .location_list.shichijo .location_main {
      background: url("../../img/location/location_shichijo_main@2x.jpg") no-repeat right top;
      background-size: contain; }
      .m-location .location_list.shichijo .location_main .ttl {
        background: url("../../img/location/location_shichijo_bg@2x.png") repeat-y right;
        background-size: cover; }
    .m-location .location_list.shichijo .facility_box .thumb img {
      -webkit-box-shadow: 5px 5px 0 #ef7a75;
      box-shadow: 5px 5px 0 #ef7a75; }
  .m-location .location_list.kawaramachi {
    background: url("../../img/location/kawaramachi_bg.jpg") no-repeat right top; }
    .m-location .location_list.kawaramachi .location_main {
      background: url("../../img/location/location_kawaramachi_main@2x.jpg") no-repeat right top;
      background-size: contain; }
      .m-location .location_list.kawaramachi .location_main .ttl {
        background: url("../../img/location/location_kawaramachi_bg@2x.png") repeat-y right;
        background-size: cover; }
    .m-location .location_list.kawaramachi .facility_box .thumb img {
      -webkit-box-shadow: 5px 5px 0 #f3aa3d;
      box-shadow: 5px 5px 0 #f3aa3d; }
  .m-location .location_list.kyoto {
    background: url("../../img/location/kyoto_bg.jpg") no-repeat right top; }
    .m-location .location_list.kyoto .location_main {
      background: url("../../img/location/location_kyoto_main@2x.jpg") no-repeat right top;
      background-size: contain; }
      .m-location .location_list.kyoto .location_main .ttl {
        background: url("../../img/location/location_kyoto_bg@2x.png") repeat-y right;
        background-size: cover; }
    .m-location .location_list.kyoto .facility_box .thumb img {
      -webkit-box-shadow: 5px 5px 0 #67abcb;
      box-shadow: 5px 5px 0 #67abcb; }

.m-location .location_area .location_main {
  margin-bottom: 40px; }
  .m-location .location_area .location_main .ttl {
    width: 435px;
    text-align: center;
    padding: 120px 0 100px; }
    .m-location .location_area .location_main .ttl p {
      max-width: 325px;
      margin: 30px auto 0;
      text-align: left;
      color: #fff; }

.m-location .location_area .facility_box {
  margin-bottom: 40px; }
  .m-location .location_area .facility_box .thumb {
    margin-bottom: 35px; }
  .m-location .location_area .facility_box h3 {
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 15px; }
  .m-location .location_area .facility_box .address {
    font-size: 1.3rem;
    padding-top: 15px;
    border-top: 1px dotted #111; }

.m-location .location_area .favorite_area {
  background: url("../../img/location/favorite_bg@2x.jpg");
  background-size: cover;
  padding: 4px;
  display: none; }
  .m-location .location_area .favorite_area .favorite_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;
    background: #fff;
    padding: 35px; }
  .m-location .location_area .favorite_area p {
    width: 400px; }

/* 施設紹介ページ */
.m-facility .facility_head {
  margin-bottom: 50px; }

.m-facility .floor_list {
  margin-bottom: 50px; }

.m-facility .facility_list .facility_box {
  margin-bottom: 20px; }
  .m-facility .facility_list .facility_box .img {
    position: relative;
    z-index: 1; }
  .m-facility .facility_list .facility_box .text {
    background: #fff;
    padding: 35px;
    width: 90%;
    margin-left: auto;
    margin-top: -30px;
    position: relative;
    z-index: 10; }
    .m-facility .facility_list .facility_box .text h3 {
      font-size: 2rem;
      font-weight: bold;
      margin-bottom: 25px; }

.m-outside .outside_list {
  position: relative;
  padding: 80px 0;
  margin-bottom: 0; }
  .m-outside .outside_list::before {
    content: "";
    position: absolute;
    top: 0;
    width: 50%;
    height: 100%; }
  .m-outside .outside_list.sonobe::before {
    background: url("../../img/outside/outside_img01@2x.jpg") no-repeat 50%;
    background-size: cover;
    left: 0; }
  .m-outside .outside_list.sonobe .outside_in {
    padding-left: 40px; }
  .m-outside .outside_list.sonobe .outside_name::before {
    content: "Sonobe"; }
  .m-outside .outside_list.karasuma::before {
    background: url("../../img/outside/outside_img02@2x.jpg") no-repeat 50%;
    background-size: cover;
    right: 0; }
  .m-outside .outside_list.karasuma .outside_in {
    padding-right: 40px; }
  .m-outside .outside_list.karasuma .outside_name::before {
    content: "Karasuma"; }
  .m-outside .outside_list.marunouchi::before {
    background: url("../../img/outside/outside_img03@2x.jpg") no-repeat 50%;
    background-size: cover;
    left: 0; }
  .m-outside .outside_list.marunouchi .outside_in {
    padding-left: 40px; }
  .m-outside .outside_list.marunouchi .outside_name::before {
    content: "Marunouchi"; }
  .m-outside .outside_list .outside_name {
    margin-bottom: 40px;
    position: relative; }
    .m-outside .outside_list .outside_name::before {
      content: "Sonobe";
      position: absolute;
      left: 0;
      top: 50px;
      font-family: "Roboto Condensed", sans-serif;
      font-size: 11rem;
      color: #f4f4f4;
      z-index: -1; }
    .m-outside .outside_list .outside_name span {
      display: inline-block;
      background: #111;
      color: #fff;
      text-align: center;
      padding: 5px 15px;
      margin-bottom: 45px; }
    .m-outside .outside_list .outside_name h2 {
      font-size: 2.4rem;
      font-weight: bold;
      line-height: 1.4; }
  .m-outside .outside_list p {
    margin-bottom: 35px; }
  .m-outside .outside_list .address {
    padding-top: 15px;
    border-top: 1px dotted #111; }
    .m-outside .outside_list .address a {
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease; }
      .m-outside .outside_list .address a:hover {
        color: #c59c00; }

.m-faq .faq_list {
  margin-bottom: 50px; }

.m-faq .faq_box {
  margin-bottom: 40px; }
  .m-faq .faq_box dt {
    font-weight: bold;
    position: relative;
    cursor: pointer; }
    .m-faq .faq_box dt.is-act::after {
      content: "－"; }
    .m-faq .faq_box dt::after {
      content: "+";
      position: absolute;
      right: 15px;
      top: 50%;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
      color: #c59c00;
      font-size: 2.4rem; }
    .m-faq .faq_box dt span {
      display: inline-block;
      text-align: center;
      width: 70px;
      height: 70px;
      line-height: 70px;
      background: #000;
      color: #c59c00;
      font-family: "Roboto Condensed", sans-serif;
      font-size: 2.4rem;
      margin-right: 20px; }
  .m-faq .faq_box dd {
    display: none;
    background: #f5f5f5;
    position: relative;
    padding: 45px;
    padding-left: 120px; }
    .m-faq .faq_box dd p {
      margin-bottom: 0;
      padding-left: 70px;
      border-left: 1px solid #111; }
    .m-faq .faq_box dd span {
      position: absolute;
      top: 50%;
      left: 30px;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
      font-weight: 400;
      font-style: italic;
      font-size: 6rem;
      color: #c59c00;
      font-family: "Roboto Condensed", sans-serif; }

.m-alumni .bg_gray {
  padding: 25px;
  background: #f5f5f5;
  margin-bottom: 35px; }

.m-alumni ol {
  padding-left: 25px; }

.m-alumni table th {
  background: #666;
  color: #fff; }

/* 進路・就職ページ */
.m-career section {
  margin-bottom: 70px; }

.m-career .career_head {
  margin-bottom: 70px; }
  .m-career .career_head .img {
    margin-bottom: 65px; }

.m-career .career_program h3 {
  font-weight: bold;
  margin: 25px 0;
  font-size: 2rem; }

.m-career .career_formation h3 {
  font-size: 2rem;
  font-weight: bold;
  margin-bottom: 30px; }
  .m-career .career_formation h3 span {
    font-weight: normal;
    font-size: 1.3rem;
    position: relative;
    display: block;
    padding-left: 25px;
    margin-bottom: 10px; }
    .m-career .career_formation h3 span::before {
      content: "";
      position: absolute;
      left: 0;
      top: 50%;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
      width: 15px;
      height: 3px;
      background: #ccc; }

.m-career .career_formation .intern {
  background: #f8f8f8;
  padding: 25px; }
  .m-career .career_formation .intern h4 {
    margin-bottom: 15px;
    font-size: 2rem; }

.m-entitlement .entitlement_head h3 {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "MS P明朝", "MS 明朝", serif;
  font-weight: 500;
  position: relative;
  font-size: 3rem;
  margin-bottom: 35px; }
  .m-entitlement .entitlement_head h3::before {
    content: "";
    position: absolute;
    left: 316px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 190px;
    height: 1px;
    background: #111; }

.m-entitlement .entitlement_head .img {
  margin-bottom: 40px; }

.m-entitlement .entitlement_head dt {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "MS P明朝", "MS 明朝", serif;
  font-weight: 500;
  position: relative;
  font-size: 3rem;
  margin-bottom: 35px; }
  .m-entitlement .entitlement_head dt::before {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 60%;
    height: 1px;
    background: #111; }

.m-entitlement .entitlement_head dd {
  text-align: center; }

.m-entitlement .entitlement_head .summery_list .summery_box .thumb {
  position: relative;
  margin-bottom: 45px; }
  .m-entitlement .entitlement_head .summery_list .summery_box .thumb span {
    font-size: 2rem;
    font-weight: bold;
    background: #fff;
    padding: 20px;
    display: block;
    width: 90%;
    position: absolute;
    right: 0;
    bottom: -40px; }

.m-entitlement .entitlement {
  margin-bottom: 80px; }
  .m-entitlement .entitlement .whats_entitlement {
    margin-bottom: 40px; }
  .m-entitlement .entitlement .challenge {
    background: url("../../img/internship/challenge_bg.jpg");
    padding: 60px 0;
    position: relative; }
    .m-entitlement .entitlement .challenge::before {
      content: "";
      position: absolute;
      left: 50%;
      top: -20px;
      width: 1px;
      height: 40px;
      background: #111; }
    .m-entitlement .entitlement .challenge h3 {
      text-align: center;
      font-size: 2.6rem;
      font-weight: bold;
      margin-bottom: 50px; }
    .m-entitlement .entitlement .challenge dl {
      margin-bottom: 40px; }
      .m-entitlement .entitlement .challenge dl dt {
        margin-bottom: 20px; }
      .m-entitlement .entitlement .challenge dl dd small {
        font-size: 1.3rem;
        color: #999999;
        display: block; }

.m-entitlement .voice .voice_box {
  margin-bottom: 60px; }
  .m-entitlement .voice .voice_box h3 {
    margin-bottom: 25px; }
    .m-entitlement .voice .voice_box h3 span {
      display: inline-block;
      position: relative;
      font-weight: bold;
      font-size: 1.8rem;
      padding-bottom: 5px;
      margin-bottom: 10px; }
      .m-entitlement .voice .voice_box h3 span::before {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        height: 1px;
        background: #111; }
  .m-entitlement .voice .voice_box .img {
    position: relative; }
  .m-entitlement .voice .voice_box .name {
    position: absolute;
    width: 245px;
    background: #fff;
    padding: 25px;
    right: 0;
    bottom: -30px;
    font-weight: 700;
    font-size: 2rem; }
    .m-entitlement .voice .voice_box .name span {
      display: block;
      font-weight: 500;
      font-size: 1.3rem; }

/* 就職実績ページ */
.m-graduate .graduate_head {
  margin-bottom: 60px; }
  .m-graduate .graduate_head .img {
    margin-bottom: 40px; }

.m-graduate .graduate_list .graduate_box {
  margin-bottom: 60px; }
  .m-graduate .graduate_list .graduate_box ul li {
    position: relative;
    padding-left: 25px;
    margin-bottom: 10px; }
    .m-graduate .graduate_list .graduate_box ul li::before {
      content: "";
      position: absolute;
      left: 0;
      top: 50%;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
      width: 10px;
      height: 1px;
      background: #111; }

/* 企業担当者の方へページ */
.m-charge .charge_contents .rec_area {
  background: #f8f8f8;
  padding: 25px; }
  .m-charge .charge_contents .rec_area .btn01 {
    text-align: center;
    max-width: 320px; }

/* 卒業生メッセージページ */
.m-graduate_message .message_head {
  position: relative;
  margin-bottom: 55px; }
  .m-graduate_message .message_head .row {
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end; }
  .m-graduate_message .message_head .copy {
    position: absolute;
    left: 10px;
    top: 15px;
    z-index: 100;
    background: #fff;
    padding: 30px 40px; }
    .m-graduate_message .message_head .copy .en {
      font-size: 1.3rem;
      font-family: "Roboto Condensed", sans-serif;
      font-weight: 700;
      margin-bottom: 30px;
      text-transform: uppercase;
      letter-spacing: .3rem; }
      .m-graduate_message .message_head .copy .en span {
        color: #aaa; }
    .m-graduate_message .message_head .copy h2 {
      font-size: 2.6rem; }
      .m-graduate_message .message_head .copy h2 span {
        display: inline-block;
        font-weight: bold;
        position: relative;
        padding-bottom: 5px;
        margin-bottom: 20px; }
        .m-graduate_message .message_head .copy h2 span::before {
          content: "";
          position: absolute;
          bottom: 0;
          left: 0;
          width: 100%;
          height: 1px;
          background: #111; }
  .m-graduate_message .message_head .name {
    font-size: 2rem;
    font-weight: bold;
    padding: 0 40px; }
    .m-graduate_message .message_head .name span {
      font-size: 1.3rem;
      display: block;
      font-weight: 500; }
  .m-graduate_message .message_head .img span {
    font-size: 1.3rem; }

.m-graduate_message .img_area {
  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-examination .examination_head h2 {
  margin-bottom: 40px;
  text-align: center; }

.m-examination .examination_head p {
  text-align: center;
  margin-bottom: 40px; }

/* 入試情報 子ページ */
.m-examination_child .num_list li {
  position: relative;
  padding-left: 25px;
  margin-bottom: 5px; }
  .m-examination_child .num_list li:nth-child(1)::before {
    content: "1 -"; }
  .m-examination_child .num_list li:nth-child(2)::before {
    content: "2 -"; }
  .m-examination_child .num_list li:nth-child(3)::before {
    content: "3 -"; }
  .m-examination_child .num_list li:nth-child(4)::before {
    content: "4 -"; }
  .m-examination_child .num_list li:nth-child(5)::before {
    content: "5 -"; }
  .m-examination_child .num_list li:nth-child(6)::before {
    content: "6 -"; }
  .m-examination_child .num_list li:nth-child(7)::before {
    content: "7 -"; }
  .m-examination_child .num_list li:nth-child(8)::before {
    content: "8 -"; }
  .m-examination_child .num_list li:nth-child(9)::before {
    content: "9 -"; }
  .m-examination_child .num_list li:nth-child(10)::before {
    content: "10 -"; }
  .m-examination_child .num_list li::before {
    position: absolute;
    left: 0;
    top: 0;
    color: #c59c00;
    font-weight: bold; }

.m-examination_child .flow_table tr:nth-child(odd) th, .m-examination_child .flow_table tr:nth-child(odd) td {
  background: #e1ebff; }

.m-examination_child .flow_table th, .m-examination_child .flow_table td {
  text-align: left;
  background: #fff; }

.m-examination_child .flow_table th {
  width: 25%;
  text-align: center;
  position: relative;
  line-height: 1.4; }
  .m-examination_child .flow_table th span {
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    left: 10px;
    font-size: 2rem;
    color: #87afff; }

.m-examination_child .flow_table td {
  line-height: 1.2;
  font-size: 1.2rem; }

.m-examination_child .contents_in {
  margin-bottom: 50px; }
  .m-examination_child .contents_in table th, .m-examination_child .contents_in table td {
    font-style: 1.4rem;
    line-height: 1.2; }
    .m-examination_child .contents_in table th small, .m-examination_child .contents_in table td small {
      display: inline-block;
      background: #222;
      color: #fff;
      font-size: 1rem;
      border-radius: 10px;
      margin: 5px 5px 0;
      padding: 5px; }
  .m-examination_child .contents_in table th {
    line-height: 1.2; }
  .m-examination_child .contents_in table td.sche {
    line-height: 1.4;
    font-weight: bold; }
  .m-examination_child .contents_in .department {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    .m-examination_child .contents_in .department dt {
      color: #fff;
      border-radius: 10px;
      font-size: 1.5rem;
      padding: 0 10px;
      margin-right: 10px;
      width: 15%;
      text-align: center; }
      .m-examination_child .contents_in .department dt.architecture {
        background: #87afff; }
      .m-examination_child .contents_in .department dt.arts_crafts {
        background: #9fd28c; }
  .m-examination_child .contents_in .ttl09 {
    color: #333;
    line-height: 1; }
    .m-examination_child .contents_in .ttl09 span {
      color: #fff;
      border-radius: 10px;
      font-size: 1.5rem;
      padding: 0 10px;
      margin-left: 10px;
      width: 15%;
      text-align: center; }
      .m-examination_child .contents_in .ttl09 span.architecture {
        background: #87afff; }
      .m-examination_child .contents_in .ttl09 span.arts_crafts {
        background: #9fd28c; }

.m-examination_child .ttl09 {
  margin-bottom: 15px; }
  .m-examination_child .ttl09 span {
    color: #222; }

.m-examination_child .advice {
  background: url("../../img/ao/advice_bg@2x.jpg");
  background-size: 100%;
  padding: 25px; }
  .m-examination_child .advice h5 {
    font-size: 1.8rem;
    font-weight: bold;
    display: inline-block;
    position: relative;
    z-index: 10;
    padding-bottom: 5px;
    margin-bottom: 25px; }
    .m-examination_child .advice h5::before {
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      background: #fff;
      width: 100%;
      height: 90%;
      z-index: -1; }

.m-examination_child table th, .m-examination_child table td {
  vertical-align: middle;
  text-align: center; }

.m-examination_child table th {
  background: #e1ebff; }

.m-examination_child .cv {
  margin-top: 45px; }
  .m-examination_child .cv .tel_in {
    margin: 0 auto;
    text-align: left;
    font-family: "Roboto Condensed", sans-serif;
    position: relative;
    padding-left: 65px; }
    .m-examination_child .cv .tel_in::before {
      content: "";
      position: absolute;
      top: 50%;
      left: 0;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
      width: 40px;
      height: 40px;
      background: url("../img/ico/icon-tel@2x.png");
      background-size: cover !important; }
    .m-examination_child .cv .tel_in span {
      font-size: 3.6rem; }
  .m-examination_child .cv strong {
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Verdana, sans-serif;
    display: block;
    font-weight: 500;
    margin-bottom: 10px; }
  .m-examination_child .cv .mail_btn a {
    border-radius: 40px;
    display: block;
    color: #fff;
    padding: 20px 15px;
    background-size: 200% auto;
    background-image: -webkit-gradient(linear, left top, right top, from(#7ec7ea), color-stop(51%, #ccf18f), to(#7ec7ea));
    background-image: linear-gradient(to right, #7ec7ea 0%, #ccf18f 51%, #7ec7ea 100%);
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    font-weight: bold; }
    .m-examination_child .cv .mail_btn a:hover {
      background-position: right center; }
  .m-examination_child .cv .mail_btn span {
    width: 50%;
    margin: 0 auto;
    display: block;
    position: relative;
    text-align: center; }
    .m-examination_child .cv .mail_btn span::before {
      content: "";
      position: absolute;
      top: 50%;
      left: -35px;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
      width: 40px;
      height: 45px;
      background: url("../img/ico/icon-mail@2x.png");
      background-size: cover !important; }

.m-examination_child .price {
  font-size: 2rem;
  font-weight: 500;
  color: #e84608; }
  .m-examination_child .price small {
    color: #333; }

.m-examination_child .color_orrange {
  color: #e84608; }

.m-examination_child dl dt {
  color: #e84608;
  font-weight: bold;
  font-size: 1.8rem; }

.m-examination_child p a {
  text-decoration: underline; }
  .m-examination_child p a:hover {
    text-decoration: none; }

.m-color {
  position: relative; }
  .m-color::before {
    content: "";
    position: absolute;
    top: -300px;
    right: 0;
    width: 100%;
    height: 100%;
    background: url("../../img/color/color_line.png") no-repeat; }
  .m-color section {
    padding: 80px 0; }
  .m-color .bg {
    background: #fff5ef; }
  .m-color .color_head h2 span {
    font-size: 2.5rem;
    line-height: 1;
    padding-bottom: 15px;
    margin-bottom: 20px;
    font-weight: bold;
    display: inline-block;
    position: relative; }
    .m-color .color_head h2 span::before {
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      width: 100%;
      height: 2px;
      background: #111; }
  .m-color .color_contents {
    padding: 80px 0; }
  .m-color .color_box_large {
    position: relative;
    margin-bottom: 90px; }
    .m-color .color_box_large:nth-child(even) .text {
      left: inherit;
      right: 0; }
    .m-color .color_box_large.color01 .text::before {
      background-image: -webkit-gradient(linear, left top, right top, from(#8fd3f4), to(#a18dd2));
      background-image: linear-gradient(to right, #8fd3f4, #a18dd2); }
    .m-color .color_box_large.color01 .text .cat {
      color: #99ade1; }
    .m-color .color_box_large.color02 .text::before {
      background-image: -webkit-gradient(linear, left top, right top, from(#90d3f2), to(#bde47a));
      background-image: linear-gradient(to right, #90d3f2, #bde47a); }
    .m-color .color_box_large.color02 .text .cat {
      color: #a4dbbc; }
    .m-color .color_box_large.color03 .text::before {
      background-image: -webkit-gradient(linear, left top, right top, from(#fda185), to(#f6d266));
      background-image: linear-gradient(to right, #fda185, #f6d266); }
    .m-color .color_box_large.color03 .text .cat {
      color: #fab876; }
    .m-color .color_box_large .text {
      position: absolute;
      left: 50px;
      top: 70px;
      width: 475px;
      padding: 20px 50px 40px;
      background: #fff;
      z-index: 10; }
      .m-color .color_box_large .text::before {
        content: "";
        position: absolute;
        left: -50px;
        top: -30px;
        width: 100%;
        height: 260px;
        z-index: -2; }
      .m-color .color_box_large .text::after {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 260px;
        z-index: -1;
        background: #fff; }
      .m-color .color_box_large .text h3 {
        font-size: 2.4rem;
        font-weight: bold;
        margin-bottom: 20px; }
      .m-color .color_box_large .text time {
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        position: absolute;
        top: 0;
        left: -35px;
        color: #fff;
        font-size: 1.3rem;
        font-weight: bold;
        font-family: "Roboto Condensed", sans-serif;
        letter-spacing: .2rem; }
      .m-color .color_box_large .text .new {
        margin-bottom: 10px; }
      .m-color .color_box_large .text .cat {
        text-transform: uppercase;
        margin-bottom: 40px; }
      .m-color .color_box_large .text .more_btn {
        position: absolute;
        bottom: -20px; }
  .m-color .alumni .alumni_box {
    margin-bottom: 30px;
    text-align: center; }
    .m-color .alumni .alumni_box .thumb {
      margin-bottom: 25px; }
    .m-color .alumni .alumni_box .label {
      background: #111;
      color: #fff;
      border-radius: 30px;
      margin-bottom: 15px;
      padding: 5px; }
    .m-color .alumni .alumni_box .more_btn {
      margin: 0 auto; }

.m-color_detail {
  margin-top: 45px; }
  .m-color_detail .member {
    background: url("../../img/color/color01/member_bg@2x.jpg");
    background-size: cover;
    padding: 50px 0;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    margin-bottom: 0; }
    .m-color_detail .member ul {
      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-color_detail .member ul li {
        margin: 20px;
        text-align: center; }
        .m-color_detail .member ul li .thumb {
          margin-bottom: 20px; }
        .m-color_detail .member ul li .name {
          margin-top: 10px;
          font-size: 2rem;
          font-weight: bold;
          color: #000; }
  .m-color_detail .contents_body {
    padding: 45px 0;
    background: #f5f5f5; }
    .m-color_detail .contents_body .talk_box {
      position: relative;
      z-index: 10;
      padding: 45px 0;
      margin-bottom: 50px; }
      .m-color_detail .contents_body .talk_box::before {
        content: "";
        right: 0;
        top: 0;
        position: absolute;
        width: 95%;
        height: 100%;
        background: #fff;
        z-index: 1;
        -webkit-box-shadow: 0px 10px 20px -5px rgba(0, 0, 0, 0.1);
        box-shadow: 0px 10px 20px -5px rgba(0, 0, 0, 0.1); }
      .m-color_detail .contents_body .talk_box .talk_in {
        position: relative;
        z-index: 10; }
      .m-color_detail .contents_body .talk_box .name {
        color: #85c5e4; }

/* オープンキャンパスページ */
.m-opencampus .opencampus_copy {
  text-align: center;
  padding: 95px 0 120px;
  position: relative; }
  .m-opencampus .opencampus_copy ul li {
    position: absolute;
    z-index: 100;
    -webkit-transition: all 0.6s ease;
    transition: all 0.6s ease;
    opacity: 0;
    -webkit-transform: rotateX(0) rotateY(0);
    transform: rotateX(0) rotateY(0); }
    .m-opencampus .opencampus_copy ul li.is-act {
      opacity: 1; }
    .m-opencampus .opencampus_copy ul li:nth-child(1) {
      top: -30%;
      left: 26%; }
      .m-opencampus .opencampus_copy ul li:nth-child(1).is-act {
        top: -27%;
        -webkit-transform: rotateY(180deg);
        transform: rotateY(180deg); }
    .m-opencampus .opencampus_copy ul li:nth-child(2) {
      top: -20%;
      left: 22%;
      z-index: 99; }
      .m-opencampus .opencampus_copy ul li:nth-child(2).is-act {
        top: -17%;
        -webkit-transform: rotateY(180deg);
        transform: rotateY(180deg); }
    .m-opencampus .opencampus_copy ul li:nth-child(3) {
      top: 27%;
      left: 16%; }
      .m-opencampus .opencampus_copy ul li:nth-child(3).is-act {
        top: 30%;
        -webkit-transform: rotateY(180deg);
        transform: rotateY(180deg); }
    .m-opencampus .opencampus_copy ul li:nth-child(4) {
      top: -7%;
      right: 15%; }
      .m-opencampus .opencampus_copy ul li:nth-child(4).is-act {
        top: -10%;
        -webkit-transform: rotateY(180deg);
        transform: rotateY(180deg); }
    .m-opencampus .opencampus_copy ul li:nth-child(5) {
      top: 62%;
      right: 12%; }
      .m-opencampus .opencampus_copy ul li:nth-child(5).is-act {
        top: 65%;
        -webkit-transform: rotateY(180deg);
        transform: rotateY(180deg); }
  .m-opencampus .opencampus_copy h2 {
    margin-bottom: 55px;
    position: relative;
    z-index: 1; }
  .m-opencampus .opencampus_copy p {
    line-height: 2.2;
    position: relative;
    z-index: 1; }

.m-opencampus .opencampus_2type {
  background: #f5f5f5;
  padding-bottom: 60px;
  margin-bottom: 0; }
  .m-opencampus .opencampus_2type h2 {
    text-align: center;
    margin-bottom: 50px; }
    .m-opencampus .opencampus_2type h2 span {
      margin-bottom: 40px;
      display: block; }
      .m-opencampus .opencampus_2type h2 span.en_ttl {
        margin-top: 40px;
        margin-bottom: 0; }
  .m-opencampus .opencampus_2type .type_list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .m-opencampus .opencampus_2type .type_list02 .type_box {
    width: 100%; }
  .m-opencampus .opencampus_2type .type_box {
    width: 50%;
    padding-top: 180px;
    position: relative;
    opacity: 0;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease; }
    .m-opencampus .opencampus_2type .type_box.type01 {
      background: url("../../img/opencampus/opencampus_2type_bg01@2x.jpg") no-repeat center top;
      background-size: contain; }
      .m-opencampus .opencampus_2type .type_box.type01 .human {
        position: absolute;
        left: 0; }
    .m-opencampus .opencampus_2type .type_box.type02 {
      background: url("../../img/opencampus/opencampus_2type_bg02@2x.jpg") no-repeat center top;
      background-size: contain; }
      .m-opencampus .opencampus_2type .type_box.type02 .human {
        position: absolute;
        right: 0; }
    .m-opencampus .opencampus_2type .type_box.is-act {
      opacity: 1; }
    .m-opencampus .opencampus_2type .type_box .box_in {
      position: relative;
      max-width: 720px;
      margin: 0 auto;
      background: #fff;
      padding-bottom: 55px; }
    .m-opencampus .opencampus_2type .type_box .human {
      top: -90px;
      -webkit-transition-delay: .6s;
      transition-delay: .6s; }
      .m-opencampus .opencampus_2type .type_box .human.is-act {
        top: -120px; }
    .m-opencampus .opencampus_2type .type_box h3 {
      position: relative;
      text-align: center;
      margin-bottom: 40px;
      min-height: 107px; }
      .m-opencampus .opencampus_2type .type_box h3 .label {
        display: block;
        margin-bottom: 45px; }
      .m-opencampus .opencampus_2type .type_box h3 strong {
        position: absolute;
        right: 120px;
        top: 20px; }
    .m-opencampus .opencampus_2type .type_box p {
      font-size: 1.8rem;
      font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "MS P明朝", "MS 明朝", serif;
      position: relative; }
    .m-opencampus .opencampus_2type .type_box .date_list {
      opacity: 0;
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease;
      position: relative;
      top: 30px; }
      .m-opencampus .opencampus_2type .type_box .date_list.is-act {
        opacity: 1;
        top: 0; }

.m-opencampus .gallery {
  padding: 60px 0; }
  .m-opencampus .gallery #loopslider {
    margin: 0 auto;
    width: 100%;
    height: 330px;
    text-align: left;
    position: relative;
    overflow: hidden; }
    .m-opencampus .gallery #loopslider ul {
      height: 330px;
      float: left;
      display: inline;
      overflow: hidden;
      display: inline-block;
      overflow: hidden; }
      .m-opencampus .gallery #loopslider ul li {
        width: 420px;
        height: 330px;
        float: left;
        display: inline;
        overflow: hidden; }
      .m-opencampus .gallery #loopslider ul:after {
        content: ".";
        height: 0;
        clear: both;
        display: block;
        visibility: hidden; }

.m-opencampus .access {
  position: relative;
  margin-bottom: 60px; }
  .m-opencampus .access .access_wrap {
    position: relative; }
    .m-opencampus .access .access_wrap::before {
      content: "";
      position: absolute;
      left: 0;
      top: 150px;
      width: 100%;
      height: 370px;
      background: url("../../img/opencampus/access_bg@2x.jpg") no-repeat center;
      background-size: cover;
      z-index: 1; }
    .m-opencampus .access .access_wrap::after {
      content: "";
      position: absolute;
      right: 0;
      top: 150px;
      width: 100%;
      height: 370px;
      background: #fff;
      z-index: 100;
      -webkit-transition: all 0.5s ease;
      transition: all 0.5s ease; }
    .m-opencampus .access .access_wrap.is-act::after {
      width: 0; }
  .m-opencampus .access h2 {
    text-align: center;
    position: relative;
    margin-bottom: 45px; }
  .m-opencampus .access .map {
    position: relative;
    z-index: 10;
    text-align: center;
    max-width: 910px;
    margin: 0 auto 30px;
    margin-top: 300px;
    -webkit-transition-delay: .5s;
    transition-delay: .5s; }
  .m-opencampus .access .map_btn {
    max-width: 300px;
    margin-left: auto;
    margin-top: 30px; }
  .m-opencampus .access .train dl {
    margin-bottom: 40px; }
    .m-opencampus .access .train dl dt {
      position: relative;
      padding-left: 20px;
      margin-bottom: 10px;
      font-weight: 500; }
      .m-opencampus .access .train dl dt::before {
        content: "\f238";
        font-family: "Font Awesome 5 Pro";
        color: #9fc775;
        font-weight: 900;
        position: absolute;
        left: 0; }
    .m-opencampus .access .train dl dd {
      margin-top: 10px;
      position: relative;
      padding-left: 20px; }
      .m-opencampus .access .train dl dd::before {
        content: "・";
        color: #ccc;
        position: absolute;
        left: 0;
        top: 2px;
        font-size: 2rem; }
  .m-opencampus .access .kansai .access_in {
    text-align: center; }

.m-kyobilive .type_head {
  position: relative;
  padding-top: 70px; }
  .m-kyobilive .type_head.kyobilive_head::before {
    background: url("../../img/main/main_kyobilive@2x.jpg");
    background-size: cover; }
  .m-kyobilive .type_head::before {
    content: "";
    position: absolute;
    top: 0;
    left: 5%;
    width: 100%;
    height: 520px; }
  .m-kyobilive .type_head .obj li {
    position: absolute;
    z-index: 100; }
    .m-kyobilive .type_head .obj li:nth-child(1) {
      top: 655px;
      left: 5%; }
    .m-kyobilive .type_head .obj li:nth-child(2) {
      top: 455px;
      right: 5%; }

.m-kyobilive .type_head_in {
  position: relative;
  z-index: 10; }
  .m-kyobilive .type_head_in h3 {
    position: relative;
    text-align: center;
    margin-bottom: 40px; }
  .m-kyobilive .type_head_in p {
    max-width: 720px;
    margin: 0 auto 70px;
    color: #fff; }

.m-kyobilive .date_detail {
  background: #fff;
  margin-bottom: 30px; }
  .m-kyobilive .date_detail .date_list {
    position: relative;
    top: -50px;
    margin-bottom: 0; }
    .m-kyobilive .date_detail .date_list li {
      background: #fff;
      color: #ccc;
      border: 2px solid #ffa0a4;
      cursor: pointer;
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease; }
      .m-kyobilive .date_detail .date_list li a {
        color: #222; }
      .m-kyobilive .date_detail .date_list li.is-act, .m-kyobilive .date_detail .date_list li:hover {
        background: #ffa0a4;
        color: #fff; }
        .m-kyobilive .date_detail .date_list li.is-act a, .m-kyobilive .date_detail .date_list li:hover a {
          color: #fff; }
      .m-kyobilive .date_detail .date_list li::before {
        content: "";
        position: absolute;
        left: 50%;
        bottom: -10px;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 10px 5px 0 5px;
        border-color: #ffa0a4 transparent transparent transparent; }
  .m-kyobilive .date_detail .tab_area {
    padding: 0 55px 55px;
    background: url("../../img/opencampus/tab_border.jpg") no-repeat center bottom; }
    .m-kyobilive .date_detail .tab_area .js-tab_body {
      display: none; }
      .m-kyobilive .date_detail .tab_area .js-tab_body:first-child {
        display: block; }
    .m-kyobilive .date_detail .tab_area .tab_body {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
    .m-kyobilive .date_detail .tab_area .date {
      font-family: "Roboto Condensed", sans-serif;
      margin-right: 50px;
      font-weight: bold; }
    .m-kyobilive .date_detail .tab_area .month {
      font-size: 6rem;
      vertical-align: top; }
    .m-kyobilive .date_detail .tab_area .day {
      font-size: 13rem;
      vertical-align: baseline; }
    .m-kyobilive .date_detail .tab_area .week {
      font-size: 2rem;
      vertical-align: bottom; }
    .m-kyobilive .date_detail .tab_area .contents_detail h3 {
      color: #fff;
      background: #ffa0a4;
      border-radius: 30px;
      margin-bottom: 10px;
      padding: 0 20px;
      display: inline-block;
      font-weight: 500; }
    .m-kyobilive .date_detail .tab_area .contents_detail ul {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
      .m-kyobilive .date_detail .tab_area .contents_detail ul li {
        font-weight: 700;
        font-size: 1.8rem;
        color: #444444;
        margin-right: 30px;
        padding-left: 25px;
        position: relative; }
        .m-kyobilive .date_detail .tab_area .contents_detail ul li::before {
          font-family: "Font Awesome 5 Pro";
          position: absolute;
          left: 0;
          top: 50%;
          -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
          color: #f6d365; }
        .m-kyobilive .date_detail .tab_area .contents_detail ul li.time::before {
          content: "\f017";
          font-weight: 400; }
        .m-kyobilive .date_detail .tab_area .contents_detail ul li.place::before {
          content: "\f3c5";
          font-weight: 400; }
        .m-kyobilive .date_detail .tab_area .contents_detail ul li span {
          display: block;
          font-size: 1.3rem;
          font-weight: 500; }
        .m-kyobilive .date_detail .tab_area .contents_detail ul li a {
          font-size: 1.3rem;
          font-weight: 500;
          color: #97be6f;
          display: inline-block;
          margin-left: 15px; }
          .m-kyobilive .date_detail .tab_area .contents_detail ul li a:hover {
            text-decoration: underline; }

.m-kyobilive .bottom_date {
  margin-top: 100px; }

.m-kyobilive .anc_btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  .m-kyobilive .anc_btn li {
    width: 33%;
    border: 3px solid #222; }
    .m-kyobilive .anc_btn li:nth-child(2) {
      margin: 0 0.3%; }
    .m-kyobilive .anc_btn li a {
      display: block;
      padding: 25px;
      font-weight: bold;
      font-size: 1.6rem;
      text-align: center;
      background: #222;
      color: #fff;
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease; }
      .m-kyobilive .anc_btn li a:hover {
        background: #ffa0a4; }
        .m-kyobilive .anc_btn li a:hover i {
          -webkit-transform: rotate(0);
          transform: rotate(0);
          color: #222; }
    .m-kyobilive .anc_btn li i {
      margin-right: 15px;
      -webkit-transform: rotate(90deg);
      transform: rotate(90deg);
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease; }

.m-kyobilive .time_schedule {
  padding: 55px 0;
  margin-bottom: 60px;
  background: url("../../img/opencampus/time_schedule_bg.jpg");
  background-size: cover; }
  .m-kyobilive .time_schedule h2 {
    margin-bottom: 40px; }
  .m-kyobilive .time_schedule .time_table {
    margin-bottom: 10px; }

.m-kyobilive .program {
  margin-bottom: 100px;
  background: url("../../img/opencampus/program_bg@2x.png") no-repeat center 200px;
  background-size: contain; }
  .m-kyobilive .program h2 {
    margin-bottom: 40px; }
  .m-kyobilive .program .program_list {
    margin-bottom: 100px; }
  .m-kyobilive .program .program_box {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 30px;
    padding-bottom: 30px;
    border-bottom: 1px solid #ddd; }
    .m-kyobilive .program .program_box.pink h3 {
      color: #ffa0a4; }
    .m-kyobilive .program .program_box.pink time {
      background: #ffa0a4; }
    .m-kyobilive .program .program_box.blue h3 {
      color: #a1b4e0; }
    .m-kyobilive .program .program_box.blue time {
      background: #a1b4e0; }
    .m-kyobilive .program .program_box.purple h3 {
      color: #c49fdb; }
    .m-kyobilive .program .program_box.purple time {
      background: #c49fdb; }
    .m-kyobilive .program .program_box.yelow h3 {
      color: #fac24a; }
    .m-kyobilive .program .program_box.yelow time {
      background: #fac24a; }
    .m-kyobilive .program .program_box .img {
      width: 450px;
      position: relative; }
      .m-kyobilive .program .program_box .img span {
        position: absolute;
        right: 15px;
        top: 15px; }
    .m-kyobilive .program .program_box .text {
      width: 600px;
      background: #fff;
      position: relative;
      z-index: 10;
      padding: 30px; }
      .m-kyobilive .program .program_box .text p {
        margin-bottom: 0; }
        .m-kyobilive .program .program_box .text p span {
          color: #e84608; }
    .m-kyobilive .program .program_box h3 {
      font-size: 2.6rem; }
    .m-kyobilive .program .program_box time {
      font-size: 1.3rem;
      border-radius: 20px;
      display: inline-block;
      color: #fff;
      padding: 0 15px;
      margin: 15px 0 20px; }
  .m-kyobilive .program .workshop {
    text-align: center;
    margin-bottom: 50px;
    padding-bottom: 30px;
    border-bottom: 1px solid #ddd; }
    .m-kyobilive .program .workshop .workshop_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-kyobilive .program .workshop .workshop_ttl h3 {
        color: #97be6f;
        font-size: 2.6rem;
        margin-right: 30px; }
      .m-kyobilive .program .workshop .workshop_ttl span {
        display: block;
        text-align: left; }
      .m-kyobilive .program .workshop .workshop_ttl time {
        font-size: 1.3rem;
        border-radius: 20px;
        display: inline-block;
        color: #fff;
        padding: 0 15px;
        margin: 0 0 10px;
        background: #97be6f; }
      .m-kyobilive .program .workshop .workshop_ttl p {
        margin-bottom: 0; }
    .m-kyobilive .program .workshop .workshop_box {
      text-align: left; }
      .m-kyobilive .program .workshop .workshop_box .img {
        margin-bottom: 20px;
        position: relative; }
        .m-kyobilive .program .workshop .workshop_box .img span {
          position: absolute;
          left: 0;
          top: 0;
          background: #222;
          color: #fff;
          padding: 10px 15px;
          display: inline-block;
          line-height: 1;
          font-size: 1.3rem; }
      .m-kyobilive .program .workshop .workshop_box h4 {
        position: relative;
        margin-bottom: 10px;
        font-size: 1.6rem;
        font-weight: 500; }
      .m-kyobilive .program .workshop .workshop_box a {
        color: #97be6f;
        font-size: 1.3rem; }
        .m-kyobilive .program .workshop .workshop_box a:hover {
          text-decoration: underline; }

.m-kyobilive .opencampus_cv_area {
  position: relative;
  padding: 120px 0 50px; }
  .m-kyobilive .opencampus_cv_area::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 260px;
    background: url("../../img/opencampus/cv_bg@2x.jpg");
    background-size: cover;
    z-index: 1; }
  .m-kyobilive .opencampus_cv_area h2 {
    position: relative;
    z-index: 10;
    top: -25px;
    margin-bottom: 25px;
    text-align: center; }
  .m-kyobilive .opencampus_cv_area ul {
    position: relative;
    height: 100%; }
    .m-kyobilive .opencampus_cv_area ul li {
      position: absolute;
      bottom: -150px;
      z-index: 1; }
      .m-kyobilive .opencampus_cv_area ul li:nth-child(1) {
        left: 0; }
      .m-kyobilive .opencampus_cv_area ul li:nth-child(2) {
        right: 0;
        bottom: -165px; }
  .m-kyobilive .opencampus_cv_area .cv_btn {
    width: 500px;
    margin: 0 auto;
    position: relative;
    z-index: 10; }
    .m-kyobilive .opencampus_cv_area .cv_btn a {
      position: relative;
      top: 0;
      display: block;
      text-align: center;
      width: 100%;
      color: #fff;
      padding: 30px 15px;
      border-radius: 10px;
      border-bottom: 3px solid #222;
      font-size: 2.3rem;
      background-size: 200% auto;
      background-image: -webkit-gradient(linear, left top, right top, from(#f7849a), color-stop(51%, #fe978b), to(#f7849a));
      background-image: linear-gradient(to right, #f7849a 0%, #fe978b 51%, #f7849a 100%);
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease; }
      .m-kyobilive .opencampus_cv_area .cv_btn a:hover {
        background-position: right center; }
    .m-kyobilive .opencampus_cv_area .cv_btn span {
      display: inline-block;
      position: relative;
      padding-bottom: 10px; }
      .m-kyobilive .opencampus_cv_area .cv_btn span::before {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        height: 2px;
        background: #fff; }

/* 新着情報 */
/* プライバシーポリシー */
.m-privacy ol {
  padding-left: 25px; }

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

.m-login form {
  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-login .submit {
  margin-left: 15px; }
  .m-login .submit input {
    color: #fff;
    background: #c59c00; }

/* お問い合わせフォーム */
.m-contact {
  /*-------------------------------------
	    お電話でのお問い合わせ
	--------------------------------------*/
  /*-------------------------------------
	    フォームダイアログ
	--------------------------------------*/
  /*-------------------------------------
	    フォーム入力部
	--------------------------------------*/
  /*-------------------------------------
	    メールが届かない方へ
	--------------------------------------*/ }
  .m-contact .contactTel {
    max-width: 898px;
    outline: solid 1px #ddd;
    border: 9px solid #ffa0a4;
    margin: 30px auto;
    padding: 20px;
    text-align: center; }
    .m-contact .contactTel p {
      margin: 0; }
    .m-contact .contactTel .number {
      font-size: 24px;
      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;
      text-align: left; }
    .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: #ffd44d;
      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%;
    font-size: 1.4rem; }
  .container {
    width: 100%; }
  body::before, body::after {
    display: none; }
  #page::before, #page::after {
    display: none; }
  .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; }
  .crumbs {
    overflow-x: scroll;
    white-space: nowrap;
    /*margin-bottom: 30px;*/ }
  /* スクロールバーの装飾 */
  .crumbs::-webkit-scrollbar {
    height: 10px; }
  .crumbs::-webkit-scrollbar-track {
    background-color: #FFF; }
  .crumbs::-webkit-scrollbar-thumb {
    background-color: rgba(238, 238, 238, 0.8); }
  .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; }
  .slick-prev, .slick-next {
    width: 30px;
    height: 30px;
    line-height: 30px; }
    .slick-prev::before, .slick-next::before {
      line-height: 30px; }
  .ttl01 {
    font-size: 1.8rem; }
  .ttl03 .jp {
    font-size: 2.0rem; 
    padding-bottom:15px;
}
  .ttl04 {
    font-size: 1.8rem;
    padding: 15px 0;
    margin-bottom: 25px; }
  .ttl06 .en {
    font-size: 4vw;
    letter-spacing: .2rem; }
  .ttl06 .jp {
    font-size: 2rem;
    padding: 15px 50px; }
  .ttl08 {
    font-size: 1.8rem;
    padding: 15px 0; }
  .ttl09 {
    font-size: 1.6rem; }
  .ttl10 {
    font-size: 1.6rem;
    padding-bottom: 10px; }
  .ttl12 {
    font-size: 1.7rem; }
  .ttl13 {
    font-size: 2.4rem;
    padding-bottom: 10px;
    margin-bottom: 20px; }
  .main_visual {
    margin-top: 56px;
    height: 350px;
}
    .main_vi
/* 
Define this in your CSS 
Animation-Title = Replace it by the name you want to give your animation
*/

/* Chrome, Safari */
@-webkit-keyframes Animation-Title {
	0% {
		/* Add some property like - color: #1abc9c;*/
	}
	50% {
		/* Add some property like - color: #16F1C6;*/
	}
	100% {
		/* Add some property like - color: #06F9C9;*/
	}
}

/* Firefox */
@-moz-keyframes Animation-Title {
	0% {
		/* Add some property like - color: #1abc9c;*/
	}
	50% {
		/* Add some property like - color: #1abc9c;*/
	}
	100% {
		/* Add some property like - color: #1abc9c;*/
	}
}

/* Standard Syntax */
@keyframes Animation-Title {
	0% {
		/* Add some property like - color: #1abc9c;*/
	}
	50% {
		/* Add some property like - color: #16F1C6;*/
	}
	100% {
		/* Add some property like - color: #06F9C9;*/
	}
}

h1 span.jp img{
  width:55%;
  margin-bottom:4px;
}

.animation {
	-webkit-animation: Animation-Title 3s infinite;
	-moz-animation: Animation-Title 3s infinite;	
	animation: Animation-Title 3s infinite;
}sual .main_in {
      margin-left: 0; }
    .main_visual .swiper-slide {
      height: 350px; }
    .main_visual .main_copy {
      width: 50vw; }
    .main_visual .control_area {
      width: 100px;
      height: 40px;
      left: inherit;
      right: 0; }
      .main_visual .control_area .swiper-pagination {
        font-size: 1rem; }
      .main_visual .control_area .swiper-button-next, .main_visual .control_area .swiper-button-prev {
        width: 18px;
        height: 5px; }
    .main_visual .swiper-slide.slide01 a::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 {
      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 {
      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 {
      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 {
      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 {
      background-image: url("../../img/main/main_slide06_sp@2x.jpg");
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left bottom; }
	/*henmi 追加*/
	.main_visual .swiper-slide.y-slide01 a::before {
      background-image: url("../../img/main/y-slide01_sp@2x.jpg");
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left top; 
}
	.main_visual .swiper-slide.y-slide02 a::before {
      background-image: url("../../img/main/y-slide02_sp@2x.jpg");
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left bottom; }
	.main_visual .swiper-slide.y-slide03 a::before {
      background-image: url("../../img/main/y-slide03_sp@2x.jpg");
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left bottom; }	
	.main_visual .swiper-slide.y-slide04 a::before {
      background-image: url("../../img/main/y-slide04_sp@2x.jpg");
      background-size: cover;
      background-repeat: no-repeat;
      background-position: left bottom; }	
  .lower_ttl {
    height: 250px;
    margin-left: 0;
    margin-top: 56px; }
    .lower_ttl.main_tour h1 {
      width: 65%; }
    .lower_ttl.main_project h1 {
      width: 65%;
      top: 0; }
    .lower_ttl.main_location h1 {
      width: 30%;
      top: 20px;
      left: 0; }
    .lower_ttl.main_facility h1 {
      width: 50%;
      top: 50px;
      left: 50%;
      -webkit-transform: translateX(-50%);
      transform: translateX(-50%); }
    .lower_ttl.main_color::before {
      background-position: center top; }
    .lower_ttl.main_color h1 {
      position: absolute;
      bottom: 5%;
      width: 40vw; }
    .lower_ttl.main_color_detail {
      height: 300px;
      padding-bottom: 0; }
      .lower_ttl.main_color_detail::before {
        width: 80%;
        height: 200px;
        bottom: 30px; }
      .lower_ttl.main_color_detail h1 span {
        font-size: 1.8rem; }
    .lower_ttl.main_degree_show h1 {
      width: 50%; }
  .lower_ttl_parent {
    margin-top: 56px;
    height: 250px; }
    .lower_ttl_parent::before {
      height: 150px;
      z-index: -1; }
    .lower_ttl_parent::after {
      height: 250px;
      width: 90%; }
    .lower_ttl_parent h1 {
      height: 250px;
      top: 0; }
    .lower_ttl_parent .en {
      margin-bottom: 80px;
      margin-left: -45px;
      top: 10px; }
  .lower_ttl_child {
    margin-top: 56px; }
    .lower_ttl_child .jp {
      font-size: 2.6rem; }
    .lower_ttl_child .en {
      left: 0; }
  .lower_ttl_img {
    margin-top: 56px;
    height: 300px; }
    .lower_ttl_img::after {
      height: 300px; }
  .copyright {
    text-align: center;
    padding-bottom: 30px;
	  /*
    position: relative;
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-tb;
    writing-mode: horizontal-tb;
    text-align: center;
    padding-bottom: 30px;
    left: 0;
    top: 0; */}
    .copyright span::before {
      left: 0;
      bottom: -5px;
      width: 100%;
      height: 2px; }
  .pagetop {
    position: relative;
    right: 0;
    bottom: 0;
    width: 100%;
    background: #f2f2f2;
    padding: 15px 0;
    margin-bottom: 15px; }
    .pagetop a {
      width: 35px;
      height: 35px;
      line-height: 35px;
      margin: 0 auto; }
  .tel_area .ttl {
    margin: 0 auto 20px; }
  .tel_area .tel {
    margin: 0 auto 20px; }
  .tel_area .tel_in {
    display: block;
    padding: 10px;
    text-align: center; }
  .cv_area {
    display: block; }
    .cv_area .tel {
      width: 100%;
      padding: 15px 0; }
      .cv_area .tel .tel_in {
        width: 100%; }
        .cv_area .tel .tel_in::before {
          left: 15px; }
    .cv_area .contact {
      width: 100%; }
      .cv_area .contact a {
        padding: 25px; }
      .cv_area .contact span {
        width: 100%;
        padding-left: 50px;
        font-size: 1.4rem; }
        .cv_area .contact span::before {
          left: 0; }
  .date_list {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start; }
    .date_list li {
      padding: 10px;
      width: 24.5%;
      margin-left: 0.5%;
      margin-bottom: 1%;
      text-align: center; }
      .date_list li.end::after {
        font-size: 1rem; }
      .date_list li .month {
        font-size: 1.6rem; }
      .date_list li .day {
        font-size: 2.4rem; }
      .date_list li .week {
        line-height: 1;
        font-size: 1.3rem; }
  .news_list .news_box {
    display: block;
    margin-bottom: 30px; }
    .news_list .news_box time {
      padding-right: 30px; }
      .news_list .news_box time::before {
        width: 20px; }
    .news_list .news_box a {
      display: block;
      margin-top: 15px; }
  .menu_list_img {
    margin-bottom: 20px; }
    .menu_list_img .menu_box {
      width: 50%; }
      .menu_list_img .menu_box span {
        line-height: 1.4; }
        .menu_list_img .menu_box span::before {
          display: none; }
  .common_bnr {
    margin-top: 20px; }
  .menu_list_text {
    margin-bottom: 20px; }
    .menu_list_text .menu_box {
      margin-bottom: 10px; }
      .menu_list_text .menu_box a {
        padding: 15px 20px 15px 25px;
        font-size: 3vw; }
  .subject_child_list {
    display: block; }
    .subject_child_list.arts_crafts .subject_child_box {
      width: 100%; }
    .subject_child_list .subject_child_box {
      width: 100%; }
  .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: 4vw;
        padding: 5px; }
  .color_box .thumb {
    margin-bottom: 20px; }
  .color_box h3 {
    font-size: 1.5rem;
    margin-bottom: 5px; }
  .pager_area .pager_in {
    display: block; }
  .pager_area .pager {
    margin-bottom: 20px; }
    .pager_area .pager a {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
      -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
      flex-direction: row-reverse; }
    .pager_area .pager .arrow {
      text-align: center; }
    .pager_area .pager.prev .arrow {
      margin-left: 0;
      margin-right: 20px; }
      .pager_area .pager.prev .arrow i {
        margin: 0; }
    .pager_area .pager.next .arrow {
      margin-right: 0;
      margin-left: 20px; }
      .pager_area .pager.next .arrow i {
        margin: 0; }
  .pager_area .all {
    top: 0;
    text-align: center;
    margin: 20px 0;
    display: none; }
  .topics_list .topics_box {
    margin-bottom: 30px; }
    .topics_list .topics_box .thumb {
      -webkit-box-align: start;
      -webkit-align-items: flex-start;
      -ms-flex-align: start;
      align-items: flex-start;
      margin-bottom: 15px; }
      .topics_list .topics_box .thumb time {
        padding: 0 5px;
        top: 55px;
        font-size: 1.2rem; }
        .topics_list .topics_box .thumb time::before {
          top: -30px;
          width: 1px; }
    .topics_list .topics_box h3 {
      font-size: 1.1rem;
      padding-left: 0; }
    .topics_list .topics_box .cat {
      padding-left: 0; }
    .topics_list .topics_box a {
      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;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
      justify-content: space-between;
      padding-bottom: 0; }
    .topics_list .topics_box .thumb {
      width: 45%;
      margin-bottom: 0; }
    .topics_list .topics_box .text {
      width: 50%;
      padding-right: 2%; }
  .wp-pagenavi {
    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; }
    .wp-pagenavi a {
      font-size: 1.2rem; }
    .wp-pagenavi .center {
      text-align: center; }
    .wp-pagenavi .alignleft a, .wp-pagenavi .alignright a {
      padding: 0;
      text-align: left; }
  .l-header {
    position: fixed;
    top: 0;
    left: 0;
    background: #fff;
    z-index: 10000; }
    .l-header .header_bottom .container-fluid {
      padding: 0; }
    .l-header .header_bottom .header_bottom_in {
      padding: 0;
      margin: 0; }
    .l-header .header_bottom .logo {
      width: 42%;
      margin-left: 3%;
	}
	
    .l-header .header_bottom .gnavi {
      display: none;
      position: fixed;
      left: 0;
      top: 89px;
      overflow-y: auto;
      width: 100%;
      z-index: 1001;
      display: none;
      background: #222;
      color: #fff;
      padding-bottom: 0;
      z-index: 10000;
      padding: 25px;
      height: 530px;
      overflow-y: scroll; }
      .l-header .header_bottom .gnavi li {
        margin: 0;
        padding: 13px 0;
        border-bottom: 1px solid #fff; }
        .l-header .header_bottom .gnavi li.child a {
          padding-left: 15px; }
          .l-header .header_bottom .gnavi li.child a::before {
            content: "‐";
            left: 0;
            top: 50%;
            -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
            width: auto;
            height: auto;
            background: none; }
        .l-header .header_bottom .gnavi li a {
          color: #fff;
          font-size: 1.3rem;
          position: relative; }
          .l-header .header_bottom .gnavi li a::after {
            content: "\f105";
            font-family: "Font Awesome 5 Pro";
            position: absolute;
            right: 15px;
            font-weight: 300; }
    .l-header .header_bottom .sp_menu {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
    .l-header .header_bottom .ico_btn {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
      .l-header .header_bottom .ico_btn li {
        text-align: center;
        position: relative;
        font-size: 1.1rem;
        border-left: 1px solid #ccc; }
        .l-header .header_bottom .ico_btn li a {
          display: block;
          height: 100%;
          width:45px;
          padding: 0 5px;
          padding-top: 15px; }
        .l-header .header_bottom .ico_btn li i {
          display: block;
          margin-bottom: 5px; }
    .l-header .header_bottom .mega_trg.is-act span::before {
      content: "\f106"; }
    .l-header .header_bottom .mega_trg span {
      position: relative;
      font-size: 1.3rem; }
      .l-header .header_bottom .mega_trg span::before {
        content: "\f107";
        position: absolute;
        right: 15px;
        font-family: "Font Awesome 5 Pro";
        font-weight: 300; }
    .l-header .current_navi.is-act {
      display: none; }
    .l-header .mega_menu {
      position: relative;
      padding-top: 10px; }
      .l-header .mega_menu .ttl {
        display: none; }
      .l-header .mega_menu ul {
        -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
        display: block; }
        .l-header .mega_menu ul li {
          border-bottom: 1px solid #222 !important; }
        .l-header .mega_menu ul a {
          color: #222 !important; }
  .l-footer .foot_top h2 {
    text-align: center;
    margin: 0; }
    .l-footer .foot_top h2 img {
      vertical-align: middle; }
  .l-footer .foot_top .sns_list {
    margin-bottom: 0; }
    .l-footer .foot_top .sns_list li {
      margin: 0 15px; }
  .l-footer .foot_top .row {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center; }
  .l-footer .foot_bottom {
    text-align: center; }
    .l-footer .foot_bottom ul {
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      margin-top: 25px; }
      .l-footer .foot_bottom ul li {
        width: 44%;
        margin: 3%; }
  .m-index section {
    margin-bottom: 20px; }
  .m-index h2 {
    font-size: 2.4rem;
    margin-bottom: 30px; }
  .m-index .index_information .information_in .cat_list {
    position: relative; }
  .m-index .index_news .topics_box {
    margin: 0 auto 20px; }
    .m-index .index_news .topics_box:nth-child(n + 5) {
      display: none; }
    .m-index .index_news .topics_box::before {
      z-index: 1; }
  .m-index .index_information {
    padding: 0px 0; }
    .m-index .index_information h2 {
      margin-bottom: 30px; }
  .m-index .index_subject {
    display: block; }
    .m-index .index_subject .subject_box {
      width: 100%;
      padding: 20px; }
      .m-index .index_subject .subject_box.architecture .box_in h3 {
        width: 60%; }
      .m-index .index_subject .subject_box.design_kogei .box_in h3 {
        width: 80%; }
      .m-index .index_subject .subject_box .box_in {
        /*margin-top: 120px;*/
        padding: 10px 30px 50px 30px; 
        background-color:#fff !important;
}
      .m-index .index_subject .subject_box .box_in img{
        width:60%;
      }

        .m-index .index_subject .subject_box .box_in .en {
          left: 0;
          font-size: 1.2rem; }
  .m-index .index_color {
    padding: 50px 0 0; }
    .m-index .index_color::before {
      display: none; }
    .m-index .index_color .index_color_ttl h2 {
      margin-bottom: 25px; }
    .m-index .index_color .more_btn {
      margin: auto; }
    .m-index .index_color .index_color_list {
      margin-top: 50px; }
      .m-index .index_color .index_color_list .right {
        top: 0; }
  .m-index .index_pickup .slick-prev {
    left: 2%; }
  .m-index .index_pickup .slick-next {
    right: 2%; }
  .m-index .index_campus h2 {
    text-align: center; }
  .m-index .index_campus .campus_box {
    padding-bottom: 20px; }
    .m-index .index_campus .campus_box .name {
      position: relative;
      top: 0;
      width: 100%;
      padding: 5px; }
      .m-index .index_campus .campus_box .name h3 {
        font-size: 1.6rem;
        margin-bottom: 5px; }
  .m-philosophy dl, .m-policy dl {
    margin-bottom: 30px; }
    .m-philosophy dl dt, .m-policy dl dt {
      margin-bottom: 20px; }
  .m-philosophy ul li::before, .m-policy ul li::before {
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    top: 50%; }
  .m-history .history_head {
    padding-bottom: 20px; }
    .m-history .history_head::before {
      display: none; }
    .m-history .history_head h2 {
      -webkit-writing-mode: horizontal-tb;
      -ms-writing-mode: lr-tb;
      writing-mode: horizontal-tb;
      margin: 0 auto 20px; }
      .m-history .history_head h2 span {
        margin-left: 0;
        margin-bottom: 15px; }
  .m-history .history_list table th {
    text-align: left;
    width: 26%; }
    .m-history .history_list table th::after {
      display: none; }
    .m-history .history_list table th span {
      display: block;
      margin-left: 0; }
  .m-message .message_area h2 {
    margin-bottom: 25px; }
  .m-message .message_area .prof_area .name {
    margin-right: 10px; }
    .m-message .message_area .prof_area .name h3 {
      margin-bottom: 15px;
      font-size: 1.8rem; }
      .m-message .message_area .prof_area .name h3 span {
        font-size: 1.1rem; }
    .m-message .message_area .prof_area .name p br {
      display: none; }
  .m-keyword .keyword {
    padding: 30px 0; }
  .m-keyword .keyword_area .keyword_in {
    padding: 20px;
    display: block; }
    .m-keyword .keyword_area .keyword_in .text, .m-keyword .keyword_area .keyword_in .img {
      width: 100%; }
  .m-access .map .map_in {
    display: block; }
  .m-subject .subject_ttl a {
    padding: 160px 25px 15px 25px; }
  .m-subject .subject_ttl h2 {
    padding: 20px; }
    .m-subject .subject_ttl h2 .jp {
      font-size: 2rem;
      padding-bottom: 15px;
      margin-bottom: 15px; }
  .m-subject .menu_list_img .menu_box {
    width: 100%; }
    .m-subject .menu_list_img .menu_box span {
      padding-bottom: 0;
      font-size: 1.8rem; }
  .m-subject_child .subject_child_head h2 {
    font-size: 2rem;
    text-align: left; }
  .m-subject_child .point .point_box {
    height: auto; }
    .m-subject_child .point .point_box::before {
      display: none; }
    .m-subject_child .point .point_box .text {
      width: 100%;
      padding: 0 0 0 20px; }
      .m-subject_child .point .point_box .text::after {
        left: -20px !important; }
    .m-subject_child .point .point_box h3 {
      font-size: 2.8rem; }
  .m-subject_child .fourth_year_learning .year_box h3 {
    font-size: 1.8rem;
    margin-bottom: 15px; }
  .m-subject_child .qualification .qualification_in {
    padding: 20px; }
  .m-subject_grand .subject_grand_head h2 {
    text-align: center;
    margin-bottom: 25px; }
  .m-subject_grand .subject_grand_head h3 {
    font-size: 2rem; }
    .m-subject_grand .subject_grand_head h3 br {
      display: none; }
  .m-subject_grand .subject_grand_head ul {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    .m-subject_grand .subject_grand_head ul li {
      width: 48%;
      margin: 1%;
      text-align: center; }
  .m-subject_grand .exercises .exercises_box {
    padding-top: 200px; }
    .m-subject_grand .exercises .exercises_box .title {
      padding: 20px 40px; }
  .m-subject_grand .report.patarn2 .report_ttl .ttl_in {
    margin-right: 0;
    text-align: left; }
  .m-subject_grand .report .report_ttl .ttl_in {
    margin-bottom: 60px; }
  .m-subject_grand .report .report_ttl h2 {
    top: -45px;
    position: relative;
    margin-bottom: 0; }
  .m-subject_grand .report .report_ttl .grade span {
    font-size: 2rem; }
  .m-subject_grand .message .message_box {
    margin-bottom: 30px; }
    .m-subject_grand .message .message_box .img {
      margin-bottom: 40px; }
    .m-subject_grand .message .message_box .name {
      padding: 15px; }
    .m-subject_grand .message .message_box .text h3 {
      font-size: 1.6rem;
      margin-bottom: 20px; }
  .m-subject_grand .qualification .qualification_in {
    padding: 20px; }
  .m-teacher .teacher_box .thumb {
    width: 50%; }
    .m-teacher .teacher_box .thumb span {
      line-height: 1; }
  .m-teacher .teacher_box .text {
    width: 50%;
    font-size: 1.6rem; }
    .m-teacher .teacher_box .text .position {
      font-size: 1.2rem;
      padding: 5px; }
  .m-teacher_detail .teacher_content table tr, .m-teacher_detail .teacher_content table th, .m-teacher_detail .teacher_content table td {
    display: block; }
  .m-teacher_detail .teacher_content table tr {
    border-bottom: 1px solid #ccc; }
  .m-teacher_detail .teacher_content .img_area div {
    margin-bottom: 10px; }
  .m-examination .examination_link .ttl01 {
    margin-top: 30px; }
  .m-examination .examination_link .menu_list_text {
    margin-bottom: 0; }
  .m-examination_child .advice h5 {
    font-size: 1.6rem; }
  .m-examination_child .cv h3 br {
    display: none; }
  .m-examination_child .cv .tel_in {
    margin-bottom: 20px; }
  .m-examination_child .cv .mail_btn span::before {
    left: -65px; }
  .m-examination_child .examination_child_contents .btn_list li {
    margin-bottom: 20px; }
  .m-examination_child .flow_table th span {
    position: relative;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    left: 0;
    display: block; }
  .m-entitlement .entitlement_head dt {
    font-size: 2.4rem; }
    .m-entitlement .entitlement_head dt::before {
      width: 50%; }
  .m-entitlement .entitlement_head .summery_list .summery_box .thumb span {
    font-size: 1.8rem;
    padding: 15px; }
  .m-entitlement .entitlement .challenge h3 {
    font-size: 2.4rem; }
  .m-entitlement .voice .voice_box h3 span {
    font-size: 1.6rem; }
  .m-charge .charge_contents .rec_area .btn01 {
    margin-bottom: 25px; }
  .m-graduate_message .message_head .copy {
    position: relative;
    left: 0;
    top: 0;
    padding: 10px; }
    .m-graduate_message .message_head .copy h2 {
      font-size: 2rem; }
  .m-graduate_message .message_head .name {
    padding: 0;
    margin-bottom: 15px; }
  .m-graduate_message .message_head .img span {
    display: block;
    margin-top: 15px; }
  .m-tour .floor_map .floor_detail .img_area {
    display: block; }
    .m-tour .floor_map .floor_detail .img_area.reverse .floor_ttl {
      left: 0; }
    .m-tour .floor_map .floor_detail .img_area .img {
      width: 100%; }
    .m-tour .floor_map .floor_detail .img_area .text {
      width: 100%; }
    .m-tour .floor_map .floor_detail .img_area .floor_ttl {
      left: 0;
      margin-bottom: 0;
      width: 100%;
      height: 80px; }
  .m-tour .floor_map .floor_detail .img_area2 .bgwhite {
    margin-left: 0; }
  .m-tour .floor_map .floor_detail .img_area3 .text {
    display: block;
    margin-top: 0; }
  .m-tour .floor_map .floor_detail .img_area3 .floor_ttl {
    left: 0;
    margin-bottom: 0;
    width: 100%;
    height: 80px;
    margin-top: 0; }
  .m-tour .floor_map .floor_detail .img_area3 .bgwhite {
    width: 100%; }
  .m-degree_show .award {
    margin-bottom: 40px; }
    .m-degree_show .award .award_area .text {
      margin-left: 0; }
    .m-degree_show .award .award_area p {
      margin-bottom: 30px; }
  .m-project .project_area .project_box h3 {
    margin-left: 0; }
  .m-project .project_area .project_box .more {
    margin-left: 0; }
  .m-project .project_area .project_box .vol {
    margin-bottom: 20px; }
  .m-project_grand .detail_head .head_in .img {
    position: relative;
    margin-top: 60px; }
  .m-project_grand .detail_head .head_in .vol {
    width: 40%;
    position: absolute;
    top: 0px; }
  .m-project_grand .detail_head .head_in h1 span {
    font-size: 1.8rem;
    display: inline; }
  .m-project_grand .detail_head .head_in h1 br {
    display: none; }
  .m-project_grand .member .member_list {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    background-size: 8%;
    background-position: center 150px; }
  .m-project_grand .member .member_box {
    width: 48%; }
    .m-project_grand .member .member_box:nth-child(2) .circle span {
      left: 50%;
      -webkit-transform: translateX(-50%);
      transform: translateX(-50%); }
    .m-project_grand .member .member_box h3 {
      width: 90%;
      margin: 0 auto;
      font-size: 1.6rem; }
    .m-project_grand .member .member_box p {
      width: 90%;
      margin: 0 auto; }
    .m-project_grand .member .member_box .circle span {
      right: 50%;
      -webkit-transform: translateX(50%);
      transform: translateX(50%); }
  .m-project_grand .interview .interview_box:nth-child(even) {
    margin-left: 0; }
  .m-project_grand .interview .interview_box h3::before {
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%); }
  .m-project_grand .interview .answer {
    display: block; }
    .m-project_grand .interview .answer .img {
      width: 100%;
      margin: 0 auto 20px;
      text-align: center; }
    .m-project_grand .interview .answer dl {
      width: 100%; }
  .m-schedule .schedule_list .month {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    .m-schedule .schedule_list .month::before {
      display: none; }
    .m-schedule .schedule_list .month h3 {
      top: 50px; }
    .m-schedule .schedule_list .month ul {
      margin-left: 5%; }
  .m-location .location_list {
    padding-top: 20px; }
    .m-location .location_list.shichijo .location_main .ttl {
      background: none;
      background: #ef7a75; }
    .m-location .location_list.kawaramachi .location_main .ttl {
      background: none;
      background: #f3aa3d; }
    .m-location .location_list.kyoto .location_main .ttl {
      background: none;
      background: #67abcb; }
  .m-location .location_area .location_main .ttl {
    width: 100%;
    padding: 50px 15px; }
  .m-location .location_area .favorite_area .favorite_in {
    display: block; }
    .m-location .location_area .favorite_area .favorite_in h3 {
      text-align: center;
      margin-bottom: 15px; }
    .m-location .location_area .favorite_area .favorite_in p {
      width: 100%; }
  .m-boarding .boarding_info .tel_bg {
    padding: 20px; }
    .m-boarding .boarding_info .tel_bg dl {
      display: block; }
      .m-boarding .boarding_info .tel_bg dl dt {
        margin-right: 0;
        text-align: center;
        margin-bottom: 10px; }
        .m-boarding .boarding_info .tel_bg dl dt::before {
          left: 0;
          width: 100%; }
      .m-boarding .boarding_info .tel_bg dl dd {
        margin-left: 0; }
  .m-circle .circle_info ul {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
  .m-facility .facility_list .facility_box .text {
    padding: 20px; }
    .m-facility .facility_list .facility_box .text h3 {
      font-size: 1.6rem;
      margin-bottom: 15px; }
  .m-outside .outside_list {
    padding: 0; }
    .m-outside .outside_list::before {
      display: none; }
    .m-outside .outside_list.sonobe .outside_in {
      padding-left: 0; }
    .m-outside .outside_list.karasuma .outside_in {
      padding-right: 0; }
    .m-outside .outside_list.marunouchi .outside_in {
      padding-left: 0; }
    .m-outside .outside_list .outside_in {
      margin-bottom: 60px; }
    .m-outside .outside_list .outside_name {
      margin-bottom: 20px; }
      .m-outside .outside_list .outside_name::before {
        font-size: 20vw; }
      .m-outside .outside_list .outside_name h2 {
        font-size: 1.8rem;
        margin-bottom: 20px; }
        .m-outside .outside_list .outside_name h2 br {
          display: none; }
    .m-outside .outside_list .address {
      margin-bottom: 20px; }
  .m-faq .faq_box dt {
    padding-left: 40px;
    padding-right: 50px; }
    .m-faq .faq_box dt span {
      position: absolute;
      left: 0;
      top: 0;
      width: 30px;
      height: 100%;
      font-size: 1.4rem;
      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; }
  .m-faq .faq_box dd {
    padding: 40px 20px 20px; }
    .m-faq .faq_box dd span {
      position: absolute;
      left: 0;
      top: 30px;
      opacity: .2;
      font-size: 8rem;
      z-index: 1; }
    .m-faq .faq_box dd p {
      padding-left: 0;
      border: none;
      position: relative;
      z-index: 10; }
  .m-color section {
    padding: 20px 0; }
  .m-color .color_head {
    padding-top: 0; }
    .m-color .color_head h2 span {
      font-size: 1.8rem;
      padding-bottom: 5px;
      margin-bottom: 10px; }
  .m-color .color_contents {
    padding: 20px 0; }
  .m-color .color_box_large .text {
    position: relative;
    left: 0;
    top: 0;
    width: 100%;
    padding: 0 20px 40px; }
    .m-color .color_box_large .text time {
      -webkit-writing-mode: horizontal-tb;
      -ms-writing-mode: lr-tb;
      writing-mode: horizontal-tb;
      position: relative;
      top: -30px;
      left: 0; }
    .m-color .color_box_large .text h3 {
      font-size: 1.8rem;
      margin-bottom: 10px; }
    .m-color .color_box_large .text .cat {
      margin-bottom: 15px; }
  .m-color .alumni .alumni_box p {
    font-size: 1.3rem;
    line-height: 1.2; }
  .m-color .alumni .alumni_box .more_btn {
    width: 100%; }
  .m-color_detail .member ul {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start; }
    .m-color_detail .member ul li {
      width: 46%;
      margin: 4% 2%;
      font-size: 1.2rem;
      line-height: 1.4; }
      .m-color_detail .member ul li .name {
        font-size: 1.4rem;
        margin-top: 0; }
  .m-color_detail .contents_body .talk_box {
    padding: 15px; }
    .m-color_detail .contents_body .talk_box::before {
      width: 100%; }
  .m-color_detail .sp_reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse; }
  .m-opencampus .opencampus_copy {
    padding-top: 30px;
    padding: 40px 0 10px; }
    .m-opencampus .opencampus_copy ul {
      display: none; }
    .m-opencampus .opencampus_copy h2 {
      margin-bottom: 20px; }
    .m-opencampus .opencampus_copy p {
      text-align: left;
      line-height: 1.8; }
      .m-opencampus .opencampus_copy p br {
        display: none; }
  .m-opencampus .opencampus_2type {
    padding-bottom: 30px; }
    .m-opencampus .opencampus_2type .type_list {
      display: block; }
      .m-opencampus .opencampus_2type .type_list .type_box {
        width: 100%;
        padding-top: 130px; }
        .m-opencampus .opencampus_2type .type_list .type_box.type01 .human {
          left: -40px;
          width: 50%; }
        .m-opencampus .opencampus_2type .type_list .type_box.type02 .human {
          right: -40px;
          width: 50%; }
        .m-opencampus .opencampus_2type .type_list .type_box h3 .label {
          margin-bottom: 15px; }
        .m-opencampus .opencampus_2type .type_list .type_box h3 strong {
          right: 0;
          top: -80px;
          width: 25%; }
        .m-opencampus .opencampus_2type .type_list .type_box p {
          font-size: 1.4rem; }
    .m-opencampus .opencampus_2type .type_list02 .type_box h3 strong {
      right: 0;
      top: -110px; }
    .m-opencampus .opencampus_2type .btn {
      max-width: 90%;
      margin: 0 auto; }
  .m-opencampus .gallery {
    padding: 20px 0; }
  .m-opencampus .access::before {
    height: 200px;
    top: 40px;
    display: none; }
  .m-opencampus .access h2 {
    margin-bottom: 25px; }
  .m-opencampus .access .map {
    margin-top: 20px; }
  .m-opencampus .access .map_btn {
    margin: 20px auto 0; }
  .m-opencampus .sights h3 {
    font-size: 1.6rem; }
  .m-opencampus .sights p {
    font-size: 1.3rem; }
  .m-kyobilive .type_head {
    padding-top: 50px; }
    .m-kyobilive .type_head::before {
      left: 0;
      height: 150px; }
    .m-kyobilive .type_head .obj {
      display: none; }
    .m-kyobilive .type_head p {
      color: #222;
      text-align: left; }
  .m-kyobilive .date_detail .date_list {
    top: -20px;
    overflow-x: scroll;
    white-space: nowrap;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    padding-bottom: 10px; }
    .m-kyobilive .date_detail .date_list li {
      min-width: 80px;
      width: auto; }
  .m-kyobilive .date_detail .tab_area {
    padding: 0 15px 25px;
    background-color: #fff0f0; }
    .m-kyobilive .date_detail .tab_area .tab_body {
      display: block;
      padding-top: 50px; }
    .m-kyobilive .date_detail .tab_area .date {
      margin-right: 0;
      text-align: center;
      margin-bottom: 15px; }
    .m-kyobilive .date_detail .tab_area .day {
      font-size: 9rem; }
    .m-kyobilive .date_detail .tab_area .contents_detail h3 {
      display: block;
      background: #fff;
      color: #222;
      text-align: center; }
    .m-kyobilive .date_detail .tab_area .contents_detail ul {
      display: block; }
      .m-kyobilive .date_detail .tab_area .contents_detail ul li {
        margin: 10px 0;
        font-weight: 500;
        font-size: 1.4rem; }
        .m-kyobilive .date_detail .tab_area .contents_detail ul li span {
          display: inline-block; }
  .m-kyobilive .anc_btn li a {
    font-size: 2.6vw;
    padding: 15px 5px; }
    .m-kyobilive .anc_btn li a i {
      display: block;
      margin-right: 0; }
  .m-kyobilive .bottom_date {
    margin-top: 40px; }
  .m-kyobilive .program {
    margin-bottom: 40px; }
    .m-kyobilive .program .program_list {
      margin-bottom: 50px; }
    .m-kyobilive .program .program_box {
      -webkit-box-orient: vertical;
      -webkit-box-direction: reverse;
      -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
      flex-direction: column-reverse; }
      .m-kyobilive .program .program_box .img {
        width: 100%; }
      .m-kyobilive .program .program_box .text {
        width: 100%;
        padding: 10px;
        font-size: 1.3rem; }
        .m-kyobilive .program .program_box .text h3 {
          font-size: 2rem; }
    .m-kyobilive .program .workshop .workshop_ttl {
      display: block; }
      .m-kyobilive .program .workshop .workshop_ttl h3 {
        margin-right: 0;
        margin-bottom: 15px;
        font-size: 2rem;
        text-align: left; }
      .m-kyobilive .program .workshop .workshop_ttl p {
        text-align: left; }
        .m-kyobilive .program .workshop .workshop_ttl p br {
          display: none; }
    .m-kyobilive .program .workshop .workshop_box {
      margin-bottom: 25px; }
      .m-kyobilive .program .workshop .workshop_box h4 {
        font-size: 1.4rem;
        line-height: 1; }
  .m-kyobilive .opencampus_cv_area {
    padding: 50px 0; }
    .m-kyobilive .opencampus_cv_area::before {
      height: 200px; }
    .m-kyobilive .opencampus_cv_area ul {
      display: none; }
    .m-kyobilive .opencampus_cv_area .cv_btn {
      width: 100%; }
      .m-kyobilive .opencampus_cv_area .cv_btn a {
        padding: 10px 15px;
        font-size: 1.8rem; }
  .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: #ffa0a4;
    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 #ffa0a4;
    border-bottom: 4px solid #ffa0a4;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg); } }

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





