@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@100;300;400;500;700;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@400;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap");
/*! normalize.css v2.1.1 | MIT License | git.io/normalize */
/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined in IE 8/9.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block;
}

/**
 * Correct `inline-block` display not defined in IE 8/9.
 */
audio,
canvas,
video {
  display: inline-block;
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Address styling not present in IE 8/9.
 */
[hidden] {
  display: none;
}

/* ==========================================================================
   Base
   ========================================================================== */
/**
 * 1. Prevent system color scheme's background color being used in Firefox, IE,
 *    and Opera.
 * 2. Prevent system color scheme's text color being used in Firefox, IE, and
 *    Opera.
 * 3. Set default font family to sans-serif.
 * 4. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  background: #fff;
  /* 1 */
  color: #000;
  /* 2 */
  font-family: sans-serif;
  /* 3 */
  -ms-text-size-adjust: 100%;
  /* 4 */
  -webkit-text-size-adjust: 100%;
  /* 4 */
}

/**
 * Remove default margin.
 */
body {
  margin: 0;
}

/* ==========================================================================
   Links
   ========================================================================== */
/**
 * Address `outline` inconsistency between Chrome and other browsers.
 */
a:focus {
  outline: thin dotted;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0;
}

/* ==========================================================================
   Typography
   ========================================================================== */
/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari 5, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Address styling not present in IE 8/9, Safari 5, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
 */
b,
strong {
  font-weight: bold;
}

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

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0;
}

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

/**
 * Correct font family set oddly in Safari 5 and Chrome.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, serif;
  font-size: 1em;
}

/**
 * Improve readability of pre-formatted text in all browsers.
 */
pre {
  white-space: pre-wrap;
}

/**
 * Set consistent quote types.
 */
q {
  quotes: "\201C" "\201D" "\2018" "\2019";
}

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* ==========================================================================
   Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9.
 */
img {
  border: 0;
}

/**
 * Correct overflow displayed oddly in IE 9.
 */
svg:not(:root) {
  overflow: hidden;
}

/* ==========================================================================
   Figures
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari 5.
 */
figure {
  margin: 0;
}

/* ==========================================================================
   Forms
   ========================================================================== */
/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * 1. Correct font family not being inherited in all browsers.
 * 2. Correct font size not being inherited in all browsers.
 * 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
 */
button,
input,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 2 */
  margin: 0;
  /* 3 */
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
button,
input {
  line-height: normal;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
 * Correct `select` style inheritance in Firefox 4+ and Opera.
 */
button,
select {
  text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default;
}

/**
 * 1. Address box sizing set to `content-box` in IE 8/9.
 * 2. Remove excess padding in IE 8/9.
 */
input[type="checkbox"],
input[type="radio"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  -webkit-box-sizing: content-box;
  /* 2 */
  box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
 * 1. Remove default vertical scrollbar in IE 8/9.
 * 2. Improve readability and alignment in all browsers.
 */
textarea {
  overflow: auto;
  /* 1 */
  vertical-align: top;
  /* 2 */
}

/* ==========================================================================
   Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

/*! パーツ類 */
select::-ms-expand {
  display: none;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
}

input[type="number"] {
  -moz-appearance: textfield !important;
}

input[type="number"]:hover,
input[type="number"]:focus {
  -moz-appearance: number-input;
}

input[type="radio"],
input[type="checkbox"] {
  opacity: 0;
  width: 0;
  height: 0;
  margin: 0;
}

input[type="radio"] + label,
input[type="checkbox"] + label {
  position: relative;
  display: inline-block;
  margin-left: 3px;
  padding: 3px 0 3px 26px;
  font-size: 14px;
  cursor: pointer;
}
@media only screen and (max-width: 768px) {
  input[type="radio"] + label,
  input[type="checkbox"] + label {
    line-height: 1.8em;
    margin-left: 0;
  }
}

input[type="radio"] + label::before,
input[type="checkbox"] + label::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  width: 20px;
  height: 20px;
  margin-top: -10px;
  background-color: #fff;
}

input[type="radio"]:focus + label::before,
input[type="checkbox"]:focus + label::before {
  -webkit-box-shadow: 0px 0px 5px #006aec;
  box-shadow: 0px 0px 5px #006aec;
}

input[type="radio"] + label::after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
}

input[type="radio"] + label::before {
  border: 2px solid #777;
  border-radius: 30px;
}

input[type="radio"] + label::after {
  left: 4px;
  width: 12px;
  height: 12px;
  margin-top: -6px;
  border: 2px solid #777;
  border-radius: 12px;
}

input[type="checkbox"] + label::before {
  border: 1px #777 solid;
  border-radius: 4px;
}

@media only screen and (max-width: 768px) {
  input[type="radio"]:checked + label,
  input[type="checkbox"]:checked + label {
    color: #c41d1d;
  }
}

input[type="checkbox"]:checked + label::before {
  border: 1px #c41d1d solid;
}

input[type="radio"]:checked + label::after,
input[type="checkbox"]:checked + label::after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
}

input[type="radio"]:checked + label::before {
  border: 2px solid #c41d1d;
}

input[type="radio"]:checked + label::after {
  left: 4px;
  width: 12px;
  height: 12px;
  margin-top: -6px;
  border-radius: 12px;
  border: 2px solid #c41d1d;
  background-color: #c41d1d;
}

input[type="checkbox"]:checked + label::after {
  left: 4px;
  width: 12px;
  height: 8px;
  margin-top: -6px;
  border-left: 2px solid #c41d1d;
  border-bottom: 2px solid #c41d1d;
  -webkit-transform: rotate(-50deg);
  -ms-transform: rotate(-50deg);
      transform: rotate(-50deg);
}

@media only screen and (max-width: 768px) {
  .either-radio {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
  }
  .either-radio li {
    line-height: 1;
  }
  .either-radio li input[type="radio"] + label {
    display: block;
    min-width: 75px;
    height: 40px;
    margin-right: 0;
    padding: 0 10px;
    background-color: #fff;
    color: #c41d1d;
    border: 1px #777 solid;
    line-height: 38px;
    text-align: center;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
  }
  .either-radio li input[type="radio"] + label::before,
  .either-radio li input[type="radio"] + label::after {
    display: none;
  }
  .either-radio li input[type="radio"]:checked + label {
    background-color: #c41d1d;
    color: #fff;
  }
  .either-radio li + li input[type="radio"] + label {
    border-left: none;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
  }

  .either-select {
    overflow: hidden;
  }
  .either-select select {
    float: left;
    max-width: 75px;
    border-radius: 10px 0 0 10px / 10px 0 0 10px;
  }
  .either-select select + select {
    border-left: none;
    border-radius: 0 10px 10px 0 / 0 10px 10px 0;
  }
}
/*
    Colorbox Core Style:
    The following CSS is consistent between example themes and should not be altered.
*/
#colorbox,
#cboxOverlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  overflow: visible;
  -webkit-transform: translate3d(0, 0, 0);
}

#cboxWrapper {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  overflow: visible;
  -webkit-transform: translate3d(0, 0, 0);
  max-width: none;
}

#cboxOverlay {
  position: fixed;
  width: 100%;
  height: 100%;
}

#cboxMiddleLeft,
#cboxBottomLeft {
  clear: left;
}

#cboxContent {
  position: relative;
}

#cboxLoadedContent {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}
#cboxLoadedContent .module_movie {
  margin-bottom: 0;
}

#cboxTitle {
  margin: 0;
}

#cboxLoadingOverlay,
#cboxLoadingGraphic {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#cboxPrevious,
#cboxNext,
#cboxClose,
#cboxSlideshow {
  cursor: pointer;
}

.cboxPhoto {
  float: left;
  margin: auto;
  border: 0;
  display: block;
  max-width: none;
  -ms-interpolation-mode: bicubic;
}

.cboxIframe {
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
  padding: 0;
  margin: 0;
}

#colorbox,
#cboxContent,
#cboxLoadedContent {
  box-sizing: content-box;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
}

/* 
    User Style:
    Change the following styles to modify the appearance of Colorbox.  They are
    ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#cboxOverlay {
  background: #000;
  opacity: 0.5 !important;
  filter: alpha(opacity=50) !important;
}

#colorbox {
  outline: 0;
}

#cboxContent {
  background: #fff;
}
#cboxContent:after {
  content: "";
  clear: both;
  display: block;
}
#cboxContent img {
  max-width: 590px;
}
#cboxContent .image img {
  display: block;
  margin: 0 auto;
}
#cboxContent .text {
  max-width: 590px;
  margin: 0 auto;
  padding: 32px 0 0;
  line-height: 2;
  color: #151515;
  overflow: hidden;
}
#cboxContent .text p:last-of-type {
  font-size: 14px;
  font-size: 0.875rem;
  margin-bottom: 0;
}
#cboxContent .text .title {
  margin-bottom: 1.5em;
  font-size: 18px;
  font-size: 1.125rem;
  color: #000;
}
#cboxContent .text .tag-list {
  padding: 0;
}
#cboxContent .text .tag-list li {
  margin-bottom: 1em;
  list-style: none;
  font-size: 14px;
  font-size: 0.875rem;
  color: #000;
}
#cboxContent .text .tag-list li span {
  display: inline-block;
  background-color: #f5f5f5;
  padding: 0.4em 18px;
  line-height: 1.44;
}

.cboxIframe {
  background: #fff;
}

#cboxError {
  padding: 50px;
  border: 1px solid #ccc;
}

#cboxLoadedContent {
  padding: 60px 20px;
  background: #fff;
}

#cboxTitle {
  display: none !important;
  position: absolute;
  top: -20px;
  left: 0;
  color: #ccc;
}

#cboxCurrent {
  display: none !important;
  position: absolute;
  top: -20px;
  right: 0px;
  color: #ccc;
}

#cboxLoadingGraphic {
  top: 33%;
  left: 45%;
}

#cboxLoadingGraphic,
#cboxLoadingGraphic:before,
#cboxLoadingGraphic:after {
  border-radius: 50%;
}

#cboxLoadingGraphic:before,
#cboxLoadingGraphic:after {
  position: absolute;
  content: "";
}

#cboxLoadingGraphic:before {
  width: 5.2em;
  height: 10.2em;
  background: #fff;
  border-radius: 10.2em 0 0 10.2em;
  top: -0.1em;
  left: -0.1em;
  -webkit-transform-origin: 5.2em 5.1em;
  -ms-transform-origin: 5.2em 5.1em;
      transform-origin: 5.2em 5.1em;
  -webkit-animation: load2 2s infinite ease 1.5s;
  animation: load2 2s infinite ease 1.5s;
}

#cboxLoadingGraphic {
  color: #c41d1d;
  font-size: 11px;
  text-indent: -99999em;
  margin: 55px auto;
  position: relative;
  width: 10em;
  height: 10em;
  -webkit-box-shadow: inset 0 0 0 1em;
          box-shadow: inset 0 0 0 1em;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
}

#cboxLoadingGraphic:after {
  width: 5.2em;
  height: 10.2em;
  background: #fff;
  border-radius: 0 10.2em 10.2em 0;
  top: -0.1em;
  left: 5.1em;
  -webkit-transform-origin: 0px 5.1em;
  -ms-transform-origin: 0px 5.1em;
      transform-origin: 0px 5.1em;
  -webkit-animation: load2 2s infinite ease;
  animation: load2 2s infinite ease;
}

@-webkit-keyframes load2 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes load2 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@media only screen and (max-width: 768px) {
  #cboxLoadingGraphic {
    -ms-transform: scale(0.5, 0.5);
    -webkit-transform: scale(0.5, 0.5);
    transform: scale(0.5, 0.5);
    left: 35%;
    margin: 0 auto;
  }
}
/* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
#cboxPrevious,
#cboxNext,
#cboxSlideshow,
#cboxClose {
  border: 0;
  padding: 0;
  margin: 0;
  overflow: visible;
  width: auto;
  background: none;
}

/* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
#cboxPrevious:active,
#cboxNext:active,
#cboxSlideshow:active,
#cboxClose:active {
  outline: 0;
}

#cboxSlideshow {
  position: absolute;
  top: -20px;
  right: 90px;
  color: #fff;
}

#cboxPrevious {
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -26px;
  background: url("../img/mode/common-red-left-arrow.svg") no-repeat center left 18px #1b1b1b;
  width: 52px;
  height: 52px;
  text-indent: -9999px;
}

#cboxNext {
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -26px;
  background: url("../img/mode/common-red-right-arrow.svg") no-repeat center right 18px #1b1b1b;
  width: 52px;
  height: 52px;
  text-indent: -9999px;
}

#cboxClose {
  position: absolute;
  top: -73px;
  right: 0;
  display: block;
  background: url("../img/mode/common_icon_close.svg") no-repeat center;
  background-size: cover;
  width: 50px;
  height: 53px;
  text-indent: -9999px;
}
#cboxClose:hover {
  background-position: bottom center;
}

@media only screen and (max-width: 768px) {
  #cboxContent img {
    max-width: inherit;
  }
  #cboxContent .image {
    float: none;
    text-align: center;
  }
  #cboxContent .image img {
    width: 100%;
    margin: 0 auto;
  }
  #cboxContent .text {
    padding: 20px 0 32px;
    line-height: 2;
  }
  #cboxContent .text p:last-of-type {
    margin-bottom: 0;
  }

  #cboxLoadedContent {
    padding: 20px;
  }

  #cboxClose {
    top: -55px;
    right: 0;
    width: 37px;
    height: 35px;
  }
  #cboxClose:hover {
    background-position: top center;
  }

  #cboxNext,
  #cboxPrevious {
    display: none !important;
  }
}
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  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);
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

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

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

.slick-track:after {
  clear: both;
}

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

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

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

.nailthumb-container {
  width: auto;
  height: auto;
  margin: 0 0 11px;
  padding: 0;
  overflow: hidden;
  position: relative;
  text-align: left;
}

.nailthumb-container img.nailthumb-image {
  margin: 0;
  padding: 0;
  max-width: none;
  text-align: left;
  float: left;
}

.nailthumb-container span.nailthumb-title {
  background: none repeat scroll 0 0 rgba(0, 0, 0, 0.5);
  bottom: 0;
  color: White;
  display: block;
  font-size: 9px;
  height: 20px;
  left: 0;
  margin-top: 2px;
  line-height: 20px;
  position: relative;
  text-align: center;
  width: 100%;
  overflow: hidden;
  float: left;
}

.nailthumb-container span.nailthumb-title .nailthumb-title-scroller {
  padding-left: 2px;
}

.nailthumb-container img {
  max-width: none;
  text-align: left;
}

#site-header {
  position: relative;
  min-height: 120px;
  height: auto;
  background-color: #fff;
}
#site-header .site-inner {
  width: auto;
  max-width: 1280px;
}
#site-header a {
  color: #000;
}
#site-header nav ul {
  overflow: hidden;
  margin: 0;
  padding: 0;
}
#site-header nav ul li {
  float: left;
  list-style: none;
}
#site-header .header-top {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 16px 32px;
}
#site-header #company-logo {
  width: 210px;
  height: auto;
}
#site-header #company-logo:hover {
  opacity: 0.6;
  filter: alpha(opacity=60);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
#site-header #company-logo img {
  height: 100%;
}
#site-header #sub-navi {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
#site-header #sub-navi #inquiry-navi {
  margin-left: 20px;
  padding-left: 0;
}
#site-header #sub-navi #inquiry-navi li {
  display: table;
  margin-right: 20px;
}
#site-header #sub-navi #inquiry-navi li:last-child {
  margin-right: 0;
}
#site-header #sub-navi #inquiry-navi li a {
  position: relative;
  display: table-cell;
  height: 42px;
  padding: 0 20px 0 54px;
  background-color: #c41d1d;
  color: #fff;
  vertical-align: middle;
  line-height: 42px;
  border-radius: 0 0 5px 5px / 0 0 5px 5px;
}
#site-header #sub-navi #inquiry-navi li a:hover {
  background-color: #eee;
  color: #c41d1d;
}
#site-header #sub-navi #inquiry-navi li a:before {
  position: absolute;
  top: 0;
  left: 10px;
  display: block;
  content: "";
  width: 42px;
  height: 42px;
  background: url("../img/mode/header_icon_inquiry-navi.png") no-repeat;
}
#site-header #sub-navi #inquiry-navi li:nth-child(1) a {
  padding: 0 23px;
  background: none;
  background-color: #eee;
  color: #c41d1d;
}
#site-header #sub-navi #inquiry-navi li:nth-child(1) a:hover {
  color: #fff;
  background-color: #c41d1d;
}
#site-header #sub-navi #inquiry-navi li:nth-child(1) a:before {
  display: none;
}
#site-header #sub-navi #inquiry-navi li:nth-child(2) a:before {
  background-position: 0 0;
}
#site-header #sub-navi #inquiry-navi li:nth-child(2) a:hover:before {
  background-position: 0 -84px;
}
#site-header #sub-navi #inquiry-navi li:nth-child(3) a:before {
  background-position: 0 -42px;
}
#site-header #sub-navi #inquiry-navi li:nth-child(3) a:hover:before {
  background-position: 0 -126px;
}
#site-header #sub-navi #help-navi {
  padding: 8px 0;
}
#site-header #sub-navi #help-navi li {
  margin-left: 25px;
}
#site-header #sub-navi #help-navi li a,
#site-header #sub-navi #help-navi li span {
  display: inline-block;
  height: 24px;
  padding-left: 30px;
  color: #151515;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  line-height: 24px;
  cursor: pointer;
}
#site-header #sub-navi #help-navi li a:hover,
#site-header #sub-navi #help-navi li span:hover {
  color: #ff004d;
}
#site-header #sub-navi #help-navi li .global {
  background: url("../img/mode/header_icon_global.svg") no-repeat left/24px;
}
#site-header #sub-navi #help-navi li .access {
  background: url("../img/mode/header_icon_inquiry_access.svg") no-repeat left/24px;
}
#site-header #sub-navi #help-navi li .question {
  background: url("../img/mode/header_icon_inquiry_question.svg") no-repeat left/24px;
}
#site-header #sub-navi #help-navi li .document {
  background: url("../img/mode/header_icon_inquiry_document.svg") no-repeat left/24px;
}
#site-header #sub-navi #help-navi li #language-navi {
  display: none;
  position: absolute;
  float: none;
  min-width: 150px;
  margin-left: 2px;
  padding: 0;
  z-index: 9999;
}
#site-header #sub-navi #help-navi li #language-navi li {
  display: block;
  float: none;
  margin: 0;
}
#site-header #sub-navi #help-navi li #language-navi li:last-child {
  border-bottom: none;
}
#site-header #sub-navi #help-navi li #language-navi li a {
  display: block;
  height: auto;
  padding: 12px 20px;
  background: none;
  background-color: #fff;
  color: #c41d1d;
  line-height: 1;
}
#site-header #sub-navi #help-navi li #language-navi li a:after {
  display: none;
}
#site-header #sub-navi #help-navi li #language-navi li a:hover {
  background-color: #c41d1d;
  color: #fff;
}
#site-header #sp-navi {
  display: none;
}

@media only screen and (max-width: 768px) {
  #site-header {
    position: -webkit-sticky;
    position: sticky;
    width: 100%;
    min-height: inherit;
    height: 55px;
    z-index: 9999;
    margin-top: 0;
    top: 0;
    background-color: #fff;
  }
  #site-header .site-inner {
    padding: 0;
  }
  #site-header nav ul {
    overflow: initial;
  }
  #site-header nav ul li {
    float: none;
  }
  #site-header #company-logo {
    position: absolute;
    top: 16px;
    left: 10px;
    width: auto;
    height: 24px;
  }
  #site-header #company-logo img {
    width: auto;
    height: 27px;
  }
  #site-header #global-navi {
    float: none;
    margin: 0;
  }
  #site-header #global-navi.open {
    position: absolute;
    height: 55px;
    top: 0;
    left: 0;
    background-color: #1b1b1b;
    z-index: 1;
  }
  #site-header #global-navi.open #navi-button {
    background: url("../img/mode/header_icon_sp-navi_close.svg");
  }
  #site-header #global-navi.open #navi-panel {
    opacity: 1;
    visibility: visible;
  }
  #site-header #global-navi #navi-button {
    position: absolute;
    display: inline-block;
    top: 0;
    right: 0;
    width: 54px;
    height: 55px;
    background: url("../img/mode/header_icon_sp-navi_menu.svg");
    overflow: hidden;
    -webkit-transition: all 0.4s;
    transition: all 0.4s;
    cursor: pointer;
  }
  #site-header #global-navi #navi-button img {
    position: relative;
    display: block;
    top: 0;
  }
  #site-header #global-navi #navi-panel {
    position: fixed;
    visibility: hidden;
    -webkit-transition: opacity 0.4s, visibility 0.4s;
    transition: opacity 0.4s, visibility 0.4s;
    opacity: 0;
    top: 55px;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #1b1b1b;
    color: #fff;
    z-index: 9000;
  }
  #site-header #global-navi #navi-panel .content {
    height: 100%;
    width: 100%;
    padding-bottom: 100px;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
  }
  #site-header #global-navi #navi-panel ul {
    margin: 0;
    padding: 0;
  }
  #site-header #global-navi #navi-panel ul li {
    list-style: none;
    border-bottom: 1px #333333 solid;
    width: 100%;
    height: 56px;
  }
  #site-header #global-navi #navi-panel ul li a {
    display: block;
    height: 100%;
    padding: 13px 20px;
    background: #1b1b1b;
    color: #fff;
    text-align: left;
    font-size: 15px;
    font-size: 0.9375rem;
  }
  #site-header #global-navi ul li {
    margin: 0;
  }
  #site-header #global-navi ul li a {
    padding: 16px 0;
    color: #000;
  }
  #site-header #global-navi ul li a:after {
    bottom: 12px;
    background-color: #c41d1d;
  }
  #site-header #global-navi ul li span {
    display: none;
  }
  #site-header #global-navi #sp-detail-navi {
    display: block;
  }
  #site-header #global-navi #sp-detail-navi li a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: left;
    -webkit-justify-content: left;
        -ms-flex-pack: left;
            justify-content: left;
    position: relative;
  }
  #site-header #global-navi #sp-detail-navi li a:before {
    position: absolute;
    right: 20px;
    top: 16px;
    display: block;
    content: "";
    width: 22px;
    height: 22px;
    background: url("../img/mode/header_icon_sp-navi_arrow.svg") no-repeat center center;
  }
  #site-header #global-navi #sp-global-navi {
    display: block;
  }
  #site-header #global-navi #sp-global-navi #sp-inquiry-navi {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[2];
        grid-template-columns: repeat(2, 1fr);
    gap: 1px;
  }
  #site-header #global-navi #sp-global-navi #sp-inquiry-navi li {
    background-color: #ff004d;
    border-bottom: 1px #fff solid;
    height: 114px;
    margin: 0;
    border-bottom: none;
    position: relative;
  }
  #site-header #global-navi #sp-global-navi #sp-inquiry-navi li::before {
    content: "";
    width: 36px;
    position: absolute;
    top: 24px;
    left: 50%;
    height: 36px;
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
  }
  #site-header #global-navi #sp-global-navi #sp-inquiry-navi li a {
    padding: 60px 0 24px;
    background: none;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  #site-header #global-navi #sp-global-navi #sp-inquiry-navi li.document::before {
    background: url("../img/mode/header_icon_inquiry_document_white.svg") no-repeat;
  }
  #site-header #global-navi #sp-global-navi #sp-inquiry-navi li.opencampus::before {
    background: url("../img/mode/header_icon_inquiry_opencampus.svg") no-repeat;
  }
  #site-header #global-navi #sp-global-navi #sp-inquiry-navi li.access::before {
    background: url("../img/mode/header_icon_inquiry_access_white.svg") no-repeat;
  }
  #site-header #global-navi #sp-global-navi #sp-inquiry-navi li.apply::before {
    background: url("../img/mode/header_icon_inquiry_apply.svg") no-repeat;
  }
  #site-header #global-navi #sp-global-navi #sp-inquiry-navi li:last-child {
    border-bottom-color: #3d3d3d;
  }
  #site-header #global-navi #sp-global-navi #sp-expand-navi li {
    list-style: none;
    width: 100%;
    height: auto;
    border-bottom: none;
  }
  #site-header #global-navi #sp-global-navi #sp-expand-navi li a,
  #site-header #global-navi #sp-global-navi #sp-expand-navi li p {
    display: block;
    height: 100%;
    padding: 13px 20px;
    margin: 0;
    background: #1b1b1b;
    color: #fff;
    text-align: left;
    font-weight: bold;
    border-bottom: 1px #333333 solid;
    font-size: 15px;
    font-size: 0.9375rem;
  }
  #site-header #global-navi #sp-global-navi #sp-expand-navi li p {
    position: relative;
  }
  #site-header #global-navi #sp-global-navi #sp-expand-navi li p:before {
    position: absolute;
    right: 25px;
    top: 16px;
    display: block;
    content: "";
    width: 22px;
    height: 22px;
    background: url("../img/mode/header_icon_sp-navi_plus.svg") no-repeat center center;
  }
  #site-header #global-navi #sp-global-navi #sp-expand-navi li.open p::before {
    right: 22px;
    background: url("../img/mode/header_icon_sp-navi_minus.svg") no-repeat center center;
  }
  #site-header #global-navi #sp-global-navi #sp-expand-navi .sp-expand-navi-item {
    display: none;
  }
  #site-header #global-navi #sp-global-navi #sp-expand-navi .sp-expand-navi-item.open {
    display: block;
    padding-left: 40px;
  }
  #site-header #global-navi #sp-global-navi #sp-expand-navi .sp-expand-navi-item li {
    list-style: none;
    border-bottom: none;
    width: 100%;
    height: 56px;
    position: relative;
  }
  #site-header #global-navi #sp-global-navi #sp-expand-navi .sp-expand-navi-item li a {
    padding: 13px 20px;
    margin: 0;
  }
  #site-header #global-navi #sp-global-navi #sp-expand-navi .sp-expand-navi-item li a:before {
    position: absolute;
    right: 20px;
    top: 16px;
    display: block;
    content: "";
    width: 22px;
    height: 22px;
    background: url("../img/mode/header_icon_sp-navi_arrow.svg") no-repeat center center;
  }
  #site-header #global-navi #sp-global-navi #sp-header-search {
    position: relative;
    padding: 32px 20px 0;
  }
  #site-header #global-navi #sp-global-navi #sp-header-search .gsc-search-box {
    width: 100%;
  }
  #site-header #global-navi #sp-global-navi #sp-header-search .gsc-search-box .gsc-input {
    border: none;
    padding: 0;
  }
  #site-header #global-navi #sp-global-navi #sp-header-search .gsc-search-box .gsc-input .gsc-input-box {
    background: transparent;
    border: none;
    height: 3em !important;
  }
  #site-header #global-navi #sp-global-navi #sp-header-search .gsc-search-box .gsc-input .gsc-input-box table {
    margin-bottom: 0;
  }
  #site-header #global-navi #sp-global-navi #sp-header-search .gsc-search-box .gsc-input .gsc-input-box table tr td {
    border: none;
    padding: 0;
  }
  #site-header #global-navi #sp-global-navi #sp-header-search .gsc-search-box .gsc-input .gsc-input-box table tr td .gsc-input {
    width: -o-calc(100% - 54px);
    width: calc(100% - 54px);
    height: 54px !important;
    padding: 0.8em 60px 0.7em 20px !important;
    border: solid 1px #333 !important;
    font-size: 13px;
    font-size: 0.8125rem;
    -webkit-appearance: none !important;
    background-color: #1b1b1b !important;
    background-position: left 20px center !important;
    color: #fff !important;
  }
  #site-header #global-navi #sp-global-navi #sp-header-search .gsc-search-box .gsc-input .gsc-input-box table tr .gsib_b {
    display: none;
  }
  #site-header #global-navi #sp-global-navi #sp-header-search .gsc-search-box .gsc-search-button {
    width: 24px;
    border: none;
    padding: 0;
    background: transparent;
    text-align: center;
    vertical-align: middle;
    position: absolute;
    right: 40px;
    bottom: 4px;
  }
  #site-header #global-navi #sp-global-navi #sp-header-search .gsc-search-box .gsc-search-button button {
    display: block;
    width: 24px;
    padding: 0 !important;
    background: transparent;
    border: none;
  }
  #site-header #global-navi #sp-global-navi #sp-header-search .gsc-search-box .gsc-search-button button img {
    vertical-align: bottom;
  }
  #site-header #sub-navi {
    display: none;
  }
  #site-header #sp-navi {
    position: absolute;
    top: 0;
    right: 56px;
    display: block;
  }
  #site-header #sp-navi > ul {
    overflow: hidden;
  }
  #site-header #sp-navi > ul > li {
    float: left;
    margin-left: 2px;
  }
  #site-header #sp-navi > ul > li > a,
  #site-header #sp-navi > ul > li button {
    border: none;
    outline: none;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 54px;
    height: 53px;
    padding: 0;
    -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;
    background-color: #fff;
  }
  #site-header #sp-navi > ul > li > a img,
  #site-header #sp-navi > ul > li button img {
    display: block;
  }
  #site-header #sp-navi > ul > li button {
    width: 70px;
  }
  #site-header #sp-navi > ul > li.open button {
    background-color: #fff;
  }
  #site-header #sp-navi > ul > li.open button svg:first-child {
    display: none;
  }
  #site-header #sp-navi > ul > li.open button svg:last-child {
    display: block;
  }
  #site-header #sp-navi > ul > li.open .select-language {
    opacity: 1;
    visibility: visible;
  }
  #site-header #sp-navi .select-language {
    visibility: hidden;
    opacity: 0;
    -webkit-transition: opacity 0.4s, visibility 0.4s;
    transition: opacity 0.4s, visibility 0.4s;
    position: fixed;
    left: 0;
    top: 55px;
    margin: 0;
    padding: 0;
    width: 100%;
    background: #eee;
    color: #4c4c4c;
  }
  #site-header #sp-navi .select-language li {
    display: block;
    stroke: #eee;
    color: #4c4c4c;
    text-align: left;
    border-top: 1px solid #fff;
  }
  #site-header #sp-navi .select-language li a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #site-header #sp-navi .select-language li a.selected,
  #site-header #sp-navi .select-language li a:active,
  #site-header #sp-navi .select-language li a:hover {
    color: #fff;
    stroke: #fff;
    background: #c41d1d;
  }
  #site-header #sp-navi .select-language li.ja {
    display: block;
  }
  #site-header #sp-navi .select-language li svg {
    display: initial;
    margin-left: 9px;
    margin-right: 9px;
  }
  #site-header #sp-navi .select-language li:after {
    display: none;
  }
  #site-header #sp-navi .select-language li:last-child:after {
    display: none;
  }
  #site-header #sp-navi .select-language li a {
    display: block;
    color: #4c4c4c;
    padding: 0.7em 0;
  }
}
#global-navi {
  width: 100%;
}
#global-navi #navi-button {
  display: none;
}
#global-navi li a,
#global-navi li span {
  width: 100%;
  display: block;
  padding: 14px 0;
  background: #1b1b1b;
  color: #fff;
  font-size: 14px;
  font-size: 0.875rem;
  text-align: center;
  font-weight: bold;
  white-space: nowrap;
}
#global-navi li a:after,
#global-navi li span:after {
  bottom: 12px;
  background-color: #c41d1d;
}
#global-navi li span:after {
  display: none;
}
#global-navi li .category-navi-wrap {
  display: none;
  height: auto;
  position: relative;
  left: 0;
  width: 1280px;
  overflow-x: hidden;
  z-index: 100;
  z-index: 140;
  position: absolute;
  background-color: #1b1b1b;
  color: #fff;
  padding: 12px 32px;
}
#global-navi li .category-navi-wrap a {
  color: #fff;
}
#global-navi li .category-navi-wrap a:hover {
  opacity: 0.5;
  filter: alpha(opacity=50);
}
#global-navi li .category-navi-wrap a:after {
  display: none;
}
#global-navi li .category-navi-wrap .inner-wrap {
  overflow: hidden;
}
#global-navi li .category-navi-wrap .inner-wrap .category-navi {
  clear: both;
  position: relative;
  top: -1em;
}
#global-navi li .category-navi-wrap .inner-wrap .inner-column {
  float: left;
  margin: 25px 0 10px;
  color: #fff;
  padding: 0 60px 0 15px;
}
#global-navi li .category-navi-wrap .inner-wrap .inner-column:last-child {
  padding: 0 0 0 15px;
}
#global-navi li .category-navi-wrap .inner-wrap .inner-column a {
  text-align: left;
  font-weight: normal;
  display: block;
  padding: 0;
}
#global-navi li .category-navi-wrap .inner-wrap .inner-column .title {
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 200%;
  font-weight: bold;
  margin-bottom: 8px;
  position: relative;
}
#global-navi li .category-navi-wrap .inner-wrap .inner-column .title::before {
  content: "";
  width: 6px;
  height: 30px;
  position: absolute;
  left: -14px;
  top: 15px;
  border-top: 1px solid #ff004d;
}
#global-navi li .category-navi-wrap .inner-wrap .inner-column .title a {
  display: inline-block;
  padding-right: 15px;
}
#global-navi li .category-navi-wrap .inner-wrap .inner-column ul {
  margin-left: 14px;
  padding: 0;
}
#global-navi li .category-navi-wrap .inner-wrap .inner-column ul li {
  float: none;
  position: relative;
  margin: 0;
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 200%;
  font-weight: bold;
  text-align: left;
}
#global-navi li .category-navi-wrap .inner-wrap .inner-column ul li:last-child {
  margin-bottom: 20px;
}
#global-navi li .category-navi-wrap .inner-wrap .inner-column ul li span {
  display: block;
  margin: 1.25em 0 0 0;
  padding: 0;
}
#global-navi li .category-navi-wrap .inner-wrap .inner-column .title + ul li {
  font-weight: normal;
}
#global-navi li .category-navi-wrap .category-navi {
  padding: 20px 0;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[4];
      grid-template-columns: repeat(4, 1fr);
  grid-auto-rows: 41px;
}
#global-navi li .category-navi-wrap .category-navi li {
  position: relative;
  float: left;
  padding-right: 20px;
  white-space: nowrap;
}
#global-navi li .category-navi-wrap .category-navi li:first-child {
  margin-left: 0;
}
#global-navi li .category-navi-wrap .category-navi li a {
  margin-right: -6px;
  padding: 0 14px 0 0;
  background: none;
  font-weight: normal;
  text-align: left;
}
#global-navi li .category-navi-wrap .category-navi li a .new {
  display: inline;
  margin-left: 4px;
  padding: 0;
  color: #fff100;
  font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  font-weight: bold;
  font-size: 13px;
  font-size: 0.8125rem;
}
#global-navi li .category-navi-wrap .category-navi li a .new:after {
  display: none;
}
#global-navi li .category-navi-wrap .category-navi-list {
  padding: 20px 0;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 206px 1fr;
      grid-template-columns: 206px 1fr;
  border-top: solid 1px #333333;
}
#global-navi li .category-navi-wrap .category-navi-list:first-child {
  border: none;
}
#global-navi li .category-navi-wrap .category-navi-list .category-navi-title {
  position: relative;
  color: #fff;
  padding-left: 14px;
  font-weight: bold;
  line-height: normal;
  padding-right: 30px;
  font-size: 15px;
  font-size: 0.9375rem;
}
#global-navi li .category-navi-wrap .category-navi-list .category-navi-title::before {
  content: "";
  width: 6px;
  height: 30px;
  position: absolute;
  left: 0;
  top: 12px;
  border-top: 1px solid #ff004d;
}
#global-navi li .category-navi-wrap .category-navi-list .category-navi-item {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[3];
      grid-template-columns: repeat(3, 1fr);
  grid-auto-rows: minmax(21px, auto);
  gap: 20px 32px;
}
#global-navi li .category-navi-wrap .category-navi-list .category-navi-item li a {
  background: none;
  text-align: left;
  font-weight: normal;
  padding: 0;
}
#global-navi #sp-detail-navi {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (auto)[7];
      grid-template-columns: repeat(7, auto);
  grid-auto-rows: minmax(48px, auto);
  padding: 0;
}
#global-navi #sp-detail-navi li {
  height: 100%;
  border-right: 1px solid #333;
}
#global-navi #sp-detail-navi li:last-child {
  border-right: 0;
}
#global-navi #sp-detail-navi li a {
  height: 100%;
}
#global-navi #sp-detail-navi li a.open {
  background: #ff004d;
}
#global-navi #sp-detail-navi li .category-navi-wrap ul li {
  border-right: 0;
}
#global-navi #sp-global-navi {
  display: none;
}
#global-navi.is-fixed {
  position: fixed;
  top: 0;
  left: 50%;
  width: 100%;
  z-index: 100;
  max-width: 1280px;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}
#global-navi.is-fixed #sp-detail-navi {
  margin: 0;
}

#totalTop #site-header,
#totalDetail #site-header,
#error #site-header,
#specialTemplate #site-header {
  min-height: 80px;
}
#totalTop #site-header .site-inner,
#totalDetail #site-header .site-inner,
#error #site-header .site-inner,
#specialTemplate #site-header .site-inner {
  min-height: 80px;
}
#totalTop #site-header #company-logo,
#totalDetail #site-header #company-logo,
#error #site-header #company-logo,
#specialTemplate #site-header #company-logo {
  width: auto;
  height: auto;
  position: absolute;
  top: 13px;
}
#totalTop #site-header .catch-copy,
#totalDetail #site-header .catch-copy,
#error #site-header .catch-copy,
#specialTemplate #site-header .catch-copy {
  position: absolute;
  top: 22px;
  left: 250px;
  color: #c41d1d;
  font-size: 17px;
  font-size: 1.0625rem;
  font-weight: bold;
  line-height: 1.2;
}
#totalTop #site-header .catch-copy small,
#totalDetail #site-header .catch-copy small,
#error #site-header .catch-copy small,
#specialTemplate #site-header .catch-copy small {
  color: #000;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: normal;
}
#totalTop #site-header .language-navi,
#totalDetail #site-header .language-navi,
#error #site-header .language-navi,
#specialTemplate #site-header .language-navi {
  margin: 0;
  padding: 0;
  position: absolute;
  bottom: 23px;
  right: 0;
}
#totalTop #site-header .language-navi dt,
#totalDetail #site-header .language-navi dt,
#error #site-header .language-navi dt,
#specialTemplate #site-header .language-navi dt {
  display: none;
}
#totalTop #site-header .language-navi dd ul,
#totalDetail #site-header .language-navi dd ul,
#error #site-header .language-navi dd ul,
#specialTemplate #site-header .language-navi dd ul {
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
#totalTop #site-header .language-navi li,
#totalDetail #site-header .language-navi li,
#error #site-header .language-navi li,
#specialTemplate #site-header .language-navi li {
  display: inline-block;
  list-style: none;
}
#totalTop #site-header .language-navi li.ja,
#totalDetail #site-header .language-navi li.ja,
#error #site-header .language-navi li.ja,
#specialTemplate #site-header .language-navi li.ja {
  display: none;
}
#totalTop #site-header .language-navi li svg,
#totalDetail #site-header .language-navi li svg,
#error #site-header .language-navi li svg,
#specialTemplate #site-header .language-navi li svg {
  display: none;
}
#totalTop #site-header .language-navi li:after,
#totalDetail #site-header .language-navi li:after,
#error #site-header .language-navi li:after,
#specialTemplate #site-header .language-navi li:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 1px;
  height: 14px;
  margin: 0 20px;
  background-color: #000;
}
#totalTop #site-header .language-navi li:last-child:after,
#totalDetail #site-header .language-navi li:last-child:after,
#error #site-header .language-navi li:last-child:after,
#specialTemplate #site-header .language-navi li:last-child:after {
  display: none;
}
@media only screen and (max-width: 768px) {
  #totalTop #site-header,
  #totalDetail #site-header,
  #error #site-header,
  #specialTemplate #site-header {
    border-bottom: none;
    min-height: 96px;
    text-align: center;
  }
  #totalTop #site-header #company-logo,
  #totalDetail #site-header #company-logo,
  #error #site-header #company-logo,
  #specialTemplate #site-header #company-logo {
    position: static;
    top: inherit;
    left: inherit;
    width: 41%;
    float: left;
    padding: 12px 5px;
  }
  #totalTop #site-header #company-logo img,
  #totalDetail #site-header #company-logo img,
  #error #site-header #company-logo img,
  #specialTemplate #site-header #company-logo img {
    width: auto;
    height: 32px;
  }
  #totalTop #site-header .catch-copy,
  #totalDetail #site-header .catch-copy,
  #error #site-header .catch-copy,
  #specialTemplate #site-header .catch-copy {
    position: relative;
    top: inherit;
    left: inherit;
    display: table-cell;
    font-size: 11px;
    font-size: 0.6875rem;
    font-weight: bold;
    vertical-align: middle;
    text-align: left;
    vertical-align: middle;
    height: 56px;
    padding-right: 10px;
  }
  #totalTop #site-header .catch-copy small,
  #totalDetail #site-header .catch-copy small,
  #error #site-header .catch-copy small,
  #specialTemplate #site-header .catch-copy small {
    font-size: 10px;
    font-size: 0.625rem;
    font-weight: normal;
  }
  #totalTop #site-header .language-navi,
  #totalDetail #site-header .language-navi,
  #error #site-header .language-navi,
  #specialTemplate #site-header .language-navi {
    clear: both;
    display: block;
    position: static;
    top: inherit;
    right: inherit;
    text-align: center;
    padding: 9px 0;
    margin: 0;
    background-color: #c41d1d;
    overflow: hidden;
  }
  #totalTop #site-header .language-navi dt,
  #totalDetail #site-header .language-navi dt,
  #error #site-header .language-navi dt,
  #specialTemplate #site-header .language-navi dt {
    stroke: white;
    height: 40px;
    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;
  }
  #totalTop #site-header .language-navi dt button,
  #totalDetail #site-header .language-navi dt button,
  #error #site-header .language-navi dt button,
  #specialTemplate #site-header .language-navi dt button {
    border: none;
    background: transparent;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    height: 40px;
    margin: 0;
    padding: 0;
  }
  #totalTop #site-header .language-navi dt button.open svg:last-child,
  #totalDetail #site-header .language-navi dt button.open svg:last-child,
  #error #site-header .language-navi dt button.open svg:last-child,
  #specialTemplate #site-header .language-navi dt button.open svg:last-child {
    -webkit-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
            transform: rotate(180deg);
  }
  #totalTop #site-header .language-navi dt span,
  #totalDetail #site-header .language-navi dt span,
  #error #site-header .language-navi dt span,
  #specialTemplate #site-header .language-navi dt span {
    color: #fff;
  }
  #totalTop #site-header .language-navi dt *,
  #totalDetail #site-header .language-navi dt *,
  #error #site-header .language-navi dt *,
  #specialTemplate #site-header .language-navi dt * {
    margin-left: 9px;
  }
  #totalTop #site-header .language-navi dt svg:last-child,
  #totalDetail #site-header .language-navi dt svg:last-child,
  #error #site-header .language-navi dt svg:last-child,
  #specialTemplate #site-header .language-navi dt svg:last-child {
    margin-left: auto;
    margin-right: 9px;
  }
  #totalTop #site-header .language-navi dd,
  #totalDetail #site-header .language-navi dd,
  #error #site-header .language-navi dd,
  #specialTemplate #site-header .language-navi dd {
    top: 40px;
    margin: 0px;
    padding: 0px;
    width: 100%;
    display: none;
  }
  #totalTop #site-header .language-navi dd ul,
  #totalDetail #site-header .language-navi dd ul,
  #error #site-header .language-navi dd ul,
  #specialTemplate #site-header .language-navi dd ul {
    display: block;
    margin: 0;
    padding: 0;
    width: 100%;
    background: #eee;
    color: #4c4c4c;
  }
  #totalTop #site-header .language-navi dd ul li,
  #totalDetail #site-header .language-navi dd ul li,
  #error #site-header .language-navi dd ul li,
  #specialTemplate #site-header .language-navi dd ul li {
    display: block;
    stroke: #eee;
    color: #4c4c4c;
    text-align: left;
    border-top: 1px solid #fff;
  }
  #totalTop #site-header .language-navi dd ul li a,
  #totalDetail #site-header .language-navi dd ul li a,
  #error #site-header .language-navi dd ul li a,
  #specialTemplate #site-header .language-navi dd ul li a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #totalTop #site-header .language-navi dd ul li a.selected,
  #totalTop #site-header .language-navi dd ul li a:active,
  #totalTop #site-header .language-navi dd ul li a:hover,
  #totalDetail #site-header .language-navi dd ul li a.selected,
  #totalDetail #site-header .language-navi dd ul li a:active,
  #totalDetail #site-header .language-navi dd ul li a:hover,
  #error #site-header .language-navi dd ul li a.selected,
  #error #site-header .language-navi dd ul li a:active,
  #error #site-header .language-navi dd ul li a:hover,
  #specialTemplate #site-header .language-navi dd ul li a.selected,
  #specialTemplate #site-header .language-navi dd ul li a:active,
  #specialTemplate #site-header .language-navi dd ul li a:hover {
    color: #fff;
    stroke: #fff;
    background: #c41d1d;
  }
  #totalTop #site-header .language-navi dd ul li.ja,
  #totalDetail #site-header .language-navi dd ul li.ja,
  #error #site-header .language-navi dd ul li.ja,
  #specialTemplate #site-header .language-navi dd ul li.ja {
    display: block;
  }
  #totalTop #site-header .language-navi dd ul li svg,
  #totalDetail #site-header .language-navi dd ul li svg,
  #error #site-header .language-navi dd ul li svg,
  #specialTemplate #site-header .language-navi dd ul li svg {
    display: initial;
    margin-left: 9px;
    margin-right: 9px;
  }
  #totalTop #site-header .language-navi dd ul li:after,
  #totalDetail #site-header .language-navi dd ul li:after,
  #error #site-header .language-navi dd ul li:after,
  #specialTemplate #site-header .language-navi dd ul li:after {
    display: none;
  }
  #totalTop #site-header .language-navi dd ul li:last-child:after,
  #totalDetail #site-header .language-navi dd ul li:last-child:after,
  #error #site-header .language-navi dd ul li:last-child:after,
  #specialTemplate #site-header .language-navi dd ul li:last-child:after {
    display: none;
  }
  #totalTop #site-header .language-navi dd ul li a,
  #totalDetail #site-header .language-navi dd ul li a,
  #error #site-header .language-navi dd ul li a,
  #specialTemplate #site-header .language-navi dd ul li a {
    display: block;
    color: #4c4c4c;
    padding: 0.7em 0;
  }
}
@media only screen and (min-device-width: 376px) and (max-device-width: 768px) {
  #totalTop #site-header #company-logo,
  #totalDetail #site-header #company-logo,
  #error #site-header #company-logo,
  #specialTemplate #site-header #company-logo {
    top: inherit;
  }
  #totalTop #site-header .catch-copy,
  #totalDetail #site-header .catch-copy,
  #error #site-header .catch-copy,
  #specialTemplate #site-header .catch-copy {
    font-size: 12px;
    font-size: 0.75rem;
  }
  #totalTop #site-header .catch-copy small,
  #totalDetail #site-header .catch-copy small,
  #error #site-header .catch-copy small,
  #specialTemplate #site-header .catch-copy small {
    font-size: 11px;
    font-size: 0.6875rem;
  }
}

#apply #site-header {
  position: relative !important;
  border-bottom: 1px solid #ddd;
  margin-bottom: 2em;
  min-height: 75px;
}
#apply #site-header #company-logo {
  position: absolute;
  top: 14px;
}
#apply #site-header #contact-tel {
  position: relative;
  top: 10px;
  float: right;
}
#apply #site-header #contact-tel .title {
  margin-bottom: 0.1em;
  font-size: 14px;
  font-size: 0.875rem;
}
#apply #site-header #contact-tel .description address {
  display: inline-block;
  margin-right: 10px;
  font-style: normal;
  font-weight: bold;
  font-size: 20px;
  font-size: 1.25rem;
}
#apply #site-header #contact-tel .description small {
  font-size: 12px;
  font-size: 0.75rem;
}
@media only screen and (max-width: 768px) {
  #apply #site-header {
    min-height: 55px;
  }
  #apply #site-header #company-logo {
    position: absolute;
    top: 15px;
    width: auto;
    height: 24px;
  }
  #apply #site-header #company-logo img {
    width: auto;
    height: 24px;
  }
  #apply #site-header #contact-tel {
    display: none;
  }
}

#internationalTop #site-header,
#international #site-header {
  min-height: 80px;
}
#internationalTop #site-header #company-logo,
#international #site-header #company-logo {
  width: auto;
  height: auto;
  position: absolute;
  top: 13px;
}
#internationalTop #site-header .catch-copy,
#international #site-header .catch-copy {
  position: absolute;
  top: 22px;
  left: 250px;
  color: #c41d1d;
  font-size: 17px;
  font-size: 1.0625rem;
  font-weight: bold;
  line-height: 1.2;
}
#internationalTop #site-header .catch-copy small,
#international #site-header .catch-copy small {
  color: #000;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: normal;
}
@media only screen and (max-width: 768px) {
  #internationalTop #site-header,
  #international #site-header {
    border-bottom: none;
    min-height: 56px;
    text-align: center;
  }
  #internationalTop #site-header #company-logo,
  #international #site-header #company-logo {
    position: static;
    top: inherit;
    left: inherit;
    width: 41%;
    float: left;
    padding: 13px 5px;
  }
  #internationalTop #site-header #company-logo img,
  #international #site-header #company-logo img {
    width: auto;
    height: 32px;
  }
  #internationalTop #site-header .catch-copy,
  #international #site-header .catch-copy {
    position: relative;
    top: inherit;
    left: inherit;
    display: table-cell;
    font-size: 11px;
    font-size: 0.6875rem;
    font-weight: bold;
    vertical-align: middle;
    text-align: left;
    vertical-align: middle;
    height: 56px;
    padding-right: 10px;
  }
  #internationalTop #site-header .catch-copy small,
  #international #site-header .catch-copy small {
    font-size: 10px;
    font-size: 0.625rem;
    font-weight: normal;
  }
}
@media only screen and (min-device-width: 376px) and (max-device-width: 768px) {
  #internationalTop #site-header #company-logo,
  #international #site-header #company-logo {
    top: inherit;
  }
  #internationalTop #site-header .catch-copy,
  #international #site-header .catch-copy {
    font-size: 12px;
    font-size: 0.75rem;
  }
  #internationalTop #site-header .catch-copy small,
  #international #site-header .catch-copy small {
    font-size: 11px;
    font-size: 0.6875rem;
  }
}

#site-footer {
  position: relative;
  color: #fff;
  background-color: #1b1b1b;
}
#site-footer #footer-contact {
  background-color: #1b1b1b;
  overflow: hidden;
}
#site-footer #footer-contact .site-inner {
  width: 1216px;
  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;
  margin-top: 40px;
}
#site-footer #footer-contact .contact-number a,
#site-footer #footer-contact .address a {
  color: #fff;
}
#site-footer #footer-contact .contact-number .wrap {
  float: right;
}
#site-footer #footer-contact .contact-number .title {
  line-height: 150%;
  padding-bottom: 12px;
  font-weight: 700;
}
#site-footer #footer-contact .contact-number .tel-number {
  position: relative;
  display: inline-block;
  font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  margin: 0;
  font-size: 38px;
  font-size: 2.375rem;
  padding-left: 44px;
  letter-spacing: 0.02em;
  line-height: normal;
}
#site-footer #footer-contact .contact-number .tel-number:before {
  content: "";
  position: absolute;
  left: 0;
  top: 12%;
  width: 36px;
  height: 36px;
  background: url(../img/mode/footer_icon_tel.svg) no-repeat left top;
  background-size: 100% auto;
}
#site-footer #footer-contact .contact-number .business-hours {
  display: block;
  font-size: 12px;
  font-size: 0.75rem;
  padding: 4px 0 0 48px;
  letter-spacing: 0.012em;
  line-height: 140%;
}
#site-footer #footer-contact .logo > a {
  display: inline-block;
}
#site-footer #footer-contact .logo svg {
  width: 210px;
  aspect-ratio: 210 / 50;
  vertical-align: top;
}
#site-footer #footer-contact .logo .sister-school {
  margin-top: 24px;
}
#site-footer #footer-contact .logo .sister-school a {
  font-weight: 600;
  color: #fff;
  text-decoration: underline 1px;
  border-right: 1px solid #333333;
  padding: 0 10px;
}
#site-footer #footer-contact .logo .sister-school a:last-child {
  border-right: none;
}
#site-footer #footer-contact .logo .sister-school a:hover {
  text-decoration: none;
}
#site-footer #footer-contact .address {
  color: #fff;
}
#site-footer #footer-contact .address address {
  position: relative;
  font-style: normal;
  line-height: 150%;
  font-weight: 700;
  word-break: keep-all;
  padding-left: 32px;
}
#site-footer #footer-contact .address address span {
  margin-right: 12px;
}
#site-footer #footer-contact .address address:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 24px;
  height: 24px;
  background: url(../img/mode/header_icon_inquiry_access_white.svg) no-repeat left top;
  background-size: auto 100%;
}
#site-footer #footer-contact .address .map-link {
  padding-left: 24px;
  position: relative;
  font-weight: 600;
  font-size: 12px;
  line-height: 160%;
  margin: 8px 0 8px 32px;
}
#site-footer #footer-contact .address .map-link:before {
  content: "";
  position: absolute;
  left: 4px;
  top: 4px;
  width: 12px;
  height: 12px;
  background: url(../img/mode/common-right-arrow.svg) no-repeat left top;
  background-size: auto 100%;
}
#site-footer #footer-link {
  font-size: 12px;
  font-size: 0.75rem;
  padding-top: 30px;
  padding-bottom: 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#site-footer #footer-link.site-inner {
  width: 1216px;
}
#site-footer #footer-link #footer-navi {
  float: left;
}
#site-footer #footer-link #footer-navi ul {
  list-style: none;
  padding: 0;
  margin: 0;
  overflow: hidden;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -webkit-justify-content: start;
      -ms-flex-pack: start;
          justify-content: start;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
#site-footer #footer-link #footer-navi ul li {
  float: left;
  padding: 0 18px;
  border-left: solid 1px #333333;
}
#site-footer #footer-link #footer-navi ul li:last-child {
  border-right: solid 1px #333333;
}
#site-footer #footer-link #footer-navi ul li a {
  color: #fff;
  position: relative;
  display: inline-block;
}
#site-footer #footer-link #footer-navi ul li a:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 1px;
  background-color: #00afcc;
  -webkit-transition: width 0.2s linear;
  transition: width 0.2s linear;
}
#site-footer #footer-link #footer-navi ul li a:hover:after {
  width: 100%;
}
@media only screen and (max-width: 768px) {
  #site-footer #footer-link #footer-navi ul li a:after {
    display: none;
  }
}
#site-footer #footer-link #footer-navi ul li a:after {
  background-color: #fff;
}
#site-footer #footer-link #footer-navi .sns-navi {
  display: block;
  float: none;
  margin: 0;
}
#site-footer #footer-link #footer-navi .sns-navi li {
  margin: 0 8px;
}
#site-footer #footer-link #footer-navi .sns-navi li a {
  opacity: 1;
  filter: alpha(opacity=100);
}
#site-footer #footer-link #footer-navi .sns-navi li img {
  width: auto;
  height: 18px;
}
#site-footer #footer-link #footer-navi .sns-navi li img:hover {
  opacity: 0.5;
  filter: alpha(opacity=50);
  -webkit-transition: 0.2s ease-out;
  transition: 0.2s ease-out;
}
#site-footer #footer-link #footer-navi .sns-navi li a:after {
  display: none;
}
#site-footer #footer-link #footer-search {
  position: relative;
  float: right;
}
#site-footer #footer-link #footer-search .gsc-search-box {
  width: 335px;
}
#site-footer #footer-link #footer-search .gsc-search-box .gsc-input {
  border: none;
  padding: 0;
}
#site-footer #footer-link #footer-search .gsc-search-box .gsc-input .gsc-input-box {
  background: transparent;
  border: none;
}
#site-footer #footer-link #footer-search .gsc-search-box .gsc-input .gsc-input-box table {
  margin-bottom: 0;
}
#site-footer #footer-link #footer-search .gsc-search-box .gsc-input .gsc-input-box table tr td {
  border: none;
  padding: 0;
}
#site-footer #footer-link #footer-search .gsc-search-box .gsc-input .gsc-input-box table tr td .gsc-input {
  height: 54px !important;
  padding: 0 60px 0 20px !important;
  background-position: 20px !important;
}
#site-footer #footer-link #footer-search .gsc-search-box .gsc-input .gsc-input-box table tr .gsib_b {
  display: none;
}
#site-footer #footer-link #footer-search .gsc-search-box .gsc-search-button {
  border: none;
  padding: 0;
  background: transparent;
  position: absolute;
  right: 20px;
  bottom: 50%;
  -webkit-transform: translate(0, 50%);
      -ms-transform: translate(0, 50%);
          transform: translate(0, 50%);
  width: 24px;
}
#site-footer #footer-link #footer-search .gsc-search-box .gsc-search-button button {
  display: block;
  height: 24px;
  padding: 0 !important;
  background: none;
  border: none;
}
#site-footer #footer-link #footer-search .gsc-search-box .gsc-search-button button img {
  width: 24px;
  height: auto;
}
#site-footer #footer-link.site-inner:after {
  display: none;
}
#site-footer #copyright {
  text-align: center;
  padding: 40px 0 20px;
  color: #fff;
}
#site-footer #copyright p {
  font-size: 11px;
  font-size: 0.6875rem;
  line-height: 140%;
}
#site-footer #footer-sns {
  padding: 40px 0;
  background-color: #fff;
  border-top: solid 1px #333333;
}
#site-footer #footer-sns p {
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: bold;
  margin: 0 0 56px 0;
  width: 100%;
  text-align: center;
  color: #151515;
}
#site-footer #footer-sns .sns-navis {
  list-style: none;
  margin: 0 auto;
  padding: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#site-footer #footer-sns .sns-navis li {
  margin: 0 60px;
}
#site-footer #footer-sns .sns-navis a {
  display: block;
  text-align: center;
}
#site-footer #footer-sns .sns-navis a:hover > svg {
  opacity: 0.5;
}
#site-footer #footer-sns .sns-navis a > svg {
  width: 36px;
  height: auto;
  -webkit-transition: 0.15s ease-out;
  transition: 0.15s ease-out;
  color: #ff004d;
  vertical-align: bottom;
}
#site-footer #footer-sns .sns-navis .text {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 12px;
  font-family: "Inter", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 600;
  color: #ff004d;
  text-align: center;
  -webkit-transition: 0.15s ease-out;
  transition: 0.15s ease-out;
  white-space: nowrap;
}
#site-footer #footer-sns .sns-navis .text svg {
  margin-left: 5px;
}
#site-footer .emphasize-list-container #visitor-navi {
  margin: 0;
}
#site-footer .emphasize-list-container #visitor-navi ul {
  margin: 0;
  padding: 0;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[6];
      grid-template-columns: repeat(6, 1fr);
  gap: 1px;
}
#site-footer .emphasize-list-container #visitor-navi ul li {
  display: inline-block;
  letter-spacing: normal;
  height: 60px;
  margin: 0;
  list-style: none;
  text-align: center;
  outline: solid 1px #333333;
}
#site-footer .emphasize-list-container #visitor-navi ul li a {
  display: block;
  color: #fff;
  padding: 20px;
  line-height: 150%;
}
#site-footer .emphasize-list-container #visitor-navi ul li a:hover {
  background-color: #333333;
}
@media only screen and (max-width: 768px) {
  #site-footer .emphasize-list-container #visitor-navi {
    margin: 0;
  }
  #site-footer .emphasize-list-container #visitor-navi ul {
    margin: 0;
    padding: 0;
    -ms-grid-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr;
  }
  #site-footer .emphasize-list-container #visitor-navi ul li {
    height: 52px;
  }
  #site-footer .emphasize-list-container #visitor-navi ul li a {
    font-size: 12px;
    font-size: 0.75rem;
    line-height: 100%;
  }
}

@media only screen and (max-width: 768px) {
  #site-footer #footer-contact .logo svg {
    width: 118px;
  }
  #site-footer #footer-contact .logo .sister-school {
    margin-top: 1em;
    display: block;
    font-size: 12px;
    font-size: 0.75rem;
    padding-left: 32px;
    font-weight: normal;
  }
  #site-footer #footer-contact .logo .sister-school a {
    font-weight: bolder;
    border-right: 1px solid #333333;
    padding-right: 10px;
    text-decoration: none;
  }
  #site-footer #footer-contact .logo .sister-school a:after {
    display: none;
  }
  #site-footer #footer-contact .site-inner {
    width: 100%;
    display: block;
    padding: 24px;
    margin: 0;
  }
  #site-footer #footer-contact .contact-number,
  #site-footer #footer-contact .address {
    width: auto;
  }
  #site-footer #footer-contact .contact-number {
    margin: 1.5em 0 1em;
  }
  #site-footer #footer-contact .contact-number .wrap {
    float: none;
  }
  #site-footer #footer-contact .contact-number .title {
    font-size: 12px;
    font-size: 0.75rem;
    padding-bottom: 1em;
  }
  #site-footer #footer-contact .contact-number .tel-number {
    position: relative;
    float: none;
    display: inline-block;
    font-size: 26px;
    font-size: 1.625rem;
    padding: 0 0 4px 32px;
  }
  #site-footer #footer-contact .contact-number .tel-number:before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: 24px;
    height: 24px;
    margin-top: -13px;
    background: url(../img/mode/footer_icon_tel.svg) no-repeat left top;
    background-size: 100% auto;
  }
  #site-footer #footer-contact .contact-number .business-hours {
    display: block;
    font-size: 11px;
    font-size: 0.6875rem;
    padding: 0 0 0 32px;
  }
  #site-footer #footer-contact .contact-number .business-hours br,
  #site-footer #footer-contact .contact-number .business-hours .memo {
    display: block;
  }
  #site-footer #footer-contact .address address {
    font-size: 12px;
    font-size: 0.75rem;
    padding: 0 0 8px 32px;
  }
  #site-footer #footer-contact .address address br {
    display: block;
  }
  #site-footer #footer-contact .address address:before {
    left: 0;
  }
  #site-footer #footer-contact .address .map-link {
    display: block;
    font-size: 10px;
    font-size: 0.625rem;
    padding: 0 0 0 16px;
    margin-bottom: 8px;
  }
  #site-footer #footer-contact .address .map-link:before {
    top: 2px;
    left: 0px;
  }
  #site-footer #footer-contact .address .sister-school {
    font-size: 12px;
    font-size: 0.75rem;
    padding-left: 2.3em;
  }
  #site-footer #footer-contact .address .sister-school a:after {
    display: none;
  }
  #site-footer #footer-link {
    font-size: 10px;
    font-size: 0.625rem;
    padding-top: 0;
    padding-bottom: 0;
  }
  #site-footer #footer-link.site-inner {
    width: 100%;
  }
  #site-footer #footer-link #footer-navi {
    float: none;
    margin: 0 -20px;
  }
  #site-footer #footer-link #footer-navi ul {
    float: none;
    padding: 0;
    margin: 0;
    overflow: hidden;
    display: block;
  }
  #site-footer #footer-link #footer-navi ul li {
    float: left;
    border-bottom: 1px solid #2e2e2e;
    text-align: center;
    width: 50%;
    margin: 0;
    font-size: 12px;
    font-size: 0.75rem;
  }
  #site-footer #footer-link #footer-navi ul li:nth-child(2n) {
    border-left: 1px solid #2e2e2e;
  }
  #site-footer #footer-link #footer-navi ul li:last-child {
    width: 100%;
  }
  #site-footer #footer-link #footer-navi ul li a {
    display: block;
    padding: 20px 0;
  }
  #site-footer #footer-link #footer-navi ul li:nth-child(odd):last-child {
    width: 100%;
  }
  #site-footer #footer-link #footer-navi ul li:nth-child(even):last-child {
    width: 50%;
  }
  #site-footer #footer-link #footer-navi ul:first-child {
    border-top: 1px solid #333333;
  }
  #site-footer #footer-link #footer-navi ul.even li:last-child {
    width: 50%;
  }
  #site-footer #footer-link #footer-navi ul.uneven li:last-child {
    width: 100%;
  }
  #site-footer #footer-link #footer-navi .sns-navi {
    text-align: center;
    padding: 2em 0;
    margin: 0;
    overflow: hidden;
  }
  #site-footer #footer-link #footer-navi .sns-navi li {
    display: inline-block;
    float: none;
    border: none;
    width: auto;
    margin: 0 8px;
  }
  #site-footer #footer-link #footer-navi .sns-navi li:nth-child(2n) {
    border: none;
  }
  #site-footer #footer-link #footer-navi .sns-navi li:last-child {
    width: auto;
  }
  #site-footer #footer-link #footer-navi .sns-navi li a {
    display: inline-block;
    padding: 0;
  }
  #site-footer #footer-link #footer-navi .sns-navi li img {
    width: auto;
    height: 18px;
  }
  #site-footer #footer-link #footer-navi .sns-navi li img:hover {
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transition: 0 ease-out;
    transition: 0 ease-out;
  }
  #site-footer #footer-link #footer-navi .sns-navi:last-of-type li:last-child {
    width: auto;
  }
  #site-footer #footer-link #footer-search {
    display: none;
  }
  #site-footer #footer-sns {
    padding: 40px 0;
  }
  #site-footer #footer-sns p {
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: bold;
    margin: 0;
    width: 100%;
    text-align: center;
    padding: 0 12px 40px;
  }
  #site-footer #footer-sns .sns-navis {
    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;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  #site-footer #footer-sns .sns-navis li {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1;
    margin: 0;
  }
  #site-footer #footer-sns .sns-navis li:nth-child(1) {
    -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
    padding-left: 45px;
    margin-bottom: 32px;
  }
  #site-footer #footer-sns .sns-navis li:nth-child(1) a > svg {
    width: 60px;
  }
  #site-footer #footer-sns .sns-navis li:nth-child(2) {
    -webkit-flex-basis: 50%;
        -ms-flex-preferred-size: 50%;
            flex-basis: 50%;
    padding-right: 45px;
    margin-bottom: 32px;
  }
  #site-footer #footer-sns .sns-navis li:nth-child(2) a > svg {
    width: 60px;
  }
  #site-footer #footer-sns .sns-navis li a > svg {
    width: 40px;
  }
  #site-footer #copyright {
    padding: 20px 0;
    margin: 0;
    font-size: 11px;
    font-size: 0.6875rem;
    line-height: 1.4;
  }
}
#totalTop #site-footer #footer-link #footer-navi ul,
#totalDetail #site-footer #footer-link #footer-navi ul,
#specialTemplate #site-footer #footer-link #footer-navi ul {
  width: 100%;
}

#apply #site-footer #footer-link {
  padding-top: 20px;
  padding-bottom: 5px;
  text-align: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#apply #site-footer #footer-link a {
  color: #fff;
  position: relative;
  display: inline-block;
}
#apply #site-footer #footer-link a:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 1px;
  background-color: #00afcc;
  -webkit-transition: width 0.2s linear;
  transition: width 0.2s linear;
}
#apply #site-footer #footer-link a:hover:after {
  width: 100%;
}
@media only screen and (max-width: 768px) {
  #apply #site-footer #footer-link a:after {
    display: none;
  }
}
#apply #site-footer #footer-link a:after {
  background-color: #fff;
}
#apply #site-footer #copyright {
  padding-top: 0;
}

#internationalTop #site-footer #footer-link,
#international #site-footer #footer-link {
  float: none;
  display: block;
  padding-top: 0;
}
#internationalTop #site-footer #footer-link #footer-navi,
#international #site-footer #footer-link #footer-navi {
  float: none;
  text-align: center;
}
#internationalTop #site-footer #footer-link #footer-navi ul,
#internationalTop #site-footer #footer-link #footer-navi li,
#international #site-footer #footer-link #footer-navi ul,
#international #site-footer #footer-link #footer-navi li {
  float: none;
}
#internationalTop #site-footer #footer-link #footer-navi li,
#international #site-footer #footer-link #footer-navi li {
  display: inline-block;
  border: 0;
}
#internationalTop #site-footer #footer-link #footer-navi .language-navi,
#international #site-footer #footer-link #footer-navi .language-navi {
  display: block;
  font-size: 16px;
  font-size: 1rem;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  margin-bottom: 2.5em;
  background-color: #c41d1d;
}
#internationalTop #site-footer #footer-link #footer-navi .language-navi li,
#international #site-footer #footer-link #footer-navi .language-navi li {
  position: relative;
  padding: 1em 60px;
  margin: 0;
}
#internationalTop #site-footer #footer-link #footer-navi .language-navi li:after,
#international #site-footer #footer-link #footer-navi .language-navi li:after {
  position: absolute;
  right: 0;
  top: 37%;
  content: "";
  display: block;
  width: 1px;
  height: 15px;
  background-color: #fff;
}
#internationalTop #site-footer #footer-link #footer-navi .language-navi li:last-child:after,
#international #site-footer #footer-link #footer-navi .language-navi li:last-child:after {
  display: none;
}
#internationalTop #site-footer #footer-link #footer-navi .language-navi li a,
#international #site-footer #footer-link #footer-navi .language-navi li a {
  opacity: 1;
  filter: alpha(opacity=100);
}
#internationalTop #site-footer #footer-link #footer-navi .sns-navi,
#international #site-footer #footer-link #footer-navi .sns-navi {
  margin-bottom: 1.5em;
}
#internationalTop #site-footer #footer-link #footer-navi .sns-navi li,
#international #site-footer #footer-link #footer-navi .sns-navi li {
  padding: 0;
  margin: 0 8px;
}
#internationalTop #site-footer #copyright,
#international #site-footer #copyright {
  padding-top: 0;
  opacity: 0.5;
}
@media only screen and (max-width: 768px) {
  #internationalTop #site-footer #footer-link #footer-navi .language-navi,
  #international #site-footer #footer-link #footer-navi .language-navi {
    font-size: 16px;
    font-size: 1rem;
    margin-bottom: 0.5em;
  }
  #internationalTop #site-footer #footer-link #footer-navi .language-navi li,
  #international #site-footer #footer-link #footer-navi .language-navi li {
    display: inline;
    border: none;
    padding: 0.5em 20px;
  }
  #internationalTop #site-footer #footer-link #footer-navi .language-navi li:after,
  #international #site-footer #footer-link #footer-navi .language-navi li:after {
    top: 29%;
  }
  #internationalTop #site-footer #footer-link #footer-navi .language-navi li a,
  #international #site-footer #footer-link #footer-navi .language-navi li a {
    display: inline-block;
    padding: 1em 0;
  }
  #internationalTop #site-footer #footer-link #footer-navi .sns-navi,
  #international #site-footer #footer-link #footer-navi .sns-navi {
    margin-bottom: 1.5em;
  }
}

.module_breadcrumbs {
  margin: 0;
  padding: 20px 0 20px;
  overflow: hidden;
}
.module_breadcrumbs li {
  float: left;
  margin: 0 8px 0 0;
  list-style: none;
  letter-spacing: 0.012em;
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1;
}
.module_breadcrumbs li a {
  margin-right: 8px;
  color: #d0d0d0;
}
.module_breadcrumbs li a span {
  vertical-align: middle;
}
.module_breadcrumbs li:after {
  display: inline-block;
  content: "";
  width: 6px;
  height: 11px;
  background: url("../img/mode/common_arrow01.svg") no-repeat;
  vertical-align: middle;
}
.module_breadcrumbs li:last-child a {
  color: #151515;
}
.module_breadcrumbs li:last-child:after {
  display: none;
}

.module_page-title {
  padding: 1.5em 0;
  background: url(../img/mode/common_bg02.png) #000 repeat left top;
}
.module_page-title h1,
.module_page-title h2,
.module_page-title .title {
  position: relative;
  width: 1216px;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 0;
  padding-left: 40px;
  background: url("../img/mode/common_arrow04.png") no-repeat left 0.25em;
  background-size: 20px;
  color: #fff;
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: normal;
}
.module_page-title h1 a,
.module_page-title h2 a,
.module_page-title .title a {
  color: #fff;
}
.module_page-title h1:after,
.module_page-title h2:after,
.module_page-title .title:after {
  content: '';
  clear: both;
  display: block;
}
.module_page-title.is_center h1,
.module_page-title.is_center h2,
.module_page-title.is_center .title {
  padding: 0;
  font-size: 42px;
  font-size: 2.625rem;
  text-align: center;
  background: none;
}
.module_page-title.is_sub {
  margin: 6em 0 2em;
}
.module_page-title.is_sub h1,
.module_page-title.is_sub h2,
.module_page-title.is_sub .title {
  padding: 0;
  font-size: 28px;
  font-size: 1.75rem;
  text-align: center;
  background: none;
}
.module_page-title.is_sub:first-child {
  margin-top: 0;
}
.module_page-title.is_small {
  padding: 0.5em 0;
}
.module_page-title.is_small h1,
.module_page-title.is_small h2,
.module_page-title.is_small .title {
  padding: 0;
  font-size: 14px;
  font-size: 0.875rem;
  background: none;
}

@media only screen and (max-width: 768px) {
  .module_page-title {
    border: none;
    margin: 0;
    padding: .5em 10px;
  }
  .module_page-title h1, .module_page-title h2, .module_page-title .title {
    width: 100%;
    margin-bottom: 0;
    padding-left: 18px;
    background-position: left 6px;
    background-size: 11px;
    font-size: 15px;
    font-size: 0.9375rem;
    line-height: 1.6;
  }
  .module_page-title.is_center h1,
  .module_page-title.is_center h2,
  .module_page-title.is_center .title {
    padding: 1em 20px;
    font-size: 24px;
    font-size: 1.5rem;
  }
  .module_page-title.is_sub h1,
  .module_page-title.is_sub h2,
  .module_page-title.is_sub .title {
    padding: 0.5em 20px;
    font-size: 18px;
    font-size: 1.125rem;
  }
  .module_page-title.is_small h1,
  .module_page-title.is_small h2,
  .module_page-title.is_small .title {
    padding: 0.5em 10px;
    font-size: 10px;
    font-size: 0.625rem;
  }
}
.module_side-navi {
  position: fixed;
  bottom: 80px;
  right: 0;
  margin: 0;
  padding: 0;
  z-index: 9000;
}
.module_side-navi li {
  position: relative;
  width: 52px;
  list-style: none;
  overflow: hidden;
}
.module_side-navi li a {
  position: relative;
  display: inline-block;
  z-index: 9001;
  height: 100%;
  width: 52px;
}
.module_side-navi li a span {
  position: absolute;
  right: 0;
  height: 100%;
  width: 100%;
  font-weight: 700;
  font-size: 14px;
  line-height: 115%;
  color: #fff;
  white-space: nowrap;
  -webkit-transition: right 0.2s;
  transition: right 0.2s;
}
.module_side-navi li a span:nth-child(1) {
  right: 0;
}
.module_side-navi li a span:nth-child(2) {
  right: 100%;
}
.module_side-navi li a:hover span:nth-child(1) {
  right: -100%;
}
.module_side-navi li a:hover span:nth-child(2) {
  right: 0;
}
.module_side-navi li.apply {
  height: 160px;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  background: #ff004d;
}
.module_side-navi li.apply a span {
  padding: 8px 10px;
  letter-spacing: 2px;
}
.module_side-navi li.apply a span:nth-child(2) {
  padding: 15.5px 18px;
}
.module_side-navi li.apply a span:nth-child(2)::before {
  content: "";
  width: 15px;
  height: 13px;
  position: absolute;
  bottom: 15.5px;
  background: url("../img/mode/common-right-arrow.svg") no-repeat center center;
}
.module_side-navi li.inquiry {
  height: 80px;
  background: #1b1b1b;
}
.module_side-navi li.inquiry a span {
  padding: 24px 2px;
  text-align: center;
}
.module_side-navi li.inquiry a span:nth-child(2)::before {
  content: "";
  width: 15px;
  height: 13px;
  position: absolute;
  bottom: 24px;
  right: 50%;
  -webkit-transform: translate(50%, 0);
      -ms-transform: translate(50%, 0);
          transform: translate(50%, 0);
  background: url("../img/mode/common-right-arrow.svg") no-repeat center center;
}
.module_side-navi li.pagetop {
  height: 64px;
  background-color: #fff;
  border: solid 1px #1b1b1b;
}
.module_side-navi li.pagetop span {
  padding: 27px 2px 21px;
  position: absolute;
  right: 0;
  height: 100%;
  width: 100%;
  font-weight: 700;
  font-size: 14px;
  line-height: 115%;
  color: #1b1b1b;
  text-align: center;
  cursor: pointer;
}
.module_side-navi li.pagetop span::before {
  content: "";
  width: 12px;
  height: 13px;
  position: absolute;
  top: 12px;
  right: 50%;
  -webkit-transform: translate(50%, 0);
      -ms-transform: translate(50%, 0);
          transform: translate(50%, 0);
  background: url("../img/mode/common-top-arrow.svg") no-repeat center center;
}

@media only screen and (max-width: 768px) {
  .module_side-navi {
    display: none;
  }
}
.module_tag-list {
  list-style: none;
  margin: 0 0 1em;
  padding: 0;
  text-align: left;
  letter-spacing: -.4em;
  overflow: hidden;
}
.module_tag-list li {
  display: inline-block;
  margin: 0 .8em 10px 0;
  letter-spacing: normal;
}
.module_tag-list li a {
  position: relative;
  display: inline-block;
  color: #777;
  padding: .5em 1em;
  border: 1px solid #ddd;
  font-size: 14px;
  font-size: 0.875rem;
  position: relative;
  display: inline-block;
  line-height: 1.5;
}
.module_tag-list li a:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 1px;
  background-color: #00afcc;
  -webkit-transition: width 0.2s linear;
  transition: width 0.2s linear;
}
.module_tag-list li a:hover:after {
  width: 100%;
}
@media only screen and (max-width: 768px) {
  .module_tag-list li a:after {
    display: none;
  }
}
.module_tag-list li a:after {
  bottom: 4px;
  left: 1em;
  background-color: #777;
}
.module_tag-list li a:hover:after {
  width: 80%;
  width: -ms-calc(100% - 2em);
  width: calc(100% - 2em);
}
@media only screen and (max-width: 768px) {
  .module_tag-list li a {
    padding: .25em 1em .35em;
    font-size: 12px;
    font-size: 0.75rem;
  }
}

.module_tag-list li a {
  position: relative;
  display: inline-block;
  color: #000;
  padding: .5em 1em;
  border: 1px solid #1b1b1b;
  border-radius: 4px;
  font-size: 14px;
  font-size: 0.875rem;
  position: relative;
  display: inline-block;
  line-height: 1.5;
}
.module_tag-list li a:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 1px;
  background-color: #00afcc;
  -webkit-transition: width 0.2s linear;
  transition: width 0.2s linear;
}
.module_tag-list li a:hover:after {
  width: 100%;
}
@media only screen and (max-width: 768px) {
  .module_tag-list li a:after {
    display: none;
  }
}
.module_tag-list li a:after {
  bottom: 4px;
  left: 1em;
  background-color: #777;
}
.module_tag-list li a:hover:after {
  width: 80%;
  width: -ms-calc(100% - 2em);
  width: calc(100% - 2em);
}
@media only screen and (max-width: 768px) {
  .module_tag-list li a {
    padding: .25em 1em .35em;
    font-size: 12px;
    font-size: 0.75rem;
  }
}

.module_banner-list {
  list-style: none;
  margin: 2.8em auto;
  padding-left: 0;
  text-align: center;
  letter-spacing: -0.4em;
  overflow: hidden;
}
.module_banner-list .item {
  display: inline-block;
  margin: 0 10px;
  letter-spacing: normal;
  vertical-align: middle;
}
.module_banner-list .item:first-child {
  margin-left: 0;
}
.module_banner-list .item:last-child {
  margin-right: 0;
}
.module_banner-list .item a {
  display: inline-block;
  background-color: #fff;
  overflow: hidden;
}
.module_banner-list .item img {
  vertical-align: bottom;
  -webkit-transition: 0.6s;
  transition: 0.6s;
}
.module_banner-list .item img:hover {
  -webkit-transform: scale(1.025);
      -ms-transform: scale(1.025);
          transform: scale(1.025);
}
.module_banner-list.slider > .item:not(:first-child) {
  display: none;
}
.module_banner-list.slider .slick-slide {
  margin: 0 !important;
}
.module_banner-list.slider .slick-dots {
  margin-bottom: 3em;
  padding: 0;
  text-align: center;
  line-height: 1;
}
.module_banner-list.slider .slick-dots li {
  display: inline-block;
  float: none;
  width: auto;
  margin: 0 7px !important;
}
.module_banner-list.slider .slick-dots li button {
  position: relative;
  font-size: 0;
  line-height: 0;
  display: inline-block;
  width: 10px;
  height: 10px;
  padding: 8px;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: transparent;
  text-align: center;
}
.module_banner-list.slider .slick-dots li button:before {
  position: absolute;
  top: 4px;
  left: 4px;
  line-height: 4px;
  width: 10px;
  height: 10px;
  content: "";
  text-align: center;
  -webkit-font-smoothing: antialiased;
  background: #1b1b1b;
}
.module_banner-list.slider .slick-dots li.slick-active button:before {
  background: #ff004d;
}
.module_banner-list.slider .slick-prev,
.module_banner-list.slider .slick-next {
  position: absolute;
  top: 80px;
  z-index: 1;
  border: 0;
  width: 52px;
  height: 52px;
  background-color: #1b1b1b;
}
.module_banner-list.slider .slick-prev:before,
.module_banner-list.slider .slick-next:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 13px;
  height: 23px;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  outline: none;
}
.module_banner-list.slider .slick-prev {
  left: 0%;
}
.module_banner-list.slider .slick-prev:before {
  background: url("../img/mode/common-red-left-arrow.svg") no-repeat;
}
.module_banner-list.slider .slick-next {
  right: 0%;
}
.module_banner-list.slider .slick-next:before {
  background: url("../img/mode/common-red-right-arrow.svg") no-repeat;
}

@media only screen and (max-width: 768px) {
  .module_banner-list {
    margin: 2em auto;
  }
  .module_banner-list .item {
    float: left;
    margin: 0 0 1em;
    width: 100%;
  }
  .module_banner-list .item:first-child {
    margin-left: auto;
  }
  .module_banner-list .item:last-child {
    margin-right: auto;
  }
  .module_banner-list .item a {
    display: block;
    background-color: transparent;
  }
  .module_banner-list .item img {
    width: 100%;
    vertical-align: bottom;
  }
  .module_banner-list .item img:hover {
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transition: 0 ease-out;
    transition: 0 ease-out;
  }
  .module_banner-list.slider {
    margin: 0 auto;
    padding: 1.5em 0;
    overflow: visible;
  }
  .module_banner-list.slider .item {
    margin: 0 10px !important;
  }
  .module_banner-list.slider .item img {
    max-width: 100%;
    height: auto;
  }
  .module_banner-list.slider .slick-list {
    overflow: visible;
  }
  .module_banner-list.slider .slick-prev,
  .module_banner-list.slider .slick-next {
    position: absolute;
    top: 50%;
    border: 0;
    width: 25px;
    height: 25px;
    margin-top: -12px;
    background: none;
    background-color: #c41d1d;
  }
  .module_banner-list.slider .slick-prev:before,
  .module_banner-list.slider .slick-next:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 7px;
    height: 12px;
    margin-top: -2px;
    margin-left: -1px;
    background: url("../img/mode/common_slider_controls.png") no-repeat;
    background-position: 0 0;
    background-size: 7px auto;
    outline: none;
  }
  .module_banner-list.slider .slick-prev {
    left: -22%;
  }
  .module_banner-list.slider .slick-next {
    right: -22%;
  }
  .module_banner-list.slider .slick-next:before {
    background-position: 0 -11px;
  }
}
.module_bigger-link {
  list-style: none;
  min-width: 1216px;
  padding: 0;
  margin: 0;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[3];
      grid-template-columns: repeat(3, 1fr);
  overflow: hidden;
}
.module_bigger-link li {
  float: left;
  border-right: 1px solid #e00043;
  background: #ff004d;
  text-align: center;
  margin: 0;
}
.module_bigger-link li:last-child {
  border: none;
}
.module_bigger-link li a {
  display: block;
  color: #fff;
  font-weight: bold;
  padding: 20px 0;
}
.module_bigger-link li a:before {
  content: "";
  display: block;
  margin: 0 auto 8px;
  height: 60px;
  width: 60px;
  background-size: 100% 100%;
}
.module_bigger-link li a:hover {
  color: #ff004d;
  background-color: #fff;
}
.module_bigger-link li a br {
  display: none;
}
.module_bigger-link .document a:before {
  background-image: url(../img/mode/header_icon_inquiry_document_white.svg);
}
.module_bigger-link .document a:hover:before {
  background-image: url(../img/mode/header_icon_inquiry_document_red.svg);
}
.module_bigger-link .opencampus a:before {
  background-image: url(../img/mode/header_icon_inquiry_opencampus.svg);
}
.module_bigger-link .opencampus a:hover:before {
  background-image: url(../img/mode/header_icon_inquiry_opencampus_red.svg);
}
.module_bigger-link .contact a:before {
  background-image: url(../img/mode/header_icon_inquiry_access_white.svg);
}
.module_bigger-link .contact a:hover:before {
  background-image: url(../img/mode/header_icon_inquiry_access_red.svg);
}
.module_bigger-link.is_2column li {
  width: 50%;
}

@media only screen and (max-width: 768px) {
  .module_bigger-link {
    min-width: inherit;
    padding: 0;
  }
  .module_bigger-link.site-inner {
    padding: 0;
  }
  .module_bigger-link li a {
    font-size: 12px;
    font-size: 0.75rem;
  }
  .module_bigger-link li a:before {
    content: "";
    display: block;
    width: 40px;
    height: 40px;
  }
  .module_bigger-link li a br {
    display: block;
  }
}
.module_news-list {
  margin: 0 0 1.5em 0;
  padding: 0;
}
.module_news-list:after {
  content: "";
  display: block;
  clear: both;
}
.module_news-list > li {
  margin-bottom: 2.5em;
  list-style: none;
  line-height: 1.8;
}
.module_news-list > li:after {
  content: "";
  display: block;
  clear: both;
}
.module_news-list > li .multi-date {
  color: #fff;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: bold;
  text-align: left;
  padding: .4em 10px;
  margin-bottom: 1em;
  background-color: #c41d1d;
}
.module_news-list > li .image {
  position: relative;
  float: left;
  margin-right: 20px;
}
.module_news-list > li .image img {
  display: block;
  width: 100%;
  height: 100%;
}
.module_news-list > li .text {
  text-align: left;
  overflow: hidden;
  font-size: 14px;
  font-size: 0.875rem;
}
.module_news-list > li .text .tag {
  position: relative;
  top: -1px;
  display: inline-block;
  margin-right: 2px;
  padding: 0.15em 8px 0;
  background-color: #c41d1d;
  color: #fff;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.5;
}
.module_news-list > li .text .tag + .date {
  display: inline-block;
}
.module_news-list > li .text .date {
  color: #000;
  margin-bottom: .1em;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: bold;
}
.module_news-list > li .text .date span {
  color: #c41d1d;
}
.module_news-list > li .text .multi-date {
  margin-bottom: 0.5em;
}
.module_news-list > li .text .category {
  float: left;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  margin-right: 20px;
}
.module_news-list > li .text p {
  clear: both;
  margin-bottom: 0.5em;
  line-height: 1.5;
}
.module_news-list > li .text p a {
  color: #151515;
}
.module_news-list > li .text .module_tag-list li {
  margin-bottom: 0.2em;
}
.module_news-list > li .text .module_tag-list li a {
  color: #000;
}
.module_news-list > li .text .btn-group {
  font-size: 13px;
  font-size: 0.8125rem;
}
.module_news-list > li:hover .image img {
  -webkit-transition: 0.15s ease-out;
  transition: 0.15s ease-out;
  opacity: 0.7;
  filter: alpha(opacity=70);
}
.module_news-list > li:hover .text p a:after {
  width: 100%;
}
.module_news-list > li.course_fashion .text .category {
  color: #51b5c0;
}
.module_news-list > li.course_stylist .text .category {
  color: #db73bd;
}
.module_news-list > li.course_make-hair .text .category {
  color: #6683e8;
}
.module_news-list > li.course_interior .text .category {
  color: #a2cd40;
}
.module_news-list > li.course_graphic .text .category {
  color: #a86fd3;
}
.module_news-list.is_1column li .image {
  width: 180px;
  height: 100px;
  overflow: hidden;
}
.module_news-list.is_1column li .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.module_news-list.is_1column li .text {
  font-size: 18px;
  font-size: 1.125rem;
}
.module_news-list.is_2column li {
  float: left;
  width: 50%;
  width: -o-calc(50% - 25px);
  width: calc(50% - 25px);
}
.module_news-list.is_2column li:nth-child(odd) {
  margin-right: 25px;
  clear: both;
}
.module_news-list.is_2column li:nth-child(even) {
  margin-left: 25px;
}
.module_news-list.is_2column li .image {
  width: 140px;
  height: 78px;
  overflow: hidden;
}
.module_news-list.is_4column {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  margin: 0 -25px 3em;
}
.module_news-list.is_4column li {
  float: left;
  width: 20%;
  width: -o-calc(25% - 50px);
  width: calc(25% - 50px);
  margin: 0 25px 2em;
}
.module_news-list.is_4column li .image {
  display: block;
  width: 200px;
  height: 110px;
  margin-bottom: 0.5em;
  overflow: hidden;
}
.module_news-list.is_4column li .image img {
  width: 100%;
}
.module_news-list.is_4column li .update {
  font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
}
.module_news-list.is_4column li .title {
  font-size: 13px;
  font-size: 0.8125rem;
}
.module_news-list.is_4column li a {
  color: #000;
}
.module_news-list.is_4column li a:hover .images {
  -webkit-transition: 0.15s ease-out;
  transition: 0.15s ease-out;
  opacity: 0.7;
  filter: alpha(opacity=70);
}

@media only screen and (max-width: 768px) {
  .module_news-list > li {
    margin-bottom: 1em;
  }
  .module_news-list > li .image {
    float: left;
    width: 26%;
    margin-right: 5%;
  }
  .module_news-list > li .image img {
    width: 100%;
  }
  .module_news-list > li .text .tag {
    top: -1px;
    margin-right: 2px;
    padding: 0.05em 8px;
    font-size: 11px;
    font-size: 0.6875rem;
  }
  .module_news-list > li .text .tag + .date {
    margin-top: -0.5em;
  }
  .module_news-list > li .text .date {
    font-size: 12px;
    font-size: 0.75rem;
    white-space: nowrap;
  }
  .module_news-list > li .text .multi-date {
    margin-bottom: 0.5em;
    color: #fff;
    font-size: 12px;
    font-size: 0.75rem;
    font-weight: bold;
    padding: 0.4em 10px;
    background-color: #306abe;
  }
  .module_news-list > li .text .category {
    font-size: 12px;
    font-size: 0.75rem;
    margin-right: 10px;
  }
  .module_news-list > li .text p {
    font-size: 12px;
    font-size: 0.75rem;
    margin-bottom: 0;
    line-height: 1.44;
  }
  .module_news-list > li .text .module_tag-list {
    margin-bottom: 0.5em;
  }
  .module_news-list > li .text .module_tag-list li {
    margin-bottom: 0;
  }
  .module_news-list.is_1column li .image {
    width: 26%;
    height: auto;
  }
  .module_news-list.is_2column li {
    float: none;
    width: 100%;
    margin-bottom: 1.5em;
  }
  .module_news-list.is_2column li:nth-child(odd) {
    margin-right: 0;
  }
  .module_news-list.is_2column li:nth-child(even) {
    margin-left: 0;
  }
  .module_news-list.is_2column li .image {
    width: 26%;
    hieght: auto;
  }
  .module_news-list.is_4column {
    margin: 0 -10px 2em;
  }
  .module_news-list.is_4column li {
    width: 20%;
    width: -o-calc(50% - 20px);
    width: calc(50% - 20px);
    margin: 0 10px 1em;
  }
  .module_news-list.is_4column li .image {
    width: 100%;
    height: auto;
  }
  .module_news-list.is_4column li .update {
    font-size: 11px;
    font-size: 0.6875rem;
  }
  .module_news-list.is_4column li .title {
    font-size: 12px;
    font-size: 0.75rem;
  }
  .module_news-list.is_4column li a:hover .image {
    opacity: 1;
    filter: alpha(opacity=100);
  }
}
.module_text-list {
  list-style: none;
  padding: 0 0 1.5em;
  margin: 0;
}
.module_text-list:after {
  content: '';
  clear: both;
  display: block;
}
.module_text-list li {
  display: block;
  position: relative;
  padding: 0 0 0 25px;
  margin: 0 0 2em;
}
.module_text-list li:last-child {
  margin-bottom: 0;
}
.module_text-list li:before {
  position: absolute;
  top: .5em;
  left: 0;
  width: 13px;
  height: 6px;
  background: url(../img/mode/common_arrow03.png) no-repeat left center;
  content: "";
}
.module_text-list li a {
  display: inline;
  border-bottom: 1px solid transparent;
  -webkit-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
}
.module_text-list li a:hover {
  border-bottom-color: #00afcc;
}
@media only screen and (max-width: 768px) {
  .module_text-list li a:hover {
    border: none;
  }
}
.module_text-list li a:after {
  background-color: #00afcc;
}
.module_text-list li strong {
  color: #c41d1d;
}
.module_text-list.bar {
  margin-bottom: 1.6em;
}
.module_text-list.bar li {
  padding: 0;
  margin: 0 0 .4em;
}
.module_text-list.bar li:before {
  position: static;
  color: #c41d1d;
  font-weight: bold;
  width: auto;
  height: auto;
  margin-top: 0;
  margin-right: .3em;
  background: none;
  content: "-";
}
.module_text-list.disk {
  margin-bottom: 1.6em;
}
.module_text-list.disk li {
  padding: 0 0 0 20px;
}
.module_text-list.disk li:before {
  top: .5em;
  border-radius: 10px;
  width: 5px;
  height: 5px;
  margin-top: 0;
  background: none;
  background-color: #c41d1d;
}
.module_text-list.right {
  clear: both;
  overflow: hidden;
}
.module_text-list.right li {
  float: right;
}
.module_text-list.is_2column {
  margin-right: -17px;
  margin-left: -17px;
}
.module_text-list.is_2column li {
  float: left;
  width: 47.05%;
  width: -o-calc(100% / 2 - 34px);
  width: calc(100% / 2 - 34px);
  margin-right: 17px;
  margin-left: 17px;
}

@media only screen and (max-width: 768px) {
  .module_text-list {
    padding: 0 0 1.5em;
  }
  .module_text-list li {
    padding: 0 0 0 20px;
    margin: 0 0 1em;
  }
  .module_text-list.bar {
    margin-bottom: 1em;
  }
  .module_text-list.bar li {
    margin: 0 0 .4em;
  }
  .module_text-list.disk {
    margin-bottom: 1.6em;
  }
  .module_text-list.disk li {
    padding: 0 0 0 15px;
  }
  .module_text-list.disk li:before {
    border-radius: 10px;
    width: 5px;
    height: 5px;
    background: none;
    background-color: #c41d1d;
  }
  .module_text-list.disk li a {
    color: #000;
  }
  .module_text-list.is_2column {
    margin-right: 0;
    margin-left: 0;
  }
  .module_text-list.is_2column li {
    float: none;
    width: 100%;
    width: -o-calc(100%);
    width: calc(100%);
    margin-right: 0;
    margin-left: 0;
  }
}
.module_share-button {
  display: table;
  list-style: none;
  padding: 0;
  margin: 0;
  width: 100%;
}
.module_share-button li {
  display: table-cell;
  text-align: center;
}
.module_share-button li a {
  display: block;
  padding: .5em 0;
  color: white;
  line-height: 30px;
}
.module_share-button li a:hover {
  opacity: 0.8;
  filter: alpha(opacity=80);
  -webkit-transition: 0.2s ease-out;
  transition: 0.2s ease-out;
}
.module_share-button li.facebook a {
  background-color: #45569c;
}
.module_share-button li.twitter a {
  background-color: black;
}
.module_share-button li.line a {
  background-color: #00b900;
}
.module_share-button li.mixi a {
  background-color: #fafafa;
}
.module_share-button li.google a {
  background-color: #dc4e41;
}
.module_share-button li:first-child.other {
  border-left: 1px solid #ddd;
}
.module_share-button li:last-child.other {
  border-right: 1px solid #ddd;
}
.module_share-button li img {
  width: 32px;
  height: auto;
  vertical-align: bottom;
}
.module_share-button li svg {
  vertical-align: middle;
  margin: 0 4px;
}
.module_share-button li.line {
  display: none;
}

@media only screen and (max-width: 768px) {
  .module_share-button li a {
    padding: .7em 0;
  }
  .module_share-button li a:hover {
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transition: 0 ease-out;
    transition: 0 ease-out;
  }
  .module_share-button li:first-child.other {
    border-left: 0;
  }
  .module_share-button li:last-child.other {
    border-right: 0;
  }
  .module_share-button li.line {
    display: table-cell;
  }
}
.module_pagination {
  text-align: center;
  padding: 2em 0;
}
.module_pagination a {
  font-size: 12px;
  font-size: 0.75rem;
  color: #000;
}
.module_pagination a:hover {
  opacity: 0.5;
  filter: alpha(opacity=50);
  -webkit-transition: 0.2s ease-out;
  transition: 0.2s ease-out;
}
.module_pagination .index {
  padding: .5em 4.5em;
}
.module_pagination .page {
  color: #ddd;
  padding: .5em 1.2em;
  margin: 0 5px;
}
.module_pagination .page.current {
  color: #fff;
  background-color: #c41d1d;
  background-image: none;
}
.module_pagination .icon-prev, .module_pagination .icon-next {
  position: relative;
  top: 5px;
  display: inline-block;
  width: 12px;
  height: 20px;
  padding: .5em 2em;
  background: url("../img/mode/common_icon_page-navi.png") no-repeat;
  font-size: 1px;
}
.module_pagination .icon-prev {
  background-position: center bottom;
}
.module_pagination .icon-next {
  background-position: center top;
}

@media only screen and (max-width: 768px) {
  .module_pagination .index {
    padding: .5em 4em;
  }
  .module_pagination .page {
    padding: .5em 1em;
    margin: 0 2px;
  }
}
.module_link-list-block {
  position: relative;
  border: 1px solid #c41d1d;
  display: table;
  width: 100%;
  padding: 1.4em 2em 0;
  margin-bottom: 4em;
}
.module_link-list-block:before {
  content: "";
  position: absolute;
  bottom: 10px;
  right: -5px;
  width: 30px;
  height: 1px;
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
  background-color: #c41d1d;
  z-index: 11;
}
.module_link-list-block:after {
  display: block;
  position: absolute;
  bottom: -1px;
  right: -1px;
  content: "";
  width: 22px;
  height: 22px;
  z-index: 10;
  background: url("../img/mode/common_bg.png") repeat left top;
}
@media only screen and (max-width: 768px) {
  .module_link-list-block:before {
    bottom: 6px;
    right: -3px;
    width: 19px;
  }
  .module_link-list-block:after {
    width: 14px;
    height: 14px;
  }
}
.module_link-list-block:before, .module_link-list-block:after {
  display: none;
}
.module_link-list-block .title, .module_link-list-block .content {
  display: table-cell;
  vertical-align: top;
}
.module_link-list-block .title {
  color: #777;
  width: 14%;
}
.module_link-list-block ul {
  padding-bottom: 0;
}
.module_link-list-block ul li {
  margin-bottom: 1.4em;
}

@media only screen and (max-width: 768px) {
  .module_link-list-block {
    display: block;
    padding: 1em 20px 0;
    margin-bottom: 2em;
  }
  .module_link-list-block .title, .module_link-list-block .content {
    display: block;
  }
  .module_link-list-block .title {
    width: auto;
    margin-bottom: .7em;
  }
  .module_link-list-block ul li {
    margin-bottom: 1em;
  }
}
.module_image-box {
  margin-bottom: 2.5em;
  overflow: hidden;
}
.module_image-box figure img {
  vertical-align: bottom;
}
.module_image-box figure.left {
  float: left;
  margin-right: 60px;
}
.module_image-box figure.right {
  float: right;
  margin-left: 60px;
}
.module_image-box .text {
  overflow: hidden;
}
.module_image-box .text .title {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: bold;
  margin-bottom: 1.5em;
}
.module_image-box .text .title strong {
  display: block;
  font-size: 24px;
  font-size: 1.5rem;
}
.module_image-box.is_left figure {
  float: left;
  margin-right: 60px;
}
.module_image-box.is_right figure {
  float: right;
  margin-left: 60px;
}
.module_image-box.is_vertical .text {
  display: table-cell;
  vertical-align: middle;
}
.module_image-box.is_design1 {
  margin-bottom: 1.5em;
  background-color: #fff;
  -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
}
.module_image-box.is_design1 figure {
  width: 560px;
  height: 240px;
  overflow: hidden;
}
.module_image-box.is_design1 figure img {
  width: 100%;
  height: auto;
}
.module_image-box.is_design1 .text {
  height: 240px;
  padding-right: 2.5em;
  padding-top: 2.5em;
  padding-bottom: 2.5em;
  overflow: visible;
}
.module_image-box.is_design1 .text .title {
  position: relative;
  margin-bottom: .5em;
}
.module_image-box.is_design1 .text .title:before {
  position: absolute;
  top: .3em;
  left: -60px;
  content: "";
  width: 45px;
  height: 1px;
  background-color: #c41d1d;
}
.module_image-box.is_design1 .text p {
  margin-bottom: 0;
}
.module_image-box.is_design2 figure {
  width: 480px;
  height: 270px;
}
.module_image-box.is_design2 figure img {
  width: 100%;
  height: auto;
}
.intersection .module_image-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 2em;
  background-color: #fff;
}
.intersection .module_image-box figure {
  position: relative;
  margin-right: 0;
  margin-left: 0;
  width: 50%;
  height: 316px;
}
.intersection .module_image-box figure:after {
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -7px;
  display: block;
  width: 0;
  height: 0;
  border-top: 14px solid transparent;
  border-right: 19px solid #fff;
  border-bottom: 14px solid transparent;
  border-left: 19px solid transparent;
  content: "";
}
.intersection .module_image-box figure img {
  width: 100%;
  height: auto;
}
.intersection .module_image-box .text {
  width: 50%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border: 2px solid #eee;
  min-width: 560px;
  height: 316px;
  padding: 0 30px;
}
.intersection .module_image-box .text .title {
  color: #2aa53f;
  text-align: center;
}
.intersection .module_image-box .text .title span {
  padding: 0 5px;
  background: url(../img/mode/common_bg03.png) repeat left top;
}
.intersection .module_image-box .text p {
  margin-bottom: 0;
}
.intersection .module_image-box:nth-of-type(odd) .text {
  border-left: 0;
}
.intersection .module_image-box:nth-of-type(even) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.intersection .module_image-box:nth-of-type(even) figure:after {
  left: 0;
  border-top: 14px solid transparent;
  border-right: 19px solid transparent;
  border-bottom: 14px solid transparent;
  border-left: 19px solid #fff;
}
.intersection .module_image-box:nth-of-type(even) .text {
  border-right: 0;
}

@media only screen and (min-width: 1150px) {
  .module_image-box.is_design1 figure img, .module_image-box.is_design2 figure img, .module_image-box.is_design3 figure img {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}
@media only screen and (max-width: 768px) {
  .module_image-box {
    margin-bottom: 1em;
  }
  .module_image-box figure img {
    margin-bottom: 1em;
  }
  .module_image-box figure.left {
    float: none;
    margin-right: 0;
  }
  .module_image-box figure.right {
    float: none;
    margin-left: 0;
  }
  .module_image-box .text .title {
    font-size: 16px;
    font-size: 1rem;
    margin-bottom: 1em;
  }
  .module_image-box.is_left figure {
    float: none;
    margin-right: 0;
  }
  .module_image-box.is_right figure {
    float: none;
    margin-left: 0;
  }
  .module_image-box.is_vertical .text {
    display: block;
  }
  .module_image-box.is_design1 {
    margin: 0 -10px 1.5em;
    -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
    box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
  }
  .module_image-box.is_design1 figure {
    width: auto;
    height: auto;
  }
  .module_image-box.is_design1 .text {
    height: auto;
    padding: .5em 20px 1em;
  }
  .module_image-box.is_design1 .text .title {
    font-size: 16px;
    font-size: 1rem;
    margin-bottom: .8em;
  }
  .module_image-box.is_design1 .text .title:before {
    left: -20px;
    width: 15px;
  }
  .module_image-box.is_design2 figure {
    width: auto;
    height: auto;
  }
  .intersection .module_image-box {
    margin-right: -20px;
    margin-left: -20px;
    overflow: visible;
    display: initial;
  }
  .intersection .module_image-box figure {
    width: auto;
    height: auto;
  }
  .intersection .module_image-box figure:after {
    top: inherit;
    right: inherit;
    bottom: 19px;
    left: 50%;
    margin-top: 0;
    margin-left: -14px;
    -ms-transform: rotate(-270deg);
    -webkit-transform: rotate(-270deg);
    transform: rotate(-270deg);
  }
  .intersection .module_image-box .text {
    border: none;
    min-width: inherit;
    height: auto;
    padding: .5em 20px 0;
  }
  .intersection .module_image-box .text .title {
    font-size: 14px;
    font-size: 0.875rem;
    margin-bottom: 1em;
  }
  .intersection .module_image-box .text .title strong {
    font-size: 20px;
    font-size: 1.25rem;
    padding-top: .3em;
  }
  .intersection .module_image-box:nth-of-type(even) figure:after {
    top: inherit;
    right: inherit;
    bottom: 19px;
    left: 50%;
    border-top: 14px solid transparent;
    border-right: 19px solid #fff;
    border-bottom: 14px solid transparent;
    border-left: 19px solid transparent;
  }
}
.module_thumbnail-list {
  padding: 0;
  letter-spacing: -0.4em;
}
.module_thumbnail-list li {
  position: relative;
  display: inline-block;
  list-style: none;
  vertical-align: top;
  letter-spacing: normal;
}
.module_thumbnail-list li .images {
  position: relative;
  margin-bottom: 15px;
}
.module_thumbnail-list li .images a:after {
  display: none;
}
.module_thumbnail-list li .images img {
  vertical-align: bottom;
}
.module_thumbnail-list li .update {
  margin-bottom: 0.5em;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: bold;
}
.module_thumbnail-list li .title {
  line-height: 1.6;
}
.module_thumbnail-list li a {
  color: #000;
}
.module_thumbnail-list li a:after {
  background-color: #000;
}
.module_thumbnail-list li a .update {
  margin-bottom: 0;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: normal;
}
.module_thumbnail-list li a .title {
  font-size: 16px;
  font-size: 1rem;
}
.module_thumbnail-list li a .caption {
  font-size: 14px;
  font-size: 0.875rem;
}
.module_thumbnail-list li a:hover .title:after {
  width: 100%;
}
.module_thumbnail-list li a:hover img {
  -webkit-transition: 0.15s ease-out;
  transition: 0.15s ease-out;
  opacity: 0.7;
  filter: alpha(opacity=70);
}
.module_thumbnail-list li:after {
  content: "";
  display: block;
  clear: both;
}
.module_thumbnail-list.is_2column {
  margin: 0 -17px;
}
.module_thumbnail-list.is_2column li {
  width: 47.05%;
  width: -o-calc(100% / 2 - 34px);
  width: calc(100% / 2 - 34px);
  margin: 0 17px 2em;
}
.module_thumbnail-list.is_2column li a {
  color: #00afcc;
}
.module_thumbnail-list.is_2column li .number {
  position: absolute;
  display: inline-block;
  top: -10px;
  left: 10px;
  padding: 25px 20px 15px;
  background-color: #c41d1d;
  color: #fff;
  font-size: 32px;
  font-size: 2rem;
  line-height: 1;
  font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  z-index: 100;
}
.module_thumbnail-list.is_2column li .images {
  margin-bottom: 1.5em;
}
.module_thumbnail-list.is_2column li .title {
  margin-bottom: 0.5em;
  text-align: center;
  color: #c41d1d;
  font-size: 18.5px;
  font-size: 1.15625rem;
  font-weight: bold;
}
.module_thumbnail-list.is_2column li .description {
  font-size: 16px;
  font-size: 1rem;
}
.module_thumbnail-list.is_2column li .btn-group {
  float: right;
  padding-right: 15px;
  margin-top: 0.5em;
  background: url(../img/mode/common_arrow15.png) no-repeat right center;
}
.module_thumbnail-list.is_2column li .btn-group a {
  font-size: 13px;
  font-size: 0.8125rem;
  display: inline;
  border-bottom: 1px solid transparent;
  -webkit-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
}
.module_thumbnail-list.is_2column li .btn-group a:hover {
  border-bottom-color: #00afcc;
}
@media only screen and (max-width: 768px) {
  .module_thumbnail-list.is_2column li .btn-group a:hover {
    border: none;
  }
}
.module_thumbnail-list.is_3column {
  margin: 0 auto 3em;
}
.module_thumbnail-list.is_3column li {
  width: 260px;
  margin: 0 0 2em;
  text-align: center;
  font-size: 16px;
  font-size: 1rem;
}
.module_thumbnail-list.is_3column li a .images {
  width: 260px;
  height: 144px;
  margin-right: auto;
  margin-left: auto;
  overflow: hidden;
}
.module_thumbnail-list.is_3column li a .images img {
  width: 100%;
}
.module_thumbnail-list.is_3column .slick-dots {
  padding: 0;
  text-align: center;
  line-height: 1;
}
.module_thumbnail-list.is_3column .slick-dots li {
  display: inline-block;
  float: none;
  width: auto;
  margin: 0 5px !important;
}
.module_thumbnail-list.is_3column .slick-dots li button {
  position: relative;
  font-size: 0;
  line-height: 0;
  display: inline-block;
  width: 8px;
  height: 8px;
  padding: 12px;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: transparent;
  text-align: center;
}
.module_thumbnail-list.is_3column .slick-dots li button:before {
  position: absolute;
  top: 4px;
  left: 4px;
  line-height: 4px;
  width: 10px;
  height: 10px;
  content: "";
  border-radius: 10px;
  text-align: center;
  -webkit-font-smoothing: antialiased;
  border: 2px #000 solid;
}
.module_thumbnail-list.is_3column .slick-dots li.slick-active button:before {
  border: 2px #000 solid;
  background-color: #000;
}
.module_thumbnail-list.is_3column.one .slick-track {
  -webkit-transform: translate3d(0px, 0px, 0px) !important;
          transform: translate3d(0px, 0px, 0px) !important;
}
.module_thumbnail-list.is_4column {
  margin: 0 -26px 3em;
}
.module_thumbnail-list.is_4column li {
  width: 200px;
  margin: 0 26px 2em;
}
.module_thumbnail-list.is_4column li .images {
  width: 200px;
  height: 110px;
  overflow: hidden;
}
.module_thumbnail-list.is_4grid {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[4];
      grid-template-columns: repeat(4, 1fr);
  gap: 28px;
  margin: 0;
}
.module_thumbnail-list.is_4grid li {
  margin: 0;
}
.module_thumbnail-list.is_4grid li .images {
  margin-bottom: 12px;
}
.module_thumbnail-list.is_4grid li .images img {
  width: 280px;
  height: 157.5px;
  overflow: hidden;
}
.module_thumbnail-list.is_4grid li .update {
  font-family: "Inter", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  font-weight: 600;
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 100%;
  color: #d0d0d0;
  margin-bottom: 8px;
}
.module_thumbnail-list.is_4grid li .title {
  color: #151515;
  font-weight: 300;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 150%;
}

@media only screen and (max-width: 768px) {
  .module_thumbnail-list {
    margin-bottom: 2em;
    padding: 0 10px;
  }
  .module_thumbnail-list li a .images {
    margin-bottom: 5px;
  }
  .module_thumbnail-list li a .images img {
    width: 100%;
  }
  .module_thumbnail-list li a .update {
    font-size: 11px;
    font-size: 0.6875rem;
    margin-bottom: 0.2em;
  }
  .module_thumbnail-list li a .title {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.44;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
  }
  .module_thumbnail-list li a .subtitle {
    font-size: 11px;
    font-size: 0.6875rem;
    margin-bottom: 0.2em;
  }
  .module_thumbnail-list li a .caption {
    font-size: 13px;
    font-size: 0.8125rem;
  }
  .module_thumbnail-list.is_2column {
    margin: 0;
    padding: 0;
  }
  .module_thumbnail-list.is_2column li {
    float: none;
    width: 100%;
    margin: 0 0 3em;
  }
  .module_thumbnail-list.is_2column li .number {
    top: -5px;
    left: 0;
    padding: 15px 10px 10px;
    font-size: 24px;
    font-size: 1.5rem;
  }
  .module_thumbnail-list.is_2column li .images {
    margin: 0 -10px 15px;
  }
  .module_thumbnail-list.is_2column li .title {
    font-size: 20px;
    font-size: 1.25rem;
  }
  .module_thumbnail-list.is_2column li .description {
    font-size: 14px;
    font-size: 0.875rem;
  }
  .module_thumbnail-list.is_3column li, .module_thumbnail-list.is_4column li {
    width: 43%;
    width: -o-calc(50% - 21px);
    width: calc(50% - 21px);
    margin: 0 10px 1em;
  }
  .module_thumbnail-list.is_3column {
    width: 100%;
    padding: 0;
  }
  .module_thumbnail-list.is_3column li {
    margin: 0 0 1em;
  }
  .module_thumbnail-list.is_3column li a .images {
    width: 100%;
    height: auto;
  }
  .module_thumbnail-list.is_3column li a .images img {
    width: 100%;
    height: auto;
  }
  .module_thumbnail-list.is_3column li a .title {
    font-size: 15px;
    font-size: 0.9375rem;
  }
  .module_thumbnail-list.is_3column .slick-slide {
    margin-right: 10px;
    margin-left: 10px;
  }
  .module_thumbnail-list.is_3column .slick-dots li {
    margin: 0 2px;
  }
  .module_thumbnail-list.is_3column .slick-dots li button {
    width: 6px;
    height: 6px;
    padding: 12px;
  }
  .module_thumbnail-list.is_3column .slick-dots li button:before {
    top: 4px;
    left: 4px;
    line-height: 4px;
    width: 8px;
    height: 8px;
    border-radius: 8px;
    border: 1px #000 solid;
  }
  .module_thumbnail-list.is_3column .slick-dots li.slick-active button:before {
    border: 1px #000 solid;
  }
  .module_thumbnail-list.is_4column {
    margin: 0 -20px 3em;
  }
  .module_thumbnail-list.is_4column li .images {
    width: 100%;
    height: auto;
  }
  .module_thumbnail-list.is_4column li:nth-child(odd) {
    clear: both;
  }
  .module_thumbnail-list.is_4grid {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[2];
        grid-template-columns: repeat(2, 1fr);
    gap: 32px 20px;
    margin: 0;
  }
  .module_thumbnail-list.is_4grid li {
    margin: 0;
  }
  .module_thumbnail-list.is_4grid li .images img {
    width: 158px;
    height: 89px;
    overflow: hidden;
  }
}
.module_library-list {
  list-style: none;
  padding: 0;
  margin: 0 0 1.5em;
  overflow: hidden;
}
.module_library-list .item {
  position: relative;
  margin: 0 16px 30px;
  overflow: hidden;
}
.module_library-list .item:before {
  position: absolute;
  top: -10px;
  left: -10px;
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-top: 10px solid #000;
  border-right: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-left: 10px solid transparent;
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
}
.module_library-list .item.fashion:before {
  border-top-color: #c41d1d;
}
.module_library-list .item.fashion-business:before {
  border-top-color: #f3704f;
}
.module_library-list .item.stylist:before {
  border-top-color: #00a1e9;
}
.module_library-list .item.make-hair:before {
  border-top-color: #fcc800;
}
.module_library-list .item.interior:before {
  border-top-color: #b8d200;
}
.module_library-list .item.graphic:before {
  border-top-color: #af0082;
}
.module_library-list .item.fashion .text .genre {
  color: #c41d1d;
}
.module_library-list .item.fashion-business .text .genre {
  color: #f3704f;
}
.module_library-list .item.stylist .text .genre {
  color: #00a1e9;
}
.module_library-list .item.make-hair .text .genre {
  color: #fcc800;
}
.module_library-list .item.interior .text .genre {
  color: #b8d200;
}
.module_library-list .item.graphic .text .genre {
  color: #af0082;
}
.module_library-list .item a {
  display: block;
  padding: 12px 15px;
  background-color: #fff;
  overflow: hidden;
}
.module_library-list .item a:hover {
  background-color: rgba(255, 255, 255, 0.9);
}
.module_library-list .item a:hover img {
  opacity: 0.8;
  filter: alpha(opacity=80);
  -webkit-transition: all .3s;
  transition: all .3s;
}
.module_library-list .item .text {
  float: left;
  color: #000;
  width: 55%;
  width: -o-calc(100% - 105px);
  width: calc(100% - 105px);
  overflow: hidden;
}
.module_library-list .item .text .genre, .module_library-list .item .text .name, .module_library-list .item .text .title {
  display: block;
}
.module_library-list .item .text .genre {
  font-family: Roboto;
  font-size: 12px;
  font-size: 0.75rem;
}
.module_library-list .item .text .name {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
}
.module_library-list .item .text .title {
  font-size: 11px;
  font-size: 0.6875rem;
}
.module_library-list .item .image {
  float: right;
  width: 105px;
  text-align: right;
}
.module_library-list .item .image img {
  border-radius: 50%;
  vertical-align: bottom;
}
.module_library-list.is_2column .item {
  float: left;
  width: 48.5%;
  width: -o-calc(100% / 2 - 24px);
  width: calc(100% / 2 - 24px);
}
.module_library-list.is_2column .item:nth-child(2n+1) {
  margin-left: 0;
}
.module_library-list.is_2column .item:nth-child(2n) {
  margin-right: 0;
}
.module_library-list.is_3column .item {
  float: left;
  width: 31.42%;
  width: -o-calc(100% / 3 - 24px);
  width: calc(100% / 3 - 24px);
}
.module_library-list.is_3column .item:nth-child(3n+1) {
  margin-left: 0;
}
.module_library-list.is_3column .item:nth-child(3n) {
  margin-right: 0;
}
.module_library-list.is_4column .item {
  float: left;
  width: 22.85%;
  width: -o-calc(100% / 4 - 24px);
  width: calc(100% / 4 - 24px);
}
.module_library-list.is_4column .item:nth-child(4n+1) {
  margin-left: 0;
  clear: both;
}
.module_library-list.is_4column .item:nth-child(4n) {
  margin-right: 0;
}

@media only screen and (max-width: 768px) {
  .module_library-list {
    margin: 0 0 .5em;
  }
  .module_library-list .item {
    margin: 0 0 30px;
  }
  .module_library-list .item a {
    padding: 10px;
  }
  .module_library-list .item .text {
    width: 55%;
    width: -o-calc(100% - 105px);
    width: calc(100% - 105px);
  }
  .module_library-list .item .text .genre {
    font-size: 16px;
    font-size: 1rem;
  }
  .module_library-list .item .text .name {
    font-size: 16px;
    font-size: 1rem;
  }
  .module_library-list .item .text .title {
    font-size: 12px;
    font-size: 0.75rem;
  }
  .module_library-list .item .image {
    width: 105px;
  }
  .module_library-list.is_2column .item, .module_library-list.is_3column .item, .module_library-list.is_4column .item {
    width: 50%;
    width: -o-calc(100% / 2 - 5px);
    width: calc(100% / 2 - 5px);
    padding: 0;
    margin: 0 10px .75em 0;
  }
  .module_library-list.is_2column .item:nth-child(2n+1), .module_library-list.is_3column .item:nth-child(2n+1), .module_library-list.is_4column .item:nth-child(2n+1) {
    margin-left: 0;
  }
  .module_library-list.is_2column .item:nth-child(2n), .module_library-list.is_3column .item:nth-child(2n), .module_library-list.is_4column .item:nth-child(2n) {
    margin-right: 0;
  }
  .module_library-list.is_2column .item .text, .module_library-list.is_3column .item .text, .module_library-list.is_4column .item .text {
    float: none;
    width: 100%;
    padding-bottom: .25em;
  }
  .module_library-list.is_2column .item .text .genre, .module_library-list.is_3column .item .text .genre, .module_library-list.is_4column .item .text .genre {
    position: absolute;
    top: .4em;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
  }
  .module_library-list.is_2column .item .image, .module_library-list.is_3column .item .image, .module_library-list.is_4column .item .image {
    float: none;
    margin-top: 1.8em;
    margin-bottom: .5em;
    width: 100%;
    text-align: left;
  }
}
.module_event-list {
  margin: 0 0 32px;
  padding: 32px 0 0;
  overflow: hidden;
}
.module_event-list:last-of-type {
  margin-bottom: 0;
}
.module_event-list .image {
  width: 100%;
}
.module_event-list .image img {
  width: 100%;
  display: block;
}
.module_event-list .wrap {
  color: #151515;
  position: relative;
}
.module_event-list .wrap .wrap-link {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 1;
}
.module_event-list .wrap .sub-title {
  position: relative;
  margin-bottom: 20px;
  padding: 11.5px 12px;
  background-color: #efefef;
  line-height: 150%;
  font-weight: bold;
  font-size: 14px;
  font-size: 0.875rem;
  text-align: center;
}
.module_event-list .wrap .title {
  margin-bottom: 12px;
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 140%;
  font-weight: bold;
}
.module_event-list .wrap .description {
  margin-bottom: 12px;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 150%;
}
.module_event-list .wrap .summary {
  line-height: 2;
}
.module_event-list .wrap .feature {
  margin: 0 0 12px 0;
  padding: 0;
  position: relative;
  z-index: 2;
}
.module_event-list .wrap .feature li {
  display: inline-block;
  margin: 0 2px 8px 0;
  padding: 4px 6px;
  border: 1px solid #1b1b1b;
  border-radius: 4px;
  background-color: #fff;
  font-size: 12px;
  font-size: 0.75rem;
}
.module_event-list .wrap .feature li a {
  color: #000;
  position: relative;
  display: inline-block;
}
.module_event-list .wrap .feature li a:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 1px;
  background-color: #00afcc;
  -webkit-transition: width 0.2s linear;
  transition: width 0.2s linear;
}
.module_event-list .wrap .feature li a:hover:after {
  width: 100%;
}
@media only screen and (max-width: 768px) {
  .module_event-list .wrap .feature li a:after {
    display: none;
  }
}
.module_event-list .wrap .feature li a:after {
  background-color: #000;
}
.module_event-list .wrap .btn-group {
  text-align: center;
  position: relative;
  z-index: 2;
}
.module_event-list .wrap .btn-group .btn {
  min-width: 257px;
}
.module_event-list .btn-group {
  text-align: center;
}
.module_event-list .tel-number {
  text-align: center;
  padding: 12px 0 0;
  line-height: 140%;
  letter-spacing: 0.012em;
  font-weight: bold;
  font-size: 12px;
  font-size: 0.75rem;
}
.module_event-list .tel-number span {
  display: block;
  color: #ff004d;
  letter-spacing: 0.02em;
  font-size: 15px;
  font-size: 0.9375rem;
}
.module_event-list .sns-share {
  text-align: center;
}
.module_event-list .sns-share p {
  font-weight: 600;
  line-height: 140%;
  font-size: 15px;
  font-size: 0.9375rem;
  margin: 60px 0 20px;
}
.module_event-list .sns-share .sns-item {
  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;
}
.module_event-list .sns-share .sns-item a {
  width: 70px;
  height: 70px;
  border-radius: 35px;
  border: solid 1px #1b1b1b;
  margin: 0 20px;
  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;
  color: black;
}
.module_event-list.js-scroll .image,
.module_event-list.js-scroll .sub-title,
.module_event-list.js-scroll .title,
.module_event-list.js-scroll #status-info,
.module_event-list.js-scroll .description,
.module_event-list.js-scroll .summary,
.module_event-list.js-scroll .feature,
.module_event-list.js-scroll .btn-group,
.module_event-list.js-scroll .tel-number {
  opacity: 0;
  -webkit-transform: translateY(20px);
      -ms-transform: translateY(20px);
          transform: translateY(20px);
  -webkit-transition: 0.3s 0.2s;
  transition: 0.3s 0.2s;
}
.module_event-list.js-scroll .image {
  -webkit-transition: 0.3s 0s;
  transition: 0.3s 0s;
}
.module_event-list.js-scroll--show .image,
.module_event-list.js-scroll--show .sub-title,
.module_event-list.js-scroll--show .title,
.module_event-list.js-scroll--show #status-info,
.module_event-list.js-scroll--show .description,
.module_event-list.js-scroll--show .summary,
.module_event-list.js-scroll--show .feature,
.module_event-list.js-scroll--show .btn-group,
.module_event-list.js-scroll--show .tel-number {
  opacity: 1;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
}

@media only screen and (max-width: 768px) {
  .module_event-list {
    margin: 0 0 48px;
  }
  .module_event-list .wrap {
    display: block;
  }
  .module_event-list .wrap .btn-group .btn {
    width: 257px;
  }
}
.module_service-list {
  list-style: none;
  padding: 0;
  margin: 0;
  overflow: hidden;
}
.module_service-list li {
  width: 100%;
  padding: 0;
  margin: 0;
  background-color: #fff;
  overflow: auto;
}
.module_service-list li .heading7 {
  margin-top: 13px;
}
.module_service-list li figure {
  float: left;
  margin: 0 32px 32px 0;
}
.module_service-list li .title {
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: bold;
}
.module_service-list li p {
  font-size: 13px;
  font-size: 0.8125rem;
  margin-bottom: 1.5em;
}
.module_service-list li.js-scroll figure,
.module_service-list li.js-scroll .heading7,
.module_service-list li.js-scroll .title,
.module_service-list li.js-scroll p {
  opacity: 0;
  -webkit-transform: translateY(20px);
      -ms-transform: translateY(20px);
          transform: translateY(20px);
}
.module_service-list li.js-scroll figure {
  -webkit-transition: 0.3s 0s;
  transition: 0.3s 0s;
}
.module_service-list li.js-scroll .heading7 {
  -webkit-transition: 0.3s 0.3s;
  transition: 0.3s 0.3s;
}
.module_service-list li.js-scroll .title {
  -webkit-transition: 0.3s 0.3s;
  transition: 0.3s 0.3s;
}
.module_service-list li.js-scroll p {
  -webkit-transition: 0.3s 0.3s;
  transition: 0.3s 0.3s;
}
.module_service-list li.js-scroll--show figure,
.module_service-list li.js-scroll--show .heading7,
.module_service-list li.js-scroll--show .title,
.module_service-list li.js-scroll--show p {
  opacity: 1;
  -webkit-transform: inherit;
      -ms-transform: inherit;
          transform: inherit;
}

@media only screen and (max-width: 768px) {
  .module_service-list li {
    float: none;
    width: auto;
    width: -o-calc(100%);
    width: calc(100%);
    padding: 0;
    margin: 0 0 32px;
  }
  .module_service-list li figure {
    margin: 0 20px 20px 0;
  }
  .module_service-list li figure img {
    width: 100%;
  }
  .module_service-list li p {
    margin-bottom: 0.5em;
  }
}
.module_step-bar {
  display: table;
  width: 100%;
  margin: 0 0 2em 0;
  padding: 0;
  border: 1px #c41d1d solid;
}
.module_step-bar li {
  position: relative;
  display: table-cell;
  padding-left: 20px;
  height: 40px;
  list-style: none;
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1.2;
  letter-spacing: 1em;
  text-align: center;
  vertical-align: middle;
  color: #777;
}
.module_step-bar li:after {
  right: -18px;
  background: url("../img/mode/common_bg_step-bar.png") no-repeat;
}
.module_step-bar li:first-child:before, .module_step-bar li:last-child:after {
  display: none;
}
.module_step-bar li.current {
  color: #fff;
  background-color: #c41d1d;
  font-weight: bold;
}
.module_step-bar li.current:before, .module_step-bar li:after {
  content: '';
  position: absolute;
  top: 0;
  width: 18px;
  height: 42px;
}
.module_step-bar li.current::before {
  left: 0;
  background: url("../img/mode/common_bg_step-bar2.png") no-repeat;
  background-size: 15px 40px;
}
.module_step-bar li.current::after {
  right: -37px;
  top: -1px;
  border: 21px solid transparent;
  border-left: 17px solid #c41d1d;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  vertical-align: middle;
  margin: auto;
  background: none;
  z-index: 100;
}
.module_step-bar.step2 li {
  width: 50%;
  width: -o-calc(100% / 2);
  width: calc(100% / 2);
}
.module_step-bar.step3 li {
  width: 33.3333%;
  width: -o-calc(100% / 3);
  width: calc(100% / 3);
}
.module_step-bar.step4 li {
  width: 25%;
  width: -o-calc(100% / 4);
  width: calc(100% / 4);
}
.module_step-bar.step5 li {
  width: 20%;
  width: -o-calc(100% / 5);
  width: calc(100% / 5);
  letter-spacing: .2em;
}

@media only screen and (max-width: 768px) {
  .module_step-bar {
    width: -o-calc(100% + 40px);
    width: calc(100% + 40px);
    margin: 0 -20px 1.5em;
    border-right: none;
    border-left: none;
  }
  .module_step-bar li {
    padding-left: 20px;
    height: 30px;
    font-size: 12px;
    font-size: 0.75rem;
  }
  .module_step-bar li.current:before, .module_step-bar li:after {
    height: 32px;
  }
  .module_step-bar li:after {
    width: 14px;
    background-size: 14px;
  }
  .module_step-bar li.current::before {
    background-size: 15px 30px;
  }
  .module_step-bar li.current:after {
    top: -1px;
    right: -32px;
    border: 16px solid transparent;
    border-left: 17px solid #c41d1d;
  }
}
.module_input-field input[type="text"],
.module_input-field input[type="email"],
.module_input-field input[type="url"],
.module_input-field input[type="tel"],
.module_input-field input[type="password"],
.module_input-field input[type="number"] {
  padding: 0.4em 10px 0.4em;
  border: 1px #777 solid;
  font-size: 14px;
  font-size: 0.875rem;
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0;
  appearance: none;
  line-height: 2;
  outline: 0;
  width: 200px;
  margin-bottom: 0.5px;
}
.module_input-field input[type="text"]:focus,
.module_input-field input[type="email"]:focus,
.module_input-field input[type="url"]:focus,
.module_input-field input[type="tel"]:focus,
.module_input-field input[type="password"]:focus,
.module_input-field input[type="number"]:focus {
  border: 1px #00a1e9 solid !important;
  outline: solid 3px #00a1e9 !important;
}
.module_input-field select {
  padding: 0.4em 10px 0.3em;
  border: 1px #777 solid;
  font-size: 14px;
  font-size: 0.875rem;
  background: url("../img/mode/common_parts-select-btn.png") no-repeat 95% center #fff;
  background-size: 12px auto;
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0;
  -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
  -webkit-focus-ring-color: rgba(255, 255, 255, 0);
  -moz-tap-highlight-color: rgba(255, 255, 255, 0);
  -moz-focus-ring-color: rgba(255, 255, 255, 0);
  outline: 0;
  width: 260px;
  min-height: 2.4em;
}
@media only screen and (max-width: 768px) {
  .module_input-field select {
    padding: 0.6em 10px 0.5em;
  }
}
.module_input-field select[disabled='disabled'] {
  border: 1px #ddd solid !important;
}
.module_input-field select[disabled='disabled'] + .error {
  display: none;
}
.module_input-field select:focus {
  border: 1px #00a1e9 solid !important;
  outline: solid 3px #00a1e9 !important;
}
.module_input-field textarea {
  padding: 0.4em 10px 0.4em;
  border: 1px #777 solid;
  font-size: 14px;
  font-size: 0.875rem;
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0;
  appearance: none;
  line-height: 2;
  outline: 0;
  width: 440px;
}
.module_input-field textarea:focus {
  border: 1px #00a1e9 solid !important;
  outline: solid 3px #00a1e9 !important;
}
.module_input-field fieldset {
  border: none;
  margin: 0;
  padding: 2px;
}
.module_input-field fieldset legend {
  background: url("../img/mode/common_parts04.png") no-repeat left 48%;
  margin-bottom: 2em;
  padding: 0 0 0 15px;
  font-weight: bold;
}
.module_input-field a {
  color: #777;
  display: inline;
  border-bottom: 1px solid transparent;
  -webkit-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
}
.module_input-field a:hover {
  border-bottom-color: #00afcc;
}
@media only screen and (max-width: 768px) {
  .module_input-field a:hover {
    border: none;
  }
}
.module_input-field a:after {
  background-color: #777;
}
.module_input-field table {
  width: 100%;
}
.module_input-field table tr {
  border-bottom: 1px #ddd solid;
}
.module_input-field table tr th, .module_input-field table tr td {
  padding: 1.4em 0;
  text-align: left;
  border: none;
  vertical-align: inherit;
}
.module_input-field table tr th {
  width: 226px;
  background: url("../img/mode/common_parts04.png") no-repeat left center;
  padding: 0 0 0 15px;
  background-color: transparent;
  white-space: inherit;
}
.module_input-field table tr th.require:after {
  display: inline-block;
  content: '必須';
  margin-left: 10px;
  font-size: 11px;
  font-size: 0.6875rem;
  color: #c41d1d;
  line-height: 14px;
  vertical-align: middle;
}
.module_input-field table tr th small {
  position: absolute;
  display: block;
  color: #777;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: normal;
}
.module_input-field table tr td label {
  margin-right: 18px;
}
.module_input-field table tr.error_tr {
  background-color: #ffeeee;
}
.module_input-field ul {
  margin: 0 0 -1.4em 0;
  padding: 0;
  letter-spacing: -.4em;
}
.module_input-field ul.error {
  border: none;
}
.module_input-field ul li {
  margin-right: 20px;
  margin-bottom: 1.4em;
  list-style: none;
  display: inline-block;
  letter-spacing: normal;
}
.module_input-field input[type="number"],
.module_input-field input[type="tel"] {
  width: 100px;
  margin-right: 10px;
}
.module_input-field input[type="number"] + input[type="number"], .module_input-field input[type="number"] + input[type="tel"],
.module_input-field input[type="tel"] + input[type="number"],
.module_input-field input[type="tel"] + input[type="tel"] {
  margin-left: 10px;
}
.module_input-field input[type="email"],
.module_input-field input[type="url"] {
  width: 100%;
}
.module_input-field input[name="age"] {
  width: 50px;
}
.module_input-field fieldset[name="address"] .item {
  margin-right: 0;
}
.module_input-field fieldset[name="address"] .item input[name="street"],
.module_input-field fieldset[name="address"] .item input[name="roomnumber"] {
  width: 340px;
}
.module_input-field .btn-group {
  margin: 4em 0;
  text-align: center;
}
.module_input-field .btn-group button[type=submit] {
  margin-bottom: 2em;
}
.module_input-field input[type="text"].error_elm,
.module_input-field input[type="email"].error_elm,
.module_input-field input[type="url"].error_elm,
.module_input-field input[type="tel"].error_elm,
.module_input-field input[type="password"].error_elm,
.module_input-field input[type="number"].error_elm,
.module_input-field textarea.error_elm,
.module_input-field select.error_elm {
  border: 1px #c41d1d solid;
  margin-bottom: 0.5em;
}
.module_input-field div.error {
  color: #c41d1d;
  font-size: 14px;
  font-size: 0.875rem;
  text-align: left;
  margin-top: .5em;
  margin-bottom: 0;
}
.module_input-field div.error p {
  margin-bottom: 0;
}
.module_input-field div.ok {
  margin-top: .75em;
  color: #9fc238;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  background: url("../img/mode/common_icon_ok.png") no-repeat left 1px;
  padding: .1em 0 .1em 20px;
  line-height: 14px;
}

@media only screen and (max-width: 768px) {
  .module_input-field input[type="text"],
  .module_input-field input[type="email"],
  .module_input-field input[type="tel"],
  .module_input-field input[type="password"],
  .module_input-field input[type="number"],
  .module_input-field textarea {
    padding: 0.4em 10px 0.4em;
    border: 1px #777 solid;
    font-size: 14px;
    font-size: 0.875rem;
    -webkit-appearance: none;
    appearance: none;
    border-radius: 0;
    appearance: none;
    line-height: 2;
    outline: 0;
    width: 50%;
  }
  .module_input-field input[type="text"]:focus,
  .module_input-field input[type="email"]:focus,
  .module_input-field input[type="tel"]:focus,
  .module_input-field input[type="password"]:focus,
  .module_input-field input[type="number"]:focus,
  .module_input-field textarea:focus {
    border: 1px #00a1e9 solid !important;
    outline: solid 3px #00a1e9 !important;
  }
  .module_input-field select {
    padding: 0.4em 10px 0.3em;
    border: 1px #777 solid;
    font-size: 14px;
    font-size: 0.875rem;
    background: url("../img/mode/common_parts-select-btn.png") no-repeat 95% center #fff;
    background-size: 12px auto;
    -webkit-appearance: none;
    appearance: none;
    border-radius: 0;
    -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
    -webkit-focus-ring-color: rgba(255, 255, 255, 0);
    -moz-tap-highlight-color: rgba(255, 255, 255, 0);
    -moz-focus-ring-color: rgba(255, 255, 255, 0);
    outline: 0;
    width: 100%;
    padding: 0.6em 25px 0.5em 10px !important;
  }
}
@media only screen and (max-width: 768px) and (max-width: 768px) {
  .module_input-field select {
    padding: 0.6em 10px 0.5em;
  }
}
@media only screen and (max-width: 768px) {
  .module_input-field table {
    margin: 0 -20px;
    width: -o-calc(100% + 40px);
    width: calc(100% + 40px);
  }
  .module_input-field table tr th, .module_input-field table tr td {
    display: block;
  }
  .module_input-field table tr th {
    width: 100%;
    padding: 1em 20px 1em 40px;
    background-position: 20px center;
  }
  .module_input-field table tr th small {
    position: relative;
    display: inline;
    font-size: 12px;
    font-size: 0.75rem;
  }
  .module_input-field table tr td {
    padding: 0 20px 1em;
  }
  .module_input-field table tr td label {
    margin-right: 18px;
  }
  .module_input-field ul {
    margin: 0 0 -1em 0;
    letter-spacing: normal;
  }
  .module_input-field ul li {
    margin-right: 0;
    display: block;
    letter-spacing: normal;
  }
  .module_input-field [name="tel"] .item,
  .module_input-field [name="fax"] .item {
    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;
  }
  .module_input-field input[type="number"],
  .module_input-field input[type="tel"] {
    width: auto;
    width: -o-calc(100% / 3);
    width: calc(100% / 3);
    margin-right: 5px;
  }
  .module_input-field input[type="number"] + input[type="number"], .module_input-field input[type="number"] + input[type="tel"],
  .module_input-field input[type="tel"] + input[type="number"],
  .module_input-field input[type="tel"] + input[type="tel"] {
    margin-left: 5px;
  }
  .module_input-field input[type="number"]:last-of-type,
  .module_input-field input[type="tel"]:last-of-type {
    margin-right: 5px;
  }
  .module_input-field input[type="email"] {
    width: 100%;
  }
  .module_input-field input[name="age"] {
    width: 100%;
  }
  .module_input-field .btn-group {
    margin: 1.5em 0;
  }
  .module_input-field div.ok {
    margin-top: .5em;
  }
}
.module_photo-gallery {
  margin: 40px 0;
  padding: 0;
  overflow: hidden;
}
.module_photo-gallery + .module_photo-gallery {
  margin-top: -40px !important;
}
.module_photo-gallery li {
  position: relative;
  float: left;
  margin: 0 30px 40px;
  list-style: none;
  overflow: hidden;
}
.module_photo-gallery li:before {
  display: none;
}
.module_photo-gallery li a {
  display: block;
  overflow: hidden;
}
.module_photo-gallery li a img {
  display: block;
  position: relative;
  border: solid 1px #c9c9c9;
  -webkit-transition: 0.6s;
  transition: 0.6s;
}
.module_photo-gallery li a:hover img {
  -webkit-transform: scale(1.025);
      -ms-transform: scale(1.025);
          transform: scale(1.025);
}
.module_photo-gallery li .caption {
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 200%;
  padding-top: 20px;
}
.module_photo-gallery li.js-scroll a,
.module_photo-gallery li.js-scroll .caption {
  opacity: 0;
  -webkit-transform: translateY(20px);
      -ms-transform: translateY(20px);
          transform: translateY(20px);
}
.module_photo-gallery li.js-scroll a {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.module_photo-gallery li.js-scroll .caption {
  -webkit-transition: 0.3s 0.3s;
  transition: 0.3s 0.3s;
}
.module_photo-gallery li.js-scroll--show a,
.module_photo-gallery li.js-scroll--show .caption {
  opacity: 1;
  -webkit-transform: inherit;
      -ms-transform: inherit;
          transform: inherit;
}
.module_photo-gallery.is_1column li {
  text-align: center;
  width: 960px;
  margin: 0 0 20px;
}
.module_photo-gallery.is_1column li > a {
  display: inline-block;
  width: auto;
}
.module_photo-gallery.is_1column li > a img {
  width: 100%;
}
.module_photo-gallery.is_2column {
  margin: 0;
}
.module_photo-gallery.is_2column li {
  width: 360px;
  height: auto;
  margin: 0;
}
.module_photo-gallery.is_2column li:nth-child(2n) {
  margin: 0 0 60px 86px;
}
.module_photo-gallery.is_2column li > a {
  width: 360px;
  height: 202px;
  margin-bottom: 0 !important;
}
.module_photo-gallery.is_3column {
  margin: 0 -30px;
}
.module_photo-gallery.is_3column li {
  width: 280px;
}
.module_photo-gallery.is_3column li a {
  display: table-cell;
  width: 280px;
  height: 280px;
  vertical-align: middle;
  text-align: center;
  background-color: #eee;
}
.module_photo-gallery.is_3column li a img {
  max-width: 280px;
  max-height: 280px;
  margin: 0 auto;
}

@media only screen and (max-width: 768px) {
  .module_photo-gallery {
    margin: 40px 0;
  }
  .module_photo-gallery + .module_photo-gallery {
    margin-top: 0 !important;
  }
  .module_photo-gallery li {
    float: none;
    width: 100%;
    width: -o-calc(100%);
    width: calc(100%);
    margin: 0 0 20px;
  }
  .module_photo-gallery li a img {
    width: 100%;
    max-width: inherit;
  }
  .module_photo-gallery.is_1column {
    margin: 40px 0 0;
  }
  .module_photo-gallery.is_1column li {
    width: 100%;
    width: -o-calc(100%);
    width: calc(100%);
    height: auto;
    margin: 0 0 5px;
  }
  .module_photo-gallery.is_1column li > a {
    width: 100%;
    height: auto;
  }
  .module_photo-gallery.is_2column {
    margin: 0 0 32px;
  }
  .module_photo-gallery.is_2column li {
    width: 100%;
    height: auto;
    margin: 0 0 32px;
  }
  .module_photo-gallery.is_2column li .caption {
    padding: 0;
  }
  .module_photo-gallery.is_2column li:nth-child(2n) {
    margin: 0;
  }
  .module_photo-gallery.is_2column li:last-child {
    margin: 0;
  }
  .module_photo-gallery.is_2column li > a {
    width: 100%;
    height: auto;
  }
  .module_photo-gallery.is_3column {
    margin: 0;
  }
  .module_photo-gallery.is_3column li {
    width: 100%;
    height: auto;
  }
  .module_photo-gallery.is_3column li a {
    display: block;
    width: 100%;
    height: auto;
  }
  .module_photo-gallery.is_3column li a img {
    width: 100%;
    max-width: inherit;
    max-height: inherit;
  }
}
.module_movie {
  margin-bottom: 2.5em;
  text-align: center;
}
.module_movie iframe {
  border: none;
}

@media only screen and (max-width: 768px) {
  .module_movie {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
  }
  .module_movie .fr-video {
    position: static !important;
  }
  .module_movie iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
  }
}
.clearfix .module_movie .fr-video {
  position: static !important;
}

.module_item-select {
  position: relative;
  padding: 60px 60px 20px;
  text-align: center;
}
.module_item-select fieldset {
  border: none;
  padding: 0;
}
.module_item-select fieldset legend {
  font-size: 15px;
  font-size: 0.9375rem;
  text-align: center;
  margin: 0 0 20px;
  font-weight: 700;
  line-height: 200%;
  color: #222;
}
.module_item-select fieldset ul {
  max-height: 230px;
  margin: 0 0 8px 0;
  padding: 0;
  text-align: center;
  overflow-y: auto;
}
.module_item-select fieldset ul li {
  display: inline-block;
  margin: 0 6px 12px;
  list-style: none;
  letter-spacing: normal;
}
.module_item-select fieldset ul li input[type="checkbox"] {
  display: none;
}
.module_item-select fieldset ul li input[type="checkbox"] + label {
  color: #1b1b1b;
  border: 1px #1b1b1b solid;
  border-radius: 4px;
  padding: 4px 12px;
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 200%;
  margin: 0;
}
.module_item-select fieldset ul li input[type="checkbox"]:checked + label {
  background-color: #1b1b1b;
  color: #fff;
}
.module_item-select fieldset ul li input[type="checkbox"] + label:before, .module_item-select fieldset ul li input[type="checkbox"] + label:after {
  display: none;
}
.module_item-select .reset {
  padding: 20px;
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 100%;
  border: none;
  background-color: transparent;
  color: #1b1b1b;
  display: block;
  margin: auto;
}
.module_item-select .close-modal {
  position: absolute;
  top: 20px;
  right: 20px;
  width: 30px;
  height: 30px;
  border: none;
  background: url("../img/mode/common_cross-red.svg") no-repeat;
}
.module_item-select.is_1column fieldset ul {
  max-height: 230px;
  overflow-y: scroll;
}
.module_item-select.is_1column fieldset ul li {
  display: block;
}
.module_item-select.is_1column fieldset ul li input + label {
  display: block;
  border: 1px solid #ddd;
  text-align: center;
  width: 460px;
  padding-top: 0.6em;
  padding-bottom: 0.6em;
  margin: 0 auto;
}
.module_item-select.is_1column fieldset ul li input + label:before, .module_item-select.is_1column fieldset ul li input + label:after {
  left: 50%;
}
.module_item-select.is_1column fieldset ul li input + label:before {
  margin-left: -35px;
}
.module_item-select.is_1column fieldset ul li input + label:after {
  margin-left: -31px;
}
.module_item-select.is_1column fieldset ul li input:checked + label {
  color: #c41d1d;
}
.module_item-select.is_field {
  text-align: center;
  padding: 20px 50px;
}
.module_item-select.is_field .title {
  font-size: 24px;
  font-size: 1.5rem;
  margin-bottom: 1.5em;
}
.module_item-select.is_field ul {
  list-style: none;
  padding: 0;
  margin: 0;
  overflow: hidden;
}
.module_item-select.is_field ul li {
  float: left;
  width: 22.5%;
  width: -o-calc(25% - 20px);
  width: calc(25% - 20px);
  margin: 0 10px 20px;
}
.module_item-select.is_field ul li a {
  display: block;
  color: #fff;
  font-size: 18px;
  font-size: 1.125rem;
  padding: 0.4em 0;
  background-color: #000;
}
.module_item-select.is_field ul li.all a {
  background-color: #e83929;
}
.module_item-select.is_field ul li.fashion a {
  background-color: #51b5c0;
}
.module_item-select.is_field ul li.fashion-business a {
  background-color: #f3704f;
}
.module_item-select.is_field ul li.stylist a {
  background-color: #db73bd;
}
.module_item-select.is_field ul li.make-hair a {
  background-color: #6683e8;
}
.module_item-select.is_field ul li.interior a {
  background-color: #a2cd40;
}
.module_item-select.is_field ul li.graphic a {
  background-color: #a86fd3;
}
.module_item-select.is_field ul li a:hover {
  opacity: 0.8;
  filter: alpha(opacity=80);
}

@media only screen and (max-width: 768px) {
  .module_item-select {
    padding: 62px 0 10px;
  }
  .module_item-select fieldset legend {
    margin-bottom: 20px;
    font-size: 20px;
    font-size: 1.25rem;
    color: #151515;
    line-height: 140%;
  }
  .module_item-select fieldset ul {
    max-height: 200px;
    margin: 0 -10px 1em;
  }
  .module_item-select fieldset ul li {
    margin: 0 5px 1em;
  }
  .module_item-select fieldset ul li input[type="checkbox"] + label {
    font-size: 12px;
    font-size: 0.75rem;
  }
  .module_item-select .btn.search {
    width: 80%;
    margin-top: 5px;
  }
  .module_item-select .reset {
    top: 0.6em;
    right: 0;
    font-size: 12px;
    font-size: 0.75rem;
    background: transparent;
    border: none;
  }
  .module_item-select .close-modal {
    top: 10px;
    right: 10px;
    width: 13px;
    height: 13px;
    padding: 0;
    border: none;
    background: url("../img/mode/common_cross-red.svg") no-repeat center;
  }
  .module_item-select.is_1column fieldset ul {
    height: 200px;
  }
  .module_item-select.is_1column fieldset ul li {
    margin-right: 30px;
    margin-bottom: 10px;
    margin-left: 30px;
  }
  .module_item-select.is_1column fieldset ul li input + label {
    text-align: left;
    width: 100%;
    padding-left: 45px;
  }
  .module_item-select.is_1column fieldset ul li input + label:before, .module_item-select.is_1column fieldset ul li input + label:after {
    left: 15px;
  }
  .module_item-select.is_1column fieldset ul li input + label:before {
    margin-left: 0;
  }
  .module_item-select.is_1column fieldset ul li input + label:after {
    left: 19px;
    margin-left: 0;
  }
  .module_item-select.is_1column fieldset ul li input:checked + label {
    color: #c41d1d;
  }
  .module_item-select.is_field {
    padding: 20px 0;
  }
  .module_item-select.is_field .title {
    font-size: 14px;
    font-size: 0.875rem;
    margin-bottom: 1em;
  }
  .module_item-select.is_field ul li {
    width: 46.2%;
    width: -o-calc(50% - 10px);
    width: calc(50% - 10px);
    margin: 0 5px 10px;
  }
  .module_item-select.is_field ul li a {
    font-size: 14px;
    font-size: 0.875rem;
    padding: 0.5em 0;
  }
}
.module_date-pick {
  position: relative;
  text-align: center;
  padding: 60px 60px 20px;
}
.module_date-pick .title {
  font-size: 15px;
  font-size: 0.9375rem;
  text-align: center;
  margin-bottom: 20px;
  font-weight: 700;
  line-height: 200%;
  color: #222;
}
.module_date-pick .ui-datepicker {
  width: 100% !important;
  overflow: hidden;
}
.module_date-pick .ui-datepicker-group {
  float: left;
  width: 300px;
  padding: 0px;
  margin-bottom: 2.5em;
}
.module_date-pick .ui-datepicker-group:nth-of-type(1) {
  margin: 0 60px 0 40px;
}
.module_date-pick .ui-datepicker-group:nth-of-type(2) {
  margin: 0 40px 0 60px;
}
.module_date-pick .ui-datepicker-header {
  position: relative;
}
.module_date-pick .ui-datepicker-header .ui-datepicker-prev,
.module_date-pick .ui-datepicker-header .ui-datepicker-next {
  position: absolute;
  top: 0;
  border: none;
  background: none;
  width: 30px;
  height: 30px;
  cursor: pointer;
}
.module_date-pick .ui-datepicker-header .ui-datepicker-prev:before,
.module_date-pick .ui-datepicker-header .ui-datepicker-next:before {
  position: absolute;
  content: "";
  width: 30px;
  height: 30px;
  background: url("../img/mode/common_icon_data-pick-right.svg") no-repeat;
}
.module_date-pick .ui-datepicker-header .ui-datepicker-prev span,
.module_date-pick .ui-datepicker-header .ui-datepicker-next span {
  display: none;
}
.module_date-pick .ui-datepicker-header .ui-datepicker-prev {
  left: 0;
}
.module_date-pick .ui-datepicker-header .ui-datepicker-prev:before {
  left: 15px;
  background: url("../img/mode/common_icon_data-pick-left.svg") no-repeat;
}
.module_date-pick .ui-datepicker-header .ui-datepicker-next {
  right: 0;
}
.module_date-pick .ui-datepicker-header .ui-datepicker-next:before {
  right: 15px;
  background-position: 0 0;
}
.module_date-pick .ui-datepicker-title {
  font-size: 15px;
  font-size: 0.9375rem;
  text-align: center;
  font-weight: bold;
  margin-bottom: 16px;
  line-height: 200%;
  color: #151515;
}
.module_date-pick .ui-datepicker-calendar {
  --color-saturday: #1788ff;
  --color-sunday: #fa2230;
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none;
  margin-bottom: 40px;
}
.module_date-pick .ui-datepicker-calendar thead tr {
  padding-bottom: 8px;
  border-bottom: solid 1px #c9c9c9;
}
.module_date-pick .ui-datepicker-calendar .ui-state-default {
  margin: 3px;
  display: block;
  border: 2px solid transparent;
}
.module_date-pick .ui-datepicker-calendar span.ui-state-default {
  opacity: 0.6;
}
.module_date-pick .ui-datepicker-calendar tr th,
.module_date-pick .ui-datepicker-calendar tr td {
  border: none;
  padding: 0;
}
.module_date-pick .ui-datepicker-calendar tr th {
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: normal;
  line-height: 200%;
  background-color: #fff;
}
.module_date-pick .ui-datepicker-calendar tr th:last-child {
  padding: 0;
}
.module_date-pick .ui-datepicker-calendar tr td {
  font-size: 15px;
  font-size: 0.9375rem;
  text-align: center;
}
.module_date-pick .ui-datepicker-calendar tr td.saturday span, .module_date-pick .ui-datepicker-calendar tr td.saturday a {
  color: var(--color-saturday);
}
.module_date-pick .ui-datepicker-calendar tr td.sunday span, .module_date-pick .ui-datepicker-calendar tr td.holiday span, .module_date-pick .ui-datepicker-calendar tr td.sunday a, .module_date-pick .ui-datepicker-calendar tr td.holiday a {
  color: var(--color-sunday);
}
.module_date-pick .ui-datepicker-calendar tr td a {
  color: #000;
  font-weight: bold;
  text-decoration: none;
  border-bottom: none;
}
.module_date-pick .ui-datepicker-calendar tr td.selected a {
  background-color: color-mix(in srgb, var(--color-school) 12%, white);
  border: 2px solid var(--color-school);
  border-radius: 3px;
}
.module_date-pick .reset {
  padding: 20px;
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 100%;
  border: none;
  background-color: transparent;
  color: #1b1b1b;
}
.module_date-pick .close-modal {
  position: absolute;
  top: 20px;
  right: 20px;
  width: 30px;
  height: 30px;
  border: none;
  background: url("../img/mode/common_cross-red.svg") no-repeat;
}

@media only screen and (max-width: 768px) {
  .module_date-pick {
    padding: 62px 0 0;
  }
  .module_date-pick .title {
    margin-bottom: 20px;
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 140%;
  }
  .module_date-pick .ui-datepicker-group {
    float: none;
    border: none;
    width: 100%;
    padding: 0 10px;
  }
  .module_date-pick .ui-datepicker-group:nth-of-type(1) {
    margin: 0 0 20px 0;
  }
  .module_date-pick .ui-datepicker-group:nth-of-type(2) {
    margin: 0 0 20px 0;
  }
  .module_date-pick .ui-datepicker-header .ui-datepicker-prev,
  .module_date-pick .ui-datepicker-header .ui-datepicker-next {
    top: 0;
  }
  .module_date-pick .ui-datepicker-header .ui-datepicker-prev {
    left: 0;
  }
  .module_date-pick .ui-datepicker-header .ui-datepicker-prev:before {
    left: 0;
  }
  .module_date-pick .ui-datepicker-header .ui-datepicker-next {
    right: 0;
  }
  .module_date-pick .ui-datepicker-header .ui-datepicker-next:before {
    right: 0;
  }
  .module_date-pick .ui-datepicker-title {
    font-size: 15px;
    font-size: 0.9375rem;
    line-height: 200%;
    margin-bottom: 8px;
  }
  .module_date-pick .close-modal {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 13px;
    height: 13px;
    padding: 0;
    border: none;
    background: url("../img/mode/common_cross-red.svg") no-repeat center;
  }
  .module_date-pick .ui-datepicker-calendar {
    margin-bottom: 0;
  }
  .module_date-pick .ui-datepicker-calendar thead th,
  .module_date-pick .ui-datepicker-calendar thead td {
    text-align: center;
  }
}
.ui-datepicker-inline {
  display: -ms-grid !important;
  display: grid !important;
  -ms-grid-columns: 1fr 1fr;
      grid-template-columns: 1fr 1fr;
  grid-column-gap: 90px;
  grid-row-gap: 30px;
  margin-bottom: 30px;
}

.ui-datepicker-row-break {
  display: none;
}

.ui-datepicker-header .ui-state-disabled {
  visibility: hidden;
}

.module_date-pick {
  padding: 60px 100px 20px 100px;
}

.module_date-pick .ui-datepicker-calendar {
  margin-bottom: 0;
}

@media only screen and (max-width: 768px) {
  .ui-datepicker-inline {
    -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
  }

  .module_date-pick {
    padding: 62px 0 0;
  }

  .ui-state-default {
    padding: 3px 0;
  }

  #ocTop #cboxContent .module_date-pick .btn.large.search {
    min-width: initial;
  }
}
.module_date-pick .ui-datepicker-group {
  width: 100%;
  float: none;
}

.module_date-pick .ui-datepicker-group:nth-of-type(1),
.module_date-pick .ui-datepicker-group:nth-of-type(2) {
  margin: 0;
}

.module_date-pick .ui-datepicker-calendar tr td.ui-datepicker-today a,
.module_date-pick .ui-datepicker-calendar tr td.ui-datepicker-today span {
  color: inherit;
  border: 2px dotted black;
}

.module_additional-info {
  display: table;
  width: 100%;
  margin-bottom: 2em;
}
.module_additional-info a {
  color: #000;
  text-decoration: underline;
}
.module_additional-info a:hover {
  text-decoration: none;
}
.module_additional-info [class*="heading"] {
  display: table-caption !important;
}
.module_additional-info .text {
  display: table-cell;
  vertical-align: top;
  width: -o-calc(100% - 120px);
  width: calc(100% - 120px);
  word-break: break-all;
}
.module_additional-info .text .title {
  font-size: 18px;
  font-size: 1.125rem;
  margin-bottom: .3em;
}
.module_additional-info .text .description {
  font-size: 12px;
  font-size: 0.75rem;
  text-align: justify;
  text-justify: inter-ideograph;
}
.module_additional-info .text .url {
  font-size: 12px;
  font-size: 0.75rem;
}
.module_additional-info .image {
  display: table-cell;
  vertical-align: top;
  width: 100px;
  padding-left: 20px;
}
.module_additional-info .image img {
  width: 100px;
  max-width: inherit;
  border-radius: 50%;
}

@media only screen and (max-width: 768px) {
  .module_additional-info .text .title {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.6;
  }
}
.module_search-function {
  position: relative;
  margin-bottom: 3.5em;
  padding: 1.5em 0;
  text-align: center;
}
.module_search-function h2 {
  margin-bottom: 2em;
  font-size: 18px;
  font-size: 1.125rem;
}
.module_search-function .btn-group {
  margin-bottom: 2em;
  letter-spacing: -.4em;
}
.module_search-function .btn-group .btn {
  min-width: 340px;
  margin: 0 9px;
  letter-spacing: normal;
  font-size: 18px;
  font-size: 1.125rem;
}
.module_search-function .btn-group .btn.selected {
  border: 0;
  color: #fff;
  background: url("../img/mode/common_arrow06.png") no-repeat 91% center #c41d1d;
  background-size: 8px auto;
  -webkit-box-shadow: 1px 1px 1px #ddd;
  box-shadow: 1px 1px 1px #ddd;
}
.module_search-function .btn-group .btn.selected:hover {
  background: url("../img/mode/common_arrow06.png") no-repeat 93% center #c41d1d;
  background-size: 8px auto;
}
.module_search-function .reset {
  position: absolute;
  top: 10px;
  right: 130px;
}
.module_search-function .reset a {
  font-size: 16px;
  font-size: 1rem;
}
.module_search-function .reset a:before {
  content: "×";
  padding-right: 0.2em;
}

@media only screen and (max-width: 768px) {
  .module_search-function {
    padding: .5em 0;
  }
  .module_search-function h2 {
    margin-bottom: 1em;
    font-size: 15px;
    font-size: 0.9375rem;
  }
  .module_search-function .btn-group {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    margin-bottom: 1em;
  }
  .module_search-function .btn-group .btn {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    min-width: inherit;
    margin: 0 5px;
    font-size: 16px;
    font-size: 1rem;
  }
  .module_search-function .reset {
    top: 0;
    right: 20px;
  }
  .module_search-function .reset a {
    font-size: 12px;
    font-size: 0.75rem;
  }
}
@media only screen and (min-device-width: 376px) and (max-device-width: 768px) {
  .module_search-function .reset a {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}
@media only screen and (min-device-width: 321px) and (max-device-width: 375px) {
  .module_search-function .reset a {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
.module_text-description {
  margin: 0;
  padding: 0;
  letter-spacing: -.4em;
}
.module_text-description li {
  display: inline-block;
  margin: 0 10px 2em;
  letter-spacing: normal;
  list-style: none;
  vertical-align: top;
  background-color: #fff;
  -webkit-box-shadow: black 0px 10px 15px -13px;
  box-shadow: black 0px 10px 15px -13px;
}
.module_text-description li .title {
  margin-bottom: 0;
  padding: 10px;
  background-color: #000;
  color: #fff;
  font-size: 18px;
  font-size: 1.125rem;
  text-align: center;
}
.module_text-description li .title .sub-title {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: normal;
  margin-left: 15px;
}
.module_text-description li .description {
  padding: 25px 40px;
  line-height: 1.7;
  color: #000;
}
.module_text-description.is_1column li {
  width: 100%;
}
.module_text-description.is_2column li {
  width: 47.96%;
  width: -o-calc(100% / 2 - 20px);
  width: calc(100% / 2 - 20px);
}
.module_text-description.is_3column li {
  width: 31.31%;
  width: -o-calc(100% / 3 - 20px);
  width: calc(100% / 3 - 20px);
}
.module_text-description.is_lead {
  letter-spacing: normal;
  text-align: center;
}
.module_text-description.is_lead .title {
  margin-bottom: .3em;
  font-size: 28px;
  font-size: 1.75rem;
  font-weight: bold;
}
.module_text-description.is_lead .description p {
  line-height: 1.8;
}
.module_text-description.is_lead .description p strong {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: normal;
}
.module_text-description.is_lead .description p:last-child {
  margin-bottom: 0;
}

@media only screen and (max-width: 768px) {
  .module_text-description {
    margin: 0 -10px;
    letter-spacing: normal;
  }
  .module_text-description li {
    display: block;
    margin: 0 0 2em;
  }
  .module_text-description li .title {
    font-size: 24px;
    font-size: 1.5rem;
  }
  .module_text-description li .title .sub-title {
    display: block;
    font-size: 12px;
    font-size: 0.75rem;
    margin-left: 0;
  }
  .module_text-description li .description {
    padding: 15px 20px;
  }
  .module_text-description.is_1column li {
    width: 100%;
  }
  .module_text-description.is_2column li {
    width: 100%;
  }
  .module_text-description.is_3column li {
    width: 100%;
  }
  .module_text-description.is_lead {
    padding: 0 20px;
    background-size: 90%;
  }
  .module_text-description.is_lead .title {
    font-size: 20px;
    font-size: 1.25rem;
  }
  .module_text-description.is_lead .description p {
    line-height: 1.7;
  }
  .module_text-description.is_lead .description p strong {
    font-size: 16px;
    font-size: 1rem;
  }
}
.module_column-box {
  margin: 0;
}
.module_column-box:after {
  content: "";
  clear: both;
  display: block;
}
.module_column-box .column-box {
  margin: 0;
}
.module_column-box .column-box strong {
  color: #c41d1d;
}
.module_column-box .column-box .heading2 {
  color: #000;
  font-size: 18px;
  font-size: 1.125rem;
}
.module_column-box .column-box .heading2:before {
  width: 60px;
  height: 2px;
  background-color: #000;
}
.module_column-box .column-box .heading8 {
  color: #000;
  margin-bottom: 0.5em;
}
.module_column-box .column-box .module_text-list {
  padding-bottom: 0;
  margin-bottom: 0;
}
.module_column-box .column-box .module_text-list li {
  margin-bottom: 0.5em;
}
.module_column-box .column-box .btn-group {
  text-align: center;
  margin-bottom: 1.5em;
}
.module_column-box .column-box ul {
  padding-left: 20px;
}
.module_column-box .column-box ul li {
  list-style: disc;
}
.module_column-box.is_2column .column-box {
  float: left;
  width: 46.9%;
  width: -o-calc(50% - 60px);
  width: calc(50% - 60px);
  margin: 0 30px 4em;
}
.module_column-box.is_2column .column-box:nth-child(odd) {
  clear: both;
}
.module_column-box.is_3column .column-box {
  float: left;
  width: 27.4%;
  width: -o-calc(33.333% - 60px);
  width: calc(33.333% - 60px);
  margin: 0 30px 4em;
}
.module_column-box.is_3column .column-box:nth-child(3n + 1) {
  clear: both;
}
.module_column-box.is_flow .column-box {
  position: relative;
  border-bottom: 1px solid #ddd;
}
.module_column-box.is_flow .column-box .inner {
  position: relative;
  height: 100%;
}
.module_column-box.is_flow .column-box .inner:after {
  content: "";
  position: absolute;
  top: 0;
  right: -30px;
  width: 1px;
  height: 93%;
  background-color: #ddd;
}
.module_column-box.is_flow .column-box:before {
  position: absolute;
  top: 0;
  right: 0;
  font-size: 90px;
  font-size: 5.625rem;
  font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  opacity: 0.3;
  filter: alpha(opacity=30);
  letter-spacing: -0.02em;
}
.module_column-box.is_flow .column-box:nth-of-type(1):before {
  content: "01";
}
.module_column-box.is_flow .column-box:nth-of-type(2):before {
  content: "02";
}
.module_column-box.is_flow .column-box:nth-of-type(3):before {
  content: "03";
}
.module_column-box.is_flow .column-box:nth-of-type(4):before {
  content: "04";
}
.module_column-box.is_flow .column-box:nth-of-type(5):before {
  content: "05";
}
.module_column-box.is_flow .column-box:nth-of-type(6):before {
  content: "06";
}
.module_column-box.is_flow .column-box:nth-of-type(7):before {
  content: "07";
}
.module_column-box.is_flow .column-box:nth-of-type(8):before {
  content: "08";
}
.module_column-box.is_flow .column-box:nth-last-of-type(1), .module_column-box.is_flow .column-box:nth-last-of-type(2) {
  border: none;
}
.module_column-box.is_flow .column-box:nth-last-of-type(odd) .inner:after {
  display: none;
}
.module_column-box.is_flow .title {
  font-size: 18px;
  font-size: 1.125rem;
  min-height: 95px;
  margin-bottom: 0;
}
.module_column-box.is_flow .title .year {
  position: relative;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  padding-left: 15px;
  margin-bottom: 0.3em;
}
.module_column-box.is_flow .title .year:before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 0;
  height: 0;
  border-top: 4px solid transparent;
  border-right: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 4px solid #777;
  content: "";
  -ms-transform: rotate(225deg);
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
}
.module_column-box.is_flow .description {
  font-weight: bold;
}
.module_column-box.is_flow dl dd {
  margin: 0 0 1.4em;
}
.module_column-box.is_design1 .column-box {
  font-size: 18px;
  font-size: 1.125rem;
  padding: 1.3em 40px;
  background-color: #f5f5f5;
}
.module_column-box.is_design1 .column-box .title {
  font-weight: bold;
  text-align: center;
  margin-bottom: 1.6em;
}
.module_column-box.is_design1 .column-box ul li {
  font-weight: bold;
  margin-bottom: 0;
}
.module_column-box.is_design1 .column-box .btn-group {
  float: right;
  padding-right: 15px;
  margin-bottom: 0;
  background: url(../img/mode/common_arrow01.png) no-repeat right center;
}
.module_column-box.is_design1 .column-box .btn-group a {
  display: inline;
  border-bottom: 1px solid transparent;
  -webkit-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
  color: #2aa53f;
  font-size: 14px;
  font-size: 0.875rem;
}
.module_column-box.is_design1 .column-box .btn-group a:hover {
  border-bottom-color: #00afcc;
}
@media only screen and (max-width: 768px) {
  .module_column-box.is_design1 .column-box .btn-group a:hover {
    border: none;
  }
}
.module_column-box.is_design1 .column-box .btn-group a:hover {
  border-bottom-color: #c41d1d;
}
.module_column-box .innter_2column_block {
  display: table;
  width: 100%;
}
.module_column-box .innter_2column {
  display: inline-block;
  vertical-align: top;
  width: 60%;
}
.module_column-box .innter_2column:first-of-type {
  padding-right: 20px;
  width: 40%;
}
.module_column-box .innter_2column img {
  max-width: 100%;
}

@media only screen and (max-width: 768px) {
  .module_column-box {
    margin: 0;
  }
  .module_column-box .column-box {
    margin: 0 0 2em;
  }
  .module_column-box.is_2column .column-box {
    float: none;
    width: 100%;
    width: -o-calc(100%);
    width: calc(100%);
    margin-right: 0;
    margin-left: 0;
  }
  .module_column-box.is_3column .column-box {
    float: none;
    width: 100%;
    width: -o-calc(100%);
    width: calc(100%);
    margin-right: 0;
    margin-left: 0;
  }
  .module_column-box.is_flow .column-box {
    padding-bottom: 1.5em;
    margin-bottom: 2.5em;
  }
  .module_column-box.is_flow .column-box .inner {
    height: auto;
  }
  .module_column-box.is_flow .column-box .inner:after {
    display: none;
  }
  .module_column-box.is_flow .column-box:before {
    top: 0;
    right: 0;
    font-size: 55px;
    font-size: 3.4375rem;
  }
  .module_column-box.is_flow .column-box:nth-last-of-type(1), .module_column-box.is_flow .column-box:nth-last-of-type(2) {
    border-bottom: 1px solid #ddd;
  }
  .module_column-box.is_flow .title {
    font-size: 16px;
    font-size: 1rem;
    min-height: inherit;
    margin-bottom: 0.5em;
  }
  .module_column-box.is_flow .title .year {
    font-size: 12px;
    font-size: 0.75rem;
    margin-bottom: 0.5em;
  }
  .module_column-box.is_flow .title .year:before {
    border-top: 4px solid transparent;
    border-right: 4px solid transparent;
    border-bottom: 4px solid transparent;
    border-left: 4px solid #777;
  }
  .module_column-box.is_flow .description {
    font-size: 12px;
    font-size: 0.75rem;
  }
  .module_column-box.is_flow dl {
    font-size: 12px;
    font-size: 0.75rem;
  }
  .module_column-box.is_flow dl dd {
    margin: 0 0 1.4em;
  }
  .module_column-box.is_design1 {
    margin: 0 -10px 0;
  }
  .module_column-box.is_design1 .column-box {
    font-size: 14px;
    font-size: 0.875rem;
    padding: 1.8em 20px;
    margin: 0 0 0.5em;
    overflow: hidden;
  }
  .module_column-box.is_design1 .column-box .title {
    margin-bottom: 1em;
  }
  .module_column-box.is_design1 .column-box .module_text-list {
    margin-bottom: 1em;
  }
}
.module_item-list {
  list-style: none;
  padding: 0;
  margin: 0 -16px;
}
.module_item-list:after {
  content: "";
  display: block;
  clear: both;
}
.module_item-list .item {
  position: relative;
  text-align: center;
  margin: 0 16px 2em;
  background-color: #fff;
  color: #000;
}
.module_item-list .item figure {
  display: block;
  border-bottom: 4px solid #000;
  min-height: 235px;
  margin-bottom: 0;
}
.module_item-list .item figure img {
  width: 100%;
  vertical-align: bottom;
}
.module_item-list .item .text {
  padding: 1.7em 20px 4em;
}
.module_item-list .item .sub-title {
  font-weight: bold;
  font-size: 16px;
  font-size: 1rem;
}
.module_item-list .item .sub-title br {
  display: none;
}
.module_item-list .item .title {
  font-size: 18.4px;
  font-size: 1.15rem;
}
.module_item-list .item .description {
  margin-bottom: 2em;
  font-weight: normal;
  font-size: 16px;
  font-size: 1rem;
}
.module_item-list .item .btn-group {
  position: absolute;
  bottom: 1.7em;
  left: 0;
  width: 100%;
}
.module_item-list .item .btn-group .btn {
  background-color: #fff;
}
.module_item-list .item.course_fashion figure {
  border-color: #51b5c0;
}
.module_item-list .item.course_fashion .sub-title, .module_item-list .item.course_fashion .title {
  color: #51b5c0;
}
.module_item-list .item.course_stylist figure {
  border-color: #db73bd;
}
.module_item-list .item.course_stylist .sub-title, .module_item-list .item.course_stylist .title {
  color: #db73bd;
}
.module_item-list .item.course_make-hair figure {
  border-color: #6683e8;
}
.module_item-list .item.course_make-hair .sub-title, .module_item-list .item.course_make-hair .title {
  color: #6683e8;
}
.module_item-list .item.course_interior figure {
  border-color: #a2cd40;
}
.module_item-list .item.course_interior .sub-title, .module_item-list .item.course_interior .title {
  color: #a2cd40;
}
.module_item-list .item.course_graphic figure {
  border-color: #a86fd3;
}
.module_item-list .item.course_graphic .sub-title, .module_item-list .item.course_graphic .title {
  color: #a86fd3;
}
.module_item-list .item.course_fashion_des figure {
  border-color: #26acad;
}
.module_item-list .item.course_fashion_des .sub-title, .module_item-list .item.course_fashion_des .title {
  color: #26acad;
}
.module_item-list .item.course_fashion_des_h figure {
  border-color: #f39800;
}
.module_item-list .item.course_fashion_des_h .sub-title, .module_item-list .item.course_fashion_des_h .title {
  color: #f39800;
}
.module_item-list .item.course_fashion_tec figure {
  border-color: #adbe34;
}
.module_item-list .item.course_fashion_tec .sub-title, .module_item-list .item.course_fashion_tec .title {
  color: #adbe34;
}
.module_item-list .item.course_fashion_biz figure {
  border-color: #44b7da;
}
.module_item-list .item.course_fashion_biz .sub-title, .module_item-list .item.course_fashion_biz .title {
  color: #44b7da;
}
.module_item-list .item.course_stylist_cur figure {
  border-color: #d769a6;
}
.module_item-list .item.course_stylist_cur .sub-title, .module_item-list .item.course_stylist_cur .title {
  color: #d769a6;
}
.module_item-list .item.course_interior_cur figure {
  border-color: #55a363;
}
.module_item-list .item.course_interior_cur .sub-title, .module_item-list .item.course_interior_cur .title {
  color: #55a363;
}
.module_item-list .item.course_graphic_cur figure {
  border-color: #41a2cf;
}
.module_item-list .item.course_graphic_cur .sub-title, .module_item-list .item.course_graphic_cur .title {
  color: #41a2cf;
}
.module_item-list .item.course_make figure {
  border-color: #df606d;
}
.module_item-list .item.course_make .sub-title, .module_item-list .item.course_make .title {
  color: #df606d;
}
.module_item-list .item.course_hair_make figure {
  border-color: #7b69ad;
}
.module_item-list .item.course_hair_make .sub-title, .module_item-list .item.course_hair_make .title {
  color: #7b69ad;
}
.module_item-list .item.course_beauty figure {
  border-color: #ed7ca9;
}
.module_item-list .item.course_beauty .sub-title, .module_item-list .item.course_beauty .title {
  color: #ed7ca9;
}
.module_item-list .item.course_basic figure {
  border-color: #ec664d;
}
.module_item-list .item.course_basic .sub-title, .module_item-list .item.course_basic .title {
  color: #ec664d;
}
.module_item-list .item.course_paris figure {
  border-color: #9aa19c;
}
.module_item-list .item.course_paris .sub-title, .module_item-list .item.course_paris .title {
  color: #9aa19c;
}
.module_item-list .item.course_saturday figure {
  border-color: #ef8a8d;
}
.module_item-list .item.course_saturday .sub-title, .module_item-list .item.course_saturday .title {
  color: #ef8a8d;
}
.module_item-list .item.course_professional figure {
  border-color: #4496d3;
}
.module_item-list .item.course_professional .sub-title, .module_item-list .item.course_professional .title {
  color: #4496d3;
}
.module_item-list .item.course_careerup figure {
  border-color: #e48848;
}
.module_item-list .item.course_careerup .sub-title, .module_item-list .item.course_careerup .title {
  color: #e48848;
}
.module_item-list .item.course_skillup figure {
  border-color: #cd6286;
}
.module_item-list .item.course_skillup .sub-title, .module_item-list .item.course_skillup .title {
  color: #cd6286;
}
.module_item-list .item.course_com_beauty figure {
  border-color: #71c6f2;
}
.module_item-list .item.course_com_beauty .sub-title, .module_item-list .item.course_com_beauty .title {
  color: #71c6f2;
}
.module_item-list .item.course_night figure {
  border-color: #a49c98;
}
.module_item-list .item.course_night .sub-title, .module_item-list .item.course_night .title {
  color: #a49c98;
}
.module_item-list .item.oc_fashion figure {
  border-color: #ee7738;
}
.module_item-list .item.oc_fashion .sub-title, .module_item-list .item.oc_fashion .title {
  color: #ee7738;
}
.module_item-list .item.oc_stylist figure {
  border-color: #6873bb;
}
.module_item-list .item.oc_stylist .sub-title, .module_item-list .item.oc_stylist .title {
  color: #6873bb;
}
.module_item-list .item.oc_make-hair1 figure {
  border-color: #eb78ac;
}
.module_item-list .item.oc_make-hair1 .sub-title, .module_item-list .item.oc_make-hair1 .title {
  color: #eb78ac;
}
.module_item-list .item.oc_make-hair2 figure {
  border-color: #eb6573;
}
.module_item-list .item.oc_make-hair2 .sub-title, .module_item-list .item.oc_make-hair2 .title {
  color: #eb6573;
}
.module_item-list .item.oc_make-hair3 figure {
  border-color: #845aa5;
}
.module_item-list .item.oc_make-hair3 .sub-title, .module_item-list .item.oc_make-hair3 .title {
  color: #845aa5;
}
.module_item-list .item.oc_interior figure {
  border-color: #55a363;
}
.module_item-list .item.oc_interior .sub-title, .module_item-list .item.oc_interior .title {
  color: #55a363;
}
.module_item-list .item.oc_graphic figure {
  border-color: #54abd4;
}
.module_item-list .item.oc_graphic .sub-title, .module_item-list .item.oc_graphic .title {
  color: #54abd4;
}
.module_item-list .item.oc_advantage figure {
  border-color: #d34755;
}
.module_item-list .item.oc_advantage .sub-title, .module_item-list .item.oc_advantage .title {
  color: #d34755;
}
.module_item-list.is_2column .item {
  float: left;
  width: 46.9%;
  width: -o-calc(50% - 32px);
  width: calc(50% - 32px);
}
.module_item-list.is_2column .item figure {
  width: 100%;
  height: auto;
}
.module_item-list.is_3column .item {
  float: left;
  width: 27.4%;
  width: -o-calc(100% / 3 - 32px);
  width: calc(100% / 3 - 32px);
}
.module_item-list.is_3column .item figure {
  width: 100%;
  height: auto;
}
.module_item-list.is_3column .slick-dots {
  margin-bottom: 3em;
  padding: 0;
  text-align: center;
  line-height: 1;
}
.module_item-list.is_3column .slick-dots li {
  display: inline-block;
  float: none;
  width: auto;
  margin: 0 5px !important;
}
.module_item-list.is_3column .slick-dots li button {
  position: relative;
  font-size: 0;
  line-height: 0;
  display: inline-block;
  width: 8px;
  height: 8px;
  padding: 12px;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: transparent;
  text-align: center;
}
.module_item-list.is_3column .slick-dots li button:before {
  position: absolute;
  top: 4px;
  left: 4px;
  line-height: 4px;
  width: 10px;
  height: 10px;
  content: '';
  border-radius: 10px;
  text-align: center;
  -webkit-font-smoothing: antialiased;
  border: 2px #000 solid;
}
.module_item-list.is_3column .slick-dots li.slick-active button:before {
  border: 2px #c41d1d solid;
  background-color: #c41d1d;
}

@media only screen and (max-width: 768px) {
  .module_item-list {
    margin: 0 -15px;
  }
  .module_item-list .item {
    margin: 0 5px .7em;
  }
  .module_item-list .item figure {
    min-height: inherit;
  }
  .module_item-list .item .text {
    padding: 10px 10px 4em;
  }
  .module_item-list .item .sub-title {
    font-size: 12px;
    font-size: 0.75rem;
  }
  .module_item-list .item .sub-title br {
    display: block;
  }
  .module_item-list .item .title {
    font-size: 14px;
    font-size: 0.875rem;
    margin-top: 1.2em;
  }
  .module_item-list .item .btn-group .small {
    min-width: inherit;
    padding: .5em 20px .5em;
  }
  .module_item-list.is_2column .item {
    width: 46.9%;
    width: -o-calc(50% - 10px);
    width: calc(50% - 10px);
  }
  .module_item-list.is_3column .item {
    width: 46.9%;
    width: -o-calc(50% - 10px);
    width: calc(50% - 10px);
  }
}
.module_text-banner {
  color: #fff;
  padding: 10px;
  margin-bottom: 2em;
  margin-top: 2em;
  background-color: #c41d1d;
}
.module_text-banner .inner-wrap {
  position: relative;
  padding: 2em 80px;
}
.module_text-banner h3 {
  font-weight: normal;
  margin: 0 300px 0 0;
  font-size: 29px;
  font-size: 1.8125rem;
}
.module_text-banner h3 strong {
  display: block;
  font-size: 36px;
  font-size: 2.25rem;
  font-weight: normal;
  padding: .3em 0 0;
}
.module_text-banner h3 + p {
  margin-top: 25px;
}
.module_text-banner p {
  margin-right: 300px;
  line-height: 1.6;
  font-size: 16px;
  font-size: 1rem;
}
.module_text-banner p a {
  color: #fff;
  text-decoration: underline !important;
}
.module_text-banner p a:hover {
  text-decoration: none !important;
}
.module_text-banner .date {
  margin-right: 300px;
}
.module_text-banner .notice-text {
  font-size: 13px;
  font-size: 0.8125rem;
}
.module_text-banner .btn-group {
  position: absolute;
  top: 50%;
  right: 70px;
  margin-top: -28px;
}
.module_text-banner .external {
  display: inline-block;
  padding-right: 16px;
  margin-right: 5px;
  background: url("../img/mode/common_icon_external4.png") no-repeat right center;
  background-size: auto 12px;
}

@media only screen and (max-width: 768px) {
  .module_text-banner {
    text-align: center;
    margin-bottom: 2em;
  }
  .module_text-banner .inner-wrap {
    padding: 1em 15px;
  }
  .module_text-banner h3 {
    font-size: 20px;
    font-size: 1.25rem;
    margin: 0 0 20px 0;
  }
  .module_text-banner h3 strong {
    display: block;
    font-size: 20px;
    font-size: 1.25rem;
    padding: .3em 0;
  }
  .module_text-banner p {
    margin-right: 0;
    font-size: 14px;
    font-size: 0.875rem;
    text-align: left;
  }
  .module_text-banner .date {
    font-size: 14px;
    font-size: 0.875rem;
    margin: 0 0 1em 0;
  }
  .module_text-banner .notice-text {
    font-size: 12px;
    font-size: 0.75rem;
    text-align: left;
  }
  .module_text-banner .btn-group {
    position: static;
    top: inherit;
    right: inherit;
    margin-top: 0;
  }
  .module_text-banner .btn-group .btn {
    width: 80%;
  }
}
.module_flow-list {
  list-style: none;
  padding: 0;
  margin: 0 30px 60px 75px;
}
.module_flow-list li {
  position: relative;
  border-left: 2px solid #c41d1d;
  padding: 30px 0 2px 60px;
  margin: 0;
}
.module_flow-list li p {
  margin-top: 30px;
}
.module_flow-list li:last-child {
  border: none;
}
.module_flow-list li li {
  border: none;
}
.module_flow-list li .step {
  position: absolute;
  top: 0;
  left: -45px;
  border-radius: 50%;
  color: #ff004d;
  text-align: center;
  width: 86px;
  height: 86px;
  background-color: #1b1b1b;
  font-weight: bold;
}
.module_flow-list li .step i {
  display: block;
  position: relative;
  width: 86px;
  height: 86px;
  padding: 21px 0 0;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 115%;
  font-style: normal;
}
.module_flow-list li .step .number {
  display: block;
  color: #fff;
  font-size: 24px;
  font-size: 1.5rem;
  line-height: 140%;
}
.module_flow-list li h4,
.module_flow-list li .title {
  font-size: 18px;
  font-size: 1.125rem;
  margin-bottom: 0.5em;
  position: relative;
}
.module_flow-list li h4 .year,
.module_flow-list li .title .year {
  position: absolute;
  top: -1.5em;
  left: 0;
  color: #2aa53f;
  font-size: 14px;
  font-size: 0.875rem;
}
.module_flow-list li.complete .step {
  background-color: #c41d1d;
}
.module_flow-list li.complete .step img {
  margin-top: 1em;
}
.module_flow-list li.complete .title {
  color: #c41d1d;
}

@media only screen and (max-width: 768px) {
  .module_flow-list {
    margin: 0 0 60px 45px;
  }
  .module_flow-list li {
    padding: 30px 0 32px 63px;
    min-height: 70px;
  }
  .module_flow-list li:last-child {
    border: none;
  }
  .module_flow-list li .step {
    left: -45px;
    font-size: 12px;
    font-size: 0.75rem;
    width: 86px;
    height: 86px;
  }
  .module_flow-list li .step i {
    width: 86px;
    height: 86px;
    padding: 21px 0 8px;
  }
  .module_flow-list li h4,
  .module_flow-list li .title {
    font-size: 16px;
    font-size: 1rem;
    margin-bottom: 0.2em;
  }
  .module_flow-list li h4 .year,
  .module_flow-list li .title .year {
    font-size: 12px;
    font-size: 0.75rem;
  }
  .module_flow-list li p {
    margin: 30px 0 32px;
  }
  .module_flow-list li p,
  .module_flow-list li .description {
    font-size: 12px;
    font-size: 0.75rem;
  }
  .module_flow-list li.complete .step img {
    margin-top: 0.8em;
    width: 30px;
  }
}
.module_table {
  background-color: #fff;
}
.module_table.headline td:first-child {
  background-color: #eee;
}
.module_table.headline_light td:first-child {
  background-color: #f5f5f5;
}
.module_table.alternate-rows-table tr:nth-child(even) {
  background-color: #f5f5f5;
}
.module_table.fix {
  table-layout: fixed;
}
.module_table.matrix_table {
  table-layout: fixed;
  vertical-align: middle;
}
.module_table.matrix_table thead th:first-child {
  width: 25% !important;
}
.module_table.matrix_table tr th {
  white-space: normal;
}
.module_table.schooling_table {
  table-layout: fixed;
  vertical-align: middle;
}
.module_table.schooling_table thead th:first-child {
  width: 25% !important;
}
.module_table.schooling_table tr th {
  white-space: normal;
}
.module_table .cell-light-gray {
  background-color: #f5f5f5;
}
.module_table .cell-gray {
  background-color: #eee;
}
.module_table.is_mobile.headline th {
  background-color: #ddd;
}
.module_table.is_mobile.headline_light thead th {
  background-color: #ddd;
}
.module_table.is_mobile.headline_light tbody th {
  background-color: #f5f5f5;
}
.module_table.is_mobile.headline_light tbody td {
  background-color: #fff;
}
.module_table.is_mobile.alternate-rows-table tr:nth-child(even) {
  background-color: #f5f5f5;
}
.module_table.is_mobile .cell-light-gray {
  background-color: #f5f5f5;
}
.module_table.is_mobile .cell-gray {
  background-color: #eee;
}
.module_table.is_mobile.mobile_headline_color th {
  background-color: #ddd;
}
.module_table.is_mobile.mobile_custom_headline_color th,
.module_table.is_mobile.mobile_custom_headline_color .headline {
  background-color: #ddd;
}
.module_table.is_mobile.mobile_custom_headline_color .sub_headline {
  background-color: #f5f5f5;
}
.module_table.is_mobile.column-box-table {
  background-color: transparent;
}
.module_table.is_mobile.column-box-table tr th,
.module_table.is_mobile.column-box-table tr td {
  border: none;
}
.module_table.cell_content_center td {
  text-align: center;
}
.module_table.cell_headline_left td:nth-of-type(1) {
  text-align: left;
}
.module_table.cell_all_center th,
.module_table.cell_all_center td {
  text-align: center;
}
.module_table .item {
  color: #c41d1d;
  font-weight: bold;
  text-align: center;
}
.module_table .nowrap {
  white-space: nowrap;
}
.module_table .center {
  text-align: center;
}
.module_table dl {
  margin-top: 0;
}
.module_table dl dt,
.module_table dl dd {
  padding: 0;
  margin: 0;
}
.module_table dl dd {
  margin-bottom: 1.5em;
}
.module_table .btn {
  white-space: nowrap;
  background-image: none !important;
}
.module_table.is_center {
  text-align: center;
}
.module_table.is_center th, .module_table.is_center td {
  text-align: center;
}
.module_table .list-2column {
  width: 100%;
}
.module_table .list-2column dt {
  display: inline-block;
  width: 20%;
  margin-right: 15px;
  vertical-align: top;
}
.module_table .list-2column dd {
  display: inline-block;
  width: calc(80% - 20px);
}

@media only screen and (max-width: 768px) {
  .module_table.matrix_table {
    font-size: 10px;
    font-size: 0.625rem;
  }
  .module_table.matrix_table thead tr th,
  .module_table.matrix_table tbody tr th {
    padding: 5px;
  }
  .module_table.schooling_table {
    font-size: 10px;
    font-size: 0.625rem;
  }
  .module_table.schooling_table thead tr th,
  .module_table.schooling_table tbody tr th {
    padding: 5px;
  }
  .module_table.schooling_table thead th {
    white-space: nowrap;
  }
  .module_table.schooling_table thead th:first-child {
    width: 18% !important;
  }
  .module_table.schooling_table tbody td {
    white-space: nowrap;
  }
  .module_table.is_mobile thead {
    display: none;
  }
  .module_table.is_mobile th, .module_table.is_mobile td {
    display: block;
    border: none;
    text-align: left;
    width: 100% !important;
  }
  .module_table.is_mobile th.cell-separator, .module_table.is_mobile td.cell-separator {
    border-bottom: 1px solid #eee;
    padding-bottom: 1.5em;
  }
  .module_table.is_mobile th.cell-separator + td, .module_table.is_mobile td.cell-separator + td {
    padding-top: 1.5em;
  }
  .module_table.is_mobile th::before, .module_table.is_mobile td::before {
    content: attr(data-before);
  }
  .module_table.is_mobile th::after, .module_table.is_mobile td::after {
    content: attr(data-after);
  }
  .module_table.is_mobile dl {
    margin-bottom: 0;
  }
  .module_table.is_mobile dl dd:last-of-type {
    margin-bottom: 0;
  }
  .module_table.is_mobile.headline th {
    background-color: transparent;
  }
  .module_table.is_mobile.headline_light tbody th {
    background-color: transparent;
  }
  .module_table.is_mobile.alternate-rows-table tr:nth-child(even) {
    background-color: transparent;
  }
  .module_table.is_mobile.left-label th {
    background-color: #f5f5f5;
    padding: 0.5em 10px;
    text-align: center;
  }
  .module_table.is_mobile.left-label th::before {
    content: attr(data-label);
    font-weight: bold;
    padding-right: 10px;
  }
  .module_table.is_mobile.left-label td::before {
    content: attr(data-label);
    font-weight: bold;
    padding-right: 10px;
  }
  .module_table.is_mobile.top-label th {
    background-color: #ddd;
    padding: 0.5em 10px;
    text-align: center;
  }
  .module_table.is_mobile.top-label th::before {
    content: attr(data-label);
    font-weight: bold;
    padding-right: 10px;
  }
  .module_table.is_mobile.top-label td::before {
    content: attr(data-label);
    font-weight: bold;
    padding-right: 10px;
    display: block;
  }
  .module_table.is_mobile .cell-light-gray {
    background-color: transparent;
  }
  .module_table.is_mobile .cell-gray {
    background-color: transparent;
  }
  .module_table.is_mobile.cell-border {
    border-top: 1px solid #bbb;
  }
  .module_table.is_mobile.cell-border td:last-child {
    border-bottom: 1px solid #bbb;
  }
  .module_table.is_mobile.row-bottom-border {
    border-right: 1px solid #bbb;
    border-left: 1px solid #bbb;
    border-top: 1px solid #bbb;
  }
  .module_table.is_mobile.row-bottom-border td {
    padding-bottom: 0;
  }
  .module_table.is_mobile.row-bottom-border td:last-child {
    border-bottom: 1px solid #bbb;
    padding-bottom: 0.7em;
  }
  .module_table.is_mobile.row-bottom-border td:nth-of-type(1) {
    padding-bottom: 0.7em;
  }
  .module_table.is_mobile.row-bottom-border .headline {
    border-bottom: 1px solid #bbb;
  }
  .module_table.is_mobile.row-bottom-border .sub_headline {
    padding-bottom: 0.7em;
    border-bottom: 1px solid #bbb;
  }
  .module_table.is_mobile .any-cell-border {
    border-bottom: 1px solid #bbb;
  }
  .module_table.is_mobile.mobile_cell_border {
    border-top: 1px solid #bbb;
    border-right: 1px solid #bbb;
    border-left: 1px solid #bbb;
  }
  .module_table.is_mobile.mobile_cell_border td {
    border-bottom: 1px solid #bbb;
  }
  .module_table.is_mobile.mobile_headline_color th {
    background-color: #777;
    color: #fff;
    padding: 0.7em 10px;
  }
  .module_table.is_mobile.mobile_headline_color th strong {
    color: #fff;
  }
  .module_table.is_mobile.mobile_headline_color td:nth-of-type(1) {
    background-color: #ddd;
    font-weight: bold;
  }
  .module_table.is_mobile.mobile_custom_headline_color th,
  .module_table.is_mobile.mobile_custom_headline_color .headline {
    background-color: #777;
    color: #fff;
    padding: 0.7em 10px;
  }
  .module_table.is_mobile.mobile_custom_headline_color th strong,
  .module_table.is_mobile.mobile_custom_headline_color .headline strong {
    color: #fff;
  }
  .module_table.is_mobile.mobile_custom_headline_color .sub_headline {
    background-color: #ddd;
    font-weight: bold;
  }
  .module_table.is_mobile.column-box-table tr th,
  .module_table.is_mobile.column-box-table tr td {
    padding-top: 0;
    padding-bottom: 0;
  }
  .module_table.is_mobile.column-box-table .module_text-list {
    margin-bottom: 0;
  }
  .module_table.is_mobile.cell_content_center td {
    text-align: left;
  }
  .module_table.is_mobile.title_new_line th::before,
  .module_table.is_mobile.title_new_line td::before {
    display: block;
  }
  .module_table.is_mobile.title_new_line th::after,
  .module_table.is_mobile.title_new_line td::after {
    display: block;
  }
  .module_table .list-2column dt {
    width: 40%;
  }
  .module_table .list-2column dd {
    width: calc(60% - 20px);
  }
}
.module_introduction-list {
  list-style: none;
  padding: 0;
  margin: 0 -16px;
  overflow: hidden;
}
.module_introduction-list .item {
  text-align: center;
  padding: 2.5em 30px;
  margin: 0 16px 2em;
  background-color: #fff;
}
.module_introduction-list .item figure {
  display: block;
  margin-bottom: 1.5em;
}
.module_introduction-list .item figure img {
  border-radius: 50%;
  vertical-align: bottom;
}
.module_introduction-list .item .title {
  font-size: 16px;
  font-size: 1rem;
  font-weight: bold;
  margin-bottom: 1em;
}
.module_introduction-list .item .sub-title {
  font-size: 14px;
  font-size: 0.875rem;
  margin-bottom: 1em;
}
.module_introduction-list .item p {
  text-align: left;
  margin-bottom: 0;
}
.module_introduction-list .item > a {
  display: block;
  color: #000;
  padding: 2.5em 30px;
  margin: -2.5em -30px;
}
.module_introduction-list .item > a:hover figure img {
  -webkit-transition: all .3s;
  transition: all .3s;
  opacity: 0.7;
  filter: alpha(opacity=70);
}
.module_introduction-list.is_1column .item figure {
  vertical-align: top;
  display: table-cell;
  padding: 0 20px 1em 0;
}
.module_introduction-list.is_1column .item .title-group {
  display: table-cell;
  text-align: left;
  vertical-align: bottom;
}
.module_introduction-list.is_2column .item {
  border: 2px solid #eee;
  float: left;
  width: 46.9%;
  width: -o-calc(50% - 32px);
  width: calc(50% - 32px);
  padding: 1.5em 20px;
}
.module_introduction-list.is_2column .item figure {
  vertical-align: top;
  display: table-cell;
  padding: 0 20px 1em 0;
}
.module_introduction-list.is_2column .item .title-group {
  display: table-cell;
  text-align: left;
  vertical-align: bottom;
}
.module_introduction-list.is_2column .item .title {
  font-size: 18px;
  font-size: 1.125rem;
}
.module_introduction-list.is_3column .item {
  float: left;
  width: 27.4%;
  width: -o-calc(33.333% - 32px);
  width: calc(33.333% - 32px);
}
.module_introduction-list.is_3column .item figure img {
  max-width: 100px;
  height: auto;
}
.module_introduction-list.is_3column .item .description span {
  color: #00afcc;
}
.module_introduction-list.is_3column .item.hover:hover {
  color: #fff;
  background-color: #c41d1d;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.module_introduction-list.is_3column .item.hover:hover a {
  -webkit-transition: all 0s;
  transition: all 0s;
  color: #fff;
}
.module_introduction-list.is_3column .item.hover:hover a:hover figure img {
  opacity: 1;
  filter: alpha(opacity=100);
}
.module_introduction-list.is_center {
  text-align: center;
  vertical-align: top;
}
.module_introduction-list.is_center .item {
  display: inline-block;
  float: none;
  vertical-align: top;
  width: -o-calc(100% / 3 - 36px);
  width: calc(100% / 3 - 36px);
  padding: 0;
  background-color: transparent;
}

@media only screen and (max-width: 768px) {
  .module_introduction-list {
    margin: 0 -10px;
  }
  .module_introduction-list .item {
    width: 100%;
    width: -o-calc(100%);
    width: calc(100%);
    padding: .8em 12px;
    margin: 0 0 .7em;
  }
  .module_introduction-list .item .title {
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 1.5;
  }
  .module_introduction-list .item .sub-title {
    font-size: 12px;
    font-size: 0.75rem;
    line-height: 1.5;
  }
  .module_introduction-list .item > a {
    display: table;
    padding: .8em 12px;
    margin: -.8em -12px;
  }
  .module_introduction-list.is_1column .item {
    padding: 2em 15px;
  }
  .module_introduction-list.is_1column .item figure {
    display: block;
    text-align: center;
    padding: 0;
    margin-bottom: 0.8em;
  }
  .module_introduction-list.is_1column .item figure img {
    width: 55%;
  }
  .module_introduction-list.is_1column .item .title-group {
    display: block;
    text-align: center;
  }
  .module_introduction-list.is_2column .item {
    float: none;
    width: 100%;
    width: -o-calc(100%);
    width: calc(100%);
    padding: 1.5em 20px;
  }
  .module_introduction-list.is_2column .item figure {
    display: block;
    text-align: center;
    padding: 0;
    margin-bottom: 0.8em;
  }
  .module_introduction-list.is_2column .item .title-group {
    display: block;
    text-align: center;
  }
  .module_introduction-list.is_2column .item .title {
    font-size: 14px;
    font-size: 0.875rem;
    margin-bottom: 0.5em;
  }
  .module_introduction-list.is_2column .item p {
    font-size: 12px;
    font-size: 0.75rem;
  }
  .module_introduction-list.is_3column .item {
    display: block;
    float: none;
    width: 100%;
    padding: 10px;
    width: -o-calc(100%);
    width: calc(100%);
    overflow: hidden;
  }
  .module_introduction-list.is_3column .item a {
    display: block;
  }
  .module_introduction-list.is_3column .item figure {
    display: inline-block;
    vertical-align: middle;
    width: 28%;
    padding-right: 5%;
    margin-bottom: 0;
  }
  .module_introduction-list.is_3column .item .title-group {
    width: 67%;
    display: inline-block;
    vertical-align: middle;
    text-align: left;
  }
  .module_introduction-list.is_3column .item .title,
  .module_introduction-list.is_3column .item .sub-title {
    font-size: 12px;
    font-size: 0.75rem;
    margin-bottom: 0;
    line-height: 1.5;
  }
  .module_introduction-list.is_3column .item .description {
    display: block;
    font-size: 12px;
    font-size: 0.75rem;
    padding-top: 1em;
  }
  .module_introduction-list.is_3column .item:hover {
    background-color: #fff;
  }
  .module_introduction-list.is_3column .item:hover a {
    color: #000;
  }
  .module_introduction-list.is_3column .item.hover .title-group {
    background: url(../img/mode/common_arrow02.png) no-repeat right center;
  }
  .module_introduction-list.is_center {
    text-align: left;
    margin: 0;
  }
  .module_introduction-list.is_center .item {
    border-bottom: 1px solid #ddd;
    display: block;
    width: -o-calc(100%);
    width: calc(100%);
    padding-bottom: 1.5em;
    margin-bottom: 1.5em;
  }
  .module_introduction-list.is_center .item figure img {
    width: 90%;
  }
  .module_introduction-list.is_center .item .title-group .title {
    margin-bottom: 0.5em;
  }
  .module_introduction-list.is_center .item .title-group .sub-title {
    font-size: 10px;
    font-size: 0.625rem;
  }
}
.module_definition-info dl,
.module_definition-info dt,
.module_definition-info dd {
  padding: 0;
  margin: 0;
  color: #151515;
}
.module_definition-info dl {
  overflow: auto;
}
.module_definition-info dl dt {
  font-weight: bold;
  float: left;
  clear: both;
  width: 87px;
  border: solid 1px #1b1b1b;
  line-height: 1.4;
  padding: 6px 0;
  text-align: center;
  margin: 0 20px 32px 0;
}
.module_definition-info dl dd {
  line-height: 2;
  padding: 2px 0;
  margin-bottom: 32px;
}
.module_definition-info dl dd a {
  margin-top: 8px;
  padding-right: 20px;
  position: relative;
}
.module_definition-info dl dd a:before {
  content: "";
  position: absolute;
  height: 12px;
  width: 12px;
  right: 0;
  top: 50%;
  background: url("../img/mode/common-right-arrow3.svg") no-repeat;
  -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%);
}
.module_definition-info .btn-group {
  text-align: center;
  margin: 0 auto 60px;
  width: 394px;
}

@media only screen and (max-width: 768px) {
  .module_definition-info dl dt {
    float: none;
    margin: 0 0 8px;
  }
  .module_definition-info dl dd {
    margin-bottom: 32px;
    padding: 0;
  }
  .module_definition-info .btn-group {
    padding-bottom: 0;
    width: 257px;
  }
  .module_definition-info .btn-group .btn {
    margin: 0 auto;
  }
}
.module_separate-block .block {
  padding: 0 35px;
  margin-bottom: 2em;
}
.module_separate-block .block p {
  margin-bottom: 0;
}

@media only screen and (max-width: 768px) {
  .module_separate-block .block {
    padding: 0;
    margin-bottom: 1.5em;
  }
}
@media only screen and (max-width: 768px) {
  .module_contents-open {
    position: relative;
    height: 110px;
    overflow: hidden;
  }
  .module_contents-open .button {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 80px;
    content: '';
  }
  .module_contents-open .button:before {
    display: block;
    position: absolute;
    bottom: 15px;
    left: 50%;
    font-size: 11px;
    font-size: 0.6875rem;
    font-weight: bold;
    letter-spacing: .15em;
    text-align: center;
    padding-right: 16px;
    margin-left: -33px;
    cursor: pointer;
    z-index: 100;
  }
  .module_contents-open .button.open {
    background: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2YxZjFmMSIgc3RvcC1vcGFjaXR5PSIwLjAiLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmZmZmZmYiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSJ1cmwoI2dyYWQpIiAvPjwvc3ZnPiA=');
    background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, rgba(241, 241, 241, 0)), color-stop(100%, #ffffff));
    background: -webkit-linear-gradient(rgba(241, 241, 241, 0), #ffffff);
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(241, 241, 241, 0)), to(#ffffff));
    background: linear-gradient(rgba(241, 241, 241, 0), #ffffff);
  }
  .module_contents-open .button.open:before {
    color: #c41d1d;
    background: url(../img/mode/common_arrow09.png) no-repeat right center;
    background-size: 13px auto;
    content: "もっと読む";
  }
  .module_contents-open .button.close:before {
    color: #000;
    background: url(../img/mode/common_icon_close.png) no-repeat right center;
    background-size: 10px auto;
    content: "閉じる";
  }
}
.module_map {
  width: 100%;
  height: 400px;
  border: none;
  pointer-events: none;
}

@media only screen and (max-width: 768px) {
  .module_map {
    height: 300px;
  }
}
.module_guide-link {
  list-style: none;
  margin: 0 -7px;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.module_guide-link li {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  margin: 0 7px;
}
.module_guide-link li a {
  position: relative;
  display: block;
  color: #c41d1d;
  font-size: 16px;
  font-size: 1rem;
  font-weight: bold;
  padding: 1em 0;
  background: url("../img/mode/common_arrow07.png") no-repeat 91% center #f5f5f5;
  background-size: 8px auto;
}
.module_guide-link li a:hover {
  background: url("../img/mode/common_arrow07.png") no-repeat 93% center #f5f5f5;
  background-size: 8px auto;
}
.module_guide-link li a span:before {
  display: inline-block;
  content: "";
  position: relative;
  vertical-align: middle;
  width: 44px;
  height: 35px;
  margin-right: 10px;
  background: url("../img/mode/common_icon_course-guide.png") no-repeat 0 0;
  background-size: 100% auto;
}
.module_guide-link li.guidelines a span:before {
  background-position: 0 -8px;
}
.module_guide-link li.tuition a span:before {
  background-position: 0 -48px;
}
.module_guide-link li.support a span:before {
  background-position: 0 -91px;
}

@media only screen and (max-width: 768px) {
  .module_guide-link {
    display: block;
    margin: 0;
  }
  .module_guide-link li {
    display: block;
    width: 100%;
    width: -o-calc(100%);
    width: calc(100%);
    margin: 0 0 1em;
  }
  .module_guide-link li:last-child {
    margin-bottom: 0;
  }
  .module_guide-link li a {
    font-size: 12px;
    font-size: 0.75rem;
    padding: 1.3em 0;
  }
  .module_guide-link li a span:before {
    display: block;
    position: absolute;
    top: 50%;
    left: 9px;
    width: 40px;
    height: 34px;
    margin-right: 0;
    margin-top: -17px;
    background: url("../img/mode/common_icon_course-guide.png") no-repeat 0 0;
    background-size: 100% auto;
  }
  .module_guide-link li.guidelines a span:before {
    background-position: 0 -6px;
  }
  .module_guide-link li.tuition a span:before {
    background-position: 0 -42px;
  }
  .module_guide-link li.support a span:before {
    background-position: 0 -80px;
  }
}
.module_visual-slider {
  position: relative;
  text-align: center;
  padding-bottom: calc(100% * 420 / 1440);
}
.module_visual-slider .slider {
  display: block;
}
.module_visual-slider .slider > .item:not(:first-child) {
  display: none;
}
.module_visual-slider .item {
  width: 100%;
  background: no-repeat center top;
}
.module_visual-slider .item img {
  width: 100%;
}
.module_visual-slider .slick-dots {
  position: absolute;
  bottom: 40px;
  left: 50%;
  list-style: none;
  height: 0;
  padding: 0;
  margin: 0 0 0 -560px;
}
.module_visual-slider .slick-dots li {
  display: inline-block;
}
.module_visual-slider .slick-dots li button {
  position: relative;
  font-size: 0;
  line-height: 0;
  display: inline-block;
  width: 8px;
  height: 8px;
  padding: 12px;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: transparent;
  text-align: center;
}
.module_visual-slider .slick-dots li button:before {
  position: absolute;
  top: 6px;
  left: 6px;
  line-height: 6px;
  width: 8px;
  height: 8px;
  content: "";
  border-radius: 8px;
  text-align: center;
  -webkit-font-smoothing: antialiased;
  border: 2px #ddd solid;
  background-color: #fff;
}
.module_visual-slider .slick-dots li.slick-active button:before {
  border: 2px #c41d1d solid;
  background-color: #c41d1d;
}

@media only screen and (max-width: 768px) {
  .module_visual-slider {
    height: auto;
    margin: 0;
  }
  .module_visual-slider .item {
    width: auto;
    height: auto;
    background: none;
  }
  .module_visual-slider .item img {
    display: block;
    width: 100%;
  }
  .module_visual-slider .slick-dots {
    position: absolute;
    bottom: 40px;
    left: 10px;
    height: 0;
    padding: 0;
    margin: 0;
  }
  .module_visual-slider .slick-dots li button {
    width: 4px;
    height: 4px;
    padding: 8px;
  }
  .module_visual-slider .slick-dots li button:before {
    width: 4px;
    height: 4px;
    border-radius: 4px;
  }
}
.module_heading-image {
  position: relative;
}
.module_heading-image .title {
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  position: absolute;
  color: #fff;
  font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  font-size: 30px;
  font-size: 1.875rem;
  line-height: 1.5;
  text-align: center;
  width: 100%;
}
.module_heading-image .title strong {
  display: block;
  font-size: 80px;
  font-size: 5rem;
  line-height: 1;
}
.module_heading-image img {
  width: 100%;
}
.module_heading-image.is_left .title {
  left: 50%;
  text-align: left;
  width: 1216px;
  margin-left: -560px;
}

@media only screen and (max-width: 768px) {
  .module_heading-image .title {
    font-size: 25px;
    font-size: 1.5625rem;
    font-weight: bold;
  }
  .module_heading-image .title strong {
    font-size: 75px;
    font-size: 4.6875rem;
    font-weight: normal;
  }
  .module_heading-image.is_left .title {
    top: inherit;
    bottom: 5%;
    left: 0;
    width: auto;
    margin-left: 0;
    font-size: 18px;
    font-size: 1.125rem;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
  .module_heading-image.is_left .title strong {
    font-size: 40px;
    font-size: 2.5rem;
  }
}
.module_contents-navi {
  background-color: #fff;
}
.module_contents-navi .title {
  color: #fff;
  font-size: 18px;
  font-size: 1.125rem;
  text-align: center;
  padding: 1.4em 0;
  margin-bottom: 2em;
  background-color: #c41d1d;
}
.module_contents-navi .wrap {
  overflow: hidden;
}
.module_contents-navi .sub-title {
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  color: #000;
}
.module_contents-navi .sub-title a {
  color: #c41d1d;
  display: inline;
  border-bottom: 1px solid transparent;
  -webkit-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
}
.module_contents-navi .sub-title a:hover {
  border-bottom-color: #00afcc;
}
@media only screen and (max-width: 768px) {
  .module_contents-navi .sub-title a:hover {
    border: none;
  }
}
.module_contents-navi .sub-title a:hover {
  border-bottom-color: #c41d1d;
}
.module_contents-navi ul {
  list-style: none;
  border-bottom: 1px solid #eee;
  padding: 0 0 0.8em;
  margin: 0 0 2.2em;
  overflow: hidden;
}
.module_contents-navi ul:last-child {
  border-bottom: none;
}
.module_contents-navi ul li {
  float: left;
  width: 33.333%;
  width: -o-calc(100% / 3);
  width: calc(100% / 3);
  margin: 0 0 1.3em;
}
.module_contents-navi ul li a {
  color: #c41d1d;
  display: inline;
  border-bottom: 1px solid transparent;
  -webkit-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
  padding-left: 15px;
  background: url(../img/mode/common_arrow02.png) no-repeat left center;
  background-size: 5px auto;
}
.module_contents-navi ul li a:hover {
  border-bottom-color: #00afcc;
}
@media only screen and (max-width: 768px) {
  .module_contents-navi ul li a:hover {
    border: none;
  }
}
.module_contents-navi ul li a span {
  color: #af0082;
  font-weight: bold;
  font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  margin-left: 8px;
}
.module_contents-navi ul li a:hover {
  border-bottom-color: #c41d1d;
}
.module_contents-navi.is_2column li {
  width: 50%;
  width: -o-calc(100% / 2);
  width: calc(100% / 2);
}
.module_contents-navi.is_3column li {
  width: 33.333%;
  width: -o-calc(100% / 3);
  width: calc(100% / 3);
}
.module_contents-navi.is_3column li:nth-child(3n + 1) {
  clear: both;
}
.module_contents-navi.is_3column li ul {
  margin-top: 1.3em;
}
.module_contents-navi.is_3column li ul li {
  width: 100%;
}
.module_contents-navi.is_3column li ul li a {
  background: none;
}
.module_contents-navi.is_3column li ul li a:before {
  content: "∟";
  color: #000;
  margin-right: 10px;
}
.module_contents-navi.is_4column li {
  width: 25%;
  width: -o-calc(100% / 4);
  width: calc(100% / 4);
}
.module_contents-navi.is_mobile .wrap {
  padding-top: 2em;
}

@media only screen and (max-width: 768px) {
  .module_contents-navi .title {
    position: relative;
    border-bottom: 1px solid #fff;
    font-size: 14px;
    font-size: 0.875rem;
    text-align: left;
    padding: 2.5em 0 2.5em 20px;
    margin: 0;
  }
  .module_contents-navi .title:after {
    content: "×";
    position: absolute;
    top: 50%;
    right: 20px;
    margin-top: -0.7em;
  }
  .module_contents-navi .title.open:after {
    content: "＋";
  }
  .module_contents-navi .wrap {
    display: block;
    padding-top: 2em;
  }
  .module_contents-navi .sub-title {
    margin-bottom: 1.8em;
  }
  .module_contents-navi ul {
    padding: 0 0 0.2em;
    margin: 0 0 2.2em;
  }
  .module_contents-navi ul:last-child {
    margin-bottom: 0;
  }
  .module_contents-navi ul li {
    float: none;
    width: 100%;
    width: -o-calc(100%);
    width: calc(100%);
    margin: 0 0 1.8em;
  }
  .module_contents-navi ul li a {
    display: block;
    padding-left: 0;
    background: url(../img/mode/common_arrow02.png) no-repeat right 0.3em;
    background-size: 5px auto;
  }
  .module_contents-navi.is_2column li {
    width: 100%;
    width: -o-calc(100%);
    width: calc(100%);
  }
  .module_contents-navi.is_3column li {
    width: 100%;
    width: -o-calc(100%);
    width: calc(100%);
  }
  .module_contents-navi.is_4column li {
    width: 100%;
    width: -o-calc(100%);
    width: calc(100%);
  }
  .module_contents-navi.is_mobile .title:after {
    display: none;
  }
  .module_contents-navi.is_mobile .wrap {
    display: block;
  }
}
.module_qa {
  margin-bottom: 7em;
  padding: 0;
  font-size: 14px;
  font-size: 0.875rem;
}
.module_qa .toggle-wrap {
  display: table;
  width: 100%;
  list-style: none;
}
.module_qa .toggle-wrap:first-child {
  border-top: 1px #ddd solid;
}
.module_qa .toggle-wrap.open {
  background-color: #f5f5f5;
  border-bottom: 1px #ddd solid;
}
.module_qa .toggle-wrap .toggle-button,
.module_qa .toggle-wrap .toggle-body {
  position: relative;
  display: table;
  width: 100%;
}
.module_qa .toggle-wrap .toggle-button .cap,
.module_qa .toggle-wrap .toggle-body .cap {
  display: table-cell;
  width: 60px;
  padding: 25px 0;
  text-align: center;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: bold;
  vertical-align: middle;
}
.module_qa .toggle-wrap .toggle-button {
  margin-bottom: 0;
  font-size: 14px;
  font-size: 0.875rem;
  border-bottom: 1px #ddd solid;
  cursor: pointer;
}
.module_qa .toggle-wrap .toggle-button .cap {
  background-color: #c41d1d;
  color: #fff;
}
.module_qa .toggle-wrap .toggle-button:after {
  position: absolute;
  right: 20px;
  top: 50%;
  margin-top: -6px;
  display: block;
  content: '';
  width: 6px;
  height: 12px;
  background: url("../img/mode/common_arrow02.png") no-repeat;
  background-size: 6px;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
.module_qa .toggle-wrap .toggle-button span {
  display: table-cell;
  vertical-align: middle;
  padding: 15px 40px 15px 50px;
}
.module_qa .toggle-wrap.open .toggle-button:after {
  -webkit-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  transform: rotate(-90deg);
}
.module_qa .toggle-wrap .toggle-body-wrap {
  display: none;
}
.module_qa .toggle-wrap .toggle-body {
  padding: 25px 0;
}
.module_qa .toggle-wrap .toggle-body .cap {
  color: #c41d1d;
}
.module_qa .toggle-wrap .toggle-body .title {
  margin-bottom: 1em;
}
.module_qa .toggle-wrap .toggle-body .answer {
  padding: 0 40px 0 50px;
}
.module_qa .toggle-wrap .toggle-body .answer p:last-of-type {
  margin-bottom: 0;
}

@media only screen and (max-width: 768px) {
  .module_qa {
    margin-bottom: 3em;
    font-size: 13px;
    font-size: 0.8125rem;
  }
  .module_qa .toggle-wrap .toggle-button:before,
  .module_qa .toggle-wrap .toggle-body:before {
    width: 50px;
    padding: 18px 0;
    font-size: 20px;
    font-size: 1.25rem;
  }
  .module_qa .toggle-wrap .toggle-button {
    font-size: 13px;
    font-size: 0.8125rem;
  }
  .module_qa .toggle-wrap .toggle-button:after {
    position: absolute;
    right: 15px;
  }
  .module_qa .toggle-wrap .toggle-button span {
    padding: 15px 30px 15px 15px;
  }
  .module_qa .toggle-wrap .toggle-body {
    padding: 18px 0;
  }
  .module_qa .toggle-wrap .toggle-body .answer {
    padding: 0 30px 0 15px;
  }
}
.module_announcement {
  padding-top: 1.3em;
  background-color: #eee;
  overflow: hidden;
}
.module_announcement .title {
  float: left;
  color: #c41d1d;
  font-weight: bold;
  width: 20%;
}
.module_announcement .announce {
  margin-left: 20%;
  margin-bottom: 1.3em;
  overflow: hidden;
}
.module_announcement .announce a {
  color: #c41d1d;
  text-decoration: underline;
}

@media only screen and (max-width: 768px) {
  .module_announcement {
    font-size: 11px;
    font-size: 0.6875rem;
    padding-top: 1em;
  }
  .module_announcement .title {
    float: none;
    text-align: center;
    width: auto;
  }
  .module_announcement .announce {
    margin-left: 0;
    margin-bottom: 1em;
  }
}
.module_introduction-text {
  text-align: center;
  margin-bottom: 4em;
}
.module_introduction-text .title {
  font-size: 24px;
  font-size: 1.5rem;
  margin-bottom: .7em;
}

@media only screen and (max-width: 768px) {
  .module_introduction-text {
    text-align: left;
    margin: -1em 0 2em;
  }
  .module_introduction-text .title {
    font-size: 14px;
    font-size: 0.875rem;
  }
  .module_introduction-text .title br {
    display: none;
  }
  .module_introduction-text p {
    font-size: 12px;
    font-size: 0.75rem;
  }
}
.module_outline-list dt {
  border-bottom: 2px solid #777;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: bold;
  text-align: left;
  padding-bottom: 0.1em;
  margin-bottom: 0.5em;
  min-height: 43.8px;
}
.module_outline-list dt .code {
  color: #000;
  font-size: 20px;
  font-size: 1.25rem;
  font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  font-weight: normal;
  padding: 0 15px 0 20px;
}
.module_outline-list dt .code:after {
  position: relative;
  bottom: -0.1em;
  content: "/";
  color: #777;
  font-size: 32px;
  font-size: 2rem;
  margin-left: 15px;
}
.module_outline-list dd {
  display: block;
  margin: 0 0 3em;
}
.module_outline-list dd:last-child {
  margin-bottom: 6em;
}
.module_outline-list dd .block {
  border-bottom: 1px solid #ddd;
  padding-bottom: 0.5em;
  margin-bottom: 0.5em;
}
.module_outline-list dd .block span {
  display: block;
  padding: 0.5em 0;
}
.module_outline-list dd .block .item {
  float: left;
  color: #777;
  width: 220px;
}
.module_outline-list dd .block .content {
  margin-left: 220px;
  overflow: hidden;
}
.module_outline-list dd .group {
  border-bottom: 1px solid #ddd;
  margin-bottom: 0.5em;
  overflow: hidden;
}
.module_outline-list dd .group .block {
  border: none;
  float: left;
  width: 50%;
  padding-bottom: 0;
}
.module_outline-list dd .group .block:first-of-type {
  border-right: 1px solid #ddd;
}
.module_outline-list dd .group .block:last-of-type {
  padding-left: 20px;
}

@media only screen and (max-width: 768px) {
  .module_outline-list dt {
    font-size: 14px;
    font-size: 0.875rem;
    padding-bottom: 0.1em;
    margin-bottom: 0.5em;
  }
  .module_outline-list dt .code {
    font-size: 16px;
    font-size: 1rem;
    padding: 0 5px 0 5px;
  }
  .module_outline-list dt .code:after {
    font-size: 20px;
    font-size: 1.25rem;
    margin-left: 5px;
  }
  .module_outline-list dd {
    display: block;
    margin: 0 0 3em;
  }
  .module_outline-list dd:last-child {
    margin-bottom: 3em;
  }
  .module_outline-list dd .block {
    border-bottom: 1px solid #ddd;
    padding-bottom: 0.5em;
    margin-bottom: 0;
  }
  .module_outline-list dd .block span {
    padding: 0.5em 0;
  }
  .module_outline-list dd .block .item {
    float: none;
    width: 100%;
    padding-bottom: 0;
  }
  .module_outline-list dd .block .content {
    padding-bottom: 0;
    margin-left: 0;
  }
  .module_outline-list dd .block:last-of-type {
    border-bottom: none;
  }
  .module_outline-list dd .group {
    border: 0;
    margin-bottom: 0;
    overflow: hidden;
  }
  .module_outline-list dd .group .block {
    border-bottom: 1px solid #ddd;
    float: none;
    width: 100%;
    padding-bottom: 0;
  }
  .module_outline-list dd .group .block:first-of-type {
    border-right: none;
  }
  .module_outline-list dd .group .block:last-of-type {
    padding-left: 0;
  }
  .module_outline-list dd .group .block .item {
    float: left;
    width: 30%;
    padding-bottom: 0.5em;
  }
  .module_outline-list dd .group .block .content {
    margin-left: 30%;
    padding-bottom: 0.5em;
  }
}
.module_text-link-list {
  margin-top: 5em;
  margin-bottom: 8em;
}
.module_text-link-list .list-item {
  margin-bottom: 3.5em;
}
.module_text-link-list .list-item:hover .title {
  border-bottom-color: #00afcc;
}
.module_text-link-list .list-item .title {
  display: inline-block;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: normal;
  margin-bottom: .75em;
  border-bottom: 1px solid transparent;
  -webkit-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
}
.module_text-link-list .list-item .title:after {
  background-color: #00afcc;
}
.module_text-link-list .list-item .description {
  color: #000;
}

@media only screen and (max-width: 768px) {
  .module_text-link-list {
    margin-top: 0;
    margin-bottom: 4em;
  }
  .module_text-link-list .list-item {
    margin-bottom: 3em;
  }
  .module_text-link-list .list-item:hover .title {
    border: none;
  }
  .module_text-link-list .list-item .title {
    font-size: 14px;
    font-size: 0.875rem;
    border: none;
  }
  .module_text-link-list .list-item .title:after {
    display: none;
  }
  .module_text-link-list .list-item .title a {
    text-decoration: underline;
  }
  .module_text-link-list .list-item .title a:hover {
    text-decoration: underline;
  }
  .module_text-link-list .list-item .description {
    font-size: 12px;
    font-size: 0.75rem;
  }
}
.module_anchor-navi {
  margin-bottom: 3em;
  overflow: hidden;
}
.module_anchor-navi .contents-inner {
  width: auto;
  border-bottom: 1px #eee solid;
  background-color: #fff;
  margin: 0 auto;
  padding: 14px 0;
}
.module_anchor-navi ul {
  position: relative;
  padding: 0;
  overflow: hidden;
}
.module_anchor-navi ul li {
  float: left;
  list-style: none;
  margin-right: 30px;
  margin-bottom: .5em;
}
.module_anchor-navi ul li a {
  position: relative;
  display: inline-block;
  padding: 0 0 0 18px;
  vertical-align: middle;
}
.module_anchor-navi ul li a:before, .module_anchor-navi ul li a:after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: '';
  vertical-align: middle;
}
.module_anchor-navi ul li a:before {
  left: 3px;
  top: -4px;
  width: 6px;
  height: 6px;
  border-top: 1px solid #777;
  border-right: 1px solid #777;
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
      transform: rotate(135deg);
}

@media only screen and (max-width: 768px) {
  .module_anchor-navi {
    margin-bottom: 2em;
    margin-right: -20px;
    margin-left: -20px;
    padding: 0 20px;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    z-index: 1000;
    white-space: nowrap;
  }
  .module_anchor-navi .contents-inner {
    padding: 14px 20px;
  }
  .module_anchor-navi ul {
    display: inline-table;
  }
  .module_anchor-navi ul li {
    display: table-cell;
    float: none;
    padding-right: 30px;
    margin-right: 0;
    margin-bottom: 0;
  }
  .module_anchor-navi ul li:last-child {
    padding-right: 0;
  }
}
#external-link-banner {
  background-color: #fff;
  overflow: hidden;
}
#external-link-banner .module_banner-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: 40px auto;
}
#external-link-banner .module_banner-list .item img {
  height: 40px;
  object-fit: contain;
}
#external-link-banner .module_banner-list .item img:hover {
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
}
#external-link-banner .module_banner-list::after {
  content: none;
}

@media only screen and (max-width: 768px) {
  #external-link-banner .module_banner-list {
    display: block;
    margin: 20px 40px;
  }
  #external-link-banner .module_banner-list ul {
    width: 100%;
    padding: 0;
    margin: 0;
  }
  #external-link-banner .module_banner-list .item {
    display: block;
    float: none;
    width: auto;
    margin: 0;
  }
  #external-link-banner .module_banner-list .item img {
    width: auto;
    height: 24px;
  }
  #external-link-banner .module_banner-list .upper {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 0 40px 20px;
  }
  #external-link-banner .module_banner-list .upper .item:nth-child(2) {
    margin-left: 30px;
  }
  #external-link-banner .module_banner-list .lower {
    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;
  }
}
#status-info {
  padding: 15px;
  background: #fff;
  height: auto;
  width: 100%;
  text-align: center;
  border: 4px solid #333333;
}
#status-info p,
#status-info a {
  margin: 0;
  color: #151515;
  line-height: 1.4;
  font-size: 15px;
  font-size: 0.9375rem;
}
#status-info p {
  font-weight: bold;
  line-height: 2;
  letter-spacing: 2%;
}
#status-info a {
  cursor: pointer;
}

@media only screen and (max-width: 768px) {
  #status-info {
    height: auto;
    width: 100%;
  }
}
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

html {
  --color-school: #ff004d;
}

body {
  position: relative;
  min-width: 1280px;
  background: #fff;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  font-size: 15px;
  font-size: 0.9375rem;
  color: #000;
  letter-spacing: 0.01em;
}

@media all and (-ms-high-contrast: none) {
  body {
    display: table;
    width: 100%;
    height: 100%;
    table-layout: fixed;
  }
}
a {
  color: #00afcc;
  border-bottom: none;
  text-decoration: none;
  -webkit-transition: 0.15s ease-out;
  transition: 0.15s ease-out;
}

p {
  line-height: 2;
  margin: 0 0 1.4em 0;
}
p.lead {
  margin-bottom: 4em;
}

img {
  vertical-align: bottom;
  object-fit: cover;
}

ol li {
  margin-bottom: 0.5em;
}

li {
  list-style: none;
}

table {
  width: 100%;
  margin-bottom: 1.5em;
}
table tr th,
table tr td {
  border: 1px solid #bbb;
  vertical-align: middle;
  line-height: 2;
  padding: 1.5em 20px;
}
table tr th a,
table tr td a {
  display: inline;
  border-bottom: 1px solid transparent;
  -webkit-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
}
table tr th a:hover,
table tr td a:hover {
  border-bottom-color: #00afcc;
}
@media only screen and (max-width: 768px) {
  table tr th a:hover,
  table tr td a:hover {
    border: none;
  }
}
table tr th {
  padding: 1em 20px;
  background-color: #ddd;
}
table thead th {
  vertical-align: middle;
  text-align: center;
}
table thead td {
  padding: 1em 20px;
  background-color: #ddd;
  vertical-align: middle;
}
table tbody {
  text-align: left;
}
table tbody tr th {
  padding: 1.5em 20px;
  background-color: transparent;
}

figure.left {
  float: left;
  margin: 0 40px 40px 0;
}
figure.right {
  float: right;
  margin: 0 0 40px 40px;
}

hr {
  border: none;
  border-bottom: 1px #ddd solid;
  margin: 2em 0;
}

.sp {
  display: none;
}

@media only screen and (max-width: 768px) {
  .pc {
    display: none;
  }

  .sp {
    display: block;
  }
}
.notice {
  margin-bottom: 0 !important;
  padding: 0;
}
.notice li {
  font-size: 12px;
  font-size: 0.75rem;
  color: #777;
  list-style: none;
  margin-bottom: 0.2em !important;
}
.notice li:before {
  display: inline-block;
  content: "※";
  margin-right: 5px;
}

.notice-text {
  font-size: 10px;
  font-size: 0.625rem;
  line-height: 1.4;
}

.back {
  margin-bottom: 2em;
}
.back a,
.back span {
  color: #c41d1d;
}
.back a:before,
.back span:before {
  display: inline-block;
  content: "";
  width: 6px;
  height: 12px;
  margin-right: 18px;
  background: url("../img/mode/common_arrow07.png") no-repeat left center;
  background-size: 6px;
  -ms-transform: scaleX(-1);
  -webkit-transform: scaleX(-1);
  transform: scaleX(-1);
}
.back a:after,
.back span:after {
  background-color: #c41d1d;
}

.white-text-link {
  color: #fff;
  text-decoration: underline !important;
}

.white-text-link:hover {
  text-decoration: none !important;
}

.underline {
  background-image: -webkit-linear-gradient(rgba(0, 0, 0, 0) calc(100% - 1px), #000000 10px);
  background-image: linear-gradient(rgba(0, 0, 0, 0) calc(100% - 1px), #000000 10px);
  background-repeat: no-repeat;
  background-size: 0% 100%;
  -webkit-transition: background-size 200ms;
  transition: background-size 200ms;
}

.loader,
.loader:before,
.loader:after {
  border-radius: 50%;
}

.loader:before,
.loader:after {
  position: absolute;
  content: "";
}

.loader:before {
  width: 2.6em;
  height: 5.2em;
  background: #c41d1d;
  border-radius: 5.1em 0 0 5.1em;
  top: -0.1em;
  left: -0.1em;
  -webkit-transform-origin: 5.2em 5.1em;
  -ms-transform-origin: 2.6em 2.6em;
      transform-origin: 2.6em 2.6em;
  -webkit-animation: load2 2s infinite ease 1.5s;
  animation: load2 2s infinite ease 1.5s;
}

.loader {
  color: #fff;
  font-size: 10px;
  text-indent: -99999em;
  margin: 2em auto;
  position: relative;
  width: 5em;
  height: 5em;
  -webkit-box-shadow: inset 0 0 0 0.7em;
          box-shadow: inset 0 0 0 0.7em;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
}

.loader:after {
  width: 2.6em;
  height: 5.2em;
  background: #c41d1d;
  border-radius: 0 5.1em 5.1em 0;
  top: -0.1em;
  left: 2.6em;
  -webkit-transform-origin: 0px 5.1em;
  -ms-transform-origin: 0px 2.5em;
      transform-origin: 0px 2.5em;
  -webkit-animation: load2 2s infinite ease;
  animation: load2 2s infinite ease;
}

@-webkit-keyframes load2 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes load2 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@media only screen and (max-width: 768px) {
  .loader {
    -ms-transform: scale(0.5, 0.5);
    -webkit-transform: scale(0.5, 0.5);
    transform: scale(0.5, 0.5);
    margin: 0 auto;
  }
}
@media only screen and (max-width: 768px) {
  body {
    min-width: inherit;
    overflow-x: hidden;
  }

  p {
    line-height: 1.8;
  }
  p.lead {
    margin-bottom: 2em;
  }

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

  table tr th,
  table tr td {
    border: 1px solid #bbb;
    line-height: 1.6;
    padding: 0.7em;
  }
  table tr th {
    white-space: normal;
  }
  table thead th {
    text-align: left;
  }
  table tbody tr th {
    background-color: transparent;
  }

  figure.left {
    float: none;
    margin: 0 0 20px 0;
  }
  figure.right {
    float: none;
    margin: 0 0 20px 0;
  }
  figure img {
    width: 100%;
  }
}
.select-school {
  margin: -20px;
}
.select-school .module_banner-list {
  padding: 20px;
  margin-top: 0;
  margin-bottom: 0;
  background-color: #d9d9d9;
}
.select-school .module_banner-list .item span {
  text-align: left;
  padding-top: 30px;
  padding-bottom: 30px;
}

@media only screen and (max-width: 768px) {
  .select-school {
    margin: -10px;
  }
  .select-school .module_banner-list {
    padding: 10px 10px 0;
  }
  .select-school .module_banner-list .item {
    margin-bottom: 10px;
  }
  .select-school .module_banner-list .item span {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .select-school .module_banner-list .item span img {
    max-width: 70% !important;
  }
}
#breadcrumbs {
  background-color: #fff;
}

section {
  margin-bottom: 3em;
}

.site-inner {
  position: relative;
  width: 960px;
  margin-right: auto;
  margin-left: auto;
  width: 1120px;
}
.site-inner:after {
  content: '';
  clear: both;
  display: block;
}
@media only screen and (max-width: 768px) {
  .site-inner {
    width: 100%;
  }
}

.contents-inner {
  position: relative;
  width: 960px;
  margin-right: auto;
  margin-left: auto;
}
.contents-inner:after {
  content: '';
  clear: both;
  display: block;
}
@media only screen and (max-width: 768px) {
  .contents-inner {
    width: 100%;
  }
}

.contents-panel {
  width: 960px;
  padding: 3em 0 1.5em;
  margin: 0 auto 3.5em;
  background-color: #fff;
}

.modal-content {
  display: none;
}

@media only screen and (max-width: 768px) {
  #breadcrumbs {
    display: none;
  }

  section {
    margin-bottom: 2em;
  }

  .site-inner {
    width: 100%;
    padding-right: 20px;
    padding-left: 20px;
  }

  .contents-inner {
    width: 100%;
    padding: 0 20px;
  }

  .contents-panel {
    width: auto;
    padding: 20px 10px 0;
    margin: 0 10px 2em;
    overflow: hidden;
  }
}
h1,
h2,
h3,
h4,
h5,
h6 {
  margin-top: 0;
}

.heading1 {
  margin-bottom: 0.8em;
  padding-left: 40px;
  background: url("../img/mode/common_arrow10.png") no-repeat left center;
  font-size: 40px;
  font-size: 2.5rem;
  font-weight: normal;
}

.heading2 {
  margin-top: 2em;
  margin-bottom: 1.2em;
  font-size: 24px;
  font-size: 1.5rem;
  text-align: center;
  color: #c41d1d;
}
.heading2:before {
  display: block;
  content: "";
  width: 80px;
  height: 4px;
  background-color: #c41d1d;
  margin: 0 auto 0.75em;
}

.heading3 {
  padding-left: 20px;
  font-size: 14px;
  font-size: 0.875rem;
  color: #c41d1d;
  background: url("../img/mode/common_parts02.png") no-repeat left 3px;
  margin: 2em 0 1em;
}

.heading4 {
  margin: 1.8em 0 1em 1em;
  font-size: 24px;
  font-size: 1.5rem;
  color: #c41d1d;
  text-indent: -1.75em;
}
.heading4:before {
  display: inline-block;
  content: "";
  width: 30px;
  height: 18px;
  margin-right: 10px;
  background-color: #c41d1d;
}

.heading5 {
  display: inline-block;
  position: relative;
  padding: 0 6px 0;
  border-left: 1px solid #c41d1d;
  border-right: 1px solid #c41d1d;
  font-size: 16px;
  font-size: 1rem;
  font-weight: bold;
  color: #c41d1d;
}
.heading5:before, .heading5:after {
  position: absolute;
  top: 0;
  width: 6px;
  height: 1px;
  background-color: #c41d1d;
  content: "";
}
.heading5:before {
  left: 0;
}
.heading5:after {
  right: 0;
}
.heading5 span {
  display: inline-block;
  padding: 0 8px 0;
}
.heading5 span:before, .heading5 span:after {
  position: absolute;
  bottom: 0;
  width: 6px;
  height: 1px;
  background-color: #c41d1d;
  content: "";
}
.heading5 span:before {
  left: 0;
}
.heading5 span:after {
  right: 0;
}

.heading6 {
  color: #c41d1d;
  font-size: 24px;
  font-size: 1.5rem;
}

.heading7 {
  margin-bottom: 20px;
  color: #151515;
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 140%;
  font-weight: 600;
}

.heading8 {
  margin-bottom: 1.25em;
  color: #c41d1d;
  font-weight: bold;
  font-size: 18px;
  font-size: 1.125rem;
  text-align: center;
}

.heading9 {
  border-top: 2px solid #c41d1d;
  border-bottom: 2px solid #c41d1d;
  color: #c41d1d;
  font-weight: bold;
  line-height: 1.6;
  font-size: 20px;
  font-size: 1.25rem;
  text-align: center;
  margin: 4em auto 0.7em;
  padding: 0.65em 0 !important;
  margin-top: 2em;
  margin-bottom: 1.5em;
}
.heading9.short {
  max-width: 390px;
}

.heading10 {
  color: #c41d1d;
  font-weight: normal;
  font-size: 18px;
  font-size: 1.125rem;
  text-align: center;
  margin: 3em 0 0.4em;
  padding: 0.35em 0;
  background-color: #eee;
  line-height: 1.6;
}
.heading10.short {
  max-width: 390px;
  padding-right: 15px;
  padding-left: 15px;
}

.heading11 {
  color: #fff;
  font-weight: normal;
  font-size: 18px;
  font-size: 1.125rem;
  text-align: center;
  margin: 3em 0 0.4em;
  padding: 0.35em 0;
  background-color: #c41d1d;
  line-height: 1.6;
}
.heading11.short {
  max-width: 390px;
  padding-right: 15px;
  padding-left: 15px;
}

.heading12 {
  margin-top: 3em;
  margin-bottom: 1.2em;
  color: #c41d1d;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: normal;
  text-align: center;
}
.heading12:after {
  display: block;
  content: "";
  width: 40px;
  height: 2px;
  background-color: #c41d1d;
  margin: 0.25em auto 0;
}

.heading13 {
  margin-bottom: 0;
  color: #fff;
  text-align: center;
  font-size: 23.2px;
  font-size: 1.45rem;
  font-weight: normal;
}
.heading13 span {
  font-size: 20px;
  font-size: 1.25rem;
}
.heading13:before {
  display: block;
  content: "";
  width: 80px;
  height: 2px;
  margin: 0 auto 0.25em;
  background-color: #fff;
}

.heading14 {
  margin-bottom: 0.7em;
  color: #c41d1d;
  font-size: 18px;
  font-size: 1.125rem;
}

.heading15 {
  margin-top: 1.5em;
  margin-bottom: 1.5em;
  font-size: 18px;
  font-size: 1.125rem;
  text-align: center;
  color: #c41d1d;
}
.heading15:before {
  display: block;
  content: "";
  width: 60px;
  height: 2px;
  background-color: #c41d1d;
  margin: 0 auto 0.75em;
}

.heading16 {
  margin-bottom: 0.7em;
  color: #000;
  font-size: 17px;
  font-size: 1.0625rem;
  text-align: center;
}

.heading17 {
  margin-bottom: 0.25em;
  font-size: 14px;
  font-size: 0.875rem;
}

.heading18 {
  position: relative;
  font-size: 18px;
  font-size: 1.125rem;
  width: 310px;
  text-align: center;
  padding: 0.5em 0 0;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 0.8em;
}
.heading18:before, .heading18:after {
  position: absolute;
  display: block;
  width: 15px;
  height: 3px;
  background-color: #000;
  content: "";
}
.heading18:before {
  top: 0;
  left: 0;
}
.heading18:after {
  top: 7px;
  left: -7px;
  -ms-transform: rotate(-90deg);
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
}
.heading18 span {
  display: block;
  padding-bottom: 0.5em;
}
.heading18 span:before, .heading18 span:after {
  position: absolute;
  display: block;
  width: 15px;
  height: 3px;
  background-color: #000;
  content: "";
}
.heading18 span:before {
  bottom: 0;
  right: 0;
}
.heading18 span:after {
  bottom: 7px;
  right: -7px;
  -ms-transform: rotate(-90deg);
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
}

.heading19 {
  color: #fff;
  font-size: 28px;
  font-size: 1.75rem;
  font-weight: normal;
  text-align: center;
  padding: 0.8em 0;
  background-color: black;
}

.heading-top-border {
  border-top: 2px solid #c41d1d;
  padding-top: 0.7em;
}

.contents-inner:first-of-type > [class^="heading"]:first-child {
  margin-top: 0;
}

.is_1column [class^="heading"],
.is_2column [class^="heading"],
.is_3column [class^="heading"] {
  margin-top: 0;
}

@media only screen and (max-width: 768px) {
  .heading1 {
    margin-bottom: 0.8em;
    padding-left: 20px;
    background: url("../img/mode/common_arrow10.png") no-repeat left center;
    background-size: 14px;
    font-size: 23px;
    font-size: 1.4375rem;
  }

  .heading2 {
    margin-bottom: 1em;
    font-size: 20px;
    font-size: 1.25rem;
  }
  .heading2:before {
    width: 40px;
    height: 2px;
    margin: 0 auto 0.6em;
  }

  .heading3 {
    margin-bottom: 0.8em;
    font-size: 14px;
    font-size: 0.875rem;
    margin: 2em 0 0.2em;
  }

  .heading4 {
    margin-left: 1em;
    font-size: 20px;
    font-size: 1.25rem;
    text-indent: -1.5em;
  }
  .heading4:before {
    width: 20px;
    height: 14px;
  }

  .heading6 {
    font-size: 20px;
    font-size: 1.25rem;
  }

  .heading7 {
    margin-bottom: 0.7em;
  }

  .heading8 {
    font-size: 16px;
    font-size: 1rem;
  }

  .heading9 {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.5;
  }
  .heading9.short {
    max-width: inherit;
  }

  .heading10 {
    font-size: 14px;
    font-size: 0.875rem;
    padding: 0.65em 10px;
    margin-bottom: 2em;
  }
  .heading10.short {
    max-width: inherit;
    padding-right: auto;
    padding-left: auto;
  }

  .heading11 {
    font-size: 14px;
    font-size: 0.875rem;
    padding: 0.65em 10px;
  }
  .heading11.short {
    max-width: inherit;
    padding-right: auto;
    padding-left: auto;
  }

  .heading12 {
    font-size: 14px;
    font-size: 0.875rem;
  }

  .heading13 {
    margin-bottom: 1.5em;
    font-size: 20px;
    font-size: 1.25rem;
  }
  .heading13 span {
    font-size: 14px;
    font-size: 0.875rem;
  }
  .heading13:before {
    width: 40px;
    margin-top: 1em;
  }

  .heading15 {
    margin-bottom: 1em;
    font-size: 14px;
    font-size: 0.875rem;
  }

  .heading18 {
    font-size: 14px;
    font-size: 0.875rem;
    width: auto;
    margin-bottom: 1em;
    margin-right: 30px;
    margin-left: 30px;
  }
  .heading18:before, .heading18:after {
    height: 2px;
  }
  .heading18 span:before, .heading18 span:after {
    height: 2px;
  }

  .heading19 {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: bold;
    padding: 0.5em 0;
  }
}
.btn {
  position: relative;
  display: inline-block;
  border: none;
  text-align: center;
  text-decoration: none;
  padding: .7em 1.5em;
  background-color: #fff;
  outline: none;
  cursor: pointer;
  -webkit-transition: all .3s;
  transition: all .3s;
}
.btn a {
  display: block;
}
@media only screen and (max-width: 768px) {
  .btn {
    font-size: 12px;
    font-size: 0.75rem;
    padding: .5em 1.3em;
  }
}
.btn.border {
  border: 1px #000 solid;
  color: #000;
  background: url(../img/mode/common_arrow05.png) no-repeat 91% center;
  background-size: 8px auto;
}
.btn.border:before, .btn.border:after,
.btn.border span:before,
.btn.border span:after {
  position: absolute;
  z-index: 2;
  content: "";
  width: 0;
  height: 0;
  border: 1px solid transparent;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.btn.border:before {
  top: -1px;
  left: -1px;
  border-left-color: #00afcc;
}
.btn.border:after {
  bottom: -1px;
  right: -1px;
  border-right-color: #00afcc;
}
.btn.border span:before {
  bottom: -1px;
  left: -1px;
  border-bottom-color: #00afcc;
}
.btn.border span:after {
  top: -1px;
  right: -1px;
  border-top-color: #00afcc;
}
.btn.border:hover {
  color: #00afcc;
  background: url("../img/mode/common_arrow05.png") no-repeat 93% center;
  background-size: 8px auto;
}
.btn.border:hover::before, .btn.border:hover::after {
  height: 100%;
  visibility: visible;
}
.btn.border:hover span::before, .btn.border:hover span::after {
  width: 100%;
  visibility: visible;
}
.btn.plain {
  border: 0;
  color: #c41d1d;
  background: url("../img/mode/common_arrow07.png") no-repeat 91% center #fff;
  background-size: 8px auto;
}
.btn.plain:hover {
  color: #fff;
  background: url("../img/mode/common_arrow06.png") no-repeat 93% center #000;
  background-size: 8px auto;
}
.btn.green {
  border: 0;
  color: #fff;
  background: url("../img/mode/common_arrow06.png") no-repeat 91% center #2aa53f;
  background-size: 8px auto;
}
.btn.green:hover {
  background: url("../img/mode/common_arrow06.png") no-repeat 93% center #2aa53f;
  background-size: 8px auto;
}
.btn.white {
  border: 0;
  color: #000;
  background: url("../img/mode/common_arrow05.png") no-repeat 91% center #fff;
  background-size: 8px auto;
  -webkit-box-shadow: 1px 1px 1px #ddd;
  box-shadow: 1px 1px 1px #ddd;
}
.btn.white:hover {
  color: #00afcc;
  background: url("../img/mode/common_arrow05.png") no-repeat 93% center #fff;
  background-size: 8px auto;
}
.btn.black {
  border: 0;
  color: #fff;
  background: url("../img/mode/common-right-arrow2.svg") no-repeat right 12px center #151515;
  background-size: 8px auto;
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
@media (hover: none) {
  .btn.black:active {
    background-color: #ff004d;
  }
}
@media (hover: hover) {
  .btn.black:hover {
    background-color: #ff004d;
  }
}
.btn.red {
  border: 0;
  color: #fff;
  background: url("../img/mode/common-right-arrow2.svg") no-repeat 93% center #ff004d;
  background-size: 8px auto;
}
@media (hover: none) {
  .btn.red:active {
    color: #ff004d;
    background: url("../img/mode/common-right-arrow2-red.svg") no-repeat 93% center #fff;
  }
}
@media (hover: hover) {
  .btn.red:hover {
    color: #ff004d;
    background: url("../img/mode/common-right-arrow2-red.svg") no-repeat 93% center #fff;
  }
}
@media (hover: none) {
  .btn.red.to-black:active {
    color: #fff;
    background: url("../img/mode/common-right-arrow2.svg") no-repeat 93% center #151515;
    background-size: 8px auto;
  }
}
@media (hover: hover) {
  .btn.red.to-black:hover {
    color: #fff;
    background: url("../img/mode/common-right-arrow2.svg") no-repeat 93% center #151515;
    background-size: 8px auto;
  }
}
.btn.small {
  padding: 0.5em 30px 0.4em;
  min-width: 200px;
  font-size: 13px;
  font-size: 0.8125rem;
  background-size: 5px auto;
}
.btn.small:hover {
  background-size: 5px auto;
}
.btn.medium {
  padding: 13.5px 38px;
  min-width: 238px;
  font-weight: bold;
  line-height: 1.4;
  font-size: 15px;
  font-size: 0.9375rem;
}
.btn.large {
  padding: 20px 30px;
  min-width: 280px;
  line-height: 100%;
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: bold;
}
.btn.tel {
  border: 1px solid #c41d1d;
  color: #c41d1d;
  background: url("../img/mode/common_icon_tel.png") no-repeat 9% center;
  background-color: #fff;
  background-size: 16px auto;
}
.btn.tel:hover {
  border: 2px solid #c41d1d;
  color: #fff;
  background: url("../img/mode/common_icon_tel.png") no-repeat 9% center;
  background-color: #c41d1d;
  background-size: 16px auto;
}
.btn.search {
  background: url("../img/mode/header_icon_search.svg") no-repeat right 20px center #1b1b1b;
  color: #fff;
  -webkit-transition: none;
  transition: none;
  border: none;
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
@media (hover: none) {
  .btn.search:active {
    background: url("../img/mode/header_icon_search.svg") no-repeat right 20px center #1b1b1b;
    color: #fff;
    -webkit-transition: none;
    transition: none;
  }
}
@media (hover: hover) {
  .btn.search:hover {
    background: url("../img/mode/header_icon_search.svg") no-repeat right 20px center #1b1b1b;
    color: #fff;
    -webkit-transition: none;
    transition: none;
  }
}
.btn.filter {
  background-color: #1b1b1b;
  padding: 20px;
  color: #fff;
  font-weight: bold;
  font-size: 15px;
  font-size: 0.9375rem;
  text-align: center;
  letter-spacing: -0.01em;
  line-height: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
@media (hover: none) {
  .btn.filter:active {
    background-color: #ff004d;
  }
}
@media (hover: hover) {
  .btn.filter:hover {
    background-color: #ff004d;
  }
}
.btn.radius {
  border-radius: 100px;
}

@media only screen and (max-width: 768px) {
  .btn.large {
    width: 100%;
    min-width: inherit;
    font-size: 14px;
    font-size: 0.875rem;
  }
  .btn.tel:hover {
    border: 1px solid #c41d1d;
    color: #c41d1d;
    background-color: #fff;
  }
  .btn.search {
    background-size: 24px;
  }
}
.separator {
  border: 0;
  width: 100%;
  height: 1px;
  padding: 0;
  margin: 2em 0;
  background-color: #c41d1d;
}

@media only screen and (max-width: 768px) {
  .separator {
    margin: 1.5em 0;
  }
}
.external {
  padding-right: 12px;
  background: url("../img/mode/common_icon_external.svg") no-repeat right 12px center;
  background-size: auto 24px;
}
.external:hover {
  background-color: #ff004d;
}

.modal {
  position: relative;
}
.modal.image:before {
  position: absolute;
  display: block;
  bottom: 0;
  right: 0;
  content: "";
  width: 32px;
  height: 32px;
  background: url("../img/mode/common_icon_zoom.svg") no-repeat center #151515;
  z-index: 100;
}
.modal.image:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
}

.arrow:before {
  width: 13px;
  height: 9px;
  background: url(../img/mode/common_arrow03.png) no-repeat;
  content: "";
  margin-right: 10px;
  display: inline-block;
}

a.arrow {
  color: #00afcc;
  display: inline;
  border-bottom: 1px solid transparent;
  -webkit-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
}
a.arrow:hover {
  border-bottom-color: #00afcc;
}
@media only screen and (max-width: 768px) {
  a.arrow:hover {
    border: none;
  }
}

.triangle {
  padding-right: 15px;
  margin-top: 0.5em;
  background: url(../img/mode/common_arrow15.png) no-repeat right center;
}

*[class*="-container"] .heading7 {
  margin-bottom: 2em;
}

.header-container {
  margin-bottom: 3em;
  background-color: #f5f5f5;
  overflow: hidden;
}
.header-container .mainvisual {
  padding-top: 2em;
  text-align: center;
  background-color: #f5f5f5;
}
.header-container .mainvisual img {
  vertical-align: bottom;
}
.header-container h2 {
  color: #c41d1d;
  font-size: 28px;
  font-size: 1.75rem;
  margin: 0 0 0.5em;
}
.header-container .update {
  display: inline-block;
  font-weight: bold;
  margin: -0.75em 0 0.5em;
}
.header-container .tag-toggle_button {
  display: none;
}

@media only screen and (max-width: 768px) {
  .header-container {
    padding-bottom: 1em;
    overflow: inherit;
  }
  .header-container h2 {
    font-size: 20px;
    font-size: 1.25rem;
  }
  .header-container .update {
    margin-bottom: 0;
    font-size: 13px;
    font-size: 0.8125rem;
  }
  .header-container .tag-toggle_button {
    display: inline-block;
    float: right;
    margin-top: -0.1em;
    color: #777;
    font-size: 12px;
    font-size: 0.75rem;
    font-weight: bold;
    text-align: right;
  }
  .header-container .tag-toggle_button:after {
    display: inline-block;
    position: relative;
    width: 13px;
    height: 13px;
    margin-left: 0.2em;
    background: url(../img/mode/common_parts03.png) no-repeat 0 -12px;
    background-size: 14px auto;
    content: "";
  }
  .header-container .tag-toggle_button.open:after {
    background: url(../img/mode/common_parts03.png) no-repeat 0 1px;
    background-size: 14px auto;
  }
  .header-container .module_tag-list {
    display: none;
    position: absolute;
    left: 0;
    top: 0;
    border-top: 1px solid #ddd;
    padding: 20px;
    background-color: #f5f5f5;
    z-index: 100;
  }
}
.function-container {
  position: relative;
  left: 0;
  min-width: 1216px;
  z-index: 100;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  background-color: #fff;
}
.function-container .module_share-button li.other {
  width: 160px;
}
.function-container + .function-container {
  border-top: none;
}

@media only screen and (max-width: 768px) {
  .function-container {
    min-width: inherit;
  }
  .function-container .module_share-button li.other {
    width: 24%;
  }
}
.promotion-container {
  background-color: #fff;
  overflow: hidden;
}
.promotion-container .module_banner-list {
  width: 1216px;
  margin: 0 auto;
  padding: 60px 102px;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[3];
      grid-template-columns: repeat(3, 1fr);
  gap: 72.5px;
}
.promotion-container .module_banner-list .item {
  margin: 0;
}
.promotion-container .module_banner-list .item img {
  width: 289px;
  height: 163px;
  object-fit: cover;
}

.bill-board-container {
  background-color: #fff;
  overflow: hidden;
}
.bill-board-container h2 {
  font-size: 32px;
  font-size: 2rem;
  color: #151515;
  text-align: center;
  letter-spacing: 0.02em;
  line-height: 24px;
  margin: 140px 0 0;
  font-weight: bold;
  letter-spacing: -0.06em;
  font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
}
.bill-board-container .module_banner-list {
  width: 1216px;
  margin: 0 auto 140px;
  padding: 20px 102px;
}
.bill-board-container .module_banner-list .item {
  margin: 10px !important;
}
.bill-board-container .module_banner-list .item img {
  width: 289px;
  height: 163px;
  object-fit: cover;
}

@media only screen and (max-width: 768px) {
  .promotion-container {
    position: relative;
  }
  .promotion-container .module_banner-list {
    width: 100%;
    padding: 30px 0 60px;
    gap: 20px;
    -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
  }
  .promotion-container .module_banner-list .item {
    padding: 0 20px;
  }
  .promotion-container .module_banner-list .item img {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
  }

  .bill-board-container {
    background-color: #fff;
    overflow: hidden;
  }
  .bill-board-container h2 {
    font-size: 26px;
    font-size: 1.625rem;
    text-align: left;
  }
  .bill-board-container p {
    font-size: 20px;
    font-size: 1.25rem;
    color: #1b1b1b;
    text-align: center;
    letter-spacing: 2%;
    line-height: 24px;
    margin: 60px 0 0;
  }
  .bill-board-container .module_banner-list {
    width: 100%;
    margin: 0 0 0 -10px;
    padding: 20px 0 60px;
  }
  .bill-board-container .module_banner-list .item {
    margin: 0;
  }
  .bill-board-container .module_banner-list .item img {
    width: 217px;
    height: 120px;
    object-fit: cover;
  }
  .bill-board-container .module_banner-list .slider .slick-list {
    overflow-x: hidden;
  }
}
.related-container {
  padding-top: 4em;
  padding-bottom: 4em;
  background-color: #f5f5f5;
  text-align: center;
}
.related-container .module_news-list li .text .date {
  color: #000;
}
.related-container .module_news-list li .text .date span {
  color: #fff100;
}
.related-container .module_news-list li .text p {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.6;
}
.related-container .module_news-list li .text p a {
  color: #000;
}

@media only screen and (max-width: 768px) {
  .related-container {
    padding-top: 1.5em;
    padding-bottom: 1.5em;
  }
  .related-container h2 {
    font-size: 14px;
    font-size: 0.875rem;
    margin-bottom: 0.7em;
  }
  .related-container .wrap {
    position: relative;
    margin-right: -20px;
    margin-left: -20px;
  }
  .related-container .module_news-list li .text p {
    font-size: 14px;
    font-size: 0.875rem;
  }
  .related-container .module_tag-list {
    position: relative;
    margin-bottom: 0;
  }
  .related-container .module_tag-list li {
    margin: 0 0.7em 0.8em;
  }
  .related-container .tag-list_button {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 60px;
    background: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2YxZjFmMSIgc3RvcC1vcGFjaXR5PSIwLjAiLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmNWY1ZjUiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSJ1cmwoI2dyYWQpIiAvPjwvc3ZnPiA=');
    background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, rgba(241, 241, 241, 0)), color-stop(100%, #f5f5f5));
    background: -webkit-linear-gradient(rgba(241, 241, 241, 0), #f5f5f5);
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(241, 241, 241, 0)), to(#f5f5f5));
    background: linear-gradient(rgba(241, 241, 241, 0), #f5f5f5);
    content: "";
  }
  .related-container .tag-list_button:before {
    display: block;
    position: absolute;
    bottom: 15px;
    left: 50%;
    color: #c41d1d;
    font-size: 11px;
    font-size: 0.6875rem;
    font-weight: bold;
    letter-spacing: 0.15em;
    text-align: center;
    padding-right: 16px;
    margin-left: -33px;
    background: url(../img/mode/common_arrow09.png) no-repeat right center;
    background-size: 13px auto;
    content: "もっと読む";
    cursor: pointer;
    z-index: 100;
  }
  .related-container .tag-list_button.open {
    opacity: 0;
    filter: alpha(opacity=0);
    -webkit-transition: 0.15s ease-out;
    transition: 0.15s ease-out;
    z-index: -100;
  }
  .related-container .module_thumbnail-list.is_3column .slick-slide {
    margin-right: 10px;
    margin-left: 10px;
  }
}
.directory-container {
  padding: 2.5em 0;
  background-color: #ddd;
}
.directory-container h2 {
  margin-top: 0.5em;
}
.directory-container h3 {
  font-size: 14px;
  font-size: 0.875rem;
  margin: 1.25em 0 0.75em;
}
.directory-container .module_text-list:after {
  position: relative;
  left: 0;
  min-width: 1216px;
  z-index: 100;
  top: 1em;
  display: block;
  content: "";
  width: 100%;
  height: 1px;
  background-color: #fff;
}
.directory-container .module_text-list:last-child:after {
  display: none;
}
.directory-container .module_text-list li {
  float: left;
  width: 33.3%;
}
.directory-container .module_text-list li:before {
  width: 4px;
  height: 8px;
  margin-top: -4px;
  background: url(../img/mode/common_arrow02.png) no-repeat left center;
  background-size: 100% auto;
}
.directory-container .module_text-list li a {
  color: #00afcc;
}
.directory-container .module_text-list li a:after {
  background-color: #00afcc;
}

@media only screen and (max-width: 768px) {
  .directory-container {
    padding: 1.5em 0 0;
  }
  .directory-container .module_text-list:after {
    margin: 0;
    padding: 0;
    min-width: inherit;
  }
  .directory-container .module_text-list li {
    float: none;
    width: 100%;
  }
}
.guide-container {
  background-color: #eee;
}

.emphasize-container {
  color: #fff;
  padding: 4.5em 0;
  background-color: #c41d1d;
}
.emphasize-container .module_image-box {
  margin-bottom: 0;
}
.emphasize-container .module_image-box figure img {
  margin-bottom: 0;
}
.emphasize-container .module_image-box .text .title {
  font-size: 24px;
  font-size: 1.5rem;
  margin-bottom: 0.8em;
}
.emphasize-container .module_image-box .text p {
  line-height: 2;
}
.emphasize-container table {
  background-color: #fff;
  color: #000;
}

@media only screen and (max-width: 768px) {
  .emphasize-container {
    padding: 1.5em 0;
  }
  .emphasize-container .module_image-box {
    margin-bottom: 0;
  }
  .emphasize-container .module_image-box figure img {
    margin-bottom: 1em;
  }
  .emphasize-container .module_image-box .text .title {
    font-size: 20px;
    font-size: 1.25rem;
    text-align: center;
    line-height: 1.5;
  }
}
.light-gray-container {
  width: 100%;
  background-color: #f5f5f5;
  padding: 1.5em 20px;
  margin: 2em 0;
}

@media only screen and (max-width: 768px) {
  .light-gray-container {
    margin: 1.4em 0;
  }
}
.information-container {
  width: 100%;
  background-color: #fff;
  padding: 1.5em 20px;
  margin: 2em 0;
  border: 1px solid #c41d1d;
}
.information-container ul {
  text-align: center;
}
.information-container ul li {
  display: inline-block;
}
.information-container ul li a {
  padding-left: 15px;
  margin-right: 15px;
  background: url(../img/mode/common_arrow02.png) no-repeat left center;
  background-size: 5px auto;
}

@media only screen and (max-width: 768px) {
  .information-container {
    margin: 1.4em 0;
  }
}
.contents-wrapper {
  margin-top: 4em;
}

@media only screen and (max-width: 768px) {
  .youtube-container {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    margin-bottom: 2em;
    display: block;
  }
  .youtube-container .fr-video {
    position: static;
  }
  .youtube-container iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
  }
}
.clearfix .youtube-container .fr-video {
  position: static !important;
}

@media only screen and (max-width: 768px) {
  .auto-image img {
    width: auto !important;
    max-width: 100% !important;
  }
}
.display-pc {
  display: block;
}

@media only screen and (max-width: 768px) {
  .display-pc {
    display: none;
  }
}
.display-sp {
  display: none;
}

@media only screen and (max-width: 768px) {
  .display-sp {
    display: block;
  }
}
.display-table-cell {
  display: table-cell;
}

@media only screen and (max-width: 768px) {
  .display-table-cell {
    display: none !important;
  }
}
@media only screen and (max-width: 768px) {
  .scroll-table {
    overflow: auto;
    width: 98%;
    margin: 0 auto;
    max-height: 400px;
  }
  .scroll-table table {
    width: 960px;
  }
  .scroll-table table tr,
  .scroll-table table th {
    white-space: nowrap;
  }
}
.measurement-tag img {
  display: none;
  width: auto;
}

.js-scroll {
  opacity: 0;
  -webkit-transform: translateY(20px);
      -ms-transform: translateY(20px);
          transform: translateY(20px);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.js-scroll--show {
  opacity: 1;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
}

.cross {
  background: none #000;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.7;
}
.cross .bgSwitch {
  background-size: 100% 100% !important;
  position: fixed !important;
  z-index: 0 !important;
}
@media only screen and (max-width: 768px) {
  .cross {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.65;
  }
}
.cross #breadcrumbs {
  border: none;
  background: none;
  -webkit-box-shadow: 0 0 0;
  box-shadow: 0 0 0;
}
.cross .site-inner {
  width: 1120px;
  padding-right: 0;
  padding-left: 0;
}
.cross .contents-inner {
  width: 960px;
}
.cross .contents-panel {
  position: relative;
  width: inherit;
  margin-bottom: 1em;
  padding: 20px;
  border: none;
  background: url("../img/mode/cross_common_overlay2.png") transparent;
}
.cross .contents-panel > .panel-title {
  display: inline-block;
  position: absolute;
  top: -0.8em;
  left: 0;
  font-size: 18px;
  font-size: 1.125rem;
  color: #fff;
  font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  font-weight: bold;
  font-style: italic;
  line-height: 1;
}
.cross .contents-panel > .panel-title span {
  color: #00afcc;
}
.cross .contents-panel .mainvisual {
  margin: 30px -20px 1.5em -20px;
  padding: 0 80px;
  text-align: center;
}
.cross .contents-panel .mainvisual img {
  max-width: 960px;
}
@media only screen and (max-width: 768px) {
  .cross .site-inner {
    width: 100%;
    padding-right: 10px;
    padding-left: 10px;
  }
  .cross .contents-inner {
    width: 100%;
    padding: 0 10px;
  }
  .cross .contents-panel {
    margin: 0 0 2em;
    padding: 10px;
    overflow: visible;
  }
  .cross .contents-panel > .panel-title {
    font-size: 14px;
    font-size: 0.875rem;
  }
  .cross .contents-panel .mainvisual {
    margin: 20px -10px 1em -10px;
    padding: 0 40px;
    text-align: center;
  }
  .cross .contents-panel .mainvisual img {
    width: 100%;
  }
}
.cross .heading1 {
  color: #fff;
  font-size: 40px;
  font-size: 2.5rem;
  font-weight: bold;
  text-align: center;
  line-height: 1.5;
  padding-left: 0;
  margin-top: 0.8em;
  background: none;
}
.cross .heading1 span {
  display: block;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: normal;
}
.cross .heading2 {
  padding: 0.5em 10px;
  color: #fff;
  font-size: 18px;
  font-size: 1.125rem;
  background: url("../img/mode/cross_common_overlay1.png") transparent;
}
.cross .heading2:before {
  display: none;
}
.cross .heading3 {
  margin-bottom: 1.5em;
  padding-left: 0;
  font-size: 16px;
  font-size: 1rem;
  color: #fff;
  background: none;
  text-align: center;
}
.cross .heading4 {
  margin: 0 0 0.5em 0;
  color: #000;
  font-size: 24px;
  font-size: 1.5rem;
  text-indent: 0;
  line-height: 1.5;
}
.cross .heading4:before {
  display: none;
}
.cross .heading5 {
  display: block;
  margin-bottom: 1.3em;
  padding: 0;
  border: none;
  border-bottom: 1px #777 solid;
  font-size: 15px;
  font-size: 0.9375rem;
  font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  font-style: italic;
  line-height: 1;
}
.cross .heading5:before, .cross .heading5:after {
  display: none;
}
@media only screen and (max-width: 768px) {
  .cross .heading1 {
    font-size: 24px;
    font-size: 1.5rem;
    line-height: 1.5;
    padding-left: 0;
    margin-top: 0.8em;
  }
  .cross .heading1 span {
    font-size: 14px;
    font-size: 0.875rem;
  }
  .cross .heading2 {
    margin-bottom: 0.5em;
    font-size: 16px;
    font-size: 1rem;
  }
  .cross .heading4 {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
.cross .btn {
  position: relative;
  display: inline-block;
  border: none;
  text-align: center;
  text-decoration: none;
  padding: .7em 1.5em;
  background-color: #fff;
  outline: none;
  cursor: pointer;
  -webkit-transition: all .3s;
  transition: all .3s;
}
.cross .btn a {
  display: block;
}
@media only screen and (max-width: 768px) {
  .cross .btn {
    font-size: 12px;
    font-size: 0.75rem;
    padding: .5em 1.3em;
  }
}
.cross .btn.plain {
  background: url("../img/mode/cross_common_overlay2.png") transparent;
  color: #000;
}
.cross .btn.plain:after {
  position: absolute;
  right: 20px;
  top: 50%;
  margin-top: -6px;
  display: block;
  content: "";
  width: 6px;
  height: 13px;
  background: url("../img/mode/common_arrow02.png") no-repeat;
  background-size: 6px;
}
.cross .btn.plain:hover {
  background: none;
  background-color: rgba(255, 255, 255, 0.9);
}
.cross .btn.plain.back:after {
  right: 0;
  left: 20px;
  -ms-transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}
.cross .btn.large {
  width: 100%;
  font-size: 16px;
  font-size: 1rem;
}
.cross .external {
  background: url("../img/mode/common_icon_external2.png") no-repeat right center;
}
.cross #site-header {
  position: relative;
  top: 0;
  min-height: 110px;
  background: url("../img/mode/cross_common_overlay1.png") transparent;
  color: #fff;
}
.cross #site-header #contents-title {
  display: table-cell;
  font-size: 18px;
  font-size: 1.125rem;
  width: 400px;
  height: 110px;
  vertical-align: middle;
}
.cross #site-header #cross-logo {
  position: absolute;
  left: 50%;
  top: 30px;
  margin-left: -114px;
}
.cross #site-header #global-navi {
  margin: 0;
  background-color: transparent;
}
.cross #site-header #global-navi #navi-panel {
  visibility: hidden;
  opacity: 0;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
.cross #site-header #global-navi #navi-panel ul li a {
  color: #2e2e2e;
  background-color: #fff;
}
.cross #site-header #global-navi #navi-button {
  position: absolute;
  top: 35px;
  right: 0;
  display: none;
  width: 40px;
  height: 40px;
  background: none;
  overflow: hidden;
  cursor: pointer;
}
.cross #site-header #global-navi #navi-button img {
  position: relative;
  width: 40px;
}
.cross #site-header #global-navi.open #navi-panel {
  opacity: 1;
  visibility: visible;
}
.cross #site-header #global-navi.open #navi-button img {
  top: -95px;
}
@media only screen and (min-width: 769px) {
  .cross #site-header #global-navi #navi-panel {
    position: absolute;
    top: 110px;
    right: 0;
    width: 300px;
    font-size: 14px;
    font-size: 0.875rem;
    background-color: #fff;
    z-index: 1;
  }
  .cross #site-header #global-navi #navi-panel ul li {
    float: none;
    margin: 0;
    border-bottom: 1px #eee solid;
  }
  .cross #site-header #global-navi #navi-panel ul li a {
    display: block;
    padding: 1.5em 25px;
  }
  .cross #site-header #global-navi #navi-panel ul li a:hover {
    background-color: #f5f5f5;
  }
  .cross #site-header #global-navi #navi-panel ul li a:after {
    display: none;
  }
  .cross #site-header #global-navi #navi-panel #header-search {
    position: relative;
    padding: 20px;
  }
  .cross #site-header #global-navi #navi-panel #header-search button[type="submit"] {
    position: absolute;
    top: 24px;
    left: 20px;
    width: 46px;
    height: 46px;
    background: transparent;
    border: none;
  }
  .cross #site-header #global-navi #navi-panel #header-search button[type="submit"] img {
    width: 24px;
  }
  .cross #site-header #global-navi #navi-panel #header-search input[type="search"] {
    width: 204px;
    background-color: #eee;
    border: none;
    border-radius: 4px;
    padding: 1em 10px 1em 46px;
  }
}
@media only screen and (max-width: 768px) {
  .cross #site-header {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    height: 55px;
    min-height: inherit;
    border-bottom: 1px #fff solid;
  }
  .cross #site-header #contents-title {
    font-size: 12px;
    font-size: 0.75rem;
    width: auto;
    height: 55px;
    padding-left: 15px;
  }
  .cross #site-header #cross-logo {
    top: 13px;
    margin-left: -66px;
  }
  .cross #site-header #cross-logo img {
    width: 133px;
  }
  .cross #site-header #global-navi #navi-button {
    background-color: transparent;
    top: 0;
    right: 2px;
    display: block;
    width: 54px;
    height: 54px;
    padding: 8px 9px;
  }
  .cross #site-header #global-navi.open #navi-button img {
    top: -85px;
  }
  .cross #site-header #global-navi #navi-panel {
    top: 55px;
    width: 100%;
    background-color: #fff;
  }
  .cross #site-header #global-navi #navi-panel ul li {
    border-bottom: 1px #eee solid;
  }
  .cross #site-header #global-navi #navi-panel ul li a {
    padding: 1.25em 25px;
    color: #2e2e2e;
  }
  .cross #site-header #global-navi #navi-panel #header-search {
    position: relative;
    padding: 12px 10px;
  }
  .cross #site-header #global-navi #navi-panel #header-search form {
    position: relative;
    width: 100%;
  }
  .cross #site-header #global-navi #navi-panel #header-search form input[type="search"] {
    width: -o-calc(100% - 54px);
    width: calc(100% - 54px);
    padding: 0.8em 10px 0.7em 44px;
    background-color: #eee;
    border: none;
    border-radius: 3px;
    font-size: 13px;
    font-size: 0.8125rem;
    -webkit-appearance: none;
  }
  .cross #site-header #global-navi #navi-panel #header-search form button[type="submit"] {
    position: absolute;
    top: 0.6em;
    left: 8px;
    width: 31px;
    padding: 0 5px;
    background: transparent;
    border: none;
  }
}
.cross .module_breadcrumbs li a {
  color: #fff;
  opacity: 1;
  filter: alpha(opacity=100);
}
.cross .module_breadcrumbs li:after {
  background: url("../img/mode/common_arrow06.png") no-repeat;
  background-size: 6px auto;
}
.cross .module_tag-list {
  margin-bottom: 2em;
}
.cross .module_tag-list li a {
  border: none;
  background-color: #fff;
}
.cross .module_item-select .btn {
  display: inline-block;
  width: auto;
  border: 1px #000 solid;
  -webkit-transition: 0s ease-out;
  transition: 0s ease-out;
  background-color: #151515;
}
.cross .module_item-select .btn:before, .cross .module_item-select .btn:after {
  display: none;
}
.cross .module_item-select .btn span:before, .cross .module_item-select .btn span:after {
  display: none;
}
@media only screen and (max-width: 768px) {
  .cross .module_item-select .btn {
    width: 70%;
  }
}
.cross .module_link-list-block {
  padding-top: 0.8em;
  background-color: rgba(255, 255, 255, 0.6);
  border: none;
}
.cross .module_link-list-block .title,
.cross .module_link-list-block .content {
  font-size: 14px;
  font-size: 0.875rem;
}
.cross .module_link-list-block .title {
  color: #000;
}
.cross .module_link-list-block ul {
  padding-bottom: 0;
  overflow: hidden;
}
.cross .module_link-list-block ul li {
  margin-bottom: 1em;
  font-size: 14px;
  font-size: 0.875rem;
}
.cross .module_link-list-block ul li a {
  color: #c41d1d;
  text-decoration: none;
}
.cross .module_link-list-block ul li a:after {
  display: none;
}
.cross .module_link-list-block ul li a:hover {
  text-decoration: none;
}
.cross .module_link-list-block ul li a.external {
  background-image: url("../img/mode/common_icon_external3.png");
}
.cross .module_share-button {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  margin: 0 auto;
  text-align: center;
  letter-spacing: -0.4em;
  overflow: hidden;
}
.cross .module_share-button li {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding-left: 15px;
  letter-spacing: normal;
}
.cross .module_share-button li a {
  padding: 0.75em 0;
  background-color: rgba(255, 255, 255, 0.8);
  color: black;
}
.cross .module_share-button li a:hover {
  opacity: 1;
  filter: alpha(opacity=100);
  background-color: #c41d1d;
  color: white;
}
.cross .module_share-button li img {
  width: 32px;
  height: 32px;
  vertical-align: bottom;
}
.cross .module_share-button li svg {
  height: 32px;
  vertical-align: bottom;
}
.cross .module_share-button li:last-child {
  margin-right: 0;
}
.cross .module_share-button li.other a {
  background: none;
}
.cross .module_share-button li:first-child.other {
  border-left: none;
}
.cross .module_share-button li:last-child.other {
  border-right: none;
}
.cross .module_share-button li.line {
  display: none;
}
@media only screen and (max-width: 768px) {
  .cross .module_share-button li {
    padding-right: 2.5px;
    padding-left: 2.5px;
  }
  .cross .module_share-button li.other a {
    background-color: rgba(255, 255, 255, 0.8);
  }
  .cross .module_share-button li.line {
    display: table-cell;
  }
}
.cross .module_pagination {
  padding-top: 0;
  letter-spacing: -0.4em;
  margin-bottom: 1.5em;
}
.cross .module_pagination a {
  position: relative;
  display: inline-block;
  color: #000;
  letter-spacing: normal;
  padding: 0.5em 14px;
  margin: 0 5px;
  background: url("../img/mode/cross_common_overlay2.png") #fff;
  opacity: 1;
  filter: alpha(opacity=100);
  font-size: 14px;
  font-size: 0.875rem;
}
.cross .module_pagination a:hover {
  background-image: none;
  background-color: rgba(255, 255, 255, 0.9);
  opacity: 1;
  filter: alpha(opacity=100);
}
.cross .module_pagination .icon-prev,
.cross .module_pagination .icon-next {
  top: 0;
  width: 6px;
  height: 10px;
  padding: 0.5em 4px;
  background: url("../img/mode/common_icon_page-navi.png") no-repeat;
  background-size: 6px auto;
}
.cross .module_pagination .icon-prev {
  background-position: center bottom;
}
.cross .module_pagination .icon-next {
  background-position: center top;
}
.cross .module_pagination.is_move {
  font-size: 16px;
  font-size: 1rem;
}
.cross .module_pagination.is_move a {
  padding: 0.8em 10px;
  margin: 0;
  width: -o-calc(100% / 3 - 20px);
  width: calc(100% / 3 - 20px);
  font-size: 16px;
  font-size: 1rem;
}
.cross .module_pagination.is_move .index {
  font-size: 16px;
  font-size: 1rem;
  margin: 0 30px;
}
.cross .module_pagination.is_move .icon-prev,
.cross .module_pagination.is_move .icon-next {
  position: absolute;
  top: 50%;
  width: 12px;
  height: 20px;
  padding: 0.5em 20px;
  margin-top: -10px;
  background: url("../img/mode/common_icon_page-navi.png") no-repeat;
}
.cross .module_pagination.is_move .icon-prev {
  left: 0;
  background-position: center bottom;
}
.cross .module_pagination.is_move .icon-next {
  right: 0;
  background-position: center top;
}
@media only screen and (max-width: 768px) {
  .cross .module_pagination {
    margin-bottom: 0.5em;
    font-size: 12px;
    font-size: 0.75rem;
  }
  .cross .module_pagination a {
    padding: 0.4em 12px;
    font-size: 12px;
    font-size: 0.75rem;
  }
  .cross .module_pagination .icon-prev,
  .cross .module_pagination .icon-next {
    background-size: 6px auto;
  }
  .cross .module_pagination.is_move {
    font-size: 14px;
    font-size: 0.875rem;
  }
  .cross .module_pagination.is_move a {
    padding: 0.6em 5px;
    width: 29%;
    width: -o-calc(100% / 3 - 9px);
    width: calc(100% / 3 - 9px);
    font-size: 14px;
    font-size: 0.875rem;
  }
  .cross .module_pagination.is_move .index {
    font-size: 14px;
    font-size: 0.875rem;
    margin: 0 12px;
  }
  .cross .module_pagination.is_move .icon-prev,
  .cross .module_pagination.is_move .icon-next {
    height: 20px;
    margin-top: -10px;
    padding: 0.5em 1em;
  }
  .cross .module_pagination.is_move .icon-next {
    right: 0;
  }
}
.cross .module_news-list > li {
  margin-bottom: 1.5em;
  padding: 20px;
  background: url("../img/mode/cross_common_overlay2.png") #fff;
}
.cross .module_news-list > li a {
  display: table;
  color: #000;
  overflow: hidden;
}
.cross .module_news-list > li:hover {
  background-image: none;
  background-color: rgba(255, 255, 255, 0.9);
}
.cross .module_news-list > li .image {
  display: table-cell;
  width: 160px;
  height: 160px;
  margin-right: 30px;
  margin-bottom: 0;
}
.cross .module_news-list > li .image img {
  width: 100%;
}
.cross .module_news-list > li .text {
  display: table-cell;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.7;
  vertical-align: middle;
}
.cross .module_news-list > li .text .date {
  font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  font-style: italic;
  font-size: 17px;
  font-size: 1.0625rem;
}
.cross .module_news-list > li .text .date span {
  color: #00afcc;
}
.cross .module_news-list > li .text p {
  margin-bottom: 0;
  line-height: 1.7;
}
.cross .module_news-list.is_2column li {
  width: -o-calc(50% - 15px);
  width: calc(50% - 15px);
}
.cross .module_news-list.is_2column li:nth-child(odd) {
  margin-right: 15px;
  clear: both;
}
.cross .module_news-list.is_2column li:nth-child(even) {
  margin-left: 15px;
}
@media only screen and (max-width: 768px) {
  .cross .module_news-list > li {
    margin-bottom: 0.5em;
    padding: 10px;
  }
  .cross .module_news-list > li .image {
    width: 80px;
    height: 80px;
    margin-right: 16px;
  }
  .cross .module_news-list > li .text {
    height: auto;
  }
  .cross .module_news-list > li .text .date {
    font-size: 13px;
    font-size: 0.8125rem;
  }
  .cross .module_news-list > li .text p {
    font-size: 13px;
    font-size: 0.8125rem;
  }
  .cross .module_news-list.is_2column li {
    width: 100%;
  }
  .cross .module_news-list.is_2column li:nth-child(odd) {
    margin-right: 0;
  }
  .cross .module_news-list.is_2column li:nth-child(even) {
    margin-left: 0;
  }
}
@media only screen and (min-device-width: 376px) and (max-device-width: 768px) {
  .cross .module_news-list > li .text .date {
    font-size: 14px;
    font-size: 0.875rem;
  }
  .cross .module_news-list > li .text p {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media only screen and (min-device-width: 321px) and (max-device-width: 375px) {
  .cross .module_news-list > li .text .date {
    font-size: 14px;
    font-size: 0.875rem;
  }
  .cross .module_news-list > li .text p {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
.cross .module_search-function {
  margin-bottom: 0;
}
.cross .module_search-function h2 {
  color: #fff;
  margin-bottom: 1.2em;
}
.cross .module_search-function .btn-group .btn {
  position: relative;
  color: #000;
  background: url(../img/mode/cross_common_overlay2.png) repeat left top #fff;
}
.cross .module_search-function .btn-group .btn:after {
  position: absolute;
  top: 50%;
  right: 20px;
  content: "";
  width: 7px;
  height: 14px;
  margin-top: -7px;
  background: url(../img/mode/common_arrow02.png) no-repeat left top;
  background-size: 7px auto;
  -webkit-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
}
.cross .module_search-function .btn-group .btn:hover, .cross .module_search-function .btn-group .btn.selected {
  background: none rgba(255, 255, 255, 0.9);
  -webkit-box-shadow: none;
  box-shadow: none;
}
.cross .module_search-function .btn-group .btn:hover:after, .cross .module_search-function .btn-group .btn.selected:after {
  right: 15px;
}
.cross .module_search-function .reset a {
  color: #fff;
}
@media only screen and (max-width: 768px) {
  .cross .module_search-function .btn-group .btn {
    font-size: 14px;
    font-size: 0.875rem;
  }
  .cross .module_search-function .reset {
    top: -5px;
  }
}
.cross .module_thumbnail-list.is_3column {
  width: 1050px;
}
.cross .module_thumbnail-list.is_3column li {
  margin: 0 0 1em;
}
.cross .module_thumbnail-list.is_3column li a {
  color: #fff;
}
.cross .module_thumbnail-list.is_3column li a:after {
  background-color: #fff;
}
.cross .module_thumbnail-list .slick-dots li button:before {
  border: 2px #fff solid;
}
.cross .module_thumbnail-list .slick-dots li.slick-active button:before {
  border: 2px #fff solid;
  background-color: #fff;
}
@media only screen and (max-width: 768px) {
  .cross .module_thumbnail-list.is_3column {
    width: 100%;
  }
  .cross .module_thumbnail-list .slick-dots li button:before {
    border: 1px #fff solid;
  }
  .cross .module_thumbnail-list .slick-dots li.slick-active button:before {
    border: 1px #fff solid;
  }
}
.cross .module_library-list .item a {
  background: url(../img/mode/cross_common_overlay2.png) repeat left top #fff;
}
.cross .module_library-list .item a:hover {
  background: none rgba(255, 255, 255, 0.9);
}
.cross #site-footer {
  min-height: 144px;
  background: url("../img/mode/cross_common_overlay1.png") transparent;
}
.cross #site-footer #footer-link {
  display: table;
  font-size: 11px;
  font-size: 0.6875rem;
  padding-top: 0;
  padding-bottom: 0;
}
.cross #site-footer #footer-link.site-inner {
  width: 1120px;
}
.cross #site-footer #footer-link #footer-navi {
  float: none;
  display: table-cell;
  width: 60%;
  height: 144px;
  vertical-align: middle;
}
.cross #site-footer #footer-link #footer-navi .sns-navi li a {
  padding: 0 2px;
  opacity: 1;
  filter: alpha(opacity=100);
}
.cross #site-footer #footer-link #footer-navi .sns-navi li img {
  height: 22px;
}
.cross #site-footer #copyright {
  display: table-cell;
  width: 40%;
  height: 144px;
  vertical-align: middle;
  font-size: 11px;
  font-size: 0.6875rem;
  text-align: right;
  padding-bottom: 0;
  opacity: 1;
  filter: alpha(opacity=100);
}
@media only screen and (max-width: 768px) {
  .cross #site-footer {
    min-height: inherit;
  }
  .cross #site-footer #footer-link {
    display: block;
  }
  .cross #site-footer #footer-link.site-inner {
    width: 100%;
  }
  .cross #site-footer #footer-link #footer-navi {
    float: none;
    display: block;
    width: 100%;
    height: auto;
    margin: 0;
  }
  .cross #site-footer #footer-link #footer-navi .sns-navi {
    padding-bottom: 1em;
  }
  .cross #site-footer #footer-link #footer-navi .sns-navi li {
    margin: 0 12px;
  }
  .cross #site-footer #copyright {
    display: block;
    width: 100%;
    height: auto;
    padding-bottom: 1.5em;
    text-align: center;
  }
}

.org {
  color: #333;
  background-image: none;
  background-color: #fff;
}
.org a {
  color: #333;
}
.org a:after {
  background-color: #333;
}
.org main a {
  color: #003e93;
  display: inline;
  border-bottom: 1px solid transparent;
  -webkit-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
}
.org main a:hover {
  border-bottom-color: #00afcc;
}
@media only screen and (max-width: 768px) {
  .org main a:hover {
    border: none;
  }
}
.org main a:hover {
  border-bottom-color: #003e93;
}
.org #breadcrumbs {
  border-top: 2px #ddd solid;
  border-bottom: none;
  -webkit-box-shadow: 0 0 0 #f5f5f5 inset;
  box-shadow: 0 0 0 #f5f5f5 inset;
}
.org .emphasize-container {
  background-color: #2e2e2e;
}
.org .promotion-container {
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
}
.org .heading7 {
  color: #333;
}
@media only screen and (max-width: 768px) {
  .org .heading7 {
    font-size: 16px;
    font-size: 1rem;
  }
}
.org .heading10 {
  color: #000;
  font-size: 14px;
  font-size: 0.875rem;
  text-align: left;
  padding: .5em 20px;
  font-weight: bold;
}
.org .heading10 .note {
  font-weight: normal;
}
.org .heading15 {
  color: #333;
}
.org .heading15:before {
  background-color: #333;
}
.org #global-navi.spnavi-spstyle {
  background-color: #fff;
}
.org #global-navi.spnavi-spstyle #navi-panel {
  background-color: #fff;
}
.org #global-navi.spnavi-spstyle #navi-panel ul li {
  border-bottom: 1px #eee solid;
}
.org #global-navi.spnavi-spstyle #navi-panel ul li a {
  color: #333;
}
.org #site-header {
  border-color: #ddd;
  min-height: 109px;
}
.org #site-header #company-logo {
  top: 30px;
}
.org #site-header #company-logo img {
  width: 304px;
}
.org #site-header .catch-copy {
  float: right;
  font-size: 17px;
  font-size: 1.0625rem;
  margin-top: 2.4em;
}
@media only screen and (max-width: 768px) {
  .org #site-header {
    min-height: 55px;
  }
  .org #site-header #company-logo {
    top: 13px;
  }
  .org #site-header #company-logo img {
    width: auto;
    height: 30px;
  }
  .org #site-header .catch-copy {
    display: none;
  }
  .org #site-header #global-navi #navi-button {
    background-color: #333;
  }
  .org #site-header #global-navi ul li a {
    color: #333;
  }
}
.org .module_breadcrumbs li a {
  color: #333;
}
.org .module_breadcrumbs li:after {
  background: url("../img/mode/common_arrow02.png") no-repeat;
  background-size: 5px auto;
}
.org .module_breadcrumbs li:last-child a {
  opacity: 0.9;
  filter: alpha(opacity=90);
}
.org .module_page-title {
  padding: 1.5em 0;
  margin-bottom: 2.8em;
  background: none;
}
.org .module_page-title h1 {
  border-bottom: 2px #eee solid;
  padding-left: 0;
  background: none;
  color: #000;
  font-weight: bold;
  width: 1216px;
}
.org .module_page-title h1 a {
  color: #000;
}
@media only screen and (max-width: 768px) {
  .org .module_page-title {
    padding: 2.5em 0;
    margin-right: 20px;
    margin-bottom: 0;
    margin-left: 20px;
  }
  .org .module_page-title h1 {
    padding-left: 0;
    font-size: 20px;
    font-size: 1.25rem;
    width: 100%;
  }
}
.org .module_text-list li {
  margin-bottom: .2em;
}
.org .module_text-list li a:after {
  background-color: #333;
}
@media only screen and (max-width: 768px) {
  .org .module_banner-list.slider .slick-prev, .org .module_banner-list.slider .slick-next {
    background-color: #333;
  }
}
.org .module_pagination {
  border-top: 2px #eee solid;
}
.org #site-footer {
  color: #333;
  background-color: #fff;
}
.org #site-footer #footer-banner .item {
  margin: 0 50px;
}
@media only screen and (max-width: 768px) {
  .org #site-footer #footer-banner .item {
    width: 25%;
    width: -o-calc(100% / 3 - 20px);
    width: calc(100% / 3 - 20px);
    text-align: center;
    margin: 0 10px;
  }
}
.org #school-navi .module_banner-list .item img:hover {
  opacity: 1;
}
.org #site-navi {
  border-top: 1px solid #ddd;
}
.org #site-navi ul {
  text-align: center;
  margin: 2em 0;
}
.org #site-navi ul li {
  display: inline-block;
}
.org #site-navi ul li:after {
  content: "｜";
  color: #ddd;
  padding: 0 10px;
}
.org #site-navi ul li:last-child:after {
  display: none;
}
.org #site-navi ul li a {
  display: inline;
  border-bottom: 1px solid transparent;
  -webkit-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
}
.org #site-navi ul li a:hover {
  border-bottom-color: #00afcc;
}
@media only screen and (max-width: 768px) {
  .org #site-navi ul li a:hover {
    border: none;
  }
}
.org #site-navi ul li a:after {
  background-color: #2e2e2e;
}
.org #site-navi ul li a:hover {
  border-bottom-color: #333;
}
.org #site-navi ul .current {
  font-weight: 700;
  text-decoration: underline !important;
  border-bottom: none;
}
.org #site-navi ul .current:hover {
  text-decoration: none !important;
  border-bottom: none;
}
@media only screen and (max-width: 768px) {
  .org #site-navi {
    display: none;
  }
}

#totalTop {
  background: #fff;
  background-image: none;
}
@media only screen and (max-width: 768px) {
  #totalTop {
    background-color: transparent;
  }
  #totalTop:before {
    background: url("../assets/images/original/totaltop_bg_course-navi_mode-smp.jpg") repeat-y center top;
    background-size: 100% auto;
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding-bottom: 108px;
    content: "";
    z-index: -1;
  }
}
#totalTop .header-container {
  margin-bottom: 0;
}
@media only screen and (max-width: 768px) {
  #totalTop .header-container {
    padding-bottom: 0;
  }
}
#totalTop .module_visual-slider {
  padding-bottom: calc(100% * 624 / 1440);
}
#totalTop .module_visual-slider .item a {
  cursor: default;
}
#totalTop #area-navi-sp {
  display: none;
}
#totalTop #area-navi ul {
  margin: 0;
  padding: 0;
  overflow: hidden;
}
#totalTop #area-navi ul li {
  float: left;
  width: 25%;
  width: -o-calc(100% / 4);
  width: calc(100% / 4);
  list-style: none;
  text-align: center;
}
#totalTop #area-navi ul li a {
  position: relative;
  margin-top: -2px;
  display: block;
}
#totalTop #area-navi ul li a .place {
  position: absolute;
  top: 5%;
  left: 5%;
  z-index: 100;
  color: #fff;
  text-align: left;
}
#totalTop #area-navi ul li a .place .station {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: bold;
}
#totalTop #area-navi ul li a .place .station .number {
  font-size: 24px;
  font-size: 1.5rem;
}
#totalTop #area-navi ul li a .place .building {
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
}
#totalTop #area-navi ul li a .title {
  position: absolute;
  top: 36%;
  left: 0;
  z-index: 100;
  color: #fff;
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.1em;
  width: 100%;
}
#totalTop #area-navi ul li a .title span {
  display: block;
  font-size: 40px;
  font-size: 2.5rem;
  font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  line-height: 1.6;
}
#totalTop #area-navi ul li a .btn-group {
  position: absolute;
  bottom: 11%;
  left: 0;
  z-index: 100;
  width: 100%;
}
#totalTop #area-navi ul li a .btn-group .btn,
#totalTop #area-navi ul li a .btn-group .red {
  border: none;
  font-size: 14px;
  font-size: 0.875rem;
  -webkit-box-shadow: 0 0 0 0 #c41d1d;
  box-shadow: 0 0 0 0 #c41d1d;
  max-width: 80%;
}
#totalTop #area-navi ul li a .btn-group .large {
  max-width: 80%;
  min-width: 80%;
}
#totalTop #area-navi ul li a figure {
  background-color: #000;
  overflow: hidden;
}
#totalTop #area-navi ul li a figure img {
  width: 100%;
  opacity: 0.7;
  filter: alpha(opacity=70);
  -webkit-transition: -webkit-transform 0.2s ease-out;
  transition: -webkit-transform 0.2s ease-out;
  transition: transform 0.2s ease-out;
  transition: transform 0.2s ease-out, -webkit-transform 0.2s ease-out;
}
#totalTop #area-navi ul li a:hover figure img {
  -webkit-transition: 0.15s ease-out;
  transition: 0.15s ease-out;
  opacity: 1;
  filter: alpha(opacity=100);
  -webkit-transform: scale(1.1);
  -ms-transform: scale(1.1);
  transform: scale(1.1);
}
#totalTop #area-navi ul li a:hover .btn-group .btn,
#totalTop #area-navi ul li a:hover .btn-group .red {
  color: #fff;
  background-color: #c41d1d;
  background-image: url(../img/mode/common_arrow06.png);
  background-position: 93% center;
}
@media only screen and (min-width: 1150px) and (max-width: 1350px) {
  #totalTop #area-navi ul li a .place .building {
    font-size: 13px;
    font-size: 0.8125rem;
  }
  #totalTop #area-navi ul li a .title {
    top: 40%;
  }
  #totalTop #area-navi ul li a .title span {
    line-height: 1;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1150px) {
  #totalTop #area-navi ul li a .place .building {
    font-size: 13px;
    font-size: 0.8125rem;
  }
  #totalTop #area-navi ul li a .title {
    top: 40%;
  }
  #totalTop #area-navi ul li a .title span {
    line-height: 1;
  }
}
@media only screen and (max-width: 768px) {
  #totalTop #area-navi-sp {
    display: block;
    padding: 7px 10px;
    background-color: #eee;
  }
  #totalTop #area-navi-sp ul {
    margin: 0 -3px;
    padding: 0;
    letter-spacing: -0.4em;
    text-align: center;
  }
  #totalTop #area-navi-sp ul li {
    display: inline-block;
    list-style: none;
    margin: 3px;
    width: 47%;
    width: -o-calc(100% / 2 - 7px);
    width: calc(100% / 2 - 7px);
    text-align: center;
    letter-spacing: normal;
  }
  #totalTop #area-navi-sp ul li a {
    display: block;
    padding: 10px 5px;
    border: 1px #ddd solid;
    border-radius: 4px;
    background-color: #fff;
    color: #2e2e2e;
  }
  #totalTop #area-navi ul li {
    float: none;
    width: 100%;
  }
  #totalTop #area-navi ul li a .place .station {
    font-size: 12px;
    font-size: 0.75rem;
  }
  #totalTop #area-navi ul li a .place .station .number {
    font-size: 20px;
    font-size: 1.25rem;
  }
  #totalTop #area-navi ul li a .place .building {
    font-size: 12px;
    font-size: 0.75rem;
  }
  #totalTop #area-navi ul li a .title {
    top: 36%;
    font-size: 10px;
    font-size: 0.625rem;
  }
  #totalTop #area-navi ul li a .title span {
    display: block;
    font-size: 30px;
    font-size: 1.875rem;
    font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  }
  #totalTop #area-navi ul li a:hover figure img {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }
  #totalTop #area-navi ul li a:hover .btn-group .btn,
  #totalTop #area-navi ul li a:hover .btn-group .red {
    background-position: 91% center;
  }
}
#totalTop #course-introduction {
  padding: 100px 0 50px;
  background: url("../assets/images/original/totaltop_bg_course-navi_mode.jpg") no-repeat center center;
  background-size: cover;
  color: #fff;
}
#totalTop #course-introduction .site-inner {
  max-width: 1120px;
}
#totalTop #course-introduction h2 {
  font-size: 24px;
  font-size: 1.5rem;
  margin-bottom: 1.5em;
}
#totalTop #course-introduction .description {
  width: 700px;
  font-size: 18px;
  font-size: 1.125rem;
}
#totalTop #course-introduction #course-navi .foreword {
  margin-bottom: 1.5em;
  padding: 14px 20px 6px;
  border: 3px solid #fff;
  border-bottom: none;
  line-height: 1.4;
  text-align: center;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: bold;
}
#totalTop #course-introduction #course-navi .foreword:after {
  position: relative;
  display: block;
  content: "";
  width: calc(100% + 40px);
  height: 12px;
  top: 15px;
  left: -20px;
  background: url("../img/mode/totaltop_bg_course-navi-foreword.png") no-repeat center bottom;
}
#totalTop #course-introduction #course-navi ul {
  margin: 0 -25px;
  padding: 0;
  overflow: hidden;
}
#totalTop #course-introduction #course-navi ul li {
  float: left;
  width: 29%;
  width: -o-calc(100% / 3 - 50px);
  width: calc(100% / 3 - 50px);
  margin: 0 25px 1em;
  list-style: none;
}
#totalTop #course-introduction #course-navi ul li a {
  display: block;
  padding: 20px 10px;
}
@media only screen and (max-width: 768px) {
  #totalTop #course-introduction {
    padding: 50px 0 15px;
    background: transparent;
  }
  #totalTop #course-introduction h2 {
    margin-bottom: 1em;
  }
  #totalTop #course-introduction .description {
    width: auto;
    font-size: 16px;
    font-size: 1rem;
  }
  #totalTop #course-introduction #course-navi .foreword {
    padding: 10px 20px 2px;
    font-size: 16px;
    font-size: 1rem;
  }
  #totalTop #course-introduction #course-navi .foreword:after {
    width: 114%;
    width: -o-calc(100% + 46px);
    width: calc(100% + 46px);
    top: 11px;
  }
  #totalTop #course-introduction #course-navi ul {
    margin: 0;
  }
  #totalTop #course-introduction #course-navi ul li {
    float: none;
    width: 100%;
    margin: 0 0 0.5em;
  }
  #totalTop #course-introduction #course-navi ul li a {
    padding: 1em 10px;
    text-align: left;
  }
}
@media only screen and (max-width: 768px) {
  #totalTop .banner-area {
    padding-top: 2em;
    padding-bottom: 2em;
    margin: 0 auto;
    background-color: #fff;
  }
}
#totalTop #to-recruitment-officer {
  padding-bottom: 2.5em;
}
#totalTop #to-recruitment-officer .site-inner {
  max-width: 1120px;
}
#totalTop #to-recruitment-officer a {
  position: relative;
  display: inline-block;
  padding: 0 0 0 24px;
  margin-right: 20px;
  vertical-align: middle;
  text-decoration: none;
  font-size: 16px;
  font-size: 1rem;
  border-bottom-color: #9fa5e0;
  background: url(../img/mode/common_arrow03.png) no-repeat left center;
}
@media only screen and (max-width: 768px) {
  #totalTop #to-recruitment-officer {
    margin-top: -1.5em;
    background-color: #fff;
  }
}
#totalTop .promotion-container {
  background: #fff;
}
#totalTop .promotion-container .module_banner-list {
  display: block;
  width: 1120px;
  padding-right: 0;
  padding-left: 0;
}
#totalTop .promotion-container .module_banner-list .item img {
  width: 366px;
  height: auto;
}
@media only screen and (max-width: 768px) {
  #totalTop .promotion-container .module_banner-list {
    width: 70%;
    padding: 1.5em 0;
  }
}
@media only screen and (max-width: 768px) {
  #totalTop #footer-navi .module_banner-list .item img {
    width: auto;
    max-width: 100%;
  }
}
#totalTop #site-footer .site-inner {
  max-width: 1120px;
}
#totalTop #site-footer #footer-link {
  font-size: 11px;
  font-size: 0.6875rem;
}
#totalTop #site-footer #footer-link #footer-navi ul {
  margin-bottom: 1.5em;
}
#totalTop #site-footer #footer-link #footer-navi ul li {
  padding: 0;
  margin: 0 12px;
  border: 0;
}
#totalTop #site-footer #footer-link #footer-navi ul li a {
  color: rgba(255, 255, 255, 0.5);
}
#totalTop #site-footer #footer-link #footer-navi ul li a::after {
  background-color: rgba(255, 255, 255, 0.5);
}
#totalTop #site-footer #copyright {
  padding-top: 0;
  color: rgba(255, 255, 255, 0.5);
}
@media only screen and (max-width: 768px) {
  #totalTop #site-footer #footer-link {
    font-size: 10px;
    font-size: 0.625rem;
  }
  #totalTop #site-footer #footer-link #footer-navi ul {
    margin-bottom: 0;
  }
  #totalTop #site-footer #footer-link #footer-navi ul li {
    margin: 0;
    border-bottom: 1px solid #2e2e2e;
  }
  #totalTop #site-footer #footer-link #footer-navi ul li:nth-child(2n) {
    border-left: 1px solid #2e2e2e;
  }
  #totalTop #site-footer #footer-link #footer-navi ul li:last-child {
    width: 100%;
  }
  #totalTop #site-footer #footer-link #footer-navi ul li a {
    padding: 1.5em 0;
  }
  #totalTop #site-footer #footer-link #footer-navi ul:last-of-type li:last-child {
    width: 50%;
  }
  #totalTop #site-footer #copyright {
    padding: 1.5em 0;
  }
}

#totalDetail article {
  margin-bottom: 5em;
}
@media only screen and (max-width: 768px) {
  #totalDetail article {
    margin-bottom: 2em;
  }
  #totalDetail .header-container {
    padding-bottom: 0;
    margin-bottom: 2em;
  }
}
#totalDetail .heading4 {
  margin-top: 2em;
}
@media only screen and (max-width: 768px) {
  #totalDetail .header-container .module_visual-slider .slider .item {
    width: 100%;
  }
  #totalDetail .header-container .module_visual-slider .slider .item a {
    cursor: default;
  }
}
#totalDetail #study-abroad-system #school-link .heading8 {
  color: #c41d1d;
}
#totalDetail #study-abroad-system #school-link .module_banner-list {
  margin-top: 2em;
  margin-bottom: 4em;
}
#totalDetail #study-abroad-system #school-link .module_banner-list .item {
  margin: 0 13px;
}
#totalDetail #study-abroad-system #school-link .module_banner-list .item:first-child {
  margin-left: 0;
}
#totalDetail #study-abroad-system #school-link .module_banner-list .item:last-child {
  margin-right: 0;
}
#totalDetail #study-abroad-system #relation-site-link .heading7, #totalDetail #study-abroad-system #relation-site-link .heading8 {
  color: #000;
  font-size: 14px;
  font-size: 0.875rem;
}
#totalDetail #study-abroad-system #relation-site-link .module_text-list li {
  margin-bottom: .5em;
}
@media only screen and (max-width: 768px) {
  #totalDetail #study-abroad-system #school-link .module_banner-list {
    margin-top: 0;
    margin-bottom: 2em;
  }
  #totalDetail #study-abroad-system #school-link .module_banner-list .item {
    margin: 0 0 1.5em;
  }
  #totalDetail #study-abroad-system #school-link .module_banner-list .item img {
    width: auto !important;
    max-width: 100% !important;
  }
  #totalDetail #study-abroad-system #relation-site-link .heading7, #totalDetail #study-abroad-system #relation-site-link .heading8 {
    color: #777;
    font-size: 14px;
    font-size: 0.875rem;
  }
  #totalDetail #study-abroad-system #relation-site-link .module_text-list li {
    margin-bottom: .5em;
  }
}
#totalDetail #teachers-employed .heading11 {
  background-color: #000;
}
#totalDetail #teachers-employed .module_column-box {
  margin: 0 -20px;
}
#totalDetail #teachers-employed .module_column-box .column-box {
  width: calc(33.333% - 40px);
  margin: 0 20px 2em;
}
#totalDetail #teachers-employed .module_banner-list {
  margin-top: 1.5em;
}
#totalDetail #teachers-employed .module_banner-list .item {
  margin: 1em 50px;
}
@media only screen and (max-width: 768px) {
  #totalDetail #teachers-employed .module_column-box {
    margin: 0;
  }
  #totalDetail #teachers-employed .module_column-box .column-box {
    width: calc(100%);
    margin: 0 0 2em;
  }
  #totalDetail #teachers-employed .module_banner-list {
    margin-top: 1.5em;
  }
  #totalDetail #teachers-employed .module_banner-list .item {
    margin: 0 0 1.5em;
  }
  #totalDetail #teachers-employed .module_banner-list .item img {
    max-width: 160px;
  }
}
#totalDetail #site-policy ol {
  padding-left: 20px;
}
#totalDetail #site-policy ol li {
  margin-bottom: 2em;
}
#totalDetail #site-policy ol li strong {
  color: #000;
}
@media only screen and (max-width: 768px) {
  #totalDetail #site-policy ol li {
    margin-bottom: 1.2em;
  }
  #totalDetail #site-policy .heading2 {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

#areaTop .site-inner {
  width: 1216px;
}
@media only screen and (max-width: 768px) {
  #areaTop .site-inner {
    width: 100%;
    padding-right: 20px;
    padding-left: 20px;
  }
}
#areaTop #site-header .site-inner {
  width: 1280px;
}
@media only screen and (max-width: 768px) {
  #areaTop #site-header .site-inner {
    width: 100%;
  }
}
#areaTop .emphasize-container:after {
  content: "";
  float: none;
  clear: both;
  display: block;
}
@media only screen and (max-width: 768px) {
  #areaTop section {
    overflow-x: hidden;
  }
}
@media only screen and (min-width: 769px) {
  #areaTop {
    overflow-x: scroll;
  }
}
#areaTop #contents-header {
  margin: 0;
}
#areaTop #contents-header .module_visual-slider {
  padding: 0;
  min-width: 1280px;
  margin: 0;
}
#areaTop #contents-header .module_visual-slider .slick-list {
  overflow: hidden;
}
#areaTop #contents-header .module_visual-slider .slick-dots {
  bottom: 80px;
  margin: 0 0 0 -566px;
}
#areaTop #contents-header .module_visual-slider .slick-slide .item {
  padding: 80px 60px;
  -webkit-transition: -webkit-transform 0.2s;
  transition: -webkit-transform 0.2s;
  transition: transform 0.2s;
  transition: transform 0.2s, -webkit-transform 0.2s;
  -webkit-transform-origin: 50% 50%;
      -ms-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}
#areaTop #contents-header .module_visual-slider .slick-slide .item img {
  width: 672px;
  height: 378px;
  margin: 0 auto;
}
#areaTop #contents-header .module_visual-slider .slick-current .item {
  -webkit-transform: scale(1.26);
      -ms-transform: scale(1.26);
          transform: scale(1.26);
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
  opacity: 1;
}
@media only screen and (max-width: 1280px) {
  #areaTop #contents-header .module_visual-slider .slick-list {
    overflow: hidden;
  }
  #areaTop #contents-header .module_visual-slider .slick-current .item {
    -webkit-transform: scale(1.18);
        -ms-transform: scale(1.18);
            transform: scale(1.18);
  }
}
@media only screen and (max-width: 768px) {
  #areaTop #contents-header.header-container {
    padding-bottom: 0;
  }
  #areaTop #contents-header .module_visual-slider {
    margin-bottom: 0;
    padding: 20px 0 0;
    min-width: auto;
  }
  #areaTop #contents-header .module_visual-slider .slick-list {
    overflow: hidden;
  }
  #areaTop #contents-header .module_visual-slider .slick-dots {
    height: auto;
    bottom: 6px;
    margin: 0;
  }
  #areaTop #contents-header .module_visual-slider .slick-slide .item {
    padding: 0;
    -webkit-transform: scale(0.83);
        -ms-transform: scale(0.83);
            transform: scale(0.83);
  }
  #areaTop #contents-header .module_visual-slider .slick-slide .item img {
    width: 297px;
    height: 392px;
    margin: 0 auto;
  }
  #areaTop #contents-header .module_visual-slider .slick-current .item {
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
    padding-bottom: 32px;
  }
}
#areaTop #contents-header {
  margin-bottom: 0;
  background-color: #fff;
}
#areaTop #contents-header #visitor-navi {
  margin-top: 32px;
}
#areaTop #contents-header #visitor-navi ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  background-color: #fff;
  margin: 0;
  padding: 0;
}
#areaTop #contents-header #visitor-navi ul li {
  position: relative;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  list-style: none;
  text-align: center;
}
#areaTop #contents-header #visitor-navi ul li a {
  display: block;
  color: #151515;
  padding: 1.5em 0;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.5;
  font-weight: bold;
}
#areaTop #contents-header #visitor-navi ul li a:after {
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  width: 1px;
  height: 21px;
  margin-top: -10px;
  background: #151515;
  content: "";
}
#areaTop #contents-header #visitor-navi ul li a:hover {
  color: #ff004d;
}
#areaTop #contents-header #visitor-navi ul li:first-child a:before {
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  width: 1px;
  height: 21px;
  margin-top: -10px;
  background: #151515;
  content: "";
}
@media only screen and (max-width: 768px) {
  #areaTop #contents-header {
    padding-bottom: 0;
  }
}
#areaTop #summary {
  position: relative;
  padding: 149px 0 146px 0;
  margin: 0;
  color: #fff;
  text-align: center;
  background-color: #000;
  overflow: hidden;
}
#areaTop #summary .contents-inner {
  position: -webkit-sticky;
  position: sticky;
  z-index: 3;
}
#areaTop #summary p {
  font-size: 15px;
  font-size: 0.9375rem;
  margin-bottom: 20px;
}
#areaTop #summary .you {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.4;
  letter-spacing: 0.02em;
  font-weight: bold;
  margin: 60px 0 32px;
}
#areaTop #summary .pro {
  font-size: 28px;
  font-size: 1.75rem;
  line-height: 140%;
  letter-spacing: 0.02em;
  font-weight: bold;
  margin: 32px 0 60px;
}
#areaTop #summary #summary-navi {
  margin: 0 auto;
  width: 394px;
  height: 55px;
}
#areaTop #summary #summary-navi .btn {
  width: 100%;
  height: 100%;
  -webkit-box-shadow: none;
          box-shadow: none;
  padding: 20px 0;
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 100%;
  letter-spacing: -0.01em;
}
#areaTop #summary #wrapper_mbYTP_video {
  z-index: 2 !important;
}
#areaTop #summary .background {
  background: #000;
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
}
#areaTop #summary .background .background-video {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}
#areaTop #summary .background .background-video::after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: '';
  background-color: rgba(0, 0, 0, 0.4);
}
#areaTop #summary .background .background-video video {
  width: auto;
  height: auto;
  min-height: 100%;
  min-width: 100%;
  max-width: none;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
@media only screen and (min-width: 768px) and (max-width: 1150px) {
  #areaTop #summary {
    background: url("../img/mode/areatop_summary_bg.jpg") no-repeat center center;
  }
}
@media only screen and (max-width: 768px) {
  #areaTop #summary {
    position: relative;
    padding: 0;
    text-align: left;
    overflow: initial;
  }
  #areaTop #summary .contents-inner {
    padding-bottom: 300px;
    margin-top: -150%;
  }
  #areaTop #summary p {
    font-size: 15px;
    font-size: 0.9375rem;
    margin-bottom: 20px;
  }
  #areaTop #summary .you {
    font-size: 20px;
    font-size: 1.25rem;
    margin: 32px 0;
  }
  #areaTop #summary .pro {
    margin: 32px 0;
  }
  #areaTop #summary #summary-navi {
    width: 100%;
    height: 55px;
  }
  #areaTop #summary .background {
    position: -webkit-sticky;
    position: sticky;
    height: 100vh;
    z-index: 1;
    overflow: hidden;
  }
}
#areaTop .contents-wrap {
  margin-bottom: 100px;
}
#areaTop .heading-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}
#areaTop .heading-wrap h2 {
  font-size: 40px;
  font-size: 2.5rem;
  font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  margin-right: auto;
}
#areaTop .heading-wrap h2 span {
  position: relative;
  top: -0.4em;
  margin-left: 10px;
  font-size: 18px;
  font-size: 1.125rem;
}
@media only screen and (max-width: 768px) {
  #areaTop .contents-wrap {
    margin-bottom: 5em;
  }
  #areaTop .heading-wrap {
    display: block;
    text-align: center;
  }
  #areaTop .heading-wrap h2 {
    font-size: 32px;
    font-size: 2rem;
    margin-bottom: 0.75em;
  }
  #areaTop .heading-wrap h2 span {
    display: block;
    margin: 0px;
    top: auto;
    font-size: 16px;
    font-size: 1rem;
  }
  #areaTop .heading-wrap .detail-button {
    display: none;
  }
}
#areaTop #topics {
  padding: 0 0 140px;
  margin-bottom: 0;
}
#areaTop #topics .bill-board-container .module_banner-list .item {
  margin: 10px 0 !important;
}
#areaTop #topics #school-news,
#areaTop #topics #admission-information {
  float: left;
  width: 50%;
  color: #1b1b1b;
  margin-bottom: 0;
}
#areaTop #topics #school-news .title,
#areaTop #topics #admission-information .title {
  text-align: left;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: bold;
  margin-bottom: 2em;
}
#areaTop #topics #school-news .module_news-list,
#areaTop #topics #admission-information .module_news-list {
  position: relative;
  z-index: 1;
}
#areaTop #topics #school-news .module_news-list li,
#areaTop #topics #admission-information .module_news-list li {
  position: relative;
  min-height: 130px;
}
#areaTop #topics #school-news .module_news-list li .image,
#areaTop #topics #admission-information .module_news-list li .image {
  float: right;
  margin-left: 32px;
  width: 194px;
  height: 110px;
  border: solid 1px #efefef;
}
#areaTop #topics #school-news .module_news-list li .image img,
#areaTop #topics #admission-information .module_news-list li .image img {
  width: 100%;
  height: 100%;
  -webkit-transition: 0.6s;
  transition: 0.6s;
}
#areaTop #topics #school-news .module_news-list li .text,
#areaTop #topics #admission-information .module_news-list li .text {
  font-size: 12px;
  font-size: 0.75rem;
  color: #151515;
}
#areaTop #topics #school-news .module_news-list li .text .date,
#areaTop #topics #admission-information .module_news-list li .text .date {
  color: #151515;
  font-size: 12px;
  font-size: 0.75rem;
}
#areaTop #topics #school-news .module_news-list li .text .date span,
#areaTop #topics #admission-information .module_news-list li .text .date span {
  color: #ff004d;
  margin-left: 12px;
}
#areaTop #topics #school-news .module_news-list li .text .category,
#areaTop #topics #admission-information .module_news-list li .text .category {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  font-size: 12px;
  font-size: 0.75rem;
  margin-right: 12px;
}
#areaTop #topics #school-news .module_news-list li .text p,
#areaTop #topics #admission-information .module_news-list li .text p {
  clear: both;
  font-size: 14px;
  font-size: 0.875rem;
  margin-top: 12px;
  margin-bottom: .5em;
}
#areaTop #topics #school-news .module_news-list li .text p a,
#areaTop #topics #admission-information .module_news-list li .text p a {
  color: #000;
}
#areaTop #topics #school-news .module_news-list li:hover .image,
#areaTop #topics #admission-information .module_news-list li:hover .image {
  overflow: hidden;
}
#areaTop #topics #school-news .module_news-list li:hover .image img,
#areaTop #topics #admission-information .module_news-list li:hover .image img {
  -webkit-transform: scale(1.025);
      -ms-transform: scale(1.025);
          transform: scale(1.025);
}
#areaTop #topics #school-news .module_news-list li:hover .text p a:after,
#areaTop #topics #admission-information .module_news-list li:hover .text p a:after {
  width: 100%;
}
#areaTop #topics #school-news .module_news-list li:hover .text p .underline,
#areaTop #topics #admission-information .module_news-list li:hover .text p .underline {
  background-size: 100% 100%;
}
#areaTop #topics #school-news .btn-group,
#areaTop #topics #admission-information .btn-group {
  text-align: center;
}
#areaTop #topics #school-news {
  padding-right: 45px;
}
#areaTop #topics #admission-information {
  padding-left: 45px;
}
@media only screen and (max-width: 768px) {
  #areaTop #topics {
    padding: 0;
    margin-bottom: 0;
  }
  #areaTop #topics h2 {
    font-size: 24px;
    font-size: 1.5rem;
    margin: 80px 0 0;
  }
  #areaTop #topics .bill-board-container {
    overflow: inherit;
  }
  #areaTop #topics .bill-board-container .module_banner-list {
    padding: 0 0 60px 10px;
    margin: 0 -20px;
    width: calc(100% + 40px);
  }
  #areaTop #topics .bill-board-container .module_banner-list .item {
    margin: 10px !important;
  }
  #areaTop #topics .bill-board-container .module_banner-list.slider .slick-dots {
    margin-top: 0;
    margin-right: 10px;
  }
  #areaTop #topics .bill-board-container .module_banner-list.slider .slick-dots li {
    margin: 0 4px !important;
  }
  #areaTop #topics .bill-board-container .module_banner-list.slider .slick-dots li button {
    width: 6px;
    height: 6px;
    padding: 0;
  }
  #areaTop #topics .bill-board-container .module_banner-list.slider .slick-dots li button::before {
    top: 0;
    left: 0;
    width: 6px;
    height: 6px;
  }
  #areaTop #topics #school-news,
  #areaTop #topics #admission-information {
    float: none;
    width: 100%;
    padding-top: 0;
    margin: 0 0 4em;
    overflow-x: visible;
  }
  #areaTop #topics #school-news .title,
  #areaTop #topics #admission-information .title {
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 28px;
    text-align: center;
    margin-bottom: 34.5px;
  }
  #areaTop #topics #school-news .module_news-list li,
  #areaTop #topics #admission-information .module_news-list li {
    min-height: inherit;
    margin-bottom: 1.5em;
  }
  #areaTop #topics #school-news .module_news-list li .image,
  #areaTop #topics #admission-information .module_news-list li .image {
    width: auto;
    height: auto;
    float: right;
    margin: 28px 0 0 12px;
  }
  #areaTop #topics #school-news .module_news-list li .image img,
  #areaTop #topics #admission-information .module_news-list li .image img {
    width: 158px;
    height: 89px;
  }
  #areaTop #topics #school-news .module_news-list li .text,
  #areaTop #topics #admission-information .module_news-list li .text {
    width: calc(100% - 172px);
  }
  #areaTop #topics #school-news .module_news-list li .text .category,
  #areaTop #topics #admission-information .module_news-list li .text .category {
    margin-right: 10px;
    line-height: 1.5;
    font-weight: bold;
  }
  #areaTop #topics #school-news .module_news-list li .text .date,
  #areaTop #topics #admission-information .module_news-list li .text .date {
    line-height: 1.5;
    white-space: inherit;
  }
  #areaTop #topics #school-news .module_news-list li .text .date span,
  #areaTop #topics #admission-information .module_news-list li .text .date span {
    margin-left: 10px;
    display: inline-block;
  }
  #areaTop #topics #school-news .module_news-list li .text p,
  #areaTop #topics #admission-information .module_news-list li .text p {
    font-size: 14px;
    font-size: 0.875rem;
    margin-top: 10px;
    line-height: 1.5;
  }
  #areaTop #topics #school-news {
    border: none;
    padding-right: 0;
    margin-bottom: 60px;
  }
  #areaTop #topics #admission-information {
    padding-left: 0;
    margin-bottom: 140px;
  }
}
#areaTop #graduates {
  text-align: center;
}
#areaTop #graduates #work-gallery {
  margin: 0 -5px 2.5em;
  padding: 0;
  letter-spacing: -0.4em;
}
#areaTop #graduates #work-gallery li {
  display: inline-block;
  list-style: none;
  letter-spacing: normal;
  margin: 0 5px 10px;
}
#areaTop #graduates .catch-copy {
  font-size: 24px;
  font-size: 1.5rem;
  margin-bottom: 1.5em;
  line-height: 1.44;
}
#areaTop #graduates .heading16 {
  color: #fff;
}
#areaTop #graduates #graduate-list {
  padding: 0;
}
#areaTop #graduates #graduate-list li {
  display: inline-block;
  list-style: none;
  margin-right: 8px;
}
@media only screen and (max-width: 768px) {
  #areaTop #graduates {
    text-align: left;
  }
  #areaTop #graduates .image {
    margin-bottom: 2em;
  }
  #areaTop #graduates .heading16 {
    text-align: left;
  }
  #areaTop #graduates #graduate-list li {
    display: block;
    margin-bottom: 0.2em;
  }
  #areaTop #graduates .detail-button.sp {
    width: 60%;
    display: block;
    margin: 3em auto;
  }
}
#areaTop #students #image-wrap-sp {
  display: none;
}
#areaTop #students #image-wrap-pc {
  position: relative;
}
#areaTop #students #image-wrap-pc #satisfaction {
  position: absolute;
  top: 0;
  left: 0;
  width: 50%;
  height: 50%;
  text-align: center;
}
#areaTop #students #image-wrap-pc #satisfaction .inner {
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
#areaTop #students #image-wrap-pc #satisfaction .inner .title {
  font-size: 32px;
  font-size: 2rem;
  line-height: 1;
  font-weight: bold;
}
#areaTop #students #image-wrap-pc #satisfaction .inner .rate {
  font-size: 136px;
  font-size: 8.5rem;
  font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  line-height: 1;
  letter-spacing: -0.05em;
}
#areaTop #students #image-wrap-pc #satisfaction .inner .rate span {
  font-size: 80px;
  font-size: 5rem;
}
#areaTop #students #image-wrap-pc #satisfaction-detail {
  position: absolute;
  top: 50%;
  right: 0;
  width: 50%;
  height: 50%;
  text-align: center;
}
#areaTop #students #image-wrap-pc #satisfaction-detail .inner {
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
#areaTop #students #image-wrap-pc #satisfaction-detail .inner .description {
  font-size: 28px;
  font-size: 1.75rem;
  font-weight: bold;
  line-height: 1.3;
  margin-bottom: 0.5em;
}
#areaTop #students #image-wrap-pc #satisfaction-detail .inner .detail {
  font-size: 12px;
  font-size: 0.75rem;
}
#areaTop #students #image-wrap-pc img {
  width: 100%;
}
@media only screen and (max-width: 768px) {
  #areaTop #students #image-wrap-pc {
    display: none;
  }
  #areaTop #students #image-wrap-sp {
    display: block;
  }
  #areaTop #students #image-wrap-sp #satisfaction-wrap {
    padding: 3em 20px 1em;
    background: url("../img/mode/areatop_students_bg2-smp.jpg") no-repeat top center;
    background-size: cover;
    overflow: hidden;
  }
  #areaTop #students #image-wrap-sp #satisfaction-wrap #satisfaction {
    margin-bottom: 1em;
    text-align: center;
  }
  #areaTop #students #image-wrap-sp #satisfaction-wrap #satisfaction .inner .title {
    font-size: 26px;
    font-size: 1.625rem;
    line-height: 1;
    font-weight: bold;
  }
  #areaTop #students #image-wrap-sp #satisfaction-wrap #satisfaction .inner .rate {
    font-size: 118px;
    font-size: 7.375rem;
    font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
    line-height: 1;
    letter-spacing: -0.05em;
  }
  #areaTop #students #image-wrap-sp #satisfaction-wrap #satisfaction .inner .rate span {
    font-size: 80px;
    font-size: 5rem;
  }
  #areaTop #students #image-wrap-sp #satisfaction-wrap #satisfaction-detail .inner .description {
    font-size: 21px;
    font-size: 1.3125rem;
    font-weight: bold;
    line-height: 1.44;
  }
  #areaTop #students #image-wrap-sp #satisfaction-wrap #satisfaction-detail .inner .detail {
    font-size: 12px;
    font-size: 0.75rem;
  }
  #areaTop #students #image-wrap-sp #satisfaction-wrap .detail-button.sp {
    width: 75%;
    display: block;
    margin: 3em auto;
  }
}
#areaTop #data #data-wrap {
  padding: 60px 0;
  background: url("../img/mode/areatop_data_bg.jpg") no-repeat top center;
}
#areaTop #data #data-wrap .graph-panel {
  margin-bottom: 4.5em;
  background: url("../img/mode/areatop_data_panel.png");
}
#areaTop #data #data-wrap .graph-panel h3 {
  margin-bottom: 0;
  padding: 0.5em 0;
  background-color: rgba(255, 255, 255, 0.65);
  font-size: 28px;
  font-size: 1.75rem;
  text-align: center;
}
#areaTop #data #data-wrap .graph-panel .inner {
  position: relative;
}
#areaTop #data #data-wrap .graph-panel .inner img {
  position: absolute;
}
#areaTop #data #data-wrap .graph-panel .inner #data-element1 {
  position: relative;
  width: 241px;
  height: 273px;
  top: 110px;
  left: 80px;
  z-index: 200;
  border-bottom: 2px solid #000;
  border-top: 2px solid #000;
}
#areaTop #data #data-wrap .graph-panel .inner #data-element1 .element-inner {
  position: relative;
  top: 50%;
  left: 50%;
  -ms-transform: translateX(-50%) translateY(-50%);
  -webkit-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
}
#areaTop #data #data-wrap .graph-panel .inner #data-element1 .element-inner .description {
  font-size: 28px;
  font-size: 1.75rem;
  font-weight: bold;
  line-height: 1.4;
  margin: 0;
}
#areaTop #data #data-wrap .graph-panel .inner #data-element1 .element-inner .ratio {
  font-size: 96px;
  font-size: 6rem;
  font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  line-height: 1.2;
}
#areaTop #data #data-wrap .graph-panel .inner #data-element1 .element-inner .ratio span {
  font-size: 72px;
  font-size: 4.5rem;
}
#areaTop #data #data-wrap .graph-panel .inner #data-element2,
#areaTop #data #data-wrap .graph-panel .inner .data-element2 {
  top: 105px;
  right: 90px;
  z-index: 200;
}
#areaTop #data #data-wrap .graph-panel .inner #data-element3,
#areaTop #data #data-wrap .graph-panel .inner .data-element3 {
  top: 154px;
  left: 380px;
  z-index: 200;
}
#areaTop #data #data-wrap .graph-panel .inner #data-element4,
#areaTop #data #data-wrap .graph-panel .inner .data-element4 {
  top: 105px;
  left: 380px;
  z-index: 200;
}
#areaTop #data #data-wrap .graph-panel .inner #data-element5,
#areaTop #data #data-wrap .graph-panel .inner .data-element5 {
  top: 260px;
  right: 85px;
  z-index: 200;
}
#areaTop #data #data-wrap .graph-panel .inner #data-element6,
#areaTop #data #data-wrap .graph-panel .inner .data-element6 {
  top: 110px;
  right: 260px;
  z-index: 100;
}
#areaTop #data #data-wrap .graph-panel .inner #data-element7,
#areaTop #data #data-wrap .graph-panel .inner .data-element7 {
  position: relative;
  top: 115px;
  left: 560px;
  width: 300px;
  z-index: 200;
  text-align: center;
}
#areaTop #data #data-wrap .graph-panel .inner #data-element7 .element-inner .description,
#areaTop #data #data-wrap .graph-panel .inner .data-element7 .element-inner .description {
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1.4;
  margin: 0;
}
#areaTop #data #data-wrap .graph-panel .inner #data-element7 .element-inner .ratio,
#areaTop #data #data-wrap .graph-panel .inner .data-element7 .element-inner .ratio {
  font-size: 96px;
  font-size: 6rem;
  margin: 0;
  font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  line-height: 1.2;
}
#areaTop #data #data-wrap .graph-panel .inner #data-element7 .element-inner .ratio span,
#areaTop #data #data-wrap .graph-panel .inner .data-element7 .element-inner .ratio span {
  font-size: 72px;
  font-size: 4.5rem;
}
#areaTop #data #data-wrap .graph-panel .inner #data-element8,
#areaTop #data #data-wrap .graph-panel .inner .data-element8 {
  top: 80px;
  left: 275px;
  z-index: 100;
}
#areaTop #data #data-wrap .graph-panel:nth-child(1) .inner {
  min-height: 480px;
}
#areaTop #data #data-wrap .graph-panel:nth-child(2) .inner {
  min-height: 400px;
}
#areaTop #data #data-wrap #guarantee .heading2 {
  color: #fff;
  font-size: 24px;
  font-size: 1.5rem;
  margin-bottom: 1.5em;
}
#areaTop #data #data-wrap #guarantee .heading2:before {
  width: 60px;
  height: 2px;
  margin-bottom: 1em;
  background-color: #fff;
}
#areaTop #data #data-wrap #guarantee #guarantee-list {
  margin: 0 -25px 2em;
  padding: 0;
  letter-spacing: -0.4em;
  text-align: center;
}
#areaTop #data #data-wrap #guarantee #guarantee-list li {
  display: inline-block;
  width: 280px;
  margin: 0 25px;
  list-style: none;
  letter-spacing: normal;
  vertical-align: top;
}
#areaTop #data #data-wrap #guarantee #guarantee-list li .name {
  position: relative;
  display: table-cell;
  width: 280px;
  height: 280px;
  margin-bottom: 1em;
  background: url("../img/mode/cross_common_overlay2.png");
  border-radius: 140px;
  font-size: 20px;
  font-size: 1.25rem;
  vertical-align: middle;
  text-align: center;
}
#areaTop #data #data-wrap #guarantee #guarantee-list li .name:before {
  position: absolute;
  top: 50px;
  width: 100%;
  display: block;
  text-align: center;
  color: #c41d1d;
  font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  font-size: 40px;
  font-size: 2.5rem;
}
#areaTop #data #data-wrap #guarantee #guarantee-list li:nth-child(1) .name:before {
  content: "01";
}
#areaTop #data #data-wrap #guarantee #guarantee-list li:nth-child(2) .name:before {
  content: "02";
}
#areaTop #data #data-wrap #guarantee #guarantee-list li:nth-child(3) .name:before {
  content: "03";
}
#areaTop #data #data-wrap #guarantee #guarantee-list li .description {
  color: #fff;
  text-align: center;
  margin: 1.5em 0;
}
#areaTop #data #data-wrap #guarantee .btn-group {
  text-align: center;
}
#areaTop #data #data-wrap #guarantee .btn-group .btn {
  -webkit-box-shadow: 0 1px 2px #2e2e2e;
  box-shadow: 0 1px 2px #2e2e2e;
}
@media only screen and (max-width: 768px) {
  #areaTop #data #data-wrap {
    padding: 28px 0 10px;
    background: url("../img/mode/areatop_data_bg-smp.jpg") no-repeat top center;
    background-size: cover;
  }
  #areaTop #data #data-wrap .graph-panel {
    margin: 0 10px 2.5em;
    padding: 0 10px;
    width: -o-calc(100% - 20px);
    width: calc(100% - 20px);
  }
  #areaTop #data #data-wrap .graph-panel h3 {
    margin: 0 -10px;
    padding: 0.6em 0 0.5em;
    font-size: 22px;
    font-size: 1.375rem;
  }
  #areaTop #data #data-wrap .graph-panel .inner img {
    position: relative;
  }
  #areaTop #data #data-wrap .graph-panel .inner #data-element1 {
    top: auto;
    left: auto;
    right: auto;
    bottom: auto;
    height: auto;
    margin: 40px 0 26px;
    width: 100%;
    border-bottom: 1px solid #000;
    border-top: 1px solid #000;
    padding-top: 25px;
    padding-bottom: 10px;
    text-align: center;
  }
  #areaTop #data #data-wrap .graph-panel .inner #data-element1 .element-inner {
    top: 0;
    left: 0;
    -ms-transform: none;
    -webkit-transform: none;
    transform: none;
  }
  #areaTop #data #data-wrap .graph-panel .inner #data-element1 .element-inner .title {
    display: inline-block;
  }
  #areaTop #data #data-wrap .graph-panel .inner #data-element1 .element-inner .title .description {
    font-size: 21px;
    font-size: 1.3125rem;
    line-height: 1;
    float: left;
  }
  #areaTop #data #data-wrap .graph-panel .inner #data-element1 .element-inner .ratio {
    font-size: 80px;
    font-size: 5rem;
    line-height: 1;
    margin: 0;
  }
  #areaTop #data #data-wrap .graph-panel .inner #data-element1 .element-inner .ratio span {
    font-size: 40px;
    font-size: 2.5rem;
  }
  #areaTop #data #data-wrap .graph-panel .inner #data-element2,
  #areaTop #data #data-wrap .graph-panel .inner .data-element2 {
    top: auto;
    left: auto;
    right: auto;
    bottom: auto;
    width: 63%;
    margin-bottom: 18px;
  }
  #areaTop #data #data-wrap .graph-panel .inner #data-element3,
  #areaTop #data #data-wrap .graph-panel .inner .data-element3 {
    top: auto;
    left: auto;
    right: auto;
    bottom: auto;
    margin-bottom: 15px;
  }
  #areaTop #data #data-wrap .graph-panel .inner #data-element4 {
    top: auto;
    left: auto;
    right: auto;
    bottom: auto;
    width: 56%;
    margin-bottom: 33px;
  }
  #areaTop #data #data-wrap .graph-panel .inner .data-element4 {
    top: auto;
    left: auto;
    right: auto;
    bottom: auto;
    width: 56%;
    padding-bottom: 33px;
  }
  #areaTop #data #data-wrap .graph-panel .inner #data-element5,
  #areaTop #data #data-wrap .graph-panel .inner .data-element5 {
    top: auto;
    left: auto;
    right: auto;
    bottom: auto;
    margin-bottom: 15px;
  }
  #areaTop #data #data-wrap .graph-panel .inner #data-element6,
  #areaTop #data #data-wrap .graph-panel .inner .data-element6 {
    top: auto;
    left: auto;
    right: auto;
    bottom: auto;
    margin: 0 10px 15px;
    width: -o-calc(100% - 20px);
    width: calc(100% - 20px);
  }
  #areaTop #data #data-wrap .graph-panel .inner #data-element7,
  #areaTop #data #data-wrap .graph-panel .inner .data-element7 {
    top: auto;
    left: auto;
    right: auto;
    bottom: auto;
    width: 100%;
    margin: 0 auto;
    padding-bottom: 25px;
  }
  #areaTop #data #data-wrap .graph-panel .inner #data-element7 .element-inner .description,
  #areaTop #data #data-wrap .graph-panel .inner .data-element7 .element-inner .description {
    font-size: 16px;
    font-size: 1rem;
  }
  #areaTop #data #data-wrap .graph-panel .inner #data-element7 .element-inner .ratio,
  #areaTop #data #data-wrap .graph-panel .inner .data-element7 .element-inner .ratio {
    font-size: 80px;
    font-size: 5rem;
  }
  #areaTop #data #data-wrap .graph-panel .inner #data-element7 .element-inner .ratio span,
  #areaTop #data #data-wrap .graph-panel .inner .data-element7 .element-inner .ratio span {
    font-size: 40px;
    font-size: 2.5rem;
  }
  #areaTop #data #data-wrap .graph-panel .inner #data-element8,
  #areaTop #data #data-wrap .graph-panel .inner .data-element8 {
    top: auto;
    left: auto;
    right: auto;
    bottom: auto;
    margin: 25px 50px 5px;
    width: -o-calc(100% - 100px);
    width: calc(100% - 100px);
  }
  #areaTop #data #data-wrap .graph-panel:nth-child(1) .inner {
    min-height: inherit;
  }
  #areaTop #data #data-wrap .graph-panel:nth-child(2) .inner {
    min-height: inherit;
  }
  #areaTop #data #data-wrap .detail-button.sp {
    width: 60%;
    display: block;
    margin: -0.5em auto 4em;
  }
  #areaTop #data #data-wrap #guarantee .heading2 {
    font-size: 14px;
    font-size: 0.875rem;
    margin-bottom: 1em;
  }
  #areaTop #data #data-wrap #guarantee .heading2:before {
    width: 40px;
    margin-bottom: 1em;
  }
  #areaTop #data #data-wrap #guarantee #guarantee-list {
    position: relative;
  }
  #areaTop #data #data-wrap #guarantee #guarantee-list li {
    margin: 0 25px;
  }
  #areaTop #data #data-wrap #guarantee #guarantee-list li .name {
    margin-bottom: 1em;
    background: url("../img/mode/cross_common_overlay2.png");
    font-size: 15px;
    font-size: 0.9375rem;
  }
  #areaTop #data #data-wrap #guarantee #guarantee-list li .name:before {
    position: absolute;
    top: 20%;
    font-size: 28px;
    font-size: 1.75rem;
  }
  #areaTop #data #data-wrap #guarantee #guarantee-list li .description {
    color: #fff;
    text-align: left;
    margin: 1.5em 0;
    font-size: 13px;
    font-size: 0.8125rem;
    text-align: justify;
    text-justify: inter-ideograph;
  }
  #areaTop #data #data-wrap #guarantee #guarantee-list .slick-prev,
  #areaTop #data #data-wrap #guarantee #guarantee-list .slick-next {
    position: absolute;
    width: 7px;
    height: 12px;
    padding: 20px;
    background: url("../img/mode/common_arrow06.png") no-repeat center center;
    background-size: 7px;
    border: none;
  }
  #areaTop #data #data-wrap #guarantee #guarantee-list .slick-prev.slick-disabled,
  #areaTop #data #data-wrap #guarantee #guarantee-list .slick-next.slick-disabled {
    display: none !important;
  }
  #areaTop #data #data-wrap #guarantee #guarantee-list .slick-prev {
    left: 10%;
    -webkit-transform: rotate(-180deg);
    -ms-transform: rotate(-180deg);
    transform: rotate(-180deg);
  }
  #areaTop #data #data-wrap #guarantee #guarantee-list .slick-next {
    right: 10%;
  }
  #areaTop #data #data-wrap #guarantee .btn-group {
    margin: 0 -20px;
  }
  #areaTop #data #data-wrap #guarantee .btn-group .btn {
    border: 0;
    color: #fff;
    background: url("../img/mode/common_arrow06.png") no-repeat 91% center #000;
    background-size: 8px auto;
    -webkit-box-shadow: none;
            box-shadow: none;
    min-width: inherit;
    font-size: 14px;
    font-size: 0.875rem;
    padding: 0.6em 30px;
    width: 60%;
    display: block;
    margin: -0.5em auto 4em;
  }
}
#areaTop #news .news-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  margin: 0 -50px 3.5em;
  padding-bottom: 80px;
  border-bottom: 1px #fff solid;
}
#areaTop #news .news-wrap section {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  margin-bottom: 0;
  padding: 0 50px;
}
#areaTop #news .news-wrap section h3.title {
  font-size: 19px;
  font-size: 1.1875rem;
  margin-bottom: 1.5em;
}
#areaTop #news .news-wrap section .module_news-list li .image {
  width: 140px !important;
  height: 93px !important;
  margin-top: 0.25em;
}
#areaTop #news .news-wrap section .module_news-list li .text .category {
  font-size: 14px;
  font-size: 0.875rem;
  font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  color: #fcc800;
}
#areaTop #news .news-wrap section .module_news-list li .text .date {
  font-size: 14px;
  font-size: 0.875rem;
}
#areaTop #news .news-wrap section .module_news-list li .text .date span {
  color: #fff100;
}
#areaTop #news .news-wrap section .module_news-list li .text .title {
  margin-bottom: 0;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.6;
}
#areaTop #news .news-wrap section .module_news-list li .text .title a {
  color: #fff;
}
#areaTop #news .news-wrap section .module_news-list li .text p {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.6;
}
#areaTop #news .news-wrap section .btn-group {
  text-align: center;
}
#areaTop #news .news-wrap #school-news {
  border-right: 1px #fff solid;
}
#areaTop #news #pickup {
  text-align: center;
}
#areaTop #news #pickup h3.title {
  font-size: 19px;
  font-size: 1.1875rem;
  margin-bottom: 1.5em;
}
#areaTop #news #pickup #pickup-list {
  letter-spacing: -0.4em;
  padding: 0;
}
#areaTop #news #pickup #pickup-list li {
  position: relative;
  display: inline-block;
  letter-spacing: normal;
  list-style: none;
  width: 25%;
  border-right: 2px #fff solid;
  overflow: hidden;
}
#areaTop #news #pickup #pickup-list li:before {
  position: absolute;
  font-size: 86px;
  font-size: 5.375rem;
  color: #ecdf13;
  z-index: 100;
  left: 0;
  width: 100%;
  font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  line-height: 1;
  top: 15%;
  letter-spacing: -0.025em;
}
#areaTop #news #pickup #pickup-list li:nth-child(1):before {
  content: "01";
}
#areaTop #news #pickup #pickup-list li:nth-child(2):before {
  content: "02";
}
#areaTop #news #pickup #pickup-list li:nth-child(3):before {
  content: "03";
}
#areaTop #news #pickup #pickup-list li:nth-child(4):before {
  content: "04";
}
#areaTop #news #pickup #pickup-list li:last-child {
  border-right: none;
}
#areaTop #news #pickup #pickup-list li a {
  display: block;
}
#areaTop #news #pickup #pickup-list li a .images {
  margin-bottom: 0;
}
#areaTop #news #pickup #pickup-list li a .images img {
  display: block;
}
#areaTop #news #pickup #pickup-list li a .text {
  position: absolute;
  bottom: 0;
  width: 100%;
  padding: 15px 20px 3.5em;
  background-color: #ecdf13;
  background-color: rgba(236, 223, 19, 0.8);
  color: #000;
  text-align: left;
}
#areaTop #news #pickup #pickup-list li a .text .title {
  font-size: 18px;
  font-size: 1.125rem;
}
#areaTop #news #pickup #pickup-list li a .text .date {
  width: 89%;
  width: -o-calc(100% - 40px);
  width: calc(100% - 40px);
  position: absolute;
  bottom: 15px;
  font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
}
#areaTop #news #pickup #pickup-list li a .text .date:after {
  float: right;
  content: "もっとみる>";
  border-bottom: 1px #000 solid;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
}
#areaTop #news #pickup #pickup-list li:hover .text .date:after {
  border-bottom: 1px transparent solid;
}
@media only screen and (max-width: 768px) {
  #areaTop #news .news-wrap {
    display: block;
    margin: 0;
    padding: 2em 0 4em;
    border-bottom: none;
  }
  #areaTop #news .news-wrap section {
    padding: 0;
  }
  #areaTop #news .news-wrap section h3.title {
    font-size: 17px;
    font-size: 1.0625rem;
    margin-bottom: 1em;
    text-align: center;
  }
  #areaTop #news .news-wrap section .module_news-list {
    margin-bottom: 2em;
  }
  #areaTop #news .news-wrap section .module_news-list li .image {
    width: 70px !important;
    height: 50px !important;
    margin-top: 0.25em;
  }
  #areaTop #news .news-wrap section .module_news-list li .text .category {
    font-size: 12px;
    font-size: 0.75rem;
  }
  #areaTop #news .news-wrap section .module_news-list li .text .date {
    font-size: 12px;
    font-size: 0.75rem;
  }
  #areaTop #news .news-wrap section .module_news-list li .text .title {
    font-size: 14px;
    font-size: 0.875rem;
  }
  #areaTop #news .news-wrap #school-news {
    border-right: none;
    margin-bottom: 4em;
  }
  #areaTop #news #pickup h3.title {
    font-size: 17px;
    font-size: 1.0625rem;
    margin-bottom: 1em;
    text-align: center;
  }
  #areaTop #news #pickup #pickup-list {
    letter-spacing: normal;
  }
  #areaTop #news #pickup #pickup-list li {
    display: block;
    width: 100%;
    border-right: none;
    border-bottom: 1px #fff solid;
  }
  #areaTop #news #pickup #pickup-list li:before {
    font-size: 78px;
    font-size: 4.875rem;
    top: 15%;
  }
  #areaTop #news #pickup #pickup-list li:last-child {
    border-bottom: none;
  }
  #areaTop #news #pickup #pickup-list li a .text {
    padding: 15px 10px 2.5em;
  }
  #areaTop #news #pickup #pickup-list li a .text .title {
    font-size: 14px;
    font-size: 0.875rem;
  }
  #areaTop #news #pickup #pickup-list li a .text .date {
    width: 94%;
    bottom: 10px;
  }
}
#areaTop #future #future-navi ul {
  padding: 0;
  letter-spacing: -0.4em;
}
#areaTop #future #future-navi ul li {
  position: relative;
  display: inline-block;
  width: 50%;
  list-style: none;
  letter-spacing: normal;
}
#areaTop #future #future-navi ul li a {
  display: block;
}
#areaTop #future #future-navi ul li a img {
  width: 100%;
}
#areaTop #future #future-navi ul li a .btn {
  position: absolute;
  right: 30px;
  bottom: 30px;
}
#areaTop #future #future-navi ul li a:hover .btn {
  background: url("../img/mode/common_arrow06.png") no-repeat 93% center #000;
  background-size: 5px auto;
}
@media only screen and (max-width: 768px) {
  #areaTop #future #future-navi ul {
    letter-spacing: normal;
  }
  #areaTop #future #future-navi ul li {
    display: block;
    width: 100%;
  }
  #areaTop #future #future-navi ul li a .btn {
    min-width: inherit;
    right: 20px;
  }
  #areaTop #future .detail-button.sp {
    width: 60%;
    display: block;
    margin: 2em auto 1em;
  }
}
#areaTop #mode {
  margin-bottom: 0;
}
#areaTop #mode .certification,
#areaTop #mode .access,
#areaTop #mode .cm,
#areaTop #mode .cm-text {
  float: left;
  width: 50%;
  font-size: 16px;
  font-size: 1rem;
  text-align: left;
}
#areaTop #mode .certification p,
#areaTop #mode .access p,
#areaTop #mode .cm p,
#areaTop #mode .cm-text p {
  margin-bottom: 0.5em;
}
#areaTop #mode .certification ul,
#areaTop #mode .access ul,
#areaTop #mode .cm ul,
#areaTop #mode .cm-text ul {
  padding-bottom: 0;
}
#areaTop #mode .certification ul li,
#areaTop #mode .access ul li,
#areaTop #mode .cm ul li,
#areaTop #mode .cm-text ul li {
  float: right;
  margin-bottom: 0;
}
#areaTop #mode .certification ul li a,
#areaTop #mode .access ul li a,
#areaTop #mode .cm ul li a,
#areaTop #mode .cm-text ul li a {
  font-size: 14px;
  font-size: 0.875rem;
}
#areaTop #mode .certification,
#areaTop #mode .cm {
  padding: 35px 90px 0 40px;
  clear: both;
}
#areaTop #mode .cm {
  clear: both;
}
#areaTop #mode .cm .youtube-container iframe {
  width: 100%;
}
#areaTop #mode .access,
#areaTop #mode .cm-text {
  padding: 0 40px 0 90px;
  overflow: hidden;
}
#areaTop #mode .access figure,
#areaTop #mode .cm-text figure {
  float: left;
  margin-right: 12px;
}
#areaTop #mode .access .text,
#areaTop #mode .cm-text .text {
  overflow: hidden;
}
#areaTop #mode .access .text .title,
#areaTop #mode .cm-text .text .title {
  font-size: 24px;
  font-size: 1.5rem;
  margin-bottom: 0;
}
#areaTop #mode .access .text p span,
#areaTop #mode .cm-text .text p span {
  font-size: 14px;
  font-size: 0.875rem;
}
#areaTop #mode .cm-text {
  padding: 70px 40px 0 20px;
}
@media only screen and (max-width: 768px) {
  #areaTop #mode {
    padding: 60px 0 0 0;
    margin-bottom: 0;
  }
  #areaTop #mode .certification,
  #areaTop #mode .access,
  #areaTop #mode .cm,
  #areaTop #mode cm-text {
    float: none;
    width: 100%;
    font-size: 12px;
    font-size: 0.75rem;
  }
  #areaTop #mode .certification .title,
  #areaTop #mode .access .title,
  #areaTop #mode .cm .title,
  #areaTop #mode cm-text .title {
    text-align: center;
  }
  #areaTop #mode .certification ul li a,
  #areaTop #mode .access ul li a,
  #areaTop #mode .cm ul li a,
  #areaTop #mode cm-text ul li a {
    font-size: 12px;
    font-size: 0.75rem;
  }
  #areaTop #mode .certification,
  #areaTop #mode .cm {
    padding: 15px 0 0 0;
    margin-bottom: 2em;
  }
  #areaTop #mode .access,
  #areaTop #mode .cm-text {
    padding: 0;
  }
  #areaTop #mode .access figure,
  #areaTop #mode .cm-text figure {
    text-align: center;
    width: 20%;
    margin-top: 50px;
  }
  #areaTop #mode .access figure img,
  #areaTop #mode .cm-text figure img {
    max-width: 70px;
  }
  #areaTop #mode .access .text,
  #areaTop #mode .cm-text .text {
    overflow: visible;
    margin-left: 24%;
  }
  #areaTop #mode .access .text .title,
  #areaTop #mode .cm-text .text .title {
    position: relative;
    left: -36%;
    font-size: 18px;
    font-size: 1.125rem;
    width: 140%;
    text-align: center;
    margin-bottom: 0.5em;
  }
  #areaTop #mode .access .text p span,
  #areaTop #mode .cm-text .text p span {
    font-size: 10px;
    font-size: 0.625rem;
  }
  #areaTop #mode .cm-text {
    width: 100%;
  }
  #areaTop #mode .cm-text .text {
    margin-left: 0;
    text-align: left;
    font-size: 0.75rem;
  }
  #areaTop #mode .cm-text .text .title {
    left: 0;
    width: 100%;
  }
}
#areaTop #sp-visitor-navi {
  margin: -0.5em 0 -1em;
}
#areaTop #sp-visitor-navi ul {
  margin: 0 0 -10px;
  padding: 0 5px;
  letter-spacing: -0.4em;
}
#areaTop #sp-visitor-navi ul li {
  display: inline-block;
  letter-spacing: normal;
  width: 46.9%;
  width: -o-calc(50% - 11px);
  width: calc(50% - 11px);
  margin: 0 5px 10px;
  list-style: none;
  background-color: #fff;
  text-align: center;
}
#areaTop #sp-visitor-navi ul li a {
  display: block;
  color: #000;
  padding: 1em 5px;
}
#areaTop .section-title {
  text-align: left;
  font-size: 130px;
  font-size: 8.125rem;
  font-weight: bold;
  margin-bottom: 0;
  letter-spacing: -0.05em;
  font-weight: 900;
  font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  position: relative;
}
#areaTop .section-title .text {
  position: relative;
  display: inline-block;
  padding: 0 10px 18px 0;
  overflow: hidden;
}
#areaTop .section-title .text::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  display: block;
  width: calc(100% + 20px);
  height: calc(100% + 18px);
  content: '';
  background-color: #fff;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
#areaTop .section-title span {
  font-size: 34px;
  font-size: 2.125rem;
  letter-spacing: 0.02em;
  position: absolute;
  bottom: 0;
  left: 0;
}
#areaTop .section-title:before {
  content: "";
  width: 69px;
  height: 70px;
  position: absolute;
  top: 7px;
  left: -30px;
  background-color: #ff004d;
  z-index: -1;
}
#areaTop .section-title:after {
  content: "";
  position: absolute;
  bottom: -52px;
  left: 320px;
  width: 232px;
  height: 163px;
  background: url("../img/mode/title_dots.svg") no-repeat center;
  z-index: -1;
}
#areaTop .section-title.js-scroll {
  -webkit-transition: 0s;
  transition: 0s;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
}
#areaTop .section-title.js-scroll--show .text::before {
  -webkit-transform: translateX(100%);
      -ms-transform: translateX(100%);
          transform: translateX(100%);
}
@media only screen and (max-width: 768px) {
  #areaTop .section-title {
    font-size: 80px;
    font-size: 5rem;
    margin-left: -5px;
    margin-bottom: 12px;
  }
  #areaTop .section-title span {
    font-size: 27px;
    font-size: 1.6875rem;
    letter-spacing: -0.02em;
    position: absolute;
    bottom: 0;
  }
  #areaTop .section-title:before {
    top: -11px;
    left: -15px;
    width: 39px;
    height: 43px;
  }
  #areaTop .section-title:after {
    top: 37px;
    left: 255px;
    width: 145px;
    height: 148px;
  }
}
#areaTop #about {
  padding: 140px 0;
  margin: 0;
}
#areaTop #about .about-list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[3];
      grid-template-columns: repeat(3, 1fr);
  gap: 66px 60px;
  padding: 0;
}
#areaTop #about .about-list .about-item {
  width: 360px;
}
#areaTop #about .about-list .about-item .title {
  margin: 0;
  text-align: left;
  position: relative;
}
#areaTop #about .about-list .about-item .title span {
  position: relative;
  z-index: 1;
  display: block;
  height: 70px;
  padding: 18px 32px;
  color: #fff;
  font-size: 24px;
  font-size: 1.5rem;
  line-height: 140%;
  letter-spacing: 0.02em;
  background-color: #1b1b1b;
  opacity: 0;
}
@-webkit-keyframes textExtendAnimation {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
  }
  50.1% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes textExtendAnimation {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
  }
  50.1% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
#areaTop #about .about-list .about-item .title:before {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 2;
  content: "";
  width: 16px;
  height: 16px;
  background-color: #ff004d;
}
#areaTop #about .about-list .about-item .title:after {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  content: '';
  background-color: #1b1b1b;
  -webkit-transform-origin: left;
      -ms-transform-origin: left;
          transform-origin: left;
  -webkit-transform: scaleX(0);
      -ms-transform: scaleX(0);
          transform: scaleX(0);
}
@-webkit-keyframes bgExtendAnimation {
  0% {
    -webkit-transform-origin: left;
            transform-origin: left;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  50% {
    -webkit-transform-origin: left;
            transform-origin: left;
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
  50.001% {
    -webkit-transform-origin: right;
            transform-origin: right;
  }
  100% {
    -webkit-transform-origin: right;
            transform-origin: right;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
}
@keyframes bgExtendAnimation {
  0% {
    -webkit-transform-origin: left;
            transform-origin: left;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
  50% {
    -webkit-transform-origin: left;
            transform-origin: left;
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
  50.001% {
    -webkit-transform-origin: right;
            transform-origin: right;
  }
  100% {
    -webkit-transform-origin: right;
            transform-origin: right;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
  }
}
#areaTop #about .about-list .about-item .title.js-scroll--show span {
  -webkit-animation-name: textExtendAnimation;
          animation-name: textExtendAnimation;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}
#areaTop #about .about-list .about-item .title.js-scroll--show::after {
  -webkit-animation-name: bgExtendAnimation;
          animation-name: bgExtendAnimation;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}
#areaTop #about .about-list .about-item .number {
  font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  margin: 32px 0 0;
  font-weight: 900;
  line-height: 100%;
  font-size: 105px;
  font-size: 6.5625rem;
  text-align: center;
  letter-spacing: -0.03em;
}
#areaTop #about .about-list .about-item .number .data {
  font-size: 105px;
  font-size: 6.5625rem;
  font-weight: 900;
}
#areaTop #about .about-list .about-item .number .unit {
  font-size: 60px;
  font-size: 3.75rem;
  font-weight: 700;
}
#areaTop #about .about-list .about-item .note,
#areaTop #about .about-list .about-item .text {
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 140%;
  letter-spacing: 0.012em;
  color: #151515;
  margin: 8px 0 0;
  text-align: center;
}
#areaTop #about .about-list .about-item .note {
  color: #999;
}
#areaTop #about .about-list .about-item .description {
  font-size: 15px;
  line-height: 200%;
  color: #151515;
  margin: 12px 0 0 32px;
  text-align: left;
}
#areaTop #about .btn-group {
  margin: 60px auto 0;
  width: 394px;
}
#areaTop #about .btn-group .btn {
  width: 100%;
  font-weight: 400;
}
@media only screen and (max-width: 768px) {
  #areaTop #about .site-inner {
    padding: 0;
  }
  #areaTop #about .section-title {
    margin-left: 15px;
  }
  #areaTop #about .about-list {
    display: block;
    padding: 0;
  }
  #areaTop #about .about-list .about-item {
    width: 100%;
    margin-bottom: 32px;
  }
  #areaTop #about .about-list .about-item:nth-child(4), #areaTop #about .about-list .about-item:nth-child(5) {
    margin-bottom: 22px;
  }
  #areaTop #about .about-list .about-item .title {
    width: -webkit-fit-content;
    width: fit-content;
    height: auto;
    padding: 0;
    margin: 0;
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: 700;
  }
  #areaTop #about .about-list .about-item .title span {
    height: 31px;
    padding: 3px 10px 0 20px;
    line-height: 1;
  }
  #areaTop #about .about-list .about-item .title:before {
    width: 10px;
    height: 10px;
  }
  #areaTop #about .about-list .about-item .number {
    margin: 14px 0 0;
    font-size: 74px;
    font-size: 4.625rem;
    text-align: center;
    letter-spacing: -0.04em;
  }
  #areaTop #about .about-list .about-item .number .data {
    font-size: 74px;
    font-size: 4.625rem;
  }
  #areaTop #about .about-list .about-item .number .unit {
    font-size: 42px;
    font-size: 2.625rem;
  }
  #areaTop #about .about-list .about-item .note,
  #areaTop #about .about-list .about-item .text {
    font-size: 12px;
    font-size: 0.75rem;
    line-height: 140%;
    margin: 0;
  }
  #areaTop #about .about-list .about-item .text {
    margin-bottom: 12px;
  }
  #areaTop #about .about-list .about-item .description {
    margin: 17px 20px 0;
    text-align: left;
  }
  #areaTop #about .btn-group {
    margin: 32px auto 0;
    width: 257px;
  }
}
#areaTop #faculty {
  color: #151515;
  padding: 0;
  margin-bottom: 0;
  background-color: #fff;
}
#areaTop #faculty .areatop-heading {
  margin-bottom: 140px;
}
#areaTop #faculty .faculty-navi {
  margin-bottom: 60px;
}
#areaTop #faculty .faculty-navi .faculty-text {
  margin-bottom: 32px;
}
#areaTop #faculty .faculty-navi .faculty-text .name {
  font-size: 24px;
  font-size: 1.5rem;
  padding: 10px 0;
  margin-bottom: 32px;
  border: solid 1px #333333;
  text-align: center;
  letter-spacing: 0.02em;
  line-height: 140%;
  position: relative;
  background-color: #fff;
  z-index: 1;
  font-weight: bold;
}
#areaTop #faculty .faculty-navi .faculty-text .description {
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 200%;
  margin: 0;
}
#areaTop #faculty .faculty-navi .faculty-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[3];
      grid-template-columns: repeat(3, 1fr);
  gap: 67px;
}
#areaTop #faculty .faculty-navi .faculty-list .faculty-item {
  width: 100%;
}
#areaTop #faculty .faculty-navi .faculty-list .faculty-item .faculty-link .link-image {
  position: relative;
  overflow: hidden;
}
#areaTop #faculty .faculty-navi .faculty-list .faculty-item .faculty-link .link-image::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  content: '';
  background: -webkit-gradient(linear, left top, left bottom, color-stop(46.88%, rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.5)));
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 46.88%, rgba(0, 0, 0, 0.5) 100%);
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 46.88%, rgba(0, 0, 0, 0.5) 100%);
}
#areaTop #faculty .faculty-navi .faculty-list .faculty-item .faculty-link .link-image .item-image {
  width: 361px;
  height: 203.06px;
  -webkit-transition: 0.6s;
  transition: 0.6s;
  -webkit-filter: grayscale(100%);
          filter: grayscale(100%);
}
#areaTop #faculty .faculty-navi .faculty-list .faculty-item .faculty-link .link-image .btn-group {
  position: relative;
  z-index: 2;
  width: 40px;
  height: 40px;
  position: absolute;
  bottom: 1px;
  right: 0;
}
#areaTop #faculty .faculty-navi .faculty-list .faculty-item .faculty-link .link-image .btn-group .btn {
  width: 100%;
  height: 100%;
  background: url(../img/mode/common_right_arrow_red.svg) no-repeat center #1b1b1b;
  padding: 0;
}
#areaTop #faculty .faculty-navi .faculty-list .faculty-item .faculty-link .link-image .item-name {
  position: relative;
  z-index: 2;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 125%;
  font-weight: bold;
  color: #fff;
  width: 306px;
  letter-spacing: 0.05em;
  position: absolute;
  bottom: 4px;
  left: 7px;
}
#areaTop #faculty .faculty-navi .faculty-list .faculty-item .faculty-link .link-image .item-name .underline {
  background-image: -webkit-linear-gradient(rgba(0, 0, 0, 0) calc(100% - 1px), #ffffff 10px);
  background-image: linear-gradient(rgba(0, 0, 0, 0) calc(100% - 1px), #ffffff 10px);
}
#areaTop #faculty .faculty-navi .faculty-list .faculty-item .faculty-link:hover .link-image .item-image {
  -webkit-transform: scale(1.025);
      -ms-transform: scale(1.025);
          transform: scale(1.025);
  -webkit-filter: grayscale(0);
          filter: grayscale(0);
}
#areaTop #faculty .faculty-navi .faculty-list .faculty-item .tags {
  list-style: none;
  margin-top: 12px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  font-size: 12px;
  line-height: 140%;
  letter-spacing: 0.012em;
  padding: 0;
}
#areaTop #faculty .faculty-navi .faculty-list .faculty-item .tags .tag {
  padding: 0 14px 0 8px;
  margin: 0 0 2px 0;
  position: relative;
}
#areaTop #faculty .faculty-navi .faculty-list .faculty-item .tags .tag:before {
  content: "";
  width: 4px;
  height: 1px;
  position: absolute;
  top: 50%;
  left: 0;
  background-color: #ff004d;
}
#areaTop #faculty .faculty-navi .faculty-list .faculty-item .tags .other {
  padding: 0;
  margin-left: -8px;
}
#areaTop #faculty .faculty-navi .faculty-list .faculty-item.js-scroll .faculty-link,
#areaTop #faculty .faculty-navi .faculty-list .faculty-item.js-scroll .tags {
  opacity: 0;
  -webkit-transform: translateY(20px);
      -ms-transform: translateY(20px);
          transform: translateY(20px);
}
#areaTop #faculty .faculty-navi .faculty-list .faculty-item.js-scroll .faculty-link {
  -webkit-transition: 0.3s 0s;
  transition: 0.3s 0s;
}
#areaTop #faculty .faculty-navi .faculty-list .faculty-item.js-scroll .tags {
  -webkit-transition: 0.3s 0.3s;
  transition: 0.3s 0.3s;
}
#areaTop #faculty .faculty-navi .faculty-list .faculty-item.js-scroll--show .faculty-link,
#areaTop #faculty .faculty-navi .faculty-list .faculty-item.js-scroll--show .tags {
  opacity: 1;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
}
#areaTop #faculty .btn-group {
  width: 394px;
  margin: 140px auto 0;
}
#areaTop #faculty .btn-group .btn.large {
  width: 100%;
  font-size: 15px;
  line-height: 140%;
  padding: 13.5px 30px;
}
@media only screen and (max-width: 768px) {
  #areaTop #faculty {
    padding: 0 0 140px;
  }
  #areaTop #faculty .faculty-navi .faculty-text {
    margin-bottom: 20px;
  }
  #areaTop #faculty .faculty-navi .faculty-text .name {
    font-size: 15px;
    font-size: 0.9375rem;
    line-height: 200%;
    padding: 5px 0;
    margin-bottom: 17px;
  }
  #areaTop #faculty .faculty-navi .faculty-text .description {
    font-size: 15px;
    font-size: 0.9375rem;
    line-height: 200%;
  }
  #areaTop #faculty .faculty-navi .faculty-list {
    list-style: none;
    padding: 0;
    margin: 0 -20px 0 0;
    display: block;
  }
  #areaTop #faculty .faculty-navi .faculty-list .faculty-item:not(:first-child) {
    display: none;
  }
  #areaTop #faculty .faculty-navi .faculty-list .slick-list {
    overflow-x: hidden;
  }
  #areaTop #faculty .faculty-navi .faculty-list .slick-slide {
    padding-right: 20px;
    width: calc(100vw - 40px);
  }
  #areaTop #faculty .faculty-navi .faculty-list .slick-slide:only-child {
    width: calc(100vw - 20px);
  }
  #areaTop #faculty .faculty-navi .faculty-list .slick-dots {
    margin-bottom: 3em;
    padding: 0;
    text-align: center;
    line-height: 1;
  }
  #areaTop #faculty .faculty-navi .faculty-list .slick-dots li {
    display: inline-block;
    float: none;
    width: auto;
    margin: 6px 4px 0 !important;
  }
  #areaTop #faculty .faculty-navi .faculty-list .slick-dots li button {
    position: relative;
    font-size: 0;
    line-height: 0;
    display: inline-block;
    width: 6px;
    height: 6px;
    padding: 0;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
    text-align: center;
  }
  #areaTop #faculty .faculty-navi .faculty-list .slick-dots li button:before {
    position: absolute;
    top: 0;
    left: 0;
    line-height: 4px;
    width: 6px;
    height: 6px;
    content: "";
    text-align: center;
    -webkit-font-smoothing: antialiased;
    background: #1b1b1b;
  }
  #areaTop #faculty .faculty-navi .faculty-list .slick-dots li.slick-active button:before {
    background: #ff004d;
  }
  #areaTop #faculty .faculty-navi .faculty-list .faculty-item {
    width: 100%;
  }
  #areaTop #faculty .faculty-navi .faculty-list .faculty-item .faculty-link .link-image {
    position: relative;
  }
  #areaTop #faculty .faculty-navi .faculty-list .faculty-item .faculty-link .link-image .item-image {
    width: 100%;
    height: auto;
  }
  #areaTop #faculty .faculty-navi .faculty-list .faculty-item .faculty-link .link-image .item-name {
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 125%;
    width: 263px;
    position: absolute;
    bottom: 5px;
  }
  #areaTop #faculty .faculty-navi .faculty-list .faculty-item .tags .tag {
    padding: 0 12px 0 8px;
  }
  #areaTop #faculty .btn-group {
    width: 100%;
    margin: 0 auto;
  }
}

#graduates {
  padding: 140px 0;
  margin: 0;
  background-color: #fff;
}
#graduates .graduates-image {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 86px;
}
#graduates .graduates-image .main-image {
  display: block;
  margin-right: 72px;
  text-align: left;
}
#graduates .graduates-image .main-image .image {
  margin-bottom: 20px;
  overflow: hidden;
}
#graduates .graduates-image .main-image img {
  width: 598px;
  height: 336px;
  -webkit-transition: 0.6s;
  transition: 0.6s;
}
#graduates .graduates-image .main-image:hover img {
  -webkit-transform: scale(1.025);
      -ms-transform: scale(1.025);
          transform: scale(1.025);
}
#graduates .graduates-image .main-image:hover .underline {
  background-size: 100% 100%;
}
#graduates .graduates-image .list-image {
  padding: 0;
  margin: 0;
}
#graduates .graduates-image .list-image .item {
  margin-bottom: 32px;
  min-height: 104px;
}
#graduates .graduates-image .list-image .item .item-link {
  display: block;
}
#graduates .graduates-image .list-image .item .item-link:hover .image img {
  -webkit-transform: scale(1.025);
      -ms-transform: scale(1.025);
          transform: scale(1.025);
}
#graduates .graduates-image .list-image .item .item-link:hover .underline {
  background-size: 100% 100%;
}
#graduates .graduates-image .list-image .item .image {
  float: right;
  margin-left: 32px;
  overflow: hidden;
}
#graduates .graduates-image .list-image .item .image img {
  width: 185px;
  height: 104px;
  -webkit-transition: 0.6s;
  transition: 0.6s;
}
#graduates .graduates-image .list-image .item .item-text {
  text-align: left;
  overflow: hidden;
}
#graduates .graduates-image .category {
  font-weight: 700;
  font-size: 12px;
  line-height: 140%;
  letter-spacing: 0.012em;
  color: #ff004d;
  margin-bottom: 12px;
}
#graduates .graduates-image .description {
  line-height: 150%;
  color: #151515;
}
#graduates .btn-group {
  width: 394px;
  margin: 0 auto;
}
#graduates .btn-group .btn {
  font-size: 15px;
  font-size: 0.9375rem;
  padding: 13.5px 0;
  width: 100%;
  background-color: #151515;
  color: #fff;
  line-height: 1.4;
  letter-spacing: 2%;
}
#graduates .btn-group .btn:hover {
  background-color: #ff004d;
}

@media only screen and (max-width: 768px) {
  #graduates {
    padding: 0px 0 140px;
    margin: -2px 0 0;
  }
  #graduates .graduates-image {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    margin: 0;
  }
  #graduates .graduates-image .main-image {
    margin: 0 0 32px 0;
    position: relative;
    z-index: 1;
  }
  #graduates .graduates-image .main-image .image {
    margin-bottom: 0 !important;
  }
  #graduates .graduates-image .main-image img {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    margin-bottom: 12px;
  }
  #graduates .graduates-image .list-image {
    padding: 0;
    margin: 0;
  }
  #graduates .graduates-image .list-image .item {
    margin-bottom: 36px;
    min-height: 104px;
  }
  #graduates .graduates-image .list-image .item .image {
    margin: 22px 0 0 12px;
  }
  #graduates .graduates-image .list-image .item .image img {
    width: 152.89px;
    height: 86px;
  }
  #graduates .graduates-image .list-image .item .item-text {
    text-align: left;
    overflow: visible;
  }
  #graduates .graduates-image .category {
    font-weight: 700;
    font-size: 12px;
    font-size: 0.75rem;
    margin-bottom: 8px;
  }
  #graduates .graduates-image .description {
    line-height: 150%;
  }
  #graduates .btn-group {
    width: 257px;
  }
  #graduates .btn-group .btn {
    font-weight: bold;
    padding: 12px 0;
  }
}
#access {
  margin: 0;
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(27, 27, 27, 0.4)), to(rgba(27, 27, 27, 0.4))), -webkit-gradient(linear, left top, left bottom, color-stop(50.52%, #1b1b1b), to(rgba(27, 27, 27, 0.8)));
  background: -webkit-linear-gradient(bottom, rgba(27, 27, 27, 0.4), rgba(27, 27, 27, 0.4)), -webkit-linear-gradient(top, #1b1b1b 50.52%, rgba(27, 27, 27, 0.8) 100%);
  background: linear-gradient(0deg, rgba(27, 27, 27, 0.4), rgba(27, 27, 27, 0.4)), linear-gradient(180deg, #1b1b1b 50.52%, rgba(27, 27, 27, 0.8) 100%);
  color: #fff;
  overflow: hidden;
}
#access.nagoya .access-inner .image .image-text {
  white-space: nowrap;
}
#access.nagoya .access-inner .image img {
  -webkit-transform: translate(240px, 15px);
      -ms-transform: translate(240px, 15px);
          transform: translate(240px, 15px);
}
#access .access-inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
#access .access-inner .text {
  margin-right: 20px;
  padding: 60px 48px 0 103px;
}
#access .access-inner .text .title {
  font-size: 32px;
  font-size: 2rem;
  line-height: 140%;
  font-weight: bold;
  margin-bottom: 40px;
}
#access .access-inner .text .description {
  margin-bottom: 40px;
  font-size: 15px;
  line-height: 200%;
}
#access .access-inner .text .btn-group {
  width: 289px;
}
#access .access-inner .text .btn-group .btn {
  padding: 20px 0;
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 100%;
  width: 100%;
  letter-spacing: 2%;
}
#access .access-inner .image {
  position: relative;
}
#access .access-inner .image .image-text {
  font-size: 12px;
  line-height: 140%;
  letter-spacing: 0.012em;
  position: absolute;
  bottom: 20px;
  left: 0;
}

@media only screen and (max-width: 768px) {
  #access {
    margin: 0;
    position: relative;
  }
  #access:before {
    content: "";
    position: absolute;
    bottom: 0;
    right: -20px;
    height: 100%;
    width: 100%;
    background: url("../img/mode/areatop_school-building-tokyo.png") no-repeat center bottom/cover;
    opacity: 0.3;
  }
  #access.osaka:before {
    background: url("../img/mode/areatop_school-building-osaka.png") no-repeat right -120px bottom -30px/cover;
  }
  #access.nagoya:before {
    background: url("../img/mode/areatop_school-building-nagoya.png") no-repeat right -180px bottom -20px/cover;
  }
  #access.nagoya .access-inner img {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
  #access .access-inner {
    display: block;
  }
  #access .access-inner .text {
    padding: 53px 0 90px 20px;
  }
  #access .access-inner .text .title {
    font-size: 32px;
    font-size: 2rem;
    margin-bottom: 20px;
  }
  #access .access-inner .text .description {
    margin-bottom: 12px;
    line-height: 200%;
  }
  #access .access-inner .text .school-text {
    font-size: 12px;
    font-size: 0.75rem;
    letter-spacing: 0.012em;
    margin-bottom: 20px;
  }
  #access .access-inner .text .btn-group {
    width: 100%;
  }
  #access .access-inner .text .btn-group .btn {
    padding: 20px 0;
    font-size: 15px;
    font-size: 0.9375rem;
    line-height: 100%;
  }
  #access .access-inner .image {
    position: relative;
  }
  #access .access-inner .image .image-text {
    font-size: 12px;
    line-height: 140%;
    letter-spacing: 0.012em;
    position: absolute;
    bottom: 20px;
    left: 0;
  }
}
#ocTop {
  background: none;
}
@media only screen and (max-width: 768px) {
  #ocTop section {
    overflow: hidden;
  }
}
#ocTop .site-inner {
  width: 1216px;
}
@media only screen and (max-width: 768px) {
  #ocTop .site-inner {
    width: 100%;
    padding-right: 20px;
    padding-left: 20px;
  }
}
#ocTop #site-header .site-inner {
  width: 1280px;
}
@media only screen and (max-width: 768px) {
  #ocTop #site-header .site-inner {
    width: 100%;
  }
}
#ocTop .heading8 {
  padding: 60px 0;
  margin: 32px 0 0;
  color: #151515;
  font-weight: bold;
  font-size: 32px;
  font-size: 2rem;
  line-height: 140%;
  text-align: center;
  position: relative;
}
#ocTop .heading8:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 1px;
  width: 100%;
  background-color: #efefef;
}
@media only screen and (max-width: 768px) {
  #ocTop .heading8 {
    font-size: 28px;
    font-size: 1.75rem;
    padding: 48px 0;
  }
  #ocTop .heading8:before {
    top: 0;
    left: -20px;
    width: 100vw;
  }
}
#ocTop .module_page-title {
  display: block;
  padding: 0;
  background: none;
  background-color: #fff;
}
#ocTop .module_page-title h1,
#ocTop .module_page-title h2,
#ocTop .module_page-title .title {
  position: relative;
  width: 1216px;
  margin: 0 auto;
  padding: 0;
  color: #1b1b1b;
  font-size: 28px;
  font-size: 1.75rem;
  font-weight: bold;
  line-height: 140%;
  letter-spacing: 0.02em;
  background: none;
}
#ocTop .module_page-title h1 a,
#ocTop .module_page-title h2 a,
#ocTop .module_page-title .title a {
  color: #1b1b1b;
}
#ocTop .module_page-title h1:after,
#ocTop .module_page-title h2:after,
#ocTop .module_page-title .title:after {
  content: "";
  clear: both;
  display: block;
}
@media only screen and (max-width: 768px) {
  #ocTop .module_page-title {
    display: block;
    padding: 20px 20px 0;
  }
  #ocTop .module_page-title h1,
  #ocTop .module_page-title h2,
  #ocTop .module_page-title .title {
    width: auto;
    padding: 0;
  }
  #ocTop .module_page-title h1 {
    background: none;
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 1.4;
  }
}
#ocTop #visual {
  padding: 0;
  min-width: 1280px;
  margin: 0 0 32px;
}
#ocTop #visual .slider {
  display: block;
}
#ocTop #visual .slider > .item:not(:first-child) {
  display: none;
}
#ocTop #visual .slick-list {
  overflow: visible;
}
#ocTop #visual .item {
  width: 100%;
  background: no-repeat center top;
}
#ocTop #visual .item img {
  width: 100%;
}
#ocTop #visual .slick-dots {
  bottom: 80px;
  margin: 0 0 0 -566px;
}
#ocTop #visual .slick-slide .item {
  padding: 70px 80px;
  -webkit-transition: -webkit-transform 0.2s;
  transition: -webkit-transform 0.2s;
  transition: transform 0.2s;
  transition: transform 0.2s, -webkit-transform 0.2s;
  -webkit-transform-origin: 50% 50%;
      -ms-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}
#ocTop #visual .slick-slide .item img {
  width: 711.11px;
  height: 400px;
  margin: 0 auto;
}
#ocTop #visual .slick-current .item {
  -webkit-transform: scale(1.35);
      -ms-transform: scale(1.35);
          transform: scale(1.35);
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
  opacity: 1;
}
@media only screen and (max-width: 1280px) {
  #ocTop #visual .slick-list {
    overflow: hidden;
  }
}
@media only screen and (max-width: 768px) {
  #ocTop #visual {
    padding: 28px 0 0;
    margin: 0 auto 22px;
    min-width: auto;
  }
  #ocTop #visual .slick-list {
    overflow: visible;
  }
  #ocTop #visual .slick-slide .item {
    padding: 0 30px;
  }
  #ocTop #visual .slick-slide .item img {
    width: 200px;
    height: 112.5px;
    margin: 0 auto;
  }
  #ocTop #visual .slick-current .item {
    -webkit-transform: scale(1.485);
        -ms-transform: scale(1.485);
            transform: scale(1.485);
  }
}
#ocTop #contents-header {
  padding-top: 40px;
  padding-bottom: 0;
  overflow: hidden;
}
@media only screen and (max-width: 768px) {
  #ocTop #contents-header {
    padding-top: 32px;
    padding-bottom: 0;
    margin: 0 0 54px;
  }
}
#ocTop #pickup {
  margin-bottom: 70px;
}
#ocTop #pickup .module_thumbnail-list li a .images {
  overflow: hidden;
}
#ocTop #pickup .module_thumbnail-list li a .images img {
  width: 100%;
  height: auto;
  -webkit-transition: 0.6s;
  transition: 0.6s;
}
#ocTop #pickup .module_thumbnail-list li a:hover .images img {
  opacity: 1;
  -webkit-transform: scale(1.025);
      -ms-transform: scale(1.025);
          transform: scale(1.025);
}
#ocTop #pickup .module_thumbnail-list li a:hover .title .underline {
  background-size: 100% 100%;
}
@media only screen and (max-width: 768px) {
  #ocTop #pickup {
    margin-bottom: 48px;
  }
}
#ocTop .module_search-function {
  padding: 0;
}
#ocTop .module_search-function h2 {
  margin-bottom: 20px;
  font-size: 15px;
  font-size: 0.9375rem;
}
#ocTop .module_search-function .purpose,
#ocTop .module_search-function .date {
  position: relative;
  width: 600px;
  height: 55px;
  margin: auto;
}
#ocTop .module_search-function .purpose .btn-reset,
#ocTop .module_search-function .date .btn-reset {
  display: none;
  position: absolute;
  right: 4px;
  top: 50%;
  height: 14px;
  width: 14px;
  padding: 24px;
  -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%);
  background: url("../img/mode/common_cross.svg") no-repeat center;
  background-size: 14px;
}
#ocTop .module_search-function .date {
  margin-bottom: 20px;
}
#ocTop .module_search-function .btn-group {
  margin-bottom: 20px;
  letter-spacing: normal;
}
#ocTop .module_search-function .btn-group .btn {
  width: 600px;
  height: 55px;
  margin: 0;
  letter-spacing: normal;
  font-size: 15px;
  font-size: 0.9375rem;
}
#ocTop .module_search-function .btn-group .btn.selected {
  font-weight: 300;
  background-image: none;
  background-color: #ff004d;
}
#ocTop .module_search-function .btn-group .btn.selected + .btn-reset {
  display: block;
}
@media only screen and (max-width: 768px) {
  #ocTop .module_search-function {
    padding: 0;
  }
  #ocTop .module_search-function .purpose,
  #ocTop .module_search-function .date {
    width: 100%;
  }
  #ocTop .module_search-function .btn-group {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin-bottom: 12px;
  }
  #ocTop .module_search-function .btn-group .btn {
    width: calc(100% - 10px);
    font-size: 15px;
    font-size: 0.9375rem;
  }
}
#ocTop #opencampus-list {
  margin-bottom: 0;
  padding-bottom: 140px;
  background-color: #fff;
}
#ocTop #opencampus-list #opencampus-search {
  margin-bottom: 32px;
}
@media only screen and (max-width: 768px) {
  #ocTop #opencampus-list {
    padding-bottom: 108px;
  }
}
#ocTop #contents-footer {
  padding-bottom: 0;
  background-color: #fff;
}
#ocTop #contents-footer #opencampus-notice {
  min-height: 170px;
  padding: 60px 0;
  background: url("../img/mode/octop_bg_opencampus-notice.svg") no-repeat #fff right 0 bottom 60px;
  border: 2px #333333 solid;
  color: #333333;
  text-align: center;
}
#ocTop #contents-footer #opencampus-notice h3 {
  font-size: 32px;
  font-size: 2rem;
  font-weight: bold;
  line-height: 140%;
  margin-bottom: 14px;
}
#ocTop #contents-footer #opencampus-notice p {
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 200%;
  padding: 0 128px 106px;
}
#ocTop #contents-footer #opencampus-notice.js-scroll h3,
#ocTop #contents-footer #opencampus-notice.js-scroll p {
  opacity: 0;
  -webkit-transform: translateY(20px);
      -ms-transform: translateY(20px);
          transform: translateY(20px);
}
#ocTop #contents-footer #opencampus-notice.js-scroll h3 {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
#ocTop #contents-footer #opencampus-notice.js-scroll p {
  -webkit-transition: 0.3s 0.2s;
  transition: 0.3s 0.2s;
}
#ocTop #contents-footer #opencampus-notice.js-scroll--show h3,
#ocTop #contents-footer #opencampus-notice.js-scroll--show p {
  opacity: 1;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
}
@media only screen and (max-width: 768px) {
  #ocTop #contents-footer {
    padding-bottom: 0;
    background-color: #fff;
  }
  #ocTop #contents-footer .site-inner {
    padding: 0;
  }
  #ocTop #contents-footer #opencampus-notice {
    min-height: 170px;
    padding: 40px 0;
    margin-bottom: 30px;
    background: url("../img/mode/octop_bg_opencampus-notice-sp.svg") repeat-x #fff right 50% bottom 40px;
    border: 1px #333333 solid;
    border-right: none;
    border-left: none;
    color: #151515;
    text-align: left;
  }
  #ocTop #contents-footer #opencampus-notice h3 {
    font-size: 28px;
    font-size: 1.75rem;
    font-weight: bold;
    line-height: 140%;
    margin-bottom: 30px;
    padding: 0 40px;
  }
  #ocTop #contents-footer #opencampus-notice p {
    font-size: 15px;
    font-size: 0.9375rem;
    line-height: 200%;
    padding: 0 40px 60px;
  }
}
#ocTop .event-list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[3];
      grid-template-columns: repeat(3, 1fr);
  gap: 0 66.5px;
}
@media only screen and (max-width: 768px) {
  #ocTop .event-list {
    -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
  }
}
#ocTop #cboxLoadedContent {
  padding: 20px;
  background: #fff;
}
#ocTop #cboxClose {
  display: none;
}

#oc table tr th,
#oc table tr td {
  border: 1px solid #efefef;
}
@media only screen and (max-width: 768px) {
  #oc .contents-panel {
    padding: 20px 20px 0;
    margin: 0;
  }
}
#oc main {
  padding-bottom: 60px;
  border-bottom: solid 1px #eaeaea;
}
#oc main .contents-inner,
#oc main .site-inner,
#oc main .contents-panel {
  width: 960px;
}
@media only screen and (max-width: 768px) {
  #oc main .contents-inner,
  #oc main .site-inner,
  #oc main .contents-panel {
    width: 100%;
  }
}
#oc main .contents-panel {
  padding: 0;
  margin-bottom: 0;
}
#oc .module_page-title {
  display: block;
  padding: 0;
  background: none;
  background-color: #fff;
}
#oc .module_page-title h1,
#oc .module_page-title h2,
#oc .module_page-title .title {
  position: relative;
  width: 1216px;
  margin: 0 auto;
  padding: 0;
  color: #1b1b1b;
  font-size: 28px;
  font-size: 1.75rem;
  font-weight: bold;
  line-height: 140%;
  letter-spacing: 0.02em;
  background: none;
}
#oc .module_page-title h1 a,
#oc .module_page-title h2 a,
#oc .module_page-title .title a {
  color: #1b1b1b;
}
#oc .module_page-title h1:after,
#oc .module_page-title h2:after,
#oc .module_page-title .title:after {
  content: "";
  clear: both;
  display: block;
}
@media only screen and (max-width: 768px) {
  #oc .module_page-title {
    display: block;
    padding: 20px 20px 0;
  }
  #oc .module_page-title h1,
  #oc .module_page-title h2,
  #oc .module_page-title .title {
    width: auto;
    padding: 0;
  }
  #oc .module_page-title h1 {
    background: none;
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 1.4;
  }
}
#oc #contents-header {
  padding-top: 32px;
  padding-bottom: 0;
}
@media only screen and (max-width: 768px) {
  #oc #contents-header {
    padding-top: 20px;
  }
}
#oc .opencampus-detail {
  padding: 0;
  overflow: hidden;
}
#oc .opencampus-detail .heading8 {
  padding: 32px 0;
  margin: 60px 0 0;
  color: #151515;
  font-weight: bold;
  font-size: 28px;
  font-size: 1.75rem;
  line-height: 140%;
  text-align: center;
  position: relative;
}
#oc .opencampus-detail .heading8:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 1px;
  width: 100%;
  background-color: #efefef;
}
#oc .opencampus-detail .heading9 {
  border-bottom: 2px solid #f5f5f5;
  text-align: center;
  padding-bottom: 1em;
  margin-bottom: 1.5em;
}
#oc .opencampus-detail h4 {
  font-size: 20px;
  font-size: 1.25rem;
  margin-bottom: 20px;
}
#oc .opencampus-detail p {
  color: #151515;
  margin-bottom: 32px;
  line-height: 2;
  font-size: 15px;
  font-size: 0.9375rem;
}
#oc .opencampus-detail a {
  color: #ff004d;
  font-weight: 700;
}
#oc .opencampus-detail img {
  margin-bottom: 32px;
}
#oc .opencampus-detail .service-item-content {
  border: solid 1px #efefef;
  padding: 32px 35px;
  margin-bottom: 32px;
  clear: both;
}
#oc .opencampus-detail .service-item-content img {
  float: left;
  margin: 0 16px 32px 0;
}
#oc .opencampus-detail .service-item-content .module_movie {
  margin: 0 0 32px;
}
#oc .opencampus-detail .service-item-content .title {
  font-weight: bold;
  margin-bottom: 20px;
  line-height: 140%;
  font-size: 20px;
  font-size: 1.25rem;
}
@media only screen and (max-width: 768px) {
  #oc .opencampus-detail {
    padding: 0 20px;
  }
  #oc .opencampus-detail .heading8 .heading8 {
    font-size: 28px;
    font-size: 1.75rem;
    padding: 48px 0;
  }
  #oc .opencampus-detail .heading8 .heading8:before {
    top: 0;
    left: -20px;
    width: 100vw;
  }
  #oc .opencampus-detail .heading9 {
    border-bottom: 1px solid #f5f5f5;
    font-size: 15px;
    font-size: 0.9375rem;
  }
  #oc .opencampus-detail h4 {
    font-size: 15px;
    font-size: 0.9375rem;
  }
  #oc .opencampus-detail p {
    line-height: 1.7;
  }
  #oc .opencampus-detail img {
    margin-bottom: 20px;
  }
  #oc .opencampus-detail .service-item-content {
    padding: 32px 20px;
    margin: 32px 0 0;
    clear: both;
  }
  #oc .opencampus-detail .service-item-content img {
    float: none;
    margin: 0 0 20px 0;
  }
  #oc .opencampus-detail .service-item-content .module_movie {
    margin: 0 0 20px;
  }
  #oc .opencampus-detail .service-item-content .title {
    font-weight: bold;
    margin-bottom: 20px;
    line-height: 140%;
    font-size: 20px;
    font-size: 1.25rem;
  }
}
#oc .module_introduction-list .item {
  padding: 0;
  margin: 0;
  overflow: auto;
  margin-bottom: 28px;
}
#oc .module_introduction-list .item figure {
  float: left;
  margin: 0 32px 32px 0;
}
#oc .module_introduction-list .item figure img {
  margin: 0;
}
#oc .module_introduction-list .item .title-group .title {
  padding: 30px 0 12px;
}
#oc .module_introduction-list .item .title-group .title p {
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: bold;
  line-height: 140%;
}
#oc .module_introduction-list .item .title p {
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: bold;
}
#oc .module_introduction-list .item p {
  margin-bottom: 0;
  font-weight: normal;
}
#oc .module_introduction-list .item > a {
  padding: 0;
  margin: 0;
}
@media only screen and (max-width: 768px) {
  #oc .module_introduction-list {
    margin: 0;
  }
  #oc .module_introduction-list .item {
    text-align: left;
    padding: 0;
    margin: 0 0 60px;
  }
  #oc .module_introduction-list .item:last-child {
    margin: 0;
  }
  #oc .module_introduction-list .item figure {
    display: block;
    float: none;
    margin: 0 auto 32px;
    width: 150px;
    height: 150px;
  }
  #oc .module_introduction-list .item figure img {
    width: auto;
    max-width: 100%;
  }
  #oc .module_introduction-list .item .title-group {
    display: block;
    text-align: left;
  }
  #oc .module_introduction-list .item .title-group .title {
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 1.4;
    padding: 0 0 12px;
  }
  #oc .module_introduction-list .item > a {
    display: table;
    padding: 0;
    margin: 0;
  }
}
#oc .module_service-list li figure img {
  height: 162px;
  width: 288px;
  margin: 0;
}
#oc .module_service-list li p {
  margin-bottom: 0;
}
@media only screen and (max-width: 768px) {
  #oc .module_service-list li figure img {
    height: 88px;
    width: 158px;
    margin: 0;
  }
  #oc .module_service-list li .heading2 {
    margin-bottom: 0.8em;
  }
  #oc .module_service-list li .heading7 {
    margin: 0 0 20px;
    height: 88px;
    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;
  }
  #oc .module_service-list li p {
    margin-bottom: 0;
  }
}
#oc .module_event-list {
  padding: 0;
}
#oc .module_event-list .wrap {
  margin-bottom: 1em;
}
#oc .module_event-list .wrap .image {
  position: relative;
}
#oc .module_event-list .wrap .image::before {
  display: block;
  padding-top: calc((9 / 16) * 100%);
  content: '';
}
#oc .module_event-list .wrap .image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#oc .module_event-list .wrap .sub-title {
  position: relative;
  padding: 32px 0 8px;
  background: none;
  text-align: left;
  margin: 0;
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 140%;
}
#oc .module_event-list .wrap .title {
  padding-bottom: 32px;
  margin: 0;
  font-size: 28px;
  font-size: 1.75rem;
}
#oc .module_event-list .wrap .description {
  margin: 20px 0 12px;
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: bold;
  background-color: #f5f5f5;
  padding: 20px;
}
#oc .module_event-list .wrap .summary {
  margin-bottom: 20px;
}
#oc .module_event-list .wrap .feature {
  margin-bottom: 52px;
}
#oc .module_event-list .btn-group a {
  min-width: 394px;
}
@media only screen and (max-width: 768px) {
  #oc .module_event-list {
    margin: 0;
    overflow: visible;
  }
  #oc .module_event-list .wrap {
    margin-right: 0;
  }
  #oc .module_event-list .wrap .title {
    padding: 0 0 32px 0;
    font-size: 24px;
    font-size: 1.5rem;
    line-height: 1.4;
  }
  #oc .module_event-list .wrap .summary {
    line-height: 1.7;
  }
  #oc .module_event-list .wrap .feature {
    padding: 0;
    margin-bottom: 20px;
  }
  #oc .module_event-list .wrap .image {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
  }
  #oc .module_event-list .wrap .sub-title {
    padding: 20px 0 8px;
    margin: 0;
    line-height: 1.4;
    font-weight: bold;
    text-align: left;
    font-size: 15px;
    font-size: 0.9375rem;
  }
  #oc .module_event-list .btn-group a:nth-child(1) {
    padding: 20px 30px;
    min-width: inherit;
    font-size: 15px;
    font-size: 0.9375rem;
    line-height: 1;
    width: 257px;
  }
  #oc .module_event-list .btn-group a:nth-child(2) {
    display: block;
    margin-top: 1em;
  }
  #oc .module_event-list .tel-number {
    padding-top: 20px;
  }
}
#oc .module_photo-gallery.is_2column li {
  width: 437px;
}
#oc .module_photo-gallery.is_2column li > a {
  width: 437px;
  height: 250px;
}
@media only screen and (max-width: 768px) {
  #oc .module_photo-gallery.is_2column li {
    width: 100%;
  }
  #oc .module_photo-gallery.is_2column li > a {
    width: 100%;
    height: auto;
  }
}
#oc .faq-list {
  list-style: none;
  padding: 0;
  margin: 0 0 1.5em;
  overflow: hidden;
}
#oc .faq-list li {
  float: left;
  font-size: 18px;
  font-size: 1.125rem;
  width: 100%;
  margin: 0;
}
#oc .faq-list li .title {
  font-weight: bold;
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 140%;
  margin-bottom: 20px;
}
#oc .faq-list li ul {
  margin-top: 0.5em;
}
#oc .faq-list li ul li {
  float: none;
  font-size: 14px;
  font-size: 0.875rem;
  width: auto;
  margin-bottom: 0.7em;
}
@media only screen and (max-width: 768px) {
  #oc .faq-list {
    margin: 0 0 1.5em;
  }
  #oc .faq-list li {
    float: none;
    font-size: 14px;
    font-size: 0.875rem;
    width: 100%;
    padding-right: 0;
  }
  #oc .faq-list li .service-item-content {
    margin-bottom: 32px;
  }
  #oc .faq-list li ul {
    margin-top: 0.5em;
  }
  #oc .faq-list li ul li {
    font-size: 14px;
    font-size: 0.875rem;
    margin-bottom: 0.7em;
  }
}
#oc #contents-footer {
  padding-top: 5em;
  padding-bottom: 3.5em;
}
#oc #contents-footer .module_event-list {
  margin-bottom: 4em;
}
@media only screen and (max-width: 768px) {
  #oc #contents-footer {
    padding-top: 3em;
    padding-bottom: 2em;
  }
  #oc #contents-footer .module_event-list {
    margin-bottom: 3em;
  }
  #oc #contents-footer .module_thumbnail-list {
    margin-bottom: 0;
  }
}
#oc .module_table {
  margin: 0;
  table-layout: fixed;
}
#oc .module_table.is_center tbody .access p,
#oc .module_table.is_center tbody .access a {
  margin: 0;
  line-height: 1;
  font-weight: normal;
}
#oc .module_table.is_mobile {
  table-layout: fixed;
  color: #151515;
}
#oc .module_table.is_mobile thead th {
  color: #fff;
  background-color: #999;
  padding: 12px 0;
  line-height: 1.4;
}
#oc .module_table.is_mobile thead th:not(:first-child) {
  font-weight: normal;
}
#oc .module_table.is_mobile .btn {
  width: 100%;
  padding: 20px 0;
  font-weight: bold;
  color: #fff;
  line-height: 1;
  text-align: center;
}
#oc .module_table .item {
  color: #151515;
}
#oc .module_table.is_center {
  text-align: center;
}
#oc .module_table.is_center thead th {
  color: #fff;
  background-color: #999;
  padding: 12px 0;
  line-height: 1.4;
}
#oc .module_table.is_center tbody td {
  padding: 20px;
  line-height: 1;
  margin: 0;
}
#oc .module_table.is_center tbody .access {
  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;
  border-right: none;
  border-bottom: none;
}
#oc .module_table.is_center tbody .access p,
#oc .module_table.is_center tbody .access a {
  margin: 0;
  line-height: 1;
}
#oc .module_table.is_center tbody .access a {
  padding-right: 20px;
  position: relative;
}
#oc .module_table.is_center tbody .access a:before {
  content: "";
  position: absolute;
  height: 12px;
  width: 12px;
  right: 0;
  top: 50%;
  background: url("../img/mode/common-right-arrow3.svg") no-repeat;
  -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%);
}
#oc .module_table.is_center th,
#oc .module_table.is_center td {
  text-align: center;
}
@media only screen and (max-width: 768px) {
  #oc .module_table.is_mobile tr {
    border: solid 1px #efefef;
    display: block;
    margin-bottom: 40px;
    padding: 0 20px;
  }
  #oc .module_table.is_mobile tr:last-child {
    margin: 0;
  }
  #oc .module_table.is_mobile th,
  #oc .module_table.is_mobile td {
    display: block;
    border: none;
    text-align: left;
    width: 100% !important;
    padding: 0;
    line-height: 1.4;
  }
  #oc .module_table.is_mobile th.cell-separator,
  #oc .module_table.is_mobile td.cell-separator {
    border-bottom: 1px solid #eee;
    padding-bottom: 1.5em;
  }
  #oc .module_table.is_mobile th.cell-separator + td,
  #oc .module_table.is_mobile td.cell-separator + td {
    padding-top: 1.5em;
  }
  #oc .module_table.is_mobile th::before,
  #oc .module_table.is_mobile td::before {
    content: attr(data-before);
    display: block;
  }
  #oc .module_table.is_mobile th::after,
  #oc .module_table.is_mobile td::after {
    content: attr(data-after);
  }
  #oc .module_table.is_mobile td::before {
    margin-bottom: 12px;
  }
  #oc .module_table.is_mobile td::after {
    content: "";
    height: 1px;
    width: 100%;
    background-color: #efefef;
    display: block;
    margin: 20px 0;
  }
  #oc .module_table.is_mobile td:last-child::after {
    display: none;
  }
  #oc .module_table.is_mobile .item {
    position: relative;
    padding: 0 0 12px;
    text-align: center;
    margin-bottom: 20px;
  }
  #oc .module_table.is_mobile .item::before {
    width: 100vw;
    padding: 12px 0;
    background: #999;
    color: #fff;
    text-align: center;
    margin: 0 calc(50% - 50vw) 32px;
  }
  #oc .module_table.is_mobile .item::after {
    position: absolute;
    height: 45px;
    width: 100%;
    border: solid 1px #efefef;
    bottom: 0;
    left: 0;
  }
  #oc .module_table.is_mobile .btn {
    width: 257px;
    margin: 0 calc((100vw - 257px - 80px) / 2) 20px;
  }
  #oc .module_table.is_center {
    text-align: center;
  }
  #oc .module_table.is_center thead th {
    color: #fff;
    background-color: #999;
  }
  #oc .module_table.is_center tbody td {
    padding: 15px 20px;
  }
  #oc .module_table.is_center tbody .access {
    display: block;
  }
  #oc .module_table.is_center tbody .access a {
    margin-top: 8px;
    padding: 0 4px 0 0;
    position: relative;
  }
  #oc .module_table.is_center tbody .access a:before {
    right: -4px;
  }
}
#oc .module_definition-info dl dd a {
  font-weight: normal;
  line-height: 1;
  margin: 8px 0 0;
  display: inline-block;
}
#oc .module_definition-info .btn-group a {
  color: #fff;
  line-height: 1;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  #oc .module_flow-list li h4 {
    margin-bottom: 15px;
  }
  #oc .module_flow-list li p {
    margin: 15px 0 0;
  }
}

#topicsIndex .emphasize-container .module_image-box {
  display: table;
  text-align: center;
}
#topicsIndex .emphasize-container .module_image-box figure {
  float: none;
  display: inline-block;
  max-height: 294px;
  vertical-align: middle;
  margin-bottom: 2.2em;
}
#topicsIndex .emphasize-container .module_image-box .text {
  display: inline-block;
  width: 540px;
  text-align: left;
}
@media only screen and (max-width: 768px) {
  #topicsIndex .emphasize-container .module_image-box {
    display: block;
  }
  #topicsIndex .emphasize-container .module_image-box figure {
    padding-right: 0;
    display: block;
    max-height: initial;
    max-height: auto;
    margin-bottom: 0;
  }
  #topicsIndex .emphasize-container .module_image-box .text {
    display: block;
    width: 100%;
  }
  #topicsIndex .emphasize-container .module_image-box .text .title {
    text-align: center;
  }
}

#topicsDetail .module_page-title {
  display: none;
}
@media only screen and (max-width: 768px) {
  #topicsDetail .module_page-title {
    display: block;
  }
  #topicsDetail .module_page-title h1 {
    padding-left: 2px;
    background: none;
    font-size: 12px;
    font-size: 0.75rem;
  }
}
#topicsDetail .module_link-list-block ul {
  margin-bottom: 1.4em;
}
@media only screen and (max-width: 768px) {
  #topicsDetail .module_link-list-block ul {
    margin-bottom: 1em;
  }
}
#topicsDetail .related-container {
  background-color: #c41d1d;
}
#topicsDetail .related-container h2 {
  color: #fff;
}
#topicsDetail .related-container .module_news-list li .text p a {
  color: #fff;
}
#topicsDetail .related-container .module_news-list li .text p a:after {
  background-color: #fff;
}
#topicsDetail .header-container h1 {
  color: #c41d1d;
  font-size: 28px;
  font-size: 1.75rem;
  margin: 1em 0 .5em;
}
@media only screen and (max-width: 768px) {
  #topicsDetail .header-container .mainvisual {
    padding-top: 0;
  }
  #topicsDetail .header-container .mainvisual img {
    vertical-align: top;
  }
  #topicsDetail .header-container h1 {
    font-size: 20px;
    font-size: 1.25rem;
  }
}
#topicsDetail #contents-header + .contents-inner h2 {
  margin: 1.8em 0 1em 1em;
  font-size: 24px;
  font-size: 1.5rem;
  color: #c41d1d;
  text-indent: -1.75em;
}
#topicsDetail #contents-header + .contents-inner h2:before {
  display: inline-block;
  content: '';
  width: 30px;
  height: 18px;
  margin-right: 10px;
  background-color: #c41d1d;
}
#topicsDetail #contents-header + .contents-inner h3 {
  border-bottom: 2px solid #d9d9d9;
  color: #c41d1d;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 600;
  padding-bottom: .35em;
  margin: 2em 0 0.65em;
}
#topicsDetail #contents-header + .contents-inner h4 {
  margin: 2em 0 0.65em;
  padding-left: 20px;
  font-size: 14px;
  font-size: 0.875rem;
  color: #c41d1d;
  background: url("../img/mode/common_parts02.png") no-repeat left 3px;
}
#topicsDetail #contents-header + .contents-inner p {
  margin-bottom: 1.6em;
  line-height: 1.8;
}
#topicsDetail #contents-header + .contents-inner p a {
  display: inline;
  border-bottom: 1px solid transparent;
  -webkit-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
}
#topicsDetail #contents-header + .contents-inner p a:hover {
  border-bottom-color: #00afcc;
}
@media only screen and (max-width: 768px) {
  #topicsDetail #contents-header + .contents-inner p a:hover {
    border: none;
  }
}
#topicsDetail #contents-header + .contents-inner figure.right {
  float: right;
  margin-left: 60px;
}
#topicsDetail #contents-header + .contents-inner figure.left {
  float: left;
  margin-right: 60px;
}
@media only screen and (max-width: 768px) {
  #topicsDetail #contents-header + .contents-inner h2 {
    margin-left: 0;
    font-size: 18px;
    font-size: 1.125rem;
  }
  #topicsDetail #contents-header + .contents-inner h2:before {
    width: 20px;
    height: 14px;
  }
  #topicsDetail #contents-header + .contents-inner h3 {
    border-bottom: 1px solid #d9d9d9;
    font-size: 16px;
    font-size: 1rem;
  }
  #topicsDetail #contents-header + .contents-inner h4 {
    margin-bottom: .4em;
    font-size: 14px;
    font-size: 0.875rem;
  }
  #topicsDetail #contents-header + .contents-inner p {
    font-size: 14px;
    font-size: 0.875rem;
  }
  #topicsDetail #contents-header + .contents-inner figure.right {
    float: none;
    margin-left: 0;
  }
  #topicsDetail #contents-header + .contents-inner figure.left {
    float: none;
    margin-right: 0;
  }
  #topicsDetail #contents-header + .contents-inner .image-box {
    margin-bottom: 1em;
  }
  #topicsDetail #contents-header + .contents-inner .image-box figure img {
    margin-bottom: 1em;
  }
  #topicsDetail #contents-header + .contents-inner .image-box .text .title {
    font-size: 16px;
    font-size: 1rem;
    margin-bottom: 2em;
  }
}

#courseTop {
  background-image: none;
}
#courseTop .module_text-description.is_lead {
  background-image: none;
}
#courseTop .module_text-description.is_lead .description p {
  font-size: 18px;
  font-size: 1.125rem;
}
@media only screen and (max-width: 768px) {
  #courseTop .module_text-description.is_lead {
    padding: 0 10px;
  }
  #courseTop .module_text-description.is_lead .description p {
    font-size: 14px;
    font-size: 0.875rem;
    text-align: left;
  }
  #courseTop .module_text-description.is_lead .description p br {
    display: none;
  }
}
@media only screen and (max-width: 768px) {
  #courseTop .module_page-title {
    padding: 0;
  }
}
#courseTop .module_search-function {
  padding: 3em 0 2.5em;
  margin-bottom: 0;
  background-color: #f5f5f5;
}
#courseTop .module_search-function .reset {
  top: 3px;
}
@media only screen and (max-width: 768px) {
  #courseTop .module_search-function {
    padding: 1.4em 0 1em;
  }
}
#courseTop .module_item-list .item {
  -webkit-box-shadow: 0 0 0 #000;
  box-shadow: 0 0 0 #000;
}
@media only screen and (max-width: 768px) {
  #courseTop .module_item-list .item figure {
    margin-bottom: 0;
  }
  #courseTop .module_item-list .item .text .title {
    margin: .5em 0;
  }
  #courseTop .module_item-list.is_3column .item {
    margin-bottom: 1em;
  }
}
#courseTop .course-search {
  margin-bottom: 0;
}
#courseTop .course-search > .heading19 {
  margin-bottom: 0;
}
#courseTop .course-search .course-index {
  padding: 2em 0 0.45em;
  margin: 0;
}
#courseTop .course-search .course-index .course-navi {
  margin-bottom: 2em;
}
#courseTop .course-search .course-index .course-navi .module_page-title {
  margin-bottom: 2em;
}
@media only screen and (max-width: 768px) {
  #courseTop .course-search > .heading19 {
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: normal;
    padding: 1em 20px;
    background: url(../img/mode/common_bg02.png);
  }
  #courseTop .course-search .course-index {
    padding: 1em 0;
  }
  #courseTop .course-search .course-index .heading19 {
    margin-right: -10px;
    margin-left: -10px;
  }
  #courseTop .course-search .course-index .course-navi {
    margin-bottom: 0;
  }
  #courseTop .course-search .course-index .course-navi .module_page-title {
    margin-bottom: 1em;
  }
}
#courseTop .future {
  padding-top: 0;
  padding-bottom: 0;
  margin-bottom: 0;
  background: url(../img/mode/common_bg3.png) repeat left top #c41d1d;
}
#courseTop .future .module_page-title {
  margin-bottom: 2em;
}
#courseTop .future .future-navi ul {
  padding: 0;
  margin: 0;
  letter-spacing: -.4em;
}
#courseTop .future .future-navi ul li {
  position: relative;
  display: inline-block;
  width: 352px;
  list-style: none;
  letter-spacing: normal;
  margin-right: 32px;
  margin-bottom: 32px;
}
#courseTop .future .future-navi ul li:nth-child(3n) {
  margin-right: 0;
}
#courseTop .future .future-navi ul li a {
  display: block;
}
#courseTop .future .future-navi ul li a img {
  width: 100%;
}
#courseTop .future .future-navi ul li a .button {
  position: absolute;
  bottom: 30px;
  left: 0;
  width: 100%;
  text-align: center;
}
#courseTop .future .future-navi ul li a .button .btn {
  color: #fff;
  min-width: inherit;
  padding: 1em 0;
  width: 60%;
  background: url(../img/mode/common_arrow06.png) no-repeat 91% center #000;
  background-size: 8px auto;
  -webkit-box-shadow: 0 0 0 #444;
  box-shadow: 0 0 0 #444;
}
#courseTop .future .future-navi ul li a:hover .button .btn {
  background: url("../img/mode/common_arrow06.png") no-repeat 93% center #000;
  background-size: 8px auto;
}
@media only screen and (max-width: 768px) {
  #courseTop .future > .heading19 {
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: normal;
    padding: 1em 20px;
    background: url(../img/mode/common_bg02.png);
  }
  #courseTop .future .future-navi {
    margin-bottom: 0;
  }
  #courseTop .future .future-navi ul {
    letter-spacing: normal;
    overflow: hidden;
  }
  #courseTop .future .future-navi ul li {
    display: block;
    width: 100%;
    margin-right: 0;
    margin-bottom: 15px;
  }
  #courseTop .future .future-navi ul li a .button {
    bottom: 15px;
  }
  #courseTop .future .future-navi ul li a .button .btn {
    width: 50%;
  }
  #courseTop .future .future-navi ul li a:hover .button .btn {
    background: url("../img/mode/common_arrow06.png") no-repeat 91% center #000;
    background-size: 8px auto;
  }
}
#courseTop .learning {
  padding-top: 3em;
  background: url(../img/mode/common_bg3.png) repeat left top #c41d1d;
}
#courseTop .learning .heading13 {
  color: #fff;
  margin-bottom: 1.5em;
}
#courseTop .learning .heading13:before {
  background-color: #fff;
}
#courseTop .learning .module_text-description {
  padding: 0 0 3em;
}
@media only screen and (max-width: 768px) {
  #courseTop .learning {
    padding-top: 2em;
  }
  #courseTop .learning .module_text-description {
    padding: 0 0 1em;
  }
}
@media only screen and (max-width: 768px) {
  #courseTop #check-page {
    padding: 0;
  }
}

#course p {
  margin-bottom: 0;
}
#course section {
  margin-bottom: 6em;
}
@media only screen and (max-width: 768px) {
  #course section {
    margin-bottom: 2em;
  }
  #course .btn-group {
    text-align: center;
  }
}
#course .module_image-box .text p {
  margin-bottom: 1.4em;
}
#course .module_image-box.is_design1 .text p {
  margin-bottom: 0;
}
#course .module_separate-block .block {
  margin-bottom: 2em;
}
#course .module_separate-block .block .separator {
  background-color: #c41d1d;
}
#course .module_separate-block .block .heading14 {
  color: #c41d1d;
}
@media only screen and (max-width: 768px) {
  #course .module_separate-block .block {
    margin-bottom: 1.5em;
  }
}
#course .module_text-list {
  padding-bottom: 0;
}
#course .module_text-list li {
  margin-bottom: 0;
}
#course .module_thumbnail-list.is_2column {
  margin-bottom: 2.5em;
}
#course .module_thumbnail-list.is_2column .number {
  background-color: #000;
}
#course .module_thumbnail-list.is_2column .images {
  width: 540px;
  height: 250px;
  overflow: hidden;
}
#course .module_thumbnail-list.is_2column .images img {
  width: 100%;
  height: auto;
}
#course .module_thumbnail-list.is_4column {
  margin-bottom: 0;
}
#course .module_thumbnail-list.is_4column + .btn-group {
  text-align: center;
}
@media only screen and (min-width: 1150px) {
  #course .module_thumbnail-list.is_2column .images img {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}
@media only screen and (max-width: 768px) {
  #course .module_thumbnail-list.is_2column {
    margin-bottom: 0;
  }
  #course .module_thumbnail-list.is_2column .images {
    width: auto;
    height: auto;
  }
  #course .module_thumbnail-list.is_3column .item figure {
    margin-bottom: 1em;
  }
  #course .module_thumbnail-list.is_3column .item .title-group {
    text-align: center;
  }
  #course .module_thumbnail-list.is_4column li {
    margin: 0 10px 2em;
  }
}
#course .module_news-list.is_2column {
  margin-bottom: 0;
}
@media only screen and (max-width: 768px) {
  #course .module_news-list.is_2column li {
    border-bottom: 1px solid #ddd;
    padding-bottom: 1em;
  }
  #course .module_news-list.is_2column li .text {
    font-size: 12px;
    font-size: 0.75rem;
    padding-right: 20px;
    background: url(../img/mode/common_arrow02.png) no-repeat right center;
  }
  #course .module_news-list.is_2column li .text .btn-group {
    display: none;
  }
  #course .module_news-list.is_2column li:last-child {
    border-bottom: none;
  }
}
#course .module_introduction-list .item {
  margin: 0 16px 2em;
}
#course .module_introduction-list.is_1column .item {
  margin-bottom: 2em;
  background-color: #f5f5f5;
}
#course .module_introduction-list.is_1column .item figure {
  vertical-align: middle;
  padding: 0 70px 0 40px;
}
#course .module_introduction-list.is_1column .item figure img {
  width: 240px;
  height: auto;
}
#course .module_introduction-list.is_1column .item .title-group {
  vertical-align: middle;
  padding-right: 40px;
}
#course .module_introduction-list.is_1column .item .title-group .catch {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: bold;
  margin-bottom: 1.2em;
}
#course .module_introduction-list.is_1column .item .title-group .title {
  font-size: 14px;
  font-size: 0.875rem;
}
#course .module_introduction-list.is_1column .item .category {
  margin-bottom: 1.5em;
}
#course .module_introduction-list.is_1column .item .category span {
  border: 2px solid #c41d1d;
  color: #c41d1d;
  padding: .2em 10px;
  font-weight: bold;
  margin-bottom: 1em;
}
@media only screen and (max-width: 768px) {
  #course .module_introduction-list .item {
    margin-left: 0;
    margin-right: 0;
  }
  #course .module_introduction-list.is_1column .item figure {
    padding: 0;
  }
  #course .module_introduction-list.is_1column .item figure img {
    width: 55%;
  }
  #course .module_introduction-list.is_1column .item .title-group {
    padding-right: 0;
  }
  #course .module_introduction-list.is_1column .item .title-group .catch {
    font-size: 14px;
    font-size: 0.875rem;
    text-align: left;
    margin-bottom: 1em;
  }
  #course .module_introduction-list.is_1column .item .title-group .title {
    font-size: 12px;
    font-size: 0.75rem;
    margin-bottom: 2em;
  }
  #course .module_introduction-list.is_1column .item .category {
    text-align: center;
    margin-bottom: 1em;
  }
  #course .module_introduction-list.is_1column .item .category span {
    border: 1px solid #c41d1d;
    font-size: 12px;
    font-size: 0.75rem;
    background-color: #fff;
  }
}
#course #contents-header .description {
  font-size: 16px;
  font-size: 1rem;
  margin-bottom: .7em;
}
#course #contents-header .job-category strong {
  color: #c41d1d;
}
@media only screen and (max-width: 768px) {
  #course #contents-header .description {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
#course .module_page-title {
  color: #fff;
  padding: 2.6em 0;
}
#course .module_page-title h1 {
  background: none;
  font-size: 14px;
  font-size: 0.875rem;
  margin-bottom: 12px;
  color: #ddd;
}
#course .module_page-title .h1 {
  width: 1216px;
  padding-left: 40px;
  margin-bottom: .3em;
  background: url("../img/mode/common_arrow04.png") no-repeat left 0.5em;
  background-size: 20px;
  font-size: 40px;
  font-size: 2.5rem;
}
#course .module_page-title .module_tag-list li a {
  color: #ddd;
}
#course .module_page-title .year {
  font-size: 30px;
  font-size: 1.875rem;
}
@media only screen and (max-width: 768px) {
  #course .module_page-title {
    padding: 1.5em 10px;
  }
  #course .module_page-title h1 {
    padding-left: 0;
    font-size: 12px;
    font-size: 0.75rem;
  }
  #course .module_page-title .h1 {
    width: 107%;
    padding-left: 18px;
    margin-bottom: .8em;
    margin-left: -18px;
    margin-right: -18px;
    background: url("../img/mode/common_arrow04.png") no-repeat left 0.3em;
    background-size: 16px;
    font-size: 25px;
    font-size: 1.5625rem;
    line-height: 1.4;
  }
  #course .module_page-title .year {
    font-size: 20px;
    font-size: 1.25rem;
  }
}
#course .module_tag-list {
  margin-bottom: 2.6em;
  margin-left: calc(40px - 1em);
}
@media only screen and (max-width: 768px) {
  #course .module_tag-list {
    margin-bottom: 1.5em;
    margin-left: 0;
  }
}
#course .toggle-wrap .toggle-botton {
  display: none;
}
@media only screen and (max-width: 768px) {
  #course .toggle-wrap {
    position: relative;
    min-height: 72px;
  }
  #course .toggle-wrap .toggle-botton {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    border-bottom: 1px solid #fff;
    color: #fff;
    font-size: 20px;
    font-size: 1.25rem;
    width: 100%;
    min-height: 72px;
    vertical-align: middle;
    padding: 1em 20px 0;
    background: url(../img/mode/common_bg02.png) #000 repeat left top;
    z-index: 10;
  }
  #course .toggle-wrap .toggle-botton:after {
    position: absolute;
    top: 50%;
    right: 20px;
    width: 18px;
    height: 18px;
    margin-top: -9px;
    background: url(../img/mode/common_arrow_course.png) no-repeat 0 -2px;
    background-size: 100% auto;
    content: "";
  }
  #course .toggle-wrap .toggle-botton + section {
    visibility: hidden;
    height: 0;
    margin-bottom: 0;
    overflow: hidden;
  }
  #course .toggle-wrap .toggle-wrap {
    min-height: inherit;
  }
}
#course .header-container {
  display: table;
  color: #fff;
  text-align: center;
  width: 100%;
  height: 320px;
  margin-bottom: 4em;
}
#course .header-container .inner {
  position: relative;
  display: table-cell;
  top: -1em;
  width: 100%;
  vertical-align: middle;
}
#course .header-container .inner:after {
  display: block;
  content: '';
  background: url("../img/mode/common_arrow12.png") no-repeat;
  width: 25px;
  height: 25px;
  margin: 1.5em auto 0;
}
#course .header-container .title {
  color: #fff;
  font-size: 40px;
  font-size: 2.5rem;
  font-weight: normal;
  margin-top: 0;
}
#course .header-container .sub-title {
  font-weight: bold;
  font-size: 24px;
  font-size: 1.5rem;
}
#course .header-container .toggle-close {
  display: none;
}
@media only screen and (max-width: 768px) {
  #course .header-container {
    display: block;
    height: auto;
    min-height: inherit;
    margin-bottom: 2em;
  }
  #course .header-container .inner {
    display: block;
    top: 0;
    padding: 1.5em 10px 2em;
  }
  #course .header-container .inner:after {
    width: 16px;
    height: 20px;
    margin: .5em auto 0;
    background-size: 16px auto;
  }
  #course .header-container .title {
    font-size: 20px;
    font-size: 1.25rem;
    text-align: left;
    margin: 0 0 2em 10px;
  }
  #course .header-container .sub-title {
    font-size: 16px;
    font-size: 1rem;
    font-weight: bold;
  }
  #course .header-container .toggle-close {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    font-size: 24px;
    font-size: 1.5rem;
    line-height: 1;
    padding: 20px;
  }
}
#course .course-image {
  position: relative;
  display: block;
  width: 1216px;
  margin: 0 auto 4em;
  z-index: 100;
}
#course .course-image img {
  width: 100%;
  height: auto;
}
@media only screen and (max-width: 768px) {
  #course .course-image {
    width: 86%;
    width: -o-calc(100% - 40px);
    width: calc(100% - 40px);
    margin: -35px auto 2em;
  }
}
#course .heading15 {
  color: #c41d1d;
}
#course .heading15:before {
  background-color: #c41d1d;
}
#course .column-box .heading18:before,
#course .column-box .heading18:after {
  background-color: #c41d1d;
}
#course .column-box .heading18 span:before,
#course .column-box .heading18 span:after {
  background-color: #c41d1d;
}
@media only screen and (max-width: 768px) {
  #course .guide-container.sp {
    border: none;
  }
}
@media only screen and (max-width: 768px) {
  #course .back-to-top {
    text-align: center;
    background-color: #eee;
  }
  #course .back-to-top a {
    display: block;
    position: relative;
    color: #000;
    font-size: 10px;
    font-size: 0.625rem;
    padding: 2em 0;
  }
  #course .back-to-top a:before {
    content: "";
    display: block;
    position: absolute;
    top: .5em;
    left: 50%;
    width: 5px;
    height: 13px;
    background: url(../img/mode/common_arrow02.png) no-repeat left top;
    background-size: auto 80%;
    -ms-transform: rotate(-90deg);
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
  }
}
#course #feature {
  padding-top: 4em;
  margin-bottom: 4.3em;
}
#course #feature .module_image-box {
  margin-bottom: 0;
}
#course #feature .module_image-box figure {
  position: relative;
}
#course #feature .module_image-box figure img {
  width: 100%;
  aspect-ratio: 28/15;
  object-fit: cover;
}
@media only screen and (min-width: 769px) {
  #course #feature .module_image-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  #course #feature .module_image-box figure {
    width: 50%;
  }
  #course #feature .module_image-box figure .title {
    display: none;
  }
  #course #feature .module_image-box figure img {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  #course #feature .module_image-box figure:after {
    position: absolute;
    top: 50%;
    right: 0;
    display: block;
    width: 19px;
    height: 28px;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    content: "";
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width%3D%2219%22 height%3D%2228%22 version%3D%221.1%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath d%3D%22M0 14L19 0L19 28Z%22 fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E");
  }
  #course #feature .module_image-box .text {
    width: 50%;
    padding: 20px 0 20px 60px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  #course #feature .module_image-box:nth-of-type(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  #course #feature .module_image-box:nth-of-type(even) figure:after {
    left: 0;
    -webkit-transform: translateY(-50%) scaleX(-1);
        -ms-transform: translateY(-50%) scaleX(-1);
            transform: translateY(-50%) scaleX(-1);
  }
  #course #feature .module_image-box:nth-of-type(even) .text {
    padding: 20px 60px 20px 0;
  }
}
@media only screen and (max-width: 768px) {
  #course #feature {
    padding-top: 2em;
    margin-bottom: 2em;
  }
  #course #feature .module_image-box {
    overflow: visible;
    display: initial;
  }
  #course #feature .module_image-box .title {
    display: none;
  }
  #course #feature .module_image-box figure {
    position: relative;
    width: auto;
    height: auto;
    margin: 0 -10px;
    background-color: #000;
  }
  #course #feature .module_image-box figure:after {
    display: none;
  }
  #course #feature .module_image-box figure img {
    display: block;
    opacity: 0.6;
    filter: alpha(opacity=60);
  }
  #course #feature .module_image-box figure .title {
    display: block;
    color: #fff;
    font-size: 14px;
    font-size: 0.875rem;
    text-align: center;
    vertical-align: middle;
    width: 100%;
    padding: 1em;
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    left: 0;
    z-index: 100;
  }
  #course #feature .module_image-box figure .title strong {
    display: block;
    font-size: 18px;
    font-size: 1.125rem;
  }
  #course #feature .module_image-box .text {
    padding: 0;
  }
}
#course .campusphoto-index {
  margin-bottom: 4em;
  background-color: #000;
  overflow: hidden;
}
#course .campusphoto-index .small {
  float: left;
  width: 20%;
}
#course .campusphoto-index .large {
  float: left;
  width: 40%;
}
#course .campusphoto-index .item {
  position: relative;
  overflow: hidden;
}
#course .campusphoto-index .item .image {
  position: relative;
  padding-bottom: -o-calc(100%);
  padding-bottom: calc(100%);
}
#course .campusphoto-index .item .image img {
  position: absolute;
  top: 0;
  left: 0;
}
#course .campusphoto-index .item .modal.image:before {
  display: none;
}
#course .campusphoto-index .item .modal {
  display: block;
  position: relative;
  color: #fff;
}
#course .campusphoto-index .item .modal .title {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-size: 18px;
  font-size: 1.125rem;
  width: 80%;
  text-align: center;
  opacity: 0;
  filter: alpha(opacity=0);
  z-index: 10;
}
#course .campusphoto-index .item .modal .title:before {
  display: block;
  content: '';
  width: 40px;
  height: 2px;
  background-color: #fff;
  margin: 0 auto .5em;
}
#course .campusphoto-index .item .modal:hover {
  opacity: 1;
  filter: alpha(opacity=100);
}
#course .campusphoto-index .item .modal:hover .title {
  -webkit-transition: 0.35s ease-out;
  transition: 0.35s ease-out;
  opacity: 1;
  filter: alpha(opacity=100);
}
#course .campusphoto-index .item .modal:hover img {
  -webkit-transition: 0.15s ease-out;
  transition: 0.15s ease-out;
  opacity: 0.5;
  filter: alpha(opacity=50);
}
#course .campusphoto-index .item img {
  width: 100%;
}
#course .campusphoto-index + .btn-group {
  text-align: center;
}
@media only screen and (max-width: 768px) {
  #course .campusphoto-index {
    margin-bottom: 2.5em;
  }
  #course .campusphoto-index .small {
    width: 100%;
  }
  #course .campusphoto-index .small .item {
    float: left;
    width: 50%;
  }
  #course .campusphoto-index .large {
    width: 100%;
  }
  #course .campusphoto-index .item {
    position: relative;
    padding-bottom: 0;
  }
  #course .campusphoto-index .item .modal .title {
    display: none;
  }
  #course .campusphoto-index + .btn-group {
    margin-bottom: 2.5em;
  }
}
#course .module_text-description {
  margin: 0 -30px;
}
#course .module_text-description li {
  margin: 0 30px 3em;
  -ms-box-shadow: 0px 0px 5px -1px rgba(0, 0, 0, 0.4);
  -webkit-box-shadow: 0px 0px 5px -1px rgba(0, 0, 0, 0.4);
  box-shadow: 0px 0px 5px -1px rgba(0, 0, 0, 0.4);
}
#course .module_text-description li .title {
  color: #000;
  font-size: 16px;
  font-size: 1rem;
  text-align: left;
  padding-right: 40px;
  padding-left: 40px;
  background-color: rgba(255, 0, 0, 0.15);
}
#course .module_text-description li .description dl dt, #course .module_text-description li .description dl dd {
  margin-bottom: .5em;
}
#course .module_text-description li .description dl dt {
  clear: left;
  float: left;
  width: 25%;
  color: #777;
}
#course .module_text-description li .description dl dd {
  font-weight: bold;
  margin-left: 25%;
}
#course .module_text-description.is_2column li {
  width: 44.15%;
  width: -o-calc(100% / 2 - 60px);
  width: calc(100% / 2 - 60px);
}
@media only screen and (max-width: 768px) {
  #course .module_text-description {
    margin: 0 -10px;
  }
  #course .module_text-description li {
    margin: 0 0 1.5em;
  }
  #course .module_text-description li .title {
    font-size: 14px;
    font-size: 0.875rem;
    padding-right: 20px;
    padding-left: 20px;
  }
  #course .module_text-description li .description dl {
    border-top: 1px solid #ddd;
    padding-top: 1em;
    margin-bottom: 0;
  }
  #course .module_text-description.is_2column li {
    width: 100%;
    width: -o-calc(100%);
    width: calc(100%);
  }
}
@media only screen and (min-width: 1150px) {
  #course .module_column-box .column-box {
    margin: 2em 30px 0;
  }
}
@media only screen and (max-width: 768px) {
  #course .module_column-box.is_flow .column-box .inner {
    margin-bottom: -40px;
  }
}
#course #relation-open-campus {
  border-bottom: 1px solid #bbb;
  padding: 6em 0;
}
#course #relation-open-campus .heading7 {
  font-size: 16px;
  font-size: 1rem;
}
#course #relation-open-campus .module_news-list > li .text .multi-date {
  background-color: #c41d1d;
}
@media only screen and (max-width: 768px) {
  #course #relation-open-campus {
    padding: 3em 0;
  }
  #course #relation-open-campus .btn.border {
    color: #fff;
    background: url(../img/mode/common_arrow06.png) no-repeat 91% center #000;
    background-size: 8px auto;
  }
}
#course #relation-news {
  padding: 6em 0;
}
#course #relation-news .heading7 {
  font-size: 16px;
  font-size: 1rem;
}
@media only screen and (max-width: 768px) {
  #course #relation-news {
    padding: 3em 0;
  }
  #course #relation-news .btn.border {
    color: #fff;
    background: url(../img/mode/common_arrow06.png) no-repeat 91% center #000;
    background-size: 8px auto;
  }
}
#course #course-guide {
  padding: 3.8em 0;
  background-color: #c41d1d;
}
@media only screen and (max-width: 768px) {
  #course #course-guide {
    padding: 2em 0;
  }
}
#course #related-course {
  padding-top: 4em;
  margin-bottom: 4em;
}
#course #related-course .heading8 {
  color: #000;
  font-size: 16px;
  font-size: 1rem;
}
#course #related-course .module_thumbnail-list {
  margin-right: -50px;
  margin-left: -50px;
}
#course #related-course .module_thumbnail-list .slick-dots {
  margin-top: -15px;
}
@media only screen and (max-width: 768px) {
  #course #related-course {
    padding: 2em 0 0;
    margin: 0;
  }
  #course #related-course .module_thumbnail-list {
    margin-right: 0;
    margin-left: 0;
  }
}
#course #check-page {
  margin-bottom: 4em;
}
#course #check-page .heading8 {
  color: #000;
  font-size: 16px;
  font-size: 1rem;
}
#course #check-page .module_thumbnail-list {
  margin-right: -50px;
  margin-left: -50px;
}
#course #check-page .module_thumbnail-list .slick-dots {
  margin-top: -15px;
}
@media only screen and (max-width: 768px) {
  #course #check-page {
    padding: 0;
    margin: 0;
  }
  #course #check-page .module_thumbnail-list {
    margin-right: 0;
    margin-left: 0;
  }
}
#course.course_fashion .module_page-title .h1 {
  background-image: url(../img/mode/common_arrow04_fashion.png);
}
#course.course_fashion .header-container {
  background-color: #51b5c0;
}
#course.course_fashion #learn-point .module_thumbnail-list.is_2column .title {
  color: #51b5c0;
}
#course.course_fashion-business .module_page-title .h1 {
  background-image: url(../img/mode/common_arrow04_fashion-business.png);
}
#course.course_fashion-business .header-container {
  background-color: #f3704f;
}
#course.course_fashion-business #learn-point .module_thumbnail-list.is_2column .title {
  color: #f3704f;
}
#course.course_stylist .module_page-title .h1 {
  background-image: url(../img/mode/common_arrow04_stylist.png);
}
#course.course_stylist .header-container {
  background-color: #db73bd;
}
#course.course_stylist #learn-point .module_thumbnail-list.is_2column .title {
  color: #db73bd;
}
#course.course_stylist .toggle-wrap .toggle-botton:after {
  background-position: 0 -20px;
}
#course.course_make-hair .module_page-title .h1 {
  background-image: url(../img/mode/common_arrow04_make-hair.png);
}
#course.course_make-hair .header-container {
  background-color: #6683e8;
}
#course.course_make-hair #learn-point .module_thumbnail-list.is_2column .title {
  color: #6683e8;
}
#course.course_make-hair .toggle-wrap .toggle-botton:after {
  background-position: 0 -36px;
}
#course.course_interior .module_page-title .h1 {
  background-image: url(../img/mode/common_arrow04_interior.png);
}
#course.course_interior .header-container {
  background-color: #a2cd40;
}
#course.course_interior #learn-point .module_thumbnail-list.is_2column .title {
  color: #a2cd40;
}
#course.course_interior .toggle-wrap .toggle-botton:after {
  background-position: 0 -52px;
}
#course.course_graphic .module_page-title .h1 {
  background-image: url(../img/mode/common_arrow04_graphic.png);
}
#course.course_graphic .header-container {
  background-color: #a86fd3;
}
#course.course_graphic #learn-point .module_thumbnail-list.is_2column .title {
  color: #a86fd3;
}
#course.course_graphic .toggle-wrap .toggle-botton:after {
  background-position: 0 -68px;
}
#course.course_fashion_des .module_page-title .h1 {
  background-image: url(../img/mode/common_arrow04_fashion_des.png);
}
#course.course_fashion_des .header-container {
  background-color: #26acad;
}
#course.course_fashion_des #learn-point .module_thumbnail-list.is_2column .title {
  color: #26acad;
}
#course.course_fashion_des .toggle-wrap .toggle-botton:after {
  background-position: 0 -68px;
}
#course.course_fashion_des_h .module_page-title .h1 {
  background-image: url(../img/mode/common_arrow04_fashion_des_h.png);
}
#course.course_fashion_des_h .header-container {
  background-color: #f39800;
}
#course.course_fashion_des_h #learn-point .module_thumbnail-list.is_2column .title {
  color: #f39800;
}
#course.course_fashion_des_h .toggle-wrap .toggle-botton:after {
  background-position: 0 -68px;
}
#course.course_fashion_tec .module_page-title .h1 {
  background-image: url(../img/mode/common_arrow04_fashion_tec.png);
}
#course.course_fashion_tec .header-container {
  background-color: #adbe34;
}
#course.course_fashion_tec #learn-point .module_thumbnail-list.is_2column .title {
  color: #adbe34;
}
#course.course_fashion_tec .toggle-wrap .toggle-botton:after {
  background-position: 0 -68px;
}
#course.course_fashion_biz .module_page-title .h1 {
  background-image: url(../img/mode/common_arrow04_fashion_biz.png);
}
#course.course_fashion_biz .header-container {
  background-color: #44b7da;
}
#course.course_fashion_biz #learn-point .module_thumbnail-list.is_2column .title {
  color: #44b7da;
}
#course.course_fashion_biz .toggle-wrap .toggle-botton:after {
  background-position: 0 -68px;
}
#course.course_stylist_cur .module_page-title .h1 {
  background-image: url(../img/mode/common_arrow04_stylist_cur.png);
}
#course.course_stylist_cur .header-container {
  background-color: #d769a6;
}
#course.course_stylist_cur #learn-point .module_thumbnail-list.is_2column .title {
  color: #d769a6;
}
#course.course_stylist_cur .toggle-wrap .toggle-botton:after {
  background-position: 0 -68px;
}
#course.course_interior_cur .module_page-title .h1 {
  background-image: url(../img/mode/common_arrow04_interior_cur.png);
}
#course.course_interior_cur .header-container {
  background-color: #55a363;
}
#course.course_interior_cur #learn-point .module_thumbnail-list.is_2column .title {
  color: #55a363;
}
#course.course_interior_cur .toggle-wrap .toggle-botton:after {
  background-position: 0 -68px;
}
#course.course_graphic_cur .module_page-title .h1 {
  background-image: url(../img/mode/common_arrow04_graphic_cur.png);
}
#course.course_graphic_cur .header-container {
  background-color: #41a2cf;
}
#course.course_graphic_cur #learn-point .module_thumbnail-list.is_2column .title {
  color: #41a2cf;
}
#course.course_graphic_cur .toggle-wrap .toggle-botton:after {
  background-position: 0 -68px;
}
#course.course_make .module_page-title .h1 {
  background-image: url(../img/mode/common_arrow04_make.png);
}
#course.course_make .header-container {
  background-color: #df606d;
}
#course.course_make #learn-point .module_thumbnail-list.is_2column .title {
  color: #df606d;
}
#course.course_make .toggle-wrap .toggle-botton:after {
  background-position: 0 -68px;
}
#course.course_hair_make .module_page-title .h1 {
  background-image: url(../img/mode/common_arrow04_hair_make.png);
}
#course.course_hair_make .header-container {
  background-color: #7b69ad;
}
#course.course_hair_make #learn-point .module_thumbnail-list.is_2column .title {
  color: #7b69ad;
}
#course.course_hair_make .toggle-wrap .toggle-botton:after {
  background-position: 0 -68px;
}
#course.course_beauty .module_page-title .h1 {
  background-image: url(../img/mode/common_arrow04_beauty.png);
}
#course.course_beauty .header-container {
  background-color: #ed7ca9;
}
#course.course_beauty #learn-point .module_thumbnail-list.is_2column .title {
  color: #ed7ca9;
}
#course.course_beauty .toggle-wrap .toggle-botton:after {
  background-position: 0 -68px;
}
#course.course_basic .module_page-title .h1 {
  background-image: url(../img/mode/common_arrow04_basic.png);
}
#course.course_basic .header-container {
  background-color: #ec664d;
}
#course.course_basic #learn-point .module_thumbnail-list.is_2column .title {
  color: #ec664d;
}
#course.course_basic .toggle-wrap .toggle-botton:after {
  background-position: 0 -68px;
}
#course.course_paris .module_page-title .h1 {
  background-image: url(../img/mode/common_arrow04_paris.png);
}
#course.course_paris .header-container {
  background-color: #9aa19c;
}
#course.course_paris #learn-point .module_thumbnail-list.is_2column .title {
  color: #9aa19c;
}
#course.course_paris .toggle-wrap .toggle-botton:after {
  background-position: 0 -68px;
}
#course.course_saturday .module_page-title .h1 {
  background-image: url(../img/mode/common_arrow04_saturday.png);
}
#course.course_saturday .header-container {
  background-color: #ef8a8d;
}
#course.course_saturday #learn-point .module_thumbnail-list.is_2column .title {
  color: #ef8a8d;
}
#course.course_saturday .toggle-wrap .toggle-botton:after {
  background-position: 0 -68px;
}
#course.course_professional .module_page-title .h1 {
  background-image: url(../img/mode/common_arrow04_professional.png);
}
#course.course_professional .header-container {
  background-color: #4496d3;
}
#course.course_professional #learn-point .module_thumbnail-list.is_2column .title {
  color: #4496d3;
}
#course.course_professional .toggle-wrap .toggle-botton:after {
  background-position: 0 -68px;
}
#course.course_careerup .module_page-title .h1 {
  background-image: url(../img/mode/common_arrow04_careerup.png);
}
#course.course_careerup .header-container {
  background-color: #e48848;
}
#course.course_careerup #learn-point .module_thumbnail-list.is_2column .title {
  color: #e48848;
}
#course.course_careerup .toggle-wrap .toggle-botton:after {
  background-position: 0 -68px;
}
#course.course_skillup .module_page-title .h1 {
  background-image: url(../img/mode/common_arrow04_skillup.png);
}
#course.course_skillup .header-container {
  background-color: #cd6286;
}
#course.course_skillup #learn-point .module_thumbnail-list.is_2column .title {
  color: #cd6286;
}
#course.course_skillup .toggle-wrap .toggle-botton:after {
  background-position: 0 -68px;
}
#course.course_com_beauty .module_page-title .h1 {
  background-image: url(../img/mode/common_arrow04_com_beauty.png);
}
#course.course_com_beauty .header-container {
  background-color: #71c6f2;
}
#course.course_com_beauty #learn-point .module_thumbnail-list.is_2column .title {
  color: #71c6f2;
}
#course.course_com_beauty .toggle-wrap .toggle-botton:after {
  background-position: 0 -68px;
}
#course.course_night .module_page-title .h1 {
  background-image: url(../img/mode/common_arrow04_night.png);
}
#course.course_night .header-container {
  background-color: #a49c98;
}
#course.course_night #learn-point .module_thumbnail-list.is_2column .title {
  color: #a49c98;
}
#course.course_night .toggle-wrap .toggle-botton:after {
  background-position: 0 -68px;
}
#course .header-container + .course-image {
  margin-top: -7em;
}
#course .header-container + section > .module_image-box.is_design1:first-of-type {
  margin-top: -7em;
}
#course .header-container + div > .module_thumbnail-list.is_2column {
  margin-top: -7em;
}
#course .header-container + .campusphoto-index {
  margin-top: -7em;
}
@media only screen and (max-width: 768px) {
  #course .header-container + .course-image {
    margin-top: -4em;
  }
  #course .header-container + section > .module_image-box.is_design1:first-of-type {
    margin-top: -4em;
  }
  #course .header-container + section > .module_image-box.is_design3:first-of-type {
    margin-top: -2em;
  }
  #course .header-container + div > .module_thumbnail-list.is_2column {
    margin-top: -4em;
  }
  #course .header-container + .campusphoto-index {
    margin-top: -2em;
  }
}

@media only screen and (max-width: 768px) {
  #crossTop .site-inner {
    overflow-x: hidden;
  }
}
#crossTop .btn-group {
  margin: 0 0 3em;
}
#crossTop #cross-navi {
  margin: 0.5em 0 1.5em;
}
#crossTop #cross-navi ul {
  margin: 0 -5px;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#crossTop #cross-navi ul li {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  margin: 0 5px;
  list-style: none;
  font-size: 16px;
  font-size: 1rem;
}
#crossTop #cross-navi ul li a {
  display: block;
  padding: 0.3em 10px 0.4em;
  color: #000;
  background: url("../img/mode/cross_common_overlay2.png") repeat left top #fff;
  -webkit-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
  text-align: center;
}
#crossTop #cross-navi ul li a span {
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  line-height: 1.3;
}
#crossTop #cross-navi ul li a:hover {
  background: none rgba(255, 255, 255, 0.9);
}
@media only screen and (max-width: 768px) {
  #crossTop #cross-navi ul li {
    font-size: 12px;
    font-size: 0.75rem;
    line-height: 1.5;
  }
  #crossTop #cross-navi ul li a {
    padding: 0.8em 10px 0.6em;
  }
  #crossTop #cross-navi ul li a span {
    font-size: 11px;
    font-size: 0.6875rem;
    margin-bottom: 0.2em;
  }
}
#crossTop #cross-topics {
  margin-bottom: 4em;
  padding: 0;
}
#crossTop #cross-topics li {
  position: relative;
  list-style: none;
}
#crossTop #cross-topics li:hover .image img {
  -webkit-transform: scale(1.1);
  -ms-transform: scale(1.1);
  transform: scale(1.1);
}
#crossTop #cross-topics li:hover .contents-panel {
  background: none;
  background-color: rgba(255, 255, 255, 0.9);
}
#crossTop #cross-topics li a {
  color: #000;
}
#crossTop #cross-topics li .image {
  width: 1060px;
  height: 580px;
  margin: 0 auto 20px;
  overflow: hidden;
}
#crossTop #cross-topics li .image img {
  -webkit-transition: -webkit-transform 1s ease-out;
  transition: -webkit-transform 1s ease-out;
  transition: transform 1s ease-out;
  transition: transform 1s ease-out, -webkit-transform 1s ease-out;
}
#crossTop #cross-topics li .contents-panel {
  position: absolute;
  bottom: 0;
  width: 100%;
  min-height: 160px;
  margin-bottom: 0;
  padding: 1.5em 80px 20px;
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: bold;
  -webkit-transition: 0.2s ease-out;
  transition: 0.2s ease-out;
}
#crossTop #cross-topics li .contents-panel p:last-of-type {
  margin-bottom: 0;
}
#crossTop #cross-topics .slick-prev,
#crossTop #cross-topics .slick-next {
  position: absolute;
  top: 240px;
  right: -15px;
  margin-top: -1em;
  width: 33px;
  height: 45px;
  padding: 10px;
  background: url("../img/mode/common_arrow06.png") no-repeat transparent;
  background-size: 16px;
  border: none;
  outline: none;
  z-index: 1;
}
#crossTop #cross-topics .slick-prev {
  left: -15px;
  transform: scale(-1, 1);
  -o-transform: scale(-1, 1);
  -ms-transform: scale(-1, 1);
  -moz-transform: scale(-1, 1);
  -webkit-transform: scale(-1, 1);
  -webkit-filter: fliph();
          filter: fliph();
  -ms-filter: fliph();
}
@media only screen and (max-width: 768px) {
  #crossTop #cross-topics {
    margin-bottom: 3em;
  }
  #crossTop #cross-topics li .image {
    width: 100%;
    height: auto;
    width: -o-calc(100% - 20px);
    width: calc(100% - 20px);
    margin: 0 10px;
  }
  #crossTop #cross-topics li .contents-panel {
    position: relative;
    bottom: inherit;
    min-height: inherit;
    padding: 1em 20px 20px;
    font-size: 19px;
    font-size: 1.1875rem;
    line-height: 1.44;
  }
  #crossTop #cross-topics li .contents-panel p {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
  }
  #crossTop #cross-topics .slick-prev,
  #crossTop #cross-topics .slick-next {
    top: 50%;
    right: -30px;
    padding: 10px;
    background-size: 8px;
  }
  #crossTop #cross-topics .slick-prev {
    left: -30px;
  }
}
#crossTop #libraly ul {
  margin: 0 -15px;
  padding: 0;
  overflow: hidden;
}
#crossTop #libraly ul li {
  float: left;
  margin: 0 15px 30px;
  list-style: none;
}
#crossTop #libraly ul li a img {
  display: block;
}
@media only screen and (max-width: 768px) {
  #crossTop #libraly ul li {
    float: none;
    margin: 0 5px 10px;
  }
}
#crossTop #news-report .btn-group {
  margin-top: -1.5em;
}
@media only screen and (max-width: 768px) {
  #crossTop #news-report .btn-group {
    margin-top: -1em;
  }
}
#crossTop #graduate-information {
  margin-bottom: 5em;
}
#crossTop #graduate-information a {
  color: #000;
  text-decoration: underline;
}
#crossTop #graduate-information a:hover {
  text-decoration: none;
}
#crossTop #graduate-information section {
  position: relative;
  margin-bottom: 40px;
  padding: 0 0 40px;
  border-bottom: 1px #777 solid;
}
#crossTop #graduate-information section:first-of-type {
  margin-top: 30px;
}
#crossTop #graduate-information section:last-of-type {
  margin-bottom: 10px;
  border-bottom: none;
}
#crossTop #graduate-information section h2 {
  margin-bottom: 0.5em;
  font-size: 24px;
  font-size: 1.5rem;
  line-height: 1.5;
}
#crossTop #graduate-information section ul {
  padding: 0;
}
#crossTop #graduate-information section ul li {
  margin-bottom: 1em;
  list-style: none;
  font-size: 14px;
  font-size: 0.875rem;
}
#crossTop #graduate-information section .readmore {
  position: absolute;
  right: 0;
  bottom: 1.5em;
  display: inline-block;
  font-size: 14px;
  font-size: 0.875rem;
}
@media only screen and (max-width: 768px) {
  #crossTop #graduate-information {
    margin-bottom: 3em;
  }
  #crossTop #graduate-information section {
    margin-bottom: 1.5em;
    padding: 0;
  }
  #crossTop #graduate-information section:first-of-type {
    margin-top: 1em;
  }
  #crossTop #graduate-information section:last-of-type {
    margin-bottom: 0.5em;
  }
  #crossTop #graduate-information section h2 {
    margin-bottom: 0.5em;
    font-size: 19px;
    font-size: 1.1875rem;
    text-align: center;
  }
  #crossTop #graduate-information section .readmore {
    position: relative;
    margin-top: 24px;
  }
}
#crossTop #about-crossmode {
  margin-bottom: 3em;
  font-size: 18px;
  font-size: 1.125rem;
  color: #fff;
}
#crossTop #about-crossmode h1 {
  font-size: 24px;
  font-size: 1.5rem;
  margin-bottom: 0.5em;
}
@media only screen and (max-width: 768px) {
  #crossTop #about-crossmode {
    font-size: 16px;
    font-size: 1rem;
  }
  #crossTop #about-crossmode h1 {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

#crossGraduates #modal-select-field {
  text-align: center;
  padding: 20px 50px;
}
#crossGraduates #modal-select-field .title {
  font-size: 24px;
  font-size: 1.5rem;
  margin-bottom: 1.5em;
}
#crossGraduates #modal-select-field ul {
  list-style: none;
  padding: 0;
  margin: 0;
  overflow: hidden;
}
#crossGraduates #modal-select-field ul li {
  float: left;
  width: 22.5%;
  width: -o-calc(25% - 20px);
  width: calc(25% - 20px);
  margin: 0 10px 20px;
}
#crossGraduates #modal-select-field ul li a {
  display: block;
  color: #fff;
  font-size: 18px;
  font-size: 1.125rem;
  padding: .4em 0;
  background-color: #000;
}
#crossGraduates #modal-select-field ul li.all a {
  background-color: #e83929;
}
#crossGraduates #modal-select-field ul li.fashion a {
  background-color: #c41d1d;
}
#crossGraduates #modal-select-field ul li.fashion-business a {
  background-color: #f3704f;
}
#crossGraduates #modal-select-field ul li.stylist a {
  background-color: #00a1e9;
}
#crossGraduates #modal-select-field ul li.make-hair a {
  background-color: #fcc800;
}
#crossGraduates #modal-select-field ul li.interior a {
  background-color: #b8d200;
}
#crossGraduates #modal-select-field ul li.graphic a {
  background-color: #af0082;
}
#crossGraduates #modal-select-field ul li a:hover {
  opacity: 0.8;
  filter: alpha(opacity=80);
}
@media only screen and (max-width: 768px) {
  #crossGraduates #modal-select-field {
    padding: 20px 0;
  }
  #crossGraduates #modal-select-field .title {
    font-size: 14px;
    font-size: 0.875rem;
    margin-bottom: 1em;
  }
  #crossGraduates #modal-select-field ul li {
    width: 46.2%;
    width: -o-calc(50% - 10px);
    width: calc(50% - 10px);
    margin: 0 5px 10px;
  }
  #crossGraduates #modal-select-field ul li a {
    font-size: 14px;
    font-size: 0.875rem;
    padding: .5em 0;
  }
}

#crossLibrary main {
  margin-top: 140px;
}
@media only screen and (max-width: 768px) {
  #crossLibrary main {
    margin-top: 100px;
  }
}
#crossLibrary .module_photo-gallery.is_2column {
  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: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0;
}
#crossLibrary .module_photo-gallery.is_2column li {
  width: calc(50% - 20px);
  margin: 0 0 40px;
}
#crossLibrary .module_photo-gallery.is_2column li > a {
  display: block;
  width: 100%;
  height: initial;
}
#crossLibrary .module_photo-gallery.is_2column li > a > img {
  width: 100%;
  object-fit: contain;
  aspect-ratio: 4/3;
}
#crossLibrary .module_photo-gallery.is_2column li:only-child {
  width: 100%;
}
#crossLibrary .module_photo-gallery + .module_photo-gallery {
  margin-top: 0 !important;
}
@media only screen and (max-width: 768px) {
  #crossLibrary .module_photo-gallery.is_2column li {
    width: calc(50% - 10px);
    margin-bottom: 20px;
  }
}
#crossLibrary #interviewee {
  position: relative;
  top: -150px;
  margin-bottom: -120px;
  text-align: center;
}
#crossLibrary #interviewee .picture {
  margin-bottom: 0.5em;
}
#crossLibrary #interviewee .picture img {
  width: 260px;
  border-radius: 50%;
}
#crossLibrary #interviewee .category {
  font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  font-size: 24px;
  font-size: 1.5rem;
  color: #c41d1d;
  font-weight: bold;
}
#crossLibrary #interviewee .name {
  font-size: 32px;
  font-size: 2rem;
  margin-bottom: 0;
}
#crossLibrary #interviewee .graduate {
  line-height: 1;
  margin-bottom: 0.6em;
}
#crossLibrary #interviewee .logo {
  margin-bottom: 0.25em;
}
#crossLibrary #interviewee .job {
  font-size: 18px;
  font-size: 1.125rem;
}
@media only screen and (max-width: 768px) {
  #crossLibrary #interviewee {
    top: -90px;
    margin-bottom: -60px;
  }
  #crossLibrary #interviewee .picture img {
    width: 150px;
  }
  #crossLibrary #interviewee .category {
    font-size: 20px;
    font-size: 1.25rem;
  }
  #crossLibrary #interviewee .name {
    font-size: 26px;
    font-size: 1.625rem;
    margin-bottom: 0;
  }
  #crossLibrary #interviewee .logo {
    margin-bottom: 0.25em;
  }
  #crossLibrary #interviewee .logo img {
    width: auto;
    max-width: 70%;
  }
  #crossLibrary #interviewee .job {
    font-size: 16px;
    font-size: 1rem;
  }
}

#crossNews main {
  margin-top: 30px;
  word-break: break-word;
}
#crossNews main a {
  word-break: break-all;
}
#crossNews h1 + .update {
  margin-bottom: 1em;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: bold;
}
#crossNews h1 + .update .field {
  color: #c41d1d;
  margin-right: 8px;
}
#crossNews h2 + .module_photo-gallery {
  margin-top: -1em;
}
@media only screen and (max-width: 768px) {
  #crossNews h1 + .update {
    margin-bottom: .5em;
  }
  #crossNews .contents-panel section h2 img {
    width: 50%;
  }
}
#crossNews blockquote {
  width: 100%;
}
#crossNews #modal-select-field {
  text-align: center;
  padding: 20px 50px;
}
#crossNews #modal-select-field .title {
  font-size: 24px;
  font-size: 1.5rem;
  margin-bottom: 1.5em;
}
#crossNews #modal-select-field ul {
  list-style: none;
  padding: 0;
  margin: 0;
  overflow: hidden;
}
#crossNews #modal-select-field ul li {
  float: left;
  width: 22.5%;
  width: -o-calc(25% - 20px);
  width: calc(25% - 20px);
  margin: 0 10px 20px;
}
#crossNews #modal-select-field ul li a {
  display: block;
  color: #fff;
  font-size: 18px;
  font-size: 1.125rem;
  padding: .4em 0;
  background-color: #000;
}
#crossNews #modal-select-field ul li.all a {
  background-color: #e83929;
}
#crossNews #modal-select-field ul li.fashion a {
  background-color: #c41d1d;
}
#crossNews #modal-select-field ul li.fashion-business a {
  background-color: #f3704f;
}
#crossNews #modal-select-field ul li.stylist a {
  background-color: #00a1e9;
}
#crossNews #modal-select-field ul li.make-hair a {
  background-color: #fcc800;
}
#crossNews #modal-select-field ul li.interior a {
  background-color: #b8d200;
}
#crossNews #modal-select-field ul li.graphic a {
  background-color: #af0082;
}
#crossNews #modal-select-field ul li a:hover {
  opacity: 0.8;
  filter: alpha(opacity=80);
}
@media only screen and (max-width: 768px) {
  #crossNews #modal-select-field {
    padding: 20px 0;
  }
  #crossNews #modal-select-field .title {
    font-size: 14px;
    font-size: 0.875rem;
    margin-bottom: 1em;
  }
  #crossNews #modal-select-field ul li {
    width: 46.2%;
    width: -o-calc(50% - 10px);
    width: calc(50% - 10px);
    margin: 0 5px 10px;
  }
  #crossNews #modal-select-field ul li a {
    font-size: 14px;
    font-size: 0.875rem;
    padding: .5em 0;
  }
}
#crossNews article header .summary {
  color: #fff;
  text-align: center;
  font-size: 18px;
  font-size: 1.125rem;
  margin-bottom: 3.5em;
}
#crossNews article header .summary .lead {
  margin-bottom: .2em;
}
#crossNews article header .summary .note {
  font-size: 14px;
  font-size: 0.875rem;
}
#crossNews article .btn-group {
  margin-bottom: 2em;
}
@media only screen and (max-width: 768px) {
  #crossNews article header .summary {
    font-size: 14px;
    font-size: 0.875rem;
    text-align: left;
    margin: 0 20px 2em;
  }
  #crossNews article header .summary .lead {
    margin-bottom: .2em;
  }
  #crossNews article header .summary .note {
    font-size: 12px;
    font-size: 0.75rem;
  }
  #crossNews article .btn-group {
    margin-bottom: 1em;
  }
}
#crossNews #contest-navi ul {
  list-style: none;
  padding: 0;
  margin: 0 -15px;
}
#crossNews #contest-navi ul > li {
  float: left;
  width: 50%;
  width: -o-calc(50% - 30px);
  width: calc(50% - 30px);
  padding: 20px;
  margin: 0 15px 1.8em;
  background: url("../img/mode/cross_common_overlay2.png") rgba(255, 255, 255, 0.7);
}
#crossNews #contest-navi ul > li .schedule {
  display: table;
  color: #fff;
  font-size: 14px;
  font-size: 0.875rem;
  text-align: center;
  width: 100%;
  margin-bottom: 1.5em;
}
#crossNews #contest-navi ul > li .schedule > div {
  display: table-cell;
  width: 50%;
  padding: .5em 0;
}
#crossNews #contest-navi ul > li .schedule .date {
  background-color: #000;
}
#crossNews #contest-navi ul > li .schedule .category {
  background-color: #c41d1d;
}
#crossNews #contest-navi ul > li .title {
  font-size: 18px;
  font-size: 1.125rem;
  margin-bottom: 0;
}
#crossNews #contest-navi ul > li dl {
  font-size: 14px;
  font-size: 0.875rem;
  margin-top: .5em;
  margin-bottom: 0;
}
#crossNews #contest-navi ul > li dl dt {
  float: left;
  width: 25%;
}
#crossNews #contest-navi ul > li dl dd {
  margin-left: 25%;
  overflow: hidden;
}
#crossNews #contest-navi ul > li dl dd a {
  color: #000;
  text-decoration: underline;
}
@media only screen and (max-width: 768px) {
  #crossNews #contest-navi ul {
    margin: 0 -10px;
  }
  #crossNews #contest-navi ul > li {
    float: none;
    width: 100%;
    width: -o-calc(100%);
    width: calc(100%);
    padding: 20px 15px;
    margin: 0 0 .7em;
  }
  #crossNews #contest-navi ul > li .schedule {
    font-size: 11px;
    font-size: 0.6875rem;
    margin-bottom: 1em;
  }
  #crossNews #contest-navi ul > li .schedule > div {
    padding: .5em 0;
  }
  #crossNews #contest-navi ul > li .title {
    font-size: 16px;
    font-size: 1rem;
  }
  #crossNews #contest-navi ul > li dl dt {
    float: none;
    width: 100%;
  }
  #crossNews #contest-navi ul > li dl dd {
    margin-left: 0;
    margin-bottom: .5em;
  }
}

#apply .contents-inner, .apply .contents-inner {
  width: 806px;
}
@media only screen and (max-width: 768px) {
  #apply .site-inner, .apply .site-inner {
    width: 100%;
  }
  #apply .contents-inner, .apply .contents-inner {
    width: 100%;
  }
  #apply .contents-inner .contents-inner, .apply .contents-inner .contents-inner {
    padding: 0;
  }
}
#apply #contents-header, .apply #contents-header {
  padding-top: 1em;
}
#apply #form-title, .apply #form-title {
  margin: 0 auto 1.5em;
  text-align: center;
  overflow: hidden;
}
#apply #form-title .inner, .apply #form-title .inner {
  display: inline-block;
  text-align: left;
}
#apply #form-title .inner .image, .apply #form-title .inner .image {
  float: left;
}
#apply #form-title .inner .text, .apply #form-title .inner .text {
  margin-top: .2em;
  margin-left: 165px;
  font-size: 24px;
  font-size: 1.5rem;
  overflow: hidden;
}
#apply #form-title .inner .text .free, .apply #form-title .inner .text .free {
  display: inline-block;
  margin-bottom: .5em;
  padding: .02em 16px .04em;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: bold;
  color: #c41d1d;
  border: 2px #c41d1d solid;
}
#apply #form-title .inner .text p, .apply #form-title .inner .text p {
  line-height: 1.44;
}
#apply #form-title .inner .text small, .apply #form-title .inner .text small {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.6;
  display: inline-block;
}
#apply #form-title.all-area .inner, .apply #form-title.all-area .inner {
  display: block;
}
#apply #form-title.all-area .inner .text, .apply #form-title.all-area .inner .text {
  margin-left: 295px;
}
@media only screen and (max-width: 768px) {
  #apply #form-title, .apply #form-title {
    margin: 0 auto 1em;
  }
  #apply #form-title .inner .image img, .apply #form-title .inner .image img {
    width: 130px;
  }
  #apply #form-title .inner .text, .apply #form-title .inner .text {
    margin-top: 0;
    margin-left: 100px;
    font-size: 16px;
    font-size: 1rem;
  }
  #apply #form-title .inner .text .free, .apply #form-title .inner .text .free {
    margin-bottom: .5em;
    padding: .1em 10px 0;
    font-size: 13px;
    font-size: 0.8125rem;
    font-weight: normal;
    border: 1px #c41d1d solid;
  }
  #apply #form-title .inner .text p, .apply #form-title .inner .text p {
    line-height: 1.44;
    margin-bottom: .5em;
  }
  #apply #form-title .inner .text small, .apply #form-title .inner .text small {
    font-size: 12px;
    font-size: 0.75rem;
  }
  #apply #form-title.all-area .inner .text, .apply #form-title.all-area .inner .text {
    margin-left: 100px;
  }
}
#apply .module_text-list, .apply .module_text-list {
  text-align: center;
}
#apply .module_text-list li, .apply .module_text-list li {
  display: inline-block;
}
#apply .module_input-field table tr td fieldset, .apply .module_input-field table tr td fieldset {
  overflow: hidden;
}
#apply .module_input-field table tr td fieldset .item, .apply .module_input-field table tr td fieldset .item {
  float: left;
  margin-right: 26px;
}
#apply .module_input-field table tr td fieldset[name="address"] .item, .apply .module_input-field table tr td fieldset[name="address"] .item {
  margin-right: 0;
}
#apply .module_input-field table tr td #address, .apply .module_input-field table tr td #address {
  display: block;
  margin-bottom: 1.4em;
}
#apply .module_input-field table tr td #autoinput, .apply .module_input-field table tr td #autoinput {
  margin-top: 1.4em;
}
#apply .module_input-field table tr td #autoinput input, .apply .module_input-field table tr td #autoinput input {
  background: url("../img/mode/common_arrow11.png") no-repeat left center;
  padding-left: 18px;
  color: #c41d1d;
  border: none;
}
#apply .module_input-field table tr td #autoinput input:after, .apply .module_input-field table tr td #autoinput input:after {
  background-color: #c41d1d;
}
@media only screen and (max-width: 768px) {
  #apply .module_input-field table tr td fieldset .item, .apply .module_input-field table tr td fieldset .item {
    float: none;
    margin-right: 0;
    margin-bottom: 1em;
  }
  #apply .module_input-field table tr td fieldset .item:last-of-type, .apply .module_input-field table tr td fieldset .item:last-of-type {
    margin-bottom: 0;
  }
  #apply .module_input-field table tr td #autoinput, .apply .module_input-field table tr td #autoinput {
    margin-top: .8em;
  }
}
#apply .btn.submit, .apply .btn.submit {
  border: 2px solid #f43d39;
  min-width: 400px;
  padding: .7em 30px;
  background-color: #f43d39;
  font-size: 18px;
  font-size: 1.125rem;
}
@media (hover: none) {
  #apply .btn.submit:active, .apply .btn.submit:active {
    border: 2px solid #f43d39;
    color: #f43d39;
    background: url("../img/mode/common_arrow14.png") no-repeat 93% center;
    background-size: 8px auto;
    background-color: transparent;
  }
}
@media (hover: hover) {
  #apply .btn.submit:hover, .apply .btn.submit:hover {
    border: 2px solid #f43d39;
    color: #f43d39;
    background: url("../img/mode/common_arrow14.png") no-repeat 93% center;
    background-size: 8px auto;
    background-color: transparent;
  }
}
#apply .btn.submit:disabled, .apply .btn.submit:disabled {
  -webkit-filter: opacity(0.5) grayscale(50%);
          filter: opacity(0.5) grayscale(50%);
  background-image: none;
  pointer-events: none;
  -webkit-transition: none;
  transition: none;
}
#apply #contact-info,
#apply .contact-info, .apply #contact-info,
.apply .contact-info {
  width: 610px;
  margin: 0 auto 2em;
  padding: 15px;
  border: 1px #ddd solid;
  text-align: center;
}
#apply #contact-info p,
#apply .contact-info p, .apply #contact-info p,
.apply .contact-info p {
  margin-bottom: .5em;
}
#apply #contact-info .tel-group,
#apply .contact-info .tel-group, .apply #contact-info .tel-group,
.apply .contact-info .tel-group {
  margin: 1.5em 0;
}
#apply #contact-info .title,
#apply .contact-info .title, .apply #contact-info .title,
.apply .contact-info .title {
  font-size: 16px;
  font-size: 1rem;
  font-weight: bold;
}
#apply #contact-info address,
#apply .contact-info address, .apply #contact-info address,
.apply .contact-info address {
  font-size: 28px;
  font-size: 1.75rem;
  font-weight: bold;
  font-style: normal;
}
#apply #contact-info address a, #apply #contact-info address span,
#apply .contact-info address a,
#apply .contact-info address span, .apply #contact-info address a, .apply #contact-info address span,
.apply .contact-info address a,
.apply .contact-info address span {
  color: #c41d1d;
  background: url("../img/mode/common_icon_phone.png") no-repeat left center;
  padding-left: 32px;
}
#apply #contact-info address a:after, #apply #contact-info address span:after,
#apply .contact-info address a:after,
#apply .contact-info address span:after, .apply #contact-info address a:after, .apply #contact-info address span:after,
.apply .contact-info address a:after,
.apply .contact-info address span:after {
  display: none;
}
#apply #contact-info small,
#apply .contact-info small, .apply #contact-info small,
.apply .contact-info small {
  color: #777;
  font-size: 12px;
  font-size: 0.75rem;
}
#apply #contact-info .btn-group,
#apply .contact-info .btn-group, .apply #contact-info .btn-group,
.apply .contact-info .btn-group {
  margin: 1.5em 0 1em;
}
#apply #contact-list .title, .apply #contact-list .title {
  font-size: 16px;
  font-size: 1rem;
  text-align: center;
  font-weight: bold;
}
#apply #contact-list .contact-info, .apply #contact-list .contact-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  width: auto;
  margin-bottom: 4em;
  padding: 0;
  border: none;
}
#apply #contact-list .contact-info .tel-group, .apply #contact-list .contact-info .tel-group {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  margin: 1em 0;
  display: inline-block;
}
#apply #contact-list .contact-info address, .apply #contact-list .contact-info address {
  font-size: 22px;
  font-size: 1.375rem;
}
#apply #contact-list .contact-info address a, #apply #contact-list .contact-info address span, .apply #contact-list .contact-info address a, .apply #contact-list .contact-info address span {
  background-size: 20px;
}
@media only screen and (max-width: 768px) {
  #apply .btn.submit, .apply .btn.submit {
    min-width: inherit;
    font-size: 17px;
    font-size: 1.0625rem;
  }
  #apply #contact-info,
  #apply .contact-info, .apply #contact-info,
  .apply .contact-info {
    width: 100%;
    margin: 0 auto 1.5em;
    font-size: 12px;
    font-size: 0.75rem;
  }
  #apply #contact-info address,
  #apply .contact-info address, .apply #contact-info address,
  .apply .contact-info address {
    font-size: 18px;
    font-size: 1.125rem;
    margin-bottom: .3em;
  }
  #apply #contact-info address a,
  #apply .contact-info address a, .apply #contact-info address a,
  .apply .contact-info address a {
    background: url("../img/mode/common_icon_phone.png") no-repeat left center;
    background-size: 18px;
    padding-left: 24px;
    text-decoration: underline;
  }
  #apply #contact-info small,
  #apply .contact-info small, .apply #contact-info small,
  .apply .contact-info small {
    font-size: 11px;
    font-size: 0.6875rem;
  }
  #apply #contact-list .contact-info, .apply #contact-list .contact-info {
    display: block;
  }
  #apply #contact-list .contact-info .tel-group, .apply #contact-list .contact-info .tel-group {
    display: block;
  }
  #apply #contact-list .contact-info address, .apply #contact-list .contact-info address {
    font-size: 18px;
    font-size: 1.125rem;
  }
  #apply #contact-list .contact-info address a, .apply #contact-list .contact-info address a {
    background-size: 18px;
  }
}
#apply [id^="offer-form"], .apply [id^="offer-form"] {
  display: none;
}
#apply #apply-form table,
#apply .apply-form table, .apply #apply-form table,
.apply .apply-form table {
  margin-bottom: 3em;
  max-width: initial;
}
#apply #apply-form th .notice,
#apply .apply-form th .notice, .apply #apply-form th .notice,
.apply .apply-form th .notice {
  font-size: 11px;
  font-size: 0.6875rem;
  font-weight: normal;
}
#apply #apply-form td .notice,
#apply .apply-form td .notice, .apply #apply-form td .notice,
.apply .apply-form td .notice {
  margin: .5em 0;
}
#apply #apply-form td .notice.red,
#apply .apply-form td .notice.red, .apply #apply-form td .notice.red,
.apply .apply-form td .notice.red {
  color: #c41d1d;
}
#apply #apply-form td input + .notice,
#apply #apply-form td select + .notice,
#apply .apply-form td input + .notice,
#apply .apply-form td select + .notice, .apply #apply-form td input + .notice,
.apply #apply-form td select + .notice,
.apply .apply-form td input + .notice,
.apply .apply-form td select + .notice {
  margin-top: .5em;
}
#apply #apply-form .item-group,
#apply .apply-form .item-group, .apply #apply-form .item-group,
.apply .apply-form .item-group {
  margin: 1em 0;
  overflow: hidden;
}
#apply #apply-form .item-group:first-of-type,
#apply .apply-form .item-group:first-of-type, .apply #apply-form .item-group:first-of-type,
.apply .apply-form .item-group:first-of-type {
  margin-top: 0;
}
#apply #apply-form .item-group:last-of-type,
#apply .apply-form .item-group:last-of-type, .apply #apply-form .item-group:last-of-type,
.apply .apply-form .item-group:last-of-type {
  margin-bottom: 0;
}
#apply #apply-form .item-group .item,
#apply .apply-form .item-group .item, .apply #apply-form .item-group .item,
.apply .apply-form .item-group .item {
  display: inline-block;
  margin-right: 20px;
}
#apply #apply-form .item-group .item label,
#apply .apply-form .item-group .item label, .apply #apply-form .item-group .item label,
.apply .apply-form .item-group .item label {
  display: block;
}
#apply #apply-form [name=address] .item,
#apply .apply-form [name=address] .item, .apply #apply-form [name=address] .item,
.apply .apply-form [name=address] .item {
  margin-bottom: 1.4em;
}
#apply #apply-form [name=address] .item:last-child,
#apply .apply-form [name=address] .item:last-child, .apply #apply-form [name=address] .item:last-child,
.apply .apply-form [name=address] .item:last-child {
  margin-bottom: 0;
}
#apply #apply-form [name=personnel-manager] .item,
#apply .apply-form [name=personnel-manager] .item, .apply #apply-form [name=personnel-manager] .item,
.apply .apply-form [name=personnel-manager] .item {
  margin-bottom: 1.4em;
}
#apply #apply-form [name=personnel-manager] .item:last-child, #apply #apply-form [name=personnel-manager] .item:nth-last-of-type(2),
#apply .apply-form [name=personnel-manager] .item:last-child,
#apply .apply-form [name=personnel-manager] .item:nth-last-of-type(2), .apply #apply-form [name=personnel-manager] .item:last-child, .apply #apply-form [name=personnel-manager] .item:nth-last-of-type(2),
.apply .apply-form [name=personnel-manager] .item:last-child,
.apply .apply-form [name=personnel-manager] .item:nth-last-of-type(2) {
  margin-bottom: 0;
}
#apply #apply-form [name=request] ul,
#apply #apply-form [name=interest] ul,
#apply .apply-form [name=request] ul,
#apply .apply-form [name=interest] ul, .apply #apply-form [name=request] ul,
.apply #apply-form [name=interest] ul,
.apply .apply-form [name=request] ul,
.apply .apply-form [name=interest] ul {
  margin: 0 -10px;
}
#apply #apply-form [name=request] ul li,
#apply #apply-form [name=interest] ul li,
#apply .apply-form [name=request] ul li,
#apply .apply-form [name=interest] ul li, .apply #apply-form [name=request] ul li,
.apply #apply-form [name=interest] ul li,
.apply .apply-form [name=request] ul li,
.apply .apply-form [name=interest] ul li {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 46.6%;
  width: -o-calc(50% - 20px);
  width: calc(50% - 20px);
  margin: 0 10px 1em;
  vertical-align: middle;
}
#apply #apply-form [name=request] ul li label,
#apply #apply-form [name=interest] ul li label,
#apply .apply-form [name=request] ul li label,
#apply .apply-form [name=interest] ul li label, .apply #apply-form [name=request] ul li label,
.apply #apply-form [name=interest] ul li label,
.apply .apply-form [name=request] ul li label,
.apply .apply-form [name=interest] ul li label {
  display: block;
  width: 100%;
}
#apply #apply-form [name=business],
#apply #apply-form [name=company-name],
#apply #apply-form [name=company-name-kana],
#apply #apply-form [name=business_detail],
#apply #apply-form [name=business_target],
#apply #apply-form [name=business_item],
#apply #apply-form [name=brand],
#apply .apply-form [name=business],
#apply .apply-form [name=company-name],
#apply .apply-form [name=company-name-kana],
#apply .apply-form [name=business_detail],
#apply .apply-form [name=business_target],
#apply .apply-form [name=business_item],
#apply .apply-form [name=brand], .apply #apply-form [name=business],
.apply #apply-form [name=company-name],
.apply #apply-form [name=company-name-kana],
.apply #apply-form [name=business_detail],
.apply #apply-form [name=business_target],
.apply #apply-form [name=business_item],
.apply #apply-form [name=brand],
.apply .apply-form [name=business],
.apply .apply-form [name=company-name],
.apply .apply-form [name=company-name-kana],
.apply .apply-form [name=business_detail],
.apply .apply-form [name=business_target],
.apply .apply-form [name=business_item],
.apply .apply-form [name=brand] {
  width: 100%;
}
#apply #apply-form .dormitory-exp-bloc,
#apply #apply-form .with-bloc,
#apply .apply-form .dormitory-exp-bloc,
#apply .apply-form .with-bloc, .apply #apply-form .dormitory-exp-bloc,
.apply #apply-form .with-bloc,
.apply .apply-form .dormitory-exp-bloc,
.apply .apply-form .with-bloc {
  display: none;
}
#apply #apply-form .dormitory-exp-bloc td label,
#apply .apply-form .dormitory-exp-bloc td label, .apply #apply-form .dormitory-exp-bloc td label,
.apply .apply-form .dormitory-exp-bloc td label {
  margin-right: 5px;
}
#apply #apply-form .dormitory-exp-bloc td label + input,
#apply .apply-form .dormitory-exp-bloc td label + input, .apply #apply-form .dormitory-exp-bloc td label + input,
.apply .apply-form .dormitory-exp-bloc td label + input {
  margin-right: 5px;
}
#apply #apply-form .with-bloc td .item,
#apply .apply-form .with-bloc td .item, .apply #apply-form .with-bloc td .item,
.apply .apply-form .with-bloc td .item {
  display: inline-block;
}
#apply #apply-form .with-bloc td .item label,
#apply .apply-form .with-bloc td .item label, .apply #apply-form .with-bloc td .item label,
.apply .apply-form .with-bloc td .item label {
  display: block;
}
#apply #apply-form fieldset[name*=recruit_],
#apply .apply-form fieldset[name*=recruit_], .apply #apply-form fieldset[name*=recruit_],
.apply .apply-form fieldset[name*=recruit_] {
  position: relative;
  padding-left: 35px;
}
#apply #apply-form fieldset[name*=recruit_]:before,
#apply .apply-form fieldset[name*=recruit_]:before, .apply #apply-form fieldset[name*=recruit_]:before,
.apply .apply-form fieldset[name*=recruit_]:before {
  position: absolute;
  left: 2px;
  display: inline-block;
  background-color: #c41d1d;
  color: #fff;
  padding: 2px 4px 1px;
}
#apply #apply-form [name=recruit_01_job]:before,
#apply .apply-form [name=recruit_01_job]:before, .apply #apply-form [name=recruit_01_job]:before,
.apply .apply-form [name=recruit_01_job]:before {
  content: '1';
}
#apply #apply-form [name=recruit_02_job]:before,
#apply .apply-form [name=recruit_02_job]:before, .apply #apply-form [name=recruit_02_job]:before,
.apply .apply-form [name=recruit_02_job]:before {
  content: '2';
}
#apply #apply-form [name=recruit_03_job]:before,
#apply .apply-form [name=recruit_03_job]:before, .apply #apply-form [name=recruit_03_job]:before,
.apply .apply-form [name=recruit_03_job]:before {
  content: '3';
}
#apply #apply-form [name=recruit_04_job]:before,
#apply .apply-form [name=recruit_04_job]:before, .apply #apply-form [name=recruit_04_job]:before,
.apply .apply-form [name=recruit_04_job]:before {
  content: '4';
}
#apply #apply-form [name=recruit_05_job]:before,
#apply .apply-form [name=recruit_05_job]:before, .apply #apply-form [name=recruit_05_job]:before,
.apply .apply-form [name=recruit_05_job]:before {
  content: '5';
}
#apply #apply-form #income,
#apply .apply-form #income, .apply #apply-form #income,
.apply .apply-form #income {
  margin-bottom: 1em;
}
#apply #apply-form [name=work_time],
#apply .apply-form [name=work_time], .apply #apply-form [name=work_time],
.apply .apply-form [name=work_time] {
  margin-bottom: 1em;
}
#apply #apply-form [name=work_time_flex] legend,
#apply .apply-form [name=work_time_flex] legend, .apply #apply-form [name=work_time_flex] legend,
.apply .apply-form [name=work_time_flex] legend {
  display: inline-block;
  background: none;
  margin: 0 20px 0 0;
  padding: 0;
  font-weight: normal;
}
#apply #apply-form [name=work_time_flex] .either-radio,
#apply .apply-form [name=work_time_flex] .either-radio, .apply #apply-form [name=work_time_flex] .either-radio,
.apply .apply-form [name=work_time_flex] .either-radio {
  display: inline-block;
}
#apply #apply-form [name=holiday] ul,
#apply .apply-form [name=holiday] ul, .apply #apply-form [name=holiday] ul,
.apply .apply-form [name=holiday] ul {
  margin-bottom: 1em;
}
#apply #apply-form [name=holiday] ul li:last-child,
#apply .apply-form [name=holiday] ul li:last-child, .apply #apply-form [name=holiday] ul li:last-child,
.apply .apply-form [name=holiday] ul li:last-child {
  margin-bottom: 0;
}
#apply #apply-form [name=holiday] ul li ul,
#apply .apply-form [name=holiday] ul li ul, .apply #apply-form [name=holiday] ul li ul,
.apply .apply-form [name=holiday] ul li ul {
  display: inline-block;
  margin-bottom: 0;
}
#apply #apply-form [name=holiday] ul li ul li,
#apply .apply-form [name=holiday] ul li ul li, .apply #apply-form [name=holiday] ul li ul li,
.apply .apply-form [name=holiday] ul li ul li {
  margin-right: 10px;
  margin-bottom: 0;
}
#apply #apply-form [name=holiday] ul li ul li:last-child,
#apply .apply-form [name=holiday] ul li ul li:last-child, .apply #apply-form [name=holiday] ul li ul li:last-child,
.apply .apply-form [name=holiday] ul li ul li:last-child {
  margin-right: 0;
}
#apply #apply-form #move_cost_upper,
#apply .apply-form #move_cost_upper, .apply #apply-form #move_cost_upper,
.apply .apply-form #move_cost_upper {
  width: 100px;
  margin-right: 10px;
}
#apply #apply-form label[for=kigen_date] input[type=text],
#apply #apply-form label[for=setsumeikai_date] input[type=text],
#apply #apply-form label[for=shikenbi_date] input[type=text],
#apply .apply-form label[for=kigen_date] input[type=text],
#apply .apply-form label[for=setsumeikai_date] input[type=text],
#apply .apply-form label[for=shikenbi_date] input[type=text], .apply #apply-form label[for=kigen_date] input[type=text],
.apply #apply-form label[for=setsumeikai_date] input[type=text],
.apply #apply-form label[for=shikenbi_date] input[type=text],
.apply .apply-form label[for=kigen_date] input[type=text],
.apply .apply-form label[for=setsumeikai_date] input[type=text],
.apply .apply-form label[for=shikenbi_date] input[type=text] {
  width: 100px;
}
#apply #apply-form label[for=seminar_space],
#apply #apply-form label[for=examine_space],
#apply .apply-form label[for=seminar_space],
#apply .apply-form label[for=examine_space], .apply #apply-form label[for=seminar_space],
.apply #apply-form label[for=examine_space],
.apply .apply-form label[for=seminar_space],
.apply .apply-form label[for=examine_space] {
  display: inline-block !important;
  margin-right: 5px !important;
}
@media only screen and (max-width: 768px) {
  #apply #apply-form p, .apply #apply-form p {
    font-size: 11px;
    font-size: 0.6875rem;
  }
  #apply #apply-form [name=address] .item label, .apply #apply-form [name=address] .item label {
    display: block;
    margin-bottom: .5em;
  }
  #apply #apply-form [name=address] .item input[type=text], .apply #apply-form [name=address] .item input[type=text] {
    width: 100%;
  }
  #apply #apply-form input[type=text], .apply #apply-form input[type=text] {
    width: 100%;
  }
  #apply #apply-form [name=request] ul li,
  #apply #apply-form [name=interest] ul li, .apply #apply-form [name=request] ul li,
  .apply #apply-form [name=interest] ul li {
    width: 100%;
  }
  #apply #apply-form [name=work_time_flex] .either-radio, .apply #apply-form [name=work_time_flex] .either-radio {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  #apply #apply-form [name=holiday] ul li ul li, .apply #apply-form [name=holiday] ul li ul li {
    display: inline-block;
    margin-right: 0;
  }
  #apply #apply-form [name=holiday] ul li ul li:last-child, .apply #apply-form [name=holiday] ul li ul li:last-child {
    margin-right: 0;
  }
  #apply #apply-form #error-message, .apply #apply-form #error-message {
    margin-bottom: 2em;
  }
  #apply #apply-form #error-message .error-text, .apply #apply-form #error-message .error-text {
    margin-bottom: 1em;
    font-size: 16px;
    font-size: 1rem;
  }
}
#apply #error-message, .apply #error-message {
  display: none;
  margin-bottom: 4em;
  text-align: center;
}
#apply #error-message .error-text, .apply #error-message .error-text {
  margin-bottom: 1em;
  color: #c41d1d;
  font-size: 20px;
  font-size: 1.25rem;
}
@media only screen and (max-width: 768px) {
  #apply #error-message, .apply #error-message {
    margin-bottom: 2em;
  }
  #apply #error-message .error-text, .apply #error-message .error-text {
    margin-bottom: 1em;
    font-size: 16px;
    font-size: 1rem;
  }
}
#apply #apply-confirm table + .btn-group, .apply #apply-confirm table + .btn-group {
  margin-top: 0;
}
#apply #apply-confirm table tr td .item, .apply #apply-confirm table tr td .item {
  display: inline-block;
  margin-right: 10px;
}
#apply #apply-confirm table tr td [class*=recruit_], .apply #apply-confirm table tr td [class*=recruit_] {
  position: relative;
  padding-left: 35px;
}
#apply #apply-confirm table tr td [class*=recruit_]:before, .apply #apply-confirm table tr td [class*=recruit_]:before {
  position: absolute;
  left: 2px;
  display: inline-block;
  background-color: #c41d1d;
  color: #fff;
  padding: 2px 4px 1px;
}
#apply #apply-confirm table tr td .recruit_01_job:before, .apply #apply-confirm table tr td .recruit_01_job:before {
  content: '1';
}
#apply #apply-confirm table tr td .recruit_02_job:before, .apply #apply-confirm table tr td .recruit_02_job:before {
  content: '2';
}
#apply #apply-confirm table tr td .recruit_03_job:before, .apply #apply-confirm table tr td .recruit_03_job:before {
  content: '3';
}
#apply #apply-confirm table tr td .recruit_04_job:before, .apply #apply-confirm table tr td .recruit_04_job:before {
  content: '4';
}
#apply #apply-confirm table tr td .recruit_05_job:before, .apply #apply-confirm table tr td .recruit_05_job:before {
  content: '5';
}
#apply #apply-confirm table tr td .income table, .apply #apply-confirm table tr td .income table {
  margin: 1em 0;
}
#apply #apply-confirm table tr td .income table:last-of-type, .apply #apply-confirm table tr td .income table:last-of-type {
  margin-bottom: 0;
}
#apply #apply-confirm table tr td .income table tr, .apply #apply-confirm table tr td .income table tr {
  border: none;
}
#apply #apply-confirm table tr td .income table tr th, .apply #apply-confirm table tr td .income table tr th {
  color: #c41d1d;
  background: none;
  padding: 0;
}
#apply #apply-confirm table tr td .income table tr td, .apply #apply-confirm table tr td .income table tr td {
  padding: .25em 0;
  border: none;
}
#apply #apply-confirm table tr td .income ul, .apply #apply-confirm table tr td .income ul {
  margin: 0;
}
#apply #apply-confirm table tr td .income ul li, .apply #apply-confirm table tr td .income ul li {
  display: block;
}
#apply #apply-form .questionnaire-wrap, .apply #apply-form .questionnaire-wrap {
  margin: 0 -80px;
}
#apply #apply-form .questionnaire-wrap section h3, .apply #apply-form .questionnaire-wrap section h3 {
  margin-bottom: 2em;
}
#apply #apply-form .questionnaire-wrap section fieldset, .apply #apply-form .questionnaire-wrap section fieldset {
  margin: 0 0 3em 0;
  padding: 0 0 3em 0;
  border-bottom: 1px #ddd solid;
}
#apply #apply-form .questionnaire-wrap section fieldset:last-of-type, .apply #apply-form .questionnaire-wrap section fieldset:last-of-type {
  border-bottom: none;
}
#apply #apply-form .questionnaire-wrap section ul, .apply #apply-form .questionnaire-wrap section ul {
  margin-right: -20px;
}
#apply #apply-form .questionnaire-wrap #question-enquete ul li, .apply #apply-form .questionnaire-wrap #question-enquete ul li {
  width: 23%;
  width: -o-calc(100% / 4 - 20px);
  width: calc(100% / 4 - 20px);
}
#apply #apply-form .questionnaire-wrap #question-check ul li, .apply #apply-form .questionnaire-wrap #question-check ul li {
  width: 31.3%;
  width: -o-calc(100% / 3 - 21px);
  width: calc(100% / 3 - 21px);
}
@media only screen and (max-width: 768px) {
  #apply #apply-form .questionnaire-wrap, .apply #apply-form .questionnaire-wrap {
    margin: 0;
  }
  #apply #apply-form .questionnaire-wrap fieldset button, .apply #apply-form .questionnaire-wrap fieldset button {
    background: transparent;
    border: none;
    width: 100%;
    text-align: left;
    padding: 1em 0.3em;
    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;
  }
  #apply #apply-form .questionnaire-wrap fieldset button + ul, .apply #apply-form .questionnaire-wrap fieldset button + ul {
    display: block;
    max-height: 0;
    overflow: hidden;
    -webkit-transition: max-height 0.25s ease-in;
    transition: max-height 0.25s ease-in;
    margin: 0;
  }
  #apply #apply-form .questionnaire-wrap fieldset button svg, .apply #apply-form .questionnaire-wrap fieldset button svg {
    -webkit-transition: -webkit-transform 0.15s;
    transition: -webkit-transform 0.15s;
    transition: transform 0.15s;
    transition: transform 0.15s, -webkit-transform 0.15s;
  }
  #apply #apply-form .questionnaire-wrap fieldset button svg path, .apply #apply-form .questionnaire-wrap fieldset button svg path {
    stroke: #c41d1d;
  }
  #apply #apply-form .questionnaire-wrap fieldset button.show svg, .apply #apply-form .questionnaire-wrap fieldset button.show svg {
    -webkit-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
            transform: rotate(180deg);
    -webkit-transition: -webkit-transform 0.15s;
    transition: -webkit-transform 0.15s;
    transition: transform 0.15s;
    transition: transform 0.15s, -webkit-transform 0.15s;
  }
  #apply #apply-form .questionnaire-wrap fieldset button.show + ul, .apply #apply-form .questionnaire-wrap fieldset button.show + ul {
    display: block;
    visibility: visible;
    max-height: 1500px;
    -webkit-transition: max-height  0.25s ease-in;
    transition: max-height  0.25s ease-in;
  }
  #apply #apply-form .questionnaire-wrap #question-check fieldset, .apply #apply-form .questionnaire-wrap #question-check fieldset {
    margin: 0;
    padding: 0;
  }
  #apply #apply-form .questionnaire-wrap #question-check ul li, .apply #apply-form .questionnaire-wrap #question-check ul li {
    margin: 0.8em 0;
    width: auto;
  }
}
#apply #guidance-reservation, .apply #guidance-reservation {
  text-align: center;
}
#apply #guidance-reservation strong, .apply #guidance-reservation strong {
  color: #f43d39;
}
#apply #guidance-reservation .heading9, .apply #guidance-reservation .heading9 {
  margin-bottom: 1em;
}
#apply #guidance-reservation #implementation, .apply #guidance-reservation #implementation {
  margin-bottom: 2em;
}
#apply #guidance-reservation #implementation strong, .apply #guidance-reservation #implementation strong {
  font-size: 20px;
  font-size: 1.25rem;
}
#apply #contents-footer, .apply #contents-footer {
  min-height: 58px;
  margin-bottom: 3em;
  overflow: hidden;
}
#apply #contents-footer .notice, .apply #contents-footer .notice {
  float: left;
  width: 600px;
}
#apply #contents-footer #ssl-seal, .apply #contents-footer #ssl-seal {
  position: absolute;
  right: 0;
}
@media only screen and (max-width: 768px) {
  #apply #contents-footer, .apply #contents-footer {
    margin-bottom: 1em;
  }
  #apply #contents-footer .notice, .apply #contents-footer .notice {
    float: none;
    width: 100%;
  }
  #apply #contents-footer #ssl-seal, .apply #contents-footer #ssl-seal {
    position: relative;
    right: auto;
  }
  #apply #contents-footer #ssl-seal img, .apply #contents-footer #ssl-seal img {
    width: auto;
    max-width: 50%;
  }
}

#jobs main {
  overflow: hidden;
}
#jobs .course_fashion {
  color: #51b5c0;
  border-color: #51b5c0;
}
#jobs .course_fashion a {
  color: #51b5c0;
}
#jobs .course_fashion-business {
  color: #f3704f;
  border-color: #f3704f;
}
#jobs .course_fashion-business a {
  color: #f3704f;
}
#jobs .course_stylist {
  color: #db73bd;
  border-color: #db73bd;
}
#jobs .course_stylist a {
  color: #db73bd;
}
#jobs .course_make-hair {
  color: #6683e8;
  border-color: #6683e8;
}
#jobs .course_make-hair a {
  color: #6683e8;
}
#jobs .course_interior {
  color: #a2cd40;
  border-color: #a2cd40;
}
#jobs .course_interior a {
  color: #a2cd40;
}
#jobs .course_graphic {
  color: #a86fd3;
  border-color: #a86fd3;
}
#jobs .course_graphic a {
  color: #a86fd3;
}
#jobs .oc_fashion {
  color: #ee7738;
  border-color: #ee7738;
}
#jobs .oc_fashion a {
  color: #ee7738;
}
#jobs .oc_stylist {
  color: #6873bb;
  border-color: #6873bb;
}
#jobs .oc_stylist a {
  color: #6873bb;
}
#jobs .oc_make-hair1 {
  color: #eb78ac;
  border-color: #eb78ac;
}
#jobs .oc_make-hair1 a {
  color: #eb78ac;
}
#jobs .oc_make-hair2 {
  color: #eb6573;
  border-color: #eb6573;
}
#jobs .oc_make-hair2 a {
  color: #eb6573;
}
#jobs .oc_make-hair3 {
  color: #845aa5;
  border-color: #845aa5;
}
#jobs .oc_make-hair3 a {
  color: #845aa5;
}
#jobs .oc_interior {
  color: #55a363;
  border-color: #55a363;
}
#jobs .oc_interior a {
  color: #55a363;
}
#jobs .oc_graphic {
  color: #54abd4;
  border-color: #54abd4;
}
#jobs .oc_graphic a {
  color: #54abd4;
}
#jobs .oc_advantage {
  color: #d34755;
  border-color: #d34755;
}
#jobs .oc_advantage a {
  color: #d34755;
}
#jobs .jobs-navi {
  background-color: #fff;
}
#jobs .jobs-navi ul {
  margin: 0 auto;
  padding: 0;
  overflow: hidden;
}
#jobs .jobs-navi ul li {
  float: left;
  width: 12.5%;
  width: -o-calc(100% / 6);
  width: calc(100% / 6);
  list-style: none;
  font-size: 14px;
  font-size: 0.875rem;
  text-align: center;
}
#jobs .jobs-navi ul li.active a {
  color: #fff;
}
#jobs .jobs-navi ul li a {
  display: block;
  padding: 10px 5px;
}
#jobs .jobs-navi ul li a:hover {
  color: #fff;
}
#jobs .jobs-navi ul .course_fashion a:hover,
#jobs .jobs-navi ul .course_fashion.active {
  background-color: #51b5c0;
}
#jobs .jobs-navi ul .course_fashion-business a:hover,
#jobs .jobs-navi ul .course_fashion-business.active {
  background-color: #f3704f;
}
#jobs .jobs-navi ul .course_stylist a:hover,
#jobs .jobs-navi ul .course_stylist.active {
  background-color: #db73bd;
}
#jobs .jobs-navi ul .course_make-hair a:hover,
#jobs .jobs-navi ul .course_make-hair.active {
  background-color: #6683e8;
}
#jobs .jobs-navi ul .course_interior a:hover,
#jobs .jobs-navi ul .course_interior.active {
  background-color: #a2cd40;
}
#jobs .jobs-navi ul .course_graphic a:hover,
#jobs .jobs-navi ul .course_graphic.active {
  background-color: #a86fd3;
}
@media only screen and (max-width: 768px) {
  #jobs #jobs-navi-title {
    padding: 8px 10px;
    background-color: #f5f5f5;
    font-size: 12px;
    font-size: 0.75rem;
  }
  #jobs .jobs-navi {
    border-bottom: none;
    overflow-x: scroll;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    z-index: 1000;
  }
  #jobs .jobs-navi ul li {
    width: auto;
    font-size: 12px;
    font-size: 0.75rem;
  }
  #jobs .jobs-navi ul li:last-child {
    border-right: none;
  }
  #jobs .jobs-navi ul li a {
    padding: 10px 15px;
  }
}
#jobs #contents-header {
  display: table;
  position: relative;
  width: 100%;
  height: 320px;
  margin-bottom: 0;
  text-align: center;
  color: #fff;
}
#jobs #contents-header.course_fashion {
  background-color: #51b5c0;
}
#jobs #contents-header.course_fashion-business {
  background-color: #f3704f;
}
#jobs #contents-header.course_stylist {
  background-color: #db73bd;
}
#jobs #contents-header.course_make-hair {
  background-color: #6683e8;
}
#jobs #contents-header.course_interior {
  background-color: #a2cd40;
}
#jobs #contents-header.course_graphic {
  background-color: #a86fd3;
}
#jobs #contents-header .inner {
  position: relative;
  display: table-cell;
  top: -1em;
  width: 100%;
  vertical-align: middle;
}
#jobs #contents-header .inner h1 {
  font-weight: normal;
  font-size: 40px;
  font-size: 2.5rem;
}
#jobs #contents-header .inner .sub-title {
  font-size: 20px;
  font-size: 1.25rem;
}
#jobs #contents-header .inner .sub-title:after {
  display: block;
  content: '';
  background: url("../img/mode/common_arrow06.png") no-repeat;
  width: 13px;
  height: 25px;
  margin: 1.5em auto 0;
  -ms-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}
@media only screen and (max-width: 768px) {
  #jobs #contents-header {
    display: block;
    height: inherit;
  }
  #jobs #contents-header .inner {
    display: block;
    top: 0;
    padding: 1.5em 10px 5em;
  }
  #jobs #contents-header .inner h1 {
    font-size: 20px;
    font-size: 1.25rem;
    margin-bottom: 2em;
  }
  #jobs #contents-header .inner .sub-title {
    font-size: 15px;
    font-size: 0.9375rem;
    font-weight: bold;
  }
  #jobs #contents-header .inner .sub-title:after {
    width: 10px;
    height: 20px;
    margin: .5em auto 0;
    -ms-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    background-size: 8px;
  }
}
#jobs .course-image {
  position: relative;
  width: 1120px;
  margin: -40px auto 5em;
  z-index: 100;
}
#jobs .course-image img {
  vertical-align: bottom;
  -webkit-box-shadow: 0px 1px 3px #aaa;
  box-shadow: 0px 1px 3px #aaa;
}
@media only screen and (max-width: 768px) {
  #jobs .course-image {
    width: 86%;
    width: -o-calc(100% - 40px);
    width: calc(100% - 40px);
    margin: -35px auto 1.5em;
  }
}
@media only screen and (max-width: 768px) {
  #jobs .module_introduction-list.is_3column .item .sub-title {
    font-size: 14px;
    font-size: 0.875rem;
  }
  #jobs .module_introduction-list.is_3column .item .title {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
#jobs #job-list {
  margin-bottom: 5em;
}
#jobs #job-list section {
  background-color: #fff;
}
#jobs #job-list section .title {
  font-size: 18px;
  font-size: 1.125rem;
  text-align: center;
  padding-top: 2em;
}
#jobs #job-list section ul {
  padding: 0 5px 1.5em;
  overflow: hidden;
}
#jobs #job-list section ul li {
  float: left;
  width: 360px;
  margin: 0 5px 1.5em;
  padding: 1.5em 0 1.4em;
  list-style: none;
  border-bottom: 1px #ddd solid;
}
#jobs #job-list section ul li .job {
  font-size: 18px;
  font-size: 1.125rem;
}
#jobs #job-list section ul li .description {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.4;
  color: #000;
}
#jobs #job-list section ul li ul {
  text-align: right;
  padding: 0;
  overflow: hidden;
}
#jobs #job-list section ul li ul li {
  display: inline-block;
  float: none;
  width: auto;
  padding: 0 0 0 25px;
  margin: 0;
  border: none;
}
#jobs #job-list section ul li ul li a {
  color: #00afcc;
}
#jobs #job-list section.course_fashion .title, #jobs #job-list section.course_fashion .job {
  color: #51b5c0;
}
#jobs #job-list section.course_fashion-business .title, #jobs #job-list section.course_fashion-business .job {
  color: #f3704f;
}
#jobs #job-list section.course_stylist .title, #jobs #job-list section.course_stylist .job {
  color: #db73bd;
}
#jobs #job-list section.course_make-hair .title, #jobs #job-list section.course_make-hair .job {
  color: #6683e8;
}
#jobs #job-list section.course_interior .title, #jobs #job-list section.course_interior .job {
  color: #a2cd40;
}
#jobs #job-list section.course_graphic .title, #jobs #job-list section.course_graphic .job {
  color: #a86fd3;
}
@media only screen and (max-width: 768px) {
  #jobs #job-list {
    margin: 0 auto 3em;
    padding: 0;
    width: 94%;
    width: -o-calc(100% - 20px);
    width: calc(100% - 20px);
    overflow: hidden;
  }
  #jobs #job-list section ul {
    padding: 0 5px;
  }
  #jobs #job-list section ul li {
    float: none;
    width: 100%;
    margin: 0;
    padding: 1.5em;
  }
  #jobs #job-list section ul li:first-child {
    padding-top: 0;
  }
  #jobs #job-list section ul li .job {
    font-size: 15px;
    font-size: 0.9375rem;
    margin-bottom: .5em;
  }
  #jobs #job-list section ul li .description {
    font-size: 13px;
    font-size: 0.8125rem;
  }
  #jobs #job-list section ul li ul {
    margin-top: .5em;
  }
}

#facility .header-container {
  margin-bottom: 0;
}
#facility #room-introduction section .module_thumbnail-list {
  margin-bottom: 0;
}
#facility #room-introduction section .module_thumbnail-list li {
  width: 246px;
  margin: 0 22px 2em;
  font-size: 14px;
  font-size: 0.875rem;
}
#facility #room-introduction section .module_thumbnail-list li div {
  text-align: center;
}
#facility #room-introduction section .module_thumbnail-list li .images {
  width: 246px;
  height: 140px;
}
#facility #room-introduction section .module_thumbnail-list li .images .modal.image:before {
  display: none;
}
#facility #room-introduction section:nth-child(1) .module_thumbnail-list {
  text-align: center;
}
@media only screen and (max-width: 768px) {
  #facility #room-introduction .contents-inner {
    padding: 0;
  }
  #facility #room-introduction section .module_thumbnail-list {
    margin: 0 -5px;
    padding: 0;
  }
  #facility #room-introduction section .module_thumbnail-list li {
    width: 47.5%;
    width: -o-calc(100% / 2 - 11px);
    width: calc(100% / 2 - 11px);
    margin: 0 5px .5em;
  }
  #facility #room-introduction section .module_thumbnail-list li .images {
    width: 100%;
    height: auto;
    margin-bottom: .5em;
  }
}
@media only screen and (max-width: 768px) {
  #facility .module_contents-open {
    height: 650px;
  }
}
#facility #room-navi {
  padding: 1.25em 0;
  text-align: center;
  font-size: 18px;
  font-size: 1.125rem;
}
#facility #room-navi ul {
  padding: 0;
  letter-spacing: -.4em;
}
#facility #room-navi ul li {
  display: inline-block;
  margin-right: 45px;
  list-style: none;
  letter-spacing: normal;
}
#facility #room-navi ul li:last-child {
  margin-right: 0;
}
@media only screen and (max-width: 768px) {
  #facility #room-navi {
    padding-right: 20px;
    padding-left: 20px;
    font-size: 14px;
    font-size: 0.875rem;
  }
  #facility #room-navi ul {
    margin: 0 -5px;
  }
  #facility #room-navi ul li {
    margin: 0 5px 10px;
    width: 46.7%;
    width: -o-calc(100% / 2 - 11px);
    width: calc(100% / 2 - 11px);
  }
  #facility #room-navi ul li:last-child {
    margin-right: 5px;
  }
}
#facility #room-introduction section {
  margin: 0;
  padding: 4em 0 2em;
  background-color: #f5f5f5;
}
#facility #room-introduction section:nth-child(even) {
  background-color: #fff;
}
#facility #room-introduction section .title-wrap {
  margin-bottom: 2em;
  display: table;
}
#facility #room-introduction section .title-wrap img {
  display: table-cell;
  margin-right: 10px;
}
#facility #room-introduction section .title-wrap .title-group {
  display: table-cell;
  vertical-align: middle;
}
#facility #room-introduction section .title-wrap .title-group h2 {
  display: inline-block;
  margin-bottom: .5em;
  font-size: 18px;
  font-size: 1.125rem;
  color: #c41d1d;
  line-height: 1;
}
#facility #room-introduction section .title-wrap .title-group h2 span {
  font-size: 36px;
  font-size: 2.25rem;
}
#facility #room-introduction section .title-wrap .title-group p {
  margin-bottom: 0;
}
@media only screen and (max-width: 768px) {
  #facility #room-introduction section {
    padding: 3em 0;
  }
  #facility #room-introduction section .title-group .title-wrap h2 {
    font-size: 17px;
    font-size: 1.0625rem;
  }
  #facility #room-introduction section .title-group .title-wrap h2 span {
    font-size: 28px;
    font-size: 1.75rem;
  }
}

#campusphoto #contents-header {
  margin-bottom: 0;
}
#campusphoto #contents-header .module_heading-image {
  position: relative;
  padding-bottom: -o-calc(100% * 360 / 1440);
  padding-bottom: calc(100% * 360 / 1440);
}
#campusphoto #contents-header .module_heading-image img {
  position: absolute;
  top: 0;
  left: 0;
}
@media only screen and (max-width: 768px) {
  #campusphoto #contents-header .module_heading-image {
    padding-bottom: 0;
  }
  #campusphoto #contents-header .module_heading-image img {
    position: static;
    top: inherit;
    left: inherit;
  }
}
#campusphoto #campusphoto-search {
  margin-bottom: 0;
}
#campusphoto .campusphoto-gallery .group {
  background-color: #f5f5f5;
  overflow: hidden;
}
#campusphoto .campusphoto-gallery .group .small, #campusphoto .campusphoto-gallery .group .large {
  overflow: hidden;
}
#campusphoto .campusphoto-gallery .group .small .item, #campusphoto .campusphoto-gallery .group .large .item {
  float: left;
  overflow: hidden;
}
#campusphoto .campusphoto-gallery .group .small .item a, #campusphoto .campusphoto-gallery .group .large .item a {
  background-color: #000;
}
#campusphoto .campusphoto-gallery .group .small .item .image, #campusphoto .campusphoto-gallery .group .large .item .image {
  position: relative;
  padding-bottom: -o-calc(100%);
  padding-bottom: calc(100%);
}
#campusphoto .campusphoto-gallery .group .small .item .image img, #campusphoto .campusphoto-gallery .group .large .item .image img {
  position: absolute;
  top: 0;
  left: 0;
}
#campusphoto .campusphoto-gallery .group .small .item .modal.image:before, #campusphoto .campusphoto-gallery .group .large .item .modal.image:before {
  display: none;
}
#campusphoto .campusphoto-gallery .group .small .item .modal, #campusphoto .campusphoto-gallery .group .large .item .modal {
  display: block;
  position: relative;
  color: #fff;
}
#campusphoto .campusphoto-gallery .group .small .item .modal .title, #campusphoto .campusphoto-gallery .group .large .item .modal .title {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-size: 18px;
  font-size: 1.125rem;
  width: 80%;
  text-align: center;
  opacity: 0;
  filter: alpha(opacity=0);
  z-index: 10;
}
#campusphoto .campusphoto-gallery .group .small .item .modal .title:before, #campusphoto .campusphoto-gallery .group .large .item .modal .title:before {
  display: block;
  content: '';
  width: 40px;
  height: 2px;
  background-color: #fff;
  margin: 0 auto .5em;
}
#campusphoto .campusphoto-gallery .group .small .item .modal:hover, #campusphoto .campusphoto-gallery .group .large .item .modal:hover {
  opacity: 1;
  filter: alpha(opacity=100);
}
#campusphoto .campusphoto-gallery .group .small .item .modal:hover .title, #campusphoto .campusphoto-gallery .group .large .item .modal:hover .title {
  -webkit-transition: 0.35s ease-out;
  transition: 0.35s ease-out;
  opacity: 1;
  filter: alpha(opacity=100);
}
#campusphoto .campusphoto-gallery .group .small .item .modal:hover img, #campusphoto .campusphoto-gallery .group .large .item .modal:hover img {
  -webkit-transition: 0.15s ease-out;
  transition: 0.15s ease-out;
  opacity: 0.5;
  filter: alpha(opacity=50);
}
#campusphoto .campusphoto-gallery .group .small .item img, #campusphoto .campusphoto-gallery .group .large .item img {
  width: 100%;
}
#campusphoto .campusphoto-gallery .group .small {
  float: left;
  width: 60%;
}
#campusphoto .campusphoto-gallery .group .small .item {
  width: 33.3333%;
}
#campusphoto .campusphoto-gallery .group .large {
  float: right;
  width: 40%;
}
#campusphoto .campusphoto-gallery .group .large .item {
  width: 100%;
}
#campusphoto .campusphoto-gallery .group:nth-child(even) .small {
  float: right;
}
#campusphoto .campusphoto-gallery .group:nth-child(even) .large {
  float: left;
}
#campusphoto .campusphoto-gallery .more {
  width: 100%;
  padding: 40px 0;
  text-align: center;
  border: none;
  background: #fff;
  font-size: 18px;
  font-size: 1.125rem;
  color: #c41d1d;
  line-height: 1;
  -webkit-transition: 0.15s ease-out;
  transition: 0.15s ease-out;
}
#campusphoto .campusphoto-gallery .more span {
  position: relative;
  padding-right: 20px;
}
#campusphoto .campusphoto-gallery .more span:after {
  display: inline-block;
  content: '';
  position: absolute;
  top: .3em;
  right: 0;
  width: 8px;
  height: 16px;
  background: url("../img/mode/common_arrow07.png") no-repeat left top;
  background-size: auto 16px;
  -ms-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}
#campusphoto .campusphoto-gallery .more:hover {
  color: #fff;
  background: #c41d1d;
}
#campusphoto .campusphoto-gallery .more:hover span:after {
  background: url("../img/mode/common_arrow06.png") no-repeat left top;
  background-size: auto 16px;
  -ms-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}
#campusphoto .campusphoto-gallery .more-loading {
  background: #c41d1d;
  padding: 4px 0;
}
@media only screen and (max-width: 768px) {
  #campusphoto .campusphoto-gallery .group {
    margin-bottom: 0;
  }
  #campusphoto .campusphoto-gallery .group .item .modal .title {
    display: none;
  }
  #campusphoto .campusphoto-gallery .group .small .item, #campusphoto .campusphoto-gallery .group .large .item {
    margin-bottom: 0;
  }
  #campusphoto .campusphoto-gallery .group .small .item img, #campusphoto .campusphoto-gallery .group .large .item img {
    width: 100%;
  }
  #campusphoto .campusphoto-gallery .group .small {
    float: none;
    width: 100%;
  }
  #campusphoto .campusphoto-gallery .group .small .item {
    width: 50%;
  }
  #campusphoto .campusphoto-gallery .group .large {
    float: none;
    width: 100%;
  }
  #campusphoto .campusphoto-gallery .group:nth-child(even) .small {
    float: none;
  }
  #campusphoto .campusphoto-gallery .group:nth-child(even) .large {
    float: none;
  }
}

#faq {
  background-image: none;
}
#faq .module_image-box.is_left figure {
  max-width: 520px;
  max-height: 294px;
}
@media only screen and (max-width: 768px) {
  #faq .module_image-box.is_left figure {
    max-width: initial;
    max-width: auto;
    max-height: initial;
    max-height: auto;
  }
}
#faq .module_anchor-navi {
  border-bottom: 1px #eee solid;
  background-color: #fff;
}
#faq .module_anchor-navi .contents-inner {
  max-width: 1120px;
  border: none;
}
@media only screen and (max-width: 768px) {
  #faq .module_anchor-navi {
    border: none;
    background-color: transparent;
  }
  #faq .module_anchor-navi .contents-inner {
    width: 100%;
  }
}
#faq .catch-text {
  text-align: center;
  font-size: 18px;
  font-size: 1.125rem;
}
#faq .catch-text strong {
  font-size: 24px;
  font-size: 1.5rem;
  color: #c41d1d;
}
#faq .catch-text.arrow-top:before {
  display: block;
  font-size: 60px;
  font-size: 3.75rem;
  color: #c41d1d;
  text-align: center;
  content: "↓";
}

#internationalTop #breadcrumbs {
  border-top: 1px #eee solid;
  border-bottom: 1px #eee solid;
  background-color: #fff;
  -webkit-box-shadow: 0 4px 5px #f5f5f5 inset;
  box-shadow: 0 4px 5px #f5f5f5 inset;
}
#internationalTop.english {
  font-size: 14.5px;
  font-size: 0.90625rem;
  font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
}
#internationalTop.english p {
  margin: 0 0 2.2em 0;
}
#internationalTop.english .module_pagination .index {
  font-size: 16px;
  font-size: 1rem;
}
@media only screen and (max-width: 768px) {
  #internationalTop.english {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
#internationalTop .btn-group {
  text-align: center;
}
#internationalTop .box {
  margin: 3em 0 1em;
  overflow: hidden;
}
#internationalTop .box figure {
  float: left;
  margin: 0 40px 20px 0;
}
#internationalTop .box p:last-of-type {
  margin-bottom: 0;
}
@media only screen and (max-width: 768px) {
  #internationalTop .btn-group {
    text-align: center;
  }
  #internationalTop .btn-group a {
    max-width: 80%;
  }
  #internationalTop .box {
    margin-bottom: 3em;
  }
  #internationalTop .box figure {
    float: none;
    margin-right: 0;
    margin-bottom: 1em;
  }
}
#internationalTop .module_page-title {
  display: none;
}
@media only screen and (max-width: 768px) {
  #internationalTop .module_page-title {
    display: block;
    padding: 0.8em 10px;
  }
  #internationalTop .module_page-title h1 {
    padding-left: 0;
    background: none;
  }
}
#internationalTop .module_thumbnail-list li .images:before {
  display: none;
}
#internationalTop .module_thumbnail-list.is_4column {
  margin: 0 -10px 3em;
}
#internationalTop .module_thumbnail-list.is_4column li {
  width: 225px;
  height: 130px;
  margin: 0 10px 20px;
}
#internationalTop .module_thumbnail-list.is_4column li .images {
  width: 225px;
  height: 130px;
}
@media only screen and (max-width: 768px) {
  #internationalTop .module_thumbnail-list.is_4column {
    margin: 0 -5px 3em;
    padding: 0;
  }
  #internationalTop .module_thumbnail-list.is_4column li {
    width: 100%;
    width: -o-calc(100% / 2 - 10px);
    width: calc(100% / 2 - 10px);
    height: auto;
    margin: 0 5px 5px;
  }
  #internationalTop .module_thumbnail-list.is_4column li .images {
    width: 100%;
    height: auto;
    margin-bottom: 0;
  }
}
#internationalTop .module_item-list {
  margin: auto -30px;
}
#internationalTop .module_item-list .item {
  text-align: left;
  margin: 0 30px 2em;
  background-color: #fff;
  color: #000;
}
#internationalTop .module_item-list .item .text {
  position: relative;
  padding: 1.7em 30px 3em;
  line-height: 1.6;
}
#internationalTop .module_item-list .item .text:after {
  display: none;
}
#internationalTop .module_item-list .item .title {
  font-size: 20px;
  font-size: 1.25rem;
}
#internationalTop .module_item-list .item .btn-group {
  text-align: center;
  margin: 1em 0;
}
#internationalTop .module_item-list.is_3column .item {
  float: left;
  width: 27.4%;
  width: -o-calc(100% / 3 - 60px);
  width: calc(100% / 3 - 60px);
}
#internationalTop .module_item-list.is_3column .item .btn-group {
  bottom: 0;
}
@media only screen and (max-width: 768px) {
  #internationalTop .module_item-list.is_3column.is_slider {
    margin: 0 auto;
  }
  #internationalTop .module_item-list.is_3column.is_slider .item {
    margin: 0 0 2em;
  }
  #internationalTop .module_item-list.is_3column.is_slider .item .text {
    padding: 1.25em 20px 2em;
  }
  #internationalTop .module_item-list.is_3column.is_slider .item .title {
    margin-top: 0;
    line-height: 1.44;
  }
  #internationalTop .module_item-list.is_3column.is_slider .btn-group {
    margin-bottom: 1em;
  }
  #internationalTop .module_item-list.is_3column.is_slider .btn-group a {
    padding: 0.5em 50px 0.5em;
  }
}
#internationalTop #pickup-navi {
  padding-top: 1em;
}
#internationalTop #pickup-navi h2 {
  font-size: 16px;
  font-size: 1rem;
  color: #000;
}
#internationalTop #pickup-navi .module_text-list {
  margin-bottom: 0.5em;
}
#internationalTop .toggle-wrap .toggle-botton {
  display: none;
}
#internationalTop .toggle-wrap:last-of-type section {
  margin-bottom: 0;
}
@media only screen and (max-width: 768px) {
  #internationalTop .toggle-wrap {
    position: relative;
    min-height: 72px;
  }
  #internationalTop .toggle-wrap .toggle-botton {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    border-bottom: 1px solid #fff;
    color: #fff;
    font-size: 20px;
    font-size: 1.25rem;
    width: 100%;
    min-height: 72px;
    vertical-align: middle;
    padding: 1em 20px 0;
    background: url("../img/mode/common_bg02-smp.png");
    background-size: 12px;
    z-index: 10;
  }
  #internationalTop .toggle-wrap .toggle-botton:after {
    position: absolute;
    top: 50%;
    right: 20px;
    width: 18px;
    height: 20px;
    margin-top: -9px;
    background: url(../img/mode/common_arrow07.png) no-repeat 0 -2px;
    background-size: 12px auto;
    content: "";
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  #internationalTop .toggle-wrap .toggle-botton + section {
    visibility: hidden;
    height: 0;
    margin-bottom: 0;
    overflow: hidden;
  }
  #internationalTop .toggle-wrap .toggle-botton + section .site-inner {
    padding-bottom: 2em;
  }
  #internationalTop .toggle-wrap .toggle-wrap {
    min-height: inherit;
  }
}
#internationalTop .header-container {
  margin-bottom: 2.5em;
}
#internationalTop .toggle-wrap .header-container {
  display: table;
  color: #fff;
  text-align: center;
  width: 100%;
  min-height: 250px;
  padding: 3em 0;
  background-color: #c41d1d;
}
#internationalTop .toggle-wrap .header-container .inner {
  position: relative;
  display: table-cell;
  top: 0;
  width: 100%;
  vertical-align: middle;
}
#internationalTop .toggle-wrap .header-container .inner:after {
  display: block;
  content: "";
  background: url("../img/mode/common_arrow12.png") no-repeat;
  width: 25px;
  height: 25px;
  margin: 1.5em auto 0;
}
#internationalTop .toggle-wrap .header-container .title {
  color: #fff;
  font-size: 32px;
  font-size: 2rem;
  font-weight: normal;
  margin-top: 0;
  margin-bottom: 1em;
}
#internationalTop .toggle-wrap .header-container .sub-title {
  font-weight: bold;
  font-size: 24px;
  font-size: 1.5rem;
}
#internationalTop .toggle-wrap .header-container .toggle-close {
  display: none;
}
@media only screen and (max-width: 768px) {
  #internationalTop .header-container {
    margin-bottom: 3em;
  }
  #internationalTop .toggle-wrap .header-container {
    display: block;
    min-height: inherit;
    padding-top: 0;
    padding-bottom: 1em;
  }
  #internationalTop .toggle-wrap .header-container .inner {
    display: block;
    top: 0;
    padding: 1.5em 10px 2em;
  }
  #internationalTop .toggle-wrap .header-container .inner:after {
    width: 16px;
    height: 20px;
    margin: 0.5em auto 0;
    background-size: 16px;
  }
  #internationalTop .toggle-wrap .header-container .title {
    font-size: 20px;
    font-size: 1.25rem;
    text-align: left;
    margin: 0 0 2em 10px;
  }
  #internationalTop .toggle-wrap .header-container .sub-title {
    font-size: 16px;
    font-size: 1rem;
    font-weight: bold;
  }
  #internationalTop .toggle-wrap .header-container .toggle-close {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    font-size: 24px;
    font-size: 1.5rem;
    line-height: 1;
    padding: 20px;
  }
}
#internationalTop .course-image {
  position: relative;
  width: 1216px;
  margin: 0 auto 2.5em;
  z-index: 100;
}
@media only screen and (max-width: 768px) {
  #internationalTop .course-image {
    width: 86%;
    width: -o-calc(100% - 40px);
    width: calc(100% - 40px);
    margin: 0 auto 1.5em;
  }
}
@media only screen and (max-width: 768px) {
  #internationalTop .back-to-top {
    margin-top: 3em;
    text-align: center;
  }
  #internationalTop .back-to-top a {
    display: block;
    position: relative;
    color: #000;
    font-size: 14px;
    font-size: 0.875rem;
    padding: 2em 0;
  }
  #internationalTop .back-to-top a:before {
    content: "";
    display: block;
    position: absolute;
    top: 0.5em;
    left: 50%;
    width: 5px;
    height: 13px;
    background: url(../img/mode/common_arrow02.png) no-repeat left top;
    background-size: auto 80%;
    -ms-transform: rotate(-90deg);
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
  }
}
#internationalTop .campusphoto-index {
  margin-bottom: 4em;
  background-color: #000;
  overflow: hidden;
}
#internationalTop .campusphoto-index .small {
  float: left;
  width: 20%;
}
#internationalTop .campusphoto-index .large {
  float: left;
  width: 40%;
}
#internationalTop .campusphoto-index .item {
  position: relative;
  overflow: hidden;
}
#internationalTop .campusphoto-index .item .image {
  position: relative;
  padding-bottom: -o-calc(100%);
  padding-bottom: calc(100%);
}
#internationalTop .campusphoto-index .item .image img {
  position: absolute;
  top: 0;
  left: 0;
}
#internationalTop .campusphoto-index .item .modal.image:before {
  display: none;
}
#internationalTop .campusphoto-index .item .modal {
  display: block;
  position: relative;
  color: #fff;
}
#internationalTop .campusphoto-index .item .modal .title {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-size: 18px;
  font-size: 1.125rem;
  width: 80%;
  text-align: center;
  opacity: 0;
  filter: alpha(opacity=0);
  z-index: 10;
}
#internationalTop .campusphoto-index .item .modal .title:before {
  display: block;
  content: "";
  width: 40px;
  height: 2px;
  background-color: #fff;
  margin: 0 auto 0.5em;
}
#internationalTop .campusphoto-index .item .modal:hover {
  opacity: 1;
  filter: alpha(opacity=100);
}
#internationalTop .campusphoto-index .item .modal:hover .title {
  -webkit-transition: 0.35s ease-out;
  transition: 0.35s ease-out;
  opacity: 1;
  filter: alpha(opacity=100);
}
#internationalTop .campusphoto-index .item .modal:hover img {
  -webkit-transition: 0.15s ease-out;
  transition: 0.15s ease-out;
  opacity: 0.5;
  filter: alpha(opacity=50);
}
#internationalTop .campusphoto-index .item img {
  width: 100%;
}
#internationalTop .campusphoto-index + .btn-group {
  text-align: center;
}
@media only screen and (max-width: 768px) {
  #internationalTop .campusphoto-index {
    margin-bottom: 2.5em;
  }
  #internationalTop .campusphoto-index .small {
    width: 100%;
  }
  #internationalTop .campusphoto-index .small .item {
    float: left;
    width: 50%;
  }
  #internationalTop .campusphoto-index .large {
    width: 100%;
  }
  #internationalTop .campusphoto-index .item {
    position: relative;
    padding-bottom: 0;
  }
  #internationalTop .campusphoto-index .item .modal .title {
    display: none;
  }
  #internationalTop .campusphoto-index + .btn-group {
    margin-bottom: 2.5em;
  }
}
#internationalTop #contact-us {
  text-align: center;
  padding: 4em 0;
  background-color: #ddd;
}
#internationalTop #contact-us .title {
  font-size: 16px;
  font-size: 1rem;
  margin-bottom: 0.8em;
}
#internationalTop #contact-us .btn {
  border: 1px solid #c41d1d;
  color: #c41d1d;
  font-size: 20px;
  font-size: 1.25rem;
  min-width: 320px;
  background-color: transparent;
  background-image: url("../img/mode/common_arrow07.png");
}
#internationalTop #contact-us .btn:before {
  content: "";
  position: absolute;
  left: 10%;
  top: 50%;
  display: block;
  width: 30px;
  height: 18px;
  margin-top: -9px;
  background: url(../img/mode/common_icon_email.png) no-repeat left top;
  background-size: 30px auto;
}
@media only screen and (max-width: 768px) {
  #internationalTop #contact-us {
    padding: 3em 0 0;
  }
  #internationalTop #contact-us .title {
    font-size: 14px;
    font-size: 0.875rem;
  }
  #internationalTop #contact-us .btn {
    font-size: 16px;
    font-size: 1rem;
    min-width: inherit;
    width: 80%;
  }
  #internationalTop #contact-us .btn:before {
    width: 24px;
    height: 15px;
    margin-top: -7px;
    background-size: 24px auto;
  }
  #internationalTop .toggle-wrap + #contact-us {
    padding-bottom: 3em;
  }
}
#internationalTop #access {
  padding: 4em 0 1em;
  background-color: #2e2e2e;
}
#internationalTop #access .box {
  border-bottom: 1px solid #c41d1d;
  color: #fff;
  font-size: 18px;
  font-size: 1.125rem;
  padding-bottom: 2em;
  margin-bottom: 2em;
}
#internationalTop #access .box .school-name {
  font-size: 24px;
  font-size: 1.5rem;
  margin-bottom: 1em;
}
#internationalTop #access .box .school-name .catch {
  font-size: 14px;
  font-size: 0.875rem;
  margin-left: 40px;
}
#internationalTop #access .box .tel {
  margin-bottom: 0.5em;
}
#internationalTop #access .box address {
  font-style: normal;
  padding-left: 30px;
  background: url(../img/mode/footer_icon_location.png) no-repeat left top;
  background-size: 16px auto;
}
#internationalTop #access .box address .googlemap {
  margin-left: 40px;
}
#internationalTop #access .box address .googlemap a {
  color: #fff;
  display: inline;
  border-bottom: 1px solid transparent;
  -webkit-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
}
#internationalTop #access .box address .googlemap a:hover {
  border-bottom-color: #00afcc;
}
@media only screen and (max-width: 768px) {
  #internationalTop #access .box address .googlemap a:hover {
    border: none;
  }
}
#internationalTop #access .box address .googlemap a:after {
  background-color: #fff;
}
@media only screen and (max-width: 768px) {
  #internationalTop #access {
    padding: 2.5em 0 1em;
  }
  #internationalTop #access::before {
    display: none;
  }
  #internationalTop #access .box {
    font-size: 14px;
    font-size: 0.875rem;
    padding-bottom: 1.8em;
    margin-bottom: 1.8em;
  }
  #internationalTop #access .box:last-child {
    border-bottom: 0;
    padding-bottom: 0;
  }
  #internationalTop #access .box .school-name {
    margin-bottom: 0.7em;
  }
  #internationalTop #access .box .school-name .catch {
    display: block;
    font-size: 16px;
    font-size: 1rem;
    margin-left: 0;
  }
  #internationalTop #access .box .tel {
    margin-bottom: 1.7em;
    text-decoraiton: underline;
  }
  #internationalTop #access .box .tel a {
    color: #fff;
    text-decoration: underline;
  }
  #internationalTop #access .box address .googlemap {
    display: block;
    margin-top: 0.7em;
    margin-left: 0;
  }
  #internationalTop #access .box address .googlemap a {
    text-decoration: underline;
  }
}
#internationalTop .header-container + .course-image {
  margin-top: -5em;
}
#internationalTop .header-container + .campusphoto-index {
  margin-top: -2.5em;
}
@media only screen and (max-width: 768px) {
  #internationalTop .header-container + .course-image {
    margin-top: -5em;
  }
  #internationalTop .header-container + .campusphoto-index {
    margin-top: -2.5em;
  }
}

#international #breadcrumbs {
  border-top: 1px #eee solid;
  border-bottom: 1px #eee solid;
  background-color: #fff;
  -webkit-box-shadow: 0 4px 5px #f5f5f5 inset;
  box-shadow: 0 4px 5px #f5f5f5 inset;
}
#international.english {
  font-size: 14.5px;
  font-size: 0.90625rem;
  font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
}
#international.english p {
  margin: 0 0 2.2em 0;
}
#international.english .module_pagination .index {
  font-size: 16px;
  font-size: 1rem;
}
@media only screen and (max-width: 768px) {
  #international.english {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
#international .box {
  margin: 3em 0 1em;
  overflow: hidden;
}
#international .box figure {
  float: left;
  margin: 0 40px 20px 0;
}
#international .box p:last-of-type {
  margin-bottom: 0;
}
@media only screen and (max-width: 768px) {
  #international .box {
    margin-bottom: 3em;
  }
  #international .box figure {
    float: none;
    margin-right: 0;
    margin-bottom: 1em;
  }
}
#international .module_page-title {
  display: none;
}
@media only screen and (max-width: 768px) {
  #international .module_page-title {
    display: block;
    padding: 0.8em 10px;
  }
  #international .module_page-title h1 {
    padding-left: 0;
    background: none;
  }
}
#international .header-container .summary {
  padding: 2.5em 0;
}
#international .header-container .summary h2 {
  margin-top: 0;
  margin-bottom: 0.7em;
}
#international .header-container .summary .country {
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1;
  margin-bottom: 0.4em;
}
#international .header-container .summary .country .flag {
  width: auto;
  max-width: 25px;
  margin-left: 10px;
}
#international .header-container .summary .department {
  font-size: 18px;
  font-size: 1.125rem;
}
@media only screen and (max-width: 768px) {
  #international .header-container {
    margin-bottom: 1.5em;
  }
  #international .header-container .mainvisual {
    padding-top: 0;
  }
  #international .header-container .mainvisual img {
    vertical-align: top;
  }
  #international .header-container .summary {
    padding: 1.5em 20px 1em;
  }
  #international .header-container .summary .country {
    font-size: 14px;
    font-size: 0.875rem;
  }
  #international .header-container .summary .department {
    font-size: 12px;
    font-size: 0.75rem;
  }
}
#international article .heading4 {
  margin: 2.5em 0 1.5em 1em;
}
@media only screen and (max-width: 768px) {
  #international article .heading4 {
    font-size: 20px;
    font-size: 1.25rem;
    margin: 1.8em 0 1em 0;
  }
  #international article .heading5 {
    font-size: 16px;
    font-size: 1rem;
  }
  #international article .module_photo-gallery {
    margin-bottom: 2em;
  }
  #international article .module_photo-gallery.is_2column {
    margin-right: 0;
    margin-left: 0;
  }
  #international article .module_photo-gallery.is_2column li {
    float: none;
    width: 100%;
    width: -o-calc(100%);
    width: calc(100%);
    margin-right: 0;
    margin-left: 0;
  }
}
#international .module_link-list-block {
  padding: 2em 3em 0;
}
#international .module_link-list-block .title {
  display: block;
  color: #c41d1d;
  font-weight: bold;
  width: auto;
  margin-bottom: 0.5em;
}
#international .module_link-list-block p {
  margin-bottom: 2em;
}
@media only screen and (max-width: 768px) {
  #international .module_link-list-block {
    padding: 1.5em 20px 0;
  }
}
#international #contact-us {
  text-align: center;
  padding: 4em 0;
  background-color: #ddd;
}
#international #contact-us .title {
  font-size: 16px;
  font-size: 1rem;
  margin-bottom: 0.8em;
}
#international #contact-us .btn {
  border: 1px solid #c41d1d;
  color: #c41d1d;
  font-size: 20px;
  font-size: 1.25rem;
  min-width: 320px;
  background-color: transparent;
  background-image: url("../img/mode/common_arrow07.png");
}
#international #contact-us .btn:before {
  content: "";
  position: absolute;
  left: 10%;
  top: 50%;
  display: block;
  width: 30px;
  height: 18px;
  margin-top: -9px;
  background: url(../img/mode/common_icon_email.png) no-repeat left top;
  background-size: 30px auto;
}
@media only screen and (max-width: 768px) {
  #international #contact-us {
    padding: 3em 0;
  }
  #international #contact-us .title {
    font-size: 14px;
    font-size: 0.875rem;
  }
  #international #contact-us .btn {
    font-size: 16px;
    font-size: 1rem;
    min-width: inherit;
    width: 80%;
  }
  #international #contact-us .btn:before {
    width: 24px;
    height: 15px;
    margin-top: -7px;
    background-size: 24px auto;
  }
  #international #contact-us .back-to-top {
    margin-top: 3em;
    text-align: center;
  }
  #international #contact-us .back-to-top a {
    display: block;
    position: relative;
    color: #212121;
    font-size: 14px;
    font-size: 0.875rem;
    padding: 2em 0 0;
  }
  #international #contact-us .back-to-top a:before {
    content: "";
    display: block;
    position: absolute;
    top: 0.5em;
    left: 50%;
    width: 5px;
    height: 13px;
    background: url(../img/mode/common_arrow02.png) no-repeat left top;
    background-size: auto 80%;
    -ms-transform: rotate(-90deg);
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
  }
}
#international #access {
  padding: 4em 0 1em;
  background-color: #2e2e2e;
}
#international #access .box {
  border-bottom: 1px solid #000;
  color: #fff;
  font-size: 18px;
  font-size: 1.125rem;
  padding-bottom: 2em;
  margin-bottom: 2em;
}
#international #access .box .school-name {
  font-size: 24px;
  font-size: 1.5rem;
  margin-bottom: 1em;
}
#international #access .box .school-name .catch {
  font-size: 14px;
  font-size: 0.875rem;
  margin-left: 40px;
}
#international #access .box .tel {
  margin-bottom: 0.5em;
}
#international #access .box address {
  font-style: normal;
  padding-left: 30px;
  background: url(../img/mode/footer_icon_location.png) no-repeat left top;
  background-size: 16px auto;
}
#international #access .box address .googlemap {
  margin-left: 40px;
}
#international #access .box address .googlemap a {
  color: #fff;
  display: inline;
  border-bottom: 1px solid transparent;
  -webkit-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
}
#international #access .box address .googlemap a:hover {
  border-bottom-color: #00afcc;
}
@media only screen and (max-width: 768px) {
  #international #access .box address .googlemap a:hover {
    border: none;
  }
}
#international #access .box address .googlemap a:after {
  background-color: #fff;
}
@media only screen and (max-width: 768px) {
  #international #access {
    padding: 2.5em 0 1em;
  }
  #international #access .box {
    font-size: 14px;
    font-size: 0.875rem;
    padding-bottom: 1.8em;
    margin-bottom: 1.8em;
  }
  #international #access .box:last-child {
    border-bottom: 0;
    padding-bottom: 0;
  }
  #international #access .box .school-name {
    margin-bottom: 0.7em;
  }
  #international #access .box .school-name .catch {
    display: block;
    font-size: 16px;
    font-size: 1rem;
    margin-left: 0;
  }
  #international #access .box .tel {
    margin-bottom: 1.7em;
    text-decoraiton: underline;
  }
  #international #access .box .tel a {
    color: #fff;
    text-decoration: underline;
  }
  #international #access .box address .googlemap {
    display: block;
    margin-top: 0.7em;
    margin-left: 0;
  }
  #international #access .box address .googlemap a {
    text-decoration: underline;
  }
}

#for #contents-header {
  margin-bottom: 4em;
}
#for #contents-header .module_image-box .text .title {
  color: #fff;
}
#for #contents-header .module_image-box figure img {
  max-width: 520px;
  max-height: 294px;
}
@media only screen and (max-width: 768px) {
  #for #contents-header {
    padding-bottom: 0;
    margin-bottom: 2em;
  }
  #for #contents-header .module_image-box figure img {
    max-width: initial;
    max-width: auto;
    max-height: initial;
    max-height: auto;
  }
}
@media only screen and (min-width: 1150px) {
  #for .contents-inner .site-inner {
    margin-left: -80px;
  }
  #for .contents-inner .contents-panel {
    margin-left: -80px;
  }
}
@media only screen and (max-width: 768px) {
  #for .site-inner .contents-inner {
    padding: 0;
  }
}
#for section {
  margin-bottom: 4em;
}
#for .heading9 {
  margin-bottom: 2em;
}
@media only screen and (max-width: 768px) {
  #for section {
    margin-bottom: 2em;
  }
}
@media only screen and (max-width: 768px) {
  #for #recommend-opencampus .module_thumbnail-list {
    margin-bottom: 2em;
  }
}
#for #related-nationwide .module_thumbnail-list li a .images {
  height: 360px;
}
@media only screen and (max-width: 768px) {
  #for #related-nationwide .module_thumbnail-list li a .images {
    height: 330px !important;
  }
}
#for #difference-university .module_item-list {
  margin-bottom: 6em;
}
#for #difference-university .module_item-list .item {
  background-color: #f5f5f5;
}
#for #difference-university .module_item-list .item figure {
  border-color: #c41d1d;
}
@media only screen and (max-width: 768px) {
  #for #difference-university .module_item-list {
    margin-bottom: 4em;
  }
}
#for #learn-by-doing .wrap:after {
  content: "";
  display: block;
  clear: both;
}
#for #learn-by-doing .wrap .contents-panel {
  float: left;
  width: 47.05%;
  width: -o-calc(100% / 2 - 34px);
  width: calc(100% / 2 - 34px);
  margin: 0 17px 3.5em;
}
#for #learn-by-doing .wrap .contents-panel figure {
  margin-bottom: 1.4em;
}
@media only screen and (max-width: 768px) {
  #for #learn-by-doing {
    margin-bottom: 4em;
  }
  #for #learn-by-doing .wrap .contents-panel {
    float: none;
    width: 100%;
    width: -o-calc(100%);
    width: calc(100%);
    padding: 0;
    margin: 0 0 2em;
    background-color: transparent;
    -webkit-box-shadow: 0 0 0 #ddd;
    box-shadow: 0 0 0 #ddd;
  }
  #for #learn-by-doing .wrap .contents-panel figure {
    margin-bottom: 1em;
  }
}
#for .wrap:after {
  content: "";
  display: block;
  clear: both;
}
#for .wrap .contents-panel {
  float: left;
  width: 47.05%;
  width: -o-calc(100% / 2 - 34px);
  width: calc(100% / 2 - 34px);
  margin: 0 17px 3.5em;
}
#for .wrap .contents-panel figure {
  margin-bottom: 1.4em;
}
@media only screen and (max-width: 768px) {
  #for .wrap .contents-panel {
    float: none;
    width: 100%;
    width: -o-calc(100%);
    width: calc(100%);
    padding: 0;
    margin: 0 0 2em;
    background-color: transparent;
    -webkit-box-shadow: 0 0 0 #ddd;
    box-shadow: 0 0 0 #ddd;
  }
  #for .wrap .contents-panel figure {
    margin-bottom: 1em;
  }
}
#for #recommended-course .module_item-list {
  margin-bottom: 6em;
}
#for #recommended-course .module_item-list .item {
  background-color: #f5f5f5;
}
@media only screen and (max-width: 768px) {
  #for #recommended-course .module_item-list {
    margin-bottom: 4em;
  }
}
#for #graduate-message .module_introduction-list {
  margin-bottom: 3em;
}
#for #graduate-message .module_introduction-list .item {
  background-color: #f5f5f5;
}
#for #graduate-message .module_introduction-list .item.hover:hover {
  background-color: #c41d1d;
}
#for #letterzine {
  margin-bottom: 7em;
}
#for #letterzine .heading10 {
  width: 50%;
  margin-right: auto;
  margin-left: auto;
}
#for #letterzine .module_text-list li {
  margin-bottom: .5em;
}
@media only screen and (max-width: 768px) {
  #for #letterzine {
    margin-bottom: 3em;
  }
  #for #letterzine .heading10 {
    width: 100%;
  }
}
#for #campus-photo {
  margin-bottom: 8em;
}
#for #campus-photo .header-container {
  min-height: 200px;
}
#for #campus-photo .header-container .inner {
  top: 0;
}
#for #campus-photo .header-container .title {
  margin-bottom: 0;
}
#for #campus-photo .campusphoto-index {
  margin-bottom: 4em;
  background-color: #000;
  overflow: hidden;
}
#for #campus-photo .campusphoto-index .small {
  float: left;
  width: 20%;
}
#for #campus-photo .campusphoto-index .large {
  float: left;
  width: 40%;
}
#for #campus-photo .campusphoto-index .item {
  position: relative;
  overflow: hidden;
}
#for #campus-photo .campusphoto-index .item .image {
  position: relative;
  padding-bottom: -o-calc(100%);
  padding-bottom: calc(100%);
}
#for #campus-photo .campusphoto-index .item .image img {
  position: absolute;
  top: 0;
  left: 0;
}
#for #campus-photo .campusphoto-index .item .modal.image:before {
  display: none;
}
#for #campus-photo .campusphoto-index .item .modal {
  display: block;
  position: relative;
  color: #fff;
}
#for #campus-photo .campusphoto-index .item .modal .title {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-size: 18px;
  font-size: 1.125rem;
  width: 80%;
  text-align: center;
  opacity: 0;
  filter: alpha(opacity=0);
  z-index: 10;
}
#for #campus-photo .campusphoto-index .item .modal .title:before {
  display: block;
  content: '';
  width: 40px;
  height: 2px;
  background-color: #fff;
  margin: 0 auto .5em;
}
#for #campus-photo .campusphoto-index .item .modal:hover {
  opacity: 1;
  filter: alpha(opacity=100);
}
#for #campus-photo .campusphoto-index .item .modal:hover .title {
  -webkit-transition: 0.35s ease-out;
  transition: 0.35s ease-out;
  opacity: 1;
  filter: alpha(opacity=100);
}
#for #campus-photo .campusphoto-index .item .modal:hover img {
  -webkit-transition: 0.15s ease-out;
  transition: 0.15s ease-out;
  opacity: 0.5;
  filter: alpha(opacity=50);
}
#for #campus-photo .campusphoto-index .item img {
  width: 100%;
}
#for #campus-photo .campusphoto-index + .btn-group {
  text-align: center;
}
@media only screen and (max-width: 768px) {
  #for #campus-photo {
    margin-bottom: 0;
  }
  #for #campus-photo .header-container {
    min-height: 0;
  }
  #for #campus-photo .header-container .inner {
    padding-bottom: .5em;
  }
  #for #campus-photo .campusphoto-index {
    margin-bottom: 2.5em;
  }
  #for #campus-photo .campusphoto-index .small {
    width: 100%;
  }
  #for #campus-photo .campusphoto-index .small .item {
    float: left;
    width: 50%;
  }
  #for #campus-photo .campusphoto-index .large {
    width: 100%;
  }
  #for #campus-photo .campusphoto-index .item {
    position: relative;
    padding-bottom: 0;
  }
  #for #campus-photo .campusphoto-index .item .modal .title {
    display: none;
  }
  #for #campus-photo .campusphoto-index + .btn-group {
    margin-bottom: 2.5em;
  }
}

#orgTop .module_announcement .title {
  line-height: 2;
}
#orgTop .module_announcement .announce {
  margin-bottom: 0;
}
@media only screen and (max-width: 768px) {
  #orgTop .module_announcement .announce {
    margin-bottom: 1em;
  }
}
#orgTop #contents-header {
  margin-bottom: 6em;
  background-color: #fff;
}
#orgTop #contents-header .module_visual-slider .item img {
  max-width: 1440px;
  margin: 0 auto;
}
@media only screen and (max-width: 768px) {
  #orgTop #contents-header {
    margin-bottom: 2em;
  }
}
#orgTop #school-navi {
  padding: 2.8em 0;
}
#orgTop #school-navi .module_banner-list {
  margin: 0 auto;
}
#orgTop #school-navi .module_banner-list .item {
  margin: 0 16px;
}
#orgTop #school-navi .module_banner-list .item:first-child {
  margin-left: 0;
}
#orgTop #school-navi .module_banner-list .item:last-child {
  margin-right: 0;
}
#orgTop #school-navi .module_banner-list .item img {
  max-width: 198px;
}
#orgTop #school-navi .module_banner-list .item:nth-child(5n) {
  margin-right: 0;
}
#orgTop #school-navi .module_banner-list .item:nth-child(6n) {
  margin-left: 0;
}
#orgTop #school-navi .module_banner-list .item:nth-child(n+6) {
  margin-top: 10px;
}
@media only screen and (max-width: 768px) {
  #orgTop #school-navi {
    padding: 1.5em 0 0;
    margin: 0 -10px;
  }
  #orgTop #school-navi .module_banner-list .item {
    width: 43.3%;
    width: -o-calc(100% / 2 - 20px);
    width: calc(100% / 2 - 20px);
    margin: 0 10px 1.5em 10px;
  }
  #orgTop #school-navi .module_banner-list .item:first-child {
    margin-left: 10px;
  }
  #orgTop #school-navi .module_banner-list .item:last-child {
    margin-right: 10px;
  }
  #orgTop #school-navi .module_banner-list .item:nth-child(odd) {
    clear: both;
  }
  #orgTop #school-navi .module_banner-list .item img {
    max-width: initial;
    max-width: auto;
  }
  #orgTop #school-navi .module_banner-list .item:nth-child(5n) {
    margin-right: 10px;
  }
  #orgTop #school-navi .module_banner-list .item:nth-child(6n) {
    margin-left: 10px;
  }
  #orgTop #school-navi .module_banner-list .item:nth-child(n+6) {
    margin-top: 0;
  }
}
#orgTop #press-release {
  margin-bottom: 6em;
}
#orgTop #press-release .btn-group {
  text-align: center;
}
#orgTop #press-release .btn-group a {
  padding-left: 20px;
  background: url(../img/mode/common_arrow03.png) no-repeat left center;
  display: inline;
  border-bottom: 1px solid transparent;
  -webkit-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
}
#orgTop #press-release .btn-group a:hover {
  border-bottom-color: #00afcc;
}
@media only screen and (max-width: 768px) {
  #orgTop #press-release .btn-group a:hover {
    border: none;
  }
}
#orgTop #press-release .btn-group a:after {
  background-color: #2e2e2e;
}
@media only screen and (max-width: 768px) {
  #orgTop #press-release {
    margin-bottom: 3em;
  }
  #orgTop #press-release .btn-group {
    text-align: right;
  }
  #orgTop #press-release .btn-group a {
    font-size: 12px;
    font-size: 0.75rem;
  }
}

#orgDetail .summary {
  margin-bottom: 4em;
}
@media only screen and (max-width: 768px) {
  #orgDetail .summary {
    margin-bottom: 3em;
  }
}
#orgDetail #message {
  margin-bottom: 5em;
}
#orgDetail #message .module_image-box figure {
  margin-right: 100px;
}
#orgDetail #message .module_image-box .text p {
  font-size: 17px;
  font-size: 1.0625rem;
}
@media only screen and (max-width: 768px) {
  #orgDetail #message {
    margin-bottom: 2em;
  }
  #orgDetail #message .module_image-box figure {
    margin-right: 0;
  }
  #orgDetail #message .module_image-box figure img {
    margin-bottom: 2em;
  }
  #orgDetail #message .module_image-box .text p {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
#orgDetail #history {
  margin-bottom: 5em;
}
#orgDetail #history .block {
  line-height: 1.8;
  border-top: 1px dotted #ddd;
  padding: 1em 2.5em;
  overflow: hidden;
}
#orgDetail #history .block .year, #orgDetail #history .block .event-wrap {
  float: left;
}
#orgDetail #history .block .year {
  white-space: nowrap;
}
#orgDetail #history .block .event-wrap {
  width: 80%;
}
#orgDetail #history .block .event-wrap .event {
  overflow: hidden;
}
#orgDetail #history .block .event-wrap .event .month {
  float: left;
  text-align: right;
  width: 55px;
  margin-right: 25px;
}
#orgDetail #history .block .event-wrap .event .text {
  overflow: hidden;
}
#orgDetail #history .block .event-wrap .event .text p {
  line-height: inherit;
  margin: 0 0 1em;
}
#orgDetail #history .block .event-wrap .event .text p:last-child {
  margin-bottom: 0;
}
#orgDetail #history .block figure {
  float: right;
}
#orgDetail #history .block figure img {
  display: block;
  margin-bottom: .5em;
}
#orgDetail #history .block figure img:last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 768px) {
  #orgDetail #history {
    margin-bottom: 2em;
  }
  #orgDetail #history .block {
    line-height: 1.5;
    padding: 1em 0;
  }
  #orgDetail #history .block .year, #orgDetail #history .block .event-wrap {
    float: none;
    display: table-cell;
  }
  #orgDetail #history .block .year {
    margin-right: 5px;
  }
  #orgDetail #history .block .event-wrap {
    width: auto;
  }
  #orgDetail #history .block .event-wrap .event {
    margin-bottom: 2em;
  }
  #orgDetail #history .block .event-wrap .event:last-child {
    margin-bottom: 0;
  }
  #orgDetail #history .block .event-wrap .event .month {
    width: 35px;
    margin-right: 15px;
  }
  #orgDetail #history .block figure {
    display: block;
    float: none;
    margin-top: 1em;
    margin-left: 100px;
  }
  #orgDetail #history .block figure img {
    display: inline-block;
    width: auto;
    margin-right: 10px;
    margin-bottom: 0;
  }
  #orgDetail #history .block figure img:last-child {
    margin-right: 0;
  }
}
#orgDetail #year-index {
  margin: -3em 0 2.5em;
}
#orgDetail #year-index li {
  display: inline-block;
  margin: 0 20px 0 0;
}
#orgDetail #year-index li a:after {
  background-color: #000;
}
@media only screen and (max-width: 768px) {
  #orgDetail #year-index {
    margin: -1.5em 0 0;
  }
  #orgDetail #year-index li {
    display: inline-block;
    width: 49%;
    margin: 0 0 .3em;
  }
}
#orgDetail #group-school {
  margin-bottom: 6em;
}
#orgDetail #group-school .school {
  display: table;
  width: 100%;
  margin-bottom: 1.5em;
  -webkit-box-shadow: 0 0 4px rgba(0, 0, 0, 0.2);
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.2);
}
#orgDetail #group-school .school .logo, #orgDetail #group-school .school .contents {
  display: table-cell;
  vertical-align: middle;
  height: 220px;
  padding: 2em 0;
}
#orgDetail #group-school .school .logo {
  border-left: 6px solid #2e2e2e;
  text-align: center;
  width: 265px;
  background-color: #eee;
}
#orgDetail #group-school .school .contents {
  padding: 2em 2.5em;
  overflow: hidden;
}
#orgDetail #group-school .school .contents .title {
  font-size: 24px;
  font-size: 1.5rem;
  margin-bottom: .3em;
}
#orgDetail #group-school .school .contents address {
  display: inline-block;
  font-style: normal;
  margin-right: 10px;
}
#orgDetail #group-school .school .contents ul {
  margin-top: 1em;
  margin-right: 30px;
  margin-bottom: 0;
  padding-bottom: 0;
}
#orgDetail #group-school .school.creapole .contents ul {
  float: left;
}
#orgDetail #group-school .mode .logo {
  border-color: #c41d1d;
  background-color: #f9e8e8;
}
#orgDetail #group-school .hal .logo {
  border-color: #306abe;
  background-color: #e5ebf6;
}
#orgDetail #group-school .iko .logo {
  border-color: #2aa53f;
  background-color: #e5f6ea;
}
#orgDetail #group-school .creapole .logo {
  border-color: #9aa19c;
  background-color: #e1e3e1;
}
#orgDetail #group-school .communication .logo {
  border-color: #727e98;
  background-color: #e3e5ea;
}
@media only screen and (max-width: 768px) {
  #orgDetail #group-school {
    margin-bottom: 2em;
  }
  #orgDetail #group-school .school {
    display: block;
    margin-bottom: 1.5em;
  }
  #orgDetail #group-school .school .logo, #orgDetail #group-school .school .contents {
    display: block;
    height: auto;
    padding: 1.5em 0;
  }
  #orgDetail #group-school .school .logo {
    border-width: 2px;
    width: auto;
  }
  #orgDetail #group-school .school .logo img {
    width: auto;
    max-height: 46px;
  }
  #orgDetail #group-school .school .contents {
    padding: 1.8em 1.5em;
  }
  #orgDetail #group-school .school .contents .title {
    font-size: 16px;
    font-size: 1rem;
    margin-bottom: .3em;
  }
  #orgDetail #group-school .school .contents address {
    display: block;
    margin-right: 0;
  }
  #orgDetail #group-school .school .contents .tel, #orgDetail #group-school .school .contents .fax {
    display: block;
  }
  #orgDetail #group-school .school .contents ul {
    float: none;
    margin-top: 1em;
    margin-right: 0;
    font-size: 12px;
    font-size: 0.75rem;
    overflow: hidden;
  }
  #orgDetail #group-school .school .contents ul li {
    float: left;
    margin-right: 20px;
  }
  #orgDetail #group-school .school.creapole .contents ul {
    float: none;
  }
  #orgDetail #group-school .creapole .contents ul li {
    float: none;
    margin-right: 0;
    margin-bottom: .5em;
  }
}
#orgDetail #recruit #school-navi .title {
  margin-bottom: 1.5em;
}
#orgDetail #recruit #school-navi ul {
  list-style: none;
  padding: 0;
  margin: 0 -15px;
}
#orgDetail #recruit #school-navi ul li {
  float: left;
  text-align: center;
  width: 30.3%;
  width: -o-calc(100% / 3 - 30px);
  width: calc(100% / 3 - 30px);
  margin: 0 15px 1.5em;
}
#orgDetail #recruit #school-navi ul li a {
  display: block;
  border-left: 2px solid #2e2e2e;
  padding: 1.8em 0;
  background: url(../img/mode/common_arrow02.png) no-repeat 91% center #eee;
}
#orgDetail #recruit #school-navi ul li a img {
  max-height: 34px;
}
#orgDetail #recruit #school-navi ul li a:hover {
  background-position: 93% center;
  opacity: 0.7;
  filter: alpha(opacity=70);
}
#orgDetail #recruit #school-navi ul .mode a {
  border-color: #c41d1d;
  background-color: #f9e8e8;
}
#orgDetail #recruit #school-navi ul .hal a {
  border-color: #306abe;
  background-color: #e5ebf6;
}
#orgDetail #recruit #school-navi ul .iko a {
  border-color: #2aa53f;
  background-color: #e5f6ea;
}
@media only screen and (max-width: 768px) {
  #orgDetail #recruit #school-navi ul {
    margin: 0;
  }
  #orgDetail #recruit #school-navi ul li {
    float: none;
    text-align: left;
    width: 100%;
    width: -o-calc(100%);
    width: calc(100%);
    margin: 0 0 1em;
  }
  #orgDetail #recruit #school-navi ul li a {
    padding: 1.3em 0 1.3em 15px;
    background: url(../img/mode/common_arrow02.png) no-repeat 95% center #eee;
  }
  #orgDetail #recruit #school-navi ul li a img {
    width: auto;
    max-height: 46px;
  }
  #orgDetail #recruit #school-navi ul li a:hover {
    background-position: 95% center;
    opacity: 1;
    filter: alpha(opacity=100);
  }
}
#orgDetail #media {
  margin-bottom: 6em;
}
#orgDetail #media #contact-tel .heading10, #orgDetail #media #contact-email .heading10 {
  margin-bottom: 2em;
  font-weight: 700;
}
#orgDetail #media #contact-tel ul, #orgDetail #media #contact-email ul {
  list-style: none;
  padding: 0;
  margin: 0;
  overflow: hidden;
}
#orgDetail #media #contact-tel ul li, #orgDetail #media #contact-email ul li {
  float: left;
  width: 33.333%;
  width: -o-calc(100% / 3);
  width: calc(100% / 3);
  margin: 0 0 .6em;
}
#orgDetail #media #contact-tel ul li .title, #orgDetail #media #contact-email ul li .title {
  display: inline-table;
  min-width: 120px;
  max-width: 145px;
  font-weight: bold;
  vertical-align: top;
}
#orgDetail #media #contact-tel ul li {
  white-space: nowrap;
}
#orgDetail #media #contact-tel ul li .text {
  white-space: nowrap;
}
#orgDetail #media #contact-email ul li {
  float: none;
  width: 100%;
  width: -o-calc(100%);
  width: calc(100%);
  margin: 0 0 .6em;
}
@media only screen and (max-width: 768px) {
  #orgDetail #media {
    margin-bottom: 2em;
  }
  #orgDetail #media #contact-tel .heading10, #orgDetail #media #contact-email .heading10 {
    margin-bottom: 1.5em;
  }
  #orgDetail #media #contact-tel ul li, #orgDetail #media #contact-email ul li {
    float: none;
    font-size: 12px;
    font-size: 0.75rem;
    width: 100%;
    width: -o-calc(100%);
    width: calc(100%);
    margin: 0 0 .8em;
  }
  #orgDetail #media #contact-tel ul li .title, #orgDetail #media #contact-email ul li .title {
    width: 140px;
  }
  #orgDetail #media #contact-email ul li .title, #orgDetail #media #contact-email ul li .text {
    display: block;
    text-align: center;
    width: auto;
  }
  #orgDetail #media #contact-email ul li .title {
    margin-bottom: .8em;
  }
  #orgDetail #media #contact-email ul li .text {
    text-align: left;
  }
}

#contentTop {
  background: none #c41d1d;
  color: #fff;
}
#contentTop .heading9 {
  border-color: #fff;
  color: #fff;
}
#contentTop .heading11 {
  background-color: #000;
}
#contentTop .heading13 {
  margin-bottom: 1em;
}
#contentTop .emphasize-container + section .contents-inner {
  margin-top: -8em;
}
@media only screen and (max-width: 768px) {
  #contentTop .emphasize-container + section .contents-inner {
    margin-top: -3em;
  }
}
#contentTop .contents-inner p {
  text-align: center;
}
@media only screen and (max-width: 768px) {
  #contentTop .contents-inner p {
    text-align: left;
  }
}
@media only screen and (min-width: 1150px) {
  #contentTop section {
    margin-bottom: 4em;
  }
}
#contentTop main a {
  color: #fff;
  text-decoration: underline !important;
}
#contentTop main a:hover {
  text-decoration: none !important;
}
#contentTop main a.arrow {
  color: #fff;
  border-bottom: none;
}
#contentTop main table {
  background-color: #fff;
  color: #000;
}
#contentTop main table a {
  color: #00afcc;
  text-decoration: none !important;
}
#contentTop main table a.arrow {
  color: #00afcc;
  display: inline;
  border-bottom: 1px solid transparent;
  -webkit-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
}
#contentTop main table a.arrow:hover {
  border-bottom-color: #00afcc;
}
@media only screen and (max-width: 768px) {
  #contentTop main table a.arrow:hover {
    border: none;
  }
}
#contentTop .contents-panel, #contentTop .module_anchor-navi, #contentTop .module_service-list {
  color: #000;
}
#contentTop .contents-panel a, #contentTop .module_anchor-navi a, #contentTop .module_service-list a, #contentTop .module_text-description a {
  color: #00afcc;
  text-decoration: none !important;
  display: inline;
  border-bottom: 1px solid transparent;
  -webkit-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
}
#contentTop .contents-panel a:hover, #contentTop .module_anchor-navi a:hover, #contentTop .module_service-list a:hover, #contentTop .module_text-description a:hover {
  border-bottom-color: #00afcc;
}
@media only screen and (max-width: 768px) {
  #contentTop .contents-panel a:hover, #contentTop .module_anchor-navi a:hover, #contentTop .module_service-list a:hover, #contentTop .module_text-description a:hover {
    border: none;
  }
}
#contentTop .contents-panel a.arrow, #contentTop .module_anchor-navi a.arrow, #contentTop .module_service-list a.arrow, #contentTop .module_text-description a.arrow {
  color: #00afcc;
}
#contentTop .module_item-list a {
  text-decoration: none !important;
  color: #000;
}
#contentTop .module_page-title a, #contentTop .module_page-title a {
  text-decoration: none !important;
}
#contentTop .module_page-title.is_sub {
  margin: 0 0 2.4em;
}
@media only screen and (max-width: 768px) {
  #contentTop .module_page-title.is_sub {
    margin-bottom: 2em;
  }
}
#contentTop .module_text-description.is_lead .description {
  margin-bottom: 1.3rem;
}
@media only screen and (max-width: 768px) {
  #contentTop .module_text-description.is_lead .description {
    margin-bottom: 1.3rem;
  }
  #contentTop .module_text-description li .title {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
#contentTop .module_thumbnail-list li {
  color: #fff;
}
#contentTop .module_thumbnail-list li a {
  color: #fff;
}
#contentTop .module_thumbnail-list.is_2column li a {
  color: #fff;
}
#contentTop .module_thumbnail-list.is_2column li .title {
  color: #fff;
}
#contentTop .module_thumbnail-list.is_2column li .btn-group a {
  color: #fff;
}
#contentTop .module_text-banner {
  background-color: #fff;
  color: #000;
}
#contentTop .module_text-banner h3 {
  text-align: left;
}
#contentTop .module_text-banner p {
  text-align: left;
}
#contentTop .module_text-banner p a {
  color: #00afcc;
}
#contentTop .module_text-banner .external {
  background: url("../img/mode/common_icon_external.png") no-repeat right center;
  background-size: contain;
}
#contentTop .module_text-banner .module_text-banner {
  text-decoration: none !important;
}
#contentTop .module_text-banner .btn-group a {
  text-decoration: none !important;
}
#contentTop .access-contact {
  background-image: url(/img/mode/common_bg.png);
  background-color: #fff;
  color: #000;
}
#contentTop .access-contact a {
  text-decoration: none !important;
  color: #00afcc;
}
#contentTop .access-contact .heading9 {
  border-color: #c41d1d;
  color: #c41d1d;
}
#contentTop .access-contact .access-detail .lead {
  margin-bottom: 4em;
}
#contentTop .access-contact .access-detail .heading10 {
  font-weight: bold;
  margin-bottom: 2.4em;
}
#contentTop .access-contact .access-detail .access-wrap {
  margin-bottom: 3em;
  overflow: hidden;
}
#contentTop .access-contact .access-detail .access-wrap .text {
  float: left;
  width: 530px;
}
#contentTop .access-contact .access-detail .access-wrap .text address {
  font-style: normal;
  line-height: 2;
  margin-bottom: 2.5em;
}
#contentTop .access-contact .access-detail .access-wrap .text dl dt {
  font-weight: bold;
  margin-bottom: 1em;
}
#contentTop .access-contact .access-detail .access-wrap .text dl dd {
  margin-left: 0;
  margin-bottom: 2.5em;
}
#contentTop .access-contact .access-detail .access-wrap .text dl dd ul {
  padding-left: 1.5em;
  margin-top: 0;
}
#contentTop .access-contact .access-detail .access-wrap .text a {
  position: relative;
  margin: 0 0 0 25px;
  display: inline;
  border-bottom: 1px solid transparent;
  -webkit-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
}
#contentTop .access-contact .access-detail .access-wrap .text a:hover {
  border-bottom-color: #00afcc;
}
@media only screen and (max-width: 768px) {
  #contentTop .access-contact .access-detail .access-wrap .text a:hover {
    border: none;
  }
}
#contentTop .access-contact .access-detail .access-wrap .text a:before {
  content: "";
  position: absolute;
  top: .5em;
  left: -25px;
  width: 13px;
  height: 6px;
  background: url(../img/mode/common_arrow03.png) no-repeat left center;
}
#contentTop .access-contact .access-detail .access-wrap .image {
  float: right;
  width: 430px;
  text-align: right;
}
#contentTop .access-contact .access-detail .access-wrap .image img {
  border: 3px solid #eee;
  margin-bottom: 1.2em;
  width: 430px;
}
#contentTop .access-contact .access-detail .google-map {
  margin-bottom: 5em;
}
#contentTop .access-contact .module_text-banner {
  background-color: #c41d1d;
  color: #fff;
  margin-bottom: 5em;
}
#contentTop .access-contact .module_text-banner .inner-wrap {
  padding: 1.2em 80px;
}
#contentTop .access-contact .module_text-banner .inner-wrap .title {
  font-size: 36px;
  font-size: 2.25rem;
  margin-bottom: .4em;
}
#contentTop .access-contact .module_text-banner .inner-wrap p {
  font-size: 14px;
  font-size: 0.875rem;
  max-width: 580px;
  margin-bottom: 0;
}
#contentTop .access-contact .module_text-banner .inner-wrap .btn-group a {
  font-weight: bold;
  padding: 1.2em 80px;
  text-decoration: none !important;
  color: #c41d1d;
  -webkit-box-shadow: 0 0 0 #444;
  box-shadow: 0 0 0 #444;
}
#contentTop .access-contact .module_text-banner .inner-wrap .btn-group a:hover {
  color: #fff;
}
#contentTop .access-contact .contact-detail .lead {
  margin-bottom: 3em;
}
#contentTop .access-contact .contact-detail .contact-means {
  margin-bottom: 3em;
}
#contentTop .access-contact .contact-detail .contact-means ul {
  padding: 0;
  margin: 0 -15px 2em;
  overflow: hidden;
}
#contentTop .access-contact .contact-detail .contact-means ul li {
  float: left;
  color: #fff;
  text-align: center;
  width: 30.3%;
  width: -o-calc(33.3333% - 30px);
  width: calc(33.3333% - 30px);
  min-height: 210px;
  margin: 0 15px;
  background-color: #c41d1d;
}
#contentTop .access-contact .contact-detail .contact-means ul li a {
  color: #fff;
}
#contentTop .access-contact .contact-detail .contact-means ul li span {
  display: block;
  margin-bottom: .5em;
}
#contentTop .access-contact .contact-detail .contact-means ul li .title {
  font-size: 14px;
  font-size: 0.875rem;
  margin-top: 2em;
}
#contentTop .access-contact .contact-detail .contact-means ul li .title:before {
  content: "";
  display: block;
  width: 39px;
  height: 39px;
  margin: 0 auto 1em;
  background: url(../img/mode/contact_icon.png) no-repeat center top;
  background-size: 39px auto;
}
#contentTop .access-contact .contact-detail .contact-means ul li .number {
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: bold;
}
#contentTop .access-contact .contact-detail .contact-means ul li .business-hours {
  font-size: 14px;
  font-size: 0.875rem;
}
#contentTop .access-contact .contact-detail .contact-means ul li.mail .title:before {
  background-position: 0 -52px;
}
#contentTop .access-contact .contact-detail .contact-means ul li.mail .number {
  font-size: 18px;
  font-size: 1.125rem;
}
#contentTop .access-contact .contact-detail .contact-means ul li.fax .title:before {
  background-position: 0 -102px;
}
#contentTop .access-contact .contact-detail .contact-means a {
  text-decoration: none !important;
}
#contentTop .access-contact .contact-detail .module_text-list li {
  margin-bottom: .7em;
}
#contentTop .access-contact .contact-detail .module_text-list li span {
  display: inline-block;
  min-width: 180px;
}
#contentTop .access-contact .contact-detail .module_text-list li a {
  position: relative;
  color: #00afcc;
  margin-left: 25px;
}
#contentTop .access-contact .contact-detail .module_text-list li a:before {
  content: "";
  position: absolute;
  top: .5em;
  left: -25px;
  width: 13px;
  height: 6px;
  background: url(../img/mode/common_arrow03.png) no-repeat left center;
}
#contentTop .access-contact .module_thumbnail-list li {
  color: #000;
}
#contentTop .access-contact .module_thumbnail-list.is_2column li a {
  color: #00afcc;
}
#contentTop .access-contact .module_thumbnail-list.is_2column li a:hover {
  text-decoration: underline !important;
}
#contentTop .access-contact .module_thumbnail-list.is_2column li a.arrow {
  color: #00afcc;
  text-decoration: none !important;
  display: inline;
  border-bottom: 1px solid transparent;
  -webkit-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
}
#contentTop .access-contact .module_thumbnail-list.is_2column li a.arrow:hover {
  border-bottom-color: #00afcc;
}
@media only screen and (max-width: 768px) {
  #contentTop .access-contact .module_thumbnail-list.is_2column li a.arrow:hover {
    border: none;
  }
}
#contentTop .access-contact .module_thumbnail-list a {
  color: #000;
  text-decoration: none !important;
}
@media only screen and (max-width: 768px) {
  #contentTop .access-contact .header-container {
    padding-bottom: 0;
  }
  #contentTop .access-contact .access-detail .lead {
    margin-bottom: 3em;
  }
  #contentTop .access-contact .access-detail .heading10 {
    margin-bottom: 1em;
  }
  #contentTop .access-contact .access-detail .access-wrap {
    margin-bottom: 2em;
  }
  #contentTop .access-contact .access-detail .access-wrap .text {
    float: none;
    width: 100%;
  }
  #contentTop .access-contact .access-detail .access-wrap .text address {
    line-height: inherit;
    margin-bottom: 1.5em;
  }
  #contentTop .access-contact .access-detail .access-wrap .text address .link-googlemap {
    display: block;
  }
  #contentTop .access-contact .access-detail .access-wrap .text dl dt {
    margin-bottom: .2em;
  }
  #contentTop .access-contact .access-detail .access-wrap .text dl dd {
    margin-bottom: 1.5em;
  }
  #contentTop .access-contact .access-detail .access-wrap .image {
    float: none;
    width: 100%;
  }
  #contentTop .access-contact .access-detail .access-wrap .image img {
    width: 100%;
    height: auto;
    margin-bottom: 1.2em;
  }
  #contentTop .access-contact .access-detail .google-map {
    margin-bottom: 3em;
  }
  #contentTop .access-contact .module_text-banner {
    padding: 15px;
    margin: 0 -10px 3em;
  }
  #contentTop .access-contact .module_text-banner .inner-wrap {
    padding: 0 15px;
  }
  #contentTop .access-contact .module_text-banner .inner-wrap:before, #contentTop .access-contact .module_text-banner .inner-wrap:after {
    width: 13px;
    height: 13px;
    background-size: 13px auto;
  }
  #contentTop .access-contact .module_text-banner .inner-wrap:after {
    background-position: 0 -13px;
  }
  #contentTop .access-contact .module_text-banner .inner-wrap .title {
    font-size: 20px;
    font-size: 1.25rem;
    margin-bottom: .4em;
  }
  #contentTop .access-contact .module_text-banner .inner-wrap p {
    max-width: inherit;
    margin-bottom: 1em;
  }
  #contentTop .access-contact .module_text-banner .inner-wrap .btn-group .btn {
    width: 90%;
    padding: 1em 20px;
  }
  #contentTop .access-contact .contact-detail .lead {
    margin-bottom: 2em;
  }
  #contentTop .access-contact .contact-detail .contact-means {
    margin-bottom: 3em;
  }
  #contentTop .access-contact .contact-detail .contact-means ul {
    margin: 0 0 1em;
  }
  #contentTop .access-contact .contact-detail .contact-means ul li {
    float: none;
    width: 100%;
    width: -o-calc(100%);
    width: calc(100%);
    min-height: inherit;
    padding: 18px 0;
    margin: 0 0 1em;
  }
  #contentTop .access-contact .contact-detail .contact-means ul li span {
    margin-bottom: .5em;
  }
  #contentTop .access-contact .contact-detail .contact-means ul li .title {
    margin-top: 0;
  }
  #contentTop .access-contact .contact-detail .contact-means ul li .title:before {
    width: 32px;
    height: 32px;
    margin: 0 auto 1em;
    background: url(../img/mode/contact_icon.png) no-repeat center top;
    background-size: 32px auto;
  }
  #contentTop .access-contact .contact-detail .contact-means ul li .number {
    font-size: 20px;
    font-size: 1.25rem;
    margin-bottom: 0;
  }
  #contentTop .access-contact .contact-detail .contact-means ul li.mail .title:before {
    background-position: 0 -43px;
  }
  #contentTop .access-contact .contact-detail .contact-means ul li.fax .title:before {
    background-position: 0 -84px;
  }
  #contentTop .access-contact .contact-detail .module_text-list {
    padding-bottom: 0;
    margin-bottom: 0;
  }
  #contentTop .access-contact .contact-detail .module_text-list li {
    margin-bottom: 1.5em;
  }
  #contentTop .access-contact .contact-detail .module_text-list li span {
    display: block;
    min-width: inherit;
  }
  #contentTop .access-contact .contact-detail .module_text-list li a {
    display: block;
  }
}

#contentDetail main {
  word-break: break-word;
}
#contentDetail main h4, #contentDetail main h5, #contentDetail main h6 {
  line-height: 1.5;
}
#contentDetail main a {
  word-break: break-all;
}
#contentDetail .contents-wrapper {
  margin-top: 3em;
}
@media only screen and (min-width: 1150px) {
  #contentDetail .heading11 {
    margin: 3em 0 0.65em;
  }
}
@media only screen and (max-width: 768px) {
  #contentDetail .heading11 {
    margin-bottom: 1em;
  }
}
@media only screen and (min-width: 1150px) {
  #contentDetail table td > [class^="heading"]:first-child {
    margin-top: 0;
  }
}
#contentDetail .module_column-box .column-box {
  margin: 0 30px 4em;
}
#contentDetail .module_column-box.is_2column .heading11 {
  margin-top: 0;
}
@media only screen and (max-width: 768px) {
  #contentDetail .module_column-box .column-box {
    margin: 0 0 3em;
  }
}
#contentDetail .module_service-list {
  margin: 0 0 3em;
}
#contentDetail .module_service-list li {
  padding: 28px 16px 0;
}
@media only screen and (max-width: 768px) {
  #contentDetail .module_service-list {
    margin: 0 0 2em;
  }
  #contentDetail .module_service-list li {
    padding: 20px 16px 0;
  }
}
#contentDetail .access-contact .access-detail .lead {
  margin-bottom: 4em;
}
#contentDetail .access-contact .access-detail .heading10 {
  font-weight: bold;
  margin-bottom: 2.4em;
}
#contentDetail .access-contact .access-detail .access-wrap {
  margin-bottom: 3em;
  overflow: hidden;
}
#contentDetail .access-contact .access-detail .access-wrap .text {
  float: left;
  width: 530px;
}
#contentDetail .access-contact .access-detail .access-wrap .text address {
  font-style: normal;
  line-height: 2;
  margin-bottom: 2.5em;
}
#contentDetail .access-contact .access-detail .access-wrap .text dl dt {
  font-weight: bold;
  margin-bottom: 1em;
}
#contentDetail .access-contact .access-detail .access-wrap .text dl dd {
  margin-left: 0;
  margin-bottom: 2.5em;
}
#contentDetail .access-contact .access-detail .access-wrap .text dl dd ul {
  padding-left: 1.5em;
  margin-top: 0;
}
#contentDetail .access-contact .access-detail .access-wrap .text a {
  position: relative;
  margin: 0 0 0 25px;
  display: inline;
  border-bottom: 1px solid transparent;
  -webkit-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
}
#contentDetail .access-contact .access-detail .access-wrap .text a:hover {
  border-bottom-color: #00afcc;
}
@media only screen and (max-width: 768px) {
  #contentDetail .access-contact .access-detail .access-wrap .text a:hover {
    border: none;
  }
}
#contentDetail .access-contact .access-detail .access-wrap .text a:before {
  content: "";
  position: absolute;
  top: .5em;
  left: -25px;
  width: 13px;
  height: 6px;
  background: url(../img/mode/common_arrow03.png) no-repeat left center;
}
#contentDetail .access-contact .access-detail .access-wrap .image {
  float: right;
  width: 430px;
  text-align: right;
}
#contentDetail .access-contact .access-detail .access-wrap .image img {
  border: 3px solid #eee;
  margin-bottom: 1.2em;
}
#contentDetail .access-contact .access-detail .google-map {
  margin-bottom: 5em;
}
#contentDetail .access-contact .module_text-banner {
  margin-bottom: 5em;
}
#contentDetail .access-contact .module_text-banner .inner-wrap {
  padding: 1.2em 80px;
}
#contentDetail .access-contact .module_text-banner .inner-wrap .title {
  font-size: 36px;
  font-size: 2.25rem;
  margin-bottom: .4em;
}
#contentDetail .access-contact .module_text-banner .inner-wrap p {
  font-size: 14px;
  font-size: 0.875rem;
  max-width: 580px;
  margin-bottom: 0;
}
#contentDetail .access-contact .module_text-banner .inner-wrap .btn-group a {
  font-weight: bold;
  padding: 1.2em 80px;
  -webkit-box-shadow: 0 0 0 #444;
  box-shadow: 0 0 0 #444;
}
#contentDetail .access-contact .contact-detail .lead {
  margin-bottom: 3em;
}
#contentDetail .access-contact .contact-detail .contact-means {
  margin-bottom: 3em;
}
#contentDetail .access-contact .contact-detail .contact-means ul {
  padding: 0;
  margin: 0 -15px 2em;
  overflow: hidden;
}
#contentDetail .access-contact .contact-detail .contact-means ul li {
  float: left;
  color: #fff;
  text-align: center;
  width: 30.3%;
  width: -o-calc(33.3333% - 30px);
  width: calc(33.3333% - 30px);
  min-height: 210px;
  margin: 0 15px;
  background-color: #c41d1d;
}
#contentDetail .access-contact .contact-detail .contact-means ul li a {
  color: #fff;
}
#contentDetail .access-contact .contact-detail .contact-means ul li span {
  display: block;
  margin-bottom: .5em;
}
#contentDetail .access-contact .contact-detail .contact-means ul li .title {
  font-size: 14px;
  font-size: 0.875rem;
  margin-top: 2em;
}
#contentDetail .access-contact .contact-detail .contact-means ul li .title:before {
  content: "";
  display: block;
  width: 39px;
  height: 39px;
  margin: 0 auto 1em;
  background: url(../img/mode/contact_icon.png) no-repeat center top;
  background-size: 39px auto;
}
#contentDetail .access-contact .contact-detail .contact-means ul li .number {
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: bold;
}
#contentDetail .access-contact .contact-detail .contact-means ul li .business-hours {
  font-size: 14px;
  font-size: 0.875rem;
}
#contentDetail .access-contact .contact-detail .contact-means ul li.mail .title:before {
  background-position: 0 -52px;
}
#contentDetail .access-contact .contact-detail .contact-means ul li.mail .number {
  font-size: 18px;
  font-size: 1.125rem;
}
#contentDetail .access-contact .contact-detail .contact-means ul li.fax .title:before {
  background-position: 0 -102px;
}
#contentDetail .access-contact .contact-detail .module_text-list li {
  margin-bottom: .7em;
}
#contentDetail .access-contact .contact-detail .module_text-list li span {
  display: inline-block;
  min-width: 180px;
}
#contentDetail .access-contact .contact-detail .module_text-list li a {
  position: relative;
  color: #00afcc;
  margin-left: 25px;
}
#contentDetail .access-contact .contact-detail .module_text-list li a:before {
  content: "";
  position: absolute;
  top: .5em;
  left: -25px;
  width: 13px;
  height: 6px;
  background: url(../img/mode/common_arrow03.png) no-repeat left center;
}
@media only screen and (max-width: 768px) {
  #contentDetail .access-contact .header-container {
    padding-bottom: 0;
  }
  #contentDetail .access-contact .access-detail .lead {
    margin-bottom: 3em;
  }
  #contentDetail .access-contact .access-detail .heading10 {
    margin-bottom: 1em;
  }
  #contentDetail .access-contact .access-detail .access-wrap {
    margin-bottom: 2em;
  }
  #contentDetail .access-contact .access-detail .access-wrap .text {
    float: none;
    width: 100%;
  }
  #contentDetail .access-contact .access-detail .access-wrap .text address {
    line-height: inherit;
    margin-bottom: 1.5em;
  }
  #contentDetail .access-contact .access-detail .access-wrap .text address .link-googlemap {
    display: block;
  }
  #contentDetail .access-contact .access-detail .access-wrap .text dl dt {
    margin-bottom: .2em;
  }
  #contentDetail .access-contact .access-detail .access-wrap .text dl dd {
    margin-bottom: 1.5em;
  }
  #contentDetail .access-contact .access-detail .access-wrap .image {
    float: none;
    width: 100%;
  }
  #contentDetail .access-contact .access-detail .access-wrap .image img {
    width: 100%;
    height: auto;
    margin-bottom: 1.2em;
  }
  #contentDetail .access-contact .access-detail .google-map {
    margin-bottom: 3em;
  }
  #contentDetail .access-contact .module_text-banner {
    padding: 15px;
    margin: 0 -10px 3em;
  }
  #contentDetail .access-contact .module_text-banner .inner-wrap {
    padding: 0 15px;
  }
  #contentDetail .access-contact .module_text-banner .inner-wrap:before, #contentDetail .access-contact .module_text-banner .inner-wrap:after {
    width: 13px;
    height: 13px;
    background-size: 13px auto;
  }
  #contentDetail .access-contact .module_text-banner .inner-wrap:after {
    background-position: 0 -13px;
  }
  #contentDetail .access-contact .module_text-banner .inner-wrap .title {
    font-size: 20px;
    font-size: 1.25rem;
    margin-bottom: .4em;
  }
  #contentDetail .access-contact .module_text-banner .inner-wrap p {
    max-width: inherit;
    margin-bottom: 1em;
  }
  #contentDetail .access-contact .module_text-banner .inner-wrap .btn-group .btn {
    width: 90%;
    padding: 1em 20px;
  }
  #contentDetail .access-contact .contact-detail .lead {
    margin-bottom: 2em;
  }
  #contentDetail .access-contact .contact-detail .contact-means {
    margin-bottom: 3em;
  }
  #contentDetail .access-contact .contact-detail .contact-means ul {
    margin: 0 0 1em;
  }
  #contentDetail .access-contact .contact-detail .contact-means ul li {
    float: none;
    width: 100%;
    width: -o-calc(100%);
    width: calc(100%);
    min-height: inherit;
    padding: 18px 0;
    margin: 0 0 1em;
  }
  #contentDetail .access-contact .contact-detail .contact-means ul li span {
    margin-bottom: .5em;
  }
  #contentDetail .access-contact .contact-detail .contact-means ul li .title {
    margin-top: 0;
  }
  #contentDetail .access-contact .contact-detail .contact-means ul li .title:before {
    width: 32px;
    height: 32px;
    margin: 0 auto 1em;
    background: url(../img/mode/contact_icon.png) no-repeat center top;
    background-size: 32px auto;
  }
  #contentDetail .access-contact .contact-detail .contact-means ul li .number {
    font-size: 20px;
    font-size: 1.25rem;
    margin-bottom: 0;
  }
  #contentDetail .access-contact .contact-detail .contact-means ul li.mail .title:before {
    background-position: 0 -43px;
  }
  #contentDetail .access-contact .contact-detail .contact-means ul li.fax .title:before {
    background-position: 0 -84px;
  }
  #contentDetail .access-contact .contact-detail .module_text-list {
    padding-bottom: 0;
    margin-bottom: 0;
  }
  #contentDetail .access-contact .contact-detail .module_text-list li {
    margin-bottom: 1.5em;
  }
  #contentDetail .access-contact .contact-detail .module_text-list li span {
    display: block;
    min-width: inherit;
  }
  #contentDetail .access-contact .contact-detail .module_text-list li a {
    display: block;
  }
}
#contentDetail .sitemap .heading4 {
  color: #000;
}
#contentDetail .sitemap .heading4 a {
  color: #c41d1d;
  display: inline;
  border-bottom: 1px solid transparent;
  -webkit-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
}
#contentDetail .sitemap .heading4 a:hover {
  border-bottom-color: #00afcc;
}
@media only screen and (max-width: 768px) {
  #contentDetail .sitemap .heading4 a:hover {
    border: none;
  }
}
#contentDetail .sitemap .heading4 a:hover {
  border-bottom-color: #c41d1d;
}
#contentDetail .sitemap .module_contents-navi {
  background: transparent;
}
#contentDetail #related-course {
  padding-top: 4em;
  margin-bottom: 4em;
}
#contentDetail #related-course .heading8 {
  color: #000;
  font-size: 16px;
  font-size: 1rem;
}
#contentDetail #related-course .module_thumbnail-list {
  margin-right: -50px;
  margin-left: -50px;
}
#contentDetail #related-course .module_thumbnail-list .slick-dots {
  margin-top: -15px;
}
@media only screen and (max-width: 768px) {
  #contentDetail #related-course {
    padding: 2em 0 0;
    margin: 0;
  }
  #contentDetail #related-course .module_thumbnail-list {
    margin-right: 0;
    margin-left: 0;
  }
}
#contentDetail #check-page {
  margin-bottom: 4em;
}
#contentDetail #check-page .heading8 {
  color: #000;
  font-size: 16px;
  font-size: 1rem;
}
#contentDetail #check-page .module_thumbnail-list {
  margin-right: -50px;
  margin-left: -50px;
}
#contentDetail #check-page .module_thumbnail-list .slick-dots {
  margin-top: -15px;
}
@media only screen and (max-width: 768px) {
  #contentDetail #check-page {
    padding: 0;
    margin: 0;
  }
  #contentDetail #check-page .module_thumbnail-list {
    margin-right: 0;
    margin-left: 0;
  }
}

#searchResult .google-custom-search {
  position: relative;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
}
#searchResult .google-custom-search a,
#searchResult .google-custom-search a b {
  border: none;
  color: #00afcc;
  font-size: 18px;
  font-size: 1.125rem;
  text-decoration: none;
}
#searchResult .google-custom-search .gs-title {
  height: auto;
  padding-bottom: .4em;
  text-decoration: none;
}
#searchResult .google-custom-search .gs-webResult .gs-snippet,
#searchResult .google-custom-search .gs-imageResult .gs-snippet,
#searchResult .google-custom-search .gs-fileFormatType {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.5;
}
#searchResult .google-custom-search .gsc-search-box th, #searchResult .google-custom-search .gsc-search-box td,
#searchResult .google-custom-search .gsc-above-wrapper-area-container th,
#searchResult .google-custom-search .gsc-above-wrapper-area-container td,
#searchResult .google-custom-search .gsc-resultsHeader th,
#searchResult .google-custom-search .gsc-resultsHeader td,
#searchResult .google-custom-search .gsc-table-result th,
#searchResult .google-custom-search .gsc-table-result td,
#searchResult .google-custom-search .gs-promotion-table th,
#searchResult .google-custom-search .gs-promotion-table td {
  border: none;
  padding: 0;
}
#searchResult .google-custom-search .gsc-control-cse {
  border: none;
  width: 960px;
  padding-top: 100px;
  padding-right: 0;
  padding-left: 0;
  margin-right: auto;
  margin-left: auto;
  background: transparent;
}
#searchResult .google-custom-search .gsc-search-box {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100px;
  background-color: #f5f5f5;
}
#searchResult .google-custom-search .gsc-search-box .gsc-input {
  border: none;
  padding: 0;
}
#searchResult .google-custom-search .gsc-search-box .gsc-input .gsc-input-box {
  background: transparent;
  border: none;
  width: 960px;
  height: auto;
  margin-right: auto;
  margin-left: auto;
}
#searchResult .google-custom-search .gsc-search-box .gsc-input .gsc-input-box.gsc-input-box-hover, #searchResult .google-custom-search .gsc-search-box .gsc-input .gsc-input-box.gsc-input-box-focus {
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}
#searchResult .google-custom-search .gsc-search-box .gsc-input .gsc-input-box table {
  margin-bottom: 0;
}
#searchResult .google-custom-search .gsc-search-box .gsc-input .gsc-input-box table tr td {
  border: none;
  padding: 0;
}
#searchResult .google-custom-search .gsc-search-box .gsc-input .gsc-input-box table tr td .gsc-input {
  font-size: 14px;
  font-size: 0.875rem;
  width: 50% !important;
  padding: 0.8em !important;
}
#searchResult .google-custom-search .gsc-search-box .gsc-input .gsc-input-box table tr .gsib_b {
  display: none;
}
#searchResult .google-custom-search .gsc-search-box .gsc-search-button {
  border: none;
  width: 0;
  padding: 0;
  background: transparent;
}
#searchResult .google-custom-search .gsc-search-box .gsc-search-button button {
  position: absolute;
  top: 38%;
  left: 45.5%;
  height: 30px;
  padding: 0 1.2em;
  background: none;
  border: none;
  outline: 0;
  overflow: hidden;
}
#searchResult .google-custom-search .gsc-search-box .gsc-search-button button img {
  width: 23px;
  height: auto;
  margin-top: 1px;
}
#searchResult .google-custom-search .gsc-above-wrapper-area-container {
  margin-bottom: 0;
}
#searchResult .google-custom-search .gsc-above-wrapper-area-container .gsc-selected-option-container {
  min-width: 72px;
}
#searchResult .google-custom-search .gcsc-branding .gcsc-branding-clickable {
  font-size: 1px;
  font-size: 0.0625rem;
}
#searchResult .google-custom-search .gcsc-branding img.gsc-branding-img,
#searchResult .google-custom-search .gcsc-branding img.gsc-branding-img-noclear,
#searchResult .google-custom-search .gcsc-branding img.gcsc-branding-img,
#searchResult .google-custom-search .gcsc-branding img.gcsc-branding-img-noclear {
  vertical-align: middle;
}
#searchResult .google-custom-search .gsc-table-result {
  margin: 0 7px;
}
#searchResult .google-custom-search .gsc-result:not(.gsc-promotion) {
  padding: 20px 0;
  background: none;
  border: none;
}
#searchResult .google-custom-search .gsc-promotion {
  padding: 8px;
}
#searchResult .google-custom-search .gsc-promotion a:visited,
#searchResult .google-custom-search .gsc-promotion a em {
  color: #00afcc;
}
#searchResult .google-custom-search .gsc-promotion .gs-title {
  padding-bottom: 0;
}
#searchResult .google-custom-search .gsc-cursor-box {
  text-align: center;
  padding: 20px 0;
}
#searchResult .google-custom-search .gsc-cursor-box .gsc-cursor .gsc-cursor-page {
  color: #00afcc;
  margin: 0 10px;
}
@media only screen and (max-width: 768px) {
  #searchResult .google-custom-search a,
  #searchResult .google-custom-search a b {
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 1.5;
  }
  #searchResult .google-custom-search .gs-title {
    padding-bottom: .4em;
  }
  #searchResult .google-custom-search .gs-webResult .gs-snippet,
  #searchResult .google-custom-search .gs-imageResult .gs-snippet,
  #searchResult .google-custom-search .gs-fileFormatType {
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 1.5;
  }
  #searchResult .google-custom-search .gsc-control-cse {
    width: 100%;
    padding-top: 0;
  }
  #searchResult .google-custom-search .gsc-search-box {
    position: relative;
    top: inherit;
    left: inherit;
    width: 100%;
    height: auto;
    padding: 15px;
  }
  #searchResult .google-custom-search .gsc-search-box .gsc-input .gsc-input-box {
    width: 100%;
  }
  #searchResult .google-custom-search .gsc-search-box .gsc-input .gsc-input-box table tr td {
    border: none;
    padding: 0;
  }
  #searchResult .google-custom-search .gsc-search-box .gsc-input .gsc-input-box table tr td .gsc-input {
    font-size: 14px;
    font-size: 0.875rem;
    width: 100% !important;
    padding: 0.8em !important;
  }
  #searchResult .google-custom-search .gsc-search-box .gsc-search-button button {
    top: 19%;
    left: inherit;
    right: -8px;
  }
  #searchResult .google-custom-search .gsc-results-wrapper-nooverlay {
    margin: 0 10px;
  }
  #searchResult .google-custom-search .gsc-result:not(.gsc-promotion) {
    padding: 15px 0;
  }
}

#error #contents-header {
  padding-bottom: 0;
  margin: 0;
  background: none;
}
#error #contents-header .error-title {
  color: #c41d1d;
  font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  font-size: 30px;
  font-size: 1.875rem;
  line-height: 1.5;
  text-align: center;
  width: 100%;
  padding: 90px 0;
}
#error #contents-header .error-title strong {
  display: block;
  font-size: 60px;
  font-size: 3.75rem;
}
@media only screen and (max-width: 768px) {
  #error #contents-header .error-title {
    font-size: 25px;
    font-size: 1.5625rem;
    line-height: 1.2;
    text-align: left;
    padding: 45px 20px;
  }
  #error #contents-header .error-title strong {
    font-size: 42px;
    font-size: 2.625rem;
  }
}
#error .school-link {
  padding-top: 2em;
}
@media only screen and (max-width: 768px) {
  #error .school-link {
    padding-top: 0.5em;
  }
}
#error .module_banner-list {
  margin-right: -15px;
  margin-left: -15px;
}
#error .module_banner-list .item {
  display: block;
  float: left;
  margin: 0 15px;
}
#error .module_banner-list .item img {
  width: 300px;
  height: auto;
  margin-bottom: 1.2em;
}
#error .module_banner-list .item .text-link {
  text-align: left;
}
#error .module_banner-list .item .text-link a {
  display: inline;
  border-bottom: 1px solid transparent;
  -webkit-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
  line-height: 2;
}
#error .module_banner-list .item .text-link a:hover {
  border-bottom-color: #00afcc;
}
@media only screen and (max-width: 768px) {
  #error .module_banner-list .item .text-link a:hover {
    border: none;
  }
}
@media only screen and (max-width: 768px) {
  #error .module_banner-list {
    margin: 2em auto;
  }
  #error .module_banner-list .item {
    margin: 0 0 1em;
  }
  #error .module_banner-list .item img {
    width: 100%;
    margin-bottom: 0.8em;
  }
}
#error #modal-select-school_sitemap .module_banner-list .item {
  display: inline-block;
  float: none;
}
#error #modal-select-school_sitemap .module_banner-list .item img {
  width: auto;
  margin-bottom: 0;
}
@media only screen and (max-width: 768px) {
  #error #modal-select-school_sitemap .module_banner-list {
    margin: 0 auto;
  }
  #error #modal-select-school_sitemap .module_banner-list .item img {
    margin-bottom: 0;
  }
}

#specialTemplate {
  background: #fff;
  background-image: none;
}
@media only screen and (max-width: 768px) {
  #specialTemplate {
    padding-top: 97px;
    background-color: transparent;
  }
}
#specialTemplate .header-container {
  margin-bottom: 0;
}
@media only screen and (max-width: 768px) {
  #specialTemplate .header-container {
    padding-bottom: 0;
  }
}
#specialTemplate .module_visual-slider {
  padding-bottom: calc(100% * 624 / 1440);
}
#specialTemplate .module_visual-slider .item a {
  cursor: default;
}
#specialTemplate #area-navi-sp {
  display: none;
}
#specialTemplate #area-navi ul {
  margin: 0;
  padding: 0;
  overflow: hidden;
}
#specialTemplate #area-navi ul li {
  float: left;
  width: 25%;
  width: -o-calc(100% / 4);
  width: calc(100% / 4);
  list-style: none;
  text-align: center;
}
#specialTemplate #area-navi ul li a {
  position: relative;
  margin-top: -2px;
  display: block;
}
#specialTemplate #area-navi ul li a .place {
  position: absolute;
  top: 5%;
  left: 5%;
  z-index: 100;
  color: #fff;
  text-align: left;
}
#specialTemplate #area-navi ul li a .place .station {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: bold;
}
#specialTemplate #area-navi ul li a .place .station .number {
  font-size: 24px;
  font-size: 1.5rem;
}
#specialTemplate #area-navi ul li a .place .building {
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
}
#specialTemplate #area-navi ul li a .title {
  position: absolute;
  top: 36%;
  left: 0;
  z-index: 100;
  color: #fff;
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.1em;
  width: 100%;
}
#specialTemplate #area-navi ul li a .title span {
  display: block;
  font-size: 40px;
  font-size: 2.5rem;
  font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  line-height: 1.6;
}
#specialTemplate #area-navi ul li a .btn-group {
  position: absolute;
  bottom: 11%;
  left: 0;
  z-index: 100;
  width: 100%;
}
#specialTemplate #area-navi ul li a .btn-group .btn,
#specialTemplate #area-navi ul li a .btn-group .red {
  border: none;
  font-size: 14px;
  font-size: 0.875rem;
  -webkit-box-shadow: 0 0 0 0 #c41d1d;
  box-shadow: 0 0 0 0 #c41d1d;
  max-width: 80%;
}
#specialTemplate #area-navi ul li a .btn-group .large {
  max-width: 80%;
  min-width: 80%;
}
#specialTemplate #area-navi ul li a figure {
  background-color: #000;
  overflow: hidden;
}
#specialTemplate #area-navi ul li a figure img {
  width: 100%;
  opacity: 0.7;
  filter: alpha(opacity=70);
  -webkit-transition: -webkit-transform 0.2s ease-out;
  transition: -webkit-transform 0.2s ease-out;
  transition: transform 0.2s ease-out;
  transition: transform 0.2s ease-out, -webkit-transform 0.2s ease-out;
}
#specialTemplate #area-navi ul li a:hover figure img {
  -webkit-transition: 0.15s ease-out;
  transition: 0.15s ease-out;
  opacity: 1;
  filter: alpha(opacity=100);
  -webkit-transform: scale(1.1);
  -ms-transform: scale(1.1);
  transform: scale(1.1);
}
#specialTemplate #area-navi ul li a:hover .btn-group .btn,
#specialTemplate #area-navi ul li a:hover .btn-group .red {
  color: #fff;
  background-color: #c41d1d;
  background-image: url(../img/mode/common_arrow06.png);
  background-position: 93% center;
}
@media only screen and (min-width: 1150px) and (max-width: 1350px) {
  #specialTemplate #area-navi ul li a .place .building {
    font-size: 13px;
    font-size: 0.8125rem;
  }
  #specialTemplate #area-navi ul li a .title {
    top: 40%;
  }
  #specialTemplate #area-navi ul li a .title span {
    line-height: 1;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1150px) {
  #specialTemplate #area-navi ul li a .place .building {
    font-size: 13px;
    font-size: 0.8125rem;
  }
  #specialTemplate #area-navi ul li a .title {
    top: 40%;
  }
  #specialTemplate #area-navi ul li a .title span {
    line-height: 1;
  }
}
@media only screen and (max-width: 768px) {
  #specialTemplate #area-navi-sp {
    display: block;
    padding: 7px 10px;
    background-color: #eee;
  }
  #specialTemplate #area-navi-sp ul {
    margin: 0 -3px;
    padding: 0;
    letter-spacing: -0.4em;
    text-align: center;
  }
  #specialTemplate #area-navi-sp ul li {
    display: inline-block;
    list-style: none;
    margin: 3px;
    width: 47%;
    width: -o-calc(100% / 2 - 7px);
    width: calc(100% / 2 - 7px);
    text-align: center;
    letter-spacing: normal;
  }
  #specialTemplate #area-navi-sp ul li a {
    display: block;
    padding: 10px 5px;
    border: 1px #ddd solid;
    border-radius: 4px;
    background-color: #fff;
    color: #2e2e2e;
  }
  #specialTemplate #area-navi ul li {
    float: none;
    width: 100%;
  }
  #specialTemplate #area-navi ul li a .place .station {
    font-size: 12px;
    font-size: 0.75rem;
  }
  #specialTemplate #area-navi ul li a .place .station .number {
    font-size: 20px;
    font-size: 1.25rem;
  }
  #specialTemplate #area-navi ul li a .place .building {
    font-size: 12px;
    font-size: 0.75rem;
  }
  #specialTemplate #area-navi ul li a .title {
    top: 36%;
    font-size: 10px;
    font-size: 0.625rem;
  }
  #specialTemplate #area-navi ul li a .title span {
    display: block;
    font-size: 30px;
    font-size: 1.875rem;
    font-family: "Roboto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイ0EAオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  }
  #specialTemplate #area-navi ul li a:hover figure img {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }
  #specialTemplate #area-navi ul li a:hover .btn-group .btn,
  #specialTemplate #area-navi ul li a:hover .btn-group .red {
    background-position: 91% center;
  }
}
#specialTemplate #course-introduction {
  padding: 100px 0 50px;
  background: url("../img/mode/totaltop_bg_course-navi.jpg") no-repeat center center;
  background-size: cover;
  color: #fff;
}
#specialTemplate #course-introduction h2 {
  font-size: 24px;
  font-size: 1.5rem;
  margin-bottom: 1.5em;
}
#specialTemplate #course-introduction .description {
  width: 700px;
  font-size: 18px;
  font-size: 1.125rem;
}
#specialTemplate #course-introduction #course-navi .foreword {
  margin-bottom: 1.5em;
  padding: 14px 20px 6px;
  border: 3px solid #fff;
  border-bottom: none;
  line-height: 1.4;
  text-align: center;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: bold;
}
#specialTemplate #course-introduction #course-navi .foreword:after {
  position: relative;
  display: block;
  content: "";
  width: 1216px;
  height: 12px;
  top: 15px;
  left: -23px;
  background: url("../img/mode/totaltop_bg_course-navi-foreword.png") no-repeat center bottom;
}
#specialTemplate #course-introduction #course-navi ul {
  margin: 0 -25px;
  padding: 0;
  overflow: hidden;
}
#specialTemplate #course-introduction #course-navi ul li {
  float: left;
  width: 29%;
  width: -o-calc(100% / 3 - 50px);
  width: calc(100% / 3 - 50px);
  margin: 0 25px 1em;
  list-style: none;
}
#specialTemplate #course-introduction #course-navi ul li a {
  display: block;
  padding: 20px 10px;
}
@media only screen and (max-width: 768px) {
  #specialTemplate #course-introduction {
    padding: 50px 0 15px;
    background: transparent;
  }
  #specialTemplate #course-introduction h2 {
    margin-bottom: 1em;
  }
  #specialTemplate #course-introduction .description {
    width: auto;
    font-size: 16px;
    font-size: 1rem;
  }
  #specialTemplate #course-introduction #course-navi .foreword {
    padding: 10px 20px 2px;
    font-size: 16px;
    font-size: 1rem;
  }
  #specialTemplate #course-introduction #course-navi .foreword:after {
    width: 114%;
    width: -o-calc(100% + 46px);
    width: calc(100% + 46px);
    top: 11px;
  }
  #specialTemplate #course-introduction #course-navi ul {
    margin: 0;
  }
  #specialTemplate #course-introduction #course-navi ul li {
    float: none;
    width: 100%;
    margin: 0 0 0.5em;
  }
  #specialTemplate #course-introduction #course-navi ul li a {
    padding: 1em 10px;
    text-align: left;
  }
}
@media only screen and (max-width: 768px) {
  #specialTemplate .banner-area {
    padding-top: 2em;
    padding-bottom: 2em;
    margin: 0 auto;
    background-color: #fff;
  }
}
#specialTemplate #to-recruitment-officer {
  padding-bottom: 2.5em;
}
#specialTemplate #to-recruitment-officer a {
  position: relative;
  display: inline-block;
  padding: 0 0 0 24px;
  margin-right: 20px;
  vertical-align: middle;
  text-decoration: none;
  font-size: 16px;
  font-size: 1rem;
  border-bottom-color: #9fa5e0;
  background: url(../img/mode/common_arrow03.png) no-repeat left center;
}
@media only screen and (max-width: 768px) {
  #specialTemplate #to-recruitment-officer {
    margin-top: -1.5em;
    background-color: #fff;
  }
}
@media only screen and (max-width: 768px) {
  #specialTemplate #footer-navi .module_banner-list .item img {
    width: auto;
    max-width: 100%;
  }
}
