@charset "utf-8";
/* CSS Document */

.modal_gallery { width:calc(750vw / 19.2); border-radius:1em; margin-block-end: calc(40vw / 19.2); }
.modal_gallery dl { margin:0; padding:calc(24vw / 19.2) calc(20vw / 19.2) calc(24vw / 19.2) calc(31vw / 19.2); }
.modal_gallery dl dt { margin:0; padding:0 0 0.5em 0; }
.modal_gallery dl dt i { margin-left:0.3em; }
.modal_gallery dl dt p { margin:0; }
.modal_gallery dl dd { margin:0; }

.modal_gallery_box {
	display: flex; justify-content: center; align-items: center;
	position: fixed; z-index: 9999; inset: 0;
	background: rgba(0, 0, 0, 0.7);
	opacity: 0; visibility: hidden;
	transition: opacity 0.4s ease, visibility 0.4s;
}

.modal_gallery_box.show { opacity: 1; visibility: visible; }

.modal_gallery_box .modal_content {
	position: relative; background: #FFFFFF; box-shadow: 0 0 20px rgba(0,0,0,0.4);
	padding: calc(40vw / 19.2) calc(15vw / 19.2) calc(40vw / 19.2) calc(40vw / 19.2); border-radius: 0.5em; width: calc(1300vw / 19.2); max-height: 80vh;
}

.modal_gallery_box .modal_close {
	display: flex; justify-content: center; align-items: center; width: calc(60vw / 19.2); height: calc(60vw / 19.2);
	position: absolute; top: -1.5em; right: -1.5em;  border: none; cursor: pointer;
	border: solid 2px #b20000; border-radius: 100vmax; background-color: #FFF; color:#000;
}

.modal_gallery_box .pop_up_content_wrapper { overflow-y:scroll; max-height: 70vh; padding: 0 calc(15vw / 19.2) 0 0; }
.modal_gallery_box .pop_up_content_wrapper .pop_up_ttl {
	background-color:#b20000; color:#FFF; font-size: 2.503em; letter-spacing: 0.05em; padding-inline: 0.25em; line-height: 1.5em; margin-block-start: 0.75em;
  margin-block-end: 0.75em;}

.modal_gallery_box .pop_up_content_wrapper p {font-size: 1.251em; font-feature-settings: "palt";}
.modal_gallery_box .modal_content .full_img {max-width: 100%;}

@media (min-width: 0px) and (max-width: 767px) {
.modal_gallery { display: block; width: 100%; margin-block-end: 2em; }
.modal_gallery_box .modal_close { width: calc(60vw / 7.2); height: calc(60vw / 7.2); right: 0; }
.modal_gallery_box .modal_content { padding: 1em; width: 90%; }
.modal_gallery_box .pop_up_content_wrapper .pop_up_ttl {font-size:1.5em;}	
}