@charset "utf-8";
/*
Theme Name: doclabo-child
Template: doclabo
Version: 202506052011
*/


/*--------------------------------------------

 フォント（'Zen Maru Gothic'）
 
-------------------------------------------- */

h4.cb_catch.rich_font_type2, h3.catch.rich_font_type3, h1.title.rich_font_type2, h3.title.rich_font, h2.sub_title.rich_font_type2 span, h3.headline.rich_font, h3.top_headline.rich_font_type2, h3.cb_headline.rich_font_type2, .post_content, #next_prev_post, .rich_font_type3 {
font-family: 'Zen Maru Gothic', sans-serif !important;
font-style: normal !important;
letter-spacing: 1px;
}

.access_content2 .logo_area .logo, #header_logo .logo {
    font-weight: 700;
}

.q_underline.is-active {
    background-position: -100% 1.11em !important;
}

.q_underline {
    background-size: 200% 0.3em !important;
}

/*--------------------------------------------

 共通
 
-------------------------------------------- */
body {
font-family: 'Zen Maru Gothic', sans-serif !important;
font-style: normal !important;
}

.main_color1 {color: #e3357a;}
.main_color2 {color: #e3357a;}
.main_color3 {color: #e3357a;}

.text_red {color: #f44336;}


.flex_end {justify-content: flex-end;}

/* トップページ　項目のタイトル部分 */
div#cb_content_topcon h3.cb_headline.rich_font_type2,
div#cb_content_features h3.cb_headline.rich_font_type2,
div#cb_content_overview h3.cb_headline.rich_font_type2 {
    font-size: 14px;
}

div#cb_content_topcon h3.cb_headline.rich_font_type2,
div#cb_content_features h3.cb_headline.rich_font_type2 {
    color: #e3357a;
}

div#cb_content_overview h3.cb_headline.rich_font_type2 {
    color: #e3357a;
}

div#cb_content_topcon h4.cb_catch.rich_font_type2,
div#cb_content_features h4.cb_catch.rich_font_type2,
div#cb_content_overview h4.cb_catch.rich_font_type2 {
	font-size: 38px;
}

div#cb_content_topcon h4.cb_catch.rich_font_type2 {
	letter-spacing: 4px;
}

div#cb_content_topcon p.cb_desc,
div#cb_content_features p.cb_desc,
div#cb_content_overview p.cb_desc {
	margin: -16px 0 110px 0;
	padding: 0 20px;
}

/* トップページ　ボタン装飾 */
#cb_content_overview .link_button a {
    color: #ffffff;
    background: #f3ce44;
}

#cb_content_overview .link_button a:hover {
    background: #ffe47e;
}

/* ブログ・お知らせ詳細ページ　前の記事&次の記事 */
#next_prev_post .title {
    display: none!important;
}
@media screen and (min-width: 1101px) {
	#next_prev_post .item {
		height: 60px;
	}
	
	#next_prev_post .nav {
		display: block!important;
		position: relative;
		height: 60px;
		line-height: 60px;
		text-align: center;
	}
}

@media screen and (max-width: 750px) {
	div#cb_content_topcon h3.cb_headline.rich_font_type2,
	div#cb_content_features h3.cb_headline.rich_font_type2,
	div#cb_content_overview h3.cb_headline.rich_font_type2 {
		font-size: 12px;
	}
	
	div#cb_content_topcon h4.cb_catch.rich_font_type2,
	div#cb_content_features h4.cb_catch.rich_font_type2,
	div#cb_content_overview h4.cb_catch.rich_font_type2 {
		font-size: 24px;
	}
}

@media screen and (max-width: 1100px) and (min-width: 751px) {
div#cb_content_topcon p.cb_desc,
div#cb_content_features p.cb_desc,
div#cb_content_overview p.cb_desc {
	margin-bottom: 60px;
}
}

@media screen and (max-width: 750px) and (min-width: 501px) {
div#cb_content_topcon p.cb_desc,
div#cb_content_features p.cb_desc,
div#cb_content_overview p.cb_desc {
	margin-bottom: 40px;
}
	
}

@media screen and (max-width: 500px) {
div#cb_content_topcon p.cb_desc,
div#cb_content_features p.cb_desc,
div#cb_content_overview p.cb_desc {
	margin-bottom: 30px;
}

}


/*--------------------------------------------

 ロゴ
 
-------------------------------------------- */
/* 共通 */
#header_logo {
    top: 45%!important;
	text-align: center;
}

#header_logo .logo a:hover {
	opacity: 0.6;
}

h5.footer_about_title {
    line-height: 2.5rem;
}

span.pc_logo_text span:nth-child(11):before,
span.mobile_logo_text span:nth-child(11):before,
h5.footer_about_title span:nth-child(11):before {
	content: '';
	display: block;
}


span.pc_logo_text span:nth-child(11),
span.mobile_logo_text span:nth-child(11),
h5.footer_about_title span:nth-child(11)
{ color: #e3357a; }
 
span.pc_logo_text span:nth-child(12),
span.mobile_logo_text span:nth-child(12),
h5.footer_about_title span:nth-child(12)
{ color: #e3357a; }

span.pc_logo_text span:nth-child(13),
span.mobile_logo_text span:nth-child(13),
h5.footer_about_title span:nth-child(13)
{ color: #e3357a; }

span.pc_logo_text span:nth-child(14),
span.mobile_logo_text span:nth-child(14),
h5.footer_about_title span:nth-child(14)
{ color: #e3357a; }

span.pc_logo_text span:nth-child(15),
span.mobile_logo_text span:nth-child(15),
h5.footer_about_title span:nth-child(15)
{ color: #e3357a; }

span.pc_logo_text span:nth-child(16),
span.mobile_logo_text span:nth-child(16),
h5.footer_about_title span:nth-child(16)
{ color: #e3357a; }

/* PCのみ */
span.pc_logo_text span:nth-child(1),
span.pc_logo_text span:nth-child(2),
span.pc_logo_text span:nth-child(3),
span.pc_logo_text span:nth-child(4),
span.pc_logo_text span:nth-child(5),
span.pc_logo_text span:nth-child(6),
span.pc_logo_text span:nth-child(7),
span.pc_logo_text span:nth-child(8),
span.pc_logo_text span:nth-child(9),
span.pc_logo_text span:nth-child(10) {
	color: #333;
	font-size: 12px;
	padding: 0 2px;
}


span.pc_logo_text span:nth-child(11),
span.pc_logo_text span:nth-child(12),
span.pc_logo_text span:nth-child(13),
span.pc_logo_text span:nth-child(14),
span.pc_logo_text span:nth-child(15),
span.pc_logo_text span:nth-child(16) {
	padding: 0 1px;
	font-weight: bold;
}

/* SPのみ */
span.mobile_logo_text span:nth-child(1),
span.mobile_logo_text span:nth-child(2),
span.mobile_logo_text span:nth-child(3),
span.mobile_logo_text span:nth-child(4),
span.mobile_logo_text span:nth-child(5),
span.mobile_logo_text span:nth-child(6),
span.mobile_logo_text span:nth-child(7),
span.mobile_logo_text span:nth-child(8),
span.mobile_logo_text span:nth-child(9),
span.mobile_logo_text span:nth-child(10) {
	color: #333;
	font-size: 10px;
	padding: 0 1px;
}


span.mobile_logo_text span:nth-child(11),
span.mobile_logo_text span:nth-child(12),
span.mobile_logo_text span:nth-child(13),
span.mobile_logo_text span:nth-child(14),
span.mobile_logo_text span:nth-child(15),
span.mobile_logo_text span:nth-child(16) {
	padding: 0 1px;
	font-weight: bold;
}


/*--------------------------------------------

 TOP #cb_content_topcon
 
-------------------------------------------- */
div#cb_content_topcon .cb_contents_inner {
	padding: 30px 0 50px;
}

div#cb_content_topcon p.cb_desc {
    font-size: 28px;
    font-weight: 700;
    line-height: 2;
	margin-bottom: 0;
	padding: 25px 0 0;
}

p.cb_desc2 {
    font-size: 120%;
    font-weight: 700;
	margin: 0;
}

div#cb_content_topcon .topcon-sousyoku-line {
	max-width: 800px;
	margin: 20px auto;
}

div#cb_content_topcon .top_topcon_wrap {
    text-align: center;
}

div#cb_content_topcon .top_topcon_wrap h5 {
	font-size: 24px;
}

.big_trsl,
.middle_trsl,
.small_trsl
{ display: none;}

@media screen and (min-width: 1001px) {
	.big_trsl {
		display: block;
	}
}

@media screen and (min-width: 501px) and (max-width: 1000px) {
	.middle_trsl {
		display: block;
	}
}

@media screen and (max-width: 500px) {
	.small_trsl {
		display: block;
	}
}

@media screen and (max-width: 750px) {
	div#cb_content_topcon p.cb_desc {
		font-size: 16px;
	}
	
	div#cb_content_topcon .top_topcon_wrap h5 {
		font-size: 16px;
	}
}


/*--------------------------------------------

 TOP　３つの特徴 #cb_content_features
 
-------------------------------------------- */
div.index_free_space.cb_contents div#cb_content_features {
    padding-top: 0;
}

div.index_service_list#cb_content_3step {
    padding-top: 0;
}

.top_3step_wrap .step_box {
	height: 250px;
    margin: 0 0 80px;
    position: relative;
}
.top_3step_wrap .step_box:last-child {
	margin-bottom: 0;
}

.top_3step_wrap .step_box .step_contents {
    display: flex;
}

.top_3step_wrap .step_box .step_contents .step_title {
    width: 100px;
    position: relative;
}

.top_3step_wrap .step_box .step_contents .step_text {
    width: 450px;
    line-height: 2;
	margin-top: -5px;
}

.top_3step_wrap .step_box .step_contents .step_title span.step_number {
    font-size: 40px;
    position: absolute;
    left: -50px;
	z-index: 2;
}

.top_3step_wrap .step_box .step_contents .step_title h5.step_title_text {
    writing-mode: vertical-rl;
    margin: 0!important;
    font-size: 35px;
    letter-spacing: 2px;
}

.top_3step_wrap .step_box .step_img {
    position: absolute;
    top: 0;
    width: 570px;
}

.top_3step_wrap .step_box .step_img_right {
    left: 650px;
}

.top_3step_wrap .step_box .step_img_left {
    right: 650px;
}

.top_3step_wrap .step_box .step_contents .step_title:after {
    content: '';
    width: 50px;
    height: 50px;
    animation: fluidrotate-news 15s ease 0s infinite;
    position: absolute;
    top: 20px;
    left: -60px;
    overflow: hidden;
}

.top_3step_wrap .step_box:nth-child(1) .step_contents .step_title:after {
    background: #e3357a;
}
.top_3step_wrap .step_box:nth-child(2) .step_contents .step_title:after {
    background: #e3357a;
}
.top_3step_wrap .step_box:nth-child(3) .step_contents .step_title:after {
    background: #e3357a;
}

@keyframes fluidrotate-news {  
    
0%, 100% {
    border-radius: 63% 37% 54% 46%/55% 48% 52% 45%;
}
14% {
    border-radius: 40% 60% 54% 46%/49% 60% 40% 51%;
}
28% {
    border-radius: 54% 46% 38% 62%/49% 70% 30% 51%;
}
42% {
    border-radius: 61% 39% 55% 45%/61% 38% 62% 39%;
}
56% {
    border-radius: 61% 39% 67% 33%/70% 50% 50% 30%;
}
70% {
    border-radius: 50% 50% 34% 66%/56% 68% 32% 44%;
}
84% {
    border-radius: 46% 54% 50% 50%/35% 61% 39% 65%;
}
}

@media screen and (max-width: 1100px) {
	.top_3step_wrap .step_box {
		height: auto!important;
	}
	
	.top_3step_wrap .step_box .step_contents {
		justify-content: center;
		padding-left: 50px;
		margin-bottom: 20px;
	}
	
	.top_3step_wrap .step_box .step_contents .step_title {
		max-width: 40px;
		min-width: 40px;
		width: 15%!important;
		padding-right: 10px;
		display: block;
	}
	
	.top_3step_wrap .step_box .step_contents .step_text {
		width: auto!important;
	}
	
	.top_3step_wrap .step_box .step_img {
		position: initial!important;
		width: auto!important;
	}
}

@media screen and (max-width: 750px) {
	.top_3step_wrap .step_box {
		margin: 0 0 40px;
	}
	.top_3step_wrap .step_box .step_contents .step_title h5.step_title_text {
		font-size: 24px;
	}
	.top_3step_wrap .step_box .step_contents .step_title span.step_number {
		font-size: 30px;
		left: -30px;
	}
	.top_3step_wrap .step_box .step_contents .step_title:after {
		width: 40px;
		height: 40px;
		top: 10px;
		left: -40px;
	}
	.top_3step_wrap .step_box .step_contents {
		padding-left: 40px;
	}
}

/*--------------------------------------------

 TOP　施設概要 #cb_content_overview
 
-------------------------------------------- */
div.index_free_space.cb_contents div#cb_content_overview {
    padding-top: 0;
}

div.index_free_space.cb_contents #cb_content_overview .item h3 {
	font-size: 16px;
    font-weight: 500;
    letter-spacing: 2px;
	margin: 0;
}

.index_service_list .service_list .item .desc {
    font-size: 12px;
}

.index_service_list .service_list .item .desc span font {
    font-size: 12px;
}

@media screen and (max-width: 450px) {
	.index_service_list .service_list .item .desc {
		max-height: 5em;
	}
}

/*--------------------------------------------

 TOP　お知らせ
 
-------------------------------------------- */
@media screen and (max-width: 550px) {
	body.home .slick-slide {
		min-height: 45px;
	}
}


/*--------------------------------------------

 お知らせ　一覧・詳細ページ　共通
 
-------------------------------------------- */
#news_list .title_area {
	width: 100%;
    border-left: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
}


#news_list {
    display: flex;
    flex-flow: row wrap;
	justify-content: space-between;
}

#news_list .item {
    width: 49%;
    width: -webkit-calc(98% / 2);
    width: calc(98% / 2);
    margin-bottom: 2%;
}



#news_list.clearfix::after {
    display: none;
}

@media screen and (min-width: 1252px) {
	#news_list .item:nth-last-child(-n+2) {
		margin-bottom: 0;
	}
}

@media screen and (max-width: 1251px) {
	body.post-type-archive-news #main_col {
		margin: 100px 0 100px 0;
	}
	
	#news_list {
		display: block;
	}
	
	#news_list .item {
		width: 100%;
	}
	
	body.post-type-archive-news #news_list .title_area,
	body.single-news #news_list .title_area {
		width: 100%;
	}
	
	body.single-news #news_list .item {
		display: inline-block;
	}
}

@media screen and (max-width: 750px) {
	body.post-type-archive-news #main_col {
		margin: 50px 0 50px 0;
	}
	
	#news_list {
		padding: 0 20px;
	}
	
	body.single-news div#bread_crumb {
		margin-bottom: 20px;
	}
}


/*--------------------------------------------

 aboutについてページ
 
-------------------------------------------- */
body.page-template-page-design2 div.design2_content1 .post_content.clearfix.message {
    /* display: none; */
}

body.page-template-page-design2 .image {
	background-position: center center!important;
}

/* けんぢさん署名の並び順変更 */
body.page-template-page-design2 .user_info .name_area {
    display: flex;
    flex-direction: column;
}
body.page-template-page-design2 .user_info .name_area:after {
    content: 'Mariko Takushi';
    font-size: 14px;
    color: #666;
    order: 4;
    margin-top: 5px;
}
body.page-template-page-design2 .user_info .name_area p.category {
    order: 1;
    margin: 0;
}
body.page-template-page-design2 .user_info .name_area h3.name {
    order: 3;
}
/*body.page-template-page-design2 .user_info .name_area h3.name:after {
    content: '（役職）';
	font-size: 75%;
	vertical-align: 1px;
}*/
body.page-template-page-design2 .user_info .name_area p.sub_title {
	color: #000;
	order: 2;
	margin: 10px 0 20px;
}

@media screen and (max-width: 750px) {
	body.page-template-page-design2 .user_info .name_area:after {
		font-size: 12px;
	}
}


/*--------------------------------------------

 TOP　ご利用の流れ
 
-------------------------------------------- */
@media screen and (max-width: 750px) {
	.index_message .message_area.layout_type2 .content {
		border-right: 1px solid #ddd;
	}
}


/*--------------------------------------------

 ご利用の流れページ
 
-------------------------------------------- */
.flow_wrap {
    margin-bottom: 100px;
}

.flow_wrap:last-child {
    margin-bottom: 0;
}

.flow_wrap p {
    line-height: 1.6;
}

h2.flowpage_h2 {
    text-align: center;
	margin-bottom: 80px!important;
}

h2.flowpage_h2 span {
    display: block;
    font-size: 14px;
}

.flow_wrap .flow_inner,.flow_wrap .day_inner {
    display: flex;
    justify-content: space-between;
}

.flow_inner .flow_box,.day_inner .day_box {
    width: 45%;
    width: -webkit-calc(90% / 2);
    width: calc(90% / 2);
    margin-bottom: 2%;
	position: relative;
}

.flow_inner .flow_box h3,
.flow_inner .flow_box .flow_item_wrap,
.flow_box .start_using {
    position: relative;
    z-index: 2;
}

.flow_inner .flow_box:after {
    content: '';
    border-right: 2px;
    height: 100%;
    display: block;
    border-left-style: dotted;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}

.flow_inner .flow_box h3,.fee_inner .fee_box h3 {
    font-size: 20px;
    color: #ffffff;
    text-align: center;
	letter-spacing: 1.6px;
    padding: 20px;
	margin-bottom: 60px;
    border-radius: 60px;
}

.flow_inner .flow_box h3 span,
.fee_inner .fee_box h3 span{
    font-size: 130%;
}

.flow_box .flow_item {
    padding: 40px;
    margin-bottom: 40px;
}

.flow_box .flow_item:last-child {
    margin-bottom: 0;
}

.flow_box .flow_item h4 {
    font-size: 18px;
    text-align: center;
	letter-spacing: 1.6px;
}

.flow_box .start_using {
    color: #ffffff;
    padding: 40px;
    margin-top: 40px;
}

.flow_box .start_using h4 {
    font-size: 18px;
    text-align: center;
    letter-spacing: 1.6px;
}

.fee_inner .fee_box h3 {
    max-width: 410px;
    margin: 0 auto 40px;
}

.fee_item_wrap table td.td_en {
    text-align: right;
}

.fee_item_wrap table td.td_center {
    text-align: center;
}

.fee_item_wrap table td {
    vertical-align: middle;
}

.fee_inner .fee_box {
    margin-bottom: 80px;
}
.fee_inner .fee_box:last-child {
    margin-bottom: 0;
}


/* 「受給者証のある方」の装飾 */
.flow_inner .proof_have h3,
.fee_inner .proof_have h3{
    background: #43c997;
}
.flow_inner .proof_have .flow_item {
    border: 3px solid #43c997;
    background: #f0fff9;
}
.flow_inner .proof_have .start_using {
    background: #43c997;
}
.flow_inner .flow_box.proof_have:after {
    border-color: #43c997;
}

.flow_inner .flow_box.proof_have.tensenao:after {
    border-color: #5ba6ed!important;
}


/* 「受給者証のない方」の装飾 */
.flow_inner .proof_none h3,.fee_inner .proof_none h3 {
    background: #F49C73;
}
.flow_inner .proof_none .flow_item {
    border: 3px solid #F49C73;
    background: #fff8f4;
}
.flow_inner .proof_none .start_using {
    background: #F49C73;
}
.flow_inner .flow_box.proof_none:after {
    border-color: #F49C73;
}


.day_inner .day_box .day_item_wrap 
 .post_text_inner {
    padding: 40px;
}

.day_inner .day_box .day_item_wrap h3 {
    font-size: 20px;
    color: #ffffff;
    text-align: center;
    letter-spacing: 1.6px;
    padding: 20px;
	margin: 0;
}


/* 「児童発達支援」の装飾 */
.day_inner .day_box.children_student {
    border: 2px solid #5ba6ed;
}
.day_inner .day_box.children_student h3 {
    background: #5ba6ed;
}


/* 「放課後等デイサービス」の装飾 */
.day_inner .day_box.children_after_school {
    border: 2px solid #43c997;
}
.day_inner .day_box.children_after_school h3 {
    background: #43c997;
}


@media screen and (max-width: 750px) {
	.flow_wrap {
		margin-bottom: 50px;
	}
	
	h2.flowpage_h2 {
		margin-bottom: 40px!important;
	}	
	
	.flow_wrap .flow_inner,
	.flow_wrap .day_inner {
		display: block;
	}
	
	.fee_inner .fee_box {
		margin-bottom: 40px;
	}
	
	.flow_inner .flow_box, .day_inner .day_box {
		width: 100%;
		margin-bottom: 40px;
	}
	
	.flow_inner .flow_box h3, .fee_inner .fee_box h3 {
		font-size: 16px;
		padding: 10px;
		margin-bottom: 30px;
	}
	
	.flow_box .flow_item {
		padding: 20px;
		margin-bottom: 20px;
	}
	
	.flow_box .flow_item h4 {
		font-size: 16px;
	}
	
	.flow_box .start_using {
		padding: 20px;
		margin-top: 20px;
	}
	
	.day_inner .day_box .day_item_wrap h3 {
		font-size: 16px;
		padding: 10px;
	}
	
	.day_inner .day_box .day_item_wrap .post_text_inner {
		padding: 20px;
	}
	
	.flow_inner .flow_box .flow_item_wrap {
		height: auto!important;
	}
}

@media screen and (max-width: 350px) {
	.fee_inner .fee_item_wrap {
		font-size: 12px;
	}
}


/*--------------------------------------------

 アクセスページ
 
-------------------------------------------- */
.access_content2.num1 .contact .headline,
.access_content2.num1 .tel .headline {
    color: #000000!important;
}

.access_content2 .info_area h3.headline {
    color: #000!important;
}

.access_content2 .number_area {
    margin-top: 10px;
}

.access_content2 .number_area .page_access_tel {
    margin-top: 20px;
}

.access_content2 .number_area .page_access_tel p.page_access_name {
	font-size: 14px;
    letter-spacing: 1px;
}

.access_content2 .number_area p.tel_desc {
    margin-top: 20px;
}

.access_content2 .bottom_address {
	margin-top: 5px;
}

.access_content2 .logo_area {
	margin-top: 30px;
}


/*--------------------------------------------

 お問い合わせページ
 採用情報ページ
 
-------------------------------------------- */
.asterisk {
    color: #f44336;
}

small.smfontsize {
    font-size: 80%;
}


span.wpcf7-checkbox,
span.wpcf7-radio {
	display: flex;
	flex-wrap: wrap;
}

.wpcf7 .wpcf7-submit,
.wpcf7 .wpcf7-previous {
    background-color: #5ba6ed!important;
}
.wpcf7 .wpcf7-submit:hover,
.wpcf7 .wpcf7-previous:hover {
    background-color: #70cdff!important;
}

/*--------------------------------------------

 TOPブログ
  
-------------------------------------------- */
body.home .index_post_slider .category a {
    padding: 0 20px;
    min-width: 110px;
    width: auto;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

@media screen and (max-width: 550px) {
	body.home .index_post_slider .category a {
		top: 85px;
		left: 15px;
		height: 30px;
		line-height: 30px;
		font-size: 10px;
		min-width: 90px;
		padding: 0 15px;
		display: inline-block;
	}
}

/*--------------------------------------------

 ブログ詳細ページ
 
-------------------------------------------- */
body.single-post .thumbnail_image {
    margin: 0 0 47px;
    z-index: 1;
}

body.single-post .thumbnail_image img {
    width: 100%;
}

#post_title_area .category a {
    top: 0;
}

@media screen and (max-width: 1251px) and (min-width: 750px) {
	#post_title_area .category a {
		top: 0!important;
	}
}

@media screen and (max-width: 750px) and (min-width: 551px) {
	#post_title_area .category a {
		top: 0!important;
	}
}

@media screen and (max-width: 550px) {
	body.single-post .thumbnail_image {
		margin-bottom: 25px;
	}
	
	#post_title_area .category a {
		top: 0!important;
	}
}


/*--------------------------------------------

 よくある質問ページ
 
-------------------------------------------- */
.faq_list .question:after {
	top: 50%!important;
	-ms-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}


/*--------------------------------------------

 ロゴ2
 
-------------------------------------------- */
/* ▼フッター▼ */
h5.footer_about_title2 span:nth-child(1),
h5.footer_about_title2 span:nth-child(2),
h5.footer_about_title2 span:nth-child(3),
h5.footer_about_title2 span:nth-child(4),
h5.footer_about_title2 span:nth-child(5),
h5.footer_about_title2 span:nth-child(6),
h5.footer_about_title2 span:nth-child(7),
h5.footer_about_title2 span:nth-child(8) {
	padding: 0 1px;
	font-size: 40px;
	font-weight: bold;
}

h5.footer_about_title2 span:nth-child(9),
h5.footer_about_title2 span:nth-child(10),
h5.footer_about_title2 span:nth-child(11) {
	padding: 0 1px;
	font-size: 40px;
	font-weight: bold;
}
/* ▲フッター▲ */

/* ▼アクセスページ▼ */
.logo_area.footer_about_title2 span:nth-child(1),
.logo_area.footer_about_title2 span:nth-child(2),
.logo_area.footer_about_title2 span:nth-child(3),
.logo_area.footer_about_title2 span:nth-child(4),
.logo_area.footer_about_title2 span:nth-child(5),
.logo_area.footer_about_title2 span:nth-child(6),
.logo_area.footer_about_title2 span:nth-child(7),
.logo_area.footer_about_title2 span:nth-child(8) {
	padding: 0 1px;
	font-size: 32px;
	font-weight: bold;
}

.logo_area.footer_about_title2 span:nth-child(9),
.logo_area.footer_about_title2 span:nth-child(10),
.logo_area.footer_about_title2 span:nth-child(11) {
	padding: 0 1px;
	font-size: 32px;
	font-weight: bold;
}
/* ▲アクセスページ▲ */

h5.footer_about_title2 span:nth-child(9):before,
.logo_area.footer_about_title2 span:nth-child(9):before {
	content: '';
	display: block;
}


h5.footer_about_title2 span:nth-child(1),
.logo_area.footer_about_title2 span:nth-child(1)
{ color: #f80555; }
 
h5.footer_about_title2 span:nth-child(2),
.logo_area.footer_about_title2 span:nth-child(2)
{ color: #fe8503; }

h5.footer_about_title2 span:nth-child(3),
.logo_area.footer_about_title2 span:nth-child(3)
{ color: #fcc709; }
 
h5.footer_about_title2 span:nth-child(4),
.logo_area.footer_about_title2 span:nth-child(4)
{ color: #83d92e; }

h5.footer_about_title2 span:nth-child(5),
.logo_area.footer_about_title2 span:nth-child(5)
{ color: #319b37; }

h5.footer_about_title2 span:nth-child(6),
.logo_area.footer_about_title2 span:nth-child(6)
{ color: #23d7e5; }

h5.footer_about_title2 span:nth-child(7),
.logo_area.footer_about_title2 span:nth-child(7)
{ color: #3031ee; }

h5.footer_about_title2 span:nth-child(8),
.logo_area.footer_about_title2 span:nth-child(8)
{ color: #9030d2; }

h5.footer_about_title2 span:nth-child(9),
.logo_area.footer_about_title2 span:nth-child(9),
h5.footer_about_title2 span:nth-child(10),
.logo_area.footer_about_title2 span:nth-child(10),
h5.footer_about_title2 span:nth-child(11),
.logo_area.footer_about_title2 span:nth-child(11)
{ color: #319b37; }


@media screen and (max-width: 750px) {
/* ▼アクセスページ▼ */
.logo_area.footer_about_title2 span:nth-child(1),
.logo_area.footer_about_title2 span:nth-child(2),
.logo_area.footer_about_title2 span:nth-child(3),
.logo_area.footer_about_title2 span:nth-child(4),
.logo_area.footer_about_title2 span:nth-child(5),
.logo_area.footer_about_title2 span:nth-child(6),
.logo_area.footer_about_title2 span:nth-child(7),
.logo_area.footer_about_title2 span:nth-child(8),
.logo_area.footer_about_title2 span:nth-child(9),
.logo_area.footer_about_title2 span:nth-child(10),
.logo_area.footer_about_title2 span:nth-child(11) {
	font-size: 24px;
}
/* ▲アクセスページ▲ */
	
}

/*--------------------------------------------

 フッター会社概要 #footer_about_wrap
 
-------------------------------------------- */
h5.footer_about_title span:nth-child(1),
h5.footer_about_title span:nth-child(2),
h5.footer_about_title span:nth-child(3),
h5.footer_about_title span:nth-child(4),
h5.footer_about_title span:nth-child(5),
h5.footer_about_title span:nth-child(6),
h5.footer_about_title span:nth-child(7),
h5.footer_about_title span:nth-child(8),
h5.footer_about_title span:nth-child(9),
h5.footer_about_title span:nth-child(10) {
	color: #333;
	font-size: 16px;
	padding: 0 2px;
}


h5.footer_about_title span:nth-child(11),
h5.footer_about_title span:nth-child(12),
h5.footer_about_title span:nth-child(13),
h5.footer_about_title span:nth-child(14),
h5.footer_about_title span:nth-child(15),
h5.footer_about_title span:nth-child(16) {
	padding: 0 1px;
	font-size: 40px;
	font-weight: bold;
}

#footer_about_wrap p.footer_about_desc {
    margin-top: 10px;
    line-height: 1.6;
    letter-spacing: 1.5px;
}

p.footer_privacy_text {
    margin-top: 20px;
	font-size: 90%;
}


div#footer_about_wrap {
    display: flex;
    justify-content: space-between;
    flex: auto;
    margin: 0 auto;
}

@media screen and (min-width: 751px) {
	div#footer_about_wrap {
		/*max-width: 700px; ２つにする際は700pxだけにする。（下の３つは削除）*/
		max-width: 100%;
        margin: 0 auto;
        display: block;
	}

}

@media screen and (max-width: 750px) {
	div#footer_about_wrap {
		display: block;
	}
	div#footer_about_wrap .footer_about_contents:nth-child(1) {
		margin-bottom: 40px;
	}
}

/*--------------------------------------------

 フッターエリア
 
-------------------------------------------- */
#footer_data.no_schedule {
	width: auto;
}

#footer_data {
    display: block;
    flex: auto;
}

#footer_data .item {
    display: flex;
    justify-content: space-between;
    flex: auto;
}

#footer_data .item.left .sub_item {
    width: 49%;
}

#footer_data .item.left .sub_item:last-of-type {
    margin: 0;
}

#footer_data .item:first-of-type {
    margin: 0;
}



#footer_data .item.left .sub_item#footer_tel {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
}

#footer_data .item.left .sub_item .info_area .headline {
    position: initial;
    padding: 0;
	margin-bottom: 0!important;
    transform: none;
}

#footer_data .item.left .sub_item .info_area .tel_desc {
    position: initial;
}

#footer_data .item.left .sub_item .number_area {
	text-align: center;
    position: initial;
    width: 50%;
	padding: 0;
}

#footer_data .item.left .sub_item .info_area {
    width: 50%;
    text-align: center;
}

#footer_data .item.left .sub_item .number_area p.sisetsu_name {
    text-align: center;
	letter-spacing: 1px;
    margin-bottom: 5px;
	font-size: 90%;
}

#footer_data .item.left .sub_item .number_area p.sisetsu_name.top_line {
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid #ccc;
}

@media screen and (max-width: 1251px) {
	#footer_data .item.left .sub_item#footer_tel {
		display: block;
	}
	#footer_data .item.left .sub_item .number_area {
		width: 90%;
		margin: 0 auto;
	}
	
	#footer_data .item.left .sub_item .info_area {
		width: 100%;
	}
	
	#footer_data .item.left .sub_item .info_area .tel_desc {
		margin-bottom: 10px;
	}
}



/* タイムテーブル */
div#time_table {
    display: flex;
    justify-content: space-between;
    margin-top: 20px;
}

div#time_table .time_table_item {
	/*width: 49%; ２列にする場合は49%を有効*/
	width: 100%;
}

div#time_table table {
    font-size: 14px;
    background: #fff;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

div#time_table .time_table_item:nth-child(1) table {
    border-color: #e3357a;
    border: 3px solid #e3357a;
}
div#time_table .time_table_item:nth-child(2) table {
    border-color: #43c997;
    border: 3px solid #43c997;
}

div#time_table table td {
	font-size: 16px;
    text-align: center;
    vertical-align: middle;
    padding: 15px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
	position: relative;
}

div#time_table .time_table_item:nth-child(1) table td {
    color: #e3357a;
    border-color: #e3357a;
    border: 1px solid #e3357a;
}

div#time_table .time_table_item:nth-child(2) table td {
    color: #3abb8b;
    border-color: #43c997;
    border: 1px solid #43c997;
}

.time_table_hosoku {
    margin-top: 5px;
    text-align: right;
}

.time_table_hosoku p {
	color: #ffffff;
	font-weight: bold;
	line-height: 1.3;
	display: inline-block;
	padding: 10px;
	background: #43c997;
}

.time_table_hosoku p.jidou_hosoku {
	background: #e3357a;
}
.time_table_hosoku p.houkago_hosoku {
	background: #43c997;
}

div#time_table table td span {
    font-size: 14px;
    position: absolute;
    top: 3px;
    right: 5px;
    font-weight: bold;
}

div#time_table .time_table_item .time_table_tr {
    line-height: 1.4;
}


@media screen and (max-width: 1251px) {
	#footer_data .item.left .sub_item {
		width: 100%;
	}
	
	div#time_table {
		display: block;
	}
	
	div#time_table .time_table_item {
		width: 100%;
	}
	
	div#time_table .time_table_item:first-child {
		margin-bottom: 10px;
	}
	
	.time_table_hosoku {
		/* text-align: left; */
		overflow: hidden;
	}
	
	.time_table_hosoku p {
		float: left;
		clear: both;
	}
	
	#footer_data {
		margin-top: 0!important;
	}
}

@media screen and (max-width: 450px) {
	div#time_table table td {
		font-size: 12px;
		padding: 10px 5px;
	}
	
	div#time_table table td span {
		font-size: 10px;
		top: 3px;
		right: 3px;
	}
	
	.time_table_hosoku p {
		font-size: 12px;
	}
}


/*--------------------------------------------

 フッターSNS
 
-------------------------------------------- */
/* ブログアイコン（元はピンタレスト） */
#footer_sns li.pinterest a:before {
    content: '\f044';
    font-family: "Font Awesome 5 Free";
}


/*--------------------------------------------

 まずは体験するボタン
 
-------------------------------------------- */
a#js-show-popup {
	display: none;
	animation:
		slideIn 1.5s cubic-bezier(0.25, 1, 0.5, 1) 1 forwards, /* スライドドインの設定 */
 		fadeIn 2s cubic-bezier(0.33, 1, 0.68, 1) 1 forwards /* フェイドインの設定 */
			;
}

/* スライドドインの設定 */
@keyframes slideIn {
  0% {
    transform: translateX(180px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
  }
  40%,100% {
    opacity: 1;
  }
}

/* フェイドインの設定 */
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

body.home a#js-show-popup /* TOPページ */
{ display: block; }

span.toplogomainspan {
    font-size: 150%;
    font-weight: 700;
    color: #e3357a;
    display: block;
    margin-top: -30px;
}

@media screen and (max-width: 750px) {
	span.toplogomainspan {
    margin-top: -15px;
}
}

a#js-show-popup {
    position: fixed;
    bottom: 80px;
    right: 20px;
    color: #fff;
    font-size: 15px;
	letter-spacing: 1px;
    width: 100px;
    height: 100px;
    border: 2px solid #fff;
    border-radius: 150px;
    z-index: 100;
    background: #e3357a;
    cursor: pointer;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
}
a#js-show-popup:hover {
    color: #e3357a;
    background: #fff;
	border-color: #e3357a;
}

a#js-show-popup span {
	position: absolute;
	top: 50%;
	left: 0%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	width: 100%;
	text-align: center;
	line-height: 1.3;
	font-weight: 600;
}

a#js-show-popup span i.fa-envelope {
    font-size: 20px;
    font-weight: 600;	
}

#index_news {
    background: #fff!important;
}

.index_service_list .service_list .item {
    width: calc(33% - 12px);
}

.index_service_list .service_list_wrap .overlay {
    background: #ededed !important;
}

.message_area.layout_type1 .image, .message_area.layout_type2 .image {
    border: 1px solid #ddd;
}


#design_page2 .design2_content1 .main_image {
    width: 300px;
    height: 300px;
    margin: 0 auto;
}

#design_page2 .design2_content1 .user_info {
    padding: 0px 120px 1px;
}

@media screen and (max-width: 1251px) {
    #index_news .archive_link {
        display: block!important;
        font-size: 90%;
        padding-right: 10px;
    }
	#design_page2 .design2_content1 .user_info {
    padding: 0px 100px 1px;
}
}

@media screen and (max-width: 950px) {
	#design_page2 .design2_content1 .user_info {
    padding: 0px 50px 1px;
}
#design_page2 .design2_content1 .main_image {
    width: 200px;
    height: 200px;
    margin: 0 auto;
}
}

@media screen and (max-width: 750px) {
	#design_page2 .design2_content1 .user_info {
    padding: 0px 20px 1px;
}
}

@media only screen and (max-width: 767px) {
	a#js-show-popup {
		bottom: 65px;
		right: 10px;
		font-size: 10px;
		width: 70px;
		height: 70px;
	}
	
	a#js-show-popup span i.fa-envelope {
		font-size: 14px;
	}
}



/*--------------------------------------------

　ページ内リンクボタン
 
-------------------------------------------- */
#page_link_wrap .page_link_box {
    display: flex;
    justify-content: center;
    flex: auto;
    margin: 0 auto;
}

#page_link_wrap .page_link_box .page_link_bt:first-of-type {
    margin-right: 20px;
}

#page_link_wrap .page_link_box .page_link_bt a {
    color: #fff;
    text-align: center;
    letter-spacing: 1px;
    background: #e3357a;
    padding: 20px 0;
    width: 180px;
    display: inline-block;
}

#page_link_wrap .page_link_box .page_link_bt a:hover {
    background: #f369a0;
}

#page_link_wrap .page_link_box .page_link_bt a:after {
  font-family:'design_plus';
  content:'\e910';
  margin: 5px 0 0;
  display: block;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  transform: rotate( 90deg );
}

img.toplogomain {
    width: 15%;
}

div#cb_content_1 {
    background: repeating-linear-gradient(-45deg, #f1f1f1 0, #f1f1f1 20px, #f7f7f7 20px, #f7f7f7 40px) !important;
	margin-bottom: 100px;
}

div#cb_content_topcon .cb_contents_inner {
    background: #ffffff;
    box-shadow: 0 4px 6px rgba(216, 216, 216, 1);
}

#footer_data .item.left .sub_item .headline {
    letter-spacing: 1px;
}

#footer_tel .tel_number {
    font-weight: 700;
}

.access_content2 .tel_number {
    font-weight: 700;
}

.access_content2 .contact .headline {
    letter-spacing: 1px;
}

.access_content2 .tel .headline {
    font-weight: 700;
    letter-spacing: 1px;
}


@media only screen and (max-width: 410px) {
	#page_link_wrap .page_link_box .page_link_bt a {
		width: 135px;
	}
	img.toplogomain {
    width: 25%;
}
}

/* アクセスのCSSをお問い合わせに適用 */
.access_content2.num3 .tel_number .icon:before {
    color: #e3357a;
}


/*--------------------------------------------

 reCAPTCHA用（v3）
 
-------------------------------------------- */
p.recaptcha-text {
	font-size: 12px;
	text-align: center;
	line-height: 1.6;
	padding: 20px 10px;
	/*border-top: 1px solid #ddd;*/
}

p.recaptcha-text a {
	color: #e3357a;
}

p.recaptcha-text a:hover {
	opacity: 0.7;
	text-decoration: none!important;
}
