@charset "UTF-8";
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}
button:focus{
    outline:none;
}
a{
  transition:  0.15s ease-in-out;
  display: inline-block;
}
a:hover{
  text-decoration: none;
  opacity: 0.6;
}
img{
  max-width: 100%;
  vertical-align: top;
}
html {
 font-size: 14px;
}

body {
 font-family: "Helvetica Neue", "Helvetica", "Arial", "Noto Sans JP", "Hiragino Sans", "BIZ UDGothic", "Hiragino Kaku Gothic ProN", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
 background-color: #FFF;
 color: #333;
 font-size: 16px;
 line-height: 1.8;
}
@media (max-width:991px) {
.sp-none{
  display: none;
  }
}
@media (min-width:992px) {
 .pc-none{
   display: none;
 }
}
@media (min-width:992px) {
 .container {
  width: 1080px !important;
  padding: 0;
 }
}

dt {
 font-weight: normal;
}

sup,sub {
	height: 0;
	line-height: 1;
	vertical-align: baseline;
	_vertical-align: bottom;
	position: relative;
 font-weight: normal !important;
}
sup {
	top: -0.6ex;
}
sub {
	top: .5ex;
}


.mt-002px { margin-top: 2px !important; }
.mt-003px { margin-top: 3px !important; }
.mt-004px { margin-top: 4px !important; }
.mt-006px { margin-top: 6px !important; }
.mt-010px { margin-top: 10px !important; }
.mt-015px { margin-top: 15px !important; }
.mt-020px { margin-top: 20px !important; }
.mt-030px { margin-top: 30px !important; }
.mt-040px { margin-top: 40px !important; }
.mt-050px { margin-top: 50px !important; }
.mt-070px { margin-top: 70px !important; }
.mt-100px { margin-top: 100px !important; }
.mt-n001px { margin-top: -1px !important; }
.mb-004px { margin-bottom: 4px !important; }
.mb-006px { margin-bottom: 6px !important; }
.mb-008px { margin-bottom: 8px !important; }
.mb-015px { margin-bottom: 15px !important; }
.mb-020px { margin-bottom: 20px !important; }
.mb-025px { margin-bottom: 25px !important; }
.mb-030px { margin-bottom: 30px !important; }
.mb-040px { margin-bottom: 40px !important; }
.mb-045px { margin-bottom: 45px !important; }
.mb-050px { margin-bottom: 50px !important; }
.mb-070px { margin-bottom: 70px !important; }
.mx-n002px { margin-left: -2px !important; margin-right: -2px !important; }
.mx-n003px { margin-left: -3px !important; margin-right: -3px !important; }
.mx-n005px { margin-left: -5px !important; margin-right: -5px !important; }
.mx-n007px { margin-left: -7px !important; margin-right: -7px !important; }
.mx-n010px { margin-left: -10px !important; margin-right: -10px !important; }
.ta-c{text-align: center !important;}
.ta-l{text-align: left !important;}
.ta-r{text-align: right !important;}

@media (min-width:768px) {
 .mt-md-0 { margin-top: 0 !important; }
 .mt-md-002px { margin-top: 2px !important; }
 .mt-md-003px { margin-top: 3px !important; }
 .mt-md-004px { margin-top: 4px !important; }
 .mt-md-006px { margin-top: 6px !important; }
 .mt-md-010px { margin-top: 10px !important; }
 .mt-md-015px { margin-top: 15px !important; }
 .mt-md-020px { margin-top: 20px !important; }
 .mt-md-030px { margin-top: 30px !important; }
 .mt-md-035px { margin-top: 35px !important; }
 .mt-md-050px { margin-top: 50px !important; }
 .mt-md-070px { margin-top: 70px !important; }
 .mt-md-100px { margin-top: 100px !important; }
 .mb-md-004px { margin-bottom: 4px !important; }
 .mb-md-006px { margin-bottom: 6px !important; }
 .mb-md-008px { margin-bottom: 8px !important; }
 .mb-md-015px { margin-bottom: 15px !important; }
 .mb-md-020px { margin-bottom: 20px !important; }
 .mb-md-025px { margin-bottom: 25px !important; }
 .mb-md-030px { margin-bottom: 30px !important; }
 .mb-md-040px { margin-bottom: 40px !important; }
 .mb-md-045px { margin-bottom: 45px !important; }
 .mb-md-050px { margin-bottom: 50px !important; }
 .mb-md-070px { margin-bottom: 70px !important; }
 .mx-md-n002px { margin-left: -2px !important; margin-right: -2px !important; }
 .mx-md-n003px { margin-left: -3px !important; margin-right: -3px !important; }
 .mx-md-n005px { margin-left: -5px !important; margin-right: -5px !important; }
 .mx-md-n007px { margin-left: -7px !important; margin-right: -7px !important; }
 .mx-md-n010px { margin-left: -10px !important; margin-right: -10px !important; }
}

@media (min-width:992px) {
 .mt-lg-0 { margin-top: 0 !important; }
 .mt-lg-002px { margin-top: 2px !important; }
 .mt-lg-003px { margin-top: 3px !important; }
 .mt-lg-004px { margin-top: 4px !important; }
 .mt-lg-006px { margin-top: 6px !important; }
 .mt-lg-010px { margin-top: 10px !important; }
 .mt-lg-015px { margin-top: 15px !important; }
 .mt-lg-020px { margin-top: 20px !important; }
 .mt-lg-030px { margin-top: 30px !important; }
 .mt-lg-050px { margin-top: 50px !important; }
 .mt-lg-070px { margin-top: 70px !important; }
 .mb-lg-004px { margin-bottom: 4px !important; }
 .mb-lg-006px { margin-bottom: 6px !important; }
 .mb-lg-008px { margin-bottom: 8px !important; }
 .mb-lg-015px { margin-bottom: 15px !important; }
 .mb-lg-020px { margin-bottom: 20px !important; }
 .mb-lg-025px { margin-bottom: 25px !important; }
 .mb-lg-030px { margin-bottom: 30px !important; }
 .mb-lg-040px { margin-bottom: 40px !important; }
 .mb-lg-045px { margin-bottom: 45px !important; }
 .mb-lg-050px { margin-bottom: 50px !important; }
 .mb-lg-070px { margin-bottom: 70px !important; }
 .mx-lg-n002px { margin-left: -2px !important; margin-right: -2px !important; }
 .mx-lg-n003px { margin-left: -3px !important; margin-right: -3px !important; }
 .mx-lg-n005px { margin-left: -5px !important; margin-right: -5px !important; }
 .mx-lg-n007px { margin-left: -7px !important; margin-right: -7px !important; }
 .mx-lg-n010px { margin-left: -10px !important; margin-right: -10px !important; }
}

.p-015px { padding: 15px !important; }
.pt-010px { padding-top: 10px !important; }
.pt-020px { padding-top: 20px !important; }
.pt-030px { padding-top: 30px !important; }
.pb-015px { padding-bottom: 15px !important; }
.px-002px { padding-left: 2px !important; padding-right: 2px !important; }
.px-003px { padding-left: 3px !important; padding-right: 3px !important; }
.px-005px { padding-left: 5px !important; padding-right: 5px !important; }
.px-007px { padding-left: 7px !important; padding-right: 7px !important; }
.px-010px { padding-left: 10px !important; padding-right: 10px !important; }
.px-100px { padding-left: 100px !important; padding-right: 100px !important; }

@media (min-width:768px) {
 .p-md-015px { padding: 15px !important; }
 .pt-md-010px { padding-top: 10px !important; }
 .pb-md-015px { padding-bottom: 15px !important; }
 .px-md-002px { padding-left: 2px !important; padding-right: 2px !important; }
 .px-md-003px { padding-left: 3px !important; padding-right: 3px !important; }
 .px-md-005px { padding-left: 5px !important; padding-right: 5px !important; }
 .px-md-007px { padding-left: 7px !important; padding-right: 7px !important; }
 .px-md-010px { padding-left: 10px !important; padding-right: 10px !important; }
 .px-md-100px { padding-left: 100px !important; padding-right: 100px !important; }
}

@media (min-width:992px) {
 .p-lg-015px { padding: 15px !important; }
 .pt-lg-010px { padding-top: 10px !important; }
 .pb-lg-015px { padding-bottom: 15px !important; }
 .px-lg-002px { padding-left: 2px !important; padding-right: 2px !important; }
 .px-lg-003px { padding-left: 3px !important; padding-right: 3px !important; }
 .px-lg-005px { padding-left: 5px !important; padding-right: 5px !important; }
 .px-lg-007px { padding-left: 7px !important; padding-right: 7px !important; }
 .px-lg-010px { padding-left: 10px !important; padding-right: 10px !important; }
 .px-lg-100px { padding-left: 100px !important; padding-right: 100px !important; }
}
/**
 * Swiper 6.3.3
 * 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: October 9, 2020
 */
@font-face {
  font-family: swiper-icons;
  src: url("data:application/font-woff;charset=utf-8;base64, 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") 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;
  z-index: 1;
}

.swiper-container-vertical > .swiper-wrapper {
  flex-direction: column;
}

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

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

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

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

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

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

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

.swiper-container-autoheight, .swiper-container-autoheight .swiper-slide {
  height: auto;
}

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

.swiper-container-3d {
  perspective: 1200px;
}

.swiper-container-3d .swiper-cube-shadow, .swiper-container-3d .swiper-slide, .swiper-container-3d .swiper-slide-shadow-bottom, .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-wrapper {
  transform-style: preserve-3d;
}

.swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top {
  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: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-right {
  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: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

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

.swiper-container-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.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 {
  -ms-scroll-snap-type: x mandatory;
      scroll-snap-type: x mandatory;
}

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

:root {
  --swiper-navigation-size: 44px;
}

.swiper-button-next, .swiper-button-prev {
  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: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}

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

.swiper-button-next:after, .swiper-button-prev: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-next.swiper-button-white, .swiper-button-prev.swiper-button-white {
  --swiper-navigation-color: #ffffff;
}

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

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

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

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

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

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

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

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

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

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

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

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

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  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;
  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%;
  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%;
  transform: translateY(-50%);
  width: 8px;
}

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

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

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

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 0.2s transform, 0.2s left;
}

.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 0.2s transform, 0.2s right;
}

.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%;
  transform: scale(0);
  transform-origin: left top;
}

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  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-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-container-vertical > .swiper-pagination-progressbar {
  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;
}

.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: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

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

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

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  -webkit-animation: swiper-preloader-spin 1s infinite linear;
          animation: swiper-preloader-spin 1s infinite linear;
  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% {
    transform: rotate(360deg);
  }
}

@keyframes swiper-preloader-spin {
  100% {
    transform: rotate(360deg);
  }
}
.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 {
  transition-timing-function: ease-out;
}

.swiper-container-fade .swiper-slide {
  pointer-events: none;
  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;
  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 {
  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-next + .swiper-slide, .swiper-container-cube .swiper-slide-prev {
  pointer-events: auto;
  visibility: visible;
}

.swiper-container-cube .swiper-slide-shadow-bottom, .swiper-container-cube .swiper-slide-shadow-left, .swiper-container-cube .swiper-slide-shadow-right, .swiper-container-cube .swiper-slide-shadow-top {
  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;
  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-bottom, .swiper-container-flip .swiper-slide-shadow-left, .swiper-container-flip .swiper-slide-shadow-right, .swiper-container-flip .swiper-slide-shadow-top {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

/* ----- ここまで ----- */

#insurance {
 width: 100%;
 min-width: 320px;
 position: relative;
}


/*header*/
#ins_header {
 border-top: 4px solid #DF1F48;
 box-sizing: border-box;
}
@media (max-width:991px) {
#ins_header {
 position: fixed;
 width: 100%;
 z-index: 3;
 background: #fff;
}
}
#ins_header .container-lg {
 position: relative;
 padding-top: 10px;
 padding-bottom: 10px;
}
@media (min-width:992px) {
 #ins_header .container-lg {
  padding:15px 0;
 }
}

#ins_header a {
 display: block;
 width: 100%;
 height: 100%;
}

#ins_header h1 {
 display: block;
 width: 164px;
 height: 32px;
 background-image: url('../images/brand.png');
 background-repeat: no-repeat;
 background-size: contain;
 text-indent: 100%;
 white-space: nowrap;
 overflow: hidden;
 margin: 0
}
@media (min-width:992px) {
 #ins_header h1 {
  width: 240px;
  height: 47px;
 }
}
@media (max-width:991px) {
#ins_main{
  padding-top: 56px;
}
}
/*MV*/
#ins_fv {
 margin-bottom: 30px;
}
@media (min-width:992px) {
 #ins_fv {
  max-width: 1080px;
  margin: 0 auto;
}
}
#ins_fv_column {
  padding: 30px 30px 0;
}
@media (min-width:992px) {
 #ins_fv_column {
  padding: 30px 0 35px;
 }
}
#ins_fv_column h1 {
 font-size: 16px;
 font-weight: bold;
 margin-bottom: 0.25rem;
}
@media (min-width:992px) {
 #ins_fv_column h1 {
  font-size: 18px;
 }
}
@media (min-width:992px) {
 #ins_fv_column > .container {
  width: 920px !important;
  margin: 0 auto;
 }
}

/*カルーセル*/
.carousel__outer {
  padding: 50px 0;
  background: #F8F8F8;
}

@media screen and (max-width: 959px) {
  .carousel__outer {
    padding: 10px 0;
  }
 
}

.carousel {
  margin: auto;
}
@media screen and (min-width: 960px) {
  .carousel {
    max-width: 1280px;
  }
}

.carousel__slide {
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 960px) {
  .carousel__slide {
    /*padding-bottom: 30px;*/
  }
}
@media screen and (max-width: 959px) {
  .carousel__slide {
    /*padding-bottom: 60px;*/
  }
}

.carousel__slide-container {
  overflow: visible;
}
@media screen and (min-width: 960px) {
  .carousel__slide-container {
    /*height: 334px;*/
  }
}
@media screen and (max-width: 959px) {
  .carousel__slide-container {
    height: auto;
  }
}

.carousel__slide-nav {
  width: 48px;
  height: 48px;
  border-radius: 8px;
  box-shadow: 0 6px 10px rgba(0, 0, 0, 0.16);
  background-color: #fff;
  outline: none;
  top: calc(50% - 22px);
}
.carousel__slide-nav::after {
  background-repeat: no-repeat;
  content: "";
  width: 8px;
  height: 16px;
}
@media screen and (max-width: 959px) {
  .carousel__slide-nav {
    display: none!important;
  }
}

.carousel__slide-nav--prev {
  left: 40px;
}
.carousel__slide-nav--prev::after {
  background-image: url("/-/media/tfc/ts3web/file/common/img/card/icon-arrow-gray-02.svg");
}

.carousel__slide-nav--next {
  right: 40px;
}
.carousel__slide-nav--next::after {
  background-image: url("/-/media/tfc/ts3web/file/common/img/card/icon-arrow-gray-02.svg");
  transform: rotate(180deg);
}

.carousel__slide-item {
  border-radius: 4px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.16);
  background: #fff;
}
@media screen and (min-width: 960px) {
  .carousel__slide-item {
    width: 252px;
    height: auto;
    border-radius: 4px;
  }
  .carousel__slide-item.no-slide {
    display: inline-block;
    vertical-align: middle;
    margin-right: 14px;
    overflow: hidden;
  }
  .carousel.no-slide{
    max-width: 1080px;
  }
}
@media screen and (max-width: 959px) {
  .carousel__slide-item {
    width: 222px;
    height: auto;
  }
}

.carousel__card {
  overflow: hidden;
  cursor: pointer;
  display: block;
  color: #333;
  height: 100%;
}
.carousel__card:hover {
  opacity: 0.6;
  color: #333;  
}

.carousel__card-img-wrap {
  background-image: linear-gradient(to bottom, #fff, #ededed);
  position: relative;
  overflow: hidden;
  width: 100%;
}
@media screen and (min-width: 960px) {
  .carousel__card-img-wrap {
    height: 154px;
  }
}
@media screen and (max-width: 959px) {
  .carousel__card-img-wrap {
    height: 138px;
  }
}

.carousel__card-img {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.carousel__card-label {
  background-color: #f6f6f6;
  color: #666;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 11px;
  height: 24px;
}

.carousel__card-info {
  background: #fff;
}
@media screen and (min-width: 960px) {
  .carousel__card-info {
    padding: 24px;
  }
}
@media screen and (max-width: 959px) {
  .carousel__card-info {
    padding: 16px;
  }
}

.carousel__card-text-title {
  font-size: 12px;
  font-weight: 600;
  padding-bottom: 8px;
}

.carousel__card-text-note {
  font-size: 12px;
}
.carousel__slide-container > div{
  display: flex;
}
.carousel__slide-container > .carousel__slide-pagination-bullets {
  bottom: -40px;
  left: 50%;
  width: 100%;
  min-height: 8px;
  max-height: 32px;
  overflow: hidden;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  transform: translateX(-50%);
}
@media screen and (min-width: 960px) {
  .carousel__slide-container > .carousel__slide-pagination-bullets {
    bottom: -28px;
  }
}

.carousel__slide-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  border-radius: 100%;
  background-color: #888;
  opacity: 0.3;
  margin: 2px 5px;
  cursor: pointer;
}
.carousel__slide-pagination-bullet--active {
  background-color: #d60c18;
  opacity: 1;
}

@media screen and (min-width: 960px) {
  .crd {
    max-width: 1080px;
    margin: 0 auto;
  }
}

@media screen and (min-width: 960px) {
  .crd__heading {
    max-width: 1080px;
    margin: 0 auto;
    padding: 56px 40px 45px;
  }
}
@media screen and (max-width: 959px) {
  .crd__heading {
    padding: 43px 16px 37px;
  }
}

.crd__heading-text {
  font-weight: 600;
  color: #000;
  text-align: center;
}
@media screen and (min-width: 960px) {
  .crd__heading-text {
    font-size: 34px;
  }
}
@media screen and (max-width: 959px) {
  .crd__heading-text {
    font-size: 26px;
  }
}

.crd__heading-sub {
  text-align: center;
}
@media screen and (min-width: 960px) {
  .crd__heading-sub {
    font-size: 18px;
    padding-top: 36px;
  }
}
@media screen and (max-width: 959px) {
  .crd__heading-sub {
    font-size: 16px;
    padding-top: 25px;
  }
}

.crd__key-visual {
  box-shadow: rgba(0, 0, 0, 0.15) 0 2px 4px;
  background-color: #fff;
}
@media screen and (min-width: 960px) {
  .crd__key-visual {
    border-radius: 8px;
  }
}

@media screen and (min-width: 960px) {
  .crd__key-visual-content {
    max-width: 1080px;
    margin: 0 auto;
    padding: 40px 80px 80px;
    border-radius: 8px;
  }
}
@media screen and (max-width: 959px) {
  .crd__key-visual-content {
    background-color: #fff;
    padding: 16px 24px 56px;
  }
}

.crd__key-visual-img {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
@media screen and (min-width: 960px) {
  .crd__key-visual-img {
    border-radius: 8px 8px 0 0;
    overflow: hidden;
    margin: 0 auto;
    padding-top: 29.6296%;
  }
}
@media screen and (max-width: 959px) {
  .crd__key-visual-img {
    padding-top: 53.3333%;
  }
}

/* タブ */
.tab__links{
   width: 100%; 
   display: flex;
   justify-content: space-between;
}
.tab__links button{
    border: solid 1px #F97F9A;
    background: #fff;
    color: #F97F9A;
    width: 100%;
    box-sizing: border-box;
    text-align: left;
    padding: 10px 30px;
    line-height: 1.4;
    position: relative;
    font-weight: 600;
}
.tab__links button+button{
    border-left: none;
}

.tab__links button.is-active{
    background: #F97F9A;
    color: #fff;
}
.tab__links button.tab-mobility,
.tab__links button.tab-leisure,
.tab__links button.tab-kega,
.tab__links button.tab-kurashi{
    padding-left: 10px;
}
.tab__links button.tab-mobility::before,
.tab__links button.tab-leisure::before,
.tab__links button.tab-kega::before,
.tab__links button.tab-kurashi::before{
    content: '';
    display: inline-block;
    width: 40px;
    height: 40px;
    vertical-align: middle;
    margin-right: 10px;
}
.tab__links button.tab-mobility::before{
    background: url(/-/media/tfc/ts3web/file/hf_assets/www8.ts3card.com/insurance/ins_common/images/icon_mobility.png);
}
.tab__links button.tab-leisure::before{
    background: url(/-/media/tfc/ts3web/file/hf_assets/www8.ts3card.com/insurance/ins_common/images/icon_leisure.png);
}
.tab__links button.tab-kega::before{
    background: url(/-/media/tfc/ts3web/file/hf_assets/www8.ts3card.com/insurance/ins_common/images/icon_kega.png);
}
.tab__links button.tab-kurashi::before{
    background: url(/-/media/tfc/ts3web/file/hf_assets/www8.ts3card.com/insurance/ins_common/images/icon_kurashi.png);
}
.tab__content{
    margin-top: 40px;
}
.list-note-wrap{
    margin-top: 10px;
}
.list-note__item {
  list-style: none;
  margin-bottom: 4px;
  padding-left: 16px;
  font-size: 12px;
  font-weight: 300;
  position: relative;
}
.list-note__item::before {
  content: "※";
  width: 12px;
  height: 14px;
  position: absolute;
  left: 0;
  top: 0;
}

.column{
  margin-top: 30px;
  word-break: break-all;
}
.column1_2 {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}
.column1_2 .column__child{
    width: 48%;
    position: relative;
}

@media (max-width: 991px){
.column1_2 {
  display: block;
  padding: 0 20px;
}
.column1_2 .column__child{
  width: 100%;
  position: relative;
}
.column1_2 .column__child figure{
  text-align: center;
}
.column1_2 .column__child figure img{
  max-width: 100%;
}
.image{
  padding: 0 20px;
}
.image a{
  width: 100%;
}
}
.crd_hoken.column1_2 .column__child{
    border:solid 1px #DDDDDD;
    border-radius: 3px;
    padding: 20px 20px 70px 20px;
}
.crd_hoken.column1_2 .column__child .banner img{
  height: 93px;
}
.crd_hoken .column_title{
  background: #F97F9A;
  display: inline-block;
  color: #FFF;
  padding: 3px 10px;
  border-radius: 10px;
  margin-bottom: 0;
}
.crd_hoken .column_title.msa{
  background: #00A7DC;
}
.crd_hoken .column_subtitle{
  font-size: 18px;
  font-weight: 600;
}
.column_instep{
  color: #F97F9A;
}
.crd_hoken .column_subtxt{
  font-size: 14px;
}
.crd_useful .column_link{
  position: absolute;
  bottom: 0;
}
.crd_hoken .column_link{
  position: absolute;
  bottom: 20px;
}
.column_link a{
  color: #333;
}
.crd_hoken .column_link a{
  position: relative;
  padding-right: 20px;
  font-weight: 600;
}
.crd_hoken .column_link a::after{
  content: "";
  display: inline-block;
  position: absolute;
  top: calc(50% - 6px);
  right: 5px;
  width: 5px;
  height: 10px;
  background: url(/-/media/tfc/ts3web/file/hf_assets/www8.ts3card.com/insurance/ins_common/images/icon_arrow02.svg) no-repeat;
}

/* アコーディオン */
.sp_aco h3.title{
  color: #fff;
  background: #F97F9A;
  padding: 20px 25px;
  position: relative;
  font-weight: 600;
}
.sp_aco h3.title::after{
  position: absolute;
  content: "";
  background: url(/-/media/tfc/ts3web/file/hf_assets/www8.ts3card.com/insurance/ins_common/images/icon_arrow.svg) no-repeat;
  background-size: contain;
  transform: translateY(-50%) rotate(0deg);
  transition: transform 0.5s ease-out;
  width: 18px;
  height: 10px;
  top: 50%;
  right: 20px;
}
.sp_aco h3.title.open::after{
  transform: translateY(-50%) rotate(-180deg);
}
.sp_aco h3.title.tab-mobility,
.sp_aco h3.title.tab-leisure,
.sp_aco h3.title.tab-kega,
.sp_aco h3.title.tab-kurashi{
  padding: 10px 25px;
}
.sp_aco h3.title.tab-mobility::before,
.sp_aco h3.title.tab-leisure::before,
.sp_aco h3.title.tab-kega::before,
.sp_aco h3.title.tab-kurashi::before{
    content: '';
    display: inline-block;
    width: 40px;
    height: 40px;
    vertical-align: middle;
    margin-right: 10px;
}
.sp_aco h3.title.tab-mobility::before{
    background: url(/-/media/tfc/ts3web/file/hf_assets/www8.ts3card.com/insurance/ins_common/images/icon_mobility.png);
}
.sp_aco h3.title.tab-leisure::before{
    background: url(/-/media/tfc/ts3web/file/hf_assets/www8.ts3card.com/insurance/ins_common/images/icon_leisure.png);
}
.sp_aco h3.title.tab-kega::before{
    background: url(/-/media/tfc/ts3web/file/hf_assets/www8.ts3card.com/insurance/ins_common/images/icon_kega.png);
}
.sp_aco h3.title.tab-kurashi::before{
    background: url(/-/media/tfc/ts3web/file/hf_assets/www8.ts3card.com/insurance/ins_common/images/icon_kurashi.png);
}
.sp_aco .sp_aco_col1{
  padding: 10px 20px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
.sp_aco_col1 .list{
  font-size: 12px;
  margin-top: 10px;
  width: 48%;
  text-align: center;
  padding: 15px 5px;
  border: solid 1px #F97F9A;
  border-radius: 3px;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 75px;
  font-weight: 600;
}
.sp_aco_col1 .list.ribbon::before{
  position: absolute;
  content: "";
  background: url(/-/media/tfc/ts3web/file/hf_assets/www8.ts3card.com/insurance/ins_common/images/icon_ribbon.png) no-repeat;
  background-size: contain;
  width: 15px;
  height: 17px;
  top: 0;
  left: 6px;
}
.sp_aco_col2{
  padding: 0 20px;
  display: none;
}

.sp_aco_col2 .column__child {
  border: solid 1px #DDDDDD;
  border-radius: 3px;
  padding: 20px 20px 70px 20px;
  position: relative;

}
.sp_aco_col2 .column__child+.column__child{
  margin-top: 25px;
}


/*お役立ちコンテンツ*/
.crd_useful h3{
  font-size: 18px;
  font-weight: 600;
}
.crd_useful .column_link{
  position: static;
}
@media (max-width: 991px){

.heading-wrap{
  padding: 0 20px;
}
}

/*faq*/
.faq_outer a{
  color: #DF1F48;
}
.faq_outer dt{
  background: #FEE9EE;
  font-weight: 600;
}
.faq_outer dt,.faq_outer dd{
  padding: 20px;
}
.faq_outer dt::before,.faq_outer dd::before{
  content: "";
  width: 32px;
  height: 32px;
  display: block;
  float: left;
}
.faq_outer dt::after,.faq_outer dd::after{
  content: "";
  clear: both;
  display: block;
}
.faq_outer dt>span,
.faq_outer dd>span{
  display: block;
  float: right;
  width: calc(100% - 45px);
}

.faq_outer dt::before{
  background: url(/-/media/tfc/ts3web/file/hf_assets/www8.ts3card.com/insurance/ins_common/images/icon_faq01.png) no-repeat top left;
}
.faq_outer dd::before{
  background: url(/-/media/tfc/ts3web/file/hf_assets/www8.ts3card.com/insurance/ins_common/images/icon_faq02.png) no-repeat top left;
}
.crd_faq h3{
  font-weight: 600;
}
#crd_faq h3{
  font-size: 22px;
  font-weight: 600;
}
@media (max-width: 991px){
.crd_faq.container-lg{
  padding-right: 0;
  padding-left: 0;
}
}


/*menuボタン*/
#menu_btn {
 width: 32px;
 height: 32px;
 display: -ms-flexbox;
 display: flex;
 flex-wrap: wrap;
 -ms-flex-pack: center;
 justify-content: center;
 -ms-flex-align: center;
 align-items: center;
 position: absolute;
 z-index: 999;
 top: 3px;
 right: 15px;
 cursor: pointer;
 transition: background-color 0.15s ease-in-out;
}

#menu_btn .menubar-group {
 width: 32px;
 height: 32px;
 display: -ms-flexbox;
 display: flex;
 -ms-flex-direction: column !important;
 flex-direction: column !important;
 -ms-flex-pack: center;
 justify-content: center;
 -ms-flex-align: center;
 align-items: center;
}
#menu_btn .menubar-text {
  font-size: 8px;
  letter-spacing: -2px;
  text-align: center;
  color: #F97F9A;
}
#menu_btn .menubar-bar {
 display: block;
 width: 32px;
 height: 2px;
 background-color: #F97F9A;
}
#menu_btn .menubar-group::before {
 display: block;
 content: '';
 width: 32px;
 height: 2px;
 background-color: #F97F9A;
 margin-bottom: 8px;
}
#menu_btn .menubar-group::after {
 display: block;
 content: '';
 width: 32px;
 height: 2px;
 background-color: #F97F9A;
 margin-top: 8px;
}
.sidebar {
  width: 100%;
  position: fixed;
  right: -100%;
  z-index: 103;
  height: 100%;
  overflow: auto;
  padding-bottom: 74px;
}
.sidebar::after {
  content: "";
  position: fixed;
  right: -100%;
  height: 100%;
  width: 100%;
  background-color: #000;
  transition: opacity 0.5s ease-out;
  z-index: 102;
  opacity: 0;
}

.sidebar__inner {
  max-height: calc(100% - 64px);
  position: fixed;
  right: -310px;
  top: 56px;
  z-index: 104;
  background: #FFF;
  transition: right 0.5s ease-out;
  width: 310px;
  overflow: auto;
}

.sidebar.is-active {
  right: 0;
}
.sidebar.is-active .sidebar__inner {
  right: 0;
  top: 56px;
}
.sidebar.is-active::after {
  right: 0;
  opacity: 0.4;
  top: 56px;
}

.sidebar__bottom {
  margin-top: 40px;
  padding: 0 16px;
}

.sidebar__list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  list-style: none;
}

.sidebar__item {
  flex-basis: calc(50% - 16px);
  font-size: 14px;
}
.sidebar__item:nth-child(n+3) {
  margin-top: 14px;
}

.sidebar__link {
  text-decoration: none;
  color: #333;
}

.accordion__wrap {
  overflow: hidden;
  transition: height 0.5s ease-out;
}
@media screen and (min-width: 960px) {
  .accordion__wrap {
    padding-left: 80px;
    padding-right: 80px;
    padding-top: 4px;
  }
}
.accordion__wrap--no-marginBottom {
  margin-bottom: 0;
  padding-top: 4px;
}

.accordion__list {
  border-top: 1px solid #ddd;
}
.accordion__list--no-borderTop {
  border-top: none;
}

.accordion__sub-list {
  overflow: hidden;
  z-index: 10;
  padding-left: 32px;
  max-height: 0;
  transition: all 0.5s ease-out;
}
.accordion__sub-list--show {
  border-bottom: 1px solid #ddd;
}

.accordion__item {
  list-style: none;
  font-size: 16px;
  font-weight: 600;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
}

.accordion__sub-item {
  list-style: none;
  font-size: 16px;
  display: flex;
  align-items: center;
  font-weight: 300;
  border-bottom: 1px solid #ddd;
}
.accordion__sub-item:last-child {
  border-bottom: none;
}

.accordion__link {
  display: block;
  color: #333;
  position: relative;
  padding: 18px 0;
  border-bottom: 1px solid #ddd;
  font-weight: 600;
}
@media screen and (max-width: 959px) {
  .accordion__link {
    padding-left: 24px;
  }
}

.accordion__link-icon {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.accordion__link-icon::before {
  position: absolute;
  content: "";
  background: url("/-/media/tfc/ts3web/file/common/img/card/icon-arrow-gray-01.svg") no-repeat;
  background-size: contain;
  transform: translateY(-50%) rotate(-90deg);
  transition: transform 0.5s ease-out;
  width: 8px;
  height: 16px;
  top: 50%;
}
.accordion__link-icon-02{
  position: relative;
}
.accordion__link-icon-02::after {
  position: absolute;
  content: "";
  background: url("/-/media/tfc/ts3web/file/common/img/card/icon-arrow-gray-01.svg") no-repeat;
  background-size: contain;
  transform: translateY(-50%) rotate(180deg);
  transition: transform 0.5s ease-out;
  width: 8px;
  height: 16px;
  top: 50%;
  right: 23px;
}
@media screen and (min-width: 960px) {
  .accordion__link-icon::before {
    right: 4px;
  }
}
@media screen and (max-width: 959px) {
  .accordion__link-icon::before {
    right: 24px;
  }
}
.accordion__link-icon--is-expanded::before {
  transform: translateY(-50%) rotate(90deg);
}

.accordion__link-text {
  color: #333;
  text-decoration: none;
  position: relative;
  z-index: 10;
  pointer-events: none;
  padding-right: 40px;
  display: inline-block;
}
.accordion__link-text.external::after {
  content: "";
  background: url("/-/media/tfc/ts3web/file/common/img/components/link-external-gray.png") no-repeat;
  background-size: contain;
  display: inline-block;
  width: 14px;
  height: 12px;
  margin-left: 10px;
}
@media screen and (min-width: 960px) {
  .accordion__link-text:hover {
    text-decoration: underline;
  }
}

.accordion__sub-link {
  display: block;
  color: #333;
  text-decoration: none;
  padding: 18px 0;
  flex-grow: 1;
}
.accordion__sub-link.external::after {
  content: "";
  background: url("/-/media/tfc/ts3web/file/common/img/components/link-external-gray.png") no-repeat;
  background-size: contain;
  display: inline-block;
  width: 14px;
  height: 12px;
  margin-left: 10px;
}
@media screen and (min-width: 960px) {
  .accordion__sub-link:hover {
    text-decoration: underline;
  }
}

.accordion__expand {
  display: flex;
  justify-content: center;
  position: relative;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  margin: auto;
  overflow-anchor: none;
}
.accordion__expand:hover {
  text-decoration: underline;
}

.accordion__expand-text {
  position: relative;
  padding-right: 24px;
  font-size: 16px;
  color: #666;
  cursor: pointer;
}
.accordion__expand-text::before {
  position: absolute;
  content: "";
  background: url("/-/media/tfc/ts3web/file/common/img/card/icon-arrow-gray-01.svg") no-repeat;
  background-size: contain;
  transition: transform 0.5s ease-out;
  width: 8px;
  height: 16px;
  right: 0;
  top: 50%;
  transform: translateY(-50%) rotate(-90deg);
}
.accordion__expand-text--is-normal {
  display: block;
}
.accordion__expand-text--is-expanded {
  display: none;
}

.accordion__expand-checkbox {
  opacity: 0;
  display: block;
  position: absolute;
  top: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  cursor: pointer;
}
.accordion__expand-checkbox:checked ~ .accordion__expand-text::before {
  transform: translateY(-50%) rotate(90deg);
}
.accordion__expand-checkbox:checked ~ .accordion__expand-text--is-normal {
  display: none;
}
.accordion__expand-checkbox:checked ~ .accordion__expand-text--is-expanded {
  display: block;
}
.accordion--header-nav .accordion__link-text {
  color: #fff;
  display: flex;
  align-self: stretch;
  align-items: center;
  flex-grow: 1;
  padding: 0;
  pointer-events: auto;
}
@media screen and (min-width: 960px) {
  .accordion--sidebar .accordion__wrap {
    padding: 0;
  }
}
.accordion--sidebar .accordion__link {
  display: flex;
  padding: 0;
  height: 65px;
}
@media screen and (max-width: 1199px) {
  .accordion--sidebar .accordion__link {
    /* padding-left: 24px; */
    padding: 0;
  }
}
.accordion--sidebar .accordion__link-icon {
  position: relative;
  width: 60px;
  flex-shrink: 0;
  cursor: pointer;
}
@media screen and (min-width: 1200px) {
  .accordion--sidebar .accordion__link-icon::before {
    right: 4px;
  }
}
@media screen and (max-width: 1199px) {
  .accordion--sidebar .accordion__link-icon::before {
    right: 24px;
  }
}
.accordion--sidebar .accordion__link-text {
  display: flex;
  align-self: stretch;
  align-items: center;
  flex-grow: 1;
  padding: 0 0 0 24px;
  pointer-events: auto;
}
@media screen and (max-width: 991px) {
  .accordion--sidebar .accordion__link-text:hover {
    text-decoration: none;
    color: #333;
  }
}
@media screen and (max-width: 991px) {
  .accordion--sidebar .accordion__sub-link:hover {
    text-decoration: none;
    color: #333;
  }
}

/*footer*/
.ins_footer_column-outer{
    padding-top: 40px;
    margin-top: 110px;
    border-top: solid 1px #F97F9A;;
}
#ins_footer {
 background-color: #F97F9A;
 padding-bottom: 18px;
}

#footermenu {
 list-style: none;
 padding: 0;
 margin-bottom: 0px;
}
#footermenu li {
 display: block;
 width: 100%;
}
#footermenu a {
 display: block;
 width: 100%;
 color: #FFF;
 text-decoration: none;
 background-color: #F97F9A;
 box-shadow: 0px 7px 8px -5px rgba(211,107,130,1) inset;
 padding: 10px 15px;
 transition: background-color 0.15s ease-in-out;
 transition: border-top-color 0.15s ease-in-out;
 transition: border-bottom-color 0.15s ease-in-out;
}
#footermenu a:hover {
 background-color: #E53961;
}
.copyright_outer{
  padding-top: 18px;
  box-shadow: 0px 7px 8px -5px rgb(211 107 130) inset;
}
#ins_copyright {
 font-size: 10px;
 line-height: 1.3em;
 color: #FFF;
 margin-bottom: 0;
}

#ins_pagetop {
 display: block;
 width: 32px;
 height: 32px;
 background-color: #F97F9A;
 border-radius: 4px;
 position: fixed;
 bottom: 15px;
 right: 15px;
 z-index: 99;
 cursor: pointer;
 transition: background-color 0.15s ease-in-out;
}
#ins_pagetop:hover{
 background-color: #F9AFBA;
}
#ins_pagetop > .box {
 display: -ms-flexbox;
 display: flex;
 -ms-flex-pack: center;
 justify-content: center;
 -ms-flex-align: center;
 align-items: center;
 width: 100%;
 height: 100%;
 font-size: 24px;
 line-height: 1em;
 color: #FFF;
}
#ins_pagetop i {
 margin-bottom: 2px;
}

@media (min-width:992px) {
 #ins_footer {
  padding-top: 16px;
  padding-bottom: 16px;
 }
 #footermenu {
  display: -ms-flexbox !important;
  display: flex !important;
  -ms-flex-direction: row !important;
  flex-direction: row !important;
  -ms-flex-pack: center !important;
  justify-content: center !important;
  margin-bottom: 18px;
 }
 #footermenu li {
  display: block;
  width: auto;
 }
 #footermenu a {
  background: none !important;
  border-top: 0;
  border-bottom: 0;
  padding: 0;
  margin: 0 12px;
  transition: color 0.15s ease-in-out;
  box-shadow: none;
 }
 #footermenu a:hover {
  border-top: 0 !important;
  border-bottom: 0 !important;
  color: #FFBBBB !important;
 }
 .copyright_outer{
  padding-top: 0;
  box-shadow: none;
}
 #ins_copyright {
  text-align: center;
  margin-top: 25px;
 }
}

/*ボタンリンク*/
.button-links,
.button-links-text {
  list-style-type: none;
}
.button-links.is-center,
.button-links-text.is-center {
  display: flex;
  justify-content: center;
}

.button-links .link {
  margin: 0 auto 16px;
  display: flex;
  justify-content: center;
}
.button-links .link--no-margin {
  margin: 0 auto;
}

@media screen and (max-width: 959px) {
  .button-links--marginBottom {
    margin-bottom: 21px;
  }
}

.button-links-text .link__a {
  text-decoration: none;
  color: #333;
  width: 100%;
  height: 100%;
  display: flex;
  padding: 0 16px 0 0;
  align-items: center;
  position: relative;
}
.button-links-text .link__a::before {
  content: "";
  background: url("/-/media/tfc/ts3web/file/common/img/card/icon-arrow-gray-01.png") no-repeat;
  background-size: contain;
  width: 8px;
  height: 16px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: rotateY(180deg) translateY(-50%);
}
.button-links-text .link__a:hover {
  text-decoration: underline;
}

.button-links .link.external .link__a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 1em;
  transform: translateY(-50%);
  background-image: url("/-/media/tfc/ts3web/file/common/img/components/link-external-black.png");
  background-size: contain;
  width: 14px;
  height: 12px;
}

.button-links-text .link.external .link__a::after {
  content: "";
  background: url("/-/media/tfc/ts3web/file/common/img/components/link-external-black.png") no-repeat;
  background-size: 14px 12px;
  display: inline-block;
  width: auto;
  height: 12px;
  margin-left: 10px;
  padding-right: 14px;
}

/* stylelint-disable no-descending-specificity */
.button-links .link__a {
  text-decoration: none;
  color: #333;
  border: 1px solid #ccc;
  border-radius: 28px;
  padding: 13px 36px 13px 36px;
  font-size: 16px;
  display: flex;
  text-align: center;
  justify-content: center;
  position: relative;
  outline: none;
}
.button-links .link__a--small-padding {
  padding: 15px 15px 14px 15px;
}
.button-links .link__a:hover {
  opacity: 0.6;
}
@media screen and (min-width: 960px) {
  .button-links .link__a {
    max-width: 540px;
    min-width: 327px;
  }
}
@media screen and (max-width: 959px) {
  .button-links .link__a {
    max-width: 327px;
    width: 100%;
  }
}

@media screen and (min-width: 960px) {
  .column1_3 .button-links .link__a {
    width: 100%;
    min-width: 0;
  }
}

/* stylelint-enable no-descending-specificity */
.button-links-text .link {
  border-top: 1px solid #ddd;
  list-style: none;
}
.button-links-text .link:last-child {
  border-bottom: 1px solid #ddd;
}
@media screen and (min-width: 960px) {
  .button-links-text .link {
    height: 56px;
  }
}
@media screen and (max-width: 959px) {
  .button-links-text .link {
    padding: 16px 24px;
  }
}

@media screen and (max-width: 959px) {
  .sp-taC {
    text-align: center;
  }
  .carousel__slide-item{
    margin: 0 auto;
  }
}
  .taL {
    text-align: left;
  }

  @media screen and (min-width: 768px){
.display-sp {display: none; }
}
.ins_fv_info{
    padding: 30px 80px;
    background: #F8F8F8;
    margin: 0 0 30px;
}
.heading__h3{
    font-size: 22px;
    font-weight: 600;
    line-height: 1.5;
}
.heading__h4{
    font-size: 18px;
    font-weight: 600;
    line-height: 1.5;
}
.list-normal__item {
  list-style: none;
  margin-bottom: 4px;
  padding-left: 16px;
  font-size: 16px;
  font-weight: normal;
  position: relative;
}
.list-normal__item::before {
  content: "";
  background: #ddd;
  border-radius: 50%;
  width: 6px;
  height: 6px;
  position: absolute;
  top: calc(1.8em / 2 - 5px);
  left: 0;
  font-size: 1em;
}
.caution{
  color: #DF1F48;
  font-weight: 600;
  padding: 10px;
  border: solid 2px #DF1F48;
}

@media screen and (max-width: 959px) {
    .ins_fv_info {
        padding: 30px;
        margin: 30px 0;
    }
}

.table-area{
    overflow: auto;
    width: 100%;
}
.table thead th {
    text-align: center;
    font-weight: 600;
    background: #FEE9EE;
    vertical-align: middle;
}
.table-bordered thead td, .table-bordered thead th {
    border-bottom-width: 1px;
}

@media screen and (max-width: 959px) {
    .table {
        min-width: 1040px;
    }
}