@media (max-width: 768px) {
  body {
    min-width: 100%;
  }
}

#main {
  width: auto;
  padding: 0;

  @media (max-width: 768px) {
    width: 100%;
  }
}

@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: #00abeb;*/
  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: 16px 15px 32px;
    box-shadow: 0 0px 5px 0 rgba(0, 0, 0, 0.25);
    background-color: #ffffff;
  }
}

@media (min-width: 768px) {
  .l-content {
    padding: 32px 32px 64px;
    box-shadow: 0 0px 5px 0 rgba(0, 0, 0, 0.25);
    background-color: #ffffff;
  }
}

.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: 24px 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/2028/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/2028/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;
  }
}

.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: 100%;
  height: 70px;
  padding: 12px 20px;
}

.c-btn.s1 > span {
  line-height: 1.5;
}

@media (max-width: 767px) {
  .c-btn.s1 {
    height: auto;
  }
}

.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% - 20px) / 2);
  max-width: 145px;
  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__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;
}

.p-hero {
  background-color: #fff;
}

@media (min-width: 768px) {
  .p-hero__inner {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1130px;
    margin: 0 auto;
  }
}

@media (min-width: 768px) {
  .p-hero__ttl {
    flex: 0 0 auto;
    margin-left: calc((-1280px + 1130px) / 2);
    margin-right: calc((-1280px + 1130px) / 2);
  }
}

.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-sideNav {
  font-size: 16px;
}

@media (max-width: 767px) {
  .c-sideNav {
    box-shadow: 0 0px 5px 0 rgba(0, 0, 0, 0.25);
  }
}

.c-sideNav__head__ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 58px;
  background-color: #E6E6E6;
  color: #000;
  font-weight: bold;
}

.c-sideNav__cont {
  padding: 0 15px;
  border: 1px solid #e6e6e6;
  border-top: none;
  background-color: #ffffff;
}

.c-sideNav__hdg {
  border-bottom: 1px solid #E6E6E6;
}

.c-sideNav__hdg .__link {
  display: flex;
  align-items: center;
  position: relative;
  height: 58px;
  padding: 0 20px;
  background-color: #ECECEC;
  text-decoration: none;
}

.c-sideNav__list:not(:last-child) {
  border-bottom: 1px solid #e6e6e6;
}

.c-sideNav__list__ttl {
  position: relative;
}

.c-sideNav__list__ttl::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  width: 31px;
  height: 31px;
  margin: auto;
  background-color: #00ABEB;
}

.c-sideNav__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-sideNav__list__ttl > a:not(.__hook) .__ico {
content: '';
  display: inline-block;
  width: 30px;
  height: 30px;
  margin-right: 8px;
  background-image: url(/conts/2028/images/icon_sideNav01.png);
  background-repeat: no-repeat;
  background-size: 240px 30px;
}

.c-sideNav__list__ttl > a:not(.__hook) .__ico--1 {
  background-position: 0px 0;
}

.c-sideNav__list__ttl > a:not(.__hook) .__ico--2 {
  background-position: -30px 0;
}

.c-sideNav__list__ttl > a:not(.__hook) .__ico--3 {
  background-position: -60px 0;
}

.c-sideNav__list__ttl > a:not(.__hook) .__ico--4 {
  background-position: -90px 0;
}

.c-sideNav__list__ttl > a:not(.__hook) .__ico--5 {
  background-position: -120px 0;
}

.c-sideNav__list__ttl > a:not(.__hook) .__ico--6 {
  background-position: -150px 0;
}

.c-sideNav__list__ttl > a:not(.__hook) .__ico--7 {
  background-position: -180px 0;
}

.c-sideNav__list__ttl > a:not(.__hook) .__ico--8 {
  background-position: -210px 0;
}

.c-sideNav__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-sideNav__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-sideNav__list__ttl > a:not(.__hook):hover {
  opacity: 0.8;
}

.c-sideNav__list__ttl .__link {
  display: flex;
  align-items: center;
  position: relative;
  height: 58px;
  padding-left: 5px;
  padding-right: 46px;
  text-decoration: none;
  transition: 200ms;
}

.c-sideNav__list__ttl .__link a {
  text-decoration: none;
}

.c-sideNav__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-sideNav__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-sideNav__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-sideNav__list__ttl .__hook:hover {
  opacity: 0.8;
}

.c-sideNav__list__body {
  padding: 8px 24px 16px;
}

.c-sideNav__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-sideNav__list__body .__item a::before,
.c-sideNav__list__body .__item a::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  width: 9px;
  height: 2px;
  background-color: #00abeb;
}

.c-sideNav__list__body .__item a::before {
  top: 14px;
  transform: rotate(45deg);
}

.c-sideNav__list__body .__item a::after {
  top: 19px;
  transform: rotate(-45deg);
}

.c-sideNav__list:not(.is-open) .c-sideNav__list__ttl a::after {
  height: 15px;
}

.c-sideNav--category {
  margin-bottom: 32px;
}

.c-sideNav--category .c-sideNav__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;
}

@media (min-width: 768px) {
  .c-block__head {
    margin-bottom: 24px;
  }
}

@media (max-width: 767px) {
  .c-block__head {
    margin-bottom: 16px;
  }
}

@media (min-width: 768px) {
  .c-block__body {
    margin-top: 40px;
  }
}

@media (max-width: 767px) {
  .c-block__body {
    margin-top: 32px;
  }
}

@media (min-width: 768px) {
  .c-block__body.is-adjusted {
    margin-top: 0px;
  }
}

@media (max-width: 767px) {
  .c-block__body.is-adjusted {
    margin-top: 0;
  }
}

@media (min-width: 768px) {
  .c-block__item + .c-block__item {
    margin-top: 40px;
  }
}

@media (max-width: 767px) {
  .c-block__item + .c-block__item {
    margin-top: 32px;
  }
}

.c-block__btn {
  max-width: 295px;
}

@media (min-width: 768px) {
  .c-block__btn {
    margin: 40px auto 0;
  }
}

@media (max-width: 767px) {
  .c-block__btn {
    margin: 32px auto 0;
  }
}

.c-block__btn.is-primary {
  max-width: 312px;
}

@media (min-width: 768px) {
  .c-block__note {
    margin-top: 25px;
  }
}

@media (max-width: 767px) {
  .c-block__note {
    margin-top: 20px;
  }
}

.c-block strong {
  font-weight: bold;
}

.c-box-def__body {
  margin-top: 16px;
  font-size: 16px;
  line-height: 1.75;
}

@media (min-width: 768px) {
  .c-box-def__pct {
    margin-top: 30px;
  }

  .c-box-def__pct.is-adjusted {
    margin-top: 20px;
  }
}

@media (max-width: 767px) {
  .c-box-def__pct {
    margin-top: 25px;
  }

  .c-box-def__pct.is-adjusted {
    margin-top: 15px;
  }
}

@media (min-width: 768px) {
  .c-box-def__item {
    margin-top: 30px;
  }
}

@media (max-width: 767px) {
  .c-box-def__item {
    margin-top: 25px;
  }
}

.c-box-def img {
  width: 100%;
  height: auto;
}

.c-box-num__head dl {
  text-align: center;
}

.c-box-num__head dl dt {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  margin: 0 auto;
  font-size: 18px;
  font-weight: bold;
  color: #076FCE;
  border: 2px solid #076FCE;
  border-radius: 20px;
}

@media (min-width: 768px) {
  .c-box-num__head dl dt {
    padding-top: 2px;
  }
}

.c-box-num__head dl dd {
  margin-top: 15px;
  font-size: 16px;
  font-weight: bold;
}

.c-box-num__body {
  margin-top: 15px;
  font-size: 16px;
  line-height: 1.75;
}

@media (min-width: 768px) {
  .c-box-num__pct {
    margin-top: 30px;
  }
}

@media (max-width: 767px) {
  .c-box-num__pct {
    margin-top: 25px;
  }
}

.c-box-num__pct img {
  width: 100%;
  height: auto;
}

.c-box-num__btn {
  margin-top: 30px;
}

@media (min-width: 768px) {
  .c-box-border {
    display: flex;
    flex-direction: column;
    height: 100%;
  }
}

.c-box-border__head {
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  background: #F3F3F3;
}

@media (min-width: 768px) {
  .c-box-border__head {
    padding: 15px;
  }
}

@media (max-width: 767px) {
  .c-box-border__head {
    padding: 15px;
  }
}

.c-box-border__head dl {
  font-size: 16px;
}

.c-box-border__body {
  font-size: 16px;
  border: 2px solid #F3F3F3;
}

@media (min-width: 768px) {
  .c-box-border__body {
    height: 100%;
    padding: 15px 20px 30px;
  }
}

@media (max-width: 767px) {
  .c-box-border__body {
    padding: 20px 20px 25px;
  }
}

_:-ms-input-placeholder,
:root .c-box-border__body {
  height: auto;
}

.c-box-border__body .__smaller {
  font-size: 14px;
}

.c-box-appeal {
  background: #F1F1F1;
}

.c-box-appeal__ttl {
  padding: 6px 5px;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
}

.c-box-appeal__list {
  display: flex;
  flex-wrap: wrap;
  padding: 2px;
}

.c-box-appeal__list li {
  width: calc(50% - 1px);
  padding: 8px 4px;
  font-size: 14px;
  line-height: 2;
  text-align: center;
  background: #fff;
}

.c-box-appeal__list li:nth-child(even) {
  margin-left: 2px;
}

.c-box-appeal__list li:nth-child(n+3) {
  margin-top: 2px;
}

.c-feature__head {
  margin-bottom: 10px;
}

.c-hd-1 {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 96px;
  padding: 20px;
  font-size: 28px;
  line-height: 1;
  font-weight: bold;
  text-align: center;
  color: #fff;
  background: #013F90;
}

_:-ms-input-placeholder,
:root .c-hd-1 {
  height: 96px;
}

@media (max-width: 767px) {
  .c-hd-1 {
    font-size: 24px;
    line-height: 1.5;
  }
}

.c-hd-2 {
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  text-align: center;
  color: #fff;
  background: url("../images/ttl_bg.png") no-repeat left center;
}

@media (min-width: 768px) {
  .c-hd-2 {
    min-height: 76px;
    padding: 20px;
    font-size: 24px;
    line-height: 1.25;
  }
}

_:-ms-input-placeholder,
:root .c-hd-2 {
  height: 76px;
}

@media (max-width: 767px) {
  .c-hd-2 {
    min-height: 72px;
    padding: 10px 8px;
    font-size: 20px;
    line-height: 1.5;
    background-position: center;
    background-size: cover;
  }
}

.c-hd-3 {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  padding: 8px 10px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.66667;
  text-align: center;
  color: #fff;
  background: #49ADF5;
}

_:-ms-input-placeholder,
:root .c-hd-3 {
  height: 50px;
}

.c-hd-4 {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  min-height: 74px;
  padding: 8px 10px;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.75;
  text-align: center;
  color: #fff;
  background: #357CDE;
}

.c-hd-4::after {
  content: '';
  position: absolute;
  bottom: -10px;
  left: calc(50% - 8px);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 8px 0 8px;
  border-color: #357CDE transparent transparent transparent;
}

@media (max-width: 767px) {
  .c-hd-4.is-adjusted {
    letter-spacing: -.03em;
  }
}

_:-ms-input-placeholder,
:root .c-hd-4 {
  height: 74px;
}

.c-hd-5 {
  margin-bottom: 1em;
  font-size: 16px;
  font-weight: bold;
}

.c-hd-6 {
  margin-bottom: 1em;
  font-size: 16px;
  font-weight: bold;
}

.c-lede {
  font-size: 16px;
  line-height: 1.75;
}

.c-lede__note {
  display: block;
  margin-top: 10px;
}

@media (min-width: 768px) {
  .c-lede__note {
    font-size: 12px;
    line-height: 1.75;
  }
}

@media (max-width: 767px) {
  .c-lede__note {
    font-size: 9px;
    line-height: 1.77778;
  }
}

.c-link {
  display: flex;
  align-items: center;
}

.c-link i {
  margin-right: 5px;
}

.c-link a {
  text-decoration: none;
}

.c-note li {
  display: flex;
  font-size: 12px;
  line-height: 1.75;
}

.c-note li + li {
  margin-top: 5px;
}

.c-related a {
  display: flex;
  align-items: flex-start;
  text-decoration: none;
}

.c-related a:hover img {
  opacity: .8;
}

.c-related a:hover p {
  text-decoration: underline;
  color: #39f;
}

@media (min-width: 768px) {
  .c-related a img {
    min-width: 145px;
    width: 145px;
    height: auto;
  }
}

@media (max-width: 767px) {
  .c-related a img {
    width: 145px;
    height: auto;
  }
}

.c-related a p {
  margin-left: 25px;
  font-size: 14px;
  line-height: 1.5;
  color: #006BCD;
}

.p-app {
  background: #F1F1F1;
}

@media (min-width: 768px) {
  .p-app {
    margin-top: 80px;
    padding: 32px 45px;
  }
}

@media (max-width: 767px) {
  .p-app {
    margin: 60px -15px -20px;
    padding: 30px 10px 60px;
  }

  .p-app.is-adjusted {
    margin-bottom: -32px;
  }
}

.p-app__ttl {
  text-align: center;
}

@media (min-width: 768px) {
  .p-app__ttl {
    font-size: 24px;
    line-height: 1.41667;
  }
}

@media (max-width: 767px) {
  .p-app__ttl {
    font-size: 23px;
    line-height: 1.3913;
  }
}

@media (min-width: 768px) {
  .p-app__body {
    display: flex;
    margin-top: 30px;
  }
}

@media (max-width: 767px) {
  .p-app__body {
    margin-top: 30px;
  }
}

.p-app__device {
  width: 287px;
}

@media (min-width: 768px) {
  .p-app__device {
    order: 2;
    margin: 0 13px;
  }
}

@media (max-width: 767px) {
  .p-app__device {
    margin: 0 auto;
  }
}

.p-app__device img {
  width: 100%;
  height: auto;
}

@media (min-width: 768px) {
  .p-app__box.is-android {
    order: 1;
  }

  .p-app__box.is-ios {
    order: 3;
  }
}

@media (max-width: 767px) {
  .p-app__box {
    margin-top: 20px;
  }

  html.is-ios .p-app__box.is-android,
  html.is-windows .p-app__box.is-android,
  html.is-mac .p-app__box.is-android,
  html.is-other .p-app__box.is-android {
    display: none;
  }

  html.is-android .p-app__box.is-ios {
    display: none;
  }
}

.c-app-box {
  text-align: center;
}

.c-app-box__ttl {
  font-size: 24px;
  line-height: 1.41667;
}

@media (min-width: 768px) {
  .c-app-box__qr {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 150px;
    height: 150px;
    margin: 10px auto 20px;
    background: #fff;
  }

  .c-app-box__qr img {
    width: 110px;
    height: 110px;
  }
}

@media (max-width: 767px) {
  .c-app-box__qr {
    display: none;
  }
}

.c-app-box__bnr a {
  display: block;
  width: 165px;
  margin: 5px auto 0;
}

.c-app-box__bnr img {
  width: 100%;
  height: auto;
}

.p-buttons,
.p-buttons--single {
  padding: 40px 30px;
  background: #F1F1F1;
}

.p-buttons .p-buttons__item,
.p-buttons--single .p-buttons__item {
  max-width: 295px;
  margin: 0 auto;
}

.p-buttons__item + .p-buttons__item {
  margin-top: 10px;
}

.p-buttons--single {
  margin-top: 40px;
}

@media (min-width: 768px) {
  .p-buttons--bottom {
    margin-top: 80px;
  }
}

@media (max-width: 767px) {
  .p-buttons--bottom {
    margin-top: 50px;
  }
}

.p-buttons--bottom .p-buttons__item {
  max-width: 390px;
  margin: 0 auto;
}

@media (max-width: 767px) {
  .p-buttons--bottom .p-buttons__item {
    padding: 0 5px;
  }
}

.p-buttons__txt {
  margin-bottom: 1em;
  text-align: center;
}

.p-blocks {
  margin-top: 32px;
}

@media (min-width: 768px) {
  .p-blocks__item + .p-blocks__item {
    margin-top: 48px;
  }
}

@media (max-width: 767px) {
  .p-blocks__item + .p-blocks__item {
    margin-top: 48px;
  }
}

@media (min-width: 768px) {

  .p-column--1,
  .p-column--2,
  .p-column--3 {
    display: flex;
    flex-wrap: wrap;
  }
}

@media (max-width: 767px) {

  .p-column--1 > .p-column__item:nth-child(n+2),
  .p-column--2 > .p-column__item:nth-child(n+2),
  .p-column--3 > .p-column__item:nth-child(n+2) {
    margin-top: 40px;
  }
}

@media (max-width: 767px) {

  .is-adjusted.p-column--1 > .p-column__item:nth-child(n+2),
  .is-adjusted.p-column--2 > .p-column__item:nth-child(n+2),
  .is-adjusted.p-column--3 > .p-column__item:nth-child(n+2) {
    margin-top: 20px;
  }
}

@media (min-width: 768px) {
  .p-column--1 {
    display: block;
  }
}

@media (min-width: 768px) {
  .p-column--1 > .p-column__item:nth-child(n+2) {
    margin-top: 32px;
  }
}

@media (min-width: 768px) {
  .p-column--2 > .p-column__item {
    width: calc(1/2*100% - 32px*1/2);
  }

  .p-column--2 > .p-column__item:nth-child(even) {
    margin-left: 32px;
  }

  .p-column--2 > .p-column__item:nth-child(n+3) {
    margin-top: 32px;
  }
}

@media (min-width: 768px) {
  .p-column--3 > .p-column__item {
    width: calc(1/3*100% - 28px*2/3);
  }

  .p-column--3 > .p-column__item:not(:nth-child(3n+1)) {
    margin-left: 28px;
  }

  .p-column--3 > .p-column__item:nth-child(n+4) {
    margin-top: 32px;
  }
}

.p-column-app {
  margin-top: 40px;
}

@media (min-width: 768px) {
  .p-column-app__body {
    display: flex;
    flex-wrap: wrap;
    margin-top: 20px;
  }
}

@media (max-width: 767px) {
  .p-column-app__body {
    margin-top: 20px;
  }
}

.p-column-app__item {
  position: relative;
}

@media (min-width: 768px) {
  .p-column-app__item {
    width: calc(1/2*100% - 32px*1/2);
  }

  .p-column-app__item:nth-child(even) {
    margin-left: 32px;
  }

  .p-column-app__item:nth-child(n+3) {
    margin-top: 32px;
  }
}

@media (max-width: 767px) {
  .p-column-app__item:not(:last-child)::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    margin: 20px auto;
    border-style: solid;
    border-width: 15px 15px 0 15px;
    border-color: #CFDFF1 transparent transparent transparent;
  }
}

@media (min-width: 768px) {
  .p-headline {
    margin-bottom: -10px;
  }
}

@media (max-width: 767px) {
  .p-headline {
    margin: -16px -15px -10px;
  }
}

.step-help {
  position: relative;
  padding: 10px 10px 10px 40px;
  font-size: 16px;
  line-height: 1.75;
}

.step-help:before {
  position: absolute;
  left: 5px;
  display: block;
  width: 25px;
  height: 25px;
  background: url("../images/icon-hint.png") center no-repeat;
  background-size: 100%;
  content: "";
}

.u-align--left {
  text-align: left;
}

.u-align--center {
  text-align: center;
}

.u-align--right {
  text-align: right;
}

@media (max-width: 767px) {
  .u-use--pc {
    display: none;
  }
}

@media (min-width: 768px) {
  .u-use--sp {
    display: none;
  }
}

.-pc {
  display: block;
}

.-sp {
  display: none;
}

@media (max-width: 768px) {
  .-pc {
    display: none;
  }

  .-sp {
    display: block;
  }
}