@charset "UTF-8";
/*----------------------*/
/* 　カラーセット
/*----------------------*/
/*  変数　使用例　↓  */

@media screen and (min-width: 561px) {
  .sp {
    display: none;
  }
}

@media screen and (max-width: 560px) {
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
}

@media screen and (min-width: 769px) {
  .sp-1 {
    display: none;
  }
}

@media screen and (max-width: 768px) {
  .pc-1 {
    display: none;
  }
  .sp-1 {
    display: block;
  }
}

@media screen and (min-width: 992px) {
  .sp-2 {
    display: none;
  }
}

@media screen and (max-width: 991px) {
  .pc-2 {
    display: none;
  }
  .sp-2 {
    display: block;
  }
}

@media screen and (min-width: 1025px) {
  .sp-3 {
    display: none;
  }
}

@media screen and (max-width: 1024px) {
  .pc-3 {
    display: none;
  }
  .sp-3 {
    display: block;
  }
}

/*-- ふわっと出現 --*/
body {
  -webkit-animation-name: fadeInAnime;
          animation-name: fadeInAnime;
  -webkit-animation-duration: 1.2s;
          animation-duration: 1.2s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  opacity: 0;
}

@-webkit-keyframes fadeInAnime {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes fadeInAnime {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

/*----------------------*/
/* 要素が見えたら出現 */
/*----------------------*/
.elem {
  /* elem クラスを与えたら反映される */
  opacity: 0;
}

.isAnimate {
  opacity: 1;
  -webkit-animation-name: fadeDownAnime;
          animation-name: fadeDownAnime;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
}

@-webkit-keyframes fadeDownAnime {
  from {
    opacity: 0;
    -webkit-transform: translateY(-50px);
            transform: translateY(-50px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes fadeDownAnime {
  from {
    opacity: 0;
    -webkit-transform: translateY(-50px);
            transform: translateY(-50px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

/****************************/
/*       font-family        */
/****************************/
html .f1 {
  font-family: 'Zen Maru Gothic', sans-serif;
}

html .f2 {
  font-family: 'Zen Kaku Gothic New', sans-serif;
}

html .f3 {
  font-family: 'Zen Old Mincho', serif;
}

html .f4 {
  font-family: 'Josefin Sans', sans-serif;
}

html .f5 {
  font-family: 'Noto Sans JP', sans-serif;
}

/*---------------------------*/
/*---      レイアウト      ----*/
/*---------------------------*/
#link-news,
#link-business,
#link-question,
#link-opinion,
#link-contact {
  transform: translateY(-4rem);
}
#link-profile {
  transform: translateY(-9rem);
}

.center {
  text-align: center;
}

.pt-r-1 {
  padding-top: 6rem;
}

.pb-r-1 {
  padding-bottom: 6rem;
}

.mt-r-1 {
  margin-top: 6rem;
}

.mb-r-1 {
  margin-bottom: 6rem;
}

.pt-r-2 {
  padding-top: 3rem;
}

.pb-r-2 {
  padding-bottom: 3rem;
}

.mt-r-2 {
  margin-top: 3rem;
}

.mb-r-2 {
  margin-bottom: 3rem;
}
.wrapper {
  width: 84%;
  max-width: 1024px;
  margin-right: auto;
  margin-left: auto;
}
.flex {
  display: flex;
}

@media screen and (max-width: 560px) {
  html .pt-r-1 {
    padding-top: 4rem;
  }
  html .pb-r-1 {
    padding-bottom: 4rem;
  }
  html .mt-r-1 {
    margin-top: 4rem;
  }
  html .mb-r-1 {
    margin-bottom: 4rem;
  }
  html .pt-r-2 {
    padding-top: 2rem;
  }
  html .pb-r-2 {
    padding-bottom: 2rem;
  }
  html .mt-r-2 {
    margin-top: 2rem;
  }
  html .mb-r-2 {
    margin-bottom: 2rem;
  }
}

/*---------------------------*/
html a {
  text-decoration: none;
  color: #212529;
}

html a:hover {
  color: #212529;
}

html,
body {
  height: 100%;
}

body {
  font-family: zen-kaku-gothic-antique,sans-serif, josefin-sans,sans-serif, zen-old-mincho,sans-serif;
  color: #212529;
}

html h3 {
  font-family: josefin-sans,sans-serif;
  color: #90ACB7;
  font-size: 18px;
}

html h2 {
  font-family: zen-old-mincho,sans-serif;
  font-size: 32px;
}

html ul {
  margin-bottom: 0;
  padding-left: 0;
}

html p {
  margin-bottom: 0;
}
.site-bg-1 {
  width: 100vw;
  height: 100vh;
  position: fixed;
  background-color: #233E71;
  z-index: 999999999999999999;
}
.site-bg-2 {
  width: 100vw;
  height: 100vh;
  position: fixed;
  background-color: #fff;
  z-index: 999999999999999999;
}

/*-----------------------------*/
/*----------------------------
   お問い合わせプラグイン start
----------------------------*/
.wp_contact-area {
  width: 696px;
  margin-right: auto;
  margin-left: auto;
  position: relative;
}

.con-btn2 {
  text-align: center;
  width: 70%;
  height: 184px;
  border: 1px solid #333;
  border-radius: 60px;
  margin: 0 auto;
  position: relative;
  background-color: #fff;
  border-radius: 999px;
  font-size: 32px;
}

.con-btn2:hover {
  background-color: rgba(143, 143, 143, 0.199);
}

.wp-con-btn {
  text-align: center;
}

.wp-con-btn input,
.wp-con-btn a p {
  width: 280px;
  height: 64px;
  font-size: 16px;
  font-family: 'Zen Old Mincho', serif;
  color: #111;
  background-color: #fff;
  border: 1px solid #90ACB7;
  border-radius: 12px;
  letter-spacing: 0.04rem;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}

.wp-con-btn a p {
  padding-top: 21px;
  margin: 0 auto;
}

.wp-con-btn input:hover,
.wp-con-btn a p:hover {
  background-color: #90ACB7;
  color: #fff;
}

.con-area-thanks-area {
  padding: 6rem 0;
}

.con-area-thanks-area .text-box p:nth-of-type(1) {
  font-size: 40px;
  font-weight: bold;
  letter-spacing: 0.1rem;
  color: #5D5D5D;
}

.con-area-thanks-area .text-box p:nth-of-type(2) {
  font-size: 18px;
  font-weight: 400;
  letter-spacing: 0.1rem;
  line-height: 36px;
  color: #5D5D5D;
}

.wpcf7cp-cfm-submit-btn {
  text-align: center;
  width: 70%;
  height: 184px;
  border: 1px solid #333;
  border-radius: 60px;
  margin: 0 auto;
  position: relative;
  background-color: #fff;
  border-radius: 999px;
  font-size: 32px;
  z-index: 0;
}

.wpcf7cp-cfm-submit-btn:hover {
  background-color: rgba(143, 143, 143, 0.199);
}

.wpcf7cp-cfm-edit-btn {
  text-align: center;
  width: 70%;
  height: 184px;
  border: 1px solid #333;
  border-radius: 60px;
  margin: 0 auto;
  position: relative;
  background-color: #fff;
  border-radius: 999px;
  font-size: 32px;
  margin: 2% auto !important;
  z-index: 0;
}

.wpcf7cp-cfm-edit-btn:hover {
  background-color: rgba(143, 143, 143, 0.199);
}

.wpcf7cp-btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.wpcf7-form-control-wrap {
  width: 100%;
}

.con-set {
  width: 100%;
  margin: 0 auto !important;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.con-set2 {
  text-align: center;
}

.con-list,
.con-list li {
  width: 100%;
  padding: 0 !important;
}

.con-list li {
  margin-bottom: 4rem;
}

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

.con-list p {
  width: 100%;
  white-space: nowrap;
}

.con {
  color: #707F89;
}

.red {
  color: #BC5A5A;
}

input[type="text"],
input[type="email"],
textarea {
  padding: 11px 12px;
  width: 100%;
  border-radius: 4px;
  border: 1px solid #CDD6DD;
}

.con-list label {
  width: 100%;
}

.con-area {
  width: 100%;
  text-align: center;
}

.con {
  text-align: left;
  white-space: nowrap;
  font-size: 16px;
  letter-spacing: .05rem;
  line-height: 36px;
  margin-bottom: 0;
  display: inline-block;
}

.con,
.con-name-article p {
  font-family: 'Zen Old Mincho', serif !important;
  font-weight: 400;
}

.con-name-article p {
  color: #707F89;
}

.con-name-aside p {
  color: #393939;
}

.btn-type-B {
  width: 196px;
  height: 40px;
  background-color: #FCE274;
  border: 0;
  border-radius: 12px;
}

.mw_wp_form .error {
  margin-top: 6px;
}

/*--- - - 確認ページ - - ---*/
/*  ※ 確認ページのbodyのクラスを先頭にcssをあてていく  */
.page-template-page-contact-confirmation .con-list {
  background-color: #F8F8F8;
  padding: 4rem 3rem !important;
}

.page-template-page-contact-confirmation .con-list span {
  display: none;
}

/*--- - - レスポンシブ - - ---*/
@media screen and (max-width: 767px) {
  .con-name-article {
    margin-bottom: 12px;
  }
  html .wp_contact-area {
    width: 460px;
  }
}

@media screen and (max-width: 560px) {
  html .wp_contact-area {
    width: 100%;
  }
  .con {
    width: auto;
    white-space: normal;
    margin-right: 8%;
    margin-left: 8%;
  }
  .con-name-article,
  .con-name-aside {
    padding: 0 !important;
  }
  .con-list li {
    width: auto;
    margin-right: 8%;
    margin-left: 8%;
    margin-bottom: 2.4rem;
  }
}

@media screen and (max-width: 375px) {
  .con-area p,
  .wp_contact-area p {
    font-size: 14px;
    line-height: 24px;
  }
  .wp_contact-area button,
  .wp_contact-area input,
  .wp_contact-area optgroup,
  .wp_contact-area select,
  .wp_contact-area textarea {
    font-size: 14px;
    line-height: 24px;
  }
}
.con-set-2 span,
.con-set-2 p {
  display: inline-block;
}
.con-set-2 p{
  margin-top: 2rem;
}
html .con-set-2 .con-name-article p {
  margin-top: 0;
}
html .con-set-2 span {
  margin-right: 1rem;
}

/*----------------------------
--  お問い合わせプラグイン end --
----------------------------*/

/*----------------------------
--  header.php
----------------------------*/
header {
  width: 100%;
  height: 106px;
  position: fixed;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 4rem;
  background-color: #fff;
  z-index: 99999;
}
header h1 {
  font-size: 24px;
  color: #233E71;
  line-height: 32px;
}
header h1 span {
  font-size: 16px;
}
header nav {
  width: 760px;
}
header nav ul {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
header nav ul li a {
  font-size: 16px;
  color: #233E71;
}

/*----------------------------
--  footer.php
----------------------------*/
footer {
  width: 100%;
}
footer p {
  font-size: 11px;
  padding: 3rem 0;
  background-color: #233E71;
  color: #fff;
  text-align: center;
}

/*----------------------------
--  トップ - トップビュー
----------------------------*/
#top-view {
  height: 100vh;
  width: 100%;
  padding-top: 106px;
  position: relative;
}
#top-view .catchcopy-area {
  width: fit-content;
  position: absolute;
  left: 0;
  top: 55%;
  transform: translateY(-50%);
}
#top-view .catchcopy-area h2 {
  font-size: 20px;
  line-height: 48px;
  letter-spacing: 0.1rem;
  display: inline-block;
  background-color: #233E71;
  color: #fff;
  padding: 6rem 2rem;
}
#top-view .catchcopy-area h2 span {
  font-size: 24px;
}
#top-view .bg-1 {
  width: 75%;
  height: 100%;
  padding-top: 106px;
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: -1;
}
#top-view .bg-1-2 {
  width: 100%;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: left;
}

/*--  ニュース          */
h3 {
  font-size: 28px !important;
  line-height: 24px;
  color: #233E71 !important;
  font-weight: 600;
  position: relative;
  display: inline-block;
}
h3 span {
  font-size: 14px !important;
}
h3::after {
  content: '';
  width: 186px;
  height: 1.2px;
  background-color: #233E71;
  position: absolute;
  top: 50%;
  right: -3rem;
  transform: translate(100%,-50%);
}
.news-area h4 {
  font-size: 22px;
  color: #233E71;
}
.news-area .flex {
  justify-content: space-between;
  align-items: center;
}
.news-area .flex img {
  width: 48%;
  height: auto;
}
.movie-area article {
  width: 60%;
}
.movie-area article iframe {
  width: 100%;
  height: 24rem;
}
.movie-area aside {
  width: 40%;
  position: relative;
}
.movie-area aside .QR-area {
  width: 270px;
  text-align: center;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
}
.movie-area aside .QR-area img {
  width: 120px;
  height: auto;
}
.movie-area aside .QR-area p {
  font-family: 'Zen Old Mincho', serif;
  font-size: 16px;
  line-height: 24px;
  margin-bottom: 1rem;
}
.movie-area aside .QR-area p:last-of-type {
  margin-bottom: 0;
}
.movie-area aside .QR-area p.text-2 {
  text-align: left;
	margin-top: 1rem;
}
.text-99:hover {
	opacity: 0.5;
}

/*--  プロフィール          */
.profile-zoon {
  height: 56rem;
  width: 100%;
  position: relative;
}
.profile-zoon .profile-area {
  background-color: #ffffffeb;
  position: absolute;
  width: 60%;
  height: auto;
  position: absolute;
  bottom: 6rem;
  right: 0rem;
  padding: 3rem 0 3rem 10rem;
  z-index: 2;
}
.profile-zoon .profile-area p {
  font-size: 16px;
  color: #233E71;
  line-height: 32px;
}
.profile-zoon .bg-1 {
  background-color: #233E71;
  height: 100%;
  width: 86%;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 0;
}
.profile-zoon .bg-1 p {
  font-size: 24px;
  color: #fff;
  padding: 4.2rem 0 0 8rem;
}
.profile-zoon .bg-2 {
  background-image: url(../images/images-6.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 45%;
  height: 42rem;
  z-index: 1;
  position: absolute;
  bottom: 4rem;
  left: 0rem;
}
.performance-area {
  display: flex;
  border: 2px solid #233E71;
}
.performance-area .performance {
  width: 40%;
}
.performance-area .text-2 {
  width: 60%;
}
.performance-area .performance {
  background-color: #fff;
  position: relative;
}
.performance-area .text-2 {
  color: #fff;
  font-size: 16px;
  line-height: 32px;
  background-color: #233E71;
  padding: 1rem 1rem 1rem 3rem;
  letter-spacing: .2rem;
}
.performance-area .performance .text-area {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}
.performance-area .performance .text-area img {
  width: 36px;
  height: auto;
  margin-bottom: 1rem;
}
.performance-area .performance .text-area p {
  font-size: 24px;
  letter-spacing: .1rem;
  color: #233E71;
  white-space: nowrap;
}
.performance-area .performance .triangle {
  /* border: 96px solid #233E71;
  border-left-color: transparent;
  border-bottom-color: transparent; */
  height: 0;
  width: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.movie-area-2 p {
  text-align: center;
  font-size: 24px;
  letter-spacing: .1rem;
  color: #233E71;
  margin-bottom: 1.2rem;
}
.movie-area-2 .movie {
  width: 48%;
  margin-right: auto;
  margin-left: auto;
}
.movie-area-2 .movie video {
  width: 100%;
border: 1px solid #666;
}
#volunteer-zoon {
  background-color: #F5F3F0;
  text-align: center;
}
#volunteer-zoon h4 {
  font-size: 24px;
  color: #233E71;
  padding: 0 5rem 1rem 5rem;
  border-bottom: 2px dotted #233E71;
  display: inline-block;
}
#volunteer-zoon img {
  width: 84%;
  max-width: 540px;
  height: auto;
}
#volunteer-zoon .text-2 {
  font-size: 16px;
  line-height: 32px;
  color: #233E71;
}
#volunteer-zoon .text-area {
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
}
.service-area ul li {
  display: flex;
  background-color: #233E71;
  padding: 2rem 0;
  margin-bottom: 1rem;
}
.service-area ul li:last-of-type {
  margin-bottom: 0;
}
.service-area ul li article {
  width: 30%;
  background-color: #fff;
}
.service-area ul li aside {
  width: 70%;
}
.service-area ul li article,
.service-area ul li aside {
  position: relative;
  height: 96px;
}
.service-area ul li article p {
  color: #233E71;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  line-height: 32px;
  font-size: 16px;
  width: max-content;
  font-weight: bold;
}
.service-area ul li aside p {
  color: #fff;
  position: absolute;
  top: 50%;
  left: 2rem;
  transform: translateY(-50%);
  line-height: 32px;
  font-size: 16px;
}
/*====================================================================
.s_01 .accordion_one
====================================================================*/
.section.s_01 {
  background-color: #F5F3F0;
  border-radius: 16px;
}
.accordion_one .text-1,
.accordion_one .text-2 {
  padding-left: 6.4rem;
  position: relative;
  font-size: 16px;
  line-height: 24px;
  color: #233E71;
}
.accordion_one .text-2 {
  padding-top: 3rem;
  padding-right: 4%;
}
.accordion_one .text-1::after {
  content: 'Q';
  background-color: #233E71;
  color: #fff;
  font-size: 20px;
  padding: 6px 10px;
  border-radius: 50%;
  position: absolute;
  left: 2rem;
  top: 50%;
  transform: translateY(-50%);
  font-family: 'Zen Old Mincho', serif;
}
.accordion_one .text-2::after {
  content: 'A';
  color: #233E71;
  background-color: #fff;
  font-size: 20px;
  padding: 6px 10px;
  border-radius: 50%;
  position: absolute;
  left: 2rem;
  top: 3.8rem;
  transform: translateY(-50%);
  font-family: 'Zen Old Mincho', serif;
}
.s_01 .accordion_one {
  max-width: 1024px;
  margin: 0 auto;
  padding: 2rem 0;
}
.s_01 .accordion_one .accordion_header {
  color: #233E71;
  position: relative;
  z-index: +1;
  cursor: pointer;
  transition-duration: 0.2s;
}
.s_01 .accordion_one .accordion_header:hover {
  opacity: .8;
}
.s_01 .accordion_one .accordion_one {
  border-radius: 16px;
}
.s_01 .accordion_one .accordion_header .i_box {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 50%;
  right: 5%;
  width: 40px;
  height: 40px;
  margin-top: -20px;
  box-sizing: border-box;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transform-origin: center center;
  transition-duration: 0.2s;
}
.s_01 .accordion_one .accordion_header .i_box .one_i {
  display: block;
  width: 18px;
  height: 18px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transform-origin: center center;
  transition-duration: 0.2s;
  position: relative;
}
.s_01 .accordion_one .accordion_header.open .i_box {
  -webkit-transform: rotate(-360deg);
  transform: rotate(-360deg);
}
.s_01 .accordion_one .accordion_header .i_box .one_i:before, .s_01 .accordion_one .accordion_header .i_box .one_i:after {
  display: flex;
  content: '';
  background-color: #707070;
  border-radius: 10px;
  width: 18px;
  height: 4px;
  position: absolute;
  top: 7px;
  left: 0;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  transform-origin: center center;
}
.s_01 .accordion_one .accordion_header .i_box .one_i:before {
  width: 4px;
  height: 18px;
  top: 0;
  left: 7px;
}
.s_01 .accordion_one .accordion_header.open .i_box .one_i:before {
  content: none;
}
.s_01 .accordion_one .accordion_header.open .i_box .one_i:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.s_01 .accordion_one .accordion_inner {
  box-sizing: border-box;
}
.s_01 .accordion_one .accordion_inner p.txt_a_ac {
  margin: 0;
}
.accordion_inner {
  display: none;/* アコーディオンが閉じた状態になるようしている */
}

.review-area {
  padding: 1rem 2rem;
}
.review-area-2 {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
.review-area-2 article {
  width: 20%;
  text-align: center;
  padding: 1rem 0;
}
.review-area-2 aside {
  width: 70%;
}
.review-area .review-area-2:nth-of-type(even) article {
  order: 2;
}
.review-area .review-area-2:nth-of-type(even) aside {
  order: 1;
}
.review-area .review-area-2:nth-of-type(even) aside::after {
  transform: rotate(-45deg) translateY(-50%);
  top: 50%;
  left: auto;
  right: -25px;
}
.review-area-2 article img {
  width: 56%;
}
.review-area-2 article p {
  font-size: 14px;
  letter-spacing: .1rem;
  color: #233E71;
  white-space: nowrap;
}
.review-area-2 aside .text-1 {
  font-size: 24px;
  line-height: 40px;
  color: #fff;
}
.review-area-2 aside .text-2 {
  color: #fff;
  font-size: 13px;
  line-height: 22px;
  letter-spacing: .1rem;
}
.review-area-2 aside {
  background-color: #233E71;
  border-radius: 32px;
  padding: 2rem;
  position: relative;
}
.review-area-2 aside::after {
  content: '';
  width: 0;
  height: 0;
  border-left: solid 30px transparent;
  border-right: solid 0px transparent;
  border-bottom: solid 30px #233E71;
  transform: rotate(135deg) translateY(50%);
  position: absolute;
  top: 50%;
  left: 0px;
}
.review-area .review-area-2 {
  margin-bottom: 3.2rem;
  align-items: center;
}
.review-area .review-area-2:last-child {
  margin-bottom: 0;
}
/*_______________________________________________________________

Contact.php   テンプレート  css
________________________________________________________________*/
/*----------------------------
   お問い合わせプラグイン start
----------------------------*/
.wp_contact-area {
  width: 696px;
  margin-right: auto;
  margin-left: auto;
  position: relative;
}
.con-btn2 {
  text-align: center;
  width: 70%;
  height: 184px;
  border: 1px solid #333;
  border-radius: 60px;
  margin: 0 auto;
  position: relative;
  background-color: #fff;
  border-radius: 999px;
  font-size: 32px;
}
.con-btn2:hover {
  background-color: rgba(143, 143, 143, 0.199);
}
.wp-con-btn {
  text-align: center;
}
.wp-con-btn input {
  width: 280px;
  height: 64px;
  font-size: 16px;
  font-weight: bold;
  font-family: 'Zen Kaku Gothic New', sans-serif;
  color: #fff;
  background-color: #233E71;
  border: 1px solid #233E71;
  border-radius: 999px;
  letter-spacing: 0.04rem;
  transition: all 0.4s;
}
.wp-con-btn input:hover {
  transition: all 0.4s;
  background-color: #fff;
  color: #233E71;
}
.wpcf7cp-cfm-submit-btn {
  text-align: center;
  width: 70%;
  height: 184px;
  border: 1px solid #333;
  border-radius: 60px;
  margin: 0 auto;
  position: relative;
  background-color: #fff;
  border-radius: 999px;
  font-size: 32px;
  z-index: 0;
}
.wpcf7cp-cfm-submit-btn:hover {
  background-color: rgba(143, 143, 143, 0.199);
}
.wpcf7cp-cfm-edit-btn {
  text-align: center;
  width: 70%;
  height: 184px;
  border: 1px solid #333;
  border-radius: 60px;
  margin: 0 auto;
  position: relative;
  background-color: #fff;
  border-radius: 999px;
  font-size: 32px;
  margin:2% auto !important;
  z-index: 0;
}
.wpcf7cp-cfm-edit-btn:hover {
  background-color: rgba(143, 143, 143, 0.199);
}
.wpcf7cp-btns {
  display: flex;
  flex-direction: column;
}
.wpcf7-form-control-wrap {
  width: 100%;
}
.con-set {
  width: 100%;
  margin: 0 auto !important;
  align-items: center;
}
.con-set2 {
  text-align: center;
}
.con-list,
.con-list li {
  width: 100%;
  padding: 0 !important;
}
.con-list li {
  margin-bottom: 4rem;
}
.con-list li:last-of-type {
  margin-bottom: 0;
}
.con-list p {
  width: 100%;
  white-space: nowrap;
}
.con {
  color: #707F89;
}
.red {
  color:#BC5A5A;
}
input[type="text"],
input[type="email"],
textarea {
  padding: 11px 12px;
  width: 100%;
  border-radius: 4px;
  border: 1px solid #CDD6DD;
}
.con-list label {
  width: 100%;
}
.con-area {
  width: 100%;
  text-align: center;
}
.con {
  text-align: left;
  white-space: nowrap;
  font-size: 16px;
  letter-spacing: .05rem;
  line-height: 36px;
  margin-bottom: 0;
  display: inline-block;
}

.con-name-article p,
.mwform-checkbox-field-text,
.mwform-radio-field-text {
  color: #233E71;
  font-family: 'Zen Old Mincho', serif !important;
  font-weight: 400;
}
.con-list li:nth-of-type(4) .con-name-aside span:first-of-type label {
  margin-bottom: 0.6rem;
}
.con-name-aside p {
  color: #393939;
}
.con-name-aside select {
  color: #233E71;
  font-family: 'Zen Old Mincho', serif !important;
  font-weight: 400;
  padding: 0px 32px 0 4px;
}
.btn-type-B {
  width: 196px;
  height: 40px;
  background-color: #FCE274;
  border: 0;
  border-radius: 12px;
}
.mw_wp_form .error {
  margin-top: 6px;
}
.contact-thanks-text {
  font-size: 24px;
  text-align: center;
}
html .mw_wp_form .horizontal-item + .horizontal-item {
  margin-left: 0;
}
.text-99 {
	text-align:center;
	font-size:14px;
}

/*--- - - レスポンシブ - - ---*/
@media screen and (max-width:767px) {
  .con-name-article {
  margin-bottom: 12px;
  }
  html .wp_contact-area {
    width: 460px;
  }
}
@media screen and (max-width:560px) {
  html .wp_contact-area {
    width: 100%;
  }
  .con {
    width: auto;
    white-space: normal;
    margin-right: 8%;
    margin-left: 8%;
  }
  .con-name-article,
  .con-name-aside {
    padding: 0 !important;
  }
  .con-list li {
    width: auto;
    margin-right: 8%;
    margin-left: 8%;
    margin-bottom: 2.4rem;
  }

}
@media screen and (max-width:375px) {
  .con-area p,
  .wp_contact-area p {
    font-size: 14px;
    line-height: 24px;
  }
  .wp_contact-area button,
  .wp_contact-area input,
  .wp_contact-area optgroup,
  .wp_contact-area select,
  .wp_contact-area textarea {
    font-size: 14px;
    line-height: 24px;
  }
}

/*----------------------------
--  お問い合わせプラグイン end --
----------------------------*/
/*_______________________________________________________________

    レスポンシブ　
________________________________________________________________*/
@media screen and (min-width:1920px) {
  #top-view .catchcopy-area h2 {
    font-size: 32px;
    line-height: 64px;
  }
  header nav ul li a {
    font-size: 20px;
  }
  header nav {
    width: 1024px;
  }
  .profile-zoon .bg-1 p {
    font-size: 36px;
  }

  }

@media screen and (max-width:1200px) {
  #top-view .bg-1-2 {
    background-position: right;
  }

  }
  @media screen and (max-width:1024px) {
/*------------------*/
/*　ハンバーガーボタン　*/
.hamburger {
  display: block;
  position: absolute;
  z-index: 3;
  right: 4%;
  top: 50%;
  transform: translateY(-50%);
  width: 42px;
  height: 42px;
  cursor: pointer;
  text-align: center;
}
.hamburger span {
  display : block;
  position: absolute;
  width   : 30px;
  height  : 2px ;
  left    : 6px;
  background : #555;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition   : 0.3s ease-in-out;
  transition        : 0.3s ease-in-out;
}
.hamburger span:nth-child(1) {
  top: 10px;
}
.hamburger span:nth-child(2) {
  top: 20px;
}
.hamburger span:nth-child(3) {
  top: 30px;
}

/* ナビ開いてる時のボタン */
.hamburger.active span:nth-child(1) {
  top : 16px;
  left: 6px;
  background :#fff;
  -webkit-transform: rotate(-45deg);
  -moz-transform   : rotate(-45deg);
  transform        : rotate(-45deg);
}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
  top: 16px;
  background :#fff;
  -webkit-transform: rotate(45deg);
  -moz-transform   : rotate(45deg);
  transform        : rotate(45deg);
}

nav.globalMenuSp {
  position: fixed;
  z-index: 2;
  top: 0;
  right: 0;
  color: #fff;
  height: 100vh;
  background-color: #233E71f0;
  text-align: center;
  max-width: 460px;
  width: 70%;
  /* opacity: 0; */
  transform: translateX(100%);
  opacity: 100;
  transition: all 0.4s;
}

nav.globalMenuSp ul {
  display: flex;
  flex-direction: column;
  margin: 6rem auto 0 auto;
  padding: 0;
  width: 64%;
  max-width: 460px;
}

nav.globalMenuSp ul li {
  list-style-type: none;
  padding: 0;
  width: 100%;
  transition: .4s all;
  margin-bottom: 2rem;
  text-align: left;
}
nav.globalMenuSp ul li:last-child {
  padding-bottom: 0;
}

nav.globalMenuSp ul li a {
  display: block;
  color: #fff;
  padding: 1em 0;
  text-decoration :none;
}

/* このクラスを、jQueryで付与・削除する */
nav.globalMenuSp.active {
  opacity: 100;
  transition: all 0.4s;
  transform: translateX(0);
}

.globalMenuSp {
  pointer-events: none;
}
nav.globalMenuSp.active {
  pointer-events: auto;
}

header,
.sp-header-logo-area {
  height: 72px;
  padding: 0 4%;
}
#top-view,
#top-view .bg-1 {
  padding-top: 72px;
}
#top-view .bg-1 {
  width: 100%;
}
#top-view {
  height: 88vh;
  margin-bottom: 16rem;
}
#top-view .catchcopy-area {
  top: 100%;
}
#top-view .catchcopy-area h2 {
  padding: 3rem 2rem;
}
.sp-header-logo-area h1 {
  color: #fff;
  text-align: left;
}
header nav ul li a {
  font-size: 20px;
}
#link-news {
  transform: translateY(-8rem);
}

/*-- 1024px end --*/
  }

  @media screen and (max-width:991px) {
    .service-area ul li {
      flex-direction: column;
    }
    .service-area ul li article {
      max-width: 400px;
      width: 60%;
      height: 64px;
    }
    .service-area ul li aside {
      height: fit-content;
      width: 100%;
    }
    .service-area ul li article p {
      left: 0;
      transform: translate(0,-50%);
      padding-left: 2rem;
      font-size: 18px;
    }
    .service-area ul li aside p {
      position: initial;
      transform: translateY(0);
      padding-left: 4rem;
      padding-top: 1.2rem;
    }
    .profile-zoon {
      background-color: #233E71;
      padding: 4rem 0;
      height: auto;
    }
    .profile-zoon .bg-2,
    .profile-zoon .profile-area {
      position: initial;
    } 
    .pro-name {
      font-size: 24px;
      color: #fff;
      text-align: center;
      margin-bottom: 3rem;
    }
    .profile-zoon .bg-2 {
      width: 64%;
      margin-right:auto;
      margin-left:auto;
      margin-bottom: 3rem;
    }
    .profile-zoon .profile-area {
      padding: 2rem;
      margin-right: auto;
      margin-left: auto;
      width: 80%;
    }
    .performance-area .performance .text-area p {
      font-size: 20px;
    }
    .performance-area .performance .text-area img {
      width: 32px;
      margin-bottom: 12px;
    }
    .performance-area .text-2 {
      font-size: 14px;
      padding: 1rem 1rem 1rem 2rem;
      line-height: 24px;
    }
    .movie-area.flex {
      flex-direction: column;
    }
    .movie-area article,
    .movie-area aside {
      width: 100%;
    }
    .movie-area article {
      margin-bottom: 3rem;
    }
    html .movie-area aside .QR-area {
      position: initial;
      transform: none;
      margin-left: auto;
      margin-right: auto;
    }
    .movie-area article .movie {
      width: 80%;
      max-width: 560px;
      margin-right: auto;
      margin-left: auto;
      padding-top: 50%;
    }
    .accordion_one .text-1 {
      padding-right: 6rem;
    }
    .movie-area article iframe {
      width: 560px;
      max-width: 80%;
      height: 20rem;
    }
        .movie-area article {
          text-align: center;
        }

    /*-- 991px end --*/
  }
  @media screen and (max-width:768px) {
    #top-view {
      height: 64vh;
    }
    #top-view .catchcopy-area h2 {
      font-size: 16px;
      padding: 1rem 2rem;
    }
    .review-area-2 aside .text-1 {
      font-size: 20px;
      line-height: 32px;
      margin-bottom: 12px !important;
    }
	  .contact-thanks-text {
		  font-size: 18px;
	  }

    /*-- 768px end --*/
  }
  @media screen and (max-width:560px) {
    .review-area-2 aside .text-1 {
      font-size: 16px;
      line-height: 24px;
    }
    .review-area-2 aside .text-2 {
      font-size: 12px;
      line-height: 18px;
    }
    html .review-area {
      padding: 0;
    }
    .review-area-2 article p {
      font-size: 12px;
    }
    .review-area-2 aside {
      padding: 1rem 1.6rem;
    }
    .service-area ul li article {
      width: 80%;
    }
    .service-area ul li article p {
      font-size: 16px;
    }
    .service-area ul li aside p {
      font-size: 14px;
      padding: 1rem 1.6rem 1rem 3rem !important;
    }
    .performance-area .performance .text-area p {
      font-size: 14px;
    }
    .performance-area .text-2 {
      font-size: 12px;
      padding: 0.4rem 0.4rem 0.4rem 1.6rem;
    }
    .performance-area .performance {
      width: 35%;
    }
    .performance-area .text-2 {
      width: 65%;
    }
    .performance-area .performance .text-area img {
      width: 26px;
    }
    #top-view {
      height: 48vh;
    }
    #top-view .catchcopy-area h2 {
      font-size: 14px;
      padding: 0.4rem 1.2rem;
      line-height: 36px;
    }
    .news-area .flex {
      flex-direction: column;
    }
    .news-area .flex img {
      width: 80%;
      max-width: 320px;
    }
    .news-area h4 {
      font-size: 18px;
      height: 32px;
    }
    header h1 {
      font-size: 20px;
      line-height: 24px;
      padding-top: 6px;
    }
    header h1 span {
      font-size: 12px;
    }
    .profile-zoon .bg-2 {
      width: 80%;
      height: 32rem;
    }
    .profile-zoon .profile-area {
      width: 84%;
    }
    .movie-area-2 .movie {
      width: 64%;
    }
    .con-list p {
      display: flex;
      flex-direction: column;
    }
    .con-list p label {
      padding-bottom: 8px;
    }
    .con-list li:nth-of-type(4) .con-name-aside span label {
      padding-left: 12px;
    }
    #volunteer-zoon h4 {
      padding: 0 1rem 1rem 1rem;
    }
    .movie-area article iframe {
      width: 560px;
    max-width: 64%;
    height: 14rem;
    }
	  #top-view .catchcopy-area {
		  transform: translateY(-20%);
	  }

    /*-- 560px end --*/
  }
  @media screen and (max-width:460px) {
    header nav ul li a {
      font-size: 16px;
    }
    nav.globalMenuSp ul li {
      margin-bottom: 1.6rem;
    }
    .news-area .flex img {
      width: 100%;
    }
	  .contact-thanks-text {
		  font-size: 14px;
	  }
	  
    /*-- 460px end --*/
  }
  @media screen and (max-width:414px) {
    #top-view .catchcopy-area h2 {
      width: 80vw;
      font-size: 12px;
      padding: 0.4rem 1.2rem;
      line-height: 24px;
    }
    #top-view {
      height: 40vh;
      margin-bottom: 14rem;
    }
    html h3 {
      font-size: 24px !important;
      line-height: 20px;
    }
    h3 span {
      font-size: 12px;
    }
    .news-area h4 {
      font-size: 16px;
    }
    .profile-zoon .bg-2 {
      height: 16rem;
    }
    .profile-zoon .profile-area {
      padding: 1rem 1.2rem;
    }
    .profile-zoon .profile-area p {
      font-size: 12px;
      line-height: 24px;
    }
    .performance-area {
      flex-direction: column;
    }
    .performance-area .performance {
      width: 100%;
      height: 80px;
    }
    .performance-area .text-2 {
      width: 100%;
    }
    .performance-area .performance .text-area img {
      width: 20px;
      margin-bottom: 8px;
    }
    .movie-area-2 .movie {
      width: 84%;
    }
    #volunteer-zoon .text-2 {
      width: 84%;
      margin-right: auto;
      margin-left: auto;
      font-size: 14px;
    }
    .service-area ul li article p {
      font-size: 14px;
    }
    .accordion_one .text-1, .accordion_one .text-2 {
      padding-left: 5.6rem;
      font-size: 14px;
    }
    .s_01 .accordion_one {
      padding: 1rem 0;
    }
    .review-area-2 aside .text-1 {
      font-size: 14px;
    }
    .review-area-2 {
      flex-direction: column;
    }
    .review-area .review-area-2:nth-of-type(even) article,
    .review-area .review-area-2:nth-of-type(even) aside {
      order: unset;
    }
    .review-area-2 article {
      width: 40%;
    }
    .review-area-2 aside {
      width: 100%;
    }
    .review-area-2 aside::after {
      transform: rotate(225deg) translateY(50%);
      position: absolute;
      top: 0;
      left: 24%;
    }
    .review-area .review-area-2:nth-of-type(even) aside::after {
      transform: rotate(-135deg) translateY(50%);
      top: 0;
      left: auto;
      right: 28%;
    }
    .accordion_one .text-1 {
      padding-right: 4rem;
    }
    .movie-area article iframe {
          max-width: 84%;
    height: 12rem;
    }

    /*-- 414px end --*/
  }
  @media screen and (max-width:390px) {

    /*-- 390px end --*/
  }
  @media screen and (max-width:375px) {
    h3::after {
      width: 140%;
    }
    .service-area ul li article {
      width: 90%;
    }
    .pro-name,
    .movie-area-2 p,
    #volunteer-zoon h4 {
      font-size: 20px;
    }

    /*-- 375px end --*/
  }
  @media screen and (max-width:320px) {
    .service-area ul li article p,
    .service-area ul li aside p {
      font-size: 12px;
    }
    /*-- 320px end --*/
  }