@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
.article p, .demo .entry-content p, .article dl, .article ul, .article ol, .article blockquote, .article pre, .article table, .article .author-box, .article .blogcard-wrap, .article .login-user-only, .article .information-box, .article .question-box, .article .alert-box, .article .information, .article .question, .article .alert, .article .memo-box, .article .comment-box, .article .common-icon-box, .article .blank-box, .article .button-block, .article .micro-bottom, .article .caption-box, .article .tab-caption-box, .article .label-box, .article .toggle-wrap, .article .wp-block-image, .booklink-box, .article .kaerebalink-box, .article .tomarebalink-box, .article .product-item-box, .article .speech-wrap, .article .toc, .article .column-wrap, .article .new-entry-cards, .article .popular-entry-cards, .article .navi-entry-cards, .article .box-menus, .article .ranking-item, .article .wp-block-categories, .article .wp-block-archives, .article .wp-block-archives-dropdown, .article .wp-block-calendar, .article .rss-entry-cards, .article .ad-area, .article .wp-block-gallery, .article .wp-block-audio, .article .wp-block-cover, .article .wp-block-file, .article .wp-block-media-text, .article .wp-block-video, .article .wp-block-buttons, .article .wp-block-columns, .article .wp-block-separator, .article .components-placeholder, .article .wp-block-search, .article .wp-block-social-links, .article .timeline-box, .article .blogcard-type, .article .btn-wrap, .article .btn-wrap a, .article .block-box, .article .wp-block-embed, .article .wp-block-group, .article .wp-block-table, .article .scrollable-table, .article .wp-block-separator, [data-type="core/freeform"]
{
    margin-bottom: 0;
}
img {
	display: block;
}
.article h2, .article h3, .article h4, .article h5, .article h6 {
	margin: 0;
	padding: 0;
}
html {
	font-size: 10px;
	scroll-behavior: smooth;
}
body{
	width : 100% ;
}
p {
	color: #333232;
   line-height: 2.4rem;
   margin-bottom: 20px !important;
}
figure.wp-block-table p {
    margin-bottom: 0 !important;
}
a {
	text-decoration: none;
	color: #333232;
}
a:hover {
	color: #4A79C6;
}
.txt-white {
	color: white !important;
}
.txt-big {
    font-size: 52px;
}
.txt-accent {
	font-size: 40px;
   color: #84b3ca;
}
#container {
	overflow:hidden;
}
.wrap {
   margin: 0 auto !important;
}
.entry-content, .type-page {
    margin-bottom: 0 !important;
}
.blank-box {
	border: none !important;
}
.metaslider, .flexslider {
	margin: 0 !important;
}
.b-margin {
	margin-bottom: 5rem !important;
}

.t-margin {
	margin-top: 2rem !important;
}

.n-margin {
	margin: 0 !important;
}
.mobile, .mobile-781 {
	display: none !important;
}
.shadow-b {
	text-shadow: 0 0 5px #000;
}
.no-display, .no-display-1023, .br-480 {
	display: none;
}
.sample_button {
  opacity: 0.5;
}
.mb-30 {
	margin-bottom: 30px !important;
}
.mb-60 {
	margin-bottom: 60px !important;
}
.mb-80 {
	margin-bottom: 80px !important;
}
.no-padding {
	padding: 0 !important;
}
@media screen and (max-width: 781px){
.flex-781 {
align-items: center !important;
	}
	.flex-781 img {
		margin: 0 auto;
	}}
/************************************************************************* ヘッダー */
.header-container {
	background-color: transparent;/*ヘッダー背景透明化*/
	padding-top: 4rem;
}


/************************************************************************* フッター */
#footer {
	margin-top: 0;
}
.footer .textwidget {
    display: flex;
    justify-content: space-around;
    font-size: 15px;
    padding-top: 10px;
}
.footer {
	background-color: #DCE4EF;
}
.footer-bottom {
    display: block !important;
}
.footer-widgets.cf {
    height: 60px;
}
.footer-bottom-logo img {
    height: 20px;
    width: auto;
}

.labo-btn{
	text-align: center;
	margin-bottom: 0;
    background: #F4F4F4;
}

.labo-btn .wp-block-buttons {
	display: block !important;
}

.labo-btn .wp-block-buttons>.wp-block-button:last-child {
    margin-bottom: 3rem;
}

#content-bottom {
	margin-bottom: -30px;
}

#content-bottom-in {
	width: 100%;
}

#content-bottom-in a {
	font-size: 1.8rem !important;
}

#content-bottom #custom_html-5 {
	margin: 0;
}

/*************************************************************************** navi */
.navi {
	background-color: transparent;/*navi背景透明化*/
}
.navi-in .has-icon {
	right: 12px;
    top: -17px;
}
.header-container-in.hlt-top-menu .logo-header img {
	max-height: 100%;
	height: auto;
	max-width: 210px;
	vertical-align: middle;
	margin: 0px 0;
}

.navi {
	background: none;
}

.navi-in > ul li {
	width: auto;
}

.navi-in a {
	font-size: 1.4rem;
	position: relative;
	padding: 0 10px;
	margin: 0 20px;
	display: block;
	text-decoration: none;
}

.navi-in a:hover {
	background: none;
	color: #4772B5; 
}

.navi-in a:before {
	position: absolute;
	left: 0;
	bottom: 6px;
	content: "";
	display: block;
	width: 100%;
	height: 2px;
	background: #4772B5; /* マウスON時の下線色 */
	transform: scale(0, 1);
	transition: 0.4s;
}

.navi-in a:hover:before {
	transform: scale(1);
}

.search-menu-button {
	display: block;
}


/*************************************************************************
************************************************************************** 共通コンテンツ */
.page .article-header { /*ページタイトル非表示*/
	display: none;
}
.max-wrap, .toppage-wrap  {
	width: 100%;
	padding: 0;
}

#content {/*上部余白0*/
	margin: 0;
}

.cf {/*上部余白0*/
	margin: 0;
}

#content-in {/*横幅full*/
	width: 100%;
}

#main {
	padding: 0;
	border: 0;
}

.has-large-font-size {/*カバーフォント*/
	font-size: clamp(18px, 1vw, 21px) !important;
	margin-bottom: 2rem !important;
}

.wp-block-cover {/*カバー余白,マージン*/
	padding: 2rem !important;
	margin-bottom: 4rem !important;
}

figure.wp-block-table table {
    width: 100% !important;
}
/************************************************************************** コンテンツ幅 */
.wrapper, .single .content {
	width: 100%;
	max-width: 1110px;
	margin: 0 auto !important;
	padding: 0;
}
.privacy-policy .content, .page-id-20 .content {
    width: 92%;
    margin: 0 auto !important;
}

/**************************************************************************** 見出し */
.article h1 {
	margin-bottom: 2rem;
}

.article h2 {
	font-size: 2.6rem;
	letter-spacing: 0.2rem;
	background-color: transparent !important;
	color: #203864;
	border-bottom: 1px solid #203864;
	margin-bottom: 1rem;
}

.home .article h2 {
	font-family: 'Archivo Black', sans-serif !important;
	font-size: 3.2rem !important;
	border: none !important;
	position: relative !important;
	display: inline-block !important;
}

.news h2 {
	margin-top: 18rem !important;
}

.service h2 {
	margin-top: 8rem !important;
}

.home .article h2:before {
	content: '';
	position: absolute;
	top: 50%;
	display: inline-block;
	width: 180px;
	height: 1px;
	background-color: black;
}

.home .article h2:before {
  left:-200px !important;
}

.whatsnew h3 {
	display: none;
}

.article h3 {
	font-size: 2.2rem;
	border: none;
	background-color: #203864;
	color: white;
	font-weight: normal;
	padding: 0.4rem 2rem;
	letter-spacing: 0.6rem;
	margin-bottom: 2rem;
}

.h5-txt {
	font-family: 'Archivo Black', sans-serif;
	font-size: 2.4rem;
	color: #203864;
	border: none;
}


.under-lineBlue {
	background:linear-gradient(transparent 60%, #84B5EF 60%);
	text-align: center;
	font-size: 1.8rem;
}


/************************************************************* サイドメニュー */
.side-wrapper p {
	margin-top: 3rem;
}

.side-wrapper a {
	color: #A5A8AA;
	font-size: 1.4rem;
}

.side-wrapper a:hover {
	color: #4A79C6;
}

.this-page a {
	color: #333232;
}

.side-wrapper {
	background-color: transparent !important;
}

.submenu-title {
	color: #A5A8AA;
	font-size: 1.2rem;
	margin: 0 0 0 2rem !important;
}


/************************************************************* メディアとテキスト */
.wp-block-media-text__content {
	padding-left: 0 !important;
}

.wp-block-media-text__media {
	width: 300px;
}

.wp-block-media-text.has-media-on-the-right {
    grid-template-columns: 1fr !important;
}

.float-img {
	float: right;
   width: 40%;
}

/************************************************************* read more ボタン */
.wrapper .btn, .wp-block-button__link {
	color: #333232 !important;
    background-color: white !important;
    font-weight: normal !important;
    padding: 1rem 4rem !important;
    border: 1px solid #333232 !important;
    margin-top: 3rem !important;
	border-radius: 0 !important;
}

.wrapper .btn:hover, .wp-block-button__link:hover {
	color: white !important;
    background-color: #333232 !important;
	transition: 0.4s !important;
}

.wp-block-button__link {
	font-size: 1.4rem !important;
}

.btn-page-menu a {
    display: inline-block;
    border: 1px solid #777;
    padding: 8px;
}
.btn-page-menu a:hover {
    color: #777;
    opacity: 0.5;
    transition: all 0.3s ease-in-out;
}
/*** リンク ***/
/*　テキストリンク　*/
.txt-link {
	margin-top: 0;
}
.txt-link a:after {/*テキストリンクに矢印追加*/
	content: '\f35a';
   font-family: "Font Awesome 5 free";
   font-weight: 400;
   padding-left: 8px;
   font-size: 16px;
}
.att-info a:before {/*テキストリンクに矢印追加*/
	content: '\f35a';
   font-family: "Font Awesome 5 free";
   font-weight: 400;
   font-size: 16px;
}
.txt-link-blue a {
	color: #7eabc1;
}
.txt-btn-individual {
   width: 200px;
   margin: 0 auto;
}
@media screen and (max-width: 900px){
	.link-column-list-individual .txt-btn-individual {
      width: 200px;
    font-size: 15px;
    letter-spacing: -2px;
}
}
@media screen and (max-width: 781px){
	.link-column-list-individual .txt-btn-individual {
      width: 200px;
    font-size: 16px;
    letter-spacing: 0;
}
		.p-item-title {
	font-size: 22px;
}
}


.txt-btn-individual a {
   width: 100%;
}
.column-line-txt {
	display: table;
	width: 100%;
	height: 64px;
	background: #5bca5c;
}
/************************************************************* パンくずリスト */
.fbc-wrap {
	margin-bottom: 3rem !important;
}

.fbc-page .fbc-wrap .fbc-items {
    background-color: transparent !important;
}

.fbc-wrap a {
    color: #333232 !important;
	font-size: 1.4rem;
}

.fbc-page .fbc-wrap .fbc-items li {
    font-size: 1.4rem !important;
	color: #333232 !important;
}

.fbc-page .fbc-wrap .fbc-items li.active span, .fbc-page .fbc-wrap .fbc-items li .fbc-end-text {
	font-size: 1.4rem !important;
	color: #333232 !important;
}


/*********************************************************************** トップページ */
/************************************************************* サービス */
.key, .key .wp-block-cover, .wp-block-cover-image {
	margin-bottom: 0 !important;	
}
.home .toppage {
	position: relative;
	overflow: hidden;
}
.home .toppage::before {
	content: '';
	position: absolute;
	top: 6%;
	left: -10%;
	width: 120%;
	height: 800px; /* 高さを指定 */
	background: #F4F4F4;
	transform-origin: left center;
	transform: rotate(-8deg);
	z-index: -1;
}
.service-img-right, .service-img-left {
	padding: 0 !important;
	margin: 0 !important;
    width: 188px !important;
}
.service .is-layout-flex {
    margin: 0 auto;
    width: 696px;
	gap: 0;
}
.service-img-right .wp-block-image, .service-img-left .wp-block-image, .service-img-center .wp-block-image {
	margin: 0 !important;
}
.service-img-center {
		padding: 0 !important;
	margin: 0 !important;
    width: 300px !important;
}
.service-img-right img, .service-img-left img {
    width: 198px;
}
.service-img-center img {
    width: 300px;
}
.service p {
	margin-bottom: 5rem;
}

.service-pc {
	width: 100%;
	height: 800px;
	position: relative;
}

.service-pc .mizutori {
	font-size: 3rem;
	letter-spacing: 0 !important;
	font-family: 'Archivo Black', sans-serif !important;
}

.service-pc .under-line {
	font-size: 2.4rem;
	letter-spacing: 0.2rem;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

.home .s-01 {
    position: absolute;
    top: 170px;
    left: 210px;
}

.home .s-02 {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}

.home .s-03 {
    position: absolute;
    top: 170px;
    right: 210px;
}

.home .s-04 {
    position: absolute;
    bottom: 0;
    left: 300px;
}

.home .s-05 {
    position: absolute;
    bottom: 0;
    right: 300px;
}

.st, .sp {
	position: absolute;
}

.home .st {
	bottom: 0;
    left: 25px;
	padding: 0 2rem 0 1rem;
	border-bottom: 1px solid white;
}

.home .sp {
	bottom: -28px;
    left: 35px;
}

/************************************************************* メッセージ */
.message {
	background-image: url(https://company.mizutori-sc.com/wp-content/uploads/2021/08/01_message_bg.jpg);
   background-repeat: no-repeat, no-repeat;
   background-size: 100% auto;
   background-position: top 80px left 0;
	padding-bottom: 0;
	height: 610px;
}
.home .wrapper {
	padding-bottom: 0;
}
.message p {
	width: 700px;
	margin-top: 2rem;
	line-height: 4rem;
}
.message h2 {
	margin-top: calc(154 / 1920 * 100vw);
}

/************************************************************* リクルート */
.home .recruit {
	height: 90rem;
}

.recruit {
   background-image: url(https://company.mizutori-sc.com/wp-content/uploads/2021/08/01_recruit_bg.jpg);
   background-repeat: no-repeat, no-repeat;
   background-size: 100% auto;
   background-position: top 44px left 0;
	height: 400px;
}
/**************************************************************************
***************************************************************************************** news*/

.widget h2 {
	font-size: 1.7rem;
	border: none;
	background-color: #203864;
	color: white;
	font-weight: normal;
	padding: 0.2rem 2rem;
	letter-spacing: 0.6rem;
	margin-bottom: 2rem;	
}

#news .card-thumb {
	display: none;
}

#news .widget-entry-card-content {
    margin-left: 0;
	display: flex;
}

#news .card-title {
	order: 2;
}

#news .widget-entry-card-date {
	order: 1;
}

#news .post-date, .post-update, .post-author, .amp-back {
    margin-right: 18px;
    font-size: 1.4rem;
}

/*************************************************************************** 投稿 */
.new-entry-card-date, .new-entry-card-cat-label {
  display: block;
}

.entry-title, .archive-title {
    font-size: 2rem;
}

.single-post .sidebar {
	width: 30% !important;
}

.widget-single-content-top-title {
	color: #6087C6;
}

.widget_recent_entries ul li a, .widget_categories ul li a, .widget_archive ul li a, .widget_pages ul li a, .widget_meta ul li a, .widget_rss ul li a, .widget_nav_menu ul li a {
    color: #999;
    text-decoration: none;
    padding: 10px 0;
    display: block;
    padding-right: 4px;
    padding-left: 4px;
    width: 100px;
}

.article-header ul {
	display: flex;
}

/**************************************************************************
***************************************************************************************** company */
#company .wp-block-column {
	position: relative;
	margin-bottom: 3rem;
}
#company .has-text-align-center {
	position: absolute;
	bottom: -14px;
	left: 5%;
}
#company a {
	color: white;
}
#company a:hover {
	color: #80AEE5;
	transition : 0.5s;
}

.company-title {
	background-color: #F4F4F4;
    padding: 0 2rem;
    margin-bottom: 2rem !important;
    height: 7.2rem;
}

.company-title .wp-block-columns {
	align-items: center;
}

.company-title .left p {
	letter-spacing: 0.2rem;
    font-size: 2rem;
    line-height: 7.6rem;
}

.company-title .right p {
	color: #E8E8E8 !important;
	font-size: 3.2rem;
	margin: 0;
	padding: 0;
	font-weight: bold;
	line-height: 7.6rem;
	text-align: right;
}

/*************************************************************************** メッセージ */
.page-id-208 {
	height: 100vh;
	background-image: url("https://company.mizutori-sc.com/wp-content/uploads/2021/08/02-1_bg.jpg");
	background-repeat: no-repeat;
	background-size: 80% auto;
	background-position: bottom left;
}

.page-id-208 .main {
	background-color: transparent !important;
}

/*************************************************************************** 理念 */
.wp-image-218 {
	margin-top: 3rem;
}

#philosophy ul {
	margin-top: 3rem;
	line-height: 6rem;
	letter-spacing: 0.3rem;
	font-size: 1.7rem;
}
.contents-title {
    margin-bottom: 40px !important;
}
.contents-title p {
	line-height: 4rem;
}
.contents-title .under-line {
	margin-left: 1rem;
}
.line-top {
    border: 1px solid #969696;
    margin-bottom: 3rem !important;
    width: 154px;
	    margin-left: 66px;
}
.line-top-long {
    border: 1px solid #969696;
    margin-bottom: 3rem !important;
    width: 100%;
	    margin-left: 66px;
}
.line-under {
     border: 1px solid #969696;
    width: 154px;
}
.txt-large {
    font-size: 28px;
    line-height: 6rem;
}
.left-margin-1 {
	margin-left: 1rem;
}
.contents-txt img{
	max-width: 180px;
}
.values-item-wrap {
	flex-direction: column;
}
.contents-txt-column {
	padding: 0;
	width: 300px;
}
.values-item {
	display: flex;
	align-items: center;
	margin-bottom: 34px !important;
}
.values-item .wp-block-image {
	margin: 0 !important;
}

/*************************************************************************** 概要・採用情報（テーブル）*/
#profile table, #recruit table {
	font-size: 1.4rem;
	width: 100%;
}
#profile th, #recruit th {
	font-weight: normal;
	background-color: #F4F4F4;
	padding: 1rem 2rem;
	border: 1px solid #fff;
}

#profile td, #recruit td {
	background-color: white;
	padding: 1rem 2rem;
	width: 80%;
	border: 1px solid #ccc;
}

#recruit table {
	margin-top: 3rem;
}
.profile-left{
width:40% !important;
padding:10px;
	text-align:center;
}
.profile-right{
width:60% !important;
padding:10px;
line-height:30px;
}
.profile-title {
font-size:2.5rem !important;
font-weight:900;
	margin-top:20px;
	margin-bottom:10px;
}
.profile-text {
font-size:2rem !important;
}
.profile-left img{
margin-top:20px;
align-items: flex-end !important;
}
 .flex{
    display:flex;
    flex-wrap:nowrap;
    justify-content:center;
  }
.prof-under-line{
	border-bottom:2px solid #000000;
	margin-right:50%;
}
.profile-text h2{
	font-size:1.3rem !important;
	border-bottom:1px solid;
	margin:0px 0px 5px 0px !important;
}
.font-sawa{
	font-family:sawarabi-mincho;
}
@media screen and (max-width: 767px) {
.flex{
display:block;
}
.profile-left{
width:100% !important;
}
.profile-right{
margin-bottom:10px;
width:100% !important;
}
.profile-text h2{
	font-size:1.1rem !important;
}
.profile-text {
font-size:1.4rem !important;
	line-height:15px;
}
	.profile-title {
font-size:1.8rem !important;
}
}
@media screen and (max-width: 520px) {
	.mobile-none{
		display:none;
	}
}
@media screen and (min-width: 521px) {
.mobile-display{
		display:none;
	}
}
/*************************************************************************** ビジョン */
.vision-text {
	font-size: 3rem !important;
}

#vision .under-line {
	margin: 1rem auto;
	letter-spacing: 0.2rem;
	width: 50%;
}

.wp-image-236 {
	margin-top: 4rem;
}

/**************************************************************************
***************************************************************************************** SERVICE */
.key-img {
	padding: 0;
}
.key-img img {
	width: 100%;
}

#service .s-01 {
    position: absolute;
    top: 280px;
    left: 220px;
}

#service .s-02 {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}

#service .s-03 {
    position: absolute;
    top: 280px;
    right: 220px;
}

#service .s-04 {
    position: absolute;
    bottom: -70px;
    left: 350px;
}

#service .s-05 {
    position: absolute;
    bottom: -70px;
    right: 350px;
}

#service .st {
	bottom: 48px;
    left: 25px;
	padding: 0 2rem 0 1rem;
	border-bottom: 1px solid white;
}

#service .sp {
	bottom: 14px;
    left: 35px;
}

#service .under-line, #fitness .under-line, #support .under-line, #education .under-line, #entertainment .under-line {
	text-align: left;
	margin: 2rem 0;
	padding: 0 2rem;
}

.media-text {
	line-height: 2rem;
}

.has-large-font-size {
	margin-bottom: 0 !important;
}

.ent {
	letter-spacing: -0.2rem;
    font-size: 1.7rem;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/***座談会***/
.rec-cover p {
	margin: 0 0 0 50% !important;
	line-height: 32px;
	letter-spacing: 2px;
}
.rec-cover p:nth-child(3) {
    margin-bottom: 0 !important;
}
.discus-name {
	font-size: 18px;
	margin-bottom: 4px !important;
}
.discus-name-note {
	font-size: 14px;
}
.discus-name-txt {
    font-size: 15px;
}
.zadankai-img {
    width: 60%;
    padding-bottom: 10px;
}
@media screen and (max-width: 781px){
	.rec-cover p {
		margin: 0 auto !important;
	}
}
@media screen and (max-width: 599px){
	.zadankai-img {
    width: 100%;
    padding-bottom: 20px;
}
}

/**************************************************************************
***************************************************************************************** お問い合わせ */

/*チェックボックス横並び*/
span.wpcf7-list-item {
	display: block;
}

.ctdt-one-row > div {
    display: none;
}

/*見出し欄*/
#contact .inquiry th {
	text-align: left;
	font-size: 1.4rem;
	background-color: transparent;
	font-weight: 100;
}

#contact table th, table td {
	font-size: 1.6rem;
	border: none;
	color: #333232;
}

#contact table th {
	width: 20rem !important;
}

/*通常欄*/
#contact .inquiry td {
	font-size: 1.4rem;
	letter-spacing: 0.3rem;
}

/*必須の調整*/
.haveto {
	font-size: 1rem;
	font-weight: 600;
	padding: 4px;
	background: #ff9393;
	color: #333232;
	border-radius: 2px;
	margin-right: 5px;
	position: relative;
	bottom: 1px;
}

/*任意の調整*/
.any {
	font-size: 1rem;
	font-weight: 600;
	padding: 4px;
 	background: #5FBCDD;
	color: #333232;
	border-radius: 2px;
	margin-right: 5px;
	position: relative;
	bottom: 1px;
}

/*ラジオボタンを縦並び指定*/
.verticallist .wpcf7-list-item {
	display: block;
}

/*送信ボタンのデザイン変更*/
#formbtn {
	width: 30rem;
	display: block;
	padding: 1rem 0;
	margin: 30px auto;
	background: white;
	color: black;
	font-size: 1.5rem;
	letter-spacing: 0.2rem;
	transition: 0.5s;
}

/*送信ボタンマウスホバー時*/
#formbtn:hover {
	opacity: 0.5;
}
#formbtn:active {
	border: 0 !important;
}

/*背景ストライプを消す*/
table tr:nth-of-type(2n+1) {
	background-color: transparent;
}

/*フレーム*/
.search-edit, input[type="text"], input[type="password"], input[type="date"], input[type="datetime"], input[type="email"], input[type="number"], input[type="search"], input[type="tel"], input[type="time"], input[type="url"], textarea, select {
	padding: 5px;
	border: 1px solid #D9D9E2;
	border-radius: 0;
	font-size: 1.5rem;
  width: 80%;
}

/*コメント*/
#contact .init p, #contact .invalid p, #contact .unaccepted p {
	font-size: 1.4rem;
	text-align: center;
}

#contact .wpcf7-response-output {
	text-align: center;
	color: red;
	padding-bottom: 2rem;
}

/*エラー表示*/
.screen-reader-response {
	display: none;
}

.wpcf7-not-valid-tip {
	display: block;
	color: red;
}

#contact .spam-design {
	margin: 0 auto !important;
}

#contact .spam {
	color: #333232;
	font-size: 1.3rem;
	display: flex;
	width: 100%;
}

#contact .wpcf7-response-output {
	color: #333232;
	padding-bottom: 0;
	font-size: 1.4rem;
	border: none;
}

.wpcf7 form.sent .wpcf7-response-output {
	border-color: transparent;
}

.spam-text {
	margin-left: 1rem;
}

#privacy-policy, #site-map {
	margin-top: 5rem;
}

.sitemap h2 {
	border: none;
	font-size: 1.7rem;
	font-weight: 100;
	margin-top: 2rem;
}

#site-map, #site-map .children {
	line-height: 3rem;
}
#site-map .page_item_has_children, #site-map .current_page_item {
	margin-top: 2rem !important;
}
/************************************
** お問い合わせフォームの入力
************************************/
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"],
select,
textarea,
.field {
  display: ;
  width: 100%;
  height: 45px;
  margin-bottom: 0;
  padding: 0 12px;
  border: 0;
  border-radius: 3px;
  background-color: #eff1f5;
  box-shadow: none;
  color: #5c6b80;
  font-size: 1em;
  vertical-align: middle;
  line-height: 45px;
  transition: background-color 0.24s ease-in-out;
}
textarea {
  max-width: 100%;
  min-height: 120px;
  line-height: 1.5em;
  padding: 0.5em;
  overflow: auto;
}
@media(max-width:500px) {
    .inquiry td,
    .inquiry th {
        display: block !important;
        width: 100% !important;
        border-top: none !important;
        -webkit-box-sizing: border-box !important;
        -moz-box-sizing: border-box !important;
        box-sizing: border-box !important
    }
    .inquiry tr:first-child th {
        border-top: 1px solid #d7d7d7 !important
    }
    .inquiry .any,
    .inquiry .haveto {
        font-size: 10px
    }
}
.inquiry th {
    text-align: left;
    font-size: 14px;
    color: #444;
    padding-right: 5px;
    width: 30%;
    background: #f7f7f7 !important;
    border: solid 1px #d7d7d7
}
.inquiry td {
    font-size: 13px;
    border: solid 1px #d7d7d7
}
.entry-content .inquiry tr,
.entry-content table {
    border: solid 1px #d7d7d7
}
.haveto {
    font-size: 7px;
    padding: 5px;
    background: #ff9393;
    color: #fff;
    border-radius: 2px;
    margin-right: 5px;
    position: relative;
    bottom: 1px
}
.any {
    font-size: 7px;
    padding: 5px;
    background: #93c9ff;
    color: #fff;
    border-radius: 2px;
    margin-right: 5px;
    position: relative;
    bottom: 1px
}
.verticallist .wpcf7-list-item {
    display: block
}
#formbtn {
    display: block;
    padding: 15px;
    width: 350px;
    background: #ffaa56;
    color: #fff;
    font-size: 18px;
    font-weight: 700;
    border-radius: 2px;
    margin: 25px auto 0
}
#formbtn:hover {
    background: #fff;
    color: #ffaa56;
    border: 2px solid #ffaa56
}
th {
    font-weight: 700;
    text-transform: uppercase;
    padding: 13px
	width: 10%;
}
td {
    border-top: 1px solid #ededed;
    padding: 12px
}
.spam-design p {
    display: flex;
	text-align: left !important;
}
input,
select,
textarea {
    border: 1px solid #dfdfdf;
    letter-spacing: 1px;
    margin: 0;
    max-width: 100%;
    resize: none
}
add_filter( 'wpcf7_validate_email', 'wpcf7_validate_email_filter_extend', 11, 2 );
add_filter( 'wpcf7_validate_email*', 'wpcf7_validate_email_filter_extend', 11, 2 );
function wpcf7_validate_email_filter_extend( $result, $tag ) {
    $type = $tag['type'];
    $name = $tag['name'];
    $_POST[$name] = trim( strtr( (string) $_POST[$name], "n", " " ) );
    if ( 'email' == $type || 'email*' == $type ) {
        if (preg_match('/(.*)_confirm$/', $name, $matches)){ //確認用メルアド入力フォーム名を ○○○_confirm としています。
            $target_name = $matches[1];
            if ($_POST[$name] != $_POST[$target_name]) {
                if (method_exists($result, 'invalidate')) {
                    $result->invalidate( $tag,"確認用のメールアドレスが一致していません");
                } else {
                    $result['valid'] = false;
                    $result['reason'][$name] = '確認用のメールアドレスが一致していません';
                }
            }
        }
    }
    return $result;
}
/***************************************************************************エントリーフォーム*/
.font-meiryo{
	font-family:meiryo !important;
}
.wpcf7 select
{
    width: 20%;
}
/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1620px以下*/
@media screen and (max-width: 1620px){
.home .s-01, #service .s-01 {
	top: calc(196 / 1620 * 100vw);
	left: calc(170 / 1620 * 100vw);
}

.home .s-03, #service .s-03 {
	top: calc(196 / 1620 * 100vw);
	right: calc(170 / 1620 * 100vw);
}

.home .s-04, #service .s-04 {
	left: calc(260 / 1620 * 100vw);
}

.home .s-05, #service .s-05 {
	right: calc(260 / 1620 * 100vw);
}
}
/*1460px以下*/
@media screen and (max-width: 1460px){
.home .s-01, #service .s-01 {
	top: calc(205 / 1460 * 100vw);
	left: calc(88 / 1460 * 100vw);
}

.home .s-03, #service .s-03 {
	top: calc(205 / 1460 * 100vw);
	right: calc(88 / 1460 * 100vw);
}
}
	
/*1400px以下*/
@media screen and (max-width: 1400px){
.home .s-01, #service .s-01 {
	top: calc(170 / 1400 * 100vw);
}

.home .s-03, #service .s-03 {
	top: calc(170 / 1400 * 100vw);
}

.home .s-04, #service .s-04 {
	left: calc(170 / 1400 * 100vw);
}

.home .s-05, #service .s-05 {
	right: calc(170 / 1400 * 100vw);
}

.home .st {
	left: calc(25 / 1400 * 100vw);
}

.home .sp {
	left: calc(-28 / 1400 * 100vw);
	left: calc(35 / 1400 * 100vw);
}
	.message h3 {
	margin-top: calc(65 / 1440 * 100vw);
}
	.message p {
		width: 669px;
	}

	#service .st {
		bottom: calc(48 / 1400 * 100vw);
		left: calc(25 / 1400 * 100vw);
	}
	#service .sp {
		bottom: calc(14 / 1400 * 100vw);
	    left: calc(35 / 1400 * 100vw);
	}
}

/*1320px以下*/
@media screen and (max-width: 1320px){
.home .s-01, #service .s-01 {
	top: calc(205 / 1320 * 100vw);
	left: calc(30 / 1320 * 100vw);
}

.home .s-03, #service .s-03 {
	top: calc(205 / 1320 * 100vw);
	right: calc(30 / 1320 * 100vw);
}
}

/*1280px以下*/
@media screen and (max-width: 1280px){
	.logo {
		margin-left: 2rem !important;
	}	
	.message h3 {
		margin-top: calc(136 / 1280 * 100vw);
	}
	.message p {
		width: 500px;
	}
	.home .toppage::before {
		height: 800px; /* 高さを指定 */
	}
	.home .recruit {
		height: 70rem;
	}
	.news h3 {
		margin-top: 12rem !important;
	}
}
/*1240px以下*/
@media screen and (max-width: 1240px){
.home .s-01, #service .s-01 {
	top: calc(210 / 1240 * 100vw);
	left: calc(0 / 1240 * 100vw);
}

.home .s-03, #service .s-03 {
	top: calc(210 / 1240 * 100vw);
	right: calc(0 / 1240 * 100vw);
}
	.home .toppage {
    background-position: top calc((-19 / 217)* 100vw +(357640 / 217)* 1px) left 0;
}
}
/*1140px以下*/
@media screen and (max-width: 1140px){
.home .s-01, #service .s-01 {
	top: calc(200 / 1140 * 100vw);
}

.service-pc .wp-block-image img {
    max-width: 95%;
}

.home .s-03, #service .s-03 {
	top: calc(200 / 1140 * 100vw);
}
	
.service-pc .mizutori {
	font-size: 2.4rem;
}

.service-pc .under-line {
	font-size: 2rem;
	letter-spacing: 0.1rem;
}
	#service .sp {
    left: calc(40 / 1140 * 100vw);
}

	#service .st {
	padding: 0 2rem !important;
    left: calc(21 / 1140 * 100vw) !important;
}
}

/*1070px以下*/
@media screen and (max-width: 1070px){
.home .s-04, #service .s-04 {
	bottom: calc(20 / 1023 * 100vw);
	left: calc(110 / 1070 * 100vw);
}

.home .s-05, #service .s-05{
	bottom: calc(20 / 1023 * 100vw);
	right: calc(108 / 1070 * 100vw);
}	
}
	

/*1023px以下*/
@media screen and (max-width: 1023px){
.service-pc .wp-block-image img {
    max-width: 90%;
}
	.no-display-1023 {
	display: block;
}
	.txt-lh-1024 {
        line-height: 2rem !important;
        margin-bottom: 3rem !important;
    }
	.txt-lh-1024-2 {
        line-height: 1.6rem !important;
    }
	#header-container {
		display: none;
	}
	.mobile-header-menu-buttons {
		padding: 1rem !important;
	}
	.logo-menu-button img {
		max-height: 30px;
	}
	.message p {
		width: 400px;
	}
	.wrapper, .single .content {
		width: 100%;
	}
.home .s-01, #service .s-01 {
	left: calc(-20 / 1023 * 100vw);
}

.home .s-03, #service .s-03 {
	right: calc(-20 / 1023 * 100vw);
}

.fbc-wrap {
    margin-top: 1rem !important;
}
.fbc-page .fbc-wrap .fbc-items li:first-child {
    padding-left: 0 !important;
}
	.txt-large {
    font-size: 28px;
    line-height: 4rem;
}
	.navi-menu-content {
    right: 0; /* ← 左ではなく右基準にする */
    left: auto;
    -webkit-transform: translateX(105%); /* 右側に隠す */
    transform: translateX(105%);
}

.menu-content {
    overflow: auto;
    position: fixed;
    top: 0;
    z-index: 9999;
    width: 100%;
    max-width: 400px;
    height: 100%;
    background: #fff;
    transition: 0.3s ease-in-out;
    opacity: 1;
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
}

/* メニューが開いたとき（input:checked の時など） */
#navi-menu-input:checked ~ .navi-menu-content {
    -webkit-transform: translateX(0);
    transform: translateX(0);
}
	/* メニュー本体 */
.navi-menu-content {
    position: fixed;
    top: 0;
    right: 0; 
    left: auto;
    width: 100%;
    max-width: 400px;
    height: 100%;
    background: #fff;
    transform: translateX(105%);
    transition: 0.3s ease-in-out;
    z-index: 1000;
}

/* 開いた状態 */
#navi-menu-input:checked ~ .navi-menu-content {
    transform: translateX(0);
}
/* クローズボタン（メニュー内だけど外に見せる） */
.menu-close-button {
    display: block;
    cursor: pointer;
    text-align: right;
    font-size: 2em;
    margin-right: 10px;
}
/* ×マーク */

.navi-menu-close-button span::before {
    content: "×";   /* シンプルなバツ印を強制表示 */
    font-size: 34px;
    color: black;    /* 背景が暗いので白で */
}
	.menu-item a {
    border-bottom: 1px solid #ccc;
	border-top: 1px solid #ccc;
    font-size: 17px !important;
    line-height: 40px;
}
	.menu-item-2930 a, .menu-item-1526 a, .menu-item-543 a , .menu-item-2770 a{
    border-top: none;
}
	.sub-menu .menu-item a {
		border: none;
		font-size: 16px;
	}
	.logo-menu-button img {
		margin: 0 !important;
	}
}


/*940px以下*/
@media screen and (max-width: 940px){
.home .s-01, #service .s-01 {
	left: calc(-40 / 940 * 100vw);
}

.home .s-03, #service .s-03 {
	right: calc(-40 / 940 * 100vw);
}

.home .s-04, #service .s-04 {
	bottom: calc(30 / 940 * 100vw);
	left: calc(55 / 940 * 100vw);
}

.home .s-05, #service .s-05 {
	bottom: calc(30 / 940 * 100vw);
	right: calc(55 / 940 * 100vw);
}
}
/*900px以下*/
@media screen and (max-width: 900px){
.home .s-03, #service .s-03 {
	top: calc(200 / 900 * 100vw);
	right: calc(-68 / 900 * 100vw);
}
.home .s-01, #service .s-01 {
	top: calc(200 / 900 * 100vw);
	left: calc(-71 / 900 * 100vw);
}
		.philosophy {
    padding: 0;
}

	#philosophy .wp-block-column:nth-child(2n) {
		padding: 0 !important;
	}
}

/*834px以下*/
@media screen and (max-width: 834px){
	.service-pc .wp-block-image img {
    max-width: 80%;
}
.home .s-03, #service .s-03 {
	top: calc(200 / 834 * 100vw);
	right: calc(-41 / 834 * 100vw);
}
.home .s-01, #service .s-01 {
	top: calc(200 / 834 * 100vw);
	left: calc(-46 / 834 * 100vw);
}
.service-pc .mizutori {
	font-size: 2.2rem;
}

.service-pc .under-line {
	font-size: 1.6rem;
	}

.home .s-04, #service .s-04 {
	bottom: calc(14 / 834 * 100vw);
}

.home .s-05, #service .s-05 {
	bottom: calc(14 / 834 * 100vw);
}
	.top-service-img {
    width: 280px !important;
}

.home .st {
	bottom: calc(-32 / 834 * 100vw);
	left: calc(44 / 834 * 100vw);
	}

.home .sp {
	bottom: calc(-7 / 834 * 100vw);
 	left: calc(30 / 834 * 100vw);
}
	p {
		font-size: 1.4rem;
	}
	div.whatsnew a {
	    font-size: 1.4rem;
	}
	.article h3 {
		font-size: 3rem;
	}
	.home .toppage {
		background-position: top 1440px left 0;
}
	.home .toppage::before {
		height: 600px; /* 高さを指定 */
	}
	.news h3 {
    margin-top: 2rem !important;
}
	.home .recruit {
		height: 60rem;
	}
	.service p {
		font-size: 1.4rem;
	}
	.message p {
		width: 300px;
		line-height: 2.4rem;
	}
	.wp-image-376 {
		margin: 0 auto;
	}
	.message {
    height: 500px;
}
}


/*781px以下*/
@media screen and (max-width: 781px){
	.pc-781 {
		display: none !important;
	}
	.mobile-781 {
		display: block !important;
	}
	.mobile-top-image img {
    width: 260px;
    min-width: 260px;
}
.contents-txt-column {
        width: 250px;
        padding: 10px 0 0 0;
    }
	.values-item-wrap {
		gap: 0;
	}
	.contnts-txt .is-layout-flow > .aligncenter {
    margin-left: 0 !important;
    margin-right: 0 !important;
}
	.is-layout-flow > .aligncenter {
    margin-left: 0;
    margin-right: 0;
}
	.txt-big {
    font-size: 38px;
}
	.contents-title p {
    line-height: 2rem;
}
	.txt-large {
		font-size: 20px;
	}
	.wp-image-147, .wp-image-298 {
	margin-top: 3rem;	
	}
	h3.wp-block-heading {
    text-align: center;
}
	.home .toppage {
		background-position: top 1340px left 0;
	}
	.home .s-03 {
	right: calc(-22 / 781 * 100vw);
}
.home .s-01 {
	left: calc(-22 / 781 * 100vw);
}
.home .s-04 {
	bottom: calc(92 / 781 * 100vw);
}
.home .s-05{
	bottom: calc(92 / 781 * 100vw);
}
 #service .s-03 {
	right: calc(-3 / 781 * 100vw);
}
#service .s-01 {
	left: calc(-3 / 781 * 100vw);
}
#service .s-04 {
	bottom: calc(92 / 781 * 100vw);
}

#service .s-05 {
	bottom: calc(92 / 781 * 100vw);
}
	.top-service-img {
    width: 240px !important;
}
	.wrapper, .single .content {
		width: 100% !important;
	}
	.news, .service, .message, .recruit {
		padding: 0 2rem;
	}
	.wp-block-columns {
 	   flex-wrap: wrap;
	   flex-direction: column;
	}
	.h5-txt {
		display: none;
	}
	.left-c {
		order: 2;
		text-align: center;
		margin-top: ４rem;
		background-color:;
	}
	.right-c {
		order: 1;
	}
	.message .is-layout-flex {
    display: flex;
    justify-content: flex-start !important;
}
	#message .wp-block-column:nth-child(2n), #philosophy .wp-block-column:nth-child(2n), #profile .wp-block-column:nth-child(2n), #vision .wp-block-column:nth-child(2n), #service .wp-block-column:nth-child(2n), #fitness .wp-block-column:nth-child(2n), #support .wp-block-column:nth-child(2n), #education .wp-block-column:nth-child(2n), #entertainment .wp-block-column:nth-child(2n), #recruit .wp-block-column:nth-child(2n) {
		padding:0 1rem;
	}
	#company .wp-block-column:nth-child(2n) {
		margin-left: 0;
	}
	.wp-image-209 {
		margin-bottom: 2rem !important;
	}
	#philosophy ul {
		line-height: 4rem;
		font-size: 1.6rem;
	}
	#profile th, #recruit th {
		font-size: 1.4rem;
	}
	#vision .under-line {
	    width: 60%;
	}
	.contents-wrapper {
		margin-top: 1rem;
		padding:0;
	}
	.has-large-font-size {
		font-size: 2rem !important;
	}
	.contents-wrapper .wp-block-media-text {
    	display: flex;
    	flex-direction: column;
	}
	.contents-wrapper .wp-block-media-text__media {
		order: 2;
		margin: 0 auto !important;
	}
	.contents-wrapper .wp-block-media-text__content {
		order: 1;
		padding-right: 0 !important;
	}
	#service .under-line, #fitness .under-line, #support .under-line, #education .under-line, #entertainment .under-line {
		padding-left: 2rem;
    	margin: 2rem 0;
	}
	.contents-wrapper .wp-block-media-text {
		margin-bottom: 6rem !important;
	}
	.contents-wrapper .btn, .wp-block-button__link {
		margin: 1rem 0 2rem 0 !important;
	}
	#fitness .contents-wrapper .wp-block-media-text__content .wp-block-cocoon-blocks-button-1, #service .contents-wrapper .wp-block-media-text__content .wp-block-cocoon-blocks-button-1, .support-btn, #education .contents-wrapper .wp-block-media-text__content .wp-block-cocoon-blocks-button-1, #entertainment .contents-wrapper .wp-block-media-text__content .wp-block-cocoon-blocks-button-1  {
		text-align: center;
	}
	.wp-image-124 {
		margin-top: 2rem;
	}
	#entertainment .under-line {
		margin: 0.5rem 0 !important;
	}
	#entertainment .media-text {
		margin-top: 2rem !important;
	}
	#privacy-policy, #site-map {
		width: 90%;
		margin: 5rem auto;
	}
	#privacy-policy li {
		font-size: 1.4rem;
	}
	.left-c {
		margin-bottom: 0;
	}
	.side-wrapper p {
    margin: 0 !important;
		padding: 1.5rem 0;
		border-top: 1px solid #DBE4F0;
}
	.labo-btn {
		padding-top: 2rem !important;
	}
	.labo-btn .wp-block-buttons>.wp-block-button:last-child {
    	margin-bottom: 2rem;
	}
	.contents-txt img {
    width: 140px;
	}
	.post-217 .wrapper {
    padding: 20px;
}
}


/*768px以下*/
@media screen and (max-width: 768px){
	.su-tabs-mobile-stack .su-tabs-nav span {
    	display: inline-flex !important;
	}
	.widget-entry-card {
    	font-size: 14px;
	}
	#news .post-date, .post-update, .post-author, .amp-back {
    	font-size: 1.3rem;
	}
	#news .widget-entry-card-content {
		flex-direction: column;
	}
	#news .widget-entry-card-date {
    	color: #6B95D6;
	}
}


/*680px以下*/
@media screen and (max-width: 680px){
	.metaslider .flexslider {
		margin: 0 0 -40px !important;
	}
	.wrapper {
		width: 100%;
	}
	.mobile {
		display: block !important;
		margin: 0 !important;
	}
	.pc {
		display: none !important;
	}
	.post-5 .wp-block-cover {
    	min-height: 280px !important;
	}
	.home .article h3 {
		font-size: 2.6rem;
		margin-top: 8rem;
	}
	.news h3 {
		margin-top: 10rem !important;
	}
	.news, .service, .recruit, .message-m {
		width: 100%;
		margin: 0 auto;
	}
	.service .under-line {
		font-size: 2.4rem;
		letter-spacing: 0.2rem;
	}
	.toppage {
		padding: 0;
	}
	.message {
    background-size: 120% auto;
    background-position: top 110px left -56px;
    height: 435px;
}
	.mizutori {
		font-family: 'Archivo Black', sans-serif;
		background:linear-gradient(transparent 60%, #84B5EF 60%);
		text-align: center;
		font-size: 1.8rem;
	}
.message .is-layout-flex, .recruit .is-layout-flex {
    justify-content: flex-start;
}
	.message p {
		width: 50%;
		margin-top: 0.6rem;
		line-height: 2.4rem;
	}
	.message .button-block {
		text-align: center !important;
		padding-bottom: 3rem;
	}
	.recruit p {
		text-align: left !important;
		margin-bottom: 4rem;
	}
	.recruit {
    background-position: top 155px left 0;
}

	.home .recruit {
        height: 52rem;
    }
	.home .toppage::before {
		top: 0;
		height: 1000px; /* 高さを指定 */
		transform: rotate(0deg);
	}
	.message {
		margin-top: 5rem;
	}
	.home .toppage {
        background-size: calc((13 / 20)* 100vw + 348* 1px);
        background-position: top calc((-1 / 2)* 100vw + 2020* 1px) right -40px;
    }
	.home .service-mobile {
		width: 100%;
		height: 555px;
		position: relative;
	}
	#service .service-mobile {
		width: 100%;
		height: 650px;
		position: relative;
	}
	.service-mobile .mizutori {
		font-size: 2rem;
		letter-spacing: 0 !important;
		font-family: 'Archivo Black', sans-serif !important;
	}
	
	.service-mobile .center-title {
		font-size: 2rem;
		letter-spacing: 0 !important;
	}
	.home .wp-block-cover, .service-mobile .wp-block-cover {
		padding: 0 !important;
    margin-bottom: 0 !important;
	}
	img.top-service-img {
    width: 100% !important;
}
		.s-01-m, .s-02-m, .s-03-m, .s-04-m, .s-05-m {
		width: 36% !important;
	}
	.service-mobile .wp-block-image {
		width: 100% !important;
		margin: 0 !important;
	}
	.s-01-m p, .s-02-m p, .s-03-m p, .s-04-m p, .s-05-m p {
		padding: 2rem 1rem;
		font-size: 1.3rem !important;
		margin: 0 !important;
	}
	.s-05-m p {
		padding: 1.8rem 1rem !important;
		line-height: 1.6rem;
	}
	.home .s-00-m {	
		position: absolute;
		top: 50%;
		left: 50%;
		width: 50% !important;
		transform: translate(-50%, -50%);
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
	}
	#service .s-00-m {	
		position: absolute;
		top: 50%;
		left: 50%;
		width: 40% !important;
		transform: translate(-50%, -50%);
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
	}

	.home .s-01-m {
		position: absolute;
		top: calc(144 / 680 * 100vw);
		left: calc(-60 / 680 * 100vw);
	}
	#service .s-01-m {
		position: absolute;
		top: calc(197 / 680 * 100vw);
		left: calc(-1 / 680 * 100vw);
	}
	#service .s-02-m {
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
	}
		.home .s-02-m {
    position: absolute;
		top: -72px;
			left: 50%;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
	}

	.home .s-03-m {
		position: absolute;
		top: calc(144 / 680 * 100vw);
		right: calc(-60 / 680 * 100vw);
	}
	#service .s-03-m {
    position: absolute;
		top: calc(197 / 680 * 100vw);
		right: calc(-6 / 680 * 100vw);
	}

	.home .s-04-m {
		position: absolute;
		left: calc(40 / 680 * 100vw);
		bottom: calc(-78 / 680 * 100vw);
	}
	#service .s-04-m {
		position: absolute;
		left: calc(85 / 680 * 100vw);
		bottom: calc(5 / 680 * 100vw);
	}
	.home .s-05-m {
		position: absolute;
		bottom: calc(-78 / 680 * 100vw);
		right: calc(40 / 680 * 100vw);
	}
	#service .s-05-m {
		position: absolute;
		bottom: calc(5 / 680 * 100vw);
		right: calc(80 / 680 * 100vw);
	}
	#service .top-service-img {
    width: 220px !important;
    margin: 0 auto;
}
	#content-bottom-in a {
		font-size: 1.5rem !important;
		line-height: 1.2rem !important;
		padding: 1.4rem 5rem !important;
	}
	.wp-block-cover .wp-block-cover__image-background {
		top: 17px;
	}
	.float-img {
    float: none;
    width: 100%;
    margin-bottom: 20px !important;
}
}

/*634px以下*/
@media screen and (max-width: 634px){
.wp-block-cover .wp-block-cover__image-background {
    height: 97%;
    top: 0px;
}
	.home .s-04-m, .home .s-05-m {
		bottom: calc(-62 / 680 * 100vw);
	}
	.home .s-02-m {
		top: -48px;
	}
	#service .s-00-m {
		top: 53%;
	}
	#service .top-service-img {
    width: 210px !important;
    margin: 0 auto;
}
}

/*599px以下*/
@media screen and (max-width: 599px){
  #message .wp-block-column:nth-child(2n), #philosophy .wp-block-column:nth-child(2n), #profile .wp-block-column:nth-child(2n), #vision .wp-block-column:nth-child(2n), #service .wp-block-column:nth-child(2n), #fitness .wp-block-column:nth-child(2n), #support .wp-block-column:nth-child(2n), #education .wp-block-column:nth-child(2n), #entertainment .wp-block-column:nth-child(2n), #recruit .wp-block-column:nth-child(2n) {
		margin-right: 0;
	}
#profile table, #recruit table {
    width: 90%;
    margin: 1rem auto !important;
}
	recruit {
        background-position: top 192px left 0;
    }
	#recruit p {
		padding: 0 1rem;
	}
	#contact {
		padding: 0 2rem;
	}
	.company-title .wp-block-columns > .left {
		margin-bottom: 0 !important;
	}
	#post-5 .has-large-font-size {
		font-size: 1.8rem !important;
	}
	.service-mobile .mizutori {
		font-size: 1.8rem;
	}
	.home .s-04-m, .home .s-05-m {
    bottom: calc(-50 / 599 * 100vw);
}
	#service .s-04-m, #service .s-05-m {
    bottom: calc(15 / 599 * 100vw);
}
	.home .s-03-m, .home .s-01-m {
		top: calc(160 / 680 * 100vw);
	}
	#service .top-service-img {
    width: 200px !important;
}
}

/*550px以下*/
@media screen and (max-width: 550px){
.home .s-03-m {
		top: calc(146 / 550 * 100vw);
		right: calc(-60 / 550 * 100vw);
	}
	.home .s-01-m {
		top: calc(146 / 550 * 100vw);
		left: calc(-60 / 550 * 100vw);
	}

		
}
/*534px以下*/
@media screen and (max-width: 534px){
	.blackTxt {
    line-height: 2rem;
}
	#service .s-00-m {
    top: 44%;
}
	.message {
        background-size: 140% auto;
        background-position: top 120px left -128px;
        height: 460px;
    }
	#service .s-04-m, #service .s-05-m {
    bottom: calc(118 / 599 * 100vw);
}
	.home .s-04-m, .home .s-05-m {
    bottom: calc(-42 / 599 * 100vw);
}
	.home .s-03-m {
    right: calc(-46 / 550 * 100vw);
}
	.home .s-02-m {
    top: -20px;
		left: 49%;
	}
	#service .top-service-img {
    width: 180px !important;
}
}
/*500px以下*/
@media screen and (max-width: 500px){
	.s-00-m {
		top: 43%;
	}
	.home .s-01-m {
		top: calc(160 / 500 * 100vw);
	}
	.home .s-02-m {
    top: -18px;
}
		.home .s-03-m {
		top: calc(160 / 500 * 100vw);
	}
	.home .s-04-m, .home .s-05-m {
    bottom: calc(-29 / 500 * 100vw);
}
	#service .s-04-m, #service .s-05-m {
    bottom: calc(123 / 500 * 100vw);
}
	#service .top-service-img {
    width: 160px !important;
}
	#profile td, #recruit td {
    padding: 1rem 1rem;
}
}

/*480px以下*/
@media screen and (max-width: 480px){	
	.br-480 {
		display: block;
		line-height:0;
	}
	    .contents-txt .wp-block-column {
			display: block;
	}
	    .contents-txt-column p {
        text-align: center;
    }
	.contents-txt img {
        max-width: 100%;
    }
	     .contents-txt figure {
        width: 100%;
    }
	   .contents-txt-column {
        width: 100%;
    }
	    .contents-txt img {
        max-width: 200px;
			margin: 0 auto;
    }
	.contents-txt {
		padding: 0;
        margin-bottom: 56px !important;
		text-align: center;
	}
	.home .article h3 {
		margin-bottom: 2rem !important;
	}
	.post-5 .wp-block-cover {
    	min-height: 180px !important;
	}
	.wp-block-cover__inner-container {
		margin-top: 0.5rem;
	}
	.message p {
			width: 58%
	}
    .message {
        background-size: 160% auto;
        background-position: top 91px left -190px;
        height: 428px;
    }
	.recruit {
		background-size: 110% auto;
      background-position: top 172px left -18px;
	}
 .home .recruit {
        height: 44rem;
    }
	.message .wp-block-button__link {
		padding: 1rem 2rem !important;
	}
	.service-mobile {
		width: 100%;
		height: 555px;
		position: relative;
	}
	.service-mobile .mizutori {
		font-size: 1.8rem;
		letter-spacing: 0 !important;
		font-family: 'Archivo Black', sans-serif !important;
	}
	
	.service-mobile .center-title {
		font-size: 1.8rem;
		letter-spacing: 0 !important;
	}
	
	.service-mobile .wp-block-cover {
		background-size: 100% !important;
		min-height: calc(250 / 480 * 100vw) !important;
		width: 100% !important;
		margin-bottom: 0 !important;
	}
	.home .s-00-m {	
		position: absolute;
		top: 50%;
		left:  49%;
		width: 40% !important;
		transform: translate(-50%, -50%);
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
	}
img.top-service-img {
    width: 108% !important;
}
	.home .s-01-m, .home .s-02-m, .home .s-03-m, .home .s-04-m, .home .s-05-m {
		width: 43% !important;
	}
	.service-mobile .wp-block-image {
		width: 100% !important;
		margin: 0 !important;
	}
	
	.s-01-m p, .s-02-m p, .s-03-m p, .s-04-m p, .s-05-m p {
		padding: 2rem 1rem;
		font-size: 1.2rem !important;
	}
	.s-05-m p {
		padding: 1.8rem 1rem !important;
		line-height: 1.6rem !important;
	}

	.home .s-01-m {
		top: calc(145 / 480 * 100vw);
		left: calc(-48 / 480 * 100vw);
	}
	.home .s-02-m {
    position: absolute;
		top: -14px;
	}
	.home .s-03-m {
		top: calc(145/ 480 * 100vw);
		right: calc(-46 / 480 * 100vw);
	}
	.home .s-04-m {
		bottom: calc(-38 / 480 * 100vw);
		left: calc(1 / 480 * 100vw);
	}
	.home .s-05-m {
		bottom: calc(-38/ 480 * 100vw);
		right: calc(3 / 480 * 100vw);
	}
	.home .s-04-m p {
		padding: 1.6rem 1rem !important;
		line-height: 1.6rem !important;
		letter-spacing: 0.1rem !important;
	}
	#service .s-04-m p {
		padding: 1.6rem 1rem !important;
		line-height: 3.6rem !important;
		letter-spacing: 0 !important;
	}
	#post-5 .has-large-font-size {
    	padding-left: 0 !important;
	}
	.blackTxt {
    line-height: 2rem;
}
	#service .s-00-m {
    top: 42%;
}
			#service .service-mobile {
    height: 540px;
}
	#service .s-04-m, #service .s-05-m {
    bottom: calc(106 / 500 * 100vw);
}
	#service .top-service-img {
    width: 150px !important;
}
	    #footer #media_image-5 {
			width: 45%;
	}
}

/*455px以下*/
@media screen and (max-width: 455px){
	.home .s-04-m, .home .s-05-m {
		bottom: calc(-24 / 455 * 100vw);
	}
}
/*420px以下*/
@media screen and (max-width: 420px){
	.home .s-00-m {
		width: 38% !important;
		left: 47%;
	}
    img.top-service-img {
    width: 120% !important;
}
	#service .s-04-m, #service .s-05-m {
    bottom: calc(146 / 500 * 100vw);
}
	#service .top-service-img {
    width: 140px !important;
}
	    .message {
        background-position: top 91px left -180px;
    }
	.company-title {
    display: block !important;
    padding: 8px 2rem;
}
	.company-title .left p {
    font-size: 1.8rem;
    line-height: 20px;
}
	.company-title .right p {
    font-size: 3.2rem;
    text-align: left;
		line-height: 0;
}
}

/*400px以下*/
@media screen and (max-width: 400px){	

	.home .s-00-m {
    left: 45%;
}
	#service .s-00-m {
    top: 36%;
}
	    .message {
        background-position: top 91px left 68%;
    }
	#service .s-01-m {
    position: absolute;
    top: calc(197 / 680 * 100vw);
    left: calc(-31 / 680 * 100vw);
}
	#service .s-03-m {
    position: absolute;
    top: calc(197 / 680 * 100vw);
    right: calc(-12 / 680 * 100vw);
}
	#service .s-04-m, #service .s-05-m {
    bottom: calc(156 / 400 * 100vw);
}
	img.top-service-img {
    width: 126% !important;
}
	.home .s-02-m {
    top: 13px;
}
	.service .wp-block-image img {
    width: 94% !important;
}
	.home .s-01-m {
		top: calc(148 / 400 * 100vw);
		left: calc(-42 / 400 * 100vw);
	}
	.home .s-03-m {
		top: calc(148 / 400 * 100vw);
		right: calc(-43 / 400 * 100vw);
	}
	.home .s-04-m{
		bottom: calc(23 / 400 * 100vw);
	}
	.home .s-05-m {
		bottom: calc(23 / 400 * 100vw);
	}
	#service .top-service-img {
    width: 134px !important;
}
}
/*360px以下*/
@media screen and (max-width: 360px){	
	#service .top-service-img {
    width: 120px !important;
}
	#service .s-00-m {
    top: 33%;
}
	#service .s-01-m {
    position: absolute;
    top: calc(197 / 680 * 100vw);
    left: calc(-24 / 680 * 100vw);
}
	#service .s-03-m {
    position: absolute;
    top: calc(197 / 680 * 100vw);
    right: calc(-22 / 680 * 100vw);
}
	#service .s-04-m, #service .s-05-m {
    bottom: calc(268 / 500 * 100vw);
}
	#service .s-04-m {
    position: absolute;
		left: calc(60 / 680 * 100vw);
	}
	#service .s-05-m {
    right: calc(58 / 680 * 100vw);
}
	.home .s-00-m {
    left: 44%;
}
	img.top-service-img {
    width: 136% !important;
}
	.home .s-04-m, .home .s-05-m {
    bottom: calc(42 / 400 * 100vw);
}
		.home .s-02-m {
    top: 17px;
}
	}




/**message**/
.message-img {
  float: left;
	padding-top:20px;
  margin-right: 20px; 
  max-width: 500px;
  width: 50vw;
}
.message-img-right {
  float: right;
	padding-top: 20px;
  margin-left: 20px; 
  max-width: 500px;
  width: 50vw;
}
.message-txt {
  padding: 20px;
}

.other-member {
    margin-top: 10rem;
}
.other-member .company-staff {
    max-width: 800px;
    margin: 0 auto;
}
.right-message {
    padding-top: 3rem;
    font-weight: lighter;
}
.wp-image-2074, .wp-image-2075 {
	width: 100% !important;
}
.wp-image-2075, .wp-image-2074 {
    border: 1px solid;
}
.rec-btn-01 {
    width: 5%;
    height: 12%;
}
.rec-btn-02 {
    width: 196px;
    max-width: 36%;
}
.messageWrap, .serviceWrap {
	position: relative;
}
.rec-btn-01 {
    position: absolute;
    top: 80%;
    left: 5%;
}
.rec-btn-02 {
    position: absolute;
    top: 63%;
    left: 62%;
}
.rec-page-title {
    font-weight: bold;
    font-size: 2.4rem;
    line-height: 8rem;
}
.subTitle {
    font-weight: bold;
    font-size: 2.4rem;
    line-height: 8rem;
}
#recruit, .c, .right-c, #recruit .contents-wrapper, #recruit .recruit-wrap, .memberTitle, .company-staff, .company-staff-item {
    padding: 0;
}
.recruit-wrap {
    margin-bottom: 7rem !important;
}
.rec-btn-01 .fas.fa-chevron-circle-right  {
    font-size: 34px;
}

.rec-btn-02 a  {
    background: #3683b4;
    border-radius: 50px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    max-width: 260px;
    padding: 4px 25px;
    color: white;
	font-weight: bold;
    transition: 0.3s ease-in-out;
    font-weight: 500;
}
.rec-btn-01 a:hover, .rec-btn-02 a:hover {
   background: white !important;
    color: #276186 !important;
}

.subTitle {
	margin-top: 1rem ;
}
.memberTitle {
	margin-bottom: 2rem ;
	letter-spacing: 0.2rem;
	margin-top: 3rem;
}
@media screen and (max-width: 834px){ 
	.company-staff, .job-cate {
    display: block !important;
}
.company-staff img, .job-cate img {
    width: 350px !important;
    margin: 3rem auto;
}
	.staff-item, .staff-message {
    padding: 0 3rem;
}
	.left-photo img {
    width: 400px;
	}
	.staff-item {
    display: flex !important;
	}
.parent1,
.parent1,
.parent3 {
  flex-direction: column-reverse
}
.parent2 {
  flex-direction: column
}
}

.staff-message .staff-item-title {
    display: flex;
    align-items: center;
}
.staff-message .staff-item-title:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #666;
}
.staff-message .staff-item-title:after {
    margin-left: 1rem;
}
.staff-message {
    margin-top: 3rem;
}
.right-txt p{
	line-height: 2.6rem;
}
.staff-item {
	display: flex;
	width: 100%;
	    gap: 20px;
	margin-bottom: 5rem;
}
.staff-item-contents, .left-photo {
	width: 50%;	
		margin: 0 auto;
}
.left-photo {
	    padding: 3rem 0 0 0;
}
.staff-item-title {
    font-weight: bold;
    margin-top: 2rem;
	padding-bottom:1rem;
    font-size: 110%;
    letter-spacing: 2px;
	padding-top: 1rem;
}
.company-staff, .job-cate {
    display: flex;
    gap: 20px;
}
.clubBr, .clubBr02, .fitBr, .fitBr02, .supBr, .eduBr {
	display: none;
}
@media screen and (max-width: 1023px){
	.no-display {
		display:block;
	}
	.mobile-menu-buttons {
		flex-direction: row-reverse;
	}
}
@media screen and (max-width: 599px){
	.clubBr {
	display: block;
		font-size: 0;
}
	.clubBrNone {
	display: none;
}
	.page-child .wp-block-cover__inner-container {
    text-align: center;
}
}
@media screen and (max-width: 560px){
	.supBr {
	display: block;
		font-size: 0;
}
	.supBrNone {
		display: none;
	}
}
@media screen and (max-width: 500px){
	.eduBr {
	display: block;
		font-size: 0;
}
}
@media screen and (max-width: 480px){
	.fitBr {
	display: block;
		font-size: 0;
}
}
@media screen and (max-width: 460px){
	.clubBr02 {
	display: block;
		font-size: 0;
}
}
@media screen and (max-width: 380px){
	.fitBr02 {
	display: block;
		font-size: 0;
}
	.supBr02 {
		display: block;
		font-size: 0;
	}
}
.blackTxt {
	color: black !important;
}
.top-service-img {
    max-width: 300px !important;
}
.under-line p {
    margin-bottom: 0;
}
.smallTxt {
    font-size: 15px;
    text-align: center;
    line-height: 20px;
}
.recruit-wrap .video-container {
    margin: 0 auto;
}
.recLine {
    margin-top: 5rem;
}
.lineTxt {
    border: 3px solid #a4c6dc;
    padding: 2rem 3rem;
	margin-bottom: 3rem;
}
.lineImg img {
    margin: 0 auto;
    max-width: 240px;
}
@media screen and (max-width: 781px) {
.recLine {
    margin-top: 4rem;
    margin-left: 2rem;
    margin-right: 2rem;
}
	.staff-item {
	display: block;
	}
	.staff-item-contents, .left-photo {
	width: 100%;	
		margin: 0 auto;
}
	.message-img, .message-img-right {
    padding: 20px 20px 0;
    margin: 0 auto;
    width: 100%;
				max-width: none;
    float: none;
}
	
}

.entBtm {
    display: flex;
}
	.entBtm2{
		text-align: center;
}
	.entBtm p {
    margin: 0 auto 3rem;
}

	.entBtm .btn-blue, .entBtm2 .btn-blue {
    width: 226px;
}
.entBtm2 p:nth-child(3) {
    margin-bottom: 3rem !important;
}

@media screen and (max-width: 500px){ 
	.entBtm {
    display: block;
		text-align: center;
}
}


#post-5 .has-large-font-size {
	font-size: 3.6rem !important;
	letter-spacing: 1rem;
	font-weight: 600;
	padding-left: 10rem;
}
.logo-menu-button img {
  max-height: 18px;
	margin-top: 1rem;
}
.footer-mobile {
	padding: 0;
}
.footer-widgets {
	width: 100%;
}
.footer-bottom {
	display: none;
}
.footer-logo {
	margin: 0 !important;
	width: 60%;
}
.footer-right {
	width : 20%;
}
.footer-center {
	width : 60%;
}
.footer-right {
	width : 20%;
}
#footer ul {
	display: flex;
	flex-wrap: nowrap;
	font-size: 1.4rem;
	width: 20%;
	margin: 0 !important;
}
#footer li {
	width: 13rem;
	margin: 0 !important;
}
#footer ul li a {
	color: #333232;
	margin: 0 !important;
	width: 13rem;
}
.children {
	display: block !important;
	font-size: 1.3rem !important;
	line-height: 1rem;
	padding-left: 0 !important;
}
.children li {
		margin: 0 !important;
}
.widget-footer-center-title {
	display: none;
}

.footer-right .textwidget {
	font-size: 1.3rem;
	margin-top: 1rem;
}

/*1023px以下*/
@media screen and (max-width: 1023px){ 
	.footer-right .textwidget {
		display: flex;
	}
	.footer-right .textwidget p {
		margin-right: 2rem;
	}
}
/*834px以下*/
@media screen and (max-width: 834px){ 
	.footer-widgets {
		display: block;
	}
	.footer-bottom-logo .logo-image {
		display: none;
	}
	#footer {
		text-align: center;
	}
	#footer #media_image-5 {
		width: 70%;
		margin: 2rem auto;
	}
	#text-8 {
		margin-bottom: 0;
	}
	#text-8 p {
		font-size: 1.3rem ;
		line-height: 3rem;
	}
}

/*599px以下*/ @media screen and (max-width: 834px){
	.footer-widgets {
		display: none ;
	}
	.footer-bottom {
		display: block;
	}
	.logo {
		margin: 0 !important;
	}
	#post-5 .has-large-font-size {
	font-size: 2rem !important;
	letter-spacing: 0.4rem;
	font-weight: 600;
	padding-left: 1rem;
	margin-top: 0.5rem;
}
	.rec-btn-01 .fas.fa-chevron-circle-right {
    font-size: 26px;
}
}

/*480px以下*/
@media screen and (max-width: 480px){
	.news, .service, .recruit, .message-m {

		margin: 0 auto;
	}
	.home .article h2:before {
  	left:-185px;
}
	.home .article h3 {
		letter-spacing: 0 !important;
		font-size: 1.8rem;
	}
	.single-post .main .article-header .widget-single-content-top, .single-post .entry-content {
	margin: 0 2rem;
}
	.single-post .main .article-header .widget-single-content-top ul {
		padding-left: 0;
		font-size:1.3rem !important;
	}
	.fbc-items {
		padding-left: 0 !important;
	}
	.wrapper {
		padding: 0 1rem;
	}
	#service .wp-block-cover .t-margin {
		line-height: 2rem;
	}
	#service .wp-block-cover .button-block a {
		margin: 3rem 0 0 0 !important;
	}
	#service .under-line, #fitness  .under-line, #support .under-line, #education .under-line, #entertainment .under-line{
		font-size: 1.6rem !important;
		background:none;
		border-bottom: 1px solid #84B5EF;
		padding: 0 1rem;
	}
	.media-text {
		padding: 0 1rem;
	}
	#service .wp-block-media-text__media img {
		margin: -4rem 0 3rem 0 !important;
	}
	#service .img-n-margin .wp-block-media-text__media img {
		margin: 2rem 0 3rem 0 !important;
	}
	#profile th, #profile td, #recruit th, #recruit td  {
		display: block !important;
	}
	#profile th, #recruit th {
		border-left: 1px solid #ccc;
		border-right: 1px solid #ccc;
	}
	#profile td, #recruit td {
	width: 100%;
}
	#profile .top-th, #recruit .top-th {
		border-top: 1px solid #ccc;
	}
	#recruit p {
		margin-bottom: 2rem;
	}
	#recruit .this-page {
		display: none;	
	}
	#contact {
		padding: 0;
	}
	#contact .wpcf7 {
		margin-top: 3rem;
	}
	.su-tabs-nav span {
		font-size: 1.2rem !important;
	}

	/*Contact Form 7カスタマイズ*/
/*スマホContact Form 7カスタマイズ*/
	.wp-block-contact-form-7-contact-form-selector {
		margin-top: 3rem !important;
	}
	#contact .inquiry th, #contact  .inquiry td {
 display:block!important;
 width:100%!important;
 -webkit-box-sizing:border-box!important;
 -moz-box-sizing:border-box!important;
 box-sizing:border-box!important;
}
	#contact .inquiry th {
		text-align: left;
	}
	#contact th, #contact td {
		margin: 0 %;
	}
/* 必須・任意のサイズ調整 */	
#contact .inquiry .haveto, #contact .inquiry .any {
font-size:10px;
	}
		#contact .spam-design {
    width: 100%;
	}
	/*チェックボックス横並び*/
#contact span.wpcf7-list-item {
display:table;
}
	.service-mobile .mizutori {
		font-size: 1.6rem;
	}
	
	#post-5 .service-mobile .has-large-font-size {
		font-size: 1.4rem !important;
	}
.service-mobile .wp-block-cover {
    padding: 0 !important;
}
	
