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

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/

#contact_form{
	background-color: rgba(255,255,255,0.8);
	padding: 50px;
	border-bottom: 3px solid #0d2ea0;
}
.main,.entry-content,.body,.article,.panel-layout{
	padding-bottom: 0 !important;
	margin-bottom: 0 !important;
}
#header{
	display: flex;
	width: 100%;
	justify-content: space-between;
	align-items: center;
}
#header::after{
	display: none;
}
#header-in{
margin: 0;	
}
.header_contact{
	display: flex;
}
.hc_l{	padding-right: 15px;
	border-right: 1px solid #fff;}
.hc_l span{
	font-size: 0.7em;
}
.hc_l p{
	font-size: 1.8em;
	font-weight: bold;
	line-height: 1em;
}
.hc_mobile{
	display: none;
}
.hc_m a{color: #fff;
font-size: 2em;
padding: 0 15px}
.home h2{
background-color: transparent;
	color: #0d2ea0;
	text-align:center;
	font-size: 4.5em;
	font-family: 'Barlow Semi Condensed', sans-serif;
	font-weight: 600;
}
.page:not(.home) .main{
	margin-bottom: 50px !important;
}
.page:not(.home) .article-header{
	padding: 80px 0;
	background-image:url('/wp-content/uploads/2022/09/AdobeStock_451013551.jpg');
	background-size: cover;
	margin-bottom: 50px !important;
}
.article p{
	margin-bottom: 5px;
}
.page:not(.home) .article h2{
background-color: #f5f5ff !important;
	border-bottom: 5px solid #0d2ea0;
	text-align: center;
	color: #0d2ea0;
	font-size: 1.5em;
	margin-bottom: 0 !important;
}
.entry-title{
	text-align: center;
	color: #fff;
	text-shadow: 0px 0px 7px rgba(0,0,0,0.8);
	font-size: 1.5em;
}
.b_txt{	color: #0d2ea0;
	font-size: 6.5vw;
	font-family: 'Barlow Semi Condensed', sans-serif;https://digital-front.jp/wp-admin/theme-editor.php?file=style.css&theme=cocoon-child-master
font-weight: 600;
	line-height: 1em;
}
.b_txt2{color: #0d2ea0;
	font-size: 1.5vw;
	font-weight: bold;
	line-height: 1em;
	margin: 5px;
	letter-spacing: 0.2em;
	
}
.b_txt3{color: #898989;
	font-size: 1.5em;
}
#top_text{
	position: absolute;
	left: 0;
	bottom: -110px;
	padding-left: 50px;
	width: 100%;
}
#top_text::after{
	content: '';
	position: absolute;
	background-image: url(/wp-content/uploads/2022/09/scroll.png);
	width: 19px;
	height: 89px;
	background-size: 100% auto;
	right: 0;
	bottom: 0;
}
#top_image{
	position:relative;
	margin-bottom: 110px;
}
#top_about{
	padding-top: 120px;
}
#top_about h2{
	position: relative;
	margin-bottom: 50px;
}
#top_about h2::before{
	content: 'ABOUT US';
	color: #e3e3e3;
	position: absolute;
	font-size: 6.5vw;
	font-family: 'Barlow Semi Condensed', sans-serif;
font-weight: 200;
	z-index: -1;
	width: 100%;
	left:0;
	text-align: center;
	top: -0.35em;
}
.about_txt{
	display: flex;
	justify-content: center;
	align-items: center;
}
.about_txt p{
	width: 600px;
	max-width: 100%;
	font-weight: bold;
}
#biz_t_inner{
	position: absolute;
	text-align: center;
	width: 100%;
	bottom: -80px;
	left: 0;
}
#biz_t_inner h2{
	margin-bottom: 0;
	padding: 0;
}
#biz_title{
	height: 30vw;
	position: relative;
	margin-bottom: 120px;
}
.support_box{
position: relative;
	padding: 50px 30px;
}
.support_title{
	color:#0d2ea0;
	font-weight: 600;
	font-family: 'Barlow Semi Condensed', sans-serif;
	font-size: 2.5em;
	line-height: 1.2em;
	text-align: center;
}
.support_sub{
	background-color: #0d2ea0;
	color: #fff;
	padding: 5px 10px;
	font-weight: bold;
	display:block;
	width: 290px;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

.support_box::before{
content: '';
	width: 105px;
	height: 105px;
	position: absolute;
	top: -52.5px;
	left: 50%;
	margin-left: -52.5px;
	background-repeat:no-repeat;
}
#prof_title h2{
	margin-bottom: 0;
	padding-bottom: 0;
}
#support1::before{
	background-image: url(/wp-content/uploads/2022/09/sword.png);
}
#support2::before{
	background-image: url(/wp-content/uploads/2022/09/seald.png);
}
#support3::before{
	background-image: url(/wp-content/uploads/2024/01/magic.png);
}

.support_box ul{
	margin-top: 30px;
	padding: 0;
}
.support_box ul li{
	font-weight: bold;
}
#biz_box{
	 align-items: stretch !important;
}
#biz_box>div{
	border: 5px solid #0d2ea0;
	padding:0;
}
.article #prof_txt h3{
	border: none;
	background-color: #0d2ea0;
	padding: 5px 10px;
	color: #fff;
	font-weight: bold;
	margin-top: 0;
	margin-bottom: 15px;
}
.footer-left,.footer-right{
	display: none;
}
.footer-center{
	width:100%;
}
.contact_button{
	background-color: #0d2ea0;
	color: #fff;
	padding: 15px 10px;
	text-decoration: none;
	text-align: center;
	font-weight: bold;
	display: inline-block;
	width: 100%;
	border: 3px solid #0d2ea0;
}
.contact_button i{
	margin-right: 10px;
}
.f_box{
	border: 3px solid #0d2ea0;
	display: flex;
}
.f_box dt{background-color:#0d2ea0;
color: #fff;
padding: 15px 10px;
font-weight: bold;}
.f_box dd{
	padding: 15px 10px;
	color: #0d2ea0;
	font-weight: bold;
}
.copyright{
	background-color: #000;
	color: #fff;
	text-align: center;
}
.footer{
	padding: 0;
	margin: 0;
}
.footer-bottom{
	display: none;
}
.footer-widgets, .footer-widgets-mobile{
	margin: 0;
}
.form_box{
	display: flex;
	width: 100%;
}
.form_title{
	width: 30%;
	display: flex;
	/*align-items: flex-start;*/
	justify-content: space-between;
	font-weight: bold;
	align-items: center;
}
.article .form_box p{line-height: 0 !important;}
.form_content input, .form_content textarea{
	margin: 5px 0;
}
.form_content{display: flex;
align-items:center;
}
.form_title p{
	margin: 0;
}
.form_title span{
	background-color: #0d2ea0;
	color: #fff;
	padding: 10px 30px;
}
.form_content{
	width: 70%;
	padding-left: 30px;
}
.form_content>p{
	width: 100%;
}
#contact_form{
	position: relative;
}
#contact_form h2{
	margin: 0;
	padding: 0;
	position: absolute;
	top: -0.5em;
	width: 100%;
	text-align: center;
	left: 0;
}
.wpcf7-form{
	padding-top: 30px;
}
input[type="submit"]{
	background-color: #0d2ea0;
	color: #fff;
	font-weight: bold;
}
#contact_cap p{
border-top: 3px solid #fff;
	border-bottom: 3px solid #fff;	
}

#works_title {
  text-align: center;
  text-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
  position: relative;
}
#works_title::before {
  content: "";
  background: linear-gradient(rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0));
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  display: inline-block;
}
#works_title h2 {
  font-size: 2rem;
  text-align: center;
}
#works_title p {
  font-weight: bold;
  color: #fff;
}

#works_menu ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
	padding: 0;
}
#works_menu ul li {
	list-style: none;
  width: 30%;
}
#works_menu a {
	/*background: linear-gradient(90deg, #fff37a, #ffcd79);*/
border: 3px solid #0d2ea0;
  padding: 10px 30px;
  color: #0d2ea0;
  text-align: center;
  display: inline-block;
  width: 100%;
  text-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
  font-weight: bold;
  text-decoration: none;
}
#works_menu a:hover {
  background-color: #0d2ea0;
	color: #fff;
}
.works_row h3 {
  text-align: center;
  background-color: #0d2ea0;
  padding: 10px;

  color: #fff;
  margin-bottom: 50px;
	border: none;
}

.works_list {
  padding: 0 !important;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;

}
.works_list li {
  width: 30%;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
  border-radius: 10px;
  padding: 15px;
  font-size: 0.9em;
  margin: 1%;
	list-style: none;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
#works_it .works_list li,#works_marketing .works_list li,#works_consulting .works_list li{
	justify-content: flex-start;
}
.works_list li h4 {
  color: #0d2ea0;
  text-align: center;
margin: 0;
	
}
.play_button{
	color: #0d2ea0;
	display: inline-block;
	text-align: center;
	text-decoration: none;
	border: 3px solid #0d2ea0;
	padding: 10px;
	margin-top: 10px;
}
.play_button i{
	margin-right: 15px;
}
.play_button:hover{
	background-color: #0d2ea0;
	color: #fff;
}
/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
	.page:not(.home) .article #works_menu ul li {
  width: 48%;
}
.page:not(.home) .article #works_menu ul li a {
  font-size: 0.65em;
  padding: 10px;
}
.page:not(.home) .article .works_list {
  flex-direction: column;
}
.page:not(.home) .article .works_list li {
  width: 100%;
  margin: 15px 0;
}
	.hc_mobile{display: inline-block;
	}
	.hc_mobile a,.hc_m a{
		font-size: 30px;
		color: #fff;
	}
	.hc_l{
		display: none;
	}
	#top_text{
		padding-left: 15px;
	}
	.b_txt{
		font-size: 10vw;
		
	}
	.b_txt2{
		font-size: 2.3vw;
	}
	#top_text{
		bottom: -60px;
	}
	#top_about h2::before{
		font-size: 20vw;
	}
	#biz_title{
		background-size: auto 100%;
	}
	.form_box{
		flex-direction: column;
	}
	.form_box div{
		width: 100%;
	}
	.form_content{padding: 0;
	padding-top: 30px;
	}
	#top_about{
		padding-top: 30px;
	}
	#biz_box > div:first-child{
		margin-bottom: 80px;
	}
	#header-container{
		position: fixed;
		top: 0;
		left:0;
		width: 100%;
		z-index: 99999;
	}
	.footer-widgets{
		display: flex;
	}
	.b_txt3{font-size: 1rem;}
	#top_text::after{
		bottom: -30px;
	}
}
.video-container{
	width: 100%;
	max-width: 100%;
}

.navi-in > ul{
	flex-wrap: nowrap;
}
#works_movie .works_list figure{
	position: relative;
}
#works_movie .works_list figure:hover::after{
	content: '';
	background-color: rgba(255,255,255,0.5);
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	font-family: fontawesome;
	pointer-events: none;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #0d2ea0;
	font-size: 3em;
}
/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
	.home h2{
		font-size: 3em;
	}
	.home table,.home tbody,.home tr,.home th,.home td{
		display: inline-block;
		width: 100%;
	}
	.home td{
		background-color: #fff;
		text-align: center;
	}
}
// --------------------------------

.works_button{
	background-color: #0d2ea0;
	color: #fff;
	padding: 15px 10px;
	text-decoration: none;
	text-align: center;
	font-weight: bold;
	display: inline-block;
	width: 100%;
	border: 3px solid #0d2ea0;
}
.works_button:hover{
	color: #0d2ea0;
	background-color: #fff;

}
.contact_buttons{
	background-color: #0d2ea0;
	color: #fff;
	padding: 15px 10px;
	text-decoration: none;
	text-align: center;
	font-weight: bold;
	display: inline-block;
	width: 100%;
	border: 3px solid #0d2ea0;
}
.support_sub{
	display: block;
	width: 290px;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}
.support_box ul {
	width: 280px;
	margin-left: auto;
	margin-right: auto;
}
#prof_txt h3:nth-child(2){
	margin-top: 15px;
}
#prof_txt ul{
	padding-top: 0;
	padding-bottom: 0;
	margin-bottom: 15px;
}
#contact_form{
padding: 50px 30px;} 
.contact_button:hover{
	color: #0d2ea0;
	background-color: #fff;

}
input[type="submit"] {
	margin-top: 45px;
}
input:hover[type="submit"]{
opacity: 0.7;
}

// ---------アニメーション-------------
// #top_text,
// #panel-8-0-0-0 .sow-image-container,
#panel-8-1-0-0 .widget-title,
.about_txt,
#biz_box,
#biz_t_inner .so-widget-sow-editor-base,
#panel-8-4-0-0 .widget-title,
#prof_title table,
#panel-8-5-0-0 .widget-title,
#panel-8-5-0-0 strong,
#pgc-8-5-0 .so-widget-image,
#pgc-8-6-0,
#pgc-8-6-1,
#panel-8-7-0-0,
#contact_form h2,
.contact_sub,
#wpcf7-f5-p8-o1,
#pgc-w63564fad51f11-0-0,
#pgc-w63564fad51f11-0-1,
#pgc-w63564fad51f11-0-2,
#pgc-w63564fad51f11-0-3,
.copyright
{
opacity: 0;}

.fadeUp{
animation-name:fadeUpAnime;
animation-duration:1.5s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeUpAnime{
  from {
    opacity: 0;
  transform: translateY(100px);
  }

  to {
    opacity: 1;
  transform: translateY(0);
  }
}

// ------オープニングアニメーション
.opening {
	background: #FFF;
	position: fixed;
	left: 0;
	top: 0;
	transform: translate(-50%, -50%);
	height: 0;
	width: 0;
	z-index: 9999!important;
	border: 100px solid #333;
}
.opening .logo {
	position: fixed;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	z-index: 9999;
	width: 300px;
	margin-left: auto;
	margin-right: auto;
	display: none;
}
.opening .bgc-right{
	position: fixed;
	left: 50%;
	top: 0;
	z-index: 9998;
	width: 100vw;
	height: 100%;
}
.opening .bgc-left{
	position: fixed;
	top: 0%;
	left: 0;
	z-index: 9998;
	width: 100%;
	height: 100%;
}

@media screen and (max-width: 834px){
.form_box {
    margin-bottom: 20px;
}
#panel-8-6-0-0 .so-widget-sow-image-default-8b5b6f678277-8 .sow-image-container{
	justify-content: center;
}
}
