@charset "UTF-8";
/**
 * base.css
 */
/* Bootstrap break point */
@media only screen and (max-width: 1199px) { /**/ } /* xl */
@media only screen and (max-width: 991px) { /**/ } /* lg */
@media only screen and (max-width: 767px) { /**/ } /* md */
@media only screen and (max-width: 565px) { /**/ } /* sm */
/* (mobile first) */
@media only screen and (min-width: 566px) { /**/ }
@media only screen and (min-width: 768px) { /**/ }
@media only screen and (min-width: 992px) { /**/ }
@media only screen and (min-width: 1200px) { /**/ }
/* V3.1  break point */
@media only screen and (max-width: 959px) { /**/ } /* tablet */
@media only screen and (max-width: 767px) { /**/ } /* smart phone */
/* (mobile first) */
@media only screen and (min-width: 768px) { /**/ }
@media only screen and (min-width: 960px) { /**/ }
/*--------------------------------------------------

 html, body

--------------------------------------------------*/
html {
  font-size: 62.5%;
  scroll-padding-top: 120px;
}

html.big {
  font-size: 75%;
}

body {
  position: relative;
  background: #fff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-text-size-adjust: 100%;
}

body.open {
  height: 100%;
  overflow: hidden;
}

ul, ol {
  padding-left: 1.1em;
}

.small, small {
  font-size: 90%;
  font-weight: 500;
}

.btn {
  font-weight: 500;
  font-size: 1.6rem;
}

h1, h2, h3, h4, h5, h6 {
  line-height: 1.7;
}

@media only screen and (max-width: 767px) {
  html {
    scroll-padding-top: 70px;
  }
}
/*--------------------------------------------------

 siteCommonStyle

--------------------------------------------------*/
/* selection */
::-moz-selection {
  background: #b2d7fe;
}

/*::selection {
	background: #b2d7fe;
}*/
/* a */
a {
  color: #457fcd;
  text-decoration: none;
  word-break: break-all;
  font-weight: 700;
}

.parts-tab-bodys a {
  color: #626262;
  text-decoration: underline;
  font-weight: normal;
}
/*----*/
.GoogleMapButton_LinkMapButton__WLx-f{
	color: #FFF !important;
}
a:hover {
  text-decoration: underline;
}

/* cap */
.caption,
.cap {
  color: #999999;
  font-size: 83.4%;
}

.cap {
  padding-top: 5px;
}

/* formText */
.formText {
  padding: 3px 2px;
  border: #ccc solid 1px;
}

/* img */
img {
  max-width: 100%;
  height: auto;
  vertical-align: top;
  -webkit-backface-visibility: hidden;
}

/* sp pc */
.sp,
.sp_cont {
  display: none !important;
}

@media only screen and (max-width: 767px) {
  .sp {
    display: block !important;
  }
  .sp_cont {
    display: inline-block !important;
  }
  .pc {
    display: none !important;
  }
  .anchor {
    padding-top: 60px;
    margin-top: -60px;
  }
}
/* fade */
@media only screen and (min-width: 768px) {
  .fade-area a:hover {
    opacity: 0.7;
  }
}
/* mintyo */
.mintyo {
  font-family: "Hannari", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "游明朝", YuMincho, serif;
}

/* noscript */
#noscript {
  position: relative;
  z-index: 5260;
  padding: 1em;
  border-bottom: #000000 solid 1px;
  background: #ffffff;
  color: #000000;
  text-align: center;
}

#noscript span {
  color: #ff0000;
}

/* clearfix */
.clearfix {
  zoom: 1;
}

.clearfix:after {
  display: block;
  clear: both;
  height: 0;
  content: "";
}

/*.shadow {
	text-shadow:0px 0px 1px #fff,0 0 5px #fff,0 0 10px #fff,0 0 15px #fff,0 0 20px #fff,0 0 30px #fff,0 0 40px #fff;
}*/
/*#spMenu.on:before {
	margin-top: 0;
	transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
}
#spMenu.on:after {
	margin-top: 0;
	transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
}*/
/*--------------------------------------------------

 wrapper

--------------------------------------------------*/
#wrapper {
  overflow: hidden;
  color: #626262;
  font-family: "Noto Sans JP", sans-serif, "ヒラギノ角ゴシック", "游ゴシック", "メイリオ", Meiryo;
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 1.7;
  text-align: left;
  letter-spacing: 0.01em;
  font-feature-settings: "palt";
}

/* 游ゴシック使用時、IE用フォント指定 */
_:-ms-lang(x)::-ms-backdrop, #wrapper {
  font-family: "Segoe UI", "BIZ UDGothic", "メイリオ", Meiryo, sans-serif;
  font-size: 1.5rem;
  letter-spacing: 0.05em;
  /*transform: rotate(0.001deg);*/
}

_:-ms-lang(x)::-ms-backdrop, img {
  /*transform: rotate(-0.001deg);*/
}

/*--------------------*/
.common-wrap {
  max-width: 1100px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 10px;
  padding-left: 10px;
  /* padding-top: 20px; */
}

@media only screen and (max-width: 767px) {
  #wrapper {
    font-size: 1.4rem;
    min-width: 320px;
    line-height: 1.92;
    letter-spacing: 0;
  }
  .common-wrap {
    margin-right: auto;
    margin-left: auto;
    padding: 0 10px;
  }
  ol, ul, dl {
    margin: 1rem 0;
  }
  .parts-tab-body > p + p:not(.parts-tab-btn) {
    margin-top: 1.5rem;
  }
  th > *:last-child,
  td > *:last-child {
    margin-bottom: 0;
  }
  table {
    margin-bottom: 2rem;
  }
  .mian-column li {
    margin-bottom: 0.5rem;
  }
  h2 + h3.parts-title-03 {
    margin-top: 20px;
  }
}
/*--------------------------------------------------

 header

--------------------------------------------------*/
#header {
  position: fixed;
  width: 100%;
  z-index: 10;
}

@media only screen and (min-width: 960px) {
  #header.type02 .common-wrap {
    max-width: 1100px;
    padding: 0;
    box-shadow: none;
  }
}
@media only screen and (max-width: 959px) {
  #header-include, #header2-include {
    height: 0;
  }
  #header {
    position: fixed;
    height: 75px;
    top: 0;
    left: 0;
    width: 100%;
    border-top-width: 3px;
    z-index: 100;
  }
  #header .common-wrap {
    max-width: none;
    padding: 0;
  }
}
@media only screen and (max-width: 767px) {
  #header {
    height: 60px;
    min-width: 320px;
  }
}
/* site-title
------------------------------------*/
#header .site-title {
  position: absolute;
  margin: 0;
  padding: 20px 0 0;
  height: 74px;
  z-index: 5;
}

#header .site-title a {
  display: block;
}

@media only screen and (max-width: 959px) {
  #header .site-title {
    padding: 15px 0 10px 0;
    line-height: 0;
  }
  #header .site-title img {
    width: auto;
    height: 42px;
  }
}
@media only screen and (max-width: 767px) {
  #header .site-title {
    padding: 12px 0;
    line-height: 0;
  }
  #header .site-title {
    height: 50px;
  }
  #header .site-title img {
    width: auto;
    height: 30px;
  }
}
/* gnav
------------------------------------*/
#gnav {
  float: right;
  position: relative;
}

#gnav td > *:last-child {
  padding: inherit;
  border-radius: inherit;
}

@media only screen and (min-width: 960px) {
  .type02 #gnav {
    width: 100%;
  }
  /* height 1pxの場合はgnavのborder-top */
  .type02 #gnav:before {
    position: absolute;
    top: 106px;
    left: 50%;
    display: block;
    content: "";
    width: 110vw;
    height: 62px;
    transform: translateX(-50%);
    -webkit-overflow-scrolling: touch;
    background-image: linear-gradient(0deg, #f8f8f8 0%, #ffffff 100%);
  }
}
@media only screen and (max-width: 959px) {
  #gnav {
    overflow: hidden;
    position: fixed;
    top: 0;
    /* right: -80%; */
    float: none;
    height: 100%;
    width: 0;
    background-color: #fff;
    z-index: 100;
    padding-top: 55px;
    /* transition: 0.4s; */
  }
  .open #gnav {
    right: 0;
    width: 85vw;
    max-width: 500px;
  }
}
/* size-search */
#gnav .size-search {
  float: left;
  width: 205px;
  padding: 10px 15px 0 0;
  line-height: 1.1;
}

@media only screen and (min-width: 960px) {
  .type02 #gnav .size-search {
    position: absolute;
    top: 20px;
    right: 0;
    float: none;
  }
  #gnav #gNavInfo {
    display: none;
  }
}
@media only screen and (max-width: 959px) {
  #gnav .size-search {
    float: none;
    width: auto;
    padding: 15px 0;
  }
}
/* size-search - fontsize */
#gnav #fontsize {
  margin-bottom: 10px;
  text-align: right;
  /*display:none;*/
}

#gnav #fontsize > * {
  display: inline-block;
  margin-left: 5px;
  vertical-align: bottom;
  text-decoration: none;
  line-height: 1.1;
}

#gnav #fontsize span {
  font-size: 15px;
}

#gnav #fontsize a {
  padding: 2px;
  color: #ec7272;
  border: #ec7272 solid 1px;
}

#gnav #fontsize a.on,
.big #gnav #fontsize .f-big {
  color: #fff;
  background-color: #ec7272;
}

#gnav #fontsize .f-mid {
  font-size: 16px;
}

.big #gnav #fontsize .f-mid {
  color: #ec7272;
  background-color: #fff;
}

#gnav #fontsize .f-big {
  font-size: 22px;
}

@media only screen and (max-width: 959px) {
  #gnav #fontsize {
    display: none;
  }
}
@media only screen and (max-width: 767px) {
  #union-side-include {
    display: none;
  }
}
/* size-search - search-area */
#gnav #search-area {
  position: relative;
  max-width: 190px;
}

#gnav #search-area form {
  position: relative;
  display: block;
  margin: 0;
}

#gnav #search-area table {
  margin: 0;
  border-collapse: collapse;
  width: 100%;
}

#gnav #search-area table th,
#gnav #search-area table td {
  margin: 0;
  padding: 0;
  /* width: 100%; */
}

.gsc-input-box {
  border: none;
}

.gsib_b {
  width: 0;
  height: 0;
}

#gnav #search-area .cse .gsc-search-button-v2,
#gnav #search-area .gsc-search-button-v2 {
  margin: 0;
  padding: 0;
  background-color: transparent;
  border: none;
  cursor: pointer;
  /*outline: none;*/
  appearance: none;
}

#gnav #search-area .gsc-search-button {
  width: 28px;
  height: 28px;
  background: url(../img/pc/page/icon_search_bl.svg) no-repeat center center/13px;
  cursor: pointer;
  position: absolute;
  right: 0px;
}

#gnav #search-area form input {
  display: block;
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  border: none !important;
  /* border-radius: 0!important; */
  /*outline: none!important;*/
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
}

#gnav #search-area form input[type=text] {
  display: block;
  width: 100%;
  height: 28px !important;
  padding: 5px 5px 5px 10px !important;
  font-size: 13px;
  border: #e1e1e1 solid 1px !important;
  line-height: 28px;
  border-radius: 4px;
}

#gnav #search-area ::-webkit-input-placeholder {
  color: #999;
  font-size: 13px;
}

#gnav #search-area :-moz-placeholder {
  color: #999;
  font-size: 13px;
}

#gnav #search-area ::-moz-placeholder {
  color: #999;
  font-size: 13px;
}

#gnav #search-area :-ms-input-placeholder {
  color: #999;
  font-size: 13px;
}

#gnav #search-area form input[type=submit] {
  /* position: absolute; */
  /* top: 0; */
  /* right: 0; */
  /* width: 30px; */
  /* height: 30px; */
  text-indent: -9999px;
  /* background: url(../img/pc/page/icon_search.png) no-repeat center center; */
  /* cursor: pointer; */
}

@media only screen and (max-width: 1199px) {
  #gnav #search-area {
    max-width: 90%;
    margin: 0 auto;
  }
  #gnav #search-area form input[type=text] {
    /* border-color: transparent; */
  }
}
input.search-box-search-button {
  background-image: url(../img/pc/page/icon_search_bl.svg);
  background-color: transparent !important;
  text-indent: -9999px;
  border: none !important;
  background-repeat: no-repeat;
  background-size: 18px 18px;
  background-position: center;
  min-width: 30px !important;
}

div.search-box-clear-button {
  display: none !important;
}

/* navs */
#gnav .navs {
  float: right;
  width: 540px;
  padding: 0;
}

#gnav .navs ul {
  padding: 0;
  margin: 0;
}

#gnav .navs li {
  padding: 0;
  text-align: center;
  list-style: none;
  border-left: #dcdcdc solid 1px;
}

#gnav .navs li:nth-last-of-type(2) {
  border-right: #dcdcdc solid 1px;
}

#gnav .navs li a {
  display: block;
  padding-bottom: 5px;
  color: #ec7272;
  font-size: 15px;
  text-decoration: none;
  position: relative;
}

#gnav .navs li .icon {
  display: block;
  margin: 8px 0;
}

#gnav .navs li .icon img {
  width: auto;
  height: 24px;
}

#gnav .navs li .txt {
  display: table;
  width: 100%;
  height: 1.6em;
  line-height: 1.2;
  font-size: 13px;
  font-weight: bold;
  /*letter-spacing: -.03em;*/
}

#gnav .navs li .txt span {
  display: table-cell;
  vertical-align: middle;
}

@media only screen and (min-width: 960px) {
  .type02 #gnav .navs {
    float: none;
    width: auto;
  }
  /* 下線リンクmotionn　中央から左右 */
  #gnav .navs li.col-xl > a:before {
    position: absolute;
    display: bloxk;
    left: 100%;
    right: 100%;
    bottom: 0;
    content: "";
    height: 2px;
    background-color: #ec7272;
    transition: left 0.3s ease, right 0.3s ease;
  }
  #gnav .navs li.col-xl > a:hover::before {
    left: 20%;
    right: 20%;
  }
  .bOutline #gnav .navs li#gNavOutline > a:after,
  .bBenefit #gnav .navs li#gNavBenefit > a:after,
  .bHealth #gnav .navs li#gNavHealth > a:after,
  .bCheckup #gnav .navs li#gNavCheckup > a:after,
  .bApplication #gnav .navs li#gNavApplication > a:after,
  .bForm #gnav .navs li#gNavForm > a:after,
  .bQuestion #gnav .navs li#gNavQuestion > a:after {
    position: absolute;
    bottom: 0px;
    left: 0;
    content: "";
    width: 60%;
    margin-left: 20%;
    height: 2px;
    background-color: #ec7272;
    border-radius: 10px;
  }
}
@media only screen and (max-width: 959px) {
  #gnav .navs {
    float: none;
    width: auto;
    border-top: #dcdcdc solid 1px;
  }
  #gnav .navs li,
  #gnav .navs li:last-child {
    border: none;
    border-bottom: #dcdcdc solid 1px;
  }
  #gnav .navs li a {
    display: table;
    width: 100%;
    padding: 15px 10px;
    color: #444;
  }
  #gnav .navs li .icon,
  #gnav .navs li .txt {
    display: table-cell;
    margin: 0;
    vertical-align: middle;
  }
  #gnav .navs li .icon img {
    max-width: none;
  }
  #gnav .navs li .txt span {
    display: block;
    text-align: left;
    padding-left: 10px;
  }
  #gnav .navs li .txt span br {
    display: none;
  }
}
/* inSubMenu
------------------------------------*/
/* overlay */
body {
  position: relative;
}

body:after {
  width: 100%;
  height: 100%;
  position: absolute;
  background-color: rgba(0, 0, 0, 0.4);
  content: "";
  left: 0;
  top: 0;
  z-index: -1;
  opacity: 0;
}

body.nav_overlay:after {
  opacity: 1;
  z-index: 50;
}

/* inSubMenu */
#gnav .inSubBtn {
  position: static;
}

.type02 #gnav .navs {
  position: relative;
  height: 72px;
  /*letter-spacing: 0;*/
  top: 98px;
  /* margin-top: 115px; */
}

#gnav div.inSubMenu {
  display: none;
}

#gnav .nav_open div.inSubMenu {
  display: block;
}

#gnav .inSubMenu .inSubMenuTtl {
  padding: 10px 0;
  color: #444;
  font-size: 20px;
  font-weight: bold;
  width: 85vw;
  max-width: 1050px;
  margin: auto;
}

#gnav .inSubMenu .inSubMenuTtl > a {
  display: block;
  box-shadow: none;
  border: none;
  background-color: #ec7272;
  margin-left: 4px;
  color: #fff;
  width: 40%;
  padding: 10px;
}

#gnav .inSubMenu .inSubMenuTtl > a:before {
  position: absolute;
  top: 50%;
  right: 10px;
  display: block;
  content: "";
  width: 8px;
  height: 8px;
  margin-top: -5px;
  border-top: #fff solid 2px;
  border-right: #fff solid 2px;
  transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
}

#gnav .inSubMenu ul {
  display: flex;
  flex-wrap: wrap;
  /* border-top: #dcdcdc solid 1px; */
  width: 85vw;
  max-width: 1050px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 20px;
}

#gnav .inSubMenu li {
  display: flex;
  align-items: center;
}

#gnav .inSubMenu li,
#gnav .inSubMenu li:last-child {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: none;
  /* border-bottom: #dcdcdc solid 1px; */
  /* border-right: #dcdcdc solid 1px; */
  background-color: #fff;
  width: 24%;
  margin: 4px;
}

#gnav .inSubMenu li a {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  display: flex;
  width: 100%;
  padding: 15px 30px 15px 15px;
  text-align: left;
  line-height: 1.3;
  /* border-radius: 10px; */
  font-weight: 700;
}

#gnav .inSubMenu li a small {
  margin-left: 20px;
  font-weight: 700;
}

#gnav .inSubMenu li a:before {
  position: absolute;
  top: 50%;
  right: 10px;
  display: block;
  content: "";
  width: 8px;
  height: 8px;
  margin-top: -5px;
  border-top: #ec7272 solid 2px;
  border-right: #ec7272 solid 2px;
  transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
}

@media only screen and (max-width: 959px) {
  #gnav .inSubBtn {
    position: static;
  }
  #gnav .inSubBtn > a {
    position: relative;
  }
  #gnav .inSubBtn > a:before {
    position: absolute;
    top: 50%;
    right: 15px;
    display: block;
    content: "";
    width: 8px;
    height: 8px;
    margin-top: -5px;
    border-bottom: #ec7272 solid 2px;
    border-right: #ec7272 solid 2px;
    transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
  }
  #gnav .inSubBtn a.on:before {
    margin-top: -3px;
    transform: rotate(-135deg);
    -ms-transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg);
    -moz-transform: rotate(-135deg);
  }
  #gnav .inSubMenu {
    position: static;
    width: auto;
    height: auto;
    padding: 5px 10px;
    background-color: #ddd;
  }
  #gnav .inSubMenu:before {
    display: none;
  }
  #gnav .inSubMenu .inSubMenuTtl {
    padding: 8px 5px;
    font-size: 14px;
    width: auto;
    margin: 0;
    text-align: left;
  }
  #gnav .inSubMenu ul {
    display: flex;
    border-top: none;
    width: auto;
    margin: 0;
  }
  #gnav .inSubMenu li {
    display: block;
  }
  #gnav .inSubMenu li,
  #gnav .inSubMenu li:last-child {
    width: 100%;
    border: none;
    margin: 1px 5px;
  }
  #gnav .inSubMenu li + li {
    border-top: #dcdcdc solid 1px !important;
  }
  #gnav .inSubMenu li a {
    /* width: 100%; */
    /* padding: 10px 20px; */
    font-size: 12px;
    color: #444;
  }
  #gnav .inSubMenu .inSubMenuTtl > a {
    width: 100%;
    text-align: left;
    margin: auto;
  }
}
@media (min-width: 960px) {
  #gnav .inSubMenu {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    position: absolute;
    display: none;
    background: #ddd;
    top: 74px;
    text-align: left;
    /*width: 100%;
    left: 0;*/
    width: 100vw;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    padding: 20px 0;
    min-height: 400px;
  }
  .col-xl {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
  }
}
/* spMenu
------------------------------------*/
#spMenu {
  position: absolute;
  top: 0;
  right: 5px;
  display: none;
  width: 55px;
  height: 100%;
  cursor: pointer;
  z-index: 15;
}

#spMenu span,
#spMenu:before,
#spMenu:after {
  position: absolute;
  top: 38%;
  left: 50%;
  display: block;
  content: "";
  width: 32px;
  height: 2px;
  margin-left: -15px;
  background-color: #ec7272;
}

#spMenu span {
  margin-top: -2px;
  transition: 0.3s;
  -webkit-transition: 0.3s;
}

#spMenu:before {
  margin-top: -11px;
}

#spMenu:after {
  margin-top: 7px;
}

#spMenu-text {
  position: absolute;
  right: 16px;
  top: 60%;
  display: none;
  font-size: 10px;
  font-weight: 700;
  z-index: 5;
}

@media only screen and (max-width: 959px) {
  #spMenu, #spMenu-text {
    display: block;
  }
}
@media only screen and (max-width: 767px) {
  #spMenu, #spMenu-text {
    display: block;
  }
}
/* sp-close
------------------------------------*/
#sp-close, #spClose-text {
  display: none;
}

@media only screen and (max-width: 959px) {
  .type02 #gnav .navs {
    margin-top: 20px;
    position: absolute;
    overflow-y: auto;
    height: calc(100vh - 180px);
  }
  .type02 #gnav .navs > ul {
    padding-bottom: 80px;
  }
  #sp-close {
    position: absolute;
    top: 0;
    right: -70px;
    width: 55px;
    height: 100%;
    display: block;
    cursor: pointer;
    /*transition: 0.4s;*/
    z-index: 95;
  }
  .open #sp-close {
    right: 5px;
    z-index: 110;
  }
  .open #spClose-text {
    right: 16px;
    z-index: 105;
  }
  #sp-close span,
  #sp-close:before,
  #sp-close:after {
    position: absolute;
    top: 38%;
    left: 50%;
    display: block;
    content: "";
    width: 32px;
    height: 2px;
    margin-left: -15px;
    background-color: #ec7272;
  }
  #sp-close span {
    margin-top: -2px;
    /*transition: 0.3s;
    -webkit-transition: 0.3s;*/
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  #sp-close:before {
    margin-top: -2px;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  #sp-close:after {
    margin-top: 7px;
    display: none;
  }
  #spClose-text {
    position: absolute;
    right: -80px;
    top: 60%;
    display: block;
    font-size: 10px;
    font-weight: 700;
    z-index: 5;
  }
}
#spMenu-text,
#spClose-text {
  font-family: -apple-system, BlinkMacSystemFont, Arial, "sans-serif";
  color: #222;
}

/* overlay
------------------------------------*/
#overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: none;
  background-color: rgba(0, 0, 0, 0.7);
  z-index: 90;
}

/* overlay
------------------------------------*/
#overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: none;
  background-color: rgba(0, 0, 0, 0.7);
  z-index: 90;
}

/*--------------------------------------------------

 container

--------------------------------------------------*/
#container {
  margin: 30px 0;
  padding-top: 120px;
}

.main-columns {
  padding-top: 20px;
}

@media only screen and (max-width: 959px) {
  #container {
    padding: 70px 5px 0 5px;
  }
}
@media only screen and (max-width: 767px) {
  #container {
    padding: 55px 5px 0 5px;
    margin-bottom: 0;
    background-color: #fff;
  }
  .main-columns {
    padding-top: 0;
    margin-bottom: 40px;
  }
}
.main-column {
  margin-bottom: 100px;
}

/* side-area
------------------------------------*/
.side-area {
  padding-left: 20px;
}

.side-area .widget-box .ttl {
  display: block;
  position: relative;
  border-bottom: 2px solid #EDEDED;
  color: #575757;
  font-size: 1.6rem;
  transition: all 0.3s;
  font-weight: 700;
}

.side-area .widget-box .ttl:before {
  /*font-family: "icomoon";
  content: "\e9bb";
  color: #fff;
  margin-right: 5px;
  font-weight: 500;*/
}

.side-area .widget-box .ttl a {
  color: #fff;
  text-decoration: none;
}

.side-area .widget-box .ttl > * {
  display: inline-block;
  /* vertical-align: middle; */
}

.side-area .widget-box .ttl.icon > *:first-child {
  width: 42px;
}

.side-area .widget-box .ttl.icon {
  padding: 10px 10px 10px 20px;
}

.side-area.bg-none {
  background: transparent;
}

@media only screen and (max-width: 767px) {
  .side-area {
    display: block;
    padding-left: 0;
    margin-top: 50px;
  }
  .side-area ul.parts-widget-list01 {
    display: flex;
    flex-wrap: wrap;
    padding: 20px 10px;
  }
  .side-area ul.parts-widget-list01 li {
    flex-basis: 33%;
  }
  .side-area ul.parts-widget-list01 li a:before {
    position: absolute;
    top: 2rem;
    left: 0;
    display: block;
    content: "";
    width: 5px;
    height: 5px;
    border-top: #aaa solid 1px;
    border-right: #aaa solid 1px;
    transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
  }
  .side-area ul.parts-widget-list01 li a small {
    margin-left: 0;
  }
  .side-area .widget-box .ttl {
    display: block;
    padding: 10px 0;
    text-align: center;
  }
  .side-area .widget-box .ttl > * {
    display: inline-block;
    font-size: 15px;
  }
}
.side-secure {
  margin-top: 25px;
  text-align: center;
}

@media only screen and (max-width: 767px) {
  .side-secure {
    display: none;
  }
}
/*--------------------------------------------------

 font-size

--------------------------------------------------*/
.f15 {
  font-size: 1.5rem;
}

.f14 {
  font-size: 1.4rem;
}

/*--------------------------------------------------

 footer

--------------------------------------------------*/
#footer {
  position: relative;
  border-top: #FDE8E7 solid 1px;
  margin-top: 100px;
}

.finfo {
  display: flex;
  justify-content: center;
  font-size: 1.3rem;
  padding: 30px 0;
}

@media screen and (max-width: 767px) {
  .finfo {
    display: block;
    padding: 15px 0;
  }
}
.finfo > div {
  margin: 0 15px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .finfo > div {
    margin: 10px 0;
    text-align: left;
  }
}
@media screen and (max-width: 767px) {
  .finfo .fname {
    font-weight: bold;
  }
}
.finfo .faddress {
  display: flex;
}

.finfo .faddress dt {
  font-weight: normal;
  margin-right: 5px;
}

#footer .fsecur {
  display: none;
}

#footer .fnav {
  border-top: #FDE8E7 solid 1px;
  background-color: #FFF5F4;
  padding: 15px 0;
}

#footer .fnav ul {
  margin-bottom: 0;
  padding-left: 0;
  display: flex;
  justify-content: center;
  list-style: none;
}

@media screen and (max-width: 767px) {
  #footer .fnav ul {
    width: 60%;
    flex-wrap: wrap;
    justify-content: flex-start;
  }
}
#footer .fnav li {
  margin: 0 15px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  #footer .fnav li {
    margin: 0 10px;
  }
}
#footer .fnav li a {
  display: block;
  color: #535353;
  font-size: 1.3rem;
  text-decoration: none;
  font-weight: normal;
}

#footer .flogo {
  margin: 40px auto;
  text-align: center;
  line-height: 0;
}

#footer #copyright {
  padding: 10px 0;
  font-size: 13px;
  color: #fff;
  text-align: center;
  background-color: #EF857E;
}

#pagetop {
  position: fixed;
  bottom: -120px;
  right: 0;
  z-index: 80;
  transition: 0.3s;
}

#pagetop.up {
  bottom: 0;
}

#pagetop.up.stop {
  position: fixed;
  bottom: 20px;
  /* top: 100px; */
}

/*#pagetop > div {
	position: relative;
	width: 1100px;
	margin: 0 auto;
	padding: 20px 10px;
}*/
#pagetop a {
  position: relative;
  display: block;
  width: 180px;
  height: 100px;
  margin: 15px;
  background: url(../img/pc/page/pagetop.png) no-repeat center center;
  background-size: contain;
}

@media only screen and (max-width: 767px) {
  #pagetop.up.stop {
    top: inherit;
    position: fixed;
  }
  #pagetop a {
    width: 130px;
    height: 70px;
  }
}
/*--マージン確保--*/
p + div,
p + table {
  margin-top: 2rem;
}

/*--Print--*/
@media print {
  #header-include, #header2-include, #header {
    height: 90px;
  }
  #header .site-title {
    /*width: 340px;
    padding-bottom: 20px;*/
  }
  #gnav,
  #spMenu,
  #spMenu span,
  #spMenu:before,
  #spMenu:after,
  #switch_css,
  #pagetop {
    display: none;
  }
  #container:after {
    content: "";
    display: block;
    height: 30px;
  }
}
/*--------------------------------------------------

index card

--------------------------------------------------*/
.index-cards .row > div {
  margin: 10px;
  flex-basis: calc((100% - 62px) / 3);
  max-width: calc((100% - 62px) / 3);
  flex-grow: 1;
  flex-shrink: 0;
  border: none;
  box-shadow: 0 1px 8px rgba(0, 0, 0, 0.1);
}

@media only screen and (max-width: 565px) {
  .index-cards .row > div {
    margin: 10px 20px;
    flex-basis: calc(100% - 40px);
    max-width: calc(100% - 40px);
  }
}
.index-cards .row > div.streched:hover {
  box-shadow: 0 1px 12px rgba(102, 102, 255, 0.5);
}

.stretched-link::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: auto;
  content: "";
  background-color: rgba(0, 0, 0, 0);
}

.streched .text-link {
  position: relative;
  z-index: 2;
}

/* 退職後の健康管理
--------------------------------------------------*/
.parts-table-02.retirement {
  border-top: 4px solid #c8e3ff;
  border-left: none;
  border-bottom: 4px solid #c8e3ff;
}

.parts-table-02.retirement tr th, .parts-table-02.retirement tr td {
  background-color: #fff;
  border: none;
}

.parts-table-02.retirement tr:nth-child(even) th, .parts-table-02.retirement tr:nth-child(even) td {
  background-color: #eff7ff;
}

.parts-table-02.retirement th img {
  max-width: 100px;
  height: auto;
}

.post_retirement_wrap {
  display: flex;
}

.post_retirement_wrap p img {
  max-width: 200px;
  height: auto;
  margin: 0 0 0 2em;
}

.post_retirement_wrap.reverse {
  flex-direction: row-reverse;
}

.post_retirement_wrap.reverse p img {
  max-width: 200px;
  height: auto;
  margin: 0 4em 0 0;
}

.parts-table-02.retirement02 thead th {
  background-color: #4a97bb;
  color: #fff;
  text-align: center;
}

@media only screen and (max-width: 768px) {
  .post_retirement_wrap, .post_retirement_wrap.reverse {
    flex-direction: column;
  }
  .post_retirement_wrap p:has(img) {
    margin: 1em auto;
  }
  .post_retirement_wrap p img, .post_retirement_wrap.reverse p img {
    margin: 0;
  }
}
.index-cards.retirement_wrap02 .row > div {
  margin: 10px;
  flex-basis: calc((100% - 40px) / 2);
  max-width: calc((100% - 40px) / 2);
}

@media only screen and (max-width: 565px) {
  .index-cards.retirement_wrap02 .row > div {
    margin: 10px 20px;
    flex-basis: calc(100% - 40px);
    max-width: calc(100% - 40px);
  }
}
.index-cards.retirement_wrap02 .card-title {
  display: block;
  padding: 10px 14px;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 700;
  text-decoration: none;
  border: #4a97bb solid 1px;
  background-color: #4a97bb;
}

.index-cards.retirement_wrap02 .row > div {
  border: #4a97bb solid 2px;
}

.index-cards.retirement_wrap02 .card-body {
  position: relative;
  overflow: hidden;
  margin: 0 20px;
}

.index-cards.retirement_wrap02 .card-body .list-group {
  margin-top: 1em;
  margin-bottom: 0.5em;
}

.index-cards.retirement_wrap02 .card-body img {
  border-radius: 50%;
}

/* ダークモード用色指定
--------------------------------------------------*/
#Search-btn-Area .parts-tab-body {
  background-color: #f5f5f5;
}

#Search-btn-Area .parts-box-btns .row > div {
  background-color: #fff;
}

/*--News title--*/
.newsList li a,
.news-topics .index-btn a {
  color: #535353;
}

.newsList li {
  border-bottom: #dfdddd dotted 1px;
}

/*--------------------------------------------------

 ly_header

--------------------------------------------------*/
.ly_header {
  position: relative;
  z-index: 11;
  height: 120px;
  background: url(../img/pc/navi/pc-header-material.png) center top no-repeat;
}

@media screen and (max-width: 767px) {
  .ly_header {
    background: url(../img/pc/navi/sp-header-material.png) center top no-repeat #fff;
    background-size: 100%;
    height: 70px;
  }
}
.ly_header_inner {
  position: relative;
  max-width: 1100px;
  margin-right: auto;
  margin-left: auto;
  z-index: 11;
}

.bl_logo {
  position: absolute;
  margin: 0 auto;
  left: 0;
  right: 0;
  width: 280px;
  z-index: 10;
}

@media screen and (max-width: 767px) {
  .bl_logo {
    width: 140px;
  }
}
.bl_logo a {
  display: flex;
  align-items: center;
  flex-direction: column;
  width: 280px;
  height: 120px;
  padding: 10px;
}

@media screen and (max-width: 767px) {
  .bl_logo a {
    width: 140px;
    height: 60px;
  }
}
.bl_logo .bl_logo_img {
  width: 50px;
  padding-bottom: 10px;
}

@media screen and (max-width: 767px) {
  .bl_logo .bl_logo_img {
    width: 38px;
    padding-bottom: 5px;
  }
}
.bl_logo .bl_logo_ttl {
  width: 220px;
}

@media screen and (max-width: 767px) {
  .bl_logo .bl_logo_ttl {
    width: 150px;
  }
}
.bl_gNav {
  position: relative;
}

.bl_gNavList {
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, 1fr) 1.3fr 3fr 1fr 1.6fr 1fr;
  grid-template-rows: 1fr;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
}

@media screen and (max-width: 949px) {
  .bl_gNavList {
    display: none;
  }
}
.bl_gNavList .bl_gNavListItem {
  list-style: none;
  margin: 0;
  height: 120px;
}

.bl_gNavList .bl_gNavListItem.bl_gNavListItem__home {
  grid-area: 1/1/2/2;
}

.bl_gNavList .bl_gNavListItem.bl_gNavListItem__home .bl_gNavListItem_ttl::before {
  opacity: 1;
  background: url(../img/pc/navi/home.svg) center center no-repeat;
}

.bl_gNavList .bl_gNavListItem.bl_gNavListItem__benefit {
  grid-area: 1/2/2/3;
}

.bl_gNavList .bl_gNavListItem.bl_gNavListItem__benefit .bl_gNavListItem_ttl::before {
  background: url(../img/pc/navi/hand-heart.svg) center center no-repeat;
}

.bl_gNavList .bl_gNavListItem.bl_gNavListItem__application {
  grid-area: 1/3/2/4;
}

.bl_gNavList .bl_gNavListItem.bl_gNavListItem__application .bl_gNavListItem_ttl::before {
  background: url(../img/pc/navi/man.svg) center center no-repeat;
}

.bl_gNavList .bl_gNavListItem.bl_gNavListItem__health {
  grid-area: 1/5/2/6;
}

.bl_gNavList .bl_gNavListItem.bl_gNavListItem__health .bl_gNavListItem_ttl::before {
  background: url(../img/pc/navi/walk.svg) center center no-repeat;
}

.bl_gNavList .bl_gNavListItem.bl_gNavListItem__resort {
  grid-area: 1/6/2/7;
}

.bl_gNavList .bl_gNavListItem.bl_gNavListItem__resort .bl_gNavListItem_ttl::before {
  background: url(../img/pc/navi/building.svg) center center no-repeat;
}

.bl_gNavList .bl_gNavListItem.bl_gNavListItem__outline {
  grid-area: 1/7/2/8;
}

.bl_gNavList .bl_gNavListItem.bl_gNavListItem__outline .bl_gNavListItem_ttl::before {
  background: url(../img/pc/navi/alternating-arrows.svg) center center no-repeat;
}

.bl_gNavList .bl_gNavListItem_ttl {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  flex-wrap: nowrap;
  height: 100%;
  padding: 15px 5px;
  font-size: 12px;
  color: #454545;
  font-weight: normal;
  transition: all 0.3s;
}

.bl_gNavList .bl_gNavListItem_ttl:hover {
  text-decoration: none;
  color: #F99B94;
}

.bl_gNavList .bl_gNavListItem_ttl::before {
  content: "";
  display: block;
  width: 25px;
  height: 25px;
  margin-bottom: 5px;
  opacity: 0.7;
}

.bl_gNav_menuBtn {
  display: none;
}

@media screen and (max-width: 949px) {
  .bl_gNav_menuBtn {
    display: block;
    position: absolute;
    right: 14px;
    top: 32px;
    width: 40px;
    height: 32px;
    cursor: pointer;
    display: inline-block;
    transition: all 0.5s;
    box-sizing: border-box;
  }
  .bl_gNav_menuBtn span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 4px;
    border-radius: 10px;
    display: inline-block;
    transition: all 0.3s;
    box-sizing: border-box;
  }
  .bl_gNav_menuBtn span:nth-of-type(1) {
    top: 0;
    background-color: #FAB9B9;
  }
  .bl_gNav_menuBtn span:nth-of-type(2) {
    top: 14px;
    background-color: #EF857E;
  }
  .bl_gNav_menuBtn span:nth-of-type(3) {
    bottom: 0;
    background-color: #FAB9B9;
  }
}
@media screen and (max-width: 767px) {
  .bl_gNav_menuBtn {
    top: 22px;
    width: 35px;
    height: 27px;
  }
  .bl_gNav_menuBtn span:nth-of-type(2) {
    top: 12px;
    background-color: #EF857E;
  }
}
.bl_gNav_menuBtn.active span:nth-of-type(1) {
  transform: translateY(18px) rotate(45deg);
}

@media screen and (max-width: 767px) {
  .bl_gNav_menuBtn.active span:nth-of-type(1) {
    transform: translateY(12px) rotate(45deg);
  }
}
.bl_gNav_menuBtn.active span:nth-of-type(2) {
  opacity: 0;
}

.bl_gNav_menuBtn.active span:nth-of-type(3) {
  transform: translateY(-11px) rotate(-45deg);
  background-color: #EF857E;
}

@media screen and (max-width: 767px) {
  .bl_gNav_menuBtn.active span:nth-of-type(3) {
    transform: translateY(-12px) rotate(-45deg);
  }
}
/*--------------------------------------------------

 bl_sNav

--------------------------------------------------*/
.bl_sNav {
  position: relative;
  z-index: 10;
}

@media screen and (max-width: 949px) {
  .bl_sNav {
    display: none;
    position: fixed;
    top: 114px;
    height: 100%;
    width: 50%;
    overflow: scroll;
    padding: 20px 15px 15px 15px;
    right: 0;
    background-color: #F9F9F9;
    box-shadow: 0px 0px 8px 0px rgba(239, 133, 126, 0.5);
  }
}
@media screen and (max-width: 767px) {
  .bl_sNav {
    width: 90%;
    top: 70px;
  }
}
.bl_sNavCon {
  display: none;
  overflow: hidden;
  width: 100%;
  left: 0;
  text-align: center;
  position: absolute;
  top: -120px;
  left: 0;
  background-color: #F9F9F9;
  box-shadow: 0px 0px 10px 5px rgba(239, 133, 126, 0.2);
}

@media screen and (max-width: 949px) {
  .bl_sNavCon {
    display: block;
    position: relative;
    top: 0;
    background-color: transparent;
    box-shadow: none;
  }
}
.bl_sNavCon .bl_sNavCon__inner {
  width: 980px;
  margin: auto;
  padding-top: 160px;
  text-align: left;
  padding-bottom: 30px;
}

@media screen and (max-width: 949px) {
  .bl_sNavCon .bl_sNavCon__inner {
    width: auto;
    padding-top: 0;
    padding-bottom: 0;
    margin: 0;
  }
}
@media screen and (max-width: 767px) {
  .bl_sNavCon .bl_sNavCon__inner {
    padding-top: 0;
  }
}
.bl_sNavCon .bl_sNavCon_btn {
  display: none;
  position: relative;
  background-color: #fff;
  line-height: 1.5;
  box-shadow: 0px 0px 8px 0px rgba(224, 223, 223, 0.5);
  background-size: 20px;
  background-repeat: no-repeat;
  background-position: left 10px center;
  margin-bottom: 10px;
}

@media screen and (max-width: 949px) {
  .bl_sNavCon .bl_sNavCon_btn {
    display: block;
  }
}
.bl_sNavCon .bl_sNavCon_btn.bl_sNavCon_btn__home {
  background-image: url(../img/pc/navi/home.svg);
}

.bl_sNavCon .bl_sNavCon_btn.bl_sNavCon_btn__benefit {
  background-image: url(../img/pc/navi/hand-heart.svg);
}

.bl_sNavCon .bl_sNavCon_btn.bl_sNavCon_btn__application {
  background-image: url(../img/pc/navi/man.svg);
}

.bl_sNavCon .bl_sNavCon_btn.bl_sNavCon_btn__health {
  background-image: url(../img/pc/navi/walk.svg);
}

.bl_sNavCon .bl_sNavCon_btn.bl_sNavCon_btn__resort {
  background-image: url(../img/pc/navi/building.svg);
}

.bl_sNavCon .bl_sNavCon_btn.bl_sNavCon_btn__outline {
  background-image: url(../img/pc/navi/alternating-arrows.svg);
}

.bl_sNavCon .bl_sNavCon_btn .bl_sNavCon_btn_txt {
  display: block;
  padding: 18px 40px 18px 36px;
  color: #575757;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .bl_sNavCon .bl_sNavCon_btn .bl_sNavCon_btn_txt:hover {
    text-decoration: none;
  }
}
.bl_sNavCon .bl_sNavCon_btn .bl_sNavCon_btn_txt:active, .bl_sNavCon .bl_sNavCon_btn .bl_sNavCon_btn_txt:focus {
  text-decoration: none;
}

.bl_sNavCon .bl_sNavCon_btn .bl_sNavCon_btn_txt::before, .bl_sNavCon .bl_sNavCon_btn .bl_sNavCon_btn_txt::after {
  content: "";
  position: absolute;
  top: calc(50% - 3px);
  right: 20px;
  width: 10px;
  height: 2px;
  border-radius: 9999px;
  background: #EF857E;
  transform-origin: calc(100% - 1px) 50%;
}

.bl_sNavCon .bl_sNavCon_btn .bl_sNavCon_btn_txt::before {
  transform: rotate(45deg);
}

.bl_sNavCon .bl_sNavCon_btn .bl_sNavCon_btn_txt::after {
  transform: rotate(-45deg);
}

.bl_sNavCon .bl_sNavCon_btn .bl_sNavCon_btn_txt.bl_sNavCon_btn_txt__arrowV::before, .bl_sNavCon .bl_sNavCon_btn .bl_sNavCon_btn_txt.bl_sNavCon_btn_txt__arrowV::after {
  right: 22px;
  width: 2px;
  height: 10px;
  transform-origin: 50% calc(100% - 1px);
}

.bl_sNavCon .bl_sNavCon_btn .bl_sNavCon_btn_txt.bl_sNavCon_btn_txt__arrowV.active::before, .bl_sNavCon .bl_sNavCon_btn .bl_sNavCon_btn_txt.bl_sNavCon_btn_txt__arrowV.active::after {
  transform-origin: 50% 1px;
}

@media screen and (max-width: 949px) {
  .bl_sNavCon .bl_sNavCon_spDrawer {
    display: none;
    margin: 0 0 0 auto;
    width: 90%;
  }
}
.bl_sNavCon .bl_sNavCon_ttl {
  margin: 0;
  display: inline-block;
  min-width: 237px;
}

@media screen and (max-width: 949px) {
  .bl_sNavCon .bl_sNavCon_ttl {
    min-width: inherit;
    width: 100%;
  }
}
.bl_sNavCon .bl_sNavCon_subTtl {
  margin-top: 20px;
  margin-bottom: -10px;
  padding-left: 10px;
  border-left: 4px solid #F67168;
  font-weight: bold;
  color: #575757;
}

@media screen and (max-width: 949px) {
  .bl_sNavCon .bl_sNavCon_subTtl {
    margin-top: 10px;
    margin-bottom: 10px;
  }
}
.bl_sNavCon .bl_sNavCon_list {
  list-style: none;
  padding-left: 0;
  margin-top: 30px;
  display: flex;
  flex-wrap: wrap;
  margin-left: -5px;
  margin-right: -5px;
}

@media screen and (max-width: 949px) {
  .bl_sNavCon .bl_sNavCon_list {
    margin: 10px 0;
  }
}
.bl_sNavCon .bl_sNavCon_item {
  width: 237px;
  list-style: none;
  display: flex;
  margin: 0 5px 10px;
}

@media screen and (max-width: 949px) {
  .bl_sNavCon .bl_sNavCon_item {
    width: 100%;
    margin: 0;
  }
  .bl_sNavCon .bl_sNavCon_item + .bl_sNavCon_item {
    margin-top: 10px;
  }
}
/*--------------------------------------------------

 bl_sNavTabBlock

--------------------------------------------------*/
.bl_sNavTabBlock {
  margin-top: 30px;
  margin-bottom: 30px;
  position: relative;
}

@media screen and (max-width: 949px) {
  .bl_sNavTabBlock {
    margin-top: 0;
    margin-bottom: 0;
  }
}
.bl_sNavTabBlock .bl_sNavTabBlock_tabs {
  list-style: none;
  border-bottom: 2px solid #F67168;
  display: flex;
  padding: 0;
  overflow-x: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

@media screen and (max-width: 949px) {
  .bl_sNavTabBlock .bl_sNavTabBlock_tabs {
    display: block;
    border-bottom: none;
  }
}
.bl_sNavTabBlock .bl_sNavTabBlock_tabs .bl_sNavTabBlock_tab {
  min-width: 188px;
  margin-right: 10px;
}

.bl_sNavTabBlock .bl_sNavTabBlock_tabs .bl_sNavTabBlock_tab:last-of-type {
  margin-right: 0;
}

@media screen and (max-width: 949px) {
  .bl_sNavTabBlock .bl_sNavTabBlock_tabs .bl_sNavTabBlock_tab {
    min-width: inherit;
    margin: 0 0 0 auto;
    margin-bottom: 10px;
  }
}
.bl_sNavTabBlock .bl_sNavTabBlock_tabs .bl_sNavTabBlock_tab .bl_sNavTabBlock_tab_btn {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px;
  background-color: #ECECEC;
  color: #575757;
  transition: all 0.3s;
  border-top-right-radius: 5px;
  border-top-left-radius: 5px;
  height: 100%;
}

@media screen and (max-width: 949px) {
  .bl_sNavTabBlock .bl_sNavTabBlock_tabs .bl_sNavTabBlock_tab .bl_sNavTabBlock_tab_btn {
    background-color: #fff;
    padding: 16px 40px 16px 20px;
    color: #575757;
    line-height: 1.5;
    box-shadow: 0px 0px 8px 0px rgba(224, 223, 223, 0.5);
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    justify-content: flex-start;
    position: relative;
    width: 100%;
  }
}
.bl_sNavTabBlock .bl_sNavTabBlock_tabs .bl_sNavTabBlock_tab .bl_sNavTabBlock_tab_btn.active {
  background-color: #F99B94;
  color: #fff;
}

@media screen and (max-width: 949px) {
  .bl_sNavTabBlock .bl_sNavTabBlock_tabs .bl_sNavTabBlock_tab .bl_sNavTabBlock_tab_btn.active {
    background-color: #fff;
    color: #575757;
  }
}
.bl_sNavTabBlock .bl_sNavTabBlock_tabs .bl_sNavTabBlock_tab .bl_sNavTabBlock_tab_btn:hover {
  text-decoration: none;
  background-color: #F99B94;
  color: #fff;
}

@media screen and (max-width: 949px) {
  .bl_sNavTabBlock .bl_sNavTabBlock_tabs .bl_sNavTabBlock_tab .bl_sNavTabBlock_tab_btn:hover {
    background-color: #fff;
    color: #575757;
  }
}
@media screen and (max-width: 949px) {
  .bl_sNavTabBlock .bl_sNavTabBlock_tabs .bl_sNavTabBlock_tab .bl_sNavTabBlock_tab_btn::before, .bl_sNavTabBlock .bl_sNavTabBlock_tabs .bl_sNavTabBlock_tab .bl_sNavTabBlock_tab_btn::after {
    content: "";
    position: absolute;
    top: calc(50% - 6px);
    right: 22px;
    width: 2px;
    height: 10px;
    border-radius: 9999px;
    background: #EF857E;
    transform-origin: 50% calc(100% - 1px);
  }
}
@media screen and (max-width: 949px) {
  .bl_sNavTabBlock .bl_sNavTabBlock_tabs .bl_sNavTabBlock_tab .bl_sNavTabBlock_tab_btn::before {
    transform: rotate(45deg);
  }
}
@media screen and (max-width: 949px) {
  .bl_sNavTabBlock .bl_sNavTabBlock_tabs .bl_sNavTabBlock_tab .bl_sNavTabBlock_tab_btn::after {
    transform: rotate(-45deg);
  }
}
.bl_sNavTabBlock .bl_sNavTabBlock_tabs .bl_sNavTabBlock_tab .bl_sNavTabBlock_tab_btn.active::before, .bl_sNavTabBlock .bl_sNavTabBlock_tabs .bl_sNavTabBlock_tab .bl_sNavTabBlock_tab_btn.active::after {
  transform-origin: 50% 1px;
}

.bl_sNavTabBlock .bl_sNavTabBlock_item {
  display: none;
  padding-top: 20px;
}

@media screen and (max-width: 949px) {
  .bl_sNavTabBlock .bl_sNavTabBlock_item {
    margin: 0 0 0 auto;
    padding-top: 10px;
    width: 90%;
  }
}
.bl_sNavTabBlock .bl_sNavTabBlock_item.active {
  display: block;
}

.bl_sNavTabBlock .bl_sNavTabBlock_slideBtn {
  display: none;
  list-style: none;
}

.bl_sNavTabBlock .bl_sNavTabBlock_slideBtn .bl_sNavTabBlock_slideBtn_icon {
  position: absolute;
  top: 3px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 40px;
  height: 40px;
  cursor: pointer;
}

@media screen and (max-width: 767px) {
  .bl_sNavTabBlock .bl_sNavTabBlock_slideBtn .bl_sNavTabBlock_slideBtn_icon {
    display: none;
  }
}
.bl_sNavTabBlock .bl_sNavTabBlock_slideBtn .bl_sNavTabBlock_slideBtn_icon.bl_sNavTabBlock_slideBtn_icon__left {
  left: 10px;
  background-image: url(../img/pc/page/tab-arrow-left_coral.svg);
}

.bl_sNavTabBlock .bl_sNavTabBlock_slideBtn .bl_sNavTabBlock_slideBtn_icon.bl_sNavTabBlock_slideBtn_icon__right {
  right: 10px;
  background-image: url(../img/pc/page/tab-arrow-right_coral.svg);
}

/*--------------------------------------------------

 bl_gNavUtl

--------------------------------------------------*/
.bl_gNavUtl {
  position: relative;
  width: 100%;
}

@media screen and (max-width: 949px) {
  .bl_gNavUtl {
    margin-top: 10px;
  }
}
.bl_gNavUtl .bl_gNavUtl_inner {
  position: relative;
  max-width: 1100px;
  margin: auto;
}

.bl_gNavUtl .bl_gNavUtl_btn {
  position: absolute;
  right: 0;
  top: -20px;
  padding: 20px 10px 5px;
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  background-color: #fff;
  box-shadow: 0px 0px 8px 0px rgba(239, 133, 126, 0.5);
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
  border-top: none;
  cursor: pointer;
  font-size: 1.3rem;
}

@media screen and (max-width: 949px) {
  .bl_gNavUtl .bl_gNavUtl_btn {
    position: relative;
  }
}
.bl_gNavUtl .bl_gNavUtl_btn::before {
  content: "";
  display: block;
  width: 20px;
  height: 16px;
  background: url(../img/pc/page/icon_menu.png) left center no-repeat;
  background-size: cover;
  margin-right: 10px;
}

@media screen and (max-width: 949px) {
  .bl_gNavUtl .bl_gNavUtl_btn {
    display: none;
  }
}
.bl_gNavUtl .bl_gNavUtl_btn__close {
  position: absolute;
  right: 0;
  bottom: 0;
  display: block;
  margin: 0;
  width: 26px;
  height: 26px;
  background: url(../img/pc/page/icon_close.png) center center no-repeat #EF857E;
  border-top-left-radius: 10px;
  border-bottom-right-radius: 10px;
  cursor: pointer;
}

@media screen and (max-width: 949px) {
  .bl_gNavUtl .bl_gNavUtl_btn__close {
    display: none;
  }
}
.bl_gNavUtl .bl_gNavUtl_con {
  display: flex;
  position: absolute;
  right: 0;
  top: -20px;
  margin: 0;
  padding: 25px 25px 15px 10px;
  background-color: #fff;
  box-shadow: 0px 0px 8px 0px rgba(239, 133, 126, 0.5);
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
  border-top: none;
}

@media screen and (max-width: 949px) {
  .bl_gNavUtl .bl_gNavUtl_con {
    display: block;
    position: relative;
    top: auto;
    box-shadow: none;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    padding: 10px 0 50px;
    background-color: transparent;
  }
}
.bl_gNavUtl .bl_gNavUtlItem {
  display: flex;
  align-items: center;
  margin: 0;
  padding: 5px;
}

@media screen and (max-width: 767px) {
  .bl_gNavUtl .bl_gNavUtlItem {
    margin-bottom: 10px;
  }
}
.bl_gNavUtl .bl_gNavUtlItem.bl_gNavUtlItem__alignTop {
  align-items: flex-start;
  padding-top: 10px;
}

.bl_gNavUtl .bl_gNavUtlItem .bl_gNavUtlItem_ttl {
  font-size: 1.3rem;
  font-weight: bold;
  color: #575757;
}

@media screen and (max-width: 949px) {
  .bl_gNavUtl .bl_gNavUtlItem .bl_gNavUtlItem_ttl {
    font-size: 1.4rem;
  }
}
.bl_gNavUtl .bl_gNavUtlItem .bl_gNavUtlItem_con {
  margin: 0;
  position: relative;
  width: 84px;
}

@media screen and (max-width: 949px) {
  .bl_gNavUtl .bl_gNavUtlItem .bl_gNavUtlItem_con {
    width: auto;
  }
}
.bl_gNavUtl .bl_gNavUtlItem .bl_gNavUtlItem_link {
  display: flex;
  align-items: center;
  font-size: 1.3rem;
  font-weight: bold;
  color: #575757;
  transition: all 0.3s;
}

@media screen and (max-width: 949px) {
  .bl_gNavUtl .bl_gNavUtlItem .bl_gNavUtlItem_link {
    font-size: 1.4rem;
  }
}
.bl_gNavUtl .bl_gNavUtlItem .bl_gNavUtlItem_link:hover {
  text-decoration: none;
  color: #EF857E;
}

.bl_gNavUtl .bl_gNavUtlItem .bl_gNavUtlItem_link::after {
  display: block;
  content: "";
  background: url(../img/pc/page/arrow-right_coral.svg) center center no-repeat;
  background-size: cover;
  width: 8px;
  height: 11px;
  margin-left: 5px;
}

.bl_gNavUtl .bl_gNavUtlItem .bl_gNavUtlItem_link.bl_gNavUtlItem_link__application::before {
  display: block;
  content: "";
  background: url(../img/pc/navi/document.svg) center center no-repeat;
  background-size: cover;
  width: 14px;
  height: 14px;
  margin-right: 5px;
}

.bl_gNavUtl .bl_gNavUtlItem .bl_gNavUtlItem_link.bl_gNavUtlItem_link__faq::before {
  display: block;
  content: "";
  background: url(../img/pc/navi/question.svg) center center no-repeat;
  background-size: cover;
  width: 14px;
  height: 14px;
  margin-right: 0;
}

.bl_gNavUtl .bl_gNavUtlItem .bl_gNavUtlItem_link.bl_gNavUtlItem_link__search::before {
  display: block;
  content: "";
  background: url(../img/pc/navi/search.svg) center center no-repeat;
  background-size: cover;
  width: 14px;
  height: 14px;
  margin-right: 0;
}

.bl_gNavUtl .bl_gNavUtlItem .bl_gNavUtlItem_link.bl_gNavUtlItem_link__search::after {
  display: none;
}

/*--------------------------------------------------

 bl_fontChanger

--------------------------------------------------*/
.bl_fontChanger {
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
}

.bl_fontChanger .bl_fontChanger_btn {
  background-color: #FFF5F4;
  border: 1px solid #EF857E;
  color: #EF857E;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 0;
  margin-left: 5px;
  cursor: pointer;
}

@media screen and (max-width: 949px) {
  .bl_fontChanger .bl_fontChanger_btn {
    width: 40px;
    height: 40px;
    font-size: 1.4rem;
    font-weight: bold;
  }
}
.bl_fontChanger .bl_fontChanger_btn.js_fontChanger_btn__on {
  background-color: #EF857E;
  color: #fff;
}

/*--------------------------------------------------

 bl_langChanger

--------------------------------------------------*/
.bl_langChanger {
  position: relative;
  border: 1px solid #EF857E;
  border-radius: 5px;
  cursor: pointer;
  position: absolute;
  top: 0;
  margin-left: 5px;
}

.bl_langChanger .bl_langChanger_list {
  list-style: none;
  margin: 0;
  padding: 0;
}

@media screen and (max-width: 949px) {
  .bl_langChanger .bl_langChanger_list {
    width: 130px;
  }
}
.bl_langChanger .bl_langChanger_list .bl_langChanger_btn {
  font-size: 1.3rem;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 7px;
}

.bl_langChanger .bl_langChanger_list .bl_langChanger_btn.bl_langChanger_btn__current {
  color: #EF857E;
}

.bl_langChanger .bl_langChanger_list .bl_langChanger_btn.bl_langChanger_btn__current::after {
  display: block;
  content: "";
  background: url(../img/pc/page/arrow-down_coral.svg) center center no-repeat;
  background-size: cover;
  width: 10px;
  height: 10px;
  margin-right: 0;
  margin-left: 5px;
}

.bl_langChanger .bl_langChanger_list .bl_langChanger_btn.bl_langChanger_btn__other {
  display: none;
  background-color: #EF857E;
  color: #fff;
}

/*--------------------------------------------------

 bl_searchModal

--------------------------------------------------*/
.bl_searchModal {
  font-size: 1.4rem;
}

.bl_searchModal .bl_searchModal_closeBtn {
  position: absolute;
  top: 0;
  right: 0;
  background-color: #EF857E;
  cursor: pointer;
  display: flex;
  align-items: center;
  color: #fff;
  padding: 5px 12px;
  border-bottom-left-radius: 10px;
}

.bl_searchModal .bl_searchModal_closeBtn::before {
  content: "";
  display: block;
  margin: 0;
  width: 26px;
  height: 26px;
  background: url(../img/pc/page/icon_close.png) center center no-repeat;
}

.bl_searchModal .bl_searchModal_inner {
  margin: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.bl_searchModal .bl_searchModal_ttl {
  font-size: 2rem;
  text-align: center;
  display: flex;
  align-items: center;
  font-weight: bold;
  color: #575757;
}

@media screen and (max-width: 767px) {
  .bl_searchModal .bl_searchModal_ttl {
    font-size: 1.6rem;
  }
}
.bl_searchModal .bl_searchModal_ttl::before {
  content: "";
  display: block;
  margin: 0;
  width: 26px;
  height: 26px;
  background: url(../img/pc/navi/search.svg) center center no-repeat;
}

.bl_searchModal .bl_searchModal_form {
  display: flex;
  justify-content: center;
}

@media screen and (max-width: 767px) {
  .bl_searchModal .bl_searchModal_form {
    width: 100%;
  }
}
.bl_searchModal .bl_searchModal_form_input {
  width: 450px;
  border: 2px solid #BEBEBE;
  border-radius: 5px;
  padding: 5px;
  color: #575757;
  outline: none;
}

@media screen and (max-width: 767px) {
  .bl_searchModal .bl_searchModal_form_input {
    width: 100%;
  }
}
.bl_searchModal .bl_searchModal_form_btn {
  background-image: none;
  min-width: inherit !important;
  width: 100px;
  background-color: #EF857E !important;
  color: #fff;
  text-indent: inherit;
  padding: 7px;
  border-radius: 5px;
  margin-left: 10px;
}

.bl_searchModal .gsc-search-box {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
}

@media screen and (max-width: 767px) {
  .bl_searchModal .gsc-search-box {
    flex-direction: column;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .bl_searchModal .gsc-input {
    width: 100%;
    margin-bottom: 5px;
  }
}
/*--------------------------------------------------

 .modaal-container

--------------------------------------------------*/
.modaal-wrapper .modaal-container {
  width: 880px;
  padding-top: 30px;
  padding-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .modaal-wrapper .modaal-container {
    width: 90vw;
    padding-top: 25px;
    padding-bottom: 25px;
  }
}
@media screen and (max-width: 767px) {
  .modaal-wrapper .modaal-inner-wrapper {
    padding: 0;
  }
}
/*--------------------------------------------------

 el_btn

--------------------------------------------------*/
.el_navBtn {
  position: relative;
  display: flex;
  align-items: center;
  flex-grow: 1;
  background-color: #fff;
  padding: 16px 40px 16px 20px;
  color: #575757;
  line-height: 1.5;
  box-shadow: 0px 0px 8px 0px rgba(224, 223, 223, 0.5);
  transition: all 0.3s;
}

.el_navBtn:hover {
  text-decoration: none;
  opacity: 0.7;
}

.el_navBtn::before, .el_navBtn::after {
  content: "";
  position: absolute;
  top: calc(50% - 1px);
  right: 20px;
  width: 10px;
  height: 2px;
  border-radius: 9999px;
  background-color: #EF857E;
  transform-origin: calc(100% - 1px) 50%;
}

.el_navBtn::before {
  transform: rotate(45deg);
}

.el_navBtn::after {
  transform: rotate(-45deg);
}

.el_navBtn.el_navBtn__ttl {
  background-color: #EF857E;
  color: #fff;
  box-shadow: 0px 0px 8px 0px rgba(239, 133, 126, 0.5);
}

.el_navBtn.el_navBtn__ttl::before, .el_navBtn.el_navBtn__ttl::after {
  background-color: #fff;
}

@media screen and (max-width: 1199px) {
  .el_navBtn.el_navBtn__spChangeColor {
    background-color: #EF857E;
    color: #fff;
    box-shadow: 0px 0px 8px 0px rgba(239, 133, 126, 0.5);
  }
  .el_navBtn.el_navBtn__spChangeColor::before, .el_navBtn.el_navBtn__spChangeColor::after {
    background-color: #fff;
  }
}
/*# sourceMappingURL=sass/common.css.map */
