/*
Theme Name: hncontents
Version: 1.0.0
Author: H&Ncontents Inc.
Description: This is a simple theme that supports responsiveness. Drop down menu on PC and hamburger menu on smartphone. The design is as minimal as possible so that you can customize it as you like.
Author URI: https://chanto.hn-contents.co.jp/
Tags: one-column, blog
Domain Path: /languages
chanto WordPress Theme, (C) 2026 H&Ncontents Inc
chanto is distributed under the terms of the GNU GPL.*/

/*width／pc1200・tb1023・sp767・540*/

@import url("property.css");
@charset "utf-8";
/*--- reset ---*/
*:where(:not(html,iframe,canvas,img,svg,video,audio):not(svg*,symbol*)){all:unset;display:revert}*,*::before,*::after{box-sizing:border-box}
html{-moz-text-size-adjust:none;-webkit-text-size-adjust:none;text-size-adjust:none}
a,button{cursor:revert}
ol,ul,li,menu,summary{list-style:none;margin:0;padding:0;}
img{max-inline-size:100%;max-block-size:100%;vertical-align: bottom;}
table{border-collapse:collapse;}
input,textarea{-webkit-user-select:auto;}
textarea{white-space:revert;}
meter{-webkit-appearance:revert;appearance:revert}:where(pre){all:revert;box-sizing:border-box}::placeholder{color:unset}:where([hidden]){display:none}:where([contenteditable]:not([contenteditable="false"])){-moz-user-modify:read-write;-webkit-user-modify:read-write;overflow-wrap:break-word;-webkit-line-break:after-white-space;-webkit-user-select:auto}:where([draggable="true"]){-webkit-user-drag:element}:where(dialog:modal){all:revert;box-sizing:border-box}

/*-----------------------*/
/*--------- 共通 ---------*/
/*-----------------------*/
html { scroll-behavior: smooth;}
*{font-family: 游ゴシック体, 游ゴシック, 'Yu Gothic', YuGothic, Arial, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', Osaka, メイリオ, Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;}
html { font-size: 62.5% /* 10 px */}
body {font-size:1.6rem;color:var(--mein-color);width: 100%; margin:0;background: #fff;}
a {color:var(--link-color);text-decoration: none;}
h1,h2,h3,h4,h5,h6{margin:0;padding:0;font-size:1.6rem;}
dl,dt,dd,ul,li,div{margin:0;padding:0;}
p {margin:0 0 1.85rem 0; padding:0;line-height:1.85;}
section {margin-bottom:6rem;clear: both;}

/*--- スマホ表示 ---*/
.for-sp {display:none;}
	@media screen and (max-width: 540px) {
		.for-sp { display:inline; }
		.for-pc { display:none; }
	}

/*--- 見出し ---*/
h2 {font-size:2.6rem;}
h3 {font-size:2.4rem;}
h4 {font-size:2.0rem;}
h5 {font-size:1.8rem;}

/*--- マーカー --*/
main mark { background: linear-gradient(transparent 50%, #fdfd0d5e 50%); }
.line_yellow { background: linear-gradient(transparent 50%, #fdfd0d5e 50%); }
/*-----------------------*/
/*-------- header -------*/
/*-----------------------*/
header {
	width: 100%;
	/*height: 185px; headerの高さ*/
	/*padding-top: 16px;*/ /*header上部間*/
}
	@media screen and (max-width: 540px) {
		header {
			height: 80px; /*スマホheaderの高さ*/
			position: fixed;
			z-index: 99;
			background-color:var(--header_bg-color);
			border-bottom: 1px solid;
			border-color:var(--link-color);
		}
		.home header {border-bottom:none;}
	}
.Header {
	border-bottom: 1px solid;
	border-color:var(--link-color);
}
	@media screen and (max-width: 540px) {
		.Header {border:none;}
	}
.home .Header {border:none;}
header h1 {
	display:none;
	/*position: absolute;
	top: 75px;
	width: 40%;
	top: 68%;
	left: 41%;
	transform: translate(-41%, -68%);
	-webkit-transform: translate(-41%, -68%);
	-ms-transform: translate(-41%, -68%);*/
}
	@media screen and (max-width: 540px) {
		header h1 {
			display:none;
		}
	}
header h2 {
	display: flex;
	align-items: center;
	font-size: 2rem;
	font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-weight: normal;
}
	@media screen and (max-width: 540px) {
		header h2 { font-size: 1.4rem; }
	}
.header_inner {
	max-width: var(--pc-width); /*コンテンツの幅*/
	width: 100%;
	position: relative;
	margin: 20px auto 8px;
	background-color:var(--header_bg-color);
}
	@media screen and (max-width: 540px) {
		.header_inner {
			padding:0 10px;
			margin: 10px auto;
		}
	}
.header_top {
	display:flex;
	height: 100px;
}
	@media screen and (max-width: 540px) {
		.header_top {
			display:block;
			height: 60px;
		}
	}
.header_left{
	flex-basis: 55%;
	display: flex;
	justify-content: space-around;
	flex-direction: column-reverse;
}
	@media screen and (max-width: 1200px) {
		.header_left{ padding-left:10px; }
	}
	@media screen and (max-width: 540px) {
		.header_left{
			width:80%;
			padding-left:0; 
		}
	}
.header_left a {
	display: block;
	cursor: pointer;
	color:var(--mein-color);
}
.header_left img { 
	width:80px;
	margin-right: 8px;
}
	@media screen and (max-width: 540px) {
		.header_left img { width:60px; }
	}
.header_left p {
	font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-size: 1.4rem;
	position: absolute;
	right: 110px;
	top: 20px;
	text-align: right;
}
	@media screen and (max-width: 768px) {
		.header_left p { top: 0; }
	}
	@media screen and (max-width: 540px) {
		.header_left p {
			display:none;
		}
	}
.header_right{
	flex-basis: 45%;
	text-align: right;
	display: flex;
	position: relative;
}
	@media screen and (max-width: 540px) {
		.header_right{
			display:none;
		}
	}
.header_right h3 {
	width: 82%;
	position: absolute;
	top: 50%;
	right: 110px;
	font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-weight: normal;
}
.header_right p {
	font-size:2rem;
	margin: 0;
	background-color: var(--link-color);
	position: absolute;
	right: 0;
	cursor:pointer;
}
.header_right a {
	display: flex;
	justify-content: center;
	align-items: center;
	cursor:pointer;
	color:#fff;
	width: 100px;
	height: 100px;
}
/*.header_right i.fa.fa-phone {
    font-size: 2rem;
    margin-right: 5px;
}
.header_right i.fa.fa-envelope {
    font-size: 2.4rem;
    margin-left: 10px;
}
.header_right p {
	margin:0;
}
.header_right p span {
    font-size: 2.4rem;
    font-weight: bold;
}
header address {
	font-style: normal;
}*/

/*-----------------------*/
/*--------- main --------*/
/*-----------------------*/
main {
	max-width: var(--pc-width);
	width: 100%;
	margin: 20px auto 10rem;
}
	@media screen and (max-width: 1200px) {
		main {
			padding:0 20px;
		}
	}
	@media screen and (max-width: 540px) {
		main {
			padding-top:100px;/*- スマホヘッダー高さ＋上部余白 -*/
			margin: 0 auto 5rem;
		}
	}

/* ---パンくず--- */
.breadcrumbs {
	margin:0 auto 2rem;
	padding-top:1rem;
}
	@media screen and (max-width: 540px) {
		.breadcrumbs {display:none;}
	}
.breadcrumbs ul {
	font-size: 1.4rem;
	text-align: left;
}
.breadcrumbs ul li{
	display:inline;
}
.breadcrumbs ul li::after {
content: ">";
margin-left: .8rem;
margin-right: .8rem;
}
.breadcrumbs ul li:last-child::after {
content: none;
}
.breadcrumbs ul li:last-child a { color:#000; }

/*-----------------------*/
/*-------- fotter -------*/
/*-----------------------*/
footer {
	background-color:var(--footer_bg-color);
	padding:50px 0 0;
}
	@media screen and (max-width: 540px) {
		/*footer { padding-bottom:80px; }*/
	}
.footer_inner {
	max-width: var(--pc-width);
	width: 100%;
	margin: 0 auto;
	text-align: center;
}
.footer_inner a { color:#fff;}
.footer_inner h3 { margin-bottom: 6rem; }
.footer_inner h3 a {
	display: inline-block;
	font-size: 4rem;
	font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-weight: normal;
	background-image: url(https://chanto.hn-contents.co.jp/wp2026/wp-content/uploads/2026/01/chanto_logo.png);
	background-repeat: no-repeat;
	background-size: contain;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-left: 90px;
}
	@media screen and (max-width: 768px) {
		.footer_inner h3 a {
			font-size: clamp(2.8rem, -0.416rem + 5.263vw, 4rem);
			padding-left:clamp(7rem, 2.508rem + 6.494vw, 9rem);;
			}
	}
	@media screen and (max-width: 540px) {
		.footer_inner h3 a {font-size: clamp(2rem, -2.6rem + 10vw, 2.8rem);}
	}
#footer {
	background-color:var(--footer_copy-color);
	color:#002E41;
}
#footer p{
	font-size: 1.2rem;
	max-width: var(--pc-width);
	width: 100%;
	margin: 0 auto;
	text-align: center;
}

/*-----------------------*/
/*--------- menu --------*/
/*-----------------------*/
/*-- Gnav --*/
.menu-mainmenu-container {
	width: 100%;
	margin-bottom:2px;
}
.menu-mainmenu-container .menu {
	font-size: 1.4rem;
	display: flex;
	justify-content: right;
	max-width: var(--pc-width);
	width: 100%;
	padding: 0 0 0;
	margin: 0 auto;
}
.menu-mainmenu-container .menu > .menu-item {
	padding: 2px 11px;
	cursor: pointer;
	position: relative;
}
.menu-mainmenu-container .menu li {
    margin-left: 2rem;
}
.menu-mainmenu-container .menu a {
	color: #000;
}
.menu-mainmenu-container .menu a::before {
	content:"●";
	color:#F8B62D;
}
.menu-mainmenu-container .menu a:hover {
	border-bottom: 2px solid #34997B;
}
.menu-mainmenu-container .menu a[aria-current="page"] {
	border-bottom: 2px solid #34997B;
}
/* Gnavサブメニュー */
.menu-mainmenu-container .sub-menu {
	display: none;
	position: absolute;
	right:0;
	padding-top:.5rem;
	padding-bottom:1rem;
	min-width:300px;
	z-index: 1;
	background-color:background-color:rgba(255, 255, 255, 0);
}
.menu-mainmenu-container .sub-menu li {
	cursor: pointer;
	padding: 3px 2px;
	background-color:#FFF;
	border-left:1px solid #34997B;
	border-right:1px solid #34997B;
	border-bottom:1px solid #34997B;
}
.home .menu-mainmenu-container .sub-menu li:first-child {
	border-top:1px solid #34997B;
}
.menu-mainmenu-container .sub-menu li a::before {
	content:"ー";
	color:#F8B62D;
	margin-right: 3px;
}
.menu-mainmenu-container .menu-item-has-children:hover .sub-menu {
	display: block;
	transition: .5s;
}

/*-- フッターメニュー --*/
.menu-footer_menu-container {
	max-width:540px;
	width: 100%;
	font-size: 1.4rem;
	margin: 0 auto 3rem;
}
	@media screen and (max-width: 768px) {
		.menu-footer_menu-container { width: 80%; }
	}
	@media screen and (max-width: 540px) {
		.menu-footer_menu-container { display:none; }
	}
.menu-footer_menu-container a:hover { border-bottom:1px solid #fff;}
.menu-footer_menu-container ul {
	display: flex;
	flex-wrap: wrap;
	padding: 0 3rem;
}
.menu-footer_menu-container ul li {
	font-size: 1.4rem;
	line-height: 3;
	margin: 0 1rem;
}

/*-- ハンバーガーメニュー ---*/
.hamburger-menu-wrapper {
	max-width: 767px;
	width: 100%;
	position: fixed;
	top: 0;
	z-index:99;
}
/*-- open-close --*/
#hamburger-menu-button {
	display: none;
}
#hamburger-menu-button:checked ~ .hamburger-menu-open {
	opacity: 0;
}
#hamburger-menu-button:checked ~ .hamburger-menu-close {
	display: block;
	opacity: 1;
}
#hamburger-menu-button:checked ~ .hamburger-menu-content {
	transform: translate3d(0,0,0);
}
.hamburger-menu-open .fa-bars {
	color: #fff;
	font-size: 5rem;
	padding: 10px 14px;
}
.hamburger-menu-close .fa-xmark {
	color: #fff;
	font-size: 5.4rem;
	padding: 10px;
}
.hamburger-menu-open {
	position: absolute;
	top: 0;
	right:0;
	margin-bottom: 0;
	width: 80px;
	height: 80px;
	background-color:#34997B;
	border: 3px solid;
	border-color:#34997B;
	transition: 0.3s ease;
	animation: site-title 0.8s ease 0.5s 1 normal;
	animation-fill-mode: forwards;
	z-index: 997;
	cursor: pointer;
}
.hamburger-menu-close {
	display: none;
	opacity: 0;
	position: absolute;
	top:0;
	right:0;
	width: 80px;
	height: 80px;
	background-color:#34997B;
	border: 3px solid;
	border-color:#34997B;
	cursor: pointer;
	transition: 0.3s ease;
	z-index: 998;
}
/*-- メニューコンテンツ --*/
.hamburger-menu-content {
	background-color: #005964;
	position: fixed;
	top: 80px;/*- スマホ時ヘッダー高さ -*/
	left: 0;
	width: 100%;
	padding: 0 2rem 3rem;
	transition: 0.3s ease;
	transform: translate3d(-100%,0,0);
	overflow: auto;
	z-index: 999;
}
.hamburger-menu {
	padding: 10px 10px 0;
}
#menu-hamburger_menu {
	/*border-top: 1px solid;
	border-top-color:var(--ham_li_b-color);*/
}
.hamburger-menu .sub-menu {
	border-top: 2px solid #005964;
	/*display:none;
	border-top: 1px solid;
	border-top-color:var(--ham_sub_b-color);
	background-color:var(--ham_sub_bg-color);*/
}
.hamburger-menu .menu-item-has-children:hover .sub-menu {
	display:block;
}
.hamburger-menu li {
	/*border-bottom: 1px solid;
	border-bottom-color:var(--ham_li_b-color);*/
	background-color: #34997B;
	text-align: left;
	margin-bottom: 8px;
	transition: 0.3s ease;
	cursor: pointer;
}
.hamburger-menu .sub-menu li {
	padding-left: 1.6rem;
	margin-bottom: 0;
	border-bottom: 2px solid #005964;
	/*border-bottom: 1px solid;
	border-bottom-color:var(--ham_sub_b-color);*/
}
.hamburger-menu .sub-menu li:last-child {
	border-bottom: none;
	margin-bottom: 0;
}
.hamburger-menu .menu-item-has-children:hover {
	padding:0;
}
.hamburger-menu li a {
	color:#fff;;
	padding: 0 1.6rem;
	line-height: 2.4;
	display:block;
	position: relative;
}
.hamburger-menu .sub-menu a {
	color:#FFF;
	padding: 0;
}
.hamburger-menu .sub-menu li a::before {
	content:"ー";
	color:#F8B62D;
	margin-right: 3px;
}

.hamburger-menu .menu-item-has-children a::after {
	position: absolute;
	right: 0;
	padding-right:1rem;
}
.hamburger-menu-content .cta {
	width: 80%;
	margin:2rem auto 1rem;
}
/*-- サブメニュー表示 --*/
.hamburger-menu-wrapper .menu-sub_menu-container {
	margin: 0 1rem 2rem;
}
.hamburger-menu-wrapper .menu-sub_menu-container ul {
	font-size: 1.4rem;
	line-height:2;
	padding: 0 1.6rem;
}
.hamburger-menu-wrapper .menu-sub_menu-container ul li a {
	color:#FFF;
}

/* -------------- */
/* ------CTA----- */
/* -------------- */
.cta-sp {
	border: 1px solid #fff;
	border-radius: 10px;
}
.cta-sp figure {
	padding: 0 18% 0 0;
}
.cta { margin-bottom:6rem;}
.cta h3 {
	border-left: none;
	padding-left: 0;
}
.cta a {
	display: block;
	width: 88%;
	margin: 0 auto 3rem;
}
	@media screen and (max-width: 768px) {
		.cta a { width:100%;}
	}
.cta a picture.default {
	display:block;
	border: 1px solid #000;
	border-radius: 10px;
	background-color:#FFF;
}
.cta a picture.hover {
	display:none;
}
.cta a:hover picture.default {
	display:none;
}
.cta a:hover picture.hover {
	display:block;
	border: 1px solid #fff;
	border-radius: 10px;
	background-color:#F8B62D;
}
.cta p {
	width: 88%;
	margin: 0 auto;
	background-image: url(https://chanto.hn-contents.co.jp/wp2026/wp-content/uploads/2026/01/cta_p.webp);
	background-repeat: no-repeat;
	background-size: 60px;
	background-position: 0 50%;
	padding-left: 80px;
}
	@media screen and (max-width: 768px) {
		.cta p { width:100%;}
	}
		@media screen and (max-width: 540px) {
		.cta p {
			background-size: 40px;
			padding-left: 60px;
		}
	}

/* ------------------- */
/* ------見出し共通----- */
/* ------------------- */
main h2 {
	border-left: 30px solid #002E41;
	padding-left: 1rem;
	margin-bottom:3rem;
}
	@media screen and (max-width: 540px) {
		main h2 {font-size:clamp(2rem, 0.44rem + 4vw, 2.6rem);}
	}
main h3 {
	border-left: 30px solid #005964;
	padding-left: 1rem;
	margin-bottom:3rem;
}
	@media screen and (max-width: 540px) {
		main h3 {font-size: clamp(2rem, 0.96rem + 2.667vw, 2.4rem);}
	}
main h4 {
	border-bottom: 1px dotted #005964;
	padding-bottom: .2rem;
	margin-bottom:2rem;
}
	@media screen and (max-width: 540px) {
		main h4 {font-size: clamp(1.8rem, 1.28rem + 1.333vw, 2rem);}
	}
main h5::before {
	content:"●";
	color:#34997B;
	margin-right: 1.6rem;
	padding-bottom: .2rem;
	margin-bottom:1.6rem;
}

/* ------------------ */
/* ------画像共通----- */
/* ------------------ */
/*--画像左振りFlat--*/
.img_f-R figure {
	float: right;
	width: 30%;
	margin-left: 30px;
	margin-bottom: 20px;
}
/*-- 画像センター --*/
.img_center {
	text-align: center;
	clear: both;
}

/* ------------------ */
/* ------flex共通----- */
/* ------------------ */
.flex_box { display:flex; }


/* ------------------ */
/* ------背景100%----- */
/* ------------------ */
.full_width {
	margin-left: calc(-50vw + 50%);
	margin-right: calc(-50vw + 50%);
	margin-bottom:6rem;
}
	@media screen and (max-width: 1200px) {
		.full_width {
			padding-left:20px;
			padding-right:20px;
		}
	}
.full_width section {
	max-width: 1200px;
	width:100%;
	margin:0 auto;
	padding-top: 3rem;
	padding-bottom: 3rem;
}
/* 背景グリーン ---*/
.bg_G {background-color:var(--full_width-colorG);}
/* 背景クリーム ---*/
.bg_C {background-color:var(--full_width-colorC);}
}



/* ------------------- */
/* ------リスト共通----- */
/* ------------------- */
/* 赤チェック */
.check_list {
	margin-top: 3rem;
	margin-bottom: 3rem;
}
.check_list li {
	margin-bottom:1.6rem;
	margin-left: 2rem;
}
.check_list li::before {
	content: '\f14a';
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	font-size: 2rem;
	color: red;
	margin-left: -2rem;
}
/* ol　自動振り */
ol.number_on li {
	list-style: auto;
	margin-left: 2rem;
	line-height: 1.6;
	margin-bottom: 1.85rem;
}
/* ul　dot */
ul.dot_on li {
	list-style: disc;
	margin-left: 2rem;
	line-height: 1.6;
}
/* ul　チェック */
.check {
	margin-top: 3rem;
	margin-bottom: 3rem;
}
.check li {
	margin-bottom:1.6rem;
	margin-left: 2rem;
	line-height: 1.6;
}
.check li::before {
	content: '\f00c';
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	margin-left: -2rem;
	padding-right: 1rem;
}
/* ul 丸グリーン */
.circle_G li {
	margin-bottom:1.6rem;
}
.circle_G li::before {
	content: '\f111';
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	color: #34997B;
	margin-left: -2.4rem;
	padding-right: 1rem;
}

/* ----------------- */
/* ---セールスページ ---*/
/* ----------------- */
.top_fv h2 { display: none; }
.f-view {
	display: flex;
	border: 1px solid #000;
	margin-bottom:3rem;
}
	@media screen and (max-width: 540px) {
		.f-view { display: block; }
	}
.f-view figure { width: 40%; }
	@media screen and (max-width: 540px) {
		.f-view figure { width: 80%; }
	}
.f-view div {
	width: 60%;
	position: relative;
}
	@media screen and (max-width: 540px) {
		.f-view div {
			width: 100%;
			position: unset;
		}
	}
.f-view p {
	font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	margin-bottom: 0;
	width: 430px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	line-height: 2.4;
}
	@media screen and (max-width: 768px) {
		.f-view p {
			width: clamp(300px, -50.000px + 62.5vw, 430px);
			line-height: 1.4;
		}
	}
	@media screen and (max-width: 540px) {
		.f-view p {
			width: 100%;
			position: unset;
			transform: translate(0);
			line-height: 1.8;
			padding: 0 10px 20px;
		}
	}
.top_worry .img_f-R figure {
	margin-left: 0;
}
.top_worry .img_f-R figure img {
	max-width: 280px;
	width: 90%;
	float: right;
}
.img_center.w50 img {
	width: 50%;
	margin-bottom: 3rem;
}

/*--flex２つ横並び --*/
.flex_box.top_2w {
	justify-content: space-between;
	margin-bottom: 2rem;
}
	@media screen and (max-width: 540px) {
		.flex_box.top_2w {
			flex-direction: column;
			margin-bottom: 0;
		}
	}
.flex_box.top_2w div {
	border: 1px solid #000;
	width: 49%;
	padding: 2rem 1rem 1rem;
}
	@media screen and (max-width: 540px) {
		.flex_box.top_2w div {
			width: 100%;
			margin-bottom: 2rem;
		}
	}
.flex_box.top_2w h3 {
	border-left:none;
}
.flex_box.top_2w figure {
	margin-bottom:0;
}
/* 3つの柱 ---*/
.three_pillar { color:#fff;}
.three_pillar h2 {
	border-left: none;
	padding-left: 0;
}
.three_pillar .flex_box {
	justify-content: space-between;
	padding-top: 4rem;
	margin-bottom: 3rem;
}
	@media screen and (max-width: 1200px) {
		.three_pillar .flex_box { justify-content: space-around; }
	}
	@media screen and (max-width: 768px) {
		.three_pillar .flex_box {flex-direction: column;}
	}
.three_pillar .flex_box dl {
	color:#000;
	background-color: #fff;
	width:30%;
	border: 1px solid #000;
}
	@media screen and (max-width: 768px) {
		.three_pillar .flex_box dl {
			width:80%;
			margin: 0 auto 2rem;
		}
	}
	@media screen and (max-width: 460px) {
		.three_pillar .flex_box dl {
			width:100%;
		}
	}
.three_pillar .flex_box dt {
	font-size: 1.8rem;
	font-weight: bold;
	margin-bottom:2rem;
}
.three_pillar .flex_box dt em {
	font-style: normal;
	padding: 0 10px;
}
.three_pillar .flex_box dd {
	padding:0 10px;
	margin-bottom: 2rem;
}
/* 4つの約束 ---*/
.yakusoku h3 {
	border-left: none;
	padding-left:0;
	font-size:2.6rem;
	display: table-cell;
}
.yakusoku h3::before {
	content: "●";
	color: #34997B;
	margin-right: 1rem;
	font-size: 4.7rem;
	vertical-align: middle;
}
.yakusoku h4 {
	font-size:2.4rem;
	border-bottom:none;
	margin-bottom: 0;
}
	@media screen and (max-width: 540px) {
		.yakusoku h4 {font-size: clamp(1.8rem, 1.28rem + 1.333vw, 2rem);}
	}
.yakusoku h4 + p {
	margin-left:1.6rem;
}
/* 担当者 ---*/
.about_manager h2 {
	border-left: none;
	padding-left: 0;
}
.about_manager .flex_box.top_2w div {
	padding: 1rem;
}
.about_manager .flex_box.top_2w h3 {
	font-size: 1.6rem;
	font-weight: normal;
	padding-left: 0;
	margin-bottom: 1rem;
}
.about_manager .flex_box.top_2w figure {
	width: 30%;
	float: right;
	margin-left: 20px;
	margin-top: -30px;
}
	@media screen and (max-width:980px){
		.about_manager .flex_box.top_2w figure {
			margin-top: 0;
		}
	}
	@media screen and (max-width:540px){
		.about_manager .flex_box.top_2w figure {
			width: 40%;
		}
	}
/* お客様の声 ---*/
.full_width .voice {
	padding-top: 0;
	padding-bottom: 0;
}
.voice .full_width {
	background-color: #002E41;
	font-size: 2.6rem;
	font-weight: bold;
	color: #fff;
	padding: 1rem 0;
	margin-bottom: 0;
}
.voice h2, .voice h2 + p {
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
}
	@media screen and (max-width:1200px){
		.voice h2, .voice h2 + p {
			padding-left:2rem;
			padding-right:2rem;
		}
	}
	@media screen and (max-width:540px){
		.voice h2 + p{font-size: clamp(2rem, 0.44rem + 4vw, 2.6rem);}
	}
.voice h2, .voice h3{
	padding-left: 0;
	border-left: none;
}
.voice h4 {
	border-bottom: none;
	font-size: 1.6rem;
}
.voice h4 span {
	display: block;
	font-weight: normal;
}
.voice dl {
	margin: 3rem 0;
}
.voice dt {
	font-size: 2rem;
	font-weight: bold;
	margin-bottom:2rem;
}
	@media screen and (max-width:540px){
		.voice dt {font-size:1.8rem;}
	}
.voice dd {
	margin-bottom:2rem;
	line-height: 1.85;
}
.voice hr {
	height: 5px;
	background-color: #002E41;
	margin-left: calc(-50vw + 50%);
	margin-right: calc(-50vw + 50%);
}
/* 構築プラン ---*/
.plan h2, .plan h3 {
	padding-left: 0;
	border-left: none;
}
.plan h3 {
	font-size: 2rem;
}
.start_kit {display: flex;}
	@media screen and (max-width:768px){
		.start_kit {flex-direction: column-reverse;}
	}
.start_kit div {width:70%;}
	@media screen and (max-width:768px){
		.start_kit div {width:100%;}
	}
.start_kit figure {width:30%;}
	@media screen and (max-width:768px){
		.start_kit figure {
			width:80%;
			margin:2rem auto;
		}
	}
	@media screen and (max-width:540px){
		.start_kit figure {
			width:100%;
		}
	}
.plan .flex_box,
.rinen .flex_box {
	justify-content: space-between;
	padding-top: 4rem;
	margin-bottom: 3rem;
}
	@media screen and (max-width: 768px) {
		.plan .flex_box,.rinen .flex_box {flex-direction: column;}
	}
.plan .flex_box dl,
.rinen .flex_box dl {
	width:30%;
	border: 1px solid #000;
	border-radius: 10px;
	padding: 10px 0;
}
	@media screen and (max-width: 768px) {
		.plan .flex_box dl,.rinen .flex_box dl {
			width:80%;
			margin: 0 auto 2rem;
		}
	}
	@media screen and (max-width: 768px) {
		.plan .flex_box dl,.rinen .flex_box dl {width:100%;}
	}
.plan .flex_box dl dt,
.rinen .flex_box dl dt {
	font-size: 2.4rem;
	text-align: center;
	margin-bottom: 1rem;
}
.plan .flex_box em,
.rinen .flex_box em {
	font-style: normal;
	display: block;
	color: #fff;
	font-size: 4rem;
	font-weight: bold;
	text-align: center;
}
.flex_box em.price_1 {background-color: #F8B62D;}
.flex_box em.price_2 {background-color: #34997B;}
.flex_box em.price_3 {background-color: #005964;}
.flex_box ul.check {
	margin-left: 2rem;
	margin-right: 2rem;
}
.plan .flex_box p,
.rinen .flex_box p {
	padding: 20px 20px 0;
}
/*----------------------*/
/*------ 固定ページ ------*/
/*----------------------*/
/* 見出し ------*/
main.page h2 {
	border-left: none;
	padding-left: 0;
	margin-bottom: 8rem;
	display: flex;
	align-items: center;
}
	@media screen and (max-width: 768px) {
		main.page h2 { margin-bottom: 6rem; }
	}
	@media screen and (max-width: 540px) {
		main.page h2 { margin-bottom: 3rem; }
	}
main.page h2::before {
	content: "●";
	color: #005964;
	font-size:4rem;
	margin-right: 1rem;
}
	@media screen and (max-width: 540px) {
		main.page h2::before { font-size:8rem; }
	}
main.page .full_width.bg_G h2 {
	color: #fff;
	text-align: center;
}
main.page .full_width.bg_G h2::before {
	content:none;
}
main.page h3 {
	border-color: #002E41;
	margin-right: 0;
}
.policy_wrap h3 {
	border-left: none;
	padding-left: 0;
	/*display: table-cell;*/
	display: flex;
	align-items: center;
}
.policy_wrap h3::before {
	content: "●";
	color:#34997B;
	font-size: 4.7rem;
	vertical-align: middle;
	padding-right: 1rem;
}
.flex_box.top_2w h4 {
	border-bottom: none;
}

/* 3つのステップ ----*/
.three_step > div {
	background-color: #FFF;
	padding-bottom: 2rem;
	margin-bottom: 3rem;
	position: relative;
	border: 1px solid #000;
}
.three_step > div figure {
	position: absolute;
	top: 0;
	left: 0;
	min-width: 300px;
	width: 25%;
}
	@media screen and (max-width: 980px) {
		.three_step > div figure {
			min-width: 240px;
			width: 20%;
		}
	}
	@media screen and (max-width: 768px) {
		.three_step > div figure { min-width: 300px; }
	}
.three_step > div h3 {
	border-left: none;
	padding-top: 4rem;
	padding-left: 0;
	text-align: center;
	margin-bottom: 6rem;
}
	@media screen and (max-width: 768px) {
		.three_step > div h3 {
			padding-top: 12rem;
			margin-bottom: 4rem;
		}
	}
	@media screen and (max-width: 540px) {
		.three_step > div h3 {
			padding-left: 1rem;
			padding-right: 1rem;
		}
	}
.three_step > div p {
	margin-left: 7rem;
	padding-right: 2rem;
}
	@media screen and (max-width: 768px) {
		.three_step > div p { margin-left: 2rem; }
	}
	@media screen and (max-width: 540px) {
		.three_step > div p { margin-left: 1rem;padding-right: 1rem; }
	}
.three_step > div ul {
	margin-left: 9rem;
	padding-right: 2rem;
}
	@media screen and (max-width: 768px) {
		 .three_step > div ul { margin-left: 4rem; }
	}
		@media screen and (max-width: 540px) {
		.three_step > div ul { margin-left: 3rem;padding-right: 1rem; }
	}
.three_step > div ul li em {
	font-style: normal;
	font-weight: bold;
}
/* フロー ----*/
.flow .full_width {
	background-color: #002E41;
	font-size: 2.6rem;
	font-weight: bold;
	color: #fff;
	padding: 1rem 0;
	margin-bottom: 5rem;
}
.flow .full_width h2 {
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
	padding-top: 1rem;
	padding-bottom: 1rem;
}
	@media screen and (max-width: 1200px) {
		.flow .full_width h2 { padding-left:2rem;padding-right:2rem; }
	}
.flow .full_width h2::before {content:none;}

.flow h3 {
	border-left:none;
	padding-left: 0;
}
	@media screen and (max-width: 768px) {
		.flow h3 { text-align: center;}
	}
.flow .flex_box {
	flex-direction: row-reverse;
}
	@media screen and (max-width: 768px) {
		.flow .flex_box { flex-direction: column; }
	}
.flow .flex_box figure {
	width: 40%;
	margin-bottom:0;
	background-image: url(https://chanto.hn-contents.co.jp/wp2026/wp-content/uploads/2026/01/flow_triangle.webp);
	padding-bottom: 80px;
	background-repeat: no-repeat;
	background-position: bottom;
}
	@media screen and (max-width: 768px) {
		.flow .flex_box figure {
			width: 90%;
			margin: 0 auto;
			padding-left: 0;
			padding-bottom: 50px;
		}
	}
.flow .flex_box.last-end figure {
	background-image: none;
	padding-bottom: 0;
}
.flow .flex_box div {
	width: 60%;
	padding-left: 6rem;
}
	@media screen and (max-width: 768px) {
		.flow .flex_box div {
			width: 90%;
			margin: 0 auto;
			padding-left: 0;
		}
	}

.step_1 ol {
	padding-top: 2rem;
	margin-bottom: 4rem;
}
.step_2 .flex_box {
	justify-content: space-between;
	padding-top: 4rem;
	margin-bottom: 3rem;
}
	@media screen and (max-width: 768px) {
		.step_2 .flex_box {flex-direction: column;}
	}
.step_2 .flex_box dl {
	width:30%;
	border: 1px solid #000;
	border-radius: 10px;
	padding: 10px 0;
}
	@media screen and (max-width: 768px) {
		.step_2 .flex_box dl {
			width:80%;
			margin: 0 auto 2rem;
		}
	}
	@media screen and (max-width: 460px) {
		.step_2 .flex_box dl { width:90%; }
	}
.step_2 .flex_box dl dt {
	font-size: 2.4rem;
	text-align: center;
	margin-bottom: 1rem;
}
.step_2 .flex_box em {
	font-style: normal;
	display: block;
	color: #fff;
	font-size: 4rem;
	font-weight: bold;
	text-align: center;
}
.step_2 .flex_box ul.check {
	margin-left: 2rem;
	margin-right: 2rem;
}
.hosoku h5 {
	font-size:1.6rem;
	margin-bottom:2rem;
}
.hosoku ul.circle_G {
	margin-left: 2.4rem;
	padding-top: 2rem;
	margin-bottom: 4rem;
}
.hosoku ul.circle_G em {
	font-style: normal;
	font-weight: bold;
}

/*---------------------*/
/*------ フォーム -------*/
/*---------------------*/
input[type="submit"],
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="reset"],
input[type="button"],
select,
textarea,
button {
	-moz-appearance: none;
	-webkit-appearance: none;
	-webkit-box-shadow: none;
	box-shadow: none;
	outline: none;
	border: none;
}
.toiawase_form form {
	width: 75%;
	margin: 3rem auto;
}
	@media screen and (max-width: 768px) {
		.toiawase_form form {width: 100%;}
	}
.toiawase_form form dl {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	margin-bottom: 2rem;
}
	@media screen and (max-width: 540px) {
		.toiawase_form form dl {
			display: block;
			width:90%;
			margin:0 auto 2rem;
		}
	}
.toiawase_form form dt { width: 35%; }
	@media screen and (max-width: 540px) {
		.toiawase_form form dt {width: 100%;}
		.toiawase_form form dt p {margin-bottom:0;}
	}
.toiawase_form form dd { width: 65%; }
	@media screen and (max-width: 540px) {
		.toiawase_form form dd {width: 100%;margin-bottom: 2rem;}
		.toiawase_form form dd p {margin-bottom:0;}
	}
.toiawase_form input[type="text"],
.toiawase_form input[type="email"],
.toiawase_form input[type="tel"],
.toiawase_form textarea {
	font-size: 1.6rem;
	width:100%;
	padding:5px;
	border:1px solid #005964;
	border-radius: 3px;
}
.privacy_check {
	text-align: center;
	color: #005964;
	margin-bottom: 4rem;
}
/* 必須 ------*/
.required {
	background-color: red;
	font-size: 1.2rem;
	padding: 2px 4px;
	margin-left: 3px;
	color: #fff;
}
/* ボタン ------*/
.wpcf7-spinner { display: none; }
.wpcf7 form .wpcf7-response-output {border:none;}
.form_btn p {
	display: flex;
	justify-content: space-around;
	margin-bottom: 2rem;
}
	@media screen and (max-width: 540px) {
		.form_btn p {
			flex-direction: column;
			justify-content: center;
		}
	}
.form_btn p input {
	max-width: 250px;
	width: 100%;
	padding: 10px;
	color: #fff;
	font-size: 1.6rem;
	cursor:pointer;
}
	@media screen and (max-width: 768px) {
		.form_btn p input {max-width: 220px;}
	}
	@media screen and (max-width: 540px) {
		.form_btn p input {
			max-width: 80%;
			margin: 1rem auto;
		}
	}
.form_btn p input[type="reset"],
.form_btn p input[type="button"] {cursor: pointer;background-color: #005964;}
.form_btn p input[type="submit"] {cursor: pointer;background-color: #34997B;}

.form_btn p input[type="reset"]:hover,
.form_btn p input[type="button"]:hover {
	border-radius: 60px;
	/*background-color: #00596495;
	border:1x solid #005964;*/
	transition: .3s;
}
.form_btn p input[type="submit"]:hover {
	border-radius: 60px;
	/*background-color: #34997B95;
	border:1x solid #34997B;*/
	transition: .3s;
}


/* 確認画面 -----*/
.toiawase_form.confirm dt,
.toiawase_form.confirm dd {
	border-bottom: 1px solid #ccc;
	padding-top: 16px;
}
	@media screen and (max-width: 540px) {
		.toiawase_form.confirm dt, .toiawase_form.confirm dd { padding-top: 0;}
		.toiawase_form.confirm dt { border-bottom:none; }
		.toiawase_form.confirm dd {padding-bottom: 5px; }
	}


/*----------------------*/
/*------- テーブル ------*/
/*----------------------*/
table.table_A {
	width: 80%;
	margin: 0 auto;
}
	@media screen and (max-width: 768px) {
		table.table_A { width: 100%;}
	}
table.table_A thead th {
	background-color: #34997B;
	color: #fff;
	padding: 1rem;
	text-align: center;
}
table.table_A thead th.col {border-right: 1px solid #fff;}
table.table_A tbody th {
	width: 15%;
	padding: 1rem;
	vertical-align: top;
	text-align: left;
	border-left: 1px dotted #34997B;
	border-bottom: 1px dotted #34997B;
}
	@media screen and (max-width: 768px) {
		table.table_A tbody th { width: 20%;}
	}
	@media screen and (max-width: 540px) {
		table.table_A tbody th { width: 25%;}
	}
table.table_A tbody td {
	padding: 1rem;
	vertical-align: top;
	border-left: 1px dotted #34997B;
	border-right: 1px dotted #34997B;
	border-bottom: 1px dotted #34997B;
}

/*----------------------*/
/*------ 記事ページ ------*/
/*----------------------*/
.post_header {
	/*width:60%;*/
	margin:0 auto;
	margin-bottom:6rem;
	padding-left: clamp(0px, -426.667px + 55.556vw, 240px);
	padding-right: clamp(0px, -426.667px + 55.556vw, 240px);
}
	@media screen and (max-width: 980px) {
		/*.post_header {width:80%; }*/
	}
	@media screen and (max-width: 768px) {
		/*.post_header { width:100%; }*/
	}
main.post .header_wrap {
	position: relative;
}
main.post .header_wrap h2 {
	border: none;
	padding: 10px;
	margin:0;
	position: absolute;
	background-color: #ffffff80;
	font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	top: 0;
	/*font-size: 2.4rem;*/
	font-size: clamp(1.8rem, 0.7328rem + 1.389vw, 2.4rem);
	/*text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.25);*/
	font-weight: bold;
}
	@media screen and (max-width: 768px) {
		main.post .header_wrap h2 {
			font-size: 1.8rem;
			padding: 5px;
		}
	}
main.post .header_wrap figure img {
	width: 100%;
	height: auto;
}
/*----- 日付まわり -----*/
.post_times {
	display: flex;
	color: #292727;
	font-size: 1.4rem;
	margin-left: 1rem;
}
	@media screen and (max-width: 540px) {
		.post_times {
			justify-content: flex-end;
		}
	}
.post_times li {
	margin-left: .5rem;
}
.post_times .release-date::before {
	content: "\f017";
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	font-size: 1rem;
	position: relative;
	top: -1px;
	left: 0;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
.post_times .update-date::before {
	content: "\f1da";
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	font-size: 1rem;
	position: relative;
	top: -1px;
	left: 0;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
/*----- 日付タグまわり -----*/
.p-articleMetas {
	display: flex;
	justify-content: flex-end;
	margin-bottom: 2rem;
}
	@media screen and (max-width: 540px) {
		.p-articleMetas {
			display: inline;
		}
	}
/*--- カテゴリー共通 ---*/
.cate_list ul li::before {
	content: "\f07b";
	font-family: "Font Awesome 6 Free";
	font-weight: 400;
	padding-right: 3px;
	color:var(--link-color);
}
/*----- タグ共通 -----*/
.tag_list {
	font-size: 1.2rem;
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	justify-content: right;
	margin: 0 .25em 0 0;
}
	@media screen and (max-width: 540px) {
		.tag_list {
			justify-content: flex-end;
			margin-bottom: 1rem;
		}
	}
.tag_list a {
	color: var(--tag_a-color);
	background-color: var(--tag_bg-color);
	padding: .2rem .5rem;
	margin-right: 5px;
	margin-bottom: 3px;
}
.tag_list a::before {
	content: "\f02b";
	color:#fff;
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	padding-right: .3rem;
}
.tag_list a:hover {
	text-decoration-line: underline;
}
.tag_list a:hover::before {
	text-decoration-line: none;
}
/*--------- sns --------*/
.sns_wrap { }
.sns_wrap ul {
	text-align: center;
}
.sns_wrap ul li {
	width: 64px;
	display: inline-block;
	margin: 0 20px;
}
.sns_wrap ul li a {
	display:block;
	color: transparent;
	cursor: pointer;
}
/*----------------------*/
/*------- テーブル ------*/
/*----------------------*/
figure.wp-block-table.table100 table {
	min-width: 800px;
}
figure.wp-block-table.table90 table {
	min-width: 800px;
	width:90%;
	margin:0 auto;
}
.wp-block-table thead {border:none;}
.wp-block-table td, .wp-block-table th { border: none; }

.wp-block-table table {border:1px solid #34997B; }
.wp-block-table thead {
	background-color: #34997B;
	color: #fff;
}
.wp-block-table thead th { border-right: 1px solid #FFF; }
.wp-block-table thead th:last-child { border-right: 1px solid #34997B; }
.wp-block-table tbody th {
	border-top: 1px solid #34997B;
	border-right: 1px solid #34997B;
}
.wp-block-table tbody td {
	border-top: 1px solid #34997B;
	border-left: 1px solid #34997B;
}

/* 記事内 ---*/
.post_wrap {
	margin-bottom: 6rem;
}
.w30 {
	justify-content: space-around;
	margin-bottom: 6rem;
}
/* 丸グリーンリスト ---*/
main.post .circle_G {
	margin-left: 4.8rem;
	padding-top: 2rem;
	margin-bottom: 4rem;
	/*font-weight: bold;*/
}
	@media screen and (max-width: 540px) {
		main.post .circle_G {
			margin-left: 2.4rem;
		}
	}
/* ul　ドッドリスト ---*/
main.post .dot_on {
	margin-bottom: 2rem;
}
/* 背景グリーンの見出し--- */
main.post .full_width.bg_G h2,
main.post .full_width.bg_G h3 {
	border:none;
	padding-left:0;
	color:#fff;
}
main.post .full_width.bg_G h4 {color:#fff;}
/* 見出しh5 ---*/
main.post h5 {
	margin-left: 2.4rem;
	font-size: 1.6rem;
	margin-bottom: 2rem;
}
	@media screen and (max-width: 540px) {
		main.post h5 {
			margin-left: 0;
		}
	}
main.post h5::before {
	margin-right: .8rem;
}
main.post h5 + p {
	margin-left: 2.4rem;
}
	@media screen and (max-width: 540px) {
		main.post h5 + p {
			margin-left: 0;
		}
	}

/*--- 記事内カテゴリ・SNS・tag ---*/
.post_footer {
	max-width:1200px;
	width:100%;
	margin:0 auto;
	display:flex;
	justify-content: space-between;
	padding:30px 0;
}
	@media screen and (max-width: 840px) {
		.post_footer {
			flex-direction: column;
			position: relative;
		}
	}
.post_footer div {width:33%;}
.post_footer .cate_list {
	font-size: 1.4rem;
	order:1;
}
.post_footer .cate_list a:hover {
	text-decoration-line: underline;
}
	@media screen and (max-width: 840px) {
		.post_footer .cate_list {
			width:50%;
			order:2;
			margin-bottom: 2rem;
		}
	}
	@media screen and (max-width: 540px) {
		.post_footer .cate_list {
			width:100%;
			position: static;
		}
	}
.post_footer .sns_wrap {
	display: flex;
	justify-content: space-evenly;
	align-items: center;
	order:2;
}
.post_footer .sns_wrap a:hover { opacity: 0.8;}
	@media screen and (max-width: 840px) {
		.post_footer .sns_wrap {
			width:100%;
			order:1;
			margin-bottom: 2rem;
		}
	}
.post_footer .sns_wrap ul li{
	/*width: clamp(45px, 43.930px + 0.139vw, 64px);*/
	width:64px;
	margin:0 10px;
}
	@media screen and (max-width: 540px) {
		.post_footer .sns_wrap ul li {width:45px;}
	}
.post_footer .tag_list { order:3; }
	@media screen and (max-width: 840px) {
		.post_footer .tag_list {
			width:50%;
			position: absolute;
			right: 0;
			top: 120px;
		}
	}
	@media screen and (max-width: 540px) {
		.post_footer .tag_list {
			width:100%;
			position: static;
			justify-content: start;
		}
	}

/*--- ページナビゲーション ---*/
.single_nav {
	width: 100%;
	margin: 6rem auto;
	display: flex;
	align-items: center;
	justify-content: center;
}
.single_nav i {
	color: #005964;
}
.single_nav > div {
	width: 20%;
	margin: 0 6rem;
	text-align: center;
}
	@media screen and (max-width: 540px) {
		.single_nav > div {
			width: 45%;
			margin: 0 1rem;
		}
	}
.single_nav > div a {
	display: block;
	color: #005964;
	border-radius: 50px;
}
.s_nav_L a::before {
	content: "\f100";
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	margin-right: .5rem;
}
.s_nav_R a::after {
	content: "\f101";
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	margin-left: .5rem;
}

/*-----------------*/
/*---- 記事一覧 ----*/
/*-----------------*/
.archive .header_wrap h2 {
	border: none;
	padding-left:0;
    display: flex;
    align-items: center;
}
.archive .header_wrap h2::before {
	content: "●";
	color: #005964;
	margin-right: 1rem;
	font-size: 4rem;
}
	@media screen and (max-width: 540px) {
		.archive .header_wrap h2::before {
			font-size: 8rem;
		}
	}
.post_list {
	margin-bottom:6rem;
}
.post_list a {
}
.post_list .post_list_wrap {
	display: flex;
}
	@media screen and (max-width: 768px) {
		.post_list .post_list_wrap {
			flex-direction: column;
			position: relative;
		}
	}
.post_list .post_list_wrap figure{
	width:30%;
}
	@media screen and (max-width: 860px) {
		.post_list .post_list_wrap figure{
			width:40%;
		}
	}
	@media screen and (max-width: 768px) {
		.post_list .post_list_wrap figure {
			width: 70%;
			margin: 10rem auto 1rem;
		}
	}
	@media screen and (max-width: 540px) {
		.post_list .post_list_wrap figure {
			margin: 11rem auto 1rem;
		}
	}
	@media screen and (max-width: 390px) {
		.post_list .post_list_wrap figure {
			margin: 12rem auto 1rem;
		}
	}
.post_list .post_list_wrap figure img {
	width: 100%;
	height: auto;
}
.post_list .post_list_wrap div {
	width:70%;
	padding-left: 2rem;
}
	@media screen and (max-width: 860px) {
		.post_list .post_list_wrap div {
			width:60%;
		}
	}
	@media screen and (max-width: 768px) {
		.post_list .post_list_wrap div {
			width:100%;
			padding-left: 0;
		}
	}
.post_list .post_list_wrap h3 {
	border: none;
	font-size:1.8rem;
	padding-left:0;
	margin-bottom:1rem;
}
	@media screen and (max-width: 768px) {
		.post_list .post_list_wrap h3 {
			position: absolute;
			top: 0;
		}
	}
.post_list .post_list-date {
	font-size: 1.2rem;
	color:#292727;
	margin-bottom: 5px;
	text-align: right;
}
.post_list .post_list-date::before {
	content: "\f1da";
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	font-size: 1rem;
	margin-right:2px;
	position: relative;
	top: -1px;
	left: 0;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
	@media screen and (max-width: 540px) {
		.post_list .post_list-date {
			width: 100%;
			float: right;
		}
	}
.post_list .post_list_excerpt,
.post_list .post_list_excerpt p {
	color:#000;
}
	@media screen and (max-width: 540px) {
		.post_list .post_list_excerpt {  }
		.post_list .post_list_excerpt p { padding-top: 3rem; }
	}

.post_list .tag_list {
	justify-content: flex-end;
}
.post_list a:hover .post_list_content,
.post_list a:hover .post_list-date  {
	background-color:var(--archive_hover-color);
}
.post_list a:hover .post_list_thumbnail{
	opacity: .8;
}
/*--- ページナビゲーション ---*/
.navigation.pagination {
	width: 100%;
	margin: 6rem auto;
	display: flex;
	justify-content: center;
	align-items: center;
}
.navigation.pagination a {
	color:#005964;
}
.navigation.pagination .page-numbers {
		padding: 1px 4px;
}
.navigation.pagination .page-numbers.current {
	background-color: #005964;
	color: #fff;
}

/*----------------*/
/*------ 目次 -----*/
/*----------------*/
div#ez-toc-container {
	min-width: 450px;
	width: 50%;
	margin: 6rem auto 4.5rem;
	border: none;
	padding: 0;
}
	@media screen and (max-width: 768px) {
		div#ez-toc-container {
			width: 80%;
		}
	}
	@media screen and (max-width: 540px) {
		div#ez-toc-container {
			min-width: 100%;
		}
	}
.ez-toc-title-container {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	background-color: var(--mokuji_t_bg-color);
}
div#ez-toc-container p.ez-toc-title, #ez-toc-container .ez_toc_custom_title_icon, #ez-toc-container .ez_toc_custom_toc_icon {
	color:var(--mokuji_icon-color);
}
div#ez-toc-container .ez-toc-title-container p.ez-toc-title::after {
	content:"[閉じる]";
	font-size:1.4rem;
	color:var(--mokuji_icon-color);
	margin-left:1rem;
}
div#ez-toc-container.toc_close .ez-toc-title-container p.ez-toc-title::after {
	content:"[開く]";
	font-size:1.4rem;
	color:var(--mokuji_icon-color);
	margin-left:1rem;
}
.ez-toc-title-toggle {
	order: 1;
}
.ez-toc-title-container p {
	margin-bottom:0;
	order: 2;
	margin-left: .8rem;
}
div#ez-toc-container nav ul,
div#ez-toc-container nav ul li {
	padding:0; margin:0;
}
div#ez-toc-container nav ul ul,
div#ez-toc-container nav ul ul li {
	padding:0; margin:0;
}
div#ez-toc-container nav ul ul ul,
div#ez-toc-container nav ul ul ul li {
	padding:0; margin:0;
}
div#ez-toc-container nav ul li,
div#ez-toc-container nav ul ul li,
div#ez-toc-container nav ul ul ul li {
	border-top: 1px dotted #005964;
	padding-top:2px;
	padding-bottom:2px;
}
div#ez-toc-container nav {
	border-bottom: 1px dotted #005964;
}
div#ez-toc-container nav ul li:first-child ,
div#ez-toc-container nav ul ul li:first-child,
div#ez-toc-container nav ul ul ul li:first-child {
	border-bottom:none;
}
div#ez-toc-container nav ul li:first-child {
}
div#ez-toc-container nav a { color:var(--mokuji_a-color);}
div#ez-toc-container nav ul ul li a {
	padding-left:1.2rem;
}
div#ez-toc-container nav ul ul ul li a {
	padding-left:2.4rem;
}
div#ez-toc-container ul.ez-toc-list a {
	color:#000;
	display: block;
	cursor: pointer;
}
div#ez-toc-container ul.ez-toc-list a:visited {
	color:#000;
}
div#ez-toc-container ul.ez-toc-list a:hover {
	text-decoration-line: none;
	color:#000;
	background-color:var(--mokuji_hover_bg-color);
}
.ez-toc-icon-toggle-span svg {
	color: #fff !important;
	fill: #FFF !important;
}
.ez-toc-pull-right {margin-left: 0;}
.ez-toc-btn-xs {padding:0;}
#ez-toc-container .ez-toc-js-icon-con, #ez-toc-container .ez-toc-toggle label, .ez-toc-cssicon {
	left:0;
	margin-right: .8rem;
	border:none;
}
#ez-toc-container nav {
	background-color: var(--mokuji_bg-color);
}
.ez-toc-counter nav ul li a::before {
	color:var(--mokuji_a-color);
}


/*-----------------*/
/*------ FAQ ------*/
/*-----------------*/
.faq .full_width {
	background-color: #34997B;
	margin-bottom: 3rem;
}
.faq .full_width h2 {
	color: #fff;
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
	padding-left: 0;
	padding-top: 1rem;
	padding-bottom: 1rem;
	border:none;
}
.faq .full_width h2::before { content:none; }
.faq h3 {
	border-left:none;
	font-size: 1.6rem;
	padding: 0;
	margin: 0;
}
.faq summary {
	cursor: pointer;
	list-style: none;
	position: relative;
	padding: 1rem 2rem;
}
.faq summary::before {
	content: "⬛︎";
	color: #34997B;
	position: absolute;
	left: 0;
}
.faq h3::before {
	content: "Ｑ.";
	font-weight: bold;
	font-size: 1.6rem;
}
.faq .answer::before {
	content: "⬛︎";
	color: #F8B62D;
	position: absolute;
}
.faq details div {
	padding-left:2rem;
	padding-right: 2rem;
	margin-bottom: 3rem;
}
.faq details div::before {
	content: "Ａ.";
	font-weight: bold;
}
.faq summary::after {
	content: "+";
	position: absolute;
	top: 0;
	right: 0;
	font-size: 2.4rem;
	font-weight: bold;
	transition: transform 0.3s;
}
.faq details[open] summary::after {
	content: "−";
	right: -3px;
}
.faq details div p {display:inline;}


/*-- スマホ下部メニュー --*/
#sp-fixed-menu {
    display: none;
}
/*-- トップへ戻る --*/
.page_top {
	position:fixed;
	bottom:10px;
	right:10px;
	width: 50px;
	height: 50px;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	color:#FFF;
	font-size:2.4rem;
	text-decoration:none;
	background-color:#34997B;
	border: 1px solid;
	border-color:#34997B;
	text-align: center;
	line-height: 50px;
}
	@media screen and (max-width:540px){
		.page_top {
			bottom:30px;
		}
	}


/* -------------------------- */
/* ローディングスクリーンのスタイル */
/* -------------------------- */
.my_loading {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    width: 100vw;
    height: 100vh;
    background-color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 1;
    animation: my_fadeOutBackground 1.0s 1.5s forwards;
}

.my_loading img {
    opacity: 0;
    animation: my_logo_fade 1s 0.1s forwards;
    width: 400px; /* ロゴのサイズ（パソコン） */
}

@media screen and (max-width: 959px) {
    .my_loading img {
        width: 250px; /* ロゴのサイズ（スマホ） */
    }
}

/* 背景のフェードアウトアニメーション */
@keyframes my_fadeOutBackground {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        visibility: hidden;
    }
}

/* ロゴのフェードイン・フェードアウトアニメーション */
@keyframes my_logo_fade {
    0% {
        opacity: 0;
        transform: translateY(20px);
    }
    60% {
        opacity: 1;
        transform: translateY(0);
    }
    100% {
        opacity: 0;
    }
}
