@import url(https://fonts.googleapis.com/css2?family=Shippori+Mincho+B1:wght@400;500&family=Zen+Old+Mincho:wght@400;500&display=swap);
@charset "UTF-8";
@keyframes a-FadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes a-FadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes pulsate {
  0% {
    transform: scale(1, 1);
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: scale(4, 4);
    opacity: 0;
  }
}
@keyframes pulsate_open {
  0% {
    transform: translateX(0);
    z-index: 99;
  }
  100% {
    transform: scale(130);
    z-index: 99;
    opacity: 1;
  }
}
@keyframes pulsate_close {
  0% {
    transform: scale(130);
    z-index: 99;
    opacity: 1;
  }
  100% {
    transform: translateX(0);
    z-index: 99;
    opacity: 0;
  }
}
@keyframes menu_open {
  0% {
    transform: translateX(100%);
    z-index: 99;
  }
  100% {
    z-index: 99;
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes menu_close {
  0% {
    transform: translateX(0);
    z-index: 99;
    opacity: 1;
  }
  100% {
    transform: translateX(100%);
    z-index: 99;
    opacity: 0;
  }
}
@keyframes FadeInZoom {
  0% {
    opacity: 0;
    transform: scale(1.1);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes FadeOutZoom {
  0% {
    opacity: 1;
    transform: scale(1);
  }
  100% {
    opacity: 0;
    transform: scale(1.1);
  }
}
@keyframes a-FadeInDown {
  0% {
    opacity: 0;
    transform: translateY(-7rem);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes a-FadeInUp {
  0% {
    opacity: 0;
    transform: translateY(7rem);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes a-FadeInLeft {
  0% {
    opacity: 0;
    transform: translateX(7rem);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes a-FadeInRight {
  0% {
    opacity: 0;
    transform: translateX(-7rem);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes a-FadeInLeft_min {
  0% {
    opacity: 0;
    transform: translateX(4rem);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes a-FadeInRight_min {
  0% {
    opacity: 0;
    transform: translateX(-4rem);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes a-FadeOutLeft {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    transform: translateX(-100%);
  }
}
@keyframes a-FadeOutRight {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    transform: translateX(100%);
  }
}
@keyframes FadeOutRight_big {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    transform: translateX(100vw);
  }
}
@keyframes a-SlideInLeft {
  0% {
    opacity: 1;
    transform: translateX(100%);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes a-SlideInRight {
  0% {
    opacity: 1;
    transform: translateX(-100%);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes a-SlideOutRight {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 1;
    transform: translateX(100%);
  }
}
@keyframes a-RsetTransform {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes fuwafuwa {
  0% {
    opacity: 1;
    transform: translate(0, 0) rotate(-1deg);
  }
  50% {
    transform: translate(0, -1px) rotate(0deg);
  }
  100% {
    transform: translate(0, 0) rotate(1deg);
  }
}
@keyframes video_in {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    width: 100%;
    margin-top: 7rem;
  }
}
@keyframes video_in_tb {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    width: 100%;
    margin-top: 5.5rem;
  }
}
@keyframes video_in_sp {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    width: 100%;
    margin-top: 4rem;
  }
}
@keyframes horizontal {
  0% {
    opacity: 1;
    transform: translateX(-8px);
  }
  100% {
    opacity: 1;
    transform: translateX(0px);
  }
}
@keyframes vertical {
  0% {
    opacity: 1;
    transform: translateY(-15px);
  }
  100% {
    opacity: 1;
    transform: translateY(0px);
  }
}
@keyframes a-BorderBottomSlide {
  0% {
    opacity: 1;
    width: 0;
  }
  100% {
    opacity: 1;
    width: 100%;
  }
}
@keyframes a-SlideImg {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    transform: translateX(100%);
  }
}
@keyframes fadein_to_bottom {
  0% {
    opacity: 0;
    transform: translateY(-100%);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes fadein_page_image {
  0% {
    opacity: 1;
    transform: translateY(-6rem);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes a-TextFade {
  0% {
    text-shadow: 0 0 4em #fff;
    opacity: 0;
  }
  25% {
    text-shadow: 0 0 1.5em #fff;
  }
  75% {
    text-shadow: 0 0 0px #fff;
  }
  100% {
    opacity: 1;
    color: #fff;
  }
}
#wpadminbar {
  position: fixed !important;
}

#main_contents {
  opacity: 1;
}

#content {
  opacity: 1;
}

.widget-area .widget-title {
  font-size: 1.3rem;
  margin-bottom: 0.5rem;
}
.widget-area aside:first-of-type .widget-title {
  margin-top: 0;
}
.widget-area ul {
  margin-bottom: 3rem;
}
.widget-area ul li {
  border-bottom: 1px solid #e2e2e2;
  padding: 0.5rem 0;
}
.widget-area ul li:first-of-type {
  border-top: 1px solid #e2e2e2;
}
.widget-area .widget_categories li {
  padding: 0;
}
.widget-area .widget_categories a {
  display: block;
  color: #4a4a4a;
  padding: 0.5rem 0;
}
.widget-area .widget_categories a:hover {
  background: #e2e2e2;
}

#site-bottom {
  position: relative;
  background: #fff;
  z-index: 6;
}
body.home #site-bottom {
  background: #fff;
}

#site-footer {
  position: relative;
  z-index: 6;
  background: #fff;
}

#site-breadcrumb {
  background: #fff;
}

input[type=radio] {
  vertical-align: text-top;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  position: relative;
  width: 1.1em;
  height: 1.1em;
  border-radius: 50%;
  margin-right: 0.25rem;
  border: none;
}
input[type=radio]::before {
  content: "";
  position: absolute;
  top: -0.2em;
  left: -0.2em;
  -webkit-mask-image: url("/wp-content/themes/femica/images/icon/radio_button_unchecked.svg#svg-radio_button_unchecked");
          mask-image: url("/wp-content/themes/femica/images/icon/radio_button_unchecked.svg#svg-radio_button_unchecked");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  line-height: 1;
  background-color: #9098a9;
  line-height: 1;
  width: 1.5em;
  height: 1.5em;
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
}
input[type=radio]:hover::before {
  background-color: #f57386;
}
input[type=radio]:checked::before {
  -webkit-mask-image: url("/wp-content/themes/femica/images/icon/radio_button_checked.svg#svg-radio_button_checked");
          mask-image: url("/wp-content/themes/femica/images/icon/radio_button_checked.svg#svg-radio_button_checked");
  background-color: #f57386;
}
input[type=radio][readonly], input[type=radio]:disabled {
  background-color: #9098a9;
}
input[type=radio][readonly]:hover, input[type=radio]:disabled:hover {
  cursor: not-allowed;
}
input[type=radio][readonly]:hover::before, input[type=radio]:disabled:hover::before {
  background-color: #9098a9;
}

input[type=checkbox] {
  vertical-align: text-top;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  position: relative;
  width: 1.1em;
  height: 1.1em;
  margin-right: 0.25rem;
  border: none;
}
input[type=checkbox]::before {
  content: "";
  position: absolute;
  top: -0.2em;
  left: -0.2em;
  -webkit-mask-image: url("/wp-content/themes/femica/images/icon/check_box_outline_blank.svg#svg-check_box_outline_blank");
          mask-image: url("/wp-content/themes/femica/images/icon/check_box_outline_blank.svg#svg-check_box_outline_blank");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  line-height: 1;
  background-color: #9098a9;
  line-height: 1;
  width: 1.5em;
  height: 1.5em;
}
input[type=checkbox]:hover::before {
  background-color: #f57386;
}
input[type=checkbox]:checked::before {
  -webkit-mask-image: url("/wp-content/themes/femica/images/icon/select_check_box.svg#svg-select_check_box");
          mask-image: url("/wp-content/themes/femica/images/icon/select_check_box.svg#svg-select_check_box");
  background-color: #f57386;
}
input[type=checkbox][readonly], input[type=checkbox]:disabled {
  background-color: #9098a9;
}
input[type=checkbox][readonly]:hover, input[type=checkbox]:disabled:hover {
  cursor: not-allowed;
}
input[type=checkbox][readonly]::before, input[type=checkbox]:disabled::before {
  background-color: #9098a9;
}

table, td, th {
  border: none;
}

h2 {
  font-size: 1.2rem;
  margin: 1.2rem 0;
  line-height: 1.4;
}

h3 {
  font-size: 1.1rem;
  margin: 1.1rem 0;
  line-height: 1.5;
}

input[type=number],
input[type=tel],
input[type=email],
input[type=text] {
  background-color: transparent;
  border: none;
  outline: none;
  padding: 0.75rem 1rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 2px solid #9098a9;
  border-radius: 0.5rem;
}
input[type=number]:focus,
input[type=tel]:focus,
input[type=email]:focus,
input[type=text]:focus {
  border: 2px solid #3273dc;
}
input[type=number][readonly], input[type=number]:disabled,
input[type=tel][readonly],
input[type=tel]:disabled,
input[type=email][readonly],
input[type=email]:disabled,
input[type=text][readonly],
input[type=text]:disabled {
  background: #e2e2e2;
}
input[type=number][readonly]:hover, input[type=number]:disabled:hover,
input[type=tel][readonly]:hover,
input[type=tel]:disabled:hover,
input[type=email][readonly]:hover,
input[type=email]:disabled:hover,
input[type=text][readonly]:hover,
input[type=text]:disabled:hover {
  cursor: not-allowed;
}
input[type=number][readonly]:focus, input[type=number]:disabled:focus,
input[type=tel][readonly]:focus,
input[type=tel]:disabled:focus,
input[type=email][readonly]:focus,
input[type=email]:disabled:focus,
input[type=text][readonly]:focus,
input[type=text]:disabled:focus {
  border: 2px solid #9098a9;
}

input[type=date] {
  background-color: transparent;
  outline: none;
  padding: 0.75rem 1rem;
  border: 2px solid #9098a9;
  border-radius: 0.5rem;
}
input[type=date]:focus {
  border: 2px solid #3273dc;
}
input[type=date][readonly], input[type=date]:disabled {
  background: #e2e2e2;
}
input[type=date][readonly]:hover, input[type=date]:disabled:hover {
  cursor: not-allowed;
}
input[type=date][readonly]:focus, input[type=date]:disabled:focus {
  border: 2px solid #9098a9;
}

select {
  background-color: transparent;
  border: none;
  outline: none;
  padding: 0.75rem 1rem;
  border: 2px solid #9098a9;
  border-radius: 0.5rem;
  cursor: pointer;
}
select:focus {
  border: 2px solid #3273dc;
}
select[readonly], select:disabled {
  background: #e2e2e2;
}
select[readonly]:hover, select:disabled:hover {
  cursor: not-allowed;
}
select[readonly]:focus, select:disabled:focus {
  border: 2px solid #9098a9;
}

textarea {
  background-color: transparent;
  border: none;
  outline: none;
  padding: 0.75rem 1rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 2px solid #9098a9;
  border-radius: 0.5rem;
}
textarea:focus {
  border: 2px solid #3273dc;
}
textarea[readonly], textarea:disabled {
  background: #e2e2e2;
}
textarea[readonly]:hover, textarea:disabled:hover {
  cursor: not-allowed;
}
textarea[readonly]:focus, textarea:disabled:focus {
  border: 2px solid #9098a9;
}

button,
[type=button],
[type=reset],
[type=submit],
[role=button] {
  background-color: transparent;
  border: none;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
button:hover,
[type=button]:hover,
[type=reset]:hover,
[type=submit]:hover,
[role=button]:hover {
  cursor: pointer;
}

.a-FadeInUp {
  animation: a-FadeInUp 0.8s ease 0s 1 both;
}

.a-FadeInLeft {
  animation: a-FadeInLeft 0.8s ease 0s 1 both;
}

.a-FadeInRight {
  animation: a-FadeInRight 0.8s ease 0s 1 both;
}

.a-FadeInDown {
  animation: a-FadeInDown 0.8s ease 0s 1 both;
}

.a-FadeIn {
  animation: a-FadeIn 0.8s ease 0s 1 both;
}

.a-FadeOut {
  animation: a-FadeOut 0.8s ease 0s 1 both;
}

.a-SlideInLeft {
  animation: a-SlideInLeft 0.8s ease 0s 1 both;
}

.a-SlideInRight {
  animation: a-SlideInRight 0.8s ease 0s 1 both;
}

.a-SlideOutRight {
  animation: a-SlideOutRight 0.8s ease 0s 1 both;
}

.a-RsetTransform {
  animation: a-RsetTransform 1.5s ease 0s 1 both;
}

.a-FadeInUpList {
  opacity: 1;
}

.a-BorderBottomSlide {
  position: relative;
}
.a-BorderBottomSlide.js-active {
  opacity: 1 !important;
}
.a-BorderBottomSlide::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 1px;
  background: #4a4a4a;
  animation: a-BorderBottomSlide 0.8s ease 0.5s both;
}

.a-SlideImg {
  display: block;
  overflow: hidden;
  position: relative;
  max-width: unset;
}
.a-SlideImg.js-active {
  opacity: 1 !important;
}
.a-SlideImg:before {
  animation: a-SlideImg 0.6s cubic-bezier(0.4, 0, 0.2, 1) both;
  background: #fff;
  bottom: 0;
  content: "";
  left: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.a-fuwafuwa {
  animation: fuwafuwa 10s infinite linear alternate;
}

.a-TextFadeInUp {
  opacity: 1 !important;
  overflow: hidden;
}
.a-TextFadeInUp > span {
  opacity: 0;
  display: inline-block;
  animation-name: a-FadeInUp;
  animation-duration: 0.8s;
  animation-fill-mode: forwards;
}

.a-TextFadeInDown {
  opacity: 1 !important;
  overflow: hidden;
}
.a-TextFadeInDown > span {
  opacity: 0;
  display: inline-block;
  animation-name: a-FadeInDown;
  animation-duration: 0.8s;
  animation-fill-mode: forwards;
}

.a-TextFadeInLeft {
  opacity: 1 !important;
  overflow: hidden;
}
.a-TextFadeInLeft > span {
  opacity: 0;
  display: inline-block;
  animation-name: a-FadeInLeft;
  animation-duration: 0.8s;
  animation-fill-mode: forwards;
}

.a-TextFadeInLeft {
  opacity: 1 !important;
  overflow: hidden;
}
.a-TextFadeInLeft > span {
  opacity: 0;
  display: inline-block;
  animation-name: a-FadeInLeft;
  animation-duration: 0.8s;
  animation-fill-mode: forwards;
}

.a-TextFadeInRight {
  opacity: 1 !important;
  overflow: hidden;
}
.a-TextFadeInRight > span {
  opacity: 0;
  display: inline-block;
  animation-name: a-FadeInRight;
  animation-duration: 0.8s;
  animation-fill-mode: forwards;
}

.a-TaxtFade {
  opacity: 1 !important;
}
.a-TaxtFade > span {
  opacity: 0;
  color: transparent;
  animation: a-TextFade 5s ease-out 0s both;
}

.c-section {
  margin-bottom: 3rem;
}

.c-wrap {
  position: relative;
  width: 100%;
  margin: auto;
  padding-left: 0rem;
  padding-right: 0rem;
}

.c-flex {
  width: 100%;
}
.c-flex > .__left {
  margin-bottom: 2rem;
}
.c-flex > .__left .__img img,
.c-flex > .__right .__img img {
  width: 100%;
}
.c-flex > .__left .__content,
.c-flex > .__right .__content {
  margin-top: 1em;
}

ul.c-ul > li {
  margin-bottom: 1rem;
}
ul.c-ul.--disc {
  list-style: disc;
  margin: 0 0 1rem 1.5rem;
}
ul.c-ul.--check > li {
  position: relative;
  padding-left: 2em;
}
ul.c-ul.--check > li::before {
  content: "";
  position: absolute;
  top: 0.25em;
  left: 0;
  -webkit-mask-image: url("/wp-content/themes/femica/images/icon/check.svg#svg-check");
          mask-image: url("/wp-content/themes/femica/images/icon/check.svg#svg-check");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  background-color: #f57386;
  line-height: 1;
  width: 1.5em;
  height: 1.5em;
}
ul.c-ul.--checkbox > li {
  position: relative;
  padding-left: 2em;
}
ul.c-ul.--checkbox > li::before {
  content: "";
  position: absolute;
  top: 0.25em;
  left: 0;
  -webkit-mask-image: url("/wp-content/themes/femica/images/icon/check_box_outline_blank.svg#svg-check_box_outline_blank");
          mask-image: url("/wp-content/themes/femica/images/icon/check_box_outline_blank.svg#svg-check_box_outline_blank");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  background-color: #9098a9;
  line-height: 1;
  width: 1.5em;
  height: 1.5em;
}
ul.c-ul.--checkbox > li.__check::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0.1em;
  -webkit-mask-image: url("/wp-content/themes/femica/images/icon/check.svg#svg-check");
          mask-image: url("/wp-content/themes/femica/images/icon/check.svg#svg-check");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  line-height: 1;
  background-color: #f57386;
  width: 1.8em;
  height: 1.8em;
}

ol.c-ol {
  margin: 0 0 1rem 1.5rem;
}
ol.c-ol > li {
  margin-bottom: 1rem;
}
ol.c-ol.--circle {
  counter-reset: olnum;
  list-style: none;
  margin-left: 0;
}
ol.c-ol.--circle > li {
  position: relative;
  padding-left: 2rem;
}
ol.c-ol.--circle > li:before {
  content: counter(olnum);
  counter-increment: olnum;
  position: absolute;
  top: 0.4em;
  left: 0;
  border: 1px solid;
  width: 1.25em;
  height: 1.25em;
  border-radius: 50%;
  line-height: 1;
  text-align: center;
}
ol.c-ol.--brackets {
  counter-reset: olnum;
  list-style: none;
  margin-left: 0;
}
ol.c-ol.--brackets > li {
  position: relative;
  padding-left: 2rem;
}
ol.c-ol.--brackets > li:before {
  content: "( " counter(olnum) " )";
  counter-increment: olnum;
  position: absolute;
  top: 0.4em;
  left: 0;
  line-height: 1;
  text-align: center;
}

dl.c-dl {
  padding-top: 1.5rem;
}
dl.c-dl dt {
  font-size: 1.05rem;
  margin-bottom: 1rem;
  font-weight: bold;
}
dl.c-dl dd {
  margin-bottom: 3rem;
}
dl.c-dl.--num {
  counter-reset: dlnum;
}
dl.c-dl.--num dt {
  position: relative;
  padding-left: 1.5rem;
  margin-bottom: 0.5rem;
}
dl.c-dl.--num dt::before {
  counter-increment: dlnum;
  content: counter(dlnum) ".";
  position: absolute;
  top: 0;
  left: 0;
}

.c-grid {
  display: grid;
}
.c-grid.--gap1 {
  gap: 1rem 1rem;
}
.c-grid.--pc_col1 {
  grid-template-columns: repeat(1, 1fr);
}
.c-grid.--gap2 {
  gap: 1rem 1rem;
}
.c-grid.--pc_col2 {
  grid-template-columns: repeat(2, 1fr);
}
.c-grid.--gap3 {
  gap: 1rem 1rem;
}
.c-grid.--pc_col3 {
  grid-template-columns: repeat(3, 1fr);
}
.c-grid.--gap4 {
  gap: 1rem 1rem;
}
.c-grid.--pc_col4 {
  grid-template-columns: repeat(4, 1fr);
}
.c-grid.--gap5 {
  gap: 1rem 1rem;
}
.c-grid.--pc_col5 {
  grid-template-columns: repeat(5, 1fr);
}
.c-grid > .__item {
  width: 100%;
}
.c-grid > .__item > a:hover:hover {
  opacity: 0.8;
}
.c-grid > .__item img {
  width: 100%;
}
.c-grid.--text > .__item {
  position: relative;
}
.c-grid.--text > .__item .inner_box {
  border: 1px solid #9098a9;
  padding-bottom: 4rem;
  height: 100%;
}
.c-grid.--text > .__item .inner_box .inner_title {
  margin: 1rem 1rem 0 1rem;
  color: #002665;
  font-weight: bold;
}
.c-grid.--text > .__item .inner_box .inner__text {
  margin: 1rem;
}
.c-grid.--text > .__item .inner_btn {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 4rem;
  text-align: center;
}
.c-grid.--text > .__item .inner_btn > .__btn {
  display: inline-block;
  line-height: 1;
  color: #3273dc;
  background: #fff;
  border: 1px solid #3273dc;
  letter-spacing: 0;
  font-size: 1rem;
  padding: 1rem 3rem;
  border-radius: 2rem;
  transition: color 0.3s, background-color 0.3s;
}
.c-grid.--text > .__item .inner_btn > .__btn .__svg {
  stroke-width: 0;
  stroke: currentColor;
  fill: currentColor;
  color: #3273dc;
  width: 1em;
  height: 1em;
  vertical-align: top;
  transition: color 0.3s;
}
.c-grid.--text > .__item .inner_btn > .__btn:hover {
  background: #3273dc;
  color: #fff;
}
.c-grid.--text > .__item .inner_btn > .__btn:hover .__svg {
  color: #fff;
}
.c-grid.--overlay a {
  display: block;
  overflow: hidden;
  position: relative;
  text-align: center;
}
.c-grid.--overlay a .hover_box {
  color: #fff;
  background: #002665;
  padding: 1rem;
}
.c-grid.--overlay a .hover_box .hover_box_inner .__title {
  text-align: center;
  font-size: 1rem;
  border-bottom: 1px solid #fff;
  margin-bottom: 1rem;
}
.c-grid.--overlay a .hover_box .hover_box_inner .__contents {
  text-align: left;
}
.c-grid.--fade a {
  display: block;
  overflow: hidden;
  position: relative;
  text-align: center;
}
.c-grid.--fade a > img {
  transition: transform 1.8s cubic-bezier(0.215, 0.61, 0.355, 1), opacity 0.3s cubic-bezier(0.25, 0.25, 0.75, 0.75);
}
.c-grid.--fade a .hover_box {
  color: #fff;
  background: #002665;
  padding: 1rem;
}
.c-grid.--fade a .hover_box .hover_box_inner .__title {
  text-align: center;
  font-size: 1rem;
  border-bottom: 1px solid #fff;
  margin-bottom: 1rem;
}
.c-grid.--fade a .hover_box .hover_box_inner .__contents {
  text-align: left;
}

.c-box_on_img {
  width: 100%;
  color: #fff;
  display: flex;
}
.c-box_on_img.--left_img {
  flex-flow: column;
}
.c-box_on_img.--left_img > .__left {
  text-align: center;
}
.c-box_on_img.--left_img > .__right > .box_on_img_inner {
  background: #002665;
}
.c-box_on_img.--left_img > .__right > .box_on_img_inner > .__text_box {
  padding: 1rem;
}
.c-box_on_img.--right_img {
  flex-flow: column-reverse;
}
.c-box_on_img.--right_img > .__left > .box_on_img_inner {
  background: #002665;
}
.c-box_on_img.--right_img > .__left > .box_on_img_inner > .__text_box {
  padding: 1rem;
}
.c-box_on_img.--right_img .__right {
  text-align: center;
}

.c-img_on_box {
  position: relative;
}
.c-img_on_box .__inner {
  width: 100%;
  min-height: 30rem;
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 100% auto;
  padding-top: 14rem;
}
.c-img_on_box .__box {
  display: flex;
  flex-direction: column;
  padding: 2rem 1rem 7rem;
  color: rgb(251, 249, 238);
  background: #002665;
}
.c-img_on_box .__box .__btn {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 2rem;
  margin: auto;
  text-align: center;
}

.c-gmap {
  height: 0;
  overflow: hidden;
  padding-bottom: 56.25%;
  position: relative;
}
.c-gmap > iframe {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}
.c-gmap.--gray iframe {
  filter: grayscale(100%);
}

.c-left_border_box {
  border-left: 6px solid #eee;
  padding-left: 1rem;
}

.c-accordion > .__box > dd {
  background: #f5f5f5;
  overflow: hidden;
  line-height: 0;
  height: 0;
  transition: 0.2s;
  padding: 0 1rem;
}
.c-accordion .js-open + dd {
  display: block;
  height: auto;
  line-height: 1.85;
  opacity: 1;
  padding: 1rem;
}
.c-accordion .js-open + dd p:last-of-type {
  margin-bottom: 0;
}
.c-accordion > .__box {
  margin-top: 1px;
}
.c-accordion > .__box > dt {
  width: 100%;
  background: #3273dc;
  color: #fff;
  margin: 0;
  padding: 1rem 3rem 1rem 1rem;
  position: relative;
}
.c-accordion > .__box > dt::after {
  content: "";
  position: absolute;
  top: 0.8em;
  right: 1em;
  -webkit-mask-image: url("/wp-content/themes/femica/images/icon/add.svg#svg-add");
          mask-image: url("/wp-content/themes/femica/images/icon/add.svg#svg-add");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  width: 2em;
  height: 2em;
  background-color: #fff;
}
.c-accordion > .__box > dt.js-open::after {
  -webkit-mask-image: url("/wp-content/themes/femica/images/icon/remove.svg#svg-remove");
          mask-image: url("/wp-content/themes/femica/images/icon/remove.svg#svg-remove");
}
.c-accordion > .__box > dt:hover {
  cursor: pointer;
}

.c-table.--th_center th {
  text-align: center;
}
.c-table.--th_color th {
  background: #002665;
  color: #fff;
}
.c-table.--line > table {
  border: none;
}
.c-table.--line > table td,
.c-table.--line > table th {
  border: none;
}
.c-table.--line > table tr {
  border-bottom: 1px solid #e2e2e2;
}
.c-table.--line.--sp_block {
  border-top: 1px solid #e2e2e2;
}
.c-table.--line.--sp_block > table tr {
  border-bottom: unset;
}
.c-table.--line.--sp_block > table tr th {
  border-bottom: 1px solid #e2e2e2;
}
.c-table.--line.--sp_block > table tr td {
  border-bottom: 1px solid #e2e2e2;
}
.c-table.--stripe > table {
  border: none;
}
.c-table.--stripe > table td,
.c-table.--stripe > table th {
  border: none;
}
.c-table.--stripe > table tr {
  border-bottom: 1px solid #e2e2e2;
}
.c-table.--stripe > table tr:nth-child(odd) {
  background: #f5f5f5;
}
.c-table.--scroll {
  width: 100%;
  overflow-x: auto;
  padding-bottom: 1rem;
}
.c-table.--scroll::-webkit-scrollbar {
  height: 14px;
}
.c-table.--scroll::-webkit-scrollbar-thumb {
  background: rgb(110, 110, 110);
  border-radius: 7px;
}
.c-table.--scroll::-webkit-scrollbar-track {
  background: rgb(220, 220, 220);
  border-radius: 7px;
}
.c-table.--scroll > table {
  min-width: 50rem;
}
.c-table.--scroll > table th {
  word-break: keep-all;
}

.c-scroll {
  width: 100%;
  overflow-x: auto;
  padding-bottom: 1rem;
}
.c-scroll::-webkit-scrollbar {
  height: 14px;
}
.c-scroll::-webkit-scrollbar-thumb {
  background: rgb(110, 110, 110);
  border-radius: 7px;
}
.c-scroll::-webkit-scrollbar-track {
  background: rgb(220, 220, 220);
  border-radius: 7px;
}

.c-tab.--scroll {
  width: 100%;
  overflow-x: auto;
  padding-bottom: 1rem;
}
.c-tab.--scroll::-webkit-scrollbar {
  height: 14px;
}
.c-tab.--scroll::-webkit-scrollbar-thumb {
  background: rgb(110, 110, 110);
  border-radius: 7px;
}
.c-tab.--scroll::-webkit-scrollbar-track {
  background: rgb(220, 220, 220);
  border-radius: 7px;
}
.c-tab > ul {
  width: 100%;
  display: flex;
  justify-content: center;
}
.c-tab > ul > li {
  margin: 0 1rem;
  word-break: keep-all;
}
.c-tab > ul > li.js-open {
  border-bottom: 1px solid #3273dc;
}
.c-tab > ul > li:hover {
  cursor: pointer;
  border-bottom: 1px solid #3273dc;
}
.c-tab.--border.--scroll {
  padding-bottom: 0;
}
.c-tab.--border > ul > li {
  border: 1px solid #9098a9;
  padding: 0.5rem 1rem;
  background: #e2e2e2;
}
.c-tab.--border > ul > li:hover {
  border-bottom: none;
  background: #fff;
}
.c-tab.--border > ul > li.js-open {
  background: #fff;
  border-bottom: none;
  z-index: 2;
}

.c-tab_contents {
  padding: 1rem;
  overflow: hidden;
}
.c-tab_contents > div.js-open {
  animation: a-FadeInRight 0.8s ease 0s both;
}
.c-tab_contents.--border {
  margin-top: -1px;
  border: 1px solid #9098a9;
  z-index: 1;
  background: #fff;
}

.c-modal_contents .__btn-close {
  position: absolute;
  background: #3273dc;
  top: -0.65rem;
  right: -0.65rem;
  border: 1px solid #3273dc;
  border-radius: 50%;
  vertical-align: text-bottom;
  line-height: 1;
}
.c-modal_contents .__btn-close .svg {
  width: 2.5rem;
  height: 2.5rem;
  stroke-width: 0;
  stroke: currentColor;
  fill: currentColor;
  color: #fff;
  padding: 0.5rem;
}

#c-breadcrumb {
  width: 100%;
  overflow: hidden;
}
#c-breadcrumb > ul {
  width: 100%;
  display: flex;
  padding: 1rem 0;
  overflow-x: auto;
}
#c-breadcrumb > ul li span {
  display: inline-block;
}
#c-breadcrumb > ul li::after {
  content: "/";
  margin: 0 1rem;
}
#c-breadcrumb > ul li:last-of-type::after {
  content: "";
  margin: 0;
}
#c-breadcrumb > ul li a {
  display: inline-block;
  color: #4a4a4a;
}
#c-breadcrumb > ul li a:hover {
  color: #3273dc;
}
#c-breadcrumb > ul li a:hover .svg {
  color: #3273dc;
}
#c-breadcrumb > ul li .svg {
  stroke-width: 0;
  stroke: currentColor;
  fill: currentColor;
  color: #4a4a4a;
  vertical-align: text-bottom;
  width: 1.5em;
  height: 1.5em;
}

#c-pagination {
  margin-top: 2rem;
}
#c-pagination .page-numbers {
  width: 100%;
  display: flex;
  justify-content: center;
}
#c-pagination .page-numbers li {
  margin: 0.5rem;
}
#c-pagination .page-numbers .page-numbers {
  display: block;
  width: 100%;
  padding: 0.5rem 1rem;
  border: 2px solid #002665;
  overflow: hidden;
  line-height: 1.5;
  color: #002665;
  transition-duration: 0.3s;
}
#c-pagination .page-numbers .page-numbers.current {
  background: #002665;
  color: #fff;
}
#c-pagination .page-numbers .page-numbers:hover {
  background: #002665;
  color: #fff;
}

#c-go_top {
  display: none;
}
.js-header_hide-body #c-go_top {
  display: block;
  position: fixed;
  bottom: 0.75rem;
  right: 0.5rem;
  z-index: 6;
  border: 2px solid #002665;
  border-radius: 50%;
  background: #fff;
  overflow: hidden;
}
#c-go_top .svg {
  stroke-width: 0;
  stroke: currentColor;
  fill: currentColor;
  width: 2rem;
  height: 2rem;
  color: #002665;
  vertical-align: middle;
}
#c-go_top:hover {
  cursor: pointer;
}

.c-cat_list-1 {
  text-align: left;
  margin-bottom: 2rem;
}
.c-cat_list-1 a {
  color: #4a4a4a;
  display: block;
  position: relative;
}
.c-cat_list-1 a .__contents {
  border-bottom: 1px solid #9098a9;
  padding: 0.75rem 0;
}
.c-cat_list-1 a .__contents .__time {
  width: 9rem;
  display: inline-block;
}
.c-cat_list-1 a .__contents .__cat {
  width: 6rem;
  border: 1px solid;
  border-radius: 3px;
  text-align: center;
  display: inline-block;
}
.c-cat_list-1 a .__contents .__cat.--news {
  border: 1px solid #002665;
  background: #002665;
  color: #fff;
}
.c-cat_list-1 a .__contents .__cat:hover:hover {
  opacity: 0.8;
}
.c-cat_list-1 a .__contents .__ttl {
  transition: color 0.3s;
}
.c-cat_list-1 a.is-icon .__contents {
  padding-right: 2rem;
}
.c-cat_list-1 a.is-icon .__icon {
  position: absolute;
  right: 0.5rem;
  top: 50%;
  transform: translateY(-50%);
  transition-duration: 0.3s;
  stroke-width: 0;
  stroke: currentColor;
  fill: currentColor;
  color: #3273dc;
  width: 1.2em;
  height: 1.2em;
}
.c-cat_list-1 a:hover {
  transition: background-color ease 0.3s, color ease 0.3s;
}
.c-cat_list-1 a:hover:hover {
  background: rgba(50, 115, 220, 0.05);
}
.c-cat_list-1 a:hover.is-icon .__icon {
  right: 0;
}

.c-cat_grid-1 > .cat_grid {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 1rem 1rem;
}
.c-cat_grid-1 > .cat_grid > li {
  background: #fff;
  padding: 1rem;
  position: relative;
  border: 1px solid #9098a9;
}
.c-cat_grid-1 > .cat_grid > li .list_inner > .inner_box > .__img {
  margin-bottom: 1rem;
}
.c-cat_grid-1 > .cat_grid > li .list_inner > .inner_box > .__title {
  margin-bottom: 0;
  font-size: 1.2rem;
}
.c-cat_grid-1 > .cat_grid > li .list_inner > .inner_box > .__description {
  margin-bottom: 2rem;
}
.c-cat_grid-1 > .cat_grid > li .list_inner > .inner_btn {
  text-align: center;
}
.c-cat_grid-1 > .cat_grid > li .list_inner > .inner_btn .__btn {
  margin: 0 auto;
  display: inline-block;
  line-height: 1;
  color: #3273dc;
  background: #fff;
  border: 1px solid #3273dc;
  letter-spacing: 0.5em;
  font-size: 1rem;
  padding: 1rem 3rem;
  border-radius: 2rem;
  transition: color 0.3s, background-color 0.3s;
}
.c-cat_grid-1 > .cat_grid > li .list_inner > .inner_btn .__btn .__svg {
  stroke-width: 0;
  stroke: currentColor;
  fill: currentColor;
  color: #3273dc;
  width: 1em;
  height: 1em;
  vertical-align: top;
  transition: color 0.3s;
}
.c-cat_grid-1 > .cat_grid > li .list_inner > .inner_btn .__btn:hover {
  background: #3273dc;
  color: #fff;
}
.c-cat_grid-1 > .cat_grid > li .list_inner > .inner_btn .__btn:hover .__svg {
  color: #fff;
}

.c-swiper-container {
  position: relative;
  overflow: hidden;
  opacity: 0;
  text-align: center;
}
.c-swiper-container.swiper-horizontal {
  opacity: 1;
}

.c-swiper-container_loop {
  padding: 30px 0;
  margin-bottom: 4rem;
  background: #eee;
  overflow: hidden;
  opacity: 0;
}
.c-swiper-container_loop.swiper-horizontal {
  opacity: 1;
}
.c-swiper-container_loop .swiper-wrapper {
  transition-timing-function: linear;
}

.c-timeline > li {
  overflow: hidden;
  margin: 0;
  position: relative;
  width: 100%;
}
.c-timeline .__date {
  width: 6.5rem;
  margin-top: 0.5rem;
  position: absolute;
  top: 0;
  left: 2rem;
}
.c-timeline .__content {
  border-left: 3px #e2e2e2 solid;
  padding: 3rem 0 2rem 2rem;
  margin-left: 0.5rem;
  width: calc(100% - 0.5rem);
}
.c-timeline .__content:before {
  content: "";
  width: 0.8rem;
  height: 0.8rem;
  background: #f57386;
  position: absolute;
  left: 6.2rem;
  top: 1rem;
  border-radius: 100%;
  left: 0.2rem;
}
.c-timeline .__title {
  margin-top: 0;
  margin-bottom: 1rem;
}
.c-timeline .__text {
  margin-bottom: 0;
}

dl.c-qa dt {
  position: relative;
  padding-left: 3rem;
  margin-bottom: 1rem;
}
dl.c-qa dt::before {
  position: absolute;
  content: "Q";
  left: 0;
  top: -1rem;
  color: #e2e2e2;
  font-size: 2.5rem;
  line-height: 1;
  font-weight: bold;
}
dl.c-qa dd {
  position: relative;
  padding-left: 3rem;
  margin-bottom: 4rem;
}
dl.c-qa dd::before {
  position: absolute;
  content: "A";
  left: 0;
  top: 0;
  color: #e2e2e2;
  font-size: 2.5rem;
  line-height: 1;
  font-weight: bold;
}
dl.c-qa dd p {
  margin-bottom: 0;
}

.c-details {
  overflow: hidden;
}
.c-details > details {
  width: 100%;
}
.c-details > details > summary {
  background: #fff;
}
.c-details.--border > details {
  border: 1px solid #9098a9;
}
.c-details.--border > details:nth-of-type(n + 2) {
  border-top: none;
}
.c-details.--border > details > summary {
  margin: 0;
  padding: 1rem;
  position: relative;
}
.c-details.--border > details > .__inner {
  background: #f5f5f5;
  padding: 1rem;
}
.c-details.--accordion > details {
  border: 1px solid #9098a9;
}
.c-details.--accordion > details:nth-of-type(n + 2) {
  border-top: none;
}
.c-details.--accordion > details > summary {
  margin: 0;
  padding: 1rem 4rem 1rem 1rem;
  position: relative;
  list-style: none;
  position: relative;
}
.c-details.--accordion > details > summary::after {
  content: "";
  position: absolute;
  top: 0.8em;
  right: 1em;
  -webkit-mask-image: url("/wp-content/themes/femica/images/icon/expand_less.svg#svg-expand_less");
          mask-image: url("/wp-content/themes/femica/images/icon/expand_less.svg#svg-expand_less");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  width: 2em;
  height: 2em;
  background-color: #4a4a4a;
  transition: transform 0.2s;
}
.c-details.--accordion > details[open] > summary::after {
  transform: rotate(180deg);
}
.c-details.--accordion > details > .__inner {
  background: #f5f5f5;
  padding: 1rem;
}
.c-details.--qa > details > summary {
  outline: 1px solid #fff;
  background: #002665;
  color: #fff;
  margin: 0;
  padding: 1rem 3rem 1rem 3rem;
  position: relative;
  list-style: none;
  position: relative;
}
.c-details.--qa > details > summary::before {
  position: absolute;
  content: "Q";
  left: 1rem;
  top: 1rem;
  color: #fff;
  font-size: 1.5rem;
  line-height: 1;
  font-weight: bold;
}
.c-details.--qa > details > summary::after {
  content: "";
  position: absolute;
  top: 0.8em;
  right: 1em;
  -webkit-mask-image: url("/wp-content/themes/femica/images/icon/add.svg#svg-add");
          mask-image: url("/wp-content/themes/femica/images/icon/add.svg#svg-add");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  width: 2em;
  height: 2em;
  background-color: #fff;
}
.c-details.--qa > details[open] > summary {
  outline: none;
}
.c-details.--qa > details[open] > summary::after {
  -webkit-mask-image: url("/wp-content/themes/femica/images/icon/remove.svg#svg-remove");
          mask-image: url("/wp-content/themes/femica/images/icon/remove.svg#svg-remove");
}
.c-details.--qa > details > .__inner {
  background: #f5f5f5;
  padding: 1rem 1rem 1rem 3rem;
  position: relative;
}
.c-details.--qa > details > .__inner::before {
  position: absolute;
  content: "A";
  left: 1rem;
  top: 1rem;
  color: #002665;
  font-size: 1.5rem;
  line-height: 1;
  font-weight: bold;
}
.c-details.--qa > details > .__inner > p:last-of-type {
  margin-bottom: 0;
}

.c-list_number {
  counter-reset: num;
}
.c-list_number > li {
  margin-bottom: 4rem;
  position: relative;
}
.c-list_number > li::before {
  counter-increment: num;
  content: "0" counter(num);
  color: #e2e2e2;
  position: absolute;
  top: -1rem;
  right: 0;
  font-size: 6rem;
  line-height: 1;
}
.c-list_number > li > .__title {
  z-index: 1;
  position: relative;
  color: #000;
  font-weight: bold;
  padding-top: 2rem;
}

.c-flow_arrow > .__box {
  position: relative;
}
.c-flow_arrow > .__box:not(:last-child) {
  padding-bottom: 3rem;
}
.c-flow_arrow > .__box:not(:last-child)::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 1rem;
  left: 50%;
  width: 0;
  height: 0;
  transform: translateX(-50%);
  border: 2rem solid transparent;
  border-top: 1rem solid #9098a9;
  border-bottom-width: 0;
}

.c-flow_step {
  display: flex;
  justify-content: center;
  align-items: center;
}
.c-flow_step > ul {
  padding: 0;
}
.c-flow_step > ul > li {
  list-style-type: none;
  position: relative;
  list-style: none;
}
.c-flow_step > ul > li:not(:last-child) {
  margin-bottom: 3rem;
}
.c-flow_step > ul > li:not(:last-child) dl::before, .c-flow_step > ul > li:not(:last-child) dl::after {
  content: "";
  border: solid transparent;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
}
.c-flow_step > ul > li:not(:last-child) dl::before {
  border-width: 22px;
  border-top-color: #002665;
}
.c-flow_step > ul > li:not(:last-child) dl::after {
  border-width: 20px;
  border-top-color: #fff;
}
.c-flow_step > ul > li > dl {
  width: 100%;
  padding: 1rem 2rem;
  border: 2px solid #002665;
  border-radius: 1rem;
  position: relative;
}
.c-flow_step > ul > li > dl > dt {
  font-size: 1.2rem;
  font-weight: bold;
  text-align: center;
}
.c-flow_step > ul > li > dl > dt .__step {
  font-size: 1.2rem;
  color: #fff;
  background: #002665;
  padding: 0.5rem 1rem;
  margin-bottom: 1rem;
  display: block;
  border-radius: 2rem;
  position: relative;
}

.c-flow_line {
  display: flex;
  justify-content: center;
  align-items: center;
}
.c-flow_line > ol {
  counter-reset: num;
}
.c-flow_line > ol > li {
  list-style-type: none;
  position: relative;
  padding-left: 4rem;
}
.c-flow_line > ol > li:not(:last-child) {
  padding-bottom: 2rem;
}
.c-flow_line > ol > li:not(:last-child)::before {
  content: "";
  background: #e2e2e2;
  width: 0.3rem;
  height: 100%;
  position: absolute;
  top: calc(50% + 3rem);
  left: 1.4rem;
  transform: translateY(-50%);
}
.c-flow_line > ol > li::after {
  counter-increment: num;
  content: counter(num);
  width: 3rem;
  height: 3rem;
  line-height: 3rem;
  text-align: center;
  border-radius: 100vh;
  display: inline-block;
  background: #002665;
  color: #fff;
  position: absolute;
  left: 0;
  top: 0;
}
.c-flow_line > ol > li > dl {
  padding-top: 0.25rem;
}
.c-flow_line > ol > li > dl > dt {
  position: relative;
  font-size: 1.3rem;
  font-weight: 600;
  color: #002665;
}
.c-flow_line > ol > li > dl > dd {
  margin: 0;
}

.c-flow_box {
  width: 100%;
  overflow-x: auto;
  padding-bottom: 1rem;
}
.c-flow_box::-webkit-scrollbar {
  height: 14px;
}
.c-flow_box::-webkit-scrollbar-thumb {
  background: rgb(110, 110, 110);
  border-radius: 7px;
}
.c-flow_box::-webkit-scrollbar-track {
  background: rgb(220, 220, 220);
  border-radius: 7px;
}
.c-flow_box > ul {
  padding-left: 0;
  display: flex;
  justify-content: center;
  gap: 4rem;
  min-width: 980px;
}
.c-flow_box > ul > li {
  list-style-type: none;
  display: flex;
}
.c-flow_box > ul > li .__step {
  line-height: 2;
  width: 2em;
  height: 2em;
  text-align: center;
  color: #fff;
  background: #002665;
  margin: 0 auto 10px;
  display: block;
  border-radius: 100vh;
  position: relative;
}
.c-flow_box > ul > li .__step::before {
  content: "";
  border: solid transparent;
  border-width: 7px;
  border-top-color: #002665;
  position: absolute;
  top: calc(100% - 2px);
  left: 50%;
  transform: translateX(-50%);
}
.c-flow_box > ul > li:not(:first-child) dl::before {
  content: "";
  width: 1rem;
  height: 1rem;
  margin-right: 1rem;
  display: inline-block;
  border-top: 4px solid #002665;
  border-right: 4px solid #002665;
  position: absolute;
  top: calc(50% - 1rem);
  left: -45px;
  transform: rotate(45deg);
}
.c-flow_box > ul > li > dl {
  padding: 2rem 1rem;
  margin: 0;
  border: 3px solid #002665;
  position: relative;
}
.c-flow_box > ul > li > dl > dt {
  font-size: 1.2rem;
  font-weight: bold;
  color: #002665;
  flex-basis: 20%;
  margin-bottom: 1rem;
  text-align: center;
}

.c-flex_content {
  width: 100%;
}
.c-flex_content > .__left {
  margin-bottom: 2rem;
}
.c-flex_content > .__right > .__img img,
.c-flex_content > .__left > .__img img {
  width: 100%;
}
.c-flex_content > .__right > .__content,
.c-flex_content > .__left > .__content {
  margin-top: 1rem;
}
.c-flex_content .__btn {
  margin-top: 2rem;
  text-align: center;
}

.mt60 {
  margin-top: 60px;
}

.spbr {
  display: none;
}

.tabspbr {
  display: none;
}
.u-black {
  color: #1a1a1a;
}

.u-gray {
  color: #9098a9;
}

.u-blue {
  color: #209bee;
}

.u-primary {
  color: #00d1b2;
}

.u-green {
  color: #f57386;
}

.u-yellow {
  color: #fedd56;
}

.u-red {
  color: #fe385f;
}

.u-smoke {
  color: #e2e2e2;
}

.u-light {
  color: #f5f5f5;
}

.u-bold {
  font-weight: bold;
}

.u-center {
  text-align: center;
}
.u-center.--tb {
  text-align: left;
}
.u-center.--pc {
  text-align: left;
}

.u-small {
  font-size: 0.875em;
}

.u-large {
  font-size: 1.1rem;
}

.u-big {
  font-size: 1.2rem;
}

.u-p_0 {
  padding: 0rem;
}

.u-pb_0 {
  padding-bottom: 0rem;
}

.u-pt_0 {
  padding-top: 0rem;
}

.u-m_0 {
  margin: 0rem;
}

.u-mb_0 {
  margin-bottom: 0rem;
}

.u-mt_0 {
  margin-top: 0rem;
}

.u-p_1 {
  padding: 1rem;
}

.u-pb_1 {
  padding-bottom: 1rem;
}

.u-pt_1 {
  padding-top: 1rem;
}

.u-m_1 {
  margin: 1rem;
}

.u-mb_1 {
  margin-bottom: 1rem;
}

.u-mt_1 {
  margin-top: 1rem;
}

.u-p_2 {
  padding: 2rem;
}

.u-pb_2 {
  padding-bottom: 2rem;
}

.u-pt_2 {
  padding-top: 2rem;
}

.u-m_2 {
  margin: 2rem;
}

.u-mb_2 {
  margin-bottom: 2rem;
}

.u-mt_2 {
  margin-top: 2rem;
}

.u-p_3 {
  padding: 3rem;
}

.u-pb_3 {
  padding-bottom: 3rem;
}

.u-pt_3 {
  padding-top: 3rem;
}

.u-m_3 {
  margin: 3rem;
}

.u-mb_3 {
  margin-bottom: 3rem;
}

.u-mt_3 {
  margin-top: 3rem;
}

.u-p_4 {
  padding: 4rem;
}

.u-pb_4 {
  padding-bottom: 4rem;
}

.u-pt_4 {
  padding-top: 4rem;
}

.u-m_4 {
  margin: 4rem;
}

.u-mb_4 {
  margin-bottom: 4rem;
}

.u-mt_4 {
  margin-top: 4rem;
}

.u-p_5 {
  padding: 5rem;
}

.u-pb_5 {
  padding-bottom: 5rem;
}

.u-pt_5 {
  padding-top: 5rem;
}

.u-m_5 {
  margin: 5rem;
}

.u-mb_5 {
  margin-bottom: 5rem;
}

.u-mt_5 {
  margin-top: 5rem;
}

.u-w10 {
  width: 10%;
}

.u-w20 {
  width: 20%;
}

.u-w30 {
  width: 30%;
}

.u-w40 {
  width: 40%;
}

.u-w50 {
  width: 50%;
}

.u-w60 {
  width: 60%;
}

.u-w70 {
  width: 70%;
}

.u-w80 {
  width: 80%;
}

.u-w90 {
  width: 90%;
}

.u-w100 {
  width: 100%;
}

.u-sp_none {
  display: none;
}

.u-sp_block {
  display: block;
}

.u-tb_none {
  display: block;
}

.u-tb_block {
  display: none;
}

.u-pc_none {
  display: block;
}

.u-pc_block {
  display: none;
}

.u-hover_opacity:hover {
  opacity: 0.8;
}

.u-hover_background {
  transition: background-color ease 0.3s, color ease 0.3s;
}
.u-hover_background:hover {
  background: #3273dc;
  color: #fff;
}

.u-hover_slide_border {
  position: relative;
  display: inline-block;
}
.u-hover_slide_border::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 2px;
  border-radius: 2px;
  transition: transform 0.3s ease-in-out;
  background-color: #3273dc;
  bottom: -0.2em;
  left: 0;
  transform-origin: right;
  transform: scaleX(0);
}
.u-hover_slide_border:hover::after {
  transform-origin: left;
  transform: scaleX(1);
}

.u-hover_slide_back {
  position: relative;
  display: inline-block;
  transition: color 0.3s ease-in-out;
}
.u-hover_slide_back::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 0;
  transition: transform 0.3s ease-in-out;
  background-color: #3273dc;
  bottom: 0;
  left: 0;
  transform-origin: right;
  transform: scaleX(0);
}
.u-hover_slide_back:hover {
  color: #fff;
}
.u-hover_slide_back:hover::after {
  transform-origin: left;
  transform: scaleX(1);
}
.u-hover_slide_back:hover::after {
  z-index: -1;
}

.u-hover_border_slide {
  position: relative;
  text-decoration: none;
  display: inline-block;
  transition: color 0.3s ease;
  color: #4a4a4a;
}
.u-hover_border_slide::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 100%;
  height: 2px;
  left: 0;
  bottom: -0.2em;
  background-color: #3273dc;
  transition: all ease 0.3s;
}
.u-hover_border_slide:hover {
  color: #fff;
}
.u-hover_border_slide:hover::after {
  height: 100%;
}

.u-mask {
  position: relative;
}
.u-mask:before {
  content: "";
  background-color: rgba(54, 64, 72, 0.24);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.u-mask.--dark:before {
  background-color: rgba(12, 15, 19, 0.4);
}

.u-slanting {
  transform: rotate(-1deg);
  display: inline-block;
}

.u-title_first_letter:first-letter {
  margin-right: 0.1em;
  font-size: 1.5em;
  color: #f57386;
}

.u-title_back {
  background: #002665;
  color: #fff;
  padding: 1rem 2rem;
}
.u-title_back.--radius {
  border-radius: 0.5rem;
}

.u-title_indent {
  position: relative;
  padding-left: 2rem;
}
.u-title_indent::before {
  content: "";
  position: absolute;
  top: 0.6em;
  left: 0;
  height: 0.25rem;
  width: 1.5rem;
  background: #f57386;
}

.u-title_left_border {
  position: relative;
  padding: 0.25em 0 0.5em 0.75em;
  border-left: 6px solid #f57386;
}
.u-title_left_border.--bottom::after {
  position: absolute;
  left: 0;
  bottom: 0;
  content: "";
  width: 100%;
  height: 0;
  border-bottom: 1px solid #ccc;
}

.u-title_border {
  padding: 0.75em 1em;
  border-top: solid 2px #f57386;
  border-bottom: solid 2px #f57386;
}

.u-title_border_mini {
  position: relative;
}
.u-title_border_mini:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -0.6em;
  width: 4em;
  height: 4px;
  background: #f57386;
  border-radius: 4px;
}
.u-title_border_mini.--center {
  text-align: center;
}
.u-title_border_mini.--center:after {
  left: 50%;
  transform: translateX(-50%);
}

.u-title_border_stripe {
  position: relative;
  display: inline-block;
}
.u-title_border_stripe:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 7px;
  z-index: -1;
  background: repeating-linear-gradient(-45deg, #f57386, #f57386 2px, #fff 2px, #fff 4px);
}

.u-title_border_tolerance {
  position: relative;
  display: inline-block;
  padding: 0.25em 1em;
  border-top: solid 2px black;
  border-bottom: solid 2px black;
}
.u-title_border_tolerance:before, .u-title_border_tolerance:after {
  content: "";
  position: absolute;
  top: -7px;
  width: 2px;
  height: calc(100% + 14px);
  background-color: black;
}
.u-title_border_tolerance:before {
  left: 7px;
}
.u-title_border_tolerance:after {
  right: 7px;
}

.u-title_side_brackets {
  position: relative;
  line-height: 1.4;
  padding: 0.25em 1em;
  display: inline-block;
}
.u-title_side_brackets:before, .u-title_side_brackets:after {
  content: "";
  width: 1em;
  height: 1em;
  position: absolute;
  display: inline-block;
}
.u-title_side_brackets:before {
  border-left: solid 1px #f57386;
  border-top: solid 1px #f57386;
  top: 0;
  left: 0;
}
.u-title_side_brackets:after {
  border-right: solid 1px #f57386;
  border-bottom: solid 1px #f57386;
  bottom: 0;
  right: 0;
}

.u-title_side_slash {
  position: relative;
  display: inline-block;
  padding: 0 45px;
}
.u-title_side_slash:before, .u-title_side_slash:after {
  content: "";
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 44px;
  height: 2px;
  background-color: #f57386;
  transform: rotate(-60deg);
}
.u-title_side_slash:before {
  left: 0;
}
.u-title_side_slash:after {
  right: 0;
}

.u-title_border_twotone {
  border-bottom: solid 3px skyblue;
  position: relative;
}
.u-title_border_twotone:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #ffc778;
  bottom: -3px;
  width: 5em;
}

.u-title_border_stitch {
  position: relative;
  background: #dfefff;
  box-shadow: 0px 0px 0px 5px #dfefff;
  border: dashed 2px white;
  padding: 0.2em 0.5em;
  display: inline-block;
}
.u-title_border_stitch.--corner:after {
  position: absolute;
  content: "";
  left: -7px;
  top: -7px;
  border-width: 0 0 15px 15px;
  border-style: solid;
  border-color: #fff #fff #a8d4ff;
  box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.15);
}

.u-title_border_marker {
  background: linear-gradient(transparent 70%, #a7d6ff 70%);
}

.u-title_text_gradation {
  width: 100%;
  margin: 2em auto;
  border-top: 2px solid #555;
  border-bottom: 2px solid #555;
  line-height: 1.4;
  padding: 1rem 0;
  background: #ccc;
  background-image: -webkit-gradient(linear, 0% 0%, 25% 100%, from(#ff2c2c), to(#7a5e91));
  background-image: -moz-gradient(linear, 0% 0%, 25% 100%, from(#ff2c2c), to(#7a5e91));
  background-image: -ms-gradient(linear, 0% 0%, 25% 100%, from(#ff2c2c), to(#7a5e91));
  -webkit-background-clip: text;
          background-clip: text;
  -webkit-text-fill-color: transparent;
}

.u-title_side_border {
  position: relative;
  text-align: center;
}
.u-title_side_border span {
  position: relative;
  z-index: 2;
  display: inline-block;
  margin: 0 4em;
  padding: 0 1em;
  background-color: #fff;
  text-align: left;
}
.u-title_side_border::before {
  position: absolute;
  top: 50%;
  z-index: 1;
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: #ccc;
  background: linear-gradient(-45deg, transparent, #ccc 10%, #ccc 90%, transparent);
}

.u-indent {
  text-indent: -1em;
  padding-left: 1em;
}
.u-indent.--i2 {
  text-indent: -2em;
  padding-left: 2em;
}

.u-btn {
  display: inline-block;
  line-height: 1;
  color: #3273dc;
  background: #fff;
  border: 1px solid #3273dc;
  letter-spacing: 0;
  font-size: 1rem;
  padding: 0.75rem 3rem;
  border-radius: 2rem;
  transition: color 0.3s, background-color 0.3s;
}
.u-btn .__svg {
  stroke-width: 0;
  stroke: currentColor;
  fill: currentColor;
  color: #3273dc;
  width: 1em;
  height: 1em;
  vertical-align: top;
  transition: color 0.3s;
}
.u-btn:hover {
  background: #3273dc;
  color: #fff;
}
.u-btn:hover .__svg {
  color: #fff;
}

.u-text_shadow {
  text-shadow: #fff 2px 0px 2px, #fff -2px 0px 2px, #fff 0px -2px 2px, #fff -2px 0px 2px, #fff 2px 2px 2px, #fff -2px 2px 2px, #fff 2px -2px 2px, #fff -2px -2px 2px, #fff 1px 2px 2px, #fff -1px 2px 2px, #fff 1px -2px 2px, #fff -1px -2px 2px, #fff 2px 1px 2px, #fff -2px 1px 2px, #fff 2px -1px 2px, #fff -2px -1px 2px, #fff 1px 1px 2px, #fff -1px 1px 2px, #fff 1px -1px 2px, #fff -1px -1px 2px;
}
.u-text_shadow.--black {
  text-shadow: #222 2px 0px 2px, #222 -2px 0px 2px, #222 0px -2px 2px, #222 -2px 0px 2px, #222 2px 2px 2px, #222 -2px 2px 2px, #222 2px -2px 2px, #222 -2px -2px 2px, #222 1px 2px 2px, #222 -1px 2px 2px, #222 1px -2px 2px, #222 -1px -2px 2px, #222 2px 1px 2px, #222 -2px 1px 2px, #222 2px -1px 2px, #222 -2px -1px 2px, #222 1px 1px 2px, #222 -1px 1px 2px, #222 1px -1px 2px, #222 -1px -1px 2px;
}

.u-svg {
  stroke-width: 0;
  stroke: currentColor;
  fill: currentColor;
  width: 1.2em;
  height: 1.2em;
  vertical-align: sub;
}

.u-tel {
  color: #4a4a4a;
}
.u-tel.--icon {
  color: #4a4a4a;
}

[data-tab_contents] > div {
  display: none;
}
[data-tab_contents] > div.js-open {
  display: block;
}

[data-modal_background] {
  display: none;
}
[data-modal_background].js-open {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100vh;
  background: rgba(61, 58, 58, 0.8);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 102;
}

[data-modal_contents_text_add] {
  display: none;
}

[data-modal_contents] {
  display: none;
}
[data-modal_contents].js-open {
  display: block;
  z-index: 102;
  position: fixed;
  inset: 0;
  margin: auto;
  background: #fff;
  padding: 2rem;
  max-width: 80%;
  height: -moz-fit-content;
  height: fit-content;
}

[data-modal_contents_text] {
  padding: 1rem;
  overflow-y: auto;
  max-height: 70vh;
}

#parts_header_bar #header-bar_area {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 10rem;
  z-index: 101;
  animation: a-FadeIn 0.8s ease 0.8s 1 forwards;
  background: rgba(255, 255, 255, 0.85);
}
body.admin-bar #parts_header_bar #header-bar_area {
  top: 46px;
}
.js-scroll_fixed #parts_header_bar #header-bar_area {
  background: none !important;
}
.js-header_hide #parts_header_bar #header-bar_area {
  background: rgba(255, 255, 255, 0.85);
}
#parts_header_bar #header-bar #header-title {
  line-height: 1;
  width: 162px;
  flex: 1 0 auto;
}
#parts_header_bar #header-bar #header-title img {
  width: 100%;
  height: auto;
}
#parts_header_bar #header-bar #header-access {
  position: absolute;
  top: 0.3rem;
  right: 6rem;
}
#parts_header_bar #header-bar #header-access a {
  color: #4a4a4a;
  display: block;
}
#parts_header_bar #header-bar #header-access a img {
  max-height: 3.5rem;
  width: auto;
}
#parts_header_bar #header-bar #header_nav {
  width: 100%;
  max-width: 1640px;
  margin: 0 auto;
  padding: 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#parts_header_bar #header-bar .menu_wrap {
  width: 100%;
  display: flex;
  justify-content: flex-end;
}
#parts_header_bar #header-bar .login_menu {
  display: flex;
  margin-left: 40px;
}
#parts_header_bar #header-bar .login_menu li:not(:last-of-type) {
  margin-right: 10px;
}
#parts_header_bar #header-bar #header-menu {
  display: none;
}
.js-scroll_fixed #parts_header_bar #header-bar #header-menu {
  display: none;
}
#parts_header_bar #header-bar #header-menu .menu > li {
  margin: 0 0.8rem;
  position: relative;
}
#parts_header_bar #header-bar #header-menu .menu > li > span,
#parts_header_bar #header-bar #header-menu .menu > li > a {
  color: #4a4a4a;
  padding: 0.75rem 0.5rem;
  display: inline-block;
}
#parts_header_bar #header-bar #header-menu .menu > li > a::after {
  content: "";
  display: block;
  width: 20px;
  height: 1px;
  background: #F57386;
  position: absolute;
  bottom: -10px;
  left: 50%;
  margin-left: -10px;
  opacity: 0;
  transition: all 0.25s linear;
}
#parts_header_bar #header-bar #header-menu .menu > li > a:hover::after {
  opacity: 1;
}
#parts_header_bar #header-bar #header-menu .menu > li > span:hover {
  cursor: default;
}
#parts_header_bar #header-bar #header-menu .menu > li.menu-item-has-children::after {
  content: "";
  position: absolute;
  right: 0;
  top: 0.9em;
  stroke-width: 0;
  stroke: currentColor;
  fill: currentColor;
  background: #4a4a4a;
  width: 1.2em;
  height: 1.2em;
  -webkit-mask-image: url("/wp-content/themes/femica/images/icon/expand_more.svg#svg-expand_more");
          mask-image: url("/wp-content/themes/femica/images/icon/expand_more.svg#svg-expand_more");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  transition: all 0.4s;
}
#parts_header_bar #header-bar #header-menu .menu > li.menu-item-has-children > span,
#parts_header_bar #header-bar #header-menu .menu > li.menu-item-has-children > a {
  padding-right: 1.5rem;
}
#parts_header_bar #header-bar #header-menu .menu > li.menu-item-has-children:hover::after {
  top: 1.2em;
}
#parts_header_bar #header-bar #header-menu .menu > li.menu-item-has-children:hover .sub-menu li {
  height: auto;
  max-height: 5em;
}
#parts_header_bar #header-bar #header-menu .menu .sub-menu {
  position: absolute;
  top: 3.3rem;
  left: -1rem;
  width: 13em;
}
#parts_header_bar #header-bar #header-menu .menu .sub-menu li {
  overflow: hidden;
  height: 0;
  max-height: 0;
  transition: 0.3s;
  background: rgba(100, 100, 100, 0.8);
}
#parts_header_bar #header-bar #header-menu .menu .sub-menu li:hover {
  background: rgb(54, 54, 54);
}
#parts_header_bar #header-bar #header-menu .menu .sub-menu a {
  color: #fff !important;
  padding: 0.75rem 1rem;
  display: inline-block;
}

#parts_menu {
  opacity: 1;
}
#parts_menu #menu_area .menu_box {
  display: none;
}
#parts_menu #menu_area .menu_box #toggle-navigation .login_menu {
  display: flex;
}
#parts_menu #menu_area .menu_box #toggle-navigation .login_menu li {
  width: calc(50% - 10px);
}
#parts_menu #menu_area .menu_box #toggle-navigation .login_menu li:not(:last-of-type) {
  margin-right: 10px;
}
#parts_menu #menu_area .menu_box #toggle-navigation .login_menu li .btn a {
  width: 100%;
}
#parts_menu #menu_area .menu_box #toggle-navigation .menu {
  margin-bottom: 20px;
  font-size: 1.1rem;
  line-height: 1.5;
  font-size: 1.8rem;
}
#parts_menu #menu_area .menu_box #toggle-navigation .menu a {
  display: inline-block;
  padding: 1rem 0.75rem;
}
#parts_menu #menu_area .menu_box #toggle-navigation .menu li:not(.menu-item-has-children) {
  border-bottom: 1px solid #D9D9D9;
}
#parts_menu #menu_area .menu_box #toggle-navigation .menu .sub-menu > li {
  padding-left: 1em;
}
#parts_menu #menu_area .menu_box #toggle-navigation .menu .sub-menu > li a {
  position: relative;
  padding-left: 1.2rem;
}
#parts_menu #menu_area .menu_box #toggle-navigation .menu .sub-menu > li a::before {
  content: "-";
  position: absolute;
  top: 0.4em;
  left: -0.15em;
  font-size: 2rem;
  line-height: 1;
  vertical-align: baseline;
}
#parts_menu #menu_area .menu_box #social-list ul {
  width: 100%;
  display: flex;
  justify-content: center;
  margin-top: 2rem;
}
#parts_menu #menu_area .menu_box #social-list ul > li {
  margin: 0 1rem;
  transition-duration: 0.5s;
}
#parts_menu #menu_area .menu_box #social-list ul > li:nth-of-type(1) {
  animation: a-FadeInRight 1s ease 0.1s 1 both;
}
#parts_menu #menu_area .menu_box #social-list ul > li:nth-of-type(2) {
  animation: a-FadeInRight 1s ease 0.2s 1 both;
}
#parts_menu #menu_area .menu_box #social-list ul > li:nth-of-type(3) {
  animation: a-FadeInRight 1s ease 0.3s 1 both;
}
#parts_menu #menu_area .menu_box #social-list ul > li:nth-of-type(4) {
  animation: a-FadeInRight 1s ease 0.4s 1 both;
}
#parts_menu #menu_area .menu_box #social-list ul > li:nth-of-type(5) {
  animation: a-FadeInRight 1s ease 0.5s 1 both;
}
#parts_menu #menu_area .menu_box #social-list ul > li a:hover {
  opacity: 0.8;
}
#parts_menu #menu_area .menu_box #social-list ul > li a .svg {
  stroke-width: 0;
  stroke: currentColor;
  fill: currentColor;
  width: 1.5rem;
  height: 1.5rem;
}
#parts_menu #menu_area .__background {
  position: fixed;
  height: 100vh;
  width: 100%;
  top: 0;
  right: 0;
  background: #fff;
  opacity: 0;
  z-index: -1;
  overflow-y: auto;
}
#parts_menu #menu_area .__background::-webkit-scrollbar {
  width: 10px;
  background: transparent;
}
#parts_menu #menu_area .__background::-webkit-scrollbar-track {
  background: transparent;
}
#parts_menu #menu_area .__background::-webkit-scrollbar-thumb {
  background: rgb(110, 110, 110);
}
#parts_menu #menu_area[aria-expanded=false] {
  display: none;
}
#parts_menu #menu_area[aria-expanded=true] {
  display: block;
}
#parts_menu #menu_area.js-cloce .__background {
  animation: a-FadeOut 0.6s ease 0s 1 both;
  z-index: 99;
}
#parts_menu #menu_area.js-open .menu_box {
  display: block;
  width: 100%;
  z-index: 100;
  padding: 6rem 2rem 2rem;
  overflow-y: scroll;
  height: 82vh;
  height: calc(100svh - 60px);
  margin-top: 30px;
}
#parts_menu #menu_area.js-open .__background {
  animation: a-FadeIn 0.6s ease 0s 1 both;
  z-index: 99;
}

#parts_footer {
  position: relative;
  width: 100%;
  background: #002665;
}
#parts_footer a {
  color: #fff;
}
#parts_footer .footer_flex {
  width: 100%;
  padding: 2rem 0;
}
#parts_footer .footer_flex > .__left {
  margin-bottom: 2rem;
}
#parts_footer .company_info {
  color: #fff;
}
#parts_footer .company_info > .__logo {
  width: 50%;
  margin-bottom: 1rem;
}
#parts_footer #menu-footer {
  width: 100%;
}
#parts_footer #menu-footer > li {
  margin-bottom: 1rem;
}
#parts_footer #menu-footer > li a {
  position: relative;
  display: inline-block;
}
#parts_footer #menu-footer > li a::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 2px;
  border-radius: 2px;
  transition: transform 0.3s ease-in-out;
  background-color: #fff;
  bottom: -0.2em;
  left: 0;
  transform-origin: right;
  transform: scaleX(0);
}
#parts_footer #menu-footer > li a:hover::after {
  transform-origin: left;
  transform: scaleX(1);
}
#parts_footer #menu-footer .sub-menu > li {
  margin-top: 0.5rem;
}
#parts_footer #menu-footer .sub-menu > li::before {
  content: "- ";
  color: #fff;
  font-size: 2rem;
  line-height: 1;
  vertical-align: sub;
}
#parts_footer #copyright {
  padding: 1rem 2rem 1rem;
  text-align: center;
  width: 100%;
  background: #00001a;
  color: #fff;
}
#parts_footer #copyright a {
  color: #fff;
}
#parts_footer #footer-social-list {
  z-index: 6;
}
#parts_footer #footer-social-list ul {
  width: 100%;
  display: flex;
  justify-content: center;
}
#parts_footer #footer-social-list ul > li {
  margin: 0.5rem 1rem 0;
}
#parts_footer #footer-social-list ul > li a {
  font-size: 1.5rem;
}
#parts_footer #footer-social-list ul > li a:hover {
  opacity: 0.8;
}
#parts_footer #footer-social-list ul > li a .svg {
  stroke-width: 0;
  stroke: currentColor;
  fill: currentColor;
  width: 1.75rem;
  height: 1.75rem;
  color: #fff;
}

#col-left .widget_search .wp-block-search__label,
#col-right .widget_search .wp-block-search__label {
  display: none;
}
#col-left .widget_search .wp-block-search__input,
#col-right .widget_search .wp-block-search__input {
  padding: 0.5rem 2rem 0.5rem 0.5rem;
  width: 100%;
}
#col-left .widget_search .wp-block-search__inside-wrapper,
#col-right .widget_search .wp-block-search__inside-wrapper {
  position: relative;
}
#col-left .widget_search .search-icon,
#col-right .widget_search .search-icon {
  position: absolute;
  right: 0.5rem;
  top: 0.25rem;
  width: 2rem;
  height: 2rem;
}

#col-main.main-page-front .section {
  margin-bottom: 3rem;
}
#col-main.main-page-front .section_top {
  text-align: center;
  margin-bottom: 2rem;
}
#col-main.main-page-front .section_top > .__title {
  font-weight: bold;
  color: #002665;
}
#col-main.main-page-front .section_top > .__description {
  font-size: 1.1rem;
}
#col-main.main-page-front .top-movie_area {
  margin-top: 1.5rem;
}
#col-main.main-page-front iframe .Title_module_header__9dc182ba {
  display: none;
}
#col-main.main-page-front .section-news .fontpage_news .news_btn_box {
  text-align: center;
}
#col-main.main-page-front .section-news .fontpage_news .news_btn_box .news_btn {
  display: inline-block;
  line-height: 1;
  color: #3273dc;
  background: #fff;
  border: 1px solid #3273dc;
  letter-spacing: 0.2em;
  font-size: 1rem;
  padding: 1rem 3rem;
  border-radius: 2rem;
  transition: color 0.3s, background-color 0.3s;
}
#col-main.main-page-front .section-news .fontpage_news .news_btn_box .news_btn .__svg {
  stroke-width: 0;
  stroke: currentColor;
  fill: currentColor;
  color: #3273dc;
  width: 1em;
  height: 1em;
  vertical-align: top;
  transition: color 0.3s;
}
#col-main.main-page-front .section-news .fontpage_news .news_btn_box .news_btn:hover {
  background: #3273dc;
  color: #fff;
}
#col-main.main-page-front .section-news .fontpage_news .news_btn_box .news_btn:hover .__svg {
  color: #fff;
}
#col-main.main-page-front #movie_sec .not-member_txt {
  text-align: center;
  background: #fff;
  padding: 2rem;
}
#col-main.main-page-front #movie_sec .not-member_txt p {
  margin-bottom: 1.5rem;
  margin-top: 1rem;
}
#col-main.main-page-front #movie_sec .explanation_movie {
  text-align: center;
  margin-bottom: 1.5rem;
}
#col-main.main-page-front #movie_sec .list_movie .c-cat_grid-1 {
  margin-bottom: 2rem;
}
#col-main.main-page-front #movie_sec .list_movie .c-cat_grid-1 ul li .__img {
  margin-bottom: 1rem;
  text-align: center;
  border: 1px solid #eee;
}
#col-main.main-page-front #movie_sec .list_movie .c-cat_grid-1 ul li .__img img {
  height: 180px;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
#col-main.main-page-front #movie_sec .list_movie .c-cat_grid-1 ul li .__img.noimage img {
  width: 50%;
}
#col-main.main-page-front #movie_sec .list_movie .c-cat_grid-1 ul li .inner_box .__title {
  font-size: 1.7rem;
  font-weight: 500;
}
#col-main.main-page-front #movie_sec .list_movie .c-cat_grid-1 ul li .inner_btn .__btn {
  font-size: 1.5rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic Medium", "游ゴシック Medium", "Noto Sans JP", "Hiragino Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "Noto Sans Japanese", Meiryo, sans-serif;
  color: #F57386;
  font-weight: bold;
  border: 1px solid #F57386;
  letter-spacing: 0;
}
#col-main.main-page-front #movie_sec .list_movie .c-cat_grid-1 ul li .inner_btn .__btn:hover {
  color: #fff;
  background: #F57386;
}
#col-main.main-page-front #subscription .read_txt {
  text-align: center;
}
#col-main.main-page-front #subsidy .subsidy-flex {
  display: flex;
  gap: 2rem;
}
#col-main.main-page-front #subsidy .subsidy-flex .box {
  width: 50%;
  text-align: center;
}
#col-main.main-page-front #subsidy .subsidy-flex .box img {
  width: 80%;
  margin-bottom: 1rem;
}
#col-main.main-page-front #subsidy .subsidy-flex .box h2 {
  text-align: center;
  font-size: 2rem;
  font-weight: bold;
  background: #efefef;
  padding: 1.5rem 3rem;
  border-radius: 25px;
  display: inline-block;
}
#col-main.main-page-front #subsidy .subsidy-flex .box h2.ministry {
  color: #0097d0;
}
#col-main.main-page-front #subsidy .subsidy-flex .box h2.osaka {
  color: #023893;
}

#reservation_sec table td, #reservation_sec table th {
  border-bottom: none !important;
}

#page_cared #reservation_sec table td {
  border-bottom: 1px solid #d9d9d9 !important;
}

body {
  min-width: 100%;
}

input {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

#main_contents .block {
  padding: 55px 0 105px;
}

.tutor-loginpass .post-password-form input[type=submit] {
  max-width: 320px;
  width: 100%;
  min-width: auto;
}

#pagetop {
  z-index: 17;
}

#page_index #intro_pickup_sec .intro_inner, #page_online #intro_pickup_sec .intro_inner {
  padding: 100px 200px 100px 200px;
}
#page_index .course_list .list, #page_online .course_list .list {
  gap: 20px;
  margin: 0;
}
#footer #footer_nav {
  gap: 80px;
}
#footer .footer-insta {
  width: 4em;
  height: 4em;
  display: flex;
  justify-content: center;
}
#footer .footer-insta img {
  width: 100%;
}
#header-social-list .header-insta {
  width: 4em;
  height: 4em;
  display: flex;
  justify-content: center;
}
#header-social-list .header-insta img {
  width: 100%;
}
#page_index #online_sec .flow_area {
  margin-top: 20px;
  margin-bottom: 50px;
}
#page_index #online_sec .flow_area img {
  width: 100%;
  height: auto;
}
.box_list02 .list {
  gap: 20px;
  justify-content: flex-start;
  margin-bottom: 10px;
}
.box_list02 .list li {
  max-width: calc((100% - 40px) / 3);
  width: 100%;
}
.box_list02 .list .img {
  padding-top: 0;
}
.box_list02 .list .img img {
  position: static;
}

.form_wrap table {
  border-spacing: 20px 20px;
  border-collapse: separate;
  margin: 0 auto;
}

.form_item .default .wpcf7-list-item {
  display: inline-block;
  padding-right: 20px;
  width: 33.33%;
  margin-left: 0;
}

.form .btn01 .wrap {
  text-shadow: none;
}

.form_wrap .form_item .item_title {
  width: 100%;
  margin-bottom: 5px;
}
.form_wrap .form_item .item_title ._small {
  font-size: 1.4rem;
}
#target_sec {
  margin-bottom: 80px;
}

.administrator-block {
  padding-bottom: 105px;
}

.contents .login_none {
  padding-top: 105px;
  padding-bottom: 105px;
}
.contents .login_none .css-events-admin-login, .contents .login_none .swpm-post-not-logged-in-msg {
  margin-bottom: 1em;
}

#sec_login .swpm-edit-profile-form .form_wrap .form_item .item_title {
  width: 100%;
}

.swpm-username-label .form_item .item_title {
  font-size: 1.6rem;
}
.form_item .item_main input[type=date] {
  height: 42px;
  padding: 7px 15px;
  width: 95%;
}

.swpm-pw-reset-submit-button {
  text-align: left;
}

#about_sec .border_box01 {
  margin-top: 35px;
}

.search_sec .form input[type=radio],
.search_sec .form input[type=checkbox] {
  display: inline-block;
}
.search_sec .form_item ul.default {
  margin-top: 30px;
}
.search_sec .form label {
  display: flex;
  align-items: center;
  gap: 7px;
}

.search_sec .search_box .form_item .date_area {
  flex-wrap: wrap;
  gap: 20px 10px;
}
.search_sec .search_box .form_item .date_area .date {
  width: 100%;
  height: 45px;
}
.search_sec .search_box .form_item .date_area .date input {
  padding: 7px 20px;
}
#page_instructor .member_block .member_list li {
  width: 49%;
}

#page_instructor .member_block .member_list .btn01 {
  margin-top: 2em;
}

#page_instructor .problem_area .cont_center ul {
  max-width: 500px;
  width: 100%;
}
#page_instructor .course_list .list .inner {
  display: grid;
}
#page_instructor #course_sec .flow_area {
  margin-top: 20px;
  margin-bottom: 10px;
}
#page_instructor #course_sec .flow_area img {
  width: 100%;
  height: auto;
}
input[type=password] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: transparent;
  border: 2px solid #9098a9;
  border-radius: 0.5rem;
  outline: none;
  padding: 0.75rem 1rem;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■main_vs
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.main_vs {
  display: flex;
  justify-content: flex-end;
  position: relative;
  height: 360px;
}
.main_vs.color {
  background: #F8F8F8;
}

.main_vs .first_view_img {
  height: 100%;
  border-radius: 0 0 0 200px;
  overflow: hidden;
  position: absolute;
  left: 50%;
  margin-left: -600px;
}
.main_vs .txt_area {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
}
.main_vs .txt_area .txt_inner {
  max-width: 1450px;
  height: 100%;
  margin: -28px auto 0;
  position: relative;
}
.main_vs .txt_area .inner {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  display: flex;
  justify-content: center;
  flex-direction: column;
}
.main_vs .txt_area .txt {
  line-height: 1.2;
  font-size: 4.8rem;
  font-weight: 500;
  color: #fff;
  background: #F57386;
  border-radius: 0 10px 10px 0;
  padding: 12px 40px 12px 0;
  position: relative;
}
.main_vs .txt_area .txt:before {
  content: "";
  display: block;
  width: 100vw;
  height: 100%;
  background: #F57386;
  position: absolute;
  left: -100vw;
  top: 0;
}

.main_vs .txt_area .txt + .txt {
  margin-top: 20px;
}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ■MENU
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■main_vs
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.view_front .main_vs {
  height: 660px;
}
.view_front .main_vs .txt_area .txt_inner {
  margin-top: -78px;
}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■#news_sec
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#page_news .category_link {
  display: flex;
  justify-content: space-between;
  margin-bottom: 25px;
}
#page_news .category_link li {
  width: 32%;
  line-height: 1.3;
  border: 1px solid #545454;
  border-radius: 10px;
  background: #fff;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.25s linear;
}
#page_news .category_link li a {
  width: 100%;
  padding: 15px 15px;
}
#page_news .category_link li:hover {
  cursor: pointer;
  background: rgba(84, 84, 84, 0.1);
}

#page_news .category_link li.active {
  color: #fff;
  font-weight: 700;
  background: #545454;
}

#page_news .category_link li.care {
  border-color: #F57386;
}

#page_news .category_link li.care:hover {
  background: rgba(245, 115, 134, 0.1);
}

#page_news .category_link li.care.active {
  background: #F57386;
}

#page_news .category_link li.instructor {
  border-color: #9ADBE8;
}

#page_news .category_link li.instructor:hover {
  background: rgba(154, 219, 232, 0.1);
}

#page_news .category_link li.instructor.active {
  background: #9ADBE8;
}

#page_news .tab_cont {
  display: none;
}

#page_news .tab_cont.active {
  display: block;
}

#page_news .btn01 {
  margin-top: 40px;
}

#page_news article #hd_area {
  align-items: center;
}

#page_policy #tokusho_sec .btn01 {
  margin-top: 60px;
}

div#mfp_hidden {
  overflow: hidden;
  width: 1px;
  height: 1px;
  padding: 0px;
  margin: 0px;
}

div#mfp_hidden input {
  margin: 10px;
}

div.mfp_thanks {
  padding: 30px;
}

div.mfp_thanks p {
  line-height: 1.7em;
}

div.mfp_thanks ul.mfp_caution {
  margin: 0px;
  padding: 0px;
}

div.mfp_thanks ul.mfp_caution li {
  display: block;
  color: #C00;
  margin: 0px;
  padding: 5px 0px;
}

div#mfp_thanks {
  text-align: center;
  font-size: 18px;
  padding: 20px 0px;
}

div#mfp_thanks strong {
  color: #C00;
  font-size: 24px;
}

/*
form#mailformpro {
	padding: 10px 0px;
}
form#mailformpro dl dt {
	float: left;
	width: 160px;
	clear: both;
	font-size: 12px;
	padding: 10px 0px;
	text-align: right;
	border-top: solid 1px #CCC;
	margin: 0px;
}
form#mailformpro dl dd {
	border-top: solid 1px #CCC;
	margin: 0px;
	padding: 10px 5px 20px 170px;
	font-size: 12px;
	line-height: 1.5em;
	text-align: left;
}
form#mailformpro dl dd ul,form#mailformpro dl dd ol {
	margin: 0px;
	padding: 0px;
}
form#mailformpro dl dd ul li,form#mailformpro dl dd ol li {
	margin: 0px;
	padding: 0px;
	list-style: none;
}
*/
.must {
  display: block;
  background-color: #C00;
  border: solid 2px #C00;
  text-shadow: 0px 1px 2px #933;
  padding: 2px 5px;
  font-size: 10px;
  color: #FFF;
  float: left;
  margin: 0px 5px;
  border-radius: 4px;
  box-shadow: 0px 0px 5px #CCC;
  background-image: url(_images/mfp_header.png);
  background-size: 100% 100%;
}

.optionally {
  display: block;
  background-color: #06C;
  border: solid 2px #06C;
  text-shadow: 0px 1px 2px #933;
  padding: 2px 5px;
  font-size: 10px;
  color: #FFF;
  float: left;
  margin: 0px 5px;
  border-radius: 4px;
  box-shadow: 0px 0px 5px #CCC;
  background-image: url(_images/mfp_header.png);
  background-size: 100% 100%;
}

/*
form#mailformpro label {
	border-radius: 3px;
	margin: 3px;
	display: inline-block;
	white-space: nowrap;
}
*/
form#mailformpro label.mfp_checked {
  padding: 3px;
  border: solid 1px #CCC;
  background-color: #E8EEF9;
  box-shadow: 0px 1px 3px #CCC inset;
}

form#mailformpro label.mfp_not_checked {
  padding: 3px;
  border: solid 1px #EEE;
}

/*
table#mfp_confirm_table {
	border-spacing: 0px;
	border-collapse: collapse;
	width: 100%;
}
table#mfp_confirm_table tr.mfp_colored {
	background-color: #F6F7F9;
}
table#mfp_confirm_table tr.mfp_achroma {
	background-color: #FFF;
}
table#mfp_confirm_table tr th,table#mfp_confirm_table tr td {
	text-align: left;
	font-size: 12px;
	border-top: solid 1px #CCC;
	padding: 5px 10px;
}
table#mfp_confirm_table tr th {
	white-space: nowrap;
	width: 200px;
}
table#mfp_confirm_table tr td {
	line-height: 1.5em;
	word-break: break-all;
}
*/
div#mfp_phase_confirm {
  clear: both;
}

/*
div#mfp_phase_confirm h4 {
	font-size: 36px;
	padding: 10px 0px 0px 0px;
	text-align: center;
}
*/
div#mfp_overlay {
  position: absolute;
  display: none;
  z-index: 10001;
}

div#mfp_overlay_inner {
  background-color: #FFF;
  padding: 15px;
  margin: 0px auto;
  border-radius: 5px;
  box-shadow: 0px 0px 10px #000;
  width: 640px;
  max-width: 90%;
}

div#mfp_overlay_background {
  background-color: #000;
  position: absolute;
  display: none;
  z-index: 10000;
}

div#mfp_loading_screen {
  z-index: 20000;
  opacity: 0.8;
  display: none;
  background-color: #000;
  position: absolute;
}

/*
div#mfp_loading {
	z-index: 20001;
	position: absolute;
	display: none;
	width: 40px;
	height: 40px;
	background-image: url(_images/mfp_loading.gif);
}
*/
.mfp_colored {
  background-color: #F6F7F9;
}

.mfp_achroma {
  background-color: #FFF;
}

div.mfp_err {
  clear: both;
  display: none;
  text-align: left;
  margin: 5px 0px 0px 0px;
  padding: 3px 0px 5px 17px;
  color: #F00;
  font-size: 12px;
  line-height: normal;
  background-position: 0px 1px;
}

.mfp_parent_error {
  border: solid 2px #F00;
}

.problem {
  background-color: #FCC;
}

div#mfp_error {
  background-color: #FEE;
  border: solid 1px #F00;
  padding: 10px;
  display: none;
}

div#mfp_error p {
  padding: 0px;
  margin: 0px;
  font-size: 14px;
  text-align: center;
}

div#mfp_error p strong {
  font-size: 18px;
  color: #F00;
}

div#mfp_warning {
  background-color: #FEE;
  border: solid 1px #F00;
  padding: 10px;
  display: none;
  border-radius: 5px;
}

div#mfp_warning p {
  padding: 0px;
  margin: 0px;
  font-size: 14px;
  text-align: center;
}

div#mfp_warning p strong {
  font-size: 18px;
  color: #F00;
}

div#mfp_price {
  color: #C00;
  font-size: 36px;
  padding: 10px;
  font-weight: bolder;
}

div#mfp_price span {
  color: #666;
  font-size: 12px;
  font-weight: normal;
}

button.mfp_next, button.mfp_prev {
  font-size: 18px;
  margin: 10px;
  padding: 5px 10px;
}

button.mfp_next {
  float: right;
}

button.mfp_prev {
  float: left;
}

ul#mfp_phase_stat {
  padding: 10px;
  text-align: center;
}

ul#mfp_phase_stat li {
  display: inline-block;
  padding: 8px 15px;
  border-radius: 5px;
  margin: 0px 5px;
  list-style: none;
  font-size: 14px;
}

ul#mfp_phase_stat li.mfp_phase_arrow {
  box-shadow: none;
  color: #999;
  padding: 8px 0px;
}

ul#mfp_phase_stat li.mfp_active_phase {
  box-shadow: 0px 1px 6px #000;
  background-image: url(_images/mfp_header.png);
  background-size: 100% 100%;
  background-color: #0068B7;
  border: solid 2px #0068B7;
  font-weight: bolder;
  color: #FFF;
  text-shadow: 0px 1px 3px #000;
}

ul#mfp_phase_stat li.mfp_inactive_phase {
  background-image: url(_images/mfp_header.png);
  background-size: 100% 100%;
  background-color: #EEE;
  border: solid 2px #EEE;
  color: #999;
  box-shadow: 0px 1px 6px #CCC;
}

div#mfp_shopping_cart {
  border: solid 1px #CCC;
  margin: 0px;
  padding: 0px;
}

div#mfp_shopping_cart p {
  margin: 0px;
  text-align: center;
  padding: 20px 10px;
  font-size: 12px;
  background-color: #FEE;
}

table.mfp_shoppingcart {
  border-spacing: 0px;
  border-collapse: collapse;
  width: 100%;
}

table.mfp_shoppingcart thead tr td {
  background-color: #EEE;
  border-bottom: solid 1px #CCC;
  text-align: center;
  font-size: 12px;
  padding: 5px;
}

table.mfp_shoppingcart tbody tr th, table.mfp_shoppingcart tbody tr td {
  font-size: 12px;
  padding: 5px;
  border-bottom: solid 1px #CCC;
}

table.mfp_shoppingcart tbody tr td select {
  display: block;
  margin: 0px auto;
  text-align: center;
}

table.mfp_shoppingcart tbody tr td select option {
  text-align: center;
}

table.mfp_shoppingcart tbody tr th span {
  display: block;
  font-weight: normal;
  font-size: 10px;
  color: #666;
  padding: 3px 0px;
}

table.mfp_shoppingcart tfoot tr td {
  padding: 5px;
  font-size: 16px;
  font-weight: bolder;
  color: #900;
}

td.msc_price {
  font-size: 12px;
  text-align: right;
}

div.mfp_buttons {
  clear: both;
  padding: 10px 0px;
  text-align: center;
}

.imagebutton {
  margin: 0px;
  padding: 0px;
  border: none;
  outline: none;
  background: none;
}

.mfp_element_all {
  max-width: 90%;
}

.mfp_element_text,
.mfp_element_number,
.mfp_element_select-one,
.mfp_element_email,
.mfp_element_tel,
.mfp_element_textarea,
.mfp_element_date,
.mfp_element_password {
  border: solid 1px #CCC;
  border-radius: 3px;
  box-shadow: 0px 0px 5px #CCC inset;
  padding: 3px 8px;
  margin: 2px;
  vertical-align: middle;
}

.mfp_element_checkbox,
.mfp_element_radio {
  vertical-align: middle;
  margin: 0px 2px;
}

.mfp_element_file {
  font-size: 12px;
  display: inline-block;
  padding: 10px 10px;
  vertical-align: middle;
  border: solid 1px #CCC;
  border-radius: 3px;
  box-shadow: 0px 0px 5px #CCC inset;
  background: #EEE;
}

.mfp_element_submit, .mfp_element_reset, .mfp_element_button, button.mfp_next, button.mfp_prev {
  border-radius: 5px;
  padding: 5px 10px;
  border: solid 1px #CCC;
  background: gradient(linear, center top, center bottom, from(#EEE), to(#CCC));
  background: -ms-linear-gradient(top, #EEE 0%, #CCC 100%);
  text-shadow: 0px 2px 0px #FFF;
  font-size: 18px;
  cursor: pointer;
  outline: none;
}

.mfp_element_reset {
  color: #333;
}

.mfp_element_submit:hover, .mfp_element_reset:hover, .mfp_element_button:hover, button.mfp_next:hover, button.mfp_prev:hover {
  background: gradient(linear, center top, center bottom, from(#FFF), to(#CCC));
  background: -ms-linear-gradient(top, #FFF 0%, #CCC 100%);
  box-shadow: 0px 2px 15px #CCC;
}

button.mfp_next, button.mfp_prev {
  font-size: 14px;
}

input#mfp_reserve_item, input#mfp_reserve_date {
  display: none;
}

div#mfp_reserve_wrapper {
  position: relative;
  overflow: hidden;
  border: solid 1px #CCC;
}

div#mfp_reserve_inner {
  position: relative;
  padding: 0px 0px 0px 100px;
  overflow: auto;
}

div#mfp_reserve_wrapper table {
  border-spacing: 0px;
  border-collapse: collapse;
}

div#mfp_reserve_wrapper table.mfp_reserve_table_label {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100px;
  background-color: #FEE;
  z-index: 100;
}

div#mfp_reserve_wrapper table.mfp_reserve_table_value {
  padding: 0px 0px 0px 0px;
}

div#mfp_reserve_wrapper table.mfp_reserve_table_value tr td.mfp_reserve_active,
div#mfp_reserve_wrapper table.mfp_reserve_table_value tr td.mfp_reserve_warning {
  cursor: pointer;
}

div#mfp_reserve_wrapper table.mfp_reserve_table_value tr td.mfp_reserve_active:hover,
div#mfp_reserve_wrapper table.mfp_reserve_table_value tr td.mfp_reserve_warning:hover {
  background-color: #E8EEF9;
}

div#mfp_reserve_wrapper table.mfp_reserve_table_value tr td.mfp_reserve_current {
  background-color: #0068B7;
  color: #FFF;
}

td.mfp_reserve_disabled {
  background-color: #CCC;
}

td.mfp_reserve_warning {
  background-color: #FFC;
}

div#mfp_reserve_wrapper table tr td, div#mfp_reserve_wrapper table tr th {
  border: solid 1px #CCC;
  padding: 0px 5px;
  font-size: 12px;
  text-align: center;
  font-family: Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
  font-weight: normal;
  height: 20px;
  text-align: left;
}

td.mfp_reserve_week_0 {
  color: #F00;
  background-color: #FEE;
}

td.mfp_reserve_week_6 {
  color: #00F;
  background-color: #EEF;
}

div.mfp_ok {
  border-radius: 5px;
  background-color: #090;
  border: solid 1px #090;
  display: inline-block;
  line-height: 1.5em;
  padding: 0px 5px;
  margin: 0px 2px;
  color: #FFF;
  font-size: 10px;
  background-image: url(_images/mfp_header.png);
  background-size: 100% 100%;
  display: none;
}

div.prefcodeWrapper {
  position: relative;
}

div.prefcodeResult {
  position: absolute;
  top: 0px;
  left: 0px;
  padding: 5px;
  border: solid 1px #CCC;
  background-color: #FFF;
  box-shadow: 0px 0px 5px #CCC;
  display: none;
}

div.prefcodeResult div {
  cursor: pointer;
}

div.prefcodeResult div:hover {
  background-color: #C9EBFB;
}

div.prefcodeResult div.prefcodeNext {
  background-color: #EEE;
  text-align: center;
}

div.prefLoading {
  padding: 60px 100px;
  background: url(_images/mfp_zip_loading.gif) no-repeat center center;
}

div.mfpSuggestWrapper {
  position: relative;
}

div.mfpSuggestResult {
  position: absolute;
  top: 0px;
  left: 0px;
  padding: 5px;
  border: solid 1px #CCC;
  background-color: #FFF;
  box-shadow: 0px 0px 5px #CCC;
  display: none;
}

div.mfpSuggestResult div {
  cursor: pointer;
}

div.mfpSuggestResult div:hover {
  background-color: #C9EBFB;
}

div.mfpSuggestResult div.mfpSuggestNext {
  background-color: #EEE;
  text-align: center;
}

div.prefLoading {
  padding: 60px 100px;
  background: url(_images/mfp_zip_loading.gif) no-repeat center center;
}

.hidefield {
  height: 0px;
  overflow: hidden;
}

.showfield {
  height: auto;
  overflow: visible;
}

div.mfp_attached_thumbnails {
  display: none;
  padding: 5px;
  margin: 5px auto;
  border: solid 1px #CCC;
  border-radius: 3px;
  box-shadow: 0px 0px 5px #CCC inset;
  background: #EEE;
}

div.mfp_attached_thumbnails ul {
  margin: 0px;
  padding: 0px;
}

form#mailformpro dl dd div.mfp_attached_thumbnails ul li {
  display: inline-block;
  vertical-align: top;
  padding: 0px;
  border: solid 4px #FFF;
  margin: 5px;
  box-shadow: 0px 2px 5px #999;
}

form#mailformpro dl dd div.mfp_attached_thumbnails ul li a {
  display: block;
  max-height: 100px;
  overflow: hidden;
}

div.mfp_attached_thumbnails ul li a img {
  display: block;
  max-width: 80px;
}

button.mfp_attached_reset {
  font-size: 14px;
}

div.mfp_draganddrop {
  margin: 5px auto;
  width: 100%;
  height: 200px;
  border: solid 2px #CCC;
  border-radius: 3px;
  background: url(_images/draganddrop.png) no-repeat center center #EEE;
  background-size: auto 80%;
}

div.mfp_dragover {
  border: solid 2px #0068B7;
  background-color: #FFF;
}

div.mfp_attached_filelist {
  margin: 5px auto;
  padding: 5px;
  width: 100%;
  border: solid 1px #CCC;
  border-radius: 3px;
}

form#mailformpro dl dd div.mfp_attached_filelist ul,
div.mfp_attached_filelist ul {
  padding: 5px;
}

form#mailformpro dl dd div.mfp_attached_filelist ul li,
div.mfp_attached_filelist ul li {
  padding: 5px 5px 5px 2em;
  background: url(_images/file.png) no-repeat 5px center;
  background-size: 1.3em 1.3em;
  display: inline-block;
  margin-right: 1em;
}

form#mailformpro dl dd div.mfp_attached_filelist ul li:last-child,
div.mfp_attached_filelist ul li:last-child {
  border: none;
}

div.mfp_guide {
  position: relative;
  width: 1px;
  height: 1px;
}

div.mfp_guide div {
  position: absolute;
  bottom: 0px;
  left: 0px;
  margin-top: -2em;
  white-space: nowrap;
  border-radius: 5px;
  padding: 5px 10px;
  line-height: 1em;
  font-size: 12px;
  color: #FFF;
  font-weight: bolder;
  background: #F00;
  display: none;
}

div#mfp_numticket_wrapper,
div#mfp_numticket_wrapper * {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
}

div#mfp_numticket_wrapper {
  clear: both;
  padding: 15px;
}

div#mfp_numticket_wrapper section#numticket_message_wrapper {
  border: solid 3px #F00;
  border-radius: 5px;
  background: #FEE;
  padding: 15px;
  font-size: 16px;
  line-height: 1.7em;
  margin: 5px auto;
}

div#mfp_numticket_wrapper section#numticket_waitTime {
  border: solid 3px #CCC;
  border-radius: 5px;
  background: #FFF;
  padding: 15px;
  font-size: 16px;
  margin: 10px auto;
}

div#mfp_numticket_wrapper section#numticket_waitTime strong {
  font-size: 32px;
  display: block;
  text-align: center;
}

div#mfp_numticket_wrapper section#numticket_waitTime p.numticket_center {
  text-align: center;
}

div.mfp_traffic_status {
  max-width: 460px;
  margin: 10px auto;
  border: solid 1px #CCC;
  border-radius: 3px;
  padding: 15px;
}

div.mfp_traffic_status h3 {
  padding: 0;
  margin: 0;
  font-size: 16px;
  font-weight: normal;
  color: #999;
}

div.mfp_traffic_status table {
  text-align: center;
  width: 100%;
}

div#wrapper div.mfp_traffic_status table tr th,
div#wrapper div.mfp_traffic_status table tr td,
div.mfp_traffic_status table td,
div.mfp_traffic_status table th {
  border: none;
  padding: 0;
}

div#wrapper div.mfp_traffic_status table tr td,
div.mfp_traffic_status table td {
  padding: 0 2px;
}

div#wrapper div.mfp_traffic_status table tr th,
div.mfp_traffic_status table th {
  border-top: solid 1px #CCC;
  font-size: 10px;
  font-weight: normal;
  padding-top: 5px;
  color: #999;
}

div.mfp_traffic_status table td {
  height: 100px;
}

div.mfp_traffic_status table td span {
  display: block;
  background: #7BAAF7;
  border-radius: 3px 3px 0 0;
  border-top: solid 1px #66A1F7;
  border-right: solid 1px #66A1F7;
  border-left: solid 1px #66A1F7;
  min-width: 10px;
  max-width: 30px;
  margin: 0 auto;
  padding-bottom: 10px;
}

div.mfp_traffic_status table td span.mfp_traffic_status_current {
  background: #5D7AF2;
  border-top: solid 1px #546CD1;
  border-right: solid 1px #546CD1;
  border-left: solid 1px #546CD1;
}

.mfp_ok {
  background-color: rgba(0, 255, 0, 0.2);
}

.mfp_ng {
  background-color: rgba(255, 0, 0, 0.2);
}

div#mfp_OperationCheck div#mfp_OperationCheck_inner {
  display: none;
}

div#mfp_OperationCheck strong {
  background: #090;
  display: block;
  color: #222;
  text-align: center;
  border-radius: 3px;
}

div#mfp_OperationCheck * {
  padding: 0px;
  margin: 0px;
  font-size: 12px;
}

div#mfp_OperationCheck p {
  padding: 0px 5px;
  margin: 0px;
  font-size: 12px;
}

div#mfp_OperationCheck p a {
  color: #0C0;
  text-decoration: none;
}

div#mfp_OperationCheck p a:hover,
div#mfp_OperationCheck p button:hover {
  text-decoration: underline;
}

div#mfp_OperationCheck p button {
  border: none;
  background: none;
  color: #0C0;
  cursor: pointer;
}

div#mfp_OperationCheck ul li,
div#mfp_OperationCheck ul li label,
div#mfp_OperationCheck ul li label input {
  line-height: 12px;
  font-size: 12px;
  list-style: none;
  vertical-align: middle;
}

div#mfp_OperationCheck ul li {
  padding: 5px 10px;
}

div#mfp_OperationCheck ul li label {
  text-decoration: underline;
}

button#mfp_recorder_record,
button#mfp_recorder_clear,
button#mfp_recorder_restore {
  border-radius: 5px;
  padding: 5px 10px 5px 2em;
  border: solid 1px #CCC;
  background: gradient(linear, center top, center bottom, from(#EEE), to(#CCC));
  background: -ms-linear-gradient(top, #EEE 0%, #CCC 100%);
  text-shadow: 0px 2px 0px #FFF;
  font-size: 16px;
  cursor: pointer;
  outline: none;
  display: inline-block;
  margin: 5px auto;
}

button#mfp_recorder_record {
  background: url(_images/mfp_record_disabled.png) no-repeat 5px center #EEE;
  background-size: 24px 24px;
}

button#mfp_recorder_clear {
  background: url(_images/mfp_record_remove.png) no-repeat 5px center #EEE;
  background-size: 24px 24px;
}

button#mfp_recorder_restore {
  background: url(_images/mfp_record_restore.png) no-repeat 5px center #EEE;
  background-size: 24px 24px;
}

button.enabled#mfp_recorder_record,
button.enabled#mfp_recorder_clear,
button.enabled#mfp_recorder_restore {
  background: url(_images/mfp_record_enabled.png) no-repeat 5px center #EEE;
  background-size: 24px 24px;
}

div#mfp_recorder_wrap {
  border: solid 1px #CCC;
  padding: 10px;
  text-align: center;
  margin: 5px auto;
}

td.request_image {
  width: 100px;
}

td.request_image img {
  max-width: 100px;
}

button.mfp_submit_enable {
  background: none;
  background: #000090;
}

button.mfp_submit_disable {
  background: none;
  background: #FD8282;
}

span.mfp_tips {
  background-image: url(_images/mfp_header.png);
  background-size: 100% 100%;
  background-color: #FCC;
  display: block;
  border-radius: 5px;
  padding: 10px;
  margin: 2px;
  box-shadow: 0px 2px 10px #999;
}

span.mfp_tips strong {
  color: #800040;
}

span.mfp_tips span {
  display: block;
  padding: 10px;
  color: #008080;
}

span.mfp_tips em {
  font-style: normal;
  color: #090;
  font-weight: bold;
}

div.mfp_estimate_wrapper {
  border: solid 1px #CCC;
  padding: 10px;
  margin: 5px;
  border-radius: 5px;
}

div.mfp_estimate_wrapper div.mfp_estimate_wrap {
  position: relative;
  padding: 10px;
  border: solid 1px #CCC;
  border-radius: 5px;
  margin: 10px 0;
  transition-property: all;
  transition-duration: 0.5s;
  transition-timing-function: ease-in-out;
}

div.mfp_estimate_wrapper div.mfp_estimate_wrap div.mfp_estimate_label {
  position: absolute;
  top: -0.7em;
  left: 1em;
  display: inline-block;
  background: #FFF;
  font-size: 12px;
  padding: 0 0.5em;
  color: #666;
}

div.mfp_estimate_wrapper div.mfp_estimate_wrap select {
  font-size: 18px;
  margin: 5px 0;
  padding: 5px 10px;
  line-height: 1em;
  min-height: 2.5em;
}

div.mfp_estimate_wrapper div.mfp_estimate_wrap img {
  width: 100%;
  max-width: 240px;
  display: block;
  margin: 0 auto;
}

div.mfp_estimate_wrapper div.mfp_estimate_wrap strong {
  display: block;
  text-align: right;
  color: #900;
  font-size: 24px;
}

div.mfp_estimate_wrapper div.mfp_estimate_wrap strong em {
  display: inline-block;
  font-size: 30px;
}

div.mfp_estimate_wrapper button.mfp_estimate_button {
  margin: 10px 0 0 0;
  padding: 5px 10px;
  border-radius: 5px;
  border: solid 1px #CCC;
  background: gradient(linear, center top, center bottom, from(#EEE), to(#CCC));
  background: gradient(linear, center top, center bottom, from(#EEE), to(#CCC));
  background: -ms-linear-gradient(top, #EEE 0%, #CCC 100%);
  text-shadow: 0px 2px 0px #FFF;
}

div.mfp_estimate_list table.mfp_estimate_list_table {
  width: 100%;
  margin: 10px 0;
}

div.mfp_estimate_list table.mfp_estimate_list_table thead tr th {
  text-align: center;
}

div#wrapper div.mfp_estimate_list table.mfp_estimate_list_table tr th,
div#wrapper div.mfp_estimate_list table.mfp_estimate_list_table tr td,
div.mfp_estimate_list table.mfp_estimate_list_table tr th,
div.mfp_estimate_list table.mfp_estimate_list_table tr td {
  border: none;
  border-bottom: solid 1px #333;
}

div#wrapper div.mfp_estimate_list table.mfp_estimate_list_table tfoot tr th,
div#wrapper div.mfp_estimate_list table.mfp_estimate_list_table tfoot tr td,
div.mfp_estimate_list table.mfp_estimate_list_table tfoot tr th,
div.mfp_estimate_list table.mfp_estimate_list_table tfoot tr td {
  border: none;
  text-align: right;
}

div#wrapper div.mfp_estimate_list table.mfp_estimate_list_table tbody tr th,
div#wrapper div.mfp_estimate_list table.mfp_estimate_list_table tbody tr td,
div.mfp_estimate_list table.mfp_estimate_list_table tbody tr th,
div.mfp_estimate_list table.mfp_estimate_list_table tbody tr td {
  padding: 0;
  margin: 0;
}

div#wrapper div.mfp_estimate_list table.mfp_estimate_list_table tbody tr th,
div.mfp_estimate_list table.mfp_estimate_list_table tbody tr th {
  padding: 0 10px;
}

div#wrapper div.mfp_estimate_list table.mfp_estimate_list_table tbody tr th span,
div.mfp_estimate_list table.mfp_estimate_list_table tbody tr th span {
  font-size: 10px;
  display: block;
  color: #666;
}

div#wrapper div.mfp_estimate_list table.mfp_estimate_list_table tbody tr td:nth-of-type(1),
div.mfp_estimate_list table.mfp_estimate_list_table tbody tr td:nth-of-type(1) {
  width: 80px;
}

div#wrapper div.mfp_estimate_list table.mfp_estimate_list_table tbody tr td:nth-of-type(2),
div.mfp_estimate_list table.mfp_estimate_list_table tbody tr td:nth-of-type(2) {
  text-align: right;
  padding: 0 10px;
  width: 120px;
}

div#wrapper div.mfp_estimate_list table.mfp_estimate_list_table tbody tr td:nth-of-type(3),
div.mfp_estimate_list table.mfp_estimate_list_table tbody tr td:nth-of-type(3) {
  width: 60px;
}

div.mfp_estimate_list table.mfp_estimate_list_table tbody td img {
  max-width: 80px;
}

div.mfp_estimate_list table.mfp_estimate_list_table tbody td button {
  border: none;
  background: none;
  font-size: 24px;
  cursor: pointer;
}

div.mfp_ticket_wrapper {
  border: solid 1px #CCC;
  margin: 5px;
  overflow: auto;
}

div.mfp_ticket_map {
  position: relative;
  background-position: left top;
  background-repeat: no-repeat;
}

div.mfp_ticket_map div {
  position: absolute;
  width: 20px;
  height: 20px;
  padding: 0;
  margin: 0;
}

div.mfp_ticket_map div label {
  position: relative;
}

div.mfp_ticket_map div label span {
  position: absolute;
  top: 0px;
  left: 20px;
  display: inline-block;
  font-size: 10px;
  white-space: nowrap;
  display: none;
  background-color: #FFF;
  border: solid 1px #CCC;
  padding: 3px 3px;
  line-height: 1em;
}

div.mfp_ticket_map div label:hover span {
  display: block;
  z-index: 10;
}

div.mfp_ticket_map div label input {
  margin: 0;
  padding: 0;
  border-radius: 0;
  background-color: #CCC;
}
*,
*:after,
*:before {
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin: 0;
  padding: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

fieldset,
img {
  border: 0;
}

address,
caption,
cite,
code,
dfn,
em,
th,
var {
  font-style: normal;
  font-weight: normal;
}

li {
  list-style: none;
}

sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

input,
textarea,
select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
}

input,
textarea,
select {
  *font-size: 100%;
}

.clearfix:after {
  content: " ";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

a {
  outline: none;
  text-decoration: none;
  color: inherit;
}

img {
  vertical-align: bottom;
}

a[href],
label[for],
button,
input[type=button],
input[type=submit],
input[type=reset],
input[type=image],
input[type=radio],
input[type=checkbox],
select {
  cursor: pointer;
}

a[href^="tel:"] {
  cursor: default;
}

/*-------------------------
  ROLL OVER
-------------------------*/
.ro {
  transition: all 0.25s linear;
}

.ro:hover {
  opacity: 0.8;
  transition: all 0.25s linear;
}

.ro:hover img {
  opacity: 1;
}

.ro a:hover, .ro a:hover img {
  transition: none;
  opacity: 1;
}
/*-------------------------
  pcCont/spCont
-------------------------*/
.sp, .spCont {
  display: none;
}
/*-------------------------
  COMMONS
-------------------------*/
.tac {
  text-align: center;
}

.tal {
  text-align: left;
}

.tar {
  text-align: right;
}

.f_left {
  float: left;
}

.f_right {
  float: right;
}

.clear {
  clear: both;
}

button {
  cursor: pointer;
  outline: none;
}

.fBox {
  display: flex;
}

svg {
  fill: currentColor;
}

.preload * {
  transition: none !important;
}

.ofi {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover;";
}

.ac_btn:hover {
  cursor: pointer;
}

/* chrome opera */
/*@media screen and (-webkit-min-device-pixel-ratio: 0) and (min-resolution: .001dpcm) {
	body {
		image-rendering: -webkit-optimize-contrast;
	}
}*/
.slider {
  opacity: 0;
  transition: opacity 0.3s linear;
}

.slider.slick-initialized {
  opacity: 1;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ■setting
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
html {
  font-size: 62.5%;
}

body {
  position: relative;
  background: white;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic Medium", "游ゴシック Medium", "Noto Sans JP", "Hiragino Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "Noto Sans Japanese", Meiryo, sans-serif;
  font-weight: 500;
  font-weight: 500;
  color: #222;
  font-size: 1.6rem;
  line-height: 2;
  margin: 0 auto;
  -webkit-text-size-adjust: 100%;
  -webkit-overflow-scrolling: touch;
  word-break: normal;
  word-wrap: break-word;
  line-break: strict;
  overflow-wrap: break-word;
}
body a.url {
  word-break: break-all;
}

body.fixed {
  position: fixed;
  left: 0;
  right: 0;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: 500;
}

.bold, strong {
  font-weight: 700;
}
#container {
  position: relative;
  overflow: hidden;
  z-index: 0;
  width: 100%;
  padding-top: 100px;
}
.contents {
  position: relative;
}

.innerWrap {
  max-width: 1000px;
  margin: 0 auto;
}
.w1200 {
  max-width: 1200px;
  margin: 0 auto;
}
.w800 {
  max-width: 800px;
  margin: 0 auto;
}

.mincho {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 500;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ■parts
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.cont_center {
  display: flex;
  justify-content: center;
}

/*-------------------------
  hd
-------------------------*/
.hd01 {
  text-align: center;
  font-size: 3.2rem;
  line-height: 1.58333;
  position: relative;
  padding-bottom: 49px;
  margin-bottom: 38px;
  /*左寄せ*/
}
.hd01:after {
  content: "";
  display: block;
  width: 100%;
  height: 16px;
  background: url(../../images/hd01.png) no-repeat center center;
  background-size: auto 100%;
  position: absolute;
  left: 0;
  bottom: 0;
}
.hd01.left {
  text-align: left;
}

.hd01.left:after {
  background-position: left center;
}

.hd02 {
  text-align: center;
  color: #F57386;
  font-size: 2.8rem;
  line-height: 1.29167;
  margin-bottom: 35px;
}
.hd02.left {
  text-align: left;
}

.hd02.small {
  font-size: 2rem;
  margin-bottom: 10px;
}

.hd03 {
  text-align: center;
  font-size: 2rem;
  line-height: 1.3;
  margin-bottom: 40px;
  /*1行*/
}

.hd03 .in {
  display: inline-block;
  padding: 0 30px;
  position: relative;
}
.hd03 .in:before, .hd03 .in:after {
  content: "";
  display: block;
  width: 1px;
  height: 33px;
  background: #F57386;
  position: absolute;
  bottom: -2px;
}
.hd03 .in:before {
  left: 0;
  transform: rotate(-35deg);
}

.hd03 .in:after {
  right: 0;
  transform: rotate(35deg);
}
.hd04 {
  text-align: center;
  font-size: 1.8rem;
  line-height: 1.55556;
  border-bottom: 1px solid #D9D9D9;
  padding-bottom: 5px;
  margin-bottom: 16px;
}

.hd05 {
  font-size: 1.8rem;
  line-height: 1.55556;
  position: relative;
  padding-left: 25px;
  margin-bottom: 8px;
}

.hd05:before {
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  background: #F57386;
  border-radius: 50%;
  position: absolute;
  top: 7px;
  left: 0;
}

/*-------------------------
  btn
-------------------------*/
.btn01 {
  text-align: center;
  /*非活性*/
  /*大きめ*/
  /*アンカー*/
  /*戻る*/
}

.btn01 .wrap {
  display: inline-block;
  text-align: center;
  font-size: 1.8rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.3;
  max-width: 320px;
  width: 100%;
  border-radius: 50px;
  background: url(../../images/ico_arrow01_w.png) no-repeat right 23px center #F57386;
  background-size: 26px auto;
  padding: 12px 55px;
  transition: all 0.25s linear;
}

.btn01 .wrap:hover {
  opacity: 0.8;
  transition: all 0.25s linear;
}
.btn01 button.wrap {
  box-shadow: none !important;
  border: none;
}

.btn01:not(.anchor) .wrap:hover {
  background-position: right 18px center;
}

.btn01.none .wrap {
  background-color: #D9D9D9;
  position: relative;
}

.btn01.none .wrap:before {
  content: "現在準備中です";
  display: block;
  color: #222;
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  margin-top: -0.5em;
}

.btn01.none a {
  pointer-events: none;
}

.btn01.big .wrap {
  font-size: 2rem;
  padding-top: 17px;
  padding-bottom: 17px;
}
.btn01.anchor .wrap {
  border-radius: 10px;
  background-image: url(../../images/ico_arrow02.png);
  background-position: right 20px center;
  background-size: 13px auto;
}

.btn01.back .wrap {
  background-image: url(../../images/ico_arrow01_w_back.png);
  background-position: left 23px center;
}

.btn01.back .wrap:hover {
  background-position: left 18px center;
}

.btn02 .wrap {
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #D9D9D9;
  border-radius: 10px;
  font-size: 1.8rem;
  line-height: 1.27778;
  padding: 13px 55px;
  background: no-repeat left 22px center #fff;
  background-size: 26px auto;
}
.btn02 a {
  transition: all 0.25s linear;
}

.btn02 a:hover {
  background-color: rgba(217, 217, 217, 0.1);
}

.btn02 .user {
  background-image: url(../../images/ico_user.png);
  background-size: 28px auto;
}

.btn02 .calendar {
  background-image: url(../../images/ico_calendar.png);
}

.btn02 .making {
  background-image: url(../../images/ico_making.png);
}

ul.btn02 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: -20px;
}
ul.btn02:after {
  content: "";
  display: block;
  width: 32%;
}
ul.btn02 li {
  width: 32%;
  margin-bottom: 20px;
}
ul.btn02 .wrap {
  height: 100%;
}

/*-------------------------
table
-------------------------*/
.table01 {
  width: 100%;
}
.table01 th, .table01 td {
  line-height: 1.625;
  padding: 18px 0;
  vertical-align: top;
  text-align: left;
  border-bottom: 1px solid #D9D9D9;
}
/*-------------------------
list
-------------------------*/
ul.kome li,
ol.kome li {
  text-indent: -1em;
  padding-left: 1em;
  line-height: 1.8;
  font-size: 1.4rem;
  margin-bottom: 5px;
}

ul.kome li:last-of-type,
ol.kome li:last-of-type {
  margin-bottom: 0;
}

ul.indent_15 li,
ol.indent_15 li {
  text-indent: -1.5em;
  padding-left: 1.5em;
  font-size: 1.4rem;
  margin-bottom: 5px;
}

ul.indent_15 li:last-of-type,
ol.indent_15 li:last-of-type {
  margin-bottom: 0;
}

.list01 li {
  border-bottom: 1px solid #D9D9D9;
  font-size: 1.8rem;
  line-height: 1.7;
  padding: 0 0 14px 24px;
  margin-bottom: 14px;
  position: relative;
}

.list01 li:last-of-type {
  margin-bottom: 0;
}

.list01 li:before {
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  background: #F57386;
  border-radius: 50%;
  position: absolute;
  top: 7px;
  left: 2px;
}

.list02 {
  text-align: center;
}

.list02 li {
  background: #fff;
  font-size: 1.8rem;
  line-height: 1.33333;
  border: 1px solid #D9D9D9;
  border-radius: 50px;
  padding: 11px 20px;
  margin-bottom: 10px;
}
.list02 li:last-of-type {
  margin-bottom: 0;
}

ul.check_list01 li {
  background: url(../../images/ico_check.png) no-repeat left top;
  background-size: 26px auto;
  border-bottom: 1px solid #D9D9D9;
  padding: 0 0 14px 35px;
  line-height: 1.6;
  margin-bottom: 14px;
}

ul.check_list01 li:last-of-type {
  border-bottom: none;
  margin-bottom: 0;
}

/*-------------------------
txt
-------------------------*/
.note_txt {
  font-size: 1.4rem;
  line-height: 1.57143;
  color: #909090;
}

/*-------------------------
box
-------------------------*/
.border_box01 {
  border: 1px solid #D9D9D9;
  padding: 18px 40px;
}
.border_box01 .big {
  font-size: 2rem;
  line-height: 2;
  font-weight: 400;
}
.border_box02 {
  border: 1px solid #D9D9D9;
  padding: 20px;
  border-radius: 10px;
}
/*-------------------------
target_box
-------------------------*/
.target_box {
  border: 1px solid #D9D9D9;
  border-radius: 10px;
  display: flex;
  flex-wrap: wrap;
  padding: 20px 40px;
}
.target_box .list {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: -25px;
}
.target_box .list li {
  width: calc(50% - 20px);
  margin-bottom: 25px;
}
.target_box .list .hd04 {
  text-align: left;
}

.target_box .list .txt {
  line-height: 1.625;
}

.target_box .btn01 {
  margin-top: 17px;
  width: 100%;
}

.target_box .btn01 a {
  display: block;
}

/*-------------------------
box_list
-------------------------*/
.box_list {
  overflow: hidden;
}

.box_list .list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: 0 -2.5% -60px;
  /*2つ*/
}
.box_list .list li {
  width: 28.3%;
  margin: 0 2.5%;
  padding-bottom: 72px;
  position: relative;
  margin-bottom: 60px;
}
.box_list .list .img {
  line-height: 1;
  margin-bottom: 18px;
  position: relative;
  padding-top: 67%;
}

.box_list .list .img img {
  position: absolute;
  top: 0;
}

.box_list .list .txt {
  line-height: 1.625;
}

.box_list .list .btn01 {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
}
.box_list .list .btn01 .wrap {
  min-width: inherit;
  width: 100%;
}

.box_list .list.w50 {
  justify-content: space-between;
  margin-left: 0;
  margin-right: 0;
}
.box_list02 .list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: -20px;
}
.box_list02 .list:after {
  content: "";
  display: block;
  width: 253px;
}
.box_list02 .list li {
  width: 253px;
  border: 1px solid #D9D9D9;
  border-radius: 10px;
  padding: 20px 20px 80px;
  margin-bottom: 20px;
  position: relative;
}
.box_list02 .list .img {
  line-height: 1;
  margin-bottom: 10px;
  position: relative;
  padding-top: 67%;
}
.box_list02 .list .img img {
  position: absolute;
  top: 0;
}

.box_list02 .list .ttl {
  font-size: 1.8rem;
  line-height: 1.6;
}
.box_list02 .list .btn01 {
  position: absolute;
  bottom: 20px;
  left: 20px;
  right: 20px;
}
.box_list02 .list .btn01 .wrap {
  min-width: inherit;
  width: 100%;
}
.box_list03 .list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: -55px;
  /*3つ並び*/
}
.box_list03 .list li {
  width: 48%;
  max-width: 470px;
  margin-bottom: 55px;
}
.box_list03 .list .hd {
  display: flex;
  align-items: center;
  width: 100%;
  border: 1px solid #D9D9D9;
  background: #fff;
  padding: 6px;
  border-radius: 50px;
  margin-bottom: 20px;
}
.box_list03 .list .hd .num {
  width: 48px;
  height: 48px;
  padding-bottom: 3px;
  background: #F57386;
  line-height: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  border-radius: 50%;
  font-size: 2.4rem;
  color: #fff;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 500;
}
.box_list03 .list .hd .txt {
  width: calc(100% - 48px);
  padding: 0 15px 0 25px;
  font-size: 1.8rem;
}
.box_list03 .list .img {
  line-height: 1;
  margin-bottom: 17px;
  position: relative;
  padding-top: 67%;
}

.box_list03 .list .img img {
  position: absolute;
  top: 0;
}

.box_list03 .list .txt {
  line-height: 1.625;
}
.box_list03 .list.w33 li {
  width: 31.7%;
}
/*-------------------------
.course_list
-------------------------*/
.course_list .list {
  display: flex;
  justify-content: space-between;
  justify-content: center;
  flex-wrap: wrap;
  margin: 0 -30px -45px;
}
.course_list .list li {
  width: calc(33.33% - 60px);
  /*max-width: 360px;*/
  margin: 0 30px 45px;
}
.course_list .list .inner {
  background: #fff;
  border: 1px solid #D9D9D9;
  border-radius: 10px;
  padding: 20px;
  height: 100%;
}
.course_list .list .txt {
  line-height: 1.625;
}

.course_list .list .btn01 {
  margin-top: 15px;
}

.course_list .list .btn01 .wrap {
  min-width: inherit;
  width: 100%;
}

.course_list .list .btn01.anchor .wrap {
  border-radius: 50px;
}

.course_list .list .note {
  font-size: 1.4rem;
  line-height: 1.3;
  margin-top: 15px;
}
/*-------------------------
アコーディオン
-------------------------*/
.ac_btn {
  position: relative;
  transition: all 0.25s linear;
}

.ac_btn:hover {
  opacity: 0.8;
  transition: all 0.25s linear;
}

.ac_btn .btn {
  position: absolute;
  top: 20px;
  right: 10px;
}

.ac_btn .btn span {
  width: 21px;
  height: 21px;
  position: relative;
  display: block;
  z-index: 0;
}

.ac_btn .btn span:before, .ac_btn .btn span:after {
  content: "";
  display: block;
  width: 1px;
  height: 100%;
  background: #F57386;
  position: absolute;
  top: 0;
  left: 50%;
  transition: all 0.25s linear;
}

.ac_btn .btn span:after {
  width: 100%;
  height: 1px;
  top: 50%;
  left: 0;
}

.ac_btn.active .btn span:before {
  transform: rotate(90deg);
}

.ac_box {
  display: none;
}

/*-------------------------
sp_scroll
-------------------------*/
/*-------------------------
画像スクロール
-------------------------*/
.js-scrollable .flow_area {
  border: 1px solid #D9D9D9;
  border-radius: 10px;
  padding: 40px;
}
.js-scrollable .flow_area .img {
  line-height: 1;
}

.js-scrollable .flow_area .img img {
  max-width: 100%;
  height: auto;
}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■メニュー
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.login_menu .txt {
  font-size: 1.2rem;
  line-height: 1.2;
  margin-bottom: 5px;
}

.login_menu .btn a {
  display: block;
  width: 160px;
  text-align: center;
  color: #fff;
  font-weight: 700;
  background: url(../../images/ico_login.png) no-repeat right 11px center #F57386;
  background-size: 20px auto;
  padding: 4px 20px;
  border-radius: 5px;
  transition: all 0.25s linear;
}

.login_menu .btn a:hover {
  opacity: 0.8;
  transition: all 0.25s linear;
}

.main_menu li {
  line-height: 1.3;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ■header
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#header {
  background: #fff;
  width: 100%;
  min-width: 1100px;
  min-height: 100px;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 500;
}
#header #header_nav {
  width: 100%;
  max-width: 1640px;
  margin: 0 auto;
  padding: 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#header .logo {
  line-height: 1;
  width: 162px;
  flex: 1 0 auto;
}
#header .logo img {
  width: 100%;
  height: auto;
}

#header .menu_wrap {
  width: 100%;
  display: flex;
  justify-content: flex-end;
}
#header .main_menu {
  display: flex;
  justify-content: flex-end;
  width: 100%;
  margin-top: 20px;
}

#header .main_menu li {
  margin-left: 2.6%;
  text-align: center;
}

#header .main_menu li a {
  display: block;
  position: relative;
}

#header .main_menu li a:after {
  content: "";
  display: block;
  width: 20px;
  height: 1px;
  background: #F57386;
  position: absolute;
  bottom: -10px;
  left: 50%;
  margin-left: -10px;
  opacity: 0;
  transition: all 0.25s linear;
}

#header .main_menu li a:hover:after {
  opacity: 1;
}

#header .main_menu li.policy {
  display: none;
}

#header .login_menu {
  display: flex;
  margin-left: 40px;
}

#header .login_menu li:not(:last-of-type) {
  margin-right: 10px;
}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■footer
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#footer {
  background: #F8F8F8;
  padding: 55px 40px 0;
  box-shadow: 0 0 16px rgba(0, 0, 0, 0.08);
  position: relative;
  z-index: 10;
}
#footer #footer_nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
#footer .info_area {
  flex: 1 0 auto;
}

#header-cart {
  z-index: 9999;
  position: fixed;
  top: 23px;
  right: 60px;
}
#header-cart #__count {
  position: absolute;
  right: 10px;
  text-align: center;
  top: -10px;
  text-align: center;
  width: 25px;
  height: 25px;
  line-height: 25px;
  font-size: 12px;
  background: red;
  border-radius: 50%;
  color: #fff;
}

#header-social-list {
  z-index: 9999;
  position: fixed;
  top: 17px;
  right: 110px;
}
#header-social-list ul {
  width: 100%;
  display: flex;
}
#header-social-list ul > li {
  margin: 0.5rem 1.5rem 0;
}
#header-social-list ul > li a {
  font-size: 1.5rem;
}
#header-social-list ul > li a:hover {
  opacity: 0.8;
}
#header-social-list ul > li a .svg {
  stroke-width: 0;
  stroke: currentColor;
  fill: currentColor;
  width: 2.75rem;
  height: 2.75rem;
  color: #fff;
}
#header-social-list ul > li a .svg.--facebook {
  color: #1877f2;
}
#header-social-list ul > li a .svg.--line {
  color: #00B900;
}

#footer-social-list {
  z-index: 6;
}
#footer-social-list ul {
  width: 100%;
  display: flex;
}
#footer-social-list ul > li {
  margin: 0.5rem 1rem 0;
}
#footer-social-list ul > li a {
  font-size: 1.5rem;
}
#footer-social-list ul > li a:hover {
  opacity: 0.8;
}
#footer-social-list ul > li a .svg {
  stroke-width: 0;
  stroke: currentColor;
  fill: currentColor;
  width: 2.75rem;
  height: 2.75rem;
  color: #fff;
}
#footer-social-list ul > li a .svg.--facebook {
  color: #1877f2;
}
#footer-social-list ul > li a .svg.--line {
  color: #00B900;
}
#footer .info_area .logo {
  width: 100px;
  line-height: 1;
  margin-bottom: 18px;
}
#footer .info_area .logo img {
  width: 100%;
  height: auto;
}

#footer .info_area .address {
  line-height: 1.625;
}
#footer .menu_wrap {
  display: flex;
}
#footer .main_menu {
  -moz-column-count: 2;
       column-count: 2;
  -moz-column-gap: 64px;
       column-gap: 64px;
}
#footer .main_menu li {
  margin-bottom: 23px;
}
#footer .main_menu li a {
  transition: all 0.25s linear;
}

#footer .main_menu li a:hover {
  opacity: 0.8;
  transition: all 0.25s linear;
}

#footer .login_menu {
  margin-left: 80px;
}
#footer .login_menu .txt {
  font-size: 1.6rem;
}
#footer .copyright {
  margin-top: 60px;
  border-top: 1px solid #D9D9D9;
  text-align: center;
  font-size: 1.4rem;
  line-height: 1.2;
  padding: 13px 0;
}

/*-------------------------
pagetop
-------------------------*/
#pagetop {
  position: fixed;
  right: 40px;
  bottom: 20px;
  opacity: 0;
  transition: all 0.25s linear;
}

#pagetop:hover {
  opacity: 0.8;
  transition: all 0.25s linear;
}
#pagetop.scrolltop {
  opacity: 1;
}

#pagetop:hover {
  cursor: pointer;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ■MENU
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.menuBtn {
  position: fixed;
  top: 17px;
  right: 0;
  z-index: 99999;
  display: none;
}
/*-------------------------
  spMenuBtn
-------------------------*/
#spMenuBtn {
  z-index: 99999;
  border: none;
  background-color: transparent;
  outline: none;
  /*template*/
  width: 60px;
  height: 39px;
  padding: 10px 20px;
}

#spMenuBtn .spMenuBtn_bar {
  position: relative;
}

#spMenuBtn .spMenuBtn_bar:before, #spMenuBtn .spMenuBtn_bar:after {
  content: "";
}

#spMenuBtn .spMenuBtn_bar span, #spMenuBtn .spMenuBtn_bar:before, #spMenuBtn .spMenuBtn_bar:after {
  position: absolute;
  left: 0;
  right: 0;
  display: block;
  width: 100%;
  margin: auto;
  transition: all 0.2s;
  transform-origin: 50% 50%;
}

#spMenuBtn .spMenuBtn_bar span {
  top: 0;
  bottom: 0;
}

#spMenuBtn .spMenuBtn_bar:before {
  top: 0;
}

#spMenuBtn .spMenuBtn_bar:after {
  bottom: 0;
}

#spMenuBtn.open .spMenuBtn_bar {
  position: relative;
}

#spMenuBtn.open .spMenuBtn_bar:before, #spMenuBtn.open .spMenuBtn_bar:after {
  content: "";
}

#spMenuBtn.open .spMenuBtn_bar span, #spMenuBtn.open .spMenuBtn_bar:before, #spMenuBtn.open .spMenuBtn_bar:after {
  position: absolute;
  left: 0;
  right: 0;
  display: block;
  width: 100%;
  margin: auto;
  transition: all 0.2s;
  transform-origin: 50% 50%;
}

#spMenuBtn.open .spMenuBtn_bar span {
  opacity: 0;
  top: 0;
  bottom: 0;
}

#spMenuBtn.open .spMenuBtn_bar:before {
  top: 0;
  bottom: 0;
  transform: rotate(45deg);
}

#spMenuBtn.open .spMenuBtn_bar:after {
  top: 0;
  bottom: 0;
  transform: rotate(-45deg);
}

#spMenuBtn .spMenuBtn_bar {
  width: 30px;
  height: 19px;
}

#spMenuBtn .spMenuBtn_bar span, #spMenuBtn .spMenuBtn_bar:before, #spMenuBtn .spMenuBtn_bar:after {
  height: 1px;
  background-color: #222;
}

/*-------------------------
  spMenu
-------------------------*/
#spMenuOverlay {
  position: fixed;
  width: 100%;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 9999;
  background: rgba(0, 0, 0, 0.5);
  transform: translate3d(-100%, 0, 0);
  /* 右からイン */
  transition: all 0.25s ease-in-out;
  display: none;
}

#spMenuOverlay.open {
  transform: translate3d(0%, 0, 0);
}

#spMenu {
  opacity: 0;
  position: fixed;
  display: block;
  padding: 0;
  top: 72px;
  right: 0;
  bottom: 0;
  z-index: -1;
  width: 100%;
  background: #fff;
  padding: 0;
  transition: all 0.25s ease-in-out;
  overflow: hidden;
}

#spMenu.open {
  opacity: 1;
}

#spMenu.open {
  z-index: 10000;
  overflow: visible;
}

#spMenu .spMenu_innerWrap {
  overflow-x: hidden;
  overflow-y: auto;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  height: 100%;
  padding: 0 20px 40px;
}

#spMenu .spMenu_inner {
  width: 100%;
}

#spMenu .main_menu {
  margin-bottom: 20px;
}

#spMenu .main_menu li {
  text-align: center;
  font-size: 1.8rem;
  border-bottom: 1px solid #D9D9D9;
}

#spMenu .main_menu li:last-of-type {
  margin-bottom: 0;
  border-bottom: none;
}

#spMenu .main_menu li a {
  display: block;
  padding: 18px 0;
}

#spMenu .login_menu {
  display: flex;
  justify-content: space-between;
}

#spMenu .login_menu li {
  width: calc(50% - 10px);
}

#spMenu .login_menu .btn a {
  width: 100%;
}

#spMenu .login_menu .txt {
  text-align: center;
  font-size: 1.8rem;
}

#closeBtn {
  z-index: 9999999;
  width: 30px;
  height: 30px;
  border: none;
  background-color: transparent;
  outline: none;
}

#closeBtn .closeBtn_bar {
  position: relative;
  width: 22px;
  height: 22px;
}

#closeBtn .closeBtn_bar:before, #closeBtn .closeBtn_bar:after {
  content: "";
}

#closeBtn .closeBtn_bar span, #closeBtn .closeBtn_bar:before, #closeBtn .closeBtn_bar:after {
  position: absolute;
  left: 0;
  right: 0;
  display: block;
  width: 100%;
  margin: auto;
  transition: all 0.2s;
  transform-origin: 50% 50%;
}

#closeBtn .closeBtn_bar span {
  opacity: 0;
  top: 0;
  bottom: 0;
}

#closeBtn .closeBtn_bar:before {
  top: 0;
  bottom: 0;
  transform: rotate(45deg);
}

#closeBtn .closeBtn_bar:after {
  top: 0;
  bottom: 0;
  transform: rotate(-45deg);
}

#closeBtn .closeBtn_bar span, #closeBtn .closeBtn_bar:before, #closeBtn .closeBtn_bar:after {
  background-color: #fff;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■main_vs
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#main_vs {
  display: flex;
  justify-content: flex-end;
  position: relative;
  height: 360px;
}
#main_vs.color {
  background: #F8F8F8;
}

#main_vs .img {
  height: 100%;
  border-radius: 0 0 0 200px;
  overflow: hidden;
  position: absolute;
  left: 50%;
  margin-left: -600px;
}
#main_vs .txt_area {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
}
#main_vs .txt_area .txt_inner {
  max-width: 1450px;
  height: 100%;
  margin: -28px auto 0;
  position: relative;
}
#main_vs .txt_area .inner {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  display: flex;
  justify-content: center;
  flex-direction: column;
}
#main_vs .txt_area .txt {
  line-height: 1.2;
  font-size: 4.8rem;
  font-weight: 500;
  color: #fff;
  background: #F57386;
  border-radius: 0 10px 10px 0;
  padding: 12px 40px 12px 0;
  position: relative;
}
#main_vs .txt_area .txt:before {
  content: "";
  display: block;
  width: 100vw;
  height: 100%;
  background: #F57386;
  position: absolute;
  left: -100vw;
  top: 0;
}

#main_vs .txt_area .txt + .txt {
  margin-top: 20px;
}
/*-------------------------
メイン下カーブエリア
-------------------------*/
#intro_pickup_sec {
  position: relative;
  z-index: 0;
}

#intro_pickup_sec:before {
  content: "";
  display: block;
  width: 50%;
  height: 100%;
  background: #F8F8F8;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  z-index: -1;
}

#intro_pickup_sec .intro_inner {
  padding: 100px 0;
  max-width: 1200px;
  margin: 0 auto;
  padding-right: 12%;
  border-radius: 0 0 200px 0;
  background: #F8F8F8;
}
#intro_pickup_sec .read_txt {
  font-size: 1.8rem;
  line-height: 2;
}

#intro_pickup_sec .btn01 {
  margin-top: 35px;
}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■コンテンツ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*-------------------------
ブロック要素
-------------------------*/
#main_contents .block {
  padding: 105px 0;
}
#main_contents .block:nth-of-type(2n) {
  background: #F8F8F8;
}

#main_contents .block .inner_block:not(:last-of-type) {
  margin-bottom: 80px;
}
/*-------------------------
list_news
-------------------------*/
.list_news li {
  border-bottom: 1px solid #D9D9D9;
}

.list_news .inner {
  padding: 15px 0;
  line-height: 1.875;
  display: flex;
  width: 100%;
}
.list_news .post_date {
  min-width: 120px;
  flex: 0 1 auto;
}
.list_news a {
  display: block;
  background: url(../../images/ico_arrow01.png) no-repeat right 15px bottom 28px;
  background-size: 26px auto;
  padding-right: 45px;
  transition: all 0.25s linear;
}

.list_news a:hover {
  opacity: 0.8;
  transition: all 0.25s linear;
}

.list_news a:hover {
  background-position: right 10px bottom 28px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ■WP用
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*-------------------------
  編集ボタン
-------------------------*/
a.post-edit-link {
  background-color: #F00 !important;
  background-image: none !important;
  border-radius: 5px 5px 5px 5px !important;
  color: #FFFFFF !important;
  font-size: 10px !important;
  font-weight: normal !important;
  padding: 3px 5px !important;
  text-decoration: none !important;
  display: inline-block !important;
  line-height: 1.1 !important;
}

a.post-edit-link:hover {
  background-color: #06C !important;
}

/*-------------------------
ログイン時
-------------------------*/
.logged-in #header {
  top: 32px;
}
/*-------------------------
  404用
-------------------------*/
#notfound {
  padding: 190px 20px;
}
#notfound p {
  text-align: center;
}

#notfound .caption {
  font-weight: bold;
  font-size: 2rem;
  margin-bottom: 80px;
}
/*-------------------------
  WP用のページャー
-------------------------*/
#list_pager {
  overflow: hidden;
}

.wp-pagenavi {
  margin-top: 40px;
}

.wp-pagenavi .nav-links .page-numbers {
  display: flex;
  justify-content: center;
  line-height: 1;
  align-items: center;
}

.wp-pagenavi a, .wp-pagenavi span {
  margin: 0 3px;
  padding: 5px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.6rem;
  font-weight: 400;
  opacity: 0.3;
  transition: all 0.25s linear;
}

.wp-pagenavi .prev.page-numbers,
.wp-pagenavi .next.page-numbers {
  display: block;
  text-indent: -9999px;
  position: relative;
  width: 40px;
  height: 40px;
  background: url(../../images/ico_next.png) no-repeat left 52% center #F57386;
  background-size: 8px auto;
  border-radius: 50%;
  margin: 0 25px;
  opacity: 1;
  transition: all 0.25s linear;
}

.wp-pagenavi .prev.page-numbers:hover,
.wp-pagenavi .next.page-numbers:hover {
  opacity: 0.8;
  transition: all 0.25s linear;
}
.wp-pagenavi .prev.page-numbers {
  background-image: url(../../images/ico_prev.png);
  background-position: center center;
}

.wp-pagenavi span.extend, .wp-pagenavi span.pages, .wp-pagenavi a.first, .wp-pagenavi a.last {
  display: none;
}

.wp-pagenavi span.current,
.wp-pagenavi a:hover {
  opacity: 1;
}

.navigation {
  max-width: 390px;
  overflow: hidden;
  margin: 60px auto 0;
  position: relative;
}

.navigation a {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 50px;
  transition: all 0.25s linear;
}

.navigation a:hover {
  opacity: 0.8;
  transition: all 0.25s linear;
}

.navigation .prev, .navigation .next {
  display: block;
  z-index: 1;
}

.navigation .prev a, .navigation .next a {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 15px;
  width: 6px;
  height: 6px;
  border-bottom: 1px solid #222;
  border-right: 1px solid #222;
  transform: rotate(-45deg);
  margin: auto 0;
  text-indent: -9999px;
  width: 50px;
  height: 50px;
}

.navigation .prev a:after, .navigation .next a:after {
  width: 12px !important;
  height: 12px !important;
  margin-top: -6px !important;
}

.navigation .prev {
  float: left;
}

.navigation .prev a {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 15px;
  width: 6px;
  height: 6px;
  border-bottom: 1px solid #222;
  border-right: 1px solid #222;
  transform: rotate(-45deg);
  margin: auto 0;
  transform: rotate(135deg);
}

.navigation .next {
  float: right;
}

.navigation .list {
  width: calc(100% - 100px);
  position: absolute;
  top: 0;
  left: 50px;
  text-align: center;
}

.navigation .list a {
  border: 1px solid #222;
}
/*-------------------------
記事用
-------------------------*/
.wp_editer,
article .entry,
.block-editor-block-list__layout {
  word-break: break-all;
}

.wp_editer *:last-child,
article .entry *:last-child,
.block-editor-block-list__layout *:last-child {
  margin-bottom: 0 !important;
}

.wp_editer p, .wp_editer ul, .wp_editer ol, .wp_editer table, .wp_editer figure,
article .entry p,
article .entry ul,
article .entry ol,
article .entry table,
article .entry figure,
.block-editor-block-list__layout p,
.block-editor-block-list__layout ul,
.block-editor-block-list__layout ol,
.block-editor-block-list__layout table,
.block-editor-block-list__layout figure {
  margin-bottom: 40px;
}
.wp_editer .alignleft,
article .entry .alignleft,
.block-editor-block-list__layout .alignleft {
  float: left;
  display: block;
  max-width: 50%;
  margin-right: 50px;
}
.wp_editer .alignright,
article .entry .alignright,
.block-editor-block-list__layout .alignright {
  float: right;
  display: block;
  max-width: 50%;
  margin-left: 50px;
}
.wp_editer .aligncenter,
article .entry .aligncenter,
.block-editor-block-list__layout .aligncenter {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

.wp_editer img,
article .entry img,
.block-editor-block-list__layout img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  margin: 0 auto 50px;
}
.wp_editer figcaption,
article .entry figcaption,
.block-editor-block-list__layout figcaption {
  font-size: 90%;
}

.wp_editer img + figcaption,
article .entry img + figcaption,
.block-editor-block-list__layout img + figcaption {
  margin-top: -35px;
}
.wp_editer table,
article .entry table,
.block-editor-block-list__layout table {
  border-top: 1px solid #c5c5c5;
  border-left: 1px solid #c5c5c5;
}

.wp_editer table th, .wp_editer table td,
article .entry table th,
article .entry table td,
.block-editor-block-list__layout table th,
.block-editor-block-list__layout table td {
  border-bottom: 1px solid #c5c5c5;
  border-right: 1px solid #c5c5c5;
  padding: 5px 20px;
  text-align: left;
}

.wp_editer table th,
article .entry table th,
.block-editor-block-list__layout table th {
  background: #F3F3F3;
  font-weight: 700;
}

.wp_editer pre,
article .entry pre,
.block-editor-block-list__layout pre {
  white-space: normal;
}

.wp_editer .wp-caption,
article .entry .wp-caption,
.block-editor-block-list__layout .wp-caption {
  max-width: inherit !important;
  width: 100% !important;
  margin: 0 0 32px;
}

.wp_editer .wp-caption-text,
article .entry .wp-caption-text,
.block-editor-block-list__layout .wp-caption-text {
  font-size: 80%;
  margin: -20px 0 0;
}

.wp_editer em,
article .entry em,
.block-editor-block-list__layout em {
  font-style: italic;
}

.wp_editer strong,
article .entry strong,
.block-editor-block-list__layout strong {
  font-weight: 700;
}

.wp_editer hr,
article .entry hr,
.block-editor-block-list__layout hr {
  height: 1px;
  background: #c5c5c5;
  border: none;
  margin: 60px 0;
}

.wp_editer ul, .wp_editer ol,
article .entry ul,
article .entry ol,
.block-editor-block-list__layout ul,
.block-editor-block-list__layout ol {
  list-style-position: inside;
}

.wp_editer ul li, .wp_editer ol li,
article .entry ul li,
article .entry ol li,
.block-editor-block-list__layout ul li,
.block-editor-block-list__layout ol li {
  list-style: inherit;
  text-indent: -1.3em;
  padding-left: 1.3em;
  margin-top: 15px;
}

.wp_editer ul li:first-child, .wp_editer ol li:first-child,
article .entry ul li:first-child,
article .entry ol li:first-child,
.block-editor-block-list__layout ul li:first-child,
.block-editor-block-list__layout ol li:first-child {
  margin-top: 0;
}

.wp_editer ul li > ul, .wp_editer ul li > ol, .wp_editer ol li > ul, .wp_editer ol li > ol,
article .entry ul li > ul,
article .entry ul li > ol,
article .entry ol li > ul,
article .entry ol li > ol,
.block-editor-block-list__layout ul li > ul,
.block-editor-block-list__layout ul li > ol,
.block-editor-block-list__layout ol li > ul,
.block-editor-block-list__layout ol li > ol {
  margin-top: 15px;
}

.wp_editer ul,
article .entry ul,
.block-editor-block-list__layout ul {
  list-style-type: disc;
}

.wp_editer ol,
article .entry ol,
.block-editor-block-list__layout ol {
  list-style-type: decimal;
}

.wp_editer a,
article .entry a,
.block-editor-block-list__layout a {
  color: #F57386;
  text-decoration: underline;
  transition: all 0.25s linear;
}

.wp_editer a:hover,
article .entry a:hover,
.block-editor-block-list__layout a:hover {
  opacity: 0.8;
  transition: all 0.25s linear;
}

.wp_editer blockquote,
article .entry blockquote,
.block-editor-block-list__layout blockquote {
  overflow: hidden;
  position: relative;
  display: flex;
  background: #F3F3F3;
  min-height: 110px;
  text-align: left;
  padding: 25px 50px;
  margin: 0 0 30px;
}
.wp_editer blockquote:before, .wp_editer blockquote:after,
article .entry blockquote:before,
article .entry blockquote:after,
.block-editor-block-list__layout blockquote:before,
.block-editor-block-list__layout blockquote:after {
  position: absolute;
  color: #c5c5c5;
  font-family: "Roboto", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic Medium", "游ゴシック Medium";
  font-weight: 400;
  font-size: 6rem;
  line-height: 1;
}

.wp_editer blockquote:before,
article .entry blockquote:before,
.block-editor-block-list__layout blockquote:before {
  content: "“";
  top: 18px;
  left: 15px;
}
.wp_editer blockquote:after,
article .entry blockquote:after,
.block-editor-block-list__layout blockquote:after {
  content: "”";
  bottom: -12px;
  right: 15px;
}
.wp_editer blockquote > *:last-child,
article .entry blockquote > *:last-child,
.block-editor-block-list__layout blockquote > *:last-child {
  margin-bottom: 0;
}

.wp_editer p + h1, .wp_editer p + h2, .wp_editer p + h3, .wp_editer p + h4, .wp_editer p + h5, .wp_editer p + h6,
article .entry p + h1,
article .entry p + h2,
article .entry p + h3,
article .entry p + h4,
article .entry p + h5,
article .entry p + h6,
.block-editor-block-list__layout p + h1,
.block-editor-block-list__layout p + h2,
.block-editor-block-list__layout p + h3,
.block-editor-block-list__layout p + h4,
.block-editor-block-list__layout p + h5,
.block-editor-block-list__layout p + h6 {
  margin-top: 40px;
}

.wp_editer h1, .wp_editer h2, .wp_editer h3, .wp_editer h4, .wp_editer h5, .wp_editer h6,
article .entry h1,
article .entry h2,
article .entry h3,
article .entry h4,
article .entry h5,
article .entry h6,
.block-editor-block-list__layout h1,
.block-editor-block-list__layout h2,
.block-editor-block-list__layout h3,
.block-editor-block-list__layout h4,
.block-editor-block-list__layout h5,
.block-editor-block-list__layout h6 {
  font-weight: 500;
  line-height: 1.6;
  margin: 0 0 20px;
}
.wp_editer h1,
article .entry h1,
.block-editor-block-list__layout h1 {
  font-size: 200%;
}
.wp_editer h2,
article .entry h2,
.block-editor-block-list__layout h2 {
  color: #222;
  font-size: 173.3333%;
  margin: 0 0 20px;
}
.wp_editer h3,
article .entry h3,
.block-editor-block-list__layout h3 {
  color: #F57386;
  font-size: 146.6666%;
  margin: 0 0 24px;
}
.wp_editer h4,
article .entry h4,
.block-editor-block-list__layout h4 {
  font-size: 120%;
  border-bottom: 1px solid #D9D9D9;
  padding-bottom: 10px;
}
.wp_editer h5,
article .entry h5,
.block-editor-block-list__layout h5 {
  color: #222;
  font-size: 120%;
  border-left: 2px solid #D9D9D9;
  padding-left: 15px;
}
.wp_editer h6,
article .entry h6,
.block-editor-block-list__layout h6 {
  font-size: 120%;
}
/*-------------------------
詳細タイトルなど
-------------------------*/
#page_news article {
  margin-bottom: 50px;
}

#page_news article #hd_area {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 40px;
  padding-bottom: 12px;
  border-bottom: 1px solid #D9D9D9;
}
#page_news article #hd_area .post_date {
  padding-top: 3px;
  margin-right: 40px;
}
#page_news article #hd_area h2 {
  font-size: 1.8rem;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■基本ページ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■main_vs
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#page_index #main_vs {
  height: 660px;
}
#page_index #main_vs .txt_area .txt_inner {
  margin-top: -78px;
}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■online_sec
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#page_index #online_sec .target_box {
  margin: 35px 0;
}

#page_index #online_sec .js-scrollable {
  margin: 35px 0 70px;
  margin-bottom: 70px;
}
/*-------------------------
service_block02
-------------------------*/
#page_index #online_sec .service_block02 .list {
  display: flex;
  justify-content: space-between;
}
#page_index #online_sec .service_block02 .list li {
  width: 24.2%;
  line-height: 1.625;
}
#page_index #online_sec .service_block02 .list .hd {
  border: 1px solid #D9D9D9;
  border-radius: 10px;
  margin-bottom: 60px;
  position: relative;
}
#page_index #online_sec .service_block02 .list .hd:after {
  content: "";
  display: block;
  width: 100%;
  height: 20px;
  background: url(../../images/ico_down01.png) no-repeat center center;
  background-size: auto 100%;
  position: absolute;
  left: 0;
  bottom: -40px;
}
#page_index #online_sec .service_block02 .list .hd .txt {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  min-height: 100px;
  padding: 10px 5px;
}
#page_index #online_sec .service_block02 .list .txt_area {
  border: 1px solid #F57386;
  border-radius: 10px;
}

#page_index #online_sec .service_block02 .list .txt_area .txt {
  display: flex;
  align-items: center;
  min-height: 135px;
  padding: 15px 20px;
}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■#course_sec
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#page_index #course_sec .course_list {
  margin-top: 30px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■#about_sec
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#page_index #about_sec .btn01 {
  margin-top: 35px;
}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■#news_sec
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#page_index #news_sec .tab {
  display: flex;
  justify-content: space-between;
  margin-bottom: 25px;
}
#page_index #news_sec .tab li {
  width: 32%;
  line-height: 1.3;
  border: 1px solid #545454;
  border-radius: 10px;
  background: #fff;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 15px 15px;
  transition: all 0.25s linear;
  /*カラー設定*/
}
#page_index #news_sec .tab li:hover {
  cursor: pointer;
  background: rgba(84, 84, 84, 0.1);
}

#page_index #news_sec .tab li.active {
  color: #fff;
  font-weight: 700;
  background: #545454;
}

#page_index #news_sec .tab li.care {
  border-color: #F57386;
}

#page_index #news_sec .tab li.care:hover {
  background: rgba(245, 115, 134, 0.1);
}

#page_index #news_sec .tab li.care.active {
  background: #F57386;
}

#page_index #news_sec .tab li.instructor {
  border-color: #9ADBE8;
}

#page_index #news_sec .tab li.instructor:hover {
  background: rgba(154, 219, 232, 0.1);
}

#page_index #news_sec .tab li.instructor.active {
  background: #9ADBE8;
}

#page_index #news_sec .tab_cont {
  display: none;
}

#page_index #news_sec .tab_cont.active {
  display: block;
}

#page_index #news_sec .btn01 {
  margin-top: 40px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■FEMICAとは Common
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#page_about .block .note_txt {
  margin-top: 10px;
}

#page_about .block .border_box01 {
  margin-top: 35px;
}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■#feature_sec
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#page_about #feature_sec .btn01 {
  margin-top: 60px;
}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■FAQ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#page_faq .faq_list {
  margin-bottom: 40px;
  border-bottom: 1px solid #D9D9D9;
}

#page_faq .faq_list dt, #page_faq .faq_list dd {
  position: relative;
  padding: 13px 40px 13px 33px;
}

#page_faq .faq_list dt:before, #page_faq .faq_list dd:before {
  content: "A";
  display: block;
  font-size: 2.4rem;
  line-height: 1;
  font-family: "Zen Old Mincho", serif;
  font-weight: 400;
  position: absolute;
  top: 3px;
  left: 0;
}

#page_faq .faq_list dt {
  border-top: 1px solid #D9D9D9;
}

#page_faq .faq_list dt:before {
  content: "Q";
  color: #F57386;
  top: 14px;
}

#page_faq .faq_list dd {
  padding-top: 0;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■intro_pickup_sec
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#page_instructor #intro_pickup_sec .intro_inner {
  padding-right: 0;
}
#page_instructor #intro_pickup_sec .txt {
  margin-bottom: 8px;
}

#page_instructor #intro_pickup_sec .problem_area {
  margin: 75px auto;
}
#page_instructor #intro_pickup_sec .problem_area .next_area {
  text-align: center;
  padding-top: 55px;
  position: relative;
}

#page_instructor #intro_pickup_sec .problem_area .next_area:before {
  content: "";
  display: block;
  width: 100%;
  height: 20px;
  background: url(../../images/ico_down01.png) no-repeat center center;
  background-size: auto 100%;
  position: absolute;
  top: 23px;
  left: 0;
}

#page_instructor #intro_pickup_sec .problem_area .next_area .txt {
  font-size: 2rem;
  font-weight: 400;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
course_sec
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#page_instructor #course_sec .course_list {
  margin-top: 32px;
}

#page_instructor #course_sec .box_list03 {
  padding-bottom: 20px;
}

#page_instructor #course_sec .inner_block .read_txt {
  text-align: center;
  font-size: 1.8rem;
  margin-bottom: 30px;
}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
instructor_sec
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#page_instructor #instructor_sec .step {
  display: flex;
  justify-content: space-between;
  margin-top: 12px;
}
#page_instructor #instructor_sec .step li {
  width: 22%;
  background: #fff;
  border: 1px solid #D9D9D9;
  border-radius: 10px;
  padding: 20px;
  text-align: center;
  position: relative;
}
#page_instructor #instructor_sec .step li:after {
  content: "";
  display: block;
  width: 20px;
  height: 100%;
  background: url(../../images/ico_arrow03.png) no-repeat center center;
  background-size: 100% auto;
  position: absolute;
  top: 0;
  right: -32px;
}
#page_instructor #instructor_sec .step li:last-of-type:after {
  content: none;
}
#page_instructor #instructor_sec .step .hd {
  line-height: 1.5;
  border-bottom: 1px solid #D9D9D9;
  padding-bottom: 7px;
  margin-bottom: 7px;
}

#page_instructor #instructor_sec .step .txt {
  font-size: 2rem;
}

/*-------------------------
講師のご紹介
-------------------------*/
#page_instructor .member_block .member_list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding-bottom: 10px;
}
#page_instructor .member_block .member_list:after {
  content: "";
  display: block;
  width: 31.6%;
}
#page_instructor .member_block .member_list li {
  width: 31.6%;
  border: 1px solid #D9D9D9;
  border-radius: 10px;
  background: #fff;
  padding: 20px;
  display: flex;
  margin-bottom: 30px;
}
#page_instructor .member_block .member_list .img {
  width: 80px;
}

#page_instructor .member_block .member_list .img img {
  width: 100%;
  height: auto;
}

#page_instructor .member_block .member_list .txt_area {
  width: calc(100% - 80px);
  padding-left: 25px;
  line-height: 1.625;
}

#page_instructor .member_block .member_list .txt_area .name {
  font-size: 1.8rem;
  margin-bottom: 7px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
オンライン学習
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#page_instructor.page_course #online_course_sec .read_txt {
  margin-bottom: 27px;
}
#page_instructor.page_course #online_course_sec .box_list02 .list .ttl {
  border-bottom: 1px solid #D9D9D9;
  padding-bottom: 3px;
  margin-bottom: 5px;
}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■基本ページ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*-------------------------
  hd
-------------------------*/
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■基本ページ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*-------------------------
hd
-------------------------*/
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■基本ページ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*-------------------------
hd
-------------------------*/
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■基本ページ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*-------------------------
hd
-------------------------*/
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■基本ページ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*-------------------------
hd
-------------------------*/
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■妊活当事者の方へ　Common
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#page_cared .read_txt {
  margin-bottom: 50px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■トップ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#page_cared.page_index .btn01 {
  margin-top: 40px;
}
#page_cared.page_index .box_list02 .btn01 {
  margin-top: 0;
}

/*-------------------------
intro_sec
-------------------------*/
#page_cared.page_index #intro_sec .next_area {
  padding-top: 65px;
  position: relative;
  text-align: center;
  font-size: 1.8rem;
  line-height: 2;
}

#page_cared.page_index #intro_sec .next_area:before {
  content: "";
  display: block;
  width: 100%;
  height: 20px;
  background: url(../../images/ico_down01.png) no-repeat center center;
  background-size: auto 100%;
  position: absolute;
  left: 0;
  top: 25px;
}

/*-------------------------
merit_sec
-------------------------*/
#page_cared.page_index #merit_sec .box_list03 {
  padding-bottom: 30px;
}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■カウンセラー・妊活指導士紹介
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#page_cared.page_member #member_sec .details_wrap {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  margin-bottom: 35px;
}
#page_cared.page_member #member_sec .details_wrap .img_area {
  width: 32%;
}
#page_cared.page_member #member_sec .details_wrap .img_area .img {
  line-height: 1;
  text-align: center;
}
#page_cared.page_member #member_sec .details_wrap .img_area .img img {
  max-width: 100%;
  height: auto;
}

#page_cared.page_member #member_sec .details_wrap .txt_area {
  width: 64%;
}
#page_cared.page_member #member_sec .details_wrap .box_wrap {
  margin-bottom: 37px;
}

#page_cared.page_member #member_sec .details_wrap .box_wrap:last-of-type {
  margin-bottom: 0;
}

#page_cared.page_member #member_sec .details_wrap .box {
  border: 1px solid #D9D9D9;
  border-radius: 10px;
  padding: 20px;
}

#page_cared.page_member #member_sec .details_wrap .box .hd04 {
  text-align: left;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■セミナー・ワークショップについて
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#page_cared.page_workshop #workshop_sec .workshop_wrap {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
#page_cared.page_workshop #workshop_sec .workshop_wrap .calendar {
  width: 400px;
}
#page_cared.page_workshop #workshop_sec .workshop_wrap .workshop_list {
  width: 360px;
}
#page_cared.page_workshop #workshop_sec .workshop_wrap .workshop_list li {
  border: 1px solid #D9D9D9;
  border-radius: 10px;
  padding: 20px;
  margin-bottom: 20px;
}
#page_cared.page_workshop #workshop_sec .workshop_wrap .workshop_list li:last-of-type {
  margin-bottom: 0;
}

#page_cared.page_workshop #workshop_sec .workshop_wrap .workshop_list .hd04 {
  text-align: left;
}

#page_cared.page_workshop #workshop_sec .workshop_wrap .workshop_list p:not(.hd04) {
  line-height: 1.625;
}

#page_cared.page_workshop #workshop_sec .workshop_wrap .workshop_list .btn01 {
  margin-top: 18px;
}

/*-------------------------
詳細
-------------------------*/
#page_cared.page_workshop #workshop_details_sec .box {
  margin-bottom: 40px;
}

#page_cared.page_workshop #workshop_details_sec .box:last-of-type {
  margin-bottom: 0;
}

#page_cared.page_workshop #workshop_details_sec .box .hd04 {
  text-align: left;
}

#page_cared.page_workshop #workshop_details_sec .box .txt a {
  color: #F57386;
  text-decoration: underline;
  transition: all 0.25s linear;
}

#page_cared.page_workshop #workshop_details_sec .box .txt a:hover {
  opacity: 0.8;
  transition: all 0.25s linear;
}

#page_cared.page_workshop #workshop_details_sec .box .btn01 {
  margin-top: 15px;
  text-align: left;
}

#page_cared.page_workshop #workshop_details_sec .box .info_list li {
  line-height: 1.6;
  padding-left: 28px;
  background: no-repeat left top 2px;
  background-size: auto 20px;
  margin-bottom: 5px;
}

#page_cared.page_workshop #workshop_details_sec .box .info_list li:last-of-type {
  margin-bottom: 0;
}

#page_cared.page_workshop #workshop_details_sec .box .info_list .date {
  background-image: url(../../images/ico_calendar02.png);
}

#page_cared.page_workshop #workshop_details_sec .box .info_list .time {
  background-image: url(../../images/ico_time.png);
}

#page_cared.page_workshop #workshop_details_sec .box .info_list .price {
  background-image: url(../../images/ico_price.png);
}

#page_cared.page_workshop #workshop_details_sec .txt_box p + p {
  margin-top: 30px;
}

#page_cared.page_workshop #workshop_details_sec .status_box {
  text-align: center;
}

#page_cared.page_workshop #workshop_details_sec .status_box .status {
  line-height: 1.2;
  text-align: center;
  color: #F57386;
  font-size: 2.8rem;
  font-weight: 700;
  margin-bottom: 10px;
}

#page_cared.page_workshop #workshop_details_sec .status_box .status span {
  text-decoration: underline;
}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■検索
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*-------------------------
検索ボックス
-------------------------*/
.search_sec .search_box .form_item .item_main .list_input li {
  width: auto;
  padding-right: 0;
  margin-right: 35px;
}

.search_sec .search_box .form_item .item_main .list_input li:last-of-type {
  margin-right: 0;
}

.search_sec .search_box .form_item .date_area {
  display: flex;
  align-items: center;
}

.search_sec .search_box .form_item .date_area .date {
  max-width: 200px;
}

.search_sec .search_box .form_item .date_area .date input {
  text-align: center;
}

.search_sec .search_box .form_item .date_area .txt {
  padding: 0 10px;
}
/*-------------------------
検索結果
-------------------------*/
.search_sec .search_result_area {
  margin-top: 20px;
}
.search_sec .search_result_area .result_list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: -25px;
}
.search_sec .search_result_area .result_list:after {
  content: "";
  display: block;
  width: 32%;
}
.search_sec .search_result_area .result_list li {
  width: 32%;
  border: 1px solid #D9D9D9;
  border-radius: 10px;
  padding: 20px;
  margin-bottom: 25px;
  line-height: 1.625;
}
.search_sec .search_result_area .result_list .profile_area {
  display: flex;
  margin-bottom: 15px;
}

.search_sec .search_result_area .result_list .profile_area .img {
  width: 80px;
}

.search_sec .search_result_area .result_list .profile_area .img img {
  width: 100%;
  height: auto;
}

.search_sec .search_result_area .result_list .profile_area .txt_aera {
  width: calc(100% - 80px);
  padding-left: 10px;
}

.search_sec .search_result_area .result_list .profile_area .name {
  font-size: 1.8rem;
  color: #F57386;
  margin: -2px 0 2px;
}

.search_sec .search_result_area .result_list .info_txt {
  margin-bottom: 15px;
}

.search_sec .search_result_area .result_list .info_txt .date {
  color: #F57386;
}

.search_sec .search_result_area .result_list .btn01 {
  margin-bottom: 15px;
}

.search_sec .search_result_area .result_list .btn01 .wrap {
  min-width: inherit;
  width: 100%;
}

.search_sec .search_result_area .result_list .details_link {
  margin-top: 15px;
  -moz-text-align-last: right;
       text-align-last: right;
}

.search_sec .search_result_area .result_list .details_link a {
  color: #F57386;
  text-decoration: underline;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■予約一覧
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#page_cared #reservation_sec table {
  width: 100%;
  font-size: 1.8rem;
  line-height: 1.6;
}
#page_cared #reservation_sec table th {
  font-weight: 700;
  text-align: left;
  padding-bottom: 5px;
}

#page_cared #reservation_sec table th .in {
  display: block;
  position: relative;
}

#page_cared #reservation_sec table th .in:after {
  content: "";
  display: block;
  width: calc(100% - 20px);
  height: 1px;
  background: #F57386;
  position: absolute;
  bottom: -5px;
  left: 0;
}

#page_cared #reservation_sec table th:last-of-type .in:after {
  width: 100%;
  right: 0;
}

#page_cared #reservation_sec table th.date {
  width: 180px;
}

#page_cared #reservation_sec table th.seat {
  width: 100px;
}

#page_cared #reservation_sec table th.status {
  width: 190px;
}

#page_cared #reservation_sec table th.edit {
  width: 200px;
}
#page_cared #reservation_sec table td {
  padding: 20px 15px 20px 0;
  border-bottom: 1px solid #D9D9D9;
}

#page_cared #reservation_sec table .btn01 .wrap {
  min-width: inherit;
  width: 100%;
  padding-left: 40px;
  padding-right: 40px;
}

#page_cared #reservation_sec table .btn01 .wrap:hover {
  cursor: pointer;
}

#page_cared #reservation_sec table tr td:last-of-type {
  padding-right: 0;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■service_sec
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#page_online .service_sec .target_box {
  margin-top: 35px;
}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■target_sec
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#page_online #target_sec .box_list li {
  padding-bottom: 0;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■course_sec
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#page_online #course_sec .course_list .list .inner {
  height: 100%;
}

/*-------------------------
course_block
-------------------------*/
#page_online .course_block {
  margin-top: 80px;
}
#page_online .course_block .read_txt {
  margin-bottom: 30px;
}
#page_online .course_block .details dd {
  margin-bottom: 30px;
}
#page_online .course_block .details dd:last-of-type {
  margin-bottom: 0;
}

#page_online .course_block .btn01 {
  margin-top: 40px;
}
#page_online .course_block .single_area {
  margin-top: 53px;
}
#page_online .course_block .single_area .box_list02 {
  margin-top: 15px;
}

#page_online .course_block .single_area .btn01 {
  margin-top: 0;
}

#page_policy #privacy_sec .read_txt {
  margin-bottom: 20px;
}

#page_policy #privacy_sec .policy dd {
  margin-bottom: 20px;
}

#page_policy #privacy_sec .policy dd:last-of-type {
  margin-bottom: 0;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■フォーム
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*--------------------------------------------------
  form reset
--------------------------------------------------*/
.form {
  /*
  select {
  	-webkit-appearance: none;
  	-moz-appearance: none;
  	appearance: none;
  }
  select::-ms-expand {
  	display: none;
  }
  */
}

.form input,
.form select,
.form textarea,
.form button {
  font-family: "游ゴシック体", "YuGothic", "游ゴシック Medium", "游ゴシック", "Yu Gothic Medium", "游ゴシック Medium", "Noto Sans JP", "Hiragino Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "Noto Sans Japanese", Meiryo, sans-serif;
  font-weight: 500;
  font-weight: 500;
}
.form input[type=text],
.form input[type=tel],
.form input[type=email],
.form input[type=password],
.form input[type=number],
.form input[type=url],
.form input[type=date],
.form input[type=month],
.form textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  width: 100%;
  border: 1px solid #D9D9D9;
  border-radius: 0;
  background: #fff;
  background: none;
  padding: 7px 15px;
  box-shadow: none;
  max-width: 100%;
  color: #222;
}

.form input[type=date] {
  outline: none;
  width: 100%;
  border: 1px solid #D9D9D9;
  border-radius: 0;
  background: #fff;
  background: none;
  padding: 0;
}

.form input[type=date]::-webkit-date-and-time-value,
.form input[type=month]::-webkit-date-and-time-value {
  text-align: left;
}

.form select {
  outline: none;
  width: 100%;
  border: 1px solid #D9D9D9;
  border-radius: 0;
  background: #fff;
  background: transparent;
  padding: 10px;
  box-shadow: none;
  color: #222;
}

.form textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  width: 100%;
  border: 1px solid #D9D9D9;
  border-radius: 0;
  background: #fff;
  resize: none;
  resize: both;
  outline: none;
  width: 100% !important;
  height: 200px !important;
  background: transparent;
}
.form label {
  cursor: pointer;
  padding: 0 !important;
  border: none !important;
}

.form label span {
  position: relative;
  padding: 0 0 0 30px;
}

.form label span:before, .form label span:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
}

.form label span:before {
  bottom: 0;
  left: 0;
  width: 20px;
  height: 20px;
  background: transparent;
  border: 1px solid #D9D9D9;
  transition: all 0.25s linear;
  margin: auto 0;
}

.form label span:after {
  opacity: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  transition: all 0.15s linear;
}

.form input[type=radio],
.form input[type=checkbox] {
  display: none;
}

.form input[type=radio]:checked + span:after,
.form input[type=radio]:checked + input + span:after,
.form input[type=checkbox]:checked + span:after,
.form input[type=checkbox]:checked + input + span:after {
  opacity: 1;
  transition: all 0.15s linear;
}

.form label input[type=radio] + span:before,
.form label input[type=radio] + input + span:before,
.form label input[type=radio] + span:after,
.form label input[type=radio] + input + span:after {
  border-radius: 50%;
}

.form label input[type=radio] + span:before,
.form label input[type=radio] + input + span:before {
  background-color: #fff;
}

.form label input[type=radio] + span:after,
.form label input[type=radio] + input + span:after {
  left: 4px;
  width: 12px;
  height: 12px;
  background: #F57386;
}

.form label input[type=checkbox] + span:after,
.form label input[type=checkbox] + input + span:after {
  top: 0;
  bottom: 2px;
  left: 8px;
  width: 6px;
  height: 12px;
  background: none;
  border-bottom: 2px solid #F57386;
  border-right: 2px solid #F57386;
  transform: rotate(40deg);
}
form#mailformpro label.mfp_checked {
  background: none !important;
  box-shadow: none !important;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ■↓↓↓お問い合わせフォーム　各サイトごとに自由編集↓↓↓
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*--------------------------------------------------
  メールフォームプロ
--------------------------------------------------*/
/* エラー */
div.mfp_err {
  clear: both;
  display: none;
  text-align: left;
  padding: 10px 0px 0px 0px;
  color: #F00;
  font-size: 1.2rem;
  line-height: normal;
  background-position: 0px 1px;
}

.mfp_parent_error {
  border: solid 2px #F00;
}

.problem {
  background-color: #FCC;
}

div#mfp_error {
  background-color: #FEE;
  border: solid 1px #F00;
  padding: 10px;
  display: none;
}

/* ボタン */
.mfp_buttons {
  font-size: 0;
  line-height: 0;
  margin-top: 40px;
  display: flex;
  justify-content: center;
}

.mfp_buttons button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  outline: none;
  text-shadow: none;
  box-shadow: none !important;
  text-align: center;
  position: relative;
  z-index: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  border-radius: 0;
  margin: 0 20px;
  max-width: 320px;
  height: 48px;
  padding: 9px;
  border: 1px solid #D9D9D9;
  border-radius: 50px;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic Medium", "游ゴシック Medium", "Noto Sans JP", "Hiragino Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "Noto Sans Japanese", Meiryo, sans-serif;
  font-weight: 500;
  font-size: 1.8rem;
  font-weight: 700 !important;
  transition: all 0.25s linear;
}
.mfp_buttons button:hover {
  opacity: 0.8;
  transition: all 0.25s linear;
}
.mfp_buttons button#mfp_button_send {
  color: #fff;
  border-color: #F57386;
  background: #F57386 !important;
}
.mfp_buttons button#mfp_button_cancel {
  color: #222;
  background: #fff !important;
}
/* テーブル */
#mfp_confirm_table {
  width: 100%;
}
#mfp_confirm_table tr {
  background: none;
}

#mfp_confirm_table th, #mfp_confirm_table td {
  line-height: 1.8;
  text-align: left;
  vertical-align: top;
  padding: 15px 0;
  border-bottom: 1px solid #D9D9D9;
}
#mfp_confirm_table th {
  width: 250px;
  font-size: 1.8rem;
  padding-right: 15px;
}
#mfp_confirm_table td {
  font-weight: 400;
}
.form_item .item_title {
  font-size: 1.8rem;
  margin-bottom: 13px;
}

.form_item .item_title .required {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  background: #F57386;
  padding: 4px 10px;
  border-radius: 5px;
  display: inline-block;
  margin-top: -2px;
  margin-left: 10px;
  vertical-align: middle;
}
.form_item .item_main {
  width: 100%;
  margin-bottom: 30px;
}

.form_item .item_main .list_input {
  overflow: hidden;
}

.form_item .item_main .list_input li {
  display: inline-block;
}

/*--------------------------------------------------
	確認画面
--------------------------------------------------*/
#mfp_phase_confirm h4 {
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
  margin: 0 0 30px;
}
/*--------------------------------------------------
	サンクスページ
--------------------------------------------------*/
#sec_contact_thanks .btn01 {
  margin-top: 40px;
}

/*-------------------------
  form_item
-------------------------*/
.form_item ul.default {
  display: flex;
  flex-wrap: wrap;
}
.form_item ul.default li {
  width: 33.33%;
  padding-right: 20px;
}
.form_item .item_privacy {
  line-height: 1.625;
}

.form_item .item_privacy .privacy_policy {
  margin: 18px 0;
  padding: 20px;
  border: 1px solid #D9D9D9;
  height: 200px;
  overflow-y: auto;
}
.form_item .item_privacy .privacy_policy dl {
  margin-top: 20px;
}

.form_item .item_privacy .privacy_policy dl dd {
  margin-bottom: 15px;
}

.form_item .item_privacy .privacy_policy dl dd:last-of-type {
  margin-bottom: 0;
}

.form_item .item_privacy .list_input {
  text-align: center;
}

.submit.btn01 {
  margin-top: 40px;
}

.submit.btn01 .wrap:disabled {
  opacity: 0.5;
  pointer-events: none;
}
.submit.btn01 .wrap:hover {
  background: url(../../images/ico_arrow01_w.png) no-repeat right 18px center #F57386;
  background-size: 26px auto;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■システムページ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ログイン
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#sec_login .form {
  margin-top: 35px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*マイページ調整用CSS（ヨドック様用）*/
@media only screen and (min-width:480px){
  h2 {
    font-size: 1.3rem;
    margin: 1.3rem 0;
    line-height: 1.3;
  }
  h3 {
    font-size: 1.2rem;
    margin: 1.2rem 0;
    line-height: 1.4;
  }
  a[href^="tel:"] {
    pointer-events: none;
    cursor: default;
  }
  .c-section {
    margin-bottom: 4rem;
  }
  .c-wrap {
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .c-grid.--gap3 {
    gap: 2rem 2rem;
  }
  .c-grid.--gap4 {
    gap: 2rem 2rem;
  }
  .c-grid.--gap5 {
    gap: 2rem 2rem;
  }
  .c-img_on_box .__inner {
    padding-top: 18rem;
  }
  .c-cat_grid-1 > .cat_grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem 1rem;
  }
  .c-flow_step > ul > li > dl {
    display: flex;
    align-items: center;
    padding: 2rem;
  }
  .c-flow_step > ul > li > dl > dt {
    width: 10em;
    padding-right: 2rem;
  }
  .c-flow_step > ul > li > dl > dd {
    width: calc(100% - 10em);
  }
  .u-center.--tb {
    text-align: center;
  }
  .u-large {
    font-size: 1.2rem;
  }
  .u-big {
    font-size: 1.8rem;
  }
  .u-sp_none {
    display: block;
  }
  .u-sp_block {
    display: none;
  }
  body.admin-bar #parts_header_bar #header-bar_area {
    top: 46px;
  }
  #col-main.main-page-front .section {
    margin-bottom: 4rem;
  }
  #col-main.main-page-front .section_top {
    margin-bottom: 3rem;
  }
  .form_wrap .form_item .item_title ._small {
    padding-left: 1em;
  }
}
@media only screen and (min-width: 768px){
  .btn01.big .wrap {
    min-width: 480px;
    padding-left: 75px;
    padding-right: 75px;
  }
  .table01 th {
    font-size: 1.8rem;
    width: 260px;
    padding-right: 20px;
  }
  .border_box02.p40 {
    padding: 40px;
  }
  .box_list .list.w50 li {
    width: 48%;
    max-width: 360px;
    margin-left: 0;
    margin-right: 0;
  }
  .box_list03 .list.w33:after {
    content: "";
    display: block;
    width: 31.7%;
  }
  #footer .login_menu li + li {
    margin-top: 20px;
  }
  .wp_editer img.alignleft, .wp_editer img.alignright,
  article .entry img.alignleft,
  article .entry img.alignright,
  .block-editor-block-list__layout img.alignleft,
  .block-editor-block-list__layout img.alignright {
    margin-top: 7px;
  }
  #page_instructor.page_course #online_course_sec .box_list02 .list:after {
    width: 32%;
  }
  #page_instructor.page_course #online_course_sec .box_list02 .list li {
    width: 32%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1280px){
  #header .main_menu li {
    margin-left: 11px;
    font-size: 1.4rem;
  }
  #header .login_menu .btn a {
    width: 100px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1470px){
  #header .logo {
    width: 125px;
  }
  #header .main_menu li {
    margin-left: 15px;
  }
  #header .login_menu {
    margin-left: 15px;
  }
  #header .login_menu .btn a {
    width: 125px;
    padding-left: 0;
    padding-right: 28px;
    font-size: 1.4rem;
  }
}
@media only screen and (min-width:768px){
  h2 {
    font-size: 1.4rem;
    margin: 1.4rem 0;
    line-height: 1.2;
  }
  h3 {
    font-size: 1.3rem;
    margin: 1.3rem 0;
    line-height: 1.3;
  }
  .c-wrap {
    padding-left: 3rem;
    padding-right: 3rem;
  }
  .u-tb_none {
    display: none;
  }
  .u-tb_block {
    display: block;
  }
  body.admin-bar #parts_header_bar #header-bar {
    top: 32px;
  }
  .search_sec .search_result_area .result_list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0px 20px;
  }
  .search_sec .em.em-list .em-item {
    display: grid;
    grid-template-columns: auto;
    grid-template-rows: subgrid;
    grid-row: span 5;
    width: 100%;
  }
}
@media screen and (min-width: 851px){
  #page_index .course_list .list li, #page_online .course_list .list li {
    margin: 0;
    width: calc((100% - 40px) / 3);
  }
}
@media only screen and (min-width:1072px){
  h2 {
    font-size: 1.5rem;
    margin: 1.5rem 0;
  }
  h3 {
    font-size: 1.4rem;
    margin: 1.4rem 0;
    line-height: 1.2;
  }
  .a-FadeInUpList > div:first-of-type,
  .a-FadeInUpList > li:first-of-type {
    animation: a-FadeInUp 0.8s ease 0s 1 both;
  }
  .a-FadeInUpList > div:nth-of-type(2),
  .a-FadeInUpList > li:nth-of-type(2) {
    animation: a-FadeInUp 0.8s ease 0.3s 1 both;
  }
  .a-FadeInUpList > div:nth-of-type(3),
  .a-FadeInUpList > li:nth-of-type(3) {
    animation: a-FadeInUp 0.8s ease 0.6s 1 both;
  }
  .a-FadeInUpList > div:nth-of-type(4),
  .a-FadeInUpList > li:nth-of-type(4) {
    animation: a-FadeInUp 0.8s ease 0.9s 1 both;
  }
  .a-FadeInUpList > div:nth-of-type(5),
  .a-FadeInUpList > li:nth-of-type(5) {
    animation: a-FadeInUp 0.8s ease 1.2s 1 both;
  }
  .a-FadeInUpList > div:nth-of-type(6),
  .a-FadeInUpList > li:nth-of-type(6) {
    animation: a-FadeInUp 0.8s ease 1.5s 1 both;
  }
  .c-section {
    margin-bottom: 5rem;
  }
  .c-wrap {
    padding-left: 8rem;
    padding-right: 8rem;
  }
  body.sidebar-left .c-wrap {
    padding-left: 3rem;
  }
  body.sidebar-right .c-wrap {
    padding-right: 3rem;
  }
  .c-flex {
    display: flex;
    justify-content: space-between;
  }
  .c-flex.--gap1 {
    gap: 0 1rem;
  }
  .c-flex.--gap2 {
    gap: 0 2rem;
  }
  .c-flex.--gap3 {
    gap: 0 3rem;
  }
  .c-flex.--gap4 {
    gap: 0 4rem;
  }
  .c-flex.--gap5 {
    gap: 0 5rem;
  }
  .c-flex > .__left,
  .c-flex > .__right {
    width: 50%;
    margin-bottom: 0;
  }
  .c-flex.--reverse {
    flex-flow: row-reverse;
  }
  .c-grid.--gap1 {
    gap: 1rem 1rem;
  }
  .c-grid.--gap2 {
    gap: 2rem 2rem;
  }
  .c-grid.--gap3 {
    gap: 3rem 3rem;
  }
  .c-grid.--gap4 {
    gap: 4rem 4rem;
  }
  .c-grid.--gap5 {
    gap: 5rem 5rem;
  }
  .c-grid.--overlay a .hover_box {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transform: translateY(100%);
    background: rgba(10, 69, 152, 0.755);
    transition: 0.4s;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .c-grid.--overlay a .hover_box .hover_box_inner .__title {
    font-size: 1.5rem;
  }
  .c-grid.--overlay a:hover .hover_box {
    transform: translateY(0);
  }
  .c-grid.--fade a .hover_box {
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: 0.4s;
    display: flex;
    justify-content: center;
    align-items: center;
    background: rgba(10, 69, 152, 0.755);
    transition: opacity 0.3s cubic-bezier(0.25, 0.25, 0.75, 0.75);
  }
  .c-grid.--fade a .hover_box .hover_box_inner .__title {
    font-size: 1.5rem;
  }
  .c-grid.--fade a:hover > img {
    transform: scale(1.15);
    opacity: 0.6;
  }
  .c-grid.--fade a:hover .hover_box {
    opacity: 1;
  }
  .c-box_on_img.--left_img {
    flex-flow: row;
  }
  .c-box_on_img.--left_img > .__left {
    width: 40%;
    padding: 6rem 0;
  }
  .c-box_on_img.--left_img > .__left > div,
  .c-box_on_img.--left_img > .__left img {
    width: 140%;
    max-width: unset;
    z-index: 1;
    position: relative;
  }
  .c-box_on_img.--left_img > .__right {
    width: 60%;
    max-width: unset;
  }
  .c-box_on_img.--left_img > .__right > .box_on_img_inner {
    width: 100%;
    height: 100%;
    display: flex;
    flex-flow: column;
    max-width: unset;
  }
  .c-box_on_img.--left_img > .__right > .box_on_img_inner > .__text_box {
    width: 70%;
    padding: 12rem 4rem;
    margin: 0 0 0 auto;
  }
  .c-box_on_img.--right_img {
    flex-flow: row;
  }
  .c-box_on_img.--right_img > .__left {
    width: 40%;
    max-width: unset;
  }
  .c-box_on_img.--right_img > .__left > .box_on_img_inner {
    width: 140%;
    height: 100%;
    display: flex;
    flex-flow: column;
    max-width: unset;
  }
  .c-box_on_img.--right_img > .__left > .box_on_img_inner > .__text_box {
    width: 70%;
    padding: 12rem 4rem;
    margin: 0 auto 0 0;
  }
  .c-box_on_img.--right_img .__right {
    width: 60%;
    padding: 6rem 0;
  }
  .c-box_on_img.--right_img .__right > div,
  .c-box_on_img.--right_img .__right img {
    width: 100%;
    max-width: unset;
    z-index: 1;
    position: relative;
  }
  .c-img_on_box .__inner {
    width: 90%;
    margin: 0 0 0 auto;
    background-position: center center;
  }
  .c-img_on_box .__box {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 20rem;
    min-height: 66.666%;
    padding: 2rem 1rem 8rem;
  }
  .c-img_on_box.--right .__inner {
    margin: 0 0 0 0;
  }
  .c-img_on_box.--right .__box {
    left: auto;
    right: 0;
  }
  .c-gmap.--min {
    padding-bottom: 22.25%;
  }
  #c-breadcrumb > ul {
    flex-wrap: wrap;
    overflow-x: unset;
  }
  .js-header_hide-body #c-go_top {
    bottom: 0.75rem;
    right: 2rem;
  }
  .c-cat_list-1 a .__contents {
    display: flex;
    width: 100%;
  }
  .c-cat_list-1 a .__contents .__time {
    display: block;
  }
  .c-cat_list-1 a .__contents .__cat {
    margin-right: 3rem;
  }
  .c-cat_list-1 a .__contents .__cat {
    display: block;
  }
  .c-cat_list-1 a.is-icon .__contents {
    padding-right: 3rem;
  }
  .c-cat_list-1 a.is-icon .__icon {
    width: 1.5em;
    height: 1.5em;
  }
  .c-cat_grid-1 > .cat_grid.--col1 {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 1rem 1rem;
  }
  .c-cat_grid-1 > .cat_grid.--col2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem 1rem;
  }
  .c-cat_grid-1 > .cat_grid.--col3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem 1rem;
  }
  .c-cat_grid-1 > .cat_grid.--col4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem 1rem;
  }
  .c-cat_grid-1 > .cat_grid > li {
    padding-bottom: 5rem;
  }
  .c-cat_grid-1 > .cat_grid > li .list_inner > .inner_btn {
    position: absolute;
    bottom: 1rem;
    left: 0;
    right: 0;
    width: 100%;
  }
  .c-timeline > li {
    display: flex;
  }
  .c-timeline .__date {
    left: 0;
    position: relative;
  }
  .c-timeline .__content {
    padding: 0.5rem 0 2rem 2rem;
    margin-left: 0;
    width: calc(100% - 6.5rem);
  }
  .c-timeline .__content:before {
    left: 6.2rem;
  }
  .c-list_number > li::before {
    top: 0;
    left: 0;
    right: auto;
  }
  .c-list_number > li > .__title {
    padding-left: 3rem;
  }
  .c-flow_arrow > .__box:not(:last-child) {
    padding-bottom: 4rem;
  }
  .c-flow_arrow > .__box:not(:last-child)::after {
    bottom: -2.1rem;
    border: 3rem solid transparent;
    border-top: 2rem solid #9098a9;
  }
  .c-flex_content {
    display: flex;
    justify-content: space-between;
    gap: 0 3rem;
  }
  .c-flex_content > .__left {
    width: 50%;
    margin-bottom: 0;
  }
  .c-flex_content > .__right {
    width: 50%;
  }
  .u-center.--pc {
    text-align: center;
  }
  .u-pc_none {
    display: none;
  }
  .u-pc_block {
    display: block;
  }
  [data-modal_contents].js-open {
    max-width: 60%;
  }
  [data-modal_contents_text] {
    max-height: 50vh;
  }
  body.admin-bar #parts_header_bar #header-bar_area {
    top: 32px;
  }
  .js-header_hide #parts_header_bar #header-bar_area {
    box-shadow: 1px 1px 2px #999;
  }
  #parts_header_bar #header-bar #header-access {
    display: none;
  }
  #parts_header_bar #header-bar #header-menu .menu {
    width: 100%;
    display: flex;
    justify-content: flex-end;
  }
  #parts_header_bar #header-bar #header-menu .menu .sub-menu a {
    display: block;
  }
  #parts_menu #menu_area .__background {
    width: 30%;
  }
  #parts_footer .footer_flex {
    display: flex;
  }
  #parts_footer .footer_flex > .__left {
    width: 30%;
    margin-bottom: 0;
  }
  #parts_footer .footer_flex > .__right {
    width: 70%;
  }
  #parts_footer .company_info > .__logo {
    width: 100%;
  }
  #parts_footer #menu-footer {
    display: flex;
  }
  #parts_footer #menu-footer > li {
    width: 20%;
    margin-bottom: 0;
  }
  #parts_footer #menu-footer .sub-menu > li {
    margin-top: 0;
  }
  #parts_footer #menu-footer .sub-menu {
    font-size: 0.8em;
  }
  #parts_footer #footer-social-list ul > li a .svg {
    width: 2em;
    height: 2rem;
  }
  #col-main.main-page-front .section {
    margin-bottom: 5rem;
  }
  #col-main.main-page-front .section_top > .__title {
    font-size: 2em;
  }
  #page_index .box_list .list li:not(.list2), #page_online .box_list .list li:not(.list2) {
    margin: 0 2% 60px;
    width: 29%;
  }
  .search_sec .search_result_area .result_list {
    grid-template-columns: repeat(3, 1fr);
  }
  #footer-social-list ul > li a .svg {
    width: 4em;
    height: 4rem;
  }
}
@media only screen and (min-width:1341px){
  .c-wrap {
    padding-left: 12rem;
    padding-right: 12rem;
  }
  .c-wrap.--small {
    width: 77vw;
  }
  .c-wrap.--mini {
    width: 66vw;
  }
  .c-wrap.--tiny {
    width: 55vw;
  }
  body.sidebar-left .c-wrap {
    width: 100% !important;
  }
  body.sidebar-right .c-wrap {
    width: 100% !important;
  }
  .u-large {
    font-size: 1.4rem;
  }
  .u-big {
    font-size: 2.8rem;
  }
  #header-cart {
    right: 37px;
    top: calc(100vh - 120px);
    background: #fff;
    border-radius: 50%;
    width: 45px;
    height: 45px;
    text-align: center;
    padding-top: 10px;
    border: 1px solid #f57386;
  }
  #header-cart #__count {
    right: 20px;
    top: -2px;
  }
  #header-social-list {
    display: none;
  }
}
@media screen and (min-width: 1341px){
  #parts_header_bar #header-bar #header-menu {
    display: block;
    margin-top: 10px;
  }
}
@media screen and (max-width: 1500px){
  #parts_header_bar #header-bar .login_menu {
    margin-left: 16px;
  }
  #parts_header_bar #header-bar .login_menu a {
    width: 125px;
    padding-left: 15px;
    padding-right: 25px;
    font-size: 1.4rem;
  }
  #parts_header_bar #header-bar #header-menu .menu > li {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 1341px){
  #parts_header_bar #header-bar .menu_wrap .login_menu {
    display: none;
  }
}
@media only screen and (max-width: 1340px){
  .menuBtn {
    display: block;
  }
}
@media only screen and (max-width:1340px){
  #parts_header_bar #header-bar_area {
    height: 7rem;
  }
  #parts_header_bar #header-bar #header_nav {
    padding: 10px 20px;
    height: 72px;
  }
  #page_index.contents #online_sec .service_block02 .list, #page_online.contents #online_sec .service_block02 .list {
    gap: 30px 20px;
  }
  #footer .login_menu {
    margin-left: 50px;
  }
  #footer .main_menu {
    -moz-column-gap: 5px;
         column-gap: 5px;
  }
}
@media screen and (max-width: 1320px) and (min-width: 768px){
  #page_index.contents #online_sec .service_block02 .list li, #page_online.contents #online_sec .service_block02 .list li {
    width: calc((100% - 20px) / 2);
  }
}
@media only screen and (max-width: 1240px){
  .w1200 {
    padding: 0 20px;
  }
}
@media only screen and (max-width: 1210px){
  .main_vs .first_view_img {
    width: calc(100% - 20px);
    left: 20px;
    margin-left: 0;
  }
  #main_vs .img {
    width: calc(100% - 20px);
    left: 20px;
    margin-left: 0;
  }
}
@media only screen and (max-width:1071px){
  .a-FadeInUpList > div,
  .a-FadeInUpList > li {
    animation: a-FadeInUp 0.8s ease 0s 1 both;
  }
  .c-grid.--tb_col1 {
    grid-template-columns: repeat(1, 1fr);
  }
  .c-grid.--tb_col2 {
    grid-template-columns: repeat(2, 1fr);
  }
  .c-grid.--tb_col3 {
    grid-template-columns: repeat(3, 1fr);
  }
  .c-grid.--tb_col4 {
    grid-template-columns: repeat(4, 1fr);
  }
  .c-grid.--tb_col5 {
    grid-template-columns: repeat(5, 1fr);
  }
  #c-breadcrumb > ul li {
    word-break: keep-all;
    white-space: nowrap;
  }
  #parts_header_bar #header-bar #header-title {
    width: 108px;
    flex: inherit;
  }
  #page_index #intro_pickup_sec .intro_inner, #page_online #intro_pickup_sec .intro_inner {
    padding-right: 8%;
    padding-left: 8%;
  }
  #page_index .box_list .list li, #page_online .box_list .list li {
    margin: 0 1.5% 60px;
  }
  #page_index.contents #online_sec .service_block02 .list, #page_online.contents #online_sec .service_block02 .list {
    flex-wrap: wrap;
  }
  #page_index.contents #online_sec .service_block02 .list .txt_area .txt, #page_index.contents #online_sec .service_block02 .list .hd .txt, #page_online.contents #online_sec .service_block02 .list .txt_area .txt, #page_online.contents #online_sec .service_block02 .list .hd .txt {
    padding: 15px 10px;
  }
  #footer {
    padding-left: 0px;
    padding-right: 0px;
  }
  #footer #footer_nav {
    gap: 50px;
  }
  #footer .login_menu {
    margin-left: 20px;
  }
  .hd02 {
    margin-bottom: 25px;
  }
  #header-social-list .header-insta {
    width: 2.75rem;
    height: 2.75rem;
  }
  #page_online .course_block .btn01 {
    margin-top: 30px;
  }
  #page_cared.page_index .box_list02 .btn01 {
    margin-top: 30px;
  }
  .box_list02 .list {
    margin-bottom: -20px;
  }
  .box_list02 .list li {
    max-width: calc((100% - 20px) / 2);
  }
  #target_sec {
    margin-bottom: 60px;
  }
  .contents .login_none {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .search_sec .search_result_area .result_list li {
    width: 49%;
  }
  .em-list .result_list {
    padding-top: 30px;
  }
  #intro_pickup_sec .intro_inner {
    border-radius: 0 0 100px 0;
  }
  #page_instructor .course_list .list {
    margin: 0 0 -45px;
  }
  #page_instructor .course_list .list .inner {
    padding: 20px 15px;
  }
  #page_instructor .course_list .list .inner .btn01 .wrap {
    padding: 12px 20px;
  }
  #page_instructor .course_list .list li {
    margin: 0 10px 25px;
    width: calc(33.33% - 20px);
  }
  .box_list03 .list {
    margin-bottom: -15px;
  }
  .box_list03 .list li {
    margin-bottom: 20px;
  }
  #page_instructor .member_block .member_list li {
    padding-left: 10px;
    padding-right: 10px;
  }
  #page_instructor .member_block .member_list .txt_area {
    padding-left: 15px;
  }
  .main_vs .first_view_img img {
    transform: translate(-20%, 0px);
  }
  #page_policy #tokusho_sec .btn01 {
    margin-top: 40px;
  }
  #footer-social-list ul {
    justify-content: center;
  }
}
@media only screen and (max-width: 1040px){
  .innerWrap {
    padding: 0 20px;
  }
}
@media only screen and (max-width: 1000px){
  .box_list03 .list.w33 li {
    width: 100%;
    max-width: inherit;
  }
}
@media screen and (max-width: 850px){
  #page_index .course_list .list, #page_online .course_list .list {
    display: block;
  }
  #page_index .course_list .list li, #page_online .course_list .list li {
    width: 100%;
    margin: 0 0 20px;
  }
}
@media screen and (max-width: 800px){
  /*
  form#mailformpro dl dt {
  	float: none;
  	width: auto;
  	font-size: 12px;
  	padding: 5px;
  	text-align: left;
  }
  form#mailformpro dl dd {
  	clear: both;
  	border-top: none;
  	padding: 5px 15px;
  	font-size: 12px;
  	line-height: 1.5em;
  }
  div.mfp_buttons button {
  	font-size: 14px;
  }
  div#mfp_phase_confirm h4 {
  	font-size: 18px;
  }
  */
  ul#mfp_phase_stat {
    padding: 0px;
    text-align: left;
  }
  ul#mfp_phase_stat li {
    text-align: center;
    padding: 5px 0px;
    border-radius: 3px;
    margin: 5px;
    list-style: none;
    font-size: 14px;
    width: 28%;
  }
  ul#mfp_phase_stat li.mfp_phase_arrow {
    box-shadow: none;
    display: none;
  }
  table#mfp_confirm_table tr th {
    white-space: nowrap;
    width: 100px;
  }
  div#mfp_thanks {
    text-align: center;
    font-size: 18px;
    padding: 20px 0px;
  }
  div#mfp_thanks strong {
    color: #C00;
    font-size: 24px;
    display: block;
  }
}
@media only screen and (max-width: 767px){
  .main_vs {
    height: 170px;
  }
  .main_vs .first_view_img {
    border-radius: 0 0 0 40px;
  }
  .main_vs .first_view_img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    font-family: "object-fit: cover;";
  }
  .main_vs .txt_area {
    padding-right: 20px;
  }
  .main_vs .txt_area .txt_inner {
    margin: 0 !important;
  }
  .main_vs .txt_area .inner {
    top: auto;
    bottom: 35px;
  }
  .main_vs .txt_area .txt {
    font-size: 2.4rem;
    padding: 6px 15px 6px 20px;
  }
  .main_vs .txt_area .txt + .txt {
    margin-top: 10px;
  }
  .view_front .main_vs {
    height: 240px;
  }
  .view_front .main_vs .txt_area .inner {
    bottom: 10px;
  }
  #page_news .category_link {
    display: block;
    margin-bottom: 20px;
  }
  #page_news .category_link li {
    width: 100%;
    margin-bottom: 10px;
  }
  #page_news .category_link li:last-of-type {
    margin-bottom: 0;
  }
  .ro:hover,
  .ro a:hover,
  .ro a:hover img {
    opacity: 1;
  }
  .pc, .pcCont {
    display: none;
  }
  .sp, .spCont {
    display: block;
  }
  body {
    font-weight: normal;
  }
  body {
    min-width: inherit;
  }
  a[href*="tel:"] {
    text-decoration: underline;
  }
  #container {
    padding-top: 72px;
  }
  .hd01 {
    font-size: 2.4rem;
    padding-bottom: 32px;
    margin-bottom: 30px;
  }
  .hd01:after {
    height: 11px;
  }
  .hd02 {
    font-size: 2.4rem;
    margin-bottom: 30px;
  }
  .hd03 .in {
    padding: 0 37px;
  }
  .hd03 .in:before, .hd03 .in:after {
    height: 63px;
    bottom: -5px;
  }
  .hd03 br.spCont {
    display: inline-block;
  }
  .hd03.only .in {
    padding: 0 30px;
  }
  .hd03.only .in:before, .hd03.only .in:after {
    height: 33px;
  }
  .btn01 .wrap {
    display: block;
    min-width: inherit;
    max-width: 450px;
    margin: 0 auto;
  }
  .btn01.big .wrap {
    padding-top: 15px;
    padding-bottom: 15px;
    font-size: 1.9rem;
  }
  .btn02 .wrap {
    font-size: 1.7rem;
    padding-left: 45px;
    padding-right: 45px;
    background-position: left 13px center;
  }
  ul.btn02 {
    display: block;
    margin-bottom: -15px;
  }
  ul.btn02:after {
    content: none;
  }
  ul.btn02 li {
    width: 100%;
    margin-bottom: 15px;
  }
  .table01 {
    border-top: 1px solid #D9D9D9;
  }
  .table01 th, .table01 td {
    display: block;
    width: 100%;
    padding: 5px 10px;
  }
  .table01 th {
    background: #F8F8F8;
    border-bottom: none;
  }
  .table01 td {
    padding-bottom: 20px;
  }
  .list02 li {
    font-size: 1.6rem;
  }
  .border_box01 {
    padding: 15px 20px;
  }
  .border_box01 .big {
    font-size: 1.7rem;
    line-height: 1.8;
  }
  .target_box {
    display: block;
    padding: 20px;
  }
  .target_box .list {
    margin-bottom: -20px;
  }
  .target_box .list li {
    width: 100%;
    margin-bottom: 20px;
  }
  .box_list .list {
    display: block;
    margin: 0;
  }
  .box_list .list li {
    width: 100%;
    margin: 0 0 40px;
    padding-bottom: 0;
  }
  .box_list .list li:last-of-type {
    margin-bottom: 0;
  }
  .box_list .list .btn01 {
    position: static;
    margin-top: 17px;
  }
  .box_list02 .list {
    margin-bottom: -10px;
  }
  .box_list02 .list:after {
    content: none;
  }
  .box_list02 .list li {
    width: calc(50% - 5px);
    padding: 10px 10px 55px;
    margin-bottom: 10px;
  }
  .box_list02 .list .img {
    margin-bottom: 7px;
  }
  .box_list02 .list .ttl {
    font-size: 1.5rem;
  }
  .box_list02 .list .btn01 {
    bottom: 10px;
    left: 10px;
    right: 10px;
  }
  .box_list02 .list .btn01 .wrap {
    background-image: none;
    font-size: 1.5rem;
    padding: 10px;
  }
  .box_list03 .list {
    display: block;
    margin-bottom: 0;
  }
  .box_list03 .list li {
    width: 100%;
    max-width: inherit;
    margin-bottom: 35px;
  }
  .box_list03 .list li:last-of-type {
    margin-bottom: 0;
  }
  .box_list03 .list .hd {
    margin-bottom: 10px;
  }
  .box_list03 .list .hd .num {
    width: 42px;
    height: 42px;
    font-size: 2.2rem;
  }
  .box_list03 .list .hd .txt {
    width: calc(100% - 42px);
    padding-left: 15px;
    font-size: 1.7rem;
  }
  .box_list03 .list.w33 li {
    width: 100%;
  }
  .course_list .list {
    display: block;
    margin: 0;
  }
  .course_list .list li {
    width: 100%;
    max-width: inherit;
    margin: 0 0 20px;
  }
  .course_list .list li:last-of-type {
    margin-bottom: 0;
  }
  .course_list .list .inner {
    height: auto;
  }
  .course_list .list .note {
    font-size: 1.3rem;
    margin-top: 10px;
  }
  .sp_scroll:before {
    content: "▼スクロールをしてご確認ください。";
    display: block;
    margin-bottom: 5px;
  }
  .sp_scroll .scroll_area {
    overflow-x: auto;
  }
  .sp_scroll table {
    width: 700px;
  }
  .js-scrollable .flow_area {
    width: 750px;
    padding: 20px;
  }
  .scroll-hint {
    margin-right: -20px;
  }
  #header {
    min-width: inherit;
    min-height: inherit;
  }
  #header #header_nav {
    padding: 10px 20px;
    height: 72px;
  }
  #header .logo {
    width: 108px;
    flex: inherit;
  }
  #header .menu_wrap {
    display: none;
  }
  #footer {
    padding: 60px 20px 0;
  }
  #footer #footer_nav {
    display: block;
    padding: 0 5px;
  }
  #footer .info_area {
    flex: inherit;
    text-align: center;
    margin-bottom: 35px;
  }
  #footer .info_area .logo {
    margin: 0 auto 15px;
  }
  #footer .info_area .address {
    font-size: 1.4rem;
    line-height: 1.28571;
  }
  #footer .menu_wrap {
    display: block;
  }
  #footer .main_menu {
    -moz-column-gap: 5px;
         column-gap: 5px;
    margin-bottom: 35px;
  }
  #footer .main_menu li {
    font-size: 1.4rem;
    margin-bottom: 20px;
  }
  #footer .login_menu {
    margin: 0 -10px;
    display: flex;
    justify-content: space-between;
  }
  #footer .login_menu li {
    width: calc(50% - 10px);
  }
  #footer .login_menu .btn a {
    width: 100%;
  }
  #footer .login_menu .txt {
    font-size: 1.4rem;
  }
  #pagetop {
    right: 20px;
  }
  .menuBtn {
    display: block;
  }
  #main_vs {
    height: 170px;
  }
  #main_vs .img {
    border-radius: 0 0 0 40px;
  }
  #main_vs .img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    font-family: "object-fit: cover;";
  }
  #main_vs .txt_area {
    padding-right: 20px;
  }
  #main_vs .txt_area .txt_inner {
    margin: 0 !important;
  }
  #main_vs .txt_area .inner {
    top: auto;
    bottom: 35px;
  }
  #main_vs .txt_area .txt {
    font-size: 2.4rem;
    padding: 6px 15px 6px 20px;
  }
  #main_vs .txt_area .txt + .txt {
    margin-top: 10px;
  }
  #intro_pickup_sec .intro_inner {
    padding: 60px 20px;
    border-radius: 0 0 40px 0;
  }
  #intro_pickup_sec .btn01 {
    margin-top: 25px;
  }
  #main_contents .block {
    padding: 60px 0;
  }
  #main_contents .block .inner_block:not(:last-of-type) {
    margin-bottom: 50px;
  }
  .list_news .inner {
    line-height: 1.625;
    display: block;
  }
  .list_news .post_date {
    margin-bottom: 5px;
  }
  #notfound {
    padding: 90px 20px;
  }
  #notfound .caption {
    margin-bottom: 60px;
  }
  .wp-pagenavi .prev.page-numbers,
  .wp-pagenavi .next.page-numbers {
    margin: 0 20px;
  }
  .navigation .list a {
    min-width: 185px;
  }
  .wp_editer p, .wp_editer ul, .wp_editer ol, .wp_editer table, .wp_editer figure,
  article .entry p,
  article .entry ul,
  article .entry ol,
  article .entry table,
  article .entry figure,
  .block-editor-block-list__layout p,
  .block-editor-block-list__layout ul,
  .block-editor-block-list__layout ol,
  .block-editor-block-list__layout table,
  .block-editor-block-list__layout figure {
    margin-bottom: 20px;
  }
  .wp_editer .alignleft,
  article .entry .alignleft,
  .block-editor-block-list__layout .alignleft {
    float: none;
    max-width: 100%;
    text-align: center;
    font-weight: normal;
    margin: 0 auto 30px !important;
  }
  .wp_editer .alignright,
  article .entry .alignright,
  .block-editor-block-list__layout .alignright {
    float: none;
    max-width: 100%;
    text-align: center;
    font-weight: normal;
    margin: 0 auto 30px !important;
  }
  .wp_editer img,
  article .entry img,
  .block-editor-block-list__layout img {
    margin: 30px auto;
  }
  .wp_editer img + figcaption,
  article .entry img + figcaption,
  .block-editor-block-list__layout img + figcaption {
    margin-top: -18px;
  }
  .wp_editer blockquote,
  article .entry blockquote,
  .block-editor-block-list__layout blockquote {
    padding: 25px 30px;
  }
  .wp_editer blockquote:before,
  article .entry blockquote:before,
  .block-editor-block-list__layout blockquote:before {
    top: 12px;
    left: 10px;
  }
  .wp_editer blockquote:after,
  article .entry blockquote:after,
  .block-editor-block-list__layout blockquote:after {
    bottom: -15px;
    right: 11px;
  }
  .wp_editer h1, .wp_editer h2, .wp_editer h3, .wp_editer h4, .wp_editer h5, .wp_editer h6,
  article .entry h1,
  article .entry h2,
  article .entry h3,
  article .entry h4,
  article .entry h5,
  article .entry h6,
  .block-editor-block-list__layout h1,
  .block-editor-block-list__layout h2,
  .block-editor-block-list__layout h3,
  .block-editor-block-list__layout h4,
  .block-editor-block-list__layout h5,
  .block-editor-block-list__layout h6 {
    margin-bottom: 15px;
  }
  .wp_editer h1,
  article .entry h1,
  .block-editor-block-list__layout h1 {
    font-size: 160%;
  }
  .wp_editer h2,
  article .entry h2,
  .block-editor-block-list__layout h2 {
    font-size: 146%;
  }
  .wp_editer h3,
  article .entry h3,
  .block-editor-block-list__layout h3 {
    font-size: 134%;
    margin-bottom: 20px;
  }
  .wp_editer h4,
  article .entry h4,
  .block-editor-block-list__layout h4 {
    font-size: 106%;
  }
  .wp_editer h5,
  article .entry h5,
  .block-editor-block-list__layout h5 {
    font-size: 106%;
    padding-left: 12px;
  }
  .wp_editer h6,
  article .entry h6,
  .block-editor-block-list__layout h6 {
    font-size: 106%;
  }
  .wp_editer .js-scrollable table,
  article .entry .js-scrollable table,
  .block-editor-block-list__layout .js-scrollable table {
    min-width: 400px;
  }
  #page_news article #hd_area {
    margin-bottom: 30px;
  }
  #page_news article #hd_area .post_date {
    font-size: 1.3rem;
    width: 100%;
    line-height: 1;
    margin-bottom: 2px;
  }
  #page_index #main_vs {
    height: 240px;
  }
  #page_index #main_vs .txt_area .inner {
    bottom: 10px;
  }
  #page_index #online_sec .js-scrollable {
    margin-bottom: 60px;
  }
  #page_index #online_sec .service_block02 .list {
    display: block;
  }
  #page_index #online_sec .service_block02 .list li {
    width: 100%;
    margin-bottom: 40px;
  }
  #page_index #online_sec .service_block02 .list li:last-of-type {
    margin-bottom: 0;
  }
  #page_index #online_sec .service_block02 .list .hd {
    margin-bottom: 40px;
  }
  #page_index #online_sec .service_block02 .list .hd:after {
    bottom: -32px;
  }
  #page_index #online_sec .service_block02 .list .hd .txt {
    min-height: inherit;
    padding: 20px;
  }
  #page_index #online_sec .service_block02 .list .txt_area .txt {
    min-height: inherit;
  }
  #page_index #about_sec .txt {
    text-align: left;
  }
  #page_index #about_sec .btn01 {
    margin-top: 17px;
  }
  #page_index #news_sec .tab {
    display: block;
    margin-bottom: 20px;
  }
  #page_index #news_sec .tab li {
    width: 100%;
    margin-bottom: 10px;
  }
  #page_index #news_sec .tab li:last-of-type {
    margin-bottom: 0;
  }
  #page_about .block .border_box01 {
    margin-top: 25px;
  }
  #page_about #feature_sec .btn01 {
    margin-top: 40px;
  }
  #page_instructor #intro_pickup_sec .innerWrap {
    padding-left: 0;
  }
  #page_instructor #intro_pickup_sec .problem_area {
    margin: 50px auto;
  }
  #page_instructor #course_sec .inner_block .read_txt {
    font-size: 1.6rem;
    margin-bottom: 15px;
    text-align: left;
  }
  #page_instructor #instructor_sec .step {
    display: block;
  }
  #page_instructor #instructor_sec .step li {
    width: 100%;
    padding: 15px 20px;
    margin-bottom: 30px;
  }
  #page_instructor #instructor_sec .step li:after {
    width: 100%;
    height: 18px;
    background: url(../../images/ico_down01.png) no-repeat center center;
    background-size: auto 100%;
    top: auto;
    right: 0;
    bottom: -25px;
  }
  #page_instructor #instructor_sec .step li:last-of-type {
    margin-bottom: 0;
  }
  #page_instructor .member_block .member_list {
    display: block;
    padding-bottom: 20px;
  }
  #page_instructor .member_block .member_list:after {
    content: none;
  }
  #page_instructor .member_block .member_list li {
    width: 100%;
    margin-bottom: 15px;
  }
  #page_instructor.page_course #online_course_sec .box_list02 .list li {
    width: 100%;
    position: static;
    padding: 20px;
    padding-bottom: 20px;
  }
  #page_instructor.page_course #online_course_sec .box_list02 .list .btn01 {
    position: static;
    margin-top: 5px;
  }
  #page_cared.page_index .btn01 {
    margin-top: 25px;
  }
  #page_cared.page_index #merit_sec .box_list03 {
    padding-bottom: 40px;
  }
  #page_cared.page_member #member_sec .details_wrap {
    display: block;
  }
  #page_cared.page_member #member_sec .details_wrap .img_area {
    width: 100%;
    margin-bottom: 40px;
  }
  #page_cared.page_member #member_sec .details_wrap .img_area .img {
    max-width: 80%;
    margin: 0 auto;
  }
  #page_cared.page_member #member_sec .details_wrap .txt_area {
    width: 100%;
  }
  #page_cared.page_workshop #workshop_sec .workshop_wrap {
    display: block;
  }
  #page_cared.page_workshop #workshop_sec .workshop_wrap .calendar {
    width: 100%;
    margin: 0 auto 30px;
  }
  #page_cared.page_workshop #workshop_sec .workshop_wrap .workshop_list {
    width: 100%;
  }
  #page_cared.page_workshop #workshop_sec .workshop_wrap .workshop_list li {
    margin-bottom: 15px;
  }
  #page_cared.page_workshop #workshop_details_sec .status_box .txt {
    text-align: left;
  }
  .search_sec .search_box .form_item .date_area .txt {
    padding: 0 5px;
  }
  .search_sec .search_result_area {
    margin-top: 35px;
  }
  .search_sec .search_result_area .result_list {
    display: block;
    margin-bottom: -15px;
  }
  .search_sec .search_result_area .result_list:after {
    content: none;
  }
  .search_sec .search_result_area .result_list li {
    width: 100%;
    margin-bottom: 15px;
  }
  #page_cared #reservation_sec .reservation_box {
    width: 900px;
  }
  #page_cared #reservation_sec table {
    font-size: 1.6rem;
  }
  #page_cared #reservation_sec table th.edit {
    width: 170px;
  }
  #page_online .service_sec .target_box {
    margin-top: 20px;
  }
  #page_online .course_block {
    margin-top: 45px;
  }
  #page_online .course_block .read_txt {
    margin-bottom: 20px;
  }
  #page_online .course_block .details dd {
    margin-bottom: 20px;
  }
  #page_online .course_block .btn01 {
    margin-top: 25px;
  }
  #page_online .course_block .single_area {
    margin-top: 40px;
  }
  .form input,
  .form select,
  .form textarea,
  .form button {
    font-weight: normal;
  }
  .form textarea {
    height: 150px !important;
  }
  .custombtn label span {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 40px;
    padding: 0;
  }
  .custombtn label span:before, .custombtn label span:after {
    z-index: -1;
  }
  .custombtn label span:after {
    display: none;
  }
  .custombtn label input[type=radio] + span:before,
  .custombtn label input[type=radio] + input + span:before,
  .custombtn label input[type=radio] + span:after,
  .custombtn label input[type=radio] + input + span:after,
  .custombtn label input[type=checkbox] + span:before,
  .custombtn label input[type=checkbox] + input + span:before,
  .custombtn label input[type=checkbox] + span:after,
  .custombtn label input[type=checkbox] + input + span:after {
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: auto;
    height: auto;
    border-radius: 5px;
  }
  .custombtn label input[type=checkbox] + span:after,
  .custombtn label input[type=checkbox] + input + span:after {
    border: none;
    background: #ccc;
    transform: none;
  }
  .custombtn label input[type=radio]:checked + span,
  .custombtn label input[type=radio]:checked + input + span,
  .custombtn label input[type=checkbox]:checked + input + span,
  .custombtn label input[type=checkbox]:checked + span {
    color: #fff;
  }
  .custombtn label input[type=checkbox]:checked + input + span:before,
  .custombtn label input[type=checkbox]:checked + span:before {
    background-color: #6e6e6e;
  }
  .custombtn label input[type=radio]:checked + span:before,
  .custombtn label input[type=radio]:checked + input + span:before,
  .custombtn label input[type=checkbox]:checked + span:before,
  .custombtn label input[type=checkbox]:checked + input + span:before {
    background-color: #f00;
  }
  .mfp_buttons button {
    font-weight: normal;
  }
  .mfp_buttons button {
    margin: 0 5px;
  }
  .mfp_buttons button#mfp_button_send {
    margin-left: 0;
  }
  .mfp_buttons button#mfp_button_cancel {
    margin-right: 0;
  }
  #mfp_confirm_table {
    border-top: 1px solid #D9D9D9;
  }
  #mfp_confirm_table th, #mfp_confirm_table td {
    display: block;
    width: 100% !important;
    padding: 5px 10px;
  }
  #mfp_confirm_table th {
    border-bottom: none;
    background: #F8F8F8;
    font-size: 1.5rem;
  }
  #mfp_confirm_table td {
    padding-bottom: 20px;
  }
  .form_item .item_title .required {
    font-size: 1.4rem;
  }
  #mfp_phase_confirm h4 {
    font-size: 1.8rem;
    margin: 0 0 50px;
    margin-bottom: 25px;
  }
  .form_item ul.default {
    display: block;
  }
  .form_item ul.default li {
    width: 100%;
    padding-right: 0;
  }
  .form_item .item_privacy .privacy_policy {
    font-size: 1.4rem;
  }
  .submit.btn01 .wrap {
    width: 90%;
  }
}
@media only screen and (max-width:767px){
  .mt60 {
    margin-top: 40px;
  }
  .tabspbr {
    display: block;
  }
  #parts_menu #menu_area .menu_box #toggle-navigation .menu .menu-item-has-children > a {
    border-bottom: 1px solid #D9D9D9;
    width: 100%;
  }
  #parts_menu #menu_area .menu_box #toggle-navigation .menu .sub-menu > li a::before {
    top: 0.5em;
  }
  #parts_menu #menu_area.js-open .menu_box {
    margin-top: 0;
    padding-top: 72px;
  }
  #col-main.main-page-front #subsidy .subsidy-flex {
    display: block;
  }
  #col-main.main-page-front #subsidy .subsidy-flex .box {
    width: 100%;
    border: 1px solid #cdcdcd;
    padding: 2rem;
  }
  #col-main.main-page-front #subsidy .subsidy-flex .box:first-child {
    margin-bottom: 2.5rem;
  }
  #col-main.main-page-front #subsidy .subsidy-flex .box img {
    width: 60%;
  }
  #col-main.main-page-front #subsidy .subsidy-flex .box h2 {
    font-size: 1.5rem;
  }
  #page_index #intro_pickup_sec .intro_inner, #page_online #intro_pickup_sec .intro_inner {
    padding-right: 20px;
    padding-left: 20px;
  }
  #page_index .box_list .list li, #page_online .box_list .list li {
    margin: 0 0 30px;
  }
  #footer .footer-insta {
    width: 2.75rem;
    height: 2.75rem;
  }
  .hd01 {
    padding-bottom: 25px;
    margin-bottom: 26px;
  }
  .hd02 {
    margin-bottom: 20px;
  }
  #header-social-list ul > li {
    margin: 0.5rem 1rem 0;
  }
  .online-inctur_btn {
    margin-top: 50px;
  }
  .submit.btn01 #button {
    height: 56px;
  }
  .submit.btn01 .wpcf7-form-control.wpcf7-submit {
    display: inline-block;
    width: 100%;
    font-weight: 600;
  }
  #target_sec {
    margin-bottom: 40px;
  }
  .form_item .item_main {
    margin-bottom: 20px;
  }
  .em-list .result_list {
    margin-bottom: 0;
    padding-top: 0px;
  }
  .search_box.border_box02 .form_item .item_title {
    margin-bottom: 8px;
  }
  .search_box.border_box02 .form_item .date_area {
    gap: 10px;
  }
  .em-view-container .em.em-list.em-grid .em-item, .em-view-container .em.em-list.size-small .em-item {
    padding: 20px 10px;
  }
  .search_sec .search_box .form_item .date_area .date input {
    height: 42px;
  }
  .em-view-container .em.em-list.em-grid .em-item .em-item-image.has-placeholder, .em-view-container .em.em-list.size-small .em-item .em-item-image.has-placeholder {
    padding: 0;
  }
  .search_sec .search_result_area .result_list .info_txt {
    margin-bottom: 0 !important;
  }
  #page_instructor .course_list .list {
    margin: 0;
  }
  #page_instructor .course_list .list li {
    margin: 0 0 20px;
    max-width: inherit;
    width: 100%;
  }
  .main_vs .first_view_img img {
    transform: translate(0px, 0px);
  }
}
@media screen and (max-width: 767px){
  .logged-in #header {
    top: 46px;
  }
}
@media only screen and (max-width:479px){
  .c-grid.--sp_col1 {
    grid-template-columns: repeat(1, 1fr);
  }
  .c-grid.--sp_col2 {
    grid-template-columns: repeat(2, 1fr);
  }
  .c-grid.--sp_col3 {
    grid-template-columns: repeat(3, 1fr);
  }
  .c-grid.--sp_col4 {
    grid-template-columns: repeat(4, 1fr);
  }
  .c-grid.--sp_col5 {
    grid-template-columns: repeat(5, 1fr);
  }
  .c-table.--stripe.--sp_block > table tr:nth-child(odd) {
    background: unset;
  }
  .c-table.--stripe.--sp_block > table tr th {
    background: #f5f5f5;
  }
  .c-table.--sp_block > table {
    display: block;
  }
  .c-table.--sp_block > table tbody,
  .c-table.--sp_block > table tr,
  .c-table.--sp_block > table th,
  .c-table.--sp_block > table td {
    display: block;
    width: 100%;
  }
  .spbr {
    display: block;
  }
  .u-tel {
    color: #3273dc;
  }
  .u-tel.--icon {
    color: #4a4a4a;
    position: relative;
    display: inline-block;
    padding-left: 2.2em;
  }
  .u-tel.--icon::before {
    content: "";
    position: absolute;
    top: -0.1em;
    left: 0;
    -webkit-mask-image: url("/wp-content/themes/femica/images/icon/phonelink_ring.svg#svg-phonelink_ring");
            mask-image: url("/wp-content/themes/femica/images/icon/phonelink_ring.svg#svg-phonelink_ring");
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    -webkit-mask-position: center center;
            mask-position: center center;
    width: 2em;
    height: 2em;
    background-color: #4a4a4a;
  }
  .hd01 {
    font-size: 2.2rem;
  }
  .hd02 {
    font-size: 2.2rem;
  }
  .list01 li {
    font-size: 1.6rem;
  }
  #footer-social-list ul > li a {
    display: inline-block;
  }
  #intro_pickup_sec .read_txt {
    font-size: 1.6rem;
  }
  #main_contents .block .inner_block:not(:last-of-type) {
    margin-bottom: 70px;
  }
  .service_block02.inner_block .hd02 {
    margin-bottom: 25px;
  }
  .service_block02.inner_block .hd03 {
    margin-bottom: 25px;
  }
  .course_list .list .btn01 {
    margin-top: 10px;
  }
  #page_index #course_sec .course_list {
    margin-top: 20px;
  }
  .target_box .list .hd04 {
    margin-bottom: 10px;
  }
  #page_online .course_block {
    margin-top: 60px;
  }
  #page_online .course_block .single_area {
    margin-top: 45px;
  }
  #main_contents .block .inner_block:not(:last-of-type) {
    margin-bottom: 60px;
  }
  .form_wrap .form_item .item_title ._small {
    display: block;
  }
  .form_item .default .wpcf7-list-item {
    width: 100%;
  }
  #page_instructor #intro_pickup_sec .problem_area .next_area .txt {
    font-size: 1.8rem;
  }
  .box_list03 .list li {
    margin-bottom: 20px;
  }
  #page_instructor #course_sec .box_list03 {
    padding-bottom: 30px;
  }
}
@media screen and (max-width: 450px){
  .box_list02 .list li {
    max-width: 100%;
    width: 100%;
  }
}
@media all and (-ms-high-contrast: none){
  body {
    font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic Medium", "游ゴシック Medium", "Hiragino Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "Noto Sans Japanese", Meiryo, sans-serif;
    font-weight: 400;
  }
  .form input,
  .form select,
  .form textarea,
  .form button {
    font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic Medium", "游ゴシック Medium", "Hiragino Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "Noto Sans Japanese", Meiryo, sans-serif;
    font-weight: 400;
  }
  .mfp_buttons button {
    font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic Medium", "游ゴシック Medium", "Hiragino Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "Noto Sans Japanese", Meiryo, sans-serif;
    font-weight: 400;
  }
}

/*# sourceMappingURL=contents_front.css.map*/