@charset "UTF-8";

/* ---------------------------------------
  WORKS
-----------------------------------------*/
@media screen and (min-width: 768px) {
	#pagettl {
		background-image: url(../img/works/pagettl_pc.jpg);
	}

	.contents_wrap .main {
		width: 792px;
	}

	.contents_wrap .side {
		width: 210px;
	}
}

@media screen and (max-width: 767px) {
	#pagettl {
		background-image: url(../img/works/pagettl_sp.jpg);
	}

	.contents_wrap .main {
		padding-bottom: 15rem;
	}

	.contents_wrap .main:not(:has(.other)) {
		padding-bottom: 0;
	}
}


/* search_category
--------------------------------*/
.search_category {
	margin-bottom: 60px;
}

.search_category .ttl {
	font-weight: 500;
	font-size: 2.6rem;
	margin-bottom: 1.75em;
}

.search_category .ttl .ico {
	width: 26px;
	height: 26px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-right: .5em;
	vertical-align: -.1em;
}

.search_category .cate_list {
	flex-wrap: wrap;
	justify-content: flex-start;
}

.search_category .cate_list .item {
	width: 208px;
}

.search_category .cate_list .item a {
	font-weight: 500;
	color: #0066cc;
	width: 100%;
	height: 60px;
	font-size: 1.6rem;
	letter-spacing: 0.1em;
	padding: .5em 1em;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background-color: #fff;
	border: 1px solid #0066cc;
	transition: .3s ease;
}

.search_category .cate_list .item.current a {
	color: #fff;
	background-color: #0066cc;
}

/*sidemenu*/
.side .search_category {
	margin-bottom: 0;
}

@media screen and (min-width: 768px) {
	.search_category .cate_list.flex .item + .item:not(:nth-child(5n + 1)) {
		margin-left: 15px;
	}

	.search_category .cate_list.flex .item:nth-child(n + 6) {
		margin-top: 15px;
	}

	.search_category .cate_list .item a:hover {
		color: #fff;
		background-color: #0066cc;
	}

	/*sidemenu*/
	.side .search_category .ttl {
		font-size: 1.6rem;
		margin-bottom: 1.5em;
	}

	.side .search_category .ttl .ico {
		width: 16px;
		height: 16px;
	}

	.side .search_category .cate_list .item + .item {
		margin-top: 13px;
	}

	.side .search_category .cate_list .item a {
		height: 53px;
	}
}

@media screen and (max-width: 767px) {
	.search_category {
		margin-bottom: 9rem;
	}

	.search_category .ttl {
		font-size: 3.9rem;
		margin-bottom: 1.75em;
	}

	.search_category .ttl .ico {
		width: 3.8rem;
		height: 3.8rem;
	}

	.search_category .cate_list {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	.search_category .cate_list .item {
		width: 30.3rem;
	}

	.search_category .cate_list .item:nth-child(n + 3) {
		margin-top: 2.4rem;
	}

	.search_category .cate_list .item a {
		height: 9rem;
		font-size: 2.4rem;
	}

}





/* works_list
--------------------------------*/

.works_list {
	justify-content: flex-start;
}

.works_list .item {
	width: 248px;
}

.works_list .item a {
	display: block;
	transition: .3s ease;
}

.works_list .item .img {
	width: 100%;
	height: 165px;
	overflow: hidden;
}

.works_list .item .img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: .3s ease;
}

.works_list .item .txtwrap {
	margin-top: 12px;
}

.works_list .item .txtwrap .name {
	position: relative;
	color: #999999;
	font-size: 1.4rem;
	line-height: 1.5;
	padding-left: 20px;
	margin-bottom: 5px;
}

.works_list .item .txtwrap .name::before {
	content: "";
	width: 12px;
	height: 1px;
	background-color: #999999;
	position: absolute;
	left: 0;
	top: .7em;
}

.works_list .item .txtwrap .txt {
	line-height: 1.75;
	text-align: justify;
}

.works_list .item .txtwrap .cate {
	font-size: 1.4rem;
	line-height: 1.2;
	letter-spacing: 0;
	margin-top: 5px;
}

.works_list .item .txtwrap .cate span {
	display: inline-block;
	color: #0066cc;
	padding: .25em .75em;
	border: 1px solid #0066cc;
	margin-top: 5px;
	margin-right: 5px;
}

@media screen and (min-width: 768px) {
	.works_list .item + .item:not(:nth-child(4n + 1)) {
		margin-left: 36px;
	}

	.works_list .item:nth-child(n + 5) {
		margin-top: 60px;
	}

	.works_list .item a:hover {
		opacity: .8;
	}

	.works_list .item a:hover .img img {
		transform: scale(1.1);
	}
}

@media screen and (max-width: 767px) {
	.works_list .item {
		width: 100%;
	}

	.works_list .item + .item {
		margin-top: 9rem;
	}

	.works_list .item .img {
		height: 41.9rem;
	}

	.works_list .item .txtwrap {
		margin-top: 1.8rem;
	}

	.works_list .item .txtwrap .name {
		font-size: 2.1rem;
		padding-left: 3.2rem;
		margin-bottom: 1rem;
	}

	.works_list .item .txtwrap .name::before {
		width: 1.8rem;
	}

	.works_list .item .txtwrap .txt {
		letter-spacing: 0.05em;
	}

	.works_list .item .txtwrap .cate {
		font-size: 2.1rem;
		margin-top: 1rem;
	}

	.works_list .item .txtwrap .cate span {
		padding: .285em 1em;
		margin-top: 1rem;
		margin-right: 1rem;
	}
}

/* pagenavi
--------------------------------*/
.wp-pagenavi {
	margin: 70px 0 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	position: relative;
}

.wp-pagenavi a,
.wp-pagenavi span:not(.arw) {
	font-weight: 700;
	font-family: 'Montserrat', sans-serif;
	font-size: 1.6rem;
	line-height: 1;
	min-width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 5px;
	transition: .3s ease;
	position: relative;
}

.wp-pagenavi a:not(.nextpostslink):not(.previouspostslink)::before,
.wp-pagenavi span:not(.nextpostslink):not(.previouspostslink):not(.arw)::before {
	content: "";
	width: .75em;
	height: 2px;
	background-color: #0066cc;
	position: absolute;
	left: -.1em;
	right: 0;
	bottom: 0;
	margin: 0 auto;
	transform: scale(0);
	transition: .3s ease;
}

.wp-pagenavi span.extend {
	background: none;
}

.wp-pagenavi a:not(.nextpostslink):not(.previouspostslink):hover,
.wp-pagenavi span.current {
	color: #0066cc;
}

.wp-pagenavi a:not(.nextpostslink):not(.previouspostslink):hover::before,
.wp-pagenavi span.current:not(.nextpostslink):not(.previouspostslink)::before {
	transform: scale(1);
}

.wp-pagenavi .nextpostslink,
.wp-pagenavi .previouspostslink {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	min-width: 104px;
	height: 26px;
	color: #fff;
	font-weight: 600;
	letter-spacing: 0.05em;
	background-color: #0066cc;
	margin: 0 45px;
	padding: 0 12px;
	transition: .3s ease;
}

.wp-pagenavi .nextpostslink {
	padding-right: 43px;
	background: linear-gradient(90deg, rgba(0, 160, 233, 1) 50%, rgba(0, 102, 204, 1) 51%);
	background-position: right center;
	background-size: 210% 100%;
}

.wp-pagenavi .previouspostslink {
	padding-left: 43px;
	background: linear-gradient(90deg, rgba(0, 102, 204, 1) 50%, rgba(0, 160, 233, 1) 51%);
	background-position: left center;
	background-size: 210% 100%;
}

.wp-pagenavi .nextpostslink .arw {
	right: 10px;
}

.wp-pagenavi .previouspostslink .arw {
	right: auto;
	left: 10px;
}

.wp-pagenavi .previouspostslink .arw::before {
	left: auto;
	right: -18px;
}

.wp-pagenavi .previouspostslink .arw::after {
	border: none;
	border-left: 2px solid #fff;
	border-top: 2px solid #fff;
	transform: rotate(-45deg) scale(0);
	transform-origin: left top;
	left: 0;
}

@media screen and (min-width: 768px) {
	.wp-pagenavi .nextpostslink:hover {
		background-position: left center;
	}

	.wp-pagenavi .previouspostslink:hover {
		background-position: right center;
	}

	.wp-pagenavi .previouspostslink:hover .arw::before {
		transform: translateX(-8px);
	}

	.wp-pagenavi .previouspostslink:hover .arw::after {
		transform: rotate(-45deg) scale(1);
	}
}

@media screen and (max-width: 767px) {
	.wp-pagenavi {
		margin: 10rem 0 0;
		padding-top: 9rem;
	}

	.wp-pagenavi::before {
		content: "";
		width: 0.2rem;
		height: 4rem;
		background-color: #999999;
		position: absolute;
		left: 50%;
		top: 0;
	}

	.wp-pagenavi a,
	.wp-pagenavi span:not(.arw) {
		font-size: 2.4rem;
		min-width: 5rem;
		height: 5rem;
		margin: 0 .5rem;
	}

	.wp-pagenavi a:not(.nextpostslink):not(.previouspostslink)::before,
	.wp-pagenavi span:not(.nextpostslink):not(.previouspostslink):not(.arw)::before {
		height: .3rem;
	}

	.wp-pagenavi .nextpostslink,
	.wp-pagenavi .previouspostslink {
		min-width: 15.6rem;
		height: 3.9rem;
		margin: 0;
		padding: 0 1.5rem;
		position: absolute;
		top: 0;
	}

	.wp-pagenavi .nextpostslink {
		right: 0;
		padding-right: 6.5rem;
	}

	.wp-pagenavi .previouspostslink {
		left: 0;
		padding-left: 6.5rem;
	}

	.wp-pagenavi .nextpostslink .arw {
		right: 1.5rem;
	}

	.wp-pagenavi .previouspostslink .arw {
		left: 1.5rem;
	}

	.wp-pagenavi .previouspostslink .arw::before {
		right: -2.6rem;
	}

	.wp-pagenavi .previouspostslink .arw::after {
		content: none;
	}

}

/* ---------------------------------------
  works_detail
-----------------------------------------*/

/*header*/
.works_detail .header {
	margin-bottom: 30px;
}

.works_detail .header .info {
	display: flex;
	justify-content: flex-end;
	align-items: flex-start;
	padding-top: 20px;
	border-top: 4px solid #0066cc;
}

.works_detail .header .info .date {
	flex: 0 0 auto;
	color: #999999;
	font-size: 1.4rem;
	line-height: 1.5;
	letter-spacing: 0.15em;
	margin-right: 18px;
	margin-top: 3px;
}

.works_detail .header .info .cate {
	font-size: 1.4rem;
	line-height: 1.2;
	letter-spacing: 0;
}

.works_detail .header .info .cate span {
	display: inline-block;
	color: #0066cc;
	padding: .25em 1em;
	border: 1px solid #0066cc;
	margin-bottom: 5px;
	margin-left: 5px;
}

.works_detail .header .name {
	color: #999999;
	font-size: 1.4rem;
	line-height: 1.5;
	margin-bottom: 15px;
}

.works_detail .header .name span {
	display: inline-block;
	position: relative;
	margin-right: 8px;
}

.works_detail .header .name span + span {
	padding-left: 20px;
}

.works_detail .header .name span + span::before {
	content: "";
	width: 12px;
	height: 1px;
	background-color: #999999;
	position: absolute;
	left: 0;
	top: .7em;
}

.works_detail .header .ttl {
	font-weight: 500;
	font-size: 2.8rem;
	line-height: 1.7;
	letter-spacing: 0.04em;
	padding-bottom: 2rem;
}

/*contents*/
.works_detail .contents {
	padding-bottom: 120px;
}

.works_detail .contents > *:first-child {
	margin-top: 0 !important;
}

.works_detail .contents > *:last-child {
	margin-bottom: 0 !important;
}

.works_detail .contents h1,
.works_detail .contents h2,
.works_detail .contents h3,
.works_detail .contents h4 {
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: 0.1em;
	position: relative;
}

.works_detail .contents > h1 + * {
	margin-top: 0 !important;
}

.works_detail .contents h1 {
	color: #0066cc;
	font-size: 2.2rem;
	padding: .625em 0;
	border-top: 1px solid #0066cc;
	border-bottom: 1px solid #0066cc;
	margin: 60px 0 40px;
}

.works_detail .contents p:not(.btn) {
	line-height: 2;
	letter-spacing: 0;
	text-align: justify;
}

.works_detail .contents * + p {
	margin-top: -.5em;
}

.works_detail .contents p + p {
	margin-top: 1em;
}

.works_detail .contents p:not(.btn) > a {
	text-decoration: underline;
	transition: .3s ease;
}

.works_detail .contents p img {
	display: block;
}

.works_detail .contents figure.img {
	margin: 60px auto;
}

.works_detail .contents figure.img:first-child {
	margin-bottom: 30px;
}

.works_detail .contents figcaption {
	display: block;
	text-align: left;
	font-size: 1.4rem;
	line-height: 1.5;
	letter-spacing: 0;
	margin-top: 16px;
}

/*hr*/
.works_detail .contents hr {
	display: block;
	width: 100%;
	height: 1px;
	border: none;
	margin: 60px 0;
	background-color: #c1c1c1;
}

/*col*/
.works_detail .contents .col2,
.works_detail .contents .col3 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 60px 0;
}

.works_detail .contents .col2.imgright,
.works_detail .contents .col3.imgright {
	flex-direction: row-reverse;
}

.works_detail .contents p + .col2,
.works_detail .contents p + .col3 {
	margin-top: 40px;
}

.works_detail .contents .col2 > * {
	display: block;
	width: 376px;
	margin: 0 !important;
}

.works_detail .contents .col2 .txtwrap,
.works_detail .contents .col3 .txtwrap {
	margin-top: 30px;
}

.works_detail .contents .col2 .txtwrap > *:first-child,
.works_detail .contents .col3 .txtwrap > *:first-child {
	margin-top: 0;
}

.works_detail .contents .col2 h3,
.works_detail .contents .col3 h3 {
	margin-top: 1em;
}

.works_detail .contents .col3 > * {
	display: block;
	width: 240px;
}


/*list*/
.works_detail .contents .list_box {
	position: relative;
	background-color: #f2f7fc;
	background-image: url(../img/common/bg_dot.png);
	padding: 25px 45px;
	margin: 60px 0;
}

.works_detail .contents .list_box .ttl {
	font-weight: 500;
	font-size: 2rem;
	line-height: 1.5;
	padding-bottom: .75em;
	border-bottom: 1px solid #0066cc;
	margin-bottom: .75em;
}

.works_detail .contents .list li {
	padding-left: 2em;
	position: relative;
}

.works_detail .contents .list li::before {
	content: "";
	width: 1em;
	height: 1px;
	background-color: #0066cc;
	position: absolute;
	left: .4em;
	top: 1em;
}

.works_detail .contents .list li + li {
	margin-top: .5em;
}

/*slider*/
.works_detail .contents .slider_wrap {
	margin: 60px 0;
	padding: 60px 78px 40px;
	position: relative;
	width: 100%;
	background-color: #f2f7fc;
	background-image: url(../img/common/bg_dot.png);
	overflow: hidden;
}

.works_detail .contents .slider {
	width: 100%;
	margin: 0 0 60px;
}

.works_detail .contents .slider .img {
	width: 100%;
	overflow: hidden;
}

.works_detail .contents .slider .img img {
	width: 100%;
}

.works_detail .contents .slider .slick-arrow {
	font-size: 0;
	border: 0;
	padding: 0;
	cursor: pointer;
	outline: none;
	overflow: visible;
	z-index: 1;
	width: 30px;
	height: 30px;
	background-color: #0066cc;
	position: absolute;
	top: 50%;
	margin-top: -15px;
	transition: .5s ease;
}

.works_detail .contents .slider .slick-prev {
	transform: scale(-1, 1);
	left: 0;
}

.works_detail .contents .slider .slick-next {
	right: 0;
}

.works_detail .contents .slider .slick-arrow::before {
	content: "";
	width: 8px;
	height: 8px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	position: absolute;
	left: 11px;
	top: 11px;
}

.works_detail .contents .slider .slick-dots {
	width: 100%;
	display: flex !important;
	justify-content: center;
	position: absolute;
	bottom: -30px;
	left: 0;
	right: 0;
	margin: 0 auto;
}

.works_detail .contents .slider .slick-dots li {
	margin: 0 10px;
	line-height: 1;
	font-size: 0;
}

.works_detail .contents .slider .slick-dots li button {
	border: none;
	cursor: pointer;
	outline: none;
	padding: 0;
	appearance: none;
	text-indent: 100%;
	overflow: hidden;
	background-color: #c1c1c1;
	border: none;
	width: 9px;
	height: 9px;
	border-radius: 50%;
	line-height: 1;
}

.works_detail .contents .slider .slick-dots li.slick-active button {
	background: #0066cc;
}

/*profile_box*/
.works_detail .contents .profile_box {
	margin: 60px 0;
	display: flex;
	justify-content: space-between;
}

.works_detail .contents .profile_box + .profile_box {
	margin-top: 40px;
}

.works_detail .contents .profile_box .profile_img {
	margin: 0;
	width: 160px;
	height: 160px;
	border-radius: 50%;
	overflow: hidden;
}

.works_detail .contents .profile_box .profile_img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.works_detail .contents .profile_box .profile_txt {
	position: relative;
	width: 590px;
	min-height: 164px;
	padding: 18px 36px;
	background-color: #f2f7fc;
}

.works_detail .contents .profile_box .profile_txt::before {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 30px 30px 0;
	border-color: transparent #f2f7fc transparent transparent;
	position: absolute;
	right: 100%;
	top: 80px;
}

/*topics_box*/

.works_detail .contents .topics_box {
	margin: 60px 0;
	position: relative;
	display: block;
}

.works_detail .contents .topics_box a {
	position: relative;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding: 18px 0;
	border-top: 1px solid #0066cc;
	border-bottom: 1px solid #0066cc;
}

.works_detail .contents .topics_box .thumb {
	flex: 0 0 auto;
	width: 163px;
	height: 109px;
	overflow: hidden;
	position: relative;
	z-index: 1;
}

.works_detail .contents .topics_box .thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform: scale(1.0);
	transition: .3s ease;
	will-change: transform;
}

.works_detail .contents .topics_box .txtwrap {
	width: calc(100% - 163px);
	padding: 10px 34px;
}

.works_detail .contents .topics_box .txtwrap .info {
	display: flex;
	justify-content: flex-start;
	margin-bottom: 10px;
}

.works_detail .contents .topics_box .txtwrap .info .date {
	flex: 0 0 auto;
	color: #999999;
	font-size: 1.4rem;
	line-height: 1.5;
	letter-spacing: 0.15em;
	margin-right: 18px;
	margin-top: 3px;
}

.works_detail .contents .topics_box .txtwrap .info .cate {
	font-size: 1.4rem;
	line-height: 1.2;
	letter-spacing: 0;
	margin-top: 0;
}

.works_detail .contents .topics_box .txtwrap .info .cate span {
	display: inline-block;
	color: #0066cc;
	padding: 0.25em 1em;
	border: 1px solid #0066cc;
	margin-bottom: 5px;
	margin-left: 5px;
}

.works_detail .contents .topics_box .txtwrap .ttl {
	line-height: 1.75;
	letter-spacing: 0.1em;
}


/*link_blank*/
.works_detail .contents .link_blank {
	margin: 60px 0;
}

.works_detail .contents .col2 > .link_blank {
	width: 384px;
}

.works_detail .contents .link_blank a {
	position: relative;
	display: block;
	width: 100%;
	color: #0066cc;
	font-size: 1.6rem;
	line-height: 2;
	border: 1px solid #0066cc;
	padding: 22px 45px 22px 90px;
	background: url(../img/common/ico_blank.svg) no-repeat 35px center / 21px auto;
}

.works_detail .contents .link_blank p {
	font-size: 1.8rem;
	line-height: 1.5;
	margin-bottom: .75em;
}

/*pdf*/
.works_detail .contents .btnwrap {
	margin: 60px 0;
}

.works_detail .contents .btnwrap p {
	text-align: center;
	font-size: 1.8rem;
	line-height: 1.5;
	letter-spacing: 0.15em;
	margin-bottom: .75em;
}

.works_detail .contents .btnwrap .btn {
	margin: 0;
}

.works_detail .contents .btnwrap .btn a {
	min-width: 370px;
	font-weight: 700;
}

.works_detail .contents .btnwrap .btn_pdf a .ico {
	width: 18px;
	height: 19px;
	display: inline-flex;
	align-items: center;
	position: absolute;
	right: 28px;
	top: 50%;
	margin-top: -10px;
}


/*video_wrap*/
.works_detail .contents .video_wrap {
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 56.25%;
	margin: 60px 0;
}

.works_detail .contents .video_wrap iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
}

/*map*/
.works_detail .contents .map {
	width: 100%;
	height: 527px;
	position: relative;
	overflow: hidden;
	margin: 60px 0;
}

.works_detail .contents .map iframe {
	width: 100%;
	height: 100%;
}

.works_detail .contents .map .btn {
	line-height: 1;
	position: absolute;
	right: 0;
	bottom: 0;
	margin-top: 0;
	z-index: 1;
}

.works_detail .contents .map .btn a {
	min-width: inherit;
	width: auto;
	height: 44px;
	letter-spacing: 0.05em;
	padding: 10px 55px 10px 40px;
}


/*その他の記事*/
.works_detail .other h2 {
	font-weight: 700;
	color: #0066cc;
	font-size: 2.2rem;
	line-height: 1.5;
	letter-spacing: 0.1em;
	padding: .625em 0;
	border-top: 1px solid #0066cc;
	border-bottom: 1px solid #0066cc;
	margin-bottom: 60px;
}

.works_detail .other .btn_s._back {
	margin-top: 80px;
}

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

	.works_detail .contents .slider .slick-next:hover {
		transform: translateX(4px);
	}

	.works_detail .contents .slider .slick-prev:hover {
		transform: translateX(-4px) scale(-1, 1);
	}

	.works_detail .contents .topics_box a:hover .thumb img {
		transform: scale(1.1);
	}

	.works_detail .contents .link_blank a:hover .arw {
		transform: translateX(4px);
	}

	.works_detail .contents .map .map_btn a:hover .arw {
		transform: translateX(4px);
	}

	.works_detail .other .works_list .item + .item:not(:nth-child(4n + 1)) {
		margin-left: 0;
	}

	.works_detail .other .works_list .item + .item:not(:nth-child(3n + 1)) {
		margin-left: 24px;
	}

	.works_detail .other .works_list .item + .item:nth-child(n + 4) {
		margin-top: 24px;
	}
}

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

	/*header*/
	.works_detail .header {
		margin-bottom: 4.5rem;
	}

	.works_detail .header .info {
		padding-top: 3rem;
		border-top: .6rem solid #0066cc;
	}

	.works_detail .header .info .date {
		font-size: 2.1rem;
		margin-right: 2rem;
		margin-top: .4rem;
	}

	.works_detail .header .info .cate {
		font-size: 2.1rem;
	}

	.works_detail .header .info .cate span {
		padding: .21em 1em;
		margin-bottom: 1rem;
		margin-left: 1rem;
	}

	.works_detail .header .name {
		font-size: 2.1rem;
		margin-bottom: 2.5rem;
	}

	.works_detail .header .name span {
		margin-right: 1.2rem;
	}

	.works_detail .header .name span + span {
		padding-left: 3.2rem;
	}

	.works_detail .header .name span + span::before {
		width: 1.8rem;
	}

	.works_detail .header .ttl {
		font-size: 4.2rem;
		padding-bottom: .75em;
	}

	/*contents*/
	.works_detail .contents {
		padding-bottom: 15rem;
	}

	.works_detail .contents h1,
	.works_detail .contents h2,
	.works_detail .contents h3,
	.works_detail .contents h4 {
		letter-spacing: 0.05em;
	}

	.works_detail .contents h1 {
		font-size: 3.3rem;
		margin: 8rem 0 6rem;
	}

	.works_detail .contents figure.img {
		margin: 8rem auto;
	}

	.works_detail .contents figcaption {
		font-size: 2.1rem;
		margin-top: 2rem;
	}

	/*hr*/
	.works_detail .contents hr {
		margin: 8rem 0;
	}

	/*col*/
	.works_detail .contents .col2,
	.works_detail .contents .col3 {
		display: block;
		margin: 8rem 0;
	}

	.works_detail .contents p + .col2,
	.works_detail .contents p + .col3 {
		margin-top: 8rem;
	}

	.works_detail .contents .col2 > * {
		width: 100%;
		margin: 8rem 0 !important;
	}

	.works_detail .contents .col2 .txtwrap {
		margin-top: 4rem !important;
	}

	.works_detail .contents .col3 > * {
		display: block;
		width: 100%;
		margin: 8rem 0;
	}

	.works_detail .contents .col3 > div {
		display: flex;
		justify-content: space-between;
	}

	.works_detail .contents .col3 figure {
		width: 44%;
	}

	.works_detail .contents .col3 .txtwrap {
		width: 52%;
		margin-top: 0;
	}

	/*list*/
	.works_detail .contents .list_box {
		background-size: 1.5rem;
		padding: 5rem;
		margin: 8rem 0;
	}

	.works_detail .contents .list_box .ttl {
		font-size: 3rem;
	}


	/*slider*/
	.works_detail .contents .slider_wrap {
		width: 100vw;
		margin: 8rem -8vw;
		padding: 5rem 6rem;
		background-size: 1.5rem;
	}

	.works_detail .contents .slider {
		width: 100%;
		margin: 0 0 9rem;
	}

	.works_detail .contents .slider .slick-arrow {
		width: 6vw;
		height: 6vw;
		margin-top: -3vw;
	}

	.works_detail .contents .slider .slick-arrow::before {
		width: 1.2rem;
		height: 1.2rem;
		left: 1.5rem;
		top: 1.8rem;
	}

	.works_detail .contents .slider .slick-dots {
		bottom: -6rem;
	}

	.works_detail .contents .slider .slick-dots li {
		margin: 0 1rem;
	}

	.works_detail .contents .slider .slick-dots li button {
		width: 1.8rem;
		height: 1.8rem;
	}

	/*profile_box*/
	.works_detail .contents .profile_box {
		margin: 8rem 0;
	}

	.works_detail .contents .profile_box + .profile_box {
		margin-top: 6rem;
	}

	.works_detail .contents .profile_box .profile_img {
		width: 17rem;
		height: 17rem;
	}

	.works_detail .contents .profile_box .profile_txt {
		width: 41rem;
		min-height: 18rem;
		padding: 3rem;
	}

	.works_detail .contents .profile_box .profile_txt::before {
		border-width: 0 4.5rem 4.5rem 0;
		top: 7rem;
	}

	/*topics_box*/

	.works_detail .contents .topics_box {
		margin: 8rem 0;
	}

	.works_detail .contents .topics_box a {
		display: block;
		padding: 3.6rem 0;
	}

	.works_detail .contents .topics_box .thumb {
		width: 100%;
		height: 41.9rem;
	}


	.works_detail .contents .topics_box .txtwrap {
		width: 100%;
		padding: 0;
		margin-top: 3rem;
	}

	.works_detail .contents .topics_box .txtwrap .info .date {
		font-size: 2.1rem;

		margin-right: 2rem;
		margin-top: .4rem;
	}

	.works_detail .contents .topics_box .txtwrap .info .cate {
		font-size: 2.1rem;
	}

	.works_detail .contents .topics_box .txtwrap .info .cate span {
		padding: 0.21em 1em;
		margin-bottom: 1rem;
		margin-left: 1rem;
	}


	/*link_blank*/
	.works_detail .contents .link_blank {
		margin: 8rem 0;
	}

	.works_detail .contents .col2 > .link_blank {
		width: 100%;
	}

	.works_detail .contents .link_blank a {
		min-height: inherit;
		font-size: 2.4rem;
		padding: 3rem 3rem 3rem 12rem;
		background: url(../img/common/ico_blank.svg) no-repeat 4rem center / 4rem auto;
	}

	.works_detail .contents .link_blank p {
		font-size: 2.8rem;
	}

	/*pdf*/
	.works_detail .contents .btnwrap {
		margin: 8rem 0;
	}

	.works_detail .contents .btnwrap p {
		font-size: 2.8rem;
	}

	.works_detail .contents .btnwrap .btn a {
		min-width: inherit;
		width: 54rem;
	}

	.works_detail .contents .btnwrap .btn_pdf a .ico {
		width: 3.6rem;
		height: 3.8rem;
		right: 4rem;
		margin-top: -2rem;
	}


	/*video_wrap*/
	.works_detail .contents .video_wrap {
		margin: 8rem 0;
	}

	/*map*/
	.works_detail .contents .map {
		height: 42rem;
		margin: 8rem 0;
	}

	.works_detail .contents .map .btn a {
		height: 5.1rem;
		font-size: 2.1rem;
		padding: 0.5rem 7.5rem 0.5rem 4.2rem;
	}

	.works_detail .contents .map .btn a .arw {
		right: 2rem;
	}

	/*pager*/
	.works_detail .contents .pager {
		flex-wrap: wrap;
		margin-top: 8rem;
	}

	.works_detail .contents .pager::before {
		content: "";
		width: 0.2rem;
		height: 4rem;
		background-color: #999999;
		position: absolute;
		left: 50%;
		top: 0;
	}

	.works_detail .contents .pager .btn a {
		min-width: 15.6rem;
		height: 3.9rem;
		padding: 0 1.5rem;
	}

	.works_detail .contents .pager .btn._next a {
		padding-right: 6.5rem;
	}

	.works_detail .contents .pager .btn._prev a {
		padding-left: 6.5rem;
	}


	.works_detail .contents .pager .btn._next .arw {
		right: 1.5rem;
	}

	.works_detail .contents .pager .btn._prev .arw {
		left: 1.5rem;
	}

	.works_detail .contents .pager .btn._prev .arw::before {
		right: -2.6rem;
	}

	.works_detail .contents .pager .btn._prev .arw::after {
		content: none;
	}

	.works_detail .contents .pager .btn_s {
		order: 3;
		width: 100%;
		margin: 5rem auto 0;
		text-align: center;
	}

	.works_detail .contents .pager .btn_s a {
		padding: 0 0 1.5rem 7rem;
	}


	/*その他の記事*/
	.works_detail .other h2 {
		font-size: 3.3rem;
		margin-bottom: 6rem;
	}

	.works_detail .other .btn_s._back {
		margin-top: 12rem;
	}
}