@charset "utf-8";
.history_modal_overlay {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 110vh;
		background: rgba(0, 0, 0, 0.8);
		display: none;
}
.history_modal_container {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh;
		z-index: 9999;
		display: flex;
		justify-content: center;
		display: none;
		padding-top: 10vh;
}
.history_modal_wrap {
		width: 1400px;
		height: 550px;
		margin: 0 auto;
		background: #310140;
		border: 2px solid #d000df;
		box-sizing: border-box;
		padding: 50px 50px 60px;
		position: relative;
		z-index: 10;
}
.history_modal_wrap::after {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		right: 0;
		width: 250px;
		height: calc(100% - 40px);
		background: rgb(49, 1, 64);
		background: linear-gradient(90deg, rgba(49, 1, 64, 0) 0%, rgba(49, 1, 64, 1) 30%);
}
.history_modal_hd {
		margin-bottom: 40px;
}
.history_modal_hd_en {
		font-family: 'Rajdhani', sans-serif;
		font-size: 32px;
		font-weight: 400;
		letter-spacing: 0.02em;
		margin: 0;
}
.history_modal_hd_jp {
		font-size: 14px;
}
.history_modal_wrap .modal_close {
		width: 20px;
		height: 20px;
		position: absolute;
		top: 18px;
		right: 18px;
		cursor: pointer;
		z-index: 10;
}
.modal_close::before, .modal_close::after {
		content: '';
		display: block;
		position: absolute;
		top: 10px;
		left: 0;
		width: 20px;
		height: 1px;
		background: #fff;
		pointer-events: none;
}
.modal_close::before {
		transform: rotate(45deg)
}
.modal_close::after {
		transform: rotate(-45deg)
}
@media (hover: hover) {
		.modal_close:hover::before, .modal_close:hover::after {
				background: #ffde00;
		}
}
.history_modal_cont {
		width: 100%;
		overflow: scroll;
		padding-bottom: 30px;
		position: relative;
}
.history_figure {
		width: 260px;
}
.history_photo {
		margin-bottom: 15px;
}
.history_photo img {
		width: 100%;
		height: auto;
}
.history_photo_caption {
		font-size: 13px;
		line-height: 1.8;
}
.history_wrap {
		display: flex;
		width: 4900px
}
.history_wrap_left {
		margin-right: 110px;
}
.history_wrap_right {
		display: flex;
		flex-wrap: wrap;
		align-items: flex-start;
		position: relative;
}
.history_wrap_right::after {
		content: '';
		display: block;
		position: absolute;
		top: 200px;
		left: -4px;
		width: 100%;
		height: 1px;
		background: #d000df;
}
.history_item {
		width: 270px;
		min-height: 200px;
		padding-left: 22px;
		margin-left: -115px;
		position: relative;
}
.history_item.plus {
		width: auto;
}
.history_item_flex {
		display: flex;
		align-items: flex-start;
}
.history_item_photo {
		margin-left: 30px;
		position: relative;
		box-sizing: border-box;
		padding: 6px;
		border: 1px solid #D000DF;
		width: 220px;
		top: 7px;
}
@media(max-width: 840px) {
		.history_item_flex {
				display: block;
		}
		.history_item_photo {
				margin: 20px 0 0;
				position: relative;
				padding: 6px;
				width: auto;
				top: 0;
				max-width: 450px;
		}
}
.history_item_photo div {
		position: absolute;
		width: 6px;
		height: 6px;
}
.history_item_photo .frame_cnr1 {
		top: -1px;
		left: -1px;
		border-top: 1px solid #FFDE00;
		border-left: 1px solid #FFDE00;
}
.history_item_photo .frame_cnr2 {
		top: -1px;
		right: -1px;
		border-top: 1px solid #FFDE00;
		border-right: 1px solid #FFDE00;
}
.history_item_photo .frame_cnr3 {
		bottom: -1px;
		left: -1px;
		border-bottom: 1px solid #FFDE00;
		border-left: 1px solid #FFDE00;
}
.history_item_photo .frame_cnr4 {
		bottom: -1px;
		right: -1px;
		border-bottom: 1px solid #FFDE00;
		border-right: 1px solid #FFDE00;
}
.history_item_photo img {
		width: 100%;
		height: auto;
}
.history_item.extra {
		width: 275px;
}
.history_item::before {
		content: '';
		display: block;
		position: absolute;
		width: 1px;
		background: #d000df;
}
.history_item::after {
		content: '';
		display: block;
		position: absolute;
		width: 17px;
		height: 17px;
		border-radius: 50%;
		background: #d000df;
		left: -4px;
}
.history_wrap_right .history_item:first-child {
		margin-left: 0;
}
.history_wrap_right .history_item:nth-child(odd)::before {
		height: 140px;
		top: 44px;
		left: 4px;
}
.history_wrap_right .history_item:nth-child(even)::before {
		height: 31px;
		top: -9px;
		left: 4px;
}
.history_wrap_right .history_item:nth-child(odd)::after {
		bottom: -9px;
}
.history_wrap_right .history_item:nth-child(even)::after {
		top: -33px;
}
.history_wrap_right .history_item:nth-child(even) {
		margin-top: 225px;
		position: relative;
}
.history_item.long {
		width: 400px;
}
.history_item h6 {
		font-family: 'Rajdhani', sans-serif;
		font-size: 64px;
		font-weight: 400;
		letter-spacing: 0.02em;
		margin: 0 0 5px;
		line-height: 1;
		position: relative;
}
.history_item h6::after {
		content: '';
		display: block;
		position: absolute;
		top: calc(50% - 4px);
		left: -22px;
		width: 9px;
		height: 9px;
		border-radius: 50%;
		background: #ffde00;
}
.hd_jp {
		font-family: YakuHanJP, 'Noto Sans JP', sans-serif;
		font-size: 44px;
}
.history_item p {
		line-height: 2.0;
		font-size: 14px;
		padding-left: 8px;
}
.history_item p + p {
		margin-top: 1em;
}
.history_scroll_cont::-webkit-scrollbar {
		width: 5px;
		height: 10px;
}
@media(max-width: 1500px) {
		.history_modal_wrap {
				width: calc(100% - 80px);
		}
}
@media (min-width: 768px) and (max-width: 1194px) {
		br.tabletNoneBr {
				display: none;
		}
}
@media(max-width: 840px) {
		.verPortrait .history_modal_container {
				padding-top: 0;
		}
		.history_modal_wrap {
				height: 100%;
				margin: 0 auto;
				border-top: none;
				border-bottom: none;
				border-left: 2px solid #d000df;
				border-right: 2px solid #d000df;
				padding: 50px 20px 60px 50px;
		}
		.history_modal_wrap::after {
				display: none;
		}
		.history_modal_hd {
				margin-bottom: 40px;
		}
		.history_modal_hd_en {
				font-family: 'Rajdhani', sans-serif;
				font-size: 32px;
		}
		.history_modal_cont {
				width: 100%;
				overflow: auto;
				padding-right: 0;
				padding-bottom: 30px;
				position: relative;
				box-sizing: border-box;
		}
		.history_figure {
				max-width: 260px;
				margin: 0 auto 30px;
		}
		.history_photo_caption {
				font-size: 13px;
				line-height: 1.8;
		}
		.history_wrap {
				display: block;
				width: auto;
				overflow: auto;
				height: calc(100vh - 100px)
		}
		.history_wrap_left {
				margin-right: 0;
		}
		.history_wrap_right {
				display: block;
				padding-right: 20px;
		}
		.history_wrap_right::after {
				display: none;
		}
		.history_item, .history_wrap_right .history_item:nth-child(odd), .history_wrap_right .history_item:nth-child(even) {
				width: auto;
				min-height: inherit;
				margin: 0;
				padding: 0;
				padding-left: 25px;
				padding-bottom: 45px;
				z-index: 5;
		}
		.history_wrap_right .history_item:last-child {
				padding-bottom: 80px;
		}
		.history_item::after {
				width: 1px;
				height: calc(100% + 60px);
				top: 0px;
				left: 6px;
				border-radius: 0;
		}
		.history_wrap_right .history_item:last-child::after {
				display: none;
		}
		.history_wrap_right .history_item:nth-child(odd)::before {
				display: none;
		}
		.history_wrap_right .history_item:nth-child(even)::before {
				display: none;
		}
		.history_wrap_right .history_item:nth-child(even) {
				margin-top: 0;
				position: relative;
		}
		.history_wrap_right .history_item:first-child::after {
				bottom: inherit;
				top: 27px;
		}
		.history_item.long {
				width: auto;
		}
		.history_item h6 {
				font-size: 60px;
				margin: 0 0 5px;
				line-height: 1;
				position: relative;
		}
		.history_item h6::after {
				top: calc(50% - 6px);
				left: -25px;
				width: 12px;
				height: 12px;
				z-index: 5;
		}
		.hd_jp {
				font-size: 44px;
		}
		.history_item p {
				line-height: 2.0;
				font-size: 15px;
				padding-left: 8px;
		}
}
@media(max-width: 500px) {
		.history_item p {
				font-size: 14px;
		}
}
@media(max-width: 500px) {
		.history_modal_wrap {
				width: calc(100% - 30px);
				padding: 50px 10px 60px 15px;
		}
		.history_wrap_right {
				padding-right: 15px;
				padding-bottom: 80px;
		}
		.history_item h6 {
				font-size: 48px;
		}
		.hd_jp {
				font-size: 40px;
		}
}
@media(min-width: 375px) {
		.seExtraBr {
				display: none;
		}
}