#main {
  width: auto;
  padding: 0;
}

@media (max-width: 767px) {
  ul.topicpath {
    float: none;
    width: auto;
    padding: 0;
    background-image: none;
    line-height: 1.75;
    color: #4d4d4d;
    overflow-x: scroll;
    word-break: keep-all;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
  }
  ul.topicpath li {
    float: none;
    display: inline;
    font-size: 12px !important;
  }
  ul.topicpath li:nth-child(n+2) {
    position: relative;
    margin-left: 25px;
  }
  ul.topicpath li:nth-child(n+2)::before,
  ul.topicpath li:nth-child(n+2)::after {
    position: absolute;
    left: -16px;
    display: block;
    width: 7px;
    height: 1px;
    background: #999;
    content: "";
    font-size: 0;
  }
  ul.topicpath li:nth-child(n+2)::before {
    top: 4px;
    transform: rotate(35deg);
  }
  ul.topicpath li:nth-child(n+2)::after {
    top: 8px;
    transform: rotate(-35deg);
  }
  ul.topicpath li + li:before {
    display: none;
  }
}

.btn-top-01 {
  /*position: absolute;*/
  position: fixed;
  bottom: -50px;
  right: 15px;
  z-index: 100;
}

.btn-top-01--btm3 {
  bottom: 212px;
}

.btn-top-01 a {
  position: relative;
  display: block;
  height: 50px;
  width: 50px;
  background: rgba(0, 171, 235, .5);
  border-radius: 50%;
  color: transparent;
  font-size: 0;
}

.btn-top-01 a:after, .btn-top-01 a:before {
  position: absolute;
  bottom: 0;
  right: 0;
  top: 2px;
  content: "";
  display: block;
  height: 2px;
  width: 13px;
  margin: auto;
  background: #fff;
  border-radius: 2px;
}

.btn-top-01 a:before {
  left: -8px;
  transform: rotate(134deg);
  -webkit-transform: rotate(134deg);
}

.btn-top-01 a:after {
  left: 8px;
  transform: rotate(-134deg);
  -webkit-transform: rotate(-134deg);
}

@media screen and (min-width: 767px) {
  .btn-top-01 {
    /*position: absolute;*/
    bottom: 64px;
    right: 80px;
  }
  .btn-top-01 a {
    position: relative;
    display: block;
    height: 70px;
    width: 70px;
    /*background: #00abeb;*/
	background: rgba(0, 171, 235, .5);
    border-radius: 50%;
    color: transparent;
    font-size: 0;
    transition: background .2s;
    -webkit-transition: background .2s;
  }
  .btn-top-01 a:after, .btn-top-01 a:before {
    position: absolute;
    bottom: 0;
    right: 0;
    top: 2px;
    content: "";
    display: block;
    height: 4px;
    width: 22px;
    margin: auto;
    background: #fff;
    border-radius: 2px;
  }
  .btn-top-01 a:before {
    left: -12px;
    transform: rotate(134deg);
    -webkit-transform: rotate(134deg);
  }
  .btn-top-01 a:after {
    left: 13px;
    transform: rotate(-134deg);
    -webkit-transform: rotate(-134deg);
  }
  .btn-top-01 a:active, .btn-top-01 a:focus, .btn-top-01 a:hover {
    /*background: #1fc2ff;*/
	background: #00aaeb;
  }
}

.js-scroll-top {
  opacity: 1;
  transition: opacity .5s;
  -webkit-transition: opacity .5s;
}

.js-scroll-top.is-hidden {
  opacity: 0;
}

.js-scroll-top.is-fixed {
  position: fixed;
  bottom: 68px;
}

.l-wrapper {
  background-color: #f3f3f3;
  line-height: 1.75;
  font-size: 16px;
}

.l-wrapper * {
  box-sizing: border-box;
  font: inherit;
}

.l-wrapper br {
  line-height: initial;
}

.l-wrapper img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

.l-contents-area {
  position: relative;
}

@media (max-width: 767px) {
  .l-contents-area {
    padding: 0 15px 64px;
  }
}

@media (min-width: 768px) {
  .l-contents-area {
    width: 1130px;
    margin: 0 auto;
    padding-bottom: 144px;
  }
  .l-wrapper .l-contents-area {
    max-width: none !important;
  }
}

.l-content {
  box-sizing: border-box;
}

@media (max-width: 767px) {
  .l-content {
    margin-bottom: 32px;
    padding: 24px 15px 0px;
    box-shadow: 0 0px 5px 0 rgba(0, 0, 0, 0.25);
    background-color: #ffffff;
  }
}

@media (min-width: 768px) {
  .l-content {
    padding: 32px 32px 0px;
    box-shadow: 0 0px 5px 0 rgba(0, 0, 0, 0.25);
    background-color: #ffffff;
  }
}

.l-content__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.l-layout {
  box-sizing: border-box;
}

@media (max-width: 767px) {
  .l-layout {
    margin-bottom: 32px;
  }
}

@media (min-width: 768px) {
  .l-layout {
    display: grid;
    display: -ms-grid;
    grid-gap: 0 32px;
    gap: 0 32px;
    -ms-grid-rows: auto 1fr;
    -ms-grid-columns: 734px 32px 300px;
    grid-template: "main login" auto "main side"  1fr / 734px 300px;
    width: 1130px;
    margin-left: auto;
    margin-right: auto;
    padding: 32px 32px 64px;
    box-shadow: 0 0px 5px 0 rgba(0, 0, 0, 0.25);
    background-color: #ffffff;
  }
}

@media (max-width: 767px) {
  .l-layout__login {
    margin-bottom: 32px;
    box-shadow: 0 0px 5px 0 rgba(0, 0, 0, 0.25);
  }
}

@media (min-width: 768px) {
  .l-layout__login {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    grid-area: login;
  }
}

@media (max-width: 767px) {
  .l-layout__main {
    margin-bottom: 32px;
    padding: 16px 15px 32px;
    box-shadow: 0 0px 5px 0 rgba(0, 0, 0, 0.25);
    background-color: #ffffff;
  }
}

@media (min-width: 768px) {
  .l-layout__main {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-row-span: 2;
    width: 734px;
    grid-area: main;
  }
}

.l-layout__main > :last-child {
  margin-bottom: 0;
}

@media (min-width: 768px) {
  .l-layout__side {
    -ms-grid-row: 2;
    -ms-grid-column: 3;
    width: 300px;
    grid-area: side;
  }
}

.l-layout > :last-child {
  margin-bottom: 0;
}

.l-login {
  box-sizing: border-box;
  line-height: 1.625;
}

.l-login__inner {
  margin: 0 auto;
  background-color: #ffffff;
}

.l-login__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 60px;
  padding: 0 15px;
  background-color: #00aaeb;
  color: #fff;
}

.l-login__ttl {
  display: flex;
  align-items: center;
  height: 100%;
  font-size: 16px;
  font-weight: bold;
}

.l-login__checkbox {
  margin-bottom: 15px;
}

.l-login__checkbox input[type='checkbox'] {
  display: none;
}

.l-login__checkbox .label-check {
  position: relative;
  display: inline-block;
  padding: 0 0 0 28px;
  line-height: 1.75;
  font-size: 14px;
  cursor: pointer;
}

.l-login__checkbox .label-check::before {
  box-sizing: border-box;
  content: '';
  display: block;
  position: absolute;
  z-index: 2;
  top: calc((1.75em - 20px)/2 + 2px);
  left: 6px;
  width: 7px;
  height: 12px;
  border-right: 2px solid #4392da;
  border-bottom: 2px solid #4392da;
  opacity: 0;
  transform: rotate(45deg);
}

.l-login__checkbox .label-check::after {
  box-sizing: border-box;
  position: absolute;
  display: block;
  content: '';
  top: calc((1.75em - 20px)/2);
  left: 0;
  width: 20px;
  height: 20px;
  border: 1px solid #d7dce2;
  border-radius: 3px;
  background: #f3f3f3;
}

.l-login__checkbox input:checked + .label-check::before {
  opacity: 1;
}

.l-login__cont {
  padding: 15px 15px 32px;
}

.l-login__lead {
  margin-bottom: 16px;
}

.l-login__lead p {
  font-size: 14px;
}

.l-login__lead p:not(:last-child) {
  margin-bottom: 1em;
}

.l-login__primary {
  margin-bottom: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid #e6e6e6;
}

.l-login__list01 {
  margin: 0 0 15px;
}

.l-login__list01 li:not(:last-child) {
  margin: 0 0 10px;
}

.l-login__list01 input[type='text'],
.l-login__list01 input[type='password'] {
  box-sizing: border-box;
  width: 100%;
  height: 50px !important;
  margin: 0;
  padding: 0 15px !important;
  border: 1px solid #d7dce2 !important;
  border-radius: 3px;
  background: #f3f3f3;
  line-height: normal !important;
  font-size: 16px;
}

.l-login__list01 input[type='text']:focus,
.l-login__list01 input[type='password']:focus {
  background-color: #f3f3f3 !important;
  background-image: none !important;
}

.l-login__list01 input[type='text']::-moz-placeholder, .l-login__list01 input[type='password']::-moz-placeholder {
  font-size: 14px;
  color: #A0B1BA;
}

.l-login__list01 input[type='text']:-ms-input-placeholder, .l-login__list01 input[type='password']:-ms-input-placeholder {
  font-size: 14px;
  color: #A0B1BA;
}

.l-login__list01 input[type='text']::placeholder,
.l-login__list01 input[type='password']::placeholder {
  font-size: 14px;
  color: #A0B1BA;
}

.l-login__btn {
  text-align: center;
}

.l-login__btn .btn {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 48px;
  margin: 0;
  padding: 0 20px 0 8px !important;
  border-radius: 3px;
  border: none;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.25);
  background: #fff;
  font-size: 14px;
  font-weight: normal;
  text-decoration: none;
  transition: 200ms;
  cursor: pointer;
}

.l-login__btn .btn::before {
  content: '';
  display: inline-block;
  margin-right: 8px;
  margin-bottom: 2px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.l-login__btn .btn.btn-01 {
  color: #006bcd;
}

.l-login__btn .btn.btn-01::before {
  background-image: url(/conts/2023/images/icon_login_btn01.png);
  width: 20px;
  height: 20px;
}

.l-login__btn .btn.btn-02 {
  background-color: #f57c31;
  color: #fff;
}

.l-login__btn .btn.btn-02::before {
  background-image: url(/conts/2023/images/icon_login_btn02.png);
  width: 20px;
  height: 20px;
}

.l-login__btn .btn:hover.btn-01 {
  opacity: .8 !important;
}

.l-login__btn .btn:hover.btn-02 {
  opacity: .9 !important;
}

.l-login__secondary > :not(:last-child) {
  margin-bottom: 16px;
}

.l-login__list02 > li:not(:last-child) {
  margin-bottom: 10px;
}

.l-login__list02 > li a {
  display: block;
  position: relative;
  padding-left: 20px;
  font-size: 14px;
}

.l-login__list02 > li a::before, .l-login__list02 > li a::after {
  content: "";
  display: block;
  position: absolute;
  left: 5px;
  width: 9px;
  height: 1px;
  background: #00aaeb;
}

.l-login__list02 > li a::before {
  top: calc(50% - 3px);
  transform: rotate(45deg);
}

.l-login__list02 > li a::after {
  top: calc(50% + 3px);
  transform: rotate(-45deg);
}

@media (max-width: 767px) {
  .l-content > .l-login,
  .l-layout__main > .l-login {
    margin-left: -15px;
    margin-right: -15px;
    margin-bottom: 32px;
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 0;
    border-bottom: 1px solid #e6e6e6;
  }
  .l-content > .l-login:first-child,
  .l-layout__main > .l-login:first-child {
    margin-top: -16px;
  }
}

@media (min-width: 768px) {
  .l-login.l-login--side {
    margin-bottom: 32px;
    padding: 0;
  }
  .l-login.l-login--side .l-login__cont {
    border: 1px solid #e6e6e6;
    border-top: none;
  }
  .l-login:not(.l-login--side) {
    margin-bottom: 32px;
    padding: 0;
    border-bottom: 1px solid #E6E6E6;
  }
  .l-login:not(.l-login--side) .l-login__head {
    padding: 0 80px;
  }
  .l-login:not(.l-login--side) .l-login__ttl::before {
    margin-right: 12px;
  }
  .l-login:not(.l-login--side) .l-login__cont {
    padding: 16px 80px 32px;
  }
  .l-login:not(.l-login--side) .l-login__primary {
    display: flex;
    align-items: flex-end;
  }
  .l-login:not(.l-login--side) .l-login__primary .l-login__btnWrap {
    width: 268px;
    margin-bottom: 1px;
  }
  .l-login:not(.l-login--side) .l-login__list01 {
    display: flex;
    flex: 1 1 auto;
    margin-bottom: 0;
  }
  .l-login:not(.l-login--side) .l-login__list01 li {
    flex: 0 0 340px;
  }
  .l-login:not(.l-login--side) .l-login__list01 li:not(:last-child) {
    margin: 0 8px 0 0;
  }
  .l-login:not(.l-login--side) .l-login__btn .btn {
    max-width: 268px;
  }
  .l-login:not(.l-login--side) .l-login__secondary > :not(:last-child) {
    margin-bottom: 24px;
  }
  .l-login:not(.l-login--side) .l-login__list02 {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .l-login:not(.l-login--side) .l-login__list02 > li:not(:last-child) {
    margin-right: 30px;
    margin-bottom: 0;
  }
  .l-content > .l-login:not(.l-login--side) {
    margin-left: -32px;
    margin-right: -32px;
  }
  .l-content > .l-login:not(.l-login--side):first-child {
    margin-top: -32px;
  }
  .l-login.l-login--main {
    margin-bottom: 32px;
    padding: 0;
  }
  .l-login.l-login--main .l-login__head {
    padding-left: 16px;
    padding-right: 16px;
  }
  .l-login.l-login--main .l-login__cont {
    padding-left: 15px;
    padding-right: 15px;
    border: 1px solid #e6e6e6;
    border-top: none;
  }
  .l-login.l-login--main .l-login__primary .l-login__btnWrap {
    width: 186px;
  }
  .l-login.l-login--main .l-login__list01 li {
    flex: 0 0 250px;
  }
}

.l-lede {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  line-height: 1.7;
}

.l-lede p {
  font-size: 16px;
}

.l-lede__inner {
  margin-bottom: 64px;
  max-width: 820px;
}

@media (max-width: 767px) {
  .l-lede__inner {
    margin: 0 0em 2em;
    max-width: none;
  }
}

.c-btn {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  height: 48px;
  margin: 0;
  padding: 5px 20px;
  border: none;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.25);
  background: none;
  font: inherit;
  font-size: 14px;
  letter-spacing: normal;
  text-decoration: none !important;
  transition: background-color 200ms, color 200ms, opacity 200ms;
  cursor: pointer;
}

.c-btn > span {
  line-height: 1.375;
}

.c-btn.s0 {
  min-width: 240px;
}

@media (max-width: 767px) {
  .c-btn.s0 {
    width: 100%;
  }
}

.c-btn.s100 {
  width: 100%;
}

.c-btn.s1 {
  width: 351px;
}

@media (max-width: 767px) {
  .c-btn.s1 {
    width: 100%;
  }
}

.c-btn.c1 {
  background-color: #fff;
  color: #006bcd;
}

.c-btn.c1:hover, .c-btn.c1:focus, .c-btn.c1:active {
  color: #349eff;
}

.c-btn.c2 {
  background-color: #f57c31;
  color: #fff;
}

.c-btn.c2:hover, .c-btn.c2:focus, .c-btn.c2:active {
  background-color: #f79b62;
}

.c-btn.c3 {
  background-color: #006bcd;
  color: #fff;
}

.c-btn.c3:hover, .c-btn.c3:focus, .c-btn.c3:active {
  background-color: #0186ff;
}

.c-btn.c4 {
  background-color: #00abeb;
  color: #fff;
}

.c-btn.c4:hover, .c-btn.c4:focus, .c-btn.c4:active {
  background-color: #48c3f1;
}

.c-btn.iconLogin {
  padding-left: 8px;
}

.c-btn.iconLogin::before {
  content: "";
  display: inline-block;
  width: 18px;
  height: 20px;
  margin-right: 8px;
  background: url(../images/icons/alt_icon_login.png) no-repeat 0 0;
  background-size: contain;
}

.c-btn.iconRegister {
  padding-left: 8px;
}

.c-btn.iconRegister::before {
  content: "";
  display: inline-block;
  width: 18px;
  height: 20px;
  margin-right: 8px;
  background: url(../images/icons/alt_icon_register.png) no-repeat 0 0;
  background-size: contain;
}

.c-btn.iconSearch {
  padding-left: 8px;
}

.c-btn.iconSearch::before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-right: 8px;
  background: url(../images/icons/alt_icon_search_02.png) no-repeat 0 0;
  background-size: contain;
}

.c-btn.iconStar {
  padding-left: 8px;
}

.c-btn.iconStar::before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-right: 8px;
  background: url(../images/icons/alt_icon_fav_02.png) no-repeat 0 0;
  background-size: contain;
}

.c-btn.iconCheck {
  padding-left: 8px;
}

.c-btn.iconCheck::before {
  content: "";
  display: block;
  width: 18px;
  height: 10px;
  margin-right: 4px;
  border-left: 1px solid #9a9a9a;
  border-bottom: 1px solid #9a9a9a;
  transform-origin: left bottom;
  transform: rotate(-45deg);
}

.c-btn.done {
  background-color: #ffffff !important;
  color: #9a9a9a !important;
}

.c-btn.disabled, .c-btn:disabled {
  pointer-events: none;
  background-color: #b2b2b2 !important;
  color: #fff !important;
}

.c-carouselList {
  position: relative;
}

@media (max-width: 767px) {
  .c-carouselList {
    margin-left: -15px;
    margin-right: -15px;
  }
}

.c-carouselList:not(:last-child) {
  margin-bottom: 64px;
}

@media (min-width: 768px) {
  .c-carouselList__container {
    width: 660px;
    margin: 0 auto;
  }
}

.c-carouselList__slide {
  width: 200px;
}

.c-carouselList__slide > a {
  text-decoration: none;
  transition: color 200ms;
}

.c-carouselList__slide > a > :last-child {
  margin-bottom: 0;
}

.c-carouselList__slide > a:hover .c-carouselList__slide__pic {
  opacity: .8;
}

.c-carouselList__slide__pic {
  display: block;
  margin-bottom: 8px;
  transition: opacity 200ms;
}

.c-carouselList__slide__txt {
  display: block;
  line-height: 1.5;
  font-size: 14px;
}

@media (max-width: 767px) {
  .c-carouselList.is-no-swipe .c-carouselList__wrapper {
    justify-content: center;
  }
}

@media (min-width: 768px) {
  .c-carouselList.is-no-swipe .c-carouselList__slide {
    margin-right: 30px;
  }
}

.c-carouselList.is-no-swipe .c-carouselList__controller {
  visibility: hidden;
  pointer-events: none;
}

.c-carouselList .swiper-pagination-bullets {
  position: relative;
  bottom: auto;
  margin-top: 20px;
  text-align: center;
}

.c-carouselList .swiper-pagination-bullet {
  width: 14px;
  height: 14px;
  margin: 0 10px !important;
  opacity: 1;
  background-color: #e6e6e6;
}

.c-carouselList .swiper-pagination-bullet-active {
  background-color: #00abeb;
}

@media (max-width: 767px) {
  .c-carouselList .swiper-button-next, .c-carouselList .swiper-button-prev {
    display: none;
  }
}

@media (min-width: 768px) {
  .c-carouselList .swiper-button-next, .c-carouselList .swiper-button-prev {
    display: block;
    position: absolute;
    top: 47px;
    width: 37px;
    height: 56px;
    margin: 0;
    transition: opacity 200ms;
    cursor: pointer;
  }
}

.c-carouselList .swiper-button-next:hover, .c-carouselList .swiper-button-prev:hover {
  opacity: 0.7;
}

.c-carouselList .swiper-button-next::before, .c-carouselList .swiper-button-prev::before {
  line-height: 56px;
  color: #CCC;
  font-size: 37px;
}

.c-carouselList .swiper-button-next:after, .c-carouselList .swiper-button-prev:after {
  display: none;
}

@media (min-width: 768px) {
  .c-carouselList .swiper-button-prev {
    left: 0;
  }
}

@media (min-width: 768px) {
  .c-carouselList .swiper-button-next {
    right: 0;
  }
}

.c-colWrap {
  margin-bottom: 32px;
}

@media (max-width: 767px) {
  .c-colWrap__col {
    margin-bottom: 32px;
  }
}

@media (min-width: 768px) {
  .c-colWrap {
    display: flex;
    flex-wrap: wrap;
  }
  .c-colWrap--col2 .c-colWrap__col {
    width: calc((100% - 32px) / 2);
  }
  .c-colWrap--col2 .c-colWrap__col:nth-child(odd) {
    margin-right: 32px;
  }
  .c-colWrap--col2 .c-colWrap__col:nth-child(n+3) {
    margin-top: 32px;
  }
  .c-colWrap--col3 .c-colWrap__col {
    width: calc((100% - 32px * 2) / 3);
  }
  .c-colWrap--col3 .c-colWrap__col:not(:nth-child(3n)) {
    margin-right: 32px;
  }
  .c-colWrap--col3 .c-colWrap__col:nth-child(n+4) {
    margin-top: 32px;
  }
}

@media (min-width: 768px) {
  .c-conts-list {
    display: flex;
    flex-wrap: wrap;
  }
}

@media (max-width: 767px) {
  .c-conts-list__item:not(:last-child) {
    margin-bottom: 32px;
  }
}

@media (min-width: 768px) {
  .c-conts-list__item {
    width: calc((100% - 32px) / 2);
  }
  .c-conts-list__item:nth-child(odd) {
    margin-right: 32px;
  }
  .c-conts-list__item:nth-child(n+3) {
    margin-top: 32px;
  }
}

.c-conts-list__item a {
  display: block;
  color: inherit;
  text-decoration: none;
}

.c-conts-list__item__inner {
  display: flex;
}

.c-conts-list__item__thumb {
  flex: 0 0 145px;
  flex: 0 0 auto;
  width: calc((100% - 26px) / 2);
  max-width: 145px;
  margin-right: 26px;
}

@media (max-width: 767px) {
  .c-conts-list__item__thumb {
    width: calc((100% - 20px) / 2);
    margin-right: 20px;
  }
}

.c-conts-list__item__thumb img {
  transition: opacity 200ms;
}

a:hover .c-conts-list__item__thumb img,
a:active .c-conts-list__item__thumb img,
a:focus .c-conts-list__item__thumb img {
  opacity: .8;
}

.c-conts-list__item__textWrap {
  flex: 1 1 auto;
  font-size: 14px;
}

.c-conts-list__item__textWrap > :last-child {
  margin-bottom: 0;
}

.c-conts-list__item__new {
  display: inline-block;
  vertical-align: top;
  padding: 0 4px;
  border: 1px solid #006bcd;
  border-radius: 4px;
  line-height: 1.5;
  color: #006bcd;
  font-size: 11px;
  font-weight: bold;
  transition: border-color 200ms, color 200ms;
}

a:hover .c-conts-list__item__new,
a:active .c-conts-list__item__new,
a:focus .c-conts-list__item__new {
  border-color: #349eff;
  color: #349eff;
}

.c-conts-list__item__title {
  margin-bottom: 1em;
  color: #006bcd;
  transition: color 200ms;
}

a:hover .c-conts-list__item__title,
a:active .c-conts-list__item__title,
a:focus .c-conts-list__item__title {
  color: #349eff;
}

@font-face {
  font-family: 'icomoon';
  src: url("fonts/icomoon.eot?f7hrz1");
  src: url("fonts/icomoon.eot?f7hrz1#iefix") format("embedded-opentype"), url("fonts/icomoon.ttf?f7hrz1") format("truetype"), url("fonts/icomoon.woff?f7hrz1") format("woff"), url("fonts/icomoon.svg?f7hrz1#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-arw-bottom:before {
  content: "\e900";
  color: #00aaeb;
}

.icon-arw-left:before {
  content: "\e901";
  color: #00aaeb;
}

.icon-arw-right:before {
  content: "\e902";
  color: #00aaeb;
}

.icon-arw-top:before {
  content: "\e903";
  color: #00aaeb;
}

.icon-chevron-thin-down:before {
  content: "\e908";
}

.icon-chevron-thin-left:before {
  content: "\e909";
}

.icon-chevron-thin-right:before {
  content: "\e90a";
}

.icon-chevron-thin-up:before {
  content: "\e90b";
}

.c-hdg01 {
  margin: 48px 0 32px;
  line-height: 1.5;
  font-size: 24px;
  font-weight: normal;
  text-align: center;
}

@media (min-width: 768px) {
  .c-hdg01 {
    font-size: 28px;
  }
}

.c-hdg01:first-child {
  margin-top: 0;
}

.c-hdg01:last-child {
  margin-bottom: 0;
}

.c-hdg02 {
  position: relative;
  margin: 32px 0 24px;
  padding-left: 15px;
  line-height: 1.5;
  font-size: 21px;
  font-weight: normal;
}

.c-hdg02:first-child {
  margin-top: 0;
}

.c-hdg02:last-child {
  margin-bottom: 0;
}

.c-hdg02::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 2px;
  height: 1.5em;
  background-color: #00abeb;
}

.c-hdg03 {
  position: relative;
  margin: 24px 0 16px;
  line-height: 1.5;
  font-size: 16px;
  font-weight: bold;
}

.c-hdg03:first-child {
  margin-top: 0;
}

.c-hdg03:last-child {
  margin-bottom: 0;
}

.c-hdg04 {
  position: relative;
  margin: 16px 0 8px;
  padding-bottom: 7px;
  border-bottom: 1px solid #00ABEB;
  line-height: 1.5;
  font-size: 14px;
  font-weight: bold;
}

.c-hdg04:first-child {
  margin-top: 0;
}

.c-hdg04:last-child {
  margin-bottom: 0;
}

.l-hero {
  overflow: hidden;
  background-color: #fff;
  background-repeat: repeat-x;
}

 .l-hero__inner {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1130px;
	 height: 240px;
    margin: 0 auto;
  }
  .l-hero__ttl {
    flex: 1 0 auto;
  }
  .l-hero__ttl img {
    max-width: none;
  }

@media (max-width: 767px) {
  .l-hero__ttl img {
    width: 100vw;
    max-width: 100vw;
    margin-left: 0;
    margin-right: 0;
  }
}

.c-side-category-nav {
  margin-bottom: 32px;
  font-size: 16px;
}

@media (max-width: 767px) {
  .c-side-category-nav {
    box-shadow: 0 0px 5px 0 rgba(0, 0, 0, 0.25);
  }
}

.c-side-category-nav__head__ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 58px;
  background-color: #E6E6E6;
  color: #000;
  font-weight: bold;
}

.c-side-category-nav__cont {
  padding: 15px;
  border: 1px solid #E6E6E6;
  border-top: none;
  background-color: #f9f8f6;
}

.c-side-category-nav__list .__item:not(:last-child) {
  border-bottom: 1px solid #e6e6e6;
}

.c-side-category-nav__list .__item a {
  display: flex;
  align-items: center;
  position: relative;
  min-height: 54px;
  padding: 6px 0 6px 25px;
  line-height: 1.5;
  font-size: 14px;
  text-decoration: none;
  transition: 200ms;
}

_:-ms-input-placeholder, :root .c-side-category-nav__list .__item a {
  height: 54px;
}

.c-side-category-nav__list .__item a::before, .c-side-category-nav__list .__item a::after {
  content: "";
  display: block;
  position: absolute;
  left: 8px;
  width: 9px;
  height: 2px;
  background: #00aaeb;
}

.c-side-category-nav__list .__item a::before {
  top: calc(50% - 4px);
  transform: rotate(45deg);
}

.c-side-category-nav__list .__item a::after {
  top: calc(50% + 1px);
  transform: rotate(-45deg);
}

.c-side-conts-nav {
  font-size: 16px;
}

@media (max-width: 767px) {
  .c-side-conts-nav {
    box-shadow: 0 0px 5px 0 rgba(0, 0, 0, 0.25);
  }
}

.c-side-conts-nav__head__ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 58px;
  background-color: #E6E6E6;
  color: #000;
  font-weight: bold;
}

.c-side-conts-nav__cont {
  padding: 0 15px;
  border: 1px solid #e6e6e6;
  border-top: none;
  background-color: #ffffff;
}

.c-side-conts-nav__hdg {
  border-bottom: 1px solid #E6E6E6;
}

.c-side-conts-nav__hdg .__link {
  display: flex;
  align-items: center;
  position: relative;
  height: 58px;
  padding: 0 20px;
  background-color: #ECECEC;
  text-decoration: none;
}

.c-side-conts-nav__list:not(:last-child) {
  border-bottom: 1px solid #e6e6e6;
}

.c-side-conts-nav__list__ttl {
  position: relative;
}

.c-side-conts-nav__list__ttl::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  width: 31px;
  height: 31px;
  margin: auto;
  background-color: #00ABEB;
}

.c-side-conts-nav__list__ttl > a:not(.__hook) {
  display: flex;
  align-items: center;
  position: relative;
  height: 58px;
  padding-left: 5px;
  padding-right: 46px;
  color: #000;
  text-decoration: none;
  transition: 200ms;
}

.c-side-conts-nav__list__ttl > a:not(.__hook) .__ico {
  content: '';
  display: inline-block;
  width: 30px;
  height: 30px;
  margin-right: 8px;
  background-image: url(/conts/2023/images/icon_sideNav01.png);
  background-repeat: no-repeat;
  background-size: 150px 30px;
}

.c-side-conts-nav__list__ttl > a:not(.__hook) .__ico--1 {
  background-position: 0px 0;
}

.c-side-conts-nav__list__ttl > a:not(.__hook) .__ico--2 {
  background-position: -30px 0;
}

.c-side-conts-nav__list__ttl > a:not(.__hook) .__ico--3 {
  background-position: -60px 0;
}

.c-side-conts-nav__list__ttl > a:not(.__hook) .__ico--4 {
  background-position: -90px 0;
}

.c-side-conts-nav__list__ttl > a:not(.__hook) .__ico--5 {
  background-position: -120px 0;
}

.c-side-conts-nav__list__ttl > a:not(.__hook)::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 8px;
  width: 15px;
  height: 1px;
  margin: auto;
  background: rgba(255, 255, 255, 0.75);
}

.c-side-conts-nav__list__ttl > a:not(.__hook)::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 15px;
  width: 1px;
  height: 0px;
  margin: auto;
  background: rgba(255, 255, 255, 0.75);
  transition: 200ms;
}

.c-side-conts-nav__list__ttl > a:not(.__hook):hover {
  opacity: 0.8;
}

.c-side-conts-nav__list__ttl .__link {
  display: flex;
  align-items: center;
  position: relative;
  height: 58px;
  padding-left: 5px;
  padding-right: 46px;
  text-decoration: none;
  transition: 200ms;
}

.c-side-conts-nav__list__ttl .__hook {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  width: 31px;
  height: 31px;
  margin: auto;
  background-color: #00ABEB;
  transition: 200ms;
}

.c-side-conts-nav__list__ttl .__hook::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 8px;
  width: 15px;
  height: 1px;
  margin: auto;
  background: rgba(255, 255, 255, 0.75);
}

.c-side-conts-nav__list__ttl .__hook::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 15px;
  width: 1px;
  height: 0px;
  margin: auto;
  background: rgba(255, 255, 255, 0.75);
  transition: 200ms;
}

.c-side-conts-nav__list__ttl .__hook:hover {
  opacity: 0.8;
}

.c-side-conts-nav__list__body {
  padding: 8px 24px 16px;
}

.c-side-conts-nav__list__body .__item a {
  display: flex;
  align-items: center;
  position: relative;
  padding: 8px 0 8px 15px;
  line-height: 1.5;
  font-size: 14px;
  text-decoration: none;
  transition: 200ms;
}

.c-side-conts-nav__list__body .__item a::before, .c-side-conts-nav__list__body .__item a::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  width: 9px;
  height: 2px;
  background-color: #00abeb;
}

.c-side-conts-nav__list__body .__item a::before {
  top: 14px;
  transform: rotate(45deg);
}

.c-side-conts-nav__list__body .__item a::after {
  top: 19px;
  transform: rotate(-45deg);
}

.c-side-conts-nav__list:not(.is-open) .c-side-conts-nav__list__ttl a::after {
  height: 15px;
}

.c-side-conts-nav--category {
  margin-bottom: 32px;
}

.c-side-conts-nav--category .c-side-conts-nav__cont {
  background-color: #f9f8f6;
}

.c-index-head {
  margin-bottom: 48px;
  padding: 20px 15px;
  background-color: #f3f3f3;
}

@media (min-width: 768px) {
  .c-index-head {
    margin-bottom: 64px;
    padding: 24px 32px;
  }
}

.c-index-head__ttl {
  margin-bottom: 16px;
  color: #000;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
}

@media (min-width: 768px) {
  .c-index-head__ttl {
    margin-bottom: 24px;
  }
}

.c-index-head__item {
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px dotted #B2B2B2;
  line-height: 1.75;
  font-size: 16px;
}

.c-index-head__item:last-child {
  margin: 0px;
  border-bottom: 0;
}

.c-index-head__item > a {
  color: #006bcd;
}

.c-index-head__item > a:hover {
  color: #349eff;
}

.c-index-head__item > a:visited {
  color: #551a8b;
}

.u-mt0 {
  margin-top: 0 !important;
}

.u-mb0 {
  margin-bottom: 0 !important;
}

.u-pt0 {
  padding-top: 0 !important;
}

.u-pb0 {
  padding-bottom: 0 !important;
}

.u-mt0 {
  margin-top: 0px !important;
}

.u-ml0 {
  margin-left: 0px !important;
}

.u-mr0 {
  margin-right: 0px !important;
}

.u-mb0 {
  margin-bottom: 0px !important;
}

.u-pt0 {
  padding-top: 0px !important;
}

.u-pl0 {
  padding-left: 0px !important;
}

.u-pr0 {
  padding-right: 0px !important;
}

.u-pb0 {
  padding-bottom: 0px !important;
}

@media (max-width: 767px) {
  .u-mt0sp {
    margin-top: 0px !important;
  }
  .u-ml0sp {
    margin-left: 0px !important;
  }
  .u-mr0sp {
    margin-right: 0px !important;
  }
  .u-mb0sp {
    margin-bottom: 0px !important;
  }
  .u-pt0sp {
    padding-top: 0px !important;
  }
  .u-pl0sp {
    padding-left: 0px !important;
  }
  .u-pr0sp {
    padding-right: 0px !important;
  }
  .u-pb0sp {
    padding-bottom: 0px !important;
  }
}

.u-mt5 {
  margin-top: 5px !important;
}

.u-ml5 {
  margin-left: 5px !important;
}

.u-mr5 {
  margin-right: 5px !important;
}

.u-mb5 {
  margin-bottom: 5px !important;
}

.u-pt5 {
  padding-top: 5px !important;
}

.u-pl5 {
  padding-left: 5px !important;
}

.u-pr5 {
  padding-right: 5px !important;
}

.u-pb5 {
  padding-bottom: 5px !important;
}

@media (max-width: 767px) {
  .u-mt5sp {
    margin-top: 5px !important;
  }
  .u-ml5sp {
    margin-left: 5px !important;
  }
  .u-mr5sp {
    margin-right: 5px !important;
  }
  .u-mb5sp {
    margin-bottom: 5px !important;
  }
  .u-pt5sp {
    padding-top: 5px !important;
  }
  .u-pl5sp {
    padding-left: 5px !important;
  }
  .u-pr5sp {
    padding-right: 5px !important;
  }
  .u-pb5sp {
    padding-bottom: 5px !important;
  }
}

.u-mt10 {
  margin-top: 10px !important;
}

.u-ml10 {
  margin-left: 10px !important;
}

.u-mr10 {
  margin-right: 10px !important;
}

.u-mb10 {
  margin-bottom: 10px !important;
}

.u-pt10 {
  padding-top: 10px !important;
}

.u-pl10 {
  padding-left: 10px !important;
}

.u-pr10 {
  padding-right: 10px !important;
}

.u-pb10 {
  padding-bottom: 10px !important;
}

@media (max-width: 767px) {
  .u-mt10sp {
    margin-top: 10px !important;
  }
  .u-ml10sp {
    margin-left: 10px !important;
  }
  .u-mr10sp {
    margin-right: 10px !important;
  }
  .u-mb10sp {
    margin-bottom: 10px !important;
  }
  .u-pt10sp {
    padding-top: 10px !important;
  }
  .u-pl10sp {
    padding-left: 10px !important;
  }
  .u-pr10sp {
    padding-right: 10px !important;
  }
  .u-pb10sp {
    padding-bottom: 10px !important;
  }
}

.u-mt15 {
  margin-top: 15px !important;
}

.u-ml15 {
  margin-left: 15px !important;
}

.u-mr15 {
  margin-right: 15px !important;
}

.u-mb15 {
  margin-bottom: 15px !important;
}

.u-pt15 {
  padding-top: 15px !important;
}

.u-pl15 {
  padding-left: 15px !important;
}

.u-pr15 {
  padding-right: 15px !important;
}

.u-pb15 {
  padding-bottom: 15px !important;
}

@media (max-width: 767px) {
  .u-mt15sp {
    margin-top: 15px !important;
  }
  .u-ml15sp {
    margin-left: 15px !important;
  }
  .u-mr15sp {
    margin-right: 15px !important;
  }
  .u-mb15sp {
    margin-bottom: 15px !important;
  }
  .u-pt15sp {
    padding-top: 15px !important;
  }
  .u-pl15sp {
    padding-left: 15px !important;
  }
  .u-pr15sp {
    padding-right: 15px !important;
  }
  .u-pb15sp {
    padding-bottom: 15px !important;
  }
}

.u-mt20 {
  margin-top: 20px !important;
}

.u-ml20 {
  margin-left: 20px !important;
}

.u-mr20 {
  margin-right: 20px !important;
}

.u-mb20 {
  margin-bottom: 20px !important;
}

.u-pt20 {
  padding-top: 20px !important;
}

.u-pl20 {
  padding-left: 20px !important;
}

.u-pr20 {
  padding-right: 20px !important;
}

.u-pb20 {
  padding-bottom: 20px !important;
}

@media (max-width: 767px) {
  .u-mt20sp {
    margin-top: 20px !important;
  }
  .u-ml20sp {
    margin-left: 20px !important;
  }
  .u-mr20sp {
    margin-right: 20px !important;
  }
  .u-mb20sp {
    margin-bottom: 20px !important;
  }
  .u-pt20sp {
    padding-top: 20px !important;
  }
  .u-pl20sp {
    padding-left: 20px !important;
  }
  .u-pr20sp {
    padding-right: 20px !important;
  }
  .u-pb20sp {
    padding-bottom: 20px !important;
  }
}

.u-mt25 {
  margin-top: 25px !important;
}

.u-ml25 {
  margin-left: 25px !important;
}

.u-mr25 {
  margin-right: 25px !important;
}

.u-mb25 {
  margin-bottom: 25px !important;
}

.u-pt25 {
  padding-top: 25px !important;
}

.u-pl25 {
  padding-left: 25px !important;
}

.u-pr25 {
  padding-right: 25px !important;
}

.u-pb25 {
  padding-bottom: 25px !important;
}

@media (max-width: 767px) {
  .u-mt25sp {
    margin-top: 25px !important;
  }
  .u-ml25sp {
    margin-left: 25px !important;
  }
  .u-mr25sp {
    margin-right: 25px !important;
  }
  .u-mb25sp {
    margin-bottom: 25px !important;
  }
  .u-pt25sp {
    padding-top: 25px !important;
  }
  .u-pl25sp {
    padding-left: 25px !important;
  }
  .u-pr25sp {
    padding-right: 25px !important;
  }
  .u-pb25sp {
    padding-bottom: 25px !important;
  }
}

.u-mt30 {
  margin-top: 30px !important;
}

.u-ml30 {
  margin-left: 30px !important;
}

.u-mr30 {
  margin-right: 30px !important;
}

.u-mb30 {
  margin-bottom: 30px !important;
}

.u-pt30 {
  padding-top: 30px !important;
}

.u-pl30 {
  padding-left: 30px !important;
}

.u-pr30 {
  padding-right: 30px !important;
}

.u-pb30 {
  padding-bottom: 30px !important;
}

@media (max-width: 767px) {
  .u-mt30sp {
    margin-top: 30px !important;
  }
  .u-ml30sp {
    margin-left: 30px !important;
  }
  .u-mr30sp {
    margin-right: 30px !important;
  }
  .u-mb30sp {
    margin-bottom: 30px !important;
  }
  .u-pt30sp {
    padding-top: 30px !important;
  }
  .u-pl30sp {
    padding-left: 30px !important;
  }
  .u-pr30sp {
    padding-right: 30px !important;
  }
  .u-pb30sp {
    padding-bottom: 30px !important;
  }
}

.u-mt35 {
  margin-top: 35px !important;
}

.u-ml35 {
  margin-left: 35px !important;
}

.u-mr35 {
  margin-right: 35px !important;
}

.u-mb35 {
  margin-bottom: 35px !important;
}

.u-pt35 {
  padding-top: 35px !important;
}

.u-pl35 {
  padding-left: 35px !important;
}

.u-pr35 {
  padding-right: 35px !important;
}

.u-pb35 {
  padding-bottom: 35px !important;
}

@media (max-width: 767px) {
  .u-mt35sp {
    margin-top: 35px !important;
  }
  .u-ml35sp {
    margin-left: 35px !important;
  }
  .u-mr35sp {
    margin-right: 35px !important;
  }
  .u-mb35sp {
    margin-bottom: 35px !important;
  }
  .u-pt35sp {
    padding-top: 35px !important;
  }
  .u-pl35sp {
    padding-left: 35px !important;
  }
  .u-pr35sp {
    padding-right: 35px !important;
  }
  .u-pb35sp {
    padding-bottom: 35px !important;
  }
}

.u-mt40 {
  margin-top: 40px !important;
}

.u-ml40 {
  margin-left: 40px !important;
}

.u-mr40 {
  margin-right: 40px !important;
}

.u-mb40 {
  margin-bottom: 40px !important;
}

.u-pt40 {
  padding-top: 40px !important;
}

.u-pl40 {
  padding-left: 40px !important;
}

.u-pr40 {
  padding-right: 40px !important;
}

.u-pb40 {
  padding-bottom: 40px !important;
}

@media (max-width: 767px) {
  .u-mt40sp {
    margin-top: 40px !important;
  }
  .u-ml40sp {
    margin-left: 40px !important;
  }
  .u-mr40sp {
    margin-right: 40px !important;
  }
  .u-mb40sp {
    margin-bottom: 40px !important;
  }
  .u-pt40sp {
    padding-top: 40px !important;
  }
  .u-pl40sp {
    padding-left: 40px !important;
  }
  .u-pr40sp {
    padding-right: 40px !important;
  }
  .u-pb40sp {
    padding-bottom: 40px !important;
  }
}

.u-mt45 {
  margin-top: 45px !important;
}

.u-ml45 {
  margin-left: 45px !important;
}

.u-mr45 {
  margin-right: 45px !important;
}

.u-mb45 {
  margin-bottom: 45px !important;
}

.u-pt45 {
  padding-top: 45px !important;
}

.u-pl45 {
  padding-left: 45px !important;
}

.u-pr45 {
  padding-right: 45px !important;
}

.u-pb45 {
  padding-bottom: 45px !important;
}

@media (max-width: 767px) {
  .u-mt45sp {
    margin-top: 45px !important;
  }
  .u-ml45sp {
    margin-left: 45px !important;
  }
  .u-mr45sp {
    margin-right: 45px !important;
  }
  .u-mb45sp {
    margin-bottom: 45px !important;
  }
  .u-pt45sp {
    padding-top: 45px !important;
  }
  .u-pl45sp {
    padding-left: 45px !important;
  }
  .u-pr45sp {
    padding-right: 45px !important;
  }
  .u-pb45sp {
    padding-bottom: 45px !important;
  }
}

.u-mt50 {
  margin-top: 50px !important;
}

.u-ml50 {
  margin-left: 50px !important;
}

.u-mr50 {
  margin-right: 50px !important;
}

.u-mb50 {
  margin-bottom: 50px !important;
}

.u-pt50 {
  padding-top: 50px !important;
}

.u-pl50 {
  padding-left: 50px !important;
}

.u-pr50 {
  padding-right: 50px !important;
}

.u-pb50 {
  padding-bottom: 50px !important;
}

@media (max-width: 767px) {
  .u-mt50sp {
    margin-top: 50px !important;
  }
  .u-ml50sp {
    margin-left: 50px !important;
  }
  .u-mr50sp {
    margin-right: 50px !important;
  }
  .u-mb50sp {
    margin-bottom: 50px !important;
  }
  .u-pt50sp {
    padding-top: 50px !important;
  }
  .u-pl50sp {
    padding-left: 50px !important;
  }
  .u-pr50sp {
    padding-right: 50px !important;
  }
  .u-pb50sp {
    padding-bottom: 50px !important;
  }
}

.u-mt55 {
  margin-top: 55px !important;
}

.u-ml55 {
  margin-left: 55px !important;
}

.u-mr55 {
  margin-right: 55px !important;
}

.u-mb55 {
  margin-bottom: 55px !important;
}

.u-pt55 {
  padding-top: 55px !important;
}

.u-pl55 {
  padding-left: 55px !important;
}

.u-pr55 {
  padding-right: 55px !important;
}

.u-pb55 {
  padding-bottom: 55px !important;
}

@media (max-width: 767px) {
  .u-mt55sp {
    margin-top: 55px !important;
  }
  .u-ml55sp {
    margin-left: 55px !important;
  }
  .u-mr55sp {
    margin-right: 55px !important;
  }
  .u-mb55sp {
    margin-bottom: 55px !important;
  }
  .u-pt55sp {
    padding-top: 55px !important;
  }
  .u-pl55sp {
    padding-left: 55px !important;
  }
  .u-pr55sp {
    padding-right: 55px !important;
  }
  .u-pb55sp {
    padding-bottom: 55px !important;
  }
}

.u-mt60 {
  margin-top: 60px !important;
}

.u-ml60 {
  margin-left: 60px !important;
}

.u-mr60 {
  margin-right: 60px !important;
}

.u-mb60 {
  margin-bottom: 60px !important;
}

.u-pt60 {
  padding-top: 60px !important;
}

.u-pl60 {
  padding-left: 60px !important;
}

.u-pr60 {
  padding-right: 60px !important;
}

.u-pb60 {
  padding-bottom: 60px !important;
}

@media (max-width: 767px) {
  .u-mt60sp {
    margin-top: 60px !important;
  }
  .u-ml60sp {
    margin-left: 60px !important;
  }
  .u-mr60sp {
    margin-right: 60px !important;
  }
  .u-mb60sp {
    margin-bottom: 60px !important;
  }
  .u-pt60sp {
    padding-top: 60px !important;
  }
  .u-pl60sp {
    padding-left: 60px !important;
  }
  .u-pr60sp {
    padding-right: 60px !important;
  }
  .u-pb60sp {
    padding-bottom: 60px !important;
  }
}

.u-mt65 {
  margin-top: 65px !important;
}

.u-ml65 {
  margin-left: 65px !important;
}

.u-mr65 {
  margin-right: 65px !important;
}

.u-mb65 {
  margin-bottom: 65px !important;
}

.u-pt65 {
  padding-top: 65px !important;
}

.u-pl65 {
  padding-left: 65px !important;
}

.u-pr65 {
  padding-right: 65px !important;
}

.u-pb65 {
  padding-bottom: 65px !important;
}

@media (max-width: 767px) {
  .u-mt65sp {
    margin-top: 65px !important;
  }
  .u-ml65sp {
    margin-left: 65px !important;
  }
  .u-mr65sp {
    margin-right: 65px !important;
  }
  .u-mb65sp {
    margin-bottom: 65px !important;
  }
  .u-pt65sp {
    padding-top: 65px !important;
  }
  .u-pl65sp {
    padding-left: 65px !important;
  }
  .u-pr65sp {
    padding-right: 65px !important;
  }
  .u-pb65sp {
    padding-bottom: 65px !important;
  }
}

.u-mt70 {
  margin-top: 70px !important;
}

.u-ml70 {
  margin-left: 70px !important;
}

.u-mr70 {
  margin-right: 70px !important;
}

.u-mb70 {
  margin-bottom: 70px !important;
}

.u-pt70 {
  padding-top: 70px !important;
}

.u-pl70 {
  padding-left: 70px !important;
}

.u-pr70 {
  padding-right: 70px !important;
}

.u-pb70 {
  padding-bottom: 70px !important;
}

@media (max-width: 767px) {
  .u-mt70sp {
    margin-top: 70px !important;
  }
  .u-ml70sp {
    margin-left: 70px !important;
  }
  .u-mr70sp {
    margin-right: 70px !important;
  }
  .u-mb70sp {
    margin-bottom: 70px !important;
  }
  .u-pt70sp {
    padding-top: 70px !important;
  }
  .u-pl70sp {
    padding-left: 70px !important;
  }
  .u-pr70sp {
    padding-right: 70px !important;
  }
  .u-pb70sp {
    padding-bottom: 70px !important;
  }
}

.u-mt75 {
  margin-top: 75px !important;
}

.u-ml75 {
  margin-left: 75px !important;
}

.u-mr75 {
  margin-right: 75px !important;
}

.u-mb75 {
  margin-bottom: 75px !important;
}

.u-pt75 {
  padding-top: 75px !important;
}

.u-pl75 {
  padding-left: 75px !important;
}

.u-pr75 {
  padding-right: 75px !important;
}

.u-pb75 {
  padding-bottom: 75px !important;
}

@media (max-width: 767px) {
  .u-mt75sp {
    margin-top: 75px !important;
  }
  .u-ml75sp {
    margin-left: 75px !important;
  }
  .u-mr75sp {
    margin-right: 75px !important;
  }
  .u-mb75sp {
    margin-bottom: 75px !important;
  }
  .u-pt75sp {
    padding-top: 75px !important;
  }
  .u-pl75sp {
    padding-left: 75px !important;
  }
  .u-pr75sp {
    padding-right: 75px !important;
  }
  .u-pb75sp {
    padding-bottom: 75px !important;
  }
}

.u-mt80 {
  margin-top: 80px !important;
}

.u-ml80 {
  margin-left: 80px !important;
}

.u-mr80 {
  margin-right: 80px !important;
}

.u-mb80 {
  margin-bottom: 80px !important;
}

.u-pt80 {
  padding-top: 80px !important;
}

.u-pl80 {
  padding-left: 80px !important;
}

.u-pr80 {
  padding-right: 80px !important;
}

.u-pb80 {
  padding-bottom: 80px !important;
}

@media (max-width: 767px) {
  .u-mt80sp {
    margin-top: 80px !important;
  }
  .u-ml80sp {
    margin-left: 80px !important;
  }
  .u-mr80sp {
    margin-right: 80px !important;
  }
  .u-mb80sp {
    margin-bottom: 80px !important;
  }
  .u-pt80sp {
    padding-top: 80px !important;
  }
  .u-pl80sp {
    padding-left: 80px !important;
  }
  .u-pr80sp {
    padding-right: 80px !important;
  }
  .u-pb80sp {
    padding-bottom: 80px !important;
  }
}

.u-mt85 {
  margin-top: 85px !important;
}

.u-ml85 {
  margin-left: 85px !important;
}

.u-mr85 {
  margin-right: 85px !important;
}

.u-mb85 {
  margin-bottom: 85px !important;
}

.u-pt85 {
  padding-top: 85px !important;
}

.u-pl85 {
  padding-left: 85px !important;
}

.u-pr85 {
  padding-right: 85px !important;
}

.u-pb85 {
  padding-bottom: 85px !important;
}

@media (max-width: 767px) {
  .u-mt85sp {
    margin-top: 85px !important;
  }
  .u-ml85sp {
    margin-left: 85px !important;
  }
  .u-mr85sp {
    margin-right: 85px !important;
  }
  .u-mb85sp {
    margin-bottom: 85px !important;
  }
  .u-pt85sp {
    padding-top: 85px !important;
  }
  .u-pl85sp {
    padding-left: 85px !important;
  }
  .u-pr85sp {
    padding-right: 85px !important;
  }
  .u-pb85sp {
    padding-bottom: 85px !important;
  }
}

.u-mt90 {
  margin-top: 90px !important;
}

.u-ml90 {
  margin-left: 90px !important;
}

.u-mr90 {
  margin-right: 90px !important;
}

.u-mb90 {
  margin-bottom: 90px !important;
}

.u-pt90 {
  padding-top: 90px !important;
}

.u-pl90 {
  padding-left: 90px !important;
}

.u-pr90 {
  padding-right: 90px !important;
}

.u-pb90 {
  padding-bottom: 90px !important;
}

@media (max-width: 767px) {
  .u-mt90sp {
    margin-top: 90px !important;
  }
  .u-ml90sp {
    margin-left: 90px !important;
  }
  .u-mr90sp {
    margin-right: 90px !important;
  }
  .u-mb90sp {
    margin-bottom: 90px !important;
  }
  .u-pt90sp {
    padding-top: 90px !important;
  }
  .u-pl90sp {
    padding-left: 90px !important;
  }
  .u-pr90sp {
    padding-right: 90px !important;
  }
  .u-pb90sp {
    padding-bottom: 90px !important;
  }
}

.u-mt95 {
  margin-top: 95px !important;
}

.u-ml95 {
  margin-left: 95px !important;
}

.u-mr95 {
  margin-right: 95px !important;
}

.u-mb95 {
  margin-bottom: 95px !important;
}

.u-pt95 {
  padding-top: 95px !important;
}

.u-pl95 {
  padding-left: 95px !important;
}

.u-pr95 {
  padding-right: 95px !important;
}

.u-pb95 {
  padding-bottom: 95px !important;
}

@media (max-width: 767px) {
  .u-mt95sp {
    margin-top: 95px !important;
  }
  .u-ml95sp {
    margin-left: 95px !important;
  }
  .u-mr95sp {
    margin-right: 95px !important;
  }
  .u-mb95sp {
    margin-bottom: 95px !important;
  }
  .u-pt95sp {
    padding-top: 95px !important;
  }
  .u-pl95sp {
    padding-left: 95px !important;
  }
  .u-pr95sp {
    padding-right: 95px !important;
  }
  .u-pb95sp {
    padding-bottom: 95px !important;
  }
}

.u-mt100 {
  margin-top: 100px !important;
}

.u-ml100 {
  margin-left: 100px !important;
}

.u-mr100 {
  margin-right: 100px !important;
}

.u-mb100 {
  margin-bottom: 100px !important;
}

.u-pt100 {
  padding-top: 100px !important;
}

.u-pl100 {
  padding-left: 100px !important;
}

.u-pr100 {
  padding-right: 100px !important;
}

.u-pb100 {
  padding-bottom: 100px !important;
}

@media (max-width: 767px) {
  .u-mt100sp {
    margin-top: 100px !important;
  }
  .u-ml100sp {
    margin-left: 100px !important;
  }
  .u-mr100sp {
    margin-right: 100px !important;
  }
  .u-mb100sp {
    margin-bottom: 100px !important;
  }
  .u-pt100sp {
    padding-top: 100px !important;
  }
  .u-pl100sp {
    padding-left: 100px !important;
  }
  .u-pr100sp {
    padding-right: 100px !important;
  }
  .u-pb100sp {
    padding-bottom: 100px !important;
  }
}

@media (min-width: 768px) {
  .sp-only {
    display: none !important;
  }
}

@media (max-width: 767px) {
  .pc-only {
    display: none !important;
  }
}

.p-section {
  width: 820px;
  margin-bottom: 64px;
}

.p-section p {
  margin-bottom: 18px;
}

@media (max-width: 767px) {
  .p-section {
    margin-bottom: 48px;
  }
}

.p-section__ttl {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 820px;
  height: 75px;
  font-weight: bold;
  color: #fff;
  line-height: 1.5;
}

.p-section__ttl h2 {
  font-size: 24px;
  text-align: center;
}

.p-section__ttl.pt1 {
  background: no-repeat center/100% url(../images/pc_h2.jpg);
}

.p-section__ttl.pt1 .subttl {
  font-size: 18px;
}

.p-section__ttl.pt2 {
  font-size: 18px;
  font-weight: bold;
  background: #5CB5F6;
  height: 58px;
  position: relative;
  margin-bottom: 32px;
}

.p-section__ttl.pt2::before {
  content: "";
  display: inline-block;
  border-style: solid;
  border-color: transparent;
  border-top-color: #5CB5F6;
  width: 0;
  height: 0;
  border-width: 11px 8px 0 8px;
  position: absolute;
  bottom: -10px;
  left: 0;
  right: 0;
  margin: auto;
}

.p-download .p-section__ttl {
  font-weight: normal;
  background: none;
  margin-bottom: 32px;
  color: #333;
}

@media (max-width: 767px) {
  .p-section {
    width: 100%;
  }
  .p-section__ttl {
    width: calc(100% + 30px);
    margin-left: -15px;
    margin-right: -15px;
    height: 64px;
  }
  .p-section__ttl h2 {
    font-size: 16px;
  }
  .p-section__ttl.pt1 {
    background: no-repeat center/100% url(../images/sp_h2.jpg);
  }
  .p-section__ttl.pt1 .subttl {
    font-size: 13px;
  }
}

.p-section.p-howto {
  padding-top: 64px;
}

@media (max-width: 767px) {
  .p-section.p-howto {
    padding-top: 48px;
  }
}

.p-download {
  background: #F1F1F1;
  width: 1130px;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 30px;
  padding-bottom: 42px;
  margin-bottom: 0;
}

@media (max-width: 767px) {
  .p-download .p-section__ttl h2 {
    font-size: 23px;
    line-height: 1.3913;
  }
}

.is-android .p-download .ios {
  display: none;
}

.is-ios .p-download .android {
  display: none;
}

.p-download__col {
  width: 820px;
  display: flex;
  justify-content: space-around;
}

@media (max-width: 767px) {
  .p-download__col {
    flex-direction: column;
  }
}

.is-android .p-download__col {
  flex-direction: column-reverse;
}

.p-download__col__items {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.p-download__col__items .ttl {
  font-size: 24px;
  margin-bottom: 10px;
}

.p-download__col__items .code {
  margin-bottom: 20px;
}

.p-download__col__items .code img {
  width: 150px;
  height: 150px;
}

.p-download__col__items .store img {
  width: 162px;
  height: 48px;
}

.p-download__col__items .center {
  width: 327px;
  margin-bottom: 16px;
}

@media (max-width: 767px) {
  .p-download__col__items .center {
    width: 300px;
  }
}

@media (max-width: 767px) {
  .p-download {
    width: calc(100% + 30px);
    padding-bottom: 60px;
  }
  .p-download__col {
    width: 100%;
  }
}

.p-howto__col {
  width: 820px;
  display: flex;
  justify-content: space-between;
}

@media (max-width: 767px) {
  .p-howto__col {
    margin-bottom: 48px;
  }
}

.p-howto__col__items {
  width: 254px;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 48px;
}

@media (max-width: 767px) {
  .p-howto__col__items {
    margin-bottom: 40px;
  }
}

@media (max-width: 767px) {
  .p-howto__col__items:last-child {
    margin-bottom: 0;
  }
}

.p-howto__col__items .num {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  border: 2px solid #006BCD;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #006BCD;
  font-size: 20px;
  font-weight: bold;
}

@media (max-width: 767px) {
  .p-howto__col__items .num {
    width: 40px;
    height: 40px;
    font-size: 18px;
  }
}

.p-howto__col__items .ttl {
  font-size: 18px;
  font-weight: bold;
  margin: 15px auto 30px;
}

@media (max-width: 767px) {
  .p-howto__col__items .ttl {
    font-size: 16px;
    margin: 15px auto;
  }
}

.p-howto__col__items .txt {
  margin-bottom: 30px;
  line-height: 1.75;
  width: 100%;
}

@media (min-width: 768px) {
  .p-howto__col__items .image {
    width: 254px;
    height: 254px;
  }
}

@media (max-width: 767px) {
  .p-howto__col__items .image {
    width: calc(100% - 30px);
  }
}

.p-howto .btn_push {
  max-width: 295px;
  margin: 0 auto 64px;
  /*
    display:flex;
    flex-wrap: nowrap;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    */
}

.p-howto .btn_push button {
  width: 100%;
  height: 48px;
  margin: 16px auto;
  color: #006BCD;
  background: #fff;
  font-size: 16px;
  box-shadow: 0 0 5px rgba(100, 100, 100, 0.4);
  border: none;
}

.is-android .p-howto .btn_push.ios {
  display: none;
}

.p-howto .function__index {
  margin-top: 32px;
  margin-bottom: 64px;
  -moz-column-fill: balance;
       column-fill: balance;
}

@media (max-width: 767px) {
  .p-howto .function__index {
    margin-top: 16px;
    margin-bottom: 48px;
  }
}

.p-howto .function__index ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

@media (min-width: 768px) {
  .p-howto .function__index li {
    width: calc((100% - 32px) / 2);
  }
  .p-howto .function__index li:nth-child(n+3) {
    margin-top: 20px;
  }
}

@media (max-width: 767px) {
  .p-howto .function__index li:nth-child(n+2) {
    margin-top: 10px;
  }
}

.p-howto .function__index li .c-btn::after {
  content: '';
  display: inline-block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 16px;
  width: 1em;
  height: 1em;
  margin: auto;
  background-image: url("../images/link_arrow.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.p-howto .function__col {
  width: 820px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.p-howto .function__col__items {
  width: 254px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

@media (min-width: 768px) {
  .p-howto .function__col__items:nth-child(n+4) {
    margin-top: 60px;
  }
}

@media (max-width: 767px) {
  .p-howto .function__col__items:nth-child(n+2) {
    margin-top: 40px;
  }
}

.p-howto .function__col__items .func_icon {
  display: inline-flex;
  align-items: center;
  height: 40px;
  margin-bottom: 20px;
}

.p-howto .function__col__items .func_icon img {
  max-width: 40px;
  max-height: 40px;
}

.p-howto .function__col__items .func_ttl {
  height: 54px;
  width: 254px;
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 20px;
  background: #D0E9FA;
  display: flex;
  justify-content: center;
  align-items: center;
}

.p-howto .function__col__items .c-hdg04 {
  width: 100%;
  margin-bottom: 30px;
}

.p-howto .function__col__items .func_txt {
  margin-bottom: 30px;
  line-height: 1.75;
  min-height: 7em;
  width: 100%;
}

@media (max-width: 767px) {
  .p-howto .function__col__items .func_txt {
    min-height: 0;
  }
}

.p-howto .function__col__items .func_txt span {
  display: block;
  text-align: right;
}

.p-howto .function__col__items .func_image img {
  width: 254px;
  height: auto;
}

@media (max-width: 767px) {
  .p-howto__col {
    width: 100%;
    flex-direction: column;
  }
  .p-howto__col__items {
    width: 100%;
  }
  .p-howto .function__index li {
    width: 100%;
  }
  .p-howto .function__index li:nth-child(n+3) {
    border-bottom: none;
    margin-bottom: 0;
  }
  .p-howto .function__index li:last-child {
    border-bottom: 1px solid #E1E5EB;
  }
  .p-howto .function__col {
    width: 100%;
    flex-direction: column;
  }
  .p-howto .function__col__items {
    width: 100%;
  }
  .p-howto .function__col__items:last-child {
    margin-bottom: 0;
  }
  .p-howto .function__col__items .func_image {
    width: calc(100% - 30px);
  }
  .p-howto .function__col__items .func_image img {
    width: 100%;
  }
}

.p-prep__col {
  width: 820px;
  display: flex;
  justify-content: center;
  position: relative;
}

.p-prep__col__items {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  position: relative;
}

.p-prep__col__items img {
  width: 272px;
  height: auto;
}

@media (min-width: 768px) {
  .p-prep__col__items.step2 {
    margin-left: 72px;
  }
}

.p-prep__col__items.step2::before {
  content: "";
  position: absolute;
  left: -50px;
  top: calc(50% - 16.5px);
  border-top: 26px solid transparent;
  border-bottom: 26px solid transparent;
  border-left: 33px solid #EBEBF1;
}

@media (max-width: 767px) {
  .p-prep__col {
    width: 100%;
    flex-direction: column;
  }
  .p-prep__col__items {
    width: calc(100% - 30px);
    margin-left: auto;
    margin-right: auto;
  }
  .p-prep__col__items img {
    width: 100%;
  }
  .p-prep__col__items.step1 {
    margin-bottom: 60px;
  }
  .p-prep__col__items.step2::before {
    content: "";
    position: absolute;
    left: calc(50% - 43px);
    top: -40px;
    border-right: 43px solid transparent;
    border-left: 43px solid transparent;
    border-top: 30px solid #EBEBF1;
  }
}

.p-recommend .p-section__ttl {
  margin-bottom: 30px;
}

@media (max-width: 767px) {
  .p-recommend .p-section__ttl {
    margin-bottom: 0;
  }
}

.p-recommend__col {
  width: 820px;
  display: flex;
  justify-content: space-between;
  position: relative;
  flex-wrap: wrap;
}

.p-recommend__col__items {
  display: flex;
  align-items: center;
  flex-direction: column;
  width: 394px;
  margin-bottom: 32px;
  padding-bottom: 32px;
}

.p-recommend__col__items a {
  display: flex;
  align-items: center;
  flex-direction: column;
  text-decoration: none;
  color: #333;
}

.p-recommend__col__items a:hover img {
  opacity: 0.8;
}

.p-recommend__col__items a:hover .rmd_txt span {
  opacity: 0.8;
}

.p-recommend__col__items:nth-child(n+3) {
  margin-bottom: 0;
}

.p-recommend__col__items .rmd_ttl {
  height: 80px;
  width: 394px;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  line-height: 1.25;
  background: #5CB5F6;
  color: #fff;
  padding: 15px 20px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin-bottom: 20px;
  position: relative;
}

.p-recommend__col__items .rmd_ttl::before {
  content: "";
  display: inline-block;
  border-style: solid;
  border-color: transparent;
  border-top-color: #5CB5F6;
  width: 0;
  height: 0;
  border-width: 11px 8px 0 8px;
  position: absolute;
  bottom: -10px;
  left: 0;
  right: 0;
  margin: auto;
}

.p-recommend__col__items .rmd_banner {
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  flex-direction: column;
}

.p-recommend__col__items .rmd_banner img {
  height: 220px;
  width: 220px;
}

.p-recommend__col__items .rmd_txt {
  width: 100%;
}

.p-recommend__col__items .rmd_txt p {
  width: 395px;
  padding: 0 15px;
}

.p-recommend__col__items .rmd_txt span {
  display: block;
  font-weight: bold;
  text-align: center;
  color: #214DCA;
  margin-bottom: 20px;
}

@media (max-width: 767px) {
  .p-recommend {
    margin-bottom: 0;
  }
  .p-recommend__col {
    width: 100%;
    flex-direction: column;
  }
  .p-recommend__col__items {
    width: calc(100% + 30px);
    margin-left: -15px;
    margin-right: -15px;
    margin-bottom: 0;
  }
  .p-recommend__col__items:nth-child(n+3) {
    margin-bottom: 0;
  }
  .p-recommend__col__items:last-child {
    margin-bottom: 60px;
  }
  .p-recommend__col__items .rmd_ttl {
    width: 100%;
    font-size: 16px;
    height: auto;
    position: relative;
    margin-bottom: 32px;
    justify-content: center;
  }
  .p-recommend__col__items .rmd_txt p {
    width: 100%;
  }
}

.p-step .p-section__ttl {
  margin-bottom: 32px;
}

.p-step__col {
  width: 820px;
  display: flex;
  justify-content: space-between;
  position: relative;
  flex-wrap: wrap;
}

.p-step__col__items {
  display: flex;
  align-items: center;
  flex-direction: column;
  width: 394px;
}

@media (min-width: 768px) {
  .p-step__col__items:nth-child(n+3) {
    margin-top: 20px;
  }
}

@media (max-width: 767px) {
  .p-step__col__items:nth-child(n+2) {
    margin-top: 20px;
  }
  .p-step__col__items:nth-child(4) {
    margin-top: 40px;
  }
}

.p-step__col__items .step_ttl {
  height: 57px;
  width: 394px;
  font-size: 18px;
  font-weight: bold;
  color: #214DCA;
  line-height: 1.25;
  background: #D0E9FA;
  padding: 15px 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.p-step__col__items .c-hdg02 {
  width: 100%;
}

.p-step__col__items .step_image img {
  width: 394px;
}

.p-step__col__items .step_txt {
  width: 100%;
}

@media (max-width: 767px) {
  .p-step {
    margin-top: 0;
    margin-bottom: 0;
  }
  .p-step h2 .sub {
    display: block;
    font-size: 15px;
  }
  .p-step__col {
    width: 100%;
  }
  .p-step__col__items {
    width: 100%;
  }
  .p-step__col__items .step_ttl {
    width: 100%;
    font-size: 16px;
  }
  .p-step__col__items .step_image {
    width: calc(100% - 30px);
  }
  .p-step__col__items .step_image img {
    width: 100%;
  }
}
