@charset "utf-8";

.page_top{
	display:flex;
	align-items:center;
	justify-content:center;
	min-height:165px;
	padding:20px 30px;
	margin-bottom:50px;
	background:url(/warehouse-dx/img/common/bg_c2_2.png) no-repeat center bottom/100%, #F6F6F6;
}
.page_title{
	max-width:1000px;
	width:100%;
	margin:auto;
	font-size:3.2rem;
	font-weight:bold;
	letter-spacing:1.6px;
	line-height:4.6rem;
}

.content_area{
	max-width:1060px;
	padding:0 30px;
	margin:auto;
}
.content_area > *:first-child{margin-top:0;}
h2{
	padding-bottom:18px;
	margin:80px 0 25px;
	background:linear-gradient(to right, #055092 50px, #ddd 50px) no-repeat bottom left/100% 2px;
	font-size:2.8rem;
	font-weight:bold;
	letter-spacing:1.4px;
	line-height:4rem;
}
h3{
	margin:45px 0 15px;
	font-size:2.4rem;
	font-weight:bold;
	letter-spacing:1.2px;
	line-height:3.5rem;
}
h4{
	margin:35px 0 15px;
	font-size:2rem;
	font-weight:bold;
	letter-spacing:1px;
	line-height:2.9rem;
}
h5{
	margin:30px 0 15px;
	font-size:1.8rem;
	font-weight:bold;
	letter-spacing:0.9px;
	line-height:2.6rem;
}
h6{
	margin:30px 0 15px;
	font-weight:bold;
}
p{
	line-height:2.9rem;
	margin-bottom:15px;
}
ul{
	padding-left:20px;
	margin-bottom:30px;
}
ol{
	padding-left:40px;
	margin-bottom:30px;
}
ul li{list-style:disc;}
li ul, li ol{margin:10px 0 20px;}
ul li ul li{list-style:circle;}
ul li ul li ul li{list-style:square;}
ol li{list-style:decimal;}
li{margin-bottom:8px;}
table{
	table-layout:fixed;
	width:100%;
	margin-bottom:30px;
	border-top:1px solid #ccc;
}
th, td{
	padding:16px 20px 19px;
	border-bottom:1px solid #ccc;
	vertical-align:top;
}
th{
	width:240px;
	background:#F6F6F6;
	font-weight:bold;
	text-align:left;
}
th *:last-child, td *:last-child{margin-bottom:0;}
.scroll_table{margin-bottom:10px;}
.scroll_table table{
	table-layout:auto;
	margin-bottom:10px;
}
.scroll_table th, .scroll_table td{display:table-cell !important;}
.scroll_table thead th{
	min-width:200px;
	width:auto;
}
.scroll-hint-icon{
	top:0;
	right:0;
	bottom:0;
	left:0;
	width:130px;
	height:90px;
	margin:auto;
}

.content_area img{
	width:100%;
	border-radius:5px;
}
p:has(img){margin:30px 0;}
.alignleft{margin-right:auto;}
.aligncenter{margin:auto;}
.alignright{margin-left:auto;}

.column_2, .column_3, .gallery{
	display:grid;
	gap:20px;
	padding:0;
	margin-bottom:20px;
}
.column_2, .gallery-columns-2{grid-template-columns:1fr 1fr;}
.column_3, .gallery-columns-3{grid-template-columns:1fr 1fr 1fr;}
.gallery-item{
	width:auto !important;
	padding:0 !important;
}
.gallery img{margin:auto;}
.wp-caption{
	max-width:100%;
	margin-bottom:30px;
}
.wp-caption-text{
	padding:0 !important;
	margin-top:15px;
	font-size:1.4rem;
	letter-spacing:0.7px;
	line-height:2rem;
	text-align:center;
}
div.gallery > br{display:none;}

.map, .movie_wrap{
	position:relative;
	width:auto;
	height:0;
	padding-bottom:56.25%;
	margin:30px auto;
	overflow:hidden;
}
.map iframe, .movie_wrap iframe{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	border:none;
}

#pankuzu{
	padding:0 70px 20px 0;
	margin-top:120px;
}
#pankuzu ol{
	display:flex;
	flex-wrap:wrap;
	gap:10px 25px;
	padding:0;
	margin:0;
}
#pankuzu li{
	position:relative;
	list-style:none;
	margin:0;
	font-size:1.2rem;
	letter-spacing:0.6px;
	line-height:1.7rem;
}
#pankuzu li:last-child{
	padding:0;
	margin-right:0;
	background:none;
}
#pankuzu li::after{
	content:'';
	position:absolute;
	top:1px;
	right:-14px;
	bottom:0;
	width:7px;
	height:7px;
	margin:auto;
	border-top:1px solid #bbb;
	border-right:1px solid #bbb;
	transform:rotate(45deg);
}
#pankuzu li:last-child::after{display:none;}
#pankuzu a{
	display:block;
	color:#333 !important;
}
#pankuzu li:last-child a{
	text-decoration:none !important;
	pointer-events:none;
}

/* comment_vc */
.comment_head{margin-bottom:0;}
.comment_list{
	padding:0;
	margin:0;
}
.comment_item{
	list-style:none;
	padding:30px 0 25px;
	margin:0;
	border-bottom:1px solid #ccc;
}
.comment_top{
	display:flex;
	align-items:flex-start;
	gap:40px;
	margin-bottom:10px;
}
.comment_top_in{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:5px 10px;
	width:100%;
}
.comment_name{
	margin:0 0 1px;
	font-size:1.7rem;
	letter-spacing:0.85px;
	line-height:2.5rem;
}
.comment_pos{
	padding:3px 7px 4px;
	margin:0;
	border-radius:12px;
	font-size:1.2rem;
	font-weight:500;
	letter-spacing:0.6px;
	line-height:1.7rem;
}
.comment_pos.writer{
	background:#FCE6F6;
	color:#B4219B;
}
.comment_pos.interviewee{
	background:#E6F3FF;
	color:#055092;
}
.comment_pos.supporter{
	background:#E2F7DF;
	color:#00602B;
}
.comment_pos.service-user{
	background:#EBE1FE;
	color:#5F0682;
}
.comment_pos.others{
	background:#FBEBD6;
	color:#B24A00;
}
.comment_info{
	width:100%;
	margin:0;
	font-size:1.3rem;
	font-weight:500;
	letter-spacing:0.65px;
	line-height:1.9rem;
}
.comment_check_btn{
	flex-shrink:0;
	padding:0 18px 0 22px;
	margin-top:4px;
	background:url(/warehouse-dx/img/common/icon_vc.svg) no-repeat center left, url(/warehouse-dx/img/common/icon_popup.svg) no-repeat center right;
	color:#055092 !important;
	font-family:var(--font_noto);
	font-size:1.3rem;
	font-weight:500;
	letter-spacing:0.65px;
	line-height:1.9rem;
	cursor:pointer;
}
.comment_check_btn:hover{text-decoration:underline;}
.comment_bio{
	padding:10px 15px 11px;
	background:#F6F6F6;
	border-radius:6px;
	color:#666;
	font-size:1.3rem;
	font-weight:500;
	letter-spacing:0.65px;
	line-height:2.1rem;
}
.comment_item_top{
	display:flex;
	align-items:center;
	justify-content:space-between;
	padding-top:10px;
	margin:15px 0 8px;
	border-top:1px solid #eee;
}
.comment_item_head{
	padding-left:22px;
	margin:0;
	background:url(/warehouse-dx/img/common/icon_comment.svg) no-repeat top 6px left;
	font-size:1.6rem;
	letter-spacing:0.8px;
	line-height:2.4rem;
}
.comment_date{
	color:#888;
	font-size:1.3rem;
	font-weight:bold;
	letter-spacing:0.65px;
	line-height:1.9rem;
}
.comment_txt{
	display:-webkit-box;
	-webkit-box-orient:vertical;
	-webkit-line-clamp:2;
	margin-bottom:5px;
	font-size:1.4rem;
	font-weight:500;
	letter-spacing:0.7px;
	line-height:2.5rem;
	overflow:hidden;
}
.comment_txt.is_open{display:block;}
.comment_more_btn{
	display:none;
	margin:0;
	text-align:right;
}
.comment_more_btn.display{display:block;}
.comment_more_txt{
	padding:0;
	color:#333 !important;
	font-family:var(--font_noto);
	font-size:1.3rem;
	font-weight:500;
	letter-spacing:0.65px;
	line-height:1.9rem;
	text-decoration:underline;
	cursor:pointer;
}
.comment_more_txt:hover{text-decoration:none;}
.comment_modal{
	display:flex;
	align-items:center;
	justify-content:center;
	position:fixed;
	z-index:10;
	top:0;
	left:0;
	width:100%;
	height:100%;
	padding:30px;
	opacity:0;
	visibility:hidden;
	transition:opacity 0.3s, visibility 0.3s;
}
.comment_modal.is_open{
	opacity:1;
	visibility:visible;
}
.comment_modal_bg{
	position:absolute;
	z-index:-1;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:#000;
	opacity:0.8;
}
.comment_modal_in{
	position:relative;
	max-width:700px;
	max-height:100%;
	padding:40px;
	background:#fff;
	border-radius:5px;
	box-shadow:0px 3px 20px rgba(0,0,0,0.05);
	-webkit-overflow-scrolling:touch;
	overflow:auto;
}
.comment_modal_head{
	position:relative;
	padding-top:60px;
	margin:0 0 5px;
	color:#055092;
	font-size:2rem;
	letter-spacing:1px;
	line-height:3.2rem;
}
.comment_modal_head::before{
	content:'';
	position:absolute;
	top:0;
	left:0;
	width:50px;
	height:50px;
	background:#E6F3FF url(/warehouse-dx/img/common/icon_vc.svg) no-repeat center/26px;
	border-radius:5px;
}
.comment_modal_txt{
	font-size:1.4rem;
	letter-spacing:0.7px;
	line-height:2.5rem;
}
.comment_about_vc{
	padding:20px 20px 5px;
	margin-bottom:10px;
	background:#F6F6F6;
	border-radius:5px;
}
.comment_about_vc_head{
	padding-left:30px;
	margin:0 0 10px;
	background:url(/warehouse-dx/img/common/icon_vc_question.svg) no-repeat center left;
	font-size:1.6rem;
	letter-spacing:0.8px;
	line-height:2.4rem;
}
.comment_about_vc_txt{
	font-size:1.4rem;
	letter-spacing:0.7px;
	line-height:2.2rem;
}
.comment_vc_data{
	background:#F6F6F6;
	border-radius:5px;
}
.comment_vc_data_btn{
	display:block;
	position:relative;
	width:100%;
	padding:20px 70px 21px 50px;
	background:url(/warehouse-dx/img/common/icon_vc_data.svg) no-repeat center left 20px;
	color:#333 !important;
	font-family:var(--font_noto);
	font-size:1.6rem;
	font-weight:bold;
	letter-spacing:0.8px;
	line-height:2.4rem;
	text-align:left;
	cursor:pointer;
	transition:color 0.3s;
}
.comment_vc_data_btn:hover{color:#055092 !important;}
.comment_vc_data_btn::after{
	content:'';
	position:absolute;
	top:0;
	right:20px;
	bottom:0;
	width:13px;
	height:8px;
	margin:auto;
	background:url(/warehouse-dx/img/common/arrow_b_gray.svg) no-repeat center/cover;
	transition:transform 0.3s;
}
.comment_vc_data_btn.acc_open::after{transform:rotateX(180deg);}
.comment_vc_data_in{
	display:none;
	padding:0 20px 20px;
}
.comment_vc_data_txt{
	margin:0;
	color:#055092;
	font-size:1rem;
	letter-spacing:0.5px;
	line-height:1.6rem;
	text-decoration:underline;
	cursor:copy;
}
.comment_vc_data_txt:hover{text-decoration:none;}
.comment_modal_close{
	position:absolute;
	top:20px;
	right:20px;
	width:30px;
	height:30px;
	padding:0;
	font-size:0 !important;
	text-decoration:none !important;
	cursor:pointer;
}
.comment_modal_close::before, .comment_modal_close::after{
	content:'';
	position:absolute;
	top:14px;
	left:3px;
	width:25px;
	height:2px;
	background:#888;
}
.comment_modal_close::before{transform:rotate(45deg);}
.comment_modal_close::after{transform:rotate(-45deg);}


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

.page_top{
	min-height:120px;
	margin-bottom:40px;
}
.page_title{
	font-size:2.4rem;
	letter-spacing:1.2px;
	line-height:3.8rem;
}
h2{
	padding-bottom:15px;
	margin-top:60px;
	font-size:2.3rem;
	letter-spacing:1.15px;
	line-height:3.4rem;
}
h3{
	margin-top:40px;
	font-size:2.1rem;
	letter-spacing:1.05px;
	line-height:3rem;
}
h4{
	margin-top:30px;
	font-size:1.7rem;
	letter-spacing:0.85px;
	line-height:2.5rem;
}
h5{
	margin-top:25px;
	font-size:1.5rem;
	letter-spacing:0.75px;
	line-height:2.1rem;
}
h6{
	margin-top:25px;
	font-size:1.4rem;
	letter-spacing:0.7px;
	line-height:2rem;
}
p{
	margin-bottom:10px;
	font-size:1.4rem;
	letter-spacing:0.7px;
	line-height:2.5rem;
}
li{
	font-size:1.4rem;
	letter-spacing:0.7px;
	line-height:2.5rem;
}
th, td{
	padding:13px 15px 14px;
	font-size:1.4rem;
	letter-spacing:0.7px;
	line-height:2.5rem;
}
.column_2, .column_3, .gallery{gap:15px;}
.wp-caption-text{
	margin:10px 0;
	font-size:1.3rem;
	letter-spacing:0.65px;
	line-height:1.9rem;
}
#pankuzu{
	padding-right:60px;
	margin-top:100px;
}

/* comment_vc */
.comment_top{display:block;}
.comment_name{
	font-size:1.7rem;
	letter-spacing:0.85px;
	line-height:2.5rem;
}
.comment_check_btn{margin-top:15px;}
.comment_bio{
	font-size:1.2rem;
	letter-spacing:0.6px;
	line-height:1.9rem;
}
.comment_item_head{
	background-position:top 4px left;
	font-size:1.5rem;
	letter-spacing:0.75px;
	line-height:2.1rem;
}
.comment_date{
	font-size:1.2rem;
	letter-spacing:0.6px;
	line-height:1.7rem;
}
.comment_txt{
	font-size:1.3rem;
	letter-spacing:0.65px;
	line-height:2.3rem;
}
.comment_more_txt{
	font-size:1.2rem;
	letter-spacing:0.6px;
	line-height:1.7rem;
}
.comment_modal_head{
	margin-bottom:8px;
	font-size:1.7rem;
	letter-spacing:0.85px;
	line-height:2.7rem;
}
.comment_modal_txt{
	margin-bottom:20px;
	font-size:1.3rem;
	letter-spacing:0.65px;
	line-height:2.1rem;
}
.comment_about_vc{padding:15px 15px 5px;}
.comment_about_vc_head{
	padding-top:1px;
	padding-bottom:1px;
	font-size:1.4rem;
	letter-spacing:0.7px;
	line-height:2rem;
}
.comment_about_vc_txt{
	font-size:1.3rem;
	letter-spacing:0.65px;
	line-height:2.1rem;
}
.comment_vc_data_in{padding:0 15px 15px;}
.comment_vc_data_btn{
	padding:15px 50px 15px 45px;
	background-position:center left 15px;
	font-size:1.4rem;
	letter-spacing:0.7px;
	line-height:2rem;
}
.comment_vc_data_btn::after{right:15px;}
.comment_modal_close{
	top:15px;
	right:15px;
}

}


@media screen and (min-width:768px) and (max-width:1024px){

ul, ol, table{margin-bottom:25px;}
th{width:200px;}

}


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

.page_top{
	padding-right:20px;
	padding-left:20px;
	background-size:985px;
}
.content_area{padding:0 20px;}
ul, ol, table{margin-bottom:20px;}
th{width:100px;}
.map, .movie_wrap{margin:20px auto;}

/* comment_vc */
.comment_modal, .comment_modal_in{padding:20px;}
.comment_txt{-webkit-line-clamp:3;}

}


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

.column_3, .gallery-columns-3{grid-template-columns:1fr;}

}


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

.column_2, .gallery-columns-2{grid-template-columns:1fr;}

}