@charset "UTF-8";

.top_downlink{position: absolute;top:20px; left: 20px;z-index: 5;}

.main01_txtwrap{position: absolute;z-index: 2;transform: translate(-50%, -50%);left: 20%;top: 25%;display: flex;justify-content: space-between;}
.main01_txt0101{font-size: 38px;line-height: 1.6;color: #FFF;letter-spacing: 0.1em;text-shadow: 0px 0px 4px #000 , 0px 0px 7px #000, 0px 0px 10px #000, 0px 0px 13px #000, 0px 0px 16px #000; text-decoration: none !important; border-bottom: none !important;}

.main03_bukken{position: absolute;left: 45.5%;top: 17%;width: 20%;mix-blend-mode: screen;z-index: 2;}
.main03_bukkenname{position: absolute;top:calc((430 / 1080) * 100%);left:calc((995 / 1920) * 100%);width: calc((342 / 1920) * 100%);}
.main03_line{position: absolute;top:calc((347 / 1080) * 100%);left:calc((920 / 1920) * 100%);width: calc((163 / 1920) * 100%);z-index: 10;}
.main03_station1{position: absolute;top:calc((582 / 1080) * 100%);left:calc((1050 / 1920) * 100%);width: calc((195 / 1920) * 100%);}
.main03_station1walk{position: absolute;top:calc((538 / 1080) * 100%);left:calc((1054 / 1920) * 100%);width: calc((174 / 1920) * 100%);}
.main03_station2{position: absolute;top:calc((305 / 1080) * 100%);left:calc((780 / 1920) * 100%);width: calc((190 / 1920) * 100%);}
.main03_station2walk{position: absolute;top:calc((409 / 1080) * 100%);left:calc((765 / 1920) * 100%);width: calc((173 / 1920) * 100%);}
.main03_station3{position: absolute;top:calc((632 / 1080) * 100%);left:calc((752 / 1920) * 100%);width: calc((187 / 1920) * 100%);}
.main03_station3walk{position: absolute;top:calc((559 / 1080) * 100%);left:calc((746 / 1920) * 100%);width: calc((174 / 1920) * 100%);}
.main03_bukken img, .main03_line img, .main03_station1 img, .main03_station1walk img, .main03_station2 img, .main03_station2walk img, .main03_station3 img, .main03_station3walk img, .main03_bukkenname img{width: 100%;height: auto;display: block;}

/* 背景画像とピンを載せる“画像比率のステージ” */
.main03_stage {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100vw;
  aspect-ratio: 1920 / 1020;
  transform: translate(-50%, -50%);
}


.mainVisual__inner1 img{height: 100vh;object-fit:cover;}
.mainVisual__inner2{position: relative;}
.mainVisual__inner2 img{height: 100vh;object-fit:cover;}
.mainVisual__inner3{position: relative;width: 100%;height: 100vh;overflow: hidden;}
.mainVisual__picture img{width: 100%; height: 100%;object-fit:cover;}

.mainVisual__inner4{position: relative;overflow: hidden;}
.main04_imgwrap{width: 100%;}
.main04_bg img{width: 100%;height:100vh;object-fit:cover; }
.main04_img01{position: relative;}
.main04_img01gaikan{position: absolute;bottom: 0;height: 90%;width: 55%;}
.main04_img01gaikan img{height:100%;object-fit:contain; width: 100%;object-position: right bottom;}

.main04_txt01wrap{position: absolute;top:13%;left:64%;}
.main04_txt0101{font-size: 46px;color: #2A4347;line-height: 1.6;letter-spacing: 0.1em;}
.mvi4{bottom: 5px;left:calc(55% + 5px);}

.main04_txt02wrap{position: absolute;top:40%;left:65%;color: #2A4347;}
.main04_txt02{margin-bottom: 30px;}
.main04_txt0201{font-size: 20px;line-height: 1;margin-bottom: -30px;text-align: }
.main04_txt0202{font-size: 30px;text-align: center}
.main04_txt0201.top_adj01{font-size: 20px;line-height: 0.2;margin-bottom: -30px;text-align: }
.main04_txt0202.top_adj02{font-size: 30px;text-align: center;line-height: 0.8;margin-bottom: 40px;}
.main04_txt03{margin-bottom: 30px;}
.main04_txt04{border-top:1px solid rgba(42,67,71,0.50);padding-top: 10px;}
.main04_txt0401{font-size: 30px;text-align: center}

@media screen and (max-width: 768px) {

.main01_txtwrap{position: absolute;transform: translate(0, 0);left: 12%;top: 24%;display: flex;justify-content: space-between;}
.main01_txt0101{font-size: 5.5vw;line-height: 1.6;color: #FFF;letter-spacing: 0.1em;text-shadow: 0px 0px 4px #000 , 0px 0px 7px #000, 0px 0px 10px #000, 0px 0px 13px #000, 0px 0px 16px #000;}

.main03_bukken{position: absolute;left: 36%;top: 17.5%;width: 50%;mix-blend-mode: screen;z-index: 2;}
.main03_bukkenname{position: absolute;top:calc((507 / 1500) * 100%);left:calc((375 / 750) * 100%);width: calc((350 / 750) * 100%);z-index: 2;}
.main03_line{position: absolute;top:calc((384 / 1500) * 100%);;left:calc((256 / 750) * 100%);width: calc((210 / 750) * 100%);z-index: 2;}
.main03_station1{position: absolute;top:calc((685 / 1500) * 100%);left:calc((420 / 750) * 100%);width: calc((195 / 750) * 100%);z-index: 2;}
.main03_station1walk{position: absolute;top:calc((681 / 1500) * 100%);left:calc((426 / 750) * 100%);width: calc((174 / 750) * 100%);z-index: 2;}
.main03_station2{position: absolute;top:calc((365 / 1500) * 100%);left:calc((135 / 750) * 100%);width: calc((190 / 750) * 100%);z-index: 2;}
.main03_station2walk{position: absolute;top:calc((493 / 1500) * 100%);left:calc((97 / 750) * 100%);width: calc((173 / 750) * 100%);z-index: 2;}
.main03_station3{position: absolute;top:calc((765 / 1500) * 100%);left:calc((130 / 750) * 100%);width: calc((156 / 750) * 100%);z-index: 2;}
.main03_station3walk{position: absolute;top:calc((709 / 1500) * 100%);left:calc((92 / 750) * 100%);width: calc((187 / 750) * 100%);z-index: 2;}
.main03_bukken img, .main03_line img, .main03_station1 img, .main03_station1walk img, .main03_station2 img, .main03_station2walk img{width: 100%;height: auto;display: block;}

/* 背景画像とピンを載せる“画像比率のステージ” */
  .main03_stage {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 100vw;
    height: auto;
    aspect-ratio: 750 / 1500;
    transform: translate(-50%, -50%);
  }
  .mainVisual__inner3 .mainVisual__picture {
    position: absolute;
    inset: 0;
    z-index: 1;
  }
  .mainVisual__inner3 .mainVisual__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

.mainVisual__inner1 img{height: 100vh;object-fit:cover;}
.mainVisual__inner2{position: relative;}
.mainVisual__inner2 img{height: 100vh;object-fit:cover;}
.mainVisual__inner3{position: relative;width: 100%;height: 100svh;height: 100vh;overflow: hidden;}
.mainVisual__picture img{width: 100%; height: 100%;object-fit:cover;}

.mainVisual__inner4{position: relative;overflow: hidden;}
.main04_imgwrap{width: 100%;}
.main04_bg img{width: 100%;height:100vh;object-fit:cover; }
.main04_img01{position: relative;}
.main04_img01gaikan{position: absolute;bottom: 95px;height: auto;width: 100%;aspect-ratio: 750 / 1000;}
.main04_img01gaikan img{height:auto;width: 100%;object-fit:contain;object-position: right bottom;}

.main04_txt01wrap{position: absolute;right: 9.5%;top:95px;left:unset;width: 1em;}
.main04_txt0101{font-size: 5vw;color: #2a4347;writing-mode:vertical-rl;text-orientation: mixed;font-family: "Noto Serif JP", YuMincho, "Hiragino Mincho ProN","Yu Mincho", "MS PMincho", serif;-webkit-font-feature-settings: normal;font-feature-settings: normal;line-height: 1.7;letter-spacing: 0.08em;}
.mvi4{bottom: 85px;left:auto;right: 5px;font-size: 8px;}

.main04_txt02wrap{position: absolute;top:auto;bottom:10px;left:4%;color: #2A4347;display: flex;justify-content: center;flex-wrap: wrap;width: 96%;align-items: flex-end;}
.main04_txt02{margin-bottom: 0;width: 52%;margin-right: 0%;position:relative;top:0.8vw;}
.main04_txt0201{font-size: 2.4vw;line-height: 1;margin-bottom: -15%;}
.main04_txt0202{font-size: 4.2vw;line-height:1;}
.main04_txt0201.top_adj01{font-size: 2.4vw;line-height: 1;margin-bottom: -19%;}
.main04_txt0202.top_adj02{font-size: 4.2vw;margin-bottom: 0;line-height: 1;}
.main04_txt03{margin-bottom: 0;width: 48%;}
.main04_txt03 .main04_txt0201{padding-left:3.2vw;text-align:left;}
.main04_txt04{border-top:none;padding-top: 0;width: 100%;margin-top: -1%}
.main04_txt0401{font-size: 4vw;text-align: center;line-height: 0.8;}

}

/* 画面が画像より縦長・狭い場合は高さ基準でcoverさせる */
@media screen and (min-width: 769px) and (max-aspect-ratio: 1920 / 1020) {
  .main03_stage {
    width: auto;
    height: 100vh;
  }
}
@media screen and (max-width: 768px) and (max-aspect-ratio: 750 / 1500) {
  .main03_stage {
    width: auto;
    height: 100vh;
    height: 100svh;
  }
}


/* USP */
.topusp00{background-image: url("../imgs/top_usp00_bg.jpg");background-size: cover;padding: 200px 0;position: relative;overflow: hidden;}
.topusp00inner{display: flex;max-width: 1100px;justify-content: space-between;margin: 0 auto;align-items: center;}
.topusp00txt{width: 100%;text-align: center;}
.topusp00txt01{font-size: 90px;font-family: "EB garamond";line-height: 1;color: #2A4347;}
.topusp00txt02{font-size: 32px;margin: 5px 0 0 0;line-height: 1.8;color: #2A4347;}
.topusp00txt03{font-size: 18px;margin: 60px 0 0 0;line-height: 2.2;color: #333;}
.topusp00txt04{font-size: 28px;margin: 60px 0 0 0;line-height: 2.2;color: #333;}
.topusp00img{width: 130%;position: absolute;transform: translate(-50%, -50%);left: 50%;top: 50%;}
.topusp00img img{width: 100%;}

.topusp01{height: 100vh;position: relative;}
.topusp01 .bg{background-image: url("../imgs/top_usp01_bg.jpg");background-size: cover;height: 100vh;position: relative;}
.topusp02{height: 100vh;position: relative;}
.topusp02 .bg{background-image: url("../imgs/top_usp02_bg.jpg");background-size: cover;background-position: center center; height: 100vh;position: relative;}
.topusp03{height: 100vh;position: relative;}
.topusp03 .bg{background-image: url("../imgs/top_usp03_bg.jpg");background-size: cover;height: 100vh;position: relative;}
.topusp04{height: 100vh;position: relative;}
.topusp04 .bg{background-image: url("../imgs/top_usp04_bg.jpg");background-size: cover;height: 100vh;position: relative;}

.topusptxt02wrap{position: absolute;z-index: 2;width: 100%;color: #FFF;text-align: center;bottom: 0;right: 0;display: flex;justify-content: space-between;background-image: linear-gradient(0deg, rgba(0,0,0,0.95) 0%, rgba(0,0,0,0) 100%);padding: 120px 40px 50px;align-items: flex-end;}
.topusptxt02wrap.navy{background-image: linear-gradient(0deg, rgba(6, 52, 76,0.95) 0%, rgba(6, 52, 76,0) 100%);}
.topusptxt02{text-align: left;letter-spacing: 0.1em;}
.topusptxt02 h2{font-size: 34px;}
.topusptxt02 h3{font-size: 20px;margin-top: 15px;line-height: 1.8;}
.topusptxt03{width: 460px;}
.topusptxt03 a{color: #FFF;font-family: "EB garamond";font-size: 40px;width: 100%;width: 100%;display: block;line-height: 1;height: 100%;position: relative;letter-spacing: 0.1em;text-align: left;transition: opacity 0.3s ease-in-out;}
.topusptxt03 a:hover{opacity: 0.8;}
.topusptxt03 a::after{content: "";position: absolute;display: block;background-image: url("../common/imgs/obj_arrow01.svg");width: 463px;height: 52px;top:0;left: 0;transition: left 0.3s ease-in-out;}
.topusptxt03 a:hover::after{left:5px;}

/*　Information　*/

.top_information{max-width: 1020px;margin: 0 auto;padding: 80px 0;}
.top_information h6{font-family:"EB garamond";font-size: 24px;border-bottom: 1px solid rgba(87,82,78,0.50);color: #57524e;}
.top_information dl{margin: 30px 0 0 0;display: flex;justify-content: flex-start;flex-wrap: wrap;}
.top_information dt{width: 15%;font-family:"cinzel";font-size: 16px;letter-spacing: 0.1em;margin-bottom: 20px;padding-bottom: 20px;border-bottom: rgba(209,209,209,1.00) solid 1px;}
.top_information dd{width: 85%;font-size: 16px;margin-bottom: 20px;padding-bottom: 20px;border-bottom: rgba(209,209,209,1.00) solid 1px;}
.top_information h2{font-size: 16px;line-height: 1.6;margin-bottom: 10px;}
.top_information h3{font-size: 14px;line-height: 1.8;margin-top: -10px;}


@media screen and (max-width: 1600px) {
}

@media screen and (max-width: 768px) {

/* USP */
.topusp00{background-image: url("../imgs/top_usp00_bg_sp.jpg");background-size: cover;padding: 80px 0 120px;}
.topusp00inner{display: flex;max-width: 1100px;justify-content: space-between;margin: 0 auto;align-items: center;flex-wrap: wrap;}
.topusp00txt{width: 100%;text-align: center;order: 2;}
.topusp00txt01{font-size: 12vw;font-family: "EB garamond";line-height: 1;color: #2A4347;margin-top: 30px}
.topusp00txt02{font-size: 6vw;margin: 5px 0 0 4%;line-height: 1.8;color: #2A4347;width: 96%;}
.topusp00txt03{font-size: 3vw;margin: 20px 0 0 0;line-height: 2.2;color: #333;width: 100%}
.topusp00txt04{font-size: 5vw;margin: 20px 0 0 0;line-height: 2.2;color: #333;}
.topusp00img{width: 200%;position: absolute;transform: translate(-50%, -50%);left: 50%;top: 50%;}
.topusp00img img{width: 100%;}

.topusp01{height: 100svh;}
.topusp01 .bg{background-image: url("../imgs/top_usp01_bg_sp.jpg");background-size: cover;height: 100svh;position: relative;}
.topusp02{height: 100svh}
.topusp02 .bg{background-image: url("../imgs/top_usp02_bg_sp.jpg");background-size: cover; height: 100svh;position: relative; background-position: center 100%;}
.topusp03{height: 100svh;}
.topusp03 .bg{background-image: url("../imgs/top_usp03_bg_sp.jpg");background-size: cover;height: 100svh;position: relative;}
.topusp04{height: 100svh}
.topusp04 .bg{background-image: url("../imgs/top_usp04_bg_sp.jpg");background-size: cover;height: 100svh;position: relative;}


.topusptxt01l{margin: 0 0 0 10%;max-width: 1020px;padding-top: 20%;filter: drop-shadow(0 0 10px #000) drop-shadow(0 0 10px #000) drop-shadow(0 0 10px #000);width: 18%;}
.topusptxt01r{margin: 0 10% 0 auto;max-width: 1020px;padding-top: 20%;filter: drop-shadow(0 0 10px #000) drop-shadow(0 0 10px #000) drop-shadow(0 0 10px #000);text-align: right;width: 18%;}
.topusptxt02wrap{position: absolute;width: 100%;color: #FFF;text-align: center;bottom: 0;right: 0;display: flex;justify-content: space-between;background-image: linear-gradient(0deg, rgba(0,0,0,0.95) 0%, rgba(0,0,0,0) 100%);padding: 120px 0  30px 5%;align-items: flex-end;flex-wrap: wrap;
.topusptxt02wrap.navy{background-image: linear-gradient(0deg, rgba(6, 52, 76,0.95) 0%, rgba(6, 52, 76,0) 100%);}
padding-bottom: 95px;
}
.scene .prb { bottom:50px }
.topusptxt02{text-align: left;letter-spacing: 0.1em;}
.topusptxt02 h2{font-size: 4.5vw;line-height: 1.6;}
.topusptxt02 h3{font-size: 3vw;margin-top: 10px;line-height: 1.8;}
.topusptxt03{width: 100%;margin-top: 20px}
.topusptxt03 a{color: #FFF;font-family: "EB garamond";font-size: 6vw;width: 100%;width: 100%;display: block;line-height: 1;height: 100%;position: relative;letter-spacing: 0.1em;text-align: left;transition: opacity 0.3s ease-in-out;}
.topusptxt03 a:hover{opacity: 0.8;}
.topusptxt03 a::after{content: "";position: absolute;display: block;background-image: url("../common/imgs/obj_arrow01.svg");width: 70%;height: 40px;top:15%;left: 0;transition: left 0.3s ease-in-out;background-size:contain;}
.topusptxt03 a:hover::after{left:5px;}

/*　Information　*/

.top_information{max-width: 1020px;margin: 0 5%;padding: 40px 0;}
.top_information h6{font-family:"EB garamond";font-size: 24px;border-bottom: 1px solid rgba(87,82,78,0.50);color: #57524e;}
.top_information dl{margin: 30px 0 0 0;display: flex;justify-content: flex-start;flex-wrap: wrap;}
.top_information dt{width: 100%;font-family:"cinzel";font-size: 14px;letter-spacing: 0.1em;margin-bottom: 10px;padding-bottom: 0;border-bottom: none;}
.top_information dd{width: 100%;font-size: 16px;margin-bottom: 15px;padding-bottom: 15px;border-bottom: rgba(209,209,209,1.00) solid 1px;}
.top_information h2{font-size: 4vw;line-height: 1.6;margin-bottom: 10px;}
.top_information h3{font-size: 3vw;line-height: 1.8;}
}
