/* LESS Document */
@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/notosansjp/v56/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFE8j75s.ttf) format('truetype');
}
@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/notosansjp/v56/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFBEj75s.ttf) format('truetype');
}
@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/notosansjp/v56/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFCMj75s.ttf) format('truetype');
}
@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/notosansjp/v56/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFM8k75s.ttf) format('truetype');
}
@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/notosansjp/v56/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFPYk75s.ttf) format('truetype');
}
@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/notosansjp/v56/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFLgk75s.ttf) format('truetype');
}
@font-face {
  font-family: 'Noto Serif JP';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/notoserifjp/v33/xn71YHs72GKoTvER4Gn3b5eMRtWGkp6o7MjQ2bxvOubA.ttf) format('truetype');
}
@font-face {
  font-family: 'Noto Serif JP';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/notoserifjp/v33/xn71YHs72GKoTvER4Gn3b5eMRtWGkp6o7MjQ2bwxOubA.ttf) format('truetype');
}
@font-face {
  font-family: 'Noto Serif JP';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/notoserifjp/v33/xn71YHs72GKoTvER4Gn3b5eMRtWGkp6o7MjQ2bwDOubA.ttf) format('truetype');
}
@font-face {
  font-family: 'Noto Serif JP';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/notoserifjp/v33/xn71YHs72GKoTvER4Gn3b5eMRtWGkp6o7MjQ2bzWPebA.ttf) format('truetype');
}
@font-face {
  font-family: 'Noto Serif JP';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/notoserifjp/v33/xn71YHs72GKoTvER4Gn3b5eMRtWGkp6o7MjQ2byYPebA.ttf) format('truetype');
}
@font-face {
  font-family: 'Zen Maru Gothic';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/zenmarugothic/v19/o-0XIpIxzW5b-RxT-6A8jWAtCp-cQWpCPA.ttf) format('truetype');
}
@font-face {
  font-family: 'Zen Maru Gothic';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/zenmarugothic/v19/o-0SIpIxzW5b-RxT-6A8jWAtCp-k7Q.ttf) format('truetype');
}
@font-face {
  font-family: 'Zen Maru Gothic';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/zenmarugothic/v19/o-0XIpIxzW5b-RxT-6A8jWAtCp-cGWtCPA.ttf) format('truetype');
}
@font-face {
  font-family: 'Zen Maru Gothic';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/zenmarugothic/v19/o-0XIpIxzW5b-RxT-6A8jWAtCp-cUW1CPA.ttf) format('truetype');
}
@font-face {
  font-family: 'Zen Maru Gothic';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/zenmarugothic/v19/o-0XIpIxzW5b-RxT-6A8jWAtCp-caW9CPA.ttf) format('truetype');
}
@font-face {
  font-family: 'Zen Kurenaido';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/zenkurenaido/v19/3XFsEr0515BK2u6UUptu_gWJZfw.ttf) format('truetype');
}
html,
body {
  width: 100%;
  height: 100%;
}
body {
  min-width: inherit;
  scroll-behavior: smooth;
  scroll-padding-top: 3rem;
  background: #ddf2f5;
  padding-top: 0;
}
a {
  color: #0062d8;
}
a:visited {
  color: #0062d8;
}
sup {
  font-size: 60%;
  vertical-align: baseline;
  line-height: normal;
}
img {
  width: 100%;
}
.visually-hidden {
  display: none !important;
}
@media (min-width: 751px) {
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
    color: #3e3a39;
  }
}
/* Color
--------------------------------------------------------------------------*/
/* link */
/* list style */
/* FONT
--------------------------------------------------------------------------*/
body {
  font-family: 'Noto Sans Japanese', 'Noto Sans JP', sans-serif;
  color: #3e3a39;
}
h1 {
  font-size: 2.4rem;
  font-weight: 700;
}
h1 span {
  font-size: 2.4rem;
  font-weight: 700;
}
h2 {
  font-size: min(2.2rem, 6.2vw);
  font-weight: 900;
  color: #0262b1;
}
h2 span {
  color: #3e3e3e;
  font-size: 46%;
  font-weight: 400;
  display: block;
}
h3 {
  font-size: min(1.7rem, 4.2vw);
  font-weight: 500;
  color: #0262b1;
}
h3 span {
  color: #3e3e3e;
  font-size: 65%;
  font-weight: 400;
  display: block;
}
h4 {
  font-size: min(1.8rem, 3.2vw);
  font-weight: 700;
  color: #0262b1;
}
h5 {
  font-size: min(1.8rem, 3.2vw);
  font-weight: 500;
}
h6 {
  font-size: min(1.6rem, 2.2vw);
  font-weight: 500;
}
p,
td,
th,
dt,
dd,
li {
  font-size: 1rem;
  letter-spacing: 0.05rem;
}
.tx-l {
  font-size: 240%;
}
.tx-s {
  font-size: 70%;
}
strong {
  font-weight: 700 !important;
}
@media screen and (max-width: 750px) {
  p,
  td,
  th,
  dt,
  dd,
  li {
    font-size: 0.9rem;
  }
}
/* LAYOUT
--------------------------------------------------------------------------*/
.layout-base {
  position: relative;
  box-sizing: border-box;
}
.layout-base-a {
  position: absolute;
  box-sizing: border-box;
}
.g-cnt {
  width: min(100rem, 100%);
  margin: 0 auto 0 auto;
  max-width: inherit;
  padding: 70px 0 0 0;
  background: #FFF;
}
main {
  position: relative;
  box-sizing: border-box;
  width: 100%;
}
article {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  display: block;
  background: #FFF;
}
.a-center {
  text-align: center;
}
.a-right {
  text-align: right;
}
.pc-br {
  display: block;
}
.sp-br {
  display: none;
}
.box-2w {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.box-2w li,
.box-2w div {
  width: 49%;
  margin-right: 2%;
}
.box-2w li:nth-child(2n),
.box-2w div:nth-child(2n) {
  margin-right: 0;
}
.box-3w {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.box-3w li,
.box-3w div {
  width: 32.33333%;
  margin-right: 1.5%;
}
.box-3w li:nth-child(3n),
.box-3w div:nth-child(3n) {
  margin-right: 0;
}
.box-4w {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.box-4w li,
.box-4w div {
  width: 24%;
  margin-right: 1.333333%;
}
.box-4w li:nth-child(4n),
.box-4w div:nth-child(4n) {
  margin-right: 0;
}
.box-5w {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.box-5w li,
.box-5w div {
  width: 19.2%;
  margin-right: 1%;
}
.box-5w li:nth-child(5n),
.box-5w div:nth-child(5n) {
  margin-right: 0;
}
@media screen and (max-width: 1600px) {
  .box-5w li,
  .box-5w div {
    width: 32.33333%;
    margin-right: 1.5%;
    margin-bottom: 1vw;
  }
  .box-5w li:nth-child(3n),
  .box-5w div:nth-child(3n) {
    margin-right: 0;
  }
  .box-5w li:nth-child(5n),
  .box-5w div:nth-child(5n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 1000px) {
  .g-cnt {
    padding: 70px 0 0 0;
  }
}
@media screen and (max-width: 900px) {
  .box-5w li,
  .box-5w div {
    width: 49.2%;
    margin-right: 1.6%;
    margin-bottom: 1.5vw;
  }
  .box-5w li:nth-child(3n),
  .box-5w div:nth-child(3n) {
    margin-right: 1.6%;
  }
  .box-5w li:nth-child(5n),
  .box-5w div:nth-child(5n) {
    margin-right: 1.6%;
  }
  .box-5w li:nth-child(2n),
  .box-5w div:nth-child(2n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 750px) {
  .g-cnt {
    padding: 70px 0 0 0;
  }
  .pc-br {
    display: none;
  }
  .sp-br {
    display: block;
  }
  .box-2w,
  .box-3w,
  .box-4w,
  .box-5w {
    display: block;
  }
  .box-2w li,
  .box-3w li,
  .box-4w li,
  .box-5w li,
  .box-2w div,
  .box-3w div,
  .box-4w div,
  .box-5w div {
    width: 100%;
    margin-right: 0;
  }
  .box-2w li,
  .box-3w li,
  .box-4w li,
  .box-5w li {
    margin-bottom: 2vw;
  }
}
@media screen and (max-width: 699px) {
  .g-cnt {
    padding: 60px 0 0 0;
  }
}
/* ORG-reform
--------------------------------------------------------------------------*/
.article {
  margin: 0;
}
.article-content {
  padding-right: 0;
}
.article-nav {
  position: absolute;
  width: 310px;
  top: 11.2rem;
  right: 50px;
  padding: 0;
  background: none;
}
.article-nav h3 {
  display: none;
}
.article-nav ul li {
  border-top: none;
  margin-bottom: 4px;
  font-size: 0.9rem;
}
.article-nav ul li a {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  display: block;
  background: #c1e7ff;
  padding: 0.7rem 2rem 0.7rem 1rem;
  text-decoration: none;
  color: #111;
  transition: 0.5s;
}
.article-nav ul li a:after {
  position: absolute;
  display: block;
  content: url("../img/svg/icon-arrow-bk.svg");
  width: 1rem;
  height: 1rem;
  right: 0.6rem;
  line-height: 1rem;
  top: calc(50% - 0.5rem);
}
.article-nav ul li a.nav-dir-item img {
  width: 22px;
  margin-bottom: 2px;
}
.article-nav ul li a.nav-dir-item.active {
  background: #256fd1;
  color: #FFF;
}
.article-nav ul li a.nav-dir-item.active:after {
  content: url("../img/svg/icon-arrow-w.svg");
}
article.fixed .article-nav {
  position: sticky;
  top: 80px;
}
article.fixed .article-nav ul.nav-dir li a {
  padding-bottom: 1.8rem;
  padding-top: 1.8rem;
  transition: 0.5s;
}
.article-with-nav {
  display: flex;
  align-items: start;
}
.article-with-nav div.article-content {
  width: calc(100% - 360px);
}
.article-with-nav div.article-nav {
  width: 360px;
}
@media screen and (max-width: 1200px) {
  .article-with-nav {
    display: block;
  }
  .article-with-nav div.article-content {
    width: 100%;
  }
  .article-nav {
    width: 80%;
    top: inherit;
    right: inherit !important;
    padding: 0;
    margin: auto;
  }
  .article-nav ul li {
    margin-bottom: 0 !important;
  }
}
.body-tx,
.entry-form {
  padding: 4rem 100px 3.5rem 100px;
}
.body-tx p,
.entry-form p {
  margin: 0 0.5rem 2.5rem 0.5rem;
  line-height: 1.8rem;
}
.body-tx ul,
.entry-form ul {
  list-style: disc;
  list-style-position: inherit;
  margin: 0 0.5rem 2.5rem 1.8rem;
}
.body-tx ul li::marker,
.entry-form ul li::marker {
  color: #4ac7e7;
  font-size: 1.2rem;
}
.body-tx ol,
.entry-form ol {
  list-style: decimal;
  list-style-position: inherit;
  margin: 0 0.5rem 2.5rem 1.8rem;
}
.body-tx ol li::marker,
.entry-form ol li::marker {
  color: #4ac7e7;
  font-weight: bold;
}
.page-header-group {
  margin: 0;
}
h1.hd {
  position: relative;
  box-sizing: border-box;
  font-size: 1.8rem !important;
  line-height: 2.8rem !important;
  color: #333;
  letter-spacing: 0.2rem !important;
}
.page-header-img {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  min-height: 150px;
  padding: 3rem 280px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: left center;
  display: flex;
  align-items: center;
  justify-content: center;
}
.page-header-img h1.hd {
  text-align: center;
  padding: 0 ;
  color: #FFF;
}
.page-header-group {
  width: 100%;
}
.page-header-group h1.hd {
  position: relative;
  box-sizing: border-box;
  display: flex;
  width: 100%;
  min-height: 140px;
  padding: 3rem 280px;
  align-items: center;
  justify-content: center;
  background: url("../img/ttl_bg.jpg") center top no-repeat;
  background-size: cover;
  color: #FFF;
}
.page-header-group p.page-ns {
  position: relative;
  box-sizing: border-box;
  padding: 0.5rem 1.5rem;
  font-size: 85%;
}
.page-header-group p.page-ns a {
  text-decoration: none;
}
.page-header-group hr {
  border: none;
  border-top: 1px dotted #555;
  width: 100%;
  max-width: 500px;
  margin-left: calc(100% - 500px);
  right: 0;
}
.article-with-nav .body-tx {
  padding: 4rem 80px 3.5rem 80px;
}
.article-with-nav .page-header-group {
  width: calc(100% + 360px);
  /*p.page-ns{
            .layout-base;
            text-align: right;
            padding: 0 1.5rem 0 280px ;
            font-size: 75%;
            a{
                text-decoration: none;
            }
        }*/
}
.article-with-nav .page-header-group hr {
  border: none;
  border-top: 1px dotted #555;
  width: 100%;
  min-width: 500px;
  margin-left: calc(100% - 360px);
  right: 0;
}
h2.heading {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  font-size: min(2rem, 4.8vw);
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.1rem;
  width: calc(100% - 2rem);
  margin: 0 auto 2rem auto;
  padding: 0 0.5rem 0.8rem 0.5rem !important;
  border-bottom: 4px solid #0262b1;
  border-radius: none;
}
h2.heading:before {
  position: absolute;
  display: block;
  content: "●";
  font-size: 1rem;
  left: -0.5rem;
  bottom: -0.8rem;
}
h2.heading:after {
  position: absolute;
  display: block;
  content: "●";
  font-size: 1rem;
  right: -0.5rem;
  bottom: -0.8rem;
}
h3.subhead {
  position: relative;
  box-sizing: border-box;
  font-size: min(1.3rem, 4.6vw);
  line-height: min(1.8rem, 7.8vw);
  font-weight: 500;
  letter-spacing: 0.1rem;
  margin: 0 0 2rem 0;
  padding: 0.6rem 1.1rem 0.8rem 1.1rem;
  border-radius: 6px;
  color: #FFF;
  background: linear-gradient(171deg, #007fc9 0%, #4ac7e7 100%);
  border-left: none;
}
h4.subsubhead {
  position: relative;
  box-sizing: border-box;
  font-size: min(1.3rem, 4.6vw);
  line-height: min(1.8rem, 7.8vw);
  letter-spacing: 0.1rem;
  font-weight: 700;
  margin: 0 0 1.5rem 0 !important;
  padding: 0.3rem 0;
  color: #008eac;
  border-bottom: solid 1px #87beca;
}
p.heading-sub {
  position: relative;
  box-sizing: border-box;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.1rem;
  color: #0262b1;
  margin-top: -1.7rem;
}
@media screen and (max-width: 1200px) {
  .body-tx {
    padding: 3vw 6%;
  }
  .body-tx p {
    margin: 0 2% 3vw 2%;
  }
  .page-header-group {
    margin: 0;
  }
  .article-nav {
    position: relative;
    box-sizing: border-box;
    width: 90%;
    top: inherit;
    padding: 0;
    margin: 4.2vw auto;
  }
  .article-nav ul li {
    border-top: none;
    border-bottom: dotted 1px #463934;
  }
  .article-nav ul li a {
    position: relative;
    box-sizing: border-box;
    background: none;
    padding: 0.5rem 2rem 0.5rem 1rem;
  }
  .article-nav ul li a.nav-dir-item img {
    width: 18px;
    margin-bottom: 2px;
  }
  .article-with-nav {
    display: block;
  }
  .article-with-nav .page-header-group {
    width: 100%;
  }
  h2.heading {
    width: 100%;
    margin: 0 0 4vw 0;
  }
  h3.subhead {
    margin: 0 0 2.5vw 0;
    padding: 1.5vw 2vw;
  }
  h4.subsubhead {
    margin: 0 0 2.5vw 0;
  }
  p.heading-sub {
    margin-top: -3vw;
  }
}
@media screen and (max-width: 750px) {
  .body-tx {
    padding: 3vw 6%;
  }
  .body-tx p {
    margin: 0 2% 3vw 2%;
  }
  .page-header-group {
    margin: 0;
  }
  h1.hd {
    position: relative;
    box-sizing: border-box;
    font-size: 1.2rem !important;
    line-height: 2.4rem !important;
    font-weight: 400 !important;
    letter-spacing: 0.2rem !important;
  }
  .page-header-img {
    width: 100%;
    min-height: 120px;
    padding: 3rem 5%;
    margin-bottom: 2vw;
    background-size: cover;
  }
  .page-header-img h1.hd {
    text-align: center;
    padding: 0 ;
  }
  .page-header-group h1.hd {
    min-height: 120px;
    padding: 3rem 5%;
    margin: 0 0 5vw 0;
    background: url("../img/ttl_bg.jpg") center center no-repeat;
    background-size: 250%;
  }
  .page-header-group p.page-ns {
    display: none;
  }
  .article-nav {
    width: 90%;
    top: inherit;
    padding: 0;
    margin: 4.2vw auto;
  }
  .article-nav ul li {
    border-top: none;
    border-bottom: dotted 1px #463934;
  }
  .article-nav ul li a {
    position: relative;
    box-sizing: border-box;
    background: none;
    padding: 0.5rem 2rem 0.5rem 1rem;
  }
  .article-with-nav {
    display: block;
  }
  .article-with-nav .body-tx {
    padding: 3vw 6%;
  }
  .article-with-nav .body-tx p {
    margin: 0 2% 3vw 2%;
  }
  .article-with-nav .page-header-group {
    width: 100%;
  }
  .article-with-nav .page-header-group h1.hd {
    opacity: 1;
  }
  .article-with-nav .page-header-group p.page-ns {
    display: none;
  }
  .article-with-nav .page-header-group hr {
    display: none;
  }
  h2.heading {
    margin: 0 0 4vw 0;
  }
  h3.subhead {
    margin: 0 0 4vw 0;
    padding: 2.4vw 4vw;
  }
  h4.subsubhead {
    margin: 0 0 4vw 0;
    padding: 0 0 2vw 0;
  }
}
/* Layer
--------------------------------------------------------------------------*/
header {
  z-index: 50;
}
/* Header
--------------------------------------------------------------------------*/
header#main-menu {
  opacity: 0;
  position: fixed;
  box-sizing: border-box;
  width: min(100rem, 100%);
  height: 70px;
  margin: auto;
  padding: 0 1.2rem;
  left: 0;
  right: 0;
  display: flex;
  align-items: center;
  transform: translateY(-200%);
  background: #0262b1;
  color: #FFF;
}
header#main-menu div.hd-logo {
  position: relative;
  box-sizing: border-box;
  display: block;
  width: 5rem;
  margin-right: 1.1rem;
}
header#main-menu div.hd-logo a {
  position: relative;
  box-sizing: border-box;
  display: block;
  padding: 0;
}
header#main-menu div.hd-logo-ttl {
  position: relative;
  box-sizing: border-box;
  display: block;
  width: 17rem;
}
header#main-menu div.hd-logo-ttl div {
  position: relative;
  box-sizing: border-box;
  display: block;
  font-size: 0.9rem;
}
header#main-menu div.hd-logo-ttl div span {
  position: relative;
  box-sizing: border-box;
  display: block;
  font-size: 0.75rem;
}
header#main-menu div.hd-logo-ttl div span.ttl02 {
  font-size: 0.53rem;
}
header#main-menu div.hd-logo-ttl div span.ttl03 {
  font-size: 0.9rem;
  display: inline-block;
}
header#main-menu ul.Members-menu li a {
  position: relative;
  box-sizing: border-box;
  display: flex;
  width: 9rem;
  background: #ffae00;
  color: #111;
  text-decoration: none;
  align-items: flex-end;
  justify-content: center;
  text-align: center;
  line-height: 1.2rem;
  padding: 0.9rem;
}
header#main-menu div.hd-sub-menu {
  position: absolute;
  box-sizing: border-box;
  right: 1.5rem;
  display: flex;
  justify-content: flex-end;
  padding: 0 0 0 1.2rem;
  order: 1;
}
header#main-menu div.hd-sub-menu ul.header-sns {
  position: relative;
  box-sizing: border-box;
  display: flex;
}
header#main-menu div.hd-sub-menu ul.header-sns li a {
  position: relative;
  box-sizing: border-box;
  width: 1.8rem;
  display: block;
  margin: 0 0.5rem;
}
.appear {
  animation: appear 0.5s forwards;
}
.closed {
  transform: translateY(0%) !important;
  opacity: 1 !important;
  animation: none !important;
}
@keyframes appear {
  from {
    transform: translateY(-200%);
    opacity: 0;
  }
  to {
    transform: translateY(0%);
    opacity: 1;
  }
}
.disappear {
  animation: disappear 0.5s forwards;
}
@keyframes disappear {
  from {
    transform: translateY(0%);
    opacity: 1;
  }
  to {
    transform: translateY(-200%);
    opacity: 0;
  }
}
@media screen and (max-width: 1345px) {
  header#main-menu div.hd-logo-ttl {
    position: absolute;
    box-sizing: border-box;
    width: calc(100% - 6.1rem);
    right: 1rem;
    top: 0.3rem;
  }
  header#main-menu div.hd-logo-ttl div {
    position: relative;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    font-size: 0.9rem;
  }
  header#main-menu div.hd-logo-ttl div span {
    margin-left: 1rem;
  }
  header#main-menu ul.Members-menu li a {
    position: relative;
    box-sizing: border-box;
    display: flex;
    width: 7rem;
    background: #ffae00;
    color: #111;
    text-decoration: none;
    align-items: flex-end;
    justify-content: center;
    text-align: center;
    line-height: 1.2rem;
    padding: 0.4rem;
  }
  header#main-menu div.hd-sub-menu {
    position: absolute;
    bottom: 0.5rem;
    right: 0.8rem;
    display: flex;
    justify-content: flex-end;
    padding: 0 0 0 1.2rem;
    order: 1;
  }
  header#main-menu div.hd-sub-menu ul.header-sns {
    position: relative;
    box-sizing: border-box;
    display: flex;
  }
  header#main-menu div.hd-sub-menu ul.header-sns li a {
    position: relative;
    box-sizing: border-box;
    width: 1.8rem;
    display: block;
    margin: 0 0.5rem;
  }
}
@media screen and (max-width: 999px) {
  header#main-menu div.hd-logo-ttl {
    position: relative;
    box-sizing: border-box;
    width: 25rem;
    right: inherit;
    top: inherit;
  }
  header#main-menu div.hd-logo-ttl div {
    display: block;
    font-size: 0.9rem;
  }
  header#main-menu div.hd-logo-ttl div span {
    position: relative;
    box-sizing: border-box;
    display: block;
    font-size: 0.75rem;
    margin-left: 0;
  }
  header#main-menu div.hd-logo-ttl div span.ttl02 {
    font-size: 0.53rem;
  }
  header#main-menu div.hd-logo-ttl div span.ttl03 {
    font-size: 0.75rem;
  }
  header#main-menu ul.Members-menu {
    position: relative;
    box-sizing: border-box;
    width: 86%;
    margin: auto;
    display: flex;
  }
  header#main-menu ul.Members-menu li a {
    position: relative;
    box-sizing: border-box;
    display: flex;
    width: 7rem;
    background: #ffae00;
    color: #111;
    text-decoration: none;
    align-items: flex-end;
    justify-content: center;
    text-align: center;
    line-height: 1.2rem;
    padding: 0.4rem;
  }
  header#main-menu div.hd-sub-menu {
    position: absolute;
    box-sizing: border-box;
    width: 4.4rem;
    right: 5rem;
    bottom: 1.5rem;
    margin-left: 0;
    margin-right: 0;
    padding: 0;
  }
  header#main-menu div.hd-sub-menu ul.header-sns {
    position: relative;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    margin: 0;
  }
  header#main-menu div.hd-sub-menu ul.header-sns li a {
    position: relative;
    box-sizing: border-box;
    width: 1.8rem;
    display: block;
    padding: 0.1rem;
    margin: 0 0.2rem;
  }
}
@media screen and (max-width: 635px) {
  header#main-menu {
    padding: 0 3vw;
  }
  header#main-menu div.hd-logo-ttl {
    position: relative;
    box-sizing: border-box;
    width: 25rem;
    right: inherit;
    top: inherit;
  }
  header#main-menu div.hd-logo-ttl div {
    display: block;
    font-size: 2.4vw;
  }
  header#main-menu div.hd-logo-ttl div span {
    position: relative;
    box-sizing: border-box;
    display: block;
    font-size: 1.8vw;
    margin-left: 0;
  }
  header#main-menu div.hd-logo-ttl div span.ttl02 {
    font-size: 1.4vw;
  }
  header#main-menu div.hd-logo-ttl div span.ttl03 {
    font-size: 2.4vw;
  }
  header#main-menu div.hd-sub-menu {
    position: absolute;
    box-sizing: border-box;
    width: 4.4rem;
    right: 5rem;
    bottom: 1.5rem;
    margin-left: 0;
    margin-right: 0;
    padding: 0;
  }
  header#main-menu div.hd-sub-menu ul.header-sns {
    position: relative;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    margin: 0;
  }
  header#main-menu div.hd-sub-menu ul.header-sns li a {
    position: relative;
    box-sizing: border-box;
    width: 1.8rem;
    display: block;
    padding: 0.1rem;
    margin: 0 0.2rem;
  }
}
@media screen and (max-width: 440px) {
  header#main-menu {
    height: 64px;
    display: flex;
    align-items: center;
  }
  header#main-menu div.hd-logo-ttl {
    position: relative;
    box-sizing: border-box;
    width: inherit;
    right: inherit;
    top: inherit;
  }
  header#main-menu div.hd-logo-ttl div {
    display: block;
    font-size: 2.6vw;
  }
  header#main-menu div.hd-logo-ttl div span {
    position: relative;
    box-sizing: border-box;
    display: block;
    font-size: 1.8vw;
    margin-left: 0;
  }
  header#main-menu div.hd-logo-ttl div span.ttl02 {
    display: none;
  }
  header#main-menu div.hd-logo-ttl div span.ttl03 {
    font-size: 2.6vw;
    display: block;
  }
  header#main-menu div.hd-sub-menu {
    position: absolute;
    box-sizing: border-box;
    width: inherit;
    right: 3.5rem;
    bottom: 1.1rem;
    margin-left: 0;
    margin-right: 0;
    padding: 0;
  }
  header#main-menu div.hd-sub-menu ul.header-sns {
    position: relative;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    margin: 0;
  }
  header#main-menu div.hd-sub-menu ul.header-sns li a {
    position: relative;
    box-sizing: border-box;
    width: 1.8rem;
    display: block;
    padding: 0.1rem;
    margin: 0 0.2rem;
  }
}
/* MENU */
#sidebarMenu {
  position: absolute;
  box-sizing: border-box;
  right: 9rem;
  display: flex;
  align-items: center;
  padding: 0;
  margin: 0;
  transition: transform 250ms ease-in-out;
  z-index: 100;
  width: 60rem;
  justify-content: flex-end;
}
#sidebarMenu ul.sidebarMenuInner {
  position: relative;
  box-sizing: border-box;
  width: auto;
  max-width: inherit;
  padding: 0;
  display: flex;
}
#sidebarMenu ul.sidebarMenuInner li {
  display: block;
  list-style: none;
  color: #000;
  transition: all 0.8s;
}
#sidebarMenu ul.sidebarMenuInner li a {
  position: relative;
  box-sizing: border-box;
  display: block;
  width: 100%;
  color: #FFF;
  text-align: center;
  line-height: 1.2rem;
  cursor: pointer;
  text-decoration: none;
  padding: 0.2rem 1.5rem 0.3rem 1.5rem;
  margin: 0;
  border-bottom: none;
  border-left: solid 1px #577db5;
  transition: all 0.3s;
}
#sidebarMenu ul.sidebarMenuInner li a br {
  display: none;
}
#sidebarMenu ul.sidebarMenuInner li:first-child a {
  border-left: none;
}
#sidebarMenu ul.sidebarMenuInner li.in a {
  color: #5e5e5e;
}
#sidebarMenu ul.sidebarMenuInner li label {
  position: relative;
  box-sizing: border-box;
  display: block;
  width: 100%;
  color: #FFF;
  font-size: 1.3rem;
  font-weight: 900;
  text-align: center;
  cursor: pointer;
  text-decoration: none;
  padding: 1.1rem 1.5rem 1.3rem 1.5rem;
  margin: 0;
  border-bottom: dotted 1px #c2beb5;
  transition: all 0.3s;
}
#sidebarMenu ul.sidebarMenuInner li label:hover {
  color: #ff6000;
}
@media screen and (max-width: 1560px) {
  #sidebarMenu {
    width: 60%;
  }
  #sidebarMenu ul.sidebarMenuInner li a {
    padding: 0.2rem 1vw 0.3rem 1vw;
  }
}
@media screen and (max-width: 1345px) {
  #sidebarMenu {
    position: absolute;
    bottom: 0.5rem;
    right: 7.5rem;
    width: calc(100% - 14.1rem);
  }
  #sidebarMenu ul.sidebarMenuInner li a {
    padding: 0.1rem 1vw 0.2rem 1vw;
  }
}
@media screen and (max-width: 999px) {
  #sidebarMenu {
    position: relative;
    box-sizing: border-box;
    position: fixed;
    display: block;
    width: 80%;
    padding: 0;
    margin: 0;
    overflow: auto;
    transition: transform 250ms ease-in-out;
    z-index: 100;
  }
  #sidebarMenu ul.sidebarMenuInner {
    position: relative;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    width: 80%;
    max-height: 700px;
    gap: 25px 35px;
  }
  #sidebarMenu ul.sidebarMenuInner li a {
    position: relative;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    text-decoration: none;
    margin-bottom: 0.2rem;
    transition: 0.5s ease;
    padding: 0 0 0 1.1rem;
    font-size: 1.1rem;
    color: #FFF;
  }
  #sidebarMenu ul.sidebarMenuInner li a:before {
    position: absolute;
    display: block;
    content: url("../img/svg/icon-arrow-w.svg");
    width: 0.8rem;
    left: 0rem;
    top: 0.1rem;
  }
  #sidebarMenu ul.sidebarMenuInner li span {
    display: block;
    color: #FFF;
    padding: 20px;
  }
  #sidebarMenu ul.sidebarMenuInner li.in a {
    color: #5e5e5e;
  }
  #sidebarMenu ul.sidebarMenuInner li label {
    position: relative;
    box-sizing: border-box;
    display: block;
    width: 100%;
    color: #FFF;
    font-size: 1.3rem;
    font-weight: 900;
    text-align: center;
    cursor: pointer;
    text-decoration: none;
    padding: 1.1rem 1.5rem 1.3rem 1.5rem;
    margin: 0;
    border-bottom: dotted 1px #c2beb5;
    transition: all 0.3s;
  }
  #sidebarMenu ul.sidebarMenuInner li label:hover {
    color: #ff6000;
  }
  /* ON */
  input[type="checkbox"]:checked ~ #sidebarMenu {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
  }
  header#main-menu:has(input:checked) {
    animation: none !important;
    transform: translateY(0%) !important;
    opacity: 1 !important;
    transition: all 0s !important;
  }
  input[type="checkbox"]:checked ~ #sidebarMenu > .sidebarMenuInner li {
    -webkit-animation: example 0.3s ease 0.3s 1 forwards;
    animation: example 0.3s ease 0.3s 1 forwards;
  }
  input[type=checkbox] {
    transition: all 0.3s;
    box-sizing: border-box;
    display: none;
  }
  #sidebarMenu {
    position: relative;
    box-sizing: border-box;
    position: fixed;
    display: none;
    top: 0;
    left: 0%;
    width: 100%;
    height: auto;
    padding: 0;
    margin: 0;
    overflow: auto;
    background: linear-gradient(134deg, #0262b1 0%, #1b75bf 100%);
    transition: transform 250ms ease-in-out;
    z-index: 100;
  }
  #sidebarMenu ul.sidebarMenuInner {
    position: relative;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    width: 80%;
    max-height: 700px;
    gap: 25px 35px;
  }
  #sidebarMenu ul.sidebarMenuInner li a {
    position: relative;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    text-decoration: none;
    margin-bottom: 0.2rem;
    transition: 0.5s ease;
    padding: 0 0 0 1.1rem;
    font-size: 1.1rem;
    color: #FFF;
  }
  #sidebarMenu ul.sidebarMenuInner li a:before {
    position: absolute;
    display: block;
    content: url("../img/svg/icon-arrow-w.svg");
    width: 0.8rem;
    left: 0rem;
    top: 0.1rem;
  }
  #sidebarMenu ul.sidebarMenuInner li span {
    display: block;
    color: #FFF;
    padding: 20px;
  }
  #sidebarMenu ul.sidebarMenuInner li.in a {
    color: #5e5e5e;
  }
  #sidebarMenu ul.sidebarMenuInner li label {
    position: relative;
    box-sizing: border-box;
    display: block;
    width: 100%;
    color: #FFF;
    font-size: 1.3rem;
    font-weight: 900;
    text-align: center;
    cursor: pointer;
    text-decoration: none;
    padding: 1.1rem 1.5rem 1.3rem 1.5rem;
    margin: 0;
    border-bottom: dotted 1px #c2beb5;
    transition: all 0.3s;
  }
  #sidebarMenu ul.sidebarMenuInner li label:hover {
    color: #ff6000;
  }
  #sidebarMenu {
    padding: 0 !important;
  }
  #sidebarMenu ul.sidebarMenuInner {
    position: relative;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    width: 86%;
    max-height: inherit;
    margin: 8vw auto;
    gap: 0.5rem 0;
  }
  #sidebarMenu ul.sidebarMenuInner li a {
    margin-bottom: 0.2rem;
    padding: 0 0 0 1.1rem;
    font-size: 0.9rem;
  }
  #sidebarMenu ul.sidebarMenuInner li a:before {
    position: absolute;
    display: block;
    content: url("../img/svg/icon-arrow-blue.svg");
    width: 0.8rem;
    left: 0rem;
    top: 0.1rem;
  }
  input[type="checkbox"]:checked ~ #sidebarMenu {
    display: block;
    justify-content: center;
    align-items: flex-start;
    height: 100vh;
  }
}
@media screen and (max-width: 999px) {
  #sidebarMenu {
    padding: 0 !important;
  }
  #sidebarMenu ul.sidebarMenuInner {
    position: relative;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    width: 86%;
    max-height: inherit;
    margin: 11vw auto 3vw auto;
    gap: 0.5rem 0;
  }
  #sidebarMenu ul.sidebarMenuInner li a {
    margin-bottom: 0.6rem;
    padding: 0 0 0 1.1rem;
    font-size: 1.1rem;
    border: none;
  }
  #sidebarMenu ul.sidebarMenuInner li a:before {
    position: absolute;
    display: block;
    content: url("../img/svg/icon-arrow-blue.svg");
    width: 0.8rem;
    left: 0rem;
    top: 0.1rem;
  }
}
@media screen and (max-width: 440px) {
  #sidebarMenu ul.sidebarMenuInner {
    margin: 14vw auto;
  }
  #sidebarMenu ul.sidebarMenuInner li a {
    font-size: 0.85rem;
  }
}
/* HM */
.sidebarIconToggle {
  display: none;
}
@media screen and (max-width: 999px) {
  .sidebarIconToggle {
    position: absolute;
    display: block;
    box-sizing: border-box;
    cursor: pointer;
    z-index: 506;
    right: 0;
    width: 7rem;
    height: 70px;
    margin-top: 0;
    padding: 2.25rem 1.75rem 1.25rem 1.75rem;
    transition: all 0.3s;
  }
  .sidebarIconToggle div.spinner-tx {
    text-align: center;
    font-family: 'Noto Serif JP', serif;
    font-size: 0.7rem;
    letter-spacing: 0.05rem;
    margin-top: 0rem;
    opacity: 1;
    transition: all 0.3s;
  }
  .spinner {
    transition: all 0.3s;
    box-sizing: border-box;
    position: absolute;
    height: 0.07rem;
    border-radius: 0.2rem;
    width: 100%;
    background-color: #FFF;
  }
  .horizontal {
    transition: all 0.3s;
    box-sizing: border-box;
    position: relative;
    float: left;
  }
  .diagonal.part-1 {
    position: relative;
    transition: all 0.3s;
    box-sizing: border-box;
    float: left;
    background-color: #FFF;
  }
  .diagonal.part-2 {
    transition: all 0.3s;
    box-sizing: border-box;
    position: relative;
    float: left;
    margin-top: 0.6rem;
    background-color: #FFF;
  }
  input[type=checkbox]:checked ~ .sidebarIconToggle {
    transition: all 0.3s;
  }
  input[type=checkbox]:checked ~ .sidebarIconToggle > .horizontal {
    transition: all 0.3s;
    box-sizing: border-box;
    opacity: 0;
  }
  input[type=checkbox]:checked ~ .sidebarIconToggle > div.spinner-tx {
    transition: all 0.3s;
    opacity: 0;
  }
  input[type=checkbox]:checked ~ .sidebarIconToggle > .diagonal.part-1 {
    transition: all 0.3s;
    box-sizing: border-box;
    transform: rotate(135deg);
    margin-top: 0.5rem;
    background: #FFF;
  }
  input[type=checkbox]:checked ~ .sidebarIconToggle > .diagonal.part-2 {
    transition: all 0.3s;
    box-sizing: border-box;
    transform: rotate(-135deg);
    margin-top: 0;
    background: #FFF;
  }
  input[type=checkbox]:checked ~ .hd-login-bt li a {
    background: #BBB;
  }
  @keyframes example {
    100% {
      opacity: 1;
    }
  }
  .sidebarIconToggle {
    right: 0;
    width: 5rem;
    height: 70px;
    margin-top: 0;
    padding: 1.55rem 1.2rem 1.25rem 1.2rem;
    transition: all 0.3s;
  }
  .sidebarIconToggle div.spinner-tx {
    text-align: center;
    font-family: 'Noto Serif JP', serif;
    font-size: 0.6rem;
    letter-spacing: 0.05rem;
    margin-top: 0.9rem;
    opacity: 1;
    transition: all 0.3s;
  }
}
@media screen and (max-width: 440px) {
  .sidebarIconToggle {
    display: block;
    cursor: pointer;
    z-index: 506;
    right: 0;
    width: 4rem;
    height: 4rem;
    margin-top: 0;
    padding: 1.5rem 1.2rem 1.2rem 1.2rem;
    transition: all 0.3s;
  }
  .sidebarIconToggle div.spinner-tx {
    text-align: center;
    font-family: 'Noto Serif JP', serif;
    font-size: 0.4rem;
    letter-spacing: 0.05rem;
    margin-top: 0.9rem;
    opacity: 1;
    transition: all 0.3s;
  }
  .spinner {
    transition: all 0.3s;
    box-sizing: border-box;
    position: absolute;
    height: 0.07rem;
    border-radius: 0.2rem;
    width: 100%;
    background-color: #FFF;
  }
  .horizontal {
    transition: all 0.3s;
    box-sizing: border-box;
    position: relative;
    float: left;
  }
  .diagonal.part-1 {
    position: relative;
    transition: all 0.3s;
    box-sizing: border-box;
    float: left;
    background-color: #FFF;
  }
  .diagonal.part-2 {
    transition: all 0.3s;
    box-sizing: border-box;
    position: relative;
    float: left;
    margin-top: 0.5rem;
    background-color: #FFF;
  }
  input[type=checkbox]:checked ~ .sidebarIconToggle {
    transition: all 0.3s;
  }
  input[type=checkbox]:checked ~ .sidebarIconToggle > .horizontal {
    transition: all 0.3s;
    box-sizing: border-box;
    opacity: 0;
  }
  input[type=checkbox]:checked ~ .sidebarIconToggle > div.spinner-tx {
    transition: all 0.3s;
    opacity: 0;
  }
  input[type=checkbox]:checked ~ .sidebarIconToggle > .diagonal.part-1 {
    transition: all 0.3s;
    box-sizing: border-box;
    transform: rotate(135deg);
    margin-top: 1.2rem;
    background: #FFF;
  }
  input[type=checkbox]:checked ~ .sidebarIconToggle > .diagonal.part-2 {
    transition: all 0.3s;
    box-sizing: border-box;
    transform: rotate(-135deg);
    margin-top: 0;
    background: #FFF;
  }
  input[type=checkbox]:checked ~ .hd-login-bt li a {
    background: #BBB;
  }
  @keyframes example {
    100% {
      opacity: 1;
    }
  }
}
/* Main
--------------------------------------------------------------------------*/
main article section {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  overflow: hidden;
}
main article section.cnt-base .cnt-wrap {
  position: relative;
  box-sizing: border-box;
  width: 94%;
  margin: 4rem auto;
  display: flex;
}
main article section.cnt-base .cnt-wrap .cnt-box-cld {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  padding: 2.4rem 6% 0 6%;
}
main article section.cnt-base .cnt-wrap .cnt-box-cld h2,
main article section.cnt-base .cnt-wrap .cnt-box-cld h3,
main article section.cnt-base .cnt-wrap .cnt-box-cld h4,
main article section.cnt-base .cnt-wrap .cnt-box-cld p,
main article section.cnt-base .cnt-wrap .cnt-box-cld ul,
main article section.cnt-base .cnt-wrap .cnt-box-cld figure,
main article section.cnt-base .cnt-wrap .cnt-box-cld table {
  margin-bottom: 2.4rem;
}
main article section.cnt-base .cnt-wrap .cnt-box-cld p {
  line-height: 1.8rem;
}
main article section.cnt-base .cnt-wrap .cnt-box-clf {
  position: relative;
  box-sizing: border-box;
  padding: 0;
}
.w95 {
  width: 95% !important;
}
.w90 {
  width: 90% !important;
}
.w85 {
  width: 85% !important;
}
.w80 {
  width: 80% !important;
}
.w75 {
  width: 75% !important;
}
.w70 {
  width: 70% !important;
}
.w65 {
  width: 65% !important;
}
.w60 {
  width: 60% !important;
}
.w55 {
  width: 55% !important;
}
.w50 {
  width: 50% !important;
}
.w45 {
  width: 45% !important;
}
.w40 {
  width: 40% !important;
}
.w35 {
  width: 35% !important;
}
.w30 {
  width: 30% !important;
}
.w25 {
  width: 25% !important;
}
.w20 {
  width: 20% !important;
}
.w15 {
  width: 15% !important;
}
.w10 {
  width: 10% !important;
}
.w5 {
  width: 5% !important;
}
@media screen and (max-width: 750px) {
  main article {
    max-width: none;
  }
  main article section.cnt-base .cnt-wrap {
    display: block;
  }
  main article section.cnt-base .cnt-wrap .cnt-box-cld {
    padding: 0 6%;
  }
  main article section.cnt-base .cnt-wrap .cnt-box-cld h2,
  main article section.cnt-base .cnt-wrap .cnt-box-cld h3,
  main article section.cnt-base .cnt-wrap .cnt-box-cld h4,
  main article section.cnt-base .cnt-wrap .cnt-box-cld p,
  main article section.cnt-base .cnt-wrap .cnt-box-cld ul,
  main article section.cnt-base .cnt-wrap .cnt-box-cld figure,
  main article section.cnt-base .cnt-wrap .cnt-box-cld table {
    margin-bottom: 4vw;
  }
  main article section.cnt-base .cnt-wrap .cnt-box-cld p {
    line-height: 1.8rem;
  }
  main article section.cnt-base .cnt-wrap .cnt-box-clf {
    padding: 0;
  }
  .w95,
  .w90,
  .w85,
  .w80,
  .w75,
  .w70,
  .w65,
  .w60,
  .w55,
  .w50,
  .w45,
  .w40,
  .w35,
  .w30,
  .w25,
  .w20,
  .w15,
  .w10,
  .w5 {
    width: 100% !important;
  }
}
/* Footer
--------------------------------------------------------------------------*/
footer {
  position: relative;
  box-sizing: border-box;
  max-width: min(100rem, 100%);
  margin: auto;
  display: block;
  overflow: hidden;
  color: #FFF !important;
  padding: 0;
}
footer .ft-wrap {
  position: relative;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  width: 100%;
  background: #0262b1;
  padding: 4rem 6%  4rem 6%;
}
footer .ft-wrap .ft-logo {
  display: flex;
  justify-content: center;
  width: 14%;
  margin: 0 5% 0 3%;
}
footer .ft-wrap .ft-logo picture {
  width: 100%;
}
footer .ft-wrap .ft-address {
  position: relative;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  width: 100%;
}
footer .ft-wrap .ft-address div.ft-add-box {
  margin-right: 10%;
}
footer .ft-wrap .ft-address div.ft-add-box:last-child {
  margin-right: 0;
}
footer .ft-wrap .ft-address div.ft-add-box h5 {
  font-size: 1.1rem;
  margin-bottom: 0.8rem;
}
footer .ft-wrap .ft-address div.ft-add-box h6 {
  font-size: 1.05rem;
}
footer .ft-wrap .ft-address div.ft-add-box h6 br {
  display: none;
}
footer .ft-wrap .ft-address div.ft-add-box p {
  font-size: 0.95rem;
  line-height: 1.6rem;
}
footer .ft-wrap ul.ftr-menu {
  position: relative;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  width: 100%;
  max-height: 300px;
  gap: 5px 60px;
}
footer .ft-wrap ul.ftr-menu li a {
  position: relative;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  text-decoration: none;
  color: #FFFFFF;
  margin-bottom: 0.2rem;
  transition: 0.5s ease;
  padding: 0 0 0 1.1rem;
  font-size: 0.8rem;
}
footer .ft-wrap ul.ftr-menu li a:before {
  position: absolute;
  display: block;
  content: url("../img/svg/icon-arrow-w.svg");
  width: 0.8rem;
  left: 0rem;
  top: 0.1rem;
}
footer .ft-copy {
  position: relative;
  box-sizing: border-box;
  width: 100%;
}
footer .ft-copy p {
  position: relative;
  box-sizing: border-box;
  font-size: 0.8rem !important;
  text-align: center;
  padding: 0.8rem;
  color: #487fa9;
}
@media screen and (max-width: 1199px) {
  footer {
    position: relative;
    box-sizing: border-box;
    max-width: min(100rem, 100%);
    margin: auto;
    display: block;
    overflow: hidden;
    color: #FFF !important;
    padding: 0;
  }
  footer .ft-wrap {
    position: relative;
    box-sizing: border-box;
    display: flex;
    align-items: flex-start;
    width: 100%;
    padding: 3rem 8%  3rem 8%;
  }
  footer .ft-wrap .ft-logo {
    display: flex;
    justify-content: center;
    width: 24%;
    margin: 0 5% 0 3%;
  }
  footer .ft-wrap .ft-logo picture {
    width: 100%;
  }
  footer .ft-wrap .ft-address {
    position: relative;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    width: 100%;
  }
  footer .ft-wrap .ft-address div.ft-add-box {
    margin-right: 0;
    width: 100%;
  }
  footer .ft-wrap .ft-address div.ft-add-box:last-child {
    margin-right: 0;
  }
  footer .ft-wrap .ft-address div.ft-add-box h5 {
    font-size: 1.1rem;
    margin-bottom: 0.8rem;
  }
  footer .ft-wrap .ft-address div.ft-add-box h6 {
    font-size: 1.05rem;
  }
  footer .ft-wrap .ft-address div.ft-add-box p {
    font-size: 0.95rem;
    line-height: 1.6rem;
  }
  footer .ft-wrap ul.ftr-menu {
    position: relative;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    width: 100%;
    max-height: 500px;
    gap: 5px 100px;
    margin-top: 2rem;
  }
  footer .ft-wrap ul.ftr-menu li a {
    position: relative;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    text-decoration: none;
    color: #FFFFFF;
    margin-bottom: 0.2rem;
    transition: 0.5s ease;
    padding: 0 0 0 1.1rem;
    font-size: 0.8rem;
  }
  footer .ft-wrap ul.ftr-menu li a:before {
    position: absolute;
    display: block;
    content: url("../img/svg/icon-arrow-w.svg");
    width: 0.8rem;
    left: 0rem;
    top: 0.1rem;
  }
  footer .ft-copy {
    position: relative;
    box-sizing: border-box;
    width: 100%;
  }
  footer .ft-copy p {
    position: relative;
    box-sizing: border-box;
    font-size: 0.8rem !important;
    text-align: center;
    padding: 0.8rem;
  }
}
@media screen and (max-width: 679px) {
  footer .ft-wrap {
    padding: 8vw 8%;
  }
  footer .ft-wrap .ft-logo {
    display: none;
  }
  footer .ft-wrap .ft-address {
    position: relative;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    width: 100%;
  }
  footer .ft-wrap .ft-address div.ft-add-box {
    margin-right: 0;
    width: 100%;
  }
  footer .ft-wrap .ft-address div.ft-add-box:last-child {
    margin-right: 0;
  }
  footer .ft-wrap .ft-address div.ft-add-box h5 {
    font-size: 0.95rem;
    margin-bottom: 0.8rem;
  }
  footer .ft-wrap .ft-address div.ft-add-box h6 {
    font-size: 0.8rem;
    margin-bottom: 0.3rem;
  }
  footer .ft-wrap .ft-address div.ft-add-box p {
    font-size: 0.75rem;
    line-height: 1.3rem;
  }
  footer .ft-wrap ul.ftr-menu {
    display: none;
  }
  footer .ft-copy p {
    position: relative;
    box-sizing: border-box;
    font-size: 0.6rem !important;
    padding: 0.8rem 8%;
  }
}
/* TOP-KEY-V
--------------------------------------------------------------------------*/
#top section.key-v {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  display: block;
  padding: 0;
}
#top section.key-v div.key-v-logo {
  opacity: 0;
  position: absolute;
  top: 2%;
  left: 2%;
  width: 14%;
  z-index: 2;
}
#top section.key-v div.key-v-tx {
  opacity: 0;
  position: absolute;
  display: flex;
  justify-content: center;
  width: 3rem;
  text-align: center;
  top: 10rem;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 2;
}
#top section.key-v div.key-v-tx h1 {
  writing-mode: vertical-rl;
  color: #FFF;
  letter-spacing: 0.3rem;
  font-size: 1.8rem;
  text-shadow: #000 1px 0 10px;
}
#top section.key-v div.key-v-tx h1 span {
  font-size: 2.4rem;
}
section.top-cnt {
  padding: 0 !important;
}
#page section.key-v {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  height: 14rem;
  display: block;
  padding: 0;
  background: #faf9f7;
  overflow: inherit;
}
#page section.key-v h2 {
  position: absolute;
  bottom: 2rem;
  left: 0;
  right: 0;
  margin: auto;
}
@media screen and (max-width: 1000px) {
  #page section.key-v {
    height: 10rem;
  }
  #page section.key-v h2 {
    font-size: 1.6rem;
  }
}
/* Interview
--------------------------------------------------------------------------*/
.interview-menu ul {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.interview-menu ul li {
  width: 49%;
  margin-right: 2%;
  margin-bottom: 2%;
}
.interview-menu ul li a {
  display: block;
  opacity: 1;
  transition: all 0.5s;
}
.interview-menu ul li a:hover {
  opacity: 0.8;
}
.interview-menu ul li:nth-child(2n) {
  margin-right: 0;
}
.itv-name {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  display: block;
  overflow: hidden;
  padding: 8% 10%;
  background: #ffd9ae;
}
.itv-name h6 {
  font-size: 1.34rem;
  margin-bottom: 0.8rem;
}
@media screen and (max-width: 750px) {
  .interview-menu ul {
    position: relative;
    box-sizing: border-box;
    width: 100%;
    display: block;
  }
  .interview-menu ul li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 2%;
  }
  .interview-menu ul li a {
    display: block;
    opacity: 1;
    transition: all 0.5s;
  }
  .interview-menu ul li a:hover {
    opacity: 0.8;
  }
  .interview-menu ul li:nth-child(2n) {
    margin-right: 0;
  }
}
/* News
--------------------------------------------------------------------------*/
.info-n {
  position: absolute;
  box-sizing: border-box;
  bottom: -10rem;
  left: 0;
  right: 0;
  width: 60%;
  margin: auto;
  z-index: 40;
  background: #FFF;
  overflow: hidden;
}
.info-ttl {
  position: absolute;
  left: 0;
  top: 0;
  width: 8.9375rem;
  line-height: 0;
  text-align: left;
  background: url("../img/icon-info-bg.png") top left no-repeat;
}
.info-n ol {
  margin: 1.8rem 2.5rem 0.8rem 2.5rem;
}
.info-n ol.info-ls dt {
  position: absolute;
  width: 23%;
  margin: 0 7% 0 0;
  padding: 0.3rem 0 0.3rem 0;
  letter-spacing: 0.05rem;
}
.info-n ol.info-ls dd {
  width: 77%;
  margin: 0;
  padding: 0.3rem 0 0.3rem 23%;
  letter-spacing: 0.05rem;
  border-bottom: dotted 1px #AAA;
}
.info-n ol.info-ls dd a {
  color: #003F94;
  text-decoration: none;
  transition: all 0.4s;
}
.info-n ol.info-ls dd a:hover {
  color: #0E3287;
}
h3.page-title {
  text-align: center;
}
.page-date {
  text-align: right;
  padding: 0 70px 0 70px;
  margin-bottom: 0;
}
@media screen and (max-width: 1200px) {
  .page-date {
    padding: 0 6%;
    margin: 1.2vw auto;
  }
}
@media screen and (max-width: 980px) {
  .info-n {
    position: relative;
    bottom: auto;
    left: auto;
    right: auto;
    width: 100%;
  }
}
@media screen and (max-width: 750px) {
  .info-n {
    padding-bottom: 1.3rem;
  }
  .info-n ol {
    margin: 2.4rem 1.5rem 1rem 1.5rem;
  }
  .info-n ol.info-ls dt {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0.3rem 0 0 0;
    letter-spacing: 0.05rem;
  }
  .info-n ol.info-ls dd {
    width: 100%;
    margin: 0;
    padding: 0 0 0.3rem 0;
  }
}
/* Link-Button
--------------------------------------------------------------------------*/
a {
  color: #0076c9;
  text-decoration: underline;
}
a:hover {
  color: #ff6000;
}
.bt-base a,
.bt-base label {
  position: relative;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 0.6rem 2rem 0.75rem 2rem;
  margin: auto;
  cursor: pointer;
  transform: scale(1, 1);
  font-family: 'Noto Serif JP', serif;
  color: #714831;
  background: #f2e8d8;
  border-radius: 0.5rem;
  text-decoration: none;
  font-size: 1.3rem !important;
  font-weight: 700;
  transition: all 0.5s ease 0s;
}
.bt-base.bt-sh a:before,
.bt-base.bt-sh label:before {
  position: absolute;
  display: block;
  content: url("../../assets_org_k/img/icon-sh-bw.svg");
  width: 1.7rem;
  left: 0.9rem;
  top: 0.8rem;
}
.bt-base.bt-sh a:hover,
.bt-base.bt-sh label:hover {
  transform: scale(1.05, 1.05);
}
.bt-next a:before {
  position: absolute;
  display: block;
  content: url("../../assets_org_k/img/icon-arrow1.svg");
  width: 1rem;
  right: 0.9rem;
  top: 0.6rem;
}
.bt-next a:hover {
  transform: scale(1.05, 1.05);
}
.bt-sml a {
  font-size: 1.1rem !important;
  max-width: 26rem;
}
.bt-ft-link a {
  max-width: 15rem;
  padding: 0.3rem 1rem;
  font-size: 0.9rem !important;
  background: #d8d8dc !important;
  color: #19191c;
  margin: 0;
}
@media screen and (max-width: 750px) {
  .bt-type1 a {
    width: 80%;
    padding: 0.5rem 1.8rem 0.7rem 1.8rem;
    font-size: 0.95rem;
  }
  .bt-type1s a {
    width: 70%;
    padding: 0.2rem 1.6rem;
  }
  .bt-type1s a:after {
    right: 1rem;
    line-height: 1rem;
  }
  .bt-type2 a {
    bottom: -0.2rem;
  }
  .bt-close a {
    display: block;
    bottom: calc(env(safe-area-inset-bottom));
    color: #fbed21;
    background: url("../img/svg/icon-close-y.svg") #3f4b70;
    background-size: 1rem 1rem;
    background-position: 96% center;
    background-repeat: no-repeat;
    width: 100%;
    max-width: none;
    margin: auto;
    padding: 0.8rem 2rem 0.7rem 2rem;
    border-radius: 0;
    font-size: 1.1rem;
  }
  .bt-close a:hover {
    background-color: #3f4b70;
  }
}
/* LIST
--------------------------------------------------------------------------*/
ul.list-dot {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  margin: 0 0 1rem 0;
}
ul.list-dot li {
  position: relative;
  box-sizing: border-box;
  padding: 0 0.3rem 0 1.2rem;
  margin-bottom: 0 !important;
}
ul.list-dot li:before {
  content: '●';
  position: absolute;
  color: #385588;
  left: 0;
  top: 0;
  display: inline-block;
}
ul.list-num {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  margin: 0 0.4rem 1.8rem 0.4rem;
  counter-reset: number 0;
}
ul.list-num li {
  position: relative;
  box-sizing: border-box;
  padding: 0 0.3rem 0 1.2rem;
  line-height: 2rem;
}
ul.list-num li:before {
  position: absolute;
  color: #d0bea2;
  left: 0;
  top: 0;
  display: inline-block;
  counter-increment: number 1;
  content: counter(number);
}
@media screen and (max-width: 750px) {
  ul.list-dot li,
  ul.list-num li {
    line-height: 1.5rem;
  }
}
@media screen and (max-width: 440px) {
  ul.list-dot li,
  ul.list-num li {
    line-height: 1.4rem;
  }
}
/* FAQ
--------------------------------------------------------------------------*/
#faq-list div.cnt-wrap {
  margin: 1.5rem auto 3.5rem auto;
}
#faq-list div.cnt-wrap div.cnt-box-cld nav ul.faq-toc li.bt-std a {
  color: #111;
  padding: 0.6rem 1rem 0.7rem 1rem;
  background: #dcfbfe;
  border-radius: 0.6rem;
}
#faq-list div.cnt-wrap div.cnt-box-cld nav ul.faq-toc li.bt-std a:before {
  position: absolute;
  display: block;
  content: url("../img/svg/icon-arrow-blue.svg");
  transform: rotate(90deg);
  width: 1rem;
  right: 0.8rem;
}
#faq-list div.cnt-wrap div.cnt-box-cld section.faq-section h3.subhead {
  margin-bottom: 1.4rem;
}
#faq-list div.cnt-wrap div.cnt-box-cld section.faq-section ul.faq-area li {
  margin-bottom: 0rem;
}
#faq-list div.cnt-wrap div.cnt-box-cld section.faq-section ul.faq-area li .body-tx {
  padding: 0;
}
#faq-list div.cnt-wrap div.cnt-box-cld section.faq-section ul.faq-area li .body-tx p {
  margin-bottom: 0;
}
.faq-q {
  position: relative;
  font-size: 1rem;
  line-height: 1.4rem;
  font-weight: 500;
  padding: 1rem 1rem 1rem 45px;
  color: #111;
  border-bottom: 1px dotted #555;
  transition: all 0.5s ease;
  cursor: pointer;
}
.faq-q:before,
.faq-q:after {
  position: absolute;
  content: '';
  width: 12px;
  height: 2px;
  background-color: #111;
}
.faq-q:before {
  top: 0;
  bottom: 0;
  margin: auto;
  left: 0.8rem;
  transform: rotate(90deg);
  transition: 0.3s;
}
.faq-q:after {
  top: 0;
  bottom: 0;
  margin: auto;
  left: 0.8rem;
  transform: rotate(0deg);
}
/* close */
.faq-q.close::before {
  transform: rotate(180deg);
  transition: 0.3s;
}
.faq-q.close::after {
  opacity: 0;
}
.faq-a {
  display: none;
  font-size: 1rem;
  line-height: 1.4rem;
  padding: 1rem;
  background: #ccf7ff;
}
.faq-a a {
  color: #000;
  text-decoration: underline;
}
@media screen and (max-width: 751px) {
  #faq-list div.cnt-wrap {
    margin: 4vw auto 14vw auto;
  }
  #faq-list div.cnt-wrap div.cnt-box-cld section.faq-section h3.subhead {
    margin-bottom: 3vw;
  }
  #faq-list div.cnt-wrap div.cnt-box-cld section.faq-section ul.faq-area li {
    margin-bottom: 0;
  }
  .faq-q {
    font-size: 0.85rem;
    line-height: 1.1rem;
    padding: 1.5vw 1.5vw 1.5vw 30px;
  }
  .faq-q:before,
  .faq-q:after {
    position: absolute;
    content: '';
    width: 7px;
    height: 1px;
    background-color: #111;
  }
  .faq-q:before {
    top: 0;
    bottom: 0;
    margin: auto;
    left: 0.5rem;
    transform: rotate(90deg);
    transition: 0.3s;
  }
  .faq-q:after {
    top: 0;
    bottom: 0;
    margin: auto;
    left: 0.5rem;
    transform: rotate(0deg);
  }
  .faq-a {
    font-size: 0.85rem;
    line-height: 1.1rem;
    padding: 3vw;
  }
}
/* REPORTS
---------------------------------------------------------------*/
#reports-list {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  margin: 3rem auto;
}
#reports-list ul {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  display: grid;
  list-style-type: none;
  grid-template-columns: repeat(4, 1fr);
  gap: 25px 25px;
  margin: 0;
}
#reports-list ul li {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  background: #F2F5F5;
}
#reports-list ul li div.cnt-wrap div.cnt-box-cld.reports-img {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  overflow: hidden;
}
#reports-list ul li div.cnt-wrap div.cnt-box-cld.reports-img img {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  display: block;
  top: 0;
  left: 0;
}
#reports-list ul li div.cnt-wrap div.cnt-box-cld.reports-tx {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  padding: 1rem 1.5rem 4rem 1.5rem;
}
#reports-list ul li div.cnt-wrap div.cnt-box-cld.reports-tx h3 {
  font-size: 1.1rem;
  color: #487fa9;
  margin-bottom: 0.6rem;
}
#reports-list ul li div.cnt-wrap div.cnt-box-cld.reports-tx p {
  font-size: 0.9rem;
  line-height: 1.3rem;
  margin: 0;
}
#reports-list ul li a {
  position: absolute;
  box-sizing: border-box;
  display: block;
  bottom: 1rem;
  right: 1rem;
  padding: 1rem 1.5rem 0.5rem 0.5rem;
  text-decoration: none;
  color: #333;
  background: url("../img/svg/icon-arrow-long.svg") bottom right no-repeat;
  background-position: bottom 2rem;
}
@media screen and (max-width: 1299px) {
  #reports-list ul {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (max-width: 999px) {
  #reports-list ul {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px 20px;
  }
}
@media screen and (max-width: 639px) {
  #reports-list ul {
    grid-template-columns: repeat(1, 1fr);
    gap: 20px 20px;
  }
}
/* TAB
---------------------------------------------------------------*/
.cntw-tab_wrap {
  position: relative;
  box-sizing: border-box;
  width: 100%;
}
.cntw-tab_area {
  position: relative;
  box-sizing: border-box;
  padding-top: 1.3rem;
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  z-index: 5;
}
.cntw-tab_area ul {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.cntw-tab_area ul li {
  position: relative;
  box-sizing: border-box;
  width: 50%;
  display: flex;
  justify-content: center;
  align-items: flex-end;
}
.cntw-tab_area ul a:hover {
  opacity: 0.9;
}
.cntw-tab_area ul li.tab1 a {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  display: block;
  padding: 0.7rem 2rem;
  text-decoration: none;
  font-weight: 900;
  background: #ffb45e;
  border-radius: 0.5rem 0.5rem 0 0;
  color: #3f4b70;
  transition: ease 0.2s opacity;
}
.cntw-tab_area ul li.tab2 a {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  display: block;
  padding: 0.7rem 2rem;
  text-decoration: none;
  font-weight: 900;
  background: #3f4b70;
  border-radius: 0.5rem 0.5rem 0 0;
  color: #ffb45e;
  transition: ease 0.2s opacity;
}
.cntw-panel_area {
  position: relative;
  box-sizing: border-box;
  overflow: hidden;
  width: 100%;
  max-width: 75rem;
  margin: auto;
}
.tab1-box {
  border-top: solid 0.4rem #ffb45e;
}
.tab2-box {
  border-top: solid 0.4rem #3f4b70;
}
@media screen and (max-width: 751px) {
  .cntw-tab_area ul a:hover {
    opacity: 0.9;
  }
  .cntw-tab_area ul li.tab1 a {
    font-size: 0.8rem;
    line-height: 1.2rem;
    padding: 0.7rem 1rem;
  }
  .cntw-tab_area ul li.tab2 a {
    font-size: 0.8rem;
    line-height: 1.2rem;
    padding: 0.7rem 1rem;
  }
}
/* TEL
--------------------------------------------------------------------------*/
@media (min-width: 751px) {
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
  }
}
/* NEWS LIST
--------------------------------------------------------------------------*/
button,
input,
select,
textarea {
  margin: 0;
  font-size: 100%;
  vertical-align: middle;
}
button,
input {
  *overflow: visible;
  line-height: normal;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
  padding: 0;
  border: 0;
}
button,
input[type=button],
input[type=reset],
input[type=submit] {
  cursor: pointer;
  -webkit-appearance: button;
}
input[type=search] {
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  -webkit-appearance: textfield;
}
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}
textarea {
  overflow: auto;
  vertical-align: top;
}
.news-list {
  overflow: hidden;
}
.news-list dt {
  margin-bottom: 0 !important;
}
#page .news-list > li > .news-list-item {
  border-style: solid none none;
  border-radius: 0;
}
#page .news-list > :first-child > .news-list-item {
  border: none;
}
#page .news-list-empty {
  padding: 1.25rem 1rem;
  font-size: 87.5%;
  color: grey;
}
#page .news-list-item {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 0.75rem 1rem;
  border: 1px solid #e1e1e1;
  border-radius: 0.5rem;
  text-decoration: none;
  background: #fff;
}
#page .news-list-item .title {
  width: 100%;
  line-height: 1.25;
  color: #333;
}
#page .news-list-item .date {
  flex: 1;
  padding-top: 0.25em;
  text-align: right;
  font-size: 75%;
  color: #666;
}
.video-box {
  margin: 0 auto 2.5rem auto;
  text-align: center;
  position: relative;
}
.heading + .video-box,
.subhead + .video-box,
.video-box:first-child {
  margin-top: 0;
}
.video-box:last-child {
  margin-bottom: 0;
}
.video-box:after {
  content: "";
  display: block;
  padding-bottom: 56.25%;
}
.video-box iframe,
.video-box video {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.map-box {
  margin: 0 auto 2.5rem auto;
  text-align: center;
}
.heading + .map-box,
.map-box:first-child,
.subhead + .map-box {
  margin-top: 0;
}
.map-box:last-child {
  margin-bottom: 0;
}
.map-box > .bs-replace-map {
  min-height: 320px;
}
.map-box iframe {
  max-width: 100%;
}
.index-section-list {
  position: relative;
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  padding: 3rem 70px 3rem 70px;
  margin: 0;
  background: #F6FFD6;
}
.index-section-list h2.index-section-title {
  font-size: 140%;
  font-weight: 400;
  color: #333;
  margin-bottom: 0.8rem;
}
.index-section-list ul {
  list-style: disc;
  list-style-position: inherit;
  margin: 0 0.5rem 0 1.8rem;
}
.index-section-list ul li {
  margin-bottom: 0.8rem;
}
.index-section-list ul li::marker {
  color: #4ac7e7;
  font-size: 1.2rem;
}
.index-section-list .index-section-cover {
  margin-bottom: 0.8rem;
}
.index-section-list > .index-section {
  width: 50%;
  margin-top: 0;
  padding-left: 2.1%;
  padding-right: 2.1%;
}
.table {
  width: 100%;
  margin: 0 0 2.5rem 0;
  border-collapse: collapse;
}
.table td,
.table th {
  padding: 0.5em 0.75em;
  line-height: 1.333;
  background: #fff;
  border: solid 1px #c3c3c3;
}
.table td p,
.table th p,
.table td ol,
.table th ol,
.table td ul,
.table th ul,
.table td li,
.table th li {
  margin-bottom: 0 !important;
}
.table th {
  padding: 0.5em 0.75em;
  line-height: 1.333;
  background: #e4edf2;
  border: solid 1px #c3c3c3;
  min-width: 30%;
}
.table thead th {
  vertical-align: middle;
  background: #e4edf2;
}
.social-box {
  margin-top: 2em;
  margin-bottom: 2em;
  text-align: center;
}
.heading + .social-box,
.social-box:first-child,
.subhead + .social-box {
  margin-top: 0;
}
.social-box:last-child {
  margin-bottom: 0;
}
.social-box-twitter {
  max-width: 37.5rem;
  margin-left: auto;
  margin-right: auto;
}
.file-type-icon {
  display: inline-block;
  vertical-align: middle;
  min-width: 3em;
  margin-left: 0.25em;
  padding: 0.125em 0.25em;
  font-size: 0.8rem;
  line-height: 1;
  text-align: center;
  color: #666;
  border: 1px solid;
}
.file-type-icon:after {
  content: "ファイル";
}
.file-type-icon-jpeg:after,
.file-type-icon-jpg:after {
  content: "JPEG";
}
.file-type-icon-png:after {
  content: "PNG";
}
.file-type-icon-svg:after,
.file-type-icon-svgz:after {
  content: "SVG";
}
.file-type-icon-pdf:after {
  content: "PDF";
}
.file-type-icon-doc:after,
.file-type-icon-docx:after {
  content: "Word";
}
.file-type-icon-xls:after,
.file-type-icon-xlsx:after {
  content: "Excel";
}
.file-type-icon-ppt:after,
.file-type-icon-pptx:after {
  content: "PowerPoint";
}
.file-box {
  margin: 0 0 2.5rem 0;
  padding: 0.75em 1em;
  background: #f8f8f8;
}
.file-box small {
  color: #666;
}
.body-tx .file-ls,
.file-ls {
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: 87.5%;
}
.body-tx .file-ls > li,
.file-ls > li {
  position: relative;
  margin: 0.25em 0;
  padding-left: 2em;
  line-height: 1.5;
}
.body-tx .file-ls > li:before,
.file-ls > li:before {
  content: "";
  display: block;
  position: absolute;
  left: 1em;
  top: 0.75em;
  width: 0.5em;
  height: 1px;
  margin: 0 -0.25em;
  background: #666;
}
.body-tx .file-ls a,
.file-ls a {
  text-decoration: none;
}
.body-tx .file-ls a:focus,
.body-tx .file-ls a:hover,
.file-ls a:focus,
.file-ls a:hover {
  text-decoration: underline;
}
a.btn {
  position: relative;
  box-sizing: border-box;
  width: 70%;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  padding: 0.6rem 2rem 0.6rem 1rem;
  margin: 0 auto 2.5rem auto;
  transition: all 0.5s;
}
a.btn:before {
  position: absolute;
  display: block;
  content: url("../img/svg/icon-arrow-w.svg");
  width: 0.8rem;
  right: 0.3rem;
}
a.btn:hover {
  background: #D56F39;
}
a.btn-default {
  color: #FFF;
  background: #0262b1;
}
.btn.disabled,
.btn:disabled {
  cursor: default;
  opacity: 0.6;
  color: #ddd;
}
.btn-sm {
  font-size: 80%;
}
.btn-primary,
.btn-default {
  position: relative;
  box-sizing: border-box;
  width: 70%;
  max-width: 500px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  padding: 0.8rem 2rem 0.7rem 1rem;
  margin: 0 auto 2.5rem auto;
  transition: all 0.5s;
  background: #0496c6;
  border: none;
}
.btn-primary:before,
.btn-default:before {
  position: absolute;
  display: block;
  content: url("../img/svg/icon-arrow-w.svg");
  width: 0.8rem;
  right: 0.3rem;
}
.btn-primary:hover,
.btn-default:hover {
  background: #D56F39;
}
.btn-default {
  transition: all 0.5s;
  background: #2AB382;
  color: #FFF;
  font-weight: 700;
}
.btn-default:hover {
  background: #D56F39;
}
.btn-notice,
.btn-primary {
  font-weight: 700;
  color: #fff;
}
.btn-notice {
  background: #e39500;
}
.btn-trp-w {
  font-weight: 700;
  color: #fff;
  background: transparent;
  border-color: #fff;
}
.form {
  margin: 0 auto;
  max-width: 45rem;
}
.form-control {
  display: block;
  width: 100%;
  padding: 0.375em 0.5em;
  margin: 0.5rem auto;
  font-family: inherit;
  font-size: 100%;
  font-weight: 400;
  line-height: 1.4;
  text-align: left;
  text-decoration: none;
  background: #fff;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  border-radius: 0.25em;
  color: #333;
  border: 1px solid rgba(0, 0, 0, 0.2);
}
.form-control.block {
  width: 100%;
}
.form-control.has-error {
  border-color: #ec534e;
}
.form-inline .form-control {
  display: inline-block;
  width: 12em;
}
.checkbox > label,
.radio > label {
  display: inline-block;
  padding: 0.25em 0;
  cursor: pointer;
}
.checkbox > label > span,
.radio > label > span {
  display: inline-block;
  vertical-align: top;
  margin-left: 0.15em;
}
.input-error {
  display: block;
  font-weight: 700;
  color: #ea403b;
}
.form-sec {
  margin: 0 0 3em;
  padding: 1.5rem 2rem 0rem 2rem;
  background: #f8f8f8;
}
.form-sec > .hd,
.form-sec > .hd-group {
  padding: 0 0 0.5em;
  font-size: 120%;
  line-height: 1.2;
  border-bottom: 1px solid #ddd;
}
.form-sec > .hd-group {
  font-size: 100%;
}
.form-sec > .hd-group > .hd {
  float: left;
  font-size: 120%;
}
.form-sec > .hd-group > .btn {
  float: right;
  margin-top: -0.3125rem;
  font-size: 87.5%;
  color: #666;
}
.form-item {
  margin: 1em 0;
}
.form-item > dt {
  padding: 0 0 0.25em;
  font-size: 92.5%;
  font-weight: 700;
}
.form-item .form-control {
  width: 100%;
}
.form-item-confirm {
  font-size: 108%;
}
.form-item-confirm > dt {
  font-size: 85.65%;
}
.form-item-autowidth .form-control {
  width: auto;
  min-width: 150px;
}
.form-action {
  margin: 1.875rem auto 0;
  max-width: 22.5rem;
}
.form-action .btn {
  display: block;
  width: 100%;
  margin: 1.25rem 0;
}
.form-action-sub {
  margin: 1.875rem 0;
  font-size: 82.5%;
  text-align: center;
}
.form-help {
  display: block;
  margin: 0.3125rem 0;
  color: #666;
}
.pagination {
  margin: 2rem 0;
  text-align: center;
  font-size: 0;
}
.pagination .sr-only {
  display: none;
}
.pagination > li {
  display: inline-block;
  vertical-align: middle;
  font-size: 16px;
}
.pagination > li + li > * {
  margin-left: 3px;
}
.pagination > li > * {
  box-sizing: content-box;
  display: block;
  position: relative;
  padding: 8px;
  min-width: 1em;
  line-height: 16px;
  text-align: center;
  text-decoration: none;
  color: #5c5c5c;
  background: #fff;
  border: 1px solid #e1e1e1;
  border-radius: 3px;
  cursor: default;
}
.pagination > li > a {
  cursor: pointer;
}
.pagination > li > a:focus,
.pagination > li > a:hover {
  border-color: #c3c3c3;
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.1);
  text-decoration: none;
}
.pagination > li > a:active {
  border-color: #c3c3c3;
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.1), inset 0 2px 5px 0 rgba(0, 0, 0, 0.1);
}
.pagination > .active > * {
  color: #fff;
  background: #0496c6;
  border-color: #0496c6;
  box-shadow: none;
}
.pagination > .disabled > * {
  box-shadow: none;
  opacity: 0.5;
}
.pagination > .dots > * {
  padding: 8px 1px;
  border: none;
  background: transparent;
  opacity: 0.5;
}
.pagination > .next > *,
.pagination > .prev > * {
  padding-top: 8px;
  padding-bottom: 8px;
  font-size: 14px;
}
.page-error {
  max-width: 760px;
  margin: 0 auto;
}
.entry-header .title {
  margin-bottom: 0.5em;
}
.entry-header .title a {
  color: #333;
  text-decoration: underline;
}
.entry-header .title:after {
  content: ">";
  display: inline-block;
  margin-left: 0.25em;
}
.entry-header .heading {
  margin-top: 0;
}
.entry-form-item {
  position: relative;
  box-sizing: border-box;
  display: flex;
  border-bottom: 1px dotted #333;
  padding: 0.5rem 0;
}
.entry-form-controls.ajaxzip3-group {
  width: calc(100% - 220px);
}
.entry-form-sec {
  margin: 2rem 0 0;
  border: none;
}
.entry-form-sec > .sep-hd {
  margin-bottom: 0.5rem;
}
.entry-form-label {
  display: flex;
  justify-content: space-between;
  padding: 0.5em;
  font-size: 87.5%;
  font-weight: 700;
  width: 220px;
}
.entry-form-controls .checkbox,
.entry-form-controls .radio {
  width: 33.3333%;
  box-sizing: border-box;
  padding: 0 1rem 0.5rem 1rem;
}
.entry-form-controls .checkbox:last-child,
.entry-form-controls .radio:last-child {
  padding: 0 1rem 1rem 1rem;
}
.entry-form-input {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.entry-form-input input[type="checkbox"] {
  display: inline-block;
}
.entry-form-input .other-input {
  margin-top: 5px;
}
.entry-form-required {
  display: inline-block;
  padding: 0.33em 0.333em 0.21em 0.333em;
  font-size: 87.5%;
  line-height: 1;
  color: #fff;
  background: #f85d52;
  border-radius: 0.33em;
  height: 1rem;
  margin: 0 0.5rem;
}
.entry-form-description {
  margin-bottom: 0.5rem !important;
  font-size: 82.5%;
  line-height: 1.2;
  opacity: 0.7;
}
.entry-form-values {
  margin-top: 0.35em;
  margin-bottom: 0.7em !important;
  list-style: none;
}
.entry-form-values > li {
  display: inline-block;
}
.entry-form-values > li ~ li:before {
  content: "、";
  display: inline-block;
}
.entry-form-policy {
  max-width: 34em;
  margin: 2em auto;
  padding: 1.2em 1.5em;
  border: 1px solid #e1e1e1;
  border-radius: 0.25em;
}
.entry-form-policy p {
  margin-bottom: 0.4rem !important;
}
.entry-form-policy .description {
  font-size: 87.5%;
}
.entry-form-policy-agree {
  margin-top: 1em;
  padding-top: 1em;
  border-top: 1px solid hsl(0, 0%, 88.2%);
  text-align: center;
}
.entry-form-policy-agree .checkbox {
  margin: 0;
  padding: 0;
}
.entry-form-confirm-message {
  margin: 1.5em 0;
}
.entry-form-action {
  margin: 2em 0;
  text-align: center;
}
.entry-form-unavailable {
  margin: 1.5em 0;
  padding: 1.5em 2em;
  font-size: 87.5%;
  color: rgba(51, 51, 51, 0.7);
  background: #003FC0;
}
.entry-done-back {
  margin: 3em 0;
  text-align: center;
}
.action-box {
  margin: 0 0 2.5rem 0;
  text-align: center;
}
.action-box .btn {
  min-width: 280px;
}
.txfig {
  box-sizing: border-box;
  margin-bottom: 2em;
}
.form-item:after,
.form-sec > .hd-group:after,
.txfig:after {
  content: "";
  display: block;
  line-height: 0;
  clear: both;
}
.txfig ~ .txfig {
  margin-top: 2em;
}
.txfig .p:first-child {
  margin-top: 0;
}
.txfig .p:last-child {
  margin-bottom: 0;
}
.txfig > .fig,
.txfig > .tx {
  display: block;
  padding: 0;
  box-sizing: border-box;
}
.txfig > .tx {
  width: 63.66%;
}
.txfig > .fig {
  width: 33.33%;
  margin: 0 auto 1em;
  text-align: center;
}
.txfig > .fig.sm {
  max-width: 60%;
}
.txfig-left > .tx {
  float: right;
}
.txfig-left > .fig,
.txfig-right > .tx {
  float: left;
}
.txfig-right > .fig {
  float: right;
}
.fig-box {
  box-sizing: border-box;
  margin: 2em 0;
  text-align: center;
}
.fig-box:first-child,
.heading + .fig-box,
.subhead + .fig-box {
  margin-top: 0;
}
.fig-box:last-child {
  margin-bottom: 0;
}
.fig-box-compact {
  margin-top: 1.5em;
  margin-bottom: 1.5em;
}
.fig-box-compact:first-child {
  margin-top: 0;
}
.fig-box-compact:last-child {
  margin-bottom: 0;
}
.fig-box-inner {
  display: table;
  table-layout: fixed;
  width: 100%;
}
.fig-box-item img {
  width: 100%;
}
.fig-box-inner > .fig-box-item {
  display: table-cell;
  vertical-align: top;
  padding: 0.3125rem 0.625rem;
  box-sizing: border-box;
}
.fig-box-item > .caption {
  display: block;
  margin: 0.25rem 0;
  font-size: 87.5%;
  line-height: 1.333;
}
.fig-box-item a {
  text-decoration: none;
}
.fig-box-item .image-link {
  display: inline-block;
  vertical-align: top;
}
.fig-box-item a img {
  border: 1px solid #fff;
}
.home-slide-wrap {
  overflow: hidden;
  padding: 0 !important;
}
.home-slide-wrap + .home-slide-wrap {
  margin-top: 0.5rem;
}
.home-slide-cnt {
  position: relative;
}
.home-slide-cnt.draggable {
  cursor: -webkit-grab;
  cursor: grab;
}
.home-slide-cnt .glider-track {
  align-items: stretch;
  transform: translateZ(0);
  width: 100%;
  margin: 0;
  padding: 0;
  display: flex;
  z-index: 1;
}
.home-slide-cnt .dots {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 auto;
  height: 0;
}
.home-slide-cnt .dots,
.home-slide-cnt .glider-dot {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  padding: 0;
}
.home-slide-cnt .glider-dot {
  display: block;
  width: 12px;
  height: 12px;
  margin: 0 7px;
  color: #fff;
  background: rgba(0, 0, 0, 0.1);
  border: 1px solid;
  border-radius: 9px;
  cursor: pointer;
  outline: none;
  position: relative;
  top: -1.75rem;
  box-shadow: 0 0 0.5rem rgba(0, 0, 0, 0.33);
}
.home-slide-cnt .glider-dot.active {
  background: #fff;
}
.home-slide-frame {
  position: relative;
  width: 100%;
  margin: 0 auto;
}
.btn-slide-next,
.btn-slide-prev {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  position: absolute;
  outline: none;
  z-index: 1;
  top: 50%;
  height: 3.2rem;
  margin-top: -1.7rem;
  padding-left: 1rem;
  padding-right: 1rem;
  background: rgba(0, 0, 0, 0.35);
  border: none;
  border-radius: 0.4rem;
}
.btn-slide-next img,
.btn-slide-prev img {
  vertical-align: top;
  width: 0.7488rem;
  height: 1.2rem;
  margin-top: 0.08rem;
}
.btn-slide-prev {
  left: -0.4rem;
}
.btn-slide-next {
  right: -0.4rem;
}
.home-slide-list {
  position: relative;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: none;
  transform: translateZ(0);
  overflow: hidden;
  overflow-x: hidden;
  margin: 0 auto;
}
.home-slide-item {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  justify-content: center;
  align-content: center;
}
@media screen and (max-width: 1200px) {
  .entry-form-controls .checkbox,
  .entry-form-controls .radio {
    width: 50%;
  }
}
@media screen and (max-width: 880px) {
  .fig-box {
    margin-top: 1.75em;
    margin-bottom: 1.75em;
  }
  .fig-box-inner > .fig-box-item {
    padding: 0.3125rem 0.4375rem;
  }
  .map-box,
  .social-box,
  .video-box {
    margin-top: 1.75em;
    margin-bottom: 1.75em;
  }
  .txfig > .tx {
    width: 100%;
  }
  .txfig > .fig {
    width: 100%;
  }
  .txfig > .fig.sm {
    max-width: 100%;
  }
  .txfig-left > .tx {
    float: none;
  }
  .txfig-left > .fig,
  .txfig-right > .tx {
    float: none;
  }
  .txfig-right > .fig {
    float: none;
  }
}
@media screen and (max-width: 751px) {
  .entry-form-item {
    display: block;
  }
  .entry-form-controls.ajaxzip3-group {
    width: 100%;
  }
  .entry-form-label {
    display: block;
    padding: 0.5em;
    font-size: 87.5%;
    font-weight: 700;
    width: 100%;
  }
}
/* FORM
--------------------------------------------------------------------------*/
#form-ctr div.bsed.body-tx {
  width: 82%;
  padding: 3.9rem 9% 0 9%;
}
#form-ctr form.entry-form {
  width: 80%;
  padding: 0 10% 3.9rem 10%;
}
#form-ctr form.entry-form label.entry-form-label {
  padding: 1rem 0.5rem;
}
#form-ctr form.entry-form .entry-form-item {
  border-bottom: none;
  border-top: 1px dotted #999;
}
#form-ctr form.entry-form .entry-form-item .entry-form-controls p {
  padding: 1rem 0.5rem;
  margin: 0 !important;
}
#form-ctr form.entry-form .entry-form-policy-agree label {
  display: flex;
  justify-content: center;
}
#form-ctr form.entry-form .entry-form-policy-agree label input[type="checkbox"] {
  display: block;
  margin-right: 0.5rem;
  width: 20px;
}
#form-ctr form.entry-form .action-box {
  display: flex;
  justify-content: center;
  margin: 2rem auto 0 auto;
}
#form-ctr form.entry-form .action-box .btn-primary,
#form-ctr form.entry-form .action-box .btn-default {
  max-width: 360px;
  margin: 1.5rem;
}
#form-ctr form.entry-form .action-box .btn-default {
  max-width: 360px;
  margin: 1.5rem;
}
#form-ctr form.entry-form .action-box .btn-default:before {
  position: absolute;
  display: block;
  content: url("../img/svg/icon-arrow-w.svg");
  transform: rotate(180deg);
  width: 0.8rem;
  left: 0.3rem;
  right: inherit;
}
#form-ctr section.job-form {
  padding: 3.9rem 0 0 0;
}
#form-ctr .entry-form-done {
  margin-bottom: 5rem;
}
@media screen and (max-width: 750px) {
  #form-ctr div.bsed.body-tx {
    width: 88%;
    padding: 3vw 6% 2.6vw 6%;
  }
  #form-ctr form.entry-form {
    width: 88%;
    padding: 0 6% 5vw 6%;
  }
  #form-ctr form.entry-form label.entry-form-label {
    padding: 1vw 0rem 0 0rem;
  }
  #form-ctr form.entry-form .entry-form-item .entry-form-controls p {
    padding: 1rem 0.5rem;
    margin: 0 !important;
  }
  #form-ctr form.entry-form .entry-form-policy {
    margin: 2vw auto;
    padding: 4vw 3vw;
  }
  #form-ctr form.entry-form .action-box {
    margin: 3vw auto 0 auto;
    display: block;
  }
  #form-ctr form.entry-form .action-box .btn-primary,
  #form-ctr form.entry-form .action-box .btn-default {
    margin: 3vw auto;
  }
  #form-ctr form.entry-form .action-box .btn-default {
    margin: 3vw auto;
  }
  #form-ctr section.job-form {
    padding: 5vw 0 0 0;
  }
  #form-ctr section.job-form .entry-form-confirm-message {
    margin-bottom: 3vw;
  }
  #form-ctr section.job-form .entry-form-item p.entry-form-values {
    padding: 0;
  }
  #form-ctr .entry-form-done {
    margin-bottom: 4vw;
  }
}
/* TABLE
--------------------------------------------------------------------------*/
table.table-t1 {
  width: 100%;
  border-collapse: collapse;
  margin: 0 0 1rem 0;
}
table.table-t1 th {
  box-sizing: border-box;
  width: 24%;
  background-color: #eaecef;
  text-align: left;
  padding: 0.4rem 0.7rem;
  border: solid 1px #C1BFB9;
}
table.table-t1 td {
  box-sizing: border-box;
  width: 76%;
  background-color: #FFF;
  padding: 0.4rem 0.7rem;
  border: solid 1px #C1BFB9;
}
table.table-t2 {
  width: 100%;
  border-collapse: collapse;
  margin: 0 0 3rem 0;
}
table.table-t2 th {
  box-sizing: border-box;
  background-color: #eaecef;
  text-align: left;
  padding: 0.4rem 0.7rem;
  border: solid 1px #C1BFB9;
}
table.table-t2 td {
  box-sizing: border-box;
  background-color: #FFF;
  padding: 0.4rem 0.7rem;
  border: solid 1px #C1BFB9;
}
@media only screen and (max-width: 440px) {
  .table-t1-bdr {
    border-left: solid 1px #C1BFB9;
    border-right: solid 1px #C1BFB9;
    border-bottom: solid 1px #C1BFB9;
    border-top: none;
  }
  table.table-t1 {
    width: 100%;
    border-top: solid 1px #C1BFB9;
    margin: 0 0 1rem 0;
  }
  table.table-t1 tr {
    display: block;
    margin: 0;
  }
  table.table-t1 th {
    width: 100%;
    display: block;
    border-left: solid 1px #C1BFB9;
    border-right: solid 1px #C1BFB9;
    border-bottom: solid 1px #C1BFB9;
    border-top: none;
  }
  table.table-t1 td {
    width: 100%;
    display: block;
    border-left: solid 1px #C1BFB9;
    border-right: solid 1px #C1BFB9;
    border-bottom: solid 1px #C1BFB9;
    border-top: none;
  }
}
/* Modal Window
--------------------------------------------------------------------------*/
.ly_fullsize {
  width: 100%;
  height: 100%;
}
input[type=checkbox] {
  transition: all 0.3s;
  box-sizing: border-box;
  display: none;
}
.w-modal_overlay {
  position: fixed;
  width: 100%;
  height: 100%;
  overflow: hidden;
  top: 0;
  left: 0;
  background: #ffffff;
  opacity: 0;
  transition: opacity 0.3s, transform 0s 0.3s;
  transform: scale(0);
  z-index: 80000;
}
.w-modal_trigger {
  position: fixed;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 501;
}
.w-modal_content {
  position: absolute;
  display: none;
  width: 100%;
  height: 100%;
  margin: auto;
  overflow: auto;
  box-sizing: border-box;
  transform: scale(1.2);
  transition: 0.3s;
  z-index: 502;
}
.wm_close_button {
  display: none;
  position: fixed;
  box-sizing: border-box;
  width: 7rem;
  height: 7rem;
  top: 0;
  right: 1.3rem;
  padding: 1.3rem;
  line-height: 1;
  color: #FFF;
  cursor: pointer;
  z-index: 505;
}
.w-modal_wrap .cnt-box0 {
  padding: 0 1rem 0 1rem;
}
.pp_movie-youtube-w {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  max-width: 92.5rem;
  margin: auto;
  z-index: 503;
}
.pp_movie-youtube {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}
.pp_movie-youtube iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.pp-movie-box {
  padding: 1rem;
}
.onblor {
  filter: blur(8px);
}
.w-modal_wrap input:checked ~ .w-modal_overlay {
  opacity: 1;
  transform: scale(1);
  transition: opacity 0.3s;
}
.w-modal_wrap input:checked ~ .w-modal_overlay .w-modal_content {
  transform: scale(1);
  display: block;
}
.w-modal_wrap input:checked ~ .w-modal_overlay .wm_close_button {
  display: block;
}
.w-modal_wrap input:checked ~ .w-modal_overlay .pp_movie-youtube {
  display: block;
}
.wm_open_button {
  position: relative;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 20rem;
  padding: 0.35rem 2rem 0.5rem 2rem;
  margin: auto;
  cursor: pointer;
  transform: scale(1, 1);
  font-family: 'Noto Serif JP', serif;
  color: #FFF;
  background: #585873;
  border-radius: 8rem;
  font-size: 1.3rem !important;
  font-weight: 500;
  transition: all 0.5s ease 0s;
}
.wm_open_button:before {
  position: relative;
  display: inline-block;
  content: url("../../assets_org_k/img/icon-sh-wh.svg");
  width: 1.7rem;
  margin-top: 0.5rem;
  margin-left: -0.5rem;
  margin-right: 0.8rem;
}
.wm_open_button:hover {
  transform: scale(1.05, 1.05);
}
.wm_open_button:hover .movie-bt {
  transform: translateY(50%);
}
@media screen and (max-width: 1100px) {
  .wm_close_button {
    right: 0rem;
    width: 7rem;
    height: 7rem;
    padding: 1.1rem;
  }
  .pp-movie-box {
    padding: 0;
  }
  .wm_open_button:hover {
    transform: scale(1, 1);
    z-index: 1;
  }
}
/* Clear
--------------------------------------------------------------------------*/
.clear:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}
.clear {
  display: inline-table;
}
/* \*/
* html .clear {
  height: 1%;
}
.clear {
  display: block;
}
/* */
/* TAB MENU
--------------------------------------------------------------------------*/
.tb-start {
  display: block;
}
.tb-active,
.tb-inactive {
  display: none;
}
.top-tb-mn {
  background: #FFF;
}
.top-tb-mn div.cnt-wrp {
  position: relative;
  box-sizing: border-box;
  width: min(100rem, 100%);
  margin: auto;
  text-align: center;
  padding: 3rem 3% 0 3%;
}
.top-tb-mn div.cnt-wrp h3 {
  margin-bottom: 1rem;
}
.top-tb-mn div.cnt-wrp p {
  margin-bottom: 2rem;
}
.top-tb-mn-ls {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  display: flex;
}
.top-tb-mn-ls li {
  position: relative;
  box-sizing: border-box;
  width: 32.333333%;
  margin: 0 1.33333% 0 0;
  display: block;
  cursor: pointer;
  border-radius: 0.5rem 0.5rem 0rem 0rem;
  padding: 0.8rem 1rem;
}
.top-tb-mn-ls li:last-child {
  margin: 0;
}
.top-tb-mn-ls li p {
  margin-bottom: 0 !important;
}
.top-tb-mn-ls li.tb01 {
  background-color: #c3c3d4;
  color: #323241;
}
.top-tb-mn-ls li.tb02 {
  background: #4f4f6e;
  color: #FFF;
}
.top-tb-mn-ls li.tb03 {
  background: #4f4f6e;
  color: #FFF;
}
.top-tb-mn-ls li.active,
.top-tb-mn-ls li.inactive {
  border-radius: 0.6rem 0.6rem 0rem 0rem;
}
.top-tb-mn-ls li.active .tb-start,
.top-tb-mn-ls li.inactive .tb-start {
  display: none;
}
.top-tb-mn-ls li.active {
  animation: tab-anime-on 0.8s forwards;
}
.top-tb-mn-ls li.active .tb-active {
  display: block;
}
.top-tb-mn-ls li.inactive {
  opacity: 1;
  animation: tab-anime-off 0.8s forwards;
}
.top-tb-mn-ls li.inactive .tb-inactive {
  display: block;
}
.top-not-ac {
  display: none !important;
}
div.top-pickup-items.top-not-ac-re {
  display: flex;
  flex-wrap: wrap;
}
div.top-pickup-items.top-not-ac-re #top-coopon {
  order: 1;
}
div.top-pickup-items.top-not-ac-re #top-slider {
  order: 2;
}
@keyframes tab-anime-on {
  0% {
    background-color: #4f4f6e;
    color: #FFF;
  }
  100% {
    background-color: #c3c3d4;
    color: #323241;
  }
}
@keyframes tab-anime-off {
  0% {
    background-color: #c3c3d4;
    color: #323241;
  }
  100% {
    background-color: #4f4f6e;
    color: #FFF;
  }
}
.tb-list1 {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.tb-list1 li {
  width: 23%;
  margin-right: 2.5%;
  margin-bottom: 2rem;
}
.tb-list1 li:nth-child(4n) {
  margin-right: 0;
}
.tb-list1 li a {
  text-decoration: none;
  color: #4f516d;
}
.tb-list1 li a figure {
  position: relative;
  box-sizing: border-box;
  width: 100%;
}
.tb-list1 li a figure figcaption {
  position: absolute;
  box-sizing: border-box;
  text-align: center;
  padding-top: 0.5rem;
  font-size: 1.2rem;
  bottom: 0;
  right: 0;
  background: #FFF;
  width: 25%;
  border-radius: 0.5rem 0 0 0;
}
.tb-list2 {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.tb-list2 li {
  width: 12.2857%;
  margin-right: 2.2857%;
  margin-bottom: 1rem;
}
.tb-list2 li:nth-child(7n) {
  margin-right: 0;
}
.tb-list2 li a {
  text-decoration: none;
  color: #4f516d;
}
.tb-list2 li a picture {
  position: relative;
  box-sizing: border-box;
  padding: 1rem;
  background: #c1c2d4;
  border-radius: 0.8rem;
  display: block;
}
.tb-list2 li a figcaption {
  text-align: center;
  padding-top: 0.5rem;
  font-size: 1.2rem;
}
.tb-list3 {
  position: relative;
  box-sizing: border-box;
  width: 100%;
}
.tb-list3 input.tb-textbox {
  margin-bottom: 1rem !important;
}
/* BUTTON
--------------------------------------------------------------------------*/
.bt-std a {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  color: #FFF;
  padding: 0.6rem 1rem 0.6rem 1rem;
  background: #0262b1;
}
.bt-std a:before {
  position: absolute;
  display: block;
  content: url("../img/svg/icon-arrow-w.svg");
  width: 0.8rem;
  right: 0.3rem;
}
.bt-std-bk a {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  color: #282828;
  background: #ffae00;
  padding: 0.6rem 1rem 0.6rem 1rem;
}
.bt-std-bk a:before {
  position: absolute;
  display: block;
  content: url("../img/svg/icon-arrow-w.svg");
  width: 0.8rem;
  right: 0.3rem;
}
/* TOP NEWS
--------------------------------------------------------------------------*/
#top-news .cnt-box-cld,
#news-list .cnt-box-cld {
  width: 94%;
  padding: 0 !important;
  margin: auto;
  display: flex;
}
#top-news .cnt-box-cld ul,
#news-list .cnt-box-cld ul {
  margin-bottom: 0;
}
#top-news ul.top-news-wrap,
#news-list ul.top-news-wrap,
#top-news ul.news-list-wrap,
#news-list ul.news-list-wrap {
  position: relative;
  box-sizing: border-box;
  width: 70%;
}
#top-news ul.top-news-wrap li,
#news-list ul.top-news-wrap li,
#top-news ul.news-list-wrap li,
#news-list ul.news-list-wrap li {
  display: grid;
  grid-template-columns: repeat(1, 170px 160px 1fr);
  gap: 15px 15px;
  padding: 0.5rem 0 0.5rem 0;
}
#top-news ul.top-news-wrap div.label-sm span,
#news-list ul.top-news-wrap div.label-sm span,
#top-news ul.news-list-wrap div.label-sm span,
#news-list ul.news-list-wrap div.label-sm span {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #FFF;
  font-size: 90%;
  padding-bottom: 0.1rem;
  background: #f39345;
}
#top-news ul.top-news-wrap .label-by-summary span,
#news-list ul.top-news-wrap .label-by-summary span,
#top-news ul.news-list-wrap .label-by-summary span,
#news-list ul.news-list-wrap .label-by-summary span,
#top-news ul.top-news-wrap .label-by-3 span,
#news-list ul.top-news-wrap .label-by-3 span,
#top-news ul.news-list-wrap .label-by-3 span,
#news-list ul.news-list-wrap .label-by-3 span,
#top-news ul.top-news-wrap .label-by-4 span,
#news-list ul.top-news-wrap .label-by-4 span,
#top-news ul.news-list-wrap .label-by-4 span,
#news-list ul.news-list-wrap .label-by-4 span,
#top-news ul.top-news-wrap .label-by-5 span,
#news-list ul.top-news-wrap .label-by-5 span,
#top-news ul.news-list-wrap .label-by-5 span,
#news-list ul.news-list-wrap .label-by-5 span,
#top-news ul.top-news-wrap .label-by-6 span,
#news-list ul.top-news-wrap .label-by-6 span,
#top-news ul.news-list-wrap .label-by-6 span,
#news-list ul.news-list-wrap .label-by-6 span,
#top-news ul.top-news-wrap .label-by-7 span,
#news-list ul.top-news-wrap .label-by-7 span,
#top-news ul.news-list-wrap .label-by-7 span,
#news-list ul.news-list-wrap .label-by-7 span,
#top-news ul.top-news-wrap .label-by-8 span,
#news-list ul.top-news-wrap .label-by-8 span,
#top-news ul.news-list-wrap .label-by-8 span,
#news-list ul.news-list-wrap .label-by-8 span,
#top-news ul.top-news-wrap .label-by-9 span,
#news-list ul.top-news-wrap .label-by-9 span,
#top-news ul.news-list-wrap .label-by-9 span,
#news-list ul.news-list-wrap .label-by-9 span,
#top-news ul.top-news-wrap .label-by-10 span,
#news-list ul.top-news-wrap .label-by-10 span,
#top-news ul.news-list-wrap .label-by-10 span,
#news-list ul.news-list-wrap .label-by-10 span,
#top-news ul.top-news-wrap .label-by-11 span,
#news-list ul.top-news-wrap .label-by-11 span,
#top-news ul.news-list-wrap .label-by-11 span,
#news-list ul.news-list-wrap .label-by-11 span,
#top-news ul.top-news-wrap .label-by-12 span,
#news-list ul.top-news-wrap .label-by-12 span,
#top-news ul.news-list-wrap .label-by-12 span,
#news-list ul.news-list-wrap .label-by-12 span,
#top-news ul.top-news-wrap .label-by-13 span,
#news-list ul.top-news-wrap .label-by-13 span,
#top-news ul.news-list-wrap .label-by-13 span,
#news-list ul.news-list-wrap .label-by-13 span,
#top-news ul.top-news-wrap .label-by-14 span,
#news-list ul.top-news-wrap .label-by-14 span,
#top-news ul.news-list-wrap .label-by-14 span,
#news-list ul.news-list-wrap .label-by-14 span,
#top-news ul.top-news-wrap .label-by-15 span,
#news-list ul.top-news-wrap .label-by-15 span,
#top-news ul.news-list-wrap .label-by-15 span,
#news-list ul.news-list-wrap .label-by-15 span,
#top-news ul.top-news-wrap .label-by-16 span,
#news-list ul.top-news-wrap .label-by-16 span,
#top-news ul.news-list-wrap .label-by-16 span,
#news-list ul.news-list-wrap .label-by-16 span,
#top-news ul.top-news-wrap .label-by-17 span,
#news-list ul.top-news-wrap .label-by-17 span,
#top-news ul.news-list-wrap .label-by-17 span,
#news-list ul.news-list-wrap .label-by-17 span,
#top-news ul.top-news-wrap .label-by-18 span,
#news-list ul.top-news-wrap .label-by-18 span,
#top-news ul.news-list-wrap .label-by-18 span,
#news-list ul.news-list-wrap .label-by-18 span,
#top-news ul.top-news-wrap .label-by-19 span,
#news-list ul.top-news-wrap .label-by-19 span,
#top-news ul.news-list-wrap .label-by-19 span,
#news-list ul.news-list-wrap .label-by-19 span,
#top-news ul.top-news-wrap .label-by-20,
#news-list ul.top-news-wrap .label-by-20,
#top-news ul.news-list-wrap .label-by-20,
#news-list ul.news-list-wrap .label-by-20 {
  background: #5fbe36 !important;
}
#top-news ul.top-news-wrap .label-by-activity span,
#news-list ul.top-news-wrap .label-by-activity span,
#top-news ul.news-list-wrap .label-by-activity span,
#news-list ul.news-list-wrap .label-by-activity span {
  background: #2482d0 !important;
}
#top-news ul.top-news-wrap div.icon-zaidan span,
#news-list ul.top-news-wrap div.icon-zaidan span,
#top-news ul.news-list-wrap div.icon-zaidan span,
#news-list ul.news-list-wrap div.icon-zaidan span,
#top-news ul.top-news-wrap div.icon-area span,
#news-list ul.top-news-wrap div.icon-area span,
#top-news ul.news-list-wrap div.icon-area span,
#news-list ul.news-list-wrap div.icon-area span {
  position: relative;
  box-sizing: border-box;
  text-align: center;
  color: #FFF;
  font-size: 0.95rem;
  width: 100%;
  display: block;
}
#top-news ul.top-news-wrap div.icon-zaidan span,
#news-list ul.top-news-wrap div.icon-zaidan span,
#top-news ul.news-list-wrap div.icon-zaidan span,
#news-list ul.news-list-wrap div.icon-zaidan span {
  background: #f39345;
}
#top-news ul.top-news-wrap div.icon-area span,
#news-list ul.top-news-wrap div.icon-area span,
#top-news ul.news-list-wrap div.icon-area span,
#news-list ul.news-list-wrap div.icon-area span {
  background: #50c41d;
}
#news-list div.cnt-box-cld {
  padding-top: 2rem;
}
#news-list div.cnt-box-cld ul li {
  border-bottom: 1px dotted #555;
  padding: 1.4rem 0 1.6rem 0;
}
#news-list div.cnt-box-cld ul.pagination li {
  border: none;
  padding: 0;
}
#top-news {
  position: relative;
  box-sizing: border-box;
  width: 84%;
  display: flex;
  background: #f0fafb;
  margin: 3rem auto;
  z-index: 2;
}
#top-news ul.top-news-wrap {
  padding: 2.4rem 3.4rem;
}
#top-news div.bt-news {
  position: relative;
  box-sizing: border-box;
  width: 30%;
  display: flex;
  background: #4ac7e7;
}
#top-news div.bt-news a {
  position: relative;
  box-sizing: border-box;
  background: #0f98bf;
  display: block;
  font-size: 0.9rem;
  width: 64%;
  height: 2.4rem;
  padding: 0.5rem 1rem 0.4rem 1rem;
  margin: auto;
  text-align: center;
}
@media screen and (max-width: 1249px) {
  #top-news {
    width: 94%;
    margin: 3vw auto;
  }
  #top-news ul.top-news-wrap {
    padding: 3vw 4vw;
  }
  #top-news div.bt-news {
    padding: 3vw 4vw;
    position: relative;
  }
  #top-news div.bt-news a {
    width: 80%;
  }
}
@media screen and (max-width: 899px) {
  #top-news {
    position: relative;
    box-sizing: border-box;
    width: 90%;
    display: block;
    background: #f5f5f5;
    margin: 5vw auto;
    padding: 4vw 5% 2.6rem 5%;
  }
  #top-news div.bt-news a {
    position: absolute;
    box-sizing: border-box;
    top: inherit;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    max-width: 200px;
    background: #4fc8d3;
    font-size: 0.9rem;
  }
  #top-news ul {
    position: relative;
    box-sizing: border-box;
  }
  #top-news ul li {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px 0;
    padding: 0.4rem 0;
  }
  #top-news ul div.txt {
    width: 100%;
    grid-column: 1 / 4;
    margin-bottom: 0.5rem;
  }
  #top-news ul div.icon-zaidan span,
  #top-news ul div.icon-area span {
    text-align: center;
    color: #FFF;
    font-size: 0.8rem;
    width: 80%;
    margin-left: 20%;
    padding: 0.2rem 1rem;
  }
  #top-news ul div.icon-zaidan span {
    background: #f39345;
  }
  #top-news ul div.icon-area span {
    background: #50c41d;
  }
  #news-list {
    position: relative;
    box-sizing: border-box;
    width: 100%;
    display: block;
    margin: 0 auto;
    padding: 3vw 6%;
  }
  #news-list div.cnt-wrap {
    width: 100%;
    padding: 0;
    margin: 0;
  }
  #news-list div.cnt-wrap div.cnt-box-cld {
    padding: 0;
  }
  #news-list div.bt-news a {
    position: absolute;
    box-sizing: border-box;
    top: inherit;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    max-width: 200px;
    background: #4fc8d3;
    font-size: 0.9rem;
  }
  #news-list ul.news-list-wrap {
    position: relative;
    box-sizing: border-box;
    width: 100%;
    margin-bottom: 6vw;
  }
  #news-list ul.news-list-wrap li {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px 0;
    padding: 0.4rem 0;
  }
  #news-list ul.news-list-wrap div.txt {
    width: 100%;
    grid-column: 1 / 4;
    margin-bottom: 0.5rem;
  }
  #news-list ul.news-list-wrap div.icon-zaidan span,
  #news-list ul.news-list-wrap div.icon-area span {
    text-align: center;
    color: #FFF;
    font-size: 0.8rem;
    width: 80%;
    margin-left: 20%;
    padding: 0.2rem 1rem;
  }
  #news-list ul.news-list-wrap div.icon-zaidan span {
    background: #f39345;
  }
  #news-list ul.news-list-wrap div.icon-area span {
    background: #50c41d;
  }
  #top-news {
    position: relative;
    box-sizing: border-box;
    width: 90%;
    display: block;
    background: #f0fafb;
    margin: 4vw auto;
    padding: 3vw 0 0 0;
  }
  #top-news ul.top-news-wrap {
    padding: 0 6%;
    width: 100%;
    margin-bottom: 2vw;
  }
  #top-news ul.top-news-wrap li {
    border-bottom: 1px dotted #489796;
  }
  #top-news ul.top-news-wrap li:last-child {
    border-bottom: none;
  }
  #top-news div.bt-news {
    width: 100%;
    padding: 3vw;
  }
  #top-news div.bt-news a {
    position: relative;
    box-sizing: border-box;
    width: 65%;
    background: #0f98bf;
    top: inherit;
    bottom: inherit;
    right: inherit;
    left: inherit;
    margin: auto;
    max-width: inherit;
    font-size: 0.9rem;
  }
}
@media screen and (max-width: 459px) {
  #top-news {
    width: 100%;
    margin: 0;
  }
}
/* TOP CNT1
--------------------------------------------------------------------------*/
#top-1st {
  width: 100%;
  margin: 5rem auto 0 auto;
}
#top-1st div.cnt-wrap {
  width: 100%;
  margin: 0;
}
#top-1st div.cnt-wrap div.cnt-box-cld {
  padding: 0;
}
#top-1st div.cnt-wrap div.cnt-box-cld h2.heading {
  width: 70%;
}
#top-1st div.cnt-wrap div.cnt-box-cld h4.subsubhead {
  color: #0262b1;
  border: none;
  font-size: min(1.5rem, 4.6vw);
  line-height: min(2rem, 7.8vw);
  padding: 0;
}
#top-1st div.cnt-wrap div.cnt-box-cld p {
  line-height: 2.1rem;
}
#top-1st div.cnt-wrap div.cnt-box-cld:nth-child(2) {
  padding: 6rem 8rem 6rem 4rem;
}
#top-1st div.cnt-wrap div.cnt-box-cld ul.box-1w {
  display: flex;
  justify-content: flex-end;
}
#top-1st div.cnt-wrap div.cnt-box-cld ul.box-1w .bt-std {
  width: 40%;
}
.cnt-right {
  justify-content: flex-end;
}
@media screen and (max-width: 1599px) {
  #top-1st {
    width: 100%;
    margin: 4vw auto 0 auto;
  }
  #top-1st div.cnt-wrap {
    width: 100%;
    margin: 0;
  }
  #top-1st div.cnt-wrap div.cnt-box-cld {
    padding: 0;
  }
  #top-1st div.cnt-wrap div.cnt-box-cld h2.heading {
    width: 70%;
    margin: 0 auto 3vw auto;
  }
  #top-1st div.cnt-wrap div.cnt-box-cld p {
    line-height: 2.1rem;
  }
  #top-1st div.cnt-wrap div.cnt-box-cld:nth-child(2) {
    padding: 4vw 8% 1vw 5%;
  }
  #top-1st div.cnt-wrap div.cnt-box-cld ul.box-1w {
    display: flex;
    justify-content: flex-end;
  }
  #top-1st div.cnt-wrap div.cnt-box-cld ul.box-1w .bt-std {
    width: 60%;
  }
}
@media screen and (max-width: 899px) {
  #top-1st {
    width: 100%;
    margin: 4vw auto 0 auto;
  }
  #top-1st div.cnt-wrap {
    width: 100%;
    margin: 0;
    display: block;
  }
  #top-1st div.cnt-wrap div.cnt-box-cld {
    padding: 0;
  }
  #top-1st div.cnt-wrap div.cnt-box-cld h2.heading {
    width: 70%;
    margin: 1vw auto 5vw auto;
  }
  #top-1st div.cnt-wrap div.cnt-box-cld h4.subsubhead {
    margin-bottom: 2vw !important;
  }
  #top-1st div.cnt-wrap div.cnt-box-cld p {
    line-height: 2.1rem;
  }
  #top-1st div.cnt-wrap div.cnt-box-cld:nth-child(2) {
    padding: 1vw 5% 1vw 5%;
  }
  #top-1st div.cnt-wrap div.cnt-box-cld ul.box-1w {
    justify-content: center;
  }
  #top-1st div.cnt-wrap div.cnt-box-cld ul.box-1w .bt-std {
    width: 78%;
  }
  #top-1st div.cnt-wrap .w45,
  #top-1st div.cnt-wrap .w55 {
    width: 100% !important;
  }
}
/* TOP CNT2
--------------------------------------------------------------------------*/
#top-2nd {
  background: #eef9fb;
  width: 100%;
  padding-bottom: 0;
}
#top-2nd div.cnt-wrap {
  margin: 2rem auto;
}
.cnt-right {
  justify-content: flex-end;
}
@media screen and (max-width: 1150px) {
  #top-2nd div.cnt-wrap {
    margin: 4vw auto;
  }
}
/* TOP CNT4
--------------------------------------------------------------------------*/
#top-4th {
  width: 100%;
  padding-bottom: 0;
}
#top-4th div.cnt-wrap:first-child {
  margin-bottom: 0;
}
#top-4th div.cnt-wrap:last-child {
  margin-top: 0;
}
#top-4th div.cnt-wrap div.top-2nd-toptx {
  text-align: center;
}
#top-4th div.cnt-wrap div.top-2nd-toptx h3 {
  color: #606060;
  margin-bottom: 0.5rem;
}
#top-4th div.cnt-wrap div.top-2nd-toptx p span {
  font-weight: 700;
}
/* TOP CNT4-1
--------------------------------------------------------------------------*/
#top-4th-1 {
  background: url("../img/top-konpass.jpg") right -3rem top no-repeat #f8f9fd;
  background-size: cover;
  width: 100%;
}
#top-4th-1 div.cnt-wrap {
  width: 100%;
  padding: 3rem  0;
  margin: 0 auto !important;
}
#top-4th-1 div.cnt-wrap h3 {
  font-size: 220%;
}
#top-4th-1 div.cnt-wrap h3 span {
  font-size: 50%;
}
@media screen and (max-width: 1499px) {
  #top-4th-1 {
    background: url("../img/top-konpass.jpg") right -5vw top no-repeat #f8f9fd;
    background-size: cover;
  }
}
@media screen and (max-width: 1299px) {
  #top-4th-1 {
    background: url("../img/top-konpass.jpg") right -15vw top no-repeat #f8f9fd;
    background-size: cover;
  }
}
@media screen and (max-width: 1199px) {
  #top-4th-1 {
    background: url("../img/top-konpass.jpg") right -21vw top no-repeat #f8f9fd;
    background-size: cover;
  }
}
@media screen and (max-width: 1050px) {
  #top-4th-1 {
    background: url("../img/top-konpass.jpg") right -28vw top no-repeat #f8f9fd;
    background-size: cover;
  }
}
@media screen and (max-width: 1030px) {
  #top-4th-1 {
    background: url("../img/top-konpass.jpg") right -31vw top no-repeat #f8f9fd;
    background-size: cover;
  }
}
@media screen and (max-width: 949px) {
  #top-4th-1 {
    background: url("../img/top-konpass.jpg") right bottom -10vw no-repeat #f8f9fd;
    background-size: 190%;
  }
  #top-4th-1 div.cnt-wrap {
    width: 100%;
    padding: 6vw  0  55vw  0;
    margin: 0 auto !important;
  }
  #top-4th-1 div.cnt-wrap div.w55 {
    width: 100% !important;
  }
}
/* TOP CNT4-2
--------------------------------------------------------------------------*/
#top-4th-2 {
  background: url("../img/top-houkoku.jpg") right bottom no-repeat #f0f3f8;
  background-size: cover;
  width: 100%;
  margin-bottom: 0;
}
#top-4th-2 div.cnt-wrap {
  width: 100%;
  padding: 3rem  0;
  margin: 0 auto !important;
}
#top-4th-2 div.cnt-wrap h3 {
  font-size: 220%;
}
#top-4th-2 div.cnt-wrap h3 span {
  font-size: 50%;
}
@media screen and (max-width: 949px) {
  #top-4th-2 {
    background: url("../img/top-houkoku.jpg") right bottom -10vw no-repeat #f0f3f8;
    background-size: 190%;
  }
  #top-4th-2 div.cnt-wrap {
    width: 100%;
    padding: 6vw  0  55vw  0;
    margin: 0 auto !important;
  }
  #top-4th-2 div.cnt-wrap div.w55 {
    width: 100% !important;
  }
}
/* TOP CNT5
--------------------------------------------------------------------------*/
#top-5th {
  width: 100%;
  padding-bottom: 0;
  padding-top: 2rem;
}
#top-5th div.cnt-wrap:first-child {
  margin-bottom: 0;
}
#top-5th div.cnt-wrap:last-child {
  margin-top: 0;
}
#top-5th div.cnt-wrap div.top-2nd-toptx {
  text-align: center;
}
#top-5th div.cnt-wrap div.top-2nd-toptx h3 {
  color: #606060;
  margin-bottom: 0.5rem;
}
#top-5th div.cnt-wrap div.top-2nd-toptx p span {
  font-weight: 700;
}
/* TOP CNT5-1
--------------------------------------------------------------------------*/
#top-5th-1 div.cnt-wrap {
  width: 88%;
  padding: 0  0 4rem  0;
  margin: 0 6% !important;
}
#top-5th-1 div.cnt-wrap div.cnt-box-cld {
  padding: 0;
  background: #f4f6f8;
}
#top-5th-1 div.cnt-wrap div.cnt-box-cld:nth-child(2n) {
  margin-left: 2%;
}
#top-5th-1 div.cnt-wrap div.cnt-box-cld a {
  text-decoration: none;
  display: block;
}
#top-5th-1 div.cnt-wrap div.cnt-box-cld a figure {
  margin-bottom: 1rem;
}
#top-5th-1 div.cnt-wrap div.cnt-box-cld a h5 {
  font-size: 150%;
  margin: 0 5% 0.5rem 5%;
  color: #eb6663;
}
#top-5th-1 div.cnt-wrap div.cnt-box-cld a p {
  margin: 0 5% 1.5rem 5%;
  color: #3e3a39;
}
@media screen and (max-width: 949px) {
  #top-5th-1 div.cnt-wrap {
    width: 88%;
    padding: 3rem  0;
    margin: 0 6% !important;
    display: block;
  }
  #top-5th-1 div.cnt-wrap div.cnt-box-cld {
    padding: 0;
    background: #f4f6f8;
    display: block;
    overflow: hidden;
  }
  #top-5th-1 div.cnt-wrap div.cnt-box-cld:nth-child(2n) {
    margin-left: 0;
    margin-top: 5vw;
  }
  #top-5th-1 div.cnt-wrap div.cnt-box-cld a {
    text-decoration: none;
    display: block;
  }
  #top-5th-1 div.cnt-wrap div.cnt-box-cld a figure {
    margin-bottom: 1rem;
  }
  #top-5th-1 div.cnt-wrap div.cnt-box-cld a h5 {
    font-size: 150%;
    margin: 0 5% 0.5rem 5%;
    color: #eb6663;
  }
  #top-5th-1 div.cnt-wrap div.cnt-box-cld a p {
    margin: 0 5% 1.5rem 5%;
    color: #3e3a39;
  }
}
/* notices-sec
--------------------------------------------------------------------------*/
.notices-sec {
  position: relative;
  box-sizing: border-box;
  padding-top: 70px;
  width: 100%;
  max-width: 1600px;
  margin: 0 auto -70px auto;
  background: #fff888;
}
.notices-sec div.notices-cnt {
  position: relative;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  width: 96%;
  margin: 0 auto;
  padding: 1.5rem;
}
.notices-sec div.notices-cnt h2 {
  font-size: 110%;
  font-weight: 500;
  animation: notices-sec-a 0.5s infinite alternate linear;
  color: #ee526c;
  margin-right: 2rem;
}
@keyframes notices-sec-a {
  from {
    color: #ee526c;
  }
  to {
    color: #2e73a8;
  }
}
@media screen and (max-width: 999px) {
  .notices-sec {
    padding-top: 80px;
    margin: 0 auto -80px auto;
  }
  .notices-sec div.notices-cnt h2 {
    font-size: 100%;
  }
}
@media screen and (max-width: 750px) {
  .notices-sec {
    padding-top: 80px;
    margin: 0 auto -80px auto;
  }
}
@media screen and (max-width: 699px) {
  .notices-sec {
    padding-top: 60px;
    margin: 0 auto -60px auto;
  }
  .notices-sec div.notices-cnt {
    display: block;
  }
  .notices-sec div.notices-cnt h2 {
    width: 100%;
    margin-right: auto;
  }
}
/* Banner
--------------------------------------------------------------------------*/
#bnr-area {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  padding: 2rem 5%;
}
#bnr-area aside {
  position: relative;
  box-sizing: border-box;
  width: 100%;
}
#bnr-area aside ul {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 25px 25px;
}
#bnr-area aside ul li {
  position: relative;
  box-sizing: border-box;
  width: calc(25% - 19px);
  display: block;
}
#bnr-area aside ul li a {
  display: block;
}
@media screen and (max-width: 949px) {
  #bnr-area {
    padding: 3vw 5%;
  }
  #bnr-area aside ul {
    gap: 24px 24px;
  }
  #bnr-area aside ul li {
    width: calc(50% - 12px);
  }
}
@media screen and (max-width: 639px) {
  #bnr-area {
    padding: 5vw 5%;
  }
  #bnr-area aside ul {
    gap: 3vw;
  }
  #bnr-area aside ul li {
    width: 100%;
  }
}
/* COLOR
--------------------------------------------------------------------------*/
.clr-ev {
  color: #e673a4;
}
.clr-mc {
  color: #73c833;
}
.clr-is {
  color: #f08367;
}
/* PageTop
--------------------------------------------------------------------------*/
#pagetop {
  position: fixed;
  box-sizing: border-box;
  display: block;
  width: 2rem;
  padding: 0.5rem 0.4rem 0.3rem 0.4rem;
  right: 0.8rem;
  bottom: 0.8rem;
  opacity: 1;
  z-index: 49;
  background: #00457d;
  cursor: pointer;
}
#pagetop img {
  display: block;
}
#member-bt {
  position: fixed;
  display: block;
  width: 2rem;
  right: 0;
  top: 40vh;
  z-index: 48;
}
#member-bt a {
  display: block;
}
@media screen and (max-width: 899px) {
  #member-bt {
    display: none;
  }
}
