/*-------------------------------------------------------------*/
/* detail_header */

.detail_header {
	background-color: transparent;
	padding: 1rem 0;
	margin: 0 0 1.5rem;
}
.detail_header > div { position: relative; }

.detail_header_head {
	font-size: 1.5rem;
	color: #333;
}
.detail_header_address {
	font-size: 1rem;
	font-style: normal;
	margin: 0 0 0.5rem;
}
.detail_header_address .btn {
	font-size: 0.66rem;
	padding: 0.25rem 0.33rem;
	margin: 0 0 0 0.5rem;
}

.detail_header_info {}
@media screen and (min-width:768px) {
	.detail_header_info .box_btn {
		text-align: right;
		margin: 1rem 0 0;
	}
	.detail_header_info .box_btn .btn {
		padding-top: 1rem;
		padding-bottom: 1rem;
		width: calc( ( 100% - 3rem ) / 4 );
	}
}
@media screen and (max-width:767px) {
	.detail_header_info .box_btn {
		text-align: center;
		margin: 1rem 0 0;
	}
	.detail_header_info .box_btn .btn {
		padding-top: 1rem;
		padding-bottom: 1rem;
		width: 100%;
	}
}

.detail_header_late { color: #f4a81e; }
.detail_header_late1:before { content: '★'; }
.detail_header_late2:before { content: '★★'; }
.detail_header_late3:before { content: '★★★'; }
.detail_header_late4:before { content: '★★★★'; }
.detail_header_late5:before { content: '★★★★★'; }

.detail_header_func {
	
	width: 15rem;
	position: absolute;
	right: 0;
	bottom: 4.5rem;
}
.detail_header_func_fixed { display: none; }

@media screen and (max-width:767px) {
	.detail_header_func {
		width: auto;
		position: static;
		margin: 1rem 0 0;
	}
	.detail_header_func_fixed {
		display: table;
		border-collapse: separate;
		border-spacing: 0.5rem;
		width: 100%;
		table-layout: fixed;
		position: fixed;
		left: 0;
		right: auto;
		bottom: 0;
		margin: 0;
		background-color: rgba(255,255,255,0.85);
	}
	.detail_header_func_fixed > div {
		display: table-cell;
		vertical-align: middle;
	}
}

.detail_header_func a {
	display: table;
	width: 100%;
	height: 2.33rem;
	border-collapse: separate;
	border-spacing: 0;
	padding: 0.25rem 0;
	margin: 0 0 0.5rem;
	border-radius: 4px;
	border: solid 2px #ccc;
}
.detail_header_func a:last-child {margin-bottom: 0;}
.detail_header_func a > i {
	
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	width: 2rem;
	font-size: 1.5rem;
	border-right: solid 1px #ccc;
}
.detail_header_func .ion-android-checkbox-outline { color: #d23939; }
.detail_header_func .ion-android-call { color: #5059c5; }
.detail_header_func .ion-android-contact { color: #f4a81e; }
.detail_header_func .ion-ios-printer-outline { color: #333; }

.detail_header_func a > span {
	display: table-cell;
	vertical-align: middle;
	text-align: center;
}
.detail_header_func .ion-android-call + span { font-weight: bold; }

@media screen and (max-width:767px) {
	.detail_header_func a { height: 3rem; }
	.detail_header_func a > i {
		width: 3rem;
		font-size: 2rem;
	}
	.detail_header_func a > span { font-size: 1.25rem; }
	.detail_header_func a > span span { font-size: inherit; }
}

.detail_header_nav {
	margin: 0;
	padding: 1.5rem 0 0;
}
.detail_header_nav > ul {
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: nowrap;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-align-content: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	border-radius: 12px;
	overflow: hidden;
	width: 100%;
	height: 3.75rem;
	border: solid 1px #18933b;
	background-color: #18933b;
	color: #fff;
}
.detail_header_nav > ul > li {width: 100%;}
.detail_header_nav > ul > li + li {border-left: solid 2px #fff;}
.detail_header_nav > ul > .active {
	background-color: #fff;
	color: #003b8f;
}
@media screen and (max-width:767px) {}

.detail_header_nav a {
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: nowrap;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-align-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	height: 100%;
	font-weight: bold;
	color: inherit;
}
.detail_header_nav a > span {}

/*-------------------------------------------------------------*/
/* detail kodawari */

.detail_kodawari {display: none;}

/*-------------------------------------------------------------*/
/* detail main and side */

#detail_layout {
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-align-content: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	padding: 1rem 2rem;
	width: 100%;
	max-width: 1280px;
	margin: 0 auto;
}
#detail_layout.tight {
	max-width: 880px;
	padding-top: 2rem;
}
#detail_main {width: calc( 100% - 17rem );}
#detail_main:only-child {
	width: 100%;
	padding-bottom: 2rem;
}
#detail_side {
	width: 15rem;
	position: relative;
}

@media screen and (max-width:1216px) {
	#detail_layout {padding: 0 1rem;}
}

@media screen and (max-width:767px) {
	#detail_layout.tight {padding-top: 0;}
	#detail_layout {
		display: block;
		width: auto;
		padding: 0 1rem;
	}
	#detail_main {
		display: block;
		width: auto;
		padding: 0;
		margin: 0 0 2rem;
	}
	#detail_side {
		display: block;
		width: auto;
	}
}

/*-------------------------------------------------------------*/
/* detail page */

.detail_main_head {
    color: #003b8f;
    font-size: 1.125rem;
    font-feature-settings: 'palt';
    margin: 0 0 0.5rem;
    line-height: 1.5rem;
}
.detail_main_subhead {
    color: #003b8f;
    font-size: 1rem;
    font-feature-settings: 'palt';
    margin: 0 0 0.5rem;
    line-height: 1.5rem;
}
.detail_main_text {
	background-color: #fff;
    color: inherit;
    font-size: 1rem;
    font-feature-settings: 'palt';
	padding: 0.75rem;
    margin: 0 0 1.5rem;
    line-height: 1.5rem;
}
.detail_main_text * + p {margin: 0.5rem 0 0;}
.detail_main_text * + .table {margin: 0.5rem 0 0;}
.detail_main_text * + .gmap {margin: 0.5rem 0 0;}
@media screen and (max-width:767px) {
	.detail_main_head {
		font-size: 1rem;
		margin: 0 0 0.25rem;
		line-height: 1.5rem;
	}
	.detail_main_subhead {
		font-size: 1rem;
		margin: 0 0 0.25rem;
		line-height: 1.5rem;
	}
	.detail_main_text {
		font-size: 0.875rem;
		padding: 0.25rem 0.375rem;
		margin: 0 0 1rem;
		line-height: 1.5rem;
	}
	.detail_main_text p + p {margin: 0.5rem 0 0;}
}

.detail_main_mv {
	text-align: center;
	margin: 0 0 1.5rem;
	position: relative;
	overflow: hidden;
	background-color: #faf7e8;
}
.detail_main_mv:before {
	content: '';
	display: block;
	padding: 66.66% 0 0;
	position: relative;
	z-index: 1;
}
.detail_main_mv img {
	position: absolute;
	left: 50%;
	top: 50%;
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	width: auto;
	height: 100%;
}

/*-------------------------------------------------------------*/
/* detail_main_pr */

.detail_main_pr {
	display: table;
	border-collapse: collapse;
	border-spacing: 0;
	width: 100%;
	margin: 0 0 1.5rem;
}
.detail_main_pr_image {
	display: table-cell;
	vertical-align: top;
	width: 40%;
}
.detail_main_pr_image img {
	width: 100%;
	height: auto;
}
.detail_main_pr_text {
	display: table-cell;
	vertical-align: top;
	padding-left: 1rem;
}
@media screen and (max-width:767px) {
	.detail_main_pr {
		display: block;
		width: auto;
	}
	.detail_main_pr_image {
		display: block;
		width: auto;
		margin: 0 0 1rem;
	}
	.detail_main_pr_text {
		display: block;
		width: auto;
		padding: 0;
	}
}

/*-------------------------------------------------------------*/
/* detail_main_gallery */

.detail_main_gallery {
	display: table;
	border-collapse: collapse;
	border-spacing: 0;
	width: 100%;
	table-layout: fixed;
	margin: 0 0 1.5rem;
}

.detail_main_gallery_display {
	
	display: table-cell;
	vertical-align: top;
	width: 75%;
	padding-right: 0.5rem;
}
.detail_main_gallery_thumb {
	display: table-cell;
	vertical-align: top;
}

@media screen and (max-width:767px) {
	.detail_main_gallery {
		display: block;
		width: auto;
	}

	.detail_main_gallery_display {

		display: block;
		width: auto;
		padding-right: 0;
		margin: 0 0 0.5rem;
	}
	.detail_main_gallery_thumb {
		
		display: block;
		width: auto;
		background-color: #e1f3e7;
		padding: 0.5rem 0.5rem 0;
	}
}

.detail_main_gallery_display ul {}
.detail_main_gallery_display li {}

#detail_main_gallery_slick {
	width: 100%;
}
#detail_main_gallery_slick li {}
#detail_main_gallery_slick img {
	
	width: 100%;
	height: auto;
}

.detail_main_gallery_thumb .list_float {
	margin: 0 -0.25rem;
}

.detail_main_gallery_thumb .list_float ul:before,
.detail_main_gallery_thumb .list_float ul:after { content: ''; display: table; }
.detail_main_gallery_thumb .list_float ul:after { clear: both; }
.detail_main_gallery_thumb .list_float ul {}

.detail_main_gallery_thumb .list_float ul li {
	padding: 0 0.25rem 0.5rem;
	width: 50%;
}
.detail_main_gallery_thumb .list_float ul li:nth-child(odd) { clear: both; }
@media screen and (max-width:767px) {
	.detail_main_gallery_thumb .list_float ul li { width: 25%; }
	.detail_main_gallery_thumb .list_float ul li:nth-child(odd) { clear: none; }
	.detail_main_gallery_thumb .list_float ul li:nth-child(4n+1) { clear: both; }
}

.detail_main_gallery_thumb img {
	width: 100%;
	height: auto;
	cursor: pointer;
}

/*-------------------------------------------------------------*/
/* detail_main_message */

.detail_main_message {
	display: table;
	border-collapse: collapse;
	border-spacing: 0;
	width: 100%;
}
.detail_main_message_head {
	color: inherit;
	font-size: 1.25rem;
	font-weight: bold;
	font-feature-settings: 'palt';
	margin: 0 0 1rem;
}
.detail_main_message_image {
	display: table-cell;
	vertical-align: top;
	width: 25%;
	padding-right: 2rem;
}
.detail_main_message_image img {
	width: 100%;
	height: auto;
	border-radius: 12px;
}
.detail_main_message_text {
	display: table-cell;
	vertical-align: top;
}
@media screen and (max-width: 767px) {
	
	.detail_main_message {
		display: block;
		width: auto;
	}
	.detail_main_message_image {
		display: block;
		width: 16rem;
		padding: 0;
		margin: 0 auto 1rem;
	}
	.detail_main_message_text {
		display: block;
		width: auto;
	}
}

.detail_main_figure {
	margin: 1rem -1rem 1.5rem;
}
.detail_main_figure > div {
	display: table;
	border-collapse: separate;
	border-spacing: 1rem 0;
	width: 100%;
	table-layout: fixed;
}

.detail_main_figure figure {
	display: table-cell;
	vertical-align: top;
}
.detail_main_figure img {
	width: 100%;
	height: auto;
}
.detail_main_figure figcaption {
	margin: 0.5rem 0 0;
	font-size: 0.83rem;
	line-height: 1.25;
}
.detail_main_figure figcaption br { display: none; }

/*-------------------------------------------------------------*/
/* detail_main_review */

.detail_main_review {
	padding: 0 0 1rem;
	margin: 0 0 1.5rem;
	border-bottom: solid 1px #ebebeb;
}
.detail_main_review:last-child {
	padding-bottom: 0;
	margin-bottom: 0;
	border-bottom: none;
}
.detail_main_review .page_text {
	padding-top: 1rem;
	padding-left: 0.75rem;
	padding-right: 0.75rem;
}

@media screen and (max-width:767px) {
	.detail_main_review .page_text {
		padding-left: 0;
		padding-right: 0;
	}
	
	.detail_main_review .list_review_late {
		display: block;
		margin: 0 0 0.25rem;
	}
	.detail_main_review .list_review_name { margin-left: 0.25rem; }
}

/*-------------------------------------------------------------*/
/* detail_main_gmap */

.detail_main_gmap {
	margin: 0 0 1.5rem;
}
.detail_main_gmap_main {}
.detail_main_gmap_text {}

.gmap {}
.gmap iframe {
	width: 100%;
	height: 66vh;
}
.gmap img {
	width: 100%;
	height: auto;
}
@media screen and (max-width:767px) {
	.gmap iframe {
		width: 100%;
		height: 33vh;
	}
}

.gmap_balloon {
	position: relative;
	padding: 0;
	width: 20rem;
}
.gmap_balloon_info {
	padding: 0 6rem 0 0;
	min-height: 6rem;
}
.gmap_balloon_review {
	padding: 0.33rem 0 0;
}

.gmap_balloon_image {
	position: absolute;
	right: 0;
	top: 0;
}
.gmap_balloon_image > span {
	
	display: block;
	position: relative;
	overflow: hidden;
	width: 3.5rem;
	height: 3.5rem;
	border-radius: 4px;
	
	background: rgb(244,244,244);
	background: -moz-linear-gradient(-45deg, rgba(244,244,244,1) 0%, rgba(255,255,255,1) 100%);
	background: -webkit-linear-gradient(-45deg, rgba(244,244,244,1) 0%,rgba(255,255,255,1) 100%);
	background: linear-gradient(135deg, rgba(244,244,244,1) 0%,rgba(255,255,255,1) 100%);
}
.gmap_balloon_image > span:after {
	
	content: 'No image';
	display: inline-block;
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 2;
	-ms-transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	font-size: 0.5rem;
	font-weight: bold;
	color: #ccc;
}
.gmap_balloon_image > span img {
	
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	height: 3.25rem;
	width: auto;
}
.gmap_balloon_button {
	
	position: absolute;
	right: 0;
	top: 4rem;
}
.gmap_balloon_button .btn {
	padding: 0.25rem;
}

.gmap_balloon_head {
	font-size: 1rem;
	font-weight: bold;
	margin: 0 0 0.5rem;
	padding: 0;
}
.gmap_balloon_head a {}

.gmap_balloon_address {
	font-size: 0.75rem;
	line-height: 1.25;
	margin: 0 0 0.5rem;
}

.gmap_balloon_cate {}
.gmap_balloon_cate span {
	display: inline-block;
	margin: 0 0.25rem 0.25rem 0;
	padding: 0.125rem 0.5rem;
	font-size: 0.6875rem;
	line-height: 1;
	border: solid 1px #c1c1c1;
	border-radius: 0.75rem;
}

.gmap_form {margin: 1rem 0 0;}

/*-------------------------------------------------------------*/
/* detail_main_staff */

.detail_main_staff {
	margin: 0 0 3rem;
}
.detail_main_staff + .detail_main_staff {
	border-top: solid 1px #ccced3;
	padding: 3rem 0 0;
}
.detail_main_staff_profile {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}
@media screen and (min-width:768px) {
	.detail_main_staff_profile {margin: 0 -1rem 2rem;}
	.detail_main_staff_profile_image {
		width: 25%;
		padding: 0 1rem;
	}
	.detail_main_staff_profile_text {
		width: 75%;
		padding: 0 1rem;
	}
}
@media screen and (max-width:767px) {
	.detail_main_staff_profile {margin: 0 0 2rem;}
	.detail_main_staff_profile_image {margin: 0 0 1rem;}
}

.detail_main_staff_profile_image img {
	width: 100%;
	height: auto;
}

.detail_main_staff_head {
	font-size: 1.375rem;
	font-weight: bold;
	font-feature-settings: 'palt';
	line-height: 1.75rem;
	margin: 0 0 1rem;
}
.detail_main_staff_head small {
	display: inline-block;
	background: #003b8f;
	color: #fff;
	font-size: 0.875rem;
	font-weight: normal;
	font-feature-settings: 'palt';
	line-height: 1;
	padding: 0.25rem 0.5rem;
	margin: 0 0 0 1rem;
}
.detail_main_staff_subhead {
	font-size: 1.125rem;
	margin: 0 0 0.5rem;
}
.detail_main_staff_head + .detail_main_staff_subhead {margin-top: 1.5rem;}
.detail_main_staff_message .detail_main_staff_subhead {color: #003b8f;}
.detail_main_staff_message {
	background: #fff;
	padding: 1rem;
	margin: 0 0 2rem;
}
@media screen and (max-width:767px) {
	.detail_main_staff_message {margin: 0 0 2rem;}
}

.detail_main_staff_gallery {margin: 0;}
@media screen and (max-width:767px) {
	.detail_main_staff_gallery {margin: 0 0 1.5rem;}
}
.detail_main_staff_gallery > ul {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}
@media screen and (min-width:768px) {
	.detail_main_staff_gallery > ul {margin: 0 -1rem;}
	.detail_main_staff_gallery > ul > li {
		width: 20%;
		padding: 0 1rem 2rem;
	}
}
@media screen and (max-width:767px) {
	.detail_main_staff_gallery > ul {margin: 0 -0.25rem;}
	.detail_main_staff_gallery > ul > li {
		width: 33.33%;
		padding: 0 0.25rem 0.5rem;
	}
}

.detail_main_staff_gallery_image {
	position: relative;
	overflow: hidden;
	border-radius: 12px;
}
.detail_main_staff_gallery_image::before {
	content: '';
	display: block;
	position: relative;
	z-index: 1;
	padding: 100% 0 0;
}
.detail_main_staff_gallery_image img {
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 5;
	transform: translate(-50%,-50%);
	width: 100%;
	height: auto;
}
.detail_main_staff_gallery_image .vertical {
	width: auto;
	height: 100%;
}

/*-------------------------------------------------------------*/
/* detail_main_morelink */

.detail_main_morelink {
	text-align: right;
	margin: 1rem 0 0;
}
.detail_main_morelink a:before {
	content: "\f3d3";
	display: inline-block;
    font-family: "Ionicons";
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    text-rendering: auto;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
	margin: 0 0.5rem 0 0;
}

/*-------------------------------------------------------------*/
/* search items */

.detail_main_job {
	background: #fff;
	border: solid 2px #003b8f;
	margin: 5rem 0 2rem;
	padding: 2rem;
	position: relative;
}

.detail_main_job_head {
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-align-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	font-size: 1.25rem;
	line-height: 1.5rem;
	position: absolute;
	left: 3px;
	top: 0;
	transform: translate(0,-100%);
	height: 4rem;
	background: #003b8f;
	color: #fff;
	padding: 0.375rem 3rem 0.375rem 1.5rem;
	border-radius: 12px 12px 0 0;
	max-width: 80%;
}
.detail_main_job_head::before {
	content: "\f376";
	display: inline-block;
    font-family: "Ionicons";
	font-size: 1.5rem;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    text-rendering: auto;
    line-height: 3rem;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
	margin: 0 0.75rem 0 0;
}
@media screen and (max-width:767px) {
	.detail_main_job_head {
		padding: 0.375rem 3rem 0.375rem 3rem;
		max-width: none;
		right: 3px;
	}
	.detail_main_job_head::before {
		position: absolute;
		left: 1rem;
		top: 0.5rem;
	}
}


/*-------------------------------------------------------------*/
/* detail_main_info */

.detail_main_info_list {
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-align-content: flex-start;
	-ms-flex-line-pack: start;
	align-content: flex-start;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
}
@media screen and (min-width:768px) {
	.detail_main_info_list > .detail_main_info {
		width: calc( ( 100% - 2rem ) / 2 );
		margin: 0 0 2rem;
	}
}
@media screen and (max-width:767px) {
	.detail_main_info_list > .detail_main_info {width: 100%;}
	.detail_main_info_list > * +  .detail_main_info {margin-top: 2rem;}
}

.detail_main_info {
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-align-content: flex-start;
	-ms-flex-line-pack: start;
	align-content: flex-start;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
}

@media screen and (min-width:768px) {
	.detail_main_info_image {
		width: 33.33%;
	}
	.detail_main_info_text {
		width: 66.66%;
		padding: 0 0 0 1.5rem;
	}
}
@media screen and (max-width:767px) {
	.detail_main_info_image {
		width: 6rem;
	}
	.detail_main_info_text {
		width: calc( 100% - 6rem );
		padding: 0 0 0 1rem;
	}
}

.detail_main_info_image {
	position: relative;
	overflow: hidden;
	border-radius: 12px;
	background: #f1f1f1;
}
.detail_main_info_image::before {
	content: '';
	display: block;
	position: relative;
	z-index: 1;
	padding: 100% 0 0;
}
.detail_main_info_image img {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	z-index: 2;
	width: 100%;
	height: auto;
}
.detail_main_info_image .vertical {
	width: auto;
	height: 100%;
}
.detail_main_info_head {
	margin: 0 0 1rem;
	padding: 0.75rem;
	border: solid 1px #003b8f;
	background: #003b8f;
	color: #fff;
	font-size: 1.125rem;
	font-weight: bold;
	font-feature-settings: 'palt';
	line-height: 1.125;
}
.detail_main_info_name {
	padding: 0.5rem 0.75rem;
	margin: 0 0 1rem;
	border: solid 1px #003b8f;
	background: #fff;
	color: #003b8f;
	font-size: 0.875rem;
	font-weight: bold;
	line-height: 1rem;
}

.detail_main_info_date {
	background: #f1f1f1;
	padding: 0.33rem 0.5rem;
	margin: 0 0 1rem;
	font-size: 0.83rem;
	line-height: 1rem;
	color: #888;
	display: inline-block;
	border-radius: 4px;
	position: static;
	right: 0;
	top: 0;
}


.detail_main_figure {margin: 1rem -1rem 1.5rem;}
.detail_main_figure > div {
	display: table;
	border-collapse: separate;
	border-spacing: 1rem 0;
	width: 100%;
	table-layout: fixed;
}

.detail_main_figure figure {
	display: table-cell;
	vertical-align: top;
}
.detail_main_figure img {
	width: 100%;
	height: auto;
}
.detail_main_figure figcaption {
	margin: 0.5rem 0 0;
	font-size: 0.83rem;
	line-height: 1.25;
}
.detail_main_figure figcaption br { display: none; }

/*-------------------------------------------------------------*/
/* detail_main_column */

.detail_main_column:before,
.detail_main_column:after { content: ''; display: table; }
.detail_main_column:after { clear: both; }
.detail_main_column { *zoom: 1; }
.detail_main_column {
	margin: 0 0 1.5rem;
	padding: 2rem 1rem 0;
}
.detail_main_column_head {
	position: relative;
	color: inherit;
    font-size: 1.5rem;
    font-feature-settings: 'palt';
    margin: 0 0 1rem;
	padding: 0 0 0 1.25rem;
    line-height: 1.43;
}
.detail_main_column_head:before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	right: auto;
	left: 0;
	bottom: 0;
	
	width: 4px;
	background: #fbd475;
}

.detail_main_column_image {
	
	float: left;
	width: 25%;
	margin: 0 1rem 1rem 0;
}
.detail_main_column_image img {
	width: 100%;
	height: auto;
}
.detail_main_column_text {
	position: relative;
}

@media screen and (max-width:767px) {
	.detail_main_column { padding: 0; }
	.detail_main_column_image {
		float: none;
		width: auto;
		margin: 0 0 0.5rem;
	}
	.detail_main_column_text {}
}

.detail_main_column_info {
	
	position: absolute;
	width: 100%;
	left: 0;
	top: -2rem;
    font-size: 0.75rem;
	text-align: right;
}
.detail_main_column_info em {
    background-color: #faf7e8;
    color: #333;
    line-height: 1rem;
    padding: 0.25rem 0.5rem;
}
.detail_main_column_author {
	font-size: 0.75rem;
    color: #888;
	margin: 2rem 0 0;
}
.detail_main_column_body {margin: 0 0 4rem;}
.detail_main_column_body h3 {
	
	font-size: 1.25rem;
	margin: 0 0 0.5rem;
	padding: 1rem 0 0;
	position: relative;
}
.detail_main_column_body h3:first-of-type {
	border-top: dashed 1px #ebebeb;
}
.detail_main_column_body h3:before {
	
	content: '';
	display: block;
	position: absolute;
	left: -2rem;
	bottom: 1rem;
	width: 1.5rem;
	height: 4px;
	background: #fbd475;
}


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

		position: static;
		width: auto;
		margin: 0 0 0.5rem;
	}
}

/*-------------------------------------------------------------*/
/* search items */

.section_search_items { margin: 1rem 0 2rem; }
.section_search_items > div {
	background: #fff;
	border: solid 2px #003b8f;
	border-radius: 6px;
	padding: 2rem;
}
@media screen and (max-width:767px) {
	.section_search_items > div {
		padding: 0.75rem;
	}
}
.section_search_item { margin: 0 0 1rem; }
.section_search_item .page_text {
	padding-left: 1rem;
	padding-right: 1rem;
}

.section_search_items .box_btn {
	text-align: center;
	margin: 1rem 0 0;
}
.section_search_items .box_btn .btn {
	padding: 0.75em 1em;
}

/*-------------------------------------------------------------*/
/* section search category */
.section_search_category {}
* + .section_search_category {margin-top: 2rem;}

/*-------------------------------------------------------------*/
/* search result */
.search_mv {
	position: relative;
	overflow: hidden;
	margin: 0 0 2rem;
}
.search_mv::before {
	content: '';
	display: block;
	padding: 56.25% 0 0;
	position: relative;
	z-index: 1;
}
.search_mv > img {
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 5;
	transform: translate(-50%,-50%);
	width: 100%;
	height: auto;
}
.search_mv > .vertical {
	width: auto;
	height: 100%;
}

/*-------------------------------------------------------------*/
/* search result */

.section_search_result {
	background-color: #e5e7ec;
	margin: 4rem 0;
	padding: 2rem 0;
}
@media screen and (max-width:767px) {
	.section_search_result {margin: 2rem 0;}
}

/* 旧警告表示(/common/img/search00.jpg) */
.section_search_result div[align] img {
	width: 100%;
	height: auto;
}

.search_result_header {margin: 0 0 1rem;}
.search_result_header .box_btn {}
.search_result_header i {}

.search_result_func {
	position: absolute;
	right: 0;
	bottom: 0.75rem;
}
.search_result_func .btn {
	width: 14rem;
	padding: 0.66rem 0;
	margin: 0 0 0 0.25rem;
}

@media screen and (max-width:767px) {
	.search_result_header .box_btn { margin: 0 0 0.75rem; }
	.search_result_func {
		width: auto;
		position: static;
	}
	.search_result_func .btn {
		width: 100%;
		padding: 0.66rem 0;
		margin: 0 0 0.25rem;
	}
	.search_result_func .btn:last-child { margin-bottom: 0; }
}
/*-------------------------------------------------------------*/
/* search result */
.search_result_list {
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-align-content: flex-start;
	-ms-flex-line-pack: start;
	align-content: flex-start;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
}
@media screen and (min-width:768px) {
	.search_result_list > * {width: calc( ( 100% - 1rem ) / 2 );}
	.search_result_list > *:nth-child(odd) {margin-left: 0;}
}
@media screen and (max-width:767px) {
	.search_result_list > * {width: 100%;}
}

/*-------------------------------------------------------------*/
/* search item */

.search_result_item {
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-align-content: flex-start;
	-ms-flex-line-pack: start;
	align-content: flex-start;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
	border-bottom: solid 1px #d3d5db;
	padding: 0 0 1.5rem;
	margin: 0 0 1.5rem;
}
.search_result_item_image {
	width: 9rem;
	position: relative;
	overflow: hidden;
	border-radius: 12px;
}
@media screen and (max-width:767px) {
	.search_result_item_image {width: 6rem;}
}
.search_result_item_image::before {
	content: '';
	display: block;
	padding: 100% 0 0;
	position: relative;
	z-index: 1;
}
.search_result_item_image > img {
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 5;
	transform: translate(-50%,-50%);
	width: 100%;
	height: auto;
}
.search_result_item_image > .vertical {
	width: auto;
	height: 100%;
}
.search_result_item_text {
	width: calc( 100% - 10.5rem );
	position: relative;
}
@media screen and (max-width:767px) {
	.search_result_item_text {width: calc( 100% - 7rem );}
}

.search_result_item_header {
	position: relative;
	padding: 0 6rem 0 0;
}

.search_result_item_head {
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.5rem;
	color: #18933b;
	margin: 0 0 0.5rem;
}
.search_result_item_cate {
	display: block;
	background: #18933b;
	color: #fff;
	font-size: 0.75rem;
	line-height: 1;
	padding: 0.5rem;
	max-width: 6rem;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 1;
}
.search_result_item_name {
	font-size: 0.875rem;
	font-weight: 700;
	line-height: 1rem;
	color: #18933b;
	margin: 0 0 0.5rem;
}
.search_result_item_pr {
	padding: 0.5rem 0 0;
	font-size: 1rem;
	line-height: 1.25rem;
}

.search_result_label_open {
	display: block;
	background-color: rgba(76,186,122,0.96);
	color: #fff;
	padding: 0.33rem 0.5rem;
	text-align: center;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 4;
}
@media screen and (max-width:767px) {}

/*-------------------------------------------------------------*/
/* search review */

.section_review_form {padding: 0 0 2rem;}
.section_review_form .lay_lqd {
	/*max-width: 800px;*/
}

/*-------------------------------------------------------------*/
/* section_near */

.section_near {padding: 0 0 2rem;}
