@charset "UTF-8";

/*---------------------------------------------------------*/
/*---------------------------------------------------------*/

:root {
	--interview-border-color: #459EE0;
	--interview-bk-color: #F5FAFF;
	
}

/*---------------------------------------------------------*/
/* column/index.html */
/*---------------------------------------------------------*/

#columnIndex .lists {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
	gap: 40px;
}
#columnIndex .lists-item {
	position: relative;
	display: flex;
	flex-direction: column;
	border: 1px solid var(--base-line-color);
	background-color: #fff;
	transition: border-color var(--base-transition-time), box-shadow var(--base-transition-time);
	text-decoration: none;
	color: var(--base-color-black);
}
#columnIndex .lists-item:hover {
	border-color: var(--base-color-navy);
	box-shadow: 0 0 10px rgba(0, 0, 0, .2);
}

#columnIndex .lists-item-new:not(:empty) {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 0;
	left: 0;
	width: 4em;
	height: 4em;
	padding: .5em;
	font-size: 12px;
	line-height: 1;
	color: var(--base-color-offwhite);
	background-color: var(--base-color-pink);
}

/* #columnIndex .lists-item img {
	width: 100%;
	height: auto;
} */
#columnIndex .lists-item-thm {
	position: relative;
	width: 100%;
	padding-top: 65%;
}
#columnIndex .lists-item-thm img {
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#columnIndex .lists-item-main {
	display: flex;
	flex-grow: 1;
	flex-direction: column;
	margin: 1em 20px;
}
#columnIndex .lists-item h3 {
	font-size: 18px;
	line-height: 1.4;
	color: var(--base-color-black);
}
#columnIndex .lists-item-main-keyeord {
	display: flex;
	flex-wrap: wrap;
	flex-grow: 1;
	align-items: flex-end;
	margin: 5px 0 0 -5px;
}
#columnIndex .lists-item-main-keyeord li a {
	display: inline-block;
	position: relative;
	margin: 5px 0 0 5px;
	padding: .5em 1.0em .5em 2.0em;
	font-size: 12px;
	line-height: 1;
	color: var(--base-color-navy);
	background-color: #fff;
	border: 1px solid var(--base-color-navy);
	border-radius: 5em;
	transition: color var(--base-transition-time), background-color var(--base-transition-time);
	text-decoration: none;
}
#columnIndex .lists-item-main-keyeord li a::before {
	display: flex;
	align-items: center;
	position: absolute;
	content: '#';
	top: 0;
	bottom: 0;
	left: 1em;
	margin: auto;
}
#columnIndex .lists-item-main-keyeord li a:hover {
	color: var(--base-color-offwhite);
	background-color: var(--base-color-navy);
}

#columnIndex .lists-item-main-date {
	display: flex;
	justify-content: right;
	align-items: flex-end;
	margin-top: .5em;
	font-size: 12px;
	color: var(--base-color-lightgray);
	line-height: 1;
}

/*---------------------------------------------------------*/
/* columnDetail.html */
/*---------------------------------------------------------*/


@media screen and (min-width: 1201px) {
	#columnDetail section {
		display: grid;
		grid-template-columns: 1fr 300px;
		gap: 80px;
	}
}

/*---------------------------------------------------------*/

#columnDetail .columnMain > *:not(:nth-child(1)):not(.columnMain-mv):not(.columnMain-title) {
	margin: 2.4em auto;
}

#columnDetail .columnMain * {
	/* word-break:break-all;
	word-wrap:break-word;
	overflow-wrap: break-word; */
	overflow-wrap: anywhere;
	word-break: normal;
	line-break: strict;
}

#columnDetail .columnMain-bread {
	display: flex;
}
#columnDetail .columnMain-bread li {
	position: relative;
	padding: 0 .8em;
	font-size: 14px;
	line-height: 1.2;
}
#columnDetail .columnMain-bread li:nth-child(1) {
	padding-left: 0;
}
#columnDetail .columnMain-bread li + li::before {
	position: absolute;
	content: '>';
	top: 0;
	left: -.2em;
}
#columnDetail .columnMain-bread li a {
	white-space: nowrap;
}

@media screen and (max-width: 1024px) {
	#columnDetail .columnMain-bread {
		display: none;
	}
}

/*---------------------------------------------------------*/

#columnDetail .columnMain-mv {
	margin: 20px auto;
}
#columnDetail .columnMain-mv img {
	width: 100%;
	height: auto;
	margin: 0 auto;
}

#columnDetail .columnMain-img img {
	max-width: 100%;
	height: auto;
	margin: 0 auto;
}

#columnDetail .columnMain-img-hasCaption {
	display: flex;
	justify-content: center;
}
#columnDetail .columnMain-img-hasCaption div {
	position: relative;
	border-radius: 8px;
	border: 1px solid var(--base-color-lightgray);
	overflow: hidden;
}
#columnDetail .columnMain-img-hasCaption p {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	padding: .3em 1em;
	font-size: 70%;
	line-height: 1.2;
	text-align: center;
	background-color: rgba(255, 255, 255, .8);
}

/*---------------------------------------------------------*/

#columnDetail .columnMain-title {
	margin: 20px 0;
	border: 1px solid var(--base-color-gray);
}
#columnDetail .columnMain-title .columnMain-title-main {
	display: flex;
	align-items: center;
}
#columnDetail .columnMain-title h3 {
	padding: .8em 1.0em;
	font-size: 28px;
	line-height: 1.4;
}
#columnDetail .columnMain-title h3 + div {
	margin-left: auto;
	padding: .8em 1.0em;
}
#columnDetail .columnMain-title h3 + div img {
	width: auto;
	max-height: 100px;
}
@media screen and (max-width: 1024px) {
	#columnDetail .columnMain-title h3 + div img {
		max-height: 60px;
	}
}
@media screen and (max-width: 728px) {
	#columnDetail .columnMain-title h3 + div img {
		max-height: 30px;
	}
}
#columnDetail .columnMain-title-data {
	display: flex;
	align-items: center;
	padding: 6px 12px;
	border-top: 1px dotted var(--base-color-gray);
}
#columnDetail .columnMain-title-data ul {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	width: calc( 100% - 6em);
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
}
#columnDetail .columnMain-title-data li {
	padding-right: .5em;
}
#columnDetail .columnMain-title-data ul a {
	display: flex;
	align-items: center;
	position: relative;
	padding-left: 1em;
	font-size: 12px;
	line-height: 1;
	text-decoration: none;
}
#columnDetail .columnMain-title-data ul a::before {
	position: absolute;
	content: '#';
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}
#columnDetail .columnMain-title-data-date {
	display: flex;
	align-items: center;
	height: 18px;
	margin-left: auto;
	padding-left: 18px;
	font-size: 10px;
	line-height: 1;
	color: var(--base-color-gray);
	background: url(../img/icon-pencil.svg) no-repeat 0 50%;
	background-size: 12px 12px;
}

/*---------------------------------------------------------*/

#columnDetail .columnMain-title-m {
	position: relative;
	padding: .6em 1.0em;
	font-size: 24px;
	line-height: 1.6;
	color: var(--base-color-offwhite);
	background-color: var(--base-color-blue);
}
#columnDetail .columnMain-title-m::after {
	position: absolute;
	content: '';
	bottom: -6px;
	right: -6px;
	width: 100%;
	height: 100%;
	border-bottom: 2px solid var(--base-color-blue);
	border-right: 2px solid var(--base-color-blue);
}

/*---------------------------------------------------------*/

#columnDetail .columnMain-title-s {
	position: relative;
	padding: 0 1.0em .6em .5em;
	font-size: 24px;
	line-height: 1.3;
}
#columnDetail .columnMain-title-s::before,
#columnDetail .columnMain-title-s::after {
	position: absolute;
	content: '';
	bottom: 0;
	left: 0;
	height: 4px;
}
#columnDetail .columnMain-title-s::before {
	width: 2em;
	background-color: var(--base-color-blue);
	z-index: 2;
}
#columnDetail .columnMain-title-s::after {
	width: 100%;
	background-color: var(--base-color-lightgray);
	z-index: 1;
}

/*---------------------------------------------------------*/

#columnDetail .columnMain-title-ss {
	padding: 0 .5em .5em .5em;
	font-size: 20px;
	line-height: 1.2;
	border-bottom: 1px solid #111111;
}

/*---------------------------------------------------------*/

#columnDetail .columnMain > p,
#columnDetail .columnMain > fieldset {
	font-size: 18px;
	line-height: 2.0em;
}

/*---------------------------------------------------------*/

#columnDetail .columnMain > dl {
	display: flex;
	font-size: 18px;
	line-height: 1.2em;
}
#columnDetail .columnMain > dl dt {
	/* line-height: 1.2em; */
	padding-right: .5em;
	word-break:break-all;
	word-wrap:break-word;
	overflow-wrap: break-word;
}

@media screen and (max-width: 824px) {
	#columnDetail .columnMain > dl {
		flex-wrap: wrap;
	}
}

/*---------------------------------------------------------*/

#columnDetail .columnMain > ul.listStyle-circle {
	padding: .4em 1em .3em 1em;
	list-style: circle;
	font-size: 18px;
	line-height: 1.8em;
	border: 1px solid var(--base-line-color);
	border-radius: 12px;
}
#columnDetail .columnMain > ul.listStyle-circle li:not(.listStyle-circle--nomark) {
	position: relative;
	margin: .4em 0;
	padding-left: 1.4em;
}
#columnDetail .columnMain > ul.listStyle-circle li:not(.listStyle-circle--nomark)::before {
	position: absolute;
	content: '・';
	top: 0;
	left: 0;
}
#columnDetail .columnMain > ul.listStyle-circle--red li:not(.listStyle-circle--nomark)::before {
	color: var(--base-color-pink);
}


#columnDetail .columnMain > ul.listStyle-number {
	padding: .4em 1em .3em 1em;
	list-style: none;
	font-size: 18px;
	line-height: 1.8em;
	counter-reset: listnumber 0;
	border: 1px solid var(--base-line-color);
	border-radius: 12px;
}
#columnDetail .columnMain > ul.listStyle-number li {
	position: relative;
	margin: .4em 0;
	padding-left: 1.4em;
}
#columnDetail .columnMain > ul.listStyle-number li::before {
	position: absolute;
	top: 0;
	left: 0;
	counter-increment: listnumber 1;
	content: counter(listnumber) "."; 
}

/*---------------------------------------------------------*/

#columnDetail .columnMain .columnMain-hasBorder {
	padding: .8em;
	border: 1px solid var(--base-line-color);
}

/*---------------------------------------------------------*/

#columnDetail .columnMain > table {
	width: 100%;
	border: 1px solid var(--base-color-gray);
}
#columnDetail .columnMain > table th {
	padding: .5em;
	font-weight: normal;
	text-align: left;
	white-space: nowrap;
	border: 1px dotted var(--base-color-lightgray);
}
#columnDetail .columnMain > table td {
	padding: .5em;
	border: 1px dotted var(--base-color-lightgray);
}

/*---------------------------------------------------------*/

#columnDetail .columnMain-btn {
	display: flex;
	justify-content: center;
	align-items: center;
}
#columnDetail .columnMain-btn a {
	display: inline-block;
	position: relative;
	padding: 1.2em 3.8em 1.2em 1.8em;
	font-size: 18px;
	line-height: 1;
	color: var(--base-color-offwhite);
	text-decoration: none;
	border-radius: 5em;
	background-color: var(--base-color-green);
	border: 2px solid var(--base-color-green);
	transition: background-color var(--base-transition-time);
}
#columnDetail .columnMain-btn a .arrow-to-right {
	display: flex;
	align-items: center;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 1.2em;
	margin: auto;
	fill: var(--base-color-offwhite);
	transition: right var(--base-transition-time);
}
#columnDetail .columnMain-btn a:hover {
	color: var(--base-color-green);
	background-color: var(--base-color-offwhite);
}
#columnDetail .columnMain-btn a:hover .arrow-to-right {
	right: -1.0em;
	fill: var(--base-color-green);
}

/*---------------------------------------------------------*/

#columnDetail .columnMain-menu {
	position: relative;
	padding: 20px;
	border: 1px solid var(--base-color-blue);
}
#columnDetail .columnMain-menu h4 {
	position: absolute;
	top: -.9em;
	left: 1.0em;
	display: inline-block;
	padding: .4em 1.0em;
	font-weight: normal;
	font-size: 18px;
	line-height: 1;
	color: var(--base-color-offwhite);
	background-color: var(--base-color-blue);
	border-radius: 5em;
}

#columnDetail .columnMain-menu ul {
	margin-left: 1.4em;
}
#columnDetail .columnMain-menu li {
	margin-top: .6em;
	line-height: 1.2;
}
#columnDetail .columnMain-menu a {
	position: relative;
}
#columnDetail .columnMain-menu a::after {
	display: block;
	position: absolute;
	content: '●';
	top: 0.3em;
	left: -1.4em;
	height: 1em;
	line-height: 1;
}
#columnDetail .columnMain-menu > ul > li > a::after {
	content: '●';
}
#columnDetail .columnMain-menu > ul > li > ul li a::after {
	content: '└';
}

#columnDetail .columnMain-hr {
	position: relative;
	width: 10%;
	height: 1px;
	margin: 3em auto;
	background-color: var(--base-color-lightgray);
}
#columnDetail .columnMain-hr::after {
	position: absolute;
	content: '';
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 1em;
	height: 1px;
	background-color: var(--base-color-lightgray);
	transform: rotate(-45deg);
}

/*---------------------------------------------------------*/

#columnDetail .columnMain-otherColumn {
	display: grid;
	grid-template-columns: 160px 1fr;
	align-items: center;
	border: 1px solid var(--base-line-color);
	border-radius: 12px;
	overflow: hidden;
	text-decoration: none;
	color: var(--base-color-black);
	transition: box-shadow .5s;
}
#columnDetail .columnMain-otherColumn:hover {
	box-shadow: 0 0 15px rgba(0, 0, 0, .2);
}
#columnDetail .columnMain-otherColumn-thm {
	width: 160px;
	height: 100%;
	min-height: 160px;
	overflow: hidden;
}
#columnDetail .columnMain-otherColumn-thm img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#columnDetail .columnMain-otherColumn-main {
	padding: 25px 40px;
}
#columnDetail .columnMain-otherColumn-main h5 {
	font-size: 18px;
	line-height: 1.2em;
}
#columnDetail .columnMain-otherColumn-main p {
	margin-top: 1.0em;
	font-size: 90%;
	line-height: 1.8;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
}

@media screen and (max-width: 1200px) {
	#columnDetail .columnMain-otherColumn {
		grid-template-columns: 120px 1fr;
	}
	#columnDetail .columnMain-otherColumn-thm {
		width: 120px;
		height: 120px;
		min-height: auto;
		overflow: hidden;
	}
	#columnDetail .columnMain-otherColumn-main {
		padding: 1.2em;
	}
	#columnDetail .columnMain-otherColumn-thm img {
		/* height: 120px; */
	}
	#columnDetail .columnMain-otherColumn-main p {
		display: none;
		/* margin-top: 0.5em;
		font-size: 14px;
		-webkit-line-clamp: 1; */
	}
}

/*---------------------------------------------------------*/

#columnDetail .columnMain-backbtn a {
	display: inline-flex;
	position: relative;
	padding: 1.2em 1.8em 1.2em 3.8em;
	font-size: 18px;
	line-height: 1;
	color: var(--base-color-offwhite);
	text-decoration: none;
	border-radius: 5em;
	background-color: var(--base-color-black);
	border: 2px solid var(--base-color-black);
	transition: background-color var(--base-transition-time);
}
#columnDetail .columnMain-backbtn a .arrow-to-left {
	display: flex;
	align-items: center;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 1.3em;
	margin: auto;
	fill: var(--base-color-offwhite);
	transition: left var(--base-transition-time);
}
#columnDetail .columnMain-backbtn a:hover {
	color: var(--base-color-black);
	background-color: var(--base-color-offwhite);
}
#columnDetail .columnMain-backbtn a:hover .arrow-to-left {
	left: -1.0em;
	fill: var(--base-color-black);
}

/*---------------------------------------------------------*/

#columnDetail .section-aside h4 {
	position: relative;
	padding: 0 0 .5em 0;
	font-size: 16px;
	line-height: 1.2;
}
#columnDetail .section-aside h4:not(:nth-child(1)) {
	margin-top: 40px;
}
#columnDetail .section-aside h4::before,
#columnDetail .section-aside h4::after {
	position: absolute;
	content: '';
	bottom: 0;
	left: 0;
}
#columnDetail .section-aside h4::before {
	width: 2em;
	height: 2px;
	background-color: var(--base-color-blue);
	z-index: 2;
}
#columnDetail .section-aside h4::after {
	width: 100%;
	height: 2px;
	background-color: var(--base-color-lightgray);
	z-index: 1;
}

#columnDetail .lists-item-rank:not(:empty) {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 0;
	left: 0;
	width: 3em;
	height: 3em;
	padding: .5em;
	font-size: 14px;
	line-height: 1;
	font-weight: bold;
	background-color: var(--base-color-offwhite)
}
#columnDetail .lists-item {
	text-decoration: none;
	color: var(--base-color-black);
}

@media screen and (min-width: 825px) and (max-width: 1201px) {
	.section-aside-list {
		display: grid;
		grid-template-columns: 1fr 1fr 1fr;
		gap: 10px;
	}
}
@media screen and (min-width: 825px) {
	#columnDetail .lists-item {
		position: relative;
		display: flex;
		flex-direction: column;
		margin: 10px 0;
		border: 1px solid var(--base-line-color);
		background-color: #fff;
		transition: border-color var(--base-transition-time), box-shadow var(--base-transition-time);
	}
	#columnDetail .lists-item:hover {
		border-color: var(--base-color-navy);
		box-shadow: 0 0 10px rgba(0, 0, 0, .2);
	}
	/* #columnDetail .lists-item img {
		width: 100%;
		height: auto;
	} */
	#columnDetail .section-aside-list .lists-item-thm {
		position: relative;
		width: 100%;
		padding-top: 65%;
	}
	#columnDetail .section-aside-list .lists-item-thm img {
		position: absolute;
		top: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	#columnDetail .lists-item-main {
		margin: 1em 20px;
	}
	#columnDetail .lists-item h3 {
		font-size: 16px;
		line-height: 1.4;
		color: var(--base-color-black);
	}
	#columnDetail .lists-item h3 .fontsmall {
		line-height: 1.6;
	}
}

@media screen and (max-width: 1520px) {
	#columnDetail .columnMain-title h3 {
		font-size: calc(16px + 12 * (100vw - 300px) / 1220);
	}
	#columnDetail .columnMain-title-m,
	#columnDetail .columnMain-title-s {
		font-size: calc(18px + 8 * (100vw - 300px) / 1220);
	}
	#columnDetail .columnMain > p,
	#columnDetail .columnMain > dl,
	#columnDetail .columnMain-btn a,
	#columnDetail .columnMain-backbtn a,
	#columnDetail .columnMain > ul.listStyle-circle,
	#columnDetail .columnMain > ul.listStyle-number  {
		font-size: calc(16px + 2 * (100vw - 300px) / 1220);
	}
}

@media screen and (max-width: 824px) {
	#columnDetail .lists-item {
		position: relative;
		display: grid;
		grid-template-columns: 120px 1fr;
		align-items: center;
		margin: 10px 0;
		border: 1px solid var(--base-line-color);
		border-radius: 12px;
		overflow: hidden;
	}
	#columnDetail .lists-item-thm {
		width: 120px;
		height: 120px;
		overflow: hidden;
	}
	#columnDetail .lists-item-thm img {
		width: 100%;
		height: 120px;
		object-fit: cover;
	}
	#columnDetail .lists-item-main {
		padding: 1.2em;
	}
	#columnDetail .lists-item-main h3 {
		font-size: 16px;
		line-height: 1.2em;
	}
}

#columnDetail div.columnMain-quote {
	position: relative;
	padding: 1.8em;
	color: #666;
	background-color: #f1f1f1;
}
#columnDetail .columnMain-quote-icon {
	position: absolute;
	content: '';
	top: 0;
	right: 1.5em;
	width: 5%;
	transform: translateY(-45%);
	z-index: 1;
}
#columnDetail .columnMain-quote-icon svg {
	fill: #cacaca;
}
#columnDetail div.columnMain-quote p,
#columnDetail div.columnMain-quote blockquote {
	font-size: 90%;
	line-height: 1.8;
}

#columnDetail .columnMain-author {
	position: relative;
	padding: 1.8em 1.2em 1.2em;
	border: 1px solid #d5d5d5;
}
#columnDetail .columnMain-author h6 {
	position: absolute;
	top: 0;
	left: 1.2em;
	padding: .2em 1.0em;
	font-size: 90%;
	background-color: #fff;
	border: 1px solid #d5d5d5;
	border-radius: 5em;
	transform: translateY(-50%);
	z-index: 10;
}
#columnDetail .columnMain-author p {
	font-size: 90%;
}

/*---------------------------------------------------------*/

#columnDetail .columnMain-keyword {
	flex-direction: column;
	padding: 1.0em 1.0em .6em 1.0em;
	border: 1px solid var(--base-line-color);
	border-radius: 0 .6em .6em .6em;
}
#columnDetail .columnMain-keyword > dt {
	line-height: 1.2em;
	margin-top: -1.6em;
	margin-left: -.5em;
	font-weight: bold;
	word-break:break-all;
	word-wrap:break-word;
	overflow-wrap: break-word;
}
#columnDetail .columnMain-keyword > dt strong {
	display: inline-block;
	padding: 0 .5em;
	background-color: #fff;
}
#columnDetail .columnMain-keyword > dd {
	position: relative;
	padding: .7em 0 0 0;
	line-height: 1.8em;
}
#columnDetail .columnMain-keyword > dd ul {
	list-style: circle;
}
#columnDetail .columnMain-keyword > dd ul li {
	position: relative;
	padding-left: 1.4em;
	line-height: 1.6em;
}
#columnDetail .columnMain-keyword > dd ul li + li {
	margin: .6em 0;
}
#columnDetail .columnMain-keyword > dd ul li::after {
	position: absolute;
	content: '・';
	top: 0;
	left: 0;
}

#columnDetail .columnMain-keyword > dd ul.listStyle-number {
	margin-top: 1em;
	list-style: none;
	counter-reset: listnumber 0;
}
#columnDetail .columnMain-keyword > dd ul.listStyle-number {
	margin-top: 1em;
}
#columnDetail .columnMain-keyword > dd ul.listStyle-number li {
	position: relative
}
#columnDetail .columnMain-keyword > dd ul.listStyle-number li::after {
	position: absolute;
	counter-increment: listnumber 1;
	content: counter(listnumber) "."; 
}

#columnDetail .columnMain-keyword > dd .caption {
	position: absolute;
	bottom: -1.1em;
	left: 0;
	padding: 0 .5em;
	line-height: 1.0em;
	background-color: #fff;
}
#columnDetail .columnMain-keyword > dd dl {
	display: flex;
	flex-wrap: wrap;
}
#columnDetail .columnMain-keyword > dd dt {
	position: relative;
	white-space: nowrap;
	list-style: circle;
}
#columnDetail .columnMain-keyword > dd .has-circle dt::after {
	position: absolute;
	content: '・';
	left: 0;
}
#columnDetail .columnMain-keyword > dd .has-circle dd {
	margin-left: 1em;
}

/*---------------------------------------------------------*/

#columnDetail fieldset {
	position: relative;
	padding: .3em 1.0em .5em 1.0em;
	border: 1px solid var(--base-line-color);
}
#columnDetail fieldset.nolegend {
	padding: 1.2em 1.0em .5em 1.0em;
}
#columnDetail fieldset legend {
	margin-left: -.5em;
	padding: 0 .5em;
}
#columnDetail fieldset legend .fontsmall {
	display: inline-block;
}
#columnDetail fieldset > ul {
	list-style: circle;
}
#columnDetail fieldset > ul li {
	position: relative;
	padding-left: 1.4em;
	line-height: 1.6em;
}
#columnDetail fieldset > ul li + li {
	margin: .6em 0;
}
#columnDetail fieldset > ul li::after {
	position: absolute;
	content: '・';
	top: 0;
	left: 0;
}
#columnDetail fieldset .caption {
	position: absolute;
	bottom: -.5em;
	left: .5em;
	padding: 0 .5em;
	line-height: 1.0em;
	background-color: #fff;
}
/*---------------------------------------------------------*/
/*---------------------------------------------------------*/

/*---------------------------------------------------------*/

/* .interviewMain-prologue {
	position: relative;
	padding: 3em 3em 3em 0;
	z-index: 1;
}
.interviewMain-prologue::before {
	position: absolute;
	content: 'PROLOGUE';
	top: 0;
	left: 0;
	font-weight: bold;
	font-size: 6vw;
	color: var(--base-color-navy);
	line-height: 0;
	opacity: .1;
	z-index: 2;
}
.interviewMain-prologue::after {
	position: absolute;
	content: '';
	top: 0;
	right: 0;
	width: 100vw;
	height: 100%;
	background-color: var(--interview-bk-color);
	border: 1px solid var(--interview-border-color);
	border-radius: 3em;
	z-index: -1;
} */

/*---------------------------------------------------------*/

/* .interviewMain-personal {
	position: relative;
}
.interviewMain-personal::before {
	position: absolute;
	content: 'INTERVIEW';
	top: 0;
	right: -8vw;
	font-weight: bold;
	font-size: 10vw;
	color: var(--base-color-navy);
	line-height: 0;
	opacity: .1;
	z-index: 10;
}
.interviewMain-personal img {
	width: 70%;
	height: auto;
	border-radius: 3em;
}
.interviewMain-personal-sticker {
	position: absolute;
	bottom: 0;
	right: 0;
	padding: 1.5em 2em;
	text-align: right;
	border-radius: 1.5em;
	background-color: rgba(255, 255, 255, .7);
}
.interviewMain-personal-sticker strong {
	display: block;
	font-size: 120%;
}

@media screen and (max-width: 824px) {
	.interviewMain-personal img {
		border-radius: 1.5em;
	}
	.interviewMain-personal-sticker {
		padding: 1.0em 1.5em;
		font-size: 90%;
		border-radius: 1.0em;
	}
} */

/*---------------------------------------------------------*/

.interviewMain-simple {
	max-width: 720px;
}

.interviewMain-hr {
	position: relative;
	height: 1px;
	margin: 4.4em 0 !important;
}
.interviewMain-hr::before {
	position: absolute;
	content: '';
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 10%;
	min-width: 4em;
	height: 1px;
	background-color: #d5d5d5;
}
.interviewMain-hr::after {
	position: absolute;
	content: '';
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 2em;
	height: 1px;
	background-color: #d5d5d5;
	transform: rotate(-45deg);
}

/*---------------------------------------------------------*/

.interviewSection {
	position: relative;
}

.interviewSection-photo {
	position: relative;
	top: 100px;
	width: 80%;
	opacity: 0;
	margin-bottom: 3.4em;
}
.interviewSection-photo img {
	width: 100%;
	height: auto;
	border-radius: 2em;
}

.interviewSection-txt {
	position: relative;
	width: 90%;
	z-index: 10;
}
.interviewSection-photo + .interviewSection-txt,
.interviewSection-obj + .interviewSection-txt {
	padding-top: 2.4em;
}

.interviewSection--left .interviewSection-photo {
	left: 0;
}
.interviewSection--left .interviewSection-txt {
	margin-left: auto;
}
.interviewSection--right .interviewSection-photo {
	margin-left: auto;
}
.interviewSection--left .interviewSection-txt {
	left: 0;
}

.interviewSection-obj {
	position: relative;
	opacity: 0;
	left: 100px;
	z-index: 10;
}
.interviewSection-obj::after {
	position: absolute;
	content: 'INTERVIEW';
	bottom: 1em;
	left: 0;
	font-weight: bold;
	font-size: 8vw;
	color: var(--base-color-navy);
	line-height: 0;
	z-index: 10;
}
@media screen and (max-width: 824px) {
	.interviewSection-obj::after {
		font-size: 10vw;
		bottom: .8em;
	}
}

@media screen and (max-width: 1024px) {
	.interviewSection {
		display: block;
	}
	.interviewSection-photo {
		width: 80%;
		max-width: 480px;
		left: 0;
		right: 0;
		margin: auto;
	}
	.interviewSection-txt {
		width: 100%;
	}
}

/*---------------------------------------------------------*/

.interviewBlock:not(:nth-child(1)) {
	margin: 2.4em 0;
}
.interviewBlock-interviewer {
	position: relative;
	border: 1px solid var(--interview-border-color);
	background-color: rgba(245, 250, 255, .85);
	border-radius: 2em 0 2em 2em;
	color: var(--base-color-navy);
}
.interviewBlock-interviewee {
	position: relative;
	border: 1px solid #e5e5e5;
	background-color: rgba(255, 255, 255, .85);
	border-radius: 0 2em 2em 2em;
}

@media screen and (max-width: 824px) {
	.interviewBlock-interviewer {
		border-radius: 1em 0 1em 1em;
	}
	.interviewBlock-interviewee {
		border-radius: 0 1em 1em 1em;
	}
}

/*---------------------------------------------------------*/

.interviewBlock-person {
	position: absolute;
	top: 0;
	display: flex;
	align-items: center;
	font-size: 80%;
	line-height: 1.2;
	background-color: #fff;
	border: 1px solid #c5c5c5;
	border-radius: 5em;
	transform: translateY(-52%);
	overflow: hidden;
}
.interviewBlock-interviewer .interviewBlock-person {
	right: 2em;
	border-color: var(--interview-border-color);
	background-color: var(--interview-bk-color);
}
.interviewBlock-interviewee .interviewBlock-person {
	left: 2em;
}
.interviewBlock-person-name {
	padding: .6em 1.2em;
}

/*---------------------------------------------------------*/

.interviewBlock-comment {
	padding: 1.8em 2em 1.5em 2em;
	font-size: 16px;
	line-height: 1.8;
}
@media screen and (max-width: 824px) {
	.interviewBlock-comment {
		padding: 2em 1.5em 1.5em 1.5em;
		font-size: 14px;
	}
}

/*---------------------------------------------------------*/

.interviewBlock-product {
	display: block;
	width: calc( 100% - 100px );
	margin-left: auto !important;
	margin-right: auto !important;
	background-color: #fff;
	border: 1px solid #333333;
	border-radius: 2em;
	overflow: hidden;
	transition: box-shadow .5s;
}
.interviewBlock-product:hover {
	box-shadow: 0 0 15px rgba(0, 0, 0, .2);
}
.interviewBlock-product img {
	width: 100%;
	height: auto;
}

.interviewBlock-product  + .interviewBlock-product-link {
	margin-top: -2em;
	padding-right: 50px;
}
@media screen and (max-width: 824px) {
	.interviewBlock-product {
		border-radius: 1em;
	}
}
/*---------------------------------------------------------*/
/*---------------------------------------------------------*/


.columnMain-histry {
	position: relative;
	padding-left: 9em;
	font-size: 16px;
}
.columnMain-histry::after {
	position: absolute;
	content: '';
	top: 0;
	left: 7em;
	width: 2px;
	height: 100%;
	background-color: var(--base-color-navy);
}
.columnMain-histry > p {
	margin-top: 1.0em;
	line-height: 1.8em;
}

.columnMain-histry-block {
	position: relative;
	margin-top: 2em;
	margin-bottom: 2em;
	padding: 1.3em 2em;
	background-color: #f5f5f5;
	border-radius: 1.2em;
}
.columnMain-histry-block::before {
	position: absolute;
	content: '';
	top: calc( 2.2em - 8px );
	left: calc( -2em - 8px );
	width: 18px;
	height: 18px;
	background-color: var(--base-color-navy);
	border-radius: 50%;
}
.columnMain-histry-block::after {
	position: absolute;
	content: '';
	top: 2.2em;
	left: -40px;
	width: calc( 40px + 1em );
	height: 2px;
	background-color: var(--base-color-navy);
}
.columnMain-histry-block h5 {
	position: relative;
}
.columnMain-histry-block h5 div {
	position: absolute;
	top: .2em;
	left: -11em;
	font-size: 16px;
}
.columnMain-histry-block h5 strong {
	font-size: 20px;
	margin-bottom: .5em;
}
.columnMain-histry-block p {
	margin-top: .8em;
	line-height: 1.8em;
}

#columnDetail .columnMain-histry-block .columnMain-keyword {
	margin: 1em 0;
}
#columnDetail .columnMain-histry-block .columnMain-keyword dt strong{
	background-color: #f5f5f5;
}

@media screen and (max-width: 824px) {
	.columnMain-histry {
		font-size: 12px;
	}
	.columnMain-histry-block h5 div {
		font-size: 12px;
	}
	.columnMain-histry-block h5 strong {
		font-size: 16px;
	}
	.columnMain-histry-block::after {
		left: -20px;
		width: calc( 20px + 1em );
	}
}

/*---------------------------------------------------------*/
/*---------------------------------------------------------*/