@media screen and (max-width: 1400px){
  .page_latest-news .template-A ul{
    grid-template-columns: repeat(2, 1fr) !important;
  }
	
#logo img {	max-height: 66px;}	
	.years img {		max-height: 50px;}
	#header .screen {flex-wrap: wrap;justify-content: flex-start;}
	ul#main-menu {justify-content: flex-end;}
	ul#main-menu li a {
		padding: 10px 5px;}
	.right_top {width: 100%;}
}

@media screen and (max-width: 1200px){	
.template-C ul{   grid-template-columns: repeat(3, 1fr); gap: 2%; }
}

@media screen and (max-width: 960px){

html,body { font-size: 16px ; line-height:28px;		}
.screen{ padding:0 15px;}
#header{ position:  relative; min-height: 50px; z-index: 10;padding: 0px 0 0 0;  }

.breadcrumb__item:last-child {
  max-width: auto; 
}
.site-branding {

  padding: 10px 0 10px 0px;
}
#block_video li.video-right .video-right-list{ padding:0}
.history_area .screen{ padding: 0px;}
.primary-nav__menu-item {
  width: 100%; border-bottom: 1px solid #ddd;
}

.banner_title::before {clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%); }

 .banner_title h1 {
    padding: 160px 0 0px 0;
    opacity: 0;
  }
.banner_title::before {

  width: 100% !important;
  height: 155px !important; background-size: cover !important;
} 
.banner_title h1 {
  padding: 100px 0 20px 0 !important;
}
  
.banner_title::after{ display:none}
.inside_area #header{min-height: 80px;}
#header .screen {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: normal;
  gap: 0px;
  min-height: 0;
}

.site-header__fixable {
  align-items: center;
  width: 100%;
}

.site-header__inner__container {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0px 12px;
  width: 100%;
  min-width: 0;
  padding: 10px 0;
}

.site-branding {
  order: 1;

  min-width: 0;
  min-height: auto;
  margin:0;
  padding: 0;
  /* Push top-area + mobile-buttons + lang to the end of the row */

}


#logo img,
.site-branding__logo img {
  max-height: 58px;
  width: auto;
}

.history_area .view-more{
right: 30px;
}

.history_area .block-header{
  flex-direction: column;        align-items: flex-start;
}

.mobile-buttons {
  order: 3;
  flex: 0 0 auto;
}

.mobile-nav-button {
  flex-shrink: 0;
}



.region--top-area {
  display: flex;
  order: 2;
  margin: 0;
  min-height: 0;
  height: auto;
  max-height: none;
  padding: 5px 8px;
  background: none;
  flex: 0 0 auto;
  align-items: center;
  align-self: center;top: 20px;
    border-radius: 6px; right: 70px
}

body.is-overlay-active .region--top-area {
  display: flex;
  min-height: 0;
  height: auto;
  max-height: none;
}



.region--top-area .top_area ul li {
  margin: 0;
}

#block-olivero-languageswitcher {
  order: 4;
  flex: 0 0 auto;
}


#lang ul {
  display: flex;
  align-items: center;
  gap: 8px;
  height: 100%;
}

#block-olivero-views-block-popup-block-1 {
  order: 5;
  flex: 0 0 100%;
  width: 100%;
  max-height: 0;
  margin: 0;
  padding: 0;
  overflow: hidden;
  border: 0;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
}


.right_top{ margin-right: 0px; width: auto; margin-left: auto; order: 3;}
	
#main-menu {
    position: fixed !important;
    top: 0; 
	background:#404040f0  !important;
	padding:80px 10px;
    bottom: 0;
    width: 100%;
    transition: all 0.5s ease-in-out;
    max-width: none;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    z-index: 12;
            transform: translateX(-100%);
}
#menu-mask {
    display: none; /* 默认不显示 */
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5); /* 黑色半透明 */
    z-index: 2; /* 确保遮罩层位于其他内容上方 */
}
	
.title , .blocktitle , .sch_highlights b , #banner_title h1, .banner_title h1{  font-weight: 350;  margin:15px 0;  font-size:26px; line-height:32px; }
.individual_page h1 {
  font-size:26px; line-height:32px;
}
.sch_highlights .title::before {  top:23px;    }
	
.sch_highlights{ padding: 20px 0}
.sch_highlights ul {
  padding: 15px 0;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}

.bg_god_msg{ padding:0}
.bg_god_msg .contents{  width: calc(100% - 0px) ; margin:30px 0%;  padding:15px; }
	
ul#main-menu li a{ color:#fff;display: inline-block; padding: 20px 50px 20px 20px !important}
ul#main-menu li ul li a{  padding: 10px 0px 10px 0px !important; font-size:14px;}
ul#main-menu li ul li+li a{ border-top:1px solid #ddd;}
#main-menu.open{transform: translateX(0);}
	
#block_latest-news .blocktitle {
  margin-bottom: 40px;
}
#block_latest-news{
  padding: 20px clamp(12px, 4vw, 20px) 30px;
  overflow: hidden;
}


#block_latest-news .splide {
  clip-path: none;
  padding-bottom: 24px;
}
#block_latest-news .splide__track {
  padding-bottom: 0;
}
#block_latest-news .splide__list {
  rotate: none;
  transform: none;
  transform-origin: unset;
}
#block_latest-news .splide__slide {
  rotate: none;
  transform: none;
}


.home_zoneB {
  padding: 20px 0;
}
#lang ul{ margin:0; background:none}
#lang ul li{ margin: 0; background: none; }
#lang ul li+li{ margin: 0; }
	
.more-link a{ font-size: 15px; line-height: 19px;  }
	
.breadcrumb__content {
  margin: 0;
  padding-inline: 12px;
  padding-block: 4px 6px;
}
.breadcrumb::after {
  display: none;
}

.Block_A ul {  grid-template-columns: repeat(1, 1fr);  gap: 2%;}	
.template-A ul{   grid-template-columns: repeat(2, 1fr); gap: 2%; }
.template-B ul{   grid-template-columns: repeat(2, 1fr); gap: 2%; }
.template-C ul{   grid-template-columns: repeat(2, 1fr); gap: 2%; }

	
h1{ font-size:30px; line-height:38px;}
h2{ font-size:26px; line-height:34px;}
h3{ font-size:21px; line-height:30px;}
h4{ font-size:21px; line-height:30px;}
h5{ font-size:21px; line-height:30px;}
h6{ font-size:21px; line-height:30px;}

#block-sidebar-nav h2{ padding:	15px 0}
	
#main_content{width:100%}
#sidebar-nav{width:100%}
.view-more , .view-more2{ padding: 0px 0 ;}
.view-more{
  right: 0;
}
#block_latest-news .screen{ padding:0}
.home_zoneB .block-header{ padding:0 30px}
.home_zoneB  .screen{ padding:0}
#block_latest-news::after{ right:-90px;}
.useful-links ul{
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
} 
footer {

}

footer::before {
  width: 88px;
  height: 88px;
  transform: translate(-50%, -42%);
}

footer .block__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  position: relative;
  z-index: 1;
}

footer .copyright,
footer .power {
  text-align: center;
  width: 100%;
  float: none;
  margin: 0;
}

footer .copyright {
  line-height: 1.55;
  font-size: 13px;
  padding: 0 6px;
  word-wrap: break-word;
}

footer .power {
  font-size: 13px;
}

.cd-top {
  right: max(10px, env(safe-area-inset-right, 0px));
  bottom: max(10px, env(safe-area-inset-bottom, 0px));
  width: 46px;
  height: 46px;
}
.list-item .content {flex-direction: column;}
.list-item .content b { text-align: center}
.contact_area {
  padding:  0; width: 100%
}
.footer_bottom {
  padding: 20px 0 0 0;
}
.contact_info {

}

.contact_info ul {
  width: 100%;gap: 10px;
}

.contact_info ul li {
  margin: 0 0 10px 0;
  align-items: flex-start;
  flex-wrap: wrap;
  font-size: 16px;
  line-height: 1.45;
}
  
.contact_info ul li + li {
  width: 100%;
}

.contact_info ul li span {
  min-width: 96px;
  gap: 10px;
}

.contact_info ul li span::before {
  width: 22px;
  height: 22px;
}

.contact_info #contact_img {
  max-width: min(100%, 320px);
  width: auto;
  margin: 0 auto;
  align-self: center;
}

.contact_info ul li a {
  text-wrap: wrap;
  word-break: break-word;
}

.contact_info ul ul li + li {
  width: auto;
}

.contact_area::before {
  display: none;
}
	
.Block_A ul {
  grid-template-columns: repeat(1, 1fr);
  gap: 2%;
}


.slider-slogan {
  bottom: clamp(4%, 8vw, 12%);
  width: min(92%, 40rem);
  max-width: calc(100% - 24px);
  left: 50%;
  right: auto;
  transform: translateX(-50%);
  box-sizing: border-box;
}

.slider-slogan.slogan_left,
.slider-slogan.slogan_right {
  left: 50%;
  right: auto;
  transform: translateX(-50%);
}

.slider-slogan .slogan_text {
  font-size: clamp(0.95rem, 3.5vw, 1.2rem);
  line-height: 1.45;
  padding: 0.4em 0.65em;
  padding-left: 0.65em;
}

.slider-slogan .slogan_text::before {
  left: 0;
  width: min(150px, 58%);
  aspect-ratio: 2 / 1;
  transform: translateY(8%);
}

#block-olivero-breadcrumbs {
  margin-bottom: 0;
}
.sitemap-item ul {grid-template-columns: repeat(1, 1fr); gap: 15px;}
	
	
.template-A ul{   grid-template-columns: repeat(1, 1fr); gap: 2%; display: list-item; padding-bottom: 50px; }
.template-B ul{   grid-template-columns: repeat(1, 1fr); gap: 2%; display: list-item; padding-bottom: 50px; }
.template-C ul{   grid-template-columns: repeat(1, 1fr); gap: 2%; display: list-item; padding-bottom: 50px; }

.news-card a{overflow: hidden;  display: block;}
	


.banner_title h1{ padding:110px 0 20px 5% ; margin:0; z-index:1 } 
.banner_title h1::before { left:-46%; width:50%; height:1px;  bottom:30px;     }
.banner_title::afterr{ background-size: 70% auto}

#nonbanner_title { background: url(../images/web/bg_news.png) no-repeat bottom center; }
#nonbanner_title h1{  padding:120px 0 30px 5% ; color:var(--main-color) ; text-shadow: 0 0 0; } 
#nonbanner_title h1::before {background: var(--main2-color); bottom:43px;}

.sch_highlights b{ font-size:17px; line-height: 21px; margin:0}
.sch_highlights ul li span, .sch_highlights .boxing { font-size:15px; padding:10px 0; }  
	
#block_latest-news::before { display:none}
.region--breadcrumb .screen { padding:0; }
.page_arean::before{ top:0; }
.sidebar-nav .metismenu, .category ul {
  padding: 5px;
  font-size: 15px;
  line-height: 17px;
  margin: 20px 5px;}
 	
.breadcrumb {
background: #000000d1 !important;
    z-index: 2;
    position: relative;
    width: 100%;
    height: 50px;
    font-size: 13px;
    line-height: 18px;
}
#block-olivero-breadcrumbs {
  position: relative;
  top: auto;
  width: 100%;
  right: 0;
  padding: 0 0px;
}

#block_video {
  padding: 20px 0 40px;
}

/* #block_video .block-info .video-left figure iframe, #block_video .block-info .video-left figure img{
  position: relative;
} */


#block_video .block-header {
  flex-direction: column-reverse;
  align-items: stretch;
  gap: 16px;
  margin-bottom: 24px;
}

#block_video .left-buttons {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px 20px;
  width: 100%;
}

#block_video .left-buttons .view-more {
  padding: 0;
}

#block_video .video-title {

}

#block_video .video-title .blocktitle {
  margin: 0;
}

#block_video .video-title .editingAdd {
  position: static;
  top: auto;
}
#block_video .youtube-btn {
  margin: 8px 0 0 35px;
}
#block_video .Block_E ul.block-info,
#block_video ul.block-info {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

#block_video .Block_E ul {
  grid-template-columns: 1fr;
  grid-template-rows: none;
  row-gap: 16px;
  column-gap: 0;
}

#block_video .Block_E ul li:nth-child(1),
#block_video .Block_E ul li:nth-child(2),
#block_video .Block_E ul li:nth-child(3),
#block_video .Block_E ul li:nth-child(4) {
  grid-area: auto;
  width: 100%;
  max-width: 100%;
}

#block_video .block-info li:nth-child(2),
#block_video .block-info li:nth-child(3),
#block_video .block-info li:nth-child(4) {
  grid-column: auto !important;
  grid-row: auto !important;
  margin: 0 !important;
}

#block_video .block-info .video-left,
#block_video .block-info .video-right {
  width: 100%;
}

#block_video .block-info .video-right .video-right-list {
  gap: 12px;
}

#block_video .youtube-icon {
  font-size: 18px;
  padding: 0 0 0 52px;
}

#block_video .youtube-icon::before {
  width: 42px;
  height: 28px;
}
.sidebar-nav {
  margin: 0;
  padding:0;
  margin-bottom: 50px;
  position: relative;
}

.sidebar-nav::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 3px;
  border-radius: 2px;
  background-color: var(--main2-color);
}


.sidebar-nav-toggle {
  display: block;
  width: 100%;
  min-height: 48px;
  padding: 12px 44px 12px 16px;
  box-sizing: border-box;
  background: #fff;
  border: none;
  border-radius: 0;
  color: var(--main-color);
  font-size: 16px;
  font-weight: 600;
  font-family: inherit;
  text-align: center;
  cursor: pointer;
  position: relative;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.sidebar-nav-toggle:hover {
  background: #f0f0f0;
  color: var(--main-color);
}

.sidebar-nav-toggle:focus-visible {
  outline: 2px solid var(--main-color);
  outline-offset: 2px;
}

.sidebar-nav-toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 18px;
  width: 8px;
  height: 8px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: translateY(-62%) rotate(45deg);
  transition: transform 0.25s ease;
  pointer-events: none;
}

.sidebar-nav.is-open .sidebar-nav-toggle::after {
  transform: translateY(-20%) rotate(225deg);
}

.sidebar-nav .metismenu {
  display: none;
  padding:10px;
  margin-top: 6px;
}

.sidebar-nav.is-open .metismenu {
  display: block;
}

.sidebar-nav .menu-item a {
  text-align: center;
  padding: 12px 16px;
}

.sidebar-nav .menu-item.current a,
.sidebar-nav .menu-item.mm-active a {
  border-left: none;
  padding-left: 16px;
  font-weight: 700;
  color: #fff;
}
.sidebar-nav-toggle{
  display:block !important;
}
.sidebar-nav .menu-item a,
.sidebar-nav-toggle,
.sidebar-nav-toggle::after {
  transition: none;
}	

#block_latest-news .splide__arrow {
  width: 28px;
  height: 28px;
}


.splide__arrow--prev {
  left: -1.2em !important;
}

.splide__arrow--next {
  right: -1.2em !important;
}

.page_arean::before{ top:0; left:-50px; opacity:.1 }
	
	#block-olivero-100years { order: 2}	
	
	#main-menu::after { content: ""; background: url(../images/web/fav.png) center no-repeat;position: absolute;
    width: 150px;
    height: 150px;
    background-size: contain;
    left: 0;
    right: 0;
    margin: auto;
    bottom: 10%; }	
	.menu_arrow ul::before { display: none }
	.years img {
  max-height: 40px;
}
	
	input[type="checkbox"] + label, input[type="radio"] + label {  padding-inline-start: 0}
	
	.region--footer_top__inner > *, .region--footer_bottom__inner > * {
  margin-block-end: 0;
}
	
	.breadcrumb a { color: #fff}
	.breadcrumb { color:#fff}
	
	#block_video .Block_E {flex-wrap: wrap;}
	.motto_index { display: none}
	#block_video .block-info { width: 100%}
	
	.history .Album ul{    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 10px;}
	
	#main-menu-state:checked~.header_top,
  #main-menu.open~.header_top,
  body:has(#main-menu.open) .top_area {
    transform: translateX(0);
  }
  
  .top_area {
    position: fixed;
    top: auto;
    bottom: 0;
    left: 0;
    width: 100%;
    background: rgba(0, 0, 0, 0.3);
    padding: 15px;
    z-index: 13;
    transform: translateX(-100%);
    transition: all 0.5s ease-in-out;
    flex-direction: row;
    justify-content: center;
    gap: 0;
    height: auto;
  }
	
	#lang > button {background: rgba(0, 0, 0, 0.51);}
	
}


@media screen and (max-width: 576px){
	#header .screen { padding: 0 10px}
	.home_zoneB {background-size: 100%;}
	#logo img, .site-branding__logo img {    max-height: 48px;}
	.main-menu-btn {width: 40px;  height: 40px;}
	.region--top-area {top: 15px;right: 50px;}
	
}