/* 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: #f6f4f0;
  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: 'Zen Maru Gothic', sans-serif;
  color: #3e3a39;
}
h1 {
  font-size: 2.4rem;
  font-weight: 700;
  font-family: 'Zen Maru Gothic', sans-serif;
}
h1 span {
  font-size: 2.4rem;
  font-weight: 700;
}
h2 {
  font-size: min(2.2rem, 6.2vw);
  font-weight: 900;
  color: #eb6663;
  font-family: 'Zen Maru Gothic', sans-serif;
}
h2 span {
  color: #3e3e3e;
  font-size: 46%;
  font-weight: 400;
  display: block;
}
h3 {
  font-size: min(1.7rem, 4.2vw);
  font-weight: 500;
  color: #eb6663;
  font-family: 'Zen Maru Gothic', sans-serif;
}
h3 span {
  color: #3e3e3e;
  font-size: 65%;
  font-weight: 400;
  display: block;
}
h4 {
  font-size: min(1.8rem, 3.2vw);
  font-weight: 700;
  font-family: 'Zen Maru Gothic', sans-serif;
}
h5 {
  font-size: min(1.8rem, 3.2vw);
  font-weight: 500;
  font-family: 'Zen Maru Gothic', sans-serif;
}
h6 {
  font-size: min(1.6rem, 2.2vw);
  font-weight: 500;
  font-family: 'Zen Maru Gothic', sans-serif;
}
p,
td,
th,
dt,
dd,
li {
  font-size: 1rem;
  letter-spacing: 0.05rem;
}
p {
  font-family: 'Zen Maru Gothic', sans-serif;
}
.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%);
  min-height: 800px;
  margin: 0 auto 0 auto;
  max-width: inherit;
  padding: 99px 0 0 0;
  background: #FFF;
  display: block;
}
main {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  min-height: 800px;
}
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: 80px 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: 80px 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: 360px;
  top: 3.2rem;
  right: 0;
  padding: 0;
  background: none;
}
.article-nav h3 {
  display: none;
}
.article-nav ul {
  border-top: dotted 1px #463934;
}
.article-nav ul li {
  border-top: none;
  border-bottom: dotted 1px #463934;
}
.article-nav ul li a {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  display: block;
  background: none;
  padding: 1.2rem 2rem 1.2rem 1rem;
  text-decoration: none;
  color: #333;
  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: #c6eef8;
  color: #265c6a;
}
article.fixed .article-nav {
  position: sticky;
  top: 130px;
}
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;
    overflow: hidden;
  }
  .article-with-nav div.article-content {
    width: 100%;
  }
}
.body-tx,
.entry-form {
  padding: 1.5rem 100px 3rem 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: #046F49;
  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: #046F49;
  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: 180px;
  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 ;
}
.page-header-group {
  width: 100%;
}
.page-header-group h1.hd {
  position: relative;
  box-sizing: border-box;
  display: flex;
  width: 100%;
  min-height: 180px;
  padding: 3rem 280px;
  align-items: center;
  justify-content: center;
  background: url("../img/ttl_bg.jpg") center center no-repeat;
  background-size: cover;
}
.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: 1.5rem 70px 3rem 70px;
}
.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;
  font-size: min(2rem, 4.8vw);
  line-height: min(3.3rem, 6.2vw);
  font-weight: 600;
  text-align: center;
  letter-spacing: 0.1rem;
  color: #487fa9;
  margin: 0 0 2rem 0;
  padding: 3.5rem 3% 3.8rem 3% !important;
  border-bottom: none;
  border-radius: none;
  background: url("../img/h1-bg.png"), url("../img/h1-bg2.png");
  background-position: top left,   bottom left;
  background-repeat: no-repeat, no-repeat;
  background-size: 100%,  100%;
}
h3.subhead {
  position: relative;
  box-sizing: border-box;
  font-size: min(1.7rem, 4.6vw);
  line-height: min(2.6rem, 7.8vw);
  font-family: 'Zen Maru Gothic', sans-serif;
  font-weight: 500;
  letter-spacing: 0.1rem;
  margin: 0 0 2rem 0;
  padding: 1.1rem 1.8rem 1.3rem 1.8rem;
  color: #FFF;
  background: #487fa9;
  border-left: none;
}
h4.subsubhead {
  position: relative;
  box-sizing: border-box;
  font-size: min(1.6rem, 4.2vw);
  line-height: min(2.6rem, 6.2vw);
  letter-spacing: 0.1rem;
  color: #5c8dbb;
  font-weight: 700;
  margin: 0 0 2rem 0;
  padding: 0.2rem 0 0.8rem 0;
  border-bottom: solid 1px #5c8dbb;
}
@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 {
    margin: 0 0 4vw 0;
    padding: 5vw 3% 5.3vw 3% !important;
    background: url("../img/h1-bg.png"), url("../img/h1-bg2.png");
    background-position: top left,   bottom left;
    background-repeat: no-repeat, no-repeat;
    background-size: 100%,  100%;
  }
  h3.subhead {
    margin: 0 0 2.5vw 0;
    padding: 1.5vw 2vw;
  }
  h4.subsubhead {
    margin: 0 0 2.5vw 0;
    padding: 0 0 2vw 0;
  }
}
@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;
    padding: 8vw 3% 8.8vw 3% !important;
    background: url("../img/h1s-bg.png"), url("../img/h1s-bg2.png");
    background-position: top left,   bottom left;
    background-repeat: no-repeat, no-repeat;
    background-size: 100%,  100%;
  }
  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;
  width: min(100rem, 100%);
  margin: auto;
  left: 0;
  right: 0;
  display: flex;
  align-items: flex-end;
  transform: translateY(-200%);
  background: #fbfbf7;
}
header#main-menu div.hd-logo {
  position: absolute;
  box-sizing: border-box;
  display: block;
  left: 1rem;
  top: 0.2rem;
  z-index: 3;
}
header#main-menu div.hd-logo a {
  position: relative;
  box-sizing: border-box;
  display: block;
  width: 18.4rem;
  padding: 0;
}
header#main-menu div.hd-bar {
  position: relative;
  box-sizing: border-box;
  width: calc(100% - 14rem);
  height: 100px;
  background: #fbfbf7;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  padding: 0.3rem 0;
}
header#main-menu div.ichun-start a {
  position: relative;
  box-sizing: border-box;
  display: flex;
  width: 7rem;
  height: 100px;
  background: #ed6c7d;
  color: #FFF;
  text-decoration: none;
  align-items: flex-end;
  justify-content: center;
  text-align: center;
  line-height: 1.2rem;
  padding: 0.9rem;
}
header#main-menu div.ichun-start a:before {
  position: absolute;
  display: block;
  content: "";
  width: 3.6rem;
  height: 3.6rem;
  top: 0.9rem;
  left: 0;
  right: 0;
  margin: auto;
  background: url("../img/svg/icon-heart-w.svg") top center no-repeat;
  background-size: 100%;
}
header#main-menu div.hd-sub-menu {
  position: relative;
  box-sizing: border-box;
  display: flex;
  justify-content: flex-end;
  width: calc(100% - 16rem);
  margin-left: 16rem;
  order: 1;
}
header#main-menu div.hd-sub-menu div.header-search input {
  position: relative;
  box-sizing: border-box;
  border: 1px solid #d8dad0;
  padding: 0.3rem;
  border-radius: 0.2rem;
  height: 30px;
}
header#main-menu div.hd-sub-menu div.header-search button {
  position: relative;
  box-sizing: border-box;
  background: #ededed;
  border: 1px solid #d8dad0;
  padding: 0.3rem;
  border-radius: 0.2rem;
  width: 30px;
  height: 30px;
}
header#main-menu div.hd-sub-menu div.header-search button img {
  position: absolute;
  box-sizing: border-box;
  width: 1.6rem;
  left: 0.05rem;
  top: 0.05rem;
}
header#main-menu div.hd-sub-menu ul.header-sns {
  position: relative;
  box-sizing: border-box;
  display: flex;
  margin: 0 0.8rem;
}
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.2rem;
}
.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: 1199px) {
  header#main-menu {
    justify-content: flex-start;
  }
  header#main-menu div.hd-bar {
    position: relative;
    box-sizing: border-box;
    width: calc(100% - 14rem);
    height: 100px;
    padding: 0.3rem 0;
  }
  header#main-menu div.ichun-start a {
    width: 7rem;
    height: 100px;
  }
  header#main-menu div.hd-sub-menu {
    width: calc(100% - 16rem);
    margin-left: 0;
    margin-right: 0.5rem;
    order: 1;
    text-align: right;
  }
  header#main-menu div.hd-sub-menu div.header-search {
    margin-right: 0.8rem;
  }
  header#main-menu div.hd-sub-menu div.header-search input {
    position: relative;
    box-sizing: border-box;
    border: 1px solid #d8dad0;
    padding: 0.3rem;
    border-radius: 0.2rem;
    height: 30px;
  }
  header#main-menu div.hd-sub-menu ul.header-sns {
    position: relative;
    box-sizing: border-box;
    display: flex;
    justify-content: flex-end;
    margin: 0 0.8rem;
  }
  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.2rem;
  }
}
@media screen and (max-width: 999px) {
  header#main-menu {
    justify-content: flex-start;
  }
  header#main-menu div.hd-logo {
    width: 16rem;
    left: 0.5rem;
    top: 0rem;
  }
  header#main-menu div.hd-logo a {
    width: 100%;
  }
  header#main-menu div.hd-bar {
    position: relative;
    box-sizing: border-box;
    width: calc(100% - 10rem);
    height: 80px;
    padding: 0.3rem 0;
  }
  header#main-menu div.ichun-start a {
    width: 5rem;
    height: 80px;
    font-size: 0.75rem;
    line-height: 0.9rem;
    padding: 0.6rem 0.6rem 0.7rem 0.6rem;
  }
  header#main-menu div.ichun-start a:before {
    position: absolute;
    display: block;
    content: "";
    width: 2.6rem;
    height: 2.6rem;
    top: 0.9rem;
    left: 0;
    right: 0;
    margin: auto;
    background: url("../img/svg/icon-heart-w.svg") top center no-repeat;
    background-size: 100%;
  }
  header#main-menu div.hd-sub-menu {
    position: relative;
    box-sizing: border-box;
    width: calc(100% - 12rem);
    margin-left: 0;
    margin-right: 0.2rem;
    order: 1;
    text-align: right;
  }
  header#main-menu div.hd-sub-menu div.header-search {
    margin-right: 0.4rem;
  }
  header#main-menu div.hd-sub-menu div.header-search input {
    position: relative;
    box-sizing: border-box;
    border: 1px solid #d8dad0;
    padding: 0.2rem;
    border-radius: 0.2rem;
    height: 24px;
    width: 140px;
  }
  header#main-menu div.hd-sub-menu div.header-search button {
    padding: 0.2rem;
    border-radius: 0.2rem;
    width: 24px;
    height: 24px;
  }
  header#main-menu div.hd-sub-menu div.header-search button img {
    width: 1.4rem;
    left: -0.03rem;
    top: -0.03rem;
  }
  header#main-menu div.hd-sub-menu ul.header-sns {
    position: relative;
    box-sizing: border-box;
    display: flex;
    justify-content: flex-end;
    margin: 0 0.8rem;
  }
  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: 849px) {
  header#main-menu {
    justify-content: flex-start;
  }
  header#main-menu div.hd-logo {
    width: 16rem;
    left: 0.5rem;
    top: 0rem;
  }
  header#main-menu div.hd-logo a {
    width: 100%;
  }
  header#main-menu div.hd-bar {
    position: relative;
    box-sizing: border-box;
    width: calc(100% - 10rem);
    height: 80px;
    padding: 0.3rem 0;
  }
  header#main-menu div.ichun-start a {
    width: 5rem;
    height: 80px;
    font-size: 0.75rem;
    line-height: 0.9rem;
    padding: 0.6rem 0.6rem 0.7rem 0.6rem;
  }
  header#main-menu div.ichun-start a:before {
    position: absolute;
    display: block;
    content: "";
    width: 2.6rem;
    height: 2.6rem;
    top: 0.9rem;
    left: 0;
    right: 0;
    margin: auto;
    background: url("../img/svg/icon-heart-w.svg") top center no-repeat;
    background-size: 100%;
  }
  header#main-menu div.hd-sub-menu {
    position: relative;
    box-sizing: border-box;
    width: calc(100% - 17rem);
    margin-left: 0;
    margin-right: 0.2rem;
    order: 1;
    text-align: right;
  }
  header#main-menu div.hd-sub-menu div.header-search {
    margin-right: 0.2rem;
  }
  header#main-menu div.hd-sub-menu div.header-search input {
    position: relative;
    box-sizing: border-box;
    border: 1px solid #d8dad0;
    padding: 0.2rem;
    border-radius: 0.2rem;
    height: 24px;
    width: 110px;
  }
  header#main-menu div.hd-sub-menu div.header-search button {
    padding: 0.2rem;
    border-radius: 0.2rem;
    width: 24px;
    height: 24px;
  }
  header#main-menu div.hd-sub-menu div.header-search button img {
    width: 1.4rem;
    left: -0.03rem;
    top: -0.03rem;
  }
  header#main-menu div.hd-sub-menu ul.header-sns {
    position: relative;
    box-sizing: border-box;
    display: flex;
    justify-content: flex-end;
    margin: 0 0.8rem;
  }
  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.1rem;
  }
}
@media screen and (max-width: 699px) {
  header#main-menu div.hd-logo {
    width: 13rem;
    left: 0;
  }
  header#main-menu div.hd-bar {
    position: relative;
    box-sizing: border-box;
    width: calc(100% - 10rem);
    height: 60px;
    padding: 0.3rem 0;
  }
  header#main-menu div.ichun-start a {
    width: 5rem;
    height: 60px;
    font-size: 0.65rem;
    line-height: 0.75rem;
    padding: 0.4rem 0.6rem 0.5rem 0.6rem;
  }
  header#main-menu div.ichun-start a:before {
    position: absolute;
    display: block;
    content: "";
    width: 2.4rem;
    height: 2.4rem;
    top: 0.4rem;
    left: 0;
    right: 0;
    margin: auto;
    background: url("../img/svg/icon-heart-w.svg") top center no-repeat;
    background-size: 100%;
  }
  header#main-menu div.hd-sub-menu {
    position: relative;
    box-sizing: border-box;
    width: calc(100% - 7em);
    margin-left: 0;
    margin-right: 0;
    order: 1;
    text-align: right;
  }
  header#main-menu div.hd-sub-menu div.header-search {
    margin-right: 0rem;
  }
  header#main-menu div.hd-sub-menu div.header-search input {
    position: relative;
    box-sizing: border-box;
    border: 1px solid #d8dad0;
    padding: 0.2rem;
    border-radius: 0.2rem;
    height: 24px;
  }
  header#main-menu div.hd-sub-menu div.header-search button {
    padding: 0.2rem;
    border-radius: 0.2rem;
    width: 24px;
    height: 24px;
  }
  header#main-menu div.hd-sub-menu div.header-search button img {
    width: 1.4rem;
    left: -0.03rem;
    top: -0.03rem;
  }
  header#main-menu div.hd-sub-menu ul.header-sns {
    position: relative;
    box-sizing: border-box;
    display: flex;
    justify-content: flex-end;
    margin: 0 0.8rem;
  }
  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: 659px) {
  header#main-menu div.hd-logo {
    width: 13rem;
  }
  header#main-menu div.hd-bar {
    position: relative;
    box-sizing: border-box;
    width: 100%;
    height: 70px;
    padding: 0.3rem 0;
    align-items: flex-start;
  }
  header#main-menu div.ichun-start {
    position: absolute;
    right: 5.4rem;
    bottom: 0;
  }
  header#main-menu div.ichun-start a {
    width: 7rem;
    height: 30px;
    font-size: 0.65rem;
    line-height: 0.75rem;
    padding: 0.2rem 0.6rem 0.4rem 1.2rem;
    align-items: center;
  }
  header#main-menu div.ichun-start a:before {
    position: absolute;
    display: block;
    content: "";
    width: 1.6rem;
    height: 1.8rem;
    top: 0.3rem;
    left: 0.3rem;
    right: inherit;
    margin: auto;
    background: url("../img/svg/icon-heart-w.svg") top center no-repeat;
    background-size: 100%;
  }
  header#main-menu div.hd-sub-menu {
    position: relative;
    box-sizing: border-box;
    width: calc(100% - 7em);
    margin-left: 0;
    margin-right: 0;
    order: 1;
    text-align: right;
  }
  header#main-menu div.hd-sub-menu div.header-search {
    margin-right: 0rem;
  }
  header#main-menu div.hd-sub-menu div.header-search input {
    position: relative;
    box-sizing: border-box;
    border: 1px solid #d8dad0;
    padding: 0.2rem;
    border-radius: 0.2rem;
    height: 24px;
    width: 80px;
  }
  header#main-menu div.hd-sub-menu div.header-search button {
    padding: 0.2rem;
    border-radius: 0.2rem;
    margin-left: -0.1rem;
    width: 24px;
    height: 24px;
  }
  header#main-menu div.hd-sub-menu div.header-search button img {
    width: 1.4rem;
    left: -0.03rem;
    top: -0.03rem;
  }
  header#main-menu div.hd-sub-menu ul.header-sns {
    position: relative;
    box-sizing: border-box;
    display: flex;
    justify-content: flex-end;
    margin: 0 0.4rem;
  }
  header#main-menu div.hd-sub-menu ul.header-sns li a {
    position: relative;
    box-sizing: border-box;
    width: 1.4rem;
    display: block;
    padding: 0.1rem;
    margin: 0 0.1rem;
  }
}
@media screen and (max-width: 419px) {
  header#main-menu div.hd-logo {
    width: 10.4rem;
    top: 0.4rem;
  }
  header#main-menu div.hd-bar {
    position: relative;
    box-sizing: border-box;
    width: 100%;
    height: 70px;
    padding: 0.3rem 0;
    align-items: flex-start;
  }
  header#main-menu div.ichun-start {
    position: absolute;
    right: 5.4rem;
    bottom: 0;
  }
  header#main-menu div.ichun-start a {
    width: 7rem;
    height: 30px;
    font-size: 0.65rem;
    line-height: 0.75rem;
    padding: 0.2rem 0.6rem 0.4rem 1.2rem;
    align-items: center;
  }
  header#main-menu div.ichun-start a:before {
    position: absolute;
    display: block;
    content: "";
    width: 1.6rem;
    height: 1.8rem;
    top: 0.3rem;
    left: 0.3rem;
    right: inherit;
    margin: auto;
    background: url("../img/svg/icon-heart-w.svg") top center no-repeat;
    background-size: 100%;
  }
  header#main-menu div.hd-sub-menu {
    position: relative;
    box-sizing: border-box;
    width: calc(100% - 7em);
    margin-left: 0;
    margin-right: 0;
    order: 1;
    text-align: right;
  }
  header#main-menu div.hd-sub-menu div.header-search {
    margin-right: 0rem;
  }
  header#main-menu div.hd-sub-menu div.header-search input {
    position: relative;
    box-sizing: border-box;
    border: 1px solid #d8dad0;
    padding: 0.2rem;
    border-radius: 0.2rem;
    height: 24px;
    width: 80px;
  }
  header#main-menu div.hd-sub-menu div.header-search button {
    padding: 0.2rem;
    border-radius: 0.2rem;
    margin-left: -0.1rem;
    width: 24px;
    height: 24px;
  }
  header#main-menu div.hd-sub-menu div.header-search button img {
    width: 1.4rem;
    left: -0.03rem;
    top: -0.03rem;
  }
  header#main-menu div.hd-sub-menu ul.header-sns {
    position: relative;
    box-sizing: border-box;
    display: flex;
    justify-content: flex-end;
    margin: 0 0.4rem;
  }
  header#main-menu div.hd-sub-menu ul.header-sns li a {
    position: relative;
    box-sizing: border-box;
    width: 1.4rem;
    display: block;
    padding: 0.1rem;
    margin: 0 0.1rem;
  }
}
@media screen and (max-width: 374px) {
  header#main-menu div.hd-logo {
    width: 10.4rem;
    top: 0.4rem;
  }
  header#main-menu div.hd-bar {
    position: relative;
    box-sizing: border-box;
    width: 100%;
    height: 95px;
    padding: 0.3rem 0;
    align-items: flex-start;
  }
  header#main-menu div.ichun-start {
    position: absolute;
    right: 0;
    bottom: inherit;
    top: 0;
  }
  header#main-menu div.ichun-start a {
    width: 6rem;
    height: 30px;
    font-size: 0.65rem;
    line-height: 0.75rem;
    padding: 0.2rem 0.6rem 0.4rem 1.2rem;
    align-items: center;
  }
  header#main-menu div.ichun-start a:before {
    position: absolute;
    display: block;
    content: "";
    width: 1.6rem;
    height: 1.8rem;
    top: 0.3rem;
    left: 0.3rem;
    right: inherit;
    margin: auto;
    background: url("../img/svg/icon-heart-w.svg") top center no-repeat;
    background-size: 100%;
  }
  header#main-menu div.hd-sub-menu {
    position: absolute;
    box-sizing: border-box;
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    order: 1;
    text-align: right;
    bottom: 0;
    padding: 0.3rem 0.5rem;
    background: #FFF;
    justify-content: center;
  }
  header#main-menu div.hd-sub-menu div.header-search {
    margin-right: 0rem;
  }
  header#main-menu div.hd-sub-menu div.header-search input {
    position: relative;
    box-sizing: border-box;
    border: 1px solid #d8dad0;
    padding: 0.2rem;
    border-radius: 0.2rem;
    height: 24px;
    width: 80px;
  }
  header#main-menu div.hd-sub-menu div.header-search button {
    padding: 0.2rem;
    border-radius: 0.2rem;
    margin-left: -0.1rem;
    width: 24px;
    height: 24px;
  }
  header#main-menu div.hd-sub-menu div.header-search button img {
    width: 1.4rem;
    left: -0.03rem;
    top: -0.03rem;
  }
  header#main-menu div.hd-sub-menu ul.header-sns {
    position: relative;
    box-sizing: border-box;
    display: flex;
    justify-content: flex-end;
    margin: 0 0.4rem;
  }
  header#main-menu div.hd-sub-menu ul.header-sns li a {
    position: relative;
    box-sizing: border-box;
    width: 1.4rem;
    display: block;
    padding: 0.1rem;
    margin: 0 0.1rem;
  }
}
/* MENU */
#PointMenu {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  margin-left: 0;
  text-align: right;
  padding: 0 0 0 21rem;
  order: 2;
}
#PointMenu ul {
  position: relative;
  box-sizing: border-box;
  width: auto;
  max-width: inherit;
  margin: 0 auto;
  padding: 0;
  display: flex;
  justify-content: flex-end;
}
#PointMenu ul li {
  display: block;
  list-style: none;
  color: #000;
  transition: all 0.8s;
}
#PointMenu ul li a {
  position: relative;
  box-sizing: border-box;
  display: block;
  width: 100%;
  color: #000;
  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 #c9c0aa;
  transition: all 0.3s;
}
#PointMenu ul li a br {
  display: none;
}
#PointMenu ul li:first-child a {
  border-left: none;
}
@media screen and (max-width: 1350px) {
  #PointMenu ul li:first-child a {
    display: none;
  }
  #PointMenu ul li:nth-child(2) a {
    border-left: none;
  }
}
@media screen and (max-width: 1250px) {
  #PointMenu ul li:nth-child(2) a {
    display: none;
  }
  #PointMenu ul li:nth-child(3) a {
    border-left: none;
  }
}
@media screen and (max-width: 1150px) {
  #PointMenu {
    padding: 0 0 0 19rem;
  }
  #PointMenu ul li a {
    font-size: 85%;
    line-height: 120%;
    padding: 0.2rem 1rem 0.3rem 1rem;
  }
  #PointMenu ul li a br {
    display: none;
  }
  #PointMenu ul li:nth-child(2) a {
    display: none;
  }
  #PointMenu ul li:nth-child(3) a {
    border-left: none;
  }
}
@media screen and (max-width: 999px) {
  #PointMenu {
    padding: 0 0 0 18rem;
    display: none;
  }
  #PointMenu ul li:nth-child(5) a {
    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: #487fa9;
  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;
}
@media screen and (max-height: 899px) {
  input[type="checkbox"]:checked ~ #sidebarMenu {
    align-items: flex-start;
    padding: 3rem 0;
  }
}
@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: 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: flex;
    justify-content: center;
    align-items: flex-start;
    height: 100vh;
  }
}
@media screen and (max-width: 374px) {
  #sidebarMenu ul.sidebarMenuInner {
    margin: 14vw auto;
  }
  #sidebarMenu ul.sidebarMenuInner li a {
    font-size: 0.85rem;
  }
}
/* HM */
.sidebarIconToggle {
  position: absolute;
  display: block;
  box-sizing: border-box;
  cursor: pointer;
  z-index: 506;
  right: 0;
  width: 7rem;
  height: 100px;
  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: 'Zen Maru Gothic', sans-serif;
  font-size: 0.7rem;
  letter-spacing: 0.05rem;
  margin-top: 1.1rem;
  opacity: 1;
  transition: all 0.3s;
}
.spinner {
  transition: all 0.3s;
  box-sizing: border-box;
  position: absolute;
  height: 0.05rem;
  border-radius: 0.2rem;
  width: 100%;
  background-color: #111;
}
.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: #111;
}
.diagonal.part-2 {
  transition: all 0.3s;
  box-sizing: border-box;
  position: relative;
  float: left;
  margin-top: 0.6rem;
  background-color: #111;
}
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: #cdcdcd;
}
@keyframes example {
  100% {
    opacity: 1;
  }
}
@media screen and (max-width: 999px) {
  .sidebarIconToggle {
    right: 0;
    width: 5rem;
    height: 80px;
    margin-top: 0;
    padding: 1.8rem 1.2rem 1.25rem 1.2rem;
    transition: all 0.3s;
  }
  .sidebarIconToggle div.spinner-tx {
    text-align: center;
    font-family: 'Zen Maru Gothic', sans-serif;
    font-size: 0.6rem;
    letter-spacing: 0.05rem;
    margin-top: 1.1rem;
    opacity: 1;
    transition: all 0.3s;
  }
}
@media screen and (max-width: 659px) {
  .sidebarIconToggle {
    right: 0;
    bottom: 0;
    width: 5.4rem;
    height: 30px;
    padding: 0rem 1.8rem 0rem 1.8rem;
    background: #efefe5;
  }
  .sidebarIconToggle div.spinner-tx {
    display: none;
  }
  .diagonal.part-1 {
    position: relative;
    transition: all 0.2s;
    box-sizing: border-box;
    float: left;
    margin-top: 0.7rem;
    background-color: #111;
  }
  .diagonal.part-2 {
    transition: all 0.2s;
    box-sizing: border-box;
    position: relative;
    float: left;
    margin-top: 0.4rem;
    background-color: #111;
  }
  input[type=checkbox]:checked ~ .sidebarIconToggle {
    transition: all 0.2s;
    height: 38px;
    background: none;
    top: 0.3rem;
    right: -0.6rem;
  }
  input[type=checkbox]:checked ~ .sidebarIconToggle > .diagonal.part-1 {
    transition: all 0.2s;
    box-sizing: border-box;
    transform: rotate(135deg);
    margin-top: 1.2rem;
  }
  input[type=checkbox]:checked ~ .sidebarIconToggle > .diagonal.part-2 {
    transition: all 0.2s;
    box-sizing: border-box;
    transform: rotate(-135deg);
    margin-top: 0;
  }
  input[type=checkbox]:checked ~ .hd-login-bt li a {
    background: #ebebeb;
  }
}
@media screen and (max-width: 374px) {
  .sidebarIconToggle {
    right: 0;
    bottom: inherit;
    top: 30px;
    width: 6rem;
    height: 30px;
    padding: 0rem 1.8rem 0rem 1.8rem;
    background: #efefe5;
  }
  .sidebarIconToggle div.spinner-tx {
    display: none;
  }
  .diagonal.part-1 {
    position: relative;
    transition: all 0.2s;
    box-sizing: border-box;
    float: left;
    margin-top: 0.7rem;
    background-color: #111;
  }
  .diagonal.part-2 {
    transition: all 0.2s;
    box-sizing: border-box;
    position: relative;
    float: left;
    margin-top: 0.4rem;
    background-color: #111;
  }
  input[type=checkbox]:checked ~ .sidebarIconToggle {
    transition: all 0.2s;
    height: 2.6rem;
    background: none;
  }
  input[type=checkbox]:checked ~ .sidebarIconToggle > .diagonal.part-1 {
    transition: all 0.2s;
    box-sizing: border-box;
    transform: rotate(135deg);
    margin-top: 1.2rem;
  }
  input[type=checkbox]:checked ~ .sidebarIconToggle > .diagonal.part-2 {
    transition: all 0.2s;
    box-sizing: border-box;
    transform: rotate(-135deg);
    margin-top: 0;
  }
  input[type=checkbox]:checked ~ .hd-login-bt li a {
    background: #ebebeb;
  }
}
/* 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: linear-gradient(0deg, #487fa9 0%, #5794c2 100%);
  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;
  font-family: 'Zen Maru Gothic', sans-serif;
}
.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 p {
  font-family: 'Zen Maru Gothic', sans-serif;
}
.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 0 auto;
}
#reports-list ul.reports-list-dtl {
  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 auto 2rem auto;
}
#reports-list ul.reports-list-dtl li {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  background: #F2F5F5;
}
#reports-list ul.reports-list-dtl li div.cnt-wrap div.cnt-box-cld.reports-img {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  overflow: hidden;
}
#reports-list ul.reports-list-dtl 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.reports-list-dtl 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.reports-list-dtl li div.cnt-wrap div.cnt-box-cld.reports-tx h3 {
  font-size: 1.1rem;
  color: #487fa9;
  margin-bottom: 0.6rem;
}
#reports-list ul.reports-list-dtl li div.cnt-wrap div.cnt-box-cld.reports-tx p {
  font-size: 0.9rem;
  line-height: 1.3rem;
  margin: 0;
}
#reports-list ul.reports-list-dtl 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.reports-list-dtl {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (max-width: 999px) {
  #reports-list {
    margin: 5vw auto 0 auto;
  }
  #reports-list ul.reports-list-dtl {
    grid-template-columns: repeat(2, 1fr);
    margin: 0 auto 3vw auto;
    gap: 20px 20px;
  }
}
@media screen and (max-width: 639px) {
  #reports-list ul.reports-list-dtl {
    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: #046F49;
  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: #e4f2f2;
  border: solid 1px #c3c3c3;
  min-width: 30%;
}
.table thead th {
  vertical-align: middle;
  background: #e4f2f2;
}
.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: #eb6663;
}
.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%;
  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;
  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 .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;
}
@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;
  }
}
/* 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: #eb6663;
}
.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%;
  margin: auto;
}
#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;
}
#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, 180px 130px 1fr);
  gap: 15px 15px;
  padding: 0.8rem 0 0.8rem 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-2 span,
#news-list ul.top-news-wrap .label-by-2 span,
#top-news ul.news-list-wrap .label-by-2 span,
#news-list ul.news-list-wrap .label-by-2 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 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: block;
  background: #f5f5f5;
  margin: 3rem auto;
  padding: 2.4rem 3rem;
  z-index: 2;
}
#top-news div.bt-news a {
  position: absolute;
  box-sizing: border-box;
  top: 0;
  right: 0;
  max-width: 200px;
  background: #4fc8d3;
  font-size: 0.9rem;
  padding: 0.4rem 1rem;
}
@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;
  }
  #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 ul.top-news-wrap li:nth-child(n+3),
  #news-list ul.top-news-wrap li:nth-child(n+3),
  #top-news ul.news-list-wrap li:nth-child(n+3),
  #news-list ul.news-list-wrap li:nth-child(n+3) {
    display: none;
  }
}
/* TOP CNT1
--------------------------------------------------------------------------*/
#top-1st {
  background: url("../img/top-ichun-bg.webp") left bottom no-repeat;
  background-size: 84%;
  width: 100%;
  overflow: visible;
}
#top-1st div.cnt-wrap {
  padding-top: 16rem;
  padding-bottom: 0;
  margin-top: -15rem;
  margin-bottom: 0;
  align-items: center;
}
#top-1st div.cnt-wrap div.cnt-box-cld {
  margin-bottom: 5rem;
}
.cnt-right {
  justify-content: flex-end;
}
@media screen and (max-width: 750px) {
  #top-1st {
    background: url("../img/top-ichun-bg.webp") left bottom no-repeat;
    background-size: 190%;
    width: 100%;
  }
  #top-1st div.cnt-wrap {
    padding-top: 5vw;
    padding-bottom: 73vw;
    margin-top: 0;
    margin-bottom: 0;
    align-items: center;
  }
  #top-1st div.cnt-wrap div.cnt-box-cld {
    margin-bottom: 5vw;
  }
}
/* TOP CNT2
--------------------------------------------------------------------------*/
div.box-3w div.select-event,
div.box-3w div.select-much,
div.box-3w div.select-ist {
  position: relative;
  box-sizing: border-box;
  display: block;
  text-align: center;
  margin: 0 !important;
  min-height: 35.5rem;
  overflow: hidden;
  color: #FFF;
}
div.box-3w div.select-event h5,
div.box-3w div.select-much h5,
div.box-3w div.select-ist h5 {
  position: relative;
  box-sizing: border-box;
  display: block;
  width: 86%;
  margin: 0 auto 1.2rem auto;
  font-weight: 700;
  border-bottom: dotted 3px #FFF;
  padding: 1.6rem 0 1rem 0;
}
div.box-3w div.select-event h5 span,
div.box-3w div.select-much h5 span,
div.box-3w div.select-ist h5 span {
  display: block;
  width: 100%;
  font-size: 72%;
  font-weight: 500;
}
div.box-3w div.select-event p,
div.box-3w div.select-much p,
div.box-3w div.select-ist p {
  position: relative;
  box-sizing: border-box;
  display: block;
  width: 86%;
  margin: 0 auto 1.5rem auto;
  font-weight: 500;
}
div.box-3w div.select-event div.bt-std,
div.box-3w div.select-much div.bt-std,
div.box-3w div.select-ist div.bt-std {
  position: absolute;
  bottom: 0;
  width: 100%;
  margin: 0;
  display: block;
}
div.box-3w div.select-event div.bt-std a,
div.box-3w div.select-much div.bt-std a,
div.box-3w div.select-ist div.bt-std a {
  padding: 0.8rem 1.35rem;
  background: rgba(255, 255, 255, 0.8);
  font-weight: 500;
  font-size: 120%;
  letter-spacing: 0.1rem;
}
div.box-3w .select-event {
  background: url("../img/top-select01.jpg") left bottom no-repeat #e672a3;
  background-size: 100%;
}
div.box-3w .select-event div.bt-std a {
  color: #d91b6c;
}
div.box-3w .select-event div.bt-std a:before {
  content: url("../img/svg/icon-arrow-pink.svg");
}
div.box-3w .select-much {
  background: url("../img/top-select02.jpg") left bottom no-repeat #6fca30;
  background-size: 100%;
}
div.box-3w .select-much div.bt-std a {
  color: #458f0e;
}
div.box-3w .select-much div.bt-std a:before {
  content: url("../img/svg/icon-arrow-green.svg");
}
div.box-3w .select-ist {
  background: url("../img/top-select03.jpg") left bottom no-repeat #ef8363;
  background-size: 100%;
}
div.box-3w .select-ist div.bt-std a {
  color: #cd3b13;
}
div.box-3w .select-ist div.bt-std a:before {
  content: url("../img/svg/icon-arrow-orange.svg");
}
div.box-3w.icu-select {
  margin-bottom: 3rem;
}
div.box-3w.icu-select div.select-event h5 span,
div.box-3w.icu-select div.select-much h5 span,
div.box-3w.icu-select div.select-ist h5 span {
  display: block;
  width: 100%;
  font-size: 62%;
  font-weight: 500;
}
#top-2nd {
  background: url("../img/top-menu-bg.webp") left top no-repeat;
  background-size: 100% 100%;
  width: 100%;
  padding-bottom: 0;
}
#top-2nd div.cnt-wrap:first-child {
  margin-bottom: 0;
}
#top-2nd div.cnt-wrap:last-child {
  margin-top: 0;
}
#top-2nd div.cnt-wrap div.top-2nd-toptx {
  text-align: center;
}
#top-2nd div.cnt-wrap div.top-2nd-toptx h3 {
  color: #606060;
  margin-bottom: 0.5rem;
}
#top-2nd div.cnt-wrap div.top-2nd-toptx p span {
  font-weight: 700;
}
#top-2nd div.cnt-wrap div.bnr-soudan {
  position: relative;
  box-sizing: border-box;
  width: 80%;
  margin: auto;
  display: flex;
}
#top-2nd div.cnt-wrap div.bnr-soudan div.w65 {
  background: #2eadd7;
  background: linear-gradient(156deg, #30add7 0%, #68c4e2 100%);
  padding: 2rem 4% 2rem 4%;
}
#top-2nd div.cnt-wrap div.bnr-soudan div.w65 h5 {
  position: relative;
  box-sizing: border-box;
  display: block;
  width: 100%;
  margin: 0 auto 1rem auto;
  font-weight: 700;
  border-bottom: dotted 3px #FFF;
  padding: 0 0 1rem 0;
  color: #FFF;
}
#top-2nd div.cnt-wrap div.bnr-soudan div.w65 h5 span {
  display: block;
  width: 100%;
  font-size: 72%;
  font-weight: 500;
}
#top-2nd div.cnt-wrap div.bnr-soudan div.w65 p {
  position: relative;
  box-sizing: border-box;
  display: block;
  width: 100%;
  margin: 0 auto 0 auto;
  font-weight: 500;
  color: #FFF;
}
#top-2nd div.cnt-wrap div.bnr-soudan div.w35 {
  background: url("../img/top-select04.jpg") left bottom no-repeat #FFF;
  background-size: cover;
  padding: 0;
}
#top-2nd div.cnt-wrap div.bnr-soudan div.w35 div.bt-std {
  position: absolute;
  bottom: 0;
  width: 100%;
  margin: 0;
  display: block;
}
#top-2nd div.cnt-wrap div.bnr-soudan div.w35 div.bt-std a {
  padding: 0.8rem 1.35rem;
  background: rgba(255, 255, 255, 0.8);
  font-weight: 500;
  font-size: 120%;
  letter-spacing: 0.1rem;
  color: #008dbc;
}
#top-2nd div.cnt-wrap div.bnr-soudan div.w35 div.bt-std a:before {
  content: url("../img/svg/icon-arrow-blue.svg");
}
.cnt-right {
  justify-content: flex-end;
}
@media screen and (max-width: 1150px) {
  #top-2nd {
    padding-bottom: 0;
  }
  #top-2nd div.cnt-wrap:first-child {
    margin-bottom: 0;
  }
  #top-2nd div.cnt-wrap:last-child {
    margin-top: 0;
  }
  #top-2nd div.cnt-wrap div.top-2nd-toptx h3 {
    margin-bottom: 0.5rem;
  }
  #top-2nd div.cnt-wrap div.box-3w {
    display: block;
  }
  #top-2nd div.cnt-wrap div.box-3w div.select-event,
  #top-2nd div.cnt-wrap div.box-3w div.select-much,
  #top-2nd div.cnt-wrap div.box-3w div.select-ist {
    display: block;
    width: 100%;
    margin: 0 0 0 0 !important;
    min-height: inherit;
    text-align: left;
  }
  #top-2nd div.cnt-wrap div.box-3w div.select-event h5,
  #top-2nd div.cnt-wrap div.box-3w div.select-much h5,
  #top-2nd div.cnt-wrap div.box-3w div.select-ist h5 {
    position: relative;
    box-sizing: border-box;
    display: block;
    width: 62%;
    margin: 0 34% 2vw 4%;
    padding: 2vw 0 1vw 0;
  }
  #top-2nd div.cnt-wrap div.box-3w div.select-event h5 span,
  #top-2nd div.cnt-wrap div.box-3w div.select-much h5 span,
  #top-2nd div.cnt-wrap div.box-3w div.select-ist h5 span {
    display: block;
    width: 100%;
    font-size: 72%;
    font-weight: 500;
  }
  #top-2nd div.cnt-wrap div.box-3w div.select-event p,
  #top-2nd div.cnt-wrap div.box-3w div.select-much p,
  #top-2nd div.cnt-wrap div.box-3w div.select-ist p {
    position: relative;
    box-sizing: border-box;
    display: block;
    width: 62%;
    margin: 0 34% 2.4vw 4%;
    padding: 0;
    font-weight: 500;
  }
  #top-2nd div.cnt-wrap div.box-3w div.select-event p br,
  #top-2nd div.cnt-wrap div.box-3w div.select-much p br,
  #top-2nd div.cnt-wrap div.box-3w div.select-ist p br {
    display: none;
  }
  #top-2nd div.cnt-wrap div.box-3w div.select-event div.bt-std,
  #top-2nd div.cnt-wrap div.box-3w div.select-much div.bt-std,
  #top-2nd div.cnt-wrap div.box-3w div.select-ist div.bt-std {
    position: relative;
    bottom: inherit;
    width: 70%;
    margin: 0;
    display: block;
  }
  #top-2nd div.cnt-wrap div.box-3w div.select-event div.bt-std a,
  #top-2nd div.cnt-wrap div.box-3w div.select-much div.bt-std a,
  #top-2nd div.cnt-wrap div.box-3w div.select-ist div.bt-std a {
    padding: 0.8rem 1.35rem;
    background: rgba(255, 255, 255, 0.8);
    font-weight: 500;
    font-size: 120%;
    letter-spacing: 0.1rem;
  }
  #top-2nd div.cnt-wrap div.box-3w .select-event {
    background: url("../img/top-select01.jpg") right bottom no-repeat #e672a3;
    background-size: 30%;
  }
  #top-2nd div.cnt-wrap div.box-3w .select-event div.bt-std a {
    color: #d91b6c;
  }
  #top-2nd div.cnt-wrap div.box-3w .select-event div.bt-std a:before {
    content: url("../img/svg/icon-arrow-pink.svg");
  }
  #top-2nd div.cnt-wrap div.box-3w .select-much {
    background: url("../img/top-select02.jpg") right bottom no-repeat #6fca30;
    background-size: 30%;
  }
  #top-2nd div.cnt-wrap div.box-3w .select-much div.bt-std a {
    color: #458f0e;
  }
  #top-2nd div.cnt-wrap div.box-3w .select-much div.bt-std a:before {
    content: url("../img/svg/icon-arrow-green.svg");
  }
  #top-2nd div.cnt-wrap div.box-3w .select-ist {
    background: url("../img/top-select03.jpg") right bottom no-repeat #ef8363;
    background-size: 30%;
  }
  #top-2nd div.cnt-wrap div.box-3w .select-ist div.bt-std a {
    color: #cd3b13;
  }
  #top-2nd div.cnt-wrap div.box-3w .select-ist div.bt-std a:before {
    content: url("../img/svg/icon-arrow-orange.svg");
  }
  #top-2nd div.cnt-wrap div.bnr-soudan {
    position: relative;
    box-sizing: border-box;
    width: 100%;
    margin: auto;
    display: flex;
  }
  #top-2nd div.cnt-wrap div.bnr-soudan div.w65 {
    width: 55% !important;
    background: #2eadd7;
    background: linear-gradient(156deg, #30add7 0%, #68c4e2 100%);
    padding: 2rem 4% 2rem 4%;
  }
  #top-2nd div.cnt-wrap div.bnr-soudan div.w65 h5 {
    position: relative;
    box-sizing: border-box;
    display: block;
    width: 100%;
    margin: 0 auto 1rem auto;
    font-weight: 700;
    border-bottom: dotted 3px #FFF;
    padding: 0 0 1rem 0;
    color: #FFF;
  }
  #top-2nd div.cnt-wrap div.bnr-soudan div.w65 h5 span {
    display: block;
    width: 100%;
    font-size: 72%;
    font-weight: 500;
  }
  #top-2nd div.cnt-wrap div.bnr-soudan div.w65 p {
    position: relative;
    box-sizing: border-box;
    display: block;
    width: 100%;
    margin: 0 auto 0 auto;
    font-weight: 500;
    color: #FFF;
  }
  #top-2nd div.cnt-wrap div.bnr-soudan div.w35 {
    width: 45% !important;
    background: url("../img/top-select04.jpg") left bottom no-repeat #FFF;
    background-size: cover;
    padding: 0;
  }
  #top-2nd div.cnt-wrap div.bnr-soudan div.w35 div.bt-std {
    position: absolute;
    bottom: 0;
    width: 100%;
    margin: 0;
    display: block;
  }
  #top-2nd div.cnt-wrap div.bnr-soudan div.w35 div.bt-std a {
    padding: 0.8rem 1.35rem;
    background: rgba(255, 255, 255, 0.8);
    font-weight: 500;
    font-size: 120%;
    letter-spacing: 0.1rem;
    color: #008dbc;
  }
  #top-2nd div.cnt-wrap div.bnr-soudan div.w35 div.bt-std a:before {
    content: url("../img/svg/icon-arrow-blue.svg");
  }
}
@media screen and (max-width: 800px) {
  #top-2nd {
    padding-bottom: 0;
  }
  #top-2nd div.cnt-wrap:first-child {
    margin-bottom: 0;
  }
  #top-2nd div.cnt-wrap:last-child {
    margin-top: 0;
  }
  #top-2nd div.cnt-wrap div.top-2nd-toptx h3 {
    margin-bottom: 0.5rem;
  }
  #top-2nd div.cnt-wrap div.box-3w {
    display: block;
  }
  #top-2nd div.cnt-wrap div.box-3w div.select-event,
  #top-2nd div.cnt-wrap div.box-3w div.select-much,
  #top-2nd div.cnt-wrap div.box-3w div.select-ist {
    display: block;
    width: 100%;
    margin: 0 0 3vw 0 !important;
    padding-bottom: 68vw;
    min-height: inherit;
    text-align: left;
  }
  #top-2nd div.cnt-wrap div.box-3w div.select-event h5,
  #top-2nd div.cnt-wrap div.box-3w div.select-much h5,
  #top-2nd div.cnt-wrap div.box-3w div.select-ist h5 {
    position: relative;
    box-sizing: border-box;
    display: block;
    width: 86%;
    margin: 0 7% 2vw 7%;
    padding: 3vw 0 2vw 0;
    font-size: 120%;
  }
  #top-2nd div.cnt-wrap div.box-3w div.select-event h5 span,
  #top-2nd div.cnt-wrap div.box-3w div.select-much h5 span,
  #top-2nd div.cnt-wrap div.box-3w div.select-ist h5 span {
    display: block;
    width: 100%;
    font-size: 72%;
    font-weight: 500;
  }
  #top-2nd div.cnt-wrap div.box-3w div.select-event p,
  #top-2nd div.cnt-wrap div.box-3w div.select-much p,
  #top-2nd div.cnt-wrap div.box-3w div.select-ist p {
    position: relative;
    box-sizing: border-box;
    display: block;
    width: 84%;
    margin: 0 7% 2.4vw 7%;
    padding: 0;
    font-weight: 500;
  }
  #top-2nd div.cnt-wrap div.box-3w div.select-event p br,
  #top-2nd div.cnt-wrap div.box-3w div.select-much p br,
  #top-2nd div.cnt-wrap div.box-3w div.select-ist p br {
    display: none;
  }
  #top-2nd div.cnt-wrap div.box-3w div.select-event div.bt-std,
  #top-2nd div.cnt-wrap div.box-3w div.select-much div.bt-std,
  #top-2nd div.cnt-wrap div.box-3w div.select-ist div.bt-std {
    position: absolute;
    bottom: 0;
    width: 100%;
    margin: 0;
    display: block;
  }
  #top-2nd div.cnt-wrap div.box-3w div.select-event div.bt-std a,
  #top-2nd div.cnt-wrap div.box-3w div.select-much div.bt-std a,
  #top-2nd div.cnt-wrap div.box-3w div.select-ist div.bt-std a {
    padding: 0.8rem 1.35rem;
    background: rgba(255, 255, 255, 0.8);
    font-weight: 500;
    font-size: 120%;
    letter-spacing: 0.1rem;
  }
  #top-2nd div.cnt-wrap div.box-3w .select-event {
    background: url("../img/top-select01.jpg") right bottom no-repeat #e672a3;
    background-size: 100%;
  }
  #top-2nd div.cnt-wrap div.box-3w .select-event div.bt-std a {
    color: #d91b6c;
  }
  #top-2nd div.cnt-wrap div.box-3w .select-event div.bt-std a:before {
    content: url("../img/svg/icon-arrow-pink.svg");
  }
  #top-2nd div.cnt-wrap div.box-3w .select-much {
    background: url("../img/top-select02.jpg") right bottom no-repeat #6fca30;
    background-size: 100%;
  }
  #top-2nd div.cnt-wrap div.box-3w .select-much div.bt-std a {
    color: #458f0e;
  }
  #top-2nd div.cnt-wrap div.box-3w .select-much div.bt-std a:before {
    content: url("../img/svg/icon-arrow-green.svg");
  }
  #top-2nd div.cnt-wrap div.box-3w .select-ist {
    background: url("../img/top-select03.jpg") right bottom no-repeat #ef8363;
    background-size: 100%;
  }
  #top-2nd div.cnt-wrap div.box-3w .select-ist div.bt-std a {
    color: #cd3b13;
  }
  #top-2nd div.cnt-wrap div.box-3w .select-ist div.bt-std a:before {
    content: url("../img/svg/icon-arrow-orange.svg");
  }
  #top-2nd div.cnt-wrap div.bnr-soudan {
    display: block;
  }
  #top-2nd div.cnt-wrap div.bnr-soudan div.w65 {
    width: 100% !important;
    background: #2eadd7;
    background: linear-gradient(156deg, #30add7 0%, #68c4e2 100%);
    padding: 2rem 4% 2rem 4%;
  }
  #top-2nd div.cnt-wrap div.bnr-soudan div.w65 h5 {
    position: relative;
    box-sizing: border-box;
    display: block;
    width: 100%;
    margin: 0 auto 1rem auto;
    font-weight: 700;
    border-bottom: dotted 3px #FFF;
    padding: 0 0 1rem 0;
    color: #FFF;
  }
  #top-2nd div.cnt-wrap div.bnr-soudan div.w65 h5 span {
    display: block;
    width: 100%;
    font-size: 72%;
    font-weight: 500;
  }
  #top-2nd div.cnt-wrap div.bnr-soudan div.w65 p {
    position: relative;
    box-sizing: border-box;
    display: block;
    width: 100%;
    margin: 0 auto 0 auto;
    font-weight: 500;
    color: #FFF;
  }
  #top-2nd div.cnt-wrap div.bnr-soudan div.w35 {
    width: 100% !important;
    height: 50vw;
    background: url("../img/top-select04.jpg") left bottom no-repeat #FFF;
    background-size: cover;
    padding: 0;
  }
  #top-2nd div.cnt-wrap div.bnr-soudan div.w35 div.bt-std {
    position: absolute;
    bottom: 0;
    width: 100%;
    margin: 0;
    display: block;
  }
  #top-2nd div.cnt-wrap div.bnr-soudan div.w35 div.bt-std a {
    padding: 0.8rem 1.35rem;
    background: rgba(255, 255, 255, 0.8);
    font-weight: 500;
    font-size: 120%;
    letter-spacing: 0.1rem;
    color: #008dbc;
  }
  #top-2nd div.cnt-wrap div.bnr-soudan div.w35 div.bt-std a:before {
    content: url("../img/svg/icon-arrow-blue.svg");
  }
}
/* 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: 5rem  0;
  margin: 0 6% !important;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 20px 20px;
}
#top-5th-1 div.cnt-wrap div.cnt-box-cld {
  padding: 0;
  background: #f4f6f8;
}
#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: 1239px) {
  #top-5th-1 div.cnt-wrap {
    padding: 6vw  0;
    grid-template-columns: 1fr 1fr;
  }
}
@media screen and (max-width: 949px) {
  #top-5th-1 div.cnt-wrap {
    padding: 8vw  0;
    grid-template-columns: 1fr;
  }
}
/* notices-sec
--------------------------------------------------------------------------*/
.notices-sec {
  position: relative;
  box-sizing: border-box;
  padding-top: 99px;
  width: 100%;
  max-width: 1600px;
  margin: 0 auto -99px auto;
  background: #d9e9ed;
}
.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%;
  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;
  }
}
/* COLOR
--------------------------------------------------------------------------*/
.clr-ev {
  color: #e673a4;
}
.clr-mc {
  color: #73c833;
}
.clr-is {
  color: #f08367;
}
/* LOGIN
--------------------------------------------------------------------------*/
div.login {
  position: fixed;
  bottom: 2rem;
  left: 2rem;
  width: 120px;
  z-index: 130;
}
div.login a {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  display: block;
  background: #ed6c7d;
  border-radius: 50%;
}
div.login a picture.login-icon1 {
  position: relative;
  box-sizing: border-box;
  display: block;
  width: 100%;
  transform: scale(1);
  animation: 0.5s ease-in 3s infinite alternate forwards running loginanime;
}
div.login a picture.login-icon2 {
  position: absolute;
  box-sizing: border-box;
  width: 100%;
  left: 0;
  top: 0;
  transition: all 0.3s;
}
div.login a:hover picture.login-icon2 {
  position: absolute;
  box-sizing: border-box;
  width: 100%;
  left: 0;
  top: 0;
  transform: scale(0.95);
}
div.login.inview {
  animation: login-out 0.8s forwards;
}
div.login.inview-in {
  animation: login-in 0.8s forwards;
}
@keyframes loginanime {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.05);
  }
}
@keyframes login-out {
  0% {
    opacity: 1;
    left: 2rem;
    transform: rotate(0deg);
  }
  100% {
    opacity: 0;
    left: -180px;
    transform: rotate(-45deg);
  }
}
@keyframes login-in {
  0% {
    opacity: 0;
    left: -180px;
    transform: rotate(-45deg);
  }
  100% {
    opacity: 1;
    left: 2rem;
    transform: rotate(0deg);
  }
}
@media screen and (max-width: 751px) {
  div.login {
    bottom: 2vw;
    left: 2vw;
    width: 100px;
    z-index: 199;
  }
  @keyframes loginanime {
    0% {
      bottom: 0;
    }
    100% {
      bottom: 2vw;
    }
  }
  @keyframes login-out {
    0% {
      opacity: 1;
      left: 2vw;
      transform: rotate(0deg);
    }
    100% {
      opacity: 0;
      left: -180px;
      transform: rotate(-45deg);
    }
  }
  @keyframes login-in {
    0% {
      opacity: 0;
      left: -180px;
      transform: rotate(-45deg);
    }
    100% {
      opacity: 1;
      left: 2vw;
      transform: rotate(0deg);
    }
  }
}
/*診断
--------------------------------------------------------------------------*/
.style-start {
  position: relative;
  box-sizing: border-box;
  width: 80%;
  margin: auto;
  display: block;
}
.style-start .start-img {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  display: block;
}
.style-start .start-bt {
  position: absolute;
  box-sizing: border-box;
  width: 36%;
  display: block;
  bottom: 3rem;
  right: 8%;
}
.style-start .start-bt a {
  display: block;
  transform: scale(1);
  transition: 0.5s;
}
.style-start .start-bt a:hover {
  transform: scale(1.1);
}
@media screen and (max-width: 1599px) {
  .style-start {
    width: 80%;
  }
  .style-start .start-img {
    width: 100%;
  }
  .style-start .start-bt {
    width: 36%;
    bottom: 3vw;
    right: 8%;
  }
}
@media screen and (max-width: 979px) {
  .style-start {
    width: 100%;
  }
  .style-start .start-img {
    width: 100%;
  }
  .style-start .start-bt {
    width: 36%;
    bottom: 3vw;
    right: 8%;
  }
}
/* Container
--------------------------------------------------------------------------*/
.bs-cal-container,
.bs-cal-grid {
  position: relative;
}
.bs-cal-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  margin-bottom: 0.5rem;
}
.bs-cal-nav-btn {
  padding: 0;
  border: none;
  background: transparent;
}
.bs-cal-nav-prev {
  order: -1;
}
.bs-cal-nav-next {
  order: 2;
}
.bs-cal-row {
  display: flex;
  width: 100%;
}
.bs-cal-col {
  flex: 1;
  text-align: center;
}
.bs-cal-container {
  box-sizing: border-box;
  max-width: 980px;
  padding: 0 8%;
  margin-left: auto;
  margin-right: auto;
  cursor: default;
}
.bs-cal-nav-btn path,
.bs-cal-title {
  color: #0476a5;
  fill: #0476a5;
}
.bs-cal-body {
  margin-bottom: 1rem;
  border-left: 1px solid #ebebeb;
  border-top: 1px solid #ebebeb;
}
.bs-cal-body .bs-cal-row {
  border-bottom: 1px solid #ebebeb;
}
.bs-cal-body .bs-cal-col {
  border-right: 1px solid #ebebeb;
}
.bs-cal-body .bs-cal-col-pad {
  background: #f8f8f8;
}
.bs-cal-body .bs-cal-col-pad span {
  opacity: 0.2;
}
.bs-cal-nav-btn,
.bs-cal-title {
  padding: 0.25rem 0.5rem;
  border-radius: 1.5rem;
}
.bs-cal-title {
  font-size: 118.75%;
}
.bs-cal-title .val {
  margin: 0 0.1em;
  font-family: "Helvetica Neue", Arial, sans-serif;
}
.bs-cal-title .unit {
  font-size: 75%;
}
.bs-cal-col {
  padding: 0.2em 0;
}
.bs-cal-col-day {
  font-size: 87.5%;
}
.bs-cal-col-day-0 {
  color: #cb2e43;
}
.bs-cal-col-day-6 {
  color: #0f80ce;
}
.bs-cal-col-past {
  opacity: 0.4;
}
.bs-cal-num {
  display: inline-block;
  vertical-align: top;
  width: 2.5rem;
  height: 2.5rem;
  font-family: "Helvetica Neue", Arial, sans-serif;
  font-size: 112.5%;
  line-height: 2.5rem;
  letter-spacing: -0.05em;
  white-space: nowrap;
  text-align: center;
  border-radius: 1.5rem;
}
.bs-cal-col-today .bs-cal-num {
  color: #fff;
  background: #0496c5;
}
.bs-cal-col-hl-event .bs-cal-num {
  color: #392d00;
  background: #ffc533;
}
.bs-cal-col-hl-closed .bs-cal-num {
  color: #999;
  background: #ddd;
}
.article-event-list-calendar {
  padding-bottom: 4rem;
}
.event-calendar-legend-list {
  margin-top: 0.25rem;
  font-size: 80%;
  text-align: center;
}
.event-calendar-legend-item {
  display: inline-block;
  margin: 0 0.5em;
}
.event-calendar-legend-bar {
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.25em;
  width: 3em;
  height: 1em;
  border-radius: 1em;
}
.event-calendar-legend-bar.event {
  background: #ffc500;
}
.event-calendar-legend-bar.closed {
  background: #ddd;
}
#top-event {
  position: relative;
  box-sizing: border-box;
  width: 84%;
  display: block;
  background: #f5f5f5;
  margin: 3rem auto;
  padding: 2.4rem 3rem;
  z-index: 2;
}
#top-event div.bt-event a {
  position: absolute;
  box-sizing: border-box;
  top: 0;
  right: 0;
  max-width: 200px;
  background: #4fc8d3;
  font-size: 0.9rem;
  padding: 0.4rem 1rem;
}
#top-event ul.top-event-wrap li,
#event-list ul.top-event-wrap li,
#top-event ul.event-list-wrap li,
#event-list ul.event-list-wrap li {
  display: grid;
  grid-template-columns: 180px 1fr;
  align-items: center;
  padding: 0.8rem 0;
  gap: 0.5rem;
}
#event-list div.cnt-box-cld ul li {
  border-bottom: 1px dotted #555;
  padding: 1.4rem 0 1.6rem 0;
}
/* 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: rgba(255, 255, 255, 0.6);
  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-style_item-w {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  max-width: 92.5rem;
  margin: auto;
  z-index: 503;
}
.pp_movie-style_item {
  position: relative;
  height: 100vh;
  overflow: hidden;
}
.pp_movie-style_item 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: flex;
}
.w-modal_wrap input:checked ~ .w-modal_overlay .wm_close_button {
  display: block;
}
.w-modal_wrap input:checked ~ .w-modal_overlay .pp_movie-style_item {
  display: block;
}
.wm_open_button {
  position: relative;
  display: block;
  cursor: pointer;
  transform: scale(1, 1);
  transition: all 0.5s ease 0s;
  z-index: 2;
}
.wm_open_button:hover {
  transform: scale(1.05, 1.05);
}
.movie-bt {
  transform: translateY(0);
  transition: all 0.5s ease 0s;
}
.movie-bt picture {
  transform: rotate(0deg);
  opacity: 1;
  transition: all 0.5s ease 0s;
}
.wm_open_button:hover .movie-bt {
  transform: translateY(-8%);
}
.wm_open_button:hover .movie-bt picture {
  opacity: 0.7;
  transform: rotate(120deg);
}
#pp_movie_mount {
  position: absolute;
  inset: 0;
}
#pp_movie_mount iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
}
@media screen and (max-width: 1599px) {
  .wm_close_button {
    right: 0rem;
    width: 7vw;
    height: 7vw;
    padding: 1.1vw;
  }
}
@media screen and (max-width: 1099px) {
  .wm_close_button {
    right: 0rem;
    width: 10vw;
    height: 10vw;
    padding: 1.5vw;
  }
  .pp-movie-box {
    padding: 0;
  }
  .wm_open_button:hover {
    transform: scale(1, 1);
    z-index: 1;
  }
}
/* Tarble
--------------------------------------------------------------------------*/
.table-hd {
  border-collapse: collapse;
}
.table-hd tbody tr {
  border-top: 1px solid #e5e5e5;
}
.table-hd thead th {
  padding-bottom: 15px;
}
/* style_item
--------------------------------------------------------------------------*/
.style_item {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.style_item iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 1px;
  right: 0;
}
/* Reports
--------------------------------------------------------------------------*/
.reports-area .body-tx {
  padding: 0 !important;
}
.reports-area .report-main-img {
  width: 100%;
  max-width: 800px;
  margin: 0 auto 30px;
}
.reports-area .report-main-img img {
  width: 100%;
  height: auto;
  display: block;
}
.reports-area .bt-reports {
  width: 80%;
  max-width: 460px;
  margin: 4rem auto 2rem auto;
}
@media screen and (max-width: 750px) {
  .reports-area .report-main-img {
    margin: 0 auto 3vw;
  }
  .reports-area .bt-reports {
    margin: 4vw auto 4vw auto;
  }
}
/* TOP BNR AREA */
.ho-banner-list {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  padding: 4rem 6%;
  background: linear-gradient(0deg, #ffffff 0%, #edf5fa 100%);
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1rem 1%;
}
.ho-banner-list li {
  width: 24.2%;
}
.ho-banner-list li a {
  display: block;
}
@media screen and (max-width: 1259px) {
  .ho-banner-list {
    padding: 4rem 6%;
    gap: 1rem 1%;
  }
  .ho-banner-list li {
    width: 32.6%;
  }
}
@media screen and (max-width: 999px) {
  .ho-banner-list {
    padding: 8vw 6%;
    gap: 2vw 2%;
  }
  .ho-banner-list li {
    width: 49%;
  }
}
@media screen and (max-width: 759px) {
  .ho-banner-list {
    padding: 6vw 6%;
    gap: 3vw 2%;
  }
  .ho-banner-list li {
    width: 100%;
  }
}
.sitemap-list {
  margin-bottom: 1rem !important;
}
/* PageTop
--------------------------------------------------------------------------*/
#pagetop {
  position: fixed;
  width: 2rem;
  height: 2rem;
  right: 0.8rem;
  bottom: 0.8rem;
  opacity: 1;
  z-index: 500;
  background: #487FA9;
  cursor: pointer;
}
#pagetop a {
  position: absolute;
  bottom: 0;
  display: block;
  width: 2rem;
  height: 2rem;
  background: url("../img/svg/icon-arrow-top.svg");
  background-repeat: no-repeat;
  background-size: 30%;
  background-position: center center;
  text-decoration: none;
  border-radius: 0.3rem;
}
