@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Anton&family=M+PLUS+1+Code:wght@100..700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+1p:wght@400;500&text=0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ');
/*!
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
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/
html{
	max-width:100vw;
	width:100%;
	overflow-x:hidden;
}

@media(min-width:996px){
html{

	font-size:1.46vw;
}
	}

body{
	font-family: "M PLUS 1p", "M PLUS 1 Code",  sans-serif !important;
}

body .row>*{
	padding-right:0px; 
	padding-left:0px;  
}

.row{
	max-width:100%;
	margin-right: 0 !important;
    margin-left: 0 !important;
}

.container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl{
	max-width:100% !important;
	width:100% !important;
	padding:0 !important;
}

.container-fluid{
	max-width:100%;
	margin-left: auto !important;
	margin-right: auto !important;
	padding:0 !important;
}

.wrap{
	width:100% !important;
	max-width:100%;
}
img.site_logo{
	max-width:15rem !important;
	height:auto !important;
}

.navi-in > ul li{
	width:auto !important;
	padding:0 1rem;
	height:auto !important;
}

.bg-pink{
	background-color:#F4AFB4;
}
.bg-c-pink{
	background-color:#F5EEEE;
}

.bg-c-red{
	background-color:#8B494999;
}

.bg-blue{
	background-color:#ABD7E8;
}

.bg-c-blue{
	background-color:#20AECD99;
}
.bg-c-blue2{
	background-color:#EEF3F5;
}

.marker-c-blue{
background: linear-gradient(transparent 60%, #20AECD60 50%);
}

.marker-c-pink{
background: linear-gradient(transparent 60%, #F4AFB460 50%);
}

.bg-c-grey{
	background-color:#F6F6F6;
}

.bg-green{
	background-color:#08AF54;
}
.bg-c-green{
	background-color:#DFF0E9;
}

.bg-green-grd{
	background: linear-gradient(360deg,rgba(255, 255, 255, 0) 10%, rgba(223, 240, 233, 1) 50%);
}

.bg-page-header{
	background-image:url("../cocoon-master/images/page/header_bg.webp");
	aspect-ratio:1280/320;
	background-size:cover;
	background-position:top;
	background-repeat:no-repeat;
}



.bg-top1{
	background-image:url("../cocoon-master/images/top/bg_top1.webp");
	aspect-ratio:1280/540;
	background-size:cover;
	background-position:top;
	background-repeat:no-repeat;
}
.bg-top2{
	background-image:url("../cocoon-master/images/top/bg_top2.webp");
	aspect-ratio:1280/540;
	background-size:cover;
	background-position:top;
	background-repeat:no-repeat;
}

.bg-top-copy1{
	background-image:url("../cocoon-master/images/top/bg_top_copy1.svg");;
	background-size:100% 80%;
	background-position:bottom center;
	background-repeat:no-repeat;
}

.bg-top-copy2{
	background-image:url("../cocoon-master/images/top/bg_top_copy2.svg");;
	background-size:100% 80%;
	background-position:bottom center;
	background-repeat:no-repeat;
}



.bg-nav2{
	background-image:url("../cocoon-master/images/bg_nav2.svg");
	background-size:100% 100%;
	background-position:top;
	background-repeat:no-repeat;
}

.bg-about{
	background-image:url("../cocoon-master/images/top/bg_about.webp");
	background-size:cover;
	background-position:top;
	background-repeat:no-repeat;
}

.bg-business{
	background-image:url("../cocoon-master/images/top/bg_business.svg");
	background-size:100% 100%;
	background-position:top center;
	background-repeat:no-repeat;
}
.bg-business-headline{
	background-image:url("../cocoon-master/images/top/bg_business_headline.svg");
	background-size:100%;
	background-position: top 1rem right;
    background-repeat: no-repeat;
}

.bg-contact{
	background-image: url("../cocoon-master/images/footer_contact_bg.webp");
	background-size:cover;
	background-position:top;
	background-repeat:no-repeat;
}

.bg-entry{
	background-image:url("../cocoon-master/images/top/entry_bg.webp");
	aspect-ratio:468/334;
	background-size:cover;
	background-position:top;
	background-repeat:no-repeat;
}


.bg-recruit{
	background-image:url("../cocoon-master/images/top/recruit_bg.webp");
	aspect-ratio:468/334;
	background-size:cover;
	background-position:top;
	background-repeat:no-repeat;
}

.button-1,.button-2{
	background-size:100% 100%;
	background-position:top;
	background-repeat:no-repeat;
}
.button-1{
	background-image:url("../cocoon-master/images/button1.svg");

}
.button-2{
	background-image:url("../cocoon-master/images/button2.svg");
}

@media(max-width:782px){
	.bg-page-header{
		aspect-ratio:1280/480;
}
@media(max-width:576px){
	.bg-main{
		aspect-ratio:3/2;
	}
	.bg-page-header{
		aspect-ratio:10/4.5 !important;
		background-size: 200% auto;
		background-position: left;
}
	}

}

.cat-link{
	background-color:unset !important;
}


.text{
	color:#F2EBEB;
}
.text-navy{
	color:#0E6CBA !important;
}
.text-green{
	color:#08AF54 !important;
}
.text-sliver{
	color:#F2EBEB;
}
.text-d-yellow{
	color:#51451E;
}
.text-d-red{
	color:#983232;
}

.text-red{
	color:red !important;
	text-decoration:underline !important;
}

body a{
	text-decoration:none !important;
    color: inherit !important;

}
.sns-share-buttons{
	color:white;
}
a:hover{
	opacity:0.65;
	transition:0.5s;
	text-decoration:underline;
}

body p{
	margin-bottom:0px;
}
#post-463 p,.single p {                   
  margin-bottom: revert; 
}

.fs-14{
	font-size:0.7rem;
}
.fs-16{
	font-size:0.8rem;
}

.fs-18{
	font-size:0.9rem;
}
.fs-20{
	font-size:1rem;
}
.fs-22{
	font-size:1.375rem;
}
.fs-24{
	font-size:1.5rem;
}
.fs-32{
	font-size:1.6rem;
}
.fs-36{
	font-size:1.8rem;
}
.fs-40{
	font-size:2rem;
}
.fs-48{
	font-size:2.4rem;
}

.fs-54{
	font-size:2.7rem;
}
.fs-64{
	font-size:4rem;
}
.fs-72{
	font-size:4.5rem;
}
.fs-80{
	font-size:5rem;
}

@media(max-width:782px){

	.fs-24{
		font-size:1.35rem;
	}
	.fs-40 {
    font-size: 2.25rem;
	}
	.fs-48{
    font-size: 2.5rem;
	}
	.fs-72{
		font-size:3rem;
	}
	.fs-80{
		font-size:3.5rem;
	}

}

.mw-240{
	max-width:15rem !important;
	width:100%;
}

.mw-700{
	max-width:35rem !important;
	width:100%;
	margin:auto !important;
}
.mw-800{
	max-width:40rem !important;
	width:100%;
	margin:auto !important;
}

.mw-1100{
	max-width:55rem;
	width:100%;
	margin:auto !important;
}

.headline{
	font-family: "Cormorant Garamond", serif;
}

.footer-bottom {
    margin-top: 0;
    padding: 0;
    position: relative;
}	

.left-border{
	position: relative;
	width:100%;
	text-align:right;
}
.left-border span{

	background-color:white;
		z-index:1;
}

.left-border::after {
	position: absolute;
	content: "";
	top:50%;
	transform:scaleY(0.5) translatey(-50%);
	left:3%;
	width:97%;
	height:2px;
	background-color: black;
	z-index:0;
}

#wpadminbar a{
	color:white !important;
}
.page .date-tags{
	display:none;
}

.google_map{
	aspect-ratio:5/1.75;
	min-height:18.75rem;
}
.footer{
	margin-top:0px;
	padding:0px;
}
ruby{
	ruby-position: under;
}
rt{
	color: #777777;
	font-size:0.875rem;
	padding-top:0.25rem;
}


/**index**/
.main-navigation{
	position:relative;
}

.main-navigation  div.position-absolute{
 	top: 40%;
    left: 10%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
.layout_parts{
	min-width:65vw;
}
.layout_parts3{
	min-width:70vw;
	bottom:0;
	right:0;
	left:0;
	margin:auto;
}
.layout_parts4{
	min-width:70vw;
	top:0;
	right:0;
	left:0;
	margin:auto;
}

/**会社概要**/
.g-map iframe{
	aspect-ratio:5/2;
	vertical-align: bottom;
	display: block;
}
.timeline{
	background-image:url("../cocoon-master/images/page/company/timeline_bar.webp");
	background-size:0.625rem 100% ;
	background-repeat:no-repeat;
	background-position:0.9375rem 5px;
}
.lh-1{
	line-height:1;
}
.lh-0{
	line-height:2rem;
}

/**ボタン**/
.cat-button{
	background-color:#F0F0F0 !important;
	border:none !important
}
.active.cat-button{
	background-color: #D9EBFA !important
}

.navi-in #menu-item-86 a{
	background-color:#08AF54 !important;
	color:white !important;
	padding:0.75rem 2rem;
	width:100%;
	max-width:12.5rem;
	border-radius:15px;
}

/**ヘッダー**/
.contact_button{
	width:13rem;
}

/**フッター**/
.footer-icon img{
	width:1.5rem;
}

/**privacy**/
ol li::marker{
	font-size:1.375rem;
	color:#512020;
	margin-right:0.5rem;
}
ol ol li::marker{
	font-size:1rem;
}


/**cocoon上書き**/
.entry-content>*{
	margin-bottom:0;
}
.page-numbers{
	border: none !important;
	background-color:#F0F0F0 !important
}
.current.page-numbers{
	background-color:#D9EBFA !important
}
.menu-drawer a{
	padding:0 0 1rem 0;
}
.fixed-header{
	box-shadow:unset !important;
}
.navi-in > ul li{
	padding: 0 0.75rem;
}
.carousel{
	opacity:1;
	margin-top:0 !important;
}

.go-to-top-button{
	width:4.5rem;
	height:auto !important;
}
/**cf7**/
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, .search-edit,.wpcf7-form-control{
	border-radius:10px !important;
	border: none !important;
}
select{
	width:auto !important;
}

input[type=submit]{
	background-color:#20AECDCC !important;
	color:white;
	max-width:240px;
}

/**bootstrap追加**/
.aspect-1{
	aspect-ratio:330/270;
}

.border-md-left{
	border-left:solid 2px #36383F !important;
}
.border-left{
	border-left:solid 1px #36383F !important;
}

.border-md-right{
	border-right:solid 1px #36383F !important;
}
.columns-4-2-1{
	grid-template-columns:repeat(4,1fr)
}
.columns-4-2-2{
	grid-template-columns:repeat(4,1fr)
}

.columns-3-2-1{
	grid-template-columns:repeat(3,1fr)
}
.columns-2-2-1{
	grid-template-columns:repeat(2,1fr)
}
.columns-5-2-2{
	grid-template-columns:repeat(5,1fr)
}

.mt-6{
	margin-top:6rem !important;
}

.mt-n-05{
	margin-top:-0.1rem !important;
}

.mt-n-4{
	margin-top:-1.5rem !important;
}

.mt-n-45{
	margin-top:-1.75rem !important;
}

.mt-n-5{
	margin-top:-3rem !important;
}


.text-indent-n-3{
	text-indent: -1.4rem;
    margin-left: 1.75rem;
}
.text-indent-n-5{
	text-indent: -3rem;
    margin-left: 3.5rem;
}

.pe-7{
	padding-right:12rem;
}

.ps-lg-1100{
	padding-left:calc(50vw - 27.5rem) !important;
}
.border-bottom.border-pink{
	border-bottom:4px #F4AFB4 solid !important;
	box-sizing:border-box;
}

img.object-fit-cover{
	object-position:top;
}

@media(max-width: 991px){
	.columns-4-2-2{
		grid-template-columns:repeat(2,1fr) !important;
	}
		.columns-5-2-2{
		grid-template-columns:repeat(2,1fr) !important;
	}
	
}
@media screen and (min-width: 577px) and (max-width: 992px){
	.columns-4-2-1,	.columns-3-2-1{
		grid-template-columns:repeat(2,1fr) !important;
	}
}
@media screen and (max-width: 576px){
	.columns-4-2-1,	.columns-3-2-1,	.columns-2-2-1{
		grid-template-columns:repeat(1,1fr)
	}
}


/**bootstrap修正**/
.border-start,.border-top,.border-bottom{
--bs-border-width:2px !important;
}

.accordion-button{
	background-color:unset !important;
}

.text-alphabet{
	font-family:"Anton"
}

.accordion-item{
	border:none !important;
}
:root, [data-bs-theme=light]{
--bs-border-radius:0 !important;
}
.accordion-button:not(.collapsed){
	color:inherit !important;
}

/**FontAwesome**/
.fa{
	font-size:1.5rem;
}

/**cookie**/
.cc-window.cc-floating{
	max-width: 18rem;
	font-size:0.9rem;
	padding:1.5rem;
}

@media screen and (max-width: 769px){
	.cc-window.cc-floating{
	max-width:unset;
	width:100%;
	}
	.cc-revoke.cc-right{
		left:0 !important;
		right: unset;
	}
	
	.mobile-footer-menu-buttons .menu-button {
		background-color:#08AF54;
	}
	
.mobile-footer-menu-buttons > li:first-child {
  background-color: #fdd835;
}
	
}
