@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Momo+Trust+Display&display=swap');
/* CSS Document */


/* ===================共通=================== */
button:hover {
    border-color: transparent !important;
    /* もしくは */
    border: none !important;
}
button {
  -webkit-tap-highlight-color: transparent;
}
.pc {
    display: block;
}
	
.sp {
    display: none;
}
.memo {
	    font-size: 1vw;
	display:inline-block;
	padding:0.4vw 0 0.4vw;
}
.fadeIn_up {
  opacity: 0;
  transform: translate(0, 30%);
  transition: 0.6s;
}
.fadeIn_up.is-show {
  transform: translate(0, 0);
  opacity: 1;
}
@media only screen and (max-width: 768px) {
.memo {
  	font-size: clamp(10px, 1.75vw, 15px);
	line-height: 1.1em;
}
}
@media only screen and (max-width: 500px) {
.pc {
    display: none;
}
.sp {
    display: block;
}
.fadeIn_up {
  opacity: 0;
  transform: translate(0, 10%);
  transition: 0.6s;
}
.fadeIn_up.is-show {
  transform: translate(0, 0);
  opacity: 1;
}
.memo {
  	font-size: clamp(10px, 3vw, 12px);
}
}



/* ======================================================================
見どころページ
====================================================================== */
/* == ファーストビュー == */
.fast {
	width:100%;
	padding: 6vw 0 2vw !important;
	background-image:url(https://boyslove.tokyo/wp-content/uploads/image/highlight/sora_a.webp);
	background-size: 100% auto;
	background-repeat: repeat-y;
	overflow: hidden;
}
.fast_contents {
	width:70%;
	margin:0 auto;
	text-align:center;
}
img.fast_img {
	width:90%;
}
#hall_b .fast {
	background-image:url(https://boyslove.tokyo/wp-content/uploads/image/highlight/sora_b.webp);
}
.page-id-2437 img.header-logo-img {
    filter: brightness(0) invert(1) drop-shadow(0 0 2px #fff899) drop-shadow(0 0 10px #fff899) !important;
}
@media only screen and (max-width: 500px) {
.fast {
    width: 100%;
    padding: 13vw 0 3vw !important;
}
.fast_contents {
	margin: 2% auto 2%;
    width: 100%;
}
}


/* == マップ == */
.hall_btn {
	width:100%;
	padding: 3vw 0; 
    z-index: 5;
	display:flex;
    justify-content: center;
    flex-direction: row;
    flex-wrap: wrap;
}
.hall_btn a.button_a {
	width:35%;
	display:block;
	margin: 0 1%;
	font-size: 2.2vw;
	padding: 1.2vw 0.5vw;
	border-radius:100px;
	color:#fff;
}
.button_a {
	position:relative;
}
.hall_btn_a.hall_btn_now {
	background-color:#ff760a;
}
.hall_btn_b.hall_btn_gray {
	background-color:#11b9ff;
}
.hall_btn_a.hall_btn_gray {
	background-color:#ff760a;
}
.hall_btn_b.hall_btn_now {
	background-color:#11b9ff;
}
.button_a.hall_btn_now::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  border-style: solid;
  border-width: 20px 10px 0 10px;
  border-color: #ff760a transparent transparent;
  translate: -50% 100%;
}
.button_a.hall_btn_b.hall_btn_now::after {
  border-color: #11b9ff transparent transparent;
}
.hall_btn_a span {
    display: inline-block;
    vertical-align: middle;
}
img.pin {
	position:absolute;
	width:3.5vw;
	height:auto;
	top:-10%;
	left:2vw;
	z-index: 100;
}
.map_warp {
	width:100%;
	margin: 0 auto;
	display:flex;
    justify-content: center;
    flex-direction: row;
    flex-wrap: wrap;
	z-index: 1;
}
.map_box {
	width:100%;
	background-color:#fff;
    position: relative;
	padding: 1vw 0 1.8vw;
    z-index: 8;
}
.map_box:before {
    position: absolute;
    content: "";
	background: #fff;
	-webkit-mask-image: url(https://boyslove.tokyo/wp-content/uploads/image/nami.svg);
    mask-image: url(https://boyslove.tokyo/wp-content/uploads/image/nami.svg);
    -webkit-mask-repeat: repeat-x;
    mask-repeat: repeat-x;
	-webkit-mask-size: auto 100%;
    mask-size: auto 100%;
	height: 6vw; 
	top: -1.9vw;
    left: 0;
    right: 0;
    z-index: -2;
    display: block;
	transform: scaleY(-1);
}
.map_box:after {
    position: absolute;
    content: "";
	background: #fff;
	-webkit-mask-image: url(https://boyslove.tokyo/wp-content/uploads/image/nami.svg);
    mask-image: url(https://boyslove.tokyo/wp-content/uploads/image/nami.svg);
    -webkit-mask-repeat: repeat-x;
    mask-repeat: repeat-x;
	-webkit-mask-size: auto 100%;
    mask-size: auto 100%;
	height: 6vw; 
    left: 0;
    right: 0;
    z-index: -2;
    display: block;
	bottom: -1.9vw;
}
.map {
	width:43vw;
}
.map img {
	width:100%;
	max-width:auto;
	filter: drop-shadow(0px 2px 6px rgb(114 145 186 / 50%));
}
.map_btn {
	width: auto;
	padding-left:2vw;
	display: flex;
    align-items: flex-start;
    justify-content: center;
    flex-direction: column;
	z-index: 2;
}
.map_btn a {
	background-color:#f00;
	padding:0.8vw 3vw 0.8vw 2vw;
	font-size:1.75vw;
	font-weight:900;
	border-radius:10px;
	color:#fff;
	letter-spacing:2px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin:0.5vw 0;
	line-height:1em;
	position:relative;
}
.map_btn a .map_text:after {
    content: "";
    width: 7px;
    height: 7px;
    border: 0;
    border-bottom: solid 3px #fff;
    border-right: solid 3px #fff;
    transform: rotate(45deg);
    position: absolute;
	transform: rotate(45deg) translateY(-25%);
    top: 0;
    right: 1.5vw;
    bottom: 0;
    margin: auto;
}
.map_btn a .number {
	width: 2.2vw;
	height: 2.2vw;
	padding: 1vw;
	margin-right:0.3vw;
	background-color: #7c1829;
	border-radius: 50%;
    display: flex;
    align-items: center;      /* 上下中央 */
    justify-content: center;  /* 左右中央 */
    box-sizing: border-box;
    flex-shrink: 0;           /* 丸が潰れるのを防ぐ */
    font-size: 1.2vw;         /* 数字の大きさを調整（必要に応じて） */
    color: #fff;
	letter-spacing: 0;
	line-height: 1;
}
.map_btn a .number.number_w {
    width: auto;
    height: auto;
	padding: 0.6vw;
}
.goannai {
	width:100%;
	text-align:center;
	z-index:10;
	margin :1vw auto 1.5vw;
}
.goannai img {
	display:block;
	width:53%;
	margin: 0 auto;
}
img.ashiato01 {
	display:inline-block;
	position:absolute;
	width:30%;
	bottom:-20%;
	right:0;
	z-index: -1;
}
#hall_b .map_btn a {
	font-size: 1.4vw;
    margin: 0.2vw;
	padding: 0.6vw 3vw 0.6vw 1.2vw;
}
#hall_b .map_btn {
    width: 40%;
    padding-left: 2vw;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-direction: row;
    z-index: 1;
    flex-wrap: wrap;
}
@media only screen and (max-width: 768px) {
.hall_btn a.button_a {
    width: 42%;
    font-size: 3.2vw;
    padding: 1.2vw 0.5vw;
}
img.pin {
    width: 4.5vw;
}
.map {
    width: 56vw;
}
.map_box {
    padding: 1.5vw 0 2vw;
}
.map_btn a {
    padding: 1vw 5vw 1vw 3vw;
    font-size:2.75vw;
}
.button_a.hall_btn_now::after {
    border-width: 1.5vw 1.5vw 0 1.5vw;
}
.map_btn a .number {
    width: 3.2vw;
    height: 3.2vw;
    padding: 1vw;
    margin-right: 0.5vw;
    font-size: 2vw;
}
.goannai img {
    width: 60%;
}
img.ashiato01 {
	width:35%;
	bottom:-20%;
}
#hall_b .map {
    width: 80%;
}
#hall_b .map_btn {
    width: 90%;
    margin: 1% auto 2%;
}
#hall_b .map_btn a {
    font-size: 1.8vw;
    margin: 0.4vw;
    padding: 0.6vw 4vw 0.6vw 2.2vw;
}
}
@media only screen and (max-width: 500px) {
.hall_btn a.button_a {
    width: 47%;
    font-size: 5vw;
}
.hall_btn {
	align-items: flex-end;
}
.hall_btn_gray {
	width: 40% !important;
    font-size: 4vw !important;
}
img.pin {
   width: 6vw;
	left: 0vw;
  }
.map {
	width: 90%;
}
.map img {
	filter: drop-shadow(0px 2px 3px rgb(114 145 186 / 50%));
}
.map_btn {
    flex-direction: row;
    flex-wrap: wrap;
    margin: 3% auto 2%;
}
.map_btn a {
    padding: 2% 8% 2% 3%;
    font-size: 3.3vw;
    margin: 1vw;
	letter-spacing: 1px;
}
.map_btn a .map_text:after {
    right: 7.5%;
}
.map_btn a .number {
     width: 6.2vw;
    height: 6.2vw;
    padding: 1vw;
    font-size: 3.5vw;
    margin-right: 0%;
}
.map_btn a .number.number_w {
    padding: 1.6vw;
}
.map_box {
    padding: 8.5vw 0 10vw;
}
.map_box:before {
    height: 9vw;
    top: -1.9vw;
}
.map_box:after {
    height: 9vw;
    bottom: -1.9vw;
}
.goannai img {
	width:85%;
	margin: 0 auto 3%;
}
img.ashiato01 {
	width:48%;
	bottom:-10%;
}
#hall_b .map {
    width: 90%;
}
#hall_b .map_btn {
    margin: 2% auto 2%;
}
#hall_b .map_btn a {
    font-size: 3.5vw;
    margin: 0.6vw;
    padding: 2% 9% 2% 2%;
}
}



/* == コンテンツ == */
.highlight_contents_warp {
	padding-top:3vw;
	width:100%;
	background-image:url(https://boyslove.tokyo/wp-content/uploads/image/highlight/michi01.webp);
	background-size: 100% auto;
	background-repeat: repeat-y;
	overflow: hidden;
}
.highlight_contents {
	width:70%;
	margin:0 auto;
}
.highlight_contents_box {
	width:62%;
	margin:5vw 0 0vw 0;
}
.right {
	display: flex;
    flex-direction: column;
    align-items: flex-end;
}
.white_box_layout {
	display:flex;	
}
.white_box {
	width:100%;
	background-color:#fff;
	border-radius:20px;
	margin-top: -2vw;
	padding :4vw 7vw 2.8vw 3.5vw;
	color: #af4154;
	position:relative;
	z-index: 1;
	box-shadow: 0px 2px 12px 0px rgb(114 145 186 / 50%);
}
.title_img_warp {
	text-align:center;
	z-index:10;
	display:block;
	width:100%;
	height:auto;
	margin:0 auto;
	position: relative;
}
img.title_img {
	display:block;
	width:auto;
	height:7.5vw;
	object-fit: contain;
	margin: 0 auto;
}
.h_img_wrap {
	text-align:center;
	/*padding-bottom:1vw;*/
	position:absolute;
	top:2vw;
	right:-17.5vw;
	width:22vw;
	height:auto;
	z-index: 2;
}
img.h_img {
	width:100%;
	height:auto;
	text-align:center;
	display: block;
	object-fit: cover;
}
.h_img_wrap.s_img {
	width:30vw;
	right:-25.5vw;
}
.right .h_img_wrap.s_img {
	left:-25.5vw;	
}
.h_img_wrap.s_img img.h_img {
	border:solid 6px #fff;
	filter: drop-shadow(rgba(114, 145, 186, 0.5) 0px 2px 6px);
}
.white_box .m_text {
	font-weight:900;
	font-size:2.7vw;
	line-height:1.3em;
	padding-bottom:0.7em;
	text-align:center;
}
.white_box .text {
	font-weight:800;
	font-size:1.3vw;
	line-height:1.6em;
	padding-bottom:0.7em;
}
.white_box .text.text_img {
	text-align:center;
	margin-top:2%;
}
.text_img img {
	width:80%;
	text-align:center;
	margin: 0 auto;
}
.text_img img {
	width:80%;
	text-align:center;
}
.text_img.icon img {
    width: 50%;
    text-align: center;
    margin: 0 auto;
}
.accent {
	font-weight:900;
	color:#ff4595;
}
.white_box a.button_b {
	width:100% !important;
}
.white_box a.button_b_layer {
	padding: .6em 2em .6em 2em !important;
	font-size: 1.2vw !important;
}
.white_box .a.button_b_layer span::before {
    height: 1.5vw;
    width: 1.5vw;	
}
.white_box .button_warp {
    margin: 1rem auto 0vw;
}
.right .h_img_wrap {
	left: -17.5vw;
}
.right .white_box {
    padding: 4vw 3.5vw 2.8vw 7vw;	
}
#hall_b .highlight_contents_warp {
	background-image:url(https://boyslove.tokyo/wp-content/uploads/image/highlight/michi02.webp);
}
#hall_b .white_box {
    box-shadow: 0px 2px 12px 0px rgb(29 61 103 / 50%);
}
#hall_b .white_box .m_text {
	font-size: 2.3vw;
}
#hall_b img.title_img {
	height:11.5vw;
}
@media only screen and (max-width: 768px) {
.highlight_contents {
    width: 85% !important;
}
.highlight_contents_box {
    width: 75% !important;
    margin: 8vw 0 0vw 0;
}
.h_img_wrap {
    right: -23.5vw;
    width: 30vw;
}
.right .h_img_wrap {
    left: -23.5vw;
}
img.title_img {
    height: 11.5vw;
}
.white_box {
    padding: 5vw 9vw 4.8vw 5.5vw;
}
.right .white_box {
    padding: 5vw 5.5vw 4.8vw 9vw;
}
.white_box .m_text {
    font-size: 3.8vw;
}
.white_box .text {
    font-size: 2.3vw;
   line-height: 1.5em;
}
.white_box a.button_b_layer {
    padding: 2vw 2vw 2vw 3vw !important;
    font-size: 2.2vw !important;
}
a.button_b_layer span::before {
    height: 3vw;
    width: 3vw;
}
#hall_b .white_box .m_text {
    font-size: 3.8vw;
}
#hall_b img.title_img {
    height: 16.5vw;
}
}
@media only screen and (max-width: 500px) {
.highlight_contents_warp {
    background-position: center top;
    background-size: 120% auto;		
}
.h_img_wrap {
    position: relative;
    width: 70%;
	margin: 0 auto 5%;
	right: 0%;
}
.right .h_img_wrap {
   left: 0%;
}
.highlight_contents {
    width: 85% !important;
}
.highlight_contents_box {
    width: 100% !important;
    margin: 10vw 0 0vw 0;
}
img.title_img {
    height: 15.5vw;
}
.white_box {
   padding: 9% 8.5% 10.5% 8.5%;
}
.right .white_box {
   padding: 9% 8.5% 10.5% 8.5%;
}
.h_img_wrap {
   width: 80%;
   margin: 0 auto 8%;
}
.white_box .text {
   font-size: clamp(12px, 4vw, 18px);
	letter-spacing: 1px;
    font-weight: 600;
   line-height: 1.6em;
}
.white_box .m_text {
   font-size: clamp(1.2rem, 6vw, 2rem);
   letter-spacing: 0.5px;
	border-bottom: dotted 3px #c5b3b3;
    padding-bottom: 0.8em;
    margin-bottom: 0.8em;
}
.white_box a.button_b_layer {
    font-size: 4vw !important;
    line-height: 1.1em;
}
a.button_b_layer span::before {
   height: 4vw;
   width: 4vw;
}
.h_img_wrap.s_img {
    width: 100%;
    right: 0;
}
.h_img_wrap.s_img img.h_img {
    border: solid 6px #fff;
    filter: drop-shadow(rgba(114, 145, 186, 0.5) 0px 2px 3px);
}
.text_img img {
    width: 100%;
}
.text_img.icon img {
    width: 75%;
}
#hall_b .highlight_contents_box {
    margin: 16vw 0 0vw 0;		
}
#hall_b .white_box .m_text {
    font-size: clamp(1.2rem, 6vw, 2rem);
}
#hall_b img.title_img {
    height: 26.5vw;
}
#hall_b .right .h_img_wrap.s_img {
    left: 0;
}
}




.next_hall {
	width:90%;
	margin:5% auto 8%;
}
.next_hall_text {
	text-align:center;
	font-weight:900;
	font-size:clamp(1.5em, 2.8vw, 4em);
	color: #af4154;
	line-height:1.4em;
}
.next_hall a.button_b {
	width:50% !important;
	background: linear-gradient(90deg, #465DAA, #465DAA 50%, #465DAA);
}
.next_hall a.button_a {
    width: 100%;
    background-image: none !important;
	background: #465DAA;
    border: solid 3.3px #af4154;
    color: #fff;
}
.next_hall a.button_b_layer {
    box-shadow: 0 4px 0 #af4154;
}
.aisaatsu_green {
    margin-top: 2%;
    width: auto;
    position: relative; /* 疑似要素の基準にする */
    z-index: 1;         /* 中身のimgを前面に出すため */
	text-align:center;
}
.aisaatsu_green::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(https://boyslove.tokyo/wp-content/uploads/image/highlight/happa.webp) repeat top left;
    background-size: 50%;
    clip-path: ellipse(100% 100% at 50% 100%);
    z-index: -1; /* 中身のimgの後ろに配置 */
}
img.aisaatsu_green_fukurou {
	width:65%;
	text-align:center;
	margin-bottom:8%;
}
#hall_b .next_hall_text {
	color:#fff;
}
#hall_b .next_hall a.button_a {
	background: #ff8a34;
}
@media only screen and (max-width: 768px) {
.next_hall a.button_b {
	width:70% !important;
}
.next_hall_text {
	line-height:1.3em;
}
img.aisaatsu_green_fukurou {
	width:80%;
}
}
@media only screen and (max-width: 500px) {
.next_hall_text {
	line-height: 1.5em;
	font-size: clamp(0.8em, 5vw, 2em);
}
.next_hall a.button_b {
    width: 95% !important;
}
.next_hall {
    width: 90%;
    margin: 10% auto 13%;
}
img.aisaatsu_green_fukurou {
    width: 95%;
}
}