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

h1, h2, h3, h4, h5, h6 {
  font-weight: bold;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

html {
  overflow-y: scroll;
}

blockquote, q {
  quotes: none;
}

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

input, textarea {
  margin: 0;
  padding: 0;
}

ol, ul, li {
  list-style: none;
}

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

caption, th {
  text-align: left;
}

a:focus {
  outline: none;
}

* html .clearfix {
  height: 1px;
  /*＼*/
  /*/
  height: auto;
  overflow: hidden;
  /**/
}

.both {
  clear: both;
}

/* chromeの画像ボケ回避 */
img {
  -webkit-backface-visibility: hidden;
}

/*-------- break point --------
〜479px  ：SP縦
480px〜  ：SPランドスケープ @media screen and (min-width: 480px){}
600px〜  ：タブレット @media screen and (min-width: 600px){}
740px〜  ：タブレットL @media screen and (min-width: 740px){}
960px〜  ：PC @media screen and (min-width: 960px){}
1280px〜：ワイドスクリーン @media screen and (min-width: 1280px){}

----------------------------*/
/* mixin
=====================================================*/
/*==========================================================================================

	// 基本

==========================================================================================*/

body {
  font-family: "Noto Sans Japanese", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Helvetica, Arial, sans-serif;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.6;
  word-wrap: break-word;
  position: relative;
  color: var(--colorText1);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  min-height: 100vh;
}

h1, h2, h3, h4, h5 {
  font-weight: 500;
}
h1 span, h2 span, h3 span, h4 span, h5 span {
  /* font-weight: 800; */
}

/* clearfix */
.clearfix {
  zoom: 1;
}
.clearfix:before, .clearfix:after {
  content: "";
  display: table;
}
.clearfix:after {
  clear: both;
}

/* text */
a {
  text-decoration: none;
  color: var(--colorText1);
}

.dp_pc {
  display: none;
}

.dp_ilb {
  display: inline-block;
  /* font-weight: 800; */
}

img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0;
}

.fontRed {
  color: #fe1e1e;
}

strong span {
  font-weight: 500;
}

/*exlink*/
  .bookend2-h4 {
    font-size: 3vw;
  }
  .bookend2-p {
    font-size: 14px;
  }
  .exlink-heading {
    text-align: center;
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 15px;
  }
  .exlink-cont {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: auto;
    max-width: 1048px;
    background-color: white;
    margin: auto;
    padding: 44px 20px;
    border-radius: 8px;
  }

  .exlink-cont h4 {
    font-size: 16px;
    margin-bottom:5px;
    font-weight: 700
  }

  .exlink-cont .exlink-btn {
    display: block;
    cursor: pointer;
    width: 172px;
    border: solid 1px #2F60C1;
    color: #2F60C1;
    font-size: 12px;
    border-radius: 4px;
    margin: auto;
    margin-top: 12px;
    padding: 11px 20px 9px;
    font-weight: 500;
    position: relative;
  }

  .exlink-cont .exlink-btn:hover {
    color: white;
    background-color: #2F60C1;
    font-weight: 700;
  }

  .exlink-cont .exlink-btn[target="_blank"]::after {
    content: '';
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    top: calc(50% - 5px);
    right: 14px;
    display: block;
    width: 11px;
    height: 11px;
    background: url(../images/ico_exlink-blue-new.png) center center no-repeat;
    background-size: contain;
  }

  .exlink-cont .exlink-text {
    display: block;
  }

  .exlink-cont-bottom {
    max-width: 1048px;
    color: #2F60C1;
    font-size: 14px;
    background-color: white;
    text-align: center;
    margin: auto;
    margin-top: 30px;
    padding: 10px;
    font-weight: 600;
    cursor: pointer;
    border: 1px solid #2F60C1;
    border-radius: 6px;
  }

  @media screen and (min-width: 960px) {
    .bookend2-h4 {
      font-size: 30px;
    }
    .bookend2-p {
      font-size: 20px;
    }
    .exlink-heading {
      font-size: 30px;
      margin-bottom: 28px;
    }
    .exlink-cont {
      padding-top: 60px;
      padding-bottom: 64px;
    }
    .exlink-cont h4 {
      font-size: 24px;
      margin-bottom: 15px;
    }

    .exlink-cont .exlink-btn {
      font-size: 12px;
      padding-top: 9px;
      padding-bottom: 7px;
      margin-top: 20px;
    }

    .exlink-cont .exlink-btn[target="_blank"]::after {
      width: 15px;
      height: 15px;
      top:calc(50% - 8px);
    }

    .exlink-cont .exlink-btn[target="_blank"]:hover::after {
      background-image: url(../images/ico_exlink-wh-new.png);
    }

    .exlink-cont-bottom {
      font-size: 27px;
      padding-top: 17px;
      padding-bottom: 17px;
      margin-top: 64px;
    }
  }
/*exlink*/

/* PC基本設定
=====================================================*/
@media screen and (min-width: 960px) {
  .dp_sp {
    display: none;
  }

  .dp_pc {
    display: block;
  }

  a {
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
  }
  a:hover {
    opacity: 0.7;
  }
  a img {
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
  }
}
/*==========================================================================================

	■ リセット

==========================================================================================*/
input[type=submit],
input[type=button],
button {
  display: inline-block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-decoration: none;
  border: none;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  -webkit-tap-highlight-color: transparent;
}

input[type=submit],
input[type=button], button {
  cursor: pointer;
}

textarea,
input[type=text],
input[type=password],
select {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  -webkit-tap-highlight-color: transparent;
  border-radius: 0;
  border: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #fff;
  font-size: 14px;
}

input:-ms-input-placeholderr {
  color: #ccc;
  font-size: 14px;
}
input::-ms-input-placeholder r {
  color: #ccc;
  font-size: 14px;
}
input::-webkit-input-placeholder {
  color: #ccc;
  font-size: 14px;
}
input::-moz-placeholder {
  color: #ccc;
  font-size: 14px;
}
input:-ms-input-placeholder {
  color: #ccc;
  font-size: 14px;
}
input::-ms-input-placeholder {
  color: #ccc;
  font-size: 14px;
}
input::placeholder {
  color: #ccc;
  font-size: 14px;
}

.search_form {
  position: relative;
  border-radius: 5px;
  overflow: hidden;
  background: #fff;
  padding: 5px 7px;
  height: 44px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  -ms-flex-wrap: wrap;
}
.search_form input.site_search {
  background: #fff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-right: 20px;
  outline: 0;
  border: none;
  font-size: 16px;
}
.search_form button.btn_search {
  position: absolute;
  bottom: 0;
  right: 0;
  height: 44px;
  width: 60px;
  border: none;
  outline: 0;
  background: #fff;
}
.search_form button.btn_search img {
  width: 20px;
  margin: 0 auto;
}
.search_form .search_keywords {
  margin-right: 10px;
}
.search_form .search_keywords li {
  position: relative;
  display: inline-block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 34px;
  padding: 4px 0 0 5px;
  margin-right: 3px;
  font-size: 14px;
  color: #313131;
  background: #e1ecff;
  vertical-align: middle;
}
.search_form .search_keywords li span {
  display: inline-block;
  height: 20px;
  width: 24px;
  position: relative;
  border-left: #94b3ee 1px solid;
  margin: 0 0 0 10px;
  vertical-align: middle;
  cursor: pointer;
}
.search_form .search_keywords li span::before, .search_form .search_keywords li span::after {
  position: absolute;
  top: 50%;
  right: 8px;
  content: "";
  display: block;
  width: 10px;
  height: 1px;
  background-color: #94b3ee;
}
.search_form .search_keywords li span:before {
  -ms-transform: rotate(45deg);
      transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
}
.search_form .search_keywords li span:after {
  -ms-transform: rotate(135deg);
      transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
  -moz-transform: rotate(135deg);
}
.search_form.site_search_parent {
  height: 48px;
  border: #ccc 2px solid;
}

select {
  -moz-appearance: none;
  background: rgba(0, 0, 0, 0) none repeat scroll 0 0;
  cursor: pointer;
  line-height: 1;
  outline: medium none;
  border: none;
}

@media screen and (min-width: 960px) {
  .search_form {
    height: 50px;
    padding: 10px 0 10px 10px;
  }
  .search_form input.site_search {
    height: 30px;
    padding-right: 25px;
  }
  .search_form button.btn_search {
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
    height: 50px;
  }
  .search_form button.btn_search img {
    width: 22px;
  }
  .search_form button.btn_search:hover {
    opacity: 0.7;
  }
  .search_form .search_keywords {
    margin-right: 10px;
  }
  .search_form .search_keywords li {
    height: 30px;
    padding: 3px 0 0 5px;
  }
  .search_form.site_search_parent {
    width: 590px;
    margin: 0 auto;
    height: 52px;
    border: #ccc 1px solid;
  }
}
/*==========================================================================================

	■ common

==========================================================================================*/
/* header
=====================================================*/
header {
  position: relative;
  left: 0;
  /* height: 95px; */
}
header .inner {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  text-align: center;
  font-size: 16px;
  z-index: 99;
  background: #fff;
}
header .nav_link {
  height: 45px;
  background: #ebebeb;
  text-align: right;
}
header .nav_link li {
  display: inline-block;
  padding: 5px 0;
}
header .nav_link li a {
  display: block;
  border-left: #fff 1px solid;
}
header .nav_link li img {
  height: 35px;
  width: auto;
}
header .nav_link li:first-child a {
  border: none;
}
header .head_main {
  position: relative;
  height: 57px;
  border-top: 8px solid #2F60C1;
}
header .head_main .logo {
  width: 200px;
  padding: 13px 0;
  margin: 0 auto;
}
header .search_blc .ico_search {
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1;
}
header .search_blc .ico_search::before {
  content: '';
  display: block;
  width: 65px;
  height: 50px;
  background: url(../images/ico_serch_darkgrey.svg) 50% 50% no-repeat;
  background-size: 20px auto;
  -moz-background-size: 20px auto;
  -webkit-background-size: 20px auto;
}
header .search_blc .search_popup {
  display: none;
  position: relative;
  height: 50px;
  margin-top: -50px;
  padding: 6px 15px 0px 50px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #313131;
  z-index: 10;
}
header .search_blc .search_popup.active {
  display: block;
}
header .search_blc .search_popup .search_close {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 5;
  height: 50px;
  width: 50px;
  background: url(../images/ico_arrow-wh.png) 50% 50% no-repeat;
  background-size: 20px auto;
  -moz-background-size: 20px auto;
  -webkit-background-size: 20px auto;
}
header .search_blc .search_popup .search_form {
  height: 38px;
}
header .search_blc .search_popup .search_form .search_keywords li {
  padding-top: 2px;
  height: 28px;
}
header .search_blc .search_popup .search_form input.site_search {
  height: 28px;
}
header .search_blc .search_popup .search_form .btn_search {
  background: #fff45c;
  height: 38px;
}
header .search_blc .search_popup .search_form .btn_search img {
  width: 25px;
}

header .search_blc  table.gsc-search-box td.gsc-input {
  padding-right: 0;
}

header .search_blc .search_popup .gsc-input-box {
  padding-top: 0;
  padding-bottom: 0;
  border:none;
  border-radius: 5px 0 0 5px;
}

header .search_blc .search_popup .gsc-search-button {
  border-radius: 0 5px 5px 0;
  margin-left: 0;
}

header .search_blc .search_popup .gsc-search-button-v2 {
  width: 60px;
  height: 39px;
  background:url("../images/ico_search.png") no-repeat center center #fff45c;
  background-size: 25px auto;
  border-color: #fff45c;
}

header .search_blc .search_popup .gsc-search-button-v2 svg {
  display: none;
}

header .search_blc .search_popup .gsib_a {
  padding-top: 7px;
  padding-bottom: 6px;
}

header .search_blc .search_popup input.gsc-input {
  background: none !important;
}

.main_menu_pc {
  display: none;
}

@media screen and (min-width: 960px) {
  header .inner {
    height: 230px;
  }
  .page-id-949 header .inner {
    height: 76px;
    font-size: 14px;
  }
  header .head_main {
    position: static;
    height: auto;
    border-top-width: 16px;
  }

  .page-id-949 header .head_main {
    height: auto;
  }

  header .head_main .logo {
    width: 274px;
    padding: 25px 0 15px;
  }

  .page-id-949 header .head_main .logo {
    display: none;
  }
  header .search_blc .ico_search {
    right: 20px;
    top: 25px;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    display: flex;
    align-items: center;
    justify-content: center;
    gap:4px;
    padding-inline: 15px;
  }
  header .search_blc .ico_search::before {
    width: 25px;
    height: 37px;
    background-size: 25px auto;
    -moz-background-size: 25px auto;
    -webkit-background-size: 25px auto;
  }
  header .search_blc .ico_search:hover {
    opacity: 0.8;
    cursor: pointer;
  }
  header .search_blc .ico_search_text {
    font-size: 12px;
    font-weight: 600;
    color: #414141;
  }
  header .search_blc .search_popup {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 154px;
    margin-top: 0px;
    padding: 16px 30px 0px 0;
    background: rgba(0, 0, 0, 0.8);
  }
  header .search_blc .search_popup .search_close {
    display: none;
  }
  header .search_blc .search_popup .search_form {
    float: right;
    width: 410px;
    padding: 5px 7px;
  }
  
  header .search_blc .search_popup #___gcse_0 {
    max-width: 410px;
    margin-right: 0;
    margin-left: auto;
  }

  .page-id-949 .main_menu_sp {
    display: none;
  }

  .main_menu_pc {
    display: block;
  }

  .page-id-949 .main_menu_pc {
    margin-top: 60px;
  }
}
/* ========== nav ハンバーガー  ========== */
header .ico_op {
  z-index: 2;
}
header .ico_close {
  z-index: 10;
}
header .ico_menu {
  position: relative;
  width: 50px;
  height: 50px;
  margin-top: -56px;
  margin-left: 10px;
}
header .ico_menu span {
  display: inline-block;
  -webkit-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
header .ico_menu span {
  position: absolute;
  left: 11px;
  width: 24px;
  height: 2px;
  background-color: #707071;
}
header .ico_menu span:nth-of-type(1) {
  top: 29%;
}
header .ico_menu span:nth-of-type(2) {
  top: 48%;
}
header .ico_menu span:nth-of-type(3) {
  bottom: 29%;
}
header .ico_menu.active span:nth-of-type(1) {
  -webkit-transform: translateY(11px) rotate(-45deg);
  -ms-transform: translateY(11px) rotate(-45deg);
      transform: translateY(11px) rotate(-45deg);
}
header .ico_menu.active span:nth-of-type(2) {
  left: 50%;
  opacity: 0;
  -webkit-animation: active-menu-bar02 0.8s forwards;
  animation: active-menu-bar02 0.8s forwards;
}
@-webkit-keyframes active-menu-bar02 {
  100% {
    height: 0;
  }
}
@keyframes active-menu-bar02 {
  100% {
    height: 0;
  }
}
header .ico_menu.active span:nth-of-type(3) {
  -webkit-transform: translateY(-8px) rotate(45deg);
  -ms-transform: translateY(-8px) rotate(45deg);
      transform: translateY(-8px) rotate(45deg);
}

header nav {
  display: none;
}

header nav .scrl {
  z-index: 99;
  position: fixed;
  /* top: 95px; */
  width: 100%;
  height: -o-calc(100% - 51px);
  height: calc(100% - 51px);
  overflow: auto;
  background: var(--colorBg1);
}

header nav .scrl .main_menu_sp li a {
  height: 100%;
}

/* header nav .scrl .main_menu li.nav_long a strong {
  margin: -66px auto 0 32%;
} */
@media screen and (max-width: 480px) {
  /* header nav .scrl .main_menu li.nav_long a strong {
    margin: -66px auto 0 28%;
  } */
}
/* header .sub_menu .nav_faq {
  background: #487ade;
}
header .sub_menu .nav_faq a {
  display: block;
  width: 100%;
  padding: 25px 0 30px;
  color: #fff;
  font-weight: 500;
}
header .sub_menu .nav_faq a:before {
  content: "";
  display: block;
  width: 90px;
  height: 90px;
  margin: 0 auto 16px;
  background: url(../images/ico_pagettl07.png) 0 100% no-repeat;
  background-size: 100% auto;
  -moz-background-size: 100% auto;
  -webkit-background-size: 100% auto;
}
header .sub_menu .nav_linktext li {
  background: #fff;
  border-bottom: #323232 1px solid;
}
header .sub_menu .nav_linktext a {
  display: block;
  padding: 20px;
  color: #313131;
} */
header .btn_language {
  background: #313131;
}
header .btn_language li {
  display: inline-block;
  padding: 20px 0;
}
header .btn_language li:first-child a, header .btn_language li:first-child strong {
  border-right: #555 1px solid;
}
header .btn_language a {
  color: #fff;
}
header .btn_language strong {
  color: #555;
}
header .btn_language a, header .btn_language strong {
  display: block;
  padding: 0 35px;
  font-size: 14px;
  line-height: 1em;
}

@media screen and (min-width: 960px) and (max-width: 1280px) {
  /* ========== nav ハンバーガー  ========== */
  header .inner {
    font-size: 14px;
  }
}
@media screen and (min-width: 960px) {
  /* ========== nav ハンバーガー  ========== */
  header .ico_menu {
    display: none;
  }
  header nav {
    display: block !important;
    max-width: 1136px;
    margin: auto;
  }

  .page-id-949 header nav {
    display: none!important;
  }

  header nav .scrl {
    position: static;
    height: auto;
    overflow: visible;
    background: #fff;
  }

  header .main_menu.main_menu_sp li a:before {
    width: 3.8rem;
  }

  header nav .scrl .main_menu li.nav_long a strong {
    margin: 0;
  }
  header .main_menu {
    text-align: center;
  }
  header .main_menu ul {
    flex-wrap: nowrap;
    align-items: baseline;
    justify-content: space-between;
    max-width: var(--widthPc);
    width: calc(100% - var(--sidePadding) * 2);
    margin:0 auto;
  }
  header .main_menu li {
    width: auto;
    background-color: #fff;
  }
  header .main_menu li .nav_soon {
    opacity: 0.4;
  }
  header .main_menu li a:hover {
    opacity: 0.7;
  }
  header .main_menu li a:before,
  header .main_menu li .nav_soon:before {
    width: 3.5rem;
  }

  header .main_menu li a strong {
    font-size: 12px;
    font-weight: 600;
  }
  header .main_menu li.nav_long {
    display: none;
  }
  header .btn_language {
    position: absolute;
    z-index: 5;
    top: 20px;
    right: 20px;
    border-radius: 3px;
  }
  header .btn_language li {
    display: inline-block;
    padding: 8px 0;
  }
  header .btn_language a, header .btn_language strong {
    width: 34px;
    padding: 0;
    font-size: 12px;
  }
  header .btn_language a:hover {
    opacity: 0.8;
  }
}
@media screen and (max-width: 329px) {
  header .head_main .logo {
    width: 210px;
  }
}
/* footer
=====================================================*/
.pagetop {
  position: fixed;
  right: 24px;
  bottom: 15px;
  z-index: 10;
  width: 49.58px;
}
.pagetop a {
  display: block;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  width: 49.58px;
  height: 49.58px;
  overflow: hidden;
  background: url(../images/pagetop.svg) 0 0 no-repeat;
  background-size: 100% auto;
  -moz-background-size: 100% auto;
  -webkit-background-size: 100% auto;
}

footer .inner {
  padding: 25px 20px 15px;
}

footer .nav_link {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-evenly;
}

footer .nav_link li:nth-child(1) {
  flex-basis: 42%;
}

footer .nav_link li:nth-child(2) {
  flex-basis: 33%;
}

footer .nav_link li.copyright {
  flex-basis: 100%;
}

footer dt {
  font-weight: 300;
}
footer dt img {
  width: 47px;
  display: inline-block;
  vertical-align: middle;
  margin-right: 14px;
}
footer dd {
  padding: 15px 0 18px;
  font-size: 12px;
  font-weight: 300;
}
footer .foot_sns li {
  display: inline-block;
  padding: 0 5px;
}
footer .foot_sns img {
  width: 28px;
}
footer small {
  display: block;
  margin-top: 1.5rem;
  border-top: #c3c3c3 1px solid;
  font-size: 9px;
  font-weight: 300;
  text-align: center;
  /* font-weight: 800; */
}
footer .about_link {
  padding: 5px 0 0 0.8em;
}
footer .about_link a {
  color: #313131;
  font-size: 11px;
  display: block;
  position: relative;
  display: inline-block;
}
footer .about_link a:after {
  display: block;
  position: absolute;
  top: 50%;
  width: 3px;
  height: 3px;
  margin-top: -1.5px;
  border-top: solid 1px #313131;
  border-right: solid 1px #313131;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
      transform: rotate(45deg);
  content: "";
}
footer .about_link a::after {
  left: -1em;
}

@media screen and (min-width: 960px) {
  .pagetop {
    right: 40px;
    bottom: 60px;
    width: 60px;
  }
  .pagetop a {
    width: 60px;
    height: 60px;
  }
  .pagetop a:hover {
    opacity: 0.8;
  }
  footer .inner {
    padding-top: 0;
    padding-bottom: 0;
  }
  footer .nav_link {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    height: 120px;
    background: #fff;
    justify-content: center;
    max-width: 1040px;
    margin: 0 auto;
    flex-wrap: nowrap;
    align-items: center;
  }

  footer .nav_link li {
    display: inline-block;
    padding: 0 12px;
  }

  footer .nav_link li:nth-child(1) {
    flex-basis: 25%;
  }

  footer .nav_link li:nth-child(2) {
    flex-basis: 17%;
  }

  footer .nav_link li.copyright {
    padding-right: 0;
  }

  footer .nav_link a img {
    height: auto;
    width: 100%;
  }
  footer .foot_btm {
    position: relative;
    max-width: 940px;
    margin: 2rem auto 0;
    padding: 0 0 0;
    text-align: left;
  }
  footer dt img {
    width: 45px;
    margin-right: 10px;
  }
  footer dd {
    padding: 0 0 0 55px;
    font-size: 14px;
  }
  footer .foot_sns {
    position: absolute;
    right: 0;
    bottom: 48px;
  }
  footer .foot_sns li {
    padding: 0 2px;
  }
  footer small {
    margin: 0;
    margin-left: auto;
    text-align: right;
    font-size: 10px;
  }
  footer .about_link {
    position: absolute;
    padding: 0;
    left: 12px;
    bottom: 0;
  }
  footer .about_link a {
    font-size: 12px;
    display: block;
    position: relative;
  }
  footer .about_link a:after {
    display: block;
    position: absolute;
    top: 50%;
    width: 4px;
    height: 4px;
    margin-top: -2px;
    border-top: solid 1px #313131;
    border-right: solid 1px #313131;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
        transform: rotate(45deg);
    content: "";
  }
  footer .about_link a:hover {
    text-decoration: underline;
  }
}
/*===========================================================

	 nav (Topメニューも一部共通)

============================================================*/
.main_menu ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  margin-top: 2px;
}
.main_menu .nav01 a:before {
  background-image: url(../images/ico_nav01.png);
}
.main_menu .nav02 a:before {
  background-image: url(../images/ico_nav02.png);
}
.main_menu .nav03 a:before,
.main_menu .nav03 .nav_soon:before {
  background-image: url(../images/ico_nav03.png);
}
.main_menu .nav04 a:before,
.main_menu .nav04 .nav_soon:before {
  background-image: url(../images/ico_nav04.png);
}
.main_menu .nav05 a:before,
.main_menu .nav05 .nav_soon:before {
  background-image: url(../images/ico_nav05.png);
}
.main_menu .nav06 a:before,
.main_menu .nav06 .nav_soon:before {
  background-image: url(../images/ico_nav06.png);
}
.main_menu .nav07 a:before,
.main_menu .nav07 .nav_soon:before {
  background-image: url(../images/ico_nav07.png);
}
.main_menu .nav08 a:before,
.main_menu .nav08 .nav_soon:before {
  background-image: url(../images/ico_nav08.png);
}
.main_menu li {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 50%;
  text-align: center;
  padding: 2.5px;
}
.main_menu li a,
.main_menu li .nav_soon {
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #414141;
  background-color: #fff;
  border-radius: 5px;
  padding: 1.5rem 0;
}
.main_menu li a strong,
.main_menu li .nav_soon strong {
  font-weight: 600;
  font-size: .75rem;
}
.main_menu li .nav_soon {
  opacity: 0.3;
}
.main_menu li a::before,
.main_menu li .nav_soon::before {
  content: "";
  display: block;
  width: 35%;
  aspect-ratio: 1/1;
  margin: 0 auto 5px;
  background-size: 100% auto;
  -moz-background-size: 100% auto;
  -webkit-background-size: 100% auto;
  background-repeat: no-repeat;
}
.main_menu li small {
  display: block;
  font-size: 87.5%;
  margin-top: -0.2em;
}
.main_menu li.nav_long {
  width: 100%;
}
.main_menu li.nav_long a {
  height: 100%;
  text-align: center;
}

.main_menu li.nav_long a::before {
  display: none;
}
.main_menu li.nav_long a strong {
  display: block;
}
.main_menu li.nav_long a:before,
.main_menu li.nav_long .nav_soon:before {
  width: 180px;
  height: 110px;
  margin: 0 0 0 -20px;
}
@media screen and (max-width: 380px) {
  .main_menu li.nav_long a:before,
.main_menu li.nav_long .nav_soon:before {
    margin: 0 0 0 -40px;
  }
}
@media screen and (min-width: 960px) {
  .main_menu li {
    padding: 0;
  }
  .main_menu li a, .main_menu li .nav_soon {
    padding: 0;
  }
  header .main_menu li.nav_long {
    height: 240px;
  }
}
/*==========================================================================================

	■ Top

==========================================================================================*/
/* main
=====================================================*/
#top_main {
  margin-top: 10px;
}

.top_key_visual {
  display: flex;
  flex-direction: column;
}

.top_key_visual>div>img {
  max-width: inherit;
  width: 105vw;
  margin-left: -5vw;
}

.top_logo_pc {
  display: none;
}

.top_sec_title {
  font-size: 30px;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  color:#2F60C1;
}

.top_sec_title span {
  display: block;
  font-size: 12px;
  font-weight: 500;
  color:#414141;
  margin-top: 10px;
}

/* #top_main .inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  max-width: 600px;
  height: 355px;
  margin: 0 auto;
  padding: 260px 5.33% 0px;
  background: url(../images/top_main.png) 50% 100% no-repeat;
  background-size: 375px auto;
  -moz-background-size: 375px auto;
  -webkit-background-size: 375px auto;
} */
#top_main p {
  width: calc(100% - 40px);
  margin: 0 auto;
}

#top_main p:first-of-type {
  font-size: 24px;
  margin-top: 2.7rem;
  font-weight: 700;
}

#top_main p:nth-of-type(2) {
  margin-top: 20px;
  margin-bottom: 50px;
  line-height: 1.714;
}

#top_main .search_blc {
  position: relative;
  width: 100%;
  height: 64px;
}
#top_main .search_blc .search_form {
  top: 10px;
  left: 2.67%;
  width: 94.66%;
  z-index: 5;
  background: #fff;
  overflow: hidden;
}
#top_main .search_blc .btn_search {
  height: 44px;
  background: #fff45c;
}
#top_main .search_blc .search_form-bg {
  position: absolute;
  top: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  height: 64px;
  background: #487ade;
  mix-blend-mode: multiply;
  border-radius: 5px;
}

@media screen and (min-width: 960px) {
  #top_main {
    margin-top: 40px;
  }

  .top_key_visual {
    display: none;
  }

  .page-id-949 .top_key_visual {
    display: flex;
    align-items: center;
    flex-direction: row-reverse;
  }

  .top_key_visual>div:first-child {
    width: calc(50% + 20px);
    height: 337px;
    flex:none;
    margin-left: auto;
    border-radius: 20px 0 0 20px;
    overflow: hidden;
  }

  .top_key_visual>div:first-child>img {
    width: 100%;
    margin-left: 0;
    height: 100%;
    object-fit: cover;
    object-position: 50% 50%;
  }

  .top_key_visual>div:nth-child(2) {
    flex:1;
  }

  .top_key_visual>div:nth-child(2)>div {
    max-width: 444px;
    margin-right: 54px;
    margin-left: auto;
    padding-left: 20px;
  }

  .top_key_visual>div:nth-child(2)>div>img {
    width: 100%;
    max-width: 414px;
    margin-left: 0;
  }

  #top_main p:first-of-type {
    width: 100%;
    margin-top: 3.8rem;
  }

  #top_main p:nth-of-type(2) {
    width: 100%;
    margin-top: 28px;
    margin-bottom: 0;
    font-size: 14px;
  }

  .top_logo_pc {
    display: block;
  }

  .top_sec_title span {
    margin-top: 13px;
  }

  #top_main p {
    /* padding-top: 50px; */
    font-size: 20px;
  }
  #top_main .search_blc {
    position: relative;
    width: 100%;
    height: auto;
  }
  #top_main .search_blc .search_form {
    top: 15px;
    left: 15px;
    width: 690px;
  }
  #top_main .search_blc .btn_search {
    height: 50px;
  }
  #top_main .search_blc .search_form-bg {
    height: 80px;
  }
}
/* menu_index
=====================================================*/
#menu_index {
  padding: 50px 0 80px;
  background-color: #F7F4EF;
}

#menu_index a {
  text-decoration: none;
  color: #fff;
}
#menu_index p {
  max-width: 335px;
  margin: 0 auto;
  padding: 10px;
  text-align: left;
  font-weight: 300;
  font-size: 12px;
}
#menu_index .nav_long p {
  margin: 0 auto 0 35%;
  padding: 10px 0;
}

.top_main_menu ul {
  margin: 0 auto;
  margin-top: 34px;
  max-width: 1040px;
}

.top_main_menu li:not(:first-child) {
  margin-top: 32px;
}

.top_main_menu a>img {
  width: 85%;
  margin: 0 auto;
}

.info-text {
  font-size: 24px;
  font-weight: bold;
  position: relative;
  width: 75%;
  margin: 0 auto;
  margin-top: -3rem;
  padding: 1rem 0;
  background-color: #fff;
  border-radius: .6rem;
  text-align: center;
  z-index: 1;
}

.info-text img {
  width: 20%;
  margin: 0 auto;
}

.info-text strong {
  font-weight: bold;
  color: #414141;
}

#menu_index .info-text p {
  font-weight:normal;
  color: #414141;
  text-align: center;
  padding: 5px;
  margin-top: 8px;
}

#menu_index .info-text strong {
  font-size: 18px;
  line-height: 1.5;
  display: inline-block;
}

@media screen and (max-width: 480px) {
  #menu_index .nav_long p {
    margin: 0 auto 0 30%;
  }
}

@media screen and (min-width: 960px) {
  #menu_index {
    padding: 100px 0 120px;
  }
  #menu_index .main_menu li {
    position: relative;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 33.33%;
    height: 400px;
    padding-top: 29.28%;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    /*&.nav03, &.nav04, &.nav05, &.nav06{
    	&:hover{ opacity: 1; }
    }*/
  }
  #menu_index .main_menu li:hover {
    opacity: 0.8;
  }
  #menu_index .main_menu li a,
  #menu_index .main_menu li .nav_soon {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 13% 6%;
  }
  #menu_index .main_menu li a:before,
  #menu_index .main_menu li .nav_soon::before {
    width: 214px;
    height: 135px;
    margin: 0 auto 45px;
  }
  #menu_index .main_menu li strong {
    font-size: 24px;
    line-height: 1.2;
  }
  #menu_index .main_menu li small {
    display: inline-block;
    font-size: 24px;
    margin-top: 0;
  }
  #menu_index .main_menu li p {
    max-width: 340px;
    padding: 25px 0 0;
    font-size: 16px;
    font-weight: 500;
  }
  #menu_index .main_menu li.nav_long {
    width: 100%;
    padding: 0% 6%;
    height: 240px;
  }
  #menu_index .main_menu li.nav_long a {
    padding: 0% 6%;
  }
  #menu_index .main_menu li.nav_long a strong {
    margin: 0 auto;
    text-align: center;
  }
  #menu_index .main_menu li.nav_long a p {
    text-align: center;
    max-width: none;
    padding: 12px 0 0;
    margin: 0 auto;
  }
  #menu_index .main_menu li.nav_long a:before,
  #menu_index .main_menu li.nav_long .nav_soon:before {
    width: 254px;
    height: 140px;
    margin: 0 auto;
    position: initial;
  }

  .main_menu.main_menu_pc ul {
    flex-wrap: nowrap;
    align-items: baseline;
    justify-content: center;
    width: calc(100% - 40px);
    max-width: 1040px;
    margin-right: auto;
    margin-left: auto;
  }

  .main_menu.main_menu_pc li {
    flex-shrink: 0;
    flex-grow: 0;
    width: inherit;
    background-color: #fff;
    width: calc(100% / 8);
  }

  .main_menu.main_menu_pc li a::before {
    width: 3.5rem;
  }

  .main_menu.main_menu_pc li a strong {
    font-size: .75rem;
  }

  .main_menu.main_menu_pc li.nav_long {
    display: none;
  }

  .top_main_menu ul {
    display: flex;
    flex-wrap: wrap;
    margin-top: 15px;
    gap:0 40px;
    width: calc(100% - 40px);
  }

  .top_main_menu ul li {
    width: calc(50% - 20px);
  }

  .top_main_menu li:not(:first-child), 
  .top_main_menu li:not(:nth-child(2)) {
    margin-top: 62px;
  }

  .top_main_menu .info-text {
    width: calc(100% - 100px);
    margin-top: -5rem;
  }

  #menu_index .info-text strong {
    font-size: 24px;
  }
  
  .top_main_menu a>img {
    width: 100%;
  }

  .top_main_menu_align-height li a {
    display: flex;
    flex-direction: column;
    height: 100%;
  }

  .top_main_menu .info-text {
    flex:1;
    padding-top: 1.4rem;
    padding-bottom: 1.4rem;
  }

}
/* 最新情報
=====================================================*/
.news_list .sec_inner {
  color: #313131;
}
.news_list .post {
  padding: 1.2rem 0;
  border-top: #ccc 1px solid;
  max-width: 1040px;
  margin: 0 auto;
}

.news_list .post:last-of-type {
  border-bottom: #ccc 1px solid;
}

.news_list .post dt, .news_list .post dd {
  color: #414141;
  /* font-weight: 800; */
}

.news_list .post dt {
  font-size: 12px;
}

.news_list .post dd {
  margin: 0 auto;
  margin-top: 7px;
  font-size: 12px;
}

.news_list .post a {
  margin: 0 auto;
  text-decoration: none;
  color: #414141;
  /* font-weight: 800; */
}

.news_list .page_title>a {
  position: relative;
  display: block;
  max-width: 1296.5px;
  margin: 0 auto;
  margin-top: 1.5rem;
  padding-right: 1.7rem;
  text-align: right;
  font-size: .8rem;
  color: #2F60C1;
  /* font-weight: 800; */
}

.news_list .page_title>a::after {
  display: block;
  position: absolute;
  top: 50%;
  right: 1rem;
  width: .5em;
  height: .5em;
  margin-top: -.07rem;
  border-top: solid 1px #2F60C1;
  border-right: solid 1px #2F60C1;
  -webkit-transform: rotate(45deg) translateY(-50%);
  -ms-transform: rotate(45deg) translateY(-50%);
  transform: rotate(45deg) translateY(-50%);
  content: "";
}

#top_news.news_list .sec_inner {
  padding-top: 55px;
  padding-bottom: 20px;
}

#top_news.news_list .page_title {
  padding-top: 0;
}

#top_news.news_list .top_sec_title {
  margin-bottom: 3rem;
}

@media screen and (min-width: 960px) {
  /* .news_list {
    margin-top: -20px;
  } */

  .news_list .post {
    display: flex;
    gap: 4rem;
    padding: 28px 8.8%;
    border-top: #ccc 1px solid;
  }
  .news_list .post dt {
    flex-basis: 10%;
    flex-shrink: 0;
    padding-top: .3rem;
    line-height: 1em;
    font-size: .9rem;
    /* font-weight: 800; */
  }
  .news_list .post dd {
    flex-basis: calc(75% - 2rem);
    flex-shrink: 0;
    flex-grow: 1;
    width: inherit;
    margin: 0;
    font-size: .9rem;
    /* font-weight: 800; */
  }
  .news_list .post a:hover {
    opacity: 0.8;
  }
  .news_list .post:last-child {
    border-bottom: #ccc 1px solid;
  }

  #top_news.news_list .sec_inner {
    padding: 105px 20px 80px;
    padding-bottom: 31px;
    width: 100%;
    max-width: 1040px;
  }

  #top_news.news_list .page_title {
    padding-top: 12px;
  }

  #top_news.news_list .sec_inner .btn_circle {
    position: absolute;
    top: 96px;
    right: 0;
  }
}
/*お問い合わせ・リンク
=====================================================*/
#link_contact {
  background: #2257BD;
  color: #fff;
  padding: 60px 20px;
}

#link_contact .link_contact_logo {
  max-width: 292px;
  margin: 0 auto;
}

#link_contact .link_contact_text {
  margin-top: 17px;
  text-align: center;
  font-weight:400;
  font-size: 14px;
  color: #fff;
}

#link_contact .link_contact_links {
  margin-top: 30px;
}

#link_contact .link_contact_sns {
  display: flex;
  justify-content: center;
  gap: 30px;
}

#link_contact .link_contact_sns a {
  display: block;
  width: 47px;
}

#link_contact .link_contact_btn a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 258px;
  width: 100%;
  height: 39px;
  margin: 24px auto 0;
  text-align: center;
  font-weight: 600;
  font-size: 12px;
  color: #fff;
  border: 1px solid #fff;
  border-radius: 6px;
}

#link_contact .link_contact_btn a::after {
  display: block;
  position: absolute;
  top: 50%;
  right: 17px;
  width: 6px;
  height: 6px;
  margin-top: -1px;
  border-top: solid 1px #fff;
  border-right: solid 1px #fff;
  -webkit-transform: rotate(45deg) translateY(-50%);
  -ms-transform: rotate(45deg) translateY(-50%);
  transform: rotate(45deg) translateY(-50%);
  content: "";
}

#link_contact .link_contact_widebtns {
  margin-top: 64px;
}

#link_contact .link_contact_widebtns li:not(:last-child) {
  margin-bottom: 24px;
}

#link_contact .link_contact_widebtns a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 48px;
  text-align: center;
  font-weight: 600;
  font-size: 12px;
  background: #fff;
  border-radius: 6px;
}

#link_contact .link_contact_widebtns a::after {
  display: block;
  position: absolute;
  top: 50%;
  right: 15px;
  width: 7px;
  height: 7px;
  margin-top: -2px;
  border-top: solid 1px #2257BD;
  border-right: solid 1px #2257BD;
  -webkit-transform: rotate(45deg) translateY(-50%);
  -ms-transform: rotate(45deg) translateY(-50%);
  transform: rotate(45deg) translateY(-50%);
  content: "";
}

@media screen and (min-width: 960px) {
  h3 {
    font-size: 22px;
  }

  #link_contact {
    padding:96px 20px;
  }

  #link_contact .link_contact_inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 1040px;
    margin-right: auto;
    margin-left: auto;
  }

  #link_contact .link_contact_block1 {
    margin-right: 30px;
  }

  #link_contact .link_contact_logo {
    max-width: 332px;
    margin: 0;
  }

  #link_contact .link_contact_text {
    font-size: 12px;
  }

  #link_contact .link_contact_links {
    display: flex;
    align-items: center;
    margin-top: 40px;
  }

  #link_contact .link_contact_sns {
    gap:24px;
    margin-right: 56px;
  }

  #link_contact .link_contact_sns a {
    width: 40px;
  }

  #link_contact .link_contact_btn a {
    margin-top: 0;
    width: 225px;
    height: 35px;
    font-size: 14px;
  }

  #link_contact .link_contact_btn a::after {
    right: 15px;
    margin-top: -1px;
  }

  #link_contact .link_contact_block2 {
    max-width: 500px;
    flex:1;
  }

  #link_contact .link_contact_widebtns {
    margin-top: 0;
  }

  #link_contact .link_contact_widebtns a {
    height: 72px;
    font-size: 14px;
  }

  #link_contact .link_contact_widebtns a::after {
    right: 24px;
    margin-top: -1px;
    width: 10px;
    height: 10px;
  }

}
/*==========================================================================================

	■ contens common

==========================================================================================*/
/* section {
  background-color: #56BA1B33;
}

.bg_yellow {
  background: #e6ab0c;
}

.bg_green {
  background: #3ec1bd;
}

.bg_sblue {
  background: #1899d0;
}

.bg_purple {
  background: #8564d9;
}

.bg_pink {
  background: #fc8279;
}

.bg_brown {
  background: #928779;
}

.bg_blue {
  background: #487ade;
}

.bg_lgreen {
  background: #4cb84e;
} */

article {
  color: #fff;
}

/* パーツ
=====================================================*/
#contents {
  margin-top: 59px;
}

.sec_inner {
  padding: 0 20px 55px;
  color: #414141;
  /*font-weight: 800;*/
}

.page_title {
  padding-top: 30px;
  color: #fff;
}
.page_title .ttl_ico {
  width: 90px;
  margin: 0 auto;
  padding: .5rem;
  border-radius: 100%;
  background-color: #fff;
}

.page_title .ttl_ico.ico_s {
  width: 50px;
}
.page_title h2 {
  padding: 18px 0 0;
  margin-bottom: 18px;
  font-size: 1.3rem;
  /*font-weight: 800;*/
  text-align: center;
  line-height: 1.4;
  color: #414141;
}

.page_title h2 .spanBr {
  display: inline-block;
}
.page_title h2 .fontS {
  display: block;
  font-size: 12px;
  font-weight: normal !important;
}
.page_title h2 .fontM {
  font-size: 21px;
}

.page_title p {
  color: #414141;
  /*font-weight: 800;*/
  text-align: center;
}

.page_title h3 {
  text-align: center;
}
.page_title p.page_title_sub {
  max-width: 590px;
  margin: 0 auto;
  padding-top: 10px;
  text-align: left;
}
.page_title p.align_center {
  text-align: center;
}

.page_title .emphasis {
  color:#2F60C1;
}

.page_basic .page_title {
  margin-bottom: 3px;
}
.page_basic .page_title h2 {
  margin-bottom: 0;
}

.sec_body {
  padding: 0 0;
  max-width: 940px;
  margin: auto;
}
.sec_body .cont_title {
  margin-top: 40px;
  padding-bottom: 17px;
  text-align: center;
  color: #fff;
}
.sec_body .cont_title h3 {
  font-size: 18px;
  line-height: 1.4;
  /*font-weight: 800;*/
  color: #414141;
}
.sec_body .cont_title .ttltext-left {
  padding-top: 22px;
  text-align: left;
  /*font-weight: 800;*/
  color: #414141;
}

.sec_body .cont_title .ttltext-left a {
  /*font-weight: 800;*/
  border-bottom: 1px solid #040C1080;
}

.sec_body .textBox {
  padding-top: 40px;
}
.sec_body .textBox h3 {
  font-size: 18px;
  padding: 20px 0 10px;
}
.sec_body .textBox h3:first-child {
  padding-top: 0;
}
.sec_body .textBox h4 {
  padding: 0 0 5px;
  font-size: 16px;
}
.sec_body .textBox p {
  padding-bottom: 20px;
}
.sec_body .textBox p strong {
  font-weight: 500;
}
.sec_body .textBox p:last-child {
  padding-bottom: 0;
}
.sec_body .textBox p + ul {
  margin-top: -0.5em;
}
.sec_body .textBox li {
  text-indent: -1em;
  padding-left: 1em;
  padding-bottom: 0.3em;
}
.sec_body .textBox ul {
  padding-bottom: 1em;
}
.sec_body .textBox ul.list_num li {
  text-indent: -2em;
  padding-left: 2em;
  padding-bottom: 0;
}
.sec_body .textBox ul.sub_list {
  margin-top: -1em;
}
.sec_body .textBox img {
  margin: 0 auto;
}
.sec_body .textBox a {
  color: #fff;
  text-decoration: underline;
}
.sec_body .textBox-wh {
  padding: 30px 20px;
  background: #fff;
  border-radius: 5px;
}
.sec_body .btn_link-wh {
  /*
  li.ico_exlink a:after{
  	position: absolute;
  	right: 20px;
  	content:"";
  	width: 18px;
  	height: 15px;
  	background: url(../images/ico_exlink-pink.png) 0 0 no-repeat;
  	@include bgSize(18px,auto);
  }*/
}
.sec_body .btn_link-wh li {
  margin-top: 20px;
  text-align: center;
}
.sec_body .btn_link-wh a {
  position: relative;
  display: block;
  padding: 30px 55px;
  background: #fff;
  color: #fc8279;
  border-radius: 5px;
  line-height: 1;
  font-weight: 500;
}
.sec_body .btn_link-wh li.book_public a {
  background: url(../images/ico_book01.png) #fff 20px 50% no-repeat;
  background-size: 37px auto;
  -moz-background-size: 37px auto;
  -webkit-background-size: 37px auto;
}
.sec_body .btn_link-wh li.book_hospital a {
  background: url(../images/ico_book02.png) #fff 20px 50% no-repeat;
  background-size: 37px auto;
  -moz-background-size: 37px auto;
  -webkit-background-size: 37px auto;
}
.sec_body .pagenation {
  text-align: center;
}
.sec_body .pagenation li {
  display: inline-block;
  padding: 15px 10px 5px;
  font-size: 18px;
}
.sec_body .pagenation .current {
  display: inline-block;
  padding: 15px 17px 5px;
  font-size: 18px;
}
.sec_body .pagenation li.text_current {
  font-weight: 500;
}
.sec_body .pagenation a, .sec_body .pagenation strong {
  display: block;
  padding: 5px;
  color:#2F60C1;
}
.sec_body .knowledge_link p:first-child {
  padding-top: 28px;
}
.sec_body .knowledge_link p a {
  display: inline-block;
  font-size: 12px;
  padding-bottom: 2em;
}
@media screen and (min-width: 960px) {
  #contents {
    margin-top: 230px;
  }

  .page-id-949 #contents {
    margin-top: 76px;
  }

  .sec_body .knowledge_link p a:hover {
    text-decoration: underline;
  }
}
.sec_body .knowledge_link p a:after {
  display: inline-block;
  content: "";
  width: 14px;
  height: 11px;
  margin: 0 0 -1px 4px;
  background: url(../images/ico_exlink-black-new.png) 0 0 no-repeat;
  background-size: contain;
  -moz-background-size: contain;
  -webkit-background-size: contain;
}

.sns_share {
  padding-top: 30px;
}
.sns_share dt {
  width: 66px;
  height: 28px;
  background: url(../images/ico_share.png) 0 0 no-repeat;
  background-size: 100% auto;
  -moz-background-size: 100% auto;
  -webkit-background-size: 100% auto;
  text-indent: -9999px;
  vertical-align: top;
  color: #414141;
  margin-top: 0.15rem;
}
.sns_share dt, .sns_share dd {
  display: inline-block;
}
.sns_share dd img {
  width: 28px;
  margin: 0 2px;
}

.bg_white .sns_share dt {
  background-image: url(../images/ico_share-gray.png);
}

.link_survey {
  position: absolute;
  top: 245px;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  width: calc(450/750 * 100%);
  min-width: 230px;
}
.link_survey a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: auto;
  background: rgba(47, 191, 28, 0.95);
  border-radius: 5px;
  padding: 9px 0 11px;
}
.link_survey a div {
  text-align: center;
  letter-spacing: 0.02em;
}
.link_survey a div:nth-of-type(1), .link_survey a div:nth-of-type(2) {
  color: #ffffff;
}
.link_survey a div:nth-of-type(1) {
  font-size: 11px;
  line-height: 1.5;
  padding: 0 5px 8px;
}
.link_survey a div:nth-of-type(2) {
  font-size: 20px;
  line-height: 0.847;
  padding-bottom: 12px;
}
.link_survey a div:nth-of-type(3) {
  text-align: center;
  letter-spacing: 0.02em;
  font-size: 9px;
  font-weight: bold;
  line-height: 1.8;
  color: #2fbf1c;
  background: #ffffff;
  border-radius: 12px;
  padding: 0 8px 0 11px;
}

.icon_click {
  text-align: center;
  letter-spacing: 0.02em;
  font-size: 9px;
  font-weight: bold;
  line-height: 1.8;
  color: #2fbf1c;
  background: #ffffff;
  border-radius: 12px;
  padding: 0 8px 0 11px;
}

@media screen and (min-width: 960px) {
  .sec_inner {
    width: 940px;
    margin: 0 auto;
    padding-bottom: 160px;
  }

  .page_title {
    padding-top: 50px;
  }
  .page_title .ttl_ico {
    width: 153px;
  }
  .page_title .ttl_ico.ico_s {
    width: 100px;
  }
  .page_title h2 {
    padding: 28px 0 0;
    margin-bottom: 28px;
    font-size: 2rem;
    /*font-weight: 800;*/
  }
  .page_title h2 .fontS {
    font-size: 24px;
  }
  .page_title h2 .fontM {
    font-size: 30px;
    display: block;
  }
  .page_title p.page_title_sub {
    max-width: 760px;
    padding-top: 18px;
    font-weight: 300;
  }
  .page_title p {
    text-align: center;
    font-size: 1.25rem;
    /*font-weight: 800;*/
  }

  .page_basic .page_title {
    margin-bottom: 50px;
  }
  .page_basic .sec_body .textBox p + p {
    padding-top: 1.6em;
  }

  .sec_body {
    padding: 0 0;
  }
  .sec_body .cont_title {
    margin-top: 80px;
    padding-bottom: 28px;
    /*padding-bottom: 58px;*/
  }
  .sec_body .cont_title .ttltext-left {
    padding-bottom: 20px;
  }
  .sec_body .cont_title h3 {
    font-size: 28px;
    /*font-weight: 800;*/
  }
  .sec_body .cont_title h3 span {
    font-weight: 300;
  }
  .sec_body .cont_title:first-child {
    margin-top: 0;
  }
  .sec_body .textBox {
    padding-top: 10px;
  }
  .sec_body .textBox p {
    padding-bottom: 30px;
  }
  .sec_body .textBox h3 {
    font-size: 24px;
    padding: 50px 0 10px;
  }
  .sec_body .textBox h4 {
    padding: 10px 0 5px;
    font-size: 20px;
  }
  .sec_body .textBox p {
    padding-bottom: 20px;
  }
  .sec_body .textBox p strong {
    font-weight: 500;
  }
  .sec_body .textBox p:last-child {
    padding-bottom: 0;
  }
  .sec_body .textBox p + ul {
    margin-top: -0.5em;
  }
  .sec_body .textBox li {
    text-indent: -1em;
    padding-left: 1em;
    padding-bottom: 0.3em;
  }
  .sec_body .textBox ul.list_num li {
    text-indent: -2em;
    padding-left: 2em;
  }
  .sec_body .textBox ul.sub_list {
    padding-left: 1.8em;
  }
  .sec_body .btn_link-wh {
    /*
    li.ico_exlink a:after{
    	right: 38px;
    	width: 28px;
    	height: 24px;
    	background: url(../images/ico_exlink-pink-pc.png) 0 0 no-repeat;
    	@include bgSize(28px,auto);
    }*/
  }
  .sec_body .btn_link-wh li {
    float: left;
    margin-top: 0;
    width: 450px;
  }
  .sec_body .btn_link-wh li:nth-child(even) {
    float: right;
  }
  .sec_body .btn_link-wh a {
    padding: 40px 80px;
    font-size: 20px;
  }
  .sec_body .btn_link-wh a:hover {
    opacity: 0.8;
  }
  .sec_body .btn_link-wh li.book_public a {
    background-size: 40px auto;
    -moz-background-size: 40px auto;
    -webkit-background-size: 40px auto;
    background-position: 40px 50%;
  }
  .sec_body .btn_link-wh li.book_hospital a {
    background-size: 50px auto;
    -moz-background-size: 50px auto;
    -webkit-background-size: 50px auto;
    background-position: 30px 50%;
  }
  .sec_body .pagenation li {
    display: inline-block;
    padding: 55px 12px 15px;
    font-size: 18px;
  }
  .sec_body .pagenation li.text_current {
    font-weight: 500;
  }
  .sec_body .knowledge_link {
    padding-top: 30px;
  }

  .sns_share {
    padding-top: 90px;
  }
  .sns_share dt {
    margin-right: 3px;
  }

  .post_index + .sns_share {
    padding-top: 70px;
  }

  .exlink_list + .sns_share {
    padding-top: 90px;
  }

  .link_survey {
    top: auto;
    bottom: 163px;
    left: auto;
    right: -62px;
    width: 200px;
    min-width: auto;
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
}
@media screen and (min-width: 960px) and (max-width: 1030px) {
  .link_survey {
    right: -20px;
    bottom: 150px;
  }
}
@media screen and (min-width: 960px) {
  .link_survey a {
    position: relative;
    width: 200px;
    height: 200px;
    padding: 0;
    background: none;
    border-radius: 0;
    z-index: 1;
  }
  .link_survey a::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    background: rgba(47, 191, 28, 0.95);
    border-radius: 50%;
    z-index: 0;
    -webkit-transition: 0.3s ease;
    -o-transition: 0.3s ease;
    transition: 0.3s ease;
  }
  .link_survey a:hover::after {
    -webkit-transform: scale(1.06);
        -ms-transform: scale(1.06);
            transform: scale(1.06);
  }
  .link_survey a div {
    position: relative;
    z-index: 1;
  }
  .link_survey a div:nth-of-type(1) {
    font-size: 14px;
    padding: 10px 0 11px;
    max-width: 150px;
  }
  .link_survey a div:nth-of-type(2) {
    font-size: 30px;
    line-height: 0.753;
    padding-bottom: 20px;
  }
  .link_survey a div:nth-of-type(3) {
    font-size: 12px;
    line-height: 2.133;
    padding: 0 11px 0 15px;
  }
}
@media screen and (min-width: 960px) {
  .icon_click {
    font-size: 12px;
    line-height: 2.133;
    padding: 0 11px 0 15px;
  }
}
/* ボタン
=====================================================*/
/* #contents .btn_blc li {
  margin: 0 auto 15px;
} */
/* #contents .btn_blc a, #contents .btn_blc button {
  position: relative;
  display: block;
  padding: 13px 25px;
  background: #e6e6e6;
  color: #313131;
  text-align: center;
  border-radius: 5px;
  font-weight: 500;
} */
/* #contents .btn_blc a:before, #contents .btn_blc button:before {
  position: absolute;
  content: "";
  display: block;
  width: 27px;
  height: 27px;
  top: 10px;
  left: 22px;
} */
/* #contents .btn_blc .ico_contact a:before {
  background: url(../images/ico_mail.png) 50% 50% no-repeat;
  background-size: 27px auto;
  -moz-background-size: 27px auto;
  -webkit-background-size: 27px auto;
}
#contents .btn_blc .ico_link a:before {
  background: url(../images/ico_links.png) 50% 50% no-repeat;
  background-size: 27px auto;
  -moz-background-size: 27px auto;
  -webkit-background-size: 27px auto;
} */

#contents .btn_circle {
  text-align: center;
}
#contents .btn_circle a {
  display: inline-block;
  padding: 7px 20px;
  font-size: 12px;
  vertical-align: middle;
  border: #ccc 1px solid;
  border-radius: 20px;
}
#contents .btn_circle a::before {
  content: "";
  display: inline-block;
  width: 12px;
  height: 14px;
  margin-right: 5px;
  background: url(../images/ico_arrow-blueCircle.png) 0 0 no-repeat;
  background-size: 100% auto;
  -moz-background-size: 100% auto;
  -webkit-background-size: 100% auto;
  vertical-align: middle;
}

@media screen and (min-width: 740px) {
  #contents .btn_blc {
    text-align: center;
  }
  #contents .btn_blc li {
    display: inline-block;
    width: 47%;
    margin-bottom: 20px;
  }
  #contents .btn_blc li:nth-child(odd) {
    padding-right: 1.5%;
  }
  #contents .btn_blc li:nth-child(even) {
    padding-left: 1.5%;
  }
}
@media screen and (min-width: 960px) {
  #contents .btn_blc li {
    max-width: 335px;
  }
  #contents .btn_blc li:nth-child(odd) {
    padding-right: 2.7%;
  }
  #contents .btn_blc li:nth-child(even) {
    padding-left: 2.7%;
  }
  #contents .btn_blc a:hover, #contents .btn_blc button:hover {
    opacity: 0.8;
  }

  #contents .btn_circle {
    text-align: center;
  }
  #contents .btn_circle a {
    padding: 7px 0;
    font-size: 14px;
    border: none;
  }
  #contents .btn_circle a::before {
    width: 14px;
    height: 16px;
  }
  #contents .btn_circle a:hover {
    opacity: 0.8;
  }
}
/*==========================================================================================

	■ 第二回層

==========================================================================================*/
/* pankuzu
=====================================================*/
.pankuzu {
  padding: 10px 0 13px;
  color: #414141;
}
.pankuzu ul {
  margin: 0 auto;
}
.pankuzu li {
  padding-right: 23px;
  display: block;
  position: relative;
  display: inline-block;
  font-size: 12px;
  font-weight: 500;
}
.pankuzu li:after {
  content: "";
  display: block;
  position: absolute;
  top: calc(50% - 2px);
  right: 8px;
  width: 5px;
  height: 5px;
  border: solid var(--colorText1);
  border-width: 1px 1px 0 0;
  transform: rotate(45deg);
}
.pankuzu li:last-child:after {
  display: none;
}
.pankuzu li a {
  color: #414141;
  font-weight: inherit;
}
.pankuzu li a:hover {
  text-decoration: underline;
}

@media screen and (min-width: 960px) {
  .pankuzu ul {
    width: calc(100% - var(--sidePadding) * 2);
    max-width: var(--widthPc);
  }
}


/* カテゴリー　ページサブナビ
=====================================================*/
.category_nav {
  position: relative;
}
.category_nav .ico_menu {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 45px;
  padding: 11px 0 0 40px;
  background-position: 12px 50%;
  background-repeat: no-repeat;
  color: #414141;
  font-weight: 600;
}
.category_nav .ico_menu span {
  display: inline-block;
  -webkit-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.category_nav .ico_menu span {
  position: absolute;
  left: 12px;
  width: 18px;
  height: 2px;
  background-color: #414141;
  z-index: 60;
}
.category_nav .ico_menu span:nth-of-type(1) {
  top: 14px;
}
.category_nav .ico_menu span:nth-of-type(2) {
  top: 21px;
}
.category_nav .ico_menu span:nth-of-type(3) {
  top: 28px;
}
.category_nav .ico_menu.active span {
  position: fixed;
}
.category_nav .ico_menu.active span:nth-of-type(1) {
  top: 109px;
}
.category_nav .ico_menu.active span:nth-of-type(2) {
  top: 116px;
}
.category_nav .ico_menu.active span:nth-of-type(3) {
  top: 123px;
}
.category_nav .ico_menu.active span:nth-of-type(1) {
  -webkit-transform: translateY(8px) rotate(-45deg);
  -ms-transform: translateY(8px) rotate(-45deg);
      transform: translateY(8px) rotate(-45deg);
}
.category_nav .ico_menu.active span:nth-of-type(2) {
  opacity: 0;
}
.category_nav .ico_menu.active span:nth-of-type(3) {
  -webkit-transform: translateY(-6px) rotate(45deg);
  -ms-transform: translateY(-6px) rotate(45deg);
      transform: translateY(-6px) rotate(45deg);
}
.category_nav nav {
  display: none;
  position: fixed;
  top: 95px;
  left: 0;
  width: 100%;
  height: -o-calc(100% - 40px);
  height: calc(100% - 40px);
  z-index: 50;
}
.category_nav nav .scrl {
  position: absolute;
  top: 45px;
  left: 0;
  height: -o-calc(100% - 95px);
  height: calc(100% - 95px);
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: rgba(0, 0, 0, 0.6);
  overflow: auto;
}
.category_nav nav dl {
  background: #fff;
  padding-bottom: 3.5em;
}
.category_nav nav a {
  display: block;
  padding: 18px 0;
  border-bottom: #ccc 1px solid;
  line-height: 1;
}
.category_nav nav dt a {
  font-size: 16px;
  padding-left: 20px;
  padding-right: 20px;
}
.category_nav nav dd {
  padding-left: 20px;
  padding-right: 20px;
}
.category_nav nav dd a {
  font-size: 13px;
}

/* カテゴリーindex
=====================================================*/
.post_index {
  border-radius: 5px;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  background: #fff;
}
.post_index .post {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 50%;
  border-right: #ccc 1px solid;
  border-bottom: #ccc 1px solid;
}
.post_index .post:nth-child(even) {
  border-right: none;
}

.post_index .post.bdb-none {
  border-bottom: none;
}

.post_index .post:last-of-type {
  border-bottom: transparent;
}

.post_index .post a {
  display: block;
  padding: 30px 10px 60px;
  /*margin: 0 1px 1px 0;*/
}
.post_index .post a h4 {
  text-align: center;
  font-size: 16px;
  padding-bottom: 16px;
  /*font-weight: 800;*/
  line-height: 1.4;
}
.post_index .post a h4 span {
  font-weight: 500;
}
.post_index .post a h4 .fontS {
  font-size: 13px;
}
.post_index .post a p {
  font-size: 12px;
  /* font-weight: 800; */
}

.auther_blc {
  border-bottom: #fff 1px solid;
  margin-bottom: 18px;
}
.auther_blc.separate {
  padding-bottom: 25px;
}
.auther_blc dl {
  font-size: 12px;
}
.auther_blc dl dt {
  display: inline-block;
  padding: 2px 1.2em 1px;
  margin-bottom: 18px;
  /* font-weight: 800; */
  color: #2F60C1;
  background: #fff;
  border-radius: 2px;
}
.auther_blc dl dd {
  color: #414141;
  padding: 0 0 18px;
  /* font-weight: 800; */
  line-height: 1.5;
}
.auther_blc dl dd strong {
  font-size: 12px;
  /* font-weight: 800; */
}
.auther_blc .text_area {
  padding-top: 40px;
  text-align: left;
}

@media screen and (min-width: 960px) {
  .post_index {
    overflow: visible;
    background: none;
  }
  .post_index .post {
    width: 23.4%;
    min-height: 234px;
    margin-bottom: 20px;
    margin-right: 2.13%;
    border-radius: 5px;
    border: none;
    background: #fff;
  }
  .post_index .post:nth-child(4n+4) {
    margin-right: 0;
  }
  .post_index .post a {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 30px 20px;
    height: 100%;
  }
  .post_index .post a:hover {
    opacity: 0.7;
  }
  .post_index .post a h4 {
    font-size: 20px;
    padding-bottom: 16px;
    /* font-weight: 800; */
  }
  .post_index .post a h4 .fontS {
    font-size: 16px;
  }
  .post_index .post a p {
    font-size: 14px;
  }

  .auther_blc {
    padding-bottom: 10px;
    margin-bottom: 25px;
    text-align: center;
    color: #fff;
  }
  .auther_blc.separate {
    padding-bottom: 45px;
  }
  .auther_blc dl {
    display: inline-block;
    font-size: 14px;
    text-align: left;
  }
  .auther_blc dl dt {
    margin-bottom: 23px;
  }
  .auther_blc dl dd {
    padding: 0 0 20px;
  }
  .auther_blc dl dd strong {
    font-size: 14px;
  }
  .auther_blc .box_left {
    float: left;
    width: 280px;
    text-align: left;
  }
  .auther_blc .box_left dl {
    width: 140px;
  }
  .auther_blc .text_area {
    float: right;
    width: 660px;
    padding: 0;
  }
}
/* アンカーナビ
=====================================================*/
.anchor_link {
  padding: 15px 0;
  margin: 30px auto 0;
  border-top: #fff 1px solid;
  border-bottom: #fff 1px solid;
}
.anchor_link ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.anchor_link ul.link02 {
  padding: 0 40px;
}

.anchor_link li {
  padding: 0 3px;
  text-align: center;
}

.anchor_link li.link_off {
  opacity: 0.3;
}
.anchor_link li.link_off a {
  pointer-events: none;
}
.anchor_link a {
  color: #414141;
  /* font-weight: 800; */
}
.anchor_link a:after {
  content: "";
  display: block;
  width: 10px;
  height: 6px;
  margin: 7px auto 0;
  background: url(../images/ico_arrow-down-black.png) 0 0 no-repeat;
  background-size: 100% auto;
  -moz-background-size: 100% auto;
  -webkit-background-size: 100% auto;
}
.anchor_link.anchor_links {
  margin-top: 10px;
  border-color: #313131;
}
.anchor_link.anchor_links a {
  color: #313131;
}
.anchor_link.anchor_links a:after {
  background-image: url(../images/ico_arrow-down-black.png);
}
.anchor_link.anchor_links ul {
  padding: 0 40px;
}
.anchor_link.anchor_link_style_adjust {
  margin-top: 0;
}
.anchor_link.anchor_link_style_adjust ul ,
.anchor_link.anchor_facility ul {
  gap:25px 0;
}
.anchor_link.anchor_link_style_adjust li ,
.anchor_link.anchor_facility li {
  width: 50%;
  box-sizing: border-box;
}
.anchor_link.anchor_link_style_adjust a ,
.anchor_link.anchor_facility a {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  height: 100%;
  padding-bottom: 15px;
  box-sizing: border-box;
}
.anchor_link.anchor_link_style_adjust  a::after ,
.anchor_link.anchor_facility a::after {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin-top: 0;
}

@media screen and (min-width: 960px) {
  .anchor_link {
    margin-top: 78px;
    width: 940px;
  }
  .anchor_link ul {
    padding: 0 50px;
  }
  .anchor_link ul.link02 {
    padding: 0 195px;
  }
  .anchor_link a {
    display: inline-block;
  }
  .anchor_link a:hover {
    opacity: 0.8;
  }

  .anchor_action.anchor_link ul {
    max-width: 580px;
    margin: 0 auto;
  }

  .anchor_link.anchor_links {
    margin-top: 50px;
    border-color: #313131;
  }
  .anchor_link.anchor_links ul {
    padding: 0 165px 0 215px;
  }
  
  .anchor_link.anchor_facility li {
    width: auto;
  }
  .anchor_link.anchor_link_style_adjust {
    padding: 0;
    border-bottom:none;
    width: auto;
  }
  .anchor_link.anchor_link_style_adjust ul {
    justify-content: flex-start;
    padding: 0;
    width: 100%;
    gap:0;
  }
  .anchor_link.anchor_link_style_adjust li {
    width: calc(100% / 6);
    box-sizing: border-box;
    border-bottom: 1px solid #FFF;
  }  
  .anchor_link.anchor_link_style_adjust a {
    padding-top: 18px;
    padding-bottom: 35px;
    min-height: 90px;
  }
  .anchor_link.anchor_link_style_adjust a::after {
    bottom: 15px;
  }
}

/* 関連情報
=====================================================*/
.sec_body.relation_info {
  margin-top: 28px;
  padding-top: 0;
  border-top: #fff 1px solid;
}
.sec_body.relation_info .cont_title {
  margin-top: 28px;
  padding-bottom: 28px;
}
.sec_body.relation_info .main_menu li {
  width: 100%;
}
.sec_body.relation_info .main_menu li a {
  padding: 25px 10px 28px;
}
.sec_body.relation_info .main_menu li strong {
  display: block;
  font-size: 16px;
  padding-top: 5px;
}
.sec_body.relation_info .main_menu li p {
  font-size: 12px;
  padding: 10px 0 0;
}

@media screen and (min-width: 960px) {
  .sec_body.relation_info {
    margin-top: 26px;
  }
  .sec_body.relation_info .cont_title {
    margin-top: 58px;
    padding-bottom: 58px;
  }
  .sec_body.relation_info .main_menu ul {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .sec_body.relation_info .main_menu li {
    width: 50%;
  }
  .sec_body.relation_info .main_menu li a {
    padding: 22px 10px 38px;
  }
  .sec_body.relation_info .main_menu li strong {
    font-size: 22px;
    padding-top: 0px;
  }
  .sec_body.relation_info .main_menu li p {
    font-size: 17px;
    padding: 10px 0 0;
    font-weight: 500;
  }
  .sec_body.relation_info a:hover {
    opacity: 0.6;
  }
}
/* アレルギーについて
=====================================================*/
.sec_inner.knowledge {
  max-width: 900px;
}

.sec_body .knowledge_about {
  text-align: center;
  display: block;
}
.sec_body .knowledge_about > div {
  background: #ffffff;
  border-radius: 5px;
}
.sec_body .knowledge_about > div a {
  color: #414141;
  padding: 18px 20px 25px;
  margin-bottom: 20px;
  display: block;
  /* font-weight: 800; */
}
.sec_body .knowledge_about > div a h4 {
  text-align: center;
  font-size: 16px;
  padding-bottom: 10px;
  /* font-weight: 800; */
}
.sec_body .knowledge_about > div a p {
  text-align: left;
  font-size: 12px;
}
.sec_body .knowledge-section > div {
  background: #ffffff;
  padding: 20px 0 0;
  border-bottom: 1px solid #dddddd;
}
.sec_body .knowledge-section > div h3 {
  text-align: center;
  padding-bottom: 15px;
  font-size: 18px;
}
.sec_body .knowledge-section > div h4 {
  background: #e6ab0c;
  color: #ffffff;
  border-radius: 50px;
  font-size: 12px;
  text-align: center;
  padding: 5px 10px;
  max-width: 285px;
  width: 100%;
  margin: 0 auto 30px;
  min-height: 38px;
  margin: 0 auto 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.sec_body .knowledge-section > div p {
  letter-spacing: 0.02em;
  line-height: 1.6;
  font-size: 14px;
  padding: 0 20px 35px;
}
.sec_body .knowledge-section > div p .bg_gray {
  background: #f2f2f2;
  display: block;
  padding: 10px 10px;
  border-radius: 5px;
  font-size: 11px;
}
.sec_body .knowledge-section > div div {
  padding: 0 20px 20px;
}
.sec_body .knowledge-section > div div .img_cap_center {
  text-align: center;
  font-size: 10px;
  padding: 8px 20px;
}
.sec_body .knowledge-section > div div img {
  margin: 0 auto;
}
.sec_body .knowledge-section > div div.img-scroll > div {
  overflow-x: auto;
  padding: 0;
}
.sec_body .knowledge-section > div div.img-scroll > div img {
  height: auto;
  max-width: none;
}
.sec_body .knowledge-section > div div.img-scroll .img_cap {
  text-align: center;
  font-size: 10px;
  padding: 8px 20px;
}
.sec_body .knowledge-section > div div.img-wide {
  padding: 0 5px 20px;
}
.sec_body .knowledge-section > div div.img-box {
  margin-top: 40px;
}
.sec_body .knowledge-section > div div.img-box .img-scroll {
  padding-bottom: 38px;
}
.sec_body .knowledge-section > div div.img-box .img-scroll:last-child {
  padding-bottom: 20px;
}
.sec_body .knowledge-section > div div.img-box .img_cap_center {
  padding-top: 18px;
}
.sec_body .knowledge-section > div table {
  margin-bottom: 22px;
  padding: 0 20px;
  border-collapse: separate;
}
.sec_body .knowledge-section > div table tbody th, .sec_body .knowledge-section > div table tbody td {
  padding: 11px 15px;
  display: block;
  font-size: 12px;
  line-height: 1.6;
}
.sec_body .knowledge-section > div table tbody th {
  background: #fff1cc;
  vertical-align: middle;
  text-align: center;
}
.sec_body .knowledge-section > div table tbody td {
  padding: 15px 15px;
  background: #e1eed9;
}
.sec_body .knowledge-section > div a.ex_link:after {
  display: inline-block;
  content: "";
  width: 14px;
  height: 11px;
  margin: 0 0 -1px 3px;
  background: url(../images/ico_exlink-black.png) 0 0 no-repeat;
  background-size: 100% auto;
  -moz-background-size: 100% auto;
  -webkit-background-size: 100% auto;
}
.sec_body .knowledge-section > div:first-of-type {
  border-radius: 5px 5px 0 0;
}
.sec_body .knowledge-section > div:last-of-type {
  border-radius: 0 0 5px 5px;
  border: none;
  padding-bottom: 5px;
}

.sec_body .knowledge-info {
  margin-top: 40px;
}
.sec_body .knowledge-info h3 {
  text-align: center;
  font-size: 18px;
  margin-bottom: 20px;
}

@media screen and (min-width: 960px) {
  .sec_body .knowledge_about > div a {
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    padding: 30px 20px 41px;
  }
  .sec_body .knowledge_about > div a h4 {
    font-size: 20px;
    padding-bottom: 15px;
  }
  .sec_body .knowledge_about > div a p {
    text-align: center;
    font-size: 14px;
  }
  .sec_body .knowledge_about > div a:hover {
    opacity: 0.7;
  }
  .sec_body .knowledge-section > div {
    padding: 40px 40px 0;
  }
  .sec_body .knowledge-section > div h3 {
    font-size: 28px;
  }
  .sec_body .knowledge-section > div h4 {
    max-width: 520px;
    font-size: 16px;
    padding: 4px 10px 6px;
    min-height: 40px;
    margin: 0 auto 30px;
  }
  .sec_body .knowledge-section > div p {
    padding: 0 0 50px;
  }
  .sec_body .knowledge-section > div p .bg_gray {
    padding: 15px 20px;
    font-size: 14px;
  }
  .sec_body .knowledge-section > div p a {
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
  }
  .sec_body .knowledge-section > div p a:hover {
    opacity: 0.7;
    text-decoration: underline;
  }
  .sec_body .knowledge-section > div div {
    text-align: right;
    padding: 0 0 46px;
  }
  .sec_body .knowledge-section > div div .img_cap_center {
    text-align: center;
    font-size: 14px;
    padding: 8px 20px 0;
  }
  .sec_body .knowledge-section > div div img {
    margin: 0 auto;
  }
  .sec_body .knowledge-section > div div.img-scroll > div img {
    height: auto;
    max-width: 100%;
  }
  .sec_body .knowledge-section > div div.img-scroll .img_cap {
    text-align: right;
    font-size: 14px;
    padding: 8px 20px 0;
  }
  .sec_body .knowledge-section > div table {
    max-width: 750px;
    margin: 0 auto;
    padding: 0 0 50px;
  }
  .sec_body .knowledge-section > div table tbody th, .sec_body .knowledge-section > div table tbody td {
    padding: 18px 20px;
    border: 1px solid #ffffff;
    padding: 20px 20px;
    display: table-cell;
    line-height: 1.5;
  }
  .sec_body .knowledge-section > div table tbody th {
    width: 20%;
  }
  .sec_body .knowledge-section > div table tbody td {
    padding: 18px 20px;
    width: 80%;
  }
  .sec_body .knowledge-section > div:last-of-type {
    padding-bottom: 50px;
  }
  .sec_body .knowledge-info {
    margin-top: 70px;
  }
  .sec_body .knowledge-info h3 {
    margin-bottom: 25px;
    font-size: 28px;
  }
  .sec_body .knowledge-info .exlink_list {
    gap:40px 0;
  }
  .sec_body .knowledge-info .exlink_list::after {
    content: none;
  }
  .sec_body .knowledge-info .exlink_list .post {
    width: calc(50% - 20px);
    min-height: auto;
    margin: 0;
    text-align: center;
  }
  .sec_body .knowledge-info .exlink_list .post .inner {
    padding-bottom: 106px;
  }
  .sec_body .knowledge-info .exlink_list .post a {
    color: #2F60C1;
    bottom: 40px;
    width: 200px;
    border-width: 1px;
  }
  .sec_body .knowledge-info .exlink_list .post h4 {
    font-size: 24px;
    line-height: 1.6;
  }
}
/* よくある質問 search
=====================================================*/
.faq_searchBlc dt {
  margin-top: 28px;
  padding-bottom: 10px;
  font-size: 16px;
  color: #414141;
}
.faq_searchBlc dl:first-child dt {
  margin-top: 5px;
}
.faq_searchBlc .list_keyword {
  padding: 20px 10px 5px 30px;
  background: #e1ecff;
  font-size: 12px;
  line-height: 1;
  border-radius: 5px;
}
.faq_searchBlc .list_keyword li {
  display: inline-block;
  padding: 0 1.2em 18px 0;
}
.faq_searchBlc .list_keyword li a {
  color: #487ade;
}

#top_faq .sec_inner dl:first-child dt {
  margin-top: 10px;
}

@media screen and (min-width: 960px) {
  .faq_searchBlc dl {
    margin-top: 37px;
  }
  .faq_searchBlc dt {
    display: inline-block;
    margin: 0 0;
    margin-top: 0 !important;
    padding: 12px 0 0;
    width: 210px;
    vertical-align: top;
    font-weight: 300;
  }
  .faq_searchBlc dd {
    display: inline-block;
    width: 590px;
    padding-right: 70px;
  }
  .faq_searchBlc .list_keyword {
    padding: 20px 10px 5px 30px;
    font-size: 14px;
  }
  .faq_searchBlc .list_keyword li {
    padding: 0 2em 18px 0;
  }
  .faq_searchBlc .list_keyword li a:hover {
    text-decoration: underline;
  }

  #top_faq .sec_inner {
    padding: 0 0 80px;
  }
  #top_faq .sec_inner dl:first-child dt {
    margin-top: 0px;
  }
  #top_faq .sec_inner .sec_body {
    padding-top: 0px;
  }
  #top_faq .sec_inner .faq_searchBlc {
    margin-top: 0;
  }
}
/* よくある質問 - 下層ページ
=====================================================*/
/*
.cont_title + .faq_searchBlc{
	dl:first-child dt{ margin-top: 5px; }
}
*/
.faq_searchBlc + .cont_title {
  margin-top: 55px;
}

.faq_searchBlc + .faq_list {
  margin-top: 40px;
}

.faq_list .search_word {
  font-size: 16px;
}
.faq_list .search_word strong {
  font-weight: 500;
}
.faq_list a {
  color: inherit;
}
.faq_list .post > a {
  display: block;
}
.faq_list .post {
  padding: 26px 0 27px;
  border-bottom: #ccc 1px solid;
}
.faq_list .post:first-child {
  padding-top: 0;
}
.faq_list p {
  font-weight: 200;
}
.faq_list .text_title {
  font-size: 16px;
  padding-bottom: 12px;
  /* font-weight: 800; */
}
.faq_list .tag_area {
  padding: 15px 0 0;
}
.faq_list .tag_area li {
  display: inline-block;
  padding: 0 1em 0.2em 0;
}
.faq_list .tag_area a {
  font-size: 12px;
  color: #e1ecff;
  /* font-weight: 800; */
}

.faq_list.faq_detail {
  /*.text_title{ padding-bottom: 28px; }*/
}
.faq_list.faq_detail .text_title {
  padding-bottom: 50px;
}

.sns_share + .faq_searchBlc {
  margin-top: 43px;
}

@media screen and (min-width: 960px) {
  .cont_title + .faq_searchBlc {
    padding-bottom: 25px;
  }
  .cont_title + .faq_searchBlc dl:first-child {
    margin-top: 2px;
  }
  .cont_title + .faq_searchBlc dl:first-child dt {
    margin-top: 0;
  }

  .faq_searchBlc + .faq_list {
    margin-top: 80px;
  }

  .faq_list + .sns_share {
    padding-top: 60px;
  }

  .faq_list .search_word {
    font-size: 20px;
    margin-bottom: 5px;
  }
  .faq_list .text_title {
    padding-bottom: 23px;
  }
  .faq_list .post > a:hover {
    opacity: 0.8;
  }
  .faq_list .tag_area {
    padding: 10px 0 0;
  }
  .faq_list .tag_area li {
    display: inline-block;
    padding: 0 1em 0.2em 0;
  }
  .faq_list .tag_area a:hover {
    text-decoration: underline;
  }

  .sns_share + .faq_searchBlc {
    margin-top: 78px;
  }

  .faq_list.faq_detail {
    margin-top: -33px;
  }
  .faq_list.faq_detail .text_title {
    padding-bottom: 28px;
  }
  .faq_list.faq_detail .post {
    padding-bottom: 53px;
  }
}
/* タイトル下マージン
=====================================================*/
.page_title {
  margin-bottom: 35px;
}

.page_title + .sec_body {
  padding-top: 18px;
}

.anchor_link + .sec_body {
  margin-top: 60px;
}

.page_title + .sec_body .cont_title:first-child {
  margin-top: 0;
}

@media screen and (min-width: 960px) {
  .page_title {
    margin-bottom: 53px;
  }

  .page_title + .sec_body {
    padding-top: 20px;
  }
}
/* 検索結果
=====================================================*/
.faq_list.search_result a {
  color: #313131;
}
.faq_list.search_result .text_title {
  font-size: 16px;
  padding-bottom: 12px;
  font-weight: 300;
}
.faq_list.search_result .tag_area a {
  color: #313131;
}

.page_title + .sec_body .textBox {
  padding-top: 0;
}

@media screen and (min-width: 960px) {
  .page_title + .sec_body .faq_searchBlc {
    margin-top: 10px;
  }

  .faq_list.search_result {
    margin-top: 60px;
  }
}
/* 外部リンクリスト（もしもの時、日本の取組み、小児アレルギー診療ウェブ講義）
=====================================================*/
.exlink_list .post {
  border-radius: 5px;
  background: #fff;
}
.exlink_list .post, .exlink_list .post a {
  color: #333;
}
.exlink_list .post .inner {
  position: relative;
  padding: 18px 20px;
  margin-top: 10px;
  font-size: 12px;
  /* font-weight: 800; */
}
.exlink_list .post .inner h4 {
  padding-bottom: 14px;
  padding-right: 25px;
  font-size: 16px;
  line-height: 1.4;
  /* font-weight: 800; */
}
.exlink_list .post .inner small {
  display: inline-block;
  padding-bottom: 15px;
  font-size: 13px;
  line-height: 1.6;
  font-weight: 500;
  letter-spacing: 0;
}
.exlink_list .post .inner .ico_exlink {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.exlink_list .post .inner .ico_exlink san.dp_ilb {
  /* font-weight: 800; */
}
.exlink_list .post .inner .ico_exlink:after {
  position: absolute;
  top: 20px;
  right: 20px;
  content: "";
  display: block;
  width: 18px;
  height: 18px;
  background: url(../images/ico_exlink-blue-new.png) 0 0 no-repeat;
  background-size: 18px auto;
  -moz-background-size: 18px auto;
  -webkit-background-size: 18px auto;
}
.exlink_list .post .inner .ico_exlink.no_icon {
  padding: 7px 5px;
}
.exlink_list .post .inner .ico_exlink.no_icon::after {
  display: none;
}
.exlink_list + .cont_title {
  margin-top: 60px;
}
.exlink_list.video_list {
  max-width: 640px;
  margin: 50px auto 0;
}
.exlink_list.video_list .post {
  background: none;
  margin: 0;
}
.exlink_list.video_list .post .inner {
  padding: 0 0 35px;
}
.exlink_list.video_list .post .inner.no_pb {
  padding: 0;
}
.exlink_list.video_list .post .inner h4 {
  color: #000;
  text-align: left !important;
  font-size: 16px;
}
.exlink_list.video_list .post .inner .post_title {
  text-align: center;
  font-size: 20px;
}
.exlink_list.video_list .post .inner .post_title.emphasis {
  color:#2F60C1;
}
.exlink_list.video_list .post .inner .post_title.emphasis small {
  color: var(--colorText1);
  font-size: 14px;
}
.exlink_list.video_list .post .inner .video-wrap {
  position: relative;
  height: 0;
  padding: 0 0 56.25%;
  overflow: hidden;
  margin-bottom: 10px;
}
.exlink_list.video_list .post .inner .video-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-width: 100%;
}
.exlink_list.video_list .post .inner dl {
  color: #000;
  text-align: left;
}
.exlink_list.video_list .post .inner dl dt {
  font-size: 14px;
  white-space: wrap;
  font-weight: bold;
  padding-bottom: 5px;
}
.exlink_list.video_list .post .inner dl dd {
  font-size: 12px;
}
.exlink_list.video_list .post .inner dl.single dt {
  padding: 0;
}
.exlink_list.bg_b .post {
  background: #d2f8fc;
}

@media screen and (min-width: 960px) {
  .exlink_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    justify-content: space-between;
  }

  .exlink_list::after {
    content: '';
    display: block;
    width: 30%;
  }

  .exlink_list .post {
    /* width: 300px; */
    width: 32%;
    min-height: 300px;
    margin: 20px 20px 0 0;
    margin-right: 0;
  }
  .exlink_list .post:nth-child(3n+3) {
    margin-right: 0;
  }
  .exlink_list .post:nth-child(-n+3) {
    margin-top: 0;
  }
  .exlink_list .post-s {
    min-height: 200px;
  }
  .exlink_list .post .inner {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 28px 20px 94px;
    height: 100%;
    margin-top: 0;
    font-size: 14px;
    background: none;
  }
  .exlink_list .post .inner h4 {
    padding-bottom: 14px;
    padding-right: 0;
    text-align: center;
    font-size: 20px;
    line-height: 1.6;
  }
  .exlink_list .post .inner .ico_exlink {
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto;
    top: auto;
    bottom: 28px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 160px;
    height: auto;
    padding: 7px 15px 7px 5px;
    text-align: center;
    border: #2F60C1 2px solid;
    border-radius: 5px;
  }
  .exlink_list .post .inner .ico_exlink:hover {
    opacity: 0.7;
  }
  .exlink_list .post .inner .ico_exlink:after {
    top: 10px;
    right: 10px;
  }
  .exlink_list + .cont_title {
    margin-top: 75px;
  }
  .exlink_list.video_list {
    max-width: none;
    margin: 70px 0 0;
  }
  .exlink_list.video_list .post {
    width: 50%;
  }
  .exlink_list.video_list .post:nth-of-type(even) .inner {
    margin-left: 20px;
  }
  .exlink_list.video_list .post:nth-of-type(odd) .inner {
    margin-right: 20px;
  }
  .exlink_list.video_list .post .inner {
    padding: 0 0 60px;
  }
  .exlink_list.video_list .post .inner h4 {
    font-size: 20px;
  }
  .exlink_list.video_list .post .inner .video-wrap {
    margin-bottom: 20px;
  }
  .exlink_list.video_list .post .inner dl {
    text-align: left;
  }
  .exlink_list.video_list .post .inner dl dt {
    font-size: 16px;
    white-space: nowrap;
    padding-bottom: 14px;
  }
  .exlink_list.video_list .post .inner dl dd {
    font-size: 14px;
  }
  .exlink_list.bg_b .post {
    background: #d2f8fc;
  }
  .exlink_list.bg_b .post .ico_exlink {
    background: #fff;
  }
}
/* センター揃え */
@media screen and (min-width: 960px) {
  .sec_body .link_col2 {
    max-width: 640px;
    margin: 0 auto;
    padding-left: 20px;
  }
}
/* 災害時の対応
=====================================================*/
.bg_sblue .page_title {
  margin-bottom: 25px;
}
.bg_sblue .flag_desc {
  max-width: 500px;
  margin: 0 auto;
}
.bg_sblue .flag_desc ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.bg_sblue .flag_desc ul li {
  width: calc((100% - 20px) /2);
  margin-right: 20px;
  padding-bottom: 10px;
}
.bg_sblue .flag_desc ul li:nth-of-type(2) {
  margin-right: 0;
}
.bg_sblue .flag_desc ul li dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.bg_sblue .flag_desc ul li dl dt {
  margin-right: 10px;
}
.bg_sblue .flag_desc ul li dl dt .flag {
  width: 40px;
  height: 40px;
  border: 1px solid #fff;
  border-radius: 25px;
}
.bg_sblue .flag_desc ul li dl dt .flag span {
  font-size: 12px;
}
.bg_sblue .flag_desc ul li dl dd {
  font-size: 12px;
  color: #414141;
}
.bg_sblue .anchor_link {
  margin: 20px auto 0;
}
.bg_sblue .exlink_list .post {
  position: relative;
  margin: 0 0 40px;
}
.bg_sblue .exlink_list .post .flags {
  position: absolute;
  top: -26px;
  right: -10px;
}
.bg_sblue .exlink_list .post .flags .flag {
  border: 1px solid #fff;
}
.bg_sblue .exlink_list .post .inner .ico_exlink:after {
  content: none;
}

@media screen and (min-width: 960px) {
  .bg_sblue .flag_desc {
    max-width: none;
    padding: 20px 0;
    width: 940px;
  }
  .bg_sblue .flag_desc ul {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    padding: 0 6px;
  }
  .bg_sblue .flag_desc ul li {
    width: calc((100% - 20px) /3);
    margin-right: 20px;
    padding-bottom: 15px;
  }
  .bg_sblue .flag_desc ul li:nth-of-type(2) {
    margin-right: 20px;
  }
  .bg_sblue .flag_desc ul li:nth-of-type(3) {
    margin-right: 0;
  }
  .bg_sblue .flag_desc ul li dl dt {
    margin-right: 15px;
  }
  .bg_sblue .flag_desc ul li dl dt .flag {
    width: 46px;
    height: 46px;
    border: 2px solid #fff;
    border-radius: 25px;
  }
  .bg_sblue .flag_desc ul li dl dt .flag span {
    font-size: 14px;
  }
  .bg_sblue .flag_desc ul li dl dd {
    font-size: 14px;
    line-height: 1.882;
    /* font-weight: 800; */
  }
  .bg_sblue .exlink_list .post {
    margin: 50px 20px 0 0;
    margin-right: 0;
  }
  .bg_sblue .exlink_list .post:nth-child(3n+3) {
    margin-right: 0;
  }
  .bg_sblue .exlink_list .post .flags {
    top: -28px;
  }
  .bg_sblue .exlink_list .post .flags .flag {
    border: 2px solid #fff;
  }
  .bg_sblue .exlink_list .post .inner .ico_exlink:after {
    content: "";
  }
}
.flag {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 46px;
  height: 46px;
  color: #fff;
  border: 2px solid #fff;
  -webkit-box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.15);
          box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.15);
  border-radius: 25px;
  text-align: center;
}
.flag.f01 {
  background: #d25197;
}
.flag.f02 {
  background: #31bd8d;
}
.flag.f03 {
  background: #e5881b;
}
.flag span {
  padding-left: 2px;
  letter-spacing: 0.2em;
  font-size: 14px;
  font-weight: 500;
}

/* 本棚、研修・講習会・eラーニング
=====================================================*/
.bg_pink .exlink_list .post, .bg_lgreen .exlink_list .post {
  min-height: 118px;
}
.bg_pink .exlink_list .post .inner h4 .fontS, .bg_lgreen .exlink_list .post .inner h4 .fontS {
  display: block;
  font-size: 12px;
}
.bg_pink .exlink_list .post .inner .text_auther, .bg_lgreen .exlink_list .post .inner .text_auther {
  margin-top: -10px;
  padding-bottom: 1.1em;
}
.bg_pink .exlink_list .post .inner .book_pic img, .bg_lgreen .exlink_list .post .inner .book_pic img {
  display: block;
  margin: 0 auto;
  height: 170px;
  width: auto;
}

@media screen and (min-width: 960px) {
  .bg_pink .exlink_list .post, .bg_lgreen .exlink_list .post {
    min-height: 260px;
  }
  .bg_pink .exlink_list .post .inner h4, .bg_lgreen .exlink_list .post .inner h4 {
    min-height: 4.6em;
    padding-top: 5px;
  }
  .bg_pink .exlink_list .post .inner h4 .fontS, .bg_lgreen .exlink_list .post .inner h4 .fontS {
    font-size: 14px;
    padding-top: 0.8em;
  }
  .bg_pink .exlink_list .post .inner .text_auther, .bg_lgreen .exlink_list .post .inner .text_auther {
    margin-top: 0;
    padding-bottom: 1.1em;
    text-align: center;
  }
}
/* indexのみ */
.bg_pink .exlink_list.book_index .post .inner h4 {
  min-height: inherit;
}

/* 研修・講習会・eラーニングのみ */
.bg_lgreen .exlink_list .post .inner h4 {
  min-height: inherit;
}

.link_col3 {

}

/* 医療機関情報
=====================================================*/
.btn_wide {
  border-radius: 5px;
  background: #fff;
}
.btn_wide a {
  display: block;
  position: relative;
  padding: 22px 10px;
  color: #2F60C1;
  text-align: center;
  font-size: 16px;
  line-height: 1.4;
  font-weight: 500;
}
.btn_wide a .fontS {
  font-size: 14px;
}
.btn_wide.ico_search a {
  padding: 32px 10px;
}
.btn_wide.ico_search a::before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  margin-right: 5px;
  width: 25px;
  height: 25px;
  background: url(../images/ico_search_pu.png) 0 0 no-repeat;
  background-size: 100% auto;
  -moz-background-size: 100% auto;
  -webkit-background-size: 100% auto;
}
.btn_wide.ico_exlink div {
  display: inline-block;
  max-width: 88%;
  vertical-align: middle;
  font-weight: 500;
}
.btn_wide.ico_exlink a:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 18px;
  height: 18px;
  margin-left: 5px;
  background: url(../images/ico_exlink.svg) 0 0 no-repeat;
  background-size: 18px auto;
  -moz-background-size: 18px auto;
  -webkit-background-size: 18px auto;
}

.sec_body .line_blc {
  margin-top: 20px;
  padding: 20px;
  border: #040C10 1px solid;
}
.sec_body .line_blc.line_blc-wh {
  border: none;
  padding-top: 20px;
  padding-bottom: 20px;
}
.sec_body .line_blc h4 {
  padding-bottom: 0.5em;
  font-size: 16px;
}
.sec_body .line_blc li {
  padding-top: 0.9em;
}
.sec_body .line_blc li a {
  color: #040C10;
  text-decoration: underline;
  margin-left: 2px;
  vertical-align: top;
}

.sec_body .line_blc-wh {
  margin-top: 20px;
  padding: 10px 18px;
  background: #fff;
  border-radius: 5px;
  color: #040C10;
}

#facility05 + .line_blc {
  margin-top: 0;
}

@media screen and (min-width: 960px) {
  .btn_wide {
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
  }
  .btn_wide a {
    padding: 17px 10px;
    font-size: 20px;
  }
  .btn_wide a .fontS {
    font-size: 100%;
    font-weight: 500;
  }
  .btn_wide:hover {
    opacity: 0.8;
  }
  .btn_wide.ico_search a {
    padding: 21px 10px;
  }
  .btn_wide.ico_search a::before {
    margin-right: 8px;
  }
  .btn_wide.ico_exlink a:after {
    margin-left: 10px;
  }

  .sec_body .line_blc {
    margin-top: 40px;
    padding: 40px;
    text-align: center;
  }
  .sec_body .line_blc.line_blc-wh {
    padding-top: 30px;
    padding-bottom: 30px;
  }
  .sec_body .line_blc h4 {
    padding-bottom: 1.5em;
    font-size: 24px;
  }
  .sec_body .line_blc li {
    padding: 1em 1em;
    display: inline-block;
  }
  .sec_body .line_blc li a:hover {
    text-decoration: none;
  }

  .sec_body .line_blc-wh {
    margin-top: 20px;
    padding: 10px 28px;
  }
  /* .sec_body .line_blc-wh a {
    text-decoration: underline;
  } */
  .sec_body .line_blc-wh a:hover {
    text-decoration: none;
  }
}
/* 中心拠点病院
----------------------------------*/
#facility_regional #facility_map .area_name {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#facility_regional #facility_map .area_name .area {
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 47.7%;
  padding: 13px;
  margin-bottom: 4.6%;
  border-radius: 5px;
  color: #8564d9;
  background: #fff;
}
#facility_regional #facility_map .area_name .area.active {
  opacity: 0.7;
}
#facility_regional #facility_map .area_name .area dt {
  font-size: 16px;
  text-align: center;
}
#facility_regional #facility_map .area_name .area dd, #facility_regional #facility_map .area_name .area.area_off {
  display: none;
}
#facility_regional #facility_list{
  max-width: 1080px;
  margin: auto;
}
#facility_regional #facility_list h3 {
  padding-bottom: 25px;
  margin: 40px 0 30px;
  font-size: 18px;
  text-align: center;
  border-bottom: #583aa7 1px solid;
  color: #583aa7;
}
#facility_regional #facility_list .list_detail {
  background: #fff;
  color: #8564d9;
  border-radius: 5px;
  font-size: 16px;
}
#facility_regional #facility_list .list_detail dl {
  border-bottom: #8564d9 1px solid;
}
#facility_regional #facility_list .list_detail dl:last-child {
  border: none;
}
#facility_regional #facility_list .list_detail dt, #facility_regional #facility_list .list_detail dd {
  display: inline-block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 13px 15px;
}
#facility_regional #facility_list .list_detail dt {
  width: 6.2em;
  padding-right: 8px;
  vertical-align: top;
}
#facility_regional #facility_list .list_detail dd {
  width: -o-calc(100% - 6.5em);
  width: calc(100% - 6.5em);
  border-left: #8564d9 1px solid;
  vertical-align: top;
}
#facility_regional #facility_list .list_detail a {
  color: #8564d9;
  display: block;
  position: relative;
  vertical-align: middle;
  padding-right: 1.5em;
}
#facility_regional #facility_list .list_detail a:after {
  position: absolute;
  top: 2px;
  right: 0;
  content: "";
  width: 18px;
  height: 18px;
  margin-left: 8px;
  display: inline-block;
  background: url(../images/ico_exlink-purple.png) 0 0 no-repeat;
  background-size: 18px auto;
  -moz-background-size: 18px auto;
  -webkit-background-size: 18px auto;
  vertical-align: middle;
}

@media screen and (min-width: 960px) {
  #facility_regional #facility_map .area_name {
    display: block;
    position: relative;
    height: 734px;
    background: url(../images/pic_mapEDITED.png) 50% 0 no-repeat;
    max-width: 960px;
    margin: auto;
  }
  #facility_regional #facility_map .area_name .area {
    position: absolute;
    display: block;
    width: auto;
    padding: 0;
    margin-bottom: 0;
    color: #fff;
    background: none;
    border-radius: 0;
  }
  #facility_regional #facility_map .area_name .area.active {
    opacity: 1;
  }
  #facility_regional #facility_map .area_name .area dt {
    padding: 6px 12px;
    font-size: 18px;
    text-align: left;
    border-bottom: #583aa7 1px solid;
  }
  #facility_regional #facility_map .area_name .area dd {
    padding: 0 12px 0px;
  }
  #facility_regional #facility_map .area_name .area dt + dd {
    padding-top: 4px;
  }
  #facility_regional #facility_map .area_name .area dd, #facility_regional #facility_map .area_name .area.area_off {
    display: block;
  }
  #facility_regional #facility_map .area_name .area.area_off dd,
#facility_regional #facility_map .area_name .area dd.prefecture_off {
    color: #9876ed;
  }
  #facility_regional #facility_map .area_name a.area {
    display: block;
    color: black;
  }
  #facility_regional #facility_map .area_name a.area:hover {
    opacity: 0.7;
  }
  #facility_regional #facility_map .area_name .area01 {
    top: 168px;
    right: 176px;
    border-left: #583aa7 1px solid;
  }
  #facility_regional #facility_map .area_name .area01 dt {
    padding-top: 40px;
  }
  #facility_regional #facility_map .area_name .area01::before {
    content: "";
    display: block;
    position: absolute;
    background: #583aa7;
    height: 1px;
    width: 55px;
    bottom: 84px;
    left: -55px;
  }
  #facility_regional #facility_map .area_name .area02 {
    top: 198px;
    right: 458px;
  }
  #facility_regional #facility_map .area_name .area02 dd {
    border-right: #583aa7 1px solid;
    text-align: right;
  }
  #facility_regional #facility_map .area_name .area02 dd:last-child {
    padding-bottom: 48px;
  }
  #facility_regional #facility_map .area_name .area03 {
    width: 140px;
    top: 425px;
    right: 240px;
  }
  #facility_regional #facility_map .area_name .area03 dt {
    text-align: right;
  }
  #facility_regional #facility_map .area_name .area03 dd {
    border-right: #583aa7 1px solid;
    text-align: right;
  }
  #facility_regional #facility_map .area_name .area04 {
    top: 506px;
    right: 391px;
    border-left: #583aa7 1px solid;
  }
  #facility_regional #facility_map .area_name .area04 dt {
    padding-top: 20px;
  }
  #facility_regional #facility_map .area_name .area05 {
    top: 290px;
    left: 300px;
    z-index: 5;
  }
  #facility_regional #facility_map .area_name .area05 dt {
    text-align: right;
  }
  #facility_regional #facility_map .area_name .area05 dd {
    border-right: #583aa7 1px solid;
    text-align: right;
    padding-left: 15px;
  }
  #facility_regional #facility_map .area_name .area05 dd:last-child {
    padding-bottom: 14px;
  }
  #facility_regional #facility_map .area_name .area06 {
    top: 353px;
    left: 196px;
  }
  #facility_regional #facility_map .area_name .area06 dt {
    text-align: right;
  }
  #facility_regional #facility_map .area_name .area06 dd {
    border-right: #583aa7 1px solid;
    text-align: right;
    padding-left: 35px;
  }
  #facility_regional #facility_map .area_name .area06 dd:last-child {
    padding-bottom: 10px;
  }
  #facility_regional #facility_map .area_name .area07 {
    top: 566px;
    left: 316px;
    border-left: #583aa7 1px solid;
  }
  #facility_regional #facility_map .area_name .area07 dt {
    padding-top: 20px;
    padding-right: 25px;
  }
  #facility_regional #facility_map .area_name .area08 {
    width: 106px;
    top: 532px;
    left: 110px;
  }
  #facility_regional #facility_map .area_name .area08 dt {
    padding-left: 15px;
  }
  #facility_regional #facility_map .area_name .area08 dd {
    border-left: #583aa7 1px solid;
  }
  #facility_regional #facility_map .area_name .area09 {
    width: 90px;
    top: 202px;
    left: 200px;
  }
  #facility_regional #facility_map .area_name .area09 dt {
    text-align: right;
  }
  #facility_regional #facility_map .area_name .area09 dd {
    border-right: #583aa7 1px solid;
    text-align: right;
  }
  #facility_regional #facility_list h3 {
    padding-bottom: 25px;
    margin: 40px 0 30px;
    font-size: 18px;
    text-align: center;
    color: #583aa7;
    border-bottom: #583aa7 1px solid;
  }
  #facility_regional #facility_list .list_detail {
    background: #fff;
    color: #8564d9;
    border-radius: 5px;
    font-size: 16px;
  }
  #facility_regional #facility_list .list_detail dl {
    border-bottom: #8564d9 1px solid;
  }
  #facility_regional #facility_list .list_detail dl:last-child {
    border: none;
  }
  #facility_regional #facility_list .list_detail dt, #facility_regional #facility_list .list_detail dd {
    display: inline-block;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 13px 15px;
  }
  #facility_regional #facility_list .list_detail dt {
    width: 6.2em;
    padding-right: 8px;
    vertical-align: top;
  }
  #facility_regional #facility_list .list_detail dd {
    width: -o-calc(100% - 7.5em);
    width: calc(100% - 7.5em);
    border-left: #8564d9 1px solid;
    vertical-align: top;
  }
  #facility_regional #facility_list .list_detail a {
    display: inline-block;
    padding-right: 1.5em;
  }
  #facility_regional #facility_list .list_detail a:after {
    position: inherit;
    top: auto;
    display: inline-block;
  }
  #facility_regional #facility_list .list_detail a:hover {
    opacity: 0.8;
  }
}
/* テキストリンクリスト（リンク集）
=====================================================*/
.textlink_list .post + .post {
  margin-top: 24px;
}
.textlink_list .post a {
  font-size: 12px;
  font-weight: 300;
}
.textlink_list .post a:after {
  display: inline-block;
  content: "";
  width: 14px;
  height: 11px;
  margin: 0 0 -1px 3px;
  background: url(../images/ico_exlink-black.png) 0 0 no-repeat;
  background-size: 100% auto;
  -moz-background-size: 100% auto;
  -webkit-background-size: 100% auto;
}
.textlink_list .post dd {
  line-height: 1.2;
}
.textlink_list + .cont_title {
  margin-top: 58px;
}

@media screen and (min-width: 960px) {
  .textlink_list a:hover {
    text-decoration: underline;
  }
}
/* お問い合わせ
=====================================================*/
.form_blc {
  margin: 34px auto 0;
  max-width: 590px;
}
.form_blc p + p {
  margin-top: 28px;
}
.form_blc .field-label {
  display: block;
  margin: 0 0 12px;
}
.form_blc textarea, .form_blc input[type=text] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  border: #ccc 1px solid;
  border-radius: 5px;
  padding: 10px;
}
.form_blc .error textarea, .form_blc .error input[type=text] {
  border-color: #fe1e1e;
}
.form_blc textarea {
  height: 150px;
}
.form_blc .text_caution .scrl {
  display: block;
  height: auto;
  overflow: auto;
  padding: 12px 15px;
  background: #f1f1f1;
  font-size: 12px;
  border-radius: 5px;
}
.form_blc .text_caution strong {
  font-size: 14px;
}
.form_blc .btn_check {
  text-align: center;
  font-size: 12px;
  padding-bottom: 10px;
}
.form_blc label.checkbox_text {
  position: relative;
  padding-left: 20px;
  margin-right: 15px;
  overflow: hidden;
  position: relative;
  display: inline-block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  cursor: pointer;
}
.form_blc label.checkbox_text:before {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  content: "";
  position: absolute;
  width: 15px;
  height: 15px;
  left: 0px;
  top: 3px;
  border: 1px solid #ccc;
  z-index: 3;
  border-radius: 2px;
}
.form_blc label.checkbox_text:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 5px;
  display: block;
  margin-top: -6px;
  width: 4px;
  height: 8px;
  border-right: 2px solid #487ade;
  border-bottom: 2px solid #487ade;
  -ms-transform: rotate(45deg);
      transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  z-index: 1;
}
.form_blc label.checkbox_text input[type=checkbox] {
  -moz-appearance: none;
  -webkit-appearance: none;
  position: absolute;
  left: -31px;
  width: 16px;
  height: 16px;
  display: block;
  -webkit-box-shadow: 31px 0px #fff;
          box-shadow: 31px 0px #fff;
  z-index: 2;
}
.form_blc label.checkbox_text input[type=checkbox]:checked {
  -webkit-box-shadow: none;
          box-shadow: none;
}
.form_blc label.checkbox_text input[type=checkbox]:checked:focus {
  -webkit-box-shadow: 30px 0px #666;
          box-shadow: 30px 0px #666;
  opacity: 0.1;
}
.form_blc label.checkbox_text input[type=checkbox]:focus {
  -webkit-box-shadow: 31px 0px #EEE;
          box-shadow: 31px 0px #EEE;
}
.form_blc .text_error {
  font-size: 11px;
  color: #fe1e1e;
}
.form_blc .submit_area {
  margin-top: 60px;
}
.form_blc .submit_area input[type=submit], .form_blc .submit_area input[type=button] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: inline-block;
  width: 100%;
  padding: 20px;
  color: #313131;
  font-size: 16px;
  font-weight: 500;
  text-align: center;
  border-radius: 5px;
  background: #fff45c;
}
.form_blc .submit_area input[type=submit].btn_back, .form_blc .submit_area input[type=button].btn_back {
  background: #e6e6e6;
}
.form_blc .submit_area.submit_col2 input[type=submit], .form_blc .submit_area.submit_col2 input[type=button] {
  display: block;
  width: 48%;
  float: left;
}
.form_blc .submit_area.submit_col2 input[type=submit]:last-child, .form_blc .submit_area.submit_col2 input[type=button]:last-child {
  float: right;
}
.form_blc input[type=submit][disabled] {
  cursor: default;
  opacity: 0.4;
}
.form_blc .field_confirm {
  display: block;
  padding: 8px 10px;
  background: #f3f2df;
  border-radius: 5px;
}
.form_blc .field_confirm-message {
  min-height: 150px;
}

.text_thanks {
  margin-top: -10px;
}

@media screen and (min-width: 960px) {
  .form_blc {
    margin: 0 auto;
    max-width: none;
  }
  .form_blc p {
    clear: both;
    font-size: 16px;
  }
  .form_blc p + p {
    margin-top: 0;
    padding-top: 40px;
  }
  .form_blc .field-label {
    width: 210px;
    float: left;
    margin: 8px 0 0;
  }
  .form_blc .field-input_text {
    float: left;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 590px;
  }
  .form_blc textarea, .form_blc input[type=text] {
    padding: 15px;
  }
  .form_blc textarea {
    height: 200px;
  }
  .form_blc .text_caution .scrl {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 590px;
    padding: 12px 15px;
  }
  .form_blc .text_caution strong {
    font-size: 18px;
  }
  .form_blc .btn_check {
    text-align: center;
    font-size: 14px;
    padding-top: 20px;
  }
  .form_blc .text_error {
    font-size: 12px;
  }
  .form_blc .submit_area {
    margin-top: 52px;
    text-align: center;
  }
  .form_blc .submit_area input[type=submit], .form_blc .submit_area input[type=button] {
    width: 335px;
    padding: 20px;
  }
  .form_blc .submit_area.submit_col2 {
    width: 590px;
    margin: 0 0 0 210px;
    padding-top: 100px;
  }
  .form_blc input[type=submit][disabled] {
    cursor: default;
    opacity: 0.4;
  }
  .form_blc .field_confirm {
    padding: 12px 15px;
  }
  .form_blc .field_confirm-message {
    min-height: 200px;
  }

  .text_thanks {
    margin: 120px 0 100px;
    text-align: center;
  }
  .text_thanks p {
    font-size: 18px;
  }
}
/* sec_body内のメインイメージ
=====================================================*/
.sec_mv {
  margin: 0 auto 40px;
}

@media screen and (min-width: 960px) {
  .sec_mv {
    margin: 0 auto 80px;
  }
}
/* カテゴリー毎の色
=====================================================*/
.bg_yellow .category_nav .ico_close {
  background-color: #e6ab0c;
}
.bg_yellow .category_nav nav dl a {
  color: #d29b07;
  border-color: #f7e6b6;
}
.bg_yellow .post_index .post {
  /* border-color: #e6ab0c; */
  border-color: #41414133;
}

.bg_green .category_nav .ico_close {
  background-color: #3ec1bd;
}
.bg_green .category_nav nav dl a {
  color: #3ec1bd;
  border-color: #c5eceb;
}
.bg_green .post_index .post {
  border-color: #3ec1bd;
}
.bg_green .sec_inner .textBox {
  padding: 30px 20px;
  background: #fff;
  border-radius: 5px;
  color: #040C10;
}
.bg_green .sec_inner .textBox p + h3 {
  padding: 50px 0 0;
}
.bg_green .sec_inner .textBox h4 {
  padding: 20px 0 5px;
  font-size: 20px;
}
.bg_green .sec_inner .textBox a {
  text-decoration: underline;
  color: #040C10;
}
@media screen and (max-width: 960px) {
  .bg_green .sec_inner .textBox p + h3 {
    padding: 30px 0 5px;
  }
  .bg_green .sec_inner .textBox h4 {
    padding: 20px 0 5px;
    font-size: 16px;
  }
}
.bg_green .textBox {
  color: #fff;
}
.bg_green .auther_blc {
  border-color: #9fe0de;
}
.bg_green .auther_blc dl dt {
  color: #2F60C1;
}

.bg_sblue .exlink_list .post .ico_exlink {
  color: #2F60C1;
}

.bg_purple .category_nav .ico_close {
  background-color: #2F60C1;
}
.bg_purple .category_nav nav dl a {
  color: #2F60C1;
  border-color: #dad0f4;
}
.bg_purple .exlink_list .post, .bg_purple .exlink_list .post a {
  color: #040C10;
}
.bg_purple .exlink_list .post .inner .ico_exlink:after {
  background-image: url(../images/ico_exlink-blue-new.png);
}
.bg_purple .exlink_list .post .inner .ico_exlink {
  border-color: #2F60C1;
  color: #2F60C1;
}

.bg_brown .exlink_list .post, .bg_brown .exlink_list .post a {
  color: #040C10;
}
/* .bg_brown .exlink_list .post .inner .ico_exlink:after {
  background-image: url(../images/ico_exlink-brown.png);
} */
.bg_brown .exlink_list .post .inner .ico_exlink {
  border-color: #2F60C1;
  color: #2F60C1;
}

.bg_pink .exlink_list .post, .bg_pink .exlink_list .post a {
  color: #040C10;
}
.bg_pink .exlink_list .post .inner .ico_exlink:after {
  background-image: url(../images/ico_exlink-blue-new.png);
}
.bg_pink .exlink_list .post .inner .ico_exlink {
  border-color: #2F60C1;
  color: #2F60C1;
}

.bg_white .sec_inner {
  color: #313131;
}
.bg_white .pagenation a, .bg_white .pagenation strong {
  color: #313131;
}
.bg_white .page_title {
  padding-top: 25px;
  color: #313131;
}

.bg_lgreen .exlink_list .post, .bg_lgreen .exlink_list .post a {
  color: #040C10;
}
.bg_lgreen .exlink_list .post .inner .ico_exlink:after {
  background-image: url(../images/ico_exlink-blue-new.png);
}
.bg_lgreen .exlink_list .post .inner .ico_exlink {
  border-color: #2F60C1;
  color: #2F60C1;
}

.page_basic .sec_body .textBox a {
  color: #313131;
  text-decoration: underline;
}

@media screen and (min-width: 960px) {
  .bg_white .pankuzu {
    border-bottom: #313131 1px solid;
  }
  .bg_white .pankuzu li, .bg_white .pankuzu a {
    color: #313131;
  }
  .bg_white .pankuzu li:after {
    border-color: #313131;
  }
  .bg_white .page_title {
    padding-top: 40px;
  }

  .page_basic .sec_body .textBox a:hover {
    opacity: 0.8;
  }

  .bg_pink .exlink_list .post .inner .ico_exlink:hover,
.bg_sblue .exlink_list .post .inner .ico_exlink:hover,
.bg_purple .exlink_list .post .inner .ico_exlink:hover,
.bg_brown .exlink_list .post .inner .ico_exlink:hover,
.bg_lgreen .exlink_list .post .inner .ico_exlink:hover {
    opacity: 1;
    color: #fff;
  }

  .bg_pink .exlink_list .post .inner .ico_exlink:hover {
    background: #2F60C1;
  }
  .bg_pink .exlink_list .post .inner .ico_exlink:hover::after {
    background-image: url(../images/ico_exlink-wh-new.png);
  }

  .bg_sblue .exlink_list .post .inner .ico_exlink:hover {
    background: #2F60C1;
  }
  .bg_sblue .exlink_list .post .inner .ico_exlink:hover::after {
    background-image: url(../images/ico_exlink-wh-new.png);
  }

  .bg_purple .exlink_list .post .inner .ico_exlink:hover {
    background: #2F60C1;
  }
  .bg_purple .exlink_list .post .inner .ico_exlink:hover::after {
    background-image: url(../images/ico_exlink-wh-new.png);
  }

  .bg_brown .exlink_list .post .inner .ico_exlink:hover {
    background: #2F60C1;
  }
  .bg_brown .exlink_list .post .inner .ico_exlink:hover::after {
    background-image: url(../images/ico_exlink-wh-new.png);
  }

  .bg_lgreen .exlink_list .post .inner .ico_exlink:hover {
    background: #2F60C1;
  }
  .bg_lgreen .exlink_list .post .inner .ico_exlink:hover::after {
    background-image: url(../images/ico_exlink-wh-new.png);
  }
}
