@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
*/

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

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-grey{
	background-color:#F2F0F0;
}

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

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


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

.bg-c-blue{
	background-color:#edf2f6;
}

.bg-navy{
	background-color:#0E6CBA;
}

.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-main{
	background-image:url("../cocoon-master/images/top/top_main_bg1.webp");
	aspect-ratio:1280/480;
	background-size:cover;
	background-position:top;
	background-repeat:no-repeat;
}
@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;
}
	}

}

.bg-contact{
	background-image: url("../cocoon-master/images/footer_contact_img.webp");
	background-size:cover;
	background-position:top;
	background-repeat:no-repeat;
}
.bg-contact div{
backdrop-filter: blur(3.5px) saturate(90%) brightness(110%);
}

.bg-dropshadow{
	filter: drop-shadow(0px 0px 10px #133f6f);
}

.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;
}
.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:#512020;
}
.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.875rem;
}
.fs-16{
	font-size:1rem;
}

.fs-18{
	font-size:1.125rem;
}
.fs-20{
	font-size:1.25rem;
}
.fs-22{
	font-size:1.375rem;
}
.fs-24{
	font-size:1.5rem;
}
.fs-32{
	font-size:2rem;
}
.fs-36{
	font-size:2.25rem;
}
.fs-40{
	font-size:2.5rem;
}
.fs-40b{
	font-size:2.5rem;
}

.fs-48{
	font-size:3rem;
}
.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:43.75rem !important;
	width:100%;
	margin:auto !important;
}

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

.mw-1100{
	max-width:68.75rem;
	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%);
}

.business img{
	height:225px;
	object-fit:cover;
	object-position:top;
	width:100%;
}

/**警備サービス**/
.svg-icon{
	filter: invert(15%) sepia(98%) saturate(3331%) hue-rotate(195deg) brightness(97%) contrast(101%);
	height:7.5rem;
}


/**会社概要**/
.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;
}

/**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;
}


/**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:#08AF54 !important;
	color:white;
	max-width:240px;
}

/**bootstrap追加**/
.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-n-4{
	margin-top:-1.5rem !important;
}
.text-indent-n-3{
	text-indent: -2rem;
    margin-left: 2.5rem;
}
.text-indent-n-5{
	text-indent: -3rem;
    margin-left: 3.5rem;
}
@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修正**/
.accordion-button{
	background-color:unset !important;
}
.accordion-item{
	border:none !important;
	background-color:#F2F0F0 !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;
}
	
}

@media screen and (max-width: 576px){
	.sp-font {
		font-size:12px;
	}
	
}
