@charset "utf-8";

/*=================================

introduction

=================================*/
.title { background-color:#fff; }
.title:before { content:none; }
.title h2 { padding:45px 0 60px; }
.title h2:after { bottom:30px; }
.title h2:before { bottom:30px; }

#container #main { /*margin-top:-150px;*/ }

#second_main_visual { position:relative; }
#second_main_visual img { object-position:center 35%; }
#second_main_visual:after { background-image:url(../img/introduction/t_introduction.png); background-size:210px 92px; background-position:top center;  content:" "; height:92px; position:absolute; top:30%; margin-top:0; right:20%; width:210px; z-index:10; }

#introduction { background-color:#fff; display:flex; flex:0 0 100%; flex-wrap:wrap; justify-content:center; padding:0; position:relative; }
#introduction #introduction_cont { background-color:#fff; flex:0 0 100%; padding:0 50px 50px; }
#introduction #introduction_cont .lead { margin-bottom:30px; text-align:center; }
#introduction #introduction_cont .lead span { line-height:1.6; }

/*--- main_menu ---*/
#introduction #introduction_cont ul.main_menu { display:flex; flex-wrap:wrap; justify-content:space-between; }
#introduction #introduction_cont ul.main_menu li { display:flex; justify-content:center; margin-top:30px; position:relative; width:calc(50% - 15px); }
#introduction #introduction_cont ul.main_menu li:nth-child(odd) { margin-right:30px; }
#introduction #introduction_cont ul.main_menu li:nth-child(even) { margin-right:0; }
#introduction #introduction_cont ul.main_menu li a { border:2px solid #eee; position:relative; }
#introduction #introduction_cont ul.main_menu li a dl { padding:10px; position:relative; }
#introduction #introduction_cont ul.main_menu li a dl dt {}
#introduction #introduction_cont ul.main_menu li a dl dt img { height:200px; object-fit:cover; max-width:500px; width:100%; opacity:0; -webkit-transition:opacity 3s; transition: opacity 3s; }
#introduction #introduction_cont ul.main_menu li a dl dt img.lazyloaded { opacity:1; }
#introduction #introduction_cont ul.main_menu li a dl dd { align-items:center; display:flex; justify-content:start; padding:30px 10px; position:relative; }
#introduction #introduction_cont ul.main_menu li a dl dd i { font-size:131%; }
#introduction #introduction_cont ul.main_menu li a dl dd span { font-size:139%; padding-left:10px; }
#introduction #introduction_cont ul.main_menu li a dl dd:after { color:#ccc; content:"\f054"; font-family: "Font Awesome 5 Free"; font-weight:900; font-size:85%; position:absolute; right:10px; top:50%; margin-top:-6px; }

/*--- floor_guide ---*/
#introduction #introduction_cont #floor_guide { margin-top:50px; }
#introduction #introduction_cont #floor_guide > ul { display:flex; flex-wrap:wrap; justify-content:space-between; margin-top:30px; }
#introduction #introduction_cont #floor_guide > ul > li { display:flex; flex:0 0 100%; flex-wrap:wrap; justify-content:space-between; position:relative; text-align:center; }
#introduction #introduction_cont #floor_guide > ul > li h4 { flex:0 0 100%; padding:10px 0 40px; text-align:left; }
#introduction #introduction_cont #floor_guide > ul > li > dl { flex:0 0 50%; }
#introduction #introduction_cont #floor_guide > ul > li > dl > dt { text-align:left; }
#introduction #introduction_cont #floor_guide > ul > li > dl > dt span { font-size:139%; font-weight:600; }
#introduction #introduction_cont #floor_guide > ul > li > dl > dd { margin:0; }
#introduction #introduction_cont #floor_guide > ul > li > dl > dd .map { position:relative; text-align:left; }
#introduction #introduction_cont #floor_guide > ul > li > dl > dd .map ul { height:100%; left:0; top:0; position:absolute; width:100%; }
#introduction #introduction_cont #floor_guide > ul > li > dl > dd .map ul li { position:absolute; }
#introduction #introduction_cont #floor_guide > ul > li > dl > dd .map ul li span { background-color:rgba(0,71,156,1); border-radius:50%; color:#fff; display:inline-block; font-size:125%; font-weight:600; height:26px; line-height:26px; text-align:center; width:26px; }

#introduction #introduction_cont #floor_guide ul li > dl > dd .map ul li:first-child { right:12%; top:32%; }
#introduction #introduction_cont #floor_guide ul li > dl > dd .map ul li:nth-child(2) { right:20%; top:76%; }
#introduction #introduction_cont #floor_guide ul li > dl > dd .map ul li:nth-child(3) { left:25%; top:17%; }
#introduction #introduction_cont #floor_guide ul li > dl > dd .map ul li:nth-child(4) { left:25%; top:36%; }
#introduction #introduction_cont #floor_guide ul li > dl > dd .map ul li:nth-child(5) { left:45%; top:25%; }
#introduction #introduction_cont #floor_guide ul li > dl > dd .map ul li:nth-child(6) { left:42%; top:8%; }

#introduction #introduction_cont #floor_guide > ul > li ul.photo { align-items:start; display:flex; flex:0 0 50%; flex-wrap:wrap; justify-content:space-between; }
#introduction #introduction_cont #floor_guide > ul > li ul.photo li { flex:0 0 45%; margin-top:30px; }
#introduction #introduction_cont #floor_guide > ul > li ul.photo li:first-child { margin-top:0; }
#introduction #introduction_cont #floor_guide > ul > li ul.photo li:nth-child(2) { margin-top:0; }
#introduction #introduction_cont #floor_guide > ul > li ul.photo li img { height:160px; object-fit:cover; max-width:300px; width:100%; }
#introduction #introduction_cont #floor_guide > ul > li ul.photo dl { border:1px solid #eee; padding:5px; }
#introduction #introduction_cont #floor_guide > ul > li ul.photo dl dt {}
#introduction #introduction_cont #floor_guide > ul > li ul.photo dl dd { align-items:center; display:flex; justify-content:start; padding:10px; }
#introduction #introduction_cont #floor_guide > ul > li ul.photo dl dd span:first-child { background-color:rgba(0,71,156,1); border-radius:50%; color:#fff; display:inline-block; font-size:85%; font-weight:600; height:19px; line-height:19px; text-align:center; width:19px; }
#introduction #introduction_cont #floor_guide > ul > li ul.photo dl dd span:nth-child(2) { font-size:116%; padding-left:7px; }

/*#introduction #introduction_cont #floor_guide > ul > li:first-child > dl > dd .map:before { background-image:url(../img/common/p_character_j.png); background-size:94px 232px; background-position:top center;  content:" "; height:232px; position:absolute; top:-60px; right:70px; width:94px; z-index:10; }*/
#introduction #introduction_cont #floor_guide > ul > li:first-child > dl > dd .map:after { background-image:url(../img/common/p_character_i.png); background-size:79px 232px; background-position:top center;  content:" "; height:232px; position:absolute; bottom:-20px; left:45px; width:79px; z-index:10; }

#introduction #introduction_cont #floor_guide > ul > li:nth-child(2) { border-top:1px solid #eee; margin-top:50px; padding-top:50px; }
#introduction #introduction_cont #floor_guide > ul > li:nth-child(2) > dl > dd .map ul li span { background-color:rgba(0,71,156,1); }

#introduction #introduction_cont #floor_guide ul li:nth-child(2) > dl > dd .map ul li:first-child { left:10%; top:12%; }
#introduction #introduction_cont #floor_guide ul li:nth-child(2) > dl > dd .map ul li:nth-child(2) { left:10%; top:27%; }
#introduction #introduction_cont #floor_guide ul li:nth-child(2) > dl > dd .map ul li:nth-child(3) { left:10%; top:54%; }
#introduction #introduction_cont #floor_guide ul li:nth-child(2) > dl > dd .map ul li:nth-child(4) { left:20%; top:86%; }
#introduction #introduction_cont #floor_guide ul li:nth-child(2) > dl > dd .map ul li:nth-child(5) { left:59%; top:60%; }

/*#introduction #introduction_cont #floor_guide > ul > li:nth-child(2) > dl > dd .map:before { background-image:url(../img/common/p_character_a.png); background-size:91px 232px; background-position:top center;  content:" "; height:232px; position:absolute; top:35px; right:130px; width:91px; z-index:10; }*/

/*#introduction #introduction_cont #floor_guide > ul > li:nth-child(2) > dl > dd .map:before { background-image:url(../img/common/p_character_h.png); background-size:104px 232px; background-position:top center;  content:" "; height:232px; position:absolute; top:30px; right:120px; width:104px; z-index:10; }*/

#introduction #introduction_cont #floor_guide > ul > li:nth-child(2) > dl > dd .map:before { background-image:url(../img/common/p_character_j.png); background-size:94px 232px; background-position:top center;  content:" "; height:232px; position:absolute; top:20px; right:110px; width:94px; z-index:10; }

#introduction #introduction_cont #floor_guide > ul > li:nth-child(2) > dl > dd .map:after { background-image:url(../img/common/p_character_g.png); background-size:120px 232px; background-position:top center;  content:" "; height:232px; position:absolute; bottom:-10px; left:355px;width:120px; z-index:10; }