@charset "UTF-8";
/* 下からフェードイン(初期値) */
.js-fadeUp {
  opacity: 0;
  /* 最初は非表示 */
  transform: translateY(30px);
  /* 下に30pxの位置から */
  transition: opacity .8s, transform .8s;
  /* 透過率と縦方向の移動を0.8秒 */
}

/* 下からフェードイン(スクロールした後) */
.js-fadeUp.is-inview {
  opacity: 1;
  /* 表示領域に入ったら表示 */
  transform: translateY(0);
  /* 30px上に移動する */
  transition-delay: 0s;
  /*開始を遅らせる */
}

.js-fadeUp.slow.is-inview {
  opacity: 1;
  /* 表示領域に入ったら表示 */
  transform: translateY(0);
  /* 30px上に移動する */
  transition-delay: .5s;
  /* 開始を遅らせる */
}

/* 左からフェードイン(初期値) */
.js-fadeIn {
  opacity: 0;
  /* 最初は非表示 */
  transform: translateX(-100px);
  /* 左に100pxの位置から */
  transition: opacity .8s, transform .8s;
  /* 透過率と縦方向の移動を0.8秒 */
}

/* 左からフェードイン(スクロールした後) */
.js-fadeIn.is-inview {
  opacity: 1;
  /* 表示領域に入ったら表示 */
  transform: translateX(0);
  /* 100px右に移動する */
  transition-delay: 0s;
  /* 開始を遅らせる */
}

.js-fadeIn.slow.is-inview {
  opacity: 1;
  /* 表示領域に入ったら表示 */
  transform: translateX(0);
  /* 100px右に移動する */
  transition-delay: .5s;
  /* 開始を遅らせる */
}

/* ------------------------------------
/////////////////////////////////
zoom
///////////////////////////////////
------------------------------------- */
@keyframes zoomUp {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.15);
    /* 拡大率 */
  }
}
/* 用紙サイズの指定（A4） */
@page {
  margin: 8mm;
  size: 210mm 297mm;
  /* A4縦 */
}
@media print {
  /* 全体設定 */
  body {
    -webkit-print-color-adjust: exact;
    /* 印刷時でも背景色や背景画像を表示 */
    width: 1400px;
    /* 印刷時の全ページ幅を統一 */
    zoom: 0.8;
    /* なるべく多くのブラウザで切れないようにするため */
    /*no animation*/
  }
  body header {
    position: absolute !important;
    max-width: 1400px;
    width: 1400px !important;
  }
  body .header--flex {
    width: 1400px !important;
  }
  body .btnBox {
    display: none;
  }
  body #btn_pagetop {
    display: none;
  }
  body .js-fadeUp,
  body .js-fadeIn {
    opacity: 1;
  }
  body .js-fadeIn {
    transform: translateX(0);
  }
  body .js-fadeUp {
    transform: translateY(0);
  }
  body .js-fadeUp.is-view,
  body .js-fadeIn.is-view {
    animation-name: none;
  }
}
.fig {
  margin: 0 auto;
  padding: 0;
  overflow: hidden;
  width: 100%;
  height: auto;
  text-align: center;
}
@media screen and (max-width: 479px) {
  .fig {
    padding: 0;
  }
}
.fig__image {
  /*@include size(auto, auto);*/
  height: auto;
  margin: 0 auto;
  object-fit: contain;
  max-width: 100%;
}
@media screen and (max-width: 1279px) {
  .fig__image {
    max-height: 300px;
  }
}
.fig figcaption {
  font-weight: 500;
  line-height: 2;
  font-size: 20px;
  padding: calc(15px - (18px * 2 - 18px) / 2) 0;
}
@media screen and (max-width: 767px) {
  .fig figcaption {
    font-size: 18px;
    padding: calc(8px - (16px * 2 - 16px) / 2) 0;
  }
}
@media screen and (max-width: 479px) {
  .fig figcaption {
    font-size: 16px;
    padding: calc(5px - (14px * 2 - 14px) / 2) 0;
  }
}

.dizziness__inner {
  width: 100%;
  height: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 auto;
  padding: 0 40px;
}
@media screen and (max-width: 1279px) {
  .dizziness__inner {
    padding: 0 20px;
  }
}
@media screen and (max-width: 767px) {
  .dizziness__inner {
    padding: 0 15px;
  }
}
.dizziness__hl {
  font-size: 30px;
  font-weight: 500;
  line-height: 1.2;
  color: #102a75;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 auto;
  padding: calc(20px - (30px * 1.2 - 30px) / 2) 0;
  text-align: center;
  border-bottom: 2px solid #102a75;
  margin-left: 15px;
  padding-right: 15px;
  position: relative;
}
.dizziness__hl:before {
  content: "";
  width: 2px;
  height: 20px;
  background-color: #102a75;
  margin-right: 30px;
  transform: rotate(35deg);
  display: inline-block;
  position: absolute;
  bottom: -10px;
  left: -10px;
}
.dizziness__hl:after {
  content: "";
  width: 2px;
  height: 20px;
  background-color: #102a75;
  margin-right: 30px;
  transform: rotate(35deg);
  display: inline-block;
  position: absolute;
  bottom: -10px;
  left: 0px;
}
@media screen and (min-width: 1401px) {
  .dizziness__hl {
    padding-left: 40px;
    padding-right: 40px;
    max-width: 1680px;
  }
}
@media screen and (max-width: 767px) {
  .dizziness__hl {
    font-size: 24px;
  }
}
@media screen and (max-width: 329px) {
  .dizziness__hl {
    font-size: 22px;
  }
}
.dizziness__hl--large {
  font-size: 24px;
  color: #102a75;
  font-weight: 500;
  line-height: 2;
  padding: calc(30px - (24px * 2 - 24px) / 2) 0;
  margin: 50px auto 0px;
  text-align: center;
}
@media screen and (max-width: 1279px) {
  .dizziness__hl--large {
    margin-top: 30px;
    font-size: 24px;
  }
}
@media screen and (max-width: 479px) {
  .dizziness__hl--large {
    font-size: 20px;
  }
}
@media screen and (max-width: 767px) {
  .dizziness__hl--large br {
    display: none;
  }
}
.dizziness__hl--middle {
  margin: 40px auto 0;
  font-size: 24px;
  color: #102a75;
  font-weight: 500;
  line-height: 1.2;
  padding: calc(20px - (24px * 1.2 - 24px) / 2) 0;
  padding-left: 25px;
  /*上とセット*/
  position: relative;
  text-align: left;
}
@media screen and (max-width: 1279px) {
  .dizziness__hl--middle {
    margin-top: 50px;
  }
}
@media screen and (max-width: 767px) {
  .dizziness__hl--middle {
    font-size: 22px;
    padding: calc(15px - (20px * 1.2 - 20px) / 2) 0px;
    padding-left: 20px;
    /*上とセット*/
  }
}
@media screen and (max-width: 479px) {
  .dizziness__hl--middle {
    font-size: 20px;
    padding: calc(15px - (18px * 1.2 - 18px) / 2) 0px;
    padding-left: 20px;
    /*上とセット*/
  }
}
.dizziness__hl--middle:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  background: #102a75;
  width: 8px;
  height: calc(tan(60deg) * 12px / 2);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}
.dizziness__hl--small {
  margin: 50px auto 30px;
  font-size: 20px;
  color: #1d1d1d;
  font-weight: 500;
  line-height: 1.2;
  padding-left: 25px;
  position: relative;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .dizziness__hl--small {
    font-size: 18px;
  }
}
.dizziness__hl--small:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background-color: #FFF;
  border: 6px solid #102a75;
  border-radius: 50%;
}
@media screen and (max-width: 767px) {
  .dizziness__hl--small:before {
    width: 16px;
    height: 16px;
  }
}
.dizziness__paragraph {
  font-size: 20px;
  text-align: left;
  color: #1d1d1d;
  font-weight: 500;
  line-height: 2;
  padding: calc(30px - (16px * 2 - 16px) / 2) 0;
}
@media screen and (max-width: 767px) {
  .dizziness__paragraph {
    font-size: 18px;
    padding: calc(20px - (18px * 1.5 - 18px) / 2) 0px;
  }
}
@media screen and (max-width: 479px) {
  .dizziness__paragraph {
    font-size: 16px;
    line-height: 1.5;
    padding: calc(20px - (16px * 1.5 - 16px) / 2) 0px;
  }
}
.dizziness__bgBlue {
  padding: 30px 0 100px;
  background-image: url("../../img/common/bgimg01.jpg");
  background-color: rgba(255, 255, 255, 0.4);
  background-blend-mode: lighten;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
@media screen and (max-width: 479px) {
  .dizziness__bgBlue {
    padding-bottom: 0px;
  }
}
.dizziness__bgWhite {
  padding: 50px 0 100px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.dizziness__bgWhite:first-of-type {
  padding-top: 0;
}
@media screen and (max-width: 479px) {
  .dizziness__bgWhite {
    padding-bottom: 0px;
  }
}
.dizziness__flex {
  width: 100%;
  height: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 20px auto 0;
  padding: 0;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  column-gap: 25px;
}
@media screen and (max-width: 1279px) {
  .dizziness__flex {
    display: block;
    max-width: 1080px;
  }
}
@media screen and (min-width: 1401px) {
  .dizziness__flex {
    margin: 0 auto;
    max-width: 1680px;
  }
}
.dizziness__flex--left {
  flex: 1 1 50%;
}
.dizziness__flex--right {
  flex: 1 1 50%;
}
.dizziness__fig {
  margin-top: 20px;
}
@media screen and (max-width: 1279px) {
  .dizziness__fig {
    margin-top: 50px;
  }
}
.dizziness__fig img {
  margin-bottom: 20px;
}
@media screen and (max-width: 1279px) {
  .dizziness__fig img {
    margin-bottom: 0;
  }
}
.dizziness--anchor {
  color: #102a75 !important;
  position: relative;
  display: inline-block;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.dizziness--anchor:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: alpha(opacity=70);
}
.dizziness--anchor span {
  border-bottom: .5px dashed;
}
.dizziness--anchor svg {
  width: 15px;
  padding-left: 8px;
}
@media screen and (max-width: 479px) {
  .dizziness--anchor svg {
    width: 14px;
  }
}
.dizziness__back {
  margin: 0 auto;
  text-align: center;
}
.dizziness__back--anchor {
  font-size: 20px;
  color: #102a75 !important;
  font-weight: 500;
  line-height: 1;
  padding: calc(5px - (18px * 1 - 18px) / 2) 0;
  padding-left: 30px;
  background-image: url("../../img/common/icon_circle_arrow.png");
  background-size: 21px;
  background-repeat: no-repeat;
  background-position: bottom 1px right;
  display: inline-block;
  background-position: bottom 1px left;
}
@media screen and (max-width: 767px) {
  .dizziness__back--anchor {
    font-size: 18px;
    padding: calc(5px - (16px * 1 - 16px) / 2) 0;
    padding-left: 30px;
  }
}
@media screen and (max-width: 479px) {
  .dizziness__back--anchor {
    padding-left: 25px;
  }
}
.dizziness__back--anchor span {
  border-bottom: .5px dashed;
}
.dizziness__back:first-of-type {
  padding-top: 80px;
  padding-bottom: 30px;
}

.numbering {
  /*&__image{
     text-align: center;

     img{
       @include size(972px, auto);
        max-width:100%;
        margin:0 auto;
        object-fit: contain;
     }
    }*/
}
.numbering__inner {
  padding: 0 40px 40px;
}
@media screen and (max-width: 1279px) {
  .numbering__inner {
    padding-left: 20px;
    padding-right: 20px;
  }
}
@media screen and (max-width: 479px) {
  .numbering__inner {
    padding: 20px 15px 30px;
  }
}
.numbering__hl {
  margin: 0 auto;
  font-size: 24px;
  color: #102a75;
  font-weight: 500;
  line-height: 1.2;
  position: relative;
  display: flex;
  align-items: center;
  column-gap: 20px;
}
@media screen and (max-width: 767px) {
  .numbering__hl {
    font-size: 20px;
    padding: calc(15px - (20px * 1.2 - 20px) / 2) 0px;
    column-gap: 10px;
  }
}
@media screen and (max-width: 479px) {
  .numbering__hl {
    font-size: 18px;
    padding: calc(15px - (18px * 1.2 - 18px) / 2) 0px;
    margin-bottom: 0;
  }
}
.numbering__hl span {
  display: inline-block;
}
.numbering__hl--num {
  width: 60px;
  height: 60px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  color: #FFF;
  font-size: 28px;
  font-weight: 500;
  line-height: 1;
  padding: calc(15px - (28px * 1 - 28px) / 2) 0;
  background-color: #102a75;
  text-align: center;
  flex: 0 0 60px;
}
@media screen and (max-width: 767px) {
  .numbering__hl--num {
    font-size: 24px;
    width: 40px;
    height: 40px;
    padding: calc(10px - (24px * 1 - 24px) / 2) 0;
    flex: 0 0 40px;
  }
}
.numbering__paragraph {
  font-weight: 500;
  line-height: 2;
  font-size: 20px;
  padding: calc(30px - (20px * 2 - 20px) / 2) 0;
}
@media screen and (max-width: 767px) {
  .numbering__paragraph {
    font-size: 18px;
    padding: calc(20px - (18px * 2 - 18px) / 2) 0;
  }
}
@media screen and (max-width: 479px) {
  .numbering__paragraph {
    font-size: 16px;
    padding: calc(20px - (16px * 2 - 16px) / 2) 0;
  }
}
.numbering__flex {
  width: 100%;
  height: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 auto;
  padding: 0;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
  column-gap: 40px;
}
@media screen and (max-width: 1279px) {
  .numbering__flex {
    flex-direction: column;
    row-gap: 15px;
  }
}
.numbering__flex .fig {
  margin: 0 auto;
  padding: 20px 0 0;
  overflow: hidden;
  width: 100%;
  height: auto;
  text-align: center;
  flex-basis: 300px;
}
@media screen and (max-width: 1279px) {
  .numbering__flex .fig {
    margin: 0 auto;
  }
}
@media screen and (max-width: 767px) {
  .numbering__flex .fig {
    padding: 0;
  }
}
.numbering__flex .fig__image {
  height: auto;
  margin: 0 auto;
  object-fit: contain;
}
@media screen and (max-width: 1279px) {
  .numbering__flex .fig__image {
    max-height: 300px;
  }
}

.gaiyou__squareList {
  list-style: none;
  padding: 0;
  margin: 0 0 100px;
}

.gaiyou__squareItem {
  font-size: 20px;
  color: #102a75;
  font-weight: 500;
  line-height: 1.5;
  padding-bottom: 0px;
  margin-top: 20px;
  padding-left: 25px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .gaiyou__squareItem {
    font-size: 18px;
  }
}
@media screen and (max-width: 479px) {
  .gaiyou__squareItem {
    font-size: 16px;
    /*      padding-bottom: 15px;*/
  }
}
.gaiyou__squareItem:before {
  content: "◇";
  color: #102a75;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.dizziness__flex.type2 {
  margin-top: 50px;
  justify-content: center;
  column-gap: 10px;
}
.dizziness__flex.type2 .dizziness__flex--left, .dizziness__flex.type2 .dizziness__flex--right {
  flex: initial;
}

.dizziness__flex.type3 {
  /*justify-content: center;*/
  justify-content: space-between;
  column-gap: 40px;
}
@media screen and (max-width: 1279px) {
  .dizziness__flex.type3 {
    max-width: 100%;
  }
}
.dizziness__flex.type3 .dizziness__flex--left {
  flex: initial;
}
.dizziness__flex.type3 .dizziness__flex--right {
  flex: 0 0 220px;
}

.qa-1 {
  max-width: 900px;
  margin: 0 auto 8px;
  border: 1px solid #d6dde3;
  background: #fff;
  border-radius: 3px;
}
.qa-1 summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  padding: 1em 2em 1em 3em;
  font: 500 22px/1.5 "M PLUS Rounded 1c", "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "Meiryo UI", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
  color: #1d1d1d;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .qa-1 summary {
    font-size: 20px;
  }
}
@media screen and (max-width: 479px) {
  .qa-1 summary {
    font-size: 18px;
  }
}
.qa-1 summary:before,
.qa-1 p:before {
  position: absolute;
  left: 1em;
  font-weight: 600;
  font-size: 1.3em;
}
.qa-1 summary::before {
  color: #102a75;
  content: "Q";
}
.qa-1 summary::after {
  transform: translateY(-25%) rotate(45deg);
  width: 7px;
  height: 7px;
  margin-left: 10px;
  border-bottom: 3px solid #333333b3;
  border-right: 3px solid #333333b3;
  content: '';
  transition: transform .5s;
}
.qa-1 p {
  position: relative;
  transform: translateY(-10px);
  opacity: 0;
  margin: 0;
  padding: .3em 3em 1.5em;
  font: 500 20px/1.7 "M PLUS Rounded 1c", "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "Meiryo UI", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
  color: #1d1d1d;
  transition: transform .5s, opacity .5s;
}
@media screen and (max-width: 767px) {
  .qa-1 p {
    font-size: 18px;
  }
}
@media screen and (max-width: 479px) {
  .qa-1 p {
    font-size: 16px;
  }
}
.qa-1 p::before {
  color: #102a75;
  line-height: 1.2;
  content: "A.";
}

.qa-1:first-of-type {
  margin-top: 40px;
}

.qa-1[open] summary::after {
  transform: rotate(225deg);
}

.qa-1[open] p {
  transform: none;
  opacity: 1;
}
