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

/************************************
** 子テーマ用のスタイルを書く
************************************/


@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;500;600;700;800&display=swap');

/* 基本設定 */

body {
 overflow-x: hidden;
	color:#222222;
}

nav i {
	margin-right:8px;
	color:#319A80;
}

a {
	color:#03af73;
	text-decoration:none;
}

img {
	display:block;
}


.header-container {
	background:#ECE7E1;
}

.bold-red {
	color:#DA3957;
}

/* 各余白を削除 */
.page .content,
.page .main,
.page .article,
.page .entry-content
{
	padding:0 !important;
	margin:0 !important;
	background:#ECE7E1;
}


body.single,
.single .content,
body.archive,
.archive .content
{
	background:#ECE7E1;
}




/* カバーブロックを全幅にする */

.entry-content .wp-block-cover,
.entry-content .wp-block-cover-image {
  margin: 0 calc((100% - 100vw)/2) ;
  min-height: auto;
  width: auto;
  padding-top:100px;
  padding-bottom:100px;
}
@media screen and (max-width: 1023px){
.entry-content .wp-block-cover,
.entry-content .wp-block-cover-image {
  padding-top:60px !important;
  padding-bottom:60px !important;
}
}
@media screen and (max-width: 480px){
.entry-content .wp-block-cover,
.entry-content .wp-block-cover-image {
  padding-top:60px !important;
  padding-bottom:60px !important;
}
}


/* スマホのみの改行用 */
.sp-br {
	display:none;
}
@media screen and (max-width: 480px){
.sp-br {
	display:block;
}
.sp-no {
	display:none;		
}
.sp-only {
	display:block;
	margin-top:20px;
}
}

/* ヘッダー */
.tagline {
	margin-bottom:-10px !important;
	padding-bottom:0 !important;
	font-size:16px;
	font-weight: 600;	
	font-family: "Shippori Mincho", serif;
}
.logo-header.logo-text {
	margin:-20px auto -20px !important;
} 
.site-name-text {
	font-size:42px;
	color:#222222;
	font-family: "Shippori Mincho", serif;
	font-weight: 500;
	font-style: normal;
	letter-spacing:0.08em;
}

@media screen and (max-width: 480px){
.site-name-text {
	font-size:32px !important;	
}
.tagline {
	margin-bottom:0 !important;	
	font-size:15px;
}
	
}

#navi {
	background:#F3F1ED;
}
nav .menu-header a {
	color:#222222;	
}

.page .article-header.entry-header {
	display:none;
}

/* フッター */

.footer {
	margin:0 !important;
}
.footer-bottom {
	margin:0 !important;
	padding:0 !important;
}

/* ウィジェット */

.swiper-button-prev,
.swiper-button-next {
	display:none !important;
}


/* 見出し */

.article h1,
.article h2,
.article h3,
.article h4,
.article p.h1-sub,
.article p.h2-sub,
.article p.h3-sub,
.article p.h4-sub,
.cta .cta-title
{
  font-family: "Shippori Mincho", serif;
  font-weight: 600;
  font-style: normal;
  letter-spacing:0.05em;
  line-height:1.6;
}

.page .article h1 {
	font-size:30px;
	background:none;
	margin-top:-14px !important;	
	margin-bottom:60px !important;
	line-height:1.6;
}
.wp-block-cover h1 {
	font-size:42px !important;	
}
.wp-block-cover .lead {
	font-size:20px;
}
@media screen and (max-width: 480px){
.wp-block-cover h1 {
	font-size:26px !important;	
}
.wp-block-cover .lead {
	font-size:18px;
}
.wp-block-cover .lead p {
	text-align:left !important;
}	
.wp-block-cover .lead p br {
	display:none;
}	
	
}


.page .article h2 {
	font-size:46px;
	text-align:center;
	background:none;
	margin-top:-34px !important;	
	margin-bottom:30px !important;
	color:#222222;
}
.article p.h2-sub {
	text-align:center;
	font-size:24px;
	font-weight:bold;
	margin-bottom:35px;
}

@media screen and (max-width: 1023px){
.page .article h2 {
	margin-top:-84px !important;	
	margin-bottom:20px !important;
}
}

.page .article h3 {
	font-size:32px;
	text-align:left;
	background:none;
	border:none;
	padding-left:0 !important;
	margin-bottom:40px !important;
	color:#339CB1;
}
.article p.h3-sub {
	text-align:center;
	font-size:24px;
	font-weight:bold;
	margin-bottom:70px;
}
.page .article h4 {
	text-align:left;
	font-size:30px;
	border-left:6px solid #339CB1;
	border-top:none;
	border-bottom:none;
	margin-bottom:20px !important;
	color:#222222;
		padding-left:16px !important;
}
.article p.h4-sub {
	text-align:center;
	font-size:20px;
	font-weight:bold;
	margin-bottom:46px;
}

.single .article h2 {
	background:#03af73;
	color:#fff;
	margin-top:50px;
}
.single .article h3 {
	border-color:#00ACDB;
	border-top:none;
	border-right:none;
	border-bottom:none;
	border-left:solid #03af73 10px;	
	margin-top:50px;
}

h3.widget-sidebar-title {
	background:#03af73;	
	color:#fff;
}

.single .article h4 {
	border-color:#00ACDB;	
	border-top:none;
	border-top:dotted #03af73 3px;
	border-bottom:dotted #03af73 3px;
}

@media screen and (max-width: 1023px){
	.margin-40 {
		margin-top:-40px !important;
	}
}

@media screen and (max-width: 480px){

/* 見出し（スマホ）*/
	
.page .article h1 {
	font-size:30px;
}
.article p.h1-sub {
	font-size:24px;	
	margin-top:20px;
}
.wp-block-group.lead {
	margin-top:-30px !important;
	margin-bottom:-20px !important;
}
.page .article h2 {
	font-size:30px;	
}
.article p.h2-sub {
	font-size:22px;	
	text-align:left;
}
.page .article h3 {
	font-size:22px;	
	margin-bottom:12px !important;
		  letter-spacing:0.05em !important;
}
.article p.h3-sub {
	font-size:22px;	
}
.page .article h3.voice {
	font-size:22px;	
	text-align:left;
}
.page .article h4 {
	font-size:19px;
			  letter-spacing:0.05em !important
}
.article p.h4-sub {
	text-align:left;
}
}

/*　リスト */

.article ul,ol {
	margin-top:40px !important;
	padding-left:0 !important;
	line-height:2.0;
	list-style: none;
}
.article ul li {
  position: relative;
  padding: 0 0 0 1.6em;
  margin: 0;
  margin-bottom: 24px !important;
}
.article ul li::before {
  position: absolute;
  left: 0;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: '\f152';
  color: #03af73;
}
li:last-child {
	margin-bottom: 0 !important;
}

.navi-footer li {
	border:none !important;
}

.toc-content ul,
.toc-content ol {
	margin-top:0 !important;
	padding-left:0 !important;
	line-height:2.0;
	list-style: none;
}
.toc-content ul li,
.toc-content ol li {
	font-weight:bold;
	margin-bottom:1em;
}

.toc-content ul li li,
.toc-content ol li li {
	font-weight:normal;
	padding-left:0.8em;
	margin-bottom:0;
}

/* 表（テーブル）*/

.page table {
	max-width:840px;
	margin:0 auto;
}

.entry-content .wp-block-cover.text-area {
  padding:30px;
  border-radius:16px;
}
@media screen and (max-width: 480px){
.entry-content .wp-block-cover.text-area {
  padding:30px 14px;
}	
}

.entry-content .wp-block-cover.text-area ul,ol {
	margin-top:0 !important;
}


/* CTA */

.entry-content .wp-block-cover.cta-cover,
.entry-content .wp-block-cover-image.cta-cover {
  padding-top:60px;
  padding-bottom:60px;
}

.wp-block-cover.cta {
	padding:30px 30px 40px !important;

	border-radius:16px;
}
.cta .cta-title {
	font-size:36px;
	font-weight:bold;
	text-align:center;
	margin-bottom:30px !important;
	color:#ffffff;
}
.cta-btn .wp-block-button a {
	border-radius:8px;	
	background:#F1B217;
	color:#fff;
	font-weight:600;
	  font-family: "Shippori Mincho", serif;
}

.final .wp-block-button a {
	border-radius:8px;	
	background:#F1B217;
	color:#fff;
	margin-top:20px;
	font-size:30px;
	  font-family: "Shippori Mincho", serif;
	font-weight:600;
}

@media screen and (max-width: 480px){
.wp-block-cover.cta {
	padding:30px 15px 40px !important;	
}
.cta .cta-title {
	font-size:26px;
}
}

.widget_cta_box {
	background:#03af73 !important;
	border-radius:16px !important;
}
.widget_cta_box .cta-heading {
	letter-spacing:0.05em;
}


/**************************************************************/
ここにサイト独自のCSSを書く
/**************************************************************/


/* デザイン */

.bold-red {
	color:#F38600;	
}

.icon img {
	margin-bottom:15px!important;
}

#custom_html-2 ul,ol {
	margin-top:40px !important;
	padding-left:0 !important;
	line-height:2.0;
	list-style: none;
}

#custom_html-2 ul li {
  position: relative;
  padding: 0 0 0 1.6em;
  margin: 0;
  margin-bottom: 24px !important;
}
#custom_html-2  ul li::before {
  position: absolute;
  left: 0;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: '\f152';
  color: #03af73;
}

.hero-message {
	background:#fff !important;
	padding:60px;
	border-radius:20px;
	border:solid 8px #DCD7D2;
}
@media screen and (max-width: 480px){
.hero-message {
	padding:60px 20px 70px !important;
	margin-top:-10px !important;
	margin-bottom:50px !important;
}	
}

.entry-content .wp-block-cover.slider,
.entry-content .wp-block-cover-image.slider {
  padding-top:60px;
  padding-bottom:60px;
}

/* 画像のループスライド */
.img-slider {
  display: flex;
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  height:285px;
  overflow: hidden;
}
.img-slider ul{
	display:flex;
	padding: 0 !important;
	margin:0 !important;
}
.img-slider li{
	width:300px;
	height:auto;
	list-style: none;
	padding: 0 !important;
	margin:0 10px !important;
}
.img-slider ul li::before {
	  content:none;
}
.img-slider li img {
	border-radius:10px;
}

.img-slider ul:first-child {
  animation: slide1 150s -75s linear infinite;
}

.img-slider ul:last-child {
  animation: slide2 150s linear infinite;
}
@keyframes slide1 {
  0% {
    transform: translateX(100%);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes slide2 {
  0% {
    transform: translateX(0);
  }
  to {
    transform: translateX(-200%);
  }
}
@media screen and (max-width: 480px){
.img-slider {
  height:143px;
  overflow: hidden;
}	
.img-slider li{
	width:150px;
	margin:0 5px !important;
}
}

.wp-block-group.hero-message {
	position: relative;
}

.hero-message .re1 img{
	position: absolute;
	top: -40px;
	left: -40px;
	width:200px;
	height:auto;
}
.hero-message .re2 img{
	position: absolute;
	top: -80px;
	right: -70px;
		width:200px;
	height:auto;
}
.hero-message .re3 img{
	position: absolute;
	bottom: -40px;
	right: -60px;
		width:200px;
	height:auto;
}
.hero-message .re4 img{
	position: absolute;
	bottom: -40px;
	left: -40px;
		width:200px;
	height:auto;
}
/*1023px以下*/
@media screen and (max-width: 1023px){
.hero-message .re1 img{
	top: -60px;
	left: -10px;
	width:200px;
}
.hero-message .re2 img{
	top: -100px;
	right: -16px;
	width:190px;
}	
.hero-message .re3 img{
	bottom: -50px;
	right: -16px;
	width:200px;
}
.hero-message .re4 img{
	bottom: -50px;
	left: -10px;
	width:200px;
}
}

@media screen and (max-width: 480px){
.hero-message .re1 img{
	top: -50px;
	left: -20px;
	width:140px;
}
.hero-message .re2 img{
	top: -80px;
	right: -20px;
	width:140px;
}	
.hero-message .re3 img{
	bottom: -60px;
	right: -20px;
	width:140px;
}
.hero-message .re4 img{
	bottom: -60px;
	left: -20px;
	width:140px;
}
}

.worry {
	position: relative;	
}
.worry .w-1 img {
	position: absolute;
	top: 10px;
	left: -100px;
	width:200px;
	height:auto;
	z-index: 100;
}
.worry .w-2 img {
	position: absolute;
	top: 10px;
	right: -100px;
		width:200px;
	height:auto;
		z-index: 100;
}
@media screen and (max-width: 480px){
.worry .w-1 img {
	top: 30px;
	left: -60px;
	width:120px;
}
.worry .w-2 img {
	position: absolute;
	top: 34px;
	right: -60px;
	width:120px;
}
}

.regret {
	position: relative;	
}
.regret .r-1 img {
	position: absolute;
	top: 10px;
	left: -80px;
	width:200px;
	height:auto;
	z-index: 100;
}
.regret .r-2 img {
	position: absolute;
	top: 0;
	right: -80px;
		width:200px;
	height:auto;
		z-index: 100;
}
@media screen and (max-width: 1023px){
.regret .r-1 img {
	top: 10px;
	left: -40px;
	width:200px;
}
.regret .r-2 img {
	top: 0;
	right: -40px;
	width:200px;
}
}
@media screen and (max-width: 480px){
.regret .r-1 img {
	top: 40px;
	left: -50px;
	width:120px;
}
.regret .r-2 img {
	top: 30px;
	right: -50px;
	width:120px;
}	
}

h3.margin-top {
	margin-top:-50px !important;
		z-index: 100;	
}

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

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}
