.mv_img_item { width: 100%; height: 100vw; background-size: cover; background-position: center; }
@media screen and (min-width: 769px) { .mv_img_item { height: calc(100vh - 88px); } }

.project { padding: 20.53333vw 0; }
@media screen and (min-width: 769px) { .project { padding: 112px 0; } }
.project_title { top: 30px; left: 3.33333vw; font-size: 6.13333vmin; font-family: "century-old-style-std", serif; }
@media screen and (min-width: 769px) { .project_title { top: 112px; left: 50px; font-size: 5.33333vmin; } }
.project_title *, .project_title span { font-family: "century-old-style-std", serif !important; }
.project_title .odometer-formatting-mark { display: none; }
.project_history section + section { margin-top: 8.71795vw; border-top: 1px solid #000000; padding-top: 8.71795vw; }
@media screen and (max-width: 768px) { .project_year { padding: 0 5.2vw 0 3.33333vw; } }
.project_block { position: relative; margin: 0 auto; }
.project_block.is_vertical { max-width: 800px; }
.project_block.is_horizontal { max-width: 1200px; }
.project_block + .project_block { margin-top: 80px; }
.project_block_image.is-show img:nth-of-type(1) { opacity: 0; }
.project_block_image.is-show img:nth-child(2) { z-index: 1; opacity: 1; }
.project_block_image img { transition: 1.5s; }
.project_block_image img:nth-of-type(2) { position: absolute; top: 0; left: 0; z-index: -1; opacity: 0; }
.project_block_name { position: absolute; z-index: 2; top: 2.66667vw; left: 2.66667vw; }
@media screen and (min-width: 769px) { .project_block_name { top: 38px; left: 38px; } }
.project_block_name h3 { overflow-wrap: anywhere; color: transparent; -webkit-text-stroke: 1px #000000; line-height: 0.9; font-size: 16vmin; }
@media screen and (min-width: 769px) { .project_block_name h3 { -webkit-text-stroke: 2px #000000; font-size: 174px; } }
.project_block_text { position: absolute; top: 50%; left: 50%; z-index: 1; transition: top 0.3s ease-out; transform: translateY(-50%) translateX(-50%); background: #ffffff; border-top: 1px solid #000000; border-bottom: 1px solid #000000; padding: 4.8vw 5.33333vw; }
@media screen and (min-width: 769px) { .project_block_text { padding: 32px 40px; } }
.project_block_text p { font-family: "century-old-style-std", serif; font-size: 2.93333vmin; letter-spacing: 0.06em; line-height: 2; }
@media screen and (min-width: 769px) { .project_block_text p { font-size: 18px; } }
