/*---------- SP 幅768pxまでの指定 ----------*/
@media(max-width:768px) {
	.pc{
		display: none !important;
	}
	.l{
		float:none;
	}
	.r{
		float:none;
	}
	body {
		min-width:100%;
	}
	.btn-a{
		width:100%;
		display: block;
		padding:10px 48px 11px 12px;
		border:1px solid #483f3f;
		border-radius: 5px;
		text-decoration: none;
		color: #483f3f;
		background: #fff url("../img/icon-arrowright-br.png") no-repeat right 17px center;
		background-size:14px;
		transition: all 0.6s;
		margin-bottom:10px;
	}
	.btn-a:hover{
		background: #fffece url("../img/icon-arrowright-gr.png") no-repeat right 17px center;
		background-size:14px;
		border:1px solid #4b6a6b;
		color: #4b6a6b;
	}
	.btn-a:hover::after{
		color: #4b6a6b;
	}
	.btn-a .btn-text{
		display: block;
		width:100%;
		font-size: 16px;
		line-height: 1;
		padding:12px 24px 12px 24px;
		font-weight: 700;
		border-right:1px solid #483f3f;
	}
	.btn-a:hover .btn-text{
		border-right:1px solid #4b6a6b;
	}

	.product-sample-thum{
		aspect-ratio: 1/1;
		border-radius: 5px;
	}
	.product-sample-thum img{
		aspect-ratio: 1/1;
		object-fit: cover;
	}
	.no-image{
		aspect-ratio: 1/1;
		border-radius: 7px;
	}
	.no-image img{
		aspect-ratio: 1/1;
		object-fit: cover;
	}
	
	.fadeIn-UP {
		opacity: 0; /* アニメーション前は透明 */
		transform: translateY(50px); /* 画面外から下から上に */
		transition: opacity 1.5s, transform 1.5s; /* スムーズなトランジション */
	}
	.fadeIn-UP.visible {
		opacity: 1; /* 不透明に */
		transform: translateY(0); /* 元の位置に */
	}
	.fadeIn-Left {
		opacity: 0;
		transform: translateX(-50px);
		transition: opacity 1.5s, transform 1.5s;
	}
	.fadeIn-Left.visible {
		opacity: 1;
		transform: translateX(0);
	}
	.fadeIn-Right {
		opacity: 0;
		transform: translateX(50px);
		transition: opacity 1.5s, transform 1.5s;
	}
	.fadeIn-Right.visible {
		opacity: 1;
		transform: translateX(0);
	}

	#message{
		margin-top: -50px;
		padding-top: 50px;
		scroll-margin-top: 50px;
	}
	#rinen{
		margin-top: -50px;
		padding-top: 50px;
		scroll-margin-top: 50px;
	}
	#equipment{
		margin-top: -50px;
		padding-top: 50px;
		scroll-margin-top: 50px;
	}
	#overview{
		margin-top: -50px;
		padding-top: 50px;
		scroll-margin-top: 50px;
	}
	#history{
		margin-top: -50px;
		padding-top: 50px;
		scroll-margin-top: 50px;
	}

	#mark-faq{
		margin-top: -50px;
		padding-top: 50px;
		scroll-margin-top: 50px;
	}
	#mark-ctform{
		margin-top: -50px;
		padding-top: 50px;
		scroll-margin-top: 50px;
	}

/* ページ共通
---------------------------------------------- */
.page-logo-area{
	padding:5.5rem 3.5%;
}
.page-logo-area .page-logo{
	min-width:200px;
	width:66%;
}
.page-logo-area .page-logo a{
	display: block;
}

.pankuzu-area{
	width: 100%;
	padding: 2.75rem 3.75rem;
	font-size:12px;
	background: #e9eef3;
}
.pankuzu-area a{
	text-decoration: none;
}
.pankuzu-area a:hover{
	text-decoration: none;
}
.pankuzu-area .kugiri{
	display: inline-block;
	width:20px;
	position: relative;
	vertical-align: middle;
}
.pankuzu-area .kugiri::after{
	font-family: "Font Awesome 6 Free",sans-serif;
	content: "\f105";
	position: absolute;
	font-size:8px;
	font-weight: 900;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	right: 8px;
	color: #008bab;
}



/* header
---------------------------------------------- */
.sp-tool-area{
	padding:2.5rem 2.5rem 2.5rem;
	background: #008bab;
}
.sp-tool-area .gt_selector{
	border:0;
	background: none;
	color: #36383a;
}
.sp-tool-area .lang{
	display: table-cell;
	padding:2px 8px;
	text-align: left;
	font-size:13px;
}
.sp-tool-area .lang .ico{
	display: inline-block;
	margin:5px 6px 0 0;
	width:15px;
}
.sp-tool-area .lang .gtranslate_wrapper{
	display: inline-block;
}
.sp-tool-area .lang .gtranslate_wrapper option{
	color:#444;
}
.sp-tool-area .lang-area{
	border:1px solid #fff;
	background:rgba(255,255,255,0.33);
	color: #fff;
	display: inline-block;
	border-radius: 5px;
}
.sp-tool-area .gt_selector{
	color: #fff;
}

.header {
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 9999;
	background: url("../img/bg-kabuse-sp-head.png") no-repeat top center;
	background-size: 200%;
	transition: background-color 0.3s ease, padding 0.3s ease;
	padding:0 0 16px;
}
.header.wh-head {
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 9999;
	background: rgba(255,255,255,0.9);
	padding:0 0 16px;
}
.header .h-logo {
	display: block;
	width:30%;
	max-width:181px;
	float:left;
	margin:16px 0 0 10px;
}
.header .h-logo a{
	display: block;
	background: url("../img/logo-wh.png") no-repeat center center;
	background-size:100%;
	aspect-ratio: 362/188;
	text-indent: -9999px;
	overflow: hidden;
	transition: background-image 0.3s ease;
}
.header.wh-head .h-logo a{
	display: block;
	background: url("../img/logo-br.png") no-repeat center center;
	background-size:100%;
	aspect-ratio: 362/188;
	text-indent: -9999px;
	overflow: hidden;
}
.header__wrap {
	display: flex;
    padding: 1.5rem 1.5rem 2rem 2rem;
    align-items: center;
    width: 82px;
    float: right;
	border-radius: 5px;
	border: 1px solid #fff;
	margin:24px -6px 0 0;
	transition: border-color 0.3s ease;
}
.header__btn {
	margin-left: auto;
}
header .header__inner.inner {
	margin-left: auto;
	margin-right: auto;
	padding-left: 0px;
	padding-right: 0px;
	width: 100%;
}
header .menu-btn {
	cursor: pointer;
	height: 20px;
	overflow: hidden;
	position: relative;
	width: 40px;
	z-index: 1001;
}
header .menu-btn.is-active {
	height: 18px;
}
header .menu-btn.is-active::after {
	opacity: 0;
	transform: translateX(-100%);
	visibility: hidden;
}

header .menu-btn span {
	background-color: #fff;
	content: "";
	display: block;
	height: 2px;
	position: absolute;
	transition: transform 0.2s, rotate 0.2s, width 0.2s;
	width: 100%;
}
header .menu-btn span.is-active {
	background-color: #fff;
}
header .menu-btn.is-reverse span.is-active {
	background-color: #fff;
}

header .menu-btn span:nth-of-type(1) {
	top: 0;
}

header .menu-btn span:nth-of-type(2) {
	top: 9px;
}

header .menu-btn span:nth-of-type(3) {
	bottom: 0;
	right: 0;
}
header .menu-btn span.is-active:nth-of-type(1) {
	transform: rotate(45deg) translate(8%, 0.5rem);
}

header .menu-btn span.is-active:nth-of-type(2) {
	transform: translateX(-100%);
}

header .menu-btn span.is-active:nth-of-type(3) {
	transform: rotate(-45deg) translate(8%, -0.5rem);
	width: 100%;
}

/* .wh-head付の場合の.menu-btnスタイル */
.header.wh-head .header__wrap {
	border: 1px solid #231815;
}
.header.wh-head .menu-btn span {
	background-color: #231815;
}
.header.wh-head .menu-btn.is-active span {
	background-color: #fff;
}
.header.wh-head .menu-txt {
	color: #231815;
}
header .nav-menu {
	background:rgba(255,255,255,0.98);
	content: "";
	height: 100vh !important;
	position: fixed;
	right: 0;
	top: 0;
	transform: translateX(100%);
	transition: transform 0.3s ease-out;
	width: 35.25rem;
	z-index: 999;
	overflow-y: auto;
	overflow-x: hidden;
	-webkit-overflow-scrolling: touch;
}
header .nav-menu.is-show {
	transform: translateX(0);
	background: #4b6a6b;
	color: #fff;
	padding:0;
}
header .nav-menu.is-show .menu-sitemap{
	padding:20px 30px 40px;
}
header .nav-menu.is-show .menu-sitemap .link-text li{
	padding:2px 0;
}
header .nav-menu.is-show .menu-sitemap .link-text li a.menu-link{
	padding:12px 0px 12px 28px;
	display: block;
	line-height: 1.48;
	font-size: 18px;
	color: #fff;
	font-weight: 500;
	background: url("../img/icon-arrowright-maru-wh.png") no-repeat left top 17px;
	background-size:17px;
}
header .nav-menu.is-show .menu-sitemap .link-text li a.menu-sub-link{
	padding:6px 12px 16px 14px;
	display: inline-block;
	line-height: 1.48;
	font-size: 14px;
	color: #fff;
	background: url("../img/icon-arrowright2-wh.png") no-repeat left 3px top 13px;
	background-size:4px;
}

header .nav-menu.is-show .menu-head{
	padding:0 0 20px;
	border-bottom:1px solid #678788;
	margin-bottom: 12px;
	font-size: 42px;
	font-weight: 400;
	line-height: 1.62;
}
header .nav-menu.is-show .menu-bottom{
	padding:30px 30px 60px;
	border-top:1px solid #111;
	background: #202020;
	color: #fff;
}
header .nav-menu.is-show .menu-bottom .sns-area{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	flex-wrap: wrap;
	padding:0 0 16px;
	border-bottom:1px solid #000;
}
header .nav-menu.is-show .menu-bottom .sns-area li.sns-ttl{
	display: inline-block;
	padding: 0 24px 0 0;
}
header .nav-menu.is-show .menu-bottom .sns-area li{
	display: inline-block;
	padding: 0px 2px;
	border-right: 1px solid #000;
	border-left: 1px solid #444;
}
header .nav-menu.is-show .menu-bottom .sns-area li:last-child{
	border-right: none;
}
header .nav-menu.is-show .menu-bottom .sns-area li:first-child{
	border-left: none;
}
header .nav-menu.is-show .menu-bottom .sns-area li a{
	display: block;
	padding: 0 12px 0 48px;
	color: #fff;
}
header .nav-menu.is-show .menu-bottom .sns-area li a.instagram{
	display: inline-block;
	background: url("../img/icon-ig-wh.png") no-repeat left 18px center;
	background-size:15px;
}
header .nav-menu.is-show .menu-bottom .sns-area li a.threads{
	background: url("../img/icon-th-wh.png") no-repeat left 18px center;
	background-size:20px;
}

header .nav-menu.is-show .privacy-link-area{
	padding:12px 0;
	color: #fff;
	border-top:1px solid #444;
	margin-bottom:12px;
}
header .nav-menu.is-show .privacy-link-area a{
	display: inline-block;
	padding:12px 12px 12px 0;
	font-size: 12px;
	color: #fff;
	text-decoration: underline;
}
header .nav-menu.is-show .privacy-link-area a:hover{
	color: #ffe220;
	text-decoration: none;
}

header .nav-menu.is-show .info{
	font-size: 13px;
}
header .nav-menu.is-show .info a{
	text-decoration: underline;
	color: #fff;
}
header .nav-menu.is-show .info a:hover{
	text-decoration: none;
	color: #ffe220;
}

header .nav-menu__wrap {
	height: 100%;
	overflow-y: auto;
	overflow-x: hidden;
	-webkit-overflow-scrolling: touch;
}
header .nav-menu__lists {
	padding-top: 11.25rem;
}
header .nav-menu {
	width: 100%;
}
header .nav-menu__lists {
	padding-top: 18rem;
}
header .nav-menu__link {
	font-size: 5rem;
	padding: 1.9375rem 1.75rem 1.9375rem 10.5vw;
	display: block;
}
header .nav-menu__link:hover {
	opacity: 0.7;
	transform: translateY(-0.1875rem);
}
header .nav-menu__link::before {
	content: "";
	display: inline-block;
	margin-right: 2.5rem;
	margin-bottom: 0.75rem;
	width: 3vw;
	height: 3px;
	background: #008bab;
}
header .menu-txt{
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	text-orientation: upright;
	font-size: clamp(8px, 0.55vw, 11px);
	padding-left:0.8rem;
	letter-spacing: 0.15rem;
	color: #fff;
}

/* TOP以外のheader
---------------------------------------------- */
.br-header {
	position: fixed;
	top: 0;
	width: 100%;
	height: 100px;
	z-index: 9999;
	background: rgba(255,255,255,0.9);
	padding:0 0 16px;
}
.br-header .h-logo {
	display: block;
	width:121px;
	float:left;
	margin:16px 0 0 10px;
}
.br-header .h-logo a{
	display: block;
	background: url("../img/logo-br.png") no-repeat center center;
	background-size:100%;
	aspect-ratio: 362/188;
	text-indent: -9999px;
	overflow: hidden;
}

.br-header .header__wrap {
	border: 1px solid #231815;
}
.br-header .menu-btn span {
	background-color: #231815;
}
.br-header .menu-btn.is-active span {
	background-color: #fff;
}
.br-header .menu-txt {
	color: #231815;
}

/* tool-area
---------------------------------------------- */
.tool-area{
	padding:5rem 2rem;
	text-align: center;
	background: #222;
}
.tool-area .head-search{
	display:inline-block;
	width:88%;
	margin-right:4px;
}
.searchform {
	display:block;
	width:100%;
	position: relative;
}
.searchsubmit:hover {
	opacity: .6;
}
.searchform input[type="text"]{
	outline: none;
	-webkit-transition: all .3s;
	transition: all .3s;
	width:100%;
	padding:7px 16px 7px;
	border:1px solid #ccc;
	background: #f6f8fa;
	display: inline-block;
	border-radius: 5px;
	font-size:16px;
	line-height:1.3;
}
.searchsubmit {
	width:18px;
	height:18px;
	background:url("../img/search_icon.png") no-repeat center center;
	background-size:100%;
	position: absolute;
	top: 8px;
	right: 10px;
	padding: 0;
	cursor: pointer;
	border: none;
	text-indent:-9999px;
}
.searchsubmit:hover {
	opacity: .6;
}

/* footer
---------------------------------------------- */

.foot-cta-area{
	background: #4b6a6b url("../img/bg-foot-cta-min.png") no-repeat center bottom;
	background-size: cover;
}
.foot-cta-area .inner{
	width:100%;
	padding:10rem 30px;
}
.foot-cta-area .ttl{
	text-align: center;
	margin-bottom:5rem;
}
.foot-cta-area .ttl img{
	width:80vw;
	max-width: 750px;
	margin:0 auto;
}
.foot-cta-area .f-cta-box{
	display: block;
}
.foot-cta-area .f-cta-box .box{
	width:100%;
	padding:30px;
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
	display: block;
	margin-bottom:30px;
}
.foot-cta-area .f-cta-box .box .box-head{
	text-align: center;
	width:100%;
	border-bottom: 1px solid #4b6a6b;
	padding:0 0 30px;
}
.foot-cta-area .f-cta-box .box .box-head h3{
	font-size: 32px;
	font-weight: 500;
	color: #4b6a6b;
	margin-bottom:0.5rem;
}
.foot-cta-area .f-cta-box .box .box-head .text{
	font-size: 16px;
}

.foot-cta-area .f-cta-box .box .box-link{
	display: block;
	width:100%;
}
.foot-cta-area .f-cta-box .box .box-link ul li{
	border-bottom: 1px dotted #6e9497;
}
.foot-cta-area .f-cta-box .box .box-link ul li:last-child{
	border-bottom: none;
}

.foot-cta-area .f-cta-box .box .box-link ul li a{
	display: block;
	padding:20px ;
	font-size: 18px;
	font-weight: 700;
	text-decoration: none;
	color: #4b6a6b;
	transition: all 0.6s;
	background: url("../img/icon-arrowright-gr.png") no-repeat right 0.35rem center;
	background-size:14px;
}
.foot-cta-area .f-cta-box .box .box-link ul li a:hover{
	background:#fffece url("../img/icon-arrowright-gr.png") no-repeat right 0.35rem center;
	border-radius: 5px;
	background-size:14px;
}

footer {
	width:100%;
	background: #4b6a6b;
	color: #fff;
}
footer a{
	color: #fff;
}
footer .inner{
	width:100%;
	padding:70px 16px;
	margin:0 auto;
}
footer .inner .foot-info{
	width:100%;
}
footer .inner .foot-info .f-logo{
	width:50%;
	max-width: 320px;
	margin:0 auto 40px;
}
footer .inner .foot-info .f-logo a{
	display: block;
	width:100%;
	max-width: 320px;
	margin:0 auto 40px;
}
footer .inner .foot-info .info .title{
	font-size: 18px;
	font-weight: 500;
	text-align: center;
}
footer .inner .foot-info .info .address{
	font-size:13px;
	text-align: center;
	margin-bottom: 48px;
}
footer .inner .foot-info .info .address a{
	text-decoration: underline;
}
footer .inner .foot-info .info .address a:hover{
	color: #ffe220;
	text-decoration: none;
}
footer .inner .foot-info .info .f-ban-area{
	width:70%;
	max-width:300px;
	margin:0 auto;
	padding:0 0 60px;
}

footer .copy{
	text-align: center;
	font-size: 12px;
	border-top:1px solid #678788;
	padding-top: 24px;
}

footer .inner .foot-sitemap .btn-a{
	display: inline-block;
	width:100%;
	padding:0.75rem 1.5rem 0.8rem 0.6rem;
	border:1px solid #fff;
	border-radius: 5px;
	text-decoration: none;
	color: #fff;
	background: url("../img/icon-arrowright-wh.png") no-repeat right 0.85rem center;
	background-size:20px;
	transition: all 0.6s;
	margin-bottom:0.75rem;
}
footer .inner .foot-sitemap .btn-a:hover{
	background: #fff;
	border:1px solid #4b6a6b;
	color: #4b6a6b;
	background:#fff url("../img/icon-arrowright-gr.png") no-repeat right 0.85rem center;
	background-size:20px;
}

footer .inner .foot-sitemap .btn-a .btn-text{
	display: inline-block;
	width:87%;
	font-size: clamp(16px, 1.2vw, 18px);
	line-height: 1;
	padding:0.5rem 0.5rem 0.5rem 3rem;
	font-weight: 700;
	border-right:1px solid #fff;
}
footer .inner .foot-sitemap .btn-a.instagram .btn-text{
	background: url("../img/icon-ig-wh.png") no-repeat left 0.85rem center;
	background-size:16px;
}
footer .inner .foot-sitemap .btn-a.instagram:hover .btn-text{
	background: url("../img/icon-ig-gr.png") no-repeat left 0.85rem center;
	background-size:16px;
}
footer .inner .foot-sitemap .btn-a.threads .btn-text{
	background: url("../img/icon-th-wh.png") no-repeat left 0.85rem center;
	background-size:21px;
}
footer .inner .foot-sitemap .btn-a.threads:hover .btn-text{
	background: url("../img/icon-th-gr.png") no-repeat left 0.85rem center;
	background-size:21px;
}
footer .inner .foot-sitemap .btn-a:hover .btn-text{
	border-right:1px solid #4b6a6b;
}

footer .inner .foot-sitemap .f-bottom{
	border-top:1px solid #678788;
	padding:24px 0 0;
}
footer .inner .foot-sitemap .f-bottom .copy{
	float:left;
	font-size:13px;
}
footer .inner .foot-sitemap .f-bottom .page-top-area{
	float:right;
	width:146px;
	height:80px;
}
footer .inner .foot-sitemap .f-bottom .page-top-area .name{
	display: block;
	float:left;
	font-size: 15px;
	color: #fff;
	padding-top: 1.35rem;
}
footer .inner .foot-sitemap .f-bottom .page-top-area .name:hover{
	color: #ffe220;
}
footer .inner .foot-sitemap .f-bottom .page-top-area .arrow{
	display: block;
	float:right;
}

footer .inner .foot-sitemap .f-bottom .page-top-area{
	float:right;
}
footer .privacy-link-area{
	font-size: 12px;
	padding:40px 30px 0;
	text-align: center;
	background: #16191c;
	color: #ccc;
}
footer .privacy-link-area a{
	font-size: 13px;
	text-align: center;
	margin:0 8px;
	color: #ccc;
	text-decoration: underline;
}
footer .privacy-link-area a:hover{
	text-decoration: none;
	color: #ffe220;
}
footer .cookie-area{
	padding:20px 30px 100px;
	background: #16191c;
	font-size: 12px;
	text-align: center;
	color: #ccc;
}

.kotei-cta{
	width:100%;
	position: fixed;
	bottom:5px;
	left:5px;
	z-index: 999;
	transform: translateY(100%);
	opacity: 0;
	transition: transform 0.5s ease-out, opacity 0.5s ease-out;
}
.kotei-cta.show{
	transform: translateY(0);
	opacity: 1;
}
.kotei-cta .btn-area{
	width:80%;
	float:left;
	display: flex;
}
.kotei-cta .btn-area a{
	display: inline-block;
	padding:16px 20px 18px;
	line-height: 1.2;
	background: #fffff7;
	border-radius: 3px;
	text-decoration: none;
	color: #4b6a6b;
	border:1px solid #4b6a6b;
	font-weight: 600;
	font-size: 13px;
	transition: all 0.6s;
	margin-right:5px;
	box-shadow: 0 4px 8px rgba(11, 29, 36, 0.33);
}
.kotei-cta .btn-area a:hover{
	background: #319da5;
	color: #fff;
}

.kotei-cta .page-top-area{
	width:20%;
	float:right;
	text-align: right;
	padding:0 12px 5px 0;
}
.kotei-cta .page-top-area a{
	display: inline-block;
	width:36px;
}
.kotei-cta .page-top-area a img{
	width:100%;
	height:100%;
	object-fit: cover;
}


/* index
---------------------------------------------- */
.top-main-area{
	aspect-ratio: 768/1280;
	width:100%;
	position: relative;
}
.top-main-area .amikake{
	aspect-ratio: 764/1280;
	width:100%;
	position: absolute;
	z-index: 101;
	background: url("../img/kabuse-min.png") no-repeat top center;
	background-size: cover;
}
.top-main-area .catch{
	width:92%;
	position: absolute;
	bottom:3.5rem;
	left:4rem;
	z-index: 102;
}
.top-main-area .bg-main-slide{
	aspect-ratio: 768/1280;
	width:100%;
	position: absolute;
	z-index: 100;
	background: #fff;
}
.top-main-area .slider {
	margin-inline: auto;
	overflow: hidden; /* 画像がはみ出ないようにする */
	width: 100%;
	aspect-ratio: 768/1280;
  }
  .top-main-area .slick-img img {
	width: 100%;
	object-fit: cover;
	aspect-ratio: 768/1280;
  }
  @keyframes zoomUp {
	0% {
	  transform: scale(1);
	}
	100% {
	  transform: scale(1.25); /* 拡大率 */
	}
  }
  .add-animation {
	animation: zoomUp 12s linear 0s normal both;
  }

.read-area{
	width:100%;
	background: #fff;
	padding:40px 0 80px;
}
.read-area .inner{
	width:100%;
	padding:0 30px;
	margin:0 auto;
}
.read-area .content h2{
	font-size:clamp(20px, 5.5vw, 24px);
	font-weight: 500;
	margin-bottom: 40px;
	line-height: 1.86;
	text-align: center;
	color: #4b6a6b;
}
.read-area .content .box{
	width:100%;
}
.read-area .content .box .box-text{
	width:100%;
	margin-bottom: 60px;
}
.read-area .content .box .box-text .txt{
	font-size: 16px;
	margin-bottom: 40px;
}
.read-area .content .box .box-text .btn-area{
	padding:0;
	max-width: 400px;
	margin:0 auto;
	text-align: center;
}

.read-area .content .box .box-photo{
	width:100%;
}
.movie-area{
	width:100%;
	background:#fff;
	padding:0;
	position: relative;
	aspect-ratio: 768/420;
}
.movie-area .movie-box video{
	width:100%;
	object-fit: cover;
	aspect-ratio: 768/420;
}
.movie-area .text{
	width:100%;
	text-align: center;
	position: absolute;
	top:49%;
	left:50%;
	transform: translate(-50%, -50%);
	z-index: 1;
	color:rgba(255,255,255,0.8);
	font-size: clamp(24px, 5.5vw, 40px);
	font-weight: 400;
	line-height: 1.62;
}

.top-product-oriname{
	width:100%;
	background: #f1efef;
	padding:40px 0;
}
.top-product-oriname .product-head{
	width:100%;
	padding:0;
	margin:0 auto 60px;
}
.top-product-oriname .product-head h2{
	display: block;
	width:100%;
	color: #ac9a9a;
	text-align: center;
	font-size: 48px;
	font-weight: 400;
	line-height: 1.62;
	padding:0 30px;
	margin-bottom: 24px;
	letter-spacing: -4px;
}
.top-product-oriname .product-head h2 span{
	font-size:72px;
	vertical-align: baseline;
}
.top-product-oriname .product-head .text{
	display: block;
	font-size:16px;
	line-height: 1.78;
	padding:0 30px;
}
.top-product-oriname .product-head .image{
	padding:0 30px;
	margin-bottom:40px;
}
.product-sample-slide .slick-prev,
.product-sample-slide .slick-prev:before,
.product-sample-slide .slick-prev:hover,
.product-sample-slide .slick-prev:hover:before,
.product-sample-slide .slick-prev:focus,
.product-sample-slide .slick-prev:focus:before{
	left:2px;
	display:block;
	position: absolute;
	top: 38%;
	background:url("../img/prev.png") no-repeat center center;
	background-size:100%;
	width:58px;
	height:58px;
	z-index:9998;
}
.product-sample-slide .slick-next,
.product-sample-slide .slick-next:before,
.product-sample-slide .slick-next:hover,
.product-sample-slide .slick-next:hover:before,
.product-sample-slide .slick-next:focus,
.product-sample-slide .slick-next:focus:before{
	right:2px;
	display:block;
	position: absolute;
	top: 38%;
	background:url("../img/next.png") no-repeat center center;
	background-size:100%;
	width:58px;
	height:58px;
	z-index:9998;
}
.product-sample-slide .slick-dots{
	position: absolute;
	display: inline-block;
	width: auto;
	padding: 0;
	margin: 0;
	list-style: none;
	text-align: center;
	bottom:-24px;
	left:50%;
	transform: translateX(-50%);
}
.product-sample-slide .slick-dots li {
	margin: 0 10px;
    width: 12px;
    height: 12px;
  }
.product-sample-slide .slick-dots li button::before {
    content: '';
    width: 12px;
    height: 12px;
    opacity: 1;
	background: #928080;
	border-radius: 10px;
}
.product-sample-slide .slick-dots li.slick-active button:before{
	background: #ffe220;
	border-radius: 10px;
	opacity: 1;
}
.product-sample-slide .slick-box{
	padding:10px 10px 40px;
	color: #483f3f;
}
.product-sample-slide .slick-box .photo{
	width:100%;
	display: block;
	margin-bottom:20px;
}
.product-sample-slide .slick-box .sample-txt{
	font-size: 13px;
	font-weight: 500;
	text-align: center;
	transition: .6s;
	margin-bottom: 10px;
}
.product-sample-slide .slick-box .title{
	font-size: 21px;
	font-weight: 700;
	text-align: center;
	transition: .6s;
}
.product-sample-slide .slick-box:hover .sample-txt{
	color: #319da5;
}
.product-sample-slide .slick-box:hover .title{
	color: #319da5;
}
.top-product-oriname .btn-area{
	text-align: center;
	padding:30px;
	max-width: 460px;
	margin:0 auto;
}
.top-product-print{
	width:100%;
	background: #fff;
	padding:60px 30px;
	border-bottom:1px solid #ccc;
}
.top-product-print .box{
	width:100%;
}
.top-product-print .box h2{
	margin-bottom: 24px;
	text-align: center;
	color: #9aa3ac;
	letter-spacing: 0;
	font-size: 48px;
	font-weight: 400;
	line-height: 1.62;
}
.top-product-print .box .image{
	padding:0;
	margin-bottom:40px;
}
.top-product-print .box .text{
	font-size: 16px;
	line-height: 1.78;
	margin-bottom: 40px;
}

.top-product-wappen{
	width:100%;
	background: #fff;
	padding:60px 30px;
}
.top-product-wappen .box h2{
	margin-bottom: 24px;
	text-align: center;
	color: #acab9a;
	letter-spacing: 0;
	font-size: 48px;
	font-weight: 400;
	line-height: 1.62;
}
.top-product-wappen .box .image{
	padding:0;
	margin-bottom:40px;
}
.top-product-wappen .box .text{
	font-size: 16px;
	line-height: 1.78;
	margin-bottom: 40px;
}
.top-product-wappen .btn-area,
.top-product-print .btn-area{
	width:100%;
	max-width: 460px;
	margin:0 auto;
	text-align: center;
}

/* 会社案内
---------------------------------------------- */
.page-company .page-contents .company-top{
	width:100%;
	padding:0 0 60px;
}
.page-company .page-contents .company-top .side-area{
	width:100%;
}
.page-company .page-contents .company-top .message{
	width:100%;
	padding:0 30px;
}
.page-company .page-contents .company-top .message .l-con{
	width:100%;
}
.page-company .page-contents .company-top .message .r-con{
	width:100%;
}
.page-company .page-contents .company-top .message .message-head{
	padding:20px 0;
	margin-bottom:20px;
	color: #637b7c;
	line-height: 1.62;
}
.page-company .page-contents .company-top .message .message-head .txt-en{
	font-size: 12px;
	margin-bottom:20px;
}
.page-company .page-contents .company-top .message .message-head .txt-en span{
	display: none;
}
.page-company .page-contents .company-top .message .message-head .catch-txt{
	font-size: 26px;
	margin-bottom: 16px;
}
.page-company .page-contents .company-top .message .message-head .name-txt{
	font-size: 21px;
}	
.page-company .page-contents .company-top .message .message-head .name-txt span{
	font-size: 16px;
	vertical-align: baseline;
}
.page-company .page-contents .company-top .message .text-area{
	font-size: 16px;
	margin-bottom: 40px;
}
.page-company .page-contents .company-top .message .text-area p{
	margin-bottom: 24px;
}
.page-company .page-contents .company-top .message .text-area p:last-child{
	margin-bottom: 0;
}

.page-company .page-contents .rinen{
	padding:20px 0 40px;
	margin-bottom: 40px;
}
.page-company .page-contents .rinen .rinen-head{
	margin-bottom:40px;
	text-align: center;
	line-height: 1.62;
}
.page-company .page-contents .rinen .rinen-head .txt-en{
	font-size: 12px;
	color: #637b7c;
}
.page-company .page-contents .rinen .rinen-head .ttl{
	font-size: 24px;
	font-weight: 500;
}
.page-company .page-contents .rinen .rinen-contents{
	margin-bottom: 40px;
}
.page-company .page-contents .rinen .rinen-contents .item{
	margin-bottom:40px;
	padding:0 30px;
	text-align: center;
	font-weight: 400;
}
.page-company .page-contents .rinen .rinen-contents .item .number{
	font-size: 20px;
	margin-bottom:20px;
	display: block;
	margin: 0 auto;
	width:98px;
	line-height: 98px;
	height:98px;
	background: url("../img/bg-num.png") no-repeat center center;
	background-size: 100%;
}

.page-company .page-contents .rinen .rinen-contents .item .text{
	font-size: 20px;
}

@keyframes loop {
	0% {
	  transform: translateX(100%);
	}
	to {
	  transform: translateX(-100%);
	}
  }
  @keyframes loop2 {
	0% {
	  transform: translateX(0);
	}
	to {
	  transform: translateX(-200%);
	}
  }
.loop_wrap {
	display: flex;
	width: 100vw;
	overflow: hidden;
}
.ani-txt.loop_wrap .item-list{
	flex: 0 0 auto;
	width:100%;
	display: flex;
}
.rinen-image .ani-txt.loop_wrap .item-list{
	width:180%;
}
.rinen-image .ani-txt.loop_wrap .item {
	width:25% !important;
	min-width: 25% !important;
	padding:1.5rem !important;
	flex-shrink: 0 !important;
	aspect-ratio: 1/1;
	object-fit: cover;
}
.rinen-image .ani-txt.loop_wrap .item img{
	border-radius: 8px;
	width: 100% !important;
	height: auto !important;
	display: block;
}
.ani-txt.loop_wrap .item img{
	border-radius: 8px;
	aspect-ratio: 1/1;
	object-fit: cover;
}
.ani-txt.loop_wrap .item-list:nth-child(odd) {
	animation: loop 200s -100s linear infinite;
}
.ani-txt.loop_wrap .item-list:nth-child(even) {
	animation: loop2 200s linear infinite;
}

.equipment{
	padding:40px 0;
	background: #fff url("../img/bg-eq.png") repeat-x top center;
	background-size: 6%;
	overflow: hidden;
	margin-bottom: 40px;
}
.equipment-head{
	width:100%;
	text-align: center;
	line-height: 1.62;
	padding:0 0 40px;
}
.equipment-head .txt-en{
	font-size:12px;
	color: #637b7c;
}
.equipment-head .txt-en span{
	display: none;
}
.equipment-head .ttl{
	font-size: 24px;
	font-weight: 500;
}
.equipment-contents{
	width:100%;
	padding:0 30px;
}
.equipment-contents .item{
	width:100%;
	padding:0 0 60px;
	margin-bottom: 64px;
	border-bottom:1px solid #b2cdcf;
}
.equipment-contents .item:last-child{
	margin-bottom: 0;
}
.equipment-contents .item .equipment-slide-area{
	width:100%;
	margin-bottom: 24px;
}
.equipment-contents .item .equipment-slide-area .slider-nav .slick-slide {
	cursor: pointer;
	transition: opacity 0.3s ease;
	border-top: 5px solid #fff;
	border-right: 2px solid #fff;
}
.equipment-contents .item .equipment-slide-area .slick-slide:last-child {
	border-right: none;
}
.equipment-contents .item .equipment-slide-area .slick-slide:hover {
	opacity: 0.9;
}
.equipment-contents .item .equipment-text-area {
	width:100%;
}

.equipment-contents .item .equipment-text-area h3{
	font-size: 30px;
	text-align: center;
	margin-bottom: 20px;
	line-height: 1.42;
	font-weight: normal;
}
.equipment-contents .item .equipment-text-area .text{
	font-size:14px;
	margin-bottom: 24px;
}
.equipment-contents .item .equipment-text-area .text-tb{
	display: table;
	width: 100%;
	border-top:1px solid #ccc;
	border-left:1px solid #ccc;
	line-height: 1.6;
}
.equipment-contents .item .equipment-text-area .text-tb .th{
	display: table-cell;
	font-size: 13px;
	width: 35%;
	padding:16px ;
	font-weight: bold;
	border-right:1px solid #ccc;
	border-bottom:1px solid #ccc;
	background: #f2f5ee;
	vertical-align: middle;
}
.equipment-contents .item .equipment-text-area .text-tb .td{
	display: table-cell;
	width: 65%;
	font-size: 13px;
	border-right:1px solid #ccc;
	border-bottom:1px solid #ccc;
	padding:16px ;
	vertical-align: middle;
}

.overview{
	padding:40px 0;
	background: #fff url("../img/bg-eq.png") repeat-x top center;
	background-size: 6%;
	overflow: hidden;
}
.overview-head{
	width:100%;
	line-height: 1.62;
	padding:0 0 40px;
	text-align: center;
}
.overview-head .txt-en{
	font-size: 12px;
	color: #637b7c;
}
.overview-head .txt-en span{
	display: none;
}
.overview-head .ttl{
	font-size: 24px;
	font-weight: 500;
}
.overview-contents{
	width:100%;
	box-sizing: border-box;
	padding:0 30px;
}
.overview-contents .tb-area table{
	width:100%;
	border-collapse: collapse;
	margin-bottom:60px;
}
.overview-contents .tb-area table th,
.overview-contents .tb-area table td{
	font-size: 14px;
	border:1px solid #ccc;
	padding:20px 12px;
	background: #fff;
	line-height:1.6;
	vertical-align: middle;
}
.overview-contents .tb-area table th{
	background: #4b6a6b;
	color: #fff;
	width:37%;
	text-align: left;
}

.overview-contents .location-area{
	width:100%;
	margin-bottom:60px;
}
.overview-contents .location-area .photo{
	width:100%;
	margin-bottom: 24px;
}
.overview-contents .location-area .text-area{
	width:100%;
	font-size: 16px;
}

.overview-contents .map-area{
	width:100%;
	margin-bottom: 40px;
}

.history{
	padding:300px 0 80px;
	background: #f1efef url("../img/bg-history-s-min.png") no-repeat top center;
	background-size: 200%;
}
.history-head{
	width:100%;
	line-height: 1.62;
	padding:0 0 40px;
	text-align: center;
}
.history-head .txt-en{
	font-size: 12px;
	color: #483f3f;
}
.history-head .txt-en span{
	display: none;
}
.history-head .ttl{
	font-size: 24px;
	font-weight: 500;
}
.history-contents{
	width:100%;
	box-sizing: border-box;
	padding:0 30px;
}

.history-contents .tb-area table{
	width:100%;
	border-collapse: collapse;
}
.history-contents .tb-area table th,
.history-contents .tb-area table td{
	font-size: 14px;
	border:1px solid #ccc;
	padding:20px 12px;
	background: rgba(255,255,255,0.9);
	line-height:1.6;
	vertical-align: middle;
}
.history-contents .tb-area table th{
	background: #847373;
	color: #fff;
	width:37%;
	text-align: left;
}

/* single（プロダクト）
---------------------------------------------- */
.single-product{
	width: 100%;
}
.single-product .contents-left{
	width:100%;
}
.single-product .contents-right{
	width:100%;
}
.single-product .single-contents{
	width:100%;
}
.single-product .single-contents .l-con{
	width:100%;
	padding:36px 24px 24px;
	background: #f2f4f7;
}
.single-product .single-contents .l-con .slider-nav .slick-slide{
	cursor: pointer;
	border:2px solid #fff;
}
.single-product .single-contents .l-con .slider-nav{
	border-top:3px solid #fff;
}
.single-product .single-contents .l-con .slider-nav .slick-slide:hover{
	border:2px solid #4b6a6b;
	opacity: 0.9;
}

.single-product .single-contents .r-con{
	width:100%;
	padding:16px 24px 60px;
	background: #f2f4f7;
}
.single-product .single-contents .r-con .contents-area{
	width:100%;
	font-size:16px;
}
.single-product .single-head{
	width:100%;
	border-top:1px solid #a9bcce;
	border-bottom:1px solid #a9bcce;
	padding:28px 16px 36px;
	line-height: 1.62;
	text-align: center;
}
.single-product .single-head h1{
	font-size: 28px;
	font-weight: 500;
	margin-bottom: 8px;
}
.single-product .single-head .day{
	font-size: 11px;
	color: #666;
}
.single-product .single-contents .r-con .entry-content{
	margin-bottom: 40px;
}
.single-product .single-contents .r-con .entry-content p{
	margin-bottom: 24px;
}
.single-product .single-contents .r-con table{
	width:100%;
	border-collapse: collapse;
	margin-bottom:36px;
}
.single-product .single-contents .r-con table th,
.single-product .single-contents .r-con table td{
	font-size: 14px;
	border:1px solid #ccc;
	background: #fff;
	line-height:1.6;
}
.single-product .single-contents .r-con table th{
	background: #dfe6ee;
	padding:12px 8px;
	width:40%;
	text-align: center;
	vertical-align: middle;
}
.single-product .single-contents .r-con table td{
	text-align: left;
	padding:12px 12px;
	vertical-align: middle;
}
.single-product .single-contents .r-con .btn-area{
	width:100%;
}
.single-product .single-contents .r-con .btn-area .btn-back{
	width:49%;
	float:left;
	display: block;
	padding:14px 0 16px;
	border:1px solid #4b6a6b;
	background: #fff;
	border-radius: 3px;
	line-height: 1;
	text-align: center;
	font-size: 16px;
	line-height: 1.62;
	color: #222;
}
.single-product .single-contents .r-con .btn-area .btn-back:hover{
	background: #319da5;
	color: #fff;
}
.single-product .single-contents .r-con .btn-area .btn-order{
	width:49%;
	float:right;
	display: block;
	padding:14px 0 16px;
	border:1px solid #4b6a6b;
	background: #fff;
	border-radius: 3px;
	line-height: 1;
	text-align: center;
	font-size: 16px;
	line-height: 1.62;
	color: #222;
}
.single-product .single-contents .r-con .btn-area .btn-order:hover{
	background: #319da5;
	color: #fff;
}

/* single（プロダクト）side-product
---------------------------------------------- */
.side-product{
	width:100%;
}
.side-product .product-head{
	width:100%;
	padding:30px 24px 24px;
	border-bottom:1px solid #41989b;
	border-top:1px solid #41989b;
	margin-bottom: 40px;
}
.side-product .product-head .ttl-en{
	width:100%;
	font-size: 12px;
	color: #637b7c;
	line-height: 1.62;
}
.side-product .product-head h2{
	width:100%;
	font-size: 32px;
	font-weight: 500;
	margin-bottom: 12px;
	line-height: 1.62;
}
.side-product .product-head .text{
	width:100%;
	font-size:14px;
	padding:0 0 8px;
}
.product-widget{
	width:100%;
}
.product-widget h3{
	width:100%;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.62;
	background: url("../img/icon-circle.png") no-repeat left center;
	background-size:18px;
	padding:0 0 0 24px;
}
.soshiki-widget{
	width:100%;
	padding:12px 24px 24px;
	padding-bottom: 32px;
	border-bottom: 1px solid #ccc;
}
.soshiki-widget ul{
	width:100%;
	padding:24px 0;
}
.soshiki-widget ul li{
	display: inline-block;
	margin-right: 5px;
	margin-bottom: 5px;
}
.soshiki-widget ul li a{
	width:100%;
	display: block;
	padding:10px 16px;
	font-size: 14px;
	line-height: 1;
	color: #222;
	background: #e9eef3;
	transition: all 0.6s;
	border-radius: 3px;
}
.soshiki-widget ul li a:hover{
	background: #319da5;
	color: #fff;
}

/* accordion widget */
.ac-widget{
	width:100%;
}
.ac-item{
	width:100%;
	border-bottom: 1px solid #ccc;
}
.ac-head{
	width:100%;
	cursor: pointer;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 16px 12px;
	transition: all 0.6s;
}
.ac-head:hover{
	background: #fffece;
}
.ac-head h3{
	font-size: 16px;
	font-weight: 500;
	line-height: 1.62;
	margin: 0;
}
.ac-head .btn-icon{
	width: 18px;
	height: 18px;
	flex-shrink: 0;
}
.ac-head .btn-icon img{
	width: 100%;
	height: 100%;
	object-fit: contain;
	transition: transform 0.3s ease-out;
}
.ac-head .btn-icon img.rotate{
	animation: iconRotate 0.4s ease-out;
}
@keyframes iconRotate {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}
.ac-body{
	width:100%;
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.4s ease-out, opacity 0.3s ease-out;
	opacity: 0;
}
.ac-item.open .ac-body{
	opacity: 1;
	padding:0 24px 24px;
}
.ac-body .text{
	padding: 16px 0;
	font-size: 14px;
	line-height: 1.82;
}
.about-soshiki .box-list{
	width:100%;
	display: flex;
	flex-wrap: wrap;
}
.about-soshiki .ac-item .text{
	font-size: 14px;
	line-height: 1.62;
	padding:16px 0;
}
.about-soshiki .ac-item .text a{
	text-decoration: underline;
}
.about-soshiki .ac-item .text a:hover{
	color: #419a9e;
	text-decoration: none;
}

.about-soshiki .box-list .box{
	width: 47%;
	padding:0 0 24px;
	margin-right:6%;
}
.about-soshiki .box-list .box:nth-child(2n){
	margin-right:0;
}
.about-soshiki .box-list .box h4{
	font-size: 16px;
	padding:0 0 8px;
	text-align: center;
}
.about-soshiki .box-list .box .photo{
	width:100%;
	margin-bottom:0.75rem;
}
.about-soshiki .box-list .box .photo a{
	width:100%;
	display: block;
	margin-bottom:6px;
}
.about-soshiki .box-list .box .photo span{
	display: block;
	font-size: 11px;
	line-height: 1.62;
	color: #8a6e6e;
	margin-bottom:12px;
	text-align: right;
}
.about-soshiki .box-list .box .txt{
	font-size: 12px;
	line-height: 1.62;
}

.about-oriki .box-list .box{
	width: 100%;
	padding:12px 0 32px;
}
.about-oriki .box-list .box h4{
	font-size: 18px;
	padding:0 0 16px;
	text-align: center;
}
.about-oriki .box-list .box .photo{
	width:100%;
	margin-bottom:16px;
}
.about-oriki .box-list .box .txt{
	font-size: 13px;
	line-height: 1.62;
}

.about-kakou .box-list{
	width:100%;
	display: flex;
	flex-wrap: wrap;
}
.about-kakou .box-list .box{
	width: 47%;
	padding:0 0 24px;
	margin-right:6%;
}
.about-kakou .box-list .box:nth-child(2n){
	margin-right:0;
}
.about-kakou .box-list .box h4{
	font-size: 14px;
	padding:0 0 8px;
	line-height: 1.62;
	text-align: center;
}
.about-kakou .box-list .box .txt{
	font-size: 12px;
	line-height: 1.62;
}

.about-atokakou .box{
	padding:12px 0;
}
.about-atokakou .box h4{
	font-size:18px;
	color: #419a9e;
}
.about-atokakou .box .txt{
	font-size: 14px;
	line-height: 1.62;
}

.about-sozai .box{
	padding:12px 0;
}
.about-sozai .box h4{
	font-size:18px;
	color: #419a9e;
}
.about-sozai .box .txt{
	font-size: 14px;
	line-height: 1.62;
	margin-bottom:12px;
}
.about-sozai .box .txt a{
	text-decoration: underline;
}
.about-sozai .box .txt a:hover{
	color: #419a9e;
	text-decoration: none;
}

.about-nyukou .box{
	padding:12px 0;
}
.about-nyukou .box .txt{
	font-size: 14px;
	line-height: 1.62;
	margin-bottom:12px;
}


.about-tapesozai .box-list{
	width:100%;
	padding:12px 0;
}
.about-tapesozai .box{
	padding:12px 0;
}
.about-tapesozai .box-list .box .photo{
	width:35%;
	float:left;
}
.about-tapesozai .box-list .box .text-area{
	width:65%;
	float:right;
	padding-left:5%;
}
.about-tapesozai .box-list .box .text-area h4{
	font-size: clamp(14px, 1.05vw, 16px);
	padding:0;
}
.about-tapesozai .text{
	font-size: clamp(12px, 0.8vw, 14px);
	line-height: 1.62;
	padding:0 0 0.75rem;
}

.about-insatsu .box{
	line-height: 1.72;
	padding:24px 0;
	border-bottom:1px dotted #666;
}
.about-insatsu .box:last-child{
	border-bottom: none;
}
.about-insatsu .box h4{
	font-size:18px;
	color: #419a9e;
}
.about-insatsu .box .text{
	font-size: 14px;
	line-height: 1.62;
	padding:0 0 16px;
}
.about-insatsu .photo-area .photo{
	width:100%;
	padding:16px 0;
}
.about-insatsu .ac-item .text a{
	text-decoration: underline;
}
.about-insatsu .ac-item .text a:hover{
	color: #419a9e;
	text-decoration: none;
}



/* page
---------------------------------------------- */
.page-header{
	padding:40px 0;
	text-align: center;
	line-height: 1.42;
}
.page-header h1{
	font-size: 24px;
	font-weight: 500;
}
.page-header .ttl-en{
	font-size:13px;
	color: #637b7c;
	padding:0 0 8px;
}
.side-menu ul{
	width:100%;
	border-bottom:1px solid #4b6a6b;
	border-top:1px solid #4b6a6b;
	margin-bottom:40px;
	padding:20px 0 ;
	text-align: center;
}
.side-menu ul li{
	display: inline-block;
	margin:0 2px;
}
.side-menu ul li a{
	display: inline-block;
	padding:8px 6px;
	font-size:12px;
	line-height: 1.62;
	color: #222;
	text-decoration: underline;
}
.side-menu ul li a:hover{
	color: #41989b;
	text-decoration: none;
}

.page-body{
	width: 100%;
	margin-top: 100px;
}
.page-contents .entry-content{
	padding:0 30px 60px;
	width:100%;
}
.page-contents .entry-content table{
	width:100%;
}
.page-contents .entry-content table th,
.page-contents .entry-content table td{
	font-size: 14px;
	border:1px solid #ccc;
	padding:12px 16px;
	line-height:1.6;
	color:#333;
}
.page-contents .entry-content table th{
	background: #e9eef3;
	font-weight: bold;
}

/* entry-content
---------------------------------------------- */
.single-body .entry-content p{
	font-size: 15px;
	margin-bottom:9rem;
}
.single-body .entry-content li{
	font-size: 15px;
}
.single-body .entry-content table th,
.single-body .entry-content table td{
	font-size: 13px;
}
.single-body .entry-content h2{
	font-family: "Zen Old Mincho", serif;
	font-weight: 400;
	font-style: normal;
	font-size:30px;
	margin-bottom:6rem;
	color: #222;
}
.single-body .entry-content h3{
	font-size:20px;
	margin-bottom:4.5rem;
	color: #222;
	padding:1.6rem 3rem 1.75rem;
	background: #e9eef3;
}
.single-body .entry-content h4{
	font-size:18px;
	margin-bottom:2.5rem;
	color: #222;
}
.page-body .entry-content p{
	font-size: 16px;
	margin-bottom:40px;
}
.page-body .entry-content li{
	font-size: 16px;
}
.page-body .entry-content table th,
.page-body .entry-content table td{
	font-size: 14px;
}
.page-body .entry-content h2{
	font-size:21px;
	margin-bottom:30px;
	padding:2px 12px 4px;
	border-left:4px solid #637b7c;
	font-family: "Zen Old Mincho", serif;
}
.page-body .entry-content h3{
	font-style: normal;
	font-size:16px;
	margin-bottom:16px;
	color: #222;
	border-left:5px solid #2888b0;
	background: #e9eef3;
	padding:12px 18px;
}
/* category
---------------------------------------------- */
.cate-body{
	background: #e9eef3;
	padding:0 0 5rem;
}
.cate-body .cate-header{
	width:100%;
	margin:0 auto 2.5rem;
}
.cate-body .cate-header .cate-title{
	font-size:20px;
	color: #545e64;
	padding:6rem 2.5rem;
	text-align: center;
	border-top:1px solid #d3dbe3;
	border-bottom:1px solid #d3dbe3;
}
.cate-body .cate-wrap{
	width:100%;
}
.cate-body .cate-wrap .l-con{
	width:100%;
	padding:0 5rem 10rem;
}
.cate-body .cate-wrap .r-con{
	width:100%;
}

.cate-body .cate-header-area{
	width:100%;
	padding:0 0 1.5rem;
}
.cate-body .cate-header-area .cate-title-area{
	width:100%;
	padding:5rem 6.5rem 1rem;
}
.cate-body .cate-header-area .img-chikei{
	width:100%;
}
.cate-body .cate-header-area .cate-title-area .ttl{
	font-size:24px;
	color: #222222;
	padding:0 0 5rem;
	font-family: "Zen Old Mincho", serif;
	font-weight: 700;
	font-style: normal;
	text-align: center;
}
.cate-body .cate-header-area .cate-title-area .txt{
	font-size: 15px;
	color: #545e64;
}

.cate-navi{
	width:100%;
	padding:32px 24px 24px;
	text-align: center;
}
.cate-navi a{
	width:30%;
	display: inline-block;
	padding:12px 6px;
	border:1px solid #ccc;
	transition: all 0.3s ease;
	line-height: 1;
}
.cate-navi a.now-cate{
	border:1px solid #419a9e;
}
.cate-navi a:hover{
	border:1px solid #419a9e;
	background: #fffece;
}
.cate-navi a .ttl{
	width:100%;
	font-size: 12px;
	color: #333;
	font-weight: 500;
}

.cate-header{
	width:100%;
	padding:0 0 24px;
}
.cate-header .cate-title{
	font-size: 16px;
	line-height: 1.62;
	font-weight: 500;
	text-align: center;
	padding:24px 0 ;
	border-bottom:1px solid #a9bcce;
}

.kiji-list-area{
	width:100%;
}

.kiji-list-area .kiji-list{
	width:100%;
	padding:12px 12px;
	display: flex;
	flex-wrap: wrap;
}
.kiji-list-area .kiji-list li{
	width:50%;
	padding:0;
}
.kiji-list-area .kiji-list li.no-posts{
	width:100%;
	padding:24px 12px 24px;
}
.kiji-list-area .kiji-list li a{
	display: block;
	padding:12px 12px 24px;
	border-radius: 5px;
}
.kiji-list-area .kiji-list li a:hover{
	background: #fffece;
}
.kiji-list-area .kiji-list li a .photo{
	width:100%;
	aspect-ratio:1/1;
	margin-bottom:10px;
	border-radius: 5px;
}
.kiji-list-area .kiji-list li a .photo:hover img{
	transform: scale(1.05);
}
.kiji-list-area .kiji-list li a .photo img{
	width:100%;
	aspect-ratio:1/1;
	object-fit: cover;
}
.kiji-list-area .kiji-list li a .ttl{
	font-size: 15px;
	line-height: 1.62;
	font-weight: 500;
	color: #333;
	margin-bottom:4px;
}
.kiji-list-area .kiji-list li a .cate-name{
	font-size: 12px;
	line-height: 1;
	color:#419a9e;
}


.page-navi-area .wp-pagenavi{
	padding:16px 0 24px;
	text-align:right;
}
.page-navi-area .wp-pagenavi a,.page-navi-area .wp-pagenavi span {
  text-decoration: none;
  border: 0;
  padding: 3px 7px;
  margin: 2px;
	background:#e9eef3;
	font-size:13px;
}
.page-navi-area .wp-pagenavi span.current{
	background:#008bab;
	color:#fff;
}

/* search
---------------------------------------------- */
.cate-body .cate-header .search-title{
	font-size: 16px;
	color: #545e64;
	padding:5rem 3.5rem;
	border-bottom:1px solid #aaa;
	font-weight: bold;
}
.search-body{
	width:100%;
	margin:0 auto;
	padding:24px 5%;
}
.search-body article{
	width:100%;
	padding:24px 24px;
	font-size:13px;
	border-bottom:2px dotted #ccc;
}
.search-body article h1{
	font-size:20px;
	line-height: 1.46;
	font-family: "Zen Old Mincho", serif;
	font-weight: 700;
	font-style: normal;
	margin-bottom:12px;
}
/* side
---------------------------------------------- */
.side .ig-btn-area{
	width:100%;
	padding:5rem;
}
.side .ig-btn{
	width:100%;
	margin-bottom:2.5rem;
	padding:16px;
	border:3px solid #222;
	border-radius: 7px;
	display: block;
	line-height: 1.2;
	color: #222;
	text-align: center;
}
.side .ig-btn:hover{
	border:3px solid #008bab;
	color: #008bab;
}
.side .ig-btn .ig-spotname{
	font-size:16px;
	margin-bottom:1.25rem;
}
.side .ig-btn .ig-txt{
	font-size:12px;
	vertical-align: baseline;
}
.side .ig-btn .ig-txt i{
	font-size: 12px;
	vertical-align: baseline;
	margin-right:5px;
}
.side .widget-box{
	width:100%;
	font-size: 14px;
}
.side .widget-box.widget-info{
	margin-bottom:0rem;
}
.side .widget-box.widget-info .widget-ttl{
	background: #2888b0;
}
.side .widget-box .widget-ttl{
	font-size:21px;
	padding:18px 0;
	text-align: center;
	color:#fff;
	line-height: 1;
	background: #222;
	margin-bottom:0;
	font-family: "Marcellus", serif;
	font-weight: 400;
	font-style: normal;
}
.side .widget-box .base{
	padding:0.24rem 0;
}
.side .widget-box.widget-info .base{
	padding:5rem;
	background: #e9eef3;
}
.side .widget-box.widget-info .base .base-in{
	padding:5rem;
	background: #fff;
	border-radius: 8px;
}
.side.side-spot .widget-info p{
	font-size:14px;
	line-height: 1.6;
	margin-bottom: 16px;
}
.side.side-spot .widget-info a{
	text-decoration: underline;
}
.side.side-spot .widget-info a:hover{
	text-decoration: none;
}

.side.side-spot .widget-author .base{
	padding:5rem;
	background: #e9eef3;
}
.side.side-spot .widget-author .base .base-in{
	padding:5rem;
	background: #fff;
	border-radius: 8px;
}
.side.side-spot .widget-author .author-avatar{
	width: 60px;
	margin:1.5rem auto 3rem;
	border-radius: 100vh;
}
.side.side-spot .widget-author .author-avatar img{
	width: 100%;
	object-fit:cover;
	border-radius: 100vh;
	aspect-ratio: 1/1;
}
.side.side-spot .widget-author .author-name{
	font-size:15px;
	text-align: center;
	margin-bottom: 3rem;
}
.side.side-spot .widget-author .author-description{
	font-size:13px;
	margin-bottom: 1.75rem;
}
.side.side-spot .widget-author .author-link{
	font-size:12px;
	margin-bottom: 0.75rem;
	display: inline-block;
	padding-right:18px;
	position: relative;
}
.side.side-spot .widget-author .author-link::after{
	font-family: "Font Awesome 6 Free",sans-serif;
	content: "\f08e";
	position: absolute;
	font-size: 12px;
	font-weight: 900;
	top: 56%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	right: 0px;
	color: #666;
}

.side .widget-category ul li,
.side .widget-area ul li{
	padding:1.5rem 2.5rem;
	border-bottom:2px dotted #ccc;
}
.side .widget-category ul li:last-child,
.side .widget-area ul li:last-child{
	border-bottom:0;
}
.side .widget-category ul li a,
.side .widget-area ul li a{
	display: block;
	padding:1.8rem 0 1.8rem 20px;
	font-weight: bold;
	position: relative;
	border-radius: 5px;
}
.side .widget-category ul li a:hover,
.side .widget-area ul li a:hover{
	background: #ffe220;
}
.side .widget-category ul li a::before,
.side .widget-area ul li a::before{
	font-family: "Font Awesome 6 Free",sans-serif;
	content: "\f105";
	position: absolute;
	font-size: 11px;
	font-weight: 900;
	top: 53%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	left: 6px;
	color: #2888b0;
}

.side .widget-box.widget-tags .base{
	padding:3.5rem;
}
.side .widget-box.widget-tags .base a{
	padding:8px 12px 10px 24px;
	display: inline-block;
	color:#fff;
	line-height: 1;
	font-size: 12px;
	background: #333;
	border-radius: 4px;
	margin:0 2px 10px 0;
	position: relative;
}
.side .widget-box.widget-tags .base a::before{
	font-family: "Font Awesome 6 Free",sans-serif;
	content: "\23";
	position: absolute;
	font-size: 12px;
	font-weight: 900;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	left: 6px;
	color: #008bab;
}
.side .widget-box.widget-tags .base a:hover{
	background: #ffe220;
	color:#333;
}

.side .widget-box.widget-other ul li,
.side .widget-box.widget-new ul li{
	padding:2.5rem 1.5rem;
	border-bottom:2px dotted #ccc;
}
.side .widget-box.widget-other ul li:last-child,
.side .widget-box.widget-new ul li:last-child{
	border-bottom:0;
}
.side .widget-box.widget-other ul li a,
.side .widget-box.widget-new ul li a{
	padding:2rem 2.5rem;
	border-radius: 6px;
	display: block;
}
.side .widget-box.widget-other ul li a:hover,
.side .widget-box.widget-new ul li a:hover{
	background: #ffe220;
}
.side .widget-box.widget-other ul li a .photo,
.side .widget-box.widget-new ul li a .photo{
	width:30%;
	float:left;
	padding-top:0.25rem;
}
.side .widget-box.widget-other ul li a .photo img,
.side .widget-box.widget-new ul li a .photo img{
	aspect-ratio: 1/1;
	object-fit: cover;
	border-radius: 4px;
}
.side .widget-box.widget-other ul li a .txt-area,
.side .widget-box.widget-new ul li a .txt-area{
	width:70%;
	float:right;
	padding-left:25px;
}
.side .widget-box.widget-other ul li a .txt-area .post-title,
.side .widget-box.widget-new ul li a .txt-area .post-title{
	font-size: 15px;
	margin-bottom:10px;
	line-height:1.48;
	font-weight: bold;
}
.side .widget-box.widget-other ul li a .txt-area .cate-name,
.side .widget-box.widget-new ul li a .txt-area .cate-name{
	font-size: 11px;
	line-height:1.4;
	font-weight: bold;
	margin-bottom:6px;
	color:#666;
}
.side .widget-box.widget-new ul li a .txt-area .days{
	font-size: 11px;
	line-height:1.4;
	font-weight: bold;
	color:#666;
}

/* 404
---------------------------------------------- */
.body-404{
	padding:12rem 0 20rem;
	text-align: center;
}
.body-404 .txt-not-found{
	font-size: 40px;
	color:#ccc;
	font-weight: bold;
}
.body-404 .txt{
	font-size: 16px;
}

/* form-css
---------------------------------------------- */
.form-css{
	width:100%;
	color:#111;
}
.form-container{
	width:100%;
	padding:0 0 20px;
}
.form-container .form-group{
	display: flex;
	flex-wrap: wrap;
	padding:0 0 24px;
	border-bottom:1px solid #ccc;
	margin-bottom:20px;
}
.form-container .form-group:last-child{
	border-bottom:0;
}
.form-container .form-group .form-hissu{
	width:15%;
	padding-top:6px;
}
.form-container .form-group .form-hissu .nini{
	display: inline-block;
	font-size:12px;
	line-height:1.6;
	color:#fff;
	background:#666;
	padding:6px 12px 7px;
	border-radius: 3px;
}
.form-container .form-group .form-hissu .hissu{
	display: inline-block;
	font-size:12px;
	line-height:1.6;
	color:#fff;
	background:#cb5757;
	padding:6px 12px 7px;
	border-radius: 3px;
}
.form-container .form-group .form-th{
	width:80%;
	font-size:15px;
	line-height:1.6;
	padding-top:9px;
}
.form-container .form-group .form-td{
	width:100%;
	font-size:15px;
	padding-top:12px;
}
.form-container .form-group .form-td ul li{
	padding:0 0 20px;
}
.form-container .form-group .form-td ul li:last-child{
	padding:0;
}
.form-container .form-group .form-td .box-table{
	width:100%;
	display: table;
}
.form-container .form-group .form-td .box-table div{
	display: table-cell;
	vertical-align: top;
}
.form-container .form-group .form-td .box-table .box-table-1,
.form-container .form-group .form-td .box-table .box-table-4{
	width:24px;
	padding:6px 0 0;
}
.form-container .form-group .form-td .box-table .box-table-2,
.form-container .form-group .form-td .box-table .box-table-5{
	width:100px;
}
.form-container .form-group .form-td .box-table .box-table-3{
	width:56px;
	padding:6px 0 0;
}
.form-container .form-group .form-td .box-table .box-table-6{
	padding:6px 0 0;
}


.form-container .form-group .form-td .form-text{
	padding:0 0 8px;
	margin:0;
	display:block;
}
.form-css .entry-content h3{
	font-size:18px;
	margin-bottom:40px;
	padding:12px;
	line-height:1.6;
	background:#4b6a6b;
	color:#fff;
	text-align: center;
	border:0;
}
.page-df .page-contents .df-contents.form-css .entry-content{
	width: 100%;
	padding:0 5%;
	max-width: 940px;
	margin-bottom:60px;
}
.form-css .wpcf7-not-valid-tip{
	font-size:13px;
	line-height:1.6;
	color:#f00;
	margin-top:6px;
}
.form-css input::placeholder{
	color:#888;
	font-size:14px;
}
.form-css input{
	vertical-align:baseline;
	font-size: 16px;
}
.form-css input[type="text"],
.form-css input[type="email"],
.form-css input[type="tel"]{
	padding:10px;
	color:#333;
	line-height:1.68;
	border:solid 1px #ccc;
	background:#f6f8fb;
	width:98%;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}
.form-css input[type="text"].zip{
	width:45%;
	margin-left:10px;
	padding:8px 10px;
}
.form-css input[type="text"].size-tate{
	width:90px;
	padding:8px 10px;
}
.form-css input[type="text"].size-yoko{
	width:90px;
	padding:8px 10px;
}
.form-css input[type="text"]:focus,
.form-css input[type="email"]:focus,
.form-css input[type="tel"]:focus,
.form-css input[type="text"].zip:focus
{
	outline: none;
	border:solid 1px #319da5;
}
.form-css select{
	padding:16px 10px;
	color:#333;
	line-height:1.68;
	border:solid 1px #ccc;
	background:#f6f8fb;
	width:65%;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	font-size:16px;
}
.form-css textarea {
	padding:12px;
	font-size:16px;
	color:#333;
	line-height:1.68;
	border:solid 1px #ccc;
	background:#f6f8fb;
	width:98%;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	height:186px;
}

.form-css .btn-area{
	width:100%;
	margin:0 auto;
	padding:24px 0;
	text-align:center;
}
.form-css .btn-area input[type="submit"]{
	border:0;
	padding:16px 48px;
	line-height: 1;
	font-size:16px !important;
	font-weight:bold;
	color:#fff;
	background:#61a28c;
	border-radius: 3px;
	transition: 0.6s;
	margin-left:72px;
}
.form-css .btn-area input[type="submit"]:hover{
	cursor:pointer;
	background:#f9bf2c;
}

.form-css .privacy-area{
	padding:36px 0;
	border-top:1px dotted #483f3f;
	border-bottom:1px dotted #483f3f;
}
.form-css .privacy-area .text{
	font-size:15px;
	padding:0 0 24px;
	line-height:1.68;
}
.form-css .privacy-area .privacy-box{
	padding:0 0 16px;
}
.form-css .privacy-area .privacy-box .hissu{
	display: inline-block;
	font-size:12px;
	line-height:1.6;
	color:#fff;
	background:#cb5757;
	padding:6px 12px 7px;
	border-radius: 3px;
}

.page-df .page-contents .df-contents.form-css .faq-area{
	width: 100%;
	padding:0 5% 80px;
	max-width: 940px;
}
.form-css .faq-area h2{
	font-size: 20px;
    margin-bottom: 20px;
    padding: 2px 18px 4px;
    border-left: 4px solid #637b7c;
	line-height:1.5;
}
.form-css .faq-area .faq-list .faq-item .ac-item.open .ac-body{
	opacity: 1;
	padding:0;
}
.form-css .faq-area .faq-list .faq-item .q-box{
	padding:0 20px 0 0;
	line-height:1.82;
	font-size:15px;
}
.form-css .faq-area .faq-list .faq-item .ac-body .kotae-box{
	padding:12px 20px 16px;
	background:#ecf1f3;
	border-radius: 7px;
	line-height:1.82;
	font-size:15px;
	margin-bottom:16px;
	margin-top:16px;
}
.form-css .faq-area .faq-list .faq-item .ac-body .kotae-box p{
	margin-bottom:16px;
}
.form-css .faq-area .faq-list .faq-item .ac-body .kotae-box p:last-child{
	margin-bottom:0;
}
.form-css .faq-area .faq-list .faq-item .ac-body .kotae-box a{
	text-decoration: underline;
	transition: 0.6s;
}
.form-css .faq-area .faq-list .faq-item .ac-body .kotae-box a:hover{
	text-decoration: none;
}
.form-css .faq-area .faq-list .faq-item .ac-body .kotae-box h3{
	font-size:16px;
	margin-bottom:12px;
}
.form-css .faq-area .faq-list .faq-item .ac-body .kotae-box .table-area{
	margin-bottom:16px;
	margin-top:16px;
}
.form-css .faq-area .faq-list .faq-item .ac-body .kotae-box .table-area table{
	width:100%;
	border-collapse: collapse;
}
.form-css .faq-area .faq-list .faq-item .ac-body .kotae-box .table-area table th,
.form-css .faq-area .faq-list .faq-item .ac-body .kotae-box .table-area table td{
	font-size:13px;
	padding:10px 16px;
	border:1px solid #ccc;
	background:#fff;
	vertical-align: middle;
}
.form-css .faq-area .faq-list .faq-item .ac-body .kotae-box .table-area table th{
	background:#4b6a6b;
	color:#fff;
	text-align: center;
}
.form-css .faq-area .faq-list .faq-item .ac-body .kotae-box .table-area .note{
	font-size:12px;
	line-height:1.6;
	color:#666;
	margin-top:10px;
}


}