@charset "UTF-8";
/*
Theme Name: CamPa & Kakuyasu
Author: grupside llc.
Author URI: https://grupside.com/
Description: WordPress Template Theme
Version: 1.0.0
Text Domain: campa
*/
*,
::before,
::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-style: solid;
  border-width: 0;
}

/* Document */
/* ============================================ */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent;
}

/* Sections */
/* ============================================ */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/* Vertical rhythm */
/* ============================================ */
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

/* Headings */
/* ============================================ */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  margin: 0;
}

/* Lists (enumeration) */
/* ============================================ */
ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Lists (definition) */
/* ============================================ */
dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Grouping content */
/* ============================================ */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0;
  overflow: visible;
  border-top-width: 1px;
  margin: 0;
  clear: both;
  color: inherit;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  font-size: inherit;
}

address {
  font-style: inherit;
}

/* Text-level semantics */
/* ============================================ */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
  text-decoration: none;
  color: inherit;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: inherit;
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content */
/* ============================================ */
/**
 * Prevent vertical alignment issues.
 */
img,
embed,
object,
iframe {
  vertical-align: bottom;
}

/* Forms */
/* ============================================ */
/**
 * Reset form fields to make them styleable
 */
button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  outline: 0;
  border-radius: 0;
  text-align: inherit;
}

/**
 * Reset radio and checkbox appearance to preserve their look in iOS.
 */
[type=checkbox] {
  -webkit-appearance: checkbox;
  -moz-appearance: checkbox;
       appearance: checkbox;
}

[type=radio] {
  -webkit-appearance: radio;
  -moz-appearance: radio;
       appearance: radio;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}

button[disabled],
[type=button][disabled],
[type=reset][disabled],
[type=submit][disabled] {
  cursor: default;
}

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

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Remove arrow in IE10 & IE11
 */
select::-ms-expand {
  display: none;
}

/**
 * Remove padding
 */
option {
  padding: 0;
}

/**
 * Reset to invisible
 */
fieldset {
  margin: 0;
  padding: 0;
  min-width: 0;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

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

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the outline style in Safari.
 */
[type=search] {
  outline-offset: -2px;
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

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

/**
 * Clickable labels
 */
label[for] {
  cursor: pointer;
}

/* Interactive */
/* ============================================ */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

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

/*
 * Remove outline for editable content.
 */
[contenteditable] {
  outline: none;
}

/* Table */
/* ============================================ */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption {
  text-align: left;
}

td,
th {
  vertical-align: top;
  padding: 0;
}

th {
  text-align: left;
  font-weight: bold;
}

/* Misc */
/* ============================================ */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

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

.image--fitbyjs {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}
.image--fitbyjs img {
  opacity: 0;
  -webkit-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
  position: absolute;
  width: 100%;
  height: 100%;
}
.image--fitbyjs-cover.image--fitbyjs-h img {
  opacity: 1;
  left: 0;
  top: 50%;
  width: 100%;
  height: auto;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.image--fitbyjs-cover.image--fitbyjs-v img {
  opacity: 1;
  left: 50%;
  top: 0;
  width: auto;
  height: 100%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

@-webkit-keyframes animf_fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}

@keyframes animf_fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}
/*----------------------------------------------------------------------------*/
html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

*, *:before, *:after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

.--preload, .--preload::before, .--preload::after,
.--preload *, .--preload *::before, .--preload *::after {
  -webkit-transition: none !important;
  transition: none !important;
}

body,
button,
input,
select,
textarea {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", -apple-system, BlinkMacSystemFont, Roboto, "メイリオ", sans-serif;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.75;
  color: #6E595E;
}

body {
  font-size: 16px;
  letter-spacing: 0.04em;
  margin: 0;
  background-color: #fff;
  overflow-x: hidden;
}
@media (max-width: 46rem) {
  body {
    font-size: 14px;
  }
}

p, h1, h2, h3, h4, h5, h6 {
  margin: 0;
}

a {
  text-decoration: none;
}

picture img {
  display: block;
  width: 100%;
  height: auto;
  max-width: none;
}

/*----------------------------------------------------------------------------*/
main {
  position: relative;
  padding: 0;
  margin: 0;
}

h1 {
  font-size: 1.62em;
  margin: 0;
}

h2 {
  font-weight: normal;
  font-size: 1.3em;
  margin: 0;
}

h3, h4, h5, h6 {
  font-weight: normal;
  font-size: 1.06em;
  margin: 0;
}

p, a, sub, strong {
  margin: 0;
}

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

li {
  padding: 0;
  margin: 0;
}

dl, dt, dd {
  padding: 0;
  margin: 0;
}

hr {
  clear: both;
  border: none;
  border-top: 4px solid #FAF8F8;
  padding: 0 0 0.6em;
  margin: 0.6em 0 0;
}

.--select-none {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-touch-callout: none;
}

a .link-text,
a .link-ext-article {
  color: #003DC6;
  text-decoration: underline;
}

.--ellipsis {
  display: block !important;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.post-image {
  width: 100%;
}
.post-image img {
  display: block;
  width: 100%;
  height: auto;
  max-width: none;
}

.article {
  min-height: 40vh;
  /*	h1 {
  		font-size: $fs_title;
  		font-weight: bold;
  	}
  	h2 {
  		font-size: $fs_subtitle;
  		font-weight: bold;
  	}
  	h3,h4,h5,h6,
  	.-has_left_bar {
  		color: $color_heading;
  		font-size: 1.16em;
  		font-size: $fs_bolder;
  		font-weight: bold;
  	}*/
  /*	table {
  		border-collapse: collapse;
  		th {
  			background: #ccc;
  			border: 1px solid $color_paper;
  			padding: 0.3em 1em;
  		}
  		td {
  			background: #eee;
  			border: 1px solid $color_paper;
  			padding: 0.3em 1em;
  			&:nth-of-type(1) {
  				background: #ddd;
  			}
  		}
  	}*/
}
.article strong {
  font-size: 1.06em;
}
.article figure {
  margin: 0;
}
.article img {
  display: block;
  max-width: 100%;
  height: auto;
}

img.alignnone {
  max-width: 100%;
  margin: 1em auto;
}

img.alignleft {
  float: left;
  max-width: 48%;
  height: auto;
  margin: 1em 1.6em 1em 0;
}
@media (max-width: 46rem) {
  img.alignleft {
    float: none;
    max-width: 100%;
    margin: 1em 0;
  }
}

img.alignright {
  float: right;
  max-width: 48%;
  height: auto;
  margin: 1em 0 1em 1.6em;
}
@media (max-width: 46rem) {
  img.alignright {
    float: none;
    max-width: 100%;
    margin: 1em 0;
  }
}

@media (max-width: 46rem) {
  .wp-block-media-text.is-stacked-on-mobile.has-media-on-the-right .wp-block-media-text__content {
    padding-right: 0;
  }
}

.wp-block-image {
  margin: 0 auto 0.3em;
}
.wp-block-image img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}
.wp-block-image figcaption {
  margin: 0;
}

.wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
  padding-left: 0;
  padding-right: 1.6em;
}

.wp-block-gallery {
  margin-top: 1.6em;
}
.wp-block-gallery.columns-3 {
  position: relative;
  width: 100%;
  height: 0;
  padding: 0 0 45%;
}
.wp-block-gallery.columns-3 .blocks-gallery-grid > li {
  position: absolute;
  margin: 0;
}
.wp-block-gallery.columns-3 .blocks-gallery-grid > li:nth-of-type(1) {
  width: 65.66%;
  top: 0;
  left: 0;
  height: 100%;
}
.wp-block-gallery.columns-3 .blocks-gallery-grid > li:nth-of-type(2) {
  width: 33.33%;
  top: 0;
  right: 0;
  height: 48.66%;
}
.wp-block-gallery.columns-3 .blocks-gallery-grid > li:nth-of-type(3) {
  width: 33.33%;
  bottom: 0;
  right: 0;
  height: 48.66%;
}

.-wp_post a:not(._button) {
  word-break: break-word;
  color: #003DC6;
  background-image: -webkit-gradient(linear, left top, right top, from(#003DC6), to(#003DC6));
  background-image: -webkit-linear-gradient(left, #003DC6 0%, #003DC6 100%);
  background-image: linear-gradient(90deg, #003DC6 0%, #003DC6 100%);
  background-size: 100% 1px;
  background-repeat: no-repeat;
  background-position: left bottom 1px;
}

.wp-embedded-content {
  width: 100%;
  max-width: 100%;
}

.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-user-select: none;
     -moz-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;
  margin: 0;
  padding: 0;
  overflow: hidden;
}

.slick-list:focus {
  outline: none;
}

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

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

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

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

.slick-slider {
  position: absolute;
  width: 100%;
  height: 100%;
  margin: 0;
}
.slick-slider .slick-list {
  overflow: visible;
}
.slick-slider .slick-track,
.slick-slider .slick-list {
  position: absolute;
  width: 100%;
  height: 100%;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}

.slick-slide figure {
  position: relative;
  max-width: 100%;
  height: 100%;
  margin: 0 auto;
}
.slick-slide img {
  display: block;
  width: auto;
}

.slick_prev,
.slick_next {
  font-size: 18px;
  font-size: 1.8em;
  width: 40px;
  height: 40px;
  line-height: 40px;
}

.slick-dots {
  list-style: none;
  position: absolute;
  display: block;
  left: 0;
  width: 100%;
  bottom: 0;
  padding: 0;
  border-radius: 0;
  text-align: center;
  z-index: 1;
  /*
  li button:hover:before,
  li button:focus:before {
  //  background-color: $color_selected;
  //  opacity: 1;
  }*/
}
.slick-dots li {
  position: relative;
  display: inline-block;
  width: 2em;
  min-width: 2em;
  height: 2em;
  margin: 0;
  padding: 0;
}
.slick-dots li button {
  position: relative;
  display: block;
  width: 100%;
  min-width: 1.6em;
  height: 100%;
  padding: 0;
  margin: 0;
  color: transparent;
  border: 0;
  outline: none;
  background: transparent;
  cursor: pointer;
}
.slick-dots li button:hover,
.slick-dots li button:focus {
  outline: none;
}
.slick-dots li button:before {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  width: 0.75em;
  height: 0.75em;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  text-align: center;
  opacity: 1;
  background-color: rgba(196, 192, 192, 0.2);
  border-radius: 50%;
}
.slick-dots li.slick-active button:before {
  opacity: 1;
  background-color: #E9E6E6;
}
.slick-dots li button.thumbnail img {
  width: 0;
  height: 0;
}

*.--mt-06 {
  margin-top: 0.6em;
}

*.--mt-10 {
  margin-top: 1em;
}

*.--mt-16 {
  margin-top: 1.6em;
}

*.--mt-26 {
  margin-top: 2.6em;
}

*.--mt-42 {
  margin-top: 4.2em;
}

*.--mt-none {
  margin-top: 0;
}

*.--mb-06 {
  margin-bottom: 0.6em;
}

*.--mb-10 {
  margin-bottom: 1em;
}

*.--mb-16 {
  margin-bottom: 1.6em;
}

*.--mb-26 {
  margin-bottom: 2.6em;
}

*.--mb-42 {
  margin-bottom: 4.2em;
}

*.--mb-none {
  margin-bottom: 0;
}

*.--pt-06 {
  padding-top: 0.6em;
}

*.--pt-10 {
  padding-top: 1em;
}

*.--pt-16 {
  padding-top: 1.6em;
}

*.--pt-26 {
  padding-top: 2.6em;
}

*.--pt-42 {
  padding-top: 4.2em;
}

*.--pt-none {
  padding-top: 0;
}

*.--pb-06 {
  padding-bottom: 0.6em;
}

*.--pb-10 {
  padding-bottom: 1em;
}

*.--pb-16 {
  padding-bottom: 1.6em;
}

*.--pb-26 {
  padding-bottom: 2.6em;
}

*.--pb-42 {
  padding-bottom: 4.2em;
}

*.--pb-none {
  padding-bottom: 0;
}

*.--fs-s2 {
  font-size: 0.85em;
}

.inner-content {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1em;
  padding-right: 1em;
}
@media (max-width: 56rem) {
  .inner-content {
    padding-left: 0.6em;
    padding-right: 0.6em;
  }
}
.inner-content--regular {
  max-width: 82em;
}
.inner-content--narrow {
  max-width: 53em;
}
.inner-content--wide {
  max-width: 110em;
}
.inner-content--full {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}

.sidebar {
  position: relative;
}

.block-document {
  background-color: #F3FAED;
  margin-top: 4.2em;
  overflow: hidden;
}
.block-document--left-sidebar .block-document__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  width: 100%;
}
.block-document--left-sidebar .main {
  width: calc(100% - 23.6em);
}
.block-document--left-sidebar .sidebar {
  width: 21em;
  margin-right: 2.6em;
}
@media (max-width: 70rem) {
  .block-document--left-sidebar .block-document__inner {
    display: block;
    width: 100%;
  }
  .block-document--left-sidebar .main {
    width: 100%;
    margin-left: 0;
  }
  .block-document--left-sidebar .sidebar {
    width: 100%;
  }
}

.post-content {
  min-height: 12em;
  /*	@media (max-width: $media_tab) {
  		>div {
  			padding: 0 10px;
  		}
  	}*/
}
.post-content h1, .post-content h2, .post-content h3, .post-content h4, .post-content h5, .post-content h6 {
  color: #6E595E;
  font-weight: bold;
}

.post-list {
  list-style: none;
}
.post-list--card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  width: auto;
  margin-left: -0.8em;
  margin-right: -0.8em;
}
.post-list--card > * {
  width: 33.3333333333%;
  padding-left: 0.8em;
  padding-right: 0.8em;
  padding-top: 0;
  padding-bottom: 0;
}
@media (max-width: 46rem) {
  .post-list--card {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    list-style: none;
    width: auto;
    margin-left: -0.3em;
    margin-right: -0.3em;
  }
  .post-list--card > * {
    width: 33.3333333333%;
    padding-left: 0.3em;
    padding-right: 0.3em;
    padding-top: 0;
    padding-bottom: 0;
  }
}
.post-list--column {
  margin-top: 1em;
}

.post-item {
  margin-top: 1.56em;
  text-align: left;
}
.post-item__datebox {
  line-height: 1.3;
}
.post-item__datetime {
  line-height: 1.3;
}
.post-item__datetext {
  display: block;
  color: #6E595E;
  line-height: 1.3;
}
.post-item__title {
  display: block;
  font-size: 1.06em;
  margin-top: 1em;
  padding-bottom: 0.3em;
  border-bottom: 1px solid rgba(196, 192, 192, 0.2);
}
.post-item__title-text {
  color: #6E595E;
  font-size: 1.06em;
  line-height: 1.3;
}
.post-item__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  line-height: 1.6;
  padding: 1em 0;
  border-bottom: 1px solid rgba(196, 192, 192, 0.2);
}
.post-item__content-text {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  line-height: 1.6;
  max-height: 1.6em;
  margin-top: 0em;
  margin-bottom: 0em;
  max-width: calc(100% - 8em);
}
.post-item__more {
  display: block;
  max-width: 8em;
  line-height: 1.6;
  text-align: right;
  margin: 0;
  color: #8AC751;
  font-weight: bold;
}
.post-item__thumbnail {
  display: block;
  position: relative;
  width: 100%;
  height: 0;
  padding: 0 0 50%;
  overflow: hidden;
  background-color: #f2f2f2;
}
.post-item__thumbnail > img, .post-item__thumbnail > picture {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}
.post-item__thumbnail img {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  -o-object-fit: cover;
     object-fit: cover;
}
.post-item--column {
  margin-top: 1.6em;
  padding-bottom: 1em;
  border: none;
}
.post-item--column .post-item__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.post-item--column .post-item__thumbnail {
  width: 50%;
  padding: 0 0 30%;
}
.post-item--column .post-item__infobox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 50%;
  color: #6E595E;
  text-align: left;
  padding-left: 1.6em;
}
.post-item--column .post-item__title {
  font-size: 1em;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-height: 1.6;
  max-height: 3.2em;
  margin-top: 0em;
  margin-bottom: 0em;
  margin-top: 0.3em;
}
.post-item--column .post-item__excerpt {
  font-size: 0.89em;
  text-align: left;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  line-height: 1.6;
  max-height: 6.4em;
  margin-top: 0em;
  margin-bottom: 0em;
}
.post-item--card {
  line-height: 1.5;
  margin-top: 1em;
  border: none;
}
.post-item--card .post-item__thumbnail {
  position: relative;
  width: 100%;
  height: 0;
  padding: 0 0 70%;
  overflow: hidden;
}
.post-item--card .post-item__thumbnail > img, .post-item--card .post-item__thumbnail > picture {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}
.post-item--card .post-item__thumbnail img {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  -o-object-fit: cover;
     object-fit: cover;
}
.post-item--card .post-item__infobox {
  display: block;
  color: #6E595E;
  margin-top: 1em;
}
.post-item--card .post-item__date {
  font-size: 0.85em;
  text-align: right;
}
.post-item--card .post-item__title {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-height: 1.6;
  max-height: 3.2em;
  margin-top: 0em;
  margin-bottom: 0em;
  font-size: 1em;
  text-align: left;
}
.post-item--search {
  margin-top: 1em;
  text-align: left;
  border: 1px solid #ccc;
  padding: 0.7em 1em;
}
.post-item--search .post-item__title {
  color: #6E595E;
  font-size: 1em;
  line-height: 1.3;
}
.post-item--search .post-item__excerpt {
  color: #6E595E;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-height: 1.5;
  max-height: 3em;
  margin-top: 0.15em;
  margin-bottom: 0.15em;
  padding-left: 2.6em;
}

.page-heading__text {
  font-size: 1.62em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 0;
  padding-right: 0;
  font-weight: bold;
}
.page-heading__text::before, .page-heading__text::after {
  background-color: #25AFEC;
  content: "";
  height: 0.25em;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
.page-heading__text::before {
  margin-right: 0.5em;
  border-radius: 0 0.25em 0.25em 0;
}
.page-heading__text::after {
  margin-left: 0.5em;
  border-radius: 0.25em 0 0 0.25em;
}

.section-heading__box {
  font-size: 1.3em;
}
.section-heading--center {
  text-align: center;
}
.section-heading--right {
  text-align: right;
}
.section {
  position: relative;
  margin-left: auto;
  margin-right: auto;
}
.section--light-bg {
  border-radius: 0;
}
.section--light-bg .section__inner {
  padding: 2.5em;
}
@media (max-width: 70rem) {
  .section--light-bg .section__inner {
    padding: 2.5em 0.6em;
  }
}
body.--kakuyasu .section--light-bg {
  background: #F3FAED;
}
body.--campa .section--light-bg {
  background-color: #fff;
}
.section--deep-bg {
  background: -webkit-gradient(linear, left top, left bottom, from(#8AC751), to(#ECFACF));
  background: -webkit-linear-gradient(#8AC751, #ECFACF);
  background: linear-gradient(#8AC751, #ECFACF);
  border-radius: 0;
}
.section--deep-bg .section__inner {
  padding: 1.5em 0 !important;
}
.section--deep-bg .section__content {
  margin: 1.5em 2.5em;
}
.section--deep-bg .section-heading__text {
  color: #fff;
}
@media (max-width: 70rem) {
  .section--deep-bg .section__content {
    margin: 1.5em 0.6em;
  }
}
body.--kakuyasu .section--deep-bg .section-heading--center h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 0;
  padding-right: 0;
}
body.--kakuyasu .section--deep-bg .section-heading--center h2::before, body.--kakuyasu .section--deep-bg .section-heading--center h2::after {
  content: "";
  height: 0.25em;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  background-color: #fff;
}
body.--kakuyasu .section--deep-bg .section-heading--center h2::before {
  margin-right: 0.5em;
  border-radius: 0 0.25em 0.25em 0;
}
body.--kakuyasu .section--deep-bg .section-heading--center h2::after {
  margin-left: 0.5em;
  border-radius: 0.25em 0 0 0.25em;
}

.section--notice {
  -webkit-box-shadow: 0 0 0 4px rgba(111, 186, 44, 0.4) inset;
          box-shadow: 0 0 0 4px rgba(111, 186, 44, 0.4) inset;
  border-radius: 0;
}
.section--notice .section__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 2.6em 1em;
}
.section--notice .section-heading__text {
  font-size: 0.8em;
}
@media (max-width: 70rem) {
  .section--notice .section__inner {
    padding: 1em;
  }
  .section--notice .section-heading {
    text-align: left;
  }
}
body.--kakuyasu .section--notice {
  background: #F3FAED;
}
body.--campa .section--notice {
  background: #fff;
}
body.--campa .section--notice .section-heading__text {
  color: #6FBA2C;
}

.section--article .section-heading__box {
  border-bottom: 3px solid #8AC751;
  font-size: 1.06em;
}
.header__inner,
.footer__inner,
.post-content__inner--inner {
  padding-left: 1em;
  padding-right: 1em;
}
@media (max-width: 56rem) {
  .header__inner,
.footer__inner,
.post-content__inner--inner {
    padding-left: 0.6em;
    padding-right: 0.6em;
  }
}

.icon-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.icon-box__icon {
  position: relative;
  width: 3em;
  height: 3em;
}
.icon-box__icon::after {
  position: absolute;
  content: "";
  left: 0;
  top: 50%;
  -webkit-transform: translate(0%, -50%);
          transform: translate(0%, -50%);
  width: 100%;
  height: 100%;
  background-image: url("images/icon-cs.png");
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-size: 1100% 500%;
}
.icon-box__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.icon-box--left {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.icon-box--center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.icon-box--right {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.icon-box .icon-box__content {
  padding-left: 1em;
}
.icon-box .icon-box__content > * {
  color: #6E595E;
  line-height: 1.6;
}
.icon-box--card {
  height: 100%;
  border: 2px solid #c98c50;
  border-radius: 1em;
  padding: 1em;
}

.i-heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  color: #6E595E;
  font-size: 1em;
  padding: 0;
}
.i-heading__text {
  position: relative;
  display: block;
  color: #6E595E;
  font-size: 1.3em;
  font-weight: bold;
  line-height: 1.3;
  letter-spacing: 0.1em;
  padding: 0.35em 0;
  padding-left: 0.35em;
}

.block-link {
  margin-top: 1em;
}
.block-link.-left {
  text-align: left;
}
.block-link.-right {
  text-align: right;
}
.block-link.-center {
  text-align: center;
}
.block-link__button {
  position: relative;
  display: inline-block;
  min-width: 15em;
  color: #6E595E;
  font-weight: bold;
  text-align: center;
  line-height: 1.5;
  padding: 0.35em 1.6em;
  border: 1px solid #6E595E;
  border-radius: 0.4em;
  background: #fff;
  cursor: pointer;
}

.flexbox {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.flexbox--center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.flexbox--column-1 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  width: auto;
  margin-left: -0.5em;
  margin-right: -0.5em;
}
.flexbox--column-1 > * {
  width: 100%;
  padding-left: 0.5em;
  padding-right: 0.5em;
  padding-top: 0;
  padding-bottom: 0;
}
.flexbox--column-2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  width: auto;
  margin-left: -0.5em;
  margin-right: -0.5em;
}
.flexbox--column-2 > * {
  width: 50%;
  padding-left: 0.5em;
  padding-right: 0.5em;
  padding-top: 0;
  padding-bottom: 0;
}
.flexbox--column-3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  width: auto;
  margin-left: -0.5em;
  margin-right: -0.5em;
}
.flexbox--column-3 > * {
  width: 33.3333333333%;
  padding-left: 0.5em;
  padding-right: 0.5em;
  padding-top: 0;
  padding-bottom: 0;
}
.flexbox--column-4 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  width: auto;
  margin-left: -0.5em;
  margin-right: -0.5em;
}
.flexbox--column-4 > * {
  width: 25%;
  padding-left: 0.5em;
  padding-right: 0.5em;
  padding-top: 0;
  padding-bottom: 0;
}
.flexbox--column-5 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  width: auto;
  margin-left: -0.5em;
  margin-right: -0.5em;
}
.flexbox--column-5 > * {
  width: 20%;
  padding-left: 0.5em;
  padding-right: 0.5em;
  padding-top: 0;
  padding-bottom: 0;
}
@media (max-width: 46rem) and (orientation: portrait) {
  .flexbox--column-sp-1 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    list-style: none;
    width: auto;
    margin-left: 0;
    margin-right: 0;
  }
  .flexbox--column-sp-1 > * {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    padding-top: 0;
    padding-bottom: 0;
  }
  .flexbox--column-sp-2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    list-style: none;
    width: auto;
    margin-left: 0;
    margin-right: 0;
  }
  .flexbox--column-sp-2 > * {
    width: 50%;
    padding-left: 0;
    padding-right: 0;
    padding-top: 0;
    padding-bottom: 0;
  }
  .flexbox--column-sp-3 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    list-style: none;
    width: auto;
    margin-left: 0;
    margin-right: 0;
  }
  .flexbox--column-sp-3 > * {
    width: 33.3333333333%;
    padding-left: 0;
    padding-right: 0;
    padding-top: 0;
    padding-bottom: 0;
  }
  .flexbox--column-sp-4 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    list-style: none;
    width: auto;
    margin-left: 0;
    margin-right: 0;
  }
  .flexbox--column-sp-4 > * {
    width: 25%;
    padding-left: 0;
    padding-right: 0;
    padding-top: 0;
    padding-bottom: 0;
  }
  .flexbox--column-sp-5 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    list-style: none;
    width: auto;
    margin-left: 0;
    margin-right: 0;
  }
  .flexbox--column-sp-5 > * {
    width: 20%;
    padding-left: 0;
    padding-right: 0;
    padding-top: 0;
    padding-bottom: 0;
  }
}

.gmap-box {
  position: relative;
  width: 100%;
  padding: 0 0 16em;
  background-color: #F3FAED;
}
.gmap-box iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  border: none;
}
@media (max-width: 46rem) {
  .gmap-box {
    padding: 0 0 60vh;
  }
}

.hero {
  position: relative;
  width: 100%;
  overflow: hidden;
  background-color: #F3FAED;
}
.hero__images {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.hero__images img {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.hero__landscape {
  display: block;
}
.hero__portrait {
  display: none;
}
.hero__inner {
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  left: 50%;
  top: 0;
  width: 100%;
  height: 100%;
  max-width: 82em;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  padding: 1em;
  z-index: 1;
}

.data-list {
  border: 1px solid #E9E6E6;
}
.data-list__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.data-list__item:nth-of-type(n+2) {
  border-top: 1px solid #E9E6E6;
}
.data-list__head {
  width: 25%;
  padding: 0.6em 1em;
  border-right: 1px solid #E9E6E6;
  background: #FAF8F8;
}
.data-list__data {
  width: calc(100% - 25%);
  padding: 0.6em 1em;
}

.qanda {
  color: #6E595E;
}
.qanda__item {
  border: 3px solid #25AFEC;
  border-radius: 0;
  margin-top: 1.6em;
  overflow: hidden;
}
.qanda__entry {
  background: #25AFEC;
  color: #fff;
  position: relative;
  padding-top: 0.3em;
  padding-bottom: 0.3em;
  padding-left: 2.6em;
  padding-right: 2.6em;
}
.qanda__trigger {
  /*		position: absolute;
  		top: 50%;
  		right: 0.3em;
  		transform: translateY(-50%);
  		width: 2em;
  		height: 2em;
  		background: #ff0;
  		cursor: pointer;
  		caret-color: transparent;*/
}
.qanda__question {
  line-height: 1.6;
  padding: 0.3em 1em;
}
.qanda__answer-box {
  line-height: 1.66;
  padding-left: 2.6em;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}
.qanda__answer {
  padding: 1.3em 1em;
}

.map-box {
  position: relative;
  width: 100%;
  height: 45vh;
  background: #f2f1f0;
}
.map-box iframe {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border: none;
}

.taxonomy-links--image .taxonomy-links__box {
  display: block;
  border-radius: 0;
  background: #6c6;
}
.taxonomy-links--image .taxonomy-links__box:hover {
  -webkit-animation: push 0.5s ease-out;
          animation: push 0.5s ease-out;
  opacity: 1;
}
@-webkit-keyframes push {
  0%, 10%, 90% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
  }
}
@keyframes push {
  0%, 10%, 90% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
  }
}
.taxonomy-links--image .taxonomy-links__overlay {
  position: absolute;
  width: 100%;
}
.taxonomy-links--image .taxonomy-links__text {
  position: relative;
  display: block;
  color: #fff;
  font-size: 1em;
  font-weight: bold;
  text-align: center;
}
.taxonomy-links--image .post-image {
  position: relative;
}
.taxonomy-links--image .post-image::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.taxonomy-links .navigator {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.taxonomy-links--flex-2 .navigator {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  width: auto;
  margin-left: -0.2em;
  margin-right: -0.2em;
}
.taxonomy-links--flex-2 .navigator > * {
  width: 50%;
  padding-left: 0.2em;
  padding-right: 0.2em;
  padding-top: 0.2em;
  padding-bottom: 0.2em;
}
.taxonomy-links--flex-3 .navigator {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  width: auto;
  margin-left: -0.2em;
  margin-right: -0.2em;
}
.taxonomy-links--flex-3 .navigator > * {
  width: 33.3333333333%;
  padding-left: 0.2em;
  padding-right: 0.2em;
  padding-top: 0.2em;
  padding-bottom: 0.2em;
}
.taxonomy-links--flex-4 .navigator {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  width: auto;
  margin-left: -0.2em;
  margin-right: -0.2em;
}
.taxonomy-links--flex-4 .navigator > * {
  width: 25%;
  padding-left: 0.2em;
  padding-right: 0.2em;
  padding-top: 0.2em;
  padding-bottom: 0.2em;
}
.taxonomy-links--flex-5 .navigator {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  width: auto;
  margin-left: -0.2em;
  margin-right: -0.2em;
}
.taxonomy-links--flex-5 .navigator > * {
  width: 20%;
  padding-left: 0.2em;
  padding-right: 0.2em;
  padding-top: 0.2em;
  padding-bottom: 0.2em;
}
@media (max-width: 46rem) and (orientation: portrait) {
  .taxonomy-links--sp-flex-2 .navigator {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    list-style: none;
    width: auto;
    margin-left: -0.2em;
    margin-right: -0.2em;
  }
  .taxonomy-links--sp-flex-2 .navigator > * {
    width: 50%;
    padding-left: 0.2em;
    padding-right: 0.2em;
    padding-top: 0.2em;
    padding-bottom: 0.2em;
  }
  .taxonomy-links--sp-flex-3 .navigator {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    list-style: none;
    width: auto;
    margin-left: -0.2em;
    margin-right: -0.2em;
  }
  .taxonomy-links--sp-flex-3 .navigator > * {
    width: 33.3333333333%;
    padding-left: 0.2em;
    padding-right: 0.2em;
    padding-top: 0.2em;
    padding-bottom: 0.2em;
  }
  .taxonomy-links--sp-flex-4 .navigator {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    list-style: none;
    width: auto;
    margin-left: -0.2em;
    margin-right: -0.2em;
  }
  .taxonomy-links--sp-flex-4 .navigator > * {
    width: 25%;
    padding-left: 0.2em;
    padding-right: 0.2em;
    padding-top: 0.2em;
    padding-bottom: 0.2em;
  }
  .taxonomy-links--sp-flex-5 .navigator {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    list-style: none;
    width: auto;
    margin-left: -0.2em;
    margin-right: -0.2em;
  }
  .taxonomy-links--sp-flex-5 .navigator > * {
    width: 20%;
    padding-left: 0.2em;
    padding-right: 0.2em;
    padding-top: 0.2em;
    padding-bottom: 0.2em;
  }
}
body.--kakuyasu .taxonomy-links--image .taxonomy-links__box {
  position: relative;
  width: 100%;
  height: 0;
  padding: 0 0 100%;
  overflow: hidden;
}
body.--kakuyasu .taxonomy-links--image .taxonomy-links__box > img, body.--kakuyasu .taxonomy-links--image .taxonomy-links__box > picture {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}
body.--kakuyasu .taxonomy-links--image .taxonomy-links__box img {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  -o-object-fit: cover;
     object-fit: cover;
}
body.--kakuyasu .taxonomy-links--image .taxonomy-links__overlay {
  top: 45%;
  height: auto;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
body.--kakuyasu .taxonomy-links--image .taxonomy-links__text {
  font-size: 1.25em;
  text-shadow: 1px 1px 6px rgba(0, 0, 0, 0.2), -1px 1px 6px rgba(0, 0, 0, 0.2), 1px -1px 6px rgba(0, 0, 0, 0.2), -1px -1px 6px rgba(0, 0, 0, 0.2);
}
body.--kakuyasu .taxonomy-links--image .taxonomy-links__text::before {
  position: absolute;
  content: "";
  left: 50%;
  top: -2em;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  width: 1.25em;
  height: 1.25em;
  background-image: url("images/icon-cs.png");
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-size: 1100% 500%;
  background-position: 30% 0%;
  -webkit-filter: drop-shadow(1px 1px 6px rgba(0, 0, 0, 0.2)) drop-shadow(-1px 1px 6px rgba(0, 0, 0, 0.2)) drop-shadow(1px -1px 6px rgba(0, 0, 0, 0.2)) drop-shadow(-1px -1px 6px rgba(0, 0, 0, 0.2));
          filter: drop-shadow(1px 1px 6px rgba(0, 0, 0, 0.2)) drop-shadow(-1px 1px 6px rgba(0, 0, 0, 0.2)) drop-shadow(1px -1px 6px rgba(0, 0, 0, 0.2)) drop-shadow(-1px -1px 6px rgba(0, 0, 0, 0.2));
}
body.--kakuyasu .taxonomy-links--image .post-image::after {
  background: #6FBA2C;
  opacity: 0.2;
}

body.--campa .taxonomy-links--image .taxonomy-links__box {
  -webkit-box-shadow: 0 2px 0.5em rgba(0, 0, 0, 0.2);
          box-shadow: 0 2px 0.5em rgba(0, 0, 0, 0.2);
  position: relative;
  width: 100%;
  height: 0;
  padding: 0 0 70%;
  overflow: hidden;
}
body.--campa .taxonomy-links--image .taxonomy-links__box > img, body.--campa .taxonomy-links--image .taxonomy-links__box > picture {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}
body.--campa .taxonomy-links--image .taxonomy-links__box img {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  -o-object-fit: cover;
     object-fit: cover;
}
body.--campa .taxonomy-links--image .taxonomy-links__overlay {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
body.--campa .taxonomy-links--image .taxonomy-links__text {
  z-index: 0;
}
body.--campa .taxonomy-links--image .taxonomy-links__text::before {
  position: absolute;
  content: "";
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 8em;
  height: 8em;
  background-image: url("images/icon-cl.png");
  background-size: 1100% 500%;
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-position: 100% 0%;
  z-index: -1;
}
body.--campa .taxonomy-links--image .post-image::after {
  background: #fff;
  opacity: 0.3;
}

.flyer-image {
  position: relative;
  width: 100%;
}
.flyer-image__box img {
  -webkit-filter: drop-shadow(0 2px 0.5em rgba(0, 0, 0, 0.2));
          filter: drop-shadow(0 2px 0.5em rgba(0, 0, 0, 0.2));
  border-radius: 0.3em;
}
.flyer-image__box:hover img {
  -webkit-animation: push 0.5s ease-out;
          animation: push 0.5s ease-out;
  opacity: 1;
}
@keyframes push {
  0%, 10%, 90% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
  }
}
.flyer-image__image {
  display: block;
  width: 100%;
}
.flyer-image__content {
  line-height: 1.6;
  margin-top: 0.6em;
}
.flyer-image--h-limited {
  max-width: 28.32em;
  margin-left: auto;
  margin-right: auto;
}

.wp-block-lazyblock-flyer-image .flyer-image--full {
  width: 100%;
}

.--anchor {
  position: absolute;
  width: 4px;
  height: 4.8em;
  left: -1px;
  top: -4.8em;
  background: #f00;
  z-index: -1;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-touch-callout: none;
  caret-color: transparent;
}

.--id-home-availabilities .section-heading__box {
  font-size: 1em;
  text-align: center;
}
.--id-home-availabilities .section-heading__text strong {
  font-size: 1.3em;
}
@media (max-width: 46rem) {
  .--id-home-availabilities .avcal-links {
    display: block;
  }
  .--id-home-availabilities .avcal-links__item {
    width: 100%;
  }
}

.section--heading-mark > .section__inner > .section-heading > .section-heading__box {
  position: relative;
  padding-left: 1em;
  color: #6E595E;
}
.section--heading-mark > .section__inner > .section-heading > .section-heading__box::before {
  background: #25AFEC;
  content: "";
  position: absolute;
  display: block;
  top: 50%;
  left: 0;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 0.5em;
  height: 1.2em;
}

.wp-block-table th, .wp-block-table td {
  border: solid 1px #E9E6E6;
  padding: 0.5em;
}
.wp-block-table th {
  background: #FAF8F8;
}
.wp-block-table .has-background th {
  background: inherit;
}

.post-datetime {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  font-size: 0.85em;
  text-align: right;
  margin: 0.6em 0 0 auto !important;
}
.post-datetime dl {
  color: #E9E6E6;
  display: inline-block;
  padding: 0 0.3em;
  border-bottom: 1px solid #ccc;
}
.post-datetime dt {
  clear: left;
  float: left;
  width: auto;
}
.post-datetime dd {
  float: left;
  width: 8em;
}

.head4-style {
  background-color: #25AFEC;
  margin: 1.25em 0 0.25em;
  padding: 0 0.62em;
  border: none;
  border-radius: 0.3em;
  color: #fff !important;
}

.slider {
  position: relative;
  height: auto;
  padding-bottom: 2em;
  overflow: hidden;
  /*	&::after {
  		position: absolute;
  		content: '';
  		left: 0;
  		bottom: 0;
  		width: 100%;
  		height: 0.6em;
  		background: #8B0000;
  	}*/
}
.slider .slick-dots {
  bottom: -2em;
}
.slider .slick-slide .post-image {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
}
.slider .slick-slide .post-image img {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.slider__screen {
  position: relative;
  height: auto;
  width: 100%;
  max-width: 110em;
  margin: 0 auto;
  opacity: 0;
  -webkit-animation: animf_fadein 1s ease-in forwards;
          animation: animf_fadein 1s ease-in forwards;
  background: transparent none no-repeat scroll center center/cover;
}
.slider__aspect {
  padding: 0 0 76%;
  position: relative;
  width: 100%;
  height: 0;
}
@media (max-width: 46rem) and (orientation: portrait) {
  .slider__aspect {
    padding: 0 0 158%;
  }
}
.slider__frame {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.slider__item {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.slider__images {
  position: relative;
  width: 100%;
  height: 100%;
}
.slider__buttons {
  position: absolute;
  left: 83%;
  bottom: 7.4%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.slider__button {
  display: inline-block;
  min-width: 15em;
  color: #fff;
  font-size: 0.89em;
  line-height: 1.6;
  text-align: center;
  padding: 0.3em 1em;
  border-radius: 0.3em;
  background: #8AC751;
  -webkit-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
}
.slider__button:hover {
  background: #649a32;
}
@media (max-width: 46rem) {
  .slider__buttons {
    bottom: 2%;
  }
  .slider__button {
    line-height: 1.1;
    font-size: 0.85em;
  }
}
.slider .wp-block-lazyblock-responsive-image {
  position: relative;
  width: 100%;
  height: 100%;
}

.post-content--home .section .section-heading__box {
  color: #25AFEC;
}
.post-content--home .section.--id-home-pickup .section__inner, .post-content--home .section.--id-home-ranking .section__inner {
  padding-top: 5em;
}
.post-content--home .section.--id-home-pickup .section-heading, .post-content--home .section.--id-home-ranking .section-heading {
  margin-bottom: 1em;
}
.post-content--home .section.--id-home-pickup .section-heading__box, .post-content--home .section.--id-home-ranking .section-heading__box {
  position: relative;
  display: inline;
  padding-left: 3.8em;
}
.post-content--home .section.--id-home-pickup .section-heading__box:after, .post-content--home .section.--id-home-ranking .section-heading__box:after {
  position: absolute;
  content: "";
  left: 0;
  top: inherit;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  width: 4em;
  height: 4em;
  background-image: url("images/icon-cl.png");
  background-size: 1100% 500%;
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-position: 0% 50%;
  bottom: -0.3em;
}
.post-content--home .section.--id-home-pickup .section__content, .post-content--home .section.--id-home-ranking .section__content {
  margin-top: 1em;
}
.post-content--home .section.--id-home-for-women .section__inner, .post-content--home .section.--id-home-popular-area .section__inner, .post-content--home .section.--id-home-reasonable .section__inner, .post-content--home .section.--id-home-participants .section__inner {
  padding-top: 5em;
}
.post-content--home .section.--id-home-for-women .section-heading__box, .post-content--home .section.--id-home-popular-area .section-heading__box, .post-content--home .section.--id-home-reasonable .section-heading__box, .post-content--home .section.--id-home-participants .section-heading__box {
  position: relative;
  display: inline;
  padding-left: 3.8em;
}
.post-content--home .section.--id-home-for-women .section-heading__box:after, .post-content--home .section.--id-home-popular-area .section-heading__box:after, .post-content--home .section.--id-home-reasonable .section-heading__box:after, .post-content--home .section.--id-home-participants .section-heading__box:after {
  position: absolute;
  content: "";
  left: 0;
  top: inherit;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  width: 4em;
  height: 4em;
  background-image: url("images/icon-cl.png");
  background-size: 1100% 500%;
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-position: 10% 50%;
  bottom: -0.3em;
}
.post-content--home .section.--id-home-for-women .section__content, .post-content--home .section.--id-home-popular-area .section__content, .post-content--home .section.--id-home-reasonable .section__content, .post-content--home .section.--id-home-participants .section__content {
  margin-top: 1em;
}
.post-content--home .section.--id-home-news .section__inner {
  padding-top: 5em;
}
.post-content--home .section.--id-home-news .section-heading__box {
  position: relative;
  display: inline;
  padding-left: 3.8em;
}
.post-content--home .section.--id-home-news .section-heading__box:after {
  position: absolute;
  content: "";
  left: 0;
  top: inherit;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  width: 4em;
  height: 4em;
  background-image: url("images/icon-cl.png");
  background-size: 1100% 500%;
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-position: 20% 50%;
  bottom: -0.3em;
}
.post-content--home .section.--id-home-news .section__content {
  margin-top: 1em;
}
.post-content--home .section.--id-home-slider {
  padding: 0;
}
.post-content--home .section.--id-home-slider .section__inner {
  padding-left: 0;
  padding-right: 0;
}
.post-content--home .section.--id-home-ranking .section__content {
  margin-top: 0;
}
.post-content--home .section.section--none.section.--id-home-for-women .section-heading__box, .post-content--home .section.section--none.section.--id-home-popular-area .section-heading__box, .post-content--home .section.section--none.section.--id-home-reasonable .section-heading__box, .post-content--home .section.section--none.section.--id-home-participants .section-heading__box {
  -webkit-filter: drop-shadow(0 2px 0.2em rgba(0, 0, 0, 0.2));
          filter: drop-shadow(0 2px 0.2em rgba(0, 0, 0, 0.2));
}

button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
}

input::-webkit-input-placeholder {
  color: #bbb;
}

input::-moz-placeholder {
  color: #bbb;
}

input:-ms-input-placeholder {
  color: #bbb;
}

input::-ms-input-placeholder {
  color: #bbb;
}

input::placeholder {
  color: #bbb;
}

input[type=button],
input[type=submit],
button,
.wp-block-button__link,
.button-style {
  border-radius: 0.1875em;
  position: relative;
  display: inline-block;
  min-width: 13.2075471698em;
  max-width: 100%;
  height: auto;
  color: #fff;
  font-size: 1.06em;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.05em;
  background: #8AC751;
  -webkit-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
  border: none;
  padding: 0.3301886792em 1.5094339623em;
  margin-top: 1.5094339623em;
  -webkit-box-shadow: none;
          box-shadow: none;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  /* Non-prefixed version, currently */
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
@media (max-width: 28rem) {
  input[type=button],
input[type=submit],
button,
.wp-block-button__link,
.button-style {
    min-width: 11.320754717em;
  }
}
input[type=button]:hover,
input[type=submit]:hover,
button:hover,
.wp-block-button__link:hover,
.button-style:hover {
  -webkit-animation: push 0.5s ease-out;
          animation: push 0.5s ease-out;
  opacity: 1;
}
@keyframes push {
  0%, 10%, 90% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
  }
}
input[type=button].-disabled,
input[type=submit].-disabled,
button.-disabled,
.wp-block-button__link.-disabled,
.button-style.-disabled {
  background: #bbb;
  cursor: auto;
}
input[type=button].-disabled:hover,
input[type=submit].-disabled:hover,
button.-disabled:hover,
.wp-block-button__link.-disabled:hover,
.button-style.-disabled:hover {
  background: #bbb;
}

.wp-block-buttons .wp-block-button {
  margin: 0;
}

.--ui-style {
  /*	input[type=radio] + span:hover,
  	input[type=checkbox] + span:hover {
  	//	background-color: #f8f8f8;
  	}*/
}
.--ui-style input,
.--ui-style select,
.--ui-style textarea {
  width: 100%;
  line-height: 1.5;
  padding: 0.35em 0.6em;
}
.--ui-style input {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.--ui-style select {
  -webkit-appearance: auto;
     -moz-appearance: auto;
          appearance: auto;
}
.--ui-style input:not([type=submit]),
.--ui-style select,
.--ui-style textarea {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #fff;
  border: 1px solid #C7CCCE;
  border-radius: 0;
}
.--ui-style input,
.--ui-style select {
  height: 2.5em;
  border-radius: 0.1875em;
}
@media (max-width: 70rem) {
  .--ui-style input,
.--ui-style select,
.--ui-style textarea {
    font-size: initial !important;
  }
}
.--ui-style textarea {
  display: block;
  min-height: 3em;
  resize: vertical;
}
.--ui-style fieldset {
  display: contents;
  padding: 0;
  margin: 0;
  border: none;
}
.--ui-style legend {
  width: 100%;
  margin: 0 auto;
}
.--ui-style table {
  border: none;
  border-collapse: collapse;
}
.--ui-style table .pt0 {
  padding-top: 0;
}
.--ui-style table .pt1 {
  padding-top: 0.6em;
}
.--ui-style table .pt2 {
  padding-top: 1em;
}
.--ui-style table .pt3 {
  padding-top: 1.6em;
}
.--ui-style input.--readonly {
  color: #E9E6E6;
}
.--ui-style .msg.red {
  color: #ED2633;
}
.--ui-style label._radio,
.--ui-style label._checkbox {
  position: relative;
  display: inline-block;
}
.--ui-style label._radio.-block,
.--ui-style label._checkbox.-block {
  display: block;
}
.--ui-style label._radio {
  min-width: 5em;
}
.--ui-style input[type=radio],
.--ui-style input[type=checkbox] {
  position: absolute;
  opacity: 0;
  left: 0;
  bottom: 0;
}
.--ui-style input[type=radio] + span,
.--ui-style input[type=checkbox] + span {
  position: relative;
  display: inline-block;
  vertical-align: baseline;
  line-height: 1.5;
  margin-right: 0.3em;
  padding: 0.5em 0.6em 0.5em 1.6em;
  -webkit-transition: background-color 0.1s linear;
  transition: background-color 0.1s linear;
  cursor: pointer;
}
.--ui-style input[type=radio] + span:after,
.--ui-style input[type=checkbox] + span:after {
  border-color: #036eb8;
}
.--ui-style input[type=radio] + span:after,
.--ui-style input[type=checkbox] + span:after {
  position: absolute;
  content: "";
  display: block;
  top: 50%;
  left: 0.4em;
  width: 1em;
  height: 1em;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background: #fff;
  border: 2px solid #bbb;
  border-radius: 25%;
  -webkit-transition: border-color 0.1s linear;
  transition: border-color 0.1s linear;
}
.--ui-style input[type=radio] + span:after {
  border-radius: 50%;
}
.--ui-style input[type=radio] + span:before {
  position: absolute;
  content: "";
  display: block;
  top: 50%;
  left: 0.6em;
  width: 0.6em;
  height: 0.6em;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  border-radius: 50%;
  background-color: #036eb8;
  opacity: 0;
  -webkit-transition: opacity 0.1s linear;
  transition: opacity 0.1s linear;
  z-index: 1;
}
.--ui-style input[type=radio]:checked + span:before {
  opacity: 1;
}
.--ui-style input[type=checkbox] + span:before {
  position: absolute;
  content: "";
  display: block;
  top: 50%;
  left: 0.5em;
  width: 0.4em;
  height: 0.8em;
  margin-top: -0.2em;
  border-right: 0.23em solid #036eb8;
  border-bottom: 0.23em solid #036eb8;
  opacity: 0;
  -webkit-transform: rotate(45deg) translateY(-50%);
  transform: rotate(45deg) translateY(-50%);
  -webkit-transition: opacity 0.1s linear;
  transition: opacity 0.1s linear;
  z-index: 1;
}
.--ui-style input[type=checkbox]:checked + span:before {
  opacity: 1;
}
.--ui-style label.switch {
  position: relative;
  /*		input[type=checkbox] + span:hover {
  		//	background-color: #f8f8f8;
  		}*/
}
.--ui-style label.switch input[type=checkbox] + span {
  position: relative;
  margin: 0;
  height: 0;
  padding: 0.8em 1.3em;
  border: 3px solid #bbb;
  border-radius: 1em;
  -webkit-transition: border-color 0.1s linear;
  transition: border-color 0.1s linear;
  cursor: pointer;
}
.--ui-style label.switch input[type=checkbox]:checked + span {
  border-color: #036eb8;
}
.--ui-style label.switch input[type=checkbox] + span:after {
  position: absolute;
  content: "";
  display: block;
  background: #bbb;
  top: 0;
  left: 0;
  width: 1.6em;
  height: 1.6em;
  -webkit-transform: none;
          transform: none;
  border: none;
  border-radius: 100%;
  -webkit-transition: all 0.1s linear;
  transition: all 0.1s linear;
}
.--ui-style label.switch input[type=checkbox]:checked + span:after {
  background: #036eb8;
  -webkit-transform: translateX(1em);
          transform: translateX(1em);
}
.--ui-style label.switch input[type=checkbox] + span:before {
  content: none;
}
.--ui-style label.switch input[type=checkbox]:checked + span:before {
  content: none;
}
.--ui-style .tab_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  border-bottom: 2px solid #036eb8;
  margin: 1.6em auto 0;
}
.--ui-style label.tab_style {
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  /*		input[type=radio] + span:hover,
  		input[type=checkbox] + span:hover {
  		//	background-color: #f8f8f8;
  		}*/
}
.--ui-style label.tab_style input[type=radio] + span,
.--ui-style label.tab_style input[type=checkbox] + span {
  position: relative;
  display: block;
  color: #036eb8;
  font-weight: bold;
  text-align: center;
  -webkit-transition: background-color 0.1s linear;
  transition: background-color 0.1s linear;
  background: #eee;
  margin: 0;
  padding: 0.6em;
  cursor: pointer;
}
.--ui-style label.tab_style input[type=radio]:checked + span {
  background: #036eb8;
  color: #fff;
}
.--ui-style label.tab_style input[type=radio] + span:after,
.--ui-style label.tab_style input[type=checkbox] + span:after {
  border: none;
}
.--ui-style label.tab_style input[type=radio] + span:after,
.--ui-style label.tab_style input[type=checkbox] + span:after {
  content: none;
}
.--ui-style label.tab_style input[type=radio] + span:after {
  border: none;
}
.--ui-style label.tab_style input[type=radio] + span:before {
  content: none;
}
.--ui-style label.tab_style input[type=radio]:checked + span:before {
  opacity: 1;
}
.--ui-style label.tab_style input[type=checkbox] + span:before {
  content: none;
}
.--ui-style label.tab_style input[type=checkbox]:checked + span:before {
  opacity: 1;
}
.--ui-style.--readonly input:not([type=submit]),
.--ui-style.--readonly textarea,
.--ui-style.--readonly select {
  background: #f8f8f8;
}
.--ui-style.--readonly input[type=radio] + span,
.--ui-style.--readonly input[type=checkbox] + span {
  cursor: default;
  background: transparent;
}

.hamburger-button {
  background: #6FBA2C;
  border-radius: 0.3em;
  width: 2.8em;
  height: 2.8em;
  cursor: pointer;
  caret-color: transparent;
}
@media (max-width: 28rem) {
  .hamburger-button {
    font-size: 0.92em;
  }
}
.hamburger-button span {
  background-color: #fff;
  position: absolute;
  left: 50%;
  width: 5px;
  height: 5px;
  border-radius: 2px;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.hamburger-button span:nth-of-type(1) {
  top: 25%;
}
.hamburger-button span:nth-of-type(2) {
  top: 50%;
  -webkit-transition: all 0.1s;
  transition: all 0.1s;
}
.hamburger-button span:nth-of-type(3) {
  top: 75%;
}
.hamburger-button.--ui--active {
  width: 2.8em;
  height: 2.8em;
  background: rgba(111, 186, 44, 0.4);
  border-radius: 0;
}
.hamburger-button.--ui--active span {
  left: 50%;
  width: 70%;
  height: 3px;
  color: #FAF8F8;
}
.hamburger-button.--ui--active span:nth-of-type(1) {
  top: 50%;
  -webkit-animation: active-menu_bar_01 0.5s forwards;
          animation: active-menu_bar_01 0.5s forwards;
}
.hamburger-button.--ui--active span:nth-of-type(2) {
  display: none;
  -webkit-animation: active-menu_bar_02 0.5s forwards;
          animation: active-menu_bar_02 0.5s forwards;
}
.hamburger-button.--ui--active span:nth-of-type(3) {
  top: 50%;
  -webkit-animation: active-menu_bar_03 0.5s forwards;
          animation: active-menu_bar_03 0.5s forwards;
}

@-webkit-keyframes active-menu_bar_01 {
  0% {
    -webkit-transform: translate(-50%, -50%) rotate(0);
            transform: translate(-50%, -50%) rotate(0);
  }
  50% {
    -webkit-transform: translate(-50%, -50%) rotate(0);
            transform: translate(-50%, -50%) rotate(0);
  }
  100% {
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
            transform: translate(-50%, -50%) rotate(45deg);
  }
}

@keyframes active-menu_bar_01 {
  0% {
    -webkit-transform: translate(-50%, -50%) rotate(0);
            transform: translate(-50%, -50%) rotate(0);
  }
  50% {
    -webkit-transform: translate(-50%, -50%) rotate(0);
            transform: translate(-50%, -50%) rotate(0);
  }
  100% {
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
            transform: translate(-50%, -50%) rotate(45deg);
  }
}
@-webkit-keyframes active-menu_bar_02 {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  60% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes active-menu_bar_02 {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  60% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes active-menu_bar_03 {
  0% {
    -webkit-transform: translate(-50%, -50%) rotate(0);
            transform: translate(-50%, -50%) rotate(0);
  }
  50% {
    -webkit-transform: translate(-50%, -50%) rotate(0);
            transform: translate(-50%, -50%) rotate(0);
  }
  100% {
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
            transform: translate(-50%, -50%) rotate(-45deg);
  }
}
@keyframes active-menu_bar_03 {
  0% {
    -webkit-transform: translate(-50%, -50%) rotate(0);
            transform: translate(-50%, -50%) rotate(0);
  }
  50% {
    -webkit-transform: translate(-50%, -50%) rotate(0);
            transform: translate(-50%, -50%) rotate(0);
  }
  100% {
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
            transform: translate(-50%, -50%) rotate(-45deg);
  }
}
.back-to-top {
  position: fixed;
  width: 100%;
  height: 4.2em;
  bottom: 0;
  left: 0;
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.2s ease, visibility 0s ease 0.2s;
  transition: all 0.2s ease, visibility 0s ease 0.2s;
  z-index: 1000;
}
@media (max-width: 46rem) {
  .back-to-top {
    height: 4.2em;
    -webkit-transform: translateY(100%);
            transform: translateY(100%);
  }
}
.back-to-top__inner {
  position: relative;
  width: 96%;
  max-width: 82em;
  margin-left: auto;
  margin-right: auto;
  height: 100%;
}
@media (max-width: 70rem) {
  .back-to-top__inner {
    width: 97%;
  }
}
@media (max-width: 46rem) {
  .back-to-top__inner {
    width: 98%;
  }
}
.back-to-top__button {
  position: absolute;
  right: 0;
  top: -50%;
  width: 2.8em;
  height: 2.8em;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
  border-radius: 0.4em;
  background: #171c61;
  opacity: 1;
  cursor: pointer;
}
.back-to-top__button span {
  position: absolute;
  content: "";
  left: 50%;
  top: 50%;
  width: 42%;
  height: 42%;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: translate(-50%, -30%) rotate(-45deg);
          transform: translate(-50%, -30%) rotate(-45deg);
}
.back-to-top--show {
  opacity: 1;
  visibility: visible;
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}
.back-to-top:hover .back-to-top__button {
  background: #69a234;
}

.navigator {
  line-height: 1.3;
}
.navigator__list {
  list-style: none;
}
.navigator__node.-node_state--has_icon {
  display: inline-block;
}
.navigator__node.-node_state--has_icon + .navigator__node.-node_state--has_icon {
  padding-left: 0;
}
.navigator__item {
  position: relative;
  display: block;
  /*		&--has_accordion {
  			padding-right: 2em;
  		}
  		&_accordion_trigger {
  			position: absolute;
  			top: 0;
  			right: 0;
  			width: 2em;
  			height: 100%;
  			border: 2px solid #f00;
  			border-radius: 100%;
  			z-index: 1;
  			cursor: pointer;
  		}*/
}
.navigator__item--label, .navigator__item--link {
  display: inline-block;
  padding: 0.15em 0;
}
.navigator__item--icon {
  display: inline-block;
  width: 1.75em;
  height: auto;
  color: #fff;
  font-size: 1.75em;
  line-height: 1;
  text-align: center;
}
.navigator__link:hover {
  -webkit-animation: push 0.5s ease-out;
          animation: push 0.5s ease-out;
  opacity: 1;
}
@keyframes push {
  0%, 10%, 90% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
  }
}

.navigation {
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  padding: 0.6em 0;
  margin: 1.6em 0 0;
}
.navigation .previous-entries a,
.navigation .next-entries a {
  position: relative;
  font-size: 0.89em;
  color: #003DC6;
  text-decoration: underline;
  padding: 1em 1.6em;
}
.navigation .previous-entries a {
  float: left;
  width: 50%;
}
.navigation .next-entries a {
  float: right;
  width: 50%;
}
.navigation .previous-entries a::after {
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  left: 0;
  top: calc(50% - 0.5em);
  border-top: 0.6em solid transparent;
  border-right: 0.6em solid #ccc;
  border-bottom: 0.6em solid transparent;
}
.navigation .next-entries a::after {
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  right: 0;
  top: calc(50% - 0.5em);
  border-left: 0.6em solid #ccc;
  border-top: 0.6em solid transparent;
  border-bottom: 0.6em solid transparent;
}
.navigation .previous-entries a::before {
  position: absolute;
  content: "";
  width: 1px;
  height: 100%;
  top: 0;
  right: -1px;
  background: #ccc;
}
.navigation .next-entries a::before {
  position: absolute;
  content: "";
  width: 1px;
  height: 100%;
  top: 0;
  left: -1px;
  background: #ccc;
}

.breadcrumb {
  background: #fff;
  line-height: 1.3;
  margin-top: 1em;
  border-radius: 0;
  padding: 0.6em;
}
.breadcrumb__list {
  list-style: none;
  font-size: 0.85em;
  padding: 0;
}
.breadcrumb__node {
  position: relative;
  display: inline-block;
  margin-right: 1em;
}
.breadcrumb__node::after {
  position: absolute;
  content: "";
  left: auto;
  right: -0.7em;
  top: 50%;
  bottom: auto;
  width: 0.66em;
  height: 0.66em;
  border-top: 1px solid #E9E6E6;
  border-right: 1px solid #E9E6E6;
  background: transparent;
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
}
.breadcrumb__node:last-of-type {
  margin-right: 0;
}
.breadcrumb__node:last-of-type::after {
  content: none;
}
.breadcrumb__item {
  position: relative;
  display: inline-block;
  color: #6E595E;
  padding: 0.3em 0.3em;
}
.breadcrumb__item span {
  display: inline-block;
  color: #E9E6E6;
}
.breadcrumb__item--link {
  display: block;
}
.breadcrumb__item--link span {
  color: #2562EC;
  background-image: -webkit-gradient(linear, left top, right top, from(#2562EC), to(#2562EC));
  background-image: -webkit-linear-gradient(left, #2562EC 0%, #2562EC 100%);
  background-image: linear-gradient(90deg, #2562EC 0%, #2562EC 100%);
  background-size: 100% 1px;
  background-repeat: no-repeat;
  background-position: left bottom 1px;
}

.pagination {
  text-align: left;
}
.pagination ul.page-numbers {
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.pagination ul.page-numbers a,
.pagination ul.page-numbers span {
  display: block;
  width: 2.6em;
  color: #fff;
  font-weight: bold;
  line-height: 2.3;
  text-align: center;
  background: #8AC751;
  -webkit-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
  margin-right: 0.6em;
}
.pagination ul.page-numbers a.dots,
.pagination ul.page-numbers span.dots {
  color: #8AC751;
  background: transparent;
  font-weight: bold;
  border: none;
}
.pagination ul.page-numbers a.current,
.pagination ul.page-numbers span.current {
  color: #8AC751;
  background: transparent;
  -webkit-box-shadow: 0 0 0 2px #8AC751 inset;
          box-shadow: 0 0 0 2px #8AC751 inset;
}
.pagination ul.page-numbers a.prev,
.pagination ul.page-numbers span.prev {
  min-width: 4em;
}
.pagination ul.page-numbers a.next,
.pagination ul.page-numbers span.next {
  min-width: 4em;
}
.pagination a:hover {
  background: #649a32;
}

.search-form {
  max-width: 44em;
  margin-left: auto;
  margin-right: auto;
}
.search-form__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  border-radius: 0;
  overflow: hidden;
}
.search-form__box input:not([type=submit]),
.search-form__box select,
.search-form__box textarea {
  position: relative;
  width: calc(100% - 2.6em);
  max-width: none;
  line-height: 1.3;
  padding: 0.45em 0.6em;
  border-radius: 0;
}
.search-form__box [type=submit] {
  width: 2.6em;
  min-width: 2.6em;
  font-size: 1em;
  line-height: 1.1;
  border-radius: 0;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
  position: relative;
  border: none;
  padding: 0;
  margin: 0;
  cursor: pointer;
}
.search-form__box [type=submit]::before, .search-form__box [type=submit]::after {
  border-color: #fff;
}
.search-form__box [type=submit]::after {
  background-color: #fff;
}
.search-form__box [type=submit]:hover {
  background: #69a234;
}

.-imagepop_trigger {
  cursor: pointer;
}

.gmap_trigger {
  color: #14f;
  cursor: pointer;
}

.main-popup {
  contain: strict;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1000;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.2s, visibility 0s ease 1s;
  transition: opacity 0.2s, visibility 0s ease 1s;
}
.main-popup__overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.5);
}
.main-popup.--ui--active {
  opacity: 1;
  visibility: visible;
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}

.modal-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.lightbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  height: 100%;
  background: rgba(0, 255, 0, 0.3);
  margin: 0 auto;
  padding: 2.6em 0 4em;
  pointer-events: none;
}
.lightbox ._frame {
  position: relative;
  max-width: 96%;
  margin: 0 auto;
  -webkit-box-shadow: 0 0 0 2px #ee4 inset;
          box-shadow: 0 0 0 2px #ee4 inset;
}
.lightbox ._composite {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.4em;
  background: #fff;
}
.lightbox ._image_box img {
  display: block;
  max-width: 100%;
  height: auto;
}
.lightbox ._text {
  margin-top: 0.4em;
  line-height: 1.5;
}
.lightbox.-landscape {
  padding: 2.6em 0 4em;
}
.lightbox.-portrait {
  padding: 2.6em 0 4em;
}

body.--fixed {
  position: fixed;
  width: 100%;
  overflow-y: scroll;
}
body.--fixed.logged-in {
  padding-top: 32px;
}
@media screen and (max-width: 782px) {
  body.--fixed.logged-in {
    padding-top: 46px;
  }
}

.header {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 4.2em;
  background: #FBFFE5;
  z-index: 30;
}
body.logged-in .header {
  top: 32px;
}
@media (max-width: 46rem) {
  body.logged-in .header {
    top: 46px;
  }
}

.header__inner {
  display: block;
  width: 100%;
  max-width: 82em;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 0.3em;
  padding-bottom: 0.3em;
}
.header__flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.header__logo-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.header__catch {
  display: block;
  width: 100%;
  font-size: 0.8em;
  font-weight: bold;
  line-height: 1.3;
  text-align: center;
  color: #FDAC3D;
}
.header__logo-image {
  display: block;
  width: auto;
  height: auto;
}
.header__logo-image img {
  display: block;
  height: 2.6em;
  width: auto;
}
.header__icons {
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding-right: 3.6em;
}
.header__item {
  display: block;
  margin-right: 0.6em;
}
.header__icon {
  width: 3.6em;
  height: 3.6em;
  display: block;
  position: relative;
}
.header__icon::after {
  position: absolute;
  content: "";
  left: 0;
  top: 50%;
  -webkit-transform: translate(0%, -50%);
          transform: translate(0%, -50%);
  width: 100%;
  height: 100%;
  background-image: url("images/icon-cs.png");
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-size: 1100% 500%;
}
.header__icon--tel::after {
  background-position: 20% 0%;
}
.header__icon--mailus::after {
  background-position: 10% 0%;
}
.header.section--wave-bottom {
  padding-top: 0;
  padding-bottom: 0;
  margin-bottom: 0 !important;
}
@media (max-width: 46rem) {
  .header.section--wave-bottom::after {
    height: 2em;
    left: 0;
    bottom: -1.8em;
  }
}

.header-nav {
  line-height: 1.3;
  text-align: center;
  margin-bottom: -0.15em;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 0;
}
.header-nav__overlay {
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.5s ease, visibility 0s ease 0.5s;
  transition: all 0.5s ease, visibility 0s ease 0.5s;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(1, 1, 1, 0.5);
  z-index: 1;
}
.header-nav__box {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.header-nav__menu > .navigator__node > .navigator__nodelist {
  margin-right: -0.6em;
}
.header-nav--right .header-nav__box {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.header-nav--right .navigator {
  margin-right: -0.5em;
}
.header-nav__box {
  position: fixed;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: 30em;
  right: -30em;
  top: 0;
  height: 100%;
  padding: 3em 1em 1em;
  background-color: #FAF8F8;
  -webkit-box-shadow: 0 0 0.6em rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 0.6em rgba(0, 0, 0, 0.1);
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  overflow-y: auto;
  z-index: 2;
}
@media (max-width: 46rem) {
  .header-nav__box {
    width: 24rem;
    right: -24rem;
  }
}
@media (max-width: 28rem) {
  .header-nav__box {
    width: 20rem;
    right: -20rem;
  }
}
.header-nav.--ui--active .header-nav__box {
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
}
.header-nav.--ui--active .header-nav__overlay {
  opacity: 1;
  visibility: visible;
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}

.navigator.header__drawer .navigator__item {
  display: block;
}
.navigator.header__drawer .navigator__link,
.navigator.header__drawer .navigator__label {
  display: block;
  color: #8AC751;
  font-size: 0.89em;
  font-weight: bold;
  line-height: 3.4;
}
.navigator.header__drawer .navigator__icon {
  display: block;
  position: relative;
  padding: 4.2em 0.6em 0.45em;
  font-size: 1.125em;
}
.navigator.header__drawer .navigator__icon::before {
  position: absolute;
  content: "";
  left: 50%;
  top: 0;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  width: 4.2em;
  height: 4.2em;
  background-image: url("images/icon-cl.png");
  background-size: 1100% 500%;
  background-repeat: no-repeat;
  background-attachment: scroll;
}
.navigator.header__drawer .navigator__icon.navigator__item--reservation::before {
  background-position: 70% 0%;
}
.navigator.header__drawer .navigator__icon.navigator__item--mailus::before {
  background-position: 80% 0%;
}
.navigator.header__drawer .navigator__icon:hover {
  -webkit-animation: push 0.5s ease-out;
          animation: push 0.5s ease-out;
  opacity: 1;
}
@keyframes push {
  0%, 10%, 90% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
  }
}
.navigator.header__drawer .navigator__icon-text {
  display: block;
  text-align: center;
  font-weight: bold;
  line-height: 1.3;
}
.navigator.header__drawer .navigator__node {
  position: relative;
  display: block;
}
.navigator.header__drawer .navigator__node .navigator__list {
  padding: 1em 0;
}
.navigator.header__drawer .navigator__node--has-border::after {
  content: "";
  display: block;
  background: rgba(111, 186, 44, 0.4);
  width: 100%;
  height: 4px;
  border-radius: 2px;
}
.navigator.header__drawer .navigator__node--box-icons .navigator__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  width: auto;
  margin-left: -0.6em;
  margin-right: -0.6em;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.navigator.header__drawer .navigator__node--box-icons .navigator__list > * {
  width: 50%;
  padding-left: 0.6em;
  padding-right: 0.6em;
  padding-top: 0;
  padding-bottom: 0;
}
.navigator.header__drawer .navigator__node--box-icons .navigator__list > * {
  max-width: 10em;
}
.navigator.header__drawer .navigator__node--box-icons .navigator__link {
  color: #fff;
  background: #8AC751;
}
.navigator.header__drawer .navigator__node--box-tags .navigator__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  width: auto;
  margin-left: -0.6em;
  margin-right: -0.6em;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.navigator.header__drawer .navigator__node--box-tags .navigator__list > * {
  width: 50%;
  padding-left: 0.6em;
  padding-right: 0.6em;
  padding-top: 0;
  padding-bottom: 0;
}
.navigator.header__drawer .navigator__node--box-tags .navigator__list > * {
  max-width: 10em;
}
.navigator.header__drawer .navigator__node--box-tags .navigator__node {
  padding-top: 0.4em;
  padding-bottom: 0.4em;
}
.navigator.header__drawer .navigator__node--box-tags .navigator__link {
  max-width: 100%;
  height: auto;
  color: #fff;
  font-size: 1.06em;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.1em;
  background: #8AC751;
  -webkit-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
  border: none;
  border-radius: 1.6em;
  padding: 0.3301886792em 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  /* Non-prefixed version, currently */
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
body.--campa .header {
  background: #FBFFE5;
}

.footer {
  padding: 1em 0;
  color: #FBFFE5;
  position: relative;
  text-align: center;
  overflow: hidden;
  background: #6FBA2C;
}
.footer-menu-box {
  border-top: solid 4px;
}
.footer-menu-box .navigator {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  width: auto;
  margin-left: -0.5em;
  margin-right: -0.5em;
  width: 100%;
  text-align: left;
  line-height: 1.33;
  padding-bottom: 1.6em;
}
.footer-menu-box .navigator > * {
  width: 25%;
  padding-left: 0.5em;
  padding-right: 0.5em;
  padding-top: 0;
  padding-bottom: 0;
}
.footer-menu-box .navigator > .footer-menu-box .navigator__node {
  margin-left: -0.3em;
}
.footer-menu-box .navigator .footer-menu-box .navigator__list--level-sub {
  padding-left: 1em;
  margin-top: 0.45em;
}
.footer-menu-box .navigator .footer-menu-box .navigator__link,
.footer-menu-box .navigator .footer-menu-box .navigator__label {
  display: block;
  color: #6E595E;
  padding: 0.3em;
}
.footer-menu-box .navigator__item {
  color: #fff;
  text-align: center;
  font-size: 0.9em;
  font-weight: 700;
}
@media (max-width: 56rem) {
  .footer-menu-box .navigator {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    list-style: none;
    width: auto;
    margin-left: 0;
    margin-right: 0;
  }
  .footer-menu-box .navigator > * {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    padding-top: 0;
    padding-bottom: 0;
  }
  .footer-menu-box .navigator > .footer-menu-box .navigator__node {
    margin-left: 0;
  }
  .footer-menu-box .navigator.footer-menu-box .navigator__list--level-top > .footer-menu-box .navigator__node {
    margin-top: 0.3em;
  }
  .footer-menu-box .navigator .footer-menu-box .navigator__list--level-sub {
    margin-top: 0;
  }
  .footer-menu-box .navigator .footer-menu-box .navigator__link,
.footer-menu-box .navigator .footer-menu-box .navigator__label {
    padding: 0.35em 0.3em;
    margin-left: -0.3em;
  }
}

.footer-menu__node > * {
  margin-top: 1em;
}
.footer-menu__item {
  font-size: 0.89em;
  font-weight: bold;
}

.footer-copyright {
  margin-top: 3em;
}
.footer-copyright small {
  display: block;
  font-size: 0.8em;
}

.section--aside {
  position: relative;
  border-radius: 0;
}
.section--aside .section__inner {
  padding: 1.2em 0.6em !important;
}
.section--aside .section__content {
  margin: 0;
}
.section--aside .section-heading {
  margin-bottom: 1em;
  font-size: 1.06em;
}
.section--aside .section-heading__box {
  display: block;
}
.section--aside .section-heading__text {
  color: #6FBA2C;
  display: block;
  font-size: 0.8em;
  font-weight: 700;
}
@media (max-width: 70rem) {
  .section--aside {
    margin-top: 3.2em;
  }
}

.flexbox--aside-areas {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.flexbox--aside-areas > *:nth-child(0n+1) {
  width: 45%;
  padding-left: 1.1em;
  padding-right: 1.1em;
}
.flexbox--aside-areas > *:nth-child(0n+2) {
  width: 55%;
  padding-right: 0.8em;
  padding-left: 0;
}
@media (max-width: 70rem) {
  .flexbox--aside-areas {
    margin: auto;
  }
  .flexbox--aside-areas > *:nth-child(0n+1) {
    width: 30%;
    margin-bottom: 1.5em;
  }
  .flexbox--aside-areas > *:nth-child(0n+2) {
    width: 100%;
    padding-right: 0;
  }
}

.taxonomy-links--aside-areas .navigator {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.taxonomy-links--aside-areas .navigator__node {
  margin-right: 0.3em;
  margin-bottom: 0.6em;
}
.taxonomy-links--aside-areas .navigator__link {
  display: block;
  line-height: 1.3;
  letter-spacing: 0;
  padding: 0.3em 0.6em;
  background: #8AC751;
  color: #fff;
  border-radius: 0.1875em;
}
@media (max-width: 70rem) {
  .taxonomy-links--aside-areas .navigator__link {
    padding: 1em 1.8em;
  }
}

@media (max-width: 70rem) {
  .section--aside.section--women {
    display: none;
  }
}

.taxonomy-links--aside-women .navigator__link {
  display: block;
  padding: 0.3em 0.6em;
  border: 1px solid #444;
}
.taxonomy-links--aside-women .taxonomy-links__text {
  font-size: 0.7em;
}
.aside-school-nav__link {
  display: block;
  line-height: 1.3;
  padding: 0.3em;
}
body.--show-css-guide .aside-school-nav__link {
  -webkit-box-shadow: 0 0 0 1px #a4a inset;
          box-shadow: 0 0 0 1px #a4a inset;
}

@media (max-width: 70rem) {
  .aside-school-nav__link {
    padding: 1em 0.3em;
  }
}
.aside-school-nav__list {
  width: 100%;
}
.aside-school-nav__list--level-2 > .aside-school-nav__node {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: 100%;
}
body.--show-css-guide .aside-school-nav__list--level-2 > .aside-school-nav__node {
  -webkit-box-shadow: 0 0 0 2px #4a4 inset;
          box-shadow: 0 0 0 2px #4a4 inset;
}

.aside-school-nav__list--level-2 > .aside-school-nav__node > .aside-school-nav__item {
  color: #6FBA2C;
  position: relative;
  padding-left: 0.5em;
  width: 6em;
  font-weight: 700;
  font-size: 1.06em;
}
.aside-school-nav__list--level-2 > .aside-school-nav__node > .aside-school-nav__item ::before {
  background: #6FBA2C;
  content: "";
  position: absolute;
  display: block;
  left: 0;
  width: 0.3em;
  height: 1.2em;
}
.aside-school-nav__list--level-2 > .aside-school-nav__node > .aside-school-nav__item:hover {
  -webkit-animation: push 0.5s ease-out;
          animation: push 0.5s ease-out;
  opacity: 1;
}
@keyframes push {
  0%, 10%, 90% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
  }
}
.aside-school-nav__list--level-3 {
  width: calc(100% - 6em);
}
.aside-school-nav__list--level-3 li {
  border-radius: 0.1875em;
  background: #8AC751;
  color: #fff;
  text-align: center;
  margin-bottom: 1em;
}
.aside-school-nav__list--level-3 li:hover {
  -webkit-animation: push 0.5s ease-out;
          animation: push 0.5s ease-out;
  opacity: 1;
}
@keyframes push {
  0%, 10%, 90% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
  }
}

.-form_widget {
  max-width: 53em;
  padding: 0.6em 0;
  margin-left: auto;
  margin-right: auto;
}

.user_form {
  line-height: 1.62;
}
.user_form ._required {
  display: none;
  font-size: 0.89em;
  padding: 0 0.6741573034em;
  color: #f00;
}
.user_form .-failed ._required {
  display: block;
}
.user_form dl > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  vertical-align: middle;
  border-top: 2px solid transparent;
  border-bottom: 2px solid transparent;
}
.user_form dl dt {
  width: 15em;
  text-align: center;
  padding: 0.75em 0.6em;
  background-color: #FAF8F8;
  vertical-align: top;
}
.user_form dl dt label {
  display: block;
}
.user_form dl dt label.-required::after {
  content: "*";
  color: red;
}
.user_form dl dd {
  position: relative;
  width: calc(100% - 15em);
  padding: 0.25em 0 0.25em 1em;
}
.user_form dl dd::after {
  position: absolute;
  left: 1.6em;
  bottom: 0;
  -webkit-transition: opacity 1s;
  transition: opacity 1s;
  opacity: 0;
}
.user_form dl dd.-failed {
  padding-bottom: 1.3em;
}
.user_form dl dd.-failed::after {
  content: "必須項目を入力してください";
  color: #f11;
  font-size: 0.89em;
  line-height: 1.1;
  opacity: 1;
}
.user_form ._caption {
  font-size: 0.85em;
  font-weight: normal;
  line-height: 1.3;
}
.user_form ._form_row.-hidden {
  display: none;
}
.user_form div.-address > dt {
  width: 5em;
}
.user_form div.-address > dd {
  width: calc(100% - 5em);
  padding: 0;
  margin: 0 0 0 0.3em;
}
.user_form div.-address > dd > dl > div:first-of-type {
  border-top: none;
}
.user_form div.-address > dd > dl > div:last-of-type {
  border-bottom: none;
}
.user_form div.-address > dd > dl > div dt {
  width: 9.7em;
}
.user_form div.-address > dd > dl > div dd {
  width: calc(100% - 9.7em);
}
.user_form div.-your_licenses dl.-flex {
  display: inline-block;
  width: auto;
}
.user_form div.-has_diseases ._intro {
  margin: 0 0.6em;
}
.user_form div.-has_diseases ul {
  list-style-type: decimal;
  margin: 1em 0;
  padding-left: 1.1em;
}
.user_form div.-has_diseases ul li {
  margin-top: 0.6em;
}
.user_form div.-revocation_info dl.-flex {
  display: table;
  width: 100%;
}
.user_form div.-revocation_info dl.-flex dt {
  display: table-cell;
  width: 7em;
  text-align: right;
  vertical-align: middle;
  padding: 0.5em 0.4em 1em;
  background: transparent;
}
.user_form div.-revocation_info dl.-flex dd {
  display: table-cell;
  width: calc(100% - 7em);
  vertical-align: middle;
  padding: 0 0 0.5em 0.4em;
}
.user_form div.-howdiduknow label._checkbox {
  display: block;
}
.user_form div.-howdiduknow dl._others,
.user_form div.-howdiduknow dl.-flex {
  display: table;
  width: 100%;
}
.user_form div.-howdiduknow dl._others dt,
.user_form div.-howdiduknow dl.-flex dt {
  display: table-cell;
  width: 8em;
  text-align: right;
  vertical-align: middle;
  padding: 0.5em 0.4em 1em;
  background: transparent;
}
.user_form div.-howdiduknow dl._others dd,
.user_form div.-howdiduknow dl.-flex dd {
  display: table-cell;
  width: calc(100% - 8em);
  vertical-align: middle;
  padding: 0 0 0.5em 0.4em;
}
.user_form div.-howdiduknow dl._others dt {
  text-align: left;
  padding-left: 0;
}
.user_form .alt_span span {
  margin-right: 0.3em;
}
.user_form.--ui-style .user_form__subentry {
  margin: 1.25em 0 0.25em;
  background-color: #8AC751;
  padding: 0 0.62em;
  border: none;
  border-radius: 0.3em;
  color: #fff !important;
  font-weight: bold;
  font-size: 1.06em;
}
.user_form.--ui-style .user_form__dateset {
  display: inline-block;
}
.user_form.--ui-style .user_form__months,
.user_form.--ui-style .user_form__dates {
  display: inline-block;
  width: 4.8em;
  margin: 0.3em 0.3em 0.3em 0;
}
.user_form.--ui-style .user_form__birthyear,
.user_form.--ui-style .user_form__birthmonth,
.user_form.--ui-style .user_form__birthday {
  display: inline-block;
  width: 4.2em;
}
.user_form.--ui-style .user_form__birthyear {
  width: 6em;
}
.user_form.--ui-style .birthday span {
  margin-left: 0.2em;
  margin-right: 0.3em;
}
.user_form.--ui-style input[type=button], .user_form.--ui-style input[type=submit], .user_form.--ui-style button, .user_form.--ui-style .button_style {
  display: block;
  margin: 1.6em auto;
}
.user_form.--ui-style input[name=your_license_others] {
  width: 10em;
}
.user_form.--ui-style input[disabled] {
  background: #FAF8F8;
  border: none;
}
.user_form.--ui-style dl.-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}
.user_form.--ui-style .revocation_info dl.-flex dt {
  width: 5em;
  background: transparent;
  padding-left: 0;
  padding-right: 0;
}
.user_form.--ui-style .revocation_info dl.-flex dd {
  width: calc(100% - 5em);
}
.user_form.--ui-style .revocation_info dl.-flex input {
  width: 100%;
  max-width: 12em;
}
.user_form.--ui-style .revocation_info dl.-flex.-revoked_license dt {
  width: 11em;
}
.user_form.--ui-style .revocation_info dl.-flex.-revoked_license dd {
  width: calc(100% - 11em);
}
.user_form.--ui-style .revocation_info dl.-flex.-revoked_license input {
  max-width: 24em;
}
@media (max-width: 46rem) {
  .user_form.--ui-style {
    padding: 0 0 1em;
  }
  .user_form.--ui-style dl > div {
    display: block;
    border-top: none;
    border-bottom: none;
    margin-top: 0.3em;
  }
  .user_form.--ui-style dl dt {
    width: 100%;
    line-height: 1.3;
    text-align: left;
    padding: 0.15em 0.6em;
  }
  .user_form.--ui-style dl dd {
    width: 100%;
    padding: 0.3em 0;
  }
  .user_form.--ui-style div.-address > dt {
    width: 100%;
  }
  .user_form.--ui-style div.-address > dd {
    width: 100%;
    margin: 0;
  }
  .user_form.--ui-style div.-address > dd > dl > div:first-of-type {
    border-top: none;
  }
  .user_form.--ui-style div.-address > dd > dl > div:last-of-type {
    border-bottom: none;
  }
  .user_form.--ui-style div.-address > dd > dl > div dt {
    width: 100%;
  }
  .user_form.--ui-style div.-address > dd > dl > div dd {
    width: 100%;
  }
  .user_form.--ui-style .revocation_info dl.-flex dt {
    padding: 0.3em 0;
  }
  .user_form.--ui-style .revocation_info dl.-flex dt label {
    line-height: 1.5;
    padding: 0.6em 0;
  }
  .user_form.--ui-style .revocation_info dl.-flex.-revoked_license {
    display: block;
  }
  .user_form.--ui-style .revocation_info dl.-flex.-revoked_license dt {
    display: block;
    width: 100%;
    padding-bottom: 0;
  }
  .user_form.--ui-style .revocation_info dl.-flex.-revoked_license dt label {
    text-align: left;
    padding: 0;
  }
  .user_form.--ui-style .revocation_info dl.-flex.-revoked_license dd {
    display: block;
    width: calc(100% - 7em);
    margin: 0 0 0 auto;
  }
  .user_form.--ui-style .revocation_info dl.-flex.-revoked_license input {
    max-width: none;
  }
}
.user_form ._entry {
  position: relative;
  padding-left: 1em;
  font-weight: bold;
  font-size: 1.3em;
  margin: 1.6em 0;
}
.user_form ._entry::before {
  content: "";
  position: absolute;
  display: block;
  top: 50%;
  left: 0;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  width: 0.5em;
  height: 1.2em;
  background: rgba(111, 186, 44, 0.4);
}
.user_form .-implementor.-disabled {
  background: #947f88;
}
.user_form .-implementor.-disabled:hover {
  background: #947f88;
}
.user_form .-implementor span {
  line-height: 1.6;
  padding: 0.6em 0.3em;
}
.user_form ._mate_entry {
  color: #016e96;
  line-height: 1.2;
  border-bottom: 3px solid #26a4fb;
  padding: 0.6em 0.4em;
  margin: 0.6em 0 0.3em;
}
.user_form ._generated {
  padding: 0.6em 0;
  border-bottom: 1px solid #ccc;
}
.user_form ._static {
  line-height: 1.5;
  padding: 0.5em 0;
}
.user_form hr {
  border-top: 2px solid #eee;
  padding: 0 0 0em;
  margin: 1.6em 0 0;
}
.user_form ._submit_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  width: 100%;
  margin: 2.6em 0 2em;
}
.user_form ._submit_box > div {
  width: 50%;
}
.user_form ._submit_box > div input[type=button], .user_form ._submit_box > div input[type=submit], .user_form ._submit_box > div button, .user_form ._submit_box > div .button_style {
  width: 15em;
  max-width: 90%;
  padding-left: 0;
  padding-right: 0;
}
.user_form ._submit_box ._left input[type=button], .user_form ._submit_box ._left input[type=submit], .user_form ._submit_box ._left button, .user_form ._submit_box ._left .button_style {
  margin: 0 auto 0 0;
}
.user_form ._submit_box ._right input[type=button], .user_form ._submit_box ._right input[type=submit], .user_form ._submit_box ._right button, .user_form ._submit_box ._right .button_style {
  margin: 0 0 0 auto;
}
.user_form .-your_age ._static {
  padding-left: 0.6em;
}

.error_box {
  color: #f00;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  border: 2px solid #f00;
  padding: 0.6em;
  margin-top: 1.6em;
}

.msg_box {
  color: #1d1;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  border: 2px solid #1d1;
  padding: 0.6em;
  margin-top: 1.6em;
}

*.--text-area-color.--area-hokkaido {
  color: #669ACC;
}
*.--text-area-color.--area-tohoku {
  color: #33CBCC;
}
*.--text-area-color.--area-hokuriku {
  color: #CCCD67;
}
*.--text-area-color.--area-kanto {
  color: #99CC67;
}
*.--text-area-color.--area-tokai .-use_area_color {
  color: #CB99CC;
}
*.--text-area-color.--area-kansai {
  color: #66CC9A;
}
*.--text-area-color.--area-chugoku {
  color: #9B9AFE;
}
*.--text-area-color.--area-shikoku {
  color: #FF98CA;
}
*.--text-area-color.--area-kyushu {
  color: #99CDFF;
}
*.--text-area-color.--area-okinawa {
  color: #FFBB9A;
}
*.--text-area-color.--area-test {
  color: #f080f0;
}

*.--bg-area-color.--area-hokkaido {
  background: #669ACC;
}
*.--bg-area-color.--area-tohoku {
  background: #33CBCC;
}
*.--bg-area-color.--area-hokuriku {
  background: #CCCD67;
}
*.--bg-area-color.--area-kanto {
  background: #99CC67;
}
*.--bg-area-color.--area-tokai {
  background: #CB99CC;
}
*.--bg-area-color.--area-kansai {
  background: #66CC9A;
}
*.--bg-area-color.--area-chugoku {
  background: #9B9AFE;
}
*.--bg-area-color.--area-shikoku {
  background: #FF98CA;
}
*.--bg-area-color.--area-kyushu {
  background: #99CDFF;
}
*.--bg-area-color.--area-okinawa {
  background: #FFBB9A;
}
*.--bg-area-color.--area-test {
  background: #f080f0;
}

.school-pref-banner {
  color: #fff;
  line-height: 1.6;
  background: #8AC751;
}
.school-pref-banner__text {
  position: relative;
  padding-left: 1.5em;
}
.school-pref-banner__text::before {
  position: absolute;
  content: "";
  left: 0;
  top: 49%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 1.25em;
  height: 1.25em;
  background-image: url("images/icon-cs.png");
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-size: 1100% 500%;
  background-position: 50% 0%;
}

.school-shortests {
  width: 100%;
  border: 3px solid #01a7cb;
  border-radius: 0.6em;
  -webkit-box-shadow: 0 0 0 3px #fff;
          box-shadow: 0 0 0 3px #fff;
}
.school-shortests__entry {
  color: #fff;
  font-weight: bold;
  text-align: center;
  background: #01a7cb;
}
.school-shortests__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  line-height: 1.6;
  text-align: center;
  margin: 0.6em 0 0.3em;
}
.school-shortests__item--single {
  width: 100%;
}
.school-shortests__item--double {
  width: 50%;
}
.school-shortests__type--at {
  color: #2562EC;
}
.school-shortests__type--mt {
  color: #ED2633;
}
.school-shortests__note {
  color: #f23;
  line-height: 1.3;
  font-size: 0.8em;
}

.hotel-room-types {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.hotel-room-types__item {
  margin-top: 0.6em;
  margin-right: 0.6em;
}
.hotel-room-types__icon {
  display: block;
  padding: 0.3em 0.6em;
  border: 1px solid #aaa;
  position: relative;
}
.hotel-room-types__icon--single {
  padding-left: 2.2em;
}
.hotel-room-types__icon--single::before {
  position: absolute;
  content: "";
  left: 0;
  top: 49%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 2.25em;
  height: 2.25em;
  background-image: url("images/icon-cs.png");
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-size: 1100% 500%;
  background-position: 60% 0%;
}
.hotel-room-types__icon--twin {
  padding-left: 2.2em;
}
.hotel-room-types__icon--twin::before {
  position: absolute;
  content: "";
  left: 0;
  top: 49%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 2.25em;
  height: 2.25em;
  background-image: url("images/icon-cs.png");
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-size: 1100% 500%;
  background-position: 70% 0%;
}
.hotel-room-types__icon--triple {
  padding-left: 2.2em;
}
.hotel-room-types__icon--triple::before {
  position: absolute;
  content: "";
  left: 0;
  top: 49%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 2.25em;
  height: 2.25em;
  background-image: url("images/icon-cs.png");
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-size: 1100% 500%;
  background-position: 80% 0%;
}
.hotel-room-types__icon--quartet {
  padding-left: 2.2em;
}
.hotel-room-types__icon--quartet::before {
  position: absolute;
  content: "";
  left: 0;
  top: 49%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 2.25em;
  height: 2.25em;
  background-image: url("images/icon-cs.png");
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-size: 1100% 500%;
  background-position: 90% 0%;
}
.hotel-room-types__icon--shared {
  padding-left: 2.2em;
}
.hotel-room-types__icon--shared::before {
  position: absolute;
  content: "";
  left: 0;
  top: 49%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 2.25em;
  height: 2.25em;
  background-image: url("images/icon-cs.png");
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-size: 1100% 500%;
  background-position: 100% 0%;
}

.prices-box--double {
  background: #25AFEC;
  border-radius: 0.5em;
  display: inline-block;
  padding: 0.625em;
}
.prices-box__car-type {
  display: block;
  text-align: center;
}
.prices-box > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.prices-box__head {
  width: 5em;
  background: #fff;
  border-radius: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.prices-box__head--at {
  border-radius: 0.2em;
  color: #2562EC;
}
.prices-box__head--mt {
  border-radius: 0.2em;
  color: #ED2633;
}
.prices-box__data {
  color: #fff;
}
.prices-box__data .prices-box__price {
  margin-left: 0.5em;
  line-height: 1;
  font-size: 1.688em;
}
.school-section--graduation .school-graduation__table {
  background: #25AFEC;
  border-radius: 0.5em;
  display: inline-block;
  padding: 0.625em;
  border: none;
  width: auto;
}
.school-section--graduation .school-graduation__table .gdays-box__car-type {
  display: block;
  text-align: center;
}
.school-section--graduation .school-graduation__table .gdays-box > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.school-section--graduation .school-graduation__table .gdays-box__head {
  width: 5em;
  background: #fff;
  border-radius: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.school-section--graduation .school-graduation__table .gdays-box__head--at {
  border-radius: 0.2em;
  color: #2562EC;
}
.school-section--graduation .school-graduation__table .gdays-box__head--mt {
  border-radius: 0.2em;
  color: #ED2633;
}
.school-section--graduation .school-graduation__table .gdays-box__data {
  color: #fff;
}
.school-section--graduation .school-graduation__table .gdays-box__data .gdays-box__day {
  margin-left: 0.5em;
  line-height: 1;
  font-size: 1.688em;
}
.date-reserve-list {
  display: inline-table;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-collapse: collapse;
  margin: 2em auto;
  width: 100%;
  border: 1px solid #999;
}
.date-reserve-list th, .date-reserve-list td {
  border: 1px solid #999;
}
.note-list {
  font-size: 0.89em;
  line-height: 1.3;
}
.note-list__item {
  margin-top: 0.45em;
}

.school-section {
  position: relative;
  padding-left: 1em;
  padding-right: 1em;
}
@media (max-width: 56rem) {
  .school-section {
    padding-left: 0.6em;
    padding-right: 0.6em;
  }
}
.school-section--description a {
  color: #003DC6;
}
.school-section--top-catch {
  margin-top: 1.6em;
  font-size: 1.3em;
  text-align: center;
  letter-spacing: 0.1em;
}
.school-section__subtitle {
  position: relative;
  padding-left: 1em;
  margin-top: 1.6em;
}
.school-section__subtitle::before {
  border: solid rgba(37, 175, 236, 0.4);
  content: "";
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 0.5em;
  height: 1.2em;
  border-width: 2px 0px 0px 2px;
}
.school-section > *.school-section__title {
  position: relative;
  padding-left: 1em;
  margin: inherit;
  margin-top: 1em;
  margin-bottom: 0.6em;
}
.school-section > *.school-section__title::before {
  background: #25AFEC;
  content: "";
  position: absolute;
  display: block;
  top: 0.2em;
  left: 0;
  width: 0.5em;
  height: 1.2em;
}

.school-intro {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: -1em;
}
@media (max-width: 46rem) {
  .school-intro {
    margin-top: 0;
  }
}
.school-intro__left {
  width: calc(100% - 12em);
  padding: 1em 1em 0 0;
  margin: 1em 0 0;
}
.school-intro__right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  width: 12em;
  margin: 1em 0 0;
}
.school-intro__name {
  font-size: 1.62em;
  line-height: 1.5;
}
.school-intro__address {
  font-size: 0.85em;
  line-height: 1.6;
  margin-top: 0.6em;
}
.school-intro__restricted {
  font-size: 0.8em;
  line-height: 1.6;
  margin-top: 1em;
}
@media (max-width: 46rem) {
  .school-intro {
    display: block;
  }
  .school-intro__left {
    width: 100%;
    padding: 0;
  }
  .school-intro__right {
    width: 100%;
  }
  .school-intro__right .school_shortests {
    margin-top: 0.6em;
  }
  .school-intro__name {
    font-size: 1.3em;
  }
}

.school-section--intro {
  margin-bottom: 1em;
}
.school-section--tab-form-box {
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}
.school-section--gallery {
  margin-top: 1.6em;
}
.school-section--charges .school-section__buttons {
  text-align: center;
}
.school-section--charges .school-section__biker-discount {
  margin-top: 2.6em;
}
.school-section--charges .school-section__remarks {
  margin-top: 1.6em;
}
.school-section--cheapest-prices .prices-box > div:nth-of-type(2) {
  margin-top: 0.6em;
}
.school-section--graduation .school-graduation__mt-day {
  margin-top: 0.6em;
}

.school-gdays.school-intro__gdays {
  background: none;
  border: solid #25AFEC;
  border-radius: 1em;
  overflow: hidden;
  width: 100%;
}
.school-gdays.school-intro__gdays .school-gdays__entry {
  background: #25AFEC;
  font-size: 1.2em;
  font-weight: bold;
  color: #fff;
  text-align: center;
}
.school-gdays.school-intro__gdays .gdays-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  width: auto;
  margin-left: 0;
  margin-right: 0;
  text-align: center;
}
.school-gdays.school-intro__gdays .gdays-box > * {
  width: 50%;
  padding-left: 0;
  padding-right: 0;
  padding-top: 0;
  padding-bottom: 0;
}
.school-gdays.school-intro__gdays .gdays-box > * {
  padding: 0.4em 0.6em 0;
}
.school-gdays.school-intro__gdays .gdays-box__head {
  background: #fff;
  border-radius: 0;
}
.school-gdays.school-intro__gdays .gdays-box__head--at {
  color: #2562EC;
}
.school-gdays.school-intro__gdays .gdays-box__head--mt {
  color: #ED2633;
}
.school-gdays.school-intro__gdays .gdays-box__data {
  font-weight: bold;
  font-size: 1.12em;
  line-height: 1.5;
  letter-spacing: 0;
}
.school-gdays.school-intro__gdays .gdays-box__data--at {
  color: #2562EC;
}
.school-gdays.school-intro__gdays .gdays-box__data--mt {
  color: #ED2633;
}
.school-gdays.school-intro__gdays .gdays-box__day {
  font-size: 1.68em;
}

.school-tab-pages {
  margin-top: 1.8em;
  position: relative;
  padding-bottom: 2.6em;
}
.school-tab-pages .school-tab {
  position: relative;
  display: none;
}
.school-tab-pages .school-tab ._guide {
  color: #25AFEC;
  font-size: 0.89em;
}
.school-tab-pages[data-page=info] .school-tab--info, .school-tab-pages[data-page=plans] .school-tab--plans, .school-tab-pages[data-page=hotels] .school-tab--hotels, .school-tab-pages[data-page=pushed] .school-tab--pushed {
  display: block;
}
.school-tab-pages ._photo {
  width: 100%;
  height: 0;
  padding: 0 0 50%;
  background: none no-repeat scroll center center/cover;
}
.school-tab-pages ._reduces {
  margin: 0.3em 0;
}
.school-tab-pages ._bike_discount {
  line-height: 1.6;
  margin: 0.6em 0 0;
}
.school-tab-pages ._bike_discount ._price {
  font-weight: bold;
}
.school-tab-pages ._bike_discount ._notes {
  font-size: 0.89em;
}

.campaign-colors {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.campaign-colors__color {
  width: 2em;
  height: 0;
  padding: 0 0 1.6em;
  margin-right: 0.3em;
}
.school-catch__text {
  color: #25AFEC !important;
  padding: 4em 5% 1em;
  position: relative;
  margin-top: 1em;
  border-top: solid 4px rgba(111, 186, 44, 0.4);
}
.school-catch__text::before {
  color: #25AFEC !important;
  position: absolute;
  top: -0.2em;
  left: 0;
  -webkit-transform: rotate(-10deg);
          transform: rotate(-10deg);
  content: "Message";
  font-size: 4em;
  font-family: -apple-system, BlinkMacSystemFont, Roboto, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: normal;
  color: #8AC751;
  mix-blend-mode: darken;
  opacity: 0.15;
}

.school-graduation__dismissal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 0.6em;
}
.school-graduation__dismissal dt, .school-graduation__dismissal dd {
  display: inline-block;
}
.school-graduation__dismissal dt {
  color: #25AFEC;
}
.school-graduation__dismissal dd {
  padding-left: 0.5em;
}

.school-examination__table {
  border: none !important;
}
.school-examination__table dt, .school-examination__table dd {
  display: inline-block;
  margin-bottom: 0.5em;
}
.school-examination__table dt {
  color: #8AC751;
}
.school-examination__table dd {
  padding-left: 0.5em;
}

.school-template-default .post-content {
  background: #fff;
}

.school-section--tab-form-box {
  padding-left: 0;
  padding-right: 0;
}

.school-plan-form {
  position: relative;
  display: block;
  width: 100%;
  line-height: 1.5;
  margin: 0 auto;
  padding: 0;
  /*
  	&[data-page="plans"] {
  		padding: 0 0 10.4em;
  		@media(max-width: $media_sp1) {
  			padding: 0 0 12em;
  		}
  	}*/
  /*	&__plans-buttons {
  		width: 9em;
  	}
  	&__plans-options {
  		width: calc(100% - 8em - 9em);
  		margin-top: 0;
  	}*/
  /*	dl {
  		&>div {
  			display: flex;
  			width: 100%;
  			vertical-align: middle;
  			margin: 0;
  		}
  		dt {
  			width: 4em;
  			text-align: center;
  			padding: 0.5em 0.3em;
  //			background-color: #eee;
  //			vertical-align: top;
  			label {
  				display: block;
  				font-size: $fs_small;
  //				color: $color_gray;
  //				font-weight: bold;
  				line-height: 1.5 *(1em/$fs_small);
  				padding: 0;
  				&.-required::after {
  					content: '*';
  					color: red;
  				}
  			}
  		}
  		dd {
  			width: calc(100% - 4em);
  			padding: 0;
  		}
  		div.type dd {
  			display: flex;
  		}
  	}*/
}
.school-plan-form__form {
  margin-top: 0;
}
.school-plan-form--sticky {
  position: relative;
  width: 100%;
  background: rgba(255, 255, 255, 0.5);
  z-index: 10;
}
.school-plan-form--sticky.school-plan-form--floating {
  position: fixed;
  z-index: 1;
}
.school-plan-form--sticky.school-plan-form--floating .school-plan-form__options {
  /*				& > dl {
  					box-shadow: 0 1px 1px rgba(1,1,1,0.15);
  					border-radius: $br_theme;
  					width: 46%;
  					margin: 0 2%;
  				}*/
}
.school-plan-form__tabs {
  width: 100%;
  -webkit-transition: -webkit-box-shadow 0.3s;
  transition: -webkit-box-shadow 0.3s;
  transition: box-shadow 0.3s;
  transition: box-shadow 0.3s, -webkit-box-shadow 0.3s;
  text-align: center;
  /*	input[type=radio].-info + span {
  		&::after {
  			content: 'Info';
  		}
  	}*/
}
.school-plan-form__tabs--items-3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  width: auto;
  margin-left: 0;
  margin-right: 0;
  -webkit-box-shadow: 0 8px 3px -3px rgba(196, 192, 192, 0.2);
          box-shadow: 0 8px 3px -3px rgba(196, 192, 192, 0.2);
}
.school-plan-form__tabs--items-3 > * {
  width: 33.3333333333%;
  padding-left: 0;
  padding-right: 0;
  padding-top: 0;
  padding-bottom: 0;
}
.school-plan-form__tabs--items-4 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  width: auto;
  margin-left: 0;
  margin-right: 0;
}
.school-plan-form__tabs--items-4 > * {
  width: 25%;
  padding-left: 0;
  padding-right: 0;
  padding-top: 0;
  padding-bottom: 0;
}
.school-plan-form__tabs input {
  display: none;
}
.school-plan-form__tabs label._radio {
  background: #fff;
  cursor: pointer;
}
.school-plan-form__tabs.-hide_pushed label._radio {
  width: 33.333%;
}
.school-plan-form__tabs.-hide_pushed label._radio.-pushed {
  display: none;
}
.school-plan-form__tabs input[type=radio] + span {
  color: rgba(111, 186, 44, 0.4);
  display: block;
  width: 100%;
  height: 100%;
  font-size: 1em;
  font-weight: bold;
  line-height: 2.5;
  text-align: center;
  border-bottom-color: transparent;
  cursor: pointer;
}
.school-plan-form__tabs input[type=radio] + span:hover {
  -webkit-animation: push 0.5s ease-out;
          animation: push 0.5s ease-out;
  opacity: 1;
}
@keyframes push {
  0%, 10%, 90% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
  }
}
.school-plan-form__tabs label._radio.-plans br {
  display: none;
}
@media (max-width: 46rem) {
  .school-plan-form__tabs input[type=radio] + span {
    line-height: 3;
  }
  .school-plan-form__tabs label._radio.-plans span {
    line-height: 1.25;
    padding: 0.36em 0;
  }
  .school-plan-form__tabs label._radio.-plans ._dot {
    display: none;
  }
  .school-plan-form__tabs label._radio.-plans br {
    display: block;
  }
}
.school-plan-form__tabs input[type=radio]:checked + span {
  color: #6FBA2C;
  background-image: -webkit-gradient(linear, left top, right top, from(#8AC751), to(#8AC751));
  background-image: -webkit-linear-gradient(left, #8AC751 0%, #8AC751 100%);
  background-image: linear-gradient(90deg, #8AC751 0%, #8AC751 100%);
  background-size: 100% 4px;
  background-repeat: no-repeat;
  background-position: left bottom 0;
  cursor: default;
  -webkit-animation-play-state: paused;
          animation-play-state: paused;
}
@media (max-width: 46rem) {
  .school-plan-form__tabs input[type=radio] + span {
    font-size: 0.78em;
  }
}
.school-plan-form__options {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  width: auto;
  margin-left: 0;
  margin-right: 0;
  padding-left: 1em;
  padding-right: 1em;
  padding: 0 1em;
  margin-top: 1em;
}
.school-plan-form__options > * {
  width: 50%;
  padding-left: 0;
  padding-right: 0;
  padding-top: 0;
  padding-bottom: 0;
}
@media (max-width: 56rem) {
  .school-plan-form__options {
    padding-left: 0.6em;
    padding-right: 0.6em;
  }
}
.school-plan-form__options dl {
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.school-plan-form__options .button-style {
  background: #25AFEC;
  border-radius: 2em;
  font-size: 0.625em;
  min-width: 10em;
  line-height: 1.3;
  margin-top: 0;
  margin-right: 3%;
  padding: 0.5em 1em;
}
.school-plan-form__options select {
  margin-top: 0;
  border-radius: 1.6em;
}
@media (max-width: 46rem) {
  .school-plan-form__options {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    list-style: none;
    width: auto;
    margin-left: 0;
    margin-right: 0;
    /*			.button-style {
    				position: absolute;
    				width: 12em;
    				left: 50%;
    				bottom: -4em;
    				transform: translateX(-50%);
    			}*/
  }
  .school-plan-form__options > * {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    padding-top: 0;
    padding-bottom: 0;
  }
}
.school-plan-form:not([data-page=plans]) .school-plan-form__options {
  display: none;
}
.school-plan-form__types, .school-plan-form__plans {
  background: #fff;
  padding: 0.6em 0.5em 1em;
}
.school-plan-form__types-head, .school-plan-form__plans-head {
  border-bottom: 3px solid #25AFEC;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 2.6em;
  padding: 0.5em 0;
}
.school-plan-form__types-head label, .school-plan-form__plans-head label {
  color: #25AFEC;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  display: block;
  width: 100%;
  font-size: 1em;
  text-align: center;
  line-height: 1.1;
}
.school-plan-form__types-data, .school-plan-form__plans-data {
  margin-top: 1em;
}
.school-plan-form__types {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 0 0 0 0;
}
.school-plan-form__types ._form_row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.school-plan-form__types-data {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  max-width: 12em;
}
.school-plan-form__plans {
  border-radius: 0 0 0 0;
}
.school-plan-form__table {
  width: 9em;
  font-size: 0.85em;
  line-height: 1.6;
  padding: 0.3em;
}
@media (max-width: 46rem) {
  .school-plan-form__plans-buttons {
    width: calc(100% - 8em);
  }
  .school-plan-form__plans-options {
    width: 100%;
    margin-top: 0.3em;
  }
}
.school-plan-form__types label._radio {
  position: relative;
  width: 50%;
  max-width: 6em;
}
.school-plan-form__types label._radio input {
  display: none;
}
.school-plan-form__types label._radio input[type=radio] + span {
  display: block;
  position: relative;
  color: #6E595E;
  font-weight: bold;
  font-size: 1em;
  line-height: 2.1;
  text-align: center;
  margin: 0;
  height: 100%;
  -webkit-box-shadow: 0 0 0 3px #fff;
          box-shadow: 0 0 0 3px #fff;
  background: #E9E6E6;
  -webkit-transition: background-color 0.1s linear;
  transition: background-color 0.1s linear;
  cursor: pointer;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.school-plan-form__types label._radio input[type=radio] + span:hover {
  -webkit-animation: push 0.5s ease-out;
          animation: push 0.5s ease-out;
  opacity: 1;
}
@keyframes push {
  0%, 10%, 90% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
  }
}
.school-plan-form__types label._radio input[type=radio].-at + span {
  border-radius: 2em 0 0 2em;
}
.school-plan-form__types label._radio input[type=radio].-mt + span {
  border-radius: 0 2em 2em 0;
  margin-left: 3px;
}
.school-plan-form__types label._radio input[type=radio]:checked.-at + span {
  color: #fff;
  background: #2562EC;
  font-weight: bold;
  -webkit-animation-play-state: paused;
          animation-play-state: paused;
}
.school-plan-form__types label._radio input[type=radio]:checked.-mt + span {
  color: #fff;
  background: #ED2633;
  font-weight: bold;
  -webkit-animation-play-state: paused;
          animation-play-state: paused;
}
.school-plan-form__types label._radio input[type=radio] + span:before {
  content: none;
}
.school-plan-form__types label._radio input[type=radio]:checked + span:before {
  content: none;
}
.school-plan-form__types dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 3px 0;
}
.school-plan-form__types dd label {
  display: block;
}
.school-plan-form ._plan_box dt {
  width: 7em;
}
.school-plan-form ._plan_box dd {
  width: calc(100% - 7em);
}
.school-plan-form ._caption {
  font-size: 0.85em;
  font-weight: normal;
  line-height: 1.3;
}
.school-plan-form dd.-single label._radio {
  max-width: 6em;
}
.school-plan-form dd.-single label._radio input[type=radio].-at + span {
  border-radius: 2em;
}
.school-plan-form dd.-single label._radio input[type=radio].-mt + span {
  border-radius: 2em;
}
@media (max-width: 46rem) {
  .school-plan-form ._type_box {
    width: 35%;
    padding-right: 0.6em;
  }
  .school-plan-form ._plan_box {
    width: 65%;
    padding-left: 0;
  }
}
@media (max-width: 28rem) {
  .school-plan-form dl > div {
    display: block;
    margin: 0;
  }
  .school-plan-form dl dt {
    font-size: 0.85em;
    text-align: left;
    padding: 0;
  }
  .school-plan-form ._type_box label._radio input[type=radio] + span {
    line-height: 1.6;
  }
  .school-plan-form ._plan_box dd {
    width: 100%;
  }
  .school-plan-form ._plan_box select {
    height: 2em;
    padding: 0.25em;
  }
}

.school-search-form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  height: 100%;
  padding: 1em 4em 1.6em;
  border-radius: 0;
}
.school-search-form__heading {
  padding-top: 5.5em;
  color: #25AFEC;
  position: relative;
  text-align: center;
  font-weight: bold;
}
.school-search-form__heading::before {
  position: absolute;
  content: "";
  left: 50%;
  top: 0;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  width: 6em;
  height: 6em;
  background-image: url("images/icon-cl.png");
  background-size: 1100% 500%;
  background-repeat: no-repeat;
  background-attachment: scroll;
}
.school-search-form__heading strong {
  font-size: 1.3em;
}
.school-search-form__form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-top: 2.6em;
}
.school-search-form__flex {
  width: 100%;
}
.school-search-form--pref .school-search-form__heading::before {
  background-position: 0% 0%;
}
.school-search-form--pref .school-search-form__options select {
  min-width: 14em;
}
.school-search-form--price .school-search-form__heading::before {
  background-position: 10% 0%;
}
.school-search-form--price .school-search-form__options {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.school-search-form--price .school-search-form__options select {
  min-width: 4.2em;
  max-width: 8.6em;
}
.school-search-form--price .school-search-form__dash {
  display: block;
  line-height: 1.1;
  padding: 0.6em;
}
.school-search-form--cheapest-rate .school-search-form__heading::before {
  background-position: -6em 0;
}
@media (max-width: 46rem) {
  .school-search-form {
    padding: 1em 1em 1.6em;
  }
}

.school-gallery {
  position: relative;
  width: 100%;
}
.school-gallery__item {
  position: relative;
  width: 50%;
  height: 0;
  padding: 0 0 25%;
  overflow: hidden;
  background: #F3FAED none no-repeat scroll center center/cover;
}
.school-gallery__item > img, .school-gallery__item > picture {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}
.school-gallery__item img {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  -o-object-fit: cover;
     object-fit: cover;
}
.school-gallery--flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.school-gallery--brick .school-gallery__item {
  position: absolute;
  padding: 0;
}
.school-gallery--brick .school-gallery__list {
  position: relative;
  height: 0;
  padding: 0 0 33.33%;
  margin-top: 1%;
}
@media (max-width: 46rem) {
  .school-gallery--brick .school-gallery__list {
    padding: 0 0 41.4%;
  }
}
.school-gallery--brick .school-gallery__list:nth-of-type(2n+1) .school-gallery__item:nth-of-type(1) {
  width: 65.66%;
  top: 0;
  left: 0;
  height: 100%;
}
.school-gallery--brick .school-gallery__list:nth-of-type(2n+1) .school-gallery__item:nth-of-type(2) {
  width: 33.33%;
  top: 0;
  right: 0;
  height: 48.5%;
}
.school-gallery--brick .school-gallery__list:nth-of-type(2n+1) .school-gallery__item:nth-of-type(3) {
  width: 33.33%;
  bottom: 0;
  right: 0;
  height: 48.5%;
}
.school-gallery--brick .school-gallery__list:nth-of-type(2n+2) .school-gallery__item:nth-of-type(1) {
  width: 33.33%;
  top: 0;
  left: 0;
  height: 48.5%;
}
.school-gallery--brick .school-gallery__list:nth-of-type(2n+2) .school-gallery__item:nth-of-type(2) {
  width: 33.33%;
  bottom: 0;
  left: 0;
  height: 48.5%;
}
.school-gallery--brick .school-gallery__list:nth-of-type(2n+2) .school-gallery__item:nth-of-type(3) {
  width: 65.66%;
  top: 0;
  right: 0;
  height: 100%;
}
.school-gallery--brick--images--1 .school-gallery__list:nth-of-type(2n+0), .school-gallery--brick--images-2 .school-gallery__list:nth-of-type(2n+0) {
  padding: 0 0 16.66%;
}
.school-gallery--brick--images--1 .school-gallery__list:nth-of-type(2n+0) .school-gallery__item:nth-of-type(1), .school-gallery--brick--images-2 .school-gallery__list:nth-of-type(2n+0) .school-gallery__item:nth-of-type(1) {
  width: 32.33%;
  top: 0;
  left: 0;
  height: 100%;
}
.school-gallery--brick--images--1 .school-gallery__list:nth-of-type(2n+0) .school-gallery__item:nth-of-type(2), .school-gallery--brick--images-2 .school-gallery__list:nth-of-type(2n+0) .school-gallery__item:nth-of-type(2) {
  width: 32.33%;
  top: 0;
  left: 33.33%;
  height: 100%;
}
.school-gallery--images-3 {
  margin: 2em 0;
}

.school-box {
  margin-top: 1em;
}
.school-box__school {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.school-box__pref {
  background: #f00;
}
.school-box__name {
  background: #0f0;
}
.school-box__title {
  font-weight: 1.06em;
  border: 3px solid #8AC751;
  padding: 0.3em 1em;
  margin-top: 0.6em;
}
.school-box__content {
  margin-top: 0.6em;
}

.--id-home-forms.section--light-bg .school-search-form {
  background: #fff;
}
.--id-home-forms.section--deep-bg .school-search-form {
  background: inherit;
}
.--id-home-forms.section--notice .school-search-form {
  background: #fff;
}
@media (max-width: 46rem) {
  .--id-home-forms {
    background: none !important;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
  .--id-home-forms.section--deep-bg .school-search-form {
    background: -webkit-gradient(linear, left top, left bottom, from(#8AC751), to(#ECFACF));
    background: -webkit-linear-gradient(#8AC751, #ECFACF);
    background: linear-gradient(#8AC751, #ECFACF);
  }
  .--id-home-forms.section--notice .school-search-form {
    -webkit-box-shadow: 0 0 0 4px rgba(111, 186, 44, 0.4) inset;
            box-shadow: 0 0 0 4px rgba(111, 186, 44, 0.4) inset;
  }
  .--id-home-forms .section__inner {
    padding: 0;
  }
  .--id-home-forms .section__content {
    width: 100%;
  }
  .--id-home-forms .flexbox {
    display: block;
  }
  .--id-home-forms.--mt-06 .school-search-form {
    margin-top: 0.6em;
  }

  .--id-home-forms.--mt-10 .school-search-form {
    margin-top: 1em;
  }

  .--id-home-forms.--mt-16 .school-search-form {
    margin-top: 1.6em;
  }

  .--id-home-forms.--mt-26 .school-search-form {
    margin-top: 2.6em;
  }

  .--id-home-forms.--mt-42 .school-search-form {
    margin-top: 4.2em;
  }

  .--id-home-forms.--mt-none .school-search-form {
    margin-top: 0;
  }
}

.school-data-table {
  content: "on";
  width: 100%;
  line-height: 1.6;
  border: none;
  border-collapse: collapse;
  border: 1px solid #E9E6E6;
}
.school-data-table th {
  width: 23%;
  text-align: left;
  background: #FAF8F8;
}
.school-data-table th, .school-data-table td {
  vertical-align: top;
  padding: 0.3em 0.6em;
  border-right: 1px solid #E9E6E6;
  border-bottom: 1px solid #E9E6E6;
}
.school-data-table caption {
  caption-side: bottom;
  font-size: 0.85em;
  text-align: left;
}
.school-data-table ul {
  list-style: none;
}
@media (max-width: 46rem) {
  .school-data-table {
    content: "off";
  }
  .school-data-table tbody, .school-data-table tr, .school-data-table th, .school-data-table td {
    display: block;
    width: 100%;
  }
  .school-data-table th, .school-data-table td {
    border-right: none;
  }
  .school-data-table tr:last-of-type td {
    border-bottom: none;
  }
}

/*.school-icons {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	&__item {
		margin-top: 0.6em;
		margin-right: 0.6em;
	}
	&__icon {
		display: block;
		padding: 0.3em 0.6em;
		color: $color_link;
		&::before {
			content: "#";
		}
	}
}*/
.school-icons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 0.6em;
  margin: 0 !important;
}
.school-icons__item {
  margin: 0 0.6em !important;
}
@media (max-width: 28rem) {
  .school-icons__item {
    margin: 0.6em !important;
    width: calc(33.33% - 1.2em);
  }
}
.school-icons__icon {
  color: #fff;
  width: 7em;
  height: 3.1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  line-height: 1.3;
  font-size: 0.8em;
  position: relative;
  padding: 0.3em 0.6em;
  font-weight: bold;
  z-index: 0;
}
@media (max-width: 28rem) {
  .school-icons__icon {
    width: 100%;
  }
}
.school-icons__icon::before {
  position: absolute;
  content: "";
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 8em;
  height: 8em;
  background-image: url("images/icon-cl.png");
  background-size: 1100% 500%;
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-position: 100% 0%;
  z-index: -1;
}

.hotel-facilities {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
}
.hotel-facilities--cols-5 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  width: auto;
  margin-left: 0;
  margin-right: 0;
}
.hotel-facilities--cols-5 > * {
  width: 20%;
  padding-left: 0;
  padding-right: 0;
  padding-top: 0;
  padding-bottom: 0;
}
@media (max-width: 46rem) {
  .hotel-facilities--cols-5 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    list-style: none;
    width: auto;
    margin-left: 0;
    margin-right: 0;
  }
  .hotel-facilities--cols-5 > * {
    width: 33.3333333333%;
    padding-left: 0;
    padding-right: 0;
    padding-top: 0;
    padding-bottom: 0;
  }
}
.hotel-facilities__head, .hotel-facilities__data {
  text-align: center;
  border: 1px solid #fff;
}
.hotel-facilities__head {
  background: #F3FAED;
}
.school-section__biker-discount {
  position: relative;
  padding: 1em;
  background: #FFF8EF;
  border: solid 1px;
  color: #FDAC3D;
  font-size: 1.06em;
  font-weight: bold;
  text-align: center;
  padding-left: 2.2em;
}
.school-section__biker-discount::before {
  position: absolute;
  content: "";
  left: -1.85em;
  top: -1.3em;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  width: 5em;
  height: 5em;
  background-image: url("images/icon-cl.png");
  background-size: 1100% 500%;
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-position: 100% 25%;
}
.school-section__remarks {
  padding: 1.6em;
  border-radius: 0;
  background: #FAF8F8;
  font-size: 0.89em;
}

.hotel-gallery {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  width: auto;
  margin-left: -0.15em;
  margin-right: -0.15em;
  margin-top: 1.87em;
}
.hotel-gallery__item {
  width: 33.3333333333%;
  padding-left: 0.15em;
  padding-right: 0.15em;
  padding-top: 0;
  padding-bottom: 0;
}
.hotel-gallery__item {
  margin-top: 0.3em;
}
.hotel-gallery__box {
  position: relative;
  width: 100%;
  height: 0;
  padding: 0 0 75%;
  overflow: hidden;
}
.hotel-gallery__box > img, .hotel-gallery__box > picture {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}
.hotel-gallery__box img {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  -o-object-fit: cover;
     object-fit: cover;
}

.hotel-facilities {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
  margin: 1em -1px 0;
}
.hotel-facilities--cols-5 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  width: auto;
  margin-left: 0;
  margin-right: 0;
}
.hotel-facilities--cols-5 > * {
  width: 20%;
  padding-left: 0;
  padding-right: 0;
  padding-top: 0;
  padding-bottom: 0;
}
@media (max-width: 46rem) {
  .hotel-facilities--cols-5 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    list-style: none;
    width: auto;
    margin-left: 0;
    margin-right: 0;
  }
  .hotel-facilities--cols-5 > * {
    width: 33.3333333333%;
    padding-left: 0;
    padding-right: 0;
    padding-top: 0;
    padding-bottom: 0;
  }
}
.hotel-facilities__head, .hotel-facilities__data {
  font-size: 0.89em;
  text-align: center;
  padding: 0.4em 0.3em;
  border: 1px solid #E9E6E6;
}
@media (max-width: 46rem) {
  .hotel-facilities__head, .hotel-facilities__data {
    border: 1px solid #fff;
  }
}
.hotel-facilities__head {
  background: #FAF8F8;
}
.hotel-item {
  margin-top: 3.12em;
}
.hotel-item:first-child {
  margin-top: 0;
}
.hotel-item__name {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 0;
  padding-right: 0;
  font-size: 1.3em;
}
.hotel-item__name::before, .hotel-item__name::after {
  background-color: #25AFEC;
  content: "";
  height: 0.25em;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  min-width: 2em;
}
.hotel-item__name::before {
  margin-right: 0.5em;
  border-radius: 0 0.25em 0.25em 0;
}
.hotel-item__name::after {
  margin-left: 0.5em;
  border-radius: 0.25em 0 0 0.25em;
}
@media (max-width: 46rem) {
  .hotel-item__name {
    width: 100vw;
    position: absolute;
    left: 0;
    margin-left: -0.6em;
  }
}
@media (max-width: 46rem) {
  .hotel-item__entry + * {
    padding-top: 2em;
  }
}
.hotel-item__text {
  color: #25AFEC;
  font-size: 1.3em;
  text-align: center;
  margin: 1.5em 0;
  font-weight: bold;
}
.hotel-item__address {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 1.5em;
}
@media (max-width: 46rem) {
  .hotel-item__address {
    display: block;
  }
}
.hotel-item__address-head {
  position: relative;
  margin-right: 1.8em;
  padding-left: 1.5em;
  font-size: 1.18em;
}
.hotel-item__address-head::before {
  position: absolute;
  content: "";
  left: 0;
  top: 0.1em;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  width: 1.5em;
  height: 1.5em;
  background-image: url("images/icon-cs.png");
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-size: 1100% 500%;
}
.hotel-item__address-data {
  font-size: 0.89em;
}
.hotel-item ._remarks {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.hotel-item ._remarks dt {
  margin-right: 1.8em;
}
.hotel-item ._remarks dd {
  font-size: 0.89em;
}
@media (max-width: 46rem) {
  .hotel-item ._remarks {
    display: block;
  }
}

.month-switcher {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: bold;
  letter-spacing: 0.06em;
  text-align: center;
  margin: 0.6em -0.5em 0.6em;
}
.month-switcher__button {
  border-radius: 2em;
  position: relative;
  padding: 0.2em;
  background: #FAF8F8;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  font-size: 0.625em;
  color: #6E595E;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.month-switcher__button::after {
  position: absolute;
  content: "";
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 0;
  height: 0;
  border-style: solid;
}
.month-switcher__button--prev::after {
  left: 0.6em;
  border-width: 0.5em 0.6em 0.5em 0;
  border-color: transparent #fff transparent transparent;
}
.month-switcher__button--next::after {
  right: 0.6em;
  border-width: 0.5em 0 0.5em 0.6em;
  border-color: transparent transparent transparent #fff;
}
.month-switcher__button:hover {
  -webkit-animation: push 0.5s ease-out;
          animation: push 0.5s ease-out;
  opacity: 1;
}
@keyframes push {
  0%, 10%, 90% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
  }
}
.month-switcher__button-box {
  width: 6.6em;
}
.month-switcher__button-box--enabled .month-switcher__button {
  border-radius: 2em;
  background: #25AFEC;
  color: #fff;
  cursor: pointer;
}
.month-switcher__term {
  color: #25AFEC;
  min-width: 10em;
  line-height: 1;
  padding: 0 1em 0 1.06em;
}
@media (max-width: 28rem) {
  .month-switcher__term {
    min-width: 8em;
  }
}
@media (max-width: 46rem) {
  .month-switcher {
    line-height: 2.6;
    padding: 0;
    margin-left: 0;
    margin-right: 0;
  }
  .month-switcher > div {
    padding: 0;
  }
  .month-switcher__button-box {
    width: 6.6em;
    padding: 0;
  }
}

.school-calendar__page {
  display: none;
}
.school-calendar__page--visible {
  display: block;
}
.school-calendar ._nodate {
  display: none;
  text-align: center;
  padding: 1.6em;
  background: #eee;
  border: 2px solid #ddd;
}
@media (max-width: 46rem) {
  .school-calendar ._nodate {
    display: block;
  }
}
.school-calendar__months > *:nth-of-type(2) .month-switcher__button--prev {
  -webkit-animation-play-state: paused;
          animation-play-state: paused;
}
.school-calendar__months > *:nth-of-type(2) .month-switcher__button--prev::after {
  border-color: transparent #6E595E transparent transparent;
}

.sccal {
  table-layout: fixed;
  width: calc(100% + 8px);
  border: none;
  border-collapse: collapse;
  margin-left: -4px;
  margin-right: -4px;
}
.sccal tr {
  border-top: solid 1px #25AFEC;
}
@media (max-width: 46rem) {
  .sccal {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
}
.sccal__head, .sccal__cell {
  width: calc(100% / 7);
}
.sccal__head {
  padding: 1em 0.5em 0.5em;
  line-height: 1.5;
}
.sccal__head--sun {
  color: #ff3010;
}
.sccal__head--sat {
  color: #00a0ef;
}
.sccal--weekdays tr {
  border-top-width: 4px;
}
.sccal--weekdays .sccal__head--sun {
  color: #ff3010;
}
.sccal--weekdays .sccal__head--sat {
  color: #00a0ef;
}
.sccal__cell {
  position: relative;
  vertical-align: bottom;
  line-height: 1.5;
  padding: 2.3em 0.3em 0.5em;
  border-top-left-radius: 1em;
  border-top-right-radius: 1em;
}
.sccal__cell--blank {
  height: 6em;
}
.sccal__cell--blank::before {
  position: absolute;
  content: "";
  width: 2em;
  height: 2px;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background: rgba(0, 0, 0, 0.2);
  margin-top: 0.65em;
}
.sccal__cell--blank > .-submit {
  display: none;
}
.sccal__cell--out-of-month::before {
  content: none;
}
.sccal__cell--no-price {
  height: 6em;
}
.sccal__cell--no-price ._price, .sccal__cell--no-price ._taxed {
  display: none;
}
.sccal__cell--today {
  /*&::after {
  	position: absolute;
  	content: '';
  	width: 100%;
  	height: 100%;
  	left: 0;
  	top: 0;
  	background: $color_main_light;
  	mix-blend-mode: darken;
  }*/
}
.sccal__cell--today .sccal__date {
  border-top: solid 5px rgba(111, 186, 44, 0.4);
}
.sccal__date {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  color: #666;
  font-weight: bold;
  line-height: 1.3;
  letter-spacing: 0.3em;
  padding: 0.5em 0.6em;
  background: #fff;
}
.sccal__price {
  text-align: center;
  line-height: 1.5;
}
.sccal__price--hidden {
  display: none;
}
.sccal__price--taxed {
  position: relative;
  font-size: 1.1em;
  font-weight: bold;
  line-height: 1.3;
  padding: 0.3em 0 0;
}
.sccal__price--taxed.sccal__price--at {
  color: #2562EC;
}
.sccal__price--taxed.sccal__price--mt {
  color: #ED2633;
}
.sccal__price--wotax {
  font-size: 0.78em;
}
.sccal__gday {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
  font-size: 0.78em;
  text-align: center;
}
.sccal__gday--at {
  color: #2562EC;
}
.sccal__gday--mt {
  color: #ED2633;
}
.sccal__gday--hidden {
  display: none;
}
.sccal__campaign {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
  color: #fff;
  font-size: 0.85em;
  line-height: 1.3;
  text-align: center;
  background: #8AC751;
}
.sccal__campaign--hidden {
  display: none;
}
.sccal__button {
  position: relative;
  width: 89%;
  height: 0;
  text-align: center;
  padding: 0 0 2em;
  border-radius: 0.1875em;
  margin: 0.3em auto 0;
}
.sccal__button--enabled {
  cursor: pointer;
}
.sccal__button--hidden {
  display: none;
}
.sccal__button::after {
  content: "";
  position: absolute;
  content: "";
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 1.6em;
  height: 1.6em;
  background-image: url("images/icon-cs.png");
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-size: 1100% 500%;
  background-position: 0% 25%;
}
.sccal__button[data-rest=plenty] {
  background: #8AC751;
  border: solid 4px #fff;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.sccal__button[data-rest=plenty]::after {
  position: absolute;
  content: "";
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 1.6em;
  height: 1.6em;
  background-image: url("images/icon-cs.png");
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-size: 1100% 500%;
  background-position: 10% 25%;
}
.sccal__button[data-rest=plenty]:hover {
  -webkit-animation: push 0.5s ease-out;
          animation: push 0.5s ease-out;
  opacity: 1;
}
@keyframes push {
  0%, 10%, 90% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
  }
}
.sccal__button[data-rest=less] {
  background: #8AC751;
  border: solid 4px #fff;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.sccal__button[data-rest=less]::after {
  position: absolute;
  content: "";
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 1.6em;
  height: 1.6em;
  background-image: url("images/icon-cs.png");
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-size: 1100% 500%;
  background-position: 20% 25%;
}
.sccal__button[data-rest=less]:hover {
  -webkit-animation: push 0.5s ease-out;
          animation: push 0.5s ease-out;
  opacity: 1;
}
@keyframes push {
  0%, 10%, 90% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
  }
}
.sccal__message--no-date {
  display: none;
  text-align: center;
  line-height: 1.3;
  padding: 1.45em 0.6em;
  background: #eee;
  border: 2px solid #ddd;
}
@media (max-width: 46rem) {
  .sccal__message--no-date {
    display: block;
  }
}
@media (max-width: 46rem) {
  .sccal__cell {
    display: block;
    overflow: hidden;
    width: 100%;
    margin-top: 0.6em;
    border-radius: 0.6em;
    -webkit-box-shadow: 0 1px 6px rgba(1, 1, 1, 0.15);
            box-shadow: 0 1px 6px rgba(1, 1, 1, 0.15);
    padding: 2em 0.6em 0.6em;
  }
  .sccal__cell--today {
    border-color: #2e2;
    -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
            box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
  }
  .sccal__cell--out-of-date {
    display: none;
  }
  .sccal__date {
    position: absolute;
    left: 50%;
    top: 0;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 100%;
    color: #6E595E;
    text-align: left;
    letter-spacing: 0.05em;
    margin-left: 0;
    padding: 0.3em 0.6em;
  }
  .sccal__price {
    font-size: 1em;
    line-height: 1.3;
    text-align: left;
    padding: 0 0 0 5.2em;
  }
  .sccal__price--taxed {
    font-size: 1.3em;
    line-height: 1.3;
    text-align: left;
    padding: 0.3em 0 0 3.6em;
  }
  .sccal__price--taxed::after {
    left: 0.1em;
    top: 0.45em;
    width: 3.7em;
  }
  .sccal__gday {
    float: left;
    font-size: 0.89em;
    padding: 0.89em 0 0;
  }
  .sccal__button {
    float: right;
    width: 10em;
  }
}
.sccal--weekdays {
  display: table;
}
@media (max-width: 46rem) {
  .sccal--weekdays {
    display: none;
  }
}

.school-plan-modal {
  contain: strict;
  position: fixed;
  width: 100%;
  max-width: 114.8em;
  height: 100%;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 1000;
  background: #fff;
  padding-top: 2.6em;
  padding-top: calc(2.6em + env(safe-area-inset-top));
  padding-left: env(safe-area-inset-left);
  padding-right: env(safe-area-inset-right);
  padding-bottom: calc(1.6em + env(safe-area-inset-bottom));
  overflow: hidden;
}
.school-plan-modal__entry-box ._subentry {
  position: relative;
  font-size: 1em;
  line-height: 2.6;
  text-align: center;
  margin: 0;
}
@media (max-width: 46rem) {
  .school-plan-modal {
    padding-top: 2em;
    padding-top: calc(2em + env(safe-area-inset-top));
  }
  .school-plan-modal__entry-box ._subentry {
    line-height: 2;
  }
}
.school-plan-modal__container {
  position: relative;
  width: 100%;
  height: 100%;
  padding: 0.5em 1em;
}
@media (max-width: 46rem) {
  .school-plan-modal__container {
    padding: 0.25em;
  }
}
.school-plan-modal__container .plan-table {
  position: relative;
  max-width: 100%;
  max-height: 100%;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  margin: 0 auto;
}
.school-plan-modal__entry-box {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  color: #fff;
  font-size: 1em;
  padding: 0 1em;
  padding-top: env(safe-area-inset-top);
  padding-left: calc(1em + env(safe-area-inset-left));
  padding-right: calc(1em + env(safe-area-inset-right));
  background: #8AC751;
}
@media (max-width: 46rem) {
  .school-plan-modal__entry-box {
    padding: 0 0.25em;
    padding-left: calc(0.25em + env(safe-area-inset-left));
    padding-right: calc(0.25em + env(safe-area-inset-right));
  }
}
.school-plan-modal__entry-box .-close {
  position: absolute;
  left: 0;
  bottom: 0;
  padding: 0 0.6em 0 1em;
  cursor: pointer;
}
.school-plan-modal__entry-box .-close::after {
  position: absolute;
  content: "";
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  opacity: 0.75;
  left: 0;
  border-width: 0.5em 0.6em 0.5em 0;
  border-color: transparent #fff transparent transparent;
}
.school-plan-modal__entry {
  position: relative;
  font-size: 1em;
  line-height: 2.6;
  text-align: center;
  margin: 0;
}
.school-plan-modal__button--closer {
  position: absolute;
  left: 0;
  bottom: 0;
  padding: 0 0.6em 0 1em;
  cursor: pointer;
}
.school-plan-modal__button--closer::after {
  position: absolute;
  content: "";
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  opacity: 0.75;
  left: 0;
  border-width: 0.5em 0.6em 0.5em 0;
  border-color: transparent #fff transparent transparent;
}
.school-plan-modal__guide-box {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  text-align: right;
  padding-bottom: env(safe-area-inset-bottom);
}
.school-plan-modal__guide {
  position: relative;
  display: inline-block;
  color: #8AC751;
  font-size: 0.89em;
  padding: 0.3em 1em 0 2em;
}
.school-plan-modal__guide::after {
  position: absolute;
  content: "";
  left: 0.3em;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 1.6em;
  height: 1.6em;
  background-image: url("images/icon-cs.png");
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-size: 1100% 500%;
  background-position: 0% 50%;
}

.plan-table {
  position: relative;
  font-size: 0.89em;
  line-height: 1.3;
}
.plan-table__flex {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.plan-table__flex > div {
  /*			&&__terms-box {
  				border-bottom-color: $color_plan_scroll;
  			}
  			&._plans_box {
  				border-right-color: $color_plan_scroll;
  			}
  			&._table_box {
  				border-color: $color_plan_scroll;
  			}*/
}
.plan-table ul, .plan-table ol {
  list-style: none;
}
.plan-table__area-head {
  height: 100%;
}
.plan-table__head {
  height: 100%;
}
.plan-table__head-item {
  position: relative;
  width: 100%;
  height: 100%;
  background: none no-repeat scroll center center/cover;
  background-image: url("data:image/svg+xml;base64,DQo8c3ZnIHByZXNlcnZlQXNwZWN0UmF0aW89Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDEwMCAxMDAiPg0KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4NCgkuc3Qwe2ZpbGw6I2VlZWVlZTt9DQoJLnN0MXtmaWxsOiNlZWVlZWU7fQ0KPC9zdHlsZT4NCjxwb2x5Z29uIGNsYXNzPSJzdDAiIHBvaW50cz0iMCwxMDAgOTguNiwxMDAgMCwxLjQgIi8+DQo8cG9seWdvbiBjbGFzcz0ic3QxIiBwb2ludHM9IjEwMCwwIDEuNCwwIDEwMCw5OC42ICIvPg0KPC9zdmc+DQo=");
  font-weight: bold;
  color: #8AC751;
}
.plan-table__head-terms {
  position: absolute;
  display: block;
  top: 25%;
  right: 1em;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  padding-top: 0.6em;
}
.plan-table__head-plans {
  position: absolute;
  bottom: 25%;
  left: 1em;
  -webkit-transform: translateY(50%);
          transform: translateY(50%);
  padding-bottom: 0.6em;
}
.plan-table__head-box, .plan-table__plans-box {
  width: 18em;
}
.plan-table__terms-box, .plan-table__table-box {
  max-width: calc(100% - 18em);
}
@media (max-width: 70rem) {
  .plan-table__head-box, .plan-table__plans-box {
    width: 15em;
  }
  .plan-table__terms-box, .plan-table__table-box {
    max-width: calc(100% - 15em);
  }
}
@media (max-width: 28rem) {
  .plan-table {
    font-size: 0.8em;
  }
  .plan-table__head-box, .plan-table__plans-box, .plan-table__area-plans {
    width: 13em;
  }
  .plan-table__terms-box, .plan-table__table-box {
    max-width: calc(100% - 13em);
  }
  .plan-table__area-plans ._item {
    min-width: 6em;
  }
}
.plan-table__terms-box, .plan-table__plans-box {
  overflow: hidden;
  z-index: 1;
}
.plan-table__head-box {
  z-index: 2;
}
.plan-table__table-box {
  position: relative;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  height: 100%;
}
.plan-table__area-plans {
  width: 100%;
}
.plan-table__frame {
  position: absolute;
  content: "";
  width: calc(100%);
  height: 100%;
  bottom: 0;
  right: 0;
  -webkit-box-shadow: 0 0 0 3px #8AC751;
          box-shadow: 0 0 0 3px #8AC751;
  border-radius: 0.6em;
  z-index: 1;
  pointer-events: none;
}
.plan-table__area_terms, .plan-table__area-table {
  display: inline-block;
}
.plan-table__area-head, .plan-table__area-terms {
  padding-bottom: 0.5em;
}
.plan-table__area-head, .plan-table__area-plans {
  padding-right: 0.5em;
}
.plan-table__area-terms, .plan-table__area-table {
  padding-left: 0.5em;
  padding-right: 0.5em;
}
.plan-table__area-plans, .plan-table__area-table {
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}
@media (max-width: 46rem) {
  .plan-table__area-head, .plan-table__area-terms {
    padding-bottom: 0.25em;
  }
  .plan-table__area-head, .plan-table__area-plans {
    padding-right: 0.25em;
  }
  .plan-table__area-terms, .plan-table__area-table {
    padding-left: 0.25em;
    padding-right: 0.25em;
  }
  .plan-table__area-plans, .plan-table__area-table {
    padding-top: 0.25em;
    padding-right: 0.25em;
  }
}
.plan-table__area-terms {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.plan-table__head-item, .plan-table__term, .plan-table__plan-item, .plan-table__cell {
  min-width: 10em;
  border: 2px solid #fff;
}
.plan-table__head-item {
  border-radius: 1.6em;
}
.plan-table__term:nth-of-type(1), .plan-table__plan-row:nth-of-type(1) .plan-table__plan-item, .plan-table__row:nth-of-type(1) .plan-table__cell:nth-of-type(1) {
  border-radius: 1.6em 0 0 0;
}
.plan-table__term:last-of-type, .plan-table__row:nth-of-type(1) .plan-table__cell:last-of-type {
  border-radius: 0 1.6em 0 0;
}
.plan-table__plan-row:last-of-type .plan-table__plan-item, .plan-table__row:last-of-type .plan-table__cell:nth-of-type(1) {
  border-radius: 0 0 0 1.6em;
}
.plan-table__row:last-of-type .plan-table__cell:last-of-type {
  border-radius: 0 0 1.6em 0;
}
.plan-table__plan-row, .plan-table__row {
  margin: 2px 0 0;
  padding: 0 0 2px;
  border-bottom: 2px solid #ccc;
}
.plan-table__plan-row:last-of-type, .plan-table__row:last-of-type {
  border-bottom: none;
}
.plan-table__area-terms {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.plan-table__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.plan-table__plan-item, .plan-table__cell {
  padding: 0.15em 0;
}
.plan-table--mobile .plan-table__terms-box {
  overflow-x: auto;
}
.plan-table--mobile .plan-table__plans-box {
  overflow-y: auto;
}
.plan-table__term, .plan-table__cell {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 10em;
}
.plan-table__term {
  font-weight: bold;
  text-align: center;
  background: #F3FAED;
  padding: 0.6em 0;
}
.plan-table__term p {
  width: 100%;
}
.plan-table__term {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: bold;
  text-align: center;
  background: #F3FAED;
  padding: 0.6em 0;
}
.plan-table__term-span {
  width: 100%;
}
.plan-table__campaign {
  color: #f11;
}
.plan-table__plan-item {
  background: #F3FAED;
}
.plan-table__plan-name {
  font-weight: bold;
  letter-spacing: 0.03em;
  text-align: left;
  padding: 0.4em;
  margin-top: 0.2em;
}
.plan-table__hotel-list {
  margin: 0.2em;
}
.plan-table__hotel-item {
  position: relative;
  margin-bottom: 0.3em;
  padding-left: 1em;
}
.plan-table__hotel-item:last-of-type {
  margin-bottom: 0;
}
.plan-table__hotel-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.plan-table__hotel-name {
  position: relative;
}
.plan-table__hotel-name::before {
  position: absolute;
  content: "";
  left: -0.9em;
  top: 0.15em;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.5em 0 0.5em 0.7em;
  border-color: transparent transparent transparent #fa2;
}
.plan-table__hotel-append {
  font-size: 0.85em;
}
.plan-table__hotel-notes {
  font-size: 0.85em;
}
.plan-table ._total_notes {
  font-size: 0.85em;
  padding: 0.3em 1em;
}
.plan-table__price {
  text-align: center;
}
.plan-table__price--taxed {
  font-size: 1.1235955056em;
  font-weight: bold;
  letter-spacing: 0.03em;
}
.plan-table__price--taxed:nth-child(n+2) {
  margin-top: 0.3em;
}
.plan-table__price--at {
  color: #2562EC;
}
.plan-table__price--mt {
  color: #ED2633;
}
.plan-table__no-price {
  text-align: center;
}

.--campaign-color--yellow {
  background: #FFF9B2;
}
.--campaign-color--pink {
  background: #fce0ef;
}
.--campaign-color--sky {
  background: #d3edfb;
}
.--campaign-color--green {
  background: #e1f8c8;
}
.--campaign-color--brown {
  background: #e3cabb;
}
.--campaign-color--purple {
  background: #e8d0f3;
}
.--campaign-color--orange {
  background: #ffc478;
}

.post-list--type-school {
  padding-left: 1.6em;
  padding-right: 1.6em;
}
@media (max-width: 46rem) {
  .post-list--type-school {
    padding-left: 0;
    padding-right: 0;
  }
}

.school-cards {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  width: auto;
  margin-left: -0.625em;
  margin-right: -0.625em;
}
.school-cards > * {
  width: 50%;
  padding-left: 0.625em;
  padding-right: 0.625em;
  padding-top: 0;
  padding-bottom: 0;
}
@media (max-width: 46rem) {
  .school-cards {
    display: block;
    margin-left: 0;
    margin-right: 0;
  }
  .school-cards > * {
    width: 100%;
  }
}

.school-card__text {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-height: 1.6;
  max-height: 3.2em;
  margin-top: 1.5em;
  margin-bottom: 0;
}
.school-card__box {
  -webkit-box-shadow: 0 2px 0.5em rgba(0, 0, 0, 0.2);
          box-shadow: 0 2px 0.5em rgba(0, 0, 0, 0.2);
  display: block;
  overflow: hidden;
}
.school-card__box:hover .school-card__images::before {
  opacity: 0;
}
.school-card__box:hover .school-card__pref {
  text-shadow: 3px 3px 6px #ffffff, -3px 3px 6px #ffffff, 3px -3px 6px #ffffff, -3px -3px 6px #ffffff;
}
.school-card__box:hover .school-card__pref::before {
  -webkit-filter: drop-shadow(3px 3px 2px rgba(255, 255, 255, 0.5)) drop-shadow(-3px 3px 2px rgba(255, 255, 255, 0.5)) drop-shadow(3px -3px 2px rgba(255, 255, 255, 0.5)) drop-shadow(-3px -3px 2px rgba(255, 255, 255, 0.5));
          filter: drop-shadow(3px 3px 2px rgba(255, 255, 255, 0.5)) drop-shadow(-3px 3px 2px rgba(255, 255, 255, 0.5)) drop-shadow(3px -3px 2px rgba(255, 255, 255, 0.5)) drop-shadow(-3px -3px 2px rgba(255, 255, 255, 0.5));
}
.school-card__box:hover .school-card__name {
  text-shadow: 3px 3px 6px #ffffff, -3px 3px 6px #ffffff, 3px -3px 6px #ffffff, -3px -3px 6px #ffffff;
}
.school-card:hover {
  -webkit-animation: push 0.5s ease-out;
          animation: push 0.5s ease-out;
  opacity: 1;
}
@keyframes push {
  0%, 10%, 90% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
  }
}
.school-card__images {
  padding-top: 2em;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: none no-repeat scroll center center/cover;
}
.school-card__images:not(.school-card--wide .school-card__images) {
  background: inherit !important;
}
.school-card__images > * {
  position: relative;
}
.school-card__images .post-image {
  width: 35%;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
@media (max-width: 28rem) {
  .school-card__images .post-image {
    width: 50%;
  }
}
.school-card__images .school-card__name {
  width: 65%;
}
.school-card__images img {
  width: 7em;
  height: 7em;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 50%;
  margin-left: 1em;
  padding: 0.125em;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
@media (max-width: 28rem) {
  .school-card__images img {
    margin: auto;
  }
}
@media screen and (min-width: 70rem) and (max-width: 1300px) {
  .school-card__images img {
    width: 5em;
    height: 5em;
  }
}
.school-card__paper {
  background: #fff;
}
.school-card__details {
  position: relative;
  padding: 1.6em 1em 0.5em;
}
.school-card__tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  background: #ECFACF;
  padding: 0.4em 0.5em;
}
.school-card__tag-item {
  display: inline-block;
}
.school-card__pref {
  opacity: 0.8;
  position: absolute;
  left: calc(100% - 5em);
  top: 0.5em;
  width: 5em;
  font-size: 1.18em;
  font-weight: bold;
  text-shadow: 3px 3px 6px rgba(255, 255, 255, 0.5), -3px 3px 6px rgba(255, 255, 255, 0.5), 3px -3px 6px rgba(255, 255, 255, 0.5), -3px -3px 6px rgba(255, 255, 255, 0.5);
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.school-card__pref::before {
  position: absolute;
  content: "";
  left: -1.5em;
  top: 0.1em;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  width: 1.5em;
  height: 1.5em;
  background-image: url("images/icon-cs.png");
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-size: 1100% 500%;
  -webkit-filter: drop-shadow(3px 3px 2px rgba(255, 255, 255, 0.2)) drop-shadow(-3px 3px 2px rgba(255, 255, 255, 0.2)) drop-shadow(3px -3px 2px rgba(255, 255, 255, 0.2)) drop-shadow(-3px -3px 2px rgba(255, 255, 255, 0.2));
          filter: drop-shadow(3px 3px 2px rgba(255, 255, 255, 0.2)) drop-shadow(-3px 3px 2px rgba(255, 255, 255, 0.2)) drop-shadow(3px -3px 2px rgba(255, 255, 255, 0.2)) drop-shadow(-3px -3px 2px rgba(255, 255, 255, 0.2));
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.school-card__name {
  font-size: 1.5em !important;
  line-height: 1.5;
  letter-spacing: 0.15em;
}
@media (max-width: 28rem) {
  .school-card__name {
    width: 50%;
    margin: auto 0.5em auto 0;
  }
}
.school-card--normal {
  padding-top: 1.5em;
}
.school-card--normal .school-card__paper {
  z-index: 1;
}
.school-card--ranking {
  position: relative;
  padding-top: 3em;
}
.school-card--ranking .school-card__images::before {
  opacity: inherit;
}
.school-card--ranking:nth-of-type(1) {
  padding-top: 6.6em;
}
.school-card--ranking:nth-of-type(1):before {
  position: absolute;
  content: "";
  left: 50%;
  top: 0.8em;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  width: 6em;
  height: 6em;
  background-image: url("images/icon-cl.png");
  background-size: 1100% 500%;
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-position: 20% 0%;
}
.school-card--ranking:nth-of-type(2) {
  padding-top: 6.2em;
}
.school-card--ranking:nth-of-type(2):before {
  position: absolute;
  content: "";
  left: 50%;
  top: 0.6em;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  width: 6em;
  height: 6em;
  background-image: url("images/icon-cl.png");
  background-size: 1100% 500%;
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-position: 30% 0%;
}
.school-card--ranking:nth-of-type(3) {
  padding-top: 6.2em;
}
.school-card--ranking:nth-of-type(3):before {
  position: absolute;
  content: "";
  left: 50%;
  top: 0.6em;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  width: 6em;
  height: 6em;
  background-image: url("images/icon-cl.png");
  background-size: 1100% 500%;
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-position: 40% 0%;
}
.school-card--ranking:nth-of-type(4) {
  padding-top: 6.2em;
}
.school-card--ranking:nth-of-type(4):before {
  position: absolute;
  content: "";
  left: 50%;
  top: 0.6em;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  width: 6em;
  height: 6em;
  background-image: url("images/icon-cl.png");
  background-size: 1100% 500%;
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-position: 50% 0%;
}
.school-card--ranking:nth-of-type(5) {
  padding-top: 6.2em;
}
.school-card--ranking:nth-of-type(5):before {
  position: absolute;
  content: "";
  left: 50%;
  top: 0.6em;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  width: 6em;
  height: 6em;
  background-image: url("images/icon-cl.png");
  background-size: 1100% 500%;
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-position: 60% 0%;
}
.school-card--archive .school-card__box {
  -webkit-box-shadow: 0 2px 0.5em rgba(0, 0, 0, 0.2);
          box-shadow: 0 2px 0.5em rgba(0, 0, 0, 0.2);
}
.school-card--wide {
  width: 100%;
}
@media (min-width: 46rem) {
  .school-card--wide .school-card__box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    /*正円画像あり
    &:hover .school-card__images .post-image {
    	transform: translate(-50%, 100%);
    }*/
  }
  .school-card--wide .school-card__box > div {
    width: 50%;
    height: auto;
  }
  .school-card--wide .school-card__images {
    display: block;
  }
  .school-card--wide .school-card__images::before {
    opacity: 0;
  }
  .school-card--wide .school-card__images .post-image {
    position: absolute;
    width: auto;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  .school-card--wide .school-card__images img {
    display: none;
    width: 0;
    /*正円画像あり
    display: inherit;
    width: inherit;
    margin: 0;
    width: 13em;
    height: 13em;*/
  }
  .school-card--wide .school-card__pref {
    left: calc(200% - 5em);
  }
  .school-card--wide .school-card__name {
    height: 4.5em;
    padding: 0 0.6em;
    width: 100%;
    left: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .school-card--wide .school-card__details {
    padding-top: 9em;
  }
  .school-card--wide .card-gdays-box {
    position: static;
    margin: auto;
  }
}
@media (max-width: 46rem) {
  .school-card--wide .school-card__box > div {
    background-image: inherit !important;
  }
}

.card-gdays-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.card-gdays-box__entry {
  color: #6E595E;
  background: #FBFFE5;
  border: solid 1px #FDAC3D;
  width: 6em;
  margin-right: 1.5em;
  font-weight: bold;
  text-align: center;
  font-size: 0.8125em;
}
.card-gdays-box .gdays-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.card-gdays-box .gdays-box > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.card-gdays-box .gdays-box__head {
  font-size: 0.8em;
  line-height: 1;
  margin-right: 0.4em;
  letter-spacing: 0;
}
.card-gdays-box .gdays-box__data {
  font-size: 0.8em;
  line-height: 1;
  margin-right: 1em;
  font-weight: bold;
  letter-spacing: 0;
}
.card-gdays-box .gdays-box__day {
  font-size: 2em;
  margin-right: 0.15em;
}
.card-prices-box {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background: #fff;
}
.card-prices-box * {
  background: #fff;
}
.card-prices-box .prices-box--double {
  margin-top: 0.4em;
  padding: 0;
}
.card-prices-box__entry {
  margin: 1.3em 0 0;
  color: #6E595E;
  background: #FBFFE5;
  border: solid 1px #FDAC3D;
  width: 6em;
  text-align: center;
  font-size: 0.8125em;
  margin-right: 0.8em;
  font-weight: bold;
}
.card-prices-box .prices-box > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin: 0.5em 0 0;
}
.card-prices-box .prices-box__head {
  font-size: 1.12em;
  line-height: 1.4;
  margin-right: 0.4em;
  letter-spacing: 0;
  width: auto;
}
.card-prices-box .prices-box__data {
  color: #6E595E;
  font-size: 1.12em;
  line-height: 1;
  font-weight: bold;
  letter-spacing: 0;
}
.card-prices-box .prices-box__price {
  font-size: 1.95em;
  margin-right: 0.1em;
}
.card-prices-box .prices-box__taxed {
  font-size: 0.7em;
}
@media (max-width: 28rem) {
  .card-prices-box .prices-box__head {
    font-size: 0.85em;
  }
}
@media (max-width: 23rem) {
  .card-prices-box {
    display: block;
  }
  .card-prices-box__entry {
    line-height: 1;
    margin-top: 0.5em;
  }
}

.card-tags {
  /*&__text {
  	position: relative;
  	padding-left: 1.5em;
  	font-size: 0.7em;
  	&::before {
  		@include icon_s($w: 1.25em, $h: 1.25em, $left: 0, $top: -0.1em, $tx: 0, $ty: 0);
  		@include icon_s_pos($x: 4, $y: 0);
  	}
  }*/
}
.card-tags__item {
  background: #8AC751;
  padding: 0 0.8em;
  color: #fff;
  position: relative;
  margin: 0.5em 0.6em;
  font-size: 0.7em;
}
.card-tags__text {
  display: block;
}

.post-item--type-school .post-item__box {
  display: block;
}
.post-item--type-school .post-item__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.post-item--type-school .post-item__thumbnail {
  width: 36%;
}
.post-item--type-school .post-item__details {
  width: 64%;
}
.post-item--type-school .post-item__description {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
  line-height: 1.3;
  max-height: 6.5em;
  margin-top: 0em;
  margin-bottom: 0em;
}

.article--type-school {
  padding-left: 1em;
  padding-right: 1em;
  padding-bottom: 1em;
  background: #fff;
}
@media (max-width: 56rem) {
  .article--type-school {
    padding-left: 0.6em;
    padding-right: 0.6em;
  }
}

.avcal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  border-top: 2px solid #ddd;
  border-left: 2px solid #ddd;
  margin-top: 0.6em;
}
.avcal__day, .avcal__rest {
  border-right: 2px solid #ddd;
  border-bottom: 2px solid #ddd;
}
.avcal__day {
  display: block;
  font-size: 0.85em;
  font-weight: normal;
  line-height: 1.1;
  text-align: center;
  padding: 0.3em 0;
  background: #F3FAED;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-touch-callout: none;
}
.avcal__wday--sun span {
  color: #ff3010;
}
.avcal__wday--sat span {
  color: #00a0ef;
}
.avcal__rest {
  position: relative;
  width: 100%;
  height: 0;
  padding: 0 0 80%;
}
.avcal__rest::before {
  content: "";
  position: absolute;
  content: "";
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 1.6em;
  height: 1.6em;
  background: url("images/icon-crest.png") no-repeat scroll 0% 0%/1100% 500%;
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-size: 1100% 500%;
  background-position: 20% 0%;
}
.avcal__box {
  position: relative;
  width: calc(100% / 16);
}
@media (max-width: 42rem) {
  .avcal__box {
    width: calc(100% / 11);
  }
}
@media (max-width: 28rem) {
  .avcal__box {
    width: calc(100% / 7);
  }
}
.avcal__box--past {
  background: #eee;
}
.avcal__box--enabled {
  cursor: pointer;
}
.avcal__box--enabled::after {
  position: absolute;
  content: "";
  left: -1px;
  top: -1px;
  width: 100%;
  height: 100%;
}
.avcal__box--enabled:hover::after {
  -webkit-box-shadow: 0 0 1px 3px rgba(1, 224, 1, 0.6);
          box-shadow: 0 0 1px 3px rgba(1, 224, 1, 0.6);
  z-index: 1;
}
.avcal__box[data-rest=none] .avcal__rest::before {
  content: none;
}
.avcal__box[data-rest=plenty] .avcal__rest::before {
  background-position: 0% 0%;
}
.avcal__box[data-rest=less] .avcal__rest::before {
  background-position: 10% 0%;
}

.avcal-area {
  margin-top: 1.6em;
}
.avcal-list__item {
  margin-top: 1em;
}

.avcal-links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  width: auto;
  margin-left: -0.8em;
  margin-right: -0.8em;
}
.avcal-links > * {
  width: 50%;
  padding-left: 0.8em;
  padding-right: 0.8em;
  padding-top: 0;
  padding-bottom: 0;
}
.avcal-links__item {
  margin-top: 1em;
}
.avcal-links__link {
  padding: 1em 0.6em;
  width: 100%;
  line-height: 1.6;
  margin-top: 0;
}
.avcal-links__link--disabled {
  color: #8AC751;
  background: transparent;
  -webkit-box-shadow: 0 0 0 2px #8AC751 inset;
          box-shadow: 0 0 0 2px #8AC751 inset;
  cursor: default;
}
@media (max-width: 46rem) {
  .avcal-links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    list-style: none;
    width: auto;
    margin-left: 0;
    margin-right: 0;
  }
  .avcal-links > * {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    padding-top: 0;
    padding-bottom: 0;
  }
}

.article--type-availability .section--avlinks {
  margin-top: 2.6em;
}

.--id-page-recommends .section__content .section-heading__box {
  position: relative;
  font-size: 1.3em;
  color: #25AFEC;
  padding-left: 3.2307692308em;
}
.--id-page-recommends .section__content .section-heading__box::before {
  position: absolute;
  content: "";
  left: 0;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 3em;
  height: 3em;
  background-image: url("images/icon-cl.png");
  background-size: 1100% 500%;
  background-repeat: no-repeat;
  background-attachment: scroll;
}
.--id-page-recommends .section__content > div:nth-of-type(1) .section-heading__box::before {
  background-position: 0% 25%;
}
.--id-page-recommends .section__content > div:nth-of-type(2) .section-heading__box::before {
  background-position: 10% 25%;
}
.--id-page-recommends .section__content > div:nth-of-type(3) .section-heading__box::before {
  background-position: 20% 25%;
}
.--id-page-recommends .section__content > div:nth-of-type(4) .section-heading__box::before {
  background-position: 30% 25%;
}
.--id-page-recommends .section__content > div:nth-of-type(5) .section-heading__box::before {
  background-position: 40% 25%;
}

.--id-page-recommends .section .section--recommend {
  border-bottom: 1px solid #E9E6E6;
}
.--id-page-recommends .section .section__content {
  padding-left: 4.2em;
  margin-top: 1em;
}

.--id-page-recommends .section--data-list .data-list {
  border: none;
}
.--id-page-recommends .section--data-list .data-list .data-list__head {
  width: 30%;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
}
.--id-page-recommends .section--data-list .data-list .data-list__data {
  width: 70%;
  padding: 1em;
}
.--id-page-recommends .section--data-list .data-list .data-list__item--index-0 .data-list__head {
  background: #00b8ee;
}
.--id-page-recommends .section--data-list .data-list .data-list__item--index-0 .data-list__data {
  background: #eaf5fc;
}
.--id-page-recommends .section--data-list .data-list .data-list__item--index-1 .data-list__head {
  background: #ea6d8d;
}
.--id-page-recommends .section--data-list .data-list .data-list__item--index-1 .data-list__data {
  background: #fceef4;
}
.--id-page-recommends .section--data-list .data-list .data-list__item--index-2 .data-list__head {
  background: #6cba5a;
}
.--id-page-recommends .section--data-list .data-list .data-list__item--index-2 .data-list__data {
  background: #ebf4e2;
}
.--id-page-recommends .section--data-list .data-list .data-list__item--index-3 .data-list__head {
  background: #f29600;
}
.--id-page-recommends .section--data-list .data-list .data-list__item--index-3 .data-list__data {
  background: #fbe2cc;
}

@media (max-width: 56rem) {
  .--id-page-recommends .section--data-list .section__content {
    padding-left: 0;
  }
}

.--id-page-flow .section__content .wp-block-lazyblock-section {
  /*
  &:nth-of-type(1) .section__content:before {
  	content: none;
  }*/
}

.--id-page-flow .section__content .section-heading__box {
  position: relative;
  font-size: 1.3em;
  color: #25AFEC;
  padding-left: 3.2307692308em;
}
.--id-page-flow .section__content .section-heading__box::before {
  position: absolute;
  content: "";
  left: 0;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 3em;
  height: 3em;
  background-image: url("images/icon-cl.png");
  background-size: 1100% 500%;
  background-repeat: no-repeat;
  background-attachment: scroll;
}
.--id-page-flow .section__content > div:nth-of-type(1) .section-heading__box::before {
  background-position: 50% 25%;
}
.--id-page-flow .section__content > div:nth-of-type(2) .section-heading__box::before {
  background-position: 60% 25%;
}
.--id-page-flow .section__content > div:nth-of-type(3) .section-heading__box::before {
  background-position: 70% 25%;
}
.--id-page-flow .section__content > div:nth-of-type(4) .section-heading__box::before {
  background-position: 80% 25%;
}
.--id-page-flow .section__content > div:nth-of-type(5) .section-heading__box::before {
  background-position: 90% 25%;
}

.section--flow .section__content {
  padding-left: 4.2em;
  margin-top: 1em;
  position: relative;
}
.section--flow .section__content:before {
  background: -webkit-gradient(linear, left top, left bottom, from(#25AFEC), to(transparent));
  background: -webkit-linear-gradient(#25AFEC, transparent);
  background: linear-gradient(#25AFEC, transparent);
  content: "";
  width: 9px;
  height: calc(100% + 37px);
  position: absolute;
  top: 0;
  left: 27px;
}

.img-left {
  margin: 0;
  text-align: left !important;
}

.img-left img {
  margin: 0 !important;
}

.margin-tb-25 {
  margin: 25px 0 !important;
}

.--id-page-flow .web-examination {
  width: 100%;
  text-align: center;
  border: solid 2px;
  display: inline-block;
  padding: 1em;
  margin-right: 1em;
}

.--id-page-obtaining .section__content .margin-tb-10 {
  margin: 10px 0;
}
.--id-page-obtaining .section__content .margin-tb-20 {
  margin: 20px 0;
}

.section--obtaining .section-heading__box {
  font-size: 1.3em;
  color: #25AFEC;
  padding-left: 3.2307692308em;
  position: relative;
}
.section--obtaining .section__content {
  padding-left: 4.2em;
  margin-top: 1em;
  position: relative;
}
.section--obtaining .section__content:before {
  background: -webkit-gradient(linear, left top, left bottom, from(#25AFEC), to(transparent));
  background: -webkit-linear-gradient(#25AFEC, transparent);
  background: linear-gradient(#25AFEC, transparent);
  content: "";
  width: 9px;
  height: calc(100% + 37px);
  position: absolute;
  top: 0;
  left: 27px;
}

.--id-page-obtaining .section__content .section-heading__box {
  position: relative;
  font-size: 1.3em;
  color: #25AFEC;
  padding-left: 3.2307692308em;
}
.--id-page-obtaining .section__content .section-heading__box::before {
  position: absolute;
  content: "";
  left: 0;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 3em;
  height: 3em;
  background-image: url("images/icon-cl.png");
  background-size: 1100% 500%;
  background-repeat: no-repeat;
  background-attachment: scroll;
}
.--id-page-obtaining .section__content > div:nth-of-type(1) .section-heading__box::before {
  background-position: 50% 25%;
}
.--id-page-obtaining .section__content > div:nth-of-type(2) .section-heading__box::before {
  background-position: 60% 25%;
}
.--id-page-obtaining .section__content > div:nth-of-type(3) .section-heading__box::before {
  background-position: 70% 25%;
}
.--id-page-obtaining .section__content > div:nth-of-type(4) .section-heading__box::before {
  background-position: 80% 25%;
}
.--id-page-obtaining .section__content > div:nth-of-type(5) .section-heading__box::before {
  background-position: 90% 25%;
}

.--id-page-requirements ​ .section ​ .section--requirements {
  border-bottom: 1px solid #E9E6E6;
}
.--id-page-requirements ​ .section ​ .section__content {
  padding-left: 4.2em;
  margin-top: 1em;
}

.--id-page-requirements .section__content .section-heading__box {
  position: relative;
  font-size: 1.3em;
  color: #25AFEC;
}

.--id-page-company .section .section-heading__box {
  font-size: 1.06em;
}
.--id-page-company .section .section__content {
  margin-top: 1em;
}

.--id-page-privacy .section {
  border-bottom: 1px solid #999;
}
.--id-page-privacy .section .section-heading__box {
  font-size: 1.06em;
}
.--id-page-privacy .section .section__content {
  padding-left: 1em;
  padding-right: 1em;
  margin-top: 0.6em;
}
.--id-page-privacy .section ul > li {
  margin-left: 1.6em;
  list-style-type: disc;
}

.--id-page-agreements .section {
  border-bottom: 1px solid #999;
}
.--id-page-agreements .section .section-heading__box {
  font-size: 1.06em;
}
.--id-page-agreements .section .section__content {
  padding-left: 1em;
  padding-right: 1em;
  margin-top: 1em;
}
.--id-page-agreements .section .table {
  margin: 20px 0;
  border: 1px solid #ccc;
}
.--id-page-agreements .section .table th, .--id-page-agreements .section .table td {
  padding: 5px 10px;
  border: 1px solid #ccc;
}
.--id-page-agreements .section .table th {
  background-color: #ccc;
}

.article--type-page {
  padding-left: 1em;
  padding-right: 1em;
  padding-bottom: 1em;
  background: #fff;
}
@media (max-width: 56rem) {
  .article--type-page {
    padding-left: 0.6em;
    padding-right: 0.6em;
  }
}

.article--type-availability {
  padding-left: 1em;
  padding-right: 1em;
  padding-bottom: 1em;
  background: #fff;
}
@media (max-width: 56rem) {
  .article--type-availability {
    padding-left: 0.6em;
    padding-right: 0.6em;
  }
}

.sitemap {
  margin-top: 1em;
}

.navigator--sitemap .navigator__link {
  display: inline-block;
  min-width: 11em;
  line-height: 1.5;
  padding: 0.25em 1.6em;
  border-radius: 1.6em;
  margin-top: 0.3em;
  -webkit-box-shadow: 0 0 0 1px #E9E6E6 inset;
          box-shadow: 0 0 0 1px #E9E6E6 inset;
}
.navigator--sitemap-schools .navigator__list--level-sub {
  margin-left: 1.6em;
}

#css-state-media-width {
  display: none;
  float: none;
}
@media screen and (max-width: 70rem) {
  #css-state-media-width {
    float: left;
  }
}
@media screen and (max-width: 46rem) {
  #css-state-media-width {
    float: right;
  }
}

#css-state-orientation {
  display: none;
  float: none;
}
@media (orientation: portrait) {
  #css-state-orientation {
    float: left;
  }
}
@media (max-width: 46rem) and (orientation: portrait) {
  #css-state-orientation {
    float: right;
  }
}

.--lazyload {
  opacity: 0;
  -webkit-transition: opacity 0.5s ease 0.1s;
  transition: opacity 0.5s ease 0.1s;
}
.--lazyload--loaded {
  opacity: 1;
}

@media all and (-ms-high-contrast: none) {
  body {
    font-family: "メイリオ", Meiryo, "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  }
}
.header__sticky {
  position: fixed;
  height: 4.2em;
  top: -4.2em;
  width: 100%;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 1000;
}
body.logged-in .header__sticky {
  top: calc(32px - 4.2em);
}

.header__sticky .hamburger-button {
  position: absolute;
  right: 1em;
  top: 150%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media (max-width: 56rem) {
  .header__sticky {
    opacity: 1;
    visibility: visible;
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
  }
}
@media (max-width: 46rem) {
  .header__sticky {
    height: 4.2em;
    top: -4.2em;
  }
  body.logged-in .header__sticky {
    top: calc(46px - 4.2em);
  }
}
.header__sticky-inner {
  position: relative;
  width: 100%;
  height: 100%;
  max-width: 82em;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1em;
  padding-right: 1em;
}
@media (max-width: 56rem) {
  .header__sticky-inner {
    padding-left: 0.6em;
    padding-right: 0.6em;
  }
}

.error-obj {
  border: 2px solid #f00;
  padding: 0.6em;
}

.debug-report {
  display: none;
  margin: 0;
  color: #eee;
  line-height: 1.7;
  text-align: left;
  background-color: #010144;
  padding: 0 1em;
}
.debug-report span {
  border-bottom: 1px solid #f13;
}
.debug-report__red {
  color: #f13;
}
.debug-report__pointer {
  color: #4f5;
  background-color: #017801;
}

.css-guide {
  position: fixed;
  z-index: 8000;
}
.css-guide__switch {
  position: fixed;
  left: 1em;
  bottom: 1em;
  width: 2.6em;
  height: 1.6em;
  font-size: 1em;
}
.css-guide__switch *, .css-guide__switch:before, .css-guide__switch:after {
  -webkit-box-sizing: initial;
          box-sizing: initial;
}
.css-guide__switch input {
  position: absolute;
  display: none;
  right: -100%;
  bottom: 0;
  visibility: hidden;
  z-index: -1;
}
.css-guide__switch label {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 2px solid #f00;
  border-radius: 1.1em;
  z-index: 1;
  cursor: pointer;
  caret-color: transparent;
}
.css-guide__switch label::after {
  position: absolute;
  content: "";
  display: block;
  left: 0.2em;
  top: 0.2em;
  width: 1.2em;
  height: 1.2em;
  -webkit-transform: none;
          transform: none;
  outline: none;
  border-radius: 100%;
  background: #f00;
  -webkit-transition: all 0.03s linear;
  transition: all 0.03s linear;
}
.css-guide__switch input[type=checkbox]:checked ~ label::after {
  -webkit-transform: translateX(1em);
          transform: translateX(1em);
}
.css-guide__screen {
  display: none;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}

body.--show-css-guide .css-guide__screen {
  display: block;
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(1, 224, 255, 0.66)), to(rgba(1, 224, 255, 0.66))), -webkit-gradient(linear, left top, right top, from(rgba(1, 224, 255, 0.66)), to(rgba(1, 224, 255, 0.66))), -webkit-gradient(linear, left top, right top, from(rgba(1, 224, 255, 0.66)), to(rgba(1, 224, 255, 0.66)));
  background-image: -webkit-linear-gradient(left, rgba(1, 224, 255, 0.66) 0%, rgba(1, 224, 255, 0.66) 100%), -webkit-linear-gradient(left, rgba(1, 224, 255, 0.66) 0%, rgba(1, 224, 255, 0.66) 100%), -webkit-linear-gradient(left, rgba(1, 224, 255, 0.66) 0%, rgba(1, 224, 255, 0.66) 100%);
  background-image: linear-gradient(90deg, rgba(1, 224, 255, 0.66) 0%, rgba(1, 224, 255, 0.66) 100%), linear-gradient(90deg, rgba(1, 224, 255, 0.66) 0%, rgba(1, 224, 255, 0.66) 100%), linear-gradient(90deg, rgba(1, 224, 255, 0.66) 0%, rgba(1, 224, 255, 0.66) 100%);
  background-size: 1px 100%, 1px 100%, 1px 100%;
  background-repeat: no-repeat;
  background-position: left 25% bottom 0, left 50% bottom 0, left 75% bottom 0;
  pointer-events: none;
}
body.--show-css-guide .main {
  -webkit-box-shadow: 0 0 0 4px rgba(250, 170, 1, 0.4) inset;
          box-shadow: 0 0 0 4px rgba(250, 170, 1, 0.4) inset;
}
body.--show-css-guide .sidebar {
  -webkit-box-shadow: 0 0 0 4px rgba(32, 1, 240, 0.4) inset;
          box-shadow: 0 0 0 4px rgba(32, 1, 240, 0.4) inset;
}
body.--show-css-guide .debug-report {
  display: block;
}
body.--show-css-guide .navigator {
  outline: 2px dashed #f00 !important;
}
body.--show-css-guide .navigator__nodelist {
  outline: 1px dotted #0f0;
}
body.--show-css-guide .navigator__node {
  outline: 1px dotted #e2e;
}
body.--show-css-guide .navigator__item {
  -webkit-box-shadow: 0 0 0 1px rgba(0, 60, 250, 0.8) inset;
          box-shadow: 0 0 0 1px rgba(0, 60, 250, 0.8) inset;
}
body.--show-css-guide .--ui-role--accordion_content {
  -webkit-box-shadow: 0 0 0 3px rgba(99, 99, 99, 0.5) inset;
          box-shadow: 0 0 0 3px rgba(99, 99, 99, 0.5) inset;
}
body.--show-css-guide .post-list {
  outline: 2px dashed #f00 !important;
}
body.--show-css-guide .post-list__item {
  outline: 1px outset #26f;
}
body.--show-css-guide .section {
  -webkit-box-shadow: 0 0 0 6px rgba(0, 40, 255, 0.3) inset;
          box-shadow: 0 0 0 6px rgba(0, 40, 255, 0.3) inset;
}
body.--show-css-guide .section__inner {
  -webkit-box-shadow: 0 0 0 1px #f1f inset;
          box-shadow: 0 0 0 1px #f1f inset;
}
body.--show-css-guide .flex-box {
  -webkit-box-shadow: 0 0 0 6px rgba(240, 40, 250, 0.3) inset;
          box-shadow: 0 0 0 6px rgba(240, 40, 250, 0.3) inset;
}
body.--show-css-guide .__file__,
body.--show-css-guide ._secret {
  display: block;
}
body.--show-css-guide a,
body.--show-css-guide a .--ellipsis {
  background: rgba(255, 32, 200, 0.5);
}
body.--show-css-guide h1 {
  -webkit-box-shadow: 0 0 0 2px rgba(255, 0, 0, 0.5) inset;
          box-shadow: 0 0 0 2px rgba(255, 0, 0, 0.5) inset;
}
body.--show-css-guide h2 {
  -webkit-box-shadow: 0 0 0 2px rgba(255, 180, 0, 0.5) inset;
          box-shadow: 0 0 0 2px rgba(255, 180, 0, 0.5) inset;
}
body.--show-css-guide h3 {
  -webkit-box-shadow: 0 0 0 2px rgba(4, 230, 4, 0.5) inset;
          box-shadow: 0 0 0 2px rgba(4, 230, 4, 0.5) inset;
}
body.--show-css-guide h4 {
  -webkit-box-shadow: 0 0 0 2px rgba(4, 220, 250, 0.5) inset;
          box-shadow: 0 0 0 2px rgba(4, 220, 250, 0.5) inset;
}
body.--show-css-guide h5 {
  -webkit-box-shadow: 0 0 0 2px rgba(150, 0, 250, 0.5) inset;
          box-shadow: 0 0 0 2px rgba(150, 0, 250, 0.5) inset;
}
body.--show-css-guide h6 {
  -webkit-box-shadow: 0 0 0 2px rgba(255, 0, 255, 0.5) inset;
          box-shadow: 0 0 0 2px rgba(255, 0, 255, 0.5) inset;
}
body.--show-css-guide .inner-content {
  outline: 2px dotted rgba(1, 230, 1, 0.5);
}
body.--show-css-guide .school-section {
  -webkit-box-shadow: 0 0 0 2px rgba(1, 234, 255, 0.5) inset;
          box-shadow: 0 0 0 2px rgba(1, 234, 255, 0.5) inset;
}
body.--show-css-guide .school-tab-pages .school-tab {
  -webkit-box-shadow: 0 0 0 4px rgba(4, 200, 0, 0.2) inset;
          box-shadow: 0 0 0 4px rgba(4, 200, 0, 0.2) inset;
}
body.--show-css-guide .school-plan-form {
  -webkit-box-shadow: 0 0 0 2px rgba(254, 1, 1, 0.4) inset;
          box-shadow: 0 0 0 2px rgba(254, 1, 1, 0.4) inset;
}
/*# sourceMappingURL=maps/style.css.map */
