/* -----------------------------------------------
= kv
----------------------------------------------- */
.kv {
	position: relative;
}
.kv.js-fadein {
	opacity: 0;
	transition: opacity 1s ease .4s;
}
.kv.js-fadein.is-visible {
	opacity: 1;
}
.kv .category {
	position: absolute;
	top: 10px;
	left: 20px;
	z-index: 1;
}
.kv .category .en {
	display: block;
	position: relative;
	width: 97px;
}
.kv .category .en::before {
	content: "";
	position: absolute;
	bottom: 5px;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 1px;
	background: #fff;
}
.kv .category .jp {
	display: block;
	font-size: calc(1.1rem / 1.6);
	letter-spacing: .2em;
}
.kv h1 {
	position: absolute;
	top: 43%;
	left: 0;
	transform: translateY(-50%);
	width: 100%;
	color: #fff;
	font-family: var(--fontMin);
	text-shadow: 2px 2px 1px rgba(0,0,0,.6);
	text-align: center;
	letter-spacing: .2em;
}
.kv h1 .en {
	display: block;
	margin-bottom: 5px;
	font-size: calc(1.6rem/ 1.6);
}
.kv h1 .jp {
	display: block;
	font-size: calc(1.8rem/ 1.6);
	line-height: 1.25;
}
@media print, screen and (width >= 768px) {/* PC */
.kv {
	max-height: calc(100vh - 80px);
}
.kv .category {
	top: 35px;
	left: 40px;
}
.kv .category .en {
	width: 196px;
	margin-bottom: 10px;
}
.kv .category .en::before {
	bottom: 5px;
	height: 2px;
}
.kv .category .jp {
	font-size: calc(1.6rem / 1.6);
}
.kv h1 {
}
.kv h1 .en {
	margin-bottom: 10px;
	font-size: calc(2.8rem/ 1.6);
}
.kv h1 .jp {
	font-size: calc(3.2rem/ 1.6);
}
.kv picture img {
	max-height: calc(100vh - 80px);
	object-fit: cover;
}
}/* @media */
/* -----------------------------------------------
= intro
----------------------------------------------- */
.intro {
	padding: 40px 20px;
}
.intro p {
	font-size: calc(1.4rem / 1.6);
}
@media print, screen and (width >= 768px) {/* PC */
.intro {
	padding: 100px 20px 120px;
}
.intro p {
	font-size: calc(2rem / 1.6);
	line-height: 2;
	text-align: center;
}
}/* @media */
/* -----------------------------------------------
= profile
----------------------------------------------- */
.profile {
	padding: 0 20px 50px;
	text-align: center;
}
.profile .division {
	margin-bottom: 25px;
	font-size: calc(1.2rem / 1.6);
	letter-spacing: .12em;
}
.profile .item + .item {
	position: relative;
	margin-top: 50px;
	padding-top: 70px;
}
.profile .item + .item::before,
.profile .item + .item::after {
	content: "";
	position: absolute;
	top: 0;
	left: calc(50% - 50px);
	width: 100px;
	height: 1px;
	background: #808080;
}
.profile .item + .item::before {
	transform: rotate(-45deg);
}
.profile .item + .item::after {
	transform: rotate(45deg);
}
.profile .year {
	font-size: calc(1.2rem / 1.6);
	letter-spacing: .12em;
}
.profile .name {
	margin-bottom: -6px;
	font-size: calc(1.6rem / 1.6);
	font-weight: 700;
}
.profile img {
	width: 72px;
}
.profile dt {
	display: inline-block;
	margin: 15px 0 10px;
	padding: 0 1em;
	color: #fff;
	background: #4d4d4d;
	border-radius: 3px;
	font-size: calc(1.2rem / 1.6);
	letter-spacing: .2em;
}
.profile dd {
	font-size: calc(1.2rem / 1.6);
	line-height: 1.5;
	text-align: left;
	letter-spacing: .04em;
}
.profile th,
.profile td {
	vertical-align: top;
}
.profile th {
	padding: 10px 10px 10px 0;
	white-space: nowrap;
}
.profile td {
	padding: 10px 0;
}
.profile tr + tr th,
.profile tr + tr td {
	border-top: 1px solid #cbcbcb;
}
@media print, screen and (width >= 768px) {/* PC */
.profile {
	max-width: 1300px;
	margin: 0 auto;
	padding: 0 20px 150px;
}
.profile .division {
	margin-bottom: 40px;
	font-size: calc(1.8rem / 1.6);
}
.profile .item_wrap {
	display: flex;
	gap: 0 190px;
}
.profile .item:first-child {
	order: 2;
}
.profile .item:last-child {
	order: 1;
}
.profile .item + .item {
	margin-top: 0;
	padding-top: 0;
}
.profile .item + .item::before,
.profile .item + .item::after {
	top: 110px;
	left: auto;
	right: -180px;
	width: 160px;
}
.profile .year {
	font-size: calc(1.6rem / 1.6);
}
.profile .name {
	position: relative;
	margin-bottom: -10px;
	font-size: calc(2.2rem / 1.6);
}
.profile img {
	width: 100px;
}
.profile dt {
	margin-top: 25px;
	border-radius: 4px;
	font-size: calc(1.6rem / 1.6);
}
.profile dd {
	font-size: calc(1.4rem / 1.6);
	line-height: 1.3;
}
.profile th {
	padding-right: 20px;
}
}/* @media */
/* -----------------------------------------------
= talk
----------------------------------------------- */
.talk {
	padding: 0 20px;
}
.talk + .talk {
	margin-top: 40px;
}
.talk .inner > img {
	display: block;
	max-width: 248px;
	margin: 0 auto 40px;
}
.talk .block > img {
	display: block;
	max-width: 248px;
	margin: 0 auto 60px;
}
.talk .inner > img.is-pc {
	display: none;
}
.talk h2 {
	margin-bottom: 25px;
	font-family: var(--fontMin);
	letter-spacing: .12em;
}
.talk h2 .en {
	display: inline-block;
	position: relative;
	margin-bottom: 6px;
	padding-bottom: 6px;
	font-size: calc(1.2rem / 1.6);
}
.talk h2 .en::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 6px;
	background: url(../../img/common/bg_dot_line.svg) repeat-x 0 / auto 100%;
	transform: rotate(180deg);
	filter: var(--filterGray);
}
.talk h2 .jp {
	display: block;
	font-size: calc(1.6rem / 1.6);
}
.talk dl {
	display: flex;
	flex-wrap: wrap;
	align-items: start;
	font-size: calc(1.4rem / 1.6);
}
.talk dt {
	width: 30px;
	margin-right: 20px;
}
.talk dt span {
	display: block;
	font-weight: 700;
	text-align: center;
}
.talk dt img {
	margin-top: -4px;
}
.talk dd {
	width: calc(100% - 50px);
	margin-bottom: 25px;
	letter-spacing: .06em;
}
.talk > img {
	display: block;
	width: calc(100% + 40px);
	margin: 0 -20px;
}
.img_last {
	display: block;
	margin-bottom: 20px;
}
@media print, screen and (width >= 768px) {/* PC */
.talk {
	max-width: 1300px;
	margin: 0 auto;
}
.talk + .talk {
	margin-top: 150px;
}
.talk .inner {
	display: flex;
	align-items: start;
	margin-bottom: 110px;
}
.talk .inner > img.is-pc {
	display: block;
}
.talk .block > img.is-sp {
	display: none;
}
.talk .inner > img {
	max-width: calc(496 / 1300 * 100%);
	margin: 160px 0 0;
}
.talk .inner .block {
	flex: 1;
}
.talk.type01 .inner .block {
	margin-left: calc(130 / 1300 * 100%);
}
.talk.type02 .inner > img {
	order: 2;
}
.talk.type02 .inner .block {
	order: 1;
	margin-right: calc(130 / 1300 * 100%);
}
.talk h2 {
	margin-bottom: 60px;
}
.talk h2 .en {
	margin-bottom: 10px;
	padding-bottom: 10px;
	font-size: calc(1.8rem / 1.6);
}
.talk h2 .en::after {
	height: 10px;
}
.talk h2 .jp {
	font-size: calc(2.4rem / 1.6);
}
.talk dt {
	width: 40px;
	margin-right: 25px;
	margin-bottom: 20px;
	font-size: calc(2rem / 1.6);
}
.talk dt img {
	margin-top: -8px;
}
.talk dd {
	width: calc(100% - 65px);
	margin-bottom: 30px;
	font-size: calc(1.6rem / 1.6);
	line-height: 2;
}
.talk > img {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
}
.img_last {
	max-width: 1500px;
	margin: 0 auto 80px;
}
}/* @media */
/* -----------------------------------------------
= footer
----------------------------------------------- */
.footer .entry_img {
	background-image: url(../../img/myreason/dialog_footer_entry_sp.jpg);
}
@media print, screen and (width >= 768px) {/* PC */
.footer .entry_img {
	background-image: url(../../img/myreason/dialog_footer_entry_pc.jpg);
}
}/* @media */


