@charset "UTF-8";
/* responsive */
/*@include mq() { }*/
.clearfix {
  *zoom: 1;
}

.clearfix:after {
  content: "";
  display: table;
  clear: both;
}

.slick-slide:focus {
  outline: none;
}

.obj_fit, .features_item_wrap .features_item figure img {
  width: 100%;
  height: 100%;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
}

.on_fit {
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 5;
}

.tx_hidden {
  display: block;
  text-indent: 120%;
  white-space: nowrap;
  overflow: hidden;
}

.l-header .p-button.p-button--gray:not(:hover) {
  background: #7e7e7e;
}
.l-header .p-global-nav > li > a:hover,
.l-header .p-global-nav > li.current-menu-item > a:hover {
  background: #E60012;
}
@media (min-width: 992px) {
  .l-header .p-header__lower-inner {
    min-height: 60px;
  }
  .l-header .p-global-nav > li > a {
    height: 60px;
  }
  .l-header .p-global-nav > li > a:hover,
  .l-header .p-global-nav > li.current-menu-item > a:hover {
    color: #ffffff;
    background: #000000;
  }
}
.l-header .p-global-nav > li.current-menu-item > a {
  background-color: transparent;
  color: #999999 !important;
}

@media (min-width: 992px) {
  .l-header__fix .is-header-fixed .p-header__lower .p-global-nav > li.current-menu-item > a {
    color: #999999 !important;
  }
  .l-header__fix .is-header-fixed .p-header__lower .p-global-nav > li:hover > a {
    color: #000000 !important;
  }
  .l-header__fix .is-header-fixed .p-header__lower .p-global-nav > li:hover > a:hover,
  .l-header__fix .is-header-fixed .p-header__lower .p-global-nav > li.current-menu-item > a:hover {
    color: #ffffff !important;
  }
}
.p-header-memberbox__login .p-button, .p-header-memberbox__login-button .p-button, .p-button.checkout {
  background: #E60012;
}

.p-copyright .l-inner {
  letter-spacing: 0.01em;
}
@media (max-width: 599px) {
  .p-copyright .l-inner {
    font-size: 10px;
  }
}

.home .p-header-slider {
  width: 100%;
  overflow: hidden;
}
.home .p-header-slider .slick-list {
  margin: 0 -1px 0 0;
}
.home .p-header-slider .p-header-slider__item {
  overflow: hidden;
}
.home .p-header-slider .p-header-slider__item.has-link .p-header-content__image {
  -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: -webkit-transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -webkit-transform: scale(1.12);
          transform: scale(1.12);
}
.home .p-header-slider .p-header-slider__item.has-link:hover .p-header-content__image {
  -webkit-transform: scale(1);
          transform: scale(1);
}
.home .p-header-carousel {
  margin: 12px 0;
  background: transparent !important;
}
.home .p-header-carousel .l-pc-inner {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  width: 88.8888%;
  max-width: 1180px;
}
.home .p-header-carousel .slick-list {
  overflow: visible;
  -webkit-clip-path: none;
          clip-path: none;
}
.home .p-header-carousel .slick-arrow {
  background: #fff;
  border: none;
  border-radius: 50%;
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  color: #000;
  cursor: pointer;
  font-family: "design_plus";
  font-size: 16px;
  font-weight: 700;
  height: 50px;
  line-height: 50px;
  margin-top: -25px;
  overflow: hidden;
  padding: 0;
  text-align: center;
  width: 50px;
  position: absolute;
  top: 50%;
  z-index: 2;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.home .p-header-carousel .p-header-carousel__item-title {
  white-space: normal;
  text-overflow: inherit;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.home .p-header-carousel .slick-arrow:hover {
  color: #999;
}
.home .p-header-carousel .slick-arrow.slick-disabled {
  opacity: 0 !important;
}
.home .p-header-carousel .p-header-carousel__inner {
  margin: 0 -7px;
}
.home .p-header-carousel .p-header-carousel__item {
  padding: 0 7px !important;
  border: none !important;
}
.home .p-header-carousel .p-header-carousel__item .p-header-carousel__item-thumbnail {
  width: 130px;
  height: 130px;
  border-radius: 0;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 130px;
          flex: 0 0 130px;
}
.home .p-header-carousel .p-header-carousel__item .p-header-carousel__item-info {
  width: calc(100% - 130px);
  padding-right: 30px;
}
.home .p-header-carousel .p-header-carousel__item .p-hover-effect--type1 {
  width: 100%;
  height: 130px;
  margin: 0;
  padding: 0;
}
.home .p-header-content .p-header-content__inner {
  width: 100%;
  position: static;
  margin-left: 0;
  margin-right: 0;
  padding-bottom: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.home .p-header-content .p-header-content__inner > * {
  opacity: 1;
}
.home .p-header-content .p-header-content__button {
  margin: 0;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.home .p-header-content .p-header-content__catch {
  padding: 0 32px;
  font-size: 20px;
  line-height: 1.7;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}
@media (max-width: 991.9px) {
  .home .p-header-content .p-header-content__catch {
    padding: 0 20px;
    font-size: 16px;
  }
}
.home .p-header-content .p-button {
  width: 120px;
  min-height: 120px;
  padding: 0 10px;
  font-size: 14px;
  min-width: initial;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-line-pack: center;
      align-content: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media (max-width: 991.9px) {
  .home .p-header-content .p-button {
    width: 80px;
    font-size: 12px;
    min-height: 80px;
  }
}
.home .p-cb__item-headline {
  font-size: 26px;
  color: #000000;
  margin-bottom: 0;
  font-family: "Segoe UI", Verdana, "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}
.home #cb_1 .p-cb__item-subheadline {
  color: #000000;
  font-size: 14px;
  font-weight: normal;
}
@media (min-width: 992px) {
  .home #cb_1 .p-cb__item-headline {
    font-size: 36px;
  }
  .home #cb_1 .p-cb__item-subheadline {
    font-size: 16px;
    margin-top: 10px;
  }
}
.home #cb_2 + .p-cb__item {
  padding-top: 0.625rem;
}
@media (min-width: 992px) {
  .home #cb_2 + .p-cb__item {
    margin-top: -40px;
  }
}
.home .features_item_wrap {
  margin-left: auto !important;
  margin-right: auto !important;
}
.home .p-cb-blocks__catch {
  font-size: 24px;
}
.home #cb_4 .p-cb-blocks {
  height: auto !important;
}
.home #cb_4 .p-cb-blocks__item {
  width: 100% !important;
  position: relative !important;
  height: auto !important;
  overflow: initial !important;
  top: auto !important;
  left: auto !important;
}
.home #cb_4 .p-cb-blocks__item a {
  position: relative;
}
.home #cb_4 .p-cb-blocks__item .p-cb-blocks__info {
  padding: 20px 15px 20px 20px;
}
.home #cb_4 .p-cb-blocks__item .p-hover-effect__image {
  padding-top: 45.4545454545% !important;
}
@media (max-width: 599px) {
  .home #cb_4 .p-cb-blocks__item + .p-cb-blocks__item {
    margin-top: 10px;
  }
}
@media (min-width: 600px) {
  .home #cb_4 .p-cb-blocks {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .home #cb_4 .p-cb-blocks__item {
    width: 49.5495495495% !important;
  }
  .home #cb_4 .p-cb-blocks__item .p-hover-effect__image {
    padding-top: 49.0909090909% !important;
  }
  .home #cb_4 .p-cb-blocks__item:nth-child(n+3) {
    width: 32.6126126126% !important;
    margin-top: 11px;
  }
  .home #cb_4 .p-cb-blocks__item:nth-child(n+3) .p-hover-effect__image {
    padding-top: 74.5856353591% !important;
  }
}
@media (min-width: 992px) {
  .home #cb_4 .p-cb-blocks__info {
    padding: 25px 20px 25px 25px;
  }
  .home #cb_4 .p-cb-blocks__catch {
    font-size: 30px;
  }
}
@media (max-width: 767.9px) {
  .home .p-cb__item--8blocks .p-cb__item-content {
    height: auto !important;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 0 -8px !important;
  }
  .home .p-cb__item--8blocks .p-cb-blocks__item {
    width: calc(50% - 16px) !important;
    height: 43.375vw !important;
    margin: 0 8px 16px;
    position: static !important;
  }
  .home .p-cb__item--8blocks .p-cb-blocks__item a {
    position: relative;
    display: block;
  }
  .home .p-cb__item--8blocks .p-cb-blocks__item a .p-cb-blocks__info {
    margin-top: auto;
    top: auto;
    bottom: 0;
  }
  .home .p-cb__item--8blocks .p-cb-blocks__item a .p-cb-blocks__info .p-cb-blocks__catch {
    font-size: 18px;
  }
  .home .p-cb__item--postlist1 .p-archive__item .p-archive__item-thumbnail {
    padding-top: 100% !important;
  }
}
@media (max-width: 767.9px) and (max-width: 599px) {
  .home .p-cb__item--postlist1 .p-cb__item-content {
    margin-left: -8px;
    margin-right: -8px;
  }
  .home .p-cb__item--postlist1 .p-archive__item {
    width: calc(50% - 16px);
    margin: 0 8px 16px;
  }
  .home .p-cb__item--postlist1 .p-archive__item:nth-child(2) {
    margin-top: 0;
  }
  .home .p-cb__item--postlist1 .p-archive__item .p-archive__item-info {
    padding: 10px 12px;
  }
  .home .p-cb__item--postlist1 .p-archive__item .p-archive__item-info .p-archive__item-meta {
    margin-bottom: 0;
  }
  .home .p-cb__item--postlist1 .p-archive__item .p-archive__item-info .p-archive__item-title {
    line-height: 1.5;
  }
}

.p-highlight-category .p-article__soldout {
  background: #367199;
}

@media (min-width: 992px) {
  .p-page-header__image .p-page-header__overlay {
    min-height: 300px;
  }
}

.p-breadcrumb {
  padding: 10px 0 11px;
  background: #efefef;
  border-bottom: none;
}
.p-breadcrumb .p-breadcrumb__inner {
  color: #000;
}
@media (min-width: 992px) {
  .p-breadcrumb {
    padding: 18px 0 20px;
  }
}

.page_title {
  font-size: 20px;
  text-align: center;
  font-weight: 600;
}
@media (min-width: 992px) {
  .page_title {
    font-size: 32px;
    margin-top: 30px;
  }
}

.p-page-header__title {
  font-family: "Segoe UI", Verdana, "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif !important;
}

.p-page-header__subtitle {
  font-weight: 600;
  letter-spacing: 0.06em;
}

.woocommerce-page .p-page-header__image02 {
  margin-top: 0;
}
.woocommerce-page .out-of-stock {
  color: #C52D22;
}

.search_wrap {
  background: #9CBDCE;
  padding: 2.625rem 1.25rem;
}
.search_wrap .search_in {
  width: 88.888%;
  max-width: 51.875rem;
  margin: 0 auto;
}
.search_wrap .search_in form {
  width: 100%;
}
.search_wrap .search_in form > div {
  width: 100%;
  height: 3.4375rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.search_wrap .search_in form > div input {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: block;
}
.search_wrap .search_in form > div input:focus {
  outline: 0;
}
.search_wrap .search_in form > div input[type=text] {
  -webkit-box-flex: 2;
      -ms-flex: 2;
          flex: 2;
  border: 1px solid #050A55;
  border-right: none;
  padding: 0.12em 1.5625rem 0;
  font-size: 1.125rem;
}
.search_wrap .search_in form > div input[type=text]::-webkit-input-placeholder {
  color: #909090;
}
.search_wrap .search_in form > div input[type=text]::-moz-placeholder {
  color: #909090;
}
.search_wrap .search_in form > div input[type=text]:-ms-input-placeholder {
  color: #909090;
}
.search_wrap .search_in form > div input[type=text]::-ms-input-placeholder {
  color: #909090;
}
.search_wrap .search_in form > div input[type=text]::placeholder {
  color: #909090;
}
.search_wrap .search_in form > div input[type=text]:focus {
  outline: none;
}
.search_wrap .search_in form > div .submit {
  position: relative;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
.search_wrap .search_in form > div .submit::before {
  content: "\e915";
  font-family: "design_plus";
  color: #ffffff;
  position: absolute;
  top: 50%;
  left: calc(50% - 1.5em);
  font-size: 24px;
  margin-top: -0.5em;
}
.search_wrap .search_in form > div .submit:hover {
  opacity: 0.7;
}
.search_wrap .search_in form > div input[type=submit] {
  width: 7.5rem;
  height: 100%;
  color: #ffffff;
  font-size: 1.125rem;
  font-weight: bold;
  padding-left: 3.5rem;
  text-align: left;
  border: none;
  background: #050A55;
  background-size: 1.375rem;
  cursor: pointer;
}
@media (max-width: 991.9px) {
  .search_wrap {
    padding: 0.9375rem 1.25rem 0.9375rem;
  }
  .search_wrap .search_in form > div {
    height: 2.25rem;
  }
  .search_wrap .search_in form > div input[type=text] {
    padding: 0.12em 1.25rem 0;
    font-size: 1rem;
  }
  .search_wrap .search_in form > div .submit::before {
    font-size: 1.25rem;
    left: calc(50% - 1.33em);
  }
  .search_wrap .search_in form > div input[type=submit] {
    width: 5.3125rem;
    font-size: 0.875rem;
    padding-top: 0.22em;
    padding-left: 2.5rem;
  }
  .search_wrap + .post_contents {
    margin-top: 1.3125rem;
    margin-bottom: 3.875rem;
  }
  .search_wrap + .post_contents .inbox {
    padding: 0 1.25rem;
  }
}
@media (max-width: 767.9px) {
  .search_wrap .search_in {
    width: 100%;
  }
}

.faq_contents {
  width: 88.888%;
  max-width: 69.375rem;
  margin: 2.75rem auto 3.75rem;
}
@media (min-width: 992px) {
  .faq_contents {
    margin: 2.75rem auto 7.75rem;
  }
}

.cat_search .cat_list {
  margin: 0 -5px 3.75rem 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.cat_search .cat_list li {
  width: 16.666%;
  margin-left: -1px;
}
@media (min-width: 992px) {
  .cat_search .cat_list li:nth-child(n+7) {
    margin-top: -1px;
  }
}
.cat_search .cat_list li a {
  width: 100%;
  height: 3.75rem;
  position: relative;
  overflow: hidden;
  z-index: 5;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #DBDBDB;
  background: #ffffff;
  -webkit-transition: background-color 0.3s, color 0.3s;
  transition: background-color 0.3s, color 0.3s;
}
.cat_search .cat_list li a span {
  position: relative;
  z-index: 5;
  font-size: 0.8125rem;
  letter-spacing: 0.01em;
}
@media (min-width: 600px) {
  .cat_search .cat_list li.current-cat a, .cat_search .cat_list li a:hover {
    color: #ffffff;
    background: #050A55;
    opacity: 1;
  }
}
@media (max-width: 991.9px) {
  .cat_search .cat_list {
    margin: 0 0 1.5625rem;
  }
  .cat_search .cat_list li {
    width: 33.3%;
  }
  .cat_search .cat_list li:nth-child(n+4) {
    margin-top: -1px;
  }
  .cat_search .cat_list li a {
    height: 2.125rem;
  }
  .cat_search .cat_list li a span {
    font-size: 0.6875rem;
    letter-spacing: 0;
  }
}

.faq_post_list {
  border: solid #DBDBDB;
  border-width: 1px 0;
  margin-bottom: 2.5rem;
}
.faq_post_list li {
  padding: 1.0625rem 0.9375rem 1.0625rem;
  position: relative;
}
.faq_post_list li.search_item {
  padding: 1.375rem 0.9375rem 1.375rem;
}
.faq_post_list li .post_title {
  color: #333333;
  text-align: left;
  max-width: 100%;
}
.faq_post_list li > a,
.faq_post_list li .faq_title_wrap > a {
  width: 100%;
  color: #464646;
  font-size: 0.875rem;
  font-weight: bold;
  letter-spacing: 0.015em;
  line-height: 1.5454545455;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.faq_post_list li > a span,
.faq_post_list li .faq_title_wrap > a span {
  padding-right: 1.5rem;
  display: inline-block;
  position: relative;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}
@media (min-width: 600px) {
  .faq_post_list li > a span,
  .faq_post_list li .faq_title_wrap > a span {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
}
.faq_post_list li > a::after,
.faq_post_list li .faq_title_wrap > a::after {
  font-size: 22px;
  position: relative;
  bottom: 1px;
  line-height: 1;
  color: #050A55;
  content: "\f105";
  font-family: "design_plus";
}
.faq_post_list li > a:hover span,
.faq_post_list li .faq_title_wrap > a:hover span {
  color: #999;
}
.faq_post_list li + li {
  border-top: 1px solid #DBDBDB;
}
@media (min-width: 992px) {
  .faq_post_list {
    margin-bottom: 4.375rem;
  }
  .faq_post_list li {
    padding: 1.4375rem 1.875rem 1.4375rem;
  }
  .faq_post_list li.search_item {
    padding: 2rem 1.875rem 2.25rem;
  }
  .faq_post_list li > a .faq_title_wrap > a {
    font-size: 0.9375rem;
  }
  .faq_post_list li > a .faq_title_wrap > a span {
    padding-right: 1.875rem;
  }
  .faq_post_list li > a .faq_title_wrap > a::after {
    font-size: 24px;
  }
}
.faq_post_list .faq_item_info {
  margin-bottom: 0.8125rem;
  position: relative;
}
@media (max-width: 767.9px) {
  .faq_post_list .faq_item_info time {
    font-size: 11px;
    position: absolute;
    right: 0;
    bottom: 0.12em;
  }
}
@media (min-width: 768px) {
  .faq_post_list .faq_item_info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-bottom: 1.5625rem;
  }
  .faq_post_list .faq_item_info .faq_title_wrap {
    width: calc(100% - 10rem);
    padding-right: 2rem;
    -webkit-box-flex: 2;
        -ms-flex: 2;
            flex: 2;
  }
  .faq_post_list .faq_item_info .faq_title_wrap a span {
    font-weight: bold;
  }
  .faq_post_list .faq_item_info time {
    width: 8.6875rem;
    text-align: right;
    margin-top: 0.25rem;
    color: #707070;
    font-size: 13px;
  }
}

.search_tt {
  margin: 0 0 1.5625rem;
  padding: 0 0.9375rem;
  font-size: 0.9375rem;
  font-weight: bold;
}
.search_tt span {
  font-weight: bold;
}
@media (min-width: 992px) {
  .search_tt {
    margin: 0 0 2.0625rem;
    padding: 0 1.875rem;
    font-size: 1rem;
  }
}

.faq_cat_dl {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 1rem;
  font-size: 0.8125rem;
  color: #050A55;
}
.faq_cat_dl dt::after {
  content: "：";
}
.faq_cat_dl dd {
  width: calc(100% - 5.1em);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.faq_cat_dl dd a {
  width: auto;
  color: #050A55;
  margin-right: 1em;
}
@media (max-width: 767.9px) {
  .faq_cat_dl {
    max-width: calc(100% - 120px);
  }
}

.faq_ex_text {
  font-size: 0.9375rem;
  line-height: 2.1333333333;
  letter-spacing: 0.015em;
}
@media (max-width: 599px) {
  .faq_ex_text {
    font-size: 0.75rem;
    line-height: 1.6363636364;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
}

.faq_contents ~ .cat_search {
  margin-top: 3.75rem;
  padding: 2.25rem 0 2.5rem;
  background: #EFEFEF;
}
.faq_contents ~ .cat_search .cat_search_ttl {
  text-align: center;
  font-size: 1.125rem;
  margin-bottom: 1.25rem;
}
.faq_contents ~ .cat_search .cat_search_ttl span {
  font-weight: bold;
}
.faq_contents ~ .cat_search .cat_search_inner {
  width: 88.888%;
  max-width: 69.375rem;
  margin: 0 auto;
}
.faq_contents ~ .cat_search .cat_list {
  margin-bottom: 0;
}
@media (min-width: 992px) {
  .faq_contents ~ .cat_search {
    margin-top: 6.75rem;
    padding: 4.75rem 0 5rem;
  }
  .faq_contents ~ .cat_search .cat_search_ttl {
    font-size: 1.375rem;
    margin-bottom: 2.5rem;
  }
}

.faq_connection_wrap {
  border-top: 1px solid #DBDBDB;
  padding: 2.75rem 2rem 0;
}
.faq_connection_wrap .connection_tt {
  font-size: 1.125rem;
  margin-bottom: 2.0625rem;
  font-weight: bold;
}
.faq_connection_wrap .connection_list li {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.faq_connection_wrap .connection_list li + li {
  margin-top: 1.25rem;
}
.faq_connection_wrap .connection_list li a {
  padding: 0 0 0 0.1875rem;
  font-weight: normal;
  color: #464646;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.faq_connection_wrap .connection_list li a::before {
  font-size: 1.5rem;
  margin-right: 0.875rem;
  line-height: 1;
  color: #050A55;
  content: "\f105";
  font-family: "design_plus";
}
@media (min-width: 600px) {
  .faq_connection_wrap .connection_list li a span {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
}
@media (max-width: 599px) {
  .faq_connection_wrap {
    padding: 1.875rem 0.9375rem 0;
  }
  .faq_connection_wrap .connection_tt {
    font-size: 0.9375rem;
    margin-bottom: 1.25rem;
  }
  .faq_connection_wrap .connection_list li {
    position: relative;
  }
  .faq_connection_wrap .connection_list li + li {
    margin-top: 0.875rem;
  }
  .faq_connection_wrap .connection_list li a {
    line-height: 1.2307692308;
  }
}

.faq_info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 1.3125rem;
  padding: 0 0.9375rem 0;
}
.faq_info .faq_cat {
  font-size: 0.875rem;
  color: #050A55;
  font-weight: bold;
  margin-right: 1rem;
}
.faq_info .faq_cat + .faq_cat {
  margin-left: -0.375rem;
}
.faq_info time {
  font-size: 0.8125rem;
}
@media (min-width: 992px) {
  .faq_info {
    padding: 0.5rem 1.875rem 0;
  }
}

.faq_title {
  margin-bottom: 1.0625rem;
  padding: 0 0.9375rem;
  font-size: 1.125rem;
  line-height: 1.6363636364;
  font-weight: bold;
}
@media (min-width: 992px) {
  .faq_title {
    padding: 0 1.875rem;
    font-size: 1.375rem;
    margin-bottom: 1.6875rem;
  }
}

.faq_edit {
  border-top: 1px solid #DBDBDB;
  padding: 1.5625rem 0.9375rem 1.875rem;
  font-size: 0.875rem;
}
@media (min-width: 992px) {
  .faq_edit {
    padding: 2rem 1.875rem 2.25rem;
    font-size: 0.9375rem;
  }
}

.woocommerce-MyAccount-content label:not([for]) {
  font-weight: bold;
}
.woocommerce-MyAccount-content h3 {
  font-size: 100%;
  margin-bottom: 0;
  line-height: 2.4;
}

.thwcfe-input-field-wrapper .optional {
  display: none;
}

.p-wc input[type=text],
.p-wc input[type=number],
.p-wc input[type=email],
.p-wc input[type=url],
.p-wc input[type=tel],
.p-wc input[type=password],
.p-wc input[type=date] {
  height: 50px !important;
  background: #ffffff !important;
  color: #444 !important;
}

.p-wc input[type=date] {
  padding: 0 0.625rem 0 1.25rem;
  border: 1px solid #ddd;
}

.woocommerce form .form-row .select2-container {
  width: 100% !important;
}

.edit-account label {
  display: block;
}

.woocommerce-form-row-profile-image {
  clear: both;
}

.variations_form.cart .woocommerce-variation.single_variation {
  margin-left: 0 !important;
}

.wp-block-heading {
  font-weight: 600;
}

.styled_h2,
.styled_h3,
.styled_h4,
.styled_h5 {
  font-weight: bold;
}
.styled_h2 span,
.styled_h3 span,
.styled_h4 span,
.styled_h5 span {
  font-weight: bold;
}

.p-body h2, .p-body h3, .p-body h4, .p-body h5 {
  font-weight: bold;
}
.p-body.p-entry-product__editor a:not([class]), .wc-tabs-wrapper .p-body a:not([class]) {
  color: #0080C9 !important;
  font-weight: bold;
  border-bottom: 1px dashed #0080C9;
}
.p-body hr {
  height: 0;
  margin-top: 0;
  margin-bottom: 2em;
  border-top: 1px dashed #BCBCBC;
}
.p-body .p_step_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  margin-top: 20px;
  margin-left: 0;
  margin-right: -35px;
}
.p-body .p_step_list li {
  width: calc(25% - 35.1px);
  margin-right: 35px;
  margin-bottom: 10px;
  padding: 20px 15px;
  background: #3E4272;
  color: #ffffff;
  text-align: center;
  font-size: 14px;
  line-height: 1.7142857143;
  font-weight: bold;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-line-pack: center;
      align-content: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.p-body .p_step_list li::after {
  content: "";
  width: 0;
  height: 0;
  border: solid transparent;
  border-left-color: #909090;
  border-width: 10px 15px;
  position: absolute;
  left: calc(100% + 10px);
  top: 50%;
  margin-top: -7.5px;
}
@media (min-width: 992px) {
  .p-body .p_step_list li {
    width: calc(25% - 35.1px);
    margin-right: 35px;
  }
  .p-body .p_step_list li:nth-child(4n)::after, .p-body .p_step_list li:last-child::after {
    display: none;
  }
}
@media (min-width: 768px) and (max-width: 1279px) {
  .p-body .p_step_list {
    /*
    li {
    	width: calc(50% - 35.1px);
    	margin-right: 35px;
    	&:nth-child(even) {
    		&::after {
    			display: none;
    		}
    	}
    }
     */
  }
  .p-body .p_step_list li:nth-child(4n)::after, .p-body .p_step_list li:last-child::after {
    display: none;
  }
}
@media (max-width: 1279px) {
  .p-body .p_step_list li {
    padding: 15px 10px;
  }
}
@media (max-width: 767.9px) {
  .p-body .p_step_list {
    margin-right: 0;
  }
  .p-body .p_step_list li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 35px;
  }
  .p-body .p_step_list li::after {
    margin-left: -0.75rem;
    left: 50%;
    top: calc(100% + 21px);
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
  }
  .p-body .p_step_list li:last-child::after {
    display: none;
  }
}

table.wc-tab__spec-table tbody > tr td {
  border-color: #DBDBDB;
}
table.wc-tab__spec-table tbody > tr th {
  background: #E8E8E8 !important;
  color: #000000;
}
@media (max-width: 767.9px) {
  table.wc-tab__spec-table {
    width: 100%;
    display: block;
    border: solid #DBDBDB;
    border-width: 1px 0;
  }
  table.wc-tab__spec-table tbody, table.wc-tab__spec-table tr, table.wc-tab__spec-table td, table.wc-tab__spec-table th {
    display: block;
  }
  table.wc-tab__spec-table th {
    border: none;
  }
  table.wc-tab__spec-table td {
    border-width: 0 1px;
  }
}

.features_item_wrap {
  width: 88.8888%;
  margin-top: 40px;
  margin-left: auto;
  margin-right: auto;
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.features_item_wrap li {
  list-style: none;
}
@media (min-width: 992px) {
  .features_item_wrap {
    max-width: 1110px;
    margin-top: 60px;
  }
}
@media (max-width: 599px) {
  .features_item_wrap {
    width: 100%;
  }
}
.features_item_wrap .features_item {
  width: 50%;
  position: relative;
}
@media (min-width: 992px) {
  .features_item_wrap .features_item {
    width: 33.33%;
  }
}
.features_item_wrap .features_item a {
  color: #ffffff;
}
.features_item_wrap .features_item a:hover {
  color: #ffffff;
}
.features_item_wrap .features_item a:hover img {
  -webkit-transform: scale(1);
          transform: scale(1);
}
.features_item_wrap .features_item figure {
  overflow: hidden;
  position: relative;
  display: block;
}
.features_item_wrap .features_item figure::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background: #dddddd;
  mix-blend-mode: multiply;
  z-index: 2;
}
.features_item_wrap .features_item figure img {
  -webkit-transform: scale(1.15);
          transform: scale(1.15);
  -webkit-transition-duration: 0.5s;
          transition-duration: 0.5s;
  -webkit-transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
          transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
  aspect-ratio: 1/1;
}
.features_item_wrap .features_inner {
  width: 100%;
  height: 100%;
  padding-bottom: 5px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media (min-width: 600px) {
  .features_item_wrap .features_inner {
    padding-bottom: 32px;
  }
}
.features_item_wrap .features_cat {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.features_item_wrap .features_cat span {
  width: 80px;
  height: 80px;
  padding: 5px;
  background: #000;
  font-size: 12px;
  line-height: 1.34;
  text-align: center;
  font-weight: 500;
  color: #ffffff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media (max-width: 599px) {
  .features_item_wrap .features_cat span {
    width: 60px;
    height: 60px;
    padding: 0 5px;
    font-size: 10px;
    line-height: 1.5;
  }
}
.features_item_wrap .features_title,
.features_item_wrap .features_date {
  padding: 0 1.25rem;
  font-weight: 600;
}
@media (min-width: 992px) {
  .features_item_wrap .features_title,
  .features_item_wrap .features_date {
    padding: 0 9.1644204852%;
  }
}
@media (max-width: 599px) {
  .features_item_wrap .features_title,
  .features_item_wrap .features_date {
    padding: 0 0.9375rem;
  }
}
.features_item_wrap .features_title {
  margin-top: auto;
  font-size: 14px;
  margin-bottom: 0.75em;
  letter-spacing: 0.01em;
  line-height: 1.875;
}
@media (min-width: 992px) {
  .features_item_wrap .features_title {
    font-size: 16px;
  }
}
@media (max-width: 599px) {
  .features_item_wrap .features_title {
    line-height: 1.6;
  }
}
.features_item_wrap .features_date {
  font-size: 12px;
  line-height: 1.25;
}
@media (min-width: 992px) {
  .features_item_wrap .features_date {
    font-size: 14px;
  }
}
@media (max-width: 599px) {
  .features_item_wrap .features_date {
    display: none;
  }
}
.features_item_wrap.features_category_item_wrap {
  width: 100vw !important;
  max-width: 100vw;
  margin-top: 128px;
  margin-bottom: -40px;
  padding: 0;
  background: #dddddd;
  left: 50%;
  margin-left: -50vw;
  position: relative;
}
.features_item_wrap.features_category_item_wrap .features_item {
  width: 25%;
  position: relative;
}
.features_item_wrap.features_category_item_wrap .features_item figure img {
  aspect-ratio: 363/230;
}
.features_item_wrap.features_category_item_wrap .features_inner {
  padding-bottom: 20px;
}
@media (min-width: 992px) {
  .features_item_wrap.features_category_item_wrap {
    margin-bottom: -150px;
  }
}
@media (max-width: 1299.9px) {
  .features_item_wrap.features_category_item_wrap .features_item .features_inner {
    padding-bottom: 15px;
  }
  .features_item_wrap.features_category_item_wrap .features_item .features_cat {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 5;
  }
  .features_item_wrap.features_category_item_wrap .features_item .features_title {
    min-height: 3.2em;
    line-height: 1.6;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    font-size: 14px;
    margin-bottom: 4px;
  }
  .features_item_wrap.features_category_item_wrap .features_item .features_date {
    font-size: 12px;
  }
}
@media (max-width: 991.9px) {
  .features_item_wrap.features_category_item_wrap .features_date {
    display: none;
  }
}
@media (max-width: 767.9px) {
  .features_item_wrap.features_category_item_wrap {
    margin-top: 50px;
  }
  .features_item_wrap.features_category_item_wrap .features_item {
    width: 50%;
  }
  .features_item_wrap.features_category_item_wrap .features_item:nth-child(even)::before {
    border-left: 1px solid #ddd;
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    top: 0;
  }
  .features_item_wrap.features_category_item_wrap .features_item .features_inner {
    height: auto;
    background: #fff;
    position: static;
    color: #000;
  }
  .features_item_wrap.features_category_item_wrap .features_item .features_title {
    margin-top: 0;
  }
  .features_item_wrap.features_category_item_wrap .features_item .features_date {
    position: relative;
    z-index: 5;
    color: #ffffff;
    display: inline-block;
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
    margin-bottom: 2.5em;
    margin-top: -2.75em;
  }
}
@media (max-width: 767.9px) {
  .features_item_wrap.features_category_item_wrap .features_item .features_cat span {
    width: 60px;
    height: 60px;
    padding: 0 5px;
    font-size: 10px;
    line-height: 1.5;
  }
}
body.archive .features_item_wrap {
  width: 100%;
}
@media (max-width: 599px) {
  body.archive .features_item_wrap {
    width: 100vw;
    max-width: 100vw;
    position: relative;
    left: 50%;
    margin-left: -50vw;
  }
}

.camp {
  background: #5DC4C0 !important;
}

.day-camp {
  background: #EA5A79 !important;
}

.school {
  background: #6BA624 !important;
}

.event {
  background: #783E10 !important;
}

.team {
  background: #E27321 !important;
}

.facility {
  background: #C6B91B !important;
}

.study-abroad {
  background: #D09323 !important;
}

.tour-abroad {
  background: #315B82 !important;
}

.other {
  background: #777777 !important;
}

.p-entry-features .p-entry__inner {
  padding-top: 0;
}
@media (min-width: 992px) {
  .p-entry-features .p-entry__header--cat,
  .p-entry-features .p-entry__thumbnail {
    margin-left: -38px;
    margin-right: -38px;
  }
}
.p-entry-features .p-entry__header--cat {
  height: 80px;
  margin-bottom: 84px;
  padding-top: 40px;
  background: #000000;
  color: #ffffff;
}
.p-entry-features .p-entry__header--cat span {
  width: 80px;
  height: 80px;
  padding: 0 4px;
  line-height: 1.6;
  text-align: center;
  font-size: 11px;
  letter-spacing: 0;
  font-weight: 500;
  margin-left: auto;
  margin-right: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.p-entry-features .p-entry__header--cat span.features_cat02 {
  padding: 0 13px;
}
@media (min-width: 992px) {
  .p-entry-features .p-entry__header--cat {
    height: 120px;
    margin-bottom: 120px;
    padding-top: 48px;
  }
  .p-entry-features .p-entry__header--cat span {
    width: 146px;
    height: 146px;
    font-size: 13px;
  }
}
@media (max-width: 991.9px) {
  .p-entry-features .p-entry__header--cat {
    width: 100vw;
    left: 50%;
    margin-left: -50vw;
    position: relative;
  }
}
@media (max-width: 767.9px) {
  .p-entry-features .p-entry__header--cat {
    height: 60px;
    margin-bottom: 44px;
    padding-top: 20px;
  }
  .p-entry-features .p-entry__header--cat span {
    width: 64px;
    height: 64px;
    font-size: 10px;
  }
  .p-entry-features .p-entry__header--cat span.features_cat02 {
    padding: 0 8px;
  }
}
.p-entry-features .p-entry-features__title {
  text-align: center;
  font-size: 18px;
  margin-bottom: 15px;
}
@media (min-width: 992px) {
  .p-entry-features .p-entry-features__title {
    font-size: 32px;
  }
}
.p-entry-features .p-article__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.p-entry-features .p-article__meta > *::after {
  font-size: 13px;
}
.p-entry-features .p-entry__meta--date {
  font-size: 13px;
}
.p-entry-features .p-entry__meta--cat {
  font-size: 11px;
}
@media (min-width: 992px) {
  .p-entry-features .p-article__meta > *::after {
    font-size: 15px;
  }
  .p-entry-features .p-entry__meta--date {
    font-size: 15px;
  }
  .p-entry-features .p-entry__meta--cat {
    font-size: 13px;
  }
}

@media (max-width: 991.9px) {
  .single-features .l-main__inner {
    padding-top: 20px;
  }
}
.recommend_program_wrap {
  margin: 40px 0 0;
  padding-top: 40px;
  border-top: 1px solid #DBDBDB;
}
.recommend_program_wrap .page_title {
  margin-bottom: 30px;
}
.recommend_program_wrap .p-archive03 {
  margin-right: -6.25%;
}
.recommend_program_wrap .p-archive03__item {
  width: 43.75% !important;
}
@media (min-width: 768px) {
  .recommend_program_wrap {
    margin: 80px 0 -20px;
    padding-top: 60px;
  }
  .recommend_program_wrap .page_title {
    margin-bottom: 60px;
  }
  .recommend_program_wrap .p-archive03 {
    margin-right: -3.5%;
  }
  .recommend_program_wrap .p-archive03__item {
    width: 30% !important;
    margin-right: 3.33%;
  }
}

.p-entry-product__title {
  font-weight: bold;
  color: #000000;
}

.p-entry-product__mainimage img {
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 715/400;
}

.p-entry-product__subimages-inner {
  position: relative;
  /*
  @include mq(pc) {
  	flex-wrap: wrap;
  	//margin-right: -1.48%;
  	.p-entry-product__subimage {
  		&:nth-child(5n) {
  			margin-right: 0 !important;
  		}
  	}
  }

   */
}
.p-entry-product__subimages-inner::after {
  content: "\ea40";
  font-family: "design_plus";
  display: block;
  position: absolute;
  top: 50%;
  margin-top: -0.5em;
  right: 0.5em;
  z-index: 5;
  color: #ffffff;
  font-size: 30px;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  -webkit-animation: slide_animation 1.5s infinite ease-in-out;
          animation: slide_animation 1.5s infinite ease-in-out;
  pointer-events: none;
}
.p-entry-product__subimages-inner:not(.scroll_active)::after {
  opacity: 0 !important;
}
.woocommerce-variation-price .price del .woocommerce-Price-amount.amount {
  font-size: 13px;
  color: #999999;
  text-decoration: none;
  position: relative;
}
.woocommerce-variation-price .price del::after {
  content: "";
  width: 100%;
  height: 1px;
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
}

.woocommerce-Tabs-panel table:not([class]) th {
  background: #E8E8E8 !important;
  color: #000000;
}

@-webkit-keyframes slide_animation {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  40% {
    opacity: 1;
  }
  100% {
    -webkit-transform: translateX(-30px);
            transform: translateX(-30px);
    opacity: 0;
  }
}

@keyframes slide_animation {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  40% {
    opacity: 1;
  }
  100% {
    -webkit-transform: translateX(-30px);
            transform: translateX(-30px);
    opacity: 0;
  }
}
.p-entry-product__subimage {
  /*
  .p-entry-product__subimage-inner {
  	padding-top: (400%/7.15);
  }
  @include mq(pc) {
  	margin-right: 1.5% !important;
  	flex: 0 0 20-1.2% !important;
  }
  @include mq(pcmax) {
  	flex: 0 0 16.6% !important;
  }
  @include mq(spmax) {
  	flex: 0 0 25% !important;
  }

   */
}

.p-entry-product__mainimage-zoom-icon {
  display: none !important;
}

/*
.p-entry-product__cart-quantity,
.woocommerce-cart-form__contents .product-quantity {
	display: none !important;
}
 */
.p-entry-product__editor {
  margin: 40px 0 32px;
}
@media (min-width: 992px) {
  .p-entry-product__editor {
    margin: 60px 0 72px;
  }
}

.products_faq_dl {
  padding: 15px 20px;
  background: #ffffff;
  border: 1px solid #DBDBDB;
  margin-bottom: 12px !important;
}
.products_faq_dl + *:not(dl) {
  margin-top: 24px;
}
.products_faq_dl .products_faq_q,
.products_faq_dl .products_faq_a {
  padding-left: 27px;
  position: relative;
  font-size: 14px;
  line-height: 1.8571428571;
}
.products_faq_dl .products_faq_q::before,
.products_faq_dl .products_faq_a::before {
  font-size: 18px;
  margin-left: 0;
  font-weight: bold;
  position: absolute;
  top: 0;
  left: 0;
  line-height: 1;
}
.products_faq_dl .products_faq_q {
  margin-bottom: 10px;
  font-weight: bold;
}
.products_faq_dl .products_faq_q::before {
  padding-top: 0.2em;
  color: #29B5AB;
  content: "Q";
}
.products_faq_dl .products_faq_a {
  margin-bottom: 0;
}
.products_faq_dl .products_faq_a::before {
  padding-top: 0.15em;
  color: #DD4A3E;
  content: "A";
}
.products_faq_dl .products_faq_a > *:last-child {
  margin-bottom: 0;
}
@media (min-width: 992px) {
  .products_faq_dl {
    margin-bottom: 24px !important;
    padding: 30px 40px;
  }
  .products_faq_dl + *:not(dl) {
    margin-top: 40px;
  }
  .products_faq_dl .products_faq_q,
  .products_faq_dl .products_faq_a {
    line-height: 2.1428571429;
  }
  .products_faq_dl .products_faq_a::before {
    padding-top: 0.3em;
  }
}

.program_tel_box {
  margin-top: 60px;
  background: #000000;
  color: #ffffff;
  border: 10px solid #757575;
  padding: 15px 14px 14px 17px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.program_tel_box dt {
  width: 220px;
  height: 100px;
  margin-right: 28px;
  background: #757575;
  color: #ffffff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-line-pack: center;
      align-content: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.program_tel_box dt span {
  font-size: 20px;
  line-height: 1.5;
  font-weight: bold;
  display: block;
}
.program_tel_box dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.program_tel_box dd p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-line-pack: center;
      align-content: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.program_tel_box dd a {
  color: #ffffff;
}
.program_tel_box dd .tel_text {
  -webkit-box-flex: 2;
      -ms-flex: 2;
          flex: 2;
  border: solid #ffffff;
  border-width: 1px 0;
  font-size: 18px;
  line-height: 1.7777777778;
}
.program_tel_box dd .tel_text span {
  font-weight: bold;
}
.program_tel_box dd .tel_contact {
  width: 510px;
  padding-right: 12px;
  margin-left: 40px;
  color: #ffffff;
}
.program_tel_box dd .tel_contact span, .program_tel_box dd .tel_contact small {
  line-height: 1;
  display: block;
  text-align: center;
}
.program_tel_box dd .tel_contact .tel_no span {
  font-size: 54px;
  font-weight: bold;
  position: relative;
  padding-left: 48px;
  background: url("../img/i_tel.svg") 0 7px no-repeat;
  background-size: 37px auto;
}
.program_tel_box dd .tel_contact .tel_hour {
  margin-top: 10px;
  font-size: 16px;
  display: block;
}
@media (max-width: 1299.9px) {
  .program_tel_box dt {
    width: 200px;
  }
  .program_tel_box dt span {
    font-size: 18px;
  }
  .program_tel_box dd .tel_text {
    font-size: 16px;
  }
  .program_tel_box dd .tel_contact {
    width: 60%;
  }
  .program_tel_box dd .tel_contact .tel_no span {
    font-size: 48px;
    padding-left: 40px;
    background-position: 0 7px;
    background-size: 30px auto;
  }
  .program_tel_box dd .tel_contact .tel_hour {
    font-size: 14px;
  }
}
@media (max-width: 1119.9px) {
  .program_tel_box {
    border-width: 8px;
  }
  .program_tel_box dt {
    width: 160px;
    height: 80px;
  }
  .program_tel_box dt span {
    font-size: 16px;
  }
  .program_tel_box dd .tel_text {
    font-size: 15px;
  }
  .program_tel_box dd .tel_contact {
    width: 60%;
  }
  .program_tel_box dd .tel_contact .tel_no span {
    font-size: 36px;
    padding-left: 30px;
    background-position: 0 5px;
    background-size: 24px auto;
  }
}
@media (max-width: 991.9px) {
  .program_tel_box {
    border-width: 10px;
    padding: 0;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .program_tel_box dt {
    width: calc(100% + 2px);
    height: 50px;
    margin: -1px;
  }
  .program_tel_box dt span {
    font-size: 20px;
  }
  .program_tel_box dd {
    padding: 26px 6.5420560748%;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .program_tel_box dd .tel_text {
    width: 100%;
    -webkit-box-flex: 1;
        -ms-flex: auto;
            flex: auto;
    margin-bottom: 25px;
    padding: 11px 0;
    font-size: 18px;
  }
  .program_tel_box dd .tel_contact {
    width: 100%;
    margin-left: 0;
    padding-right: 0;
  }
  .program_tel_box dd .tel_contact .tel_no span {
    font-size: 48px;
    padding-left: 42px;
    background-position: 0 5px;
    background-size: 32px auto;
  }
}
@media (max-width: 991.9px) and (max-width: 599px) {
  .program_tel_box dd .tel_contact .tel_no span {
    font-size: 7.6vw;
    padding-left: 7.2vw;
    background-position: 0 0.8vw;
    background-size: 5.2vw auto;
  }
}
@media (max-width: 991.9px) {
  .program_tel_box dd .tel_contact .tel_hour {
    font-size: 16px;
  }
}

.woocommerce form .form-row .woocommerce-input-wrapper {
  position: relative;
}
.woocommerce form .form-row .woocommerce-input-wrapper .description {
  padding: 0.8em 1em;
  position: absolute;
  top: 2em;
  left: 0;
  line-height: 1.4;
  z-index: 100;
}

#customer_details > div {
  width: 100%;
  float: none;
}
#customer_details .col-2 .woocommerce-additional-fields > h3 {
  margin-top: 27px;
  background: #EFEFEF;
  padding: 11px 10px 10px 14px;
  position: relative;
  border-left: 5px solid #001452;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  cursor: pointer;
}
#customer_details .col-2 .woocommerce-additional-fields > h3 small {
  font-size: 15px;
  color: #C52D22;
  margin-left: 34px;
}
#customer_details .col-2 .woocommerce-additional-fields > h3::before, #customer_details .col-2 .woocommerce-additional-fields > h3::after {
  content: "";
  position: absolute;
  display: block;
}
@media (max-width: 991.9px) {
  #customer_details .col-2 .woocommerce-additional-fields > h3 {
    margin-top: 17px;
  }
  #customer_details .col-2 .woocommerce-additional-fields > h3 small {
    width: 100%;
    font-size: 14px;
    margin-top: 5px;
    margin-left: 0;
  }
  #customer_details .col-2 .woocommerce-additional-fields > h3:first-child {
    margin-top: 0;
  }
  #customer_details .col-2 .woocommerce-additional-fields > h3::after {
    width: 46px;
  }
  #customer_details .col-2 .woocommerce-additional-fields > h3::before {
    right: 17px;
    margin-top: -1px;
  }
}
#customer_details #guardian_relationship_field {
  margin-bottom: 30px;
}

@media (max-width: 767.9px) {
  .p-archive {
    margin-left: -8px;
    margin-right: -8px;
  }
  .p-archive__item {
    width: calc(50% - 16px);
    margin: 0 8px 16px;
  }
  .p-archive__item .p-archive__item-thumbnail {
    padding-top: 100%;
  }
  .p-archive__item .p-archive__item-info {
    padding: 10px 12px;
  }
  .p-archive__item .p-archive__item-meta {
    margin-bottom: 0;
  }
  .p-archive__item .p-archive__item-title {
    line-height: 1.5;
  }
}
/* archive desc 231010*/
.l-2columns .l-primary {
  text-align: center;
}
.l-2columns .l-primary .p-archive-desc {
  display: none;
}
.l-2columns .l-primary .p-archive__item {
  text-align: left;
}
@media (max-width: 991.9px) {
  .l-2columns .l-primary .p-archive-desc {
    display: initial;
    font-size: 17.5px !important;
    font-weight: bold;
    letter-spacing: 1px;
    line-height: 3.5;
    top: -20px;
    position: relative;
  }
}

.p-archive03__item-title {
  max-height: 5.4em;
}

@media (max-width: 767.9px) {
  .p-archive03__item-title {
    max-height: 4.5em;
  }
}