@charset "UTF-8";
/*============================
reset
============================*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  vertical-align: baseline;
  background: none;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

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

caption, th, td {
  text-align: left;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}

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

a img {
  border: none;
}

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

sup,
sub {
  line-height: 100%;
}

sup {
  vertical-align: super;
  font-size: smaller;
}

sub {
  vertical-align: sub;
  font-size: smaller;
}

button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

select::-ms-expand {
  display: none;
}

.c-pageReader {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
  font-size: 0%;
  line-height: 0;
  text-indent: -9999px;
  outline: none;
}

/* ***************************
icomoon
*************************** */
@font-face {
  font-family: "icomoon";
  font-style: normal;
  font-weight: normal;
  src: url("fonts/icomoon.eot");
  src: url("fonts/icomoon.eot") format("embedded-opentype"), url("fonts/icomoon.ttf") format("truetype"), url("fonts/icomoon.woff") format("woff"), url("fonts/icomoon.svg") format("svg");
}
.p-contactList__contact__telLink:before, .p-sliteAccordion__btn:before, .p-indexList__btn:after, .p-faq__btn__body:before, .p-listsAccChild__btn:before, .c-btn[href^=http] .c-btn__body:after, [href^=http]:after, .c-listBreadCrumb__item + .c-listBreadCrumb__item:before {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "icomoon" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  line-height: 1;
  text-transform: none;
  speak: none;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/**
* 本サイトでは表示フォントに「源柔ゴシック」(http://jikasei.me/font/genjyuu/) を使用しています。
* Licensed under SIL Open Font License 1.1 (http://scripts.sil.org/OFL)
* © 2015 自家製フォント工房, © 2014, 2015 Adobe Systems Incorporated, © 2015 M+
* FONTS PROJECT
*/
@font-face {
  font-family: "GenJyuuGothic";
  font-style: normal;
  font-weight: 400;
  src: url("fonts/GenJyuuGothic-Regular.eot");
  src: url("fonts/GenJyuuGothic-Regular.eot") format("embedded-opentype"), url("fonts/GenJyuuGothic-Regular.ttf") format("truetype"), url("fonts/GenJyuuGothic-Regular.woff") format("woff");
}
@font-face {
  font-family: "GenJyuuGothic";
  font-style: normal;
  font-weight: 500;
  src: url("fonts/GenJyuuGothic-Medium.eot");
  src: url("fonts/GenJyuuGothic-Medium.eot") format("embedded-opentype"), url("fonts/GenJyuuGothic-Medium.ttf") format("truetype"), url("fonts/GenJyuuGothic-Medium.woff") format("woff");
}
@font-face {
  font-family: "GenJyuuGothic";
  font-style: normal;
  font-weight: 700;
  src: url("fonts/GenJyuuGothic-Bold.eot");
  src: url("fonts/GenJyuuGothic-Bold.eot") format("embedded-opentype"), url("fonts/GenJyuuGothic-Bold.ttf") format("truetype"), url("fonts/GenJyuuGothic-Bold.woff") format("woff");
}
/**
 * Swiper 5.4.1
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * http://swiperjs.com
 *
 * Copyright 2014-2020 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: May 20, 2020
 */
@font-face {
  font-family: "swiper-icons";
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
  font-weight: 400;
  font-style: normal;
}
:root {
  --swiper-theme-color: #007aff;
}

.swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
}

.swiper-container-vertical > .swiper-wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}

.swiper-container-android .swiper-slide,
.swiper-wrapper {
  -webkit-transform: translate3d(0px, 0, 0);
          transform: translate3d(0px, 0, 0);
}

.swiper-container-multirow > .swiper-wrapper {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.swiper-container-multirow-column > .swiper-wrapper {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.swiper-container-free-mode > .swiper-wrapper {
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  margin: 0 auto;
}

.swiper-slide {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */
.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
  height: auto;
}

.swiper-container-autoheight .swiper-wrapper {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-transition-property: height, -webkit-transform;
  transition-property: height, -webkit-transform;
  transition-property: transform, height;
  transition-property: transform, height, -webkit-transform;
}

/* 3D Effects */
.swiper-container-3d {
  -webkit-perspective: 1200px;
          perspective: 1200px;
}

.swiper-container-3d .swiper-wrapper,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-cube-shadow {
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
}

.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}

.swiper-container-3d .swiper-slide-shadow-left {
  background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-right {
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-top {
  background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-bottom {
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

/* CSS Mode */
.swiper-container-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  /* For Internet Explorer and Edge */
}

.swiper-container-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}

.swiper-container-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}

.swiper-container-horizontal.swiper-container-css-mode > .swiper-wrapper {
  -webkit-scroll-snap-type: x mandatory;
      -ms-scroll-snap-type: x mandatory;
          scroll-snap-type: x mandatory;
}

.swiper-container-vertical.swiper-container-css-mode > .swiper-wrapper {
  -webkit-scroll-snap-type: y mandatory;
      -ms-scroll-snap-type: y mandatory;
          scroll-snap-type: y mandatory;
}

:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: 50%;
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(-1 * var(--swiper-navigation-size) / 2);
  z-index: 10;
  cursor: pointer;
  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;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}

.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}

.swiper-button-prev:after,
.swiper-button-next:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  text-transform: none;
  font-variant: initial;
  line-height: 1;
}

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  left: 10px;
  right: auto;
}

.swiper-button-prev:after,
.swiper-container-rtl .swiper-button-next:after {
  content: "prev";
}

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  right: 10px;
  left: auto;
}

.swiper-button-next:after,
.swiper-container-rtl .swiper-button-prev:after {
  content: "next";
}

.swiper-button-prev.swiper-button-white,
.swiper-button-next.swiper-button-white {
  --swiper-navigation-color: #ffffff;
}

.swiper-button-prev.swiper-button-black,
.swiper-button-next.swiper-button-black {
  --swiper-navigation-color: #000000;
}

.swiper-button-lock {
  display: none;
}

:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  */
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  -webkit-transition: 300ms opacity;
  transition: 300ms opacity;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  z-index: 10;
}

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}

/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 10px;
  left: 0;
  width: 100%;
}

/* Bullets */
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transform: scale(0.33);
          transform: scale(0.33);
  position: relative;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  -webkit-transform: scale(1);
          transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  -webkit-transform: scale(1);
          transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  -webkit-transform: scale(0.66);
          transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  -webkit-transform: scale(0.33);
          transform: scale(0.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  -webkit-transform: scale(0.66);
          transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  -webkit-transform: scale(0.33);
          transform: scale(0.33);
}

.swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  border-radius: 100%;
  background: #000;
  opacity: 0.2;
}

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}

.swiper-pagination-bullet-active {
  opacity: 1;
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  -webkit-transform: translate3d(0px, -50%, 0);
          transform: translate3d(0px, -50%, 0);
}

.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 6px 0;
  display: block;
}

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 8px;
}

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  -webkit-transition: 200ms top, 200ms -webkit-transform;
  transition: 200ms top, 200ms -webkit-transform;
  transition: 200ms transform, 200ms top;
  transition: 200ms transform, 200ms top, 200ms -webkit-transform;
}

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 4px;
}

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  white-space: nowrap;
}

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transition: 200ms left, 200ms -webkit-transform;
  transition: 200ms left, 200ms -webkit-transform;
  transition: 200ms transform, 200ms left;
  transition: 200ms transform, 200ms left, 200ms -webkit-transform;
}

.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transition: 200ms right, 200ms -webkit-transform;
  transition: 200ms right, 200ms -webkit-transform;
  transition: 200ms transform, 200ms right;
  transition: 200ms transform, 200ms right, 200ms -webkit-transform;
}

/* Progress */
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute;
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -webkit-transform: scale(0);
          transform: scale(0);
  -webkit-transform-origin: left top;
          transform-origin: left top;
}

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  -webkit-transform-origin: right top;
          transform-origin: right top;
}

.swiper-container-horizontal > .swiper-pagination-progressbar,
.swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0;
}

.swiper-container-vertical > .swiper-pagination-progressbar,
.swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0;
}

.swiper-pagination-white {
  --swiper-pagination-color: #ffffff;
}

.swiper-pagination-black {
  --swiper-pagination-color: #000000;
}

.swiper-pagination-lock {
  display: none;
}

/* Scrollbar */
.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1);
}

.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%;
}

.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%;
}

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0;
}

.swiper-scrollbar-cursor-drag {
  cursor: move;
}

.swiper-scrollbar-lock {
  display: none;
}

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  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;
  text-align: center;
}

.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.swiper-slide-zoomed {
  cursor: move;
}

/* Preloader */
:root {
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  */
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  -webkit-transform-origin: 50%;
          transform-origin: 50%;
  -webkit-animation: swiper-preloader-spin 1s infinite linear;
          animation: swiper-preloader-spin 1s infinite linear;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}

@-webkit-keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

@keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
/* a11y */
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}

.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
}

.swiper-container-fade .swiper-slide {
  pointer-events: none;
  -webkit-transition-property: opacity;
  transition-property: opacity;
}

.swiper-container-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-container-fade .swiper-slide-active,
.swiper-container-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-container-cube {
  overflow: visible;
}

.swiper-container-cube .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  -webkit-transform-origin: 0 0;
          transform-origin: 0 0;
  width: 100%;
  height: 100%;
}

.swiper-container-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-container-cube.swiper-container-rtl .swiper-slide {
  -webkit-transform-origin: 100% 0;
          transform-origin: 100% 0;
}

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-next,
.swiper-container-cube .swiper-slide-prev,
.swiper-container-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible;
}

.swiper-container-cube .swiper-slide-shadow-top,
.swiper-container-cube .swiper-slide-shadow-bottom,
.swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.6;
  -webkit-filter: blur(50px);
  filter: blur(50px);
  z-index: 0;
}

.swiper-container-flip {
  overflow: visible;
}

.swiper-container-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
}

.swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-container-flip .swiper-slide-active,
.swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-container-flip .swiper-slide-shadow-top,
.swiper-container-flip .swiper-slide-shadow-bottom,
.swiper-container-flip .swiper-slide-shadow-left,
.swiper-container-flip .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

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

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

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

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

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

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

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

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

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

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

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

@keyframes instaReveal {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes instaReveal {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.modaal-instagram .modaal-container {
  width: auto;
  background: transparent;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
}
.modaal-instagram .modaal-content-container {
  padding: 0;
  background: transparent;
}
.modaal-instagram .modaal-content-container > blockquote {
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
}
.modaal-instagram iframe {
  opacity: 0;
  margin: -6px !important;
  border-radius: 0 !important;
  width: 1000px !important;
  max-width: 800px !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  -webkit-animation: instaReveal 1s linear forwards;
          animation: instaReveal 1s linear forwards;
}

.modaal-image .modaal-inner-wrapper {
  padding-left: 140px;
  padding-right: 140px;
}
.modaal-image .modaal-container {
  width: auto;
  max-width: 100%;
}

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

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

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

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

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

.modaal-gallery-prev:before, .modaal-gallery-prev:after {
  left: 22px;
}
.modaal-gallery-prev:before {
  margin: 5px 0 0;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.modaal-gallery-prev:after {
  margin: -5px 0 0;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.modaal-gallery-prev-inner {
  right: 100%;
  margin-right: 40px;
}
.modaal-gallery-prev-outer {
  left: 45px;
}

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

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

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

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

@media only screen and (min-width: 1400px) {
  .modaal-video-container {
    padding-bottom: 0;
    height: 731px;
  }
}
@media only screen and (max-width: 1140px) {
  .modaal-image .modaal-inner-wrapper {
    padding-left: 25px;
    padding-right: 25px;
  }

  .modaal-gallery-control {
    top: auto;
    bottom: 20px;
    -webkit-transform: none;
            transform: none;
    background: rgba(0, 0, 0, 0.7);
  }
  .modaal-gallery-control:before, .modaal-gallery-control:after {
    background: #fff;
  }

  .modaal-gallery-next {
    left: auto;
    right: 20px;
  }

  .modaal-gallery-prev {
    left: 20px;
    right: auto;
  }
}
@media screen and (max-width: 900px) {
  .modaal-instagram iframe {
    width: 500px !important;
  }
}
@media screen and (max-height: 1100px) {
  .modaal-instagram iframe {
    width: 700px !important;
  }
}
@media screen and (max-height: 1000px) {
  .modaal-inner-wrapper {
    padding-top: 60px;
    padding-bottom: 60px;
  }

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

  .modaal-video-container {
    max-width: 900px;
    max-height: 510px;
  }
}
@media only screen and (max-width: 600px) {
  .modaal-instagram iframe {
    width: 280px !important;
  }
}
@media only screen and (max-height: 820px) {
  .modaal-gallery-label {
    display: none;
  }
}
.modaal-loading-spinner {
  background: none;
  position: absolute;
  width: 200px;
  height: 200px;
  top: 50%;
  left: 50%;
  margin: -100px 0 0 -100px;
  -webkit-transform: scale(0.25);
          transform: scale(0.25);
}
@-webkit-keyframes modaal-loading-spinner {
  0% {
    opacity: 1;
    -webkit-transform: scale(1.5);
    transform: scale(1.5);
  }
  100% {
    opacity: 0.1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
@keyframes modaal-loading-spinner {
  0% {
    opacity: 1;
    -webkit-transform: scale(1.5);
    transform: scale(1.5);
  }
  100% {
    opacity: 0.1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
.modaal-loading-spinner > div {
  width: 24px;
  height: 24px;
  margin-left: 4px;
  margin-top: 4px;
  position: absolute;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

/* ***************************
html, body, 基本要素
*************************** */
*,
:after,
:before {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html {
  font-size: 81.25%;
  line-height: 1.9230769231;
}
@media print, screen and (min-width: 769px) {
  html {
    font-size: 100%;
    line-height: 1.875;
  }
}

body {
  position: relative;
  font-family: "GenJyuuGothic", "メイリオ", Meiryo, sans-serif;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-size: 100%;
  font-weight: normal;
  line-height: 1.9230769231;
  color: #1b1b1b;
  word-wrap: break-word;
  overflow-wrap: break-word;
  vertical-align: baseline;
  background: #fff;
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
          text-size-adjust: 100%;
  overflow-x: hidden;
}
@media print, screen and (min-width: 769px) {
  body {
    line-height: 1.875;
  }
}

@media print, screen and (min-width: 769px) {
  body.is-scriptable {
    padding-top: 94px;
  }
}

body.is-scriptable.is-scroll {
  padding-top: 100px;
}
@media print, screen and (min-width: 769px) {
  body.is-scriptable.is-scroll {
    padding-top: 94px;
  }
}

a {
  color: #0d73c0;
  text-decoration: none;
}
a:visited {
  color: #0d73c0;
}
a:hover {
  color: #0d73c0;
  text-decoration: underline;
}
a.hover:before, a:hover:before {
  text-decoration: none;
}

hr {
  height: 1px;
  margin: 26px 0 22px;
  background: none;
  border: none;
  background-image: linear-gradient(to right, #000, #000 4px, transparent 4px, transparent 8px);
  background-size: 8px 1px;
  background-repeat: repeat-x;
}
@media print, screen and (min-width: 769px) {
  hr {
    margin: 60px 0;
  }
}

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

strong, b {
  font-weight: 700;
}

em {
  color: #0d73c0;
  font-weight: 700;
}

mark {
  color: #d00255;
}

/* ***************************
margin
*************************** */
* + ol,
* + ul {
  margin-top: 15px;
}

h2 + * {
  margin-top: 35px;
}

* + h2 {
  margin-top: 78px;
}

* + h3 {
  margin-top: 40px;
}

* + h4 {
  margin-top: 34px;
}

* + h5 {
  margin-top: 30px;
}

* + p {
  margin-top: 14px;
}

h2 + p {
  margin-top: 20px;
}
@media print, screen and (min-width: 769px) {
  h2 + p {
    margin-top: 25px;
  }
}

h3 + p {
  margin-top: 15px;
}
@media print, screen and (min-width: 769px) {
  h3 + p {
    margin-top: 28px;
  }
}

h4 + p {
  margin-top: 15px;
}

h5 + p {
  margin-top: 15px;
}

h6 + p {
  margin-top: 15px;
}

p + h2 {
  margin-top: 68px;
}

p + h3 {
  margin-top: 38px;
}
@media print, screen and (min-width: 769px) {
  p + h3 {
    margin-top: 65px;
  }
}

p + h4 {
  margin-top: 30px;
}
@media print, screen and (min-width: 769px) {
  p + h4 {
    margin-top: 50px;
  }
}

p + h5 {
  margin-top: 30px;
}

p + h6 {
  margin-top: 30px;
}

h2 + h3 {
  margin-top: 40px;
}

h3 + h4 {
  margin-top: 40px;
}

h4 + h5 {
  margin-top: 36px;
}

h3 + ul, h3 + ol {
  margin-top: 13px;
}
@media print, screen and (min-width: 769px) {
  h3 + ul, h3 + ol {
    margin-top: 30px;
  }
}

h5 + ul, h5 + ol {
  margin-top: 18px;
}
@media print, screen and (min-width: 769px) {
  h5 + ul, h5 + ol {
    margin-top: 25px;
  }
}

ul + h2, ol + h2 {
  margin-top: 40px;
}

ul + h3, ol + h3 {
  margin-top: 40px;
}

ul + h4, ol + h4 {
  margin-top: 40px;
}

ul + h5, ol + h5 {
  margin-top: 40px;
}

p + p {
  margin-top: 22px;
}

* + table {
  margin-top: 20px;
}

table + * {
  margin-top: 20px;
}

table + h2 {
  margin-top: 78px;
}

table + h3 {
  margin-top: 40px;
}

table + h4 {
  margin-top: 34px;
}

table + h5 {
  margin-top: 30px;
}

table + h6 {
  margin-top: 30px;
}

* + figure {
  margin-top: 20px;
}

* + div {
  margin-top: 20px;
}

/* ***************************
headding
*************************** */
h2 {
  position: relative;
  padding-top: 60px;
  color: #0d73c0;
  font-size: 1.5384615385rem;
  line-height: 1.5;
  letter-spacing: 0.06em;
  font-weight: 700;
  text-align: center;
}
@media print, screen and (min-width: 769px) {
  h2 {
    padding-top: 95px;
    font-size: 2.25rem;
    line-height: 1.3333333333;
  }
}
h2:before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  display: block;
  width: 53px;
  height: 45px;
  margin: auto;
  background-image: url(images/icon_megaphone.png);
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
}
@media print, screen and (min-width: 769px) {
  h2:before {
    width: 82px;
    height: 71px;
  }
}

h3 {
  position: relative;
  padding-top: 15px;
  color: #1b1b1b;
  font-size: 1.3846153846rem;
  line-height: 1.4444444444;
  letter-spacing: 0.06em;
  font-weight: 700;
  text-align: center;
}
@media print, screen and (min-width: 769px) {
  h3 {
    padding-top: 20px;
    font-size: 1.75rem;
    line-height: 1.3571428571;
  }
}
h3:before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 1px;
  background-image: linear-gradient(to right, #000, #000 2px, transparent 2px, transparent 4px);
  background-size: 4px 1px;
  background-repeat: repeat-x;
  content: "";
}
@media print, screen and (min-width: 769px) {
  h3:before {
    background-image: linear-gradient(to right, #000, #000 4px, transparent 4px, transparent 8px);
    background-size: 8px 1px;
  }
}

h4 {
  position: relative;
  display: inline-block;
  padding-left: 32px;
  color: #1b1b1b;
  font-size: 1.3846153846rem;
  line-height: 1.4444444444;
  letter-spacing: 0.06em;
  font-weight: 700;
}
@media print, screen and (min-width: 769px) {
  h4 {
    padding-left: 48px;
    font-size: 1.75rem;
    line-height: 1.3571428571;
  }
}
h4:before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 22px;
  height: 19px;
  margin: auto;
  background-image: url(images/icon_megaphone.png);
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
}
@media print, screen and (min-width: 769px) {
  h4:before {
    top: 3px;
    width: 34px;
    height: 29px;
  }
}

h5 {
  position: relative;
  color: #1b1b1b;
  font-size: 1.3846153846rem;
  line-height: 1.4444444444;
  letter-spacing: 0.06em;
  font-weight: 700;
}
@media print, screen and (min-width: 769px) {
  h5 {
    font-size: 1.25rem;
    line-height: 1.5;
  }
}

h6 {
  position: relative;
  color: #1b1b1b;
  font-size: 1.2307692308rem;
  line-height: 1.5;
  letter-spacing: 0.06em;
  font-weight: 700;
}
@media print, screen and (min-width: 769px) {
  h6 {
    font-size: 1.125rem;
    line-height: 1.4444444444;
  }
}

/* ***************************
table
*************************** */
table {
  width: 100%;
  border-spacing: 0;
  border-collapse: collapse;
}

th,
td {
  padding: 14px;
  letter-spacing: 0.06em;
  vertical-align: middle;
}
@media print, screen and (max-width: 768px) {
  th,
td {
    font-size: 1rem;
    line-height: 1.5384615385;
  }
}

td {
  color: #1b1b1b;
  font-weight: 500;
  border: 1px solid #bdd1e1;
}

th {
  color: #fff;
  font-weight: 700;
  background-color: #0d73c0;
  border: 1px solid #bdd1e1;
}

ul li {
  position: relative;
  padding-left: 15px;
}
ul li ul,
ul li ol, ul li + li {
  margin-top: 0;
}
ul li:before {
  content: "";
  position: absolute;
  top: 10px;
  left: 4px;
  display: block;
  width: 4px;
  height: 4px;
  background: #00a0e2;
  border-radius: 50%;
}
@media print, screen and (min-width: 769px) {
  ul li:before {
    top: 12px;
    width: 5px;
    height: 5px;
  }
}
ul li ul li:before {
  background: #0d73c0;
}
ul li ol li:before {
  content: none;
}

ol {
  counter-reset: count-number;
}
ol li {
  position: relative;
  padding-left: 2.2em;
  counter-increment: count-number;
}
ol li ul,
ol li ol, ol li + li {
  margin-top: 0;
}
ol li:before {
  content: counter(count-number) ".";
  position: absolute;
  top: 0;
  left: 0;
  width: auto;
  height: auto;
  background: none;
}
ol li:nth-of-type(-n+9):before {
  content: "0" counter(count-number) ".";
}
ol li ol {
  counter-reset: cnt;
}
ol li ol li {
  padding-left: 2em;
  counter-increment: cnt;
}
ol li ol li:before {
  left: -8px;
  content: "（" counter(cnt) "）" !important;
}
ol ol,
ol ul {
  counter-reset: count-number;
}
ol ul li {
  position: relative;
  padding-left: 15px;
}
ol ul li ul,
ol ul li ol, ol ul li + li {
  margin-top: 0;
}
ol ul li:before {
  content: "" !important;
  position: absolute;
  top: 10px;
  left: 4px;
  display: block;
  width: 4px;
  height: 4px;
  background: #00a0e2;
  border-radius: 50%;
}
@media print, screen and (min-width: 769px) {
  ol ul li:before {
    top: 12px;
    width: 5px;
    height: 5px;
  }
}

/* ***************************
form Tag
*************************** */
input[type=text],
textarea,
select,
button {
  width: auto;
  padding: 1px 10px;
  margin: 0;
  font-family: "GenJyuuGothic", "メイリオ", Meiryo, sans-serif;
  font-size: 100%;
  line-height: inherit;
  color: #1b1b1b;
  background-color: #f6f6f6;
  border: solid 1px #e3e3e3;
  border-radius: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

input[type=text] {
  color: #1b1b1b;
}

input[type=text]::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: #565656;
}
input[type=text]:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #565656;
}
input[type=text]::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
  color: #565656;
}
input[type=text]::-moz-placeholder, textarea::-moz-placeholder {
  color: #565656;
}
input[type=text]:-ms-input-placeholder, textarea:-ms-input-placeholder {
  color: #565656;
}
input[type=text]::-ms-input-placeholder, textarea::-ms-input-placeholder {
  color: #565656;
}
input[type=text]::placeholder,
textarea::placeholder {
  color: #565656;
}

select {
  position: relative;
  color: #565656;
}
select.is-change {
  color: #1b1b1b;
}

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

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

select::-ms-expand {
  display: none;
}

button:active > span,
button:focus > span {
  position: relative;
}

[data-whatinput=mouse] input:focus,
[data-whatinput=mouse] textarea:focus,
[data-whatinput=mouse] select:focus,
[data-whatinput=mouse] button:focus {
  outline: none;
}

/* ***************************
header
*************************** */
.l-header {
  position: relative;
  background-color: #fff;
  -webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);
          box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);
  z-index: 3;
}
@media print, screen and (min-width: 769px) {
  .l-header {
    padding: 0 10px;
  }
}

@media print, screen and (min-width: 769px) {
  .is-scriptable .l-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
  }
}

@media print, screen and (max-width: 768px) {
  .is-scriptable.is-scroll .l-header {
    position: fixed;
    top: -40px;
    left: 0;
    width: 100%;
  }
}

@media print, screen and (max-width: 768px) {
  .is-scriptable .l-header.is-menuOpen {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
  }
}

.l-header__menu {
  display: none;
  margin-top: 0;
  position: absolute;
  top: auto;
  left: 0;
  width: 100%;
  height: calc(100vh - 100px);
  background-color: #0d73c0;
  overflow: auto;
  z-index: 2;
}
@media print, screen and (min-width: 769px) {
  .l-header__menu {
    height: auto;
  }
}

.l-header__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  max-width: 1200px;
  margin: 0 auto;
}
@media print, screen and (max-width: 768px) {
  .l-header__body {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.l-header__item {
  margin-top: 0;
}

.l-header__item--logo {
  width: 100%;
  -webkit-box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.3);
          box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.3);
  z-index: 1;
}
@media print, screen and (min-width: 769px) {
  .l-header__item--logo {
    max-width: 230px;
    margin-top: 34px;
    margin-right: 10px;
    margin-left: 16px;
    -webkit-box-shadow: none;
            box-shadow: none;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}

@media print, screen and (min-width: 769px) {
  .l-header__item--siteLogo {
    width: 100%;
    max-width: 303px;
    -webkit-transition: max-width 0.3s;
    transition: max-width 0.3s;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}

@media print, screen and (min-width: 769px) {
  .is-scriptable.is-scroll .l-header__item--siteLogo {
    max-width: 280px;
  }
}

.l-header__item--menu {
  margin-left: auto;
}
@media print, screen and (min-width: 769px) {
  .l-header__item--menu {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
}

/* ***************************
main
*************************** */
.l-main {
  position: relative;
  overflow: hidden;
}

.l-main__middle {
  background-color: #fdf49c;
}

.l-main__middle--noBg {
  background-color: #fff;
}

.l-main__middle__body {
  max-width: 980px;
  margin: 20px auto 0;
  padding: 0 10px 50px;
}
@media print, screen and (min-width: 769px) {
  .l-main__middle__body {
    margin-top: 48px;
    padding-bottom: 35px;
  }
}

.l-main__middle__body--narrow {
  max-width: 800px;
}

.l-main__middle__body--wide {
  max-width: 1220px;
}

.l-main__middle__body--pb0 {
  padding-bottom: 0;
}

.l-main__middle__foot {
  background-color: #fdf49c;
  padding: 20px 10px 30px;
}
@media print, screen and (min-width: 769px) {
  .l-main__middle__foot {
    padding-top: 60px;
    padding-bottom: 50px;
  }
}

.l-main__middle__footBody {
  max-width: 1200px;
  margin: 0 auto;
}

/* ***************************
footer
*************************** */
.l-footer {
  overflow: hidden;
}

.l-footer__head {
  padding: 25px 10px 0;
  background-color: #b9e6fa;
}
@media print, screen and (min-width: 769px) {
  .l-footer__head {
    padding-top: 60px;
  }
}

.l-footer__body {
  position: relative;
  margin-top: 0;
}
@media print, screen and (min-width: 769px) {
  .l-footer__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    max-width: 1220px;
    margin: auto;
    padding: 48px 10px 0;
  }
}
.l-footer__body:before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: 100vw;
  height: 1px;
  margin: auto;
  background-image: linear-gradient(to right, #b2b2b2, #b2b2b2 2px, transparent 2px, transparent 4px);
  background-size: 4px 1px;
  background-repeat: repeat-x;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  content: "";
}
@media print, screen and (min-width: 769px) {
  .l-footer__body:before {
    background-image: linear-gradient(to right, #b2b2b2, #b2b2b2 4px, transparent 4px, transparent 8px);
    background-size: 8px 1px;
  }
}

.l-footer__head + .l-footer__body:before {
  content: none;
}

.l-footer__body__contact {
  position: relative;
  width: 100%;
  margin-top: 0;
  padding: 35px 10px;
}
@media print, screen and (min-width: 769px) {
  .l-footer__body__contact {
    padding: 0;
    border: none;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}

.l-footer__body__link {
  position: relative;
  margin-top: 0;
  padding: 22px 25px 27px;
}
@media print, screen and (min-width: 769px) {
  .l-footer__body__link {
    width: 100%;
    margin-top: 32px;
    padding: 55px 0 42px;
    border: none;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}
.l-footer__body__link:before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 1px;
  margin: auto;
  background-image: linear-gradient(to right, #b2b2b2, #b2b2b2 2px, transparent 2px, transparent 4px);
  background-size: 4px 1px;
  background-repeat: repeat-x;
  content: "";
}

@media print, screen and (min-width: 769px) {
  .l-footer__body__link:before {
    position: absolute;
    top: 0;
    left: 50%;
    width: 100vw;
    height: 1px;
    margin: auto;
    background-image: linear-gradient(to right, #b2b2b2, #b2b2b2 4px, transparent 4px, transparent 8px);
    background-size: 8px 1px;
    background-repeat: repeat-x;
    content: "";
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

.l-footer__foot {
  margin-top: 0;
  padding: 23px 10px 22px;
  background-color: #fdf49c;
}
@media print, screen and (min-width: 769px) {
  .l-footer__foot {
    padding-top: 30px;
  }
}

/* ***************************
pageTitle
*************************** */
.c-pageTitle {
  position: relative;
  padding: 0 20px;
  background-color: #9cdffc;
  overflow: hidden;
}

.c-pageTitle__body {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 1200px;
  margin: 0 auto;
}

.c-pageTitle__ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: 75px;
  max-width: calc(100% - 140px);
  color: #1b1b1b;
  font-size: 1.6153846154rem;
  line-height: 1.4761904762;
  font-weight: 700;
  letter-spacing: 0.06em;
}
@media print, screen and (min-width: 769px) {
  .c-pageTitle__ttl {
    max-width: calc(100% - 270px);
    min-height: 200px;
    font-size: 2.875rem;
    line-height: 1.3043478261;
  }
}

.c-pageTitle--noIcon .c-pageTitle__ttl {
  max-width: 100%;
}

.c-pageTitle__icon {
  position: absolute;
  right: 0;
  bottom: -12px;
  margin-top: 0;
}
@media print, screen and (min-width: 769px) {
  .c-pageTitle__icon {
    bottom: 0;
  }
}
@media print, screen and (max-width: 768px) {
  .c-pageTitle__icon img {
    width: 130px;
    height: 84px;
  }
}

/* ***************************
breadCrumb
*************************** */
.c-breadCrumb {
  margin-top: 2px;
}
@media print, screen and (min-width: 769px) {
  .c-breadCrumb {
    margin-top: 20px;
  }
}

.c-breadCrumb__body {
  max-width: 1220px;
  margin: auto;
  padding: 0px 10px;
}

/*
listBreadCrumb
--------------------------- */
.c-listBreadCrumb {
  text-align: right;
}

.c-listBreadCrumb__item {
  display: inline;
  padding-left: 0;
  vertical-align: middle;
}
.c-listBreadCrumb__item:before {
  display: none;
}
.c-listBreadCrumb__item + .c-listBreadCrumb__item {
  position: relative;
  padding-left: 20px;
}
@media print, screen and (min-width: 769px) {
  .c-listBreadCrumb__item + .c-listBreadCrumb__item {
    padding-left: 30px;
  }
}
.c-listBreadCrumb__item + .c-listBreadCrumb__item:before {
  content: "";
  display: inline-block;
  margin-top: 6px;
  margin-left: 6px;
  font-size: 0.7692307692rem;
  line-height: 1;
  font-weight: 700;
  content: "";
  -webkit-transform: scale(0.6);
          transform: scale(0.6);
}
@media print, screen and (min-width: 769px) {
  .c-listBreadCrumb__item + .c-listBreadCrumb__item:before {
    margin-top: 6px;
    margin-left: 10px;
    -webkit-transform: scale(0.7);
            transform: scale(0.7);
  }
}

.c-listBreadCrumb__item__link {
  color: #1b1b1b;
  text-decoration: none;
}
.c-listBreadCrumb__item__link:visited, .c-listBreadCrumb__item__link:hover {
  color: #1b1b1b;
}
.c-listBreadCrumb__item__link:hover {
  text-decoration: underline;
}
.c-listBreadCrumb__item__link:after {
  content: none !important;
}

.c-listBreadCrumb__item__body {
  font-size: 0.8461538462rem;
  line-height: 1.6363636364;
  font-weight: 500;
  letter-spacing: 0.06em;
}
@media print, screen and (min-width: 769px) {
  .c-listBreadCrumb__item__body {
    font-size: 1rem;
    line-height: 1.875;
  }
}

/* ***************************
c-icon
*************************** */
[href^=http] {
  position: relative;
}
[href^=http]:after {
  content: "";
  display: inline-block;
  margin-left: 8px;
  font-size: 0.8461538462rem;
  line-height: 1;
  color: #00a0e2;
  vertical-align: middle;
}

/* ***************************
c-pageReader
*************************** */
.c-pageReader {
  margin: 0;
  padding: 0;
}

/* ***************************
logo
*************************** */
@media print, screen and (max-width: 768px) {
  .c-logo {
    max-width: 177px;
    margin: auto;
    padding: 9px 10px;
  }
}

.c-logo__link {
  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-decoration: none;
}
.c-logo__link:after {
  content: none;
}

/* ***************************
siteLogo
*************************** */
@media print, screen and (max-width: 768px) {
  .c-siteLogo {
    max-width: 210px;
    padding-left: 22px;
  }
}
@media print, screen and (max-width: 374px) {
  .c-siteLogo {
    max-width: 50vw;
    padding-right: 10px;
  }
}

.c-siteLogo__link {
  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-decoration: none;
}
.c-siteLogo__link:after {
  content: none;
}

/* ***************************
navToggle
*************************** */
.c-navToggle {
  position: absolute;
  width: 60px;
  height: 60px;
  margin: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}
@media print, screen and (min-width: 769px) {
  .c-navToggle {
    width: 94px;
    height: 94px;
    -webkit-transition: height 0.3s;
    transition: height 0.3s;
  }
}

@media print, screen and (min-width: 769px) {
  .is-scriptable.is-scroll .c-navToggle {
    height: 75px;
  }
}

.c-navToggleLines {
  position: relative;
  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;
  width: 60px;
  height: 60px;
  margin: 0;
  padding: 12px 10px 5px;
  background-color: #0d73c0;
  border: none;
  cursor: pointer;
}
@media print, screen and (min-width: 769px) {
  .c-navToggleLines {
    width: 94px;
    height: 94px;
    padding: 15px 10px;
    -webkit-transition: height 0.3s, padding 0.3s;
    transition: height 0.3s, padding 0.3s;
  }
}

.c-navToggleLines__text {
  display: block;
  margin-top: 5px;
  color: #fff;
  font-size: 0.7692307692rem;
  line-height: 1.6;
  font-weight: 700;
  letter-spacing: 0.06em;
  content: "MENU";
}
@media print, screen and (min-width: 769px) {
  .c-navToggleLines__text {
    margin-top: 15px;
    font-size: 1rem;
    line-height: 1;
    -webkit-transition: margin 0.3s;
    transition: margin 0.3s;
  }
}

@media print, screen and (min-width: 769px) {
  .is-scriptable.is-scroll .c-navToggleLines {
    height: 75px;
    padding: 10px;
  }
}
@media print, screen and (min-width: 769px) {
  .is-scriptable.is-scroll .c-navToggleLines__text {
    margin-top: 8px;
  }
}

.c-navToggleLines__btn {
  position: relative;
  display: inline-block;
  width: 28px;
  height: 20px;
  vertical-align: middle;
}
@media print, screen and (min-width: 769px) {
  .c-navToggleLines__btn {
    width: 44px;
    height: 31px;
  }
}

.c-navToggleLines__line {
  position: absolute;
  right: 0;
  left: 0;
  display: inline-block;
  width: 100%;
  height: 2px;
  margin: auto;
  background-color: #fff;
  border-radius: 1px;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
@media print, screen and (min-width: 769px) {
  .c-navToggleLines__line {
    height: 3px;
  }
}
.c-navToggleLines__line:nth-of-type(1) {
  top: 0;
}
.c-navToggleLines__line:nth-of-type(2) {
  top: 0;
  bottom: 0;
}
.c-navToggleLines__line:nth-of-type(3) {
  bottom: 0;
}

.c-navToggle.is-open + .c-navToggleLines .c-navToggleLines__line:nth-child(1),
.c-navToggle:checked + .c-navToggleLines .c-navToggleLines__line:nth-child(1) {
  -webkit-transform: translateY(9px) rotate(-45deg);
          transform: translateY(9px) rotate(-45deg);
}
.c-navToggle.is-open + .c-navToggleLines .c-navToggleLines__line:nth-child(2),
.c-navToggle:checked + .c-navToggleLines .c-navToggleLines__line:nth-child(2) {
  background-color: transparent;
}
.c-navToggle.is-open + .c-navToggleLines .c-navToggleLines__line:nth-child(3),
.c-navToggle:checked + .c-navToggleLines .c-navToggleLines__line:nth-child(3) {
  -webkit-transform: translateY(-9px) rotate(45deg);
          transform: translateY(-9px) rotate(45deg);
}

@media print, screen and (min-width: 769px) {
  .c-navToggle.is-open + .c-navToggleLines .c-navToggleLines__line:nth-child(1),
.c-navToggle:checked + .c-navToggleLines .c-navToggleLines__line:nth-child(1) {
    -webkit-transform: translateY(14px) rotate(-45deg);
            transform: translateY(14px) rotate(-45deg);
  }
  .c-navToggle.is-open + .c-navToggleLines .c-navToggleLines__line:nth-child(2),
.c-navToggle:checked + .c-navToggleLines .c-navToggleLines__line:nth-child(2) {
    background-color: transparent;
  }
  .c-navToggle.is-open + .c-navToggleLines .c-navToggleLines__line:nth-child(3),
.c-navToggle:checked + .c-navToggleLines .c-navToggleLines__line:nth-child(3) {
    -webkit-transform: translateY(-14px) rotate(45deg);
            transform: translateY(-14px) rotate(45deg);
  }
}
/* ***************************
footerLink
*************************** */
@media print, screen and (min-width: 769px) {
  .c-footerLink__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: -20px;
  }
}

.c-footerLink__list__item {
  padding-left: 0;
}
@media print, screen and (min-width: 769px) {
  .c-footerLink__list__item {
    padding: 0 20px;
  }
}
.c-footerLink__list__item:before {
  content: none;
}
.c-footerLink__list__item + .c-footerLink__list__item {
  margin-top: 15px;
}
@media print, screen and (min-width: 769px) {
  .c-footerLink__list__item + .c-footerLink__list__item {
    margin-top: 0;
  }
}

.c-footerLink__list__link {
  position: relative;
  display: inline-block;
  padding-left: 20px;
  font-size: 1.0769230769rem;
  line-height: 1.5714285714;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-decoration: none;
}
@media print, screen and (min-width: 769px) {
  .c-footerLink__list__link {
    font-size: 1rem;
    line-height: 1.875;
  }
}
@media print, screen and (min-width: 769px) {
  .c-footerLink__list__link:hover {
    text-decoration: underline;
  }
}
.c-footerLink__list__link:before {
  left: 0;
  width: 14px;
  height: 14px;
  background-color: #00a0e2;
  border-radius: 50%;
}
.c-footerLink__list__link:after {
  left: 5px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 0 3px 5px;
  border-color: transparent transparent transparent #fff;
}
.c-footerLink__list__link:before, .c-footerLink__list__link:after {
  position: absolute;
  top: 0;
  bottom: 0;
  display: inline-block;
  margin: auto;
  content: "";
}

/* ***************************
footerBalloon
*************************** */
@media print, screen and (min-width: 769px) {
  .c-footerBalloon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    max-width: 1155px;
    margin: auto;
  }
}

.c-footerBalloon__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 0;
}
@media print, screen and (min-width: 769px) {
  .c-footerBalloon__item {
    width: 50%;
    min-width: 530px;
  }
}
@media print, screen and (max-width: 374px) {
  .c-footerBalloon__item {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}

.c-footerBalloon__balloon {
  position: relative;
  min-width: 250px;
  margin-bottom: 23px;
  padding: 16px 26px;
  background-color: #fff;
  border: 1px solid #1b1b1b;
  border-radius: 10px;
}
@media print, screen and (min-width: 769px) {
  .c-footerBalloon__balloon {
    min-width: 400px;
    -ms-flex-item-align: start;
        align-self: flex-start;
    padding: 20px 36px 24px;
    border-width: 2px;
  }
}
@media print, screen and (max-width: 374px) {
  .c-footerBalloon__balloon {
    min-width: 230px;
  }
}
.c-footerBalloon__balloon:before {
  position: absolute;
  width: 15px;
  height: 18px;
  margin: auto;
  background-image: url(images/balloon-tail.svg);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
}
@media print, screen and (min-width: 769px) {
  .c-footerBalloon__balloon:before {
    width: 18px;
    height: 22px;
  }
}

.c-footerBalloon__heading {
  display: inline;
  font-size: 1.3846153846rem;
  line-height: 1.1111111111;
  font-weight: 700;
  letter-spacing: 0.06em;
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(0%, #fff100));
  background-image: linear-gradient(transparent 70%, #fff100 0%);
}
@media print, screen and (min-width: 769px) {
  .c-footerBalloon__heading {
    font-size: 1.75rem;
    line-height: 1.5;
  }
}

.c-footerBalloon__txt {
  margin-top: 10px;
  font-size: 1rem;
  line-height: 1.1538461538;
  font-weight: 500;
  letter-spacing: 0.06em;
}
@media print, screen and (min-width: 769px) {
  .c-footerBalloon__txt {
    font-size: 1.25rem;
    line-height: 1.7;
  }
}

.c-footerBalloon__link {
  margin-top: 8px;
}

.c-footerBalloon__link__body {
  position: relative;
  padding-left: 18px;
  font-size: 1.2307692308rem;
  line-height: 1.875;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-decoration: none;
}
@media print, screen and (min-width: 769px) {
  .c-footerBalloon__link__body {
    padding-left: 25px;
    font-size: 1.5rem;
    line-height: 2;
  }
}
.c-footerBalloon__link__body:hover, .c-footerBalloon__link__body:visited {
  color: #0d73c0;
}
.c-footerBalloon__link__body:before {
  left: 0;
  width: 14px;
  height: 14px;
  background-color: #00a0e2;
  border-radius: 50%;
}
@media print, screen and (min-width: 769px) {
  .c-footerBalloon__link__body:before {
    width: 16px;
    height: 16px;
  }
}
.c-footerBalloon__link__body:after {
  left: 5px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 0 3px 5px;
  border-color: transparent transparent transparent #fff;
}
@media print, screen and (min-width: 769px) {
  .c-footerBalloon__link__body:after {
    left: 6px;
  }
}
.c-footerBalloon__link__body:before, .c-footerBalloon__link__body:after {
  position: absolute;
  top: 0;
  bottom: 0;
  display: inline-block;
  margin: auto;
  content: "";
}

.c-footerBalloon__img {
  max-width: 90px;
  margin-top: 0;
}
@media print, screen and (min-width: 769px) {
  .c-footerBalloon__img {
    max-width: 120px;
    -ms-flex-item-align: end;
        align-self: flex-end;
    margin-top: 80px;
  }
}

@media print, screen and (min-width: 769px) {
  .c-footerBalloon--right {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
.c-footerBalloon--right .c-footerBalloon__balloon {
  margin-left: 20px;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}
@media print, screen and (min-width: 769px) {
  .c-footerBalloon--right .c-footerBalloon__balloon {
    margin-left: 0;
  }
}
@media print, screen and (max-width: 374px) {
  .c-footerBalloon--right .c-footerBalloon__balloon {
    margin-left: 15px;
  }
}
.c-footerBalloon--right .c-footerBalloon__balloon:before {
  top: 10px;
  bottom: 0;
  left: -10px;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
@media print, screen and (min-width: 769px) {
  .c-footerBalloon--right .c-footerBalloon__balloon:before {
    top: auto;
    left: 56px;
    bottom: -18px;
    -webkit-transform: rotate(12deg);
            transform: rotate(12deg);
  }
}
.c-footerBalloon--right .c-footerBalloon__img {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}

@media print, screen and (min-width: 769px) {
  .c-footerBalloon--left {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
.c-footerBalloon--left .c-footerBalloon__balloon {
  margin-right: 20px;
}
@media print, screen and (min-width: 769px) {
  .c-footerBalloon--left .c-footerBalloon__balloon {
    margin-right: 0;
  }
}
@media print, screen and (max-width: 374px) {
  .c-footerBalloon--left .c-footerBalloon__balloon {
    margin-right: 15px;
  }
}
.c-footerBalloon--left .c-footerBalloon__balloon:before {
  top: 10px;
  right: -10px;
  bottom: 0;
  -webkit-transform: rotate(90deg) scale(1, -1);
          transform: rotate(90deg) scale(1, -1);
}
@media print, screen and (min-width: 769px) {
  .c-footerBalloon--left .c-footerBalloon__balloon:before {
    top: auto;
    right: 56px;
    bottom: -18px;
    -webkit-transform: rotate(-12deg) scale(-1, 1);
            transform: rotate(-12deg) scale(-1, 1);
  }
}

/* ***************************
footerContact
*************************** */
.c-footerContact {
  text-align: center;
}
@media print, screen and (min-width: 769px) {
  .c-footerContact {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

@media print, screen and (min-width: 769px) {
  .c-footerContact__logo {
    margin-right: 25px;
    padding-bottom: 10px;
  }
}
.c-footerContact__logo img {
  max-width: 233px;
}

.c-footerContact__btn {
  margin-top: 30px;
}
@media print, screen and (min-width: 769px) {
  .c-footerContact__btn {
    margin-top: 0;
  }
}

/* ***************************
copyright
*************************** */
.c-copyright {
  display: block;
  color: #313131;
  font-size: 0.8461538462rem;
  line-height: 1.8181818182;
  letter-spacing: 0.06em;
  text-align: center;
}
@media print, screen and (min-width: 769px) {
  .c-copyright {
    font-size: 0.875rem;
    line-height: 2;
  }
}

/* ***************************
returnTop
*************************** */
.c-returnTop {
  position: absolute;
  right: 10px;
  margin-top: 0;
  z-index: 2;
}
@media print, screen and (min-width: 1201px) {
  .c-returnTop {
    right: calc(50% - 600px);
  }
}
.c-returnTop.is-fixed {
  position: fixed;
  bottom: 40px;
}

.c-returnTop__link {
  position: relative;
  display: block;
  width: 35px;
  height: 35px;
  font-size: 0%;
  line-height: 0;
  background-color: #fff;
  border: 2px solid #fff45c;
  border-radius: 50%;
  text-decoration: none;
}
@media print, screen and (min-width: 769px) {
  .c-returnTop__link {
    width: 60px;
    height: 60px;
    border-width: 3px;
  }
}
.c-returnTop__link:hover {
  text-decoration: none;
}
.c-returnTop__link:after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 0;
  height: 0;
  margin: auto;
  border-style: solid;
  border-width: 0 5px 9px 5px;
  border-color: transparent transparent #00a0e2 transparent;
  content: "";
}
@media print, screen and (min-width: 769px) {
  .c-returnTop__link:after {
    border-width: 0 9px 15px 9px;
  }
}

/* ***************************
navGlobal
*************************** */
.c-navGlobal {
  position: absolute;
  top: auto;
  left: 0;
  display: none;
  width: 100%;
  height: calc(100vh - 100px);
  margin: auto;
  padding: 10px;
  background-color: #0d73c0;
  overflow: auto;
}
.c-navGlobal:after {
  display: block;
  width: 100%;
  height: 100px;
  content: "";
}

body:not(.is-scriptable) .c-navToggle.is-open ~ .c-navGlobal,
body:not(.is-scriptable) .c-navToggle:checked ~ .c-navGlobal {
  display: block;
}
@media print, screen and (min-width: 769px) {
  body:not(.is-scriptable) .c-navToggle.is-open ~ .c-navGlobal,
body:not(.is-scriptable) .c-navToggle:checked ~ .c-navGlobal {
    display: none;
  }
}

.c-navGlobal__list {
  background-color: #fff;
  border: 2px solid #1b1b1b;
  border-radius: 10px;
  overflow: hidden;
}

.c-navGlobal__item {
  padding-left: 0;
}
.c-navGlobal__item:before {
  content: none;
}
.c-navGlobal__item + .c-navGlobal__item {
  margin-top: 0;
}
.c-navGlobal__item + .c-navGlobal__item:before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 1px;
  background-image: linear-gradient(to right, #1b1b1b, #1b1b1b 2px, transparent 2px, transparent 4px);
  background-size: 4px 1px;
  background-repeat: repeat-x;
  border-radius: 0;
  background-color: transparent;
  content: "";
  z-index: 1;
}

.c-navGlobal__item__body {
  margin-top: 0;
  padding: 10px 13px 28px;
  background-color: #fff;
}

.c-navGlobal__item__link {
  position: relative;
  display: inline-block;
  width: 100%;
  padding: 10px 12px;
  color: #0d73c0;
  font-size: 1.2307692308rem;
  line-height: 1.625;
  letter-spacing: 0.06em;
  font-weight: 700;
  text-decoration: none;
}
.c-navGlobal__item__link:hover, .c-navGlobal__item__link:visited {
  color: #0d73c0;
}

.c-navGlobal__item__head--accordion,
.c-navGlobal__item__head--modal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.c-navGlobal__item__head--accordion .c-navGlobal__item__link,
.c-navGlobal__item__head--modal .c-navGlobal__item__link {
  width: 100%;
  padding-right: 32px;
}
.c-navGlobal__item__head--accordion .c-navGlobal__item__link:after,
.c-navGlobal__item__head--modal .c-navGlobal__item__link:after {
  position: absolute;
  top: 0;
  right: 10px;
  bottom: 0;
  width: 0;
  height: 0;
  margin: auto;
  border-style: solid;
  border-width: 14px 8px 0 8px;
  border-color: #00a1e3 transparent transparent transparent;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
  content: "";
}

.c-navGlobal__item__btn {
  position: relative;
  display: inline-block;
  width: 100%;
  padding: 10px 32px 10px 12px;
  color: #0d73c0;
  font-size: 1.2307692308rem;
  line-height: 1.625;
  letter-spacing: 0.06em;
  font-weight: 700;
  background-color: #fff;
  border: none;
  text-decoration: none;
  text-align: left;
}
.c-navGlobal__item__btn:hover {
  text-decoration: underline;
}
.c-navGlobal__item__btn:after {
  position: absolute;
  top: 0;
  right: 10px;
  bottom: 0;
  width: 0;
  height: 0;
  margin: auto;
  border-style: solid;
  border-width: 14px 8px 0 8px;
  border-color: #00a1e3 transparent transparent transparent;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
  content: "";
}

.c-navGlobal__item__btn.is-open:after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

.c-navGlobal__item__btnBody {
  position: relative;
}

.c-navChild {
  margin-top: 0;
  padding: 14px 18px 11px;
  background-color: #fdf49c;
  border-radius: 10px;
}
@media print, screen and (min-width: 769px) {
  .c-navChild {
    margin: 0 -5px;
    padding: 18px 22px;
  }
}

.c-navChild__item {
  padding-left: 0;
}
@media print, screen and (min-width: 769px) {
  .c-navChild__item {
    padding: 0;
  }
}
.c-navChild__item:before {
  content: none;
}
.c-navChild__item + .c-navChild__item {
  margin-top: 10px;
}
@media print, screen and (min-width: 769px) {
  .c-navChild__item + .c-navChild__item {
    margin-top: 0;
    margin-bottom: 6px;
  }
}

.c-navChild__link {
  position: relative;
  display: inline-block;
  font-size: 1.0769230769rem;
  line-height: 1.4285714286;
  letter-spacing: 0.06em;
  text-decoration: none;
}
.c-navChild__link:before {
  position: absolute;
  top: 0.5em;
  left: 0;
  display: inline-block;
  margin: auto;
}
.c-navChild__link:visited {
  color: #1b1b1b;
}

.c-navChild__text {
  color: #1b1b1b;
  font-weight: 700;
}

/* ***************************
pcMenu
*************************** */
.c-pcMenu {
  position: absolute;
  top: auto;
  left: 0;
  display: none;
  width: 100%;
  background-color: #0d73c0;
  margin: auto;
  padding: 20px 10px;
}
body:not(.is-scriptable) .c-navToggle.is-open ~ .c-pcMenu,
body:not(.is-scriptable) .c-navToggle:checked ~ .c-pcMenu {
  display: none;
}
@media print, screen and (min-width: 769px) {
  body:not(.is-scriptable) .c-navToggle.is-open ~ .c-pcMenu,
body:not(.is-scriptable) .c-navToggle:checked ~ .c-pcMenu {
    display: block;
  }
}

.c-pcMenu__inner {
  max-width: 1300px;
  margin: auto;
  background-color: #fff;
  border: 2px solid #1b1b1b;
  border-radius: 10px;
}

.c-pcMenu__head {
  position: relative;
  width: 100%;
  padding: 8px 30px 11px;
}
.c-pcMenu__head:after {
  position: absolute;
  bottom: 0;
  right: -14px;
  left: -14px;
  display: block;
  width: 100%;
  height: 1px;
  margin: auto;
  background-image: linear-gradient(to right, #1b1b1b, #1b1b1b 4px, transparent 4px, transparent 8px);
  background-size: 8px 1px;
  background-repeat: repeat-x;
  content: "";
}

.c-pcMenu__head__link {
  font-size: 1.5rem;
  line-height: 1.75;
  font-weight: 700;
  letter-spacing: 0;
  text-decoration: none;
}
.c-pcMenu__head__link:hover {
  text-decoration: underline;
}
.c-pcMenu__head__link:hover, .c-pcMenu__head__link:visited {
  color: #0d73c0;
}

.c-pcMenu__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 0;
  padding: 18px 15px 25px;
}

.c-pcMenu__item {
  width: 33.333%;
  margin-top: 0;
  padding: 0 15px;
}

/*
pcMenuChild
--------------------------- */
.c-pcMenuChild__head__link {
  color: #0d73c0;
  font-size: 1.25rem;
  line-height: 1.9;
  font-weight: 700;
  letter-spacing: 0.06em;
}
.c-pcMenuChild__head__link:hover {
  text-decoration: underline;
}
.c-pcMenuChild__head__link:hover, .c-pcMenuChild__head__link:visited {
  color: #0d73c0;
}

.c-pcMenuChild__head__text {
  color: #0d73c0;
  font-size: 1.25rem;
  line-height: 1.9;
  font-weight: 700;
  letter-spacing: 0.06em;
}

.c-pcMenuChild__body {
  margin-top: 10px;
  padding: 18px 22px;
  background-color: #fdf49c;
  border-radius: 10px;
}

.c-pcMenuChild__list__item {
  padding-left: 0;
}
.c-pcMenuChild__list__item:before {
  content: none;
}

.c-pcMenuChild__list--flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 -15px;
}
.c-pcMenuChild__list--flex .c-pcMenuChild__list__item {
  width: 50%;
  margin-top: 0;
  margin-bottom: 5px;
  padding: 0 15px;
}

.c-pcMenuChild__list__link {
  color: #1b1b1b;
  font-weight: 700;
}
.c-pcMenuChild__list__link:visited {
  color: #1b1b1b;
}
.c-pcMenuChild__list__link:hover {
  color: #0d73c0;
  text-decoration: none;
}

/*
pcMenuList
--------------------------- */
.c-pcMenuList {
  margin-top: 5px;
}

.c-pcMenuList__item {
  padding-left: 20px;
}
.c-pcMenuList__item:before {
  top: 8px;
  left: 0;
  width: 14px;
  height: 14px;
  background-color: #00a0e2;
  border-radius: 50%;
}
.c-pcMenuList__item:after {
  top: 12px;
  left: 5px;
  width: 0;
  height: 0;
  margin: auto;
  border-style: solid;
  border-width: 3px 0 3px 5px;
  border-color: transparent transparent transparent #fff;
}
.c-pcMenuList__item:before, .c-pcMenuList__item:after {
  position: absolute;
  display: inline-block;
  content: "";
}
.c-pcMenuList__item + .c-pcMenuList__item {
  margin-top: 8px;
}

.c-pcMenuList__item__link {
  position: relative;
  display: inline-block;
  font-size: 1.25rem;
  line-height: 1.4;
  font-weight: 700;
  text-decoration: none;
}
.c-pcMenuList__item__link:hover, .c-pcMenuList__item__link:visited {
  color: #0d73c0;
}
.c-pcMenuList__item__link:hover {
  text-decoration: underline;
}

/* ***************************
heading
*************************** */
.c-decorationHeading {
  text-align: center;
}
* + .c-decorationHeading {
  margin-top: 20px;
}
@media print, screen and (min-width: 769px) {
  * + .c-decorationHeading {
    margin-top: 50px;
  }
}
.c-decorationHeading + * {
  margin-top: 10px;
}
@media print, screen and (min-width: 769px) {
  .c-decorationHeading + * {
    margin-top: 25px;
  }
}

.c-decorationHeading__inner {
  position: relative;
  display: inline-block;
  padding: 0 40px;
  color: #1b1b1b;
  font-size: 1.9230769231rem;
  line-height: 1.4;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-align: center;
}
@media print, screen and (min-width: 769px) {
  .c-decorationHeading__inner {
    padding: 0 50px;
    font-size: 2.25rem;
    line-height: 1.2777777778;
  }
}
.c-decorationHeading__inner:before {
  left: 0;
}
.c-decorationHeading__inner:after {
  right: 0;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}
.c-decorationHeading__inner:before, .c-decorationHeading__inner:after {
  position: absolute;
  bottom: 6px;
  width: 23px;
  height: 20px;
  background-image: url(images/h2_decoration.svg);
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
}
@media print, screen and (min-width: 769px) {
  .c-decorationHeading__inner:before, .c-decorationHeading__inner:after {
    bottom: 8px;
    width: 33px;
    height: 30px;
  }
}

.c-accHedingPrimary {
  margin: 25px 0 0 0;
  padding: 0 0 8px 0;
  color: #1b1b1b;
  font-size: 1.3846153846rem;
  line-height: 1.0555555556;
  font-weight: 700;
  letter-spacing: 0.04em;
  border-bottom: 1px solid #bdd1e1;
  text-align: left;
}
@media print, screen and (min-width: 769px) {
  .c-accHedingPrimary {
    margin-top: 30px;
    padding-bottom: 3px;
    font-size: 1.375rem;
    line-height: 1.7272727273;
  }
}
* + .c-accHedingPrimary {
  margin-top: 25px;
}
@media print, screen and (min-width: 769px) {
  * + .c-accHedingPrimary {
    margin-top: 30px;
  }
}
.c-accHedingPrimary + p {
  margin-top: 15px;
}
@media print, screen and (min-width: 769px) {
  .c-accHedingPrimary + p {
    margin-top: 18px;
  }
}

.c-accHedingSecondary {
  margin: 0;
  padding: 0;
  color: #1b1b1b;
  font-size: 1.2307692308rem;
  line-height: 1.1875;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-align: left;
}
@media print, screen and (min-width: 769px) {
  .c-accHedingSecondary {
    font-size: 1.25rem;
    line-height: 1.9;
  }
}
* + .c-accHedingSecondary {
  margin-top: 22px;
}
.c-accHedingSecondary + p {
  margin-top: 10px;
}
@media print, screen and (min-width: 769px) {
  .c-accHedingSecondary + p {
    margin-top: 8px;
  }
}

.c-accHedingTertiary {
  margin: 0;
  padding: 0;
  color: #0d73c0;
  font-size: 1.0769230769rem;
  line-height: 1.3571428571;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-align: left;
}
@media print, screen and (min-width: 769px) {
  .c-accHedingTertiary {
    font-size: 1.125rem;
    line-height: 2.1111111111;
  }
}
* + .c-accHedingTertiary {
  margin-top: 20px;
}
.c-accHedingTertiary + p {
  margin-top: 8px;
}
@media print, screen and (min-width: 769px) {
  .c-accHedingTertiary + p {
    margin-top: 0;
  }
}

.c-accHedingPrimary:before, .c-accHedingPrimary:after,
.c-accHedingSecondary:before,
.c-accHedingSecondary:after,
.c-accHedingTertiary:before,
.c-accHedingTertiary:after {
  content: none;
}

/* ***************************
btn
*************************** */
.c-btn {
  position: relative;
  display: inline-block;
  background-color: #fff100;
  border-radius: 200px;
  -webkit-box-shadow: 0 3px 0 #dcdcdc;
          box-shadow: 0 3px 0 #dcdcdc;
  color: #1b1b1b;
  text-decoration: none;
  vertical-align: top;
}
@media print, screen and (min-width: 769px) {
  .c-btn {
    -webkit-box-shadow: 0 5px 0 #dcdcdc;
            box-shadow: 0 5px 0 #dcdcdc;
  }
}
.c-btn:visited {
  color: #1b1b1b;
}
.c-btn:hover {
  color: #00a0e9;
  text-decoration: none;
}

.c-btn--white {
  background-color: #fff;
  -webkit-box-shadow: 0 3px 0 #e2d73a;
          box-shadow: 0 3px 0 #e2d73a;
}
@media print, screen and (min-width: 769px) {
  .c-btn--white {
    -webkit-box-shadow: 0 5px 0 #e2d73a;
            box-shadow: 0 5px 0 #e2d73a;
  }
}

.c-btn--contact {
  border: 2px solid #00a0e9;
  background-color: #fff;
  -webkit-box-shadow: 0 3px 0 #e2d73a;
          box-shadow: 0 3px 0 #e2d73a;
}
@media print, screen and (min-width: 769px) {
  .c-btn--contact {
    border-width: 3px;
    -webkit-box-shadow: 0 5px 0 #e2d73a;
            box-shadow: 0 5px 0 #e2d73a;
  }
}

.c-btn__body {
  position: relative;
  display: table-cell;
  min-width: 200px;
  padding: 10px 35px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 1.2307692308rem;
  line-height: 1.25;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-align: center;
  vertical-align: middle;
}
@media print, screen and (min-width: 769px) {
  .c-btn__body {
    min-width: 320px;
    padding: 14px 48px;
    font-size: 1.125rem;
    line-height: 1.7777777778;
    font-weight: 700;
  }
}
.c-btn__body:before {
  right: 11px;
  width: 14px;
  height: 14px;
  background-color: #00a0e9;
  border-radius: 50%;
}
@media print, screen and (min-width: 769px) {
  .c-btn__body:before {
    right: 18px;
    width: 22px;
    height: 22px;
  }
}
.c-btn__body:after {
  right: 15px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 0 3px 5px;
  border-color: transparent transparent transparent #fff100;
}
@media print, screen and (min-width: 769px) {
  .c-btn__body:after {
    right: 25px;
    border-width: 4px 0 4px 7px;
  }
}
.c-btn__body:before, .c-btn__body:after {
  position: absolute;
  top: 0;
  bottom: 0;
  display: inline-block;
  margin: auto;
  content: "";
}

.c-btn--small .c-btn__body {
  min-width: 150px;
}
@media print, screen and (min-width: 769px) {
  .c-btn--small .c-btn__body {
    min-width: 320px;
  }
}

.c-btn--large .c-btn__body {
  min-width: 290px;
  padding: 15px 25px;
}
@media print, screen and (min-width: 769px) {
  .c-btn--large .c-btn__body {
    min-width: 320px;
    padding: 15px 45px;
  }
}

.c-btn--contact .c-btn__body {
  min-width: 340px;
  padding: 16px 38px 16px 28px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 1.5384615385rem;
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: 0.06em;
}
@media print, screen and (min-width: 769px) {
  .c-btn--contact .c-btn__body {
    min-width: 500px;
    padding: 25px 60px 25px 42px;
    font-size: 1.875rem;
    line-height: 1.1333333333;
  }
}
@media print, screen and (max-width: 374px) {
  .c-btn--contact .c-btn__body {
    min-width: 150px;
  }
}
.c-btn--contact .c-btn__body:before {
  right: 19px;
  width: 20px;
  height: 20px;
}
@media print, screen and (min-width: 769px) {
  .c-btn--contact .c-btn__body:before {
    right: 20px;
    width: 30px;
    height: 30px;
  }
}
.c-btn--contact .c-btn__body:after {
  right: 25px;
  border-width: 4px 0 4px 6px;
}
@media print, screen and (min-width: 769px) {
  .c-btn--contact .c-btn__body:after {
    right: 30px;
    border-width: 6px 0 6px 9px;
  }
}

.c-btn--white .c-btn__body:after,
.c-btn--contact .c-btn__body:after {
  border-color: transparent transparent transparent #fff;
}

.c-btn[href^=http] .c-btn__body:before {
  content: none !important;
}
.c-btn[href^=http] .c-btn__body:after {
  top: 3px;
  display: inline-block;
  width: 20px;
  height: 15px;
  margin-left: 8px;
  color: #00a0e9;
  font-size: 0.8461538462rem;
  line-height: 1;
  border: none;
  vertical-align: middle;
  content: "";
}
.c-btn[href^=http]:after {
  content: none !important;
}

/* ***************************
flexGrid
*************************** */
* + .c-flexGrid {
  margin: 40px 0 0;
}

.c-flexGrid + .c-flexGrid {
  margin-top: 57px;
}
@media print, screen and (min-width: 769px) {
  .c-flexGrid + .c-flexGrid {
    margin-top: 80px;
  }
}

.c-flexGrid__body {
  display: block;
  margin: 0;
}
@media print, screen and (min-width: 769px) {
  .c-flexGrid__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: -40px -20px 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .c-flexGrid__body.reverse_flex {
    margin-top: 10px;
    flex-direction: row-reverse;
  }
}

@media print, screen and (max-width: 768px) {
  .c-flexGrid__body--spFlex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: -20px -10px 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .c-flexGrid__body.reverse_flex {
    margin-top: 30px;
  }
}
@media print, screen and (max-width: 768px) {
  .c-flexGrid__body--spFlex .c-flexGrid__item {
    margin-top: 20px !important;
    padding: 0 10px;
  }
}

.c-flexGrid__item {
  width: 100%;
  margin-top: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media print, screen and (min-width: 769px) {
  .c-flexGrid__item {
    margin-top: 40px;
    padding: 0 20px;
  }
}
.c-flexGrid__item img {
  width: 100%;
}
@media print, screen and (max-width: 768px) {
  .c-flexGrid__item + .c-flexGrid__item {
    margin-top: 16px;
  }
}

.c-flexGrid--width1 {
  width: 8.3333333333%;
}

.c-flexGrid--width2 {
  width: 16.6666666667%;
}

.c-flexGrid--width3 {
  width: 25%;
}

.c-flexGrid--width4 {
  width: 33.3333333333%;
}

.c-flexGrid--width5 {
  width: 41.6666666667%;
}

.c-flexGrid--width6 {
  width: 50%;
}

.c-flexGrid--width7 {
  width: 58.3333333333%;
}

.c-flexGrid--width8 {
  width: 66.6666666667%;
}

.c-flexGrid--width9 {
  width: 75%;
}

.c-flexGrid--width10 {
  width: 83.3333333333%;
}

.c-flexGrid--width11 {
  width: 91.6666666667%;
}

@media print, screen and (max-width: 768px) {
  .c-flexGrid--spWidth1 {
    width: 8.3333333333%;
  }
}

@media print, screen and (max-width: 768px) {
  .c-flexGrid--spWidth2 {
    width: 16.6666666667%;
  }
}

@media print, screen and (max-width: 768px) {
  .c-flexGrid--spWidth3 {
    width: 25%;
  }
}

@media print, screen and (max-width: 768px) {
  .c-flexGrid--spWidth4 {
    width: 33.3333333333%;
  }
}

@media print, screen and (max-width: 768px) {
  .c-flexGrid--spWidth5 {
    width: 41.6666666667%;
  }
}

@media print, screen and (max-width: 768px) {
  .c-flexGrid--spWidth6 {
    width: 50%;
  }
}

@media print, screen and (max-width: 768px) {
  .c-flexGrid--spWidth7 {
    width: 58.3333333333%;
  }
}

@media print, screen and (max-width: 768px) {
  .c-flexGrid--spWidth8 {
    width: 66.6666666667%;
  }
}

@media print, screen and (max-width: 768px) {
  .c-flexGrid--spWidth9 {
    width: 75%;
  }
}

@media print, screen and (max-width: 768px) {
  .c-flexGrid--spWidth10 {
    width: 83.3333333333%;
  }
}

@media print, screen and (max-width: 768px) {
  .c-flexGrid--spWidth11 {
    width: 91.6666666667%;
  }
}

@media print, screen and (min-width: 769px) {
  .c-flexGrid--pcWidth1 {
    width: 8.3333333333%;
  }
}

@media print, screen and (min-width: 769px) {
  .c-flexGrid--pcWidth2 {
    width: 16.6666666667%;
  }
}

@media print, screen and (min-width: 769px) {
  .c-flexGrid--pcWidth3 {
    width: 25%;
  }
}

@media print, screen and (min-width: 769px) {
  .c-flexGrid--pcWidth4 {
    width: 33.3333333333%;
  }
}

@media print, screen and (min-width: 769px) {
  .c-flexGrid--pcWidth5 {
    width: 41.6666666667%;
  }
}

@media print, screen and (min-width: 769px) {
  .c-flexGrid--pcWidth6 {
    width: 50%;
  }
}

@media print, screen and (min-width: 769px) {
  .c-flexGrid--pcWidth7 {
    width: 58.3333333333%;
  }
}

@media print, screen and (min-width: 769px) {
  .c-flexGrid--pcWidth8 {
    width: 66.6666666667%;
  }
}

@media print, screen and (min-width: 769px) {
  .c-flexGrid--pcWidth9 {
    width: 75%;
  }
}

@media print, screen and (min-width: 769px) {
  .c-flexGrid--pcWidth10 {
    width: 83.3333333333%;
  }
}

@media print, screen and (min-width: 769px) {
  .c-flexGrid--pcWidth11 {
    width: 91.6666666667%;
  }
}

/* ***************************
paint
*************************** */
.c-paint {
  padding: 0;
}
* + .c-paint {
  margin-top: 30px;
}
@media print, screen and (min-width: 769px) {
  * + .c-paint {
    margin-top: 40px;
  }
}

.c-paint__body {
  position: relative;
  padding: 6px 14px;
  background-color: #fdf49c;
  border-radius: 5px;
}
@media print, screen and (min-width: 769px) {
  .c-paint__body {
    padding: 12px 20px;
  }
}

/* ***************************
linkList
*************************** */
.c-linkList {
  padding: 0;
  background: none;
}

.c-linkList__item {
  position: relative;
  padding: 0 0 0 18px;
}
@media print, screen and (min-width: 769px) {
  .c-linkList__item {
    padding-left: 22px;
  }
}
.c-linkList__item:before {
  top: 9px;
  left: 0;
  width: 12px;
  height: 12px;
  background-color: #00a0e2;
  border-radius: 50%;
}
.c-linkList__item:after {
  top: 13px;
  left: 4px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 2px 0 2px 4px;
  border-color: transparent transparent transparent #fff;
}
@media print, screen and (min-width: 769px) {
  .c-linkList__item:after {
    top: 12px;
    border-width: 3px 0 3px 6px;
  }
}
.c-linkList__item:before, .c-linkList__item:after {
  position: absolute;
  display: inline-block;
  margin: auto;
  content: "";
}

.c-linkList__link {
  color: #1b1b1b;
  font-size: 1.0769230769rem;
  line-height: 2.1428571429;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-decoration: none;
}
@media print, screen and (min-width: 769px) {
  .c-linkList__link {
    font-size: 1.125rem;
    line-height: 1.7777777778;
    font-weight: 700;
  }
}
.c-linkList__link:visited {
  color: #1b1b1b;
}
.c-linkList__link:hover {
  color: #0d73c0;
  text-decoration: none;
}

/* ***************************
cautionList
*************************** */
.c-cautionList li {
  padding-left: 15px;
  font-size: 0.8461538462rem;
  line-height: 1.8181818182;
  letter-spacing: 0.06em;
}
@media print, screen and (min-width: 769px) {
  .c-cautionList li {
    padding-left: 20px;
    font-size: 1rem;
    line-height: 1.875;
  }
}
.c-cautionList li:before {
  content: "※";
  top: 0;
  left: 0;
  width: auto;
  height: auto;
  color: #1b1b1b;
  background: none;
}
.c-cautionList li + li {
  margin-top: 10px;
}

/* ***************************
pagination
*************************** */
.c-pagination {
  max-width: 530px;
  margin: 35px auto 0;
  padding: 8px 10px;
  background-color: #fff;
  border-radius: 90px;
  -webkit-box-shadow: 0 2px 0 #e2d73a;
          box-shadow: 0 2px 0 #e2d73a;
}
@media print, screen and (max-width: 374px) {
  .c-pagination {
    padding: 8px 0px;
  }
}
@media print, screen and (min-width: 769px) {
  .c-pagination {
    margin-top: 60px;
    -webkit-box-shadow: 0 3px 0 #e2d73a;
            box-shadow: 0 3px 0 #e2d73a;
  }
}

.c-pagination__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  overflow: hidden;
}

.c-pagination__list__item {
  min-width: 38px;
  margin-top: 0;
  padding: 0 4px;
  text-align: center;
  z-index: 1;
}
@media print, screen and (max-width: 374px) {
  .c-pagination__list__item {
    min-width: 36px;
    padding: 0 2px;
  }
}
@media print, screen and (min-width: 769px) {
  .c-pagination__list__item {
    min-width: 48px;
    padding: 0 5px;
  }
}
.c-pagination__list__item:before {
  content: none;
}

.c-pagination__list__link {
  position: relative;
  display: inline-block;
  width: 100%;
  height: 100%;
  color: #0d73c0;
  font-size: 1.0769230769rem;
  line-height: 2.1428571429;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-decoration: none;
}
@media print, screen and (min-width: 769px) {
  .c-pagination__list__link {
    font-size: 1.125rem;
    line-height: 2.1111111111;
  }
}
.c-pagination__list__link:visited {
  color: #0d73c0;
}
.c-pagination__list__link:hover {
  color: #fff;
  background-color: #0d73c0;
  border-radius: 50%;
  text-decoration: none;
}

.c-pagination__list__link.is-active {
  color: #fff;
  background-color: #0d73c0;
  border-radius: 50%;
}

.c-pagination__list__item--prev {
  margin-right: auto;
  padding: 0;
  text-align: left;
}
.c-pagination__list__item--prev .c-pagination__list__link {
  width: auto;
  height: auto;
  padding-left: 22px;
}
@media print, screen and (min-width: 769px) {
  .c-pagination__list__item--prev .c-pagination__list__link {
    padding-left: 38px;
  }
}
.c-pagination__list__item--prev .c-pagination__list__link:before {
  right: auto;
  left: 3px;
  width: 13px;
  height: 13px;
  background-color: #00a0e9;
  border-radius: 50%;
}
@media print, screen and (min-width: 769px) {
  .c-pagination__list__item--prev .c-pagination__list__link:before {
    left: 11px;
    width: 18px;
    height: 18px;
  }
}
.c-pagination__list__item--prev .c-pagination__list__link:after {
  right: auto;
  left: 6px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 5px 3px 0;
  border-color: transparent #fff transparent transparent;
}
@media print, screen and (min-width: 769px) {
  .c-pagination__list__item--prev .c-pagination__list__link:after {
    left: 15px;
    border-width: 4px 7px 4px 0;
  }
}

.c-pagination__list__item--next {
  margin-left: auto;
  padding: 0;
  text-align: right;
}
.c-pagination__list__item--next .c-pagination__list__link {
  width: auto;
  height: auto;
  padding-right: 22px;
}
@media print, screen and (min-width: 769px) {
  .c-pagination__list__item--next .c-pagination__list__link {
    padding-right: 38px;
  }
}
.c-pagination__list__item--next .c-pagination__list__link:before {
  right: 3px;
  left: auto;
  width: 13px;
  height: 13px;
  background-color: #00a0e9;
  border-radius: 50%;
}
@media print, screen and (min-width: 769px) {
  .c-pagination__list__item--next .c-pagination__list__link:before {
    right: 12px;
    width: 18px;
    height: 18px;
  }
}
.c-pagination__list__item--next .c-pagination__list__link:after {
  right: 6px;
  left: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 0 3px 5px;
  border-color: transparent transparent transparent #fff;
}
@media print, screen and (min-width: 769px) {
  .c-pagination__list__item--next .c-pagination__list__link:after {
    right: 17px;
    border-width: 4px 0 4px 7px;
  }
}

.c-pagination__list__item--prev,
.c-pagination__list__item--next {
  min-width: 78px;
}
@media print, screen and (min-width: 769px) {
  .c-pagination__list__item--prev,
.c-pagination__list__item--next {
    min-width: 105px;
  }
}
.c-pagination__list__item--prev .c-pagination__list__link,
.c-pagination__list__item--next .c-pagination__list__link {
  position: relative;
  color: #1b1b1b;
  font-size: 1rem;
  line-height: 1.9230769231;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-decoration: none;
}
@media print, screen and (min-width: 769px) {
  .c-pagination__list__item--prev .c-pagination__list__link,
.c-pagination__list__item--next .c-pagination__list__link {
    font-size: 1rem;
    line-height: 2;
  }
}
.c-pagination__list__item--prev .c-pagination__list__link:hover, .c-pagination__list__item--prev .c-pagination__list__link:visited,
.c-pagination__list__item--next .c-pagination__list__link:hover,
.c-pagination__list__item--next .c-pagination__list__link:visited {
  color: #1b1b1b;
}
.c-pagination__list__item--prev .c-pagination__list__link:hover,
.c-pagination__list__item--next .c-pagination__list__link:hover {
  background-color: transparent;
  border-radius: 0;
  text-decoration: underline;
}
.c-pagination__list__item--prev .c-pagination__list__link:before, .c-pagination__list__item--prev .c-pagination__list__link:after,
.c-pagination__list__item--next .c-pagination__list__link:before,
.c-pagination__list__item--next .c-pagination__list__link:after {
  position: absolute;
  top: 0;
  bottom: 0;
  display: inline-block;
  margin: auto;
  content: "";
}
.c-pagination__list__item--prev .c-pagination__list__link.is-active,
.c-pagination__list__item--next .c-pagination__list__link.is-active {
  background-color: transparent;
  border-radius: 0;
}

.c-pagination__list__dot {
  color: #0d73c0;
  font-size: 1.0769230769rem;
  line-height: 1.7857142857;
  font-weight: 500;
  letter-spacing: 0.06em;
}

/* ***************************
hideTitle
*************************** */
.p-hideTitle {
  width: 0;
  height: 0;
  position: absolute;
  visibility: hidden;
}

/* ***************************
topSection
*************************** */
.p-topSection {
  margin-top: 0;
  padding-top: 30px;
  padding-bottom: 50px;
  background-color: #fdf49c;
}
@media print, screen and (min-width: 769px) {
  .p-topSection {
    padding-top: 80px;
    padding-bottom: 100px;
  }
}

.p-topSection--bilayer {
  padding-top: 35px;
  padding-bottom: 35px;
  background-image: linear-gradient(to top, #fff 0%, #fff 125px, #fdf49c 125px, #fdf49c 100%);
}
@media print, screen and (min-width: 769px) {
  .p-topSection--bilayer {
    padding-top: 85px;
    padding-bottom: 95px;
    background-image: linear-gradient(to top, #fff 0%, #fff 340px, #fdf49c 340px, #fdf49c 100%);
  }
}

.p-topSection--beforeCurve {
  padding-top: 25px;
  padding-bottom: 90px;
}
@media print, screen and (min-width: 769px) {
  .p-topSection--beforeCurve {
    padding-top: 85px;
    padding-bottom: 225px;
  }
}

.p-topSection--afterCurve {
  margin-top: -28px;
  padding-top: 75px;
}
@media print, screen and (min-width: 769px) {
  .p-topSection--afterCurve {
    margin-top: -48px;
    padding-top: 125px;
  }
}

.p-topSection--curve {
  position: relative;
  padding-top: 0;
  padding-bottom: 0;
  background-color: transparent;
}
.p-topSection--curve:before {
  position: absolute;
  top: 0;
  right: -19.3333333333%;
  left: -19.3333333333%;
  height: 280px;
  border-radius: 50%/100px;
  background-color: #fff;
  content: "";
}
@media print, screen and (min-width: 769px) {
  .p-topSection--curve:before {
    right: -3.4722222222%;
    left: -3.4722222222%;
    height: 300px;
    border-radius: 50%/150px;
  }
}
.p-topSection--curve .p-topSection__head {
  margin-top: -35px;
}
@media print, screen and (min-width: 769px) {
  .p-topSection--curve .p-topSection__head {
    margin-top: -100px;
  }
}

.p-topSection__head {
  margin: auto;
  text-align: center;
}

.p-topSection__body {
  margin: auto;
}
* + .p-topSection__body {
  margin-top: 15px;
}
@media print, screen and (min-width: 769px) {
  * + .p-topSection__body {
    margin-top: 55px;
  }
}

.p-topSection__foot {
  margin: 25px auto 0;
  text-align: center;
}
@media print, screen and (min-width: 769px) {
  .p-topSection__foot {
    margin-top: 85px;
  }
}

.p-topSection__head,
.p-topSection__body,
.p-topSection__foot {
  max-width: 1220px;
  padding: 0 10px;
}

.p-topSection__heading {
  position: relative;
  display: inline-block;
  padding: 0 30px;
  color: #1b1b1b;
  font-size: 1.9230769231rem;
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: 0.06em;
}
@media print, screen and (max-width: 374px) {
  .p-topSection__heading {
    padding: 0 25px;
    letter-spacing: 0;
  }
}
@media print, screen and (min-width: 769px) {
  .p-topSection__heading {
    padding: 0 68px;
    font-size: 2.875rem;
    line-height: 1.3043478261;
  }
}
.p-topSection__heading:before {
  right: auto;
  left: 0;
}
.p-topSection__heading:after {
  right: 0;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}
.p-topSection__heading:before, .p-topSection__heading:after {
  position: absolute;
  bottom: 6px;
  width: 23px;
  height: 20px;
  background-image: url(images/h2_decoration.svg);
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
}
@media print, screen and (min-width: 769px) {
  .p-topSection__heading:before, .p-topSection__heading:after {
    bottom: 10px;
    width: 46px;
    height: 40px;
  }
}

.p-topSection__heading--megaphone {
  margin-top: -25px;
  padding: 65px 0 0;
  color: #0d73c0;
}
@media print, screen and (min-width: 769px) {
  .p-topSection__heading--megaphone {
    margin-top: -50px;
    padding-top: 120px;
  }
}
.p-topSection__heading--megaphone:before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: auto;
  left: 0;
  display: block;
  width: 62px;
  height: 54px;
  margin: auto;
  background-image: url(images/icon_megaphone.png);
}
@media print, screen and (min-width: 769px) {
  .p-topSection__heading--megaphone:before {
    width: 112px;
    height: 97px;
  }
}
.p-topSection__heading--megaphone:after {
  content: none !important;
}

.p-topSection__lead {
  position: relative;
  margin-top: 10px;
  letter-spacing: 0.06em;
}
@media print, screen and (min-width: 769px) {
  .p-topSection__lead {
    margin-top: 22px;
    font-size: 1.25rem;
    line-height: 1.7;
    font-weight: 500;
  }
}

/* ***************************
mainvisual
*************************** */
.p-mainvisual {
  margin-top: 0;
}

.p-mainvisual__body {
  position: relative;
  background-color: #9cdffc;
}

.p-mainvisual__body__arrow {
  width: 18px;
  height: 30px;
  padding: 0;
  font-size: 0%;
  line-height: 0;
  background-color: transparent;
  border: none;
}
@media print, screen and (min-width: 769px) {
  .p-mainvisual__body__arrow {
    width: 36px;
    height: 60px;
  }
}
.p-mainvisual__body__arrow:before {
  width: 100%;
  height: 100%;
  background-image: url(images/slider-arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
}
.p-mainvisual__body__arrow:after {
  content: none;
}

@media print, screen and (min-width: 769px) {
  .p-mainvisual__body__arrow--next {
    right: 38px;
  }
}

@media print, screen and (min-width: 769px) {
  .p-mainvisual__body__arrow--prev {
    left: 38px;
  }
}
.p-mainvisual__body__arrow--prev:before {
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}

.p-mainvisual__body__list {
  margin-top: 0;
}

.p-mainvisual__body__item {
  margin-top: 0;
  padding: 0;
}
.p-mainvisual__body__item:before {
  content: none;
}

.p-mainvisual__body__link {
  display: block;
  text-align: center;
}
.p-mainvisual__foot {
  margin-top: 0;
  padding: 0 10px;
  background-color: #fdf49c;
  overflow: visible;
}
.p-mainvisual__foot__list {
  max-width: 880px;
  margin: auto;
}

.p-mainvisual__foot__item {
  position: relative;
  width: 100px;
  margin-top: 0;
  padding: 0;
  border-radius: 5px;
  overflow: hidden;
}
@media print, screen and (min-width: 769px) {
  .p-mainvisual__foot__item {
    max-width: 160px;
  }
}
.p-mainvisual__foot__item:before {
  content: none;
}
.p-mainvisual__foot__item:after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.15);
  content: "";
  cursor: pointer;
}
.p-mainvisual__foot__item.swiper-slide-thumb-active:after {
  content: none;
}

.p-mainvisual__foot__panel {
  max-width: 100%;
  padding: 0;
  background-color: transparent;
  border: none;
  vertical-align: top;
  overflow: hidden;
}

.p-mainVisual__control {
  position: relative;
  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;
  margin-top: 0;
  padding: 10px 0;
  background-color: #fdf49c;
  z-index: 1;
}
@media print, screen and (min-width: 769px) {
  .p-mainVisual__control {
    padding: 21px 0 20px;
  }
}

.p-mainVisual__controlBtn {
  position: relative;
  width: 16px;
  height: 16px;
  padding: 0;
  font-size: 0%;
  line-height: 0%;
  border-radius: 5px;
  border: 2px solid #fff;
  background-color: #fff;
  background-color: #fff100;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}
@media print, screen and (min-width: 769px) {
  .p-mainVisual__controlBtn {
    width: 24px;
    height: 24px;
    border-width: 3px;
  }
}
.p-mainVisual__controlBtn:before {
  left: 3px;
}
@media print, screen and (min-width: 769px) {
  .p-mainVisual__controlBtn:before {
    left: 5px;
  }
}
.p-mainVisual__controlBtn:after {
  right: 3px;
}
@media print, screen and (min-width: 769px) {
  .p-mainVisual__controlBtn:after {
    right: 5px;
  }
}
.p-mainVisual__controlBtn:before, .p-mainVisual__controlBtn:after {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 2px;
  height: 7px;
  background-color: #434343;
  border-radius: 2px;
  content: "";
}
@media print, screen and (min-width: 769px) {
  .p-mainVisual__controlBtn:before, .p-mainVisual__controlBtn:after {
    width: 3px;
    height: 11px;
    border-radius: 3px;
  }
}
.p-mainVisual__controlBtn.is-paused:before {
  content: none;
}
.p-mainVisual__controlBtn.is-paused:after {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 0 3px 5px;
  border-color: transparent transparent transparent #434343;
  border-radius: 0;
  background-color: transparent;
}
@media print, screen and (min-width: 769px) {
  .p-mainVisual__controlBtn.is-paused:after {
    border-width: 5px 0 5px 8px;
  }
}

.p-mainVisual__pagination {
  position: static;
  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;
  margin-top: 0;
  margin-right: 3px;
}

.p-mainVisual__pagination__item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0;
  padding: 0 8px;
}
.p-mainVisual__pagination__item:before {
  content: none;
}
.p-mainVisual__pagination__item:after {
  width: 14px;
  height: 14px;
  background-color: #e5e5e5;
  border: 2px solid #fff;
  border-radius: 50%;
  content: "";
}
@media print, screen and (min-width: 769px) {
  .p-mainVisual__pagination__item:after {
    width: 20px;
    height: 20px;
    border-width: 3px;
  }
}
.p-mainVisual__pagination__item.is-active:after {
  background-color: #00a0e9;
}

/* ***************************
curveSection
*************************** */
.p-curveSection {
  padding-top: 25px;
}
@media print, screen and (min-width: 769px) {
  .p-curveSection {
    padding-top: 100px;
  }
}

.p-curveSection__head {
  margin-top: 0;
}
.p-curveSection__head:before {
  position: absolute;
  top: -35px;
  right: -19.3333333333%;
  left: -19.3333333333%;
  height: 280px;
  border-radius: 50%/100px;
  background-color: #fff;
  content: "";
}
@media print, screen and (min-width: 769px) {
  .p-curveSection__head:before {
    top: -98px;
    right: -3.4722222222%;
    left: -3.4722222222%;
    height: 300px;
    border-radius: 50%/150px;
  }
}

.p-curveSection__body {
  margin-top: 0;
  padding-top: 30px;
  padding-bottom: 40px;
}
@media print, screen and (min-width: 769px) {
  .p-curveSection__body {
    padding-top: 70px;
    padding-bottom: 120px;
  }
}

.p-curveSection__head,
.p-curveSection__body {
  position: relative;
  margin-right: calc(-50vw + 50%);
  margin-left: calc(-50vw + 50%);
  padding-right: 10px;
  padding-left: 10px;
  background-color: #fff;
}

.p-curveSection__head__inner {
  max-width: 1200px;
}

.p-curveSection__body__inner {
  max-width: 960px;
}

.p-curveSection__head__inner,
.p-curveSection__body__inner {
  position: relative;
  margin-right: auto;
  margin-left: auto;
}

/* ***************************
temp
*************************** */
.p-aboutSection__head {
  text-align: center;
  z-index: 1;
}
.p-aboutSection__head img {
  width: 100%;
}

.p-aboutSection__body {
  margin-top: 0;
  padding: 25px 10px 40px;
  background-color: #fff;
  letter-spacing: 0.06em;
}
@media print, screen and (min-width: 769px) {
  .p-aboutSection__body {
    padding-top: 0;
    padding-bottom: 110px;
    font-size: 1.5rem;
    line-height: 2;
  }
}
@media print, screen and (min-width: 769px) {
  .p-aboutSection__body p + p {
    margin-top: 46px;
  }
}

.p-aboutSection__head,
.p-aboutSection__body {
  position: relative;
  margin-right: calc(-50vw + 50%);
  margin-left: calc(-50vw + 50%);
}

@media print, screen and (min-width: 769px) {
  .p-aboutSection__ttl {
    padding-top: 115px;
    font-size: 2.625rem;
    line-height: 1.4761904762;
  }
}
@media print, screen and (min-width: 769px) {
  .p-aboutSection__ttl:before {
    width: 110px;
    height: 96px;
  }
}
@media print, screen and (min-width: 769px) {
  .p-aboutSection__ttl + p {
    margin-top: 55px;
  }
}

/* ***************************
aboutBalloon
*************************** */
.p-aboutBalloon {
  margin-top: 25px;
}

@media print, screen and (min-width: 769px) {
  .p-aboutBalloon__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: -30px -20px;
  }
}

.p-aboutBalloon__item {
  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;
}
@media print, screen and (min-width: 769px) {
  .p-aboutBalloon__item {
    display: inline-block;
    max-width: 33.333%;
    min-width: 400px;
    margin-top: 30px;
    padding: 0 20px;
    text-align: center;
  }
}
.p-aboutBalloon__item + .p-aboutBalloon__item {
  margin-top: 5px;
}
@media print, screen and (min-width: 769px) {
  .p-aboutBalloon__item + .p-aboutBalloon__item {
    margin-top: 30px;
  }
}

.p-aboutBalloon__balloon {
  position: relative;
  margin-top: 0;
}
@media print, screen and (min-width: 769px) {
  .p-aboutBalloon__balloon {
    padding-bottom: 16px;
  }
}
.p-aboutBalloon__balloon:after {
  position: absolute;
  bottom: 5px;
  width: 12px;
  height: 16px;
  margin: auto;
  background-image: url(images/balloon-tail.svg);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
}
@media print, screen and (min-width: 769px) {
  .p-aboutBalloon__balloon:after {
    right: 0;
    bottom: 0;
    left: 0;
    width: 22px;
    height: 24px;
    -webkit-transform: rotate(10deg);
            transform: rotate(10deg);
  }
}

.p-aboutBalloon__img {
  max-height: 115px;
  margin-top: 0;
  overflow: hidden;
}
@media print, screen and (max-width: 374px) {
  .p-aboutBalloon__img {
    min-width: 100px;
  }
}
@media print, screen and (min-width: 769px) {
  .p-aboutBalloon__img {
    max-height: none;
    margin-top: 20px;
  }
}

.p-aboutBalloon__balloon__link {
  position: relative;
  display: inline-block;
  min-width: 225px;
  color: #1b1b1b;
  font-size: 1.3846153846rem;
  line-height: 1.4444444444;
  font-weight: 700;
  letter-spacing: 0.06em;
  background-color: #fff;
  text-decoration: none;
  border: 1px solid #1b1b1b;
  border-radius: 150px;
}
@media print, screen and (min-width: 769px) {
  .p-aboutBalloon__balloon__link {
    width: 100%;
    font-size: 1.75rem;
    line-height: 1.4285714286;
    border-width: 2px;
    text-align: left;
  }
}
@media print, screen and (max-width: 374px) {
  .p-aboutBalloon__balloon__link {
    min-width: 200px;
  }
}
.p-aboutBalloon__balloon__link:visited, .p-aboutBalloon__balloon__link:hover {
  color: #1b1b1b;
}
.p-aboutBalloon__balloon__link:hover {
  text-decoration: none;
}
@media print, screen and (min-width: 769px) {
  .p-aboutBalloon__balloon__link:hover {
    color: #0d73c0;
  }
}
.p-aboutBalloon__balloon__link:before {
  right: 18px;
  width: 20px;
  height: 20px;
  background-color: #00a0e9;
  border-radius: 50%;
}
@media print, screen and (min-width: 769px) {
  .p-aboutBalloon__balloon__link:before {
    right: 24px;
    width: 43px;
    height: 43px;
  }
}
.p-aboutBalloon__balloon__link:after {
  right: 24px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4px 0 4px 7px;
  border-color: transparent transparent transparent #fff;
}
@media print, screen and (min-width: 769px) {
  .p-aboutBalloon__balloon__link:after {
    right: 37px;
    border-width: 9px 0 9px 14px;
  }
}
.p-aboutBalloon__balloon__link:before, .p-aboutBalloon__balloon__link:after {
  position: absolute;
  top: 0;
  bottom: 0;
  display: inline-block;
  margin: auto;
  content: "";
}
@media print, screen and (max-width: 374px) {
  .p-aboutBalloon__balloon__link br {
    display: none;
  }
}

.p-aboutBalloon__item--right .p-aboutBalloon__balloon {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}
@media print, screen and (max-width: 768px) {
  .p-aboutBalloon__item--right .p-aboutBalloon__balloon:after {
    left: 0;
    -webkit-transform: rotate(65deg);
            transform: rotate(65deg);
  }
}
.p-aboutBalloon__item--right .p-aboutBalloon__balloon__link {
  padding: 11px 45px 10px 32px;
}
@media print, screen and (min-width: 769px) {
  .p-aboutBalloon__item--right .p-aboutBalloon__balloon__link {
    padding: 18px 70px 18px 45px;
  }
}
.p-aboutBalloon__item--right .p-aboutBalloon__img {
  padding: 0 12px 0 10px;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}

@media print, screen and (max-width: 768px) {
  .p-aboutBalloon__item--left .p-aboutBalloon__balloon:after {
    right: 0;
    -webkit-transform: scale(-1, 1) rotate(65deg);
            transform: scale(-1, 1) rotate(65deg);
  }
}
.p-aboutBalloon__item--left .p-aboutBalloon__balloon__link {
  padding: 11px 45px 10px 24px;
}
@media print, screen and (min-width: 769px) {
  .p-aboutBalloon__item--left .p-aboutBalloon__balloon__link {
    padding: 18px 70px 18px 45px;
  }
}
.p-aboutBalloon__item--left .p-aboutBalloon__img {
  padding: 0 0 0 15px;
}

/* ***************************
support
*************************** */
.p-supportList {
  margin-top: 30px;
}
@media print, screen and (min-width: 769px) {
  .p-supportList {
    margin-top: 72px;
  }
}

.p-supportList__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: -25px -10px 0;
}
@media print, screen and (min-width: 769px) {
  .p-supportList__list {
    max-width: 880px;
    margin: -60px auto 0;
  }
}

.p-supportList__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 33.333%;
  margin-top: 25px;
  padding: 0 3px;
}
@media print, screen and (min-width: 769px) {
  .p-supportList__item {
    width: 25%;
    margin-top: 60px;
  }
}
.p-supportList__item:before {
  content: none;
}

.p-supportList__link {
  display: inline-block;
  text-align: center;
  text-decoration: none;
}
.p-supportList__link:hover {
  text-decoration: none;
}

.p-supportList__link__icon {
  position: relative;
  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;
  width: 90px;
  height: 90px;
  margin: auto;
  background-color: #00a0e9;
  border-radius: 50%;
}
@media print, screen and (min-width: 769px) {
  .p-supportList__link__icon {
    width: 144px;
    height: 144px;
  }
}
.p-supportList__link__icon:before {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100px;
  height: 100px;
  border: 3px solid #caebf9;
  border-radius: 50%;
  content: "";
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
@media print, screen and (min-width: 769px) {
  .p-supportList__link__icon:before {
    width: 160px;
    height: 160px;
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
  }
}
.p-supportList__link__icon img {
  width: 59px;
  height: 49px;
}
@media print, screen and (min-width: 769px) {
  .p-supportList__link__icon img {
    width: 94px;
    height: 78px;
  }
}

@media print, screen and (min-width: 769px) {
  .p-supportList__link:hover .p-supportList__link__icon:before {
    -webkit-transform: translate(-50%, -50%) scale(1.1);
            transform: translate(-50%, -50%) scale(1.1);
  }
}

.p-supportList__link__txt {
  margin-top: 16px;
  color: #0d73c0;
  font-size: 1.0769230769rem;
  line-height: 1.2857142857;
  font-weight: 700;
  letter-spacing: 0.06em;
}
@media print, screen and (min-width: 769px) {
  .p-supportList__link__txt {
    margin-top: 20px;
    font-size: 1.375rem;
    line-height: 1.6363636364;
  }
}

.p-supportList__bottom {
  position: relative;
  margin-top: 20px;
  text-align: center;
}
@media print, screen and (min-width: 769px) {
  .p-supportList__bottom {
    margin-top: 112px;
  }
}

.p-supportList__img {
  position: absolute;
  top: 28px;
  margin-top: 0;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  z-index: -1;
}
@media print, screen and (min-width: 769px) and (max-width: 1100px) {
  .p-supportList__img {
    top: 80px;
  }
}
@media print, screen and (min-width: 1101px) {
  .p-supportList__img {
    top: 42px;
  }
}
@media print, screen and (max-width: 768px) {
  .p-supportList__img img {
    width: 98px;
  }
}
@media print, screen and (min-width: 769px) and (max-width: 1100px) {
  .p-supportList__img img {
    width: 16vw;
  }
}

.p-supportList__img--right {
  right: 0;
}

.p-supportList__img--left {
  left: 6px;
}
@media print, screen and (min-width: 769px) {
  .p-supportList__img--left {
    left: 0;
  }
}

.p-supportList__btn {
  max-width: 355px;
  margin: auto;
}
@media print, screen and (min-width: 769px) {
  .p-supportList__btn {
    max-width: 560px;
  }
}

/* ***************************
support
*************************** */
.p-supportBtn {
  position: relative;
  display: block;
  padding: 0;
  background-color: #fff;
  border: 2px solid #1b1b1b;
  border-radius: 10px;
  color: #1b1b1b;
  -webkit-box-shadow: 0 3px 0 rgba(0, 0, 0, 0.15);
          box-shadow: 0 3px 0 rgba(0, 0, 0, 0.15);
  text-decoration: none;
}
@media print, screen and (min-width: 769px) {
  .p-supportBtn {
    border-width: 2px;
    -webkit-box-shadow: 0 5px 0 rgba(0, 0, 0, 0.15);
            box-shadow: 0 5px 0 rgba(0, 0, 0, 0.15);
  }
}
.p-supportBtn:visited {
  color: #1b1b1b;
}
.p-supportBtn:hover {
  color: #1b1b1b;
  text-decoration: none;
}

.p-supportBtn__body {
  position: relative;
  display: block;
  padding: 15px 35px 15px 10px;
  color: #1b1b1b;
  font-size: 1.2307692308rem;
  line-height: 1.25;
  font-weight: 700;
  letter-spacing: 0.04em;
}
@media print, screen and (min-width: 769px) {
  .p-supportBtn__body {
    padding: 12px 52px 13px 30px;
    font-size: 1.5rem;
    line-height: 1.5833333333;
    letter-spacing: 0.06em;
  }
}
.p-supportBtn__body:after {
  position: absolute;
  top: 0;
  right: 14px;
  bottom: 0;
  width: 0;
  height: 0;
  margin: auto;
  border-style: solid;
  border-width: 14px 8px 0 8px;
  border-color: #00a1e3 transparent transparent transparent;
  content: "";
}
@media print, screen and (min-width: 769px) {
  .p-supportBtn__body:after {
    right: 20px;
    border-width: 16px 11px 0 11px;
  }
}

.p-supportBtn:hover .p-supportBtn__body {
  color: #0d73c0;
}

@media print, screen and (min-width: 769px) {
  .p-supportBtn--toppage .p-supportBtn__body {
    padding: 22px 60px 25px 15px;
  }
}
@media print, screen and (min-width: 769px) {
  .p-supportBtn--toppage .p-supportBtn__body:after {
    right: 22px;
    border-width: 22px 14px 0 14px;
  }
}

/* ***************************
listsAccordion
*************************** */
.p-listsAccordion--modal {
  margin-top: 0;
}

.p-listsAccordion__head {
  position: relative;
  padding: 15px 35px 15px 10px;
  font-size: 1.2307692308rem;
  line-height: 1.25;
  font-weight: 700;
  letter-spacing: 0.04em;
}
.p-listsAccordion__head:after {
  position: absolute;
  top: 0;
  right: 14px;
  bottom: 0;
  width: 0;
  height: 0;
  margin: auto;
  border-style: solid;
  border-width: 14px 8px 0 8px;
  border-color: #00a1e3 transparent transparent transparent;
  content: "";
}

.p-listsAccordion__body {
  margin-top: 0;
}
.p-listsAccordion__body:before {
  display: block;
  height: 1px;
  background-image: linear-gradient(to right, #000, #000 4px, transparent 4px, transparent 8px);
  background-size: 8px 1px;
  background-repeat: repeat-x;
  content: "";
}

.p-listsAccordion__item {
  margin-top: 0;
}
.p-listsAccordion__item:after {
  display: block;
  height: 1px;
  background-image: linear-gradient(to right, #000, #000 4px, transparent 4px, transparent 8px);
  background-size: 8px 1px;
  background-repeat: repeat-x;
  content: "";
}
.p-listsAccordion__item:last-of-type:after {
  content: none;
}

/*
listsAccChild
*************************** */
.p-listsAccChild__body {
  display: none;
  margin-top: 0;
  padding: 11px 14px;
}

.p-listsAccChild__btn {
  position: relative;
  width: 100%;
  padding: 14px 35px;
  font-size: 1.3846153846rem;
  line-height: 1.2222222222;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: #0d73c0;
  background-color: #fff;
  border: none;
  text-align: center;
  overflow: hidden;
}
.p-listsAccChild__btn:before {
  position: absolute;
  top: -2px;
  right: 18px;
  bottom: 0;
  width: 13px;
  height: 13px;
  margin: auto;
  color: #00a1e3;
  font-size: 1rem;
  line-height: 1;
  content: "";
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
@media print, screen and (min-width: 769px) {
  .p-listsAccChild__btn:before {
    height: 16px;
    font-size: 1rem;
    line-height: 1;
  }
}
.p-listsAccChild__btn:after {
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 1px;
  background-image: linear-gradient(to right, #000, #000 4px, transparent 4px, transparent 8px);
  background-size: 8px 1px;
  background-repeat: repeat-x;
  content: none;
}

.p-listsAccChild__btn.is-open:before {
  -webkit-transform: rotate(270deg);
          transform: rotate(270deg);
}
.p-listsAccChild__btn.is-open:after {
  content: "";
}

.p-listsAccChild__btn__body {
  position: relative;
  display: block;
}

.p-listsAccChild__list {
  padding: 12px 14px;
  background-color: #fdf49c;
  border-radius: 5px;
}

.p-listsAccChild__list__item {
  padding-left: 0;
}
.p-listsAccChild__list__item:before {
  content: none;
}
.p-listsAccChild__list__item + .p-listsAccChild__list__item {
  margin-top: 10px;
}

.p-listsAccChild__list__link {
  font-size: 1.0769230769rem;
  line-height: 1.5714285714;
  font-weight: 700;
  letter-spacing: 0.06em;
  color: #1b1b1b;
  text-decoration: none;
}
.p-listsAccChild__list__link:hover, .p-listsAccChild__list__link:visited {
  color: #1b1b1b;
}
.p-listsAccChild__list__link:hover {
  text-decoration: underline;
}

/* ***************************
contactModal
*************************** */
.p-contactModal .modaal-container {
  max-width: 780px;
  border: 2px solid #1b1b1b;
  border-radius: 10px;
  -webkit-box-shadow: none;
          box-shadow: none;
  opacity: 0;
  -webkit-transition: opacity 0.1s;
  transition: opacity 0.1s;
  overflow: hidden;
  z-index: 4;
}
.p-contactModal .modaal-inner-wrapper {
  padding-right: 10px;
  padding-left: 10px;
}
.p-contactModal .modaal-close {
  top: 12px;
}
.p-contactModal .modaal-iframe-elem {
  max-height: 75vh;
  border-radius: 10px;
  -webkit-transition: height 0.3s;
  transition: height 0.3s;
}

_:-ms-lang(x)::-ms-backdrop, .p-contactModal .modaal-close {
  right: 40px;
}

/* ***************************
news
*************************** */
.p-news__tabList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: -15px -6px 0;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media print, screen and (min-width: 769px) {
  .p-news__tabList {
    margin: 0 -10px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.p-news__tabList__item {
  width: 50%;
  margin-top: 15px;
  padding: 0 6px;
}
@media print, screen and (min-width: 769px) {
  .p-news__tabList__item {
    width: 25%;
    max-width: 196px;
    margin-top: 0;
    padding: 0 10px;
  }
}
.p-news__tabList__item:before {
  content: none;
}
.p-news__tabList__item:first-child .p-news__tabList__btn {
  padding-left: 10px;
}

.p-news__tabList__btn {
  position: relative;
  display: inline-block;
  width: 100%;
  height: 100%;
  padding: 6px 10px 6px 38px;
  background-color: transparent;
  border: 1px solid #1b1b1b;
  border-radius: 5px;
  font-size: 1rem;
  line-height: 1.2307692308;
  font-weight: 700;
  letter-spacing: 0.06em;
  overflow: visible;
}
@media print, screen and (min-width: 769px) {
  .p-news__tabList__btn {
    padding: 3px 12px 6px 60px;
    font-size: 1.25rem;
    line-height: 1.7;
    border-width: 2px;
    border-radius: 10px;
  }
}
@media print, screen and (max-width: 374px) {
  .p-news__tabList__btn {
    padding: 6px 10px 6px 22px;
    letter-spacing: 0;
  }
}
.p-news__tabList__btn:before {
  position: absolute;
  top: -3px;
  left: 5px;
  width: 28px;
  height: 25px;
  margin: auto;
  background-image: url(images/icon_megaphone.png);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
}
@media print, screen and (min-width: 769px) {
  .p-news__tabList__btn:before {
    top: -8px;
    width: 45px;
    height: 40px;
  }
}
@media print, screen and (max-width: 374px) {
  .p-news__tabList__btn:before {
    top: 4px;
    left: 1px;
    width: 22px;
    height: 19px;
  }
}
.p-news__tabList__btn:after {
  position: absolute;
  bottom: -6px;
  right: 25px;
  width: 9px;
  height: 10px;
  margin: auto;
  background-image: url(images/balloon-tail.svg);
  background-repeat: no-repeat;
  background-size: contain;
  -webkit-transform: rotate(2deg);
          transform: rotate(2deg);
  content: none;
}
@media print, screen and (min-width: 769px) {
  .p-news__tabList__btn:after {
    bottom: -10px;
    right: 40px;
    width: 15px;
    height: 16px;
    -webkit-transform: rotate(10deg);
            transform: rotate(10deg);
  }
}

.p-news__tabList__btn:hover {
  background-color: #fff;
}

.p-news__tabList__btn:focus:before, .p-news__tabList__btn:focus:after {
  outline: none;
}

.p-news__tabList__btn.is-active {
  background-color: #fff;
}
.p-news__tabList__btn.is-active:after {
  content: "";
}

.p-news__tabList__body {
  position: relative;
}

.p-news__articles {
  margin-top: 12px;
  padding-bottom: 30px;
  background-color: #fff;
  border-radius: 10px;
  overflow: hidden;
}
@media print, screen and (min-width: 769px) {
  .p-news__articles {
    margin-top: 50px;
    padding: 12px 0 50px;
    border-radius: 18px;
  }
}

.p-news__articles__head {
  position: relative;
  padding: 10px 18px 5px;
  text-align: right;
}
@media print, screen and (min-width: 769px) {
  .p-news__articles__head {
    padding: 14px 30px 24px;
  }
}
.p-news__articles__head:after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  width: calc(100% - 36px);
  height: 1px;
  margin: auto;
  background-image: linear-gradient(to right, #b2b2b2, #b2b2b2 2px, transparent 2px, transparent 4px);
  background-size: 4px 1px;
  background-repeat: repeat-x;
  content: "";
}
@media print, screen and (min-width: 769px) {
  .p-news__articles__head:after {
    width: calc(100% - 60px);
    background-image: linear-gradient(to right, #b2b2b2, #b2b2b2 4px, transparent 4px, transparent 8px);
    background-size: 8px 1px;
  }
}

* + .p-news__articles__body {
  margin-top: 5px;
}

.p-news__articles__body--top {
  max-height: 335px;
  overflow-y: auto;
}
@media print, screen and (min-width: 769px) {
  .p-news__articles__body--top {
    max-height: 380px;
  }
}

.p-news__articles__foot {
  margin-top: 15px;
  text-align: center;
}
@media print, screen and (min-width: 769px) {
  .p-news__articles__foot {
    margin-top: 40px;
  }
}

.p-news__articles__noItem {
  padding: 16px 18px;
}
@media print, screen and (min-width: 769px) {
  .p-news__articles__noItem {
    padding: 27px 40px;
  }
}

/* ***************************
newsList
*************************** */
.p-newsList {
  padding: 0 18px;
}
@media print, screen and (min-width: 769px) {
  .p-newsList {
    padding: 0 30px;
  }
}

.p-newsList__item {
  padding-left: 0;
}
.p-newsList__item:before {
  content: none;
}
.p-newsList__item:after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  margin: auto;
  background-image: linear-gradient(to right, #b2b2b2, #b2b2b2 2px, transparent 2px, transparent 4px);
  background-size: 4px 1px;
  background-repeat: repeat-x;
  content: "";
}
@media print, screen and (min-width: 769px) {
  .p-newsList__item:after {
    background-image: linear-gradient(to right, #b2b2b2, #b2b2b2 4px, transparent 4px, transparent 8px);
    background-size: 8px 1px;
  }
}
.p-newsList__item:last-child:after {
  content: none;
}
.p-newsList__item + .p-newsList__item {
  margin-top: 0;
}

.p-newsList__link {
  display: block;
  padding: 16px 0;
  text-decoration: none;
}
@media print, screen and (min-width: 769px) {
  .p-newsList__link {
    padding: 27px 10px;
  }
}
.p-newsList__link:hover {
  text-decoration: none;
}

.p-newsList__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.p-newsList__date {
  width: 65px;
  margin-top: 0;
  color: #535353;
  font-size: 0.7692307692rem;
  line-height: 1.8;
  letter-spacing: 0.06em;
}
@media print, screen and (min-width: 769px) {
  .p-newsList__date {
    width: 108px;
    margin-right: 10px;
    font-size: 1rem;
    line-height: 1.875;
  }
}

.p-newsList__label {
  display: inline-block;
  min-width: 50px;
  margin-top: 0;
  color: #1b1b1b;
  font-size: 0.7692307692rem;
  line-height: 1.8;
  border-radius: 3px;
  text-align: center;
}
@media print, screen and (min-width: 769px) {
  .p-newsList__label {
    min-width: 84px;
    margin-right: 30px;
    font-size: 0.875rem;
    line-height: 2;
  }
}

.p-newsList__label--info {
  background-color: #fcd6e7;
}

.p-newsList__label--event {
  background-color: #c2f4f2;
}

.p-newsList__label--ended {
  background-color: #d5ed99;
}

.p-newsList__ttl {
  width: 100%;
  margin-top: 8px;
  color: #0d73c0;
  font-size: 1rem;
  line-height: 1.9230769231;
  font-weight: 500;
  letter-spacing: 0.06em;
}
@media print, screen and (min-width: 769px) {
  .p-newsList__ttl {
    width: calc(100% - 232px);
    margin-top: 0;
    font-size: 1rem;
    line-height: 1.875;
  }
}

.p-newsList__link:hover .p-newsList__ttl {
  text-decoration: underline;
}

/* ***************************
newsArticle
*************************** */
.p-newsArticle {
  position: relative;
  padding-top: 52px;
}
@media print, screen and (min-width: 769px) {
  .p-newsArticle {
    padding-top: 95px;
  }
}
.p-newsArticle:before {
  position: absolute;
  top: 0;
  right: -19.3333333333%;
  left: -19.3333333333%;
  height: 280px;
  border-radius: 50%/90px;
  background-color: #fff;
  content: "";
}
@media print, screen and (min-width: 769px) {
  .p-newsArticle:before {
    width: calc(100vw + 100px);
    left: 50%;
    height: 300px;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    border-radius: 50%/150px;
  }
}
.p-newsArticle:after {
  position: absolute;
  top: -10px;
  right: 0;
  bottom: auto;
  left: 0;
  display: block;
  width: 52px;
  height: 45px;
  margin: auto;
  background-image: url(images/icon_megaphone.png);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
}
@media print, screen and (min-width: 769px) {
  .p-newsArticle:after {
    top: -30px;
    width: 111px;
    height: 96px;
  }
}

.p-newsArticle__body {
  position: relative;
  margin: 0 calc(-50vw + 50%);
  padding: 0 10px 44px;
  background-color: #fff;
}
@media print, screen and (min-width: 769px) {
  .p-newsArticle__body {
    padding-bottom: 80px;
  }
}

.p-newsArticle__foot {
  position: relative;
  max-width: 620px;
  margin: 20px auto 0;
}
@media print, screen and (min-width: 769px) {
  .p-newsArticle__foot {
    margin-top: 42px;
  }
}

.p-newsArticle__body__top {
  position: relative;
  max-width: 960px;
  margin: 0 auto;
}
@media print, screen and (min-width: 769px) {
  .p-newsArticle__body__top {
    top: -8px;
  }
}

.p-newsArticle__body__middle {
  max-width: 960px;
  margin: 10px auto 0;
}
@media print, screen and (min-width: 769px) {
  .p-newsArticle__body__middle {
    margin-top: 25px;
  }
}

.p-newsArticle__body__bottom {
  max-width: 960px;
  margin: 35px auto 0;
}
@media print, screen and (min-width: 769px) {
  .p-newsArticle__body__bottom {
    margin-top: 70px;
  }
}

.p-newsArticle__ttl {
  padding-top: 0;
  font-size: 1.5384615385rem;
  line-height: 1.5;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-align: center;
}
@media print, screen and (min-width: 769px) {
  .p-newsArticle__ttl {
    font-size: 2.625rem;
    line-height: 1.4761904762;
  }
}
.p-newsArticle__ttl:before {
  content: none;
}

.p-newsArticle__data {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin-top: 16px;
}
@media print, screen and (min-width: 769px) {
  .p-newsArticle__data {
    margin-top: 45px;
  }
}

.p-newsArticle__data__date {
  margin-top: 0;
  margin-right: 10px;
  color: #535353;
  font-size: 0.7692307692rem;
  line-height: 1.8;
  letter-spacing: 0.06em;
}
@media print, screen and (min-width: 769px) {
  .p-newsArticle__data__date {
    margin-right: 30px;
    font-size: 1rem;
    line-height: 1.875;
  }
}

.p-newsArticle__data__label {
  min-width: 50px;
  margin-top: 0;
  font-size: 0.7692307692rem;
  line-height: 1.8;
  letter-spacing: 0.06em;
  border-radius: 3px;
  text-align: center;
}
@media print, screen and (min-width: 769px) {
  .p-newsArticle__data__label {
    min-width: 84px;
    font-size: 0.875rem;
    line-height: 2;
  }
}
.p-newsArticle__data__label + .p-newsArticle__data__label {
  margin-left: 15px;
}

.p-newsArticle__data__label--info {
  background-color: #fcd6e7;
}

.p-newsArticle__data__label--event {
  background-color: #c2f4f2;
}

.p-newsArticle__data__label--ended {
  background-color: #d5ed99;
}

/* ***************************
articleNav
*************************** */
.p-articleNav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  background-color: #fff;
  border-radius: 90px;
  -webkit-box-shadow: 0 2px 0 #e2d73a;
          box-shadow: 0 2px 0 #e2d73a;
}
@media print, screen and (min-width: 769px) {
  .p-articleNav {
    -webkit-box-shadow: 0 3px 0 #e2d73a;
            box-shadow: 0 3px 0 #e2d73a;
  }
}

.p-articleNav__item {
  width: 33.333%;
  margin-top: 0;
  padding: 10px 10px;
  text-align: center;
}
@media print, screen and (min-width: 769px) {
  .p-articleNav__item {
    padding: 13px 10px;
  }
}

.p-articleNav__item__link {
  position: relative;
  color: #1b1b1b;
  font-size: 1rem;
  line-height: 1.9230769231;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-decoration: none;
}
@media print, screen and (min-width: 769px) {
  .p-articleNav__item__link {
    font-size: 1rem;
    line-height: 2;
  }
}
.p-articleNav__item__link:hover, .p-articleNav__item__link:visited {
  color: #1b1b1b;
}
.p-articleNav__item__link:hover {
  text-decoration: underline;
}

.p-articleNav__item--prev {
  text-align: left;
}

.p-articleNav__item--prev .p-articleNav__item__link {
  padding-left: 22px;
}
@media print, screen and (min-width: 769px) {
  .p-articleNav__item--prev .p-articleNav__item__link {
    padding-left: 38px;
  }
}
.p-articleNav__item--prev .p-articleNav__item__link:before {
  left: 3px;
  width: 13px;
  height: 13px;
  background-color: #00a0e9;
  border-radius: 50%;
}
@media print, screen and (min-width: 769px) {
  .p-articleNav__item--prev .p-articleNav__item__link:before {
    left: 11px;
    width: 18px;
    height: 18px;
  }
}
.p-articleNav__item--prev .p-articleNav__item__link:after {
  left: 6px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 5px 3px 0;
  border-color: transparent #fff transparent transparent;
}
@media print, screen and (min-width: 769px) {
  .p-articleNav__item--prev .p-articleNav__item__link:after {
    left: 15px;
    border-width: 4px 7px 4px 0;
  }
}
.p-articleNav__item--prev .p-articleNav__item__link:before, .p-articleNav__item--prev .p-articleNav__item__link:after {
  position: absolute;
  top: 0;
  bottom: 0;
  display: inline-block;
  margin: auto;
  content: "";
}

.p-articleNav__item--next {
  text-align: right;
}

.p-articleNav__item--next .p-articleNav__item__link {
  padding-right: 22px;
}
@media print, screen and (min-width: 769px) {
  .p-articleNav__item--next .p-articleNav__item__link {
    padding-right: 38px;
  }
}
.p-articleNav__item--next .p-articleNav__item__link:before {
  right: 3px;
  width: 13px;
  height: 13px;
  background-color: #00a0e9;
  border-radius: 50%;
}
@media print, screen and (min-width: 769px) {
  .p-articleNav__item--next .p-articleNav__item__link:before {
    right: 12px;
    width: 18px;
    height: 18px;
  }
}
.p-articleNav__item--next .p-articleNav__item__link:after {
  right: 6px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 0 3px 5px;
  border-color: transparent transparent transparent #fff;
}
@media print, screen and (min-width: 769px) {
  .p-articleNav__item--next .p-articleNav__item__link:after {
    right: 17px;
    border-width: 4px 0 4px 7px;
  }
}
.p-articleNav__item--next .p-articleNav__item__link:before, .p-articleNav__item--next .p-articleNav__item__link:after {
  position: absolute;
  top: 0;
  bottom: 0;
  display: inline-block;
  margin: auto;
  content: "";
}

/* ***************************
qaBalloon
*************************** */
* + .p-qaBalloon {
  margin-top: 18px;
}
@media print, screen and (min-width: 769px) {
  * + .p-qaBalloon {
    margin-top: 60px;
  }
}

@media print, screen and (min-width: 769px) {
  .p-qaBalloon--topPage {
    max-width: 880px;
    margin-right: auto;
    margin-left: auto;
  }
}

.p-qaBalloon__item {
  padding-left: 0;
}
.p-qaBalloon__item:before {
  content: none;
}
.p-qaBalloon__item + .p-qaBalloon__item {
  margin-top: 20px;
}
@media print, screen and (min-width: 769px) {
  .p-qaBalloon__item + .p-qaBalloon__item {
    margin-top: 40px;
  }
}

.p-qaBalloon--topPage .p-qaBalloon__item + .p-qaBalloon--topPage .p-qaBalloon__item {
  margin-top: 20px;
}

@media print, screen and (min-width: 769px) {
  .p-qaBalloon--topPage .p-qaBalloon__item:nth-child(1) .p-qaBalloon__body {
    margin-right: auto;
    margin-left: 0;
  }

  .p-qaBalloon--topPage .p-qaBalloon__item:nth-child(2) {
    margin-top: 50px;
  }
  .p-qaBalloon--topPage .p-qaBalloon__item:nth-child(2) .p-qaBalloon__body {
    margin-right: 0;
    margin-left: auto;
  }

  .p-qaBalloon--topPage .p-qaBalloon__item:nth-child(3) {
    margin-top: 50px;
  }
  .p-qaBalloon--topPage .p-qaBalloon__item:nth-child(3) .p-qaBalloon__body {
    margin-right: auto;
    margin-left: 0;
  }
}
.p-qaBalloon__body {
  position: relative;
  margin: 0 auto 10px;
  background-color: #fff;
  border: 1px solid #1b1b1b;
  border-radius: 10px;
}
@media print, screen and (min-width: 769px) {
  .p-qaBalloon__body {
    margin-bottom: 20px;
    border-radius: 20px;
    border-width: 2px;
  }
}
.p-qaBalloon__body:after {
  position: absolute;
  bottom: -12px;
  left: 16px;
  width: 15px;
  height: 20px;
  margin: auto;
  background-image: url(images/balloon-tail.svg);
  background-repeat: no-repeat;
  background-size: contain;
  -webkit-transform: rotate(20deg);
          transform: rotate(20deg);
  content: "";
}
@media print, screen and (min-width: 769px) {
  .p-qaBalloon__body:after {
    right: 50px;
    bottom: -20px;
    left: auto;
    width: 23px;
    height: 27px;
    -webkit-transform: rotate(-10deg) scale(-1, 1);
            transform: rotate(-10deg) scale(-1, 1);
  }
}

.p-qaBalloon--topPage .p-qaBalloon__body {
  max-width: 600px;
}

.p-qaBalloon__item:nth-child(2n+1) .p-qaBalloon__body:after {
  right: 20px;
  left: auto;
  -webkit-transform: rotate(-20deg) scale(-1, 1);
          transform: rotate(-20deg) scale(-1, 1);
}
@media print, screen and (min-width: 769px) {
  .p-qaBalloon__item:nth-child(2n+1) .p-qaBalloon__body:after {
    right: auto;
    left: 50px;
    -webkit-transform: rotate(10deg);
            transform: rotate(10deg);
  }
}

.p-qaBalloon__body__top {
  padding: 11px 0;
  background-color: #d2eefa;
  border-top-right-radius: 10px;
  border-top-left-radius: 10px;
}
@media print, screen and (min-width: 769px) {
  .p-qaBalloon__body__top {
    border-top-right-radius: 20px;
    border-top-left-radius: 20px;
  }
}

.p-qaBalloon__body__bottom {
  margin-top: 0;
  padding: 10px 0 15px;
}
@media print, screen and (min-width: 769px) {
  .p-qaBalloon__body__bottom {
    padding: 16px 0 20px;
  }
}

.p-qaBalloon__body__top,
.p-qaBalloon__body__bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.p-qaBalloon__body__question {
  font-size: 1.0769230769rem;
  line-height: 1.5714285714;
  font-weight: 700;
}
@media print, screen and (min-width: 769px) {
  .p-qaBalloon__body__question {
    font-size: 1.25rem;
    line-height: 1.7;
  }
}

.p-qaBalloon__body__answer {
  font-size: 1rem;
  line-height: 1.7692307692;
  font-weight: 500;
}
@media print, screen and (min-width: 769px) {
  .p-qaBalloon__body__answer {
    font-size: 1.125rem;
    line-height: 1.5555555556;
  }
}
.p-qaBalloon__body__answer p + p {
  margin-top: 10px;
}
@media print, screen and (min-width: 769px) {
  .p-qaBalloon__body__answer p + p {
    margin-top: 14px;
  }
}

.p-qaBalloon__body__question,
.p-qaBalloon__body__answer {
  width: calc(100% - 50px);
  padding-right: 20px;
  margin-top: 0;
  letter-spacing: 0.06em;
}
@media print, screen and (min-width: 769px) {
  .p-qaBalloon__body__question,
.p-qaBalloon__body__answer {
    width: calc(100% - 80px);
  }
}

.p-qaBalloon__body__num {
  color: #0d73c0;
  font-size: 1.5384615385rem;
  line-height: 1;
}
@media print, screen and (min-width: 769px) {
  .p-qaBalloon__body__num {
    margin-top: 5px;
    font-size: 1.75rem;
    line-height: 1;
  }
}

.p-qaBalloon__body__answerIcon {
  color: #ea68a2;
  font-size: 1.9230769231rem;
  line-height: 1;
}
@media print, screen and (min-width: 769px) {
  .p-qaBalloon__body__answerIcon {
    font-size: 2.25rem;
    line-height: 1;
  }
}

.p-qaBalloon__body__num,
.p-qaBalloon__body__answerIcon {
  width: 50px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-align: center;
}
@media print, screen and (min-width: 769px) {
  .p-qaBalloon__body__num,
.p-qaBalloon__body__answerIcon {
    width: 72px;
  }
}

.p-qaBalloon__body--qOnly:after {
  background-image: url(images/balloon-tail--blue.svg);
}
.p-qaBalloon__body--qOnly .p-qaBalloon__body__top {
  border-radius: 10px;
}
@media print, screen and (min-width: 769px) {
  .p-qaBalloon__body--qOnly .p-qaBalloon__body__top {
    padding: 18px 0;
    border-radius: 20px;
  }
}

/* ***************************
faq
*************************** */
.p-faq {
  position: relative;
  margin: 0 auto;
  background-color: #d2eefa;
  border: 1px solid #1b1b1b;
  border-radius: 10px;
  -webkit-box-shadow: 0 3px 0 rgba(0, 0, 0, 0.15);
          box-shadow: 0 3px 0 rgba(0, 0, 0, 0.15);
  overflow: hidden;
}
@media print, screen and (min-width: 769px) {
  .p-faq {
    border-width: 2px;
    -webkit-box-shadow: 0 5px 0 rgba(0, 0, 0, 0.15);
            box-shadow: 0 5px 0 rgba(0, 0, 0, 0.15);
  }
}
* + .p-faq {
  margin-top: 10px;
}
@media print, screen and (min-width: 769px) {
  * + .p-faq {
    margin-top: 25px;
  }
}
.p-faq + .p-faq {
  margin-top: 15px;
}
@media print, screen and (min-width: 769px) {
  .p-faq + .p-faq {
    margin-top: 25px;
  }
}

.p-faq__question {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 11px 0;
  border-top-right-radius: 10px;
  border-top-left-radius: 10px;
}

.p-faq__question__num {
  width: 50px;
  color: #0d73c0;
  font-size: 1.5384615385rem;
  line-height: 1;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-align: center;
}
@media print, screen and (min-width: 769px) {
  .p-faq__question__num {
    margin-top: 5px;
    width: 72px;
    font-size: 1.75rem;
    line-height: 1;
  }
}

.p-faq__question__txt {
  width: calc(100% - 50px);
  padding-right: 20px;
  margin-top: 0;
  font-size: 1rem;
  line-height: 1.7692307692;
  font-weight: 500;
  letter-spacing: 0.06em;
}
@media print, screen and (min-width: 769px) {
  .p-faq__question__txt {
    width: calc(100% - 80px);
    font-size: 1.125rem;
    line-height: 1.5555555556;
  }
}
.p-faq__question__txt p + p {
  margin-top: 10px;
}
@media print, screen and (min-width: 769px) {
  .p-faq__question__txt p + p {
    margin-top: 14px;
  }
}

.p-faq__question__heading {
  margin-top: 0;
  font-size: 1.0769230769rem;
  line-height: 1.5714285714;
  font-weight: 700;
  letter-spacing: 0.06em;
}
@media print, screen and (min-width: 769px) {
  .p-faq__question__heading {
    font-size: 1.25rem;
    line-height: 1.7;
  }
}

.p-faq__answer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 0;
  padding: 10px 0 15px;
  background-color: #fff;
}
@media print, screen and (min-width: 769px) {
  .p-faq__answer {
    padding: 16px 0;
  }
}
.p-faq__answer:before {
  display: block;
  color: #ea68a2;
  font-size: 1.9230769231rem;
  line-height: 1;
  width: 50px;
  font-weight: 700;
  letter-spacing: 0.06em;
  content: "A";
  text-align: center;
}
@media print, screen and (min-width: 769px) {
  .p-faq__answer:before {
    width: 72px;
    font-size: 2.25rem;
    line-height: 1;
  }
}

.p-faq__answer__txt {
  width: calc(100% - 50px);
  margin-top: 0;
  padding-right: 20px;
  font-size: 1rem;
  line-height: 1.7692307692;
  font-weight: 500;
  letter-spacing: 0.06em;
}
@media print, screen and (min-width: 769px) {
  .p-faq__answer__txt {
    width: calc(100% - 80px);
    font-size: 1.125rem;
    line-height: 1.5555555556;
  }
}
.p-faq__answer__txt p + p {
  margin-top: 10px;
}
@media print, screen and (min-width: 769px) {
  .p-faq__answer__txt p + p {
    margin-top: 14px;
  }
}

.p-faq__btn {
  margin-top: 0;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
}

.p-faq.is-open .p-faq__btn {
  background-color: #fff;
}

.p-faq__btn__body {
  position: relative;
  width: 100%;
  height: 30px;
  background-color: transparent;
  border: none;
  font-size: 0%;
  line-height: 0;
}
@media print, screen and (min-width: 769px) {
  .p-faq__btn__body {
    height: 40px;
  }
}
.p-faq__btn__body:before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 14px;
  height: 18px;
  margin: auto;
  color: #0d73c0;
  content: "";
  font-size: 1.3846153846rem;
  line-height: 1;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
@media print, screen and (min-width: 769px) {
  .p-faq__btn__body:before {
    width: 16px;
    height: 22px;
    font-size: 1.375rem;
    line-height: 1;
  }
}
.p-faq__btn__body.is-open:before {
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
}

/* ***************************
columnSlider
*************************** */
.p-columnSlider {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  max-width: 665px;
  margin: 0 auto;
  overflow: visible;
}
@media print, screen and (min-width: 769px) {
  .p-columnSlider {
    max-width: 100%;
  }
}

.p-columnSlider__body {
  width: auto;
  margin: 0 auto;
}

.p-columnSlider__item {
  max-width: 155px;
  height: auto;
  min-height: 100%;
  margin-top: 0;
  padding-left: 0;
}
@media print, screen and (min-width: 769px) {
  .p-columnSlider__item {
    max-width: 280px;
  }
}
.p-columnSlider__item:before {
  content: none;
}

/* ***************************
column
*************************** */
@media print, screen and (min-width: 769px) {
  .p-column {
    padding-bottom: 85px;
  }
}
* + .p-column {
  margin-top: 25px;
}
@media print, screen and (min-width: 769px) {
  * + .p-column {
    margin-top: 70px;
  }
}

.p-column__tabList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: -15px -6px 0;
}
@media print, screen and (min-width: 769px) {
  .p-column__tabList {
    margin: -15px -8px 0 -7px;
  }
}

.p-column__tabList__item {
  margin-top: 15px;
  padding: 0 6px;
}
@media print, screen and (min-width: 769px) {
  .p-column__tabList__item {
    padding: 0 8px 0 7px;
  }
}
.p-column__tabList__item:before {
  content: none;
}

.p-column__tabList__btn {
  position: relative;
  display: inline-block;
  padding: 0;
  background-color: #fff;
  border: 2px solid #fff;
  border-radius: 80px;
  -webkit-box-shadow: 0 3px 0 #e2d73a;
          box-shadow: 0 3px 0 #e2d73a;
  vertical-align: middle;
}
@media print, screen and (min-width: 769px) {
  .p-column__tabList__btn {
    border-width: 3px;
    -webkit-box-shadow: 0 5px 0 #e2d73a;
            box-shadow: 0 5px 0 #e2d73a;
  }
}
.p-column__tabList__btn:hover, .p-column__tabList__btn.is-active {
  border-color: #00a0e9;
}

.p-column__tabList__body {
  position: relative;
  display: table-cell;
  min-width: 106px;
  padding: 5px 10px;
  font-size: 1rem;
  line-height: 1.2307692308;
  font-weight: 700;
  letter-spacing: 0.06em;
  vertical-align: middle;
}
@media print, screen and (min-width: 769px) {
  .p-column__tabList__body {
    min-width: 150px;
    padding: 7px 10px;
    font-size: 1.125rem;
    line-height: 1.2222222222;
  }
}

* + .p-column__articles {
  margin-top: 20px;
}
@media print, screen and (min-width: 769px) {
  * + .p-column__articles {
    margin-top: 40px;
  }
}

.p-column__pager {
  margin-top: 0;
}

/* ***************************
columnList
*************************** */
@media print, screen and (min-width: 769px) {
  .p-columnList__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: -40px -15px 0;
  }
}

.p-columnList__item {
  padding: 0;
}
@media print, screen and (min-width: 769px) {
  .p-columnList__item {
    width: 33.333%;
    margin-top: 40px;
    padding: 0 15px;
  }
}
.p-columnList__item:before {
  content: none;
}
@media print, screen and (max-width: 768px) {
  .p-columnList__item + .p-columnList__item {
    margin-top: 26px;
  }
}

/*
columnListCard
--------------------------- */
.p-columnListCard {
  position: relative;
  height: 100%;
  padding: 14px;
  background-color: #fff;
  border: 2px solid #1b1b1b;
  border-radius: 10px;
}
.p-columnListCard:after {
  position: absolute;
  bottom: -14px;
  width: 14px;
  height: 19px;
  background-image: url(images/balloon-tail.svg);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
}
@media print, screen and (min-width: 769px) {
  .p-columnListCard:after {
    bottom: -16px;
    width: 18px;
    height: 21px;
  }
}

@media print, screen and (max-width: 768px) {
  .p-columnList__item:nth-of-type(odd) .p-columnListCard:after {
    right: 26px;
    -webkit-transform: rotate(-15deg) scale(-1, 1);
            transform: rotate(-15deg) scale(-1, 1);
  }

  .p-columnList__item:nth-of-type(even) .p-columnListCard:after {
    left: 26px;
    -webkit-transform: rotate(15deg);
            transform: rotate(15deg);
  }
}
@media print, screen and (min-width: 769px) {
  .p-columnList__item:nth-of-type(6n + 1) .p-columnListCard:after,
.p-columnList__item:nth-of-type(6n + 2) .p-columnListCard:after,
.p-columnList__item:nth-of-type(6n + 3) .p-columnListCard:after {
    right: 23px;
    -webkit-transform: rotate(-15deg) scale(-1, 1);
            transform: rotate(-15deg) scale(-1, 1);
  }

  .p-columnList__item:nth-of-type(6n + 4) .p-columnListCard:after,
.p-columnList__item:nth-of-type(6n + 5) .p-columnListCard:after,
.p-columnList__item:nth-of-type(6n + 6) .p-columnListCard:after {
    left: 23px;
    -webkit-transform: rotate(15deg);
            transform: rotate(15deg);
  }
}
.p-columnListCard__link {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-decoration: none;
  overflow: hidden;
}
.p-columnListCard__link:hover {
  text-decoration: none;
}

.p-columnListCard__img {
  position: relative;
  margin-top: 0;
  min-height: 0%;
}

[data-icon=graffiti] .p-columnListCard__img:after {
  position: absolute;
  right: 6px;
  bottom: -6px;
  width: 50px;
  height: 50px;
  background-image: url(images/icon_tokyograffiti.png);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
}
@media print, screen and (min-width: 769px) {
  [data-icon=graffiti] .p-columnListCard__img:after {
    right: 12px;
    bottom: -8px;
    width: 60px;
    height: 60px;
  }
}

.p-columnListCard__txt {
  margin-top: 0;
  padding: 10px 0 0;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}

.p-columnListCard__txt__data {
  padding-bottom: 10px;
  color: #1b1b1b;
  font-size: 1rem;
  line-height: 1.4615384615;
  font-weight: 700;
  letter-spacing: 0.04em;
}
@media print, screen and (min-width: 769px) {
  .p-columnListCard__txt__data {
    font-size: 1.25rem;
    line-height: 1.5;
  }
}

.p-columnListCard__txt__ttl {
  position: relative;
  margin-top: 0;
  padding-top: 12px;
  color: #0d73c0;
  font-size: 1.2307692308rem;
  line-height: 1.25;
  font-weight: 700;
  letter-spacing: 0.04em;
}
@media print, screen and (min-width: 769px) {
  .p-columnListCard__txt__ttl {
    padding-top: 15px;
    font-size: 1.375rem;
    line-height: 1.6363636364;
  }
}
.p-columnListCard__txt__ttl:before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: 1px;
  margin: auto;
  background-image: linear-gradient(to right, #000, #000 2px, transparent 2px, transparent 4px);
  background-size: 4px 1px;
  background-repeat: repeat-x;
  content: "";
}
@media print, screen and (min-width: 769px) {
  .p-columnListCard__txt__ttl:before {
    background-image: linear-gradient(to right, #000, #000 4px, transparent 4px, transparent 8px);
    background-size: 8px 1px;
  }
}

.p-columnListCard__link:hover .p-columnListCard__txt__ttl {
  text-decoration: underline;
}

/* ***************************
columnCard
*************************** */
.p-columnCard {
  height: 100%;
  padding: 3px;
  background-color: #fff;
  border: 2px solid #1b1b1b;
  border-radius: 10px;
  overflow: hidden;
}
@media print, screen and (min-width: 769px) {
  .p-columnCard {
    padding: 5px;
    border-width: 3px;
  }
}

.p-columnCard__link {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border-top-right-radius: 10px;
  border-top-left-radius: 10px;
  text-decoration: none;
  overflow: hidden;
}
.p-columnCard__link:hover {
  text-decoration: none;
}

.p-columnCard__img {
  position: relative;
  margin-top: 0;
  min-height: 180px;
  overflow: hidden;
}
@media print, screen and (min-width: 769px) {
  .p-columnCard__img {
    min-height: 324px;
  }
}
.p-columnCard__img img {
  position: absolute;
  top: 0;
  left: 50%;
  width: auto;
  height: 100%;
  max-width: none;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.p-columnCard__txt {
  margin-top: 0;
  padding: 8px 5px;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}
@media print, screen and (min-width: 769px) {
  .p-columnCard__txt {
    padding: 12px 10px;
  }
}

.p-columnCard__txt__data {
  padding-bottom: 3px;
  color: #1b1b1b;
  font-size: 0.8461538462rem;
  line-height: 1.7272727273;
  font-weight: 700;
  letter-spacing: 0.04em;
}
@media print, screen and (min-width: 769px) {
  .p-columnCard__txt__data {
    padding-bottom: 8px;
    font-size: 1.25rem;
    line-height: 1.7;
  }
}

.p-columnCard__txt__ttl {
  position: relative;
  margin-top: 0;
  padding-top: 8px;
  color: #0d73c0;
  font-size: 1rem;
  line-height: 1.5384615385;
  font-weight: 700;
  letter-spacing: 0.04em;
}
@media print, screen and (min-width: 769px) {
  .p-columnCard__txt__ttl {
    padding-top: 10px;
    font-size: 1.375rem;
    line-height: 1.6363636364;
  }
}
.p-columnCard__txt__ttl:before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: 1px;
  margin: auto;
  background-image: linear-gradient(to right, #000, #000 2px, transparent 2px, transparent 4px);
  background-size: 4px 1px;
  background-repeat: repeat-x;
  content: "";
}
@media print, screen and (min-width: 769px) {
  .p-columnCard__txt__ttl:before {
    background-image: linear-gradient(to right, #000, #000 4px, transparent 4px, transparent 8px);
    background-size: 8px 1px;
  }
}

.p-columnCard__link:hover .p-columnCard__txt__ttl {
  text-decoration: underline;
}

/* ***************************
columnContents
*************************** */
.p-columnContents__heading {
  max-width: 960px;
  margin: auto;
  padding-top: 0;
  color: #0d73c0;
  font-size: 2.3076923077rem;
  line-height: 1.4;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-align: center;
}
@media print, screen and (min-width: 769px) {
  .p-columnContents__heading {
    font-size: 3rem;
    line-height: 1.5;
  }
}
.p-columnContents__heading:before {
  content: none;
}

.p-columnContents__heading__top {
  display: block;
  font-size: 1.1538461538rem;
  line-height: 1.4666666667;
}
@media print, screen and (min-width: 769px) {
  .p-columnContents__heading__top {
    font-size: 1.5rem;
    line-height: 1.5;
  }
}

.p-columnContents__lead {
  max-width: 960px;
  margin: auto;
  font-size: 1.0769230769rem;
  line-height: 1.7142857143;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-align: center;
}
@media print, screen and (min-width: 769px) {
  .p-columnContents__lead {
    position: relative;
    top: -42px;
    font-size: 1.25rem;
    line-height: 1.7;
  }
}

.p-columnContents__body {
  position: relative;
  margin-top: 15px;
  padding-top: 30px;
}
@media print, screen and (min-width: 769px) {
  .p-columnContents__body {
    margin-top: 50px;
    padding-top: 95px;
  }
}
.p-columnContents__body:before {
  position: absolute;
  top: 0;
  right: -19.3333333333%;
  left: -19.3333333333%;
  height: 280px;
  border-radius: 50%/90px;
  background-color: #fff;
  content: "";
}
@media print, screen and (min-width: 769px) {
  .p-columnContents__body:before {
    width: calc(100vw + 100px);
    right: auto;
    left: 50%;
    height: 300px;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    border-radius: 50%/150px;
  }
}

.p-columnContents__body__top {
  position: relative;
  margin: 0 calc(-50vw + 50%);
  padding: 0 10px;
  background-color: #fff;
}

.p-columnContents__body__middle {
  margin: 0 calc(-50vw + 50%);
  padding: 25px 10px 20px;
  background-color: #fff;
  position: relative;
}
@media print, screen and (min-width: 769px) {
  .p-columnContents__body__middle {
    padding-top: 70px;
    padding-bottom: 75px;
  }
}

.p-columnContents__foot {
  max-width: 620px;
  margin: 20px auto 0;
}
@media print, screen and (min-width: 769px) {
  .p-columnContents__foot {
    margin-top: 40px;
  }
}

/* ***************************
columnArticle
*************************** */
.p-columnArticle {
  max-width: 960px;
  margin: auto;
}

.p-columnArticle__mv {
  position: relative;
}

.p-columnArticle__mv__img {
  width: 100%;
}
@media print, screen and (min-width: 769px) {
  .p-columnArticle__mv__img {
    width: auto;
  }
}

.p-columnArticle__mv__text {
  margin-top: 15px;
  font-size: 1.5384615385rem;
  line-height: 1.5;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-align: center;
}
@media print, screen and (min-width: 769px) {
  .p-columnArticle__mv__text {
    position: absolute;
    right: 0;
    bottom: 80px;
    margin-top: 0;
    font-size: 1.75rem;
    line-height: 2;
    text-align: left;
  }
}

.p-columnArticle__mv__textLine {
  display: inline-block;
}
@media print, screen and (min-width: 769px) {
  .p-columnArticle__mv__textLine {
    padding-left: 10px;
    background-color: #fdf49c;
  }
}
@media print, screen and (min-width: 769px) {
  * + .p-columnArticle__mv__textLine {
    margin-top: 6px;
  }
}

.p-columnArticle__heading {
  margin-top: 18px;
}
@media print, screen and (min-width: 769px) {
  .p-columnArticle__heading {
    margin-top: 80px;
  }
}
.p-columnArticle__heading:before {
  display: block;
  width: 52px;
  height: 45px;
  margin: auto;
  background-image: url(images/icon_megaphone.png);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
}
@media print, screen and (min-width: 769px) {
  .p-columnArticle__heading:before {
    width: 85px;
    height: 74px;
  }
}

.p-columnArticle__heading__num {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 5px;
  font-size: 1.2307692308rem;
  line-height: 1.875;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-align: center;
}
@media print, screen and (min-width: 769px) {
  .p-columnArticle__heading__num {
    margin-top: 8px;
    font-size: 1.5rem;
    line-height: 2;
  }
}
.p-columnArticle__heading__num:before {
  margin-right: 1rem;
}
.p-columnArticle__heading__num:after {
  margin-left: 1rem;
}
.p-columnArticle__heading__num:before, .p-columnArticle__heading__num:after {
  height: 1px;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  content: "";
  background-color: #000;
}

.p-columnArticle__heading__name {
  margin: 0;
  padding: 8px 0 15px;
  font-size: 1.9230769231rem;
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-align: center;
  border-bottom: 1px solid #000;
}
.p-columnArticle__heading__name:before {
  content: none;
}
@media print, screen and (min-width: 769px) {
  .p-columnArticle__heading__name {
    padding-top: 10px;
    padding-bottom: 25px;
    font-size: 2.25rem;
    line-height: 1.3333333333;
  }
}

.p-columnArticle__heading__data {
  margin-top: 18px;
  font-size: 1.0769230769rem;
  line-height: 1.7857142857;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-align: center;
}
@media print, screen and (min-width: 769px) {
  .p-columnArticle__heading__data {
    margin-top: 30px;
    font-size: 1.25rem;
    line-height: 2;
  }
}

* + .p-columnArticle__section {
  margin-top: 40px;
}
@media print, screen and (min-width: 769px) {
  * + .p-columnArticle__section {
    margin-top: 68px;
  }
}
.p-columnArticle__section + .p-columnArticle__section {
  margin-top: 35px;
}
@media print, screen and (min-width: 769px) {
  .p-columnArticle__section + .p-columnArticle__section {
    margin-top: 76px;
  }
}

.p-columnArticle__section__num {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.p-columnArticle__section__num:before {
  margin-right: 1rem;
}
@media print, screen and (min-width: 769px) {
  .p-columnArticle__section__num:before {
    margin-right: 1.5rem;
  }
}
.p-columnArticle__section__num:after {
  margin-left: 1rem;
}
@media print, screen and (min-width: 769px) {
  .p-columnArticle__section__num:after {
    margin-left: 1.5rem;
  }
}
.p-columnArticle__section__num:before, .p-columnArticle__section__num:after {
  height: 1px;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  background-image: linear-gradient(to right, #000, #000 4px, transparent 4px, transparent 8px);
  background-size: 8px 1px;
  background-repeat: repeat-x;
  content: "";
}

.p-columnArticle__section__numBody {
  display: block;
  width: 40px;
  height: 40px;
  background-color: #0d73c0;
  color: #fff;
  font-size: 1.0769230769rem;
  line-height: 2.8571428571;
  font-weight: 700;
  letter-spacing: 0.06em;
  border-radius: 50%;
  text-align: center;
}
@media print, screen and (min-width: 769px) {
  .p-columnArticle__section__numBody {
    width: 61px;
    height: 61px;
    font-size: 1.375rem;
    line-height: 2.7727272727;
  }
}

.p-columnArticle__section__ttl {
  margin: 15px 0 0;
  padding: 0;
  font-size: 1.3846153846rem;
  line-height: 1.4444444444;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-align: center;
}
@media print, screen and (min-width: 769px) {
  .p-columnArticle__section__ttl {
    margin-top: 25px;
    font-size: 1.5rem;
    line-height: 1.4166666667;
  }
}
.p-columnArticle__section__ttl:before, .p-columnArticle__section__ttl:after {
  content: none;
}

.p-columnArticle__section__body {
  margin-top: 12px;
}
@media print, screen and (min-width: 769px) {
  .p-columnArticle__section__body {
    margin-top: 25px;
  }
}

.p-columnArticle__history {
  margin-top: 20px;
  font-size: 1rem;
  line-height: 1.7692307692;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-align: center;
}
@media print, screen and (min-width: 769px) {
  .p-columnArticle__history {
    margin-top: 52px;
    font-size: 1rem;
    line-height: 1.875;
    text-align: right;
  }
}

/* ***************************
relArticle
*************************** */
.p-relArticle {
  padding-bottom: 30px;
}

.p-relArticle__head {
  padding-top: 0;
  text-align: center;
}
.p-relArticle__head:before {
  content: none;
}

.p-relArticle__head__body {
  position: relative;
  display: inline-block;
  padding: 0 35px;
  color: #1b1b1b;
  font-size: 1.9230769231rem;
  line-height: 1.4;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-align: center;
}
@media print, screen and (min-width: 769px) {
  .p-relArticle__head__body {
    padding: 0 65px;
    font-size: 2.875rem;
    line-height: 1.1304347826;
  }
}
.p-relArticle__head__body:before {
  left: 0;
}
.p-relArticle__head__body:after {
  right: 0;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}
.p-relArticle__head__body:before, .p-relArticle__head__body:after {
  position: absolute;
  bottom: 8px;
  width: 23px;
  height: 20px;
  background-image: url(images/h2_decoration.svg);
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
}
@media print, screen and (min-width: 769px) {
  .p-relArticle__head__body:before, .p-relArticle__head__body:after {
    bottom: 6px;
    width: 42px;
    height: 38px;
  }
}

.p-relArticle__body {
  margin-top: 15px;
}
@media print, screen and (min-width: 769px) {
  .p-relArticle__body {
    margin-top: 33px;
  }
}

.p-relArticle__foot {
  margin-top: 28px;
  text-align: center;
}
@media print, screen and (min-width: 769px) {
  .p-relArticle__foot {
    margin-top: 60px;
  }
}

@media print, screen and (min-width: 901px) {
  .p-relArticle__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: -40px -20px 0;
  }
}

.p-relArticle__list__item {
  max-width: 710px;
  margin-right: auto;
  margin-left: auto;
  padding: 0;
}
@media print, screen and (min-width: 769px) {
  .p-relArticle__list__item {
    margin-top: 40px;
    padding: 0 20px;
  }
}
@media print, screen and (min-width: 901px) {
  .p-relArticle__list__item {
    width: 50%;
  }
}
.p-relArticle__list__item:before {
  content: none;
}
@media print, screen and (max-width: 768px) {
  .p-relArticle__list__item + .p-relArticle__list__item {
    margin-top: 22px;
  }
}

/*
relArticleBalloon
--------------------------- */
.p-relArticleBalloon {
  position: relative;
  height: 100%;
  border: 2px solid #1b1b1b;
  border-radius: 10px;
  background-color: #fff;
}
.p-relArticleBalloon:after {
  position: absolute;
  bottom: -14px;
  width: 15px;
  height: 20px;
  margin: auto;
  background-image: url(images/balloon-tail.svg);
  background-repeat: no-repeat;
  background-size: contain;
  pointer-events: none;
  content: "";
}
@media print, screen and (min-width: 769px) {
  .p-relArticleBalloon:after {
    bottom: -22px;
    width: 25px;
    height: 33px;
  }
}

@media print, screen and (max-width: 768px) {
  .p-relArticle__list__item:nth-child(odd) .p-relArticleBalloon:after {
    right: 22px;
    -webkit-transform: rotate(-20deg) scale(-1, 1);
            transform: rotate(-20deg) scale(-1, 1);
  }
}
@media print, screen and (min-width: 769px) {
  .p-relArticle__list__item:nth-child(odd) .p-relArticleBalloon:after {
    left: 45px;
    -webkit-transform: rotate(20deg);
            transform: rotate(20deg);
  }
}

@media print, screen and (max-width: 768px) {
  .p-relArticle__list__item:nth-child(even) .p-relArticleBalloon:after {
    left: 26px;
    -webkit-transform: rotate(20deg);
            transform: rotate(20deg);
  }
}
@media print, screen and (min-width: 769px) {
  .p-relArticle__list__item:nth-child(even) .p-relArticleBalloon:after {
    right: 45px;
    -webkit-transform: rotate(-20deg) scale(-1, 1);
            transform: rotate(-20deg) scale(-1, 1);
  }
}

.p-relArticleBalloon__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  padding: 10px;
  text-decoration: none;
}
@media print, screen and (min-width: 769px) {
  .p-relArticleBalloon__link {
    height: 100%;
    padding: 18px 20px;
  }
}
.p-relArticleBalloon__link:hover {
  text-decoration: none;
}

.p-relArticleBalloon__img {
  width: 90px;
  margin-top: 0;
  margin-right: 15px;
}
@media print, screen and (min-width: 769px) {
  .p-relArticleBalloon__img {
    width: 148px;
    margin-right: 22px;
  }
}
.p-relArticleBalloon__img img {
  width: 100%;
}

.p-relArticleBalloon__text {
  width: calc(100% - 105px);
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}
@media print, screen and (min-width: 769px) {
  .p-relArticleBalloon__text {
    width: calc(100% - 170px);
  }
}

.p-relArticleBalloon__text__data {
  margin-top: 6px;
  color: #1b1b1b;
  font-size: 1rem;
  line-height: 1.4615384615;
  font-weight: 700;
  letter-spacing: 0.04em;
}
@media print, screen and (min-width: 769px) {
  .p-relArticleBalloon__text__data {
    font-size: 1.25rem;
    line-height: 1.6;
  }
}

.p-relArticleBalloon__text__ttl {
  margin-top: 4px;
  color: #0d73c0;
  font-size: 1.2307692308rem;
  line-height: 1.4375;
  font-weight: 700;
  letter-spacing: 0.04em;
}
@media print, screen and (min-width: 769px) {
  .p-relArticleBalloon__text__ttl {
    margin-top: 12px;
    font-size: 1.5rem;
    line-height: 1.5;
  }
}

.p-relArticleBalloon__link:hover .p-relArticleBalloon__text__ttl {
  text-decoration: underline;
}

/* ***************************
sideLink
*************************** */
.p-sideLink {
  border: 2px solid #1b1b1b;
  border-radius: 10px;
  -webkit-box-shadow: 0 3px 0 rgba(0, 0, 0, 0.15);
          box-shadow: 0 3px 0 rgba(0, 0, 0, 0.15);
  overflow: hidden;
}
@media print, screen and (min-width: 769px) {
  .p-sideLink {
    margin-top: 10px;
    border: none;
    border-radius: 0;
    -webkit-box-shadow: none;
            box-shadow: none;
    overflow: visible;
  }
}

@media print, screen and (min-width: 769px) {
  .p-sideLink__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: -20px -10px 0;
	justify-content: center;
  }
}

.p-sideLink__item {
  position: relative;
  margin-top: 0;
  padding-left: 0;
}
@media print, screen and (min-width: 769px) {
  .p-sideLink__item {
    width: 50%;
    margin-top: 20px;
    padding: 0 10px;
  }
}
.p-sideLink__item:before {
  content: none;
}
.p-sideLink__item:after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 15px;
  display: block;
  width: 25px;
  height: 22px;
  margin: auto;
  background-image: url(images/icon_megaphone.png);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  pointer-events: none;
}
@media print, screen and (min-width: 769px) {
  .p-sideLink__item:after {
    left: 30px;
    width: 36px;
    height: 32px;
  }
}
@media print, screen and (max-width: 768px) {
  .p-sideLink__item + .p-sideLink__item:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background: none;
    background-image: linear-gradient(to right, #000, #000 2px, transparent 2px, transparent 4px);
    background-size: 4px 1px;
    background-repeat: repeat-x;
    border-radius: 0;
    content: "";
  }
}

.p-sideLink__item__link {
  display: block;
  padding: 15px 40px 15px 50px;
  color: #0d73c0;
  text-decoration: none;
  font-size: 1.3076923077rem;
  line-height: 1.4705882353;
  font-weight: 700;
  letter-spacing: 0.06em;
  background-color: #fff;
}
@media print, screen and (min-width: 769px) {
  .p-sideLink__item__link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 100%;
    padding: 15px 45px 15px 75px;
    font-size: 1.5rem;
    line-height: 1.5;
    border: 2px solid #1b1b1b;
    border-radius: 10px;
    -webkit-box-shadow: 0 5px 0 rgba(0, 0, 0, 0.15);
            box-shadow: 0 5px 0 rgba(0, 0, 0, 0.15);
  }
}
.p-sideLink__item__link:hover, .p-sideLink__item__link:visited {
  color: #0d73c0;
}
.p-sideLink__item__link:hover {
  text-decoration: underline;
}
.p-sideLink__item__link:before {
  right: 17px;
  width: 13px;
  height: 13px;
  background-color: #00a0e9;
  border-radius: 50%;
}
@media print, screen and (min-width: 769px) {
  .p-sideLink__item__link:before {
    right: 32px;
    width: 18px;
    height: 18px;
  }
}
.p-sideLink__item__link:after {
  right: 20px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 0 3px 5px;
  border-color: transparent transparent transparent #fff;
}
@media print, screen and (min-width: 769px) {
  .p-sideLink__item__link:after {
    right: 37px;
    border-width: 4px 0 4px 7px;
  }
}
.p-sideLink__item__link:before, .p-sideLink__item__link:after {
  position: absolute;
  top: 0;
  bottom: 0;
  display: inline-block;
  margin: auto;
  content: "";
}

/* ***************************
snsShare
*************************** */
.p-snsShare {
  text-align: center;
}

.p-snsShare__head {
  position: relative;
  display: inline-block;
  padding: 0 25px;
  font-size: 1.2307692308rem;
  line-height: 1.375;
  letter-spacing: 0.06em;
  font-weight: 700;
}
@media print, screen and (min-width: 769px) {
  .p-snsShare__head {
    padding: 0 35px;
    font-size: 1.25rem;
    line-height: 1.7;
  }
}
.p-snsShare__head:before {
  right: auto;
  left: 0;
}
.p-snsShare__head:after {
  right: 0;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}
.p-snsShare__head:before, .p-snsShare__head:after {
  position: absolute;
  bottom: 2px;
  width: 18px;
  height: 16px;
  background-image: url(images/h2_decoration.svg);
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
}
@media print, screen and (min-width: 769px) {
  .p-snsShare__head:before, .p-snsShare__head:after {
    bottom: 5px;
    width: 23px;
    height: 21px;
  }
}

.p-snsShare__body {
  margin-top: 15px;
}
@media print, screen and (min-width: 769px) {
  .p-snsShare__body {
    margin-top: 22px;
  }
}

.p-snsShare__list {
  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;
  margin: 0 -11px;
}
@media print, screen and (min-width: 769px) {
  .p-snsShare__list {
    margin: 0 -15px;
  }
}

.p-snsShare__list__item {
  max-width: 67px;
  margin-top: 0;
  padding: 0 11px;
}
@media print, screen and (min-width: 769px) {
  .p-snsShare__list__item {
    max-width: 90px;
    padding: 0 15px;
  }
}
.p-snsShare__list__item:before {
  content: none;
}

.p-snsShare__list__link {
  display: inline-block;
  max-width: 45px;
  background-color: #fff;
  text-decoration: none;
  border-radius: 50%;
}
@media print, screen and (min-width: 769px) {
  .p-snsShare__list__link {
    max-width: 60px;
  }
}
.p-snsShare__list__link:hover {
  text-decoration: none;
  opacity: 0.8;
}
.p-snsShare__list__link:after {
  content: none;
}

/* ***************************
lead
*************************** */
.p-lead {
  text-align: center;
  letter-spacing: 0.06em;
}
@media print, screen and (min-width: 769px) {
  .p-lead {
    font-size: 1.25rem;
    line-height: 1.7;
    font-weight: 500;
  }
}

/* ***************************
indexLink
*************************** */
.p-indexLink {
  position: relative;
  background-color: #fff;
  border: 2px solid #1b1b1b;
  border-radius: 10px;
  -webkit-box-shadow: 0 3px 0 rgba(0, 0, 0, 0.15);
          box-shadow: 0 3px 0 rgba(0, 0, 0, 0.15);
  overflow: hidden;
}
@media print, screen and (min-width: 769px) {
  .p-indexLink {
    -webkit-box-shadow: 0 5px 0 rgba(0, 0, 0, 0.15);
            box-shadow: 0 5px 0 rgba(0, 0, 0, 0.15);
  }
}
* + .p-indexLink {
  margin-top: 18px;
}
@media print, screen and (min-width: 769px) {
  * + .p-indexLink {
    margin-top: 52px;
  }
}
.p-indexLink + * {
  margin-top: 35px;
}
@media print, screen and (min-width: 769px) {
  .p-indexLink + * {
    margin-top: 50px;
  }
}

.p-indexLink__body {
  margin-top: 0;
  padding: 0;
  overflow: hidden;
}
.p-indexLink__body:before {
  display: block;
  height: 1px;
  background-image: linear-gradient(to right, #000, #000 4px, transparent 4px, transparent 8px);
  background-size: 8px 1px;
  background-repeat: repeat-x;
  content: "";
}

.p-indexLink__btn {
  position: relative;
  width: 100%;
  background-color: transparent;
  border: none;
  padding: 17px 35px 17px 15px;
  font-size: 1.2307692308rem;
  line-height: 1.25;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-align: left;
}
@media print, screen and (min-width: 769px) {
  .p-indexLink__btn {
    padding: 17px 50px 17px 28px;
    font-size: 1.125rem;
    line-height: 1.7777777778;
  }
}
.p-indexLink__btn:after {
  position: absolute;
  top: 0;
  right: 12px;
  bottom: 0;
  width: 0;
  height: 0;
  margin: auto;
  border-style: solid;
  border-width: 14px 8px 0 8px;
  border-color: #00a1e3 transparent transparent transparent;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
  content: "";
}
@media print, screen and (min-width: 769px) {
  .p-indexLink__btn:after {
    right: 22px;
    border-width: 18px 10px 0 10px;
  }
}

.p-indexLink.is-close .p-indexLink__btn:after {
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
}

.p-indexLink__btn__body {
  position: relative;
}

.p-indexLink__body__item {
  margin-top: 0;
}
.p-indexLink__body__item + .p-indexLink__body__item:before {
  display: block;
  height: 1px;
  background-image: linear-gradient(to right, #000, #000 4px, transparent 4px, transparent 8px);
  background-size: 8px 1px;
  background-repeat: repeat-x;
  content: "";
}

/*
indexList
--------------------------- */
.p-indexList__body {
  position: relative;
  margin-top: 0;
  padding: 14px;
}
@media print, screen and (min-width: 769px) {
  .p-indexList__body {
    padding: 30px 28px 28px;
  }
}

.p-indexList__head + .p-indexList__body:before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 1px;
  background-image: linear-gradient(to right, #000, #000 4px, transparent 4px, transparent 8px);
  background-size: 8px 1px;
  background-repeat: repeat-x;
  content: "";
}

@media print, screen and (min-width: 769px) {
  .p-indexList__body--noBorder {
    padding-top: 12px;
  }
}
.p-indexList__body--noBorder:before {
  content: none !important;
}

.p-indexList__head__body {
  padding: 12px 15px 0;
  font-size: 1.3846153846rem;
  line-height: 1.3888888889;
  font-weight: 700;
  letter-spacing: 0.06em;
}
@media print, screen and (min-width: 769px) {
  .p-indexList__head__body {
    padding: 16px 30px 0;
    font-size: 1.25rem;
    line-height: 1.9;
  }
}

.p-indexList__list {
  padding: 12px 14px;
  background-color: #fdf49c;
  border-radius: 5px;
}
@media print, screen and (min-width: 769px) {
  .p-indexList__list {
    padding: 14px 18px;
  }
}

.p-indexList__btn {
  position: relative;
  width: 100%;
  padding: 14px 35px;
  font-size: 1.3846153846rem;
  line-height: 1.2222222222;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: #0d73c0;
  background-color: #fff;
  border: none;
  text-align: center;
}
@media print, screen and (min-width: 769px) {
  .p-indexList__btn {
    padding-right: 50px;
    padding-left: 50px;
  }
}
.p-indexList__btn:after {
  position: absolute;
  top: -2px;
  right: 18px;
  bottom: 0;
  width: 13px;
  height: 16px;
  margin: auto;
  color: #00a0e9;
  content: "";
  font-size: 1.2307692308rem;
  line-height: 1;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
@media print, screen and (min-width: 769px) {
  .p-indexList__btn:after {
    right: 20px;
    width: 20px;
    height: 20px;
    font-size: 1.25rem;
    line-height: 1;
  }
}
.p-indexList__btn.is-open:after {
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
}

.p-indexList__btn__body {
  position: relative;
  display: block;
}

.p-indexList__list__item {
  padding-left: 0;
}
.p-indexList__list__item:before {
  content: none !important;
}
.p-indexList__list__item + .p-indexList__list__item {
  margin-top: 10px;
}
@media print, screen and (min-width: 769px) {
  .p-indexList__list__item + .p-indexList__list__item {
    margin-top: 8px;
  }
}

.p-indexList__list__link {
  font-size: 1.0769230769rem;
  line-height: 1.5714285714;
  font-weight: 700;
  letter-spacing: 0.06em;
  color: #1b1b1b;
  text-decoration: none;
}
@media print, screen and (min-width: 769px) {
  .p-indexList__list__link {
    font-size: 1rem;
    line-height: 1.875;
  }
}
.p-indexList__list__link:hover, .p-indexList__list__link:visited {
  color: #1b1b1b;
}
.p-indexList__list__link:hover {
  text-decoration: underline;
}

/* ***************************
sliteAccordion
*************************** */
.p-sliteAccordion {
  border: 2px solid #1b1b1b;
  border-radius: 10px;
  background-color: #fff;
  -webkit-box-shadow: 0 3px 0 rgba(0, 0, 0, 0.15);
          box-shadow: 0 3px 0 rgba(0, 0, 0, 0.15);
  overflow: hidden;
}
@media print, screen and (min-width: 769px) {
  .p-sliteAccordion {
    -webkit-box-shadow: 0 5px 0 rgba(0, 0, 0, 0.15);
            box-shadow: 0 5px 0 rgba(0, 0, 0, 0.15);
  }
}
* + .p-sliteAccordion {
  margin-top: 35px;
}
@media print, screen and (min-width: 769px) {
  * + .p-sliteAccordion {
    margin-top: 50px;
  }
}
p + .p-sliteAccordion {
  margin-top: 10px;
}
@media print, screen and (min-width: 769px) {
  p + .p-sliteAccordion {
    margin-top: 25px;
  }
}
.p-sliteAccordion + .p-sliteAccordion {
  margin-top: 15px;
}
@media print, screen and (min-width: 769px) {
  .p-sliteAccordion + .p-sliteAccordion {
    margin-top: 20px;
  }
}
h2 + .p-sliteAccordion, h3 + .p-sliteAccordion, h4 + .p-sliteAccordion, h5 + .p-sliteAccordion {
  margin-top: 10px;
}
@media print, screen and (min-width: 769px) {
  h2 + .p-sliteAccordion, h3 + .p-sliteAccordion, h4 + .p-sliteAccordion, h5 + .p-sliteAccordion {
    margin-top: 25px;
  }
}

.p-sliteAccordion__head {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 12px;
}
@media print, screen and (min-width: 769px) {
  .p-sliteAccordion__head {
    padding: 12px 18px 10px 28px;
  }
}

.p-sliteAccordion__ttl {
  min-width: 134px;
  margin: 0;
  padding: 0;
  color: #0d73c0;
  font-size: 1.5384615385rem;
  line-height: 1.4;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-align: left;
}
.p-sliteAccordion__ttl:before, .p-sliteAccordion__ttl:after {
  content: none;
}
@media print, screen and (min-width: 769px) {
  .p-sliteAccordion__ttl {
    font-size: 1.5rem;
    line-height: 1.5833333333;
  }
}

.p-sliteAccordion__labels {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin-top: 0;
}

.p-sliteAccordion__labels__item {
  display: inline-block;
  min-width: 80px;
  margin: 2px 0 2px 5px;
  padding: 5px 8px;
  font-size: 0.7692307692rem;
  line-height: 1.5;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-align: center;
  border-radius: 50px;
  white-space: nowrap;
}
@media print, screen and (min-width: 769px) {
  .p-sliteAccordion__labels__item {
    font-size: 0.875rem;
    line-height: 2;
  }
}
.p-sliteAccordion__labels__item:before {
  content: none;
}

.p-sliteAccordion__labels__item--mother {
  background-color: #fcbbd7;
}

.p-sliteAccordion__labels__item--father {
  background-color: #a2ddf9;
}

.p-sliteAccordion__labels__item--before {
  background-color: #d5ed99;
}

.p-sliteAccordion__body {
  position: relative;
  margin-top: 0;
  padding: 12px 18px 10px;
}
@media print, screen and (min-width: 769px) {
  .p-sliteAccordion__body {
    padding: 26px 28px 10px;
  }
}
.p-sliteAccordion__body:before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 1px;
  background-image: linear-gradient(to right, #000, #000 2px, transparent 2px, transparent 4px);
  background-size: 4px 1px;
  background-repeat: repeat-x;
  content: "";
}
@media print, screen and (min-width: 769px) {
  .p-sliteAccordion__body:before {
    background-image: linear-gradient(to right, #000, #000 4px, transparent 4px, transparent 8px);
    background-size: 8px 1px;
  }
}

.p-sliteAccordion__body__more {
  margin-top: 0;
}

.p-sliteAccordion__foot {
  margin-top: 0;
}

.p-sliteAccordion__btn {
  position: relative;
  width: 100%;
  height: 40px;
  background-color: transparent;
  border: none;
  font-size: 0%;
  line-height: 0;
}
.p-sliteAccordion__btn:before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 13px;
  height: 16px;
  margin: auto;
  color: #00a0e9;
  content: "";
  font-size: 1.3846153846rem;
  line-height: 1;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
@media print, screen and (min-width: 769px) {
  .p-sliteAccordion__btn:before {
    width: 16px;
    height: 22px;
    font-size: 1.375rem;
    line-height: 1;
  }
}

.p-sliteAccordion__btn.is-open:before {
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
}

/* ***************************
contactList
*************************** */
.p-contactList__item {
  margin-top: 0;
  padding-left: 0;
}
.p-contactList__item:before {
  content: none;
}
.p-contactList__item + .p-contactList__item:before {
  position: static;
  display: block;
  width: 100%;
  height: 1px;
  background: none;
  background-image: linear-gradient(to right, #000, #000 4px, transparent 4px, transparent 8px);
  background-size: 8px 1px;
  background-repeat: repeat-x;
  border-radius: 0;
  content: "";
}

.p-contactList__contact {
  padding: 12px 18px;
}

.p-contactList__contact__area {
  font-size: 1.2307692308rem;
  line-height: 1.375;
  font-weight: 700;
  letter-spacing: 0.04em;
}

.p-contactList__contact__areaLink {
  color: #1b1b1b;
  text-decoration: none;
}
.p-contactList__contact__areaLink:hover, .p-contactList__contact__areaLink:visited {
  color: #1b1b1b;
}
.p-contactList__contact__areaLink:hover {
  text-decoration: underline;
}

.p-contactList__contact__tel {
  margin-top: 5px;
  font-size: 1.2307692308rem;
  line-height: 1.375;
  font-weight: 700;
  letter-spacing: 0.04em;
}

.p-contactList__contact__telLink {
  display: inline-block;
  color: #0d73c0;
  text-decoration: none;
}
.p-contactList__contact__telLink:hover, .p-contactList__contact__telLink:visited {
  color: #0d73c0;
}
.p-contactList__contact__telLink:hover {
  text-decoration: underline;
}
.p-contactList__contact__telLink:before {
  content: "";
  display: inline-block;
  margin-top: -4px;
  margin-right: 8px;
  font-size: 1.3076923077rem;
  line-height: 1;
  color: #000;
  text-decoration: underline;
  vertical-align: middle;
}
.p-contactList__contact__telLink:before {
  text-decoration: none;
}
@media print, screen and (min-width: 769px) {
  .p-contactList__contact__telLink {
    pointer-events: none;
  }
}

/* ***************************
panelLink
*************************** */
* + .p-panelLink {
  margin-top: 20px;
}
@media print, screen and (min-width: 769px) {
  * + .p-panelLink {
    margin-top: 52px;
  }
}

.p-panelLink__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: -18px -7px 0 -8px;
}
@media print, screen and (min-width: 769px) {
  .p-panelLink__list {
    margin: -32px -16px 0;
  }
}

.p-panelLink__item {
  width: 50%;
  margin-top: 18px;
  padding: 0 7px 0 8px;
}
@media print, screen and (min-width: 769px) {
  .p-panelLink__item {
    margin-top: 32px;
    padding: 0 16px;
  }
}
@media print, screen and (min-width: 769px) and (max-width: 900px) {
  .p-panelLink__item {
    width: 50%;
  }
}
@media print, screen and (min-width: 901px) {
  .p-panelLink__item {
    width: 25%;
  }
}
.p-panelLink__item:before {
  content: none;
}

.p-panelLink__panel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
  padding: 10px 8px;
  background-color: #fff;
  border: 2px solid #1b1b1b;
  border-radius: 10px;
  -webkit-box-shadow: 0 3px 0 rgba(0, 0, 0, 0.15);
          box-shadow: 0 3px 0 rgba(0, 0, 0, 0.15);
}
@media print, screen and (min-width: 769px) {
  .p-panelLink__panel {
    padding: 14px;
    -webkit-box-shadow: 0 5px 0 rgba(0, 0, 0, 0.15);
            box-shadow: 0 5px 0 rgba(0, 0, 0, 0.15);
  }
}
.p-panelLink__panel:hover, .p-panelLink__panel:visited {
  color: #1b1b1b;
}

.p-panelLink__panel__ttl {
  position: relative;
  margin-top: 8px;
  padding-left: 30px;
  color: #0d73c0;
  font-size: 1.3076923077rem;
  line-height: 1.4705882353;
  font-weight: 700;
  letter-spacing: 0.06em;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}
@media print, screen and (min-width: 769px) {
  .p-panelLink__panel__ttl {
    margin-top: 17px;
    padding-left: 47px;
    font-size: 1.5rem;
    line-height: 1.5833333333;
  }
}
.p-panelLink__panel__ttl:before {
  position: absolute;
  top: 4px;
  left: 1px;
  display: block;
  width: 20px;
  height: 18px;
  background-image: url(images/icon_megaphone.png);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
}
@media print, screen and (min-width: 769px) {
  .p-panelLink__panel__ttl:before {
    width: 34px;
    height: 30px;
  }
}

.p-panelLink__panel:hover .p-panelLink__panel__ttl {
  text-decoration: underline;
}

.p-panelLink__panel__img {
  min-height: 0%;
  margin-top: 0;
}
.p-panelLink__panel__img img {
  width: 100%;
}

/* ***************************
supportDetail
*************************** */
.p-supportDetail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
* + .p-supportDetail {
  margin-top: 20px;
}
@media print, screen and (min-width: 769px) {
  * + .p-supportDetail {
    margin-top: 25px;
  }
}
.p-supportDetail + .p-supportDetail {
  margin-top: 12px;
}

.p-supportDetail__head {
  min-width: 60px;
  color: #0d73c0;
}

.p-supportDetail__body {
  color: #1b1b1b;
}

.p-supportDetail__head,
.p-supportDetail__body {
  font-size: 1.0769230769rem;
  line-height: 2.1428571429;
  font-weight: 700;
  letter-spacing: 0.06em;
}
@media print, screen and (min-width: 769px) {
  .p-supportDetail__head,
.p-supportDetail__body {
    font-size: 1rem;
    line-height: 1.875;
  }
}

/* ***************************
sitemap
*************************** */
.p-sitemap {
  border: 2px solid #1b1b1b;
  border-radius: 10px;
  overflow: hidden;
  -webkit-box-shadow: 0 3px 0 rgba(0, 0, 0, 0.15);
          box-shadow: 0 3px 0 rgba(0, 0, 0, 0.15);
}
@media print, screen and (min-width: 769px) {
  .p-sitemap {
    margin-bottom: 85px;
    -webkit-box-shadow: 0 5px 0 rgba(0, 0, 0, 0.15);
            box-shadow: 0 5px 0 rgba(0, 0, 0, 0.15);
  }
}

.p-sitemap__item {
  margin-top: 0;
  padding-left: 0;
}
.p-sitemap__item:before {
  content: none;
}
.p-sitemap__item + .p-sitemap__item {
  margin-top: 0;
}
.p-sitemap__item + .p-sitemap__item:before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 1px;
  background-image: linear-gradient(to right, #1b1b1b, #1b1b1b 2px, transparent 2px, transparent 4px);
  background-size: 4px 1px;
  background-repeat: repeat-x;
  border-radius: 0;
  background-color: transparent;
  content: "";
  z-index: 1;
}
@media print, screen and (min-width: 769px) {
  .p-sitemap__item + .p-sitemap__item:before {
    background-image: linear-gradient(to right, #1b1b1b, #1b1b1b 4px, transparent 4px, transparent 8px);
    background-size: 8px 1px;
  }
}

.p-sitemap__item__body {
  margin-top: 0;
  padding: 4px 13px 28px;
}
@media print, screen and (min-width: 769px) {
  .p-sitemap__item__body {
    padding: 0 38px 28px;
  }
}

.p-sitemap__item__text {
  position: relative;
  display: inline-block;
  width: 100%;
  padding: 12px;
  color: #0d73c0;
  font-size: 1.2307692308rem;
  line-height: 1.5625;
  letter-spacing: 0.06em;
  font-weight: 700;
  text-decoration: none;
}
@media print, screen and (min-width: 769px) {
  .p-sitemap__item__text {
    padding: 10px 28px 12px;
    font-size: 1.25rem;
    line-height: 1.9;
  }
}

.p-sitemap__item__link {
  position: relative;
  display: inline-block;
  width: 100%;
  padding: 12px;
  color: #0d73c0;
  font-size: 1.2307692308rem;
  line-height: 1.5625;
  letter-spacing: 0.06em;
  font-weight: 700;
  text-decoration: none;
}
@media print, screen and (min-width: 769px) {
  .p-sitemap__item__link {
    padding: 10px 28px 12px;
    font-size: 1.25rem;
    line-height: 1.9;
  }
}
.p-sitemap__item__link:hover, .p-sitemap__item__link:visited {
  color: #0d73c0;
}
.p-sitemap__item__link:hover {
  text-decoration: underline;
}

.p-sitemap__item__link--arrow {
  padding-right: 30px;
}
@media print, screen and (min-width: 769px) {
  .p-sitemap__item__link--arrow {
    padding-right: 55px;
  }
}
.p-sitemap__item__link--arrow:after {
  position: absolute;
  top: 0;
  right: 10px;
  bottom: 0;
  width: 0;
  height: 0;
  margin: auto;
  border-style: solid;
  border-width: 14px 8px 0 8px;
  border-color: #00a1e3 transparent transparent transparent;
  content: "";
}
@media print, screen and (min-width: 769px) {
  .p-sitemap__item__link--arrow:after {
    right: 28px;
    border-width: 14px 8px 0 8px;
  }
}

.p-sitemapChild {
  margin-top: 0;
  padding: 14px 18px 11px;
  background-color: #fdf49c;
  border-radius: 5px;
}
@media print, screen and (min-width: 769px) {
  .p-sitemapChild {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 0 -10px;
    padding: 13px 10px;
  }
}

.p-sitemapChild__item {
  padding-left: 0;
}
@media print, screen and (min-width: 769px) {
  .p-sitemapChild__item {
    width: 25%;
    padding: 0 10px;
  }
}
.p-sitemapChild__item:before {
  content: none;
}
.p-sitemapChild__item + .p-sitemapChild__item {
  margin-top: 10px;
}
@media print, screen and (min-width: 769px) {
  .p-sitemapChild__item + .p-sitemapChild__item {
    margin-top: 0;
  }
}

@media print, screen and (min-width: 769px) {
  .p-sitemapChild__item:nth-of-type(n+5) {
    margin-top: 12px;
  }
}

.p-sitemapChild__link {
  position: relative;
  display: inline-block;
  color: #1b1b1b;
  font-size: 1.0769230769rem;
  line-height: 1.4285714286;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-decoration: none;
}
@media print, screen and (min-width: 769px) {
  .p-sitemapChild__link {
    letter-spacing: 0;
  }
}
.p-sitemapChild__link:before {
  content: none;
}
.p-sitemapChild__link:visited {
  color: #1b1b1b;
}
.p-sitemapChild__link:hover {
  color: #0d73c0;
}

/* ***************************
yearSelect
*************************** */
.p-yearSelect {
  position: relative;
  display: inline-block;
  margin-left: auto;
}
.p-yearSelect:after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 0;
  height: 0;
  margin: auto;
  border-style: solid;
  border-width: 11px 6px 0 6px;
  border-color: #00a1e3 transparent transparent transparent;
  content: "";
}
@media print, screen and (min-width: 769px) {
  .p-yearSelect:after {
    border-width: 17px 10px 0 10px;
  }
}

.p-yearSelect__body {
  padding-right: 20px;
  padding-left: 5px;
  color: #1b1b1b;
  font-size: 1.2307692308rem;
  line-height: 1.125;
  font-weight: 700;
  letter-spacing: 0.04em;
  background: none;
  border: none;
}
@media print, screen and (min-width: 769px) {
  .p-yearSelect__body {
    padding-right: 30px;
    font-size: 1.5rem;
    line-height: 1.1666666667;
  }
}

/* ***************************
print
*************************** */
@media print {
  body {
    padding-top: 0;
  }

  .l-header, .l-footer {
    display: none;
  }
}
/* ***************************
display
*************************** */
@media print, screen and (max-width: 768px) {
  .u-pcOnly {
    display: none !important;
  }
}

.u-spOnly {
  display: none !important;
}
@media print, screen and (max-width: 768px) {
  .u-spOnly {
    display: block !important;
  }
}

.u-spOnly--small {
  display: none !important;
}
@media print, screen and (max-width: 540px) {
  .u-spOnly--small {
    display: block !important;
  }
}

@media print, screen and (max-width: 768px) {
  .u-block--sp {
    display: block;
  }
}

/* ***************************
text
*************************** */
/* ------------------------
text-align
------------------------ */
.u-alignCenter {
  text-align: center !important;
}

.u-alignLeft {
  text-align: left !important;
}

.u-alignRight {
  text-align: right !important;
}

@media print, screen and (min-width: 769px) {
  .u-alignCenter--pc {
    text-align: center !important;
  }

  .u-alignLeft--pc {
    text-align: left !important;
  }

  .u-alignRight--pc {
    text-align: right !important;
  }
}
@media print, screen and (max-width: 768px) {
  .u-alignCenter--sp {
    text-align: center !important;
  }

  .u-alignLeft--sp {
    text-align: left !important;
  }

  .u-alignRight--sp {
    text-align: right !important;
  }
}
/* ------------------------
vertical-align
------------------------ */
.u-alignTop {
  vertical-align: top !important;
}

.u-alignMiddle {
  vertical-align: middle !important;
}

.u-alignBottom {
  vertical-align: bottom !important;
}

/* ------------------------
font-weight
------------------------ */
.u-fwNormal {
  font-weight: 400 !important;
}

.u-fwMiddle {
  font-weight: 500 !important;
}

.u-fwBold {
  font-weight: 700 !important;
}

/* ------------------------
font size
------------------------ */
.u-fzSmall {
  font-size: 0.8461538462rem;
  line-height: 1.8181818182;
}
@media print, screen and (min-width: 769px) {
  .u-fzSmall {
    font-size: 0.875rem;
    line-height: 2;
  }
}

.u-fzNormal {
  font-size: 1rem;
  line-height: 1.9230769231;
}
@media print, screen and (min-width: 769px) {
  .u-fzNormal {
    font-size: 1rem;
    line-height: 1.875;
  }
}

.u-fzMiddle {
  font-size: 1.0769230769rem;
  line-height: 1.7142857143;
}
@media print, screen and (min-width: 769px) {
  .u-fzMiddle {
    font-size: 1.25rem;
    line-height: 1.7;
  }
}

.u-fzLarge {
  font-size: 1.3846153846rem;
  line-height: 1.4444444444;
}
@media print, screen and (min-width: 769px) {
  .u-fzLarge {
    font-size: 1.75rem;
    line-height: 1.3571428571;
  }
}

.u-fzXLarge {
  font-size: 1.5384615385rem;
  line-height: 1.5;
}
@media print, screen and (min-width: 769px) {
  .u-fzXLarge {
    font-size: 2.25rem;
    line-height: 1.3333333333;
  }
}

@media print, screen and (min-width: 769px) {
  .u-fzLarge--pc {
    font-size: 1.25rem;
    line-height: 1.7;
  }
}

/* ------------------------
nowrap
------------------------ */
.u-txtNowrap {
  white-space: nowrap;
}

/* ------------------------
caption
------------------------ */
.u-caption {
  color: #707070;
  font-size: 0.9230769231rem;
  line-height: 2.0833333333;
  letter-spacing: 0.06em;
}
@media print, screen and (min-width: 769px) {
  .u-caption {
    font-size: 0.875rem;
    line-height: 2;
  }
}

/* ------------------------
tel
------------------------ */
@media print, screen and (min-width: 769px) {
  .u-telLink {
    pointer-events: none;
  }
}

/* ------------------------
:before. :after
------------------------ */
.u-noPseudo:before, .u-noPseudo:after {
  content: none !important;
}

/* ***************************
width
*************************** */
@media print, screen and (min-width: 769px) {
  .u-col1 {
    width: 8.3333333333%;
  }
}

@media print, screen and (min-width: 769px) {
  .u-col2 {
    width: 16.6666666667%;
  }
}

@media print, screen and (min-width: 769px) {
  .u-col3 {
    width: 25%;
  }
}

@media print, screen and (min-width: 769px) {
  .u-col4 {
    width: 33.3333333333%;
  }
}

@media print, screen and (min-width: 769px) {
  .u-col5 {
    width: 41.6666666667%;
  }
}

@media print, screen and (min-width: 769px) {
  .u-col6 {
    width: 50%;
  }
}

@media print, screen and (min-width: 769px) {
  .u-col7 {
    width: 58.3333333333%;
  }
}

@media print, screen and (min-width: 769px) {
  .u-col8 {
    width: 66.6666666667%;
  }
}

@media print, screen and (min-width: 769px) {
  .u-col9 {
    width: 75%;
  }
}

@media print, screen and (min-width: 769px) {
  .u-col10 {
    width: 83.3333333333%;
  }
}

@media print, screen and (min-width: 769px) {
  .u-col11 {
    width: 91.6666666667%;
  }
}

/* px */
.u-width0 {
  width: 0 !important;
}

.u-width5 {
  width: 5px !important;
}

.u-width10 {
  width: 10px !important;
}

.u-width15 {
  width: 15px !important;
}

.u-width20 {
  width: 20px !important;
}

.u-width25 {
  width: 25px !important;
}

.u-width30 {
  width: 30px !important;
}

.u-width35 {
  width: 35px !important;
}

.u-width40 {
  width: 40px !important;
}

.u-width45 {
  width: 45px !important;
}

.u-width50 {
  width: 50px !important;
}

.u-width55 {
  width: 55px !important;
}

.u-width60 {
  width: 60px !important;
}

.u-width65 {
  width: 65px !important;
}

.u-width70 {
  width: 70px !important;
}

.u-width75 {
  width: 75px !important;
}

.u-width80 {
  width: 80px !important;
}

.u-width85 {
  width: 85px !important;
}

.u-width90 {
  width: 90px !important;
}

.u-width95 {
  width: 95px !important;
}

.u-width100 {
  width: 100px !important;
}

.u-width105 {
  width: 105px !important;
}

.u-width110 {
  width: 110px !important;
}

.u-width115 {
  width: 115px !important;
}

.u-width120 {
  width: 120px !important;
}

.u-width125 {
  width: 125px !important;
}

.u-width130 {
  width: 130px !important;
}

.u-width135 {
  width: 135px !important;
}

.u-width140 {
  width: 140px !important;
}

.u-width145 {
  width: 145px !important;
}

.u-width150 {
  width: 150px !important;
}

.u-width155 {
  width: 155px !important;
}

.u-width160 {
  width: 160px !important;
}

.u-width165 {
  width: 165px !important;
}

.u-width170 {
  width: 170px !important;
}

.u-width175 {
  width: 175px !important;
}

.u-width180 {
  width: 180px !important;
}

.u-width185 {
  width: 185px !important;
}

.u-width190 {
  width: 190px !important;
}

.u-width195 {
  width: 195px !important;
}

.u-width200 {
  width: 200px !important;
}

.u-width205 {
  width: 205px !important;
}

.u-width210 {
  width: 210px !important;
}

.u-width215 {
  width: 215px !important;
}

.u-width220 {
  width: 220px !important;
}

.u-width225 {
  width: 225px !important;
}

.u-width230 {
  width: 230px !important;
}

.u-width235 {
  width: 235px !important;
}

.u-width240 {
  width: 240px !important;
}

.u-width245 {
  width: 245px !important;
}

.u-width250 {
  width: 250px !important;
}

.u-width255 {
  width: 255px !important;
}

.u-width260 {
  width: 260px !important;
}

.u-width265 {
  width: 265px !important;
}

.u-width270 {
  width: 270px !important;
}

.u-width275 {
  width: 275px !important;
}

.u-width280 {
  width: 280px !important;
}

.u-width285 {
  width: 285px !important;
}

.u-width290 {
  width: 290px !important;
}

.u-width295 {
  width: 295px !important;
}

.u-width300 {
  width: 300px !important;
}

.u-width305 {
  width: 305px !important;
}

.u-width310 {
  width: 310px !important;
}

.u-width315 {
  width: 315px !important;
}

.u-width320 {
  width: 320px !important;
}

.u-width325 {
  width: 325px !important;
}

.u-width330 {
  width: 330px !important;
}

.u-width335 {
  width: 335px !important;
}

.u-width340 {
  width: 340px !important;
}

.u-width345 {
  width: 345px !important;
}

.u-width350 {
  width: 350px !important;
}

.u-width355 {
  width: 355px !important;
}

.u-width360 {
  width: 360px !important;
}

.u-width365 {
  width: 365px !important;
}

.u-width370 {
  width: 370px !important;
}

.u-width375 {
  width: 375px !important;
}

/* px sp用 */
@media print, screen and (max-width: 768px) {
  .u-width0--sp {
    width: 0 !important;
  }

  .u-width5--sp {
    width: 5px !important;
  }

  .u-width10--sp {
    width: 10px !important;
  }

  .u-width15--sp {
    width: 15px !important;
  }

  .u-width20--sp {
    width: 20px !important;
  }

  .u-width25--sp {
    width: 25px !important;
  }

  .u-width30--sp {
    width: 30px !important;
  }

  .u-width35--sp {
    width: 35px !important;
  }

  .u-width40--sp {
    width: 40px !important;
  }

  .u-width45--sp {
    width: 45px !important;
  }

  .u-width50--sp {
    width: 50px !important;
  }

  .u-width55--sp {
    width: 55px !important;
  }

  .u-width60--sp {
    width: 60px !important;
  }

  .u-width65--sp {
    width: 65px !important;
  }

  .u-width70--sp {
    width: 70px !important;
  }

  .u-width75--sp {
    width: 75px !important;
  }

  .u-width80--sp {
    width: 80px !important;
  }

  .u-width85--sp {
    width: 85px !important;
  }

  .u-width90--sp {
    width: 90px !important;
  }

  .u-width95--sp {
    width: 95px !important;
  }

  .u-width100--sp {
    width: 100px !important;
  }

  .u-width105--sp {
    width: 105px !important;
  }

  .u-width110--sp {
    width: 110px !important;
  }

  .u-width115--sp {
    width: 115px !important;
  }

  .u-width120--sp {
    width: 120px !important;
  }

  .u-width125--sp {
    width: 125px !important;
  }

  .u-width130--sp {
    width: 130px !important;
  }

  .u-width135--sp {
    width: 135px !important;
  }

  .u-width140--sp {
    width: 140px !important;
  }

  .u-width145--sp {
    width: 145px !important;
  }

  .u-width150--sp {
    width: 150px !important;
  }

  .u-width155--sp {
    width: 155px !important;
  }

  .u-width160--sp {
    width: 160px !important;
  }

  .u-width165--sp {
    width: 165px !important;
  }

  .u-width170--sp {
    width: 170px !important;
  }

  .u-width175--sp {
    width: 175px !important;
  }

  .u-width180--sp {
    width: 180px !important;
  }

  .u-width185--sp {
    width: 185px !important;
  }

  .u-width190--sp {
    width: 190px !important;
  }

  .u-width195--sp {
    width: 195px !important;
  }

  .u-width200--sp {
    width: 200px !important;
  }

  .u-width205--sp {
    width: 205px !important;
  }

  .u-width210--sp {
    width: 210px !important;
  }

  .u-width215--sp {
    width: 215px !important;
  }

  .u-width220--sp {
    width: 220px !important;
  }

  .u-width225--sp {
    width: 225px !important;
  }

  .u-width230--sp {
    width: 230px !important;
  }

  .u-width235--sp {
    width: 235px !important;
  }

  .u-width240--sp {
    width: 240px !important;
  }

  .u-width245--sp {
    width: 245px !important;
  }

  .u-width250--sp {
    width: 250px !important;
  }
}
/* パーセント */
.u-width0p {
  width: 0% !important;
}

.u-width5p {
  width: 5% !important;
}

.u-width10p {
  width: 10% !important;
}

.u-width15p {
  width: 15% !important;
}

.u-width20p {
  width: 20% !important;
}

.u-width25p {
  width: 25% !important;
}

.u-width30p {
  width: 30% !important;
}

.u-width35p {
  width: 35% !important;
}

.u-width40p {
  width: 40% !important;
}

.u-width45p {
  width: 45% !important;
}

.u-width50p {
  width: 50% !important;
}

.u-width55p {
  width: 55% !important;
}

.u-width60p {
  width: 60% !important;
}

.u-width65p {
  width: 65% !important;
}

.u-width70p {
  width: 70% !important;
}

.u-width75p {
  width: 75% !important;
}

.u-width80p {
  width: 80% !important;
}

.u-width85p {
  width: 85% !important;
}

.u-width90p {
  width: 90% !important;
}

.u-width95p {
  width: 95% !important;
}

.u-width100p {
  width: 100% !important;
}

/* パーセント pc用 */
@media print, screen and (min-width: 769px) {
  .u-width0p--pc {
    width: 0% !important;
  }

  .u-width5p--pc {
    width: 5% !important;
  }

  .u-width10p--pc {
    width: 10% !important;
  }

  .u-width15p--pc {
    width: 15% !important;
  }

  .u-width20p--pc {
    width: 20% !important;
  }

  .u-width25p--pc {
    width: 25% !important;
  }

  .u-width30p--pc {
    width: 30% !important;
  }

  .u-width35p--pc {
    width: 35% !important;
  }

  .u-width40p--pc {
    width: 40% !important;
  }

  .u-width45p--pc {
    width: 45% !important;
  }

  .u-width50p--pc {
    width: 50% !important;
  }

  .u-width55p--pc {
    width: 55% !important;
  }

  .u-width60p--pc {
    width: 60% !important;
  }

  .u-width65p--pc {
    width: 65% !important;
  }

  .u-width70p--pc {
    width: 70% !important;
  }

  .u-width75p--pc {
    width: 75% !important;
  }

  .u-width80p--pc {
    width: 80% !important;
  }

  .u-width85p--pc {
    width: 85% !important;
  }

  .u-width90p--pc {
    width: 90% !important;
  }

  .u-width95p--pc {
    width: 95% !important;
  }

  .u-width100p--pc {
    width: 100% !important;
  }
}
/* パーセント sp用 */
@media print, screen and (max-width: 768px) {
  .u-width0p--sp {
    width: 0% !important;
  }

  .u-width5p--sp {
    width: 5% !important;
  }

  .u-width10p--sp {
    width: 10% !important;
  }

  .u-width15p--sp {
    width: 15% !important;
  }

  .u-width20p--sp {
    width: 20% !important;
  }

  .u-width25p--sp {
    width: 25% !important;
  }

  .u-width30p--sp {
    width: 30% !important;
  }

  .u-width35p--sp {
    width: 35% !important;
  }

  .u-width40p--sp {
    width: 40% !important;
  }

  .u-width45p--sp {
    width: 45% !important;
  }

  .u-width50p--sp {
    width: 50% !important;
  }

  .u-width55p--sp {
    width: 55% !important;
  }

  .u-width60p--sp {
    width: 60% !important;
  }

  .u-width65p--sp {
    width: 65% !important;
  }

  .u-width70p--sp {
    width: 70% !important;
  }

  .u-width75p--sp {
    width: 75% !important;
  }

  .u-width80p--sp {
    width: 80% !important;
  }

  .u-width85p--sp {
    width: 85% !important;
  }

  .u-width90p--sp {
    width: 90% !important;
  }

  .u-width95p--sp {
    width: 95% !important;
  }

  .u-width100p--sp {
    width: 100% !important;
  }
}
@media print, screen and (min-width: 769px) {
  .u-widhAuto--pc {
    width: auto !important;
  }
}
@media print, screen and (max-width: 768px) {
  .u-widhAuto--sp {
    width: auto !important;
  }
}
/* ***************************
margin
*************************** */
/* top */
.u-mTop0 {
  margin-top: 0 !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.u-mTopAuto {
  margin-top: auto !important;
}

/* top --sp */
@media screen and (max-width: 768px) {
  .u-mTop0--sp {
    margin-top: 0 !important;
  }

  .u-mTop5--sp {
    margin-top: 5px !important;
  }

  .u-mTop10--sp {
    margin-top: 10px !important;
  }

  .u-mTop15--sp {
    margin-top: 15px !important;
  }

  .u-mTop20--sp {
    margin-top: 20px !important;
  }

  .u-mTop25--sp {
    margin-top: 25px !important;
  }

  .u-mTop30--sp {
    margin-top: 30px !important;
  }

  .u-mTop35--sp {
    margin-top: 35px !important;
  }

  .u-mTop40--sp {
    margin-top: 40px !important;
  }

  .u-mTop45--sp {
    margin-top: 45px !important;
  }

  .u-mTop50--sp {
    margin-top: 50px !important;
  }

  .u-mTop55--sp {
    margin-top: 55px !important;
  }

  .u-mTop60--sp {
    margin-top: 60px !important;
  }

  .u-mTop65--sp {
    margin-top: 65px !important;
  }

  .u-mTop70--sp {
    margin-top: 70px !important;
  }

  .u-mTop75--sp {
    margin-top: 75px !important;
  }

  .u-mTop80--sp {
    margin-top: 80px !important;
  }

  .u-mTop85--sp {
    margin-top: 85px !important;
  }

  .u-mTop90--sp {
    margin-top: 90px !important;
  }

  .u-mTop95--sp {
    margin-top: 95px !important;
  }

  .u-mTop100--sp {
    margin-top: 100px !important;
  }

  .u-mTopAuto--sp {
    margin-top: auto !important;
  }
}
/* right */
.u-mRight0 {
  margin-right: 0 !important;
}

.u-mRight5 {
  margin-right: 5px !important;
}

.u-mRight10 {
  margin-right: 10px !important;
}

.u-mRight15 {
  margin-right: 15px !important;
}

.u-mRight20 {
  margin-right: 20px !important;
}

.u-mRight25 {
  margin-right: 25px !important;
}

.u-mRight30 {
  margin-right: 30px !important;
}

.u-mRight35 {
  margin-right: 35px !important;
}

.u-mRight40 {
  margin-right: 40px !important;
}

.u-mRight45 {
  margin-right: 45px !important;
}

.u-mRight50 {
  margin-right: 50px !important;
}

.u-mRight55 {
  margin-right: 55px !important;
}

.u-mRight60 {
  margin-right: 60px !important;
}

.u-mRight65 {
  margin-right: 65px !important;
}

.u-mRight70 {
  margin-right: 70px !important;
}

.u-mRight75 {
  margin-right: 75px !important;
}

.u-mRight80 {
  margin-right: 80px !important;
}

.u-mRight85 {
  margin-right: 85px !important;
}

.u-mRight90 {
  margin-right: 90px !important;
}

.u-mRight95 {
  margin-right: 95px !important;
}

.u-mRight100 {
  margin-right: 100px !important;
}

.u-mRightAuto {
  margin-right: auto !important;
}

/* right --sp */
@media screen and (max-width: 768px) {
  .u-mRight0--sp {
    margin-right: 0 !important;
  }

  .u-mRight5--sp {
    margin-right: 5px !important;
  }

  .u-mRight10--sp {
    margin-right: 10px !important;
  }

  .u-mRight15--sp {
    margin-right: 15px !important;
  }

  .u-mRight20--sp {
    margin-right: 20px !important;
  }

  .u-mRight25--sp {
    margin-right: 25px !important;
  }

  .u-mRight30--sp {
    margin-right: 30px !important;
  }

  .u-mRight35--sp {
    margin-right: 35px !important;
  }

  .u-mRight40--sp {
    margin-right: 40px !important;
  }

  .u-mRight45--sp {
    margin-right: 45px !important;
  }

  .u-mRight50--sp {
    margin-right: 50px !important;
  }

  .u-mRight55--sp {
    margin-right: 55px !important;
  }

  .u-mRight60--sp {
    margin-right: 60px !important;
  }

  .u-mRight65--sp {
    margin-right: 65px !important;
  }

  .u-mRight70--sp {
    margin-right: 70px !important;
  }

  .u-mRight75--sp {
    margin-right: 75px !important;
  }

  .u-mRight80--sp {
    margin-right: 80px !important;
  }

  .u-mRight85--sp {
    margin-right: 85px !important;
  }

  .u-mRight90--sp {
    margin-right: 90px !important;
  }

  .u-mRight95--sp {
    margin-right: 95px !important;
  }

  .u-mRight100--sp {
    margin-right: 100px !important;
  }

  .u-mRightAuto--sp {
    margin-right: auto !important;
  }
}
/* bottom */
.u-mBottom0 {
  margin-bottom: 0 !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.u-mBottomAuto {
  margin-bottom: auto !important;
}

/* bottom --sp */
@media screen and (max-width: 768px) {
  .u-mBottom0--sp {
    margin-bottom: 0 !important;
  }

  .u-mBottom5--sp {
    margin-bottom: 5px !important;
  }

  .u-mBottom10--sp {
    margin-bottom: 10px !important;
  }

  .u-mBottom15--sp {
    margin-bottom: 15px !important;
  }

  .u-mBottom20--sp {
    margin-bottom: 20px !important;
  }

  .u-mBottom25--sp {
    margin-bottom: 25px !important;
  }

  .u-mBottom30--sp {
    margin-bottom: 30px !important;
  }

  .u-mBottom35--sp {
    margin-bottom: 35px !important;
  }

  .u-mBottom40--sp {
    margin-bottom: 40px !important;
  }

  .u-mBottom45--sp {
    margin-bottom: 45px !important;
  }

  .u-mBottom50--sp {
    margin-bottom: 50px !important;
  }

  .u-mBottom55--sp {
    margin-bottom: 55px !important;
  }

  .u-mBottom60--sp {
    margin-bottom: 60px !important;
  }

  .u-mBottom65--sp {
    margin-bottom: 65px !important;
  }

  .u-mBottom70--sp {
    margin-bottom: 70px !important;
  }

  .u-mBottom75--sp {
    margin-bottom: 75px !important;
  }

  .u-mBottom80--sp {
    margin-bottom: 80px !important;
  }

  .u-mBottom85--sp {
    margin-bottom: 85px !important;
  }

  .u-mBottom90--sp {
    margin-bottom: 90px !important;
  }

  .u-mBottom95--sp {
    margin-bottom: 95px !important;
  }

  .u-mBottom100--sp {
    margin-bottom: 100px !important;
  }

  .u-mBottomAuto--sp {
    margin-bottom: auto !important;
  }
}
/* left */
.u-mLeft0 {
  margin-left: 0 !important;
}

.u-mLeft5 {
  margin-left: 5px !important;
}

.u-mLeft10 {
  margin-left: 10px !important;
}

.u-mLeft15 {
  margin-left: 15px !important;
}

.u-mLeft20 {
  margin-left: 20px !important;
}

.u-mLeft25 {
  margin-left: 25px !important;
}

.u-mLeft30 {
  margin-left: 30px !important;
}

.u-mLeft35 {
  margin-left: 35px !important;
}

.u-mLeft40 {
  margin-left: 40px !important;
}

.u-mLeft45 {
  margin-left: 45px !important;
}

.u-mLeft50 {
  margin-left: 50px !important;
}

.u-mLeft55 {
  margin-left: 55px !important;
}

.u-mLeft60 {
  margin-left: 60px !important;
}

.u-mLeft65 {
  margin-left: 65px !important;
}

.u-mLeft70 {
  margin-left: 70px !important;
}

.u-mLeft75 {
  margin-left: 75px !important;
}

.u-mLeft80 {
  margin-left: 80px !important;
}

.u-mLeft85 {
  margin-left: 85px !important;
}

.u-mLeft90 {
  margin-left: 90px !important;
}

.u-mLeft95 {
  margin-left: 95px !important;
}

.u-mLeft100 {
  margin-left: 100px !important;
}

.u-mLeftAuto {
  margin-left: auto !important;
}

/* left --sp */
@media screen and (max-width: 768px) {
  .u-mLeft0--sp {
    margin-left: 0 !important;
  }

  .u-mLeft5--sp {
    margin-left: 5px !important;
  }

  .u-mLeft10--sp {
    margin-left: 10px !important;
  }

  .u-mLeft15--sp {
    margin-left: 15px !important;
  }

  .u-mLeft20--sp {
    margin-left: 20px !important;
  }

  .u-mLeft25--sp {
    margin-left: 25px !important;
  }

  .u-mLeft30--sp {
    margin-left: 30px !important;
  }

  .u-mLeft35--sp {
    margin-left: 35px !important;
  }

  .u-mLeft40--sp {
    margin-left: 40px !important;
  }

  .u-mLeft45--sp {
    margin-left: 45px !important;
  }

  .u-mLeft50--sp {
    margin-left: 50px !important;
  }

  .u-mLeft55--sp {
    margin-left: 55px !important;
  }

  .u-mLeft60--sp {
    margin-left: 60px !important;
  }

  .u-mLeft65--sp {
    margin-left: 65px !important;
  }

  .u-mLeft70--sp {
    margin-left: 70px !important;
  }

  .u-mLeft75--sp {
    margin-left: 75px !important;
  }

  .u-mLeft80--sp {
    margin-left: 80px !important;
  }

  .u-mLeft85--sp {
    margin-left: 85px !important;
  }

  .u-mLeft90--sp {
    margin-left: 90px !important;
  }

  .u-mLeft95--sp {
    margin-left: 95px !important;
  }

  .u-mLeft100--sp {
    margin-left: 100px !important;
  }

  .u-mLeftAuto--sp {
    margin-left: auto !important;
  }
}