@charset "utf-8";

img { height:auto; }

.center._p,
.center2._p,
.center3._p { margin:0 auto; text-align:left; padding-left:15px; padding-right:15px; }
.center._p { max-width:1130px; }
.center2._p { max-width:830px; }
.center3._p { max-width:630px; }

.row._flex{ display:flex; flex-wrap:wrap; }
.row._flex::before,
.row._flex::after { display:none; }
.row._flex > * { float:none; }

html.translated-ltr #head_1 .translate_link { display:none; }
#head_1 .btn_wrap_dropin { display:table; border:1px solid #fff; border-radius:3px; overflow:hidden; margin-left:15px; }
#head_1 .btn_wrap_dropin > a { display:table-cell; vertical-align:middle; padding:2px 10px; font-size:12px; background:#fff; color:#49256b; }
@media (max-width:991px) {
	#head_1 .btn_wrap_dropin { position:relative; bottom:auto; width:auto; left:auto; }
}

@media (min-width:992px) {
	#head_navi .sub_navi { max-height:calc(100vh - 150px); overflow-y:auto; }
	#area._type2 #head .site_logo { top:50%; left:50%; transform:translate(-50%, -50%); width:140px; }
}
@media (max-width:991px) {
	#area._type2 #head:not(.fixed) #head_1 { min-height:90px; }
  #area._type2 #head:not(.fixed) .site_logo { max-width:100px; }
}

#main_image._type2 .slick-track { position:relative; display:flex; --top-offset:80px; }
#main_image._type2 .slick-track .unit { position:relative; float:none; height:auto; }
#main_image._type2 .slick-track .unit._contain::before { content:""; position:absolute; display:block; width:100%; height:100%; top:0; left:0; backdrop-filter:blur(20px); z-index:1; background:rgba(0,0,0,.2); }
#main_image._type2 .slick-track .unit._contain img { visibility:visible; object-fit:contain; object-position:center center; z-index:2; position:relative; height:calc(100% - var(--top-offset)); margin-top:var(--top-offset); }
@media (max-width:991px) {
	#main_image._type2 .slick-track { --top-offset:calc(max(20vw, 100px) - 53px); }
}

#main_image._type3 .unit { max-height:unset!important; }
#main_image._type3 .img_back { width:100%; height:0; padding-bottom:52.333%; }
@media (max-width:767px) {
	#main_image._type3 .img_back { padding-bottom:142.222%; }
}

#top_main_video { position:relative; text-align:left; max-height:calc(100vh - 8vw); overflow:hidden; }
#main_image_video { position:relative; line-height:1px; }
#main_image_video video { width:100%; }
@media (min-width: 576px){
	#top_main_video { height:40vw; }
	#top_main_video #main_image_video { top:-7vw; width:auto; }
}
@media (max-width: 575px){
	#top_main_video { height:auto; }
}
#no_1._type2 .unit_text { font-size:0.53em; }
#no_1._type2 img { height:auto; }
#no_1._type2 a:link,
#no_1._type2 a:visited { color:#FFF; }
@media (max-width: 900px) {
  #no_1 .deco:before { left:-20px; }
	#no_1 .deco::after { right:-20px; }
}
.unit_no1 { font-size:0.95em!important; }
#no_1 .disp_td .logo { position:relative; z-index:1; }

#top_award { padding:15px 0; background-color:#004F9D; }
#top_award .deco { position:relative; }
#top_award img { height:auto; }
#top_award .logo { position:relative; z-index:1; }
#top_award .top_award_text { height:100%; display:flex; flex-direction:column; justify-content:center; align-items:center; }
#top_award .top_award_text_title { font-weight:bold; line-height:1.4; font-size:1.2em; text-align:center; margin-bottom:10px; }
#top_award .top_award_text_comment { line-height:1.6; font-size:.9em; }
@media (min-width:768px) {
	#top_award .deco:before { content:""; position:absolute; top:0; left:-60px; width:100%; height:100%; background:url(../image/contents/top/no1_left.png) no-repeat left center / contain; }
	#top_award .deco:after  { content:""; position:absolute; top:0; right:-60px; width:100%; height:100%; background:url(../image/contents/top/no1_right.png) no-repeat right center / contain; }
}
@media (max-width:900px) {
	#top_award .deco:before { left:-20px; }
	#top_award .deco:after { right:-20px; }
}
@media (max-width:767px) {
	#top_award .logo img { width:160px; }
	
}


#campaign_banner_wrap:not(:has(#campaign_banner)) { display:none; }