@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700&amp;display=swap");
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

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

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * 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;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

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

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

/**
 * 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;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * 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
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * 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"] {
  -webkit-appearance: button;
}

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

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 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 {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

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

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * 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 odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * 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;
  /* 1 */
  font: inherit;
  /* 2 */
}

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

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

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

/*
https://github.com/tobiasahlin/SpinKit

The MIT License (MIT)

Copyright (c) 2015 Tobias Ahlin

Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
.spinner {
  width: 40px;
  height: 40px;
  z-index: 10001;
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.double-bounce1, .double-bounce2 {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: #c23462;
  opacity: 0.6;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-animation: sk-bounce 3.0s infinite ease-in-out;
  animation: sk-bounce 3.0s infinite ease-in-out;
}

.double-bounce2 {
  -webkit-animation-delay: -1.0s;
  animation-delay: -1.0s;
}

@-webkit-keyframes sk-bounce {
  0%, 100% {
    -webkit-transform: scale(0);
  }
  50% {
    -webkit-transform: scale(1);
  }
}
@keyframes sk-bounce {
  0%, 100% {
    transform: scale(0);
    -webkit-transform: scale(0);
  }
  50% {
    transform: scale(1);
    -webkit-transform: scale(1);
  }
}
/*
 *  Remodal - v1.1.0
 *  Responsive, lightweight, fast, synchronized with CSS animations, fully customizable modal window plugin with declarative configuration and hash tracking.
 *  http://vodkabears.github.io/remodal/
 *
 *  Made by Ilya Makarov
 *  Under MIT License
 */
/* ==========================================================================
   Remodal's necessary styles
   ========================================================================== */
/* Hide scroll bar */
html.remodal-is-locked {
  overflow: hidden;
  -ms-touch-action: none;
  touch-action: none;
}

/* Anti FOUC */
.remodal,
[data-remodal-id] {
  display: none;
}

/* Necessary styles of the overlay */
.remodal-overlay {
  position: fixed;
  z-index: 9999;
  top: -5000px;
  right: -5000px;
  bottom: -5000px;
  left: -5000px;
  display: none;
}

/* Necessary styles of the wrapper */
.remodal-wrapper {
  position: fixed;
  z-index: 10000;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: none;
  overflow: auto;
  text-align: center;
  -webkit-overflow-scrolling: touch;
}

.remodal-wrapper:after {
  display: inline-block;
  height: 100%;
  margin-left: -0.05em;
  content: "";
}

/* Fix iPad, iPhone glitches */
.remodal-overlay,
.remodal-wrapper {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

/* Necessary styles of the modal dialog */
.remodal {
  position: relative;
  outline: none;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

.remodal-is-initialized {
  /* Disable Anti-FOUC */
  display: inline-block;
}

/*
 *  Remodal - v1.1.0
 *  Responsive, lightweight, fast, synchronized with CSS animations, fully customizable modal window plugin with declarative configuration and hash tracking.
 *  http://vodkabears.github.io/remodal/
 *
 *  Made by Ilya Makarov
 *  Under MIT License
 */
/* ==========================================================================
   Remodal's default mobile first theme
   ========================================================================== */
/* Default theme styles for the background */
.remodal-bg.remodal-is-opening,
.remodal-bg.remodal-is-opened {
  -webkit-filter: blur(3px);
  filter: blur(3px);
}

/* Default theme styles of the overlay */
.remodal-overlay {
  background: rgba(0, 0, 0, 0.3);
}

.remodal-overlay.remodal-is-opening,
.remodal-overlay.remodal-is-closing {
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.remodal-overlay.remodal-is-opening {
  -webkit-animation-name: remodal-overlay-opening-keyframes;
  animation-name: remodal-overlay-opening-keyframes;
}

.remodal-overlay.remodal-is-closing {
  -webkit-animation-name: remodal-overlay-closing-keyframes;
  animation-name: remodal-overlay-closing-keyframes;
}

/* Default theme styles of the wrapper */
.remodal-wrapper {
  padding: 10px 10px 0;
}

/* Default theme styles of the modal dialog */
.remodal {
  box-sizing: border-box;
  width: 100%;
  min-height: 80vh;
  margin-top: 50px;
  margin-bottom: 50px;
  padding: 30px;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  color: #000;
  background: #fff;
  box-shadow: 0 0 25px rgba(0, 0, 0, 0.2), 0 0 25px rgba(0, 0, 0, 0.2), 0 0 8px rgba(0, 0, 0, 0.2);
}
@media (max-width: 767px) {
  .remodal {
    text-align: left;
    margin-top: 25px;
    margin-bottom: 25px;
    padding: 35px 10px 20px 10px;
    box-shadow: 0 0 12px rgba(0, 0, 0, 0.2), 0 0 12px rgba(0, 0, 0, 0.2), 0 0 4px rgba(0, 0, 0, 0.2);
  }
}
.remodal figure {
  max-width: 525px;
  margin: 0 auto 30px auto;
}
.remodal figure figcaption {
  display: block;
  padding: 5px 0 0 0;
}
.remodal .col2 .col__box {
  margin-top: 10px !important;
}
@media (max-width: 767px) {
  .remodal .col2 .col__box {
    width: 48%;
    margin-right: 4%;
    float: left;
    clear: none;
    text-align: center;
  }
}
.remodal .col2 .col__box a {
  color: #000;
}
.remodal .col2 .col__box a figure {
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .remodal .col2 .col__box:nth-child(2n) {
    margin-right: 0;
  }
}
@media (max-width: 767px) {
  .remodal .col2 .col__box:nth-child(2n+1) {
    clear: left;
  }
}
.remodal dl {
  width: 100%;
  text-align: center;
  margin: 0;
  line-height: 1.7;
}
.remodal dl dt {
  font-weight: bold;
  font-size: 14px;
  margin: 0 0 15px 0;
}
.remodal dl dt b {
  font-size: 19px;
}
.remodal dl dd {
  margin: 0;
  padding: 0;
}
.remodal dl dd p {
  margin: 0;
  padding: 0;
}

.remodal.remodal-is-opening,
.remodal.remodal-is-closing {
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.remodal.remodal-is-opening {
  -webkit-animation-name: remodal-opening-keyframes;
  animation-name: remodal-opening-keyframes;
}

.remodal.remodal-is-closing {
  -webkit-animation-name: remodal-closing-keyframes;
  animation-name: remodal-closing-keyframes;
}

/* Vertical align of the modal dialog */
.remodal,
.remodal-wrapper:after {
  vertical-align: middle;
}

/* Close button */
.remodal-close {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  overflow: visible;
  width: 35px;
  height: 35px;
  margin: 0;
  padding: 0;
  cursor: pointer;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
  text-decoration: none;
  color: #7d7d7d;
  background-color: #ddd;
  border: 0;
  outline: 0;
}
@media (min-width: 981px) {
  .remodal-close {
    background: none;
  }
}

.remodal-close:hover,
.remodal-close:focus {
  color: #2b2e38;
}

.remodal-close:before {
  display: block;
  font-family: Arial, "Helvetica CY", "Nimbus Sans L", sans-serif !important;
  font-size: 25px;
  line-height: 35px;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 35px;
  content: "\00d7";
  text-align: center;
}

/* Dialog buttons */
.remodal-confirm,
.remodal-cancel {
  font: inherit;
  display: inline-block;
  overflow: visible;
  min-width: 110px;
  margin: 0;
  padding: 12px 0;
  cursor: pointer;
  -webkit-transition: background 0.2s;
  transition: background 0.2s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  border: 0;
  outline: 0;
}

.remodal-confirm {
  color: #fff;
  background: #81c784;
}

.remodal-confirm:hover,
.remodal-confirm:focus {
  background: #66bb6a;
}

.remodal-cancel {
  color: #fff;
  background: #e57373;
}

.remodal-cancel:hover,
.remodal-cancel:focus {
  background: #ef5350;
}

/* Remove inner padding and border in Firefox 4+ for the button tag. */
.remodal-confirm::-moz-focus-inner,
.remodal-cancel::-moz-focus-inner,
.remodal-close::-moz-focus-inner {
  padding: 0;
  border: 0;
}

/* Keyframes
   ========================================================================== */
@-webkit-keyframes remodal-opening-keyframes {
  from {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
    opacity: 0;
  }
  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
    -webkit-filter: blur(0);
    filter: blur(0);
  }
}
@keyframes remodal-opening-keyframes {
  from {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
    opacity: 0;
  }
  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
    -webkit-filter: blur(0);
    filter: blur(0);
  }
}
@-webkit-keyframes remodal-closing-keyframes {
  from {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  to {
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
    opacity: 0;
    -webkit-filter: blur(0);
    filter: blur(0);
  }
}
@keyframes remodal-closing-keyframes {
  from {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  to {
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
    opacity: 0;
    -webkit-filter: blur(0);
    filter: blur(0);
  }
}
@-webkit-keyframes remodal-overlay-opening-keyframes {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes remodal-overlay-opening-keyframes {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes remodal-overlay-closing-keyframes {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes remodal-overlay-closing-keyframes {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
/* Media queries
   ========================================================================== */
@media only screen and (min-width: 641px) {
  .remodal {
    max-width: 768px;
  }
}
/* IE8
   ========================================================================== */
.lt-ie9 .remodal-overlay {
  background: #2b2e38;
}

.lt-ie9 .remodal {
  width: 700px;
}

/* ----------------------------------------------------------------
	base
----------------------------------------------------------------- */
body,
button,
input,
select,
textarea {
  font-family: "Noto Sans JP", "Helvetica Neue", "Segoe UI", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, "メイリオ", sans-serif;
}
@media all and (-ms-high-contrast: none) {
  body,
  button,
  input,
  select,
  textarea {
    font-family: "Arial", "Segoe UI", Meiryo, "メイリオ", sans-serif;
  }
}

html {
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  overflow-y: scroll;
}

body {
  color: #222;
  margin: 0;
  padding: 0;
  font-size: 15px;
  word-wrap: break-word;
  overflow-wrap: break-word;
  -moz-font-feature-settings: "palt";
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
}
@media (max-width: 980px) {
  body {
    font-size: 14px;
  }
}
@media (max-width: 767px) {
  body {
    font-size: 3.75vw;
  }
}

ul {
  padding: 0;
  margin: 0;
}
ul li {
  list-style-type: none;
}

p {
  margin: 0;
  line-height: 2.4;
}
@media (max-width: 980px) {
  p {
    line-height: 1.8;
  }
}

a {
  text-decoration: none;
  outline: 0 none;
  color: #333;
}

figure {
  margin-left: 0;
  margin-right: 0;
  text-align: center;
}

img {
  border: 0;
  line-height: 1;
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

/* ----------------------------------------------------------------
	header
----------------------------------------------------------------- */
.header {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  margin: 0;
  padding: 0;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 4;
  background: #c23462;
}
@media (max-width: 767px) {
  .header {
    background: none;
    box-shadow: none;
  }
}
.header__wrap {
  z-index: 1;
  position: relative;
  margin: 0 auto;
  max-width: 1240px;
  opacity: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transform: translate(10px, 0);
  transition: transform .6s .6s ease-in-out, opacity .6s .6s ease-in-out;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.header__wrap:before, .header__wrap:after {
  display: table;
  content: '';
}
.header__wrap:after {
  clear: both;
}
@media (max-width: 1240px) {
  .header__wrap {
    padding: 0 20px;
  }
}
@media (max-width: 767px) {
  .header__wrap {
    background: none;
    position: static;
    opacity: 1;
    transform: none;
    transition: none 0s;
  }
}
.js .header__wrap {
  opacity: 1;
  transform: translate(0, 0);
}
@media (max-width: 767px) {
  .js .header__wrap {
    transform: none;
  }
}
.header__nav {
  padding: 0;
  text-align: center;
}
@media (max-width: 767px) {
  .header__nav {
    float: none;
    height: 0;
    width: 0;
    overflow-y: auto;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #fdcbdb;
  }
}
.header__nav > li {
  display: inline-block;
  line-height: 70px;
  /*
  &.pamphlet{
  	@include forSP{
  		margin-top:1.5em;
  		max-width:80%;
  		margin-left:auto;
  		margin-right:auto;
  		border-bottom:0 none;
  	}
  	a{
  		color:#fff;
  		text-decoration: none;
  		padding:0;
  		margin:0;
  		text-align: center;
  		&:before{
  			display: none !important;
  		}
  		span{
  			display: inline-block;
  			padding:0 2em;
  			line-height: 3;
  			border-radius: 3em;
  			background-color: #ffa811;
  			color: inherit;
  			@include forTablet{
  				display: block;
  			}
  		}
  	}
  }
  */
}
@media (max-width: 767px) {
  .header__nav > li {
    width: 100%;
    float: none;
    line-height: 1;
    border-bottom: 1px solid #fff;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
}
.header__nav > li > a {
  position: relative;
  font-size: 16px;
  font-weight: bold;
  display: block;
  padding: 0;
  text-decoration: none;
  color: #fff;
  white-space: nowrap;
}
@media (max-width: 980px) {
  .header__nav > li > a {
    font-size: 15px;
  }
}
@media (max-width: 767px) {
  .header__nav > li > a {
    padding: 1.25em 0;
    font-size: 4.5vw;
    padding: 1.25em 0;
    display: block;
    text-align: left;
    position: relative;
    color: #c23462;
  }
  .header__nav > li > a:before {
    content: '';
    display: block !important;
    position: absolute !important;
    top: 50% !important;
    left: auto !important;
    right: 20px !important;
    width: 8px !important;
    height: 8px !important;
    border: 0 none !important;
    border-bottom: 2px solid #c23462 !important;
    border-left: 2px solid #c23462 !important;
    -ms-transform: translateX(-5px) rotate(-135deg) !important;
    transform: translateX(-5px) rotate(-135deg) !important;
    margin: -5px 0 0 0 !important;
    opacity: 1 !important;
  }
}
.header__nav > li > a span {
  padding-right: 2em;
  padding-left: 2em;
  position: relative;
  line-height: 1;
}
@media (max-width: 980px) {
  .header__nav > li > a span {
    padding-right: 1.5em;
    padding-left: 1.5em;
  }
}
@media (max-width: 767px) {
  .header__nav > li > a span {
    padding-right: 1em;
    padding-left: 1em;
  }
}
@media (min-width: 981px) {
  .header__nav > li > a {
    transition: color 0.3s;
  }
  .header__nav > li > a:hover {
    background-color: #fff;
    color: #c23462;
  }
}
.header__nav > li > a.is-current {
  background-color: #fff;
  color: #c23462;
}

#buildMenuButton {
  display: none;
  z-index: 101;
  position: absolute;
  top: 0;
  right: 0;
  margin: 0;
  padding: 0;
  width: 48px;
  height: 48px;
  cursor: pointer;
  background: #c23462;
}
@media (max-width: 767px) {
  #buildMenuButton {
    display: block;
  }
}
#buildMenuButton:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 15px;
  width: 30px;
  height: 2px;
  margin-top: -8px;
  background: #fff;
  transition: all 0.3s ease-in-out;
}
@media (max-width: 767px) {
  #buildMenuButton:before {
    margin-top: -5px;
    left: 12px;
    width: 24px;
    height: 2px;
  }
}
#buildMenuButton span {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  color: #fff;
  font-size: 10px;
  line-height: 1;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  padding: 35px 0 0 0;
  text-align: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
@media (max-width: 767px) {
  #buildMenuButton span {
    font-size: 8px;
    padding-top: 30px;
  }
}
#buildMenuButton span:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 15px;
  width: 30px;
  height: 2px;
  margin-top: -15px;
  background: #fff;
  transition: transform 0.3s ease-in-out;
}
@media (max-width: 767px) {
  #buildMenuButton span:before {
    margin-top: -11px;
    left: 12px;
    width: 24px;
    height: 2px;
  }
}
#buildMenuButton span:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 15px;
  width: 30px;
  height: 2px;
  margin-top: -1px;
  background: #fff;
  transition: transform 0.3s ease-in-out;
}
@media (max-width: 767px) {
  #buildMenuButton span:after {
    margin-top: 1px;
    left: 12px;
    width: 24px;
    height: 2px;
  }
}

@media (max-width: 767px) {
  #nav {
    -webkit-transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
  }

  .header__nav {
    -webkit-transition: -webkit-transform 0.3s, opacity 0.3s;
    transition: transform 0.3s, opacity 0.3s;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    opacity: 0;
    padding: 60px 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
}
@media (max-width: 767px) and (max-width: 767px) {
  .header__nav {
    padding: 48px 0;
  }
}
@media (max-width: 767px) {
  .header__nav li {
    margin: 0;
    padding: 0;
  }
  .header__nav li a {
    -webkit-transform: translateX(-20%);
    transform: translateX(-20%);
    opacity: 0;
    transition: transform 0.3s, opacity 0.3s, background-color 0.3s;
  }

  .build-menu-animating .header {
    height: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  .build-menu-animating .header__nav {
    height: 100%;
    width: 100%;
  }

  .build-menu-animating.build-menu-open .header__nav {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
  .build-menu-animating.build-menu-open .header__nav > li a {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
  .build-menu-animating.build-menu-open .header__nav > li:nth-child(1) a {
    transition-delay: 0.4s;
  }
  .build-menu-animating.build-menu-open .header__nav > li:nth-child(2) a {
    transition-delay: 0.45s;
  }
  .build-menu-animating.build-menu-open .header__nav > li:nth-child(3) a {
    transition-delay: 0.5s;
  }
  .build-menu-animating.build-menu-open .header__nav > li:nth-child(4) a {
    transition-delay: 0.55s;
  }
  .build-menu-animating.build-menu-open .header__nav > li:nth-child(5) a {
    transition-delay: 0.6s;
  }
  .build-menu-animating.build-menu-open .header__nav > li:nth-child(6) a {
    transition-delay: 0.65s;
  }
  .build-menu-animating.build-menu-open .header__nav > li:nth-child(7) a {
    transition-delay: 0.7s;
  }
  .build-menu-animating.build-menu-open #buildMenuButton:before {
    opacity: 0;
  }
  .build-menu-animating.build-menu-open #buildMenuButton span:before {
    margin-top: -8px;
    transform: rotate(-45deg);
  }
}
@media (max-width: 767px) and (max-width: 767px) {
  .build-menu-animating.build-menu-open #buildMenuButton span:before {
    margin-top: -6px;
  }
}
@media (max-width: 767px) {
  .build-menu-animating.build-menu-open #buildMenuButton span:after {
    margin-top: -8px;
    transform: rotate(-135deg);
  }
}
@media (max-width: 767px) and (max-width: 767px) {
  .build-menu-animating.build-menu-open #buildMenuButton span:after {
    margin-top: -6px;
  }
}

@media (max-width: 767px) {
  .build-menu-animating.build-menu-close .header__nav {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
    opacity: 0;
    -webkit-transition-duration: 0s, 0.3s;
    transition-duration: 0s, 0.3s;
    -webkit-transition-delay: 0.3s , 0s;
    transition-delay: 0.3s, 0s;
  }
  .build-menu-animating.build-menu-close .header__nav li a {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
    -webkit-transition: none;
    transition: none;
  }

  .transform.build-menu-animating.build-menu-close .header__nav {
    -webkit-transition-duration: 0s, 0.3s;
    transition-duration: 0s, 0.3s;
    -webkit-transition-delay: 1.2s , 0.3s;
    transition-delay: 1.2s, 0.3s;
  }
}
/* ----------------------------------------------------------------
	footer
----------------------------------------------------------------- */
.footer small {
  color: #fff;
  background: #c23462;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  font-size: 12px;
  line-height: 60px;
}
@media (max-width: 980px) {
  .footer small {
    line-height: 40px;
  }
}
@media (max-width: 767px) {
  .footer small {
    line-height: 3;
    font-size: 3vw;
  }
}

#pagetop {
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 100;
  cursor: pointer;
  line-height: 1;
  transition-property: opacity;
}
#pagetop:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: url(../images/top.png) no-repeat 0 0;
  background-size: 54px auto;
  position: absolute;
  top: 0;
  left: 0;
}
#pagetop a {
  height: 0;
  display: block;
  overflow: hidden;
  position: relative;
  z-index: 1;
  line-height: 2;
  width: 74px;
  padding-top: 74px;
  white-space: nowrap;
  text-indent: -100%;
  vertical-align: baseline;
}
@media (min-width: 1360px) {
  #pagetop {
    right: auto;
    left: 50%;
    margin-left: 520px;
  }
}
@media (min-width: 981px) {
  #pagetop:before {
    -webkit-transition: -webkit-transform 0.5s;
    transition: transform 0.5s;
  }
  #pagetop:hover:before {
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px);
  }
}
@media (max-width: 767px) {
  #pagetop {
    bottom: 0px;
  }
  #pagetop:before {
    background-size: 44px auto;
  }
  #pagetop a {
    width: 54px;
    padding-top: 54px;
  }
}

#enquete {
  position: fixed;
  bottom: 0;
  left: 50%;
  width: 300px;
  height: 60px;
  z-index: 10;
  margin: 0 0 0 200px;
  text-align: left;
  font-size: 18px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media (max-width: 1080px) {
  #enquete {
    right: 60px;
    left: auto;
    margin-left: 0;
    text-align: left;
  }
}
@media (max-width: 767px) {
  #enquete {
    height: 3.5em;
    font-size: 4vw;
    left: 10px;
    right: auto;
    width: 18em;
  }
}
#enquete #hiddenEnquete {
  opacity: 1;
  z-index: 1;
  cursor: pointer;
  z-index: 3;
  position: absolute;
  top: -5px;
  left: -5px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 0 none;
  width: 20px;
  height: 20px;
  background: transparent url(../images/close.png) no-repeat 0 0;
  background-size: 20px 20px;
  outline: 0 none !important;
  transition: opacity 0.3s;
}
#enquete #hiddenEnquete:checked {
  opacity: 0;
}
#enquete #hiddenEnquete:checked + a {
  transform: translateY(100%);
}
#enquete a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: block;
  text-align: left;
  text-decoration: none;
  font-weight: bold;
  line-height: 1.4;
  color: #fff;
  padding: 0;
  border-radius: 3px 3px 0 0;
  background-color: #ffa200;
  opacity: 1;
  transition: transform 0.3s;
}
#enquete a:before {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  right: 20px;
  width: 100%;
  height: 100%;
  transform: translate(0, -50%);
  background: url(../images/arrow-white.svg) no-repeat 100% 50%;
  background-size: 8px auto;
  transition: transform .3s ease-in-out;
}
#enquete a:hover:before {
  transform: translate(8px, -50%);
}
#enquete a span {
  position: absolute;
  top: 50%;
  left: 1em;
  transform: translateY(-50%);
}
@media (max-width: 767px) {
  #enquete a span {
    left: 10px;
  }
}
#enquete a small {
  display: block;
  font-size: 80%;
}
.build-menu-open #enquete {
  opacity: 0;
  visibility: hidden;
  z-index: -1;
}

/* ----------------------------------------------------------------
	notes
----------------------------------------------------------------- */
.notes {
  margin: 1em 0 !important;
  position: relative;
  padding-left: 1.25em !important;
  font-size: 80%;
  list-style: none !important;
  line-height: 1.2 !important;
}
.notes > li {
  position: relative;
  list-style: none !important;
  padding-left: 0 !important;
  margin: 0 !important;
}
.notes > li:before {
  display: none !important;
}
.notes__head {
  position: absolute;
  top: 0;
  left: -1.25em;
}

/* ----------------------------------------------------------------
	letter-spacing
----------------------------------------------------------------- */
.ls--half {
  letter-spacing: 0.5em;
}
.ls--third {
  letter-spacing: 0.33em;
}
.ls--1 {
  letter-spacing: 1em;
}
.ls--2 {
  letter-spacing: 2em;
}
.ls--3 {
  letter-spacing: 3em;
}

/* ----------------------------------------------------------------
	movie
----------------------------------------------------------------- */
.movie {
  position: relative;
  cursor: pointer;
}
.movie:before {
  content: '';
  display: block;
  z-index: 1;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  border: 10px solid transparent;
  border-left: 15px solid #fff;
  margin-left: 7px;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.movie:after {
  content: '';
  z-index: 1;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  border-radius: 50%;
  width: 55px;
  height: 55px;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  border: 2px solid #fff;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
@media (min-width: 981px) {
  .movie {
    overflow: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
  }
  .movie img {
    transition: transform .3s ease-in-out;
  }
  .movie:before {
    transition: border-left-color .3s easeinout;
  }
  .movie:after {
    transition: border-color .3s easeinout;
  }
  .movie:hover:before {
    border-left-color: #ff781d;
  }
  .movie:hover:after {
    border-color: #ff781d;
  }
  .movie:hover img {
    transform: scale(1.04);
  }
}

/* ----------------------------------------------------------------
	btn
----------------------------------------------------------------- */
.btn {
  max-width: 400px;
  cursor: pointer;
  display: block;
  line-height: 1;
  margin-left: auto;
  margin-right: auto;
  padding: 1.5em 0;
  border-radius: 4em;
  text-align: center;
  position: relative;
  overflow: hidden;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  background-color: #ffa811;
  color: #fff !important;
  text-decoration: none !important;
}
@media (max-width: 767px) {
  .btn {
    font-size: 4vw;
    max-width: 100%;
    padding: 1em 0;
    border-radius: 3em;
  }
}
.btn span {
  position: relative;
  padding-right: 16px;
}
.btn span:before {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  width: 100%;
  height: 100%;
  transform: translate(0, -50%);
  background: url(../images/arrow-white.svg) no-repeat 100% 50%;
  background-size: 8px auto;
}
@media all and (-ms-high-contrast: none) {
  .btn span:before {
    background-size: 8px 5px;
  }
}
@media (max-width: 767px) {
  .btn span {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding-left: 20px;
    padding-right: 20px;
    display: block;
  }
  .btn span:before {
    background-position: calc( 100% - 10px ) 50%;
  }
}
@media (min-width: 981px) {
  .btn {
    transition: background-color .3s ease-in-out;
  }
  .btn span:before {
    transition: transform .3s ease-in-out;
  }
  .btn:hover {
    background-color: #ffa200;
  }
  .btn:hover span:before {
    transform: translate(8px, -50%);
  }
}

/* ----------------------------------------------------------------
	common
----------------------------------------------------------------- */
.wrap {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
}
@media (max-width: 1040px) {
  .wrap {
    padding-left: 20px;
    padding-right: 20px;
  }
}
@media (max-width: 767px) {
  .wrap {
    padding-left: 10px;
    padding-right: 10px;
  }
}

/*multi colum*/
.col {
  display: -ms-flexbox;
  /*IE10*/
  display: -webkit-box;
  /*Android 4.3>=*/
  display: -webkit-flex;
  /*Safari, Chrome, Opera*/
  display: flex;
  /*IE11, Firefox*/
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.col__box {
  position: relative;
}

.col7 .col__box {
  width: 13%;
  margin-right: 1.5%;
}
@media (min-width: 981px) {
  .col7 .col__box:nth-child(7n) {
    margin-right: 0;
  }
}
@media (max-width: 980px) {
  .col7 .col__box {
    width: 18.5%;
    margin-right: 1.875%;
  }
  .col7 .col__box:nth-child(7n) {
    margin-right: 1.875%;
  }
  .col7 .col__box:nth-child(5n) {
    margin-right: 0;
  }
}
@media (max-width: 767px) {
  .col7 .col__box {
    width: 47%;
    margin-right: 6%;
  }
  .col7 .col__box:nth-child(5n), .col7 .col__box:nth-child(7n) {
    margin-right: 6%;
  }
  .col7 .col__box:nth-child(2n) {
    margin-right: 0;
  }
}

.col5 .col__box {
  width: 18.5%;
  margin-right: 1.875%;
}
@media (max-width: 767px) {
  .col5 .col__box {
    width: 47%;
    margin-right: 6%;
  }
}
.col5 .col__box:nth-child(5n) {
  margin-right: 0;
}
@media (max-width: 767px) {
  .col5 .col__box:nth-child(5n) {
    margin-right: 6%;
  }
}
@media (max-width: 767px) {
  .col5 .col__box:nth-child(2n) {
    margin-right: 0;
  }
}

.col3 .col__box {
  width: 31.333333%;
  margin-right: 3%;
}
@media (max-width: 767px) {
  .col3 .col__box {
    width: 100%;
    margin-right: 0;
  }
}
.col3 .col__box:nth-child(3n) {
  margin-right: 0 !important;
}
@media (max-width: 767px) {
  .col3 .col__box:nth-child(3n) {
    margin-right: 6%;
  }
}
@media (max-width: 767px) {
  .col3 .col__box:nth-child(2n) {
    margin-right: 0;
  }
}

.col2 .col__box {
  width: 48.5%;
  margin-right: 3%;
}
@media (max-width: 767px) {
  .col2 .col__box {
    width: 100%;
    margin-right: 0;
  }
}
.col2 .col__box:nth-child(2n) {
  margin-right: 0;
}

/*
.col6 .col__box:nth-child(n+7),
.col5 .col__box:nth-child(n+6),
.col4 .col__box:nth-child(n+5),
.col3 .col__box:nth-child(n+4),
.col2 .col__box:nth-child(n+3) {
	margin-top: 0px;
}
*/
@media (max-width: 767px) {
  .sp--none {
    display: none;
  }
}

.sp--only {
  display: none;
}
@media (max-width: 767px) {
  .sp--only {
    display: block;
  }
}

.swiper-lazy,
.b-lazy {
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
  opacity: 0;
}

.swiper-lazy.swiper-lazy-loaded,
.b-lazy.b-loaded {
  opacity: 1;
}

#main {
  position: relative;
  z-index: 1;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
  padding-top: 0px;
}
@media (max-width: 767px) {
  #main {
    padding-top: 0;
  }
}

.l_bg_glay {
  background-color: #f2f2f2;
}

.u_spacing_pd {
  padding: 4em 0;
  margin: 0;
}
@media (max-width: 980px) {
  .u_spacing_pd {
    padding: 3em 0;
  }
}
@media (max-width: 767px) {
  .u_spacing_pd {
    padding: 2.5em 0;
  }
}

.u_spacing_pb_0 {
  padding-bottom: 0;
}

.alt-title {
  position: absolute;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(0px 0px 99.9% 99.9%);
  clip-path: inset(0px 0px 99.9% 99.9%);
  overflow: hidden;
  height: 1px;
  width: 1px;
  padding: 0;
  border: 0;
}

.js .inview__section {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  opacity: 0;
  transform: translateY(10px);
  transition: opacity 0.7s ease-in-out, transform 0.7s ease-in-out;
}
.js .inview__section.inview--complete {
  opacity: 1;
  transform: translateY(0);
}

/* ----------------------------------------------------------------
	loading
----------------------------------------------------------------- */
#loading {
  display: none;
}

.blank:after {
  content: '';
  vertical-align: middle;
  display: inline-block;
  margin: 0 0.5em 0 0.5em;
  padding: 0;
  width: 1em;
  height: 1em;
  background: url(../images/blank.svg) no-repeat 0 100%;
  line-height: 1;
}

.mceContentBody {
  padding: 20px;
  font-size: 15px !important;
}
.mceContentBody a {
  color: #c23462;
  text-decoration: underline;
}

.mceContentBody header,
.content header {
  display: block;
  width: 1000px;
}
.mceContentBody .sub_title,
.content .sub_title {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  margin: 0 auto 0.5em auto;
  text-align: center;
  line-height: 1;
  padding: 0;
  width: 100%;
}
.mceContentBody .sub_title:before,
.content .sub_title:before {
  content: '';
  display: block;
  width: 250px;
  border-top: #c23462 1px solid;
}
@media (max-width: 980px) {
  .mceContentBody .sub_title:before,
  .content .sub_title:before {
    width: 175px;
  }
}
@media (max-width: 767px) {
  .mceContentBody .sub_title:before,
  .content .sub_title:before {
    width: 1.5em;
  }
}
.mceContentBody .sub_title:after,
.content .sub_title:after {
  content: '';
  display: block;
  width: 250px;
  border-top: #c23462 1px solid;
}
@media (max-width: 980px) {
  .mceContentBody .sub_title:after,
  .content .sub_title:after {
    width: 175px;
  }
}
@media (max-width: 767px) {
  .mceContentBody .sub_title:after,
  .content .sub_title:after {
    width: 1.5em;
  }
}
@media (min-width: 981px) {
  .mceContentBody .sub_title,
  .content .sub_title {
    letter-spacing: 0.5rem;
  }
}
.mceContentBody .sub_title span,
.content .sub_title span {
  display: block;
  margin: 0 1em;
  line-height: 1.5;
  font-weight: 700;
  font-size: 1.1em;
  color: #c23462;
}
.mceContentBody .caption,
.content .caption {
  line-height: 1.3;
  font-size: 10px;
  border-left: 3px solid #000;
  padding: 5px 0 5px 1em;
}
.mceContentBody .img,
.content .img {
  margin: 0 0 30px 0;
  line-height: 1;
  overflow: hidden;
  position: relative;
}
@media (max-width: 767px) {
  .mceContentBody .img,
  .content .img {
    margin-bottom: 20px;
  }
}
.mceContentBody .img img,
.content .img img {
  position: relative;
  vertical-align: top;
}
.mceContentBody .img + .caption,
.content .img + .caption {
  margin-top: -20px;
}
@media (max-width: 767px) {
  .mceContentBody .img + .caption,
  .content .img + .caption {
    margin-top: -10px;
  }
}
.mceContentBody .img + .img, .mceContentBody .img + .embed,
.content .img + .img,
.content .img + .embed {
  border-top: 2px solid #fff;
  margin-top: -30px;
}
@media (max-width: 767px) {
  .mceContentBody .img + .img, .mceContentBody .img + .embed,
  .content .img + .img,
  .content .img + .embed {
    margin-top: -20px;
  }
}
.mceContentBody h3:not(.content__title),
.content h3:not(.content__title) {
  position: relative;
  z-index: 1;
  padding: 0;
  margin-bottom: 0.33em;
  text-align: center;
  font-size: 30px;
  font-weight: 700;
}
@media (max-width: 767px) {
  .mceContentBody h3:not(.content__title),
  .content h3:not(.content__title) {
    font-size: 5.25vw;
  }
}
.mceContentBody h4,
.content h4 {
  margin: 1.5em 0 0.5em 0;
  padding: 0 0 0.15em 0;
  font-size: 24px;
  font-weight: bold;
  text-transform: none;
  line-height: 1.8;
  border-bottom: 1px solid;
}
@media (max-width: 980px) {
  .mceContentBody h4,
  .content h4 {
    font-size: 20px;
  }
}
@media (max-width: 767px) {
  .mceContentBody h4,
  .content h4 {
    font-size: 4vw;
  }
}
.mceContentBody table,
.content table {
  width: 100%;
}
.mceContentBody li,
.content li {
  margin: 0.5em 0;
  padding: 0 0 0 25px;
  line-height: 2;
  position: relative;
}
.mceContentBody li ol, .mceContentBody li ul,
.content li ol,
.content li ul {
  margin: 1em 0;
}
.mceContentBody li:before,
.content li:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}
.mceContentBody ul:not(.content-link),
.content ul:not(.content-link) {
  margin: 1.5em 0;
  padding: 0;
  list-style: none;
}
.mceContentBody ul:not(.content-link) > li:before,
.content ul:not(.content-link) > li:before {
  top: 1em;
  margin-top: -4px;
  width: 4px;
  height: 4px;
  background-color: #333;
  border-radius: 50%;
}
.mceContentBody ol,
.content ol {
  counter-reset: num;
  margin: 1.5em 0;
  padding: 0;
  list-style: none;
}
.mceContentBody ol > li:before,
.content ol > li:before {
  content: counter(num) ". ";
  counter-increment: num;
}
.mceContentBody table,
.content table {
  width: 100%;
}
.mceContentBody p,
.content p {
  margin: 1em 0;
  line-height: 2.4;
}
@media (max-width: 980px) {
  .mceContentBody p,
  .content p {
    line-height: 2.2;
  }
}
@media (max-width: 767px) {
  .mceContentBody p,
  .content p {
    line-height: 1.9;
  }
}
.mceContentBody blockquote,
.content blockquote {
  position: relative;
  margin: 60px 0;
  padding: 0 0 0 50px;
  line-height: 1.6;
}
@media (max-width: 767px) {
  .mceContentBody blockquote,
  .content blockquote {
    margin: 40px 0;
    padding: 0 0 0 25px;
  }
}
.mceContentBody blockquote:before,
.content blockquote:before {
  content: "";
  position: absolute;
  top: -0.25em;
  left: 0;
  line-height: 1;
  width: 32px;
  height: 24px;
  background: url(../images/pict-blockquote.png) no-repeat 0 0;
  background-size: auto 100%;
  color: #333;
  padding: 0;
  margin: 0;
  background: none;
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .mceContentBody blockquote:before,
  .content blockquote:before {
    background-image: url(../images/pict-blockquote@2x.png);
    background-size: auto 100%;
  }
}
@media (max-width: 767px) {
  .mceContentBody blockquote:before,
  .content blockquote:before {
    width: 19px;
    height: 15px;
  }
}
.mceContentBody blockquote:after,
.content blockquote:after {
  display: none;
}
.mceContentBody blockquote p,
.content blockquote p {
  line-height: 1.8;
}
.mceContentBody table,
.content table {
  table-layout: fixed;
  border-collapse: collapse;
  border-spacing: 0;
  empty-cells: show;
  width: 100%;
  background-color: #fff;
  line-height: 1.3;
  font-size: 12px;
  text-align: center;
  margin: 60px 0;
}
@media (max-width: 767px) {
  .mceContentBody table,
  .content table {
    margin: 40px 0;
  }
}
.mceContentBody table + .caption,
.content table + .caption {
  margin-top: -50px;
  margin-bottom: 60px;
}
@media (max-width: 767px) {
  .mceContentBody table + .caption,
  .content table + .caption {
    margin-top: -30px;
    margin-bottom: 40px;
  }
}
.mceContentBody caption,
.content caption {
  text-align: left;
  font-weight: normal;
  font-size: 20px;
  line-height: 1.3;
  margin-bottom: 20px;
}
@media (max-width: 767px) {
  .mceContentBody caption,
  .content caption {
    font-size: 16px;
    margin-bottom: 10px;
  }
}
.mceContentBody thead th,
.content thead th {
  font-weight: bold;
  color: #fff;
  background-color: #000;
}
.mceContentBody thead th + th,
.content thead th + th {
  border-left: 1px solid #333;
}
.mceContentBody th,
.content th {
  padding: 20px 0;
  font-weight: normal;
  background-color: #000;
  border-top: 1px solid #333;
}
@media (max-width: 767px) {
  .mceContentBody th,
  .content th {
    padding: 10px 0;
  }
}
.mceContentBody th + td,
.content th + td {
  border-left: 1px solid #e0e0e0;
}
.mceContentBody td,
.content td {
  padding: 20px 0;
  border-top: 1px solid #333;
}
@media (max-width: 767px) {
  .mceContentBody td,
  .content td {
    padding: 10px 0;
  }
}
.mceContentBody td + td,
.content td + td {
  border-left: 1px solid #333;
}
.mceContentBody tr:first-child th,
.mceContentBody tr:first-child td,
.content tr:first-child th,
.content tr:first-child td {
  border-top: 0 none;
}
.mceContentBody hr,
.content hr {
  height: 1px;
  border: 0 none;
  background-color: #000;
  color: #e0e0e0;
  margin: 60px 0;
}
@media (max-width: 767px) {
  .mceContentBody hr,
  .content hr {
    margin: 40px 0;
  }
}
.mceContentBody a,
.content a {
  color: #c23462;
  text-decoration: underline;
}
@media (min-width: 981px) {
  .mceContentBody a:hover,
  .content a:hover {
    text-decoration: none;
  }
}
.mceContentBody--more:before, .mceContentBody--more:after,
.content--more:before,
.content--more:after {
  display: table;
  content: '';
}
.mceContentBody--more:after,
.content--more:after {
  clear: both;
}
.mceContentBody--more img,
.content--more img {
  float: left;
  width: 50%;
  max-width: 50%;
}

.hero {
  background-color: #fff;
  background-image: url(../images/mv-bg.png), url(../images/mv-text.png);
  background-size: 0 0;
  background-repeat: no-repeat;
  background-position: 0 0;
  position: relative;
}
.hero:after {
  content: '';
  display: block;
  position: absolute;
  top: 10%;
  left: 50%;
  width: 70%;
  height: 35%;
  background-repeat: no-repeat;
  z-index: 1;
  opacity: 0;
  transform: translateX(-50%);
}
@media (max-width: 767px) {
  .hero:after {
    width: calc( 100% - 20px );
    top: auto;
    bottom: 0;
  }
}
.hero:after {
  transition: opacity 0.7s 0.7s ease-in-out;
}
@media (max-width: 767px) {
  .hero:after {
    transition: opacity 0.7s 0s ease-in-out;
  }
}
.hero h1 {
  margin: 0;
  padding: 47.25% 0 0 0;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  position: relative;
  opacity: 0;
  transition: opacity 0.7s ease-in-out;
}
@media (max-width: 1360px) {
  .hero h1 {
    padding-top: 50%;
  }
}
@media (max-width: 767px) {
  .hero h1 {
    background-size: 100% auto;
    background-position: 50% 0;
    padding-top: 75%;
  }
}
.hero.loaded:after {
  background: rgba(255, 255, 255, 0.66);
  background-image: url(../images/mv-text.png);
  background-repeat: no-repeat;
  background-size: 90% auto;
  background-position: 50% 50%;
  opacity: 1;
}
@media (max-width: 767px) {
  .hero.loaded:after {
    background-size: 100% auto;
  }
}
.hero.loaded h1 {
  opacity: 1;
  background-image: url(../images/mv-bg.png);
}
.hero.loaded .hero__item {
  opacity: 1;
  transform: translateY(0);
}

.officer {
  float: right;
  width: 250px;
  margin: 0.5em 0 20px 20px;
}
@media (max-width: 767px) {
  .officer {
    width: 150px;
    margin: 0.5em 0 10px 10px;
  }
}
.officer .post {
  color: #666;
  font-weight: normal;
  font-size: 80%;
  display: block;
  padding: 0 0 0.33em 0;
}
@media (max-width: 767px) {
  .officer .post {
    font-size: 90%;
  }
}
.officer .belong {
  color: #666;
  font-weight: normal;
  font-size: 80%;
  display: block;
  padding: 0.33em 0 0 0;
}
@media (max-width: 767px) {
  .officer .belong {
    font-size: 90%;
  }
}
.officer figcaption {
  padding: 0.5em 0 0 0;
  display: block;
  font-weight: bold;
}
@media (max-width: 767px) {
  .officer figcaption {
    font-size: 90%;
  }
}

.program-features {
  clear: both;
  margin-top: 3em;
  margin-bottom: 4em;
}
.program-features:before, .program-features:after {
  display: table;
  content: '';
}
.program-features:after {
  clear: both;
}
@media (max-width: 980px) {
  .program-features {
    margin-bottom: 3em;
  }
}
@media (max-width: 767px) {
  .program-features {
    margin-bottom: 2.5em;
  }
}
.program-features .col {
  margin-top: 1em;
}
.program-features .col__box {
  background: #e9edf7 url(../images/h2.svg) no-repeat 50% 50%;
  background-size: 80% auto;
}
@media (max-width: 767px) {
  .program-features .col__box {
    background-size: 62.5% auto;
  }
  .program-features .col__box:nth-child(n+1) {
    margin-top: 1.5em;
  }
}
.program-features dl {
  border-top: 5px solid #c23462;
  margin: 0;
  padding: 20px;
}
@media (max-width: 980px) {
  .program-features dl {
    padding: 20px 10px;
  }
}
.program-features dt {
  font-weight: 500;
  font-size: 1.4em;
  text-align: center;
  margin: 0 0 0.75em 0;
  line-height: 1.2;
}
.program-features dd {
  margin: 0;
  padding: 0;
  line-height: 1.8;
}
.program-num {
  color: #e9edf7;
  font-size: 5em;
  margin: 0;
  padding: 0;
  font-style: italic;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: -1;
  transform: translate(-50%, -50%);
}
.l_bg_glay .program-num {
  color: #fff;
}

.content .wrap {
  padding-top: 60px;
  background: #fff;
}
@media (max-width: 1040px) {
  .content .wrap {
    padding-top: 20px;
  }
}
.content-link {
  background: #e9edf7;
  margin: 0;
  padding: 20px;
  display: -ms-flexbox;
  /*IE10*/
  display: -webkit-box;
  /*Android 4.3>=*/
  display: -webkit-flex;
  /*Safari, Chrome, Opera*/
  display: flex;
  /*IE11, Firefox*/
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.content-link li {
  width: calc( 50% - 5px );
  margin: 0 10px 0 0;
  padding: 0;
}
.content-link li:before {
  display: none;
}
.content-link li:nth-child(2n) {
  margin-right: 0;
}
.content-link li:nth-child(n+3) {
  margin-top: 0.5em;
}
@media (max-width: 767px) {
  .content-link li {
    width: 100%;
    margin-right: 0;
  }
  .content-link li:nth-child(n+2) {
    margin-top: 0.5em;
  }
}
.content-link a {
  display: block;
  padding-left: 1em;
}
.content-link a:before {
  content: '';
  position: absolute;
  top: 50%;
  left: 0px;
  width: 6px;
  height: 6px;
  border: 0 none;
  border-bottom: 2px solid #c23462;
  border-right: 2px solid #c23462;
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  margin: -4px 0 0 0;
}
.content-map {
  margin: 3em 0 0 0;
}
@media (max-width: 767px) {
  .content-map {
    margin-top: 2em;
  }
}
.content__table {
  border: 1px solid #b93524;
  margin: 3em 0 0 0 !important;
}
@media (max-width: 767px) {
  .content__table {
    table-layout: auto;
  }
}
.content__table caption {
  padding: 0 0 0.66em 0;
  margin: 0;
  font-weight: bold;
  font-size: 85%;
  text-align: right;
  caption-side: top;
}
.content__table__item {
  font-weight: normal;
  position: relative;
  display: block;
  padding-right: 3em;
}
@media (max-width: 767px) {
  .content__table__item {
    padding-bottom: 1.5em;
    padding-right: 0;
  }
}
.content__table__item--sub {
  font-size: 75%;
  display: block;
  margin-top: 0.33em;
}
.content__table__units {
  font-size: 75%;
  position: absolute;
  bottom: 0;
  right: 0;
}
.content__table__require {
  color: #b93524;
}
.content__table th {
  font-weight: bold;
  background: #feeae7;
  color: #333;
  border: 1px solid #b93524;
  padding: 1em;
  text-align: left;
  white-space: nowrap;
}
.content__table td {
  background: #fff;
  border: 1px solid #b93524;
  padding: 1em;
  text-align: center;
}
.content__table thead th {
  border: 1px solid #b93524;
  background: #feeae7;
  color: #333;
  text-align: center;
}
@media (max-width: 767px) {
  .content__table thead th {
    width: 18%;
  }
  .content__table thead th:nth-child(1) {
    width: 46%;
  }
}
.content__box {
  margin: 4em 0 0 0;
}
@media (max-width: 980px) {
  .content__box {
    margin: 3em 0 0 0;
  }
}
@media (max-width: 767px) {
  .content__box {
    margin: 2.5em 0 0 0;
  }
}
.content__box h2,
.content__box h3 {
  font-size: 35px;
  line-height: 1.2;
}
@media (max-width: 980px) {
  .content__box h2,
  .content__box h3 {
    font-size: 30px;
  }
}
@media (max-width: 767px) {
  .content__box h2,
  .content__box h3 {
    font-size: 6vw;
  }
  html:lang(ja) .content__box h2, html:lang(ja)
  .content__box h3 {
    white-space: nowrap;
  }
}
.content__box h4 {
  color: #c23462;
  margin: 2em 0 1em 0;
}
.content__box h5 {
  font-weight: bold;
  font-size: 20px;
  margin: 1em 0;
  padding: 0 0 0.5em 0;
  border-bottom: 2px solid #ddd;
  position: relative;
}
@media (max-width: 980px) {
  .content__box h5 {
    font-size: 16px;
  }
}
@media (max-width: 767px) {
  .content__box h5 {
    font-size: 3.75vw;
  }
}
.content__box h5 b {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  font-size: 75%;
  margin-top: 0.33em;
}
@media (max-width: 767px) {
  .content__box h5 b {
    position: static;
  }
}
.content__title {
  background: #c23462 url(../images/h2.svg) no-repeat 50% 35px;
  background-size: 60px auto;
  padding: 120px 20px 150px 20px;
  margin: 0 0 -115px 0;
  color: #fff;
  text-align: center;
}
@media (max-width: 980px) {
  .content__title {
    background-position: 50% 20px;
    background-size: 50px auto;
    padding: 100px 20px 125px 20px;
    margin-bottom: -100px;
  }
}
@media (max-width: 767px) {
  .content__title {
    background-position: 50% 4vw;
    background-size: 7.5vw auto;
    padding: 14.25vw 10px 18.5vw 10px;
    margin-bottom: -15vw;
  }
}
.content__title span {
  font-size: 34px;
}
@media (max-width: 980px) {
  .content__title span {
    font-size: 28px;
  }
}
@media (max-width: 767px) {
  .content__title span {
    font-size: 5.25vw;
  }
}
.content__title b {
  margin: 0.25em 0 0 0;
  display: block;
  font-size: 75%;
  line-height: 1;
}
.content__title--noimg {
  padding-bottom: 35px;
}
@media (max-width: 980px) {
  .content__title--noimg {
    padding-bottom: 25px;
  }
}
@media (max-width: 767px) {
  .content__title--noimg {
    padding-bottom: 5vw;
  }
}
.content__figure {
  background: #fff;
  margin: 0;
  margin-top: -115px;
  padding: 60px 0 20px 0;
  text-align: center;
}
@media (max-width: 980px) {
  .content__figure {
    margin-top: -100px;
  }
}
@media (max-width: 767px) {
  .content__figure {
    padding: 10px 10px 0 10px;
    margin-top: -15vw;
  }
}
.content__figure--1 {
  margin-top: 0;
  padding: 0;
}
.content__figure--1 img {
  max-width: 900px;
}
@media (max-width: 980px) {
  .content__figure--1 img {
    max-width: 100%;
  }
}
@media (max-width: 767px) {
  .content__figure--1 img {
    max-width: 100%;
  }
}
.content__figure--2 img {
  max-width: 568px;
}
@media (max-width: 980px) {
  .content__figure--2 img {
    max-width: 500px;
  }
}
@media (max-width: 767px) {
  .content__figure--2 img {
    max-width: calc( 100% - 20px );
  }
}
.content__figure--3 img {
  max-width: 800px;
}
@media (max-width: 980px) {
  .content__figure--3 img {
    max-width: 90%;
  }
}
@media (max-width: 767px) {
  .content__figure--3 img {
    max-width: calc( 100% - 20px );
  }
}
.content__figure--4 img {
  max-width: 800px;
}
@media (max-width: 980px) {
  .content__figure--4 img {
    max-width: 90px;
  }
}
@media (max-width: 767px) {
  .content__figure--4 img {
    max-width: calc( 100% - 20px );
  }
}
.content__figure--5 img {
  max-width: 590px;
}
@media (max-width: 980px) {
  .content__figure--5 img {
    max-width: 500px;
  }
}
@media (max-width: 767px) {
  .content__figure--5 img {
    max-width: calc( 100% - 20px );
  }
}
.content__figure--6 img {
  max-width: 500px;
}
@media (max-width: 980px) {
  .content__figure--6 img {
    max-width: 500px;
  }
}
@media (max-width: 767px) {
  .content__figure--6 img {
    max-width: calc( 100% - 20px );
  }
}
.content__figure--7 img {
  max-width: 720px;
}
@media (max-width: 980px) {
  .content__figure--7 img {
    max-width: 600px;
  }
}
@media (max-width: 767px) {
  .content__figure--7 img {
    max-width: calc( 100% - 20px );
  }
}
.content__figure--8 img, .content__figure--9 img, .content__figure--10 img, .content__figure--11 img {
  max-width: 720px;
}
@media (max-width: 980px) {
  .content__figure--8 img, .content__figure--9 img, .content__figure--10 img, .content__figure--11 img {
    max-width: 600px;
  }
}
@media (max-width: 767px) {
  .content__figure--8 img, .content__figure--9 img, .content__figure--10 img, .content__figure--11 img {
    max-width: calc( 100% - 20px );
  }
}
.content__sub {
  margin: 0;
  padding: 0;
}
.content__sub-title {
  border-radius: 5px;
  margin: 2.5em 0 1em 0;
  padding: 1em;
  background: #c23462;
  color: #fff;
  font-weight: bold;
  font-size: 22px;
  text-align: center;
}
@media (min-width: 981px) {
  .content__sub-title {
    letter-spacing: 0.5rem;
  }
}
@media (max-width: 980px) {
  .content__sub-title {
    font-size: 18px;
  }
}
@media (max-width: 767px) {
  .content__sub-title {
    font-size: 4vw;
  }
}
.content__sub-title b {
  font-size: 75%;
}
.content__sub-contain {
  margin: 0;
  padding: 0;
}

.contact {
  margin: 0 auto;
  background: #e9edf7;
  padding: 4em 0;
}
@media (max-width: 767px) {
  .contact {
    padding: 3em 0;
  }
}
.contact .wrap > p {
  text-align: center;
  margin: 2em 0 0 0;
}
.contact .program-features {
  margin-top: 2em;
}
@media (max-width: 767px) {
  .contact .program-features {
    margin-top: 1em;
  }
}
.contact .program-features .col__box {
  background: #fff;
  border: 1px solid #fff;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.contact__address {
  text-align: center;
  line-height: 2;
}
.contact__address .vcard {
  font-style: normal;
}
.contact__address .vcard > span {
  margin: 0;
  display: block;
}

.content a[href$="pdf"],
.content a[href$="PDF"] {
  padding-right: 30px;
  display: inline;
  position: relative;
}

.content a[href$="pdf"]:after,
.content a[href$="PDF"]:after {
  content: "";
  position: absolute;
  right: 0;
  width: 24px;
  height: 24px;
  background: url(../images/download-pdf-icon.svg) no-repeat 50% 4px;
  background-size: auto 20px;
}

/* ----------------------------------------------------------------
	img
----------------------------------------------------------------- */
.img--1 {
  border: 1px solid #ccc;
  margin: 2em 0 5em 0 !important;
  padding: 20px;
}
.img--2 {
  border: 0 none;
  max-width: 800px;
  margin: 0 auto !important;
}
.img--3 {
  border: 0 none;
  margin: 3em auto 0 auto !important;
}
@media (max-width: 767px) {
  .img--3 {
    margin: 1.5em auto 0 auto !important;
  }
}
.img--4, .img--5 {
  border: 1px solid #ccc;
  margin: 2em 0 0 0 !important;
  padding: 20px;
}
.img--6 {
  border: 1px solid #ccc;
  margin: 2em auto 5em auto !important;
  padding: 20px;
  text-align: center;
}
.img--6 img {
  max-width: 400px;
}
@media (max-width: 767px) {
  .img--6 img {
    max-width: 100%;
  }
}
.img--7 {
  border: 1px solid #ccc;
  margin: 2em auto 5em auto !important;
  padding: 20px;
}
.img--7 img {
  max-width: 680px;
}
@media (max-width: 767px) {
  .img--7 img {
    max-width: 100%;
  }
}

/* ----------------------------------------------------------------
	organization--researcher
----------------------------------------------------------------- */
.organization--researcher h3 {
  margin: 0 0 0.66em 0 !important;
  padding: 0 0 0.66em 0 !important;
  border-bottom: 1px solid #ddd;
}
.organization--researcher h3 img {
  height: 100px;
}
@media (max-width: 767px) {
  .organization--researcher h3 img {
    height: 75px;
  }
}
.organization--researcher p {
  margin: 0;
}
@media (max-width: 767px) {
  .organization--researcher .col__box + .col__box {
    margin-top: 3em !important;
  }
}

/* ----------------------------------------------------------------
	parts
----------------------------------------------------------------- */
.txt-r {
  text-align: right;
}

.txt-l {
  text-align: left;
}

.txt-c {
  text-align: center;
}

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

img.alignright {
  padding: 4px;
  margin: 0 0 2px 10px;
  display: inline;
}

img.alignleft {
  padding: 4px;
  margin: 0 10px 2px 0;
  display: inline;
}

.alignright {
  float: right;
}

.alignleft {
  float: left;
}

.embed {
  padding-top: 56.25%;
  position: relative;
  width: 100%;
  margin: 60px auto;
  text-align: center;
  display: block;
  overflow: hidden;
  line-height: 1;
}
@media (max-width: 980px) {
  .embed {
    padding-top: 62.5%;
  }
}
@media (max-width: 767px) {
  .embed {
    padding-top: 120%;
    margin: 40px auto;
  }
}
.embed + .caption {
  margin-top: -50px;
  margin-bottom: 60px;
}
@media (max-width: 767px) {
  .embed + .caption {
    margin-top: -30px;
    margin-bottom: 40px;
  }
}
.embed + .embed, .embed + .img {
  border-top: 2px solid #fff;
  margin-top: -60px;
}
@media (max-width: 767px) {
  .embed + .embed, .embed + .img {
    margin-top: -40px;
  }
}
.embed video,
.embed iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
.no-js .embed:before {
  opacity: 0;
  visibility: hidden;
}
.no-js .embed iframe {
  opacity: 1;
  transform: scale(1);
}

.u_spacing_pd {
  padding-top: 5em;
  padding-bottom: 5em;
}
@media (max-width: 980px) {
  .u_spacing_pd {
    padding-top: 4em;
    padding-bottom: 4em;
  }
}
@media (max-width: 767px) {
  .u_spacing_pd {
    padding-top: 3em;
    padding-bottom: 3em;
  }
}
.u_spacing_pd + .u_spacing_pd {
  margin-top: -5em;
}
@media (max-width: 980px) {
  .u_spacing_pd + .u_spacing_pd {
    margin-top: -4em;
  }
}
@media (max-width: 767px) {
  .u_spacing_pd + .u_spacing_pd {
    margin-top: -3em;
  }
}

.u_sp {
  display: none !important;
}
@media (max-width: 767px) {
  .u_sp {
    display: block !important;
  }
}
@media (max-width: 767px) {
  .u_pc {
    display: none !important;
  }
}
.u_align_center {
  margin-left: auto;
  margin-right: auto;
  text-align: center !important;
}
.u_align_right {
  margin-left: auto;
  text-align: right !important;
}
.u_align_left {
  margin-right: auto;
  text-align: left !important;
}
.u_spacing_mt_xlarge {
  margin-top: 5em !important;
}
@media (max-width: 980px) {
  .u_spacing_mt_xlarge {
    margin-top: 4em !important;
  }
}
@media (max-width: 767px) {
  .u_spacing_mt_xlarge {
    margin-top: 3em !important;
  }
}
.u_spacing_mt_large {
  margin-top: 3em !important;
}
@media (max-width: 980px) {
  .u_spacing_mt_large {
    margin-top: 2.5em !important;
  }
}
@media (max-width: 767px) {
  .u_spacing_mt_large {
    margin-top: 2em !important;
  }
}
.u_spacing_mt_medium {
  margin-top: 2em !important;
}
@media (max-width: 980px) {
  .u_spacing_mt_medium {
    margin-top: 1.66em !important;
  }
}
@media (max-width: 767px) {
  .u_spacing_mt_medium {
    margin-top: 1.33em !important;
  }
}
.u_spacing_mt_small {
  margin-top: 1em !important;
}
@media (max-width: 980px) {
  .u_spacing_mt_small {
    margin-top: 0.8em !important;
  }
}
@media (max-width: 767px) {
  .u_spacing_mt_small {
    margin-top: 0.66em !important;
  }
}
.u_spacing_mt_xsmall {
  margin-top: 0.5em !important;
}
@media (max-width: 980px) {
  .u_spacing_mt_xsmall {
    margin-top: 0.4em !important;
  }
}
@media (max-width: 767px) {
  .u_spacing_mt_xsmall {
    margin-top: 0.33em !important;
  }
}
.u_spacing_mt_0 {
  margin-top: 0 !important;
}
.u_spacing_pt_xlarge {
  padding-top: 5em !important;
}
@media (max-width: 980px) {
  .u_spacing_pt_xlarge {
    padding-top: 4em !important;
  }
}
@media (max-width: 767px) {
  .u_spacing_pt_xlarge {
    padding-top: 3em !important;
  }
}
.u_spacing_pt_large {
  padding-top: 3em !important;
}
@media (max-width: 980px) {
  .u_spacing_pt_large {
    padding-top: 2.5em !important;
  }
}
@media (max-width: 767px) {
  .u_spacing_pt_large {
    padding-top: 2em !important;
  }
}
.u_spacing_pt_medium {
  padding-top: 2em !important;
}
@media (max-width: 980px) {
  .u_spacing_pt_medium {
    padding-top: 1.66em !important;
  }
}
@media (max-width: 767px) {
  .u_spacing_pt_medium {
    padding-top: 1.33em !important;
  }
}
.u_spacing_pt_small {
  padding-top: 1em !important;
}
@media (max-width: 980px) {
  .u_spacing_pt_small {
    padding-top: 0.8em !important;
  }
}
@media (max-width: 767px) {
  .u_spacing_pt_small {
    padding-top: 0.66em !important;
  }
}
.u_spacing_pt_xsmall {
  padding-top: 0.5em !important;
}
@media (max-width: 980px) {
  .u_spacing_pt_xsmall {
    padding-top: 0.4em !important;
  }
}
@media (max-width: 767px) {
  .u_spacing_pt_xsmall {
    padding-top: 0.33em !important;
  }
}
.u_spacing_pt_0 {
  padding-top: 0 !important;
}
.u_spacing_mb_xlarge {
  margin-bottom: 5em !important;
}
@media (max-width: 980px) {
  .u_spacing_mb_xlarge {
    margin-bottom: 4em !important;
  }
}
@media (max-width: 767px) {
  .u_spacing_mb_xlarge {
    margin-bottom: 3em !important;
  }
}
.u_spacing_mb_large {
  margin-bottom: 3em !important;
}
@media (max-width: 980px) {
  .u_spacing_mb_large {
    margin-bottom: 2.5em !important;
  }
}
@media (max-width: 767px) {
  .u_spacing_mb_large {
    margin-bottom: 2em !important;
  }
}
.u_spacing_mb_medium {
  margin-bottom: 2em !important;
}
@media (max-width: 980px) {
  .u_spacing_mb_medium {
    margin-bottom: 1.66em !important;
  }
}
@media (max-width: 767px) {
  .u_spacing_mb_medium {
    margin-bottom: 1.33em !important;
  }
}
.u_spacing_mb_small {
  margin-bottom: 1em !important;
}
@media (max-width: 980px) {
  .u_spacing_mb_small {
    margin-bottom: 0.8em !important;
  }
}
@media (max-width: 767px) {
  .u_spacing_mb_small {
    margin-bottom: 0.66em !important;
  }
}
.u_spacing_mb_xsmall {
  margin-bottom: 0.5em !important;
}
@media (max-width: 980px) {
  .u_spacing_mb_xsmall {
    margin-bottom: 0.4em !important;
  }
}
@media (max-width: 767px) {
  .u_spacing_mb_xsmall {
    margin-bottom: 0.33em !important;
  }
}
.u_spacing_mb_0 {
  margin-bottom: 0 !important;
}
.u_spacing_pb_xlarge {
  padding-bottom: 5em !important;
}
@media (max-width: 980px) {
  .u_spacing_pb_xlarge {
    padding-bottom: 4em !important;
  }
}
@media (max-width: 767px) {
  .u_spacing_pb_xlarge {
    padding-bottom: 3em !important;
  }
}
.u_spacing_pb_large {
  padding-bottom: 3em !important;
}
@media (max-width: 980px) {
  .u_spacing_pb_large {
    padding-bottom: 2.5em !important;
  }
}
@media (max-width: 767px) {
  .u_spacing_pb_large {
    padding-bottom: 2em !important;
  }
}
.u_spacing_pb_medium {
  padding-bottom: 2em !important;
}
@media (max-width: 980px) {
  .u_spacing_pb_medium {
    padding-bottom: 1.66em !important;
  }
}
@media (max-width: 767px) {
  .u_spacing_pb_medium {
    padding-bottom: 1.33em !important;
  }
}
.u_spacing_pb_small {
  padding-bottom: 1em !important;
}
@media (max-width: 980px) {
  .u_spacing_pb_small {
    padding-bottom: 0.8em !important;
  }
}
@media (max-width: 767px) {
  .u_spacing_pb_small {
    padding-bottom: 0.66em !important;
  }
}
.u_spacing_pb_xsmall {
  padding-bottom: 0.5em !important;
}
@media (max-width: 980px) {
  .u_spacing_pb_xsmall {
    padding-bottom: 0.4em !important;
  }
}
@media (max-width: 767px) {
  .u_spacing_pb_xsmall {
    padding-bottom: 0.33em !important;
  }
}
.u_spacing_pb_0 {
  padding-bottom: 0 !important;
}
