@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 {scroll-behavior: smooth;}
#header-container-in{
	width:100%;
	padding:8px 0;
}
.navi .item-label{
	font-size: 14px;
	font-weight: 900;
	position: relative;
	display: inline-block;
	padding: 18px 2px 6px;
}
.navi .item-label::after{
 	font-family: "Font Awesome 5 Free";
 	content: "\f078";
	padding-left:10px;
}
#header-contact{
	width:380px;
	text-align:center;
}
#header-contact a{
	background: #f9994e;
	color:#fff;
	padding: 14px 30px;
	border-radius: 28px;
   font-size: 14px;
	font-weight: 900;
   text-decoration: none;
}
#header-contact a:hover{
	background: #ee812b;
}
#header-contact a i{
	padding-left: 10px;
}
.navi-in a:hover{
	background:initial;
}
.item-label{
	background-image: linear-gradient(#0683f1 0 0);
	display:block;
 	background: 
      linear-gradient(currentColor 0 0) 
      bottom /var(--d, 0) 2px 
      no-repeat;
	transition:0.5s;
}
.item-label:hover {
  --d: 100%;
}
.navi-in > ul li{
	line-height:normal;
}
#menu-menu-header .menu-item{
	display: flex;
   justify-content: center;
   align-items: center;
}



/*=======================================================
フッター
=========================================================*/
.footer{
	margin-top:0;
}



/*=======================================================
レイアウト
=========================================================*/
#content-in{
	width:100%;
}
#main{
	padding:0;
}



/*=======================================================
タイトル
=========================================================*/
.entry-title{
	text-align: center;
   padding: 20px;
}



/*=======================================================
固定ページ
=========================================================*/
.page .entry-title{
	border-top:none;
	border-bottom:none;
	position: relative;
}
.page .entry-title::before {
    background-color: #1ca2a9;
    border-radius: 5px;
    bottom: 4px;
    content: "";
    height: 6px;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
    width: 100px;
}
.page .entry-content{
    width:70%;
    margin:auto;
}



/*=======================================================
投稿ページ
=========================================================*/
.post .entry-title{
	border-top:none;
	border-bottom:none;
	position: relative;
}
.post .entry-title::before {
    background-color: #1ca2a9;
    border-radius: 5px;
    bottom: 4px;
    content: "";
    height: 6px;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
    width: 100px;
}
.post .entry-content{
    width: 70%;
    margin: auto;
    text-align: center;
    font-size: 16px;
    padding-top: 2em;
    padding-bottom: 4em;
}
.post .article-footer{
	display:none;
}



/*=======================================================
トップページ
=========================================================*/
/* --- レイアウト --- */
.page-id-13 .date-tags{
	display:none;
}
.page-id-13 .entry-content {
   margin-top: 0;
	margin-bottom: 0;
	width:100% !important;
}
.page-id-13 .entry-title{
	display:none;
}
.page-id-13 #content{
	margin-top:0;
}
#post-13{
	margin-bottom:0;
}
/* --- メインエリア --- */
#top-main-wrap{
	background:url(https://spcore.jp/wp-content/uploads/2024/03/spcore_bg.jpg) no-repeat;
   background-size:cover;
	display: flex;
   justify-content: center;
   height: 500px;
	margin-bottom:0;
}
#top-main-wrap-inner p{
    font-size: 30px;
    line-height: 3.2em;
    font-weight: bold;
    color: #fff;
    padding-top: 160px;
    letter-spacing: 4px;
    text-align: center;
    margin-left: auto;
}
#top-main-wrap-inner p span{
	font-size: 68px;
	padding-right:10px;
}
#top-main-wrap-inner p span.a_marker{
	background:linear-gradient(transparent 80%, #ebeb1c 80%);
}
#top-main-wrap-inner p span.b_marker{
	background:linear-gradient(transparent 86%, #65bdf1 86%);
}

/* --- コンテンツエリア --- */
#post-13 h2 {
    background: initial;
    text-align: center;
    font-size: 46px;
    margin-bottom: 1em;
    padding-top: 2em;
    padding-bottom: 1em;
    color: #11a9c4;
    letter-spacing: 0.08em;
    max-width: 100%;
}
#post-13 h3 {
    color: #11a9c4;
    border-top: none;
    border-right: none;
    border-bottom: none;
    border-left: none;
    padding: 0;
    margin-bottom: 10px;
    font-size: 20px;
}
.txt-cntr{
	text-align:center;
}

/* --- SEC01 --- */
#sec01{
	font-family: serif;
	padding-bottom: 6em;
	margin-bottom:0;
}
#sec01 h2{
	color:#000;
}
#sec01 h2 span{
	background:linear-gradient(transparent 70%, #c1c1c1 70%);
}
#sec01 .column-3 .column-left ,
#sec01 .column-3 .column-center ,
#sec01 .column-3 .column-right{
	border: 4px solid #000;
   border-radius: 16px;
   padding: 22px;
	width:30%;
}
#sec01 .column-3{
	max-width:80%;
}
#sec01 .column-3 h3{
	text-align:center;
	color:#000;
}
#sec01 .column-3 p{
   font-size: 16px;
	color: #000;
}
#sec01 .column-3 img{
   margin: auto;
   padding-top: 14px;
}

/* --- SEC02 --- */
#sec02{
	background:#d3fff0;
	padding-bottom: 4em;
	margin-bottom:0;
}
#sec02 h2{
    font-size: 56px;
}
#sec02 h2 span{
	background:linear-gradient(transparent 60%, #ffea8d 60%);
}
#sec02 #sankaku-tri{
	width: 480px;
   margin: auto;
}
#sec02 .column-2{
	background:#fff;
	padding: 36px;
	border-radius: 20px;
	align-items:center;
	margin-bottom: 2em;
}
#sec02 h3{
    letter-spacing: 0.1em;
}
#sec02 h3 span{
   background: #13a9bd;
   padding: 8px;
   font-size: 36px;
   color: #fff;
}
#sec02 p{
    letter-spacing: 0.05em;
}
#sec02 .omakase-notice{
	font-size:12px;
}

/* --- SEC03 --- */
#sec03{
	background:#fff;
	padding-bottom: 4em;
	margin-bottom:0;
}
#sec03 h2{
	position: relative;
}
#sec03 h2::before {
    background-color: #11a9c4;
    border-radius: 5px;
    bottom: 28px;
    content: "";
    height: 6px;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
    width: 100px;
}
#sec03 .column-2{
	max-width:100%;
	width:80%;
	margin:auto;
}
#sec03 .column-2 h3{
	font-size:26px;
	color:#000;
}
#sec03 .column-2 .column-left ,
#sec03 .column-2 .column-right{
	padding:20px;
}

/* --- SEC04 --- */
#sec04{
	background:#d3fff0;
	padding-bottom: 4em;
	margin-bottom:0;
}
#sec04 h2{
	position: relative;
}
#sec04 h2::before {
    background-color: #11a9c4;
    border-radius: 5px;
    bottom: 28px;
    content: "";
    height: 6px;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
    width: 100px;
}
#sec04 h3{
	font-size:30px;
	text-align:center;
	color:#000;
}
#sec04 h4{
	border-top:none;
	border-bottom:none;
	margin-bottom:0;
}
#sec04 hr{
	margin-bottom:1em;
	opacity: 0.4;
}
#sec04 .plan_wrap{
	padding: 20px;
   margin-top: 2em;
   background: #eefff9;
}

/* --- SEC05 --- */
#sec05{
	background:#fff;
	padding-bottom: 4em;
	margin-bottom:0;
}
#sec05 h2{
	position: relative;
}
#sec05 h2::before {
    background-color: #11a9c4;
    border-radius: 5px;
    bottom: 28px;
    content: "";
    height: 6px;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
    width: 100px;
}
#sec05 table{
    font-size: 14px;
}
#sec05 table th , 
#sec05 table td {
    letter-spacing: 0.05em;
}
#sec05 table th{
	padding: 8px 0;
   background: none;
   color: #fff;
   border-top: none;
   border-right: none;
   border-bottom: 1px solid #fff;
   border-left: none;
	min-width: 80px;
}
#sec05 table td{
	padding: 4px 4px 4px 24px;
   border-top: none;
   border-right: none;
   border-bottom: 1px solid #6cb9cf;
   border-left: none;
}
#sec05 tr:nth-of-type(2n+1) {
    background-color: initial;
}
#sec05 .su-animate{
	max-width:100%;
}
/*　メッセージ欄CP　*/
.mission-sec-inner {
   position: relative;
	width: 80%;
   margin: auto;
	max-width:80% !important;
	display: flex;
   justify-content: center;
   align-items: center;
}
.cf:before, .cf:after {
    content: "";
    display: table;
}
.mission-img {
    float: left;
    width: 50%;
}
.mission-read {
    box-sizing: border-box;
    float: left;
    width: 50%;
    margin:0 0 0 -90px;
    padding: 50px 50px 50px;
    background-color: #11A9D4;
    box-shadow: 0px 20px 36px 4px rgb(0 0 0 / 25%);
    color: #ffffff;
    z-index: 100;
}
.mission-read h3 {
   position: relative;
	margin-top: 0;
   margin-bottom: 30px;
   padding:0;
   font-size: 20px;
   font-weight: 600;
   line-height: 1.9;
   letter-spacing: 0.2em;
	border-top:none;
	border-right:none;
	border-bottom:none;
	border-left:none;
}
.mission-read p {
   font-size: 15px;
   font-weight: 400;
   line-height: 2.0;
}
.pc {
    display: block !important;
}
.sp {
    display: none !important;
}
@media only screen and (max-width: 760px){
    .pc {
        display: none !important;
    }
    .sp {
        display: block !important;
    }
    .mission-read {
        position: relative;
			left: 20px;
        box-sizing: border-box;
        width: calc(100% - 40px);
        margin: -100px auto 0;
        padding: 35px;
        box-shadow: 0px 20px 36px 4px rgb(0 0 0 / 25%);
        color: #ffffff;
        z-index: 100;
    }
    .mission-sec-inner {
       width: 100%;
    }
    .mission-img {
        width: 100%;
    }
	.mission-sec-inner{
		display:block;
	}
}

/* --- SEC06 --- */
#sec-form{
	background:#d3fff0;
	padding-bottom: 4em;
}
#sec-form h2{
	position: relative;
	padding-top: 2em;
}
#sec-form h2::before {
    background-color: #11a9c4;
    border-radius: 5px;
    bottom: 28px;
    content: "";
    height: 6px;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
    width: 100px;
}
#sec-form{
	background: #eaeaea;
   margin-bottom: 0;
	padding-bottom: 4em;
}
#wpcf7-f21-p13-o1{
	max-width:100%;
}
#wpcf7-f21-p13-o1 p{
	margin-bottom:0;
}
#sec-form table tr:nth-of-type(2n+1) {
	background-color: initial;
}
#cf-tbl{
   margin: auto;
}
#cf-tbl table{
	width: 100%;
	border-collapse: collapse;
	border: solid #CCC;
	border-width: 1px;
	color: #444;
	background: #fff;
}
#cf-tbl table tr th,
#cf-tbl table tr td{
	padding: 20px;
	text-align: left;
	vertical-align: top;
	border: solid #CCC;
	border-width: 1px;
	vertical-align: middle;
}
#cf-tbl table tr th{
	width: 35%;
	background: #fff;
}
/*「必須」文字デザイン*/
.required{
	font-size:.8em;
	padding: 5px;
	background: #11a9c4;
	color: #fff;
	border-radius: 3px;
	margin-right: 5px;
}
/*「任意」文字デザイン*/
.optional{
	font-size:.8em;
	padding: 5px;
	background: #000080;
	color: #fff;
	border-radius: 3px;
	margin-right: 5px;
}
/* 入力項目を見やすく */
input.wpcf7-form-control.wpcf7-text,
textarea.wpcf7-form-control.wpcf7-textarea {
	width: 100%;
	padding: 8px 15px;
	margin-right: 10px;
	margin-top: 10px;
	border: 1px solid #d0d5d8;
	border-radius: 3px;
	background-color: #eff1f5;
}
textarea.wpcf7-form-control.wpcf7-textarea {
	height: 200px;
}
/* 「送信する」ボタン */
input.wpcf7-submit {
    display: block;
    padding: 15px;
    width: 400px;
    background: #ffaa56;
    color: #fff;
    font-size: 18px;
    font-weight: 700;
    border-radius: 2px;
    margin: 15px auto 0
}
input.wpcf7-submit:hover {
	box-shadow: 0 15px 30px -5px rgba(0,0,0,.15), 0 0 5px rgba(0,0,0,.1);
	transform: translateY(-4px);
	opacity:0.7;
}
/* エラーメッセージを見やすく */
span.wpcf7-not-valid-tip,
.wpcf7-response-output.wpcf7-validation-errors {
	color: red;
	font-weight: 600;
}
/* TSUIKA */
#check_kakunin p{
	text-align:center;
	font-size:14px;
}
@media screen and (max-width:768px){
	input.wpcf7-submit {
		width: 250px;
	}
	#cf-tbl{
		width: 100%;
	}
	#cf-tbl table,
	#cf-tbl table tbody,
	#cf-tbl table tr,
	#cf-tbl table tr th,
	#cf-tbl table tr td{
		display: block;
	}
	#cf-tbl table{
		width: 100%;
		border-width: 0 0 1px 0;
	}
	#cf-tbl table tr th,
	#cf-tbl table tr td{
		width: 100%;
		padding: 3% 5%;
	}
	#cf-tbl table tr td{
		border-width: 0px 1px 0px 1px;
	}
}



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

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
	#sec01 .column-3 .column-left, #sec01 .column-3 .column-center, #sec01 .column-3 .column-right{
		width:100%;
	}
	#sec02 ,
	#sec04 ,
	#sec-form{
		padding-left: 20px;
		padding-right: 20px;
	}
	#sec02 .wp-block-image img{
		margin:auto;
	}
	#sec02 h2 ,
	#post-13 h2{
		font-size: 36px;
	}
	.crm-rvs {
		flex-direction: column-reverse !important;
	}
	#header-contact{
		display:none;
	}
}

/*710px以下*/
@media screen and (max-width: 710px){
	#top-main-wrap-inner p{
		letter-spacing: 0px;
	}
	#top-main-wrap-inner p {
		font-size: 22px;
	}
	#top-main-wrap-inner p span {
		font-size: 58px;
	}
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
	#sec02 h3 span{
		font-size:28px;
	}
	#top-main-wrap-inner p span{
		font-size:24px;
	}
	#top-main-wrap-inner p{
		font-size:16px;
	}
	#top-main-wrap{
		height:300px;
	}
	#top-main-wrap-inner p{
		padding-top: 90px;
	}
	#sec02 #sankaku-tri {
		width: 100%;
	}
}
