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

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

/* color */
--color-green:#63f995;
--color-green_dark:#3e8b3a;
--color-orange:#fcae64;
--color-orange_dark:#896b39;
--color-bg:#fefff2;
--color-text_bk:#333333;
--color-text_wh:#fff;
--color-link:#396f89;

/* width */
--mv-siteview:1200px;
--siteview:1100px;
--siteview--readText:600px;

/* space (figma → rem) */
--space-xl:10rem;
--space-lg:5rem;  
--space-md:2.5rem; 
--space-mb_section:clamp(2rem, 2vw, 4rem);
--space-mb_subTtl:0.75rem;
--space-mb--ttl-wrap:2rem;

/* font size */
--fontSize-hero:clamp(2.25rem, 5vw, 5rem);/* h1 */
--fontSize-hero_sub:clamp(1rem, 5vw, 2rem);/* .hero_sub.top--heading2 */
--fontSize-h2-ttl_sub:clamp(1rem, 5vw, 1.5rem);/* h2-ttl_sub */
--fontSize-h3-ttl:clamp(1.5rem, 5vw, 2.5rem);/* 40px */
--fontSize-h3-ttl_sub:clamp(1.25rem, 5vw, 1.5rem);     /* 40px */
--fontSize-read-text:clamp(1.125rem, 4vw, 1.2rem);/* 30px */
--fontSize-read-text_em:clamp(1.15rem, 3vw, 1.25rem);     /* 20px */
--fontSize-read-text_small:clamp(0.8rem, 1.2vw, 1rem);  /* 16px */
--fontSize-h2-sp:clamp(1.75rem, 5vw, 3.25rem);
/* font style */
--font-maru: "Zen Maru Gothic", sans-serif;
/* font weight */
--fontWeight-bold:500;
--fontWeight-ex-bold:600;
/* letterspacing */
--letter-spacing_base: 0.1rem;
--letter-spacing_reading: 0.15rem;
--letter-spacing_title: 0.2rem;
}

*,
*:before,
*:after {
	box-sizing: border-box;
}

html {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.main {
  border:0!important;
  position: relative;
  z-index: 0;
}


body {
	position: relative;
	box-sizing: border-box;
	word-wrap: break-word;
    -webkit-text-size-adjust: 100%;
	font-family: "Noto Sans JP", sans-serif;
	font-size:16px;
	color: var(--color-text_bk);
	letter-spacing:var(--letter-spacing_base);
	line-height: 1.6;
    max-width: 100%;
    min-width: 100%;
    overflow-wrap: break-word;
    overflow-x: clip;
	background-color: var(--color-bg);	
}

section {
	margin-bottom: var(--space-mb_section)!important;
}

.section--hero {
	position: relative;
	width: 100%;
	height: auto;
	padding:0 2% 2%;
}

.section--wrapper {
	margin-top:var(--space-mb_section);
	margin-bottom:var(--space-mb_section);
}

.wrapper--hero {
	position: relative;
	display: inline-block;
	justify-content: center;
	align-content: center;
	width: 100%;
	height: 66.6vh;
	border-radius: 20px;
	overflow: hidden;
	background-image: url("/wp-content/uploads/2026/03/smilecook-202602-40-5.png");
}

.wrapper--hero::after {
  content: "";
  z-index: 1;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
/*   background: rgba(0, 0, 0, 0.1); */
  pointer-events: none;
}

.bg-layer {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	animation: bg-fade 18s infinite;
	opacity: 0;
}

.bg-1 {
  background-image: url('/wp-content/uploads/2026/04/smilecook-202602-10.png');
  animation-delay: 0s;
}

.bg-2 {
  background-image: url('/wp-content/uploads/2026/04/smilecook-202602-11.png');
  animation-delay: 6s;
}

.bg-3 {
  background-image: url('/wp-content/uploads/2026/04/smilecook-202602-9.png');
  animation-delay: 12s;
}


.message-wrapper {
	position:relative;
	width:100%;
	background-image: url("/wp-content/uploads/2026/03/smilecook-202602-40-5.png");
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.giant-typo {
    position: absolute;
    z-index: 0;
    top: 100px;
    left: 0;
    width: 300px; 
    height: auto;
    pointer-events: none;
}

/* .giant-typo {
	position: absolute;
	z-index: 0;
	inset:-240px auto 0;
	transform: translateX(10%);
	font-size: 8em;
	font-weight: 100;
	letter-spacing: -0.01em;
	text-transform: uppercase;
	white-space: nowrap;
	pointer-events: none;
	    background: rgb(255 208 19);
  -webkit-background-clip: text;
  color: transparent;
} */

.top--heading1,
.top--heading2,
.top--heading3 {
	position: relative;
	z-index: 2;
	text-align:center;
}

span.ttl-main,
span.ttl-sub {
	display: inline-block;
}

h2.top--heading2.heading-wrap {
    background-color: rgba(255, 255, 255, 0.5);
	border-radius: 20px;
	margin-top:4rem!important;
	margin-bottom:4rem!important;
}

.top--heading2 .ttl-main {
	display:inline-block;
	font-size: var(--fontSize-h3-ttl);
	color: var(--color-text_bk);
	letter-spacing:var(--letter-spacing_title);
	background-color:#fff;
}

.top--heading3 {
  text-align: center;
  margin: 60px 0;
  position: relative;
}

h3 .ttl-main {
	position: relative;
	display: inline-block;
	font-size: var(--fontSize-h3-ttl);
	color: var(--color-text_bk);
	letter-spacing:var(--letter-spacing_title);
	font-weight: bold;
	background: #fff;
	clip-path: polygon(0% 0%, 100% 0%, 95% 50%, 100% 100%, 0% 100%, 5% 50%);
	margin-top:-1rem;
	padding: 1.1rem 2.25rem 1rem;
	border-bottom: solid 4px #e8e7e7;
}

h3.top--heading3.heading-wrap {
	margin-bottom:0!important;
}

.top--heading3 .ttl-sub {
    z-index: 1;
    position: relative;
	font-size: var(--fontSize-h3-ttl_sub);
    color: var(--color-orange);
}

.top--heading3__child {
	font-size: 1rem;
	color: var(--color-orange);
	text-align: center;
    font-weight: bold;
}

span.ttl-main {
	margin-bottom: var(--space-mb_subTtl);
}

.top--heading1 .ttl-main,
.top--heading1 .ttl-sub {
	white-space: nowrap;
	font-family: var(--font-maru);
	color:#ff8312;
	background-color: rgba(255, 251, 249, 0.75);
	line-height: 1.4;
	border-radius:10px;
	padding-left:1rem;
}

.top--heading1 .ttl-main {
	font-size: var(--fontSize-hero);
	font-weight: var(--fontWeight-ex-bold);
	letter-spacing:var(--letter-spacing_title);
}

.top--heading1 .ttl-sub {
	font-size: var(--fontSize-hero_sub);
	font-weight: var(--fontWeight-bold);
}

.works--wrapper {
	background-image: url("/wp-content/uploads/2026/03/bg-kinari.png");
}

.section__title.list__title {
  position: relative;
  display: inline-block;
  padding-bottom: 10px;
}

.section__title.list__title::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 90%;
	transform: translateX(-50%);
	height: 3px;
	background-color: #a8d08d; 
	border-radius: 2px;
}

.work--list {
	display: grid;
    grid-template-columns: 1fr 1fr;
}

.top--heading2,
.top--heading3 {
	font-weight: var(--fontWeight-bold);
}

.top--heading2 .ttl-sub {
	font-size: var(--fontSize-h2-ttl_sub);
	color: var(--color-green_dark);
	letter-spacing:var(--letter-spacing_reading);
}

.text--wrap p,
.text--wrap__center p {
	font-size: var(--fontSize-read-text);
}

.text--wrap__center p {
	text-align:center;
}

.reading {
	font-size: var(--fontSize-read-text);
}
/* ================================
reset
================================ */

h1,h2,h3,h4,h5,h6{
	margin:0!important;
	padding:0!important;
	font-size:inherit;
	font-weight:inherit;
	line-height:inherit;
}

.article h2,
.article h3 {
    font-size: inherit;
    padding: inherit;
    background-color: inherit;
    border-radius:inherit;
	border:none;
}

.wrap {
	width:inherit;
}

.wp-block-group {
	margin-bottom:0!important;
}

.entry-content {
    margin-top: 0!important;
    margin-bottom: 0!important;
}

.entry-content>* {
	margin-bottom:0!important;
}
.entry-content>*, .mce-content-body>*, .article p {
	margin-bottom:0!important;
}

/* ================================
layout
================================ */

main{
	padding:0!important;
}

.content.cf{
	margin-top:0!important;
}

.article{
	margin-bottom:0!important;
}

.btn-area{
  display:flex;
  flex-wrap:wrap;
  gap:1rem;
}

.btn-area .btn{
  flex:1 1 320px;
  text-align:center;
  display:block;
}

/* ================================
site width
================================ */
.siteview-wide,
.siteview-base,
.text-siteview {
	position: relative;
	overflow: hidden;
	margin:auto;
	padding:80px 0 ;
}

/* view-1200px */
.siteview-wide {
	max-width:var(--mv-siteview);
}

/* view-1100px */
.siteview-base {
	max-width:var(--siteview);
}

.text-siteview {
	max-width:var(--siteview--readText);
}
/* ================================
images
================================ */
/* ================================
grid
================================ */

.column--three{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:var(--space-md);
}

.column--three--inner{
	padding:1.5rem;
	background-image:url("/wp-content/uploads/2026/03/bg-note.png");
	background-size:cover;
	background-position:center;
	background-repeat:no-repeat;
}

/* ================================
button
================================ */

.btn,
a.btn,
button.btn{
	font-size:var(--subtitle);
	font-weight:700;
	line-height:1.5;
	display:inline-block;
	padding:1rem 4rem;
	text-align:center;
	letter-spacing:0.1em;
	border-radius:0.5rem;
}

/* ================================
section title
================================ */

h4.section__title,
.font-style--green_d {
	border:none;
	line-height:2;
}

/* ================================
utility
================================ */

.inner-center{
display:flex;
justify-content:center;
}

/* ================================
footer remove
================================ */

.page .sns-follow,
.breadcrumb {
	display:none;
}

.footer{
	margin-top:0;
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */


/* -----h2~h3----- */

.text {
	font-size:var(--text);
	line-height:1.8;
}

.spbr {
	display:none;
}

.pcbr {
	display:block;
}

.pc-only {
	display:inline;
}

/* -----bg-img----- */
.bg-cover {
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.section--contact-bg {
	background-image: url("/wp-content/uploads/2026/03/bg-contact-grn.png");
}

.section--news-bg {
	background-image: url("/wp-content/uploads/2026/03/名称_未_設定-10-26.jpg");
}

.bg-note {
	background-image: url("/wp-content/uploads/2026/03/bg-note.png");
}

.bg-kinari {
	background-image: url("/wp-content/uploads/2026/03/bg-kinari.png");
}

.text--wrap.work--list__wrapper {
	width:100%;
}
/* =====bg-img===== */

.column--three {
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:var(--space-md);
}

.column--three--inner {
	display:flex;
	flex-direction:column;
	align-items:center; 
	background-image: url("/wp-content/uploads/2026/03/bg-note.png");
	background-size: contain;
	background-position: center;
	background-repeat: repeat;
	padding:1rem;
}

.column--three--inner p {
	margin:0;
}

.btn,
a.btn,
button.btn {
  font-size: var(--subtitle);
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
}

a.btn-c {
  font-size: var(--subtitle);
  position: relative;
  padding: 1.5rem 2rem;
  color: #fff;
  background: #32b16c;
  -webkit-box-shadow: 0 5px 0 #2c9d60;
  box-shadow: 0 5px 0 #2c9d60;
}

a.btn-c span {
  font-size: var(--text-small);
  display: inline-block;
  width: 100%;
  margin-bottom: 0.5em;
  padding: 0.2rem 0.5rem;
  color: #32b16c;
  border-radius: 4px;
  background: #fff;
}

a.btn-c:hover {
  -webkit-transform: translate(0, 3px);
  transform: translate(0, 3px);
  color: #fff;
  background: #38c578;
  -webkit-box-shadow: 0 2px 0 #2c9d60;
  box-shadow: 0 2px 0 #2c9d60;
}

a.btn-c:hover:before {
  left: 2rem;
}

.inner-center {
	display:flex;
	justify-content:center;
	align-items:center:
	margin:0;
}

.page .sns-follow,
.breadcrumb {
    display: none;
}

.article {
	margin-bottom:0!important;
}

.work--list {
	width:100%;
}

.footer {
	background-color:var(--color--green);
	margin-top:0;
}

@media(max-width:768px){
.spbr{
	display:block;
}

.pcbr,
.pc-only {
	display:none;
}
	
.column--three {
grid-template-columns:1fr;
}
}
/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px){
.top--heading2 .ttl-main {
	font-size: var(--fontSize-h2-sp);
	letter-spacing:var(--letter-spacing_title);
}

.heading-wrap {
	margin-bottom:2rem!important;
}	
	
.siteview-wide-spCol{
  flex-direction:column;
}
	
.work--list {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem;
}	
	
.siteview-wide,
.siteview-base,
.text-siteview {
	position: relative;
	overflow: hidden;
	margin:auto;
	padding-top:40px;
	padding-bottom:40px;
}

/* view-1200px */
.siteview-wide {
	max-width:100%;
}

/* view-1100px */
.siteview-base,
.text-siteview {
	max-width:88%;
}	
}

/*480px以下*/
@media screen and (max-width: 480px){
.pcbr,
.pc-only {
	display:none;
}

.spbr {
	display:inline;
}	
	
h1 span.ttl-main {
    margin-bottom: 1rem;
}

.top--heading1 .ttl-sub {
	text-align:right;
}	
	
.wrapper--hero {
	position: relative;
	display: flex;
	justify-content: space-around;
	align-items: center;
	width: 100%;
	height: 25vh;
	object-fit:contain;
}

.contact--btn {
	width:90%;
}
	
/* view-1100px */
.siteview-base,
.text-siteview {
	max-width:85%;
}
	
.column--three--inner {
	padding:1rem 0.5rem;
}	

.message-wrapper {
	background-image: url("/wp-content/uploads/2026/04/bg-message_sp.png");
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.top--heading1 .ttl-main {
	width:100%;
	text-align:left;
}
	
.top--heading3 .ttl-main,
.top--heading3 .ttl-sub	{
	text-align:center;
}
	
.bg-layer {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	animation: bg-fade 18s infinite;
	opacity: 0;
}

.message-wrapper {
	padding:0 1rem:
}	

.wrapper--mv{
	width: 100%;
	margin: auto;
	background-image: url("/wp-content/uploads/2026/03/smilecook-mv.png");
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	aspect-ratio: 16 / 9;
	height: auto;
}
	
.siteview-wide {
	position: relative;
	overflow: hidden;
	max-width:var(--mv-siteview);
	margin:auto;
	padding:0!important;
}
	
.siteview-base {
	position: relative;
	overflow: hidden;
	max-width:var(--mv-siteview);
	margin:auto;
	padding:1rem 0.5rem;
}

/* view-1100px */
.siteview-base {
	position: relative;
	overflow: hidden;
	max-width:var(--siteview);
	margin:auto;
	padding:4rem 0.5rem;
}	
	
a.btn-c {
  font-size: var(--subtitle);
  position: relative;
  padding: 1.5rem 2rem;
  color: #fff;
  background: #32b16c;
  -webkit-box-shadow: 0 5px 0 #2c9d60;
  box-shadow: 0 5px 0 #2c9d60;
}
	
.sp-container--pd {
	padding-top:1rem!important;
}
	
.sp--horz-container	 {
	display:inline-block;
 	writing-mode: inherit;
	margin-top:-4rem;
}
	
.top--heading1 .ttl-main,
.top--heading1 .ttl-sub {
	background-color: rgba(255, 251, 249, 0.4);
	line-height: 1.2;
}	
}

@keyframes bg-fade {
  0% { opacity: 0; }
  10% { opacity: 1; }
  33% { opacity: 1; }
  43% { opacity: 0; }
  100% { opacity: 0; }
}
