/*
Theme Name: Lightning Child
Theme URI: 
Template: lightning
Description: 
Author: 
Tags: 
Version: 0.6.0
*/


/*　共通　*/
@media (min-width: 992px) {
    .site-body {
        padding: 0rem 0;
    }
}
@media (max-width: 991px) {
	.site-body{
		padding-top:0;
	}
	.site-header-logo img {
	margin-left: 10px;
	}
	.site-header-logo {
		display: flex;
		align-items: center;
		position:relative;
	}
	.sp{
		display:block;
	}
	.pc{
		display:none;
	}
	.hnote img{
		height:35px;
	}
	.hnote{
		position: absolute;
		top: 12px;
		right: 80px;
	}
	.foot-2{
		margin-bottom:2em;
	}
	.site-footer-content{
		margin-bottom:80px;
	}
	.bgnone{
		background-image:none !important;
	}
	h2{	
    font-size: 26px !important;
	}
	#breadcrumb{
		margin-top:80px;
		border-top:none;
	}
	.page-header{
		min-height:120px !important;
	}
}
@media (min-width: 992px) {
    .site-header-logo {
        padding-top: 0.8rem;
        margin-bottom: 0.5rem;
    }
	.sp{
		display:none;
	}
	#fixed-bottom-menu{
		display:none;
	}
}
li.nonelink a:hover, li.nonelink a:focus{
	opacity:1;
}
.page_top_btn{
	background: #fff;
    border: solid 2px #00BA8F;
    border-radius: 50%;
    width: 50px;
    height: 50px;
	box-shadow:none;
}
.page_top_btn::before{
	content: "▲";
    color: #00BA8F;
    font-size: 1.1em;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 92%;
}

.page-header{
	background-image:url("http://hamigaku.com/wp-content/uploads/2026/01/header-blog-2.jpg");
	background-repeat: no-repeat;
	background-size: cover;
	min-height: 200px;
}
.archive h1{
	display:none;
}
.post-type-archive-plan .vk_post .media-img{
	min-height:220px;
}
.post-type-archive-plan h5.media-title a{
	color:#00BA8F;
	font-size:20px;
}
.btn-primary{
	background-color:#00BA8F;
	border: none;
}
.media-img{
	border:none;
}
.main-section{
	min-height:700px;
}
header#site-header::before{
	content:"";
	width:100%;
	height:4px;
	background-image:linear-gradient(130deg, #00e0a4, #00c9c9);
	position:absolute;
	bottom: -10px;
	z-index: 3;
}
#comments{
	display:none;
}
@media (min-width: 992px) {
    .device-pc .global-nav-list>li>a {
        padding: 5px 2em;
    }
	.device-pc .global-nav-list>li:last-child>a {
        padding: 5px 0;
    }
}
@media (min-width: 992px) {
	.device-pc .global-nav-list>li>a{
		position:relative;
	}
	.device-pc .global-nav-list>li>a::before{
		content:url("http://hamigaku.com/wp-content/uploads/2026/01/bmenu.png");
		position:absolute;
		left:-5px;
		padding-top: 4px;
	}
	.device-pc .global-nav-list>li:last-child>a::before, .device-pc .global-nav-list>li:nth-child(6)>a::before{
		content:"";
	}
}
.breadcrumb{
	border-bottom:none;
}
.foot-1 li a{
	color: #fff;
    text-decoration: none;
}
.foot-1 li a:hover{
	opacity:0.5;
}
.entry-footer{
	display:none;
}
#block-14{
	margin-top:50px;
	margin-bottom: 10px;
}
.home #block-14{
	margin-top:0;
}
/*　トップページ　*/
.f-min{
	font-family:"Kozuka Mincho Pr6N", serif;
}
.flex-center{
	justify-content:center;
}
.flex{
	display:flex;
}
.ser-h{
	border-top: 4px solid;
  border-bottom: 4px solid;
  border-image: linear-gradient(to right, #1CF097, #0FE5E5) 1;
	    display: flex;
    justify-content: center;
}
.line-top{
	border-top: 4px solid;
  border-image: linear-gradient(to right, #1CF097, #0FE5E5) 1;
}
.item-flex{
	display:flex;
}
.item-flex > div{
	max-width: 570px;
}
.item-1{
	flex-direction: row-reverse;
}
.item-1 p{
	max-width: 350px;
    float: left;
}
.item-2 p{
	max-width: 300px;
    float: left;
}
.item-1 p.clear, .item-2 p.clear{
	 float: none;
    max-width: 100%;
}
.teiki-table td{
	    padding-top: 15px;
    padding-bottom: 15px;
	padding-left: 0;
    align-content: baseline;
}
.teiki-table tr:first-child td{
	    padding-top: 10px;
    padding-bottom: 10px;
}
.teiki-table td strong{
	  color:#fff;
	background:#00C799;
	border-radius:5px;
	padding:3px 10px;
}
.teiki-table tr:last-child td strong{
	   background:#FA9033;
}
.teiki-table tr td:first-child{
	   max-width:80px;
}
.kaizen-list{
	max-width:850px;
}
.kaizen-list > div{
	display:flex;
	flex-direction:column;
	justify-content:center;
	height:170px;
}
.kaizen-list > div p{
	   line-height: 1.2;
}
.kaizen-list .kaizen-s{
	position:relative;
}
.kaizen-list .kaizen-s strong{
	position:absolute;
	font-weight:normal;
	font-size:14px;
	bottom:-20px;
	right:20px;
}
@media (max-width: 991px) {
	.kaizen-list .kaizen-list-box.kaizen-s strong {
		font-size: 12px !important;
		bottom: 5px;
		right: 0;
	}
	.teiki-table tr td:first-child{
		width:90px;
		max-width: initial;
	}
}
.jisseki-b{
	margin-top:-30px;
	margin-left:-60px;
}

.voice-1{
	position:relative;
}
.voice-1 figure.voice-1-img{
	position:absolute;
	top:-20px;
	right:20px;
}
.vk_slider .swiper-button-prev{
	margin-left: 1%;
	background-color:initial;
	background-image:url(http://hamigaku.com/wp-content/uploads/2026/01/arrow1.png);
	background-size:contain;
	background-repeat:no-repeat;
}
.vk_slider .swiper-button-next{
	margin-right:1%;
	background-color:initial;
	
	background-image:url(http://hamigaku.com/wp-content/uploads/2026/01/arrow2.png);
	background-size:contain;
	background-repeat:no-repeat;
}
.swiper-button-prev:after, .swiper-button-next:after{
	display:none;
}

/*　アーカイブ　*/
:root :where(.wp-block-separator.is-style-dots):before {
    color: #fff;
    background-image: repeating-linear-gradient(90deg, #d1d1d1, #d1d1d1 2px, transparent 2px, transparent 4px);
    background-position: left top;
    background-repeat: repeat-x;
    background-size: 100% 1px;
    width: 100%;
    display: block;
}
.side-cate{
	max-width:194px !important;
}
#block-10{
	margin-bottom:0;
}
.main-section>.vk_posts>.media.vk_post-col-sm-12:first-child{
	border-top:none;
}
.post-type-archive-plan .site-body{
	margin-top:50px;
}
.post-type-archive-plan .page-header{
	position:relative;
}
.post-type-archive-plan .page-header::before{
	content:"";
	position:absolute;
	width:276px;
	height:176px;
	background:url(http://hamigaku.com/wp-content/uploads/2026/01/title-plan.png);
	background-size:contain;
	background-repeat:no-repeat;
	left: 50%;
    right: 50%;
	bottom: -160px;
    transform: translate(-50%, -50%);
}
.post-type-archive-infomation .vk_post .media-img{
	display:none;
}
.post-type-archive-infomation .media-body{
	width:100%;
}
/*　ウィジェット　*/
#categories-2 h4.sub-section-title, .widget_wp_widget_vk_taxonomy_list h4.sub-section-title{
	display:none;
}
.widget_categories>ul li a, .widget_wp_widget_vk_taxonomy_list ul.localNavi li a{
	border-bottom: 1px dashed var(--vk-color-border-hr);
	font-size: 16px;
}
.widget_categories>ul li a::before, .widget_wp_widget_vk_taxonomy_list ul.localNavi li a::before{
	content:"▶︎";
	color:#00E0A4;
	font-size:16px;
	margin-right: 10px;
}
#maxmegamenu_reusable_block-3{
	margin-bottom:10px;
}
@media (max-width: 991px) {
.sub-section .widget_media_image{
	text-align:center;
}
}
/*　追従バナー　*/
.fixed_banner00 {
    display: flex;
    flex-direction: column;
    position: fixed;
    z-index: 99999;
    top: 110px;
    right: 20px;
    background: transparent;
    border: none;
    border-radius: 0;
    gap: 5px;
}
.fixed_banner00 a {
    width: 350px;
    display: block;
    margin: 0;
    margin-top: -22px;
    margin-bottom: -22px;
}
.fixed_banner02 a {
    width: 260px;
    display: block;
    margin: 0;
    margin-top: -7px;
    margin-bottom: -22px;
}
.fixed_banner02 {
    display: flex;
    flex-direction: column;
    position: fixed;
    z-index: 20;
    bottom: 13%;
    right: -10px;
    background: transparent;
    border: none;
    border-radius: 0;
    gap: 5px;
}
.fixed_banner02 img.b-2{
	box-shadow: 10px 3px 6px #999;
}
.fixed_banner02, .fixed_banner00 {
  animation: fade-in 4s;
  animation-fill-mode: forwards;
}
@keyframes fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.fixed_banner02 img {
    width: 100%;
    height: auto;
    display: block;
    margin: 0;
    padding: 0;
}
@media (max-width: 991px) {
	.fixed_banner02, .fixed_banner00{
		display:none;
	}
}
.foot-box .r-b{
	border-right:1px solid #707070;
}
@media (max-width: 991px) {
	.foot-box .r-b{
		border-right:none;
		border-bottom:1px solid #707070;
		padding-bottom:20px;
	}
}
/*　固定ページ　*/
.title{
position:relative;
}
.title img{
max-width:276px;
position:absolute;
right:30%;
left:70%;
transform: translate(-30%, -50%);
top:-100px;
z-index:3;
}
@media (max-width: 991px) {
	.title img{
right:50%;
left:50%;
transform: translate(-50%, -50%);
}
}
/*　よくある質問　*/
.faq{
	justify-content:center;
}
.faq-list{
	padding-left:40px;
}
.faq-list .question{
	position:relative;
}
.faq-list .question::before{
	content:url('http://hamigaku.com/wp-content/uploads/2026/01/faq-q.png');
	position:absolute;
	left:-40px;
}
.faq-list .answer{
	position:relative;
}
.faq-list .answer::before{
	content:url('http://hamigaku.com/wp-content/uploads/2026/01/faq-a.png');
	position:absolute;
	left:-40px;
}
.b-2{
	max-width:600px;
	margin: 0 auto;
}
/*　投稿ページ　*/
.single-post .page-header, .single-plan .page-header, .post-type-archive-infomation .page-header, .single-infomation .page-header{
background-image:url("http://hamigaku.com/wp-content/uploads/2026/01/header-blog-2.jpg");
position:relative;
}
.single-post .page-header::before{
	position:absolute;
	content:"";
	width:276px;
	height:156px;
	background:url("http://hamigaku.com/wp-content/uploads/2026/01/title-blog-1.png");
	background-repeat:no-repeat;
	background-size:contain;
	left: 50%;
    right: 50%;
	bottom: -160px;
    transform: translate(-50%, -50%);
	animation: fade-in 4s;
  animation-fill-mode: forwards;
}
@keyframes fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.single-plan .page-header::before{
	position:absolute;
	content:"";
	width:276px;
	height:156px;
	background:url("http://hamigaku.com/wp-content/uploads/2026/01/title-plan.png");
	background-repeat:no-repeat;
	background-size:contain;
	left: 50%;
    right: 50%;
	bottom: -160px;
    transform: translate(-50%, -50%);
	animation: fade-in 4s;
  animation-fill-mode: forwards;
}
@keyframes fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.post-type-archive-infomation .page-header::before, .single-infomation .page-header::before{
	position:absolute;
	content:"";
	width:276px;
	height:156px;
	background:url("http://hamigaku.com/wp-content/uploads/2026/01/infomation.png");
	background-repeat:no-repeat;
	background-size:contain;
	left: 50%;
    right: 50%;
	bottom: -160px;
    transform: translate(-50%, -50%);
animation: fade-in 4s;
  animation-fill-mode: forwards;
}
@keyframes fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.single-post .page-header-title, .single-plan .page-header-title, .single-infomation .page-header-title{
display:none;
}
.single-post .site-body, .single-plan .site-body, .post-type-archive-infomation .site-body, .single-infomation .site-body{
	margin-top: 80px;
}
.single-post ol.breadcrumb-list, .single-plan ol.breadcrumb-list, .single-infomation ol.breadcrumb-list{
	width: 350px;
}
.single-post h1.entry-title, .single-plan h1.entry-title{
	position:relative;
	padding-left:40px;
	font-size:30px;
}
.single-post h1.entry-title::before, .single-plan h1.entry-title::before{
	position:absolute;
	content:"";
	background-image:url("http://hamigaku.com/wp-content/uploads/2026/01/blog-h1-1.png");
	background-repeat:no-repeat;
	background-color:#00E0A4;
	width:20px;
	height:100%;
	left:0;
}
.single-post .entry-meta-item-updated, .single-post .entry-meta-item-author, .single-post .entry-meta-item-date i{
	display:none;
}
.single-plan .entry-meta-item-updated, .single-plan .entry-meta-item-author, .single-plan .entry-meta-item-date i{
	display:none;
}
.single-infomation .entry-meta-item-updated, .single-infomation .entry-meta-item-author, .single-infomation .entry-meta-item-date i{
	display:none;
}
.single-post .entry-meta, .single-plan .entry-meta, .single-infomation .entry-meta{
	margin-top:20px;
}
.single-post .entry-meta-item-date, .single-plan .entry-meta-item-date, .single-infomation .entry-meta-item-date{
	padding:15px;
}
.single-infomation .entry-meta-item-date{
	padding-left:0;
}
.single-post h2, .single-plan h2, .single-infomation h2{
	font-size: 24px;
    padding: 0 10px 20px 25px;
    border-bottom: 1px solid #00E0A4;
	position:relative;
	margin:20px 0 5px;
}
.single-post h2::before, .single-plan h2::before, .single-infomation h2::before{
    left: 0;
    content: "";
    position: absolute;
    background: url(http://hamigaku.com/wp-content/uploads/2026/01/blog-h2.png);
    height: 100%;
    width: 15px;
    margin: 10px 0;
    bottom: 0;
}
.single-post h3, .single-plan h3{
	font-size: 24px;
	color:#00BA8F;
	padding-left:30px;
	position:relative;
	margin:20px 0 5px;
}
.single-post h3::before, .single-plan h3::before{
	content: url(http://hamigaku.com/wp-content/uploads/2026/01/blog-h3.png);
	position:absolute;
	left:0;
	top: 3px;
}
.single-post .box-img p, .single-plan .box-img p{
	position:relative;
	padding:10px 10px 10px 40px;
}
.single-post .box-img p img, .single-plan .box-img p img{
	position:absolute;
	left:20px;
}
.single-post .next-prev, .single-plan .next-prev, .single-infomation .next-prev{
	display:none;
}
div#ez-toc-container {
    counter-reset: ez-toc-counter;
}
#ez-toc-container{
	border-radius:10px;
	border:none;
	padding: 1.5em 5em;
}
div#ez-toc-container ul li a::before {
    background-color: #00BA8F;
    color: #fff;
    font-weight: bold;
    font-size: 16px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 30px;
    height: 30px;
    margin-right: 10px;
    flex-shrink: 0;
	content: counter(ez-toc-counter); 
    counter-increment: ez-toc-counter; 
}
div#ez-toc-container ul li {
    font-size: 20px;
    margin-bottom: 0px;
    padding: 10px 0;
    border-bottom: 2px dotted #707070;
}
div#ez-toc-container ul li:first-child {
    border-top: 2px dotted #707070;
}
.ez-toc-title-container{
	text-align:center;
	margin-bottom:2em;
}
div#ez-toc-container .ez-toc-title{
	font-size:24px;
	color: #00BA8F;
	font-weight:bold;
	letter-spacing:3px;
	font-family: Futura, "Century Gothic", Avenir, "Helvetica Neue", sans-serif;
}
.blog-table thead th{
	background-color:#00BA8F;
	color:#fff;
}
.blog-table thead th:nth-child(2){
	background-color:#FA9033;
}
.blog-table tbody td:nth-child(2){
	background-color:#FFFDD1;
}


/*　商品ページ　*/
.single-item .page-header, .single-item .breadcrumb, .single-item .entry-header{
	display:none;
}
.item-group{
	position:relative;
}
.item-group .open{
	position:absolute;
	right:20px;
	top:150px;
}
.item-group .open a{
    width: 170px;
    display: block;
    margin: 0;
    margin-top: -7px;
    margin-bottom: -22px;
}
.item-group .open{
    display: flex;
    flex-direction: column;
    position: fixed;
    z-index: 20;
    background: transparent;
    border: none;
    border-radius: 0;
    gap: 5px;animation: fade-in 4s;
  animation-fill-mode: forwards;
}
@keyframes fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}


ul.itempage-list{
	list-style-image: url(http://hamigaku.com/wp-content/uploads/2026/01/sankaku-1.png);
}
.item-colun{
	position:relative;
}
.item-colun::before{
	content:url(http://hamigaku.com/wp-content/uploads/2026/01/sen.png);
	position:absolute;
	top: -64px;
	left:0;
	
}
.point-list{
position:relative;
}
.point-img{
position:absolute;
top:-20px;
left:-10px;
}
.point-img2{
position:absolute;
bottom: -40px;
left: -60px;
}
.point-list h3{
	position:relative;
}
.point-list-img{
	position:absolute;
	right:-50px;
	top:100px;
}
.m-auto{
	margin:0 auto;
}
.single-item .vk_posts{
	display:none;
}
@media (max-width: 991px) {
	.point-con>div{
		margin:10px 0;
	}
	.point-img2 {
		bottom: -10px;
		left: -10px;
		width: 120px;
	}
	.point-list-img {
		right: -10px;
	}
	.point-list-img img{
		width:120px;
	}
	.bgcg{
		background-image:url(http://hamigaku.com/wp-content/uploads/2026/01/item-bg2.png) !important;
	}
	.item-colun.pd0{
		padding-left:0 !important;
	}
	.item-colun::before {
		display:none;
	}
	.title img{
		top: -150px !important;
	}
	#ez-toc-container {
		padding: 2em;
	}
}
.sub-menu li a:hover{
	opacity:0.5;
}
/* 点滅アニメーションの定義 */
@keyframes blinking {
  0%   { opacity: 0; }
  100% { opacity: 1; }
}

/* 点滅アニメーションを適用 */
.blink {
  animation: blinking 1s ease-in-out infinite alternate;
}


a.btn-primary:hover{
	background-color: #00BA8F;
}
.img-v img{
vertical-align:middle;
margin-right:5px;
}