/* AB模版网 Www.AdminBuy.Cn */
/* QQ：9490489 */
/* 仿站：Fang.AdminBuy.Cn */
/* 素材：Sc.AdminBuy.Cn */
body, html {
	font-family: 'Microsoft JhengHei';
	background-color: #eee;
	color: #3e3e3e;
	-webkit-tap-highlight-color: transparent
}
@font-face {
	font-family: iconfont;
	src: url(../fonts/font_891331_r7myxur4l9o.eot);
	src: url(../fonts/font_891331_r7myxur4l9o.eot) format('embedded-opentype'), url(../fonts/font_891331_r7myxur4l9o.woff) format('woff'), url(../fonts/font_891331_r7myxur4l9o.ttf) format('truetype'), url(../fonts/font_891331_r7myxur4l9o.svg#iconfont) format('svg')
}
@font-face {
	font-family: sikta;
	src: url(../fonts/fonteditor.eot);
	src: url(../fonts/fonteditor.eot) format('embedded-opentype'), url(../fonts/fonteditor.ttf) format('truetype'), url(../fonts/fonteditor.svg#iconfont) format('svg')
}
.iconfont {
	font-family: iconfont
}
img {
	max-width: 100%;
	width: auto;
	border: none
}
.w1200 {
	max-width: 100%
}
.flexbox {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap
}
.container {
	padding: 0 70px;
	padding-top: 115px
}
.case_cat a {
	border-color: rgba(55, 55, 55, .2)
}
.mobile {
	display: none
}
.footer, .header {
	padding: 0 70px
}
.logo {
	display: block
}
a, a:hover {
	color: inherit
}
.header {
	padding: 25px 70px;
	position: fixed;
	z-index: 300;
	width: 100%;
	left: 0;
	top: 0;
	background-color: #eee
}
.header .nav a {
	font-size: 18px;
	color: #333;
	display: block;
	padding: 8px 5px;
	position: relative;
	font-weight: 700
}
.clearfix::after {
	content: '';
	display: table;
	clear: both
}
.header .nav a.active {
	color: #002648
}
.header.active .right .row:first-of-type {
	height: 0;
	opacity: 0;
	overflow: hidden
}
.index-page .about .text .left .item span {
	display: block
}
.title.common .case_cat {
	width: auto;
	margin-left: 50px;
	margin-bottom: 0
}
.title.common .case_cat a {
	width: auto !important;
	font-size: 16px;
	margin: 0;
	border-color: #054274
}
.case-list.ss .title.common {
	margin-bottom: 50px
}
.title.common .case_cat a+a {
	margin-left: 20px
}
.title.common .case_cat a:nth-child(n+4) {
	margin-top: 0 !important
}
.header.active .right {
	padding-top: 10px
}
.case-page .sub_banner, .news-page .sub_banner {
	margin-bottom: 50px
}
.header.active .logo {
	width: 180px
}
.header.active .nav {
	padding-top: 5px
}
.header.active {
	-webkit-box-shadow: 0 0 15px rgba(0, 38, 72, .15);
	-moz-box-shadow: 0 0 15px rgba(0, 38, 72, .15);
	box-shadow: 0 0 15px rgba(0, 38, 72, .15);
	padding: 15px 70px
}
.header .nav a.active::before {
	content: '';
	position: absolute;
	width: 100%;
	height: 2px;
	left: 0;
	bottom: 0;
	background-color: #002648
}
.header-box {
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-moz-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between
}
.header .nav .item+.item {
	margin-left: 40px
}
.header .nav {
	padding-top: 15px
}
.search input {
	display: block;
	height: 28px;
	border: 1px solid rgba(0, 38, 72, .6);
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	border-radius: 30px;
	width: 200px;
	outline: 0;
	padding-left: 15px
}
.search {
	position: relative;
	width: 210px
}
.search .iconfont {
	position: absolute;
	line-height: 28px;
	right: 15px;
	color: rgba(0, 38, 72, .9);
	top: 0;
	font-size: 18px;
	cursor: pointer;
	padding: 0 5px
}
.header .right .second {
	font-size: 18px;
	color: #002648;
	margin-left: 10px;
	padding-left: 15px;
	position: relative;
	line-height: 30px;
	height: 30px
}
.header .right .second::before {
	content: '';
	position: absolute;
	width: 1px;
	height: 20px;
	background-color: #002648;
	opacity: .4;
	left: 0;
	top: 5px
}
.header .right .row {
	overflow: visible
}
.header .right .row+.row {
	color: #002648;
	font-size: 23px
}
.header .right .row .tel {
	width: 210px;
	line-height: 30px;
	font-size: 23px
}
.header .right .row+.row .iconfont {
	font-size: 25px;
	line-height: 30px
}
.header .right .second .iconfont {
	cursor: pointer
}
.form.common {
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	background-image: url(../images/dot-bg.png);
	color: #022c4e;
	text-align: center;
	-webkit-background-size: 100% auto;
	-moz-background-size: 100% auto;
	-o-background-size: 100% auto;
	background-size: 100% auto
}
.form.common .text {
	display: inline-block;
	padding: 30px 0;
	position: relative
}
.form.common .text h4 {
	position: absolute;
	font-size: 32px;
	font-weight: 700;
	top: 30px;
	left: 0;
	-webkit-transform: translateX(-100%);
	-moz-transform: translateX(-100%);
	-ms-transform: translateX(-100%);
	-o-transform: translateX(-100%);
	transform: translateX(-100%)
}
.form.common .text .title {
	font-size: 32px;
	text-align: left;
	padding-left: 55px;
	margin-bottom: 8px
}
.form.common .text h4 span:first-of-type {
	font-family: 'Times New Roman', Times, serif;
	font-size: 74px;
	line-height: 66px;
	font-weight: 400
}
.form.common .text h4 span {
	display: inline-block;
	vertical-align: top;
	margin-right: 10px
}
.form.common .text input,.form .flexbox select {
	height: 38px;
	border: 1px solid #022c4e;
	-webkit-border-radius: 40px;
	-moz-border-radius: 40px;
	border-radius: 40px;
	font-size: 14px;
	padding: 0 10px;
	outline: 0;
	background: 0 0
}

.form.common .text input+input {
	margin-left: 5px;
	margin-right: 35px
}
.form .flexbox select{
	margin-right: 5px;
}
 .form.common .text input::-webkit-input-placeholder {
 font-size: 13px;
 color: #054274;
 font-family: 'PingFang SC'
}
.form.common .text .btn {
	line-height: 40px;
	width: 140px;
	-webkit-border-radius: 40px;
	-moz-border-radius: 40px;
	border-radius: 40px;
	background-color: #022c4e;
	color: #fff;
	cursor: pointer
}
.form.common .text .btn .iconfont {
	font-size: 24px;
	font-weight: 100;
	vertical-align: middle;
	display: inline-block;
	margin-right: 10px
}
.index-page .case {
	padding: 50px 0;
	padding-top: 30px
}
.title.common {
	font-size: 30px;
	color: #033561;
	float: left;
	margin-bottom: 30px;
	font-weight: 700;
	font-family: sikta, 'Microsoft JhengHei'
}
.title.common.center {
	float: none;
	text-align: center
}
.title.common span {
	font-size: 30px;
	font-weight: 400
}
.index-page .box>.type {
	font-size: 20px;
	float: right;
	color: #022c4e;
	padding-top: 16px
}
.index-page .box>.type+* {
	clear: both
}
.case-list a {
	display: block;
	width: -webkit-calc((100% - 60px)/ 3 - 1px);
	width: -moz-calc((100% - 60px)/ 3 - 1px);
	width: calc((100% - 60px)/ 3 - 1px)
}
.case-list a+a {
	margin-left: 30px
}
.case-list a:nth-of-type(3n+1) {
	margin-left: 0
}
.case-list a:nth-of-type(n+4) {
	margin-top: 30px
}
.index-page .box>.type .item {
	padding: 0 35px;
	color: rgba(0, 38, 72, .4);
	line-height: 1;
	cursor: pointer;
	text-transform: uppercase;
	font-weight: 700
}
.index-page .box>.type .item.active {
	color: rgba(0, 38, 72, 1)
}
.index-page .box>.type .item+.item {
	border-left: 1px solid #222
}
.case-list a .text {
	border: 1px solid rgba(55, 55, 55, .2);
	padding: 40px 15px 20px;
	text-align: center;
	font-size: 16px;
	border-top: none;
	background-color: #fff
}
.case-list a .text .addr {
	height: 44px;
	line-height: 22px;
	color: #022c4e;
	opacity: .8
}
.case-list a .text .name {
	font-size: 18px;
	color: #222;
	margin-bottom: 15px
}
.case-list a .text .addr span {
	margin-right: 5px
}
.index-page .about {
	background-image: url(../images/about-bg.jpg);
	overflow: hidden
}
.index-page .about .title {
	position: absolute;
	font-size: 60px;
	color: rgba(0, 38, 72, .1);
	-webkit-writing-mode: vertical-lr;
	-ms-writing-mode: tb-lr;
	writing-mode: vertical-lr;
	text-transform: uppercase;
	bottom: -65px;
	font-weight: 700;
	left: -100px;
	padding-bottom: 17%;
	letter-spacing: 1px
}
.index-page .about .title::after {
	width: 2px;
	height: 40%;
	content: '';
	position: absolute;
	left: 50%;
	bottom: 0;
	background-color: rgba(0, 38, 72, .1)
}
.index-page .about .text {
	position: relative;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-moz-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between
}
.index-page .about {
	padding: 65px 7.5% 65px 11%
}
.index-page .about .text .left {
	padding-left: 5%;
	width: 57.8%;
	padding-top: 11%
}
.index-page .about .text .left .ty {
	font-size: 30px;
	color: #002648
}
.index-page .about .text .left .ty span {
	font-family: SimSun;
	font-size: 24px
}
.index-page .about .text .left h3 {
	font-size: 38px;
	color: #002648;
	margin: 20px 0
}
.index-page .about .text .left .info {
	line-height: 1.8;
	font-size: 14px;
	text-align: justify;
	margin-bottom: 55px
}
.index-page .about .text .left .info+.flexbox {
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-moz-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between
}
.index-page .about .text .left .item {
	color: rgba(0, 38, 72, .8);
	font-size: 16px;
	line-height: 25px;
	width: 45%
}
.index-page .about .text .left .item:nth-child(n+3) {
	margin-top: 20px
}
.index-page .about .text .left .item .iconfont {
	line-height: 50px;
	font-size: 42px;
	margin-right: 15px
}
.detail_same .case-list {
	padding-bottom: 0 !important
}
.box.btn {
	height: 3px;
	position: relative;
	margin-top: 50px
}
.box.btn.active::after {
	-webkit-transform: rotateX(180deg) translateX(-50%);
	-moz-transform: rotateX(180deg) translateX(-50%);
	transform: rotateX(180deg) translateX(-50%)
}
.box.btn::before {
	content: '';
	position: absolute;
	width: 100vw;
	left: 50%;
	margin-left: -50vw;
	top: 0;
	background-color: #002648;
	height: 100%
}
.box.btn::after {
	position: absolute;
	content: '';
	left: 50%;
	-webkit-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	transform: translateX(-50%);
	border-left: 18px solid transparent;
	border-right: 18px solid transparent;
	border-top: 18px solid #002648;
	-webkit-transform-origin: center top;
	-moz-transform-origin: center top;
	-ms-transform-origin: center top;
	-o-transform-origin: center top;
	transform-origin: center top;
	cursor: pointer;
	display: block;
	top: 0;
	z-index: 60
}
.box.seo {
	background-color: #f5f5f5;
	padding: 30px 70px;
	color: #a9a9a9;
	position: relative;
	z-index: 30
}
.box.seo .type {
	line-height: 46px;
	margin-bottom: 20px;
	position: relative
}
.box.seo .type a {
	position: absolute;
	right: 0;
	font-size: 16px
}
.box.seo .type a span {
	font-size: 20px;
	vertical-align: middle
}
.box.seo .type .item {
	width: 130px;
	background-color: #fff;
	text-align: center;
	font-size: 16px;
	cursor: pointer
}
.box.seo .type .item.active {
	color: #222
}
.box.seo .type .item+.item {
	margin-left: 15px
}
.box.seo .list {
	line-height: 30px
}
.box.seo .list .item a {
	display: inline-block;
	padding-right: 25px
}
.box.seo .list .item a:hover {
	text-decoration: underline;
	color: #333
}
.footer {
	background-image: url(../images/footerbg.png);
	background-position: center center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	padding: 85px 70px 35px;
	color: #fff;
	position: relative;
	z-index: 3
}
.footer .m a {
	display: block
}
.footer .l .logo_ {
	margin-bottom: 30px;
	display: block
}
.footer .l p {
	line-height: 1.7
}
.footer-box>.flexbox {
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-moz-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between
}
.footer-box .m .item {
	color: rgba(255, 255, 255, .6)
}
.footer-box .m .item+.item {
	margin-left: 75px
}
.footer-box .m .item .list {
	position: relative;
	padding-left: 30px
}
.footer-box .m .item .list::before {
	content: '';
	position: absolute;
	width: 20px;
	height: 2px;
	background-color: #fff;
	left: 0;
	top: 10px
}
.footer-box .m .item .n {
	font-size: 16px;
	color: #fff
}
.footer-box .m .item a+a {
	margin-top: 10px
}
.footer-box .m .item a:hover {
	color: #fff;
	text-decoration: underline
}
.footer-box .m .item .list+.list {
	margin-top: 30px
}
.footer-box .r {
	padding-right: 7%
}
.footer-box .r .input-box {
	width: 340px;
	position: relative
}
.footer-box .r .input-box input {
	height: 40px;
	width: 100%;
	border: 1px solid #fff;
	outline: 0;
	background: 0 0;
	padding: 0 15px;
	color: #fff;
	font-size: 15px
}
 .footer-box .r .input-box input::-webkit-input-placeholder {
 color: #fff;
 opacity: .5;
 font-family: 'PingFang SC'
}
 .footer-box .r .input-box input:-moz-placeholder {
 color: #fff;
 opacity: .5;
 font-family: 'PingFang SC'
}
 .footer-box .r .input-box input::-moz-placeholder {
 color: #fff;
 opacity: .5;
 font-family: 'PingFang SC'
}
 .footer-box .r .input-box input:-ms-input-placeholder {
 color: #fff;
 opacity: .5;
 font-family: 'PingFang SC'
}
 .footer-box .r .input-box input::placeholder {
 color: #fff;
 opacity: .5;
 font-family: 'PingFang SC'
}
.footer-box .r .d {
	font-size: 20px;
	font-weight: 700
}
.footer-box .r .t {
	font-size: 28px;
	font-weight: 700;
	margin: 5px 0 30px
}
.footer-box .r .t span {
	font-weight: 400;
	margin-right: 10px
}
.footer-box .r .input-box .iconfont {
	position: absolute;
	width: 50px;
	line-height: 40px;
	text-align: center;
	top: 0;
	right: 0;
	font-size: 20px;
	cursor: pointer
}
.footer-box .b {
	padding-top: 30px;
	color: rgba(255, 255, 255, .6);
	padding-right: 7%
}
.footer-box .b .s {
	text-align: right;
	line-height: 1.7
}
.footer-box .b .f {
	height: 20px;
	display: block;
	overflow: hidden
}
.footer-box .b .f a {
	padding: 0 15px;
	line-height: 20px;
	float: left;
	display: block
}
.footer-box .b .f a+a {
	border-left: 1px solid rgba(255, 255, 255, .6)
}
.footer-box .b .f {
	-webkit-align-self: start;
	-ms-flex-item-align: start;
	align-self: start
}
.footer-box .b a:hover {
	color: #fff
}
.case-list a .img-box img {
	width: 100%
}
.case-list {
	padding: 30px 6% 40px
}
.case-page .case-list {
	padding-top: 0;
	padding-bottom: 0
}
.width_1200 {
	position: relative;
	max-width: 1200px;
	margin: 0 auto
}
.about-page .box1 {
	padding: 85px 0 110px
}
.about-page .box1 .left {
	width: 50%;
	padding-right: 6%;
	text-align: justify;
	font-size: 16px
}
.about-page .box1 .right {
	width: 50%
}
.flexbox.between {
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-moz-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between
}
.about-page .box1 .left .n {
	color: #002648;
	font-size: 21px;
	font-weight: 700
}
.about-page .box1 .left .info {
	line-height: 1.7;
	margin: 12px 0 20px;
	opacity: .8
}
.about-page .box1 .left .type p {
	width: 115px;
	line-height: 36px;
	-webkit-border-radius: 36px;
	-moz-border-radius: 36px;
	border-radius: 36px;
	background-image: url(../images/lg.png);
	background-position: center center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	color: #fff;
	text-align: center;
	font-weight: 700
}
.about-page .box1 .left .type {
	margin-bottom: 35px
}
.about-page .box1 .left .m {
	color: #002648;
	font-weight: 700;
	line-height: 1.8;
	margin-top: 10px;
	margin-bottom: 30px
}
.about-page .box1 .left .list .item {
	padding-left: 44px;
	position: relative
}
.about-page .box1 .left .list .item span {
	display: block;
	width: 30px;
	height: 30px;
	background-color: #33516d;
	color: #fff;
	position: absolute;
	left: 0;
	top: 0;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	line-height: 30px;
	text-align: center
}
.about-page .box1 .left .list .item .title_ {
	line-height: 30px;
	color: #002648;
	font-weight: 700;
	font-size: 18px
}
.about-page .box1 .left .list .item .des {
	line-height: 1.7;
	margin-top: 3px;
	opacity: .8
}
.about-page .box1 .left .list .item+.item {
	margin-top: 30px
}
.about-page .box1 .title.common {
	margin-bottom: 65px
}
.about-page .box1 .right .img-box {
	position: relative;
	margin-bottom: 40px
}
.about-page .box1 .right .img-box .text {
	position: absolute;
	top: 9%;
	left: 40px;
	color: #fff;
	font-size: 22px;
	font-weight: 700;
	line-height: 1.5
}
.about-page .box1 .right .list .item {
	position: relative;
	padding-left: 16px;
	text-align: justify;
	opacity: .8;
	font-size: 16px
}
.about-page .box1 .right .list .item::before {
	content: '';
	position: absolute;
	width: 3px;
	height: 17px;
	background-color: #002648;
	left: 0;
	top: 3px;
	opacity: .8
}
.about-page .box1 .right .list .item+.item {
	margin-top: 15px
}
.ndc_top .des {
	float: left
}
.ndc_detail {
	clear: both
}
.about-page .box.btn {
	margin-top: 0
}
.contact-page .left {
	width: 50%
}
.contact-page .right {
	padding: 50px 5%
}
#map {
	width: 100%;
	height: 100%
}
#map img {
	max-width: inherit;
}
.contact-page .title.common {
	margin-top: 20px;
	margin-bottom: 50px
}
.contact-page .form {
	font-size: 18px;
	font-weight: 700;
	color: #333;
	width: 500px;
	clear: both
}
.contact-page .form input, .contact-page .form textarea {
	border: none;
	outline: 0;
	resize: none;
	display: block;
	font-family: inherit;
	font-size: inherit
}
.contact-page .form .input {
	border-bottom: 2px solid #333
}
.contact-page .right {
	width: 50%
}
.contact-page .right .item {
	position: relative
}
.contact-page .form input {
	height: 60px;
	padding-top: 20px;
	line-height: 40px;
	font-weight: 700;
	width: 100%;
	background-color: transparent
}
.contact-page .right .item label {
	position: absolute;
	font-size: 20px;
	line-height: 60px;
	width: 100%;
	height: 100%;
	-webkit-transition: all .5s;
	-o-transition: all .5s;
	-moz-transition: all .5s;
	transition: all .5s;
	cursor: pointer
}
.contact-page .right .item+.item {
	margin-top: 30px
}
.contact-page .right .item label span {
	color: red;
	font-size: 16px;
	font-family: sikta;
	margin-left: 10px
}
.contact-page {
	padding-top: 115px
}
.contact-page .right .item.focus label {
	font-size: 16px;
	line-height: 20px;
	opacity: .6;
	cursor: text
}
.contact-page .form textarea {
	padding-top: 25px;
	font-weight: 700;
	font-size: 18px
}
.submit {
	width: 160px;
	line-height: 60px;
	background-color: #333;
	color: #fff;
	text-align: center;
	font-size: 22px;
	font-weight: 700;
	margin-top: 60px;
	cursor: pointer
}
.submit:hover {
	opacity: .8
}
.slider {
	position: fixed;
	right: 0;
	font-size: 30px;
	color: #033561;
	bottom: 35px;
	z-index: 60;
	padding: 20px;
	background-color: #fff
}
.slider .list+p, .slider p+p {
	margin-top: 10px
}
.slider a {
	margin: 10px 0
}
.slider a, .slider p {
	width: 30px;
	height: 30px;
	display: block;
	line-height: 30px;
	cursor: pointer;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	position: relative
}
.slider .list {
	position: absolute;
	white-space: nowrap;
	background-color: #fff;
	font-size: 14px;
	line-height: 32px;
	padding: 0 10px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	-webkit-filter: drop-shadow(0 0 15px rgba(0, 0, 0, .1));
	filter: drop-shadow(0 0 15px rgba(0, 0, 0, .1));
	top: 35px;
	left: -10px;
	-webkit-transform: translateX(-100%) translateY(-50%);
	-moz-transform: translateX(-100%) translateY(-50%);
	-ms-transform: translateX(-100%) translateY(-50%);
	-o-transform: translateX(-100%) translateY(-50%);
	transform: translateX(-100%) translateY(-50%);
	display: none;
	z-index: 5
}
.slider .list:hover, .slider p.qq:hover+.list {
	display: block
}
.slider .list::before {
	content: '';
	position: absolute;
	border-left: 12px solid #fff;
	border-top: 10px solid transparent;
	border-bottom: 10px solid transparent;
	right: -8px;
	top: 50%;
	margin-top: -10px
}
.slider .list::after {
	width: 100%;
	height: 100%;
	position: absolute;
	content: '';
	right: -50px;
	top: 0;
	z-index: -1
}
.slider .list a {
	display: block
}
.slider .list a+a {
	border-top: 1px solid rgba(0, 38, 72, .1)
}
.slider p.sj {
	font-size: 16px;
	text-align: center;
	color: #fff;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	background-color: #033561
}
.mapbox {
	position: fixed;
	width: calc(50vw - 70px);
	height: 100vh;
	left: 50px;
	top: 0;
}
.case_cat a.active, .case_cat a:hover {
	background-color: #033561;
	color: #fff
}
.breadcrumb {
	display: none
}
.detail_same .title, .ndc_top .title {
	font-weight: 700
}
.ndc_top {
	padding-top: 50px;
	position: relative
}
.case-list .img-box {
	background-position: center center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover
}
.single_detail {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex
}
.single_detail .detail_content {
	width: 830px;
	overflow: hidden
}
.detail_same {
	width: 300px;
	margin-left: 70px;
	margin-top: 50px
}
 [disabled] {
 pointer-events: none
}
.casebox {
	padding: 0 6%
}
.ndc_detail img {
	display: inline-block
}
.noflex.single_detail {
	display: block
}
.noflex.single_detail .detail_content {
	width: 100%
}
.noflex .detail_same {
	margin-left: 0;
	margin-top: 0;
	width: 100%
}
.Bread_nav {
	text-align: right;
	padding-top: 30px
}
.Bread_nav+.ndc_top {
	padding-top: 30px
}
.Bread_nav a:hover {
	color: #054274;
	text-decoration: underline
}
.prev_next a {
	display: block;
	float: left;
	width: 50%;
	line-height: 40px
}
.prev_next {
	overflow: hidden;
	margin-top: 40px;
	border: 1px solid #054274;
	margin-bottom: 50px
}
.prev_next a+a {
	text-align: right
}
.prev_next span {
	display: inline-block;
	background-color: #054274;
	color: #fff;
	padding: 0 20px;
	margin-right: 10px
}
.prev_next a p {
	white-space: nowrap;
	overflow: hidden;
	-o-text-overflow: ellipsis;
	text-overflow: ellipsis
}
.prev_next a+a span {
	margin-left: 10px;
	margin-right: 0
}
.prev_next a+a {
	border-left: 1px solid #054274
}
.top_list {
	overflow: hidden
}
.top_list .left {
	width: 50%;
	position: relative;
	float: left
}
.top_list .left .ul {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%
}
.top_list .right {
	width: 50%;
	float: left;
	padding-left: 40px
}
.top_list .right li {
	height: 50px;
	border: 1px solid #bababa;
	overflow: hidden;
	position: relative
}
.top_list .left .img-box {
	background-position: center center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover
}
.top_list .left .li {
	opacity: 0;
	visibility: hidden;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%
}
.top_list .left .li.active {
	opacity: 1;
	visibility: visible
}
.top_list .left .li .info {
	position: absolute;
	line-height: 40px;
	padding: 0 20px;
	color: #fff;
	font-size: 16px;
	background-color: rgba(0, 0, 0, .6);
	width: 100%;
	left: 0;
	bottom: 0
}
.top_list .left .li .info .title {
	white-space: nowrap;
	overflow: hidden;
	-o-text-overflow: ellipsis;
	text-overflow: ellipsis
}
.top_list .right li .title {
	line-height: 48px;
	float: left;
	width: -webkit-calc(100% - 145px);
	width: -moz-calc(100% - 145px);
	width: calc(100% - 145px);
	color: #222;
	font-size: 16px;
	margin-left: 20px;
	white-space: nowrap;
	overflow: hidden;
	-o-text-overflow: ellipsis;
	text-overflow: ellipsis
}
.top_list .right li .t {
	font-size: 22px;
	line-height: 26px;
	color: #fff;
	width: 65px;
	text-align: center;
	background-color: #bababa;
	height: 48px;
	float: left
}
.top_list .right li .t span {
	font-size: 14px;
	display: block;
	line-height: 20px
}
.top_list .right li::before {
	line-height: 50px;
	content: '\e602';
	font-family: iconfont;
	width: 60px;
	text-align: center;
	right: 0;
	top: 0;
	color: #a9a9a9;
	position: absolute;
	font-size: 16px
}
.top_list .right li+li {
	margin-top: 14px
}
.top_list .right li:hover {
	border-color: #054274
}
.top_list .right li:hover .t {
	background-color: #054274
}
.top_list .right li:hover .title {
	color: #054274
}
.top_list .right li:hover::before {
	color: #054274
}
.news_list ul::after {
	content: '';
	display: table;
	clear: both
}
.news_list ul li {
	width: -webkit-calc((100% - 40px)/ 2);
	width: -moz-calc((100% - 40px)/ 2);
	width: calc((100% - 40px)/ 2);
	float: left;
	padding: 16px;
	background-color: #fff;
	-webkit-box-shadow: 0 0 15px rgba(55, 55, 55, .1);
	-moz-box-shadow: 0 0 15px rgba(55, 55, 55, .1);
	box-shadow: 0 0 15px rgba(55, 55, 55, .1)
}
._bg {
	background-color: #f8f8f8;
	padding-top: 1px;
	display: none
}
.news_list ul li .thum {
	width: 210px;
	float: left
}
.news_list ul li .info {
	width: -webkit-calc(100% - 245px);
	width: -moz-calc(100% - 245px);
	width: calc(100% - 245px);
	float: left;
	margin-left: 35px;
	padding-top: 10px;
	position: relative;
	padding-bottom: 5px
}
.news_list ul li a {
	display: block;
	position: relative
}
.news_list ul li .info .title {
	font-size: 18px;
	font-weight: 700;
	line-height: 32px;
	height: 64px;
	overflow: hidden;
	margin-bottom: 20px
}
.news_list ul li .info .t {
	color: #054274;
	opacity: .6
}
.news_list ul li .info .more {
	position: absolute;
	font-size: 16px;
	color: #bababa;
	border: 1px solid #bababa;
	padding: 0 10px;
	right: 0;
	bottom: 0;
	line-height: 25px
}
.news_list ul li a {
	overflow: hidden
}
.news_list ul li+li {
	margin-left: 40px;
	margin-bottom: 40px
}
.news_list ul li:nth-child(2n+1) {
	margin-left: 0
}
.news_list ul li .img {
	background-position: center center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover
}
.contact-page+.case-list {
	background-color: #fff;
	position: relative;
	z-index: 6;
	padding: 80px 6% 60px
}
.case-list.ss .title.common, .contact-page+.case-list .title.common {
	width: 100%
}
.single_detail .case-list {
	padding: 50px 0
}
._join2_list {
	width: 100%;
	height: auto;
	overflow: hidden
}
._join2_list ul li {
	background: #fff;
	position: relative;
	margin-bottom: 20px
}
._join2_list ul li .title {
	padding: 15px 20px;
	font-size: 18px;
	cursor: pointer;
	-webkit-transition: all .6s ease 0s;
	-o-transition: all .6s ease 0s;
	-moz-transition: all .6s ease 0s;
	transition: all .6s ease 0s;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	border-radius: 2px
}
._join2_list ul li .title.active {
	background: #faaf32;
	color: #fff
}
._join2_list ul li .title>span {
	float: right;
	font-size: 14px;
	margin-right: 40px;
	opacity: .8
}
._join2_list ul li .title i {
	width: 25px;
	height: 25px;
	display: block;
	-webkit-border-radius: 25px;
	-moz-border-radius: 25px;
	border-radius: 25px;
	background: rgba(0, 0, 0, .2);
	position: absolute;
	top: 13px;
	right: 20px;
	display: block;
	cursor: pointer
}
._join2_list ul li .title b {
	width: 25px;
	height: 25px;
	display: block;
	-webkit-border-radius: 25px;
	-moz-border-radius: 25px;
	border-radius: 25px;
	background: rgba(0, 0, 0, .2);
	position: absolute;
	top: 13px;
	right: 20px;
	opacity: 0;
	cursor: pointer
}
._join2_list ul li .title i:before {
	width: 15px;
	height: 2px;
	background: #fff;
	display: block;
	content: '';
	position: absolute;
	top: 11px;
	left: 5px;
	-webkit-transform: rotate(90deg);
	-moz-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	-o-transform: rotate(90deg);
	transform: rotate(90deg)
}
._join2_list ul li .title.active i::before {
	display: none
}
._join2_list ul li .title i:after {
	width: 15px;
	height: 2px;
	background: #fff;
	display: block;
	content: '';
	position: absolute;
	top: 11px;
	left: 5px;
	-webkit-transform: rotate(0);
	-moz-transform: rotate(0);
	-ms-transform: rotate(0);
	-o-transform: rotate(0);
	transform: rotate(0)
}
._join2_list ul li .title b:after {
	width: 15px;
	height: 2px;
	background: #fff;
	display: block;
	content: '';
	position: absolute;
	top: 11px;
	left: 5px;
	-webkit-transform: rotate(0);
	-moz-transform: rotate(0);
	-ms-transform: rotate(0);
	-o-transform: rotate(0);
	transform: rotate(0)
}
._join2_list ul li .detail {
	background: #f5f5f5;
	padding: 20px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	display: none
}
._join2_list ul li .detail_bottom {
	width: 100%;
	height: auto;
	line-height: 1.8;
	padding: 15px 0 20px
}
._join2_list ul li .detail_bottom p {
	margin-bottom: 10px
}
.ccc.w1200 {
	position: relative;
	z-index: 30;
	background-color: #eee;
	width: 100%;
	max-width: unset;
	padding: 80px -webkit-calc((100% - 1200px)/ 2) 0;
	padding: 80px -moz-calc((100% - 1200px)/ 2) 0;
	padding: 80px calc((100% - 1200px)/ 2) 0
}
.ccc.w1200 .case-list {
	padding: 40px 0
}
._join2_list ul li .title.active {
	background-color: #054274
}
.hotel-page .sub_title p {
	opacity: 1;
	text-align: center;
	float: none
}
.hotel-page .sub_title {
	overflow: hidden;
	display: none
}
.hotel-page {
	background-color: #eee
}
.hotel-page .w1200 {
	width: 100%;
	max-width: 1550px
}
.slider.eee {
	background-color: #eee
}
.case-list.ss {
	padding-left: 0;
	padding-right: 0
}
.hotel-page .case-list {
	padding-top: 50px
}
.box.seo .list .item {
	display: none
}
.box.seo .list .item.active {
	display: block
}
.w1200 {
	padding-bottom: 50px
}
.w1200+.case-list {
	padding-top: 0
}
._join2_list ul li {
	margin-bottom: 0
}
._join2_list ul li+li {
	margin-top: 20px
}
.index-page .banner+.form.common .text h4 {
	-webkit-transform: translateX(-80%);
	-moz-transform: translateX(-80%);
	-ms-transform: translateX(-80%);
	-o-transform: translateX(-80%);
	transform: translateX(-80%)
}
.index-page .banner .text {

	width: 100%;
	border-radius: 150px;
}
.index-page .banner {
	position: relative;
}
.index-page .banner .text .img-box {
	background-position: center center;
	background-repeat: no-repeat;
}
.index-page .banner .text .img-box img{
	max-width: 100%;
	width: 100%;
	height: clamp(240px, 32vw, 480px);
	object-fit: cover;
	object-position: center;
	border-radius: 8px;
}
.index-page .about .text .right {
	width: 36.9%
}
 @media only screen and (max-width:1800px) {
.logo {
	width: 250px
}
.index-page .banner .text .img-box {
	background-position: center center;
	background-repeat: no-repeat;
	-webkit-background-size: 100% auto;
	-moz-background-size: 100% auto;
	-o-background-size: 100% auto;
	background-size: 100% auto
}
.header .nav .item+.item {
	margin-left: 30px
}
.index-page .box>.type .item {
	padding: 0 20px
}
.footer-box .b,  .footer-box .r {
	padding-right: 3%
}
}
 @media only screen and (max-width:1600px) {
.footer-box .m .item+.item {
	margin-left: 45px
}
.footer-box .r .input-box {
	width: 240px
}
.header {
	padding: 25px 40px
}
.header.active {
	padding: 15px 40px
}
.header .right .row .tel {
	font-weight: 700;
	font-size: 17px;
	line-height: 25px;
	width: 160px
}
.header .right .row .tel .iconfont {
	font-weight: 400;
	font-size: 20px
}
.header .nav .item+.item {
	margin-left: 20px
}
.search input {
	width: 150px
}
.search {
	width: 160px
}
.logo {
	width: 200px
}
.index-page .about {
	padding: 65px 3.5% 65px 9%
}
.index-page .about .text .left {
	padding-top: 0
}
.index-page .about .text .left h3 {
	font-size: 32px
}
.title.common {
	font-size: 24px
}
.title.common span {
	font-size: 24px
}
.index-page .box>.type {
	padding-top: 8px;
	font-size: 17px
}
.case-list a .text .name {
	margin-bottom: 5px;
	font-size: 16px
}
.case-list a .text {
	font-size: 14px
}
.case-list a .text {
	padding-top: 30px
}
.form.common .text input+input {
	margin-left: 15px;
	margin-right: 20px
}
.form.common .text h4 {
	-webkit-transform: translateX(-65%);
	-moz-transform: translateX(-65%);
	-ms-transform: translateX(-65%);
	-o-transform: translateX(-65%);
	transform: translateX(-65%);
	top: 28px
}
.form.common .text .title {
	font-size: 29px
}
.index-page .banner+.form.common .text input {
	width: 156px
}

}
 @media only screen and (max-width:1400px) {
.header.active .logo,  .logo {
	width: 160px
}
.header .right .second {
	font-size: 16px
}
.header .nav {
	padding-top: 5px
}
.header {
	padding: 20px 40px
}
.container {
	padding-top: 100px
}
.header.active .right {
	padding-top: 5px
}
.header.active .nav {
	padding-top: 0
}
}
 @media only screen and (max-width:1350px) {
.search {
	width: 130px
}
.search input {
	width: 120px
}
.header .right .row .tel {
	width: 130px;
	font-size: 14px
}
.header .nav .item+.item {
	margin-left: 15px
}
.header .nav a {
	font-size: 17px
}
.title.common span {
	font-size: 18px
}
.title.common {
	font-size: 20px
}
.index-page .box>.type .item {
	padding: 0 15px
}
.footer-box .r .input-box {
	width: 200px
}
.slider {
	padding: 15px 10px
}
.container {
	padding-left: 50px;
	padding-right: 50px
}
.footer-box .r .t {
	font-size: 22px
}
}
 @media only screen and (max-width:1200px) {
.mobile {
	display: block
}
.header .nav {
	display: none
}
.header .right {
	display: none
}
.header,  .header.active {
	padding: 15px 40px
}
.header .logo,  .logo {
	width: 180px
}
.menu-btn {
	position: fixed;
	width: 40px;
	height: 40px;
	top: 17px;
	z-index: 500;
	right: 17px
}
.menu-btn span {
	width: 40px;
	height: 3px;
	display: block;
	left: 0;
	top: 19px;
	background-color: #054074;
	-webkit-transition: all .5s;
	-o-transition: all .5s;
	-moz-transition: all .5s;
	transition: all .5s;
	position: absolute
}
.menu-btn span:nth-child(1) {
	top: 8px
}
.menu-btn span:nth-child(3) {
	top: 30px
}
.mobile.cover {
	position: fixed;
	width: 100vw;
	height: 100vh;
	left: 0;
	top: 0;
	z-index: 200;
	background-color: #fff;
	opacity: 0;
	visibility: hidden
}
.mobile.cover .nav {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-moz-box-orient: vertical;
	-moz-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-moz-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-moz-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	height: 100%;
	font-size: 22px;
	color: #054274;
	font-weight: 700;
	touch-action: none
}
.mobile.cover .tel {
	font-size: 20px;
	text-align: center;
	position: absolute;
	left: 0;
	bottom: 5vw;
	width: 100%;
	color: #054074
}
.mobile.cover .nav .item+.item {
	margin-top: 3vw
}
.mobile.cover .nav .item {
	position: relative
}
.mobile.cover .nav .item a {
	display: block
}
.mobile.cover .nav .item a.active {
	opacity: 1
}
.mobile.cover .nav .item a.active::before {
	content: '';
	position: absolute;
	width: 100px;
	height: 2px;
	background-color: #054074;
	left: 50%;
	margin-left: -50px;
	bottom: -10px
}
body.open .mobile.cover {
	opacity: 1;
	visibility: visible
}
.container {
	padding: 0 3vw;
	padding-top: 78px
}
body.open .menu-btn span:nth-child(1) {
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
	top: 19px
}
body.open .menu-btn span:nth-child(3) {
	-webkit-transform: rotate(-135deg);
	-moz-transform: rotate(-135deg);
	-ms-transform: rotate(-135deg);
	-o-transform: rotate(-135deg);
	transform: rotate(-135deg);
	top: 19px
}
body.open .menu-btn span:nth-child(2) {
	-webkit-transform: rotate(-90deg) scaleX(0);
	-moz-transform: rotate(-90deg) scaleX(0);
	-ms-transform: rotate(-90deg) scaleX(0);
	-o-transform: rotate(-90deg) scaleX(0);
	transform: rotate(-90deg) scaleX(0)
}
.index-page .about .title {
	display: none
}
.index-page .about .text .left {
	padding-left: 0
}
.index-page .about {
	padding: 50px 5%
}
.index-page .about .text .left h3 {
	font-size: 28px;
	margin-top: 5px
}
.index-page .about .text .left .info {
	margin-bottom: 20px
}
.index-page .about .text .left .item {
	width: 48%
}
.box.seo {
	padding: 50px 3vw
}
.footer .m {
	display: none
}
.case-list {
	padding: 30px 0 40px
}
.casebox {
	padding: 0
}
.case_cat {
	font-size: 0;
	-webkit-text-size-adjust: none
}
.case_cat a {
	font-size: 14px;
	width: 19%;
	margin: 0 .5%
}
.case_cat a:nth-child(n+6) {
	margin-top: 10px
}
.top_list .right {
	display: none
}
.top_list .left {
	width: 100%
}
.top_list .left .li {
	position: relative;
	opacity: 1;
	visibility: visible
}
.about-page .box1 .left .type p:nth-child(4) {
	margin-top: 20px
}
.mapbox {
	position: relative;
	width: 100%;
	height: 35vh;
	left: 0
}
.contact-page .left {
	width: 100%
}
.contact-page .right {
	padding: 50px 3vw;
	width: 100%
}
.contact-page .form {
	width: 100%
}
.ccc.w1200 {
	padding: 3vw
}
}
 @media only screen and (max-width:768px) {
.index-page .banner+.form.common .text h4 {
	-webkit-transform: none;
	-moz-transform: none;
	-ms-transform: none;
	-o-transform: none;
	transform: none;
	font-size: 24px;
	top: 10px
}
.form.common .text h4 {
	-webkit-transform: none;
	-moz-transform: none;
	-ms-transform: none;
	-o-transform: none;
	transform: none;
	font-size: 24px;
	top: 25px
}
.index-page .banner+.form.common .text h4 span:first-of-type {
	font-size: 50px;
	line-height: 1
}
.form.common .text h4 span:first-of-type {
	font-size: 34px;
	line-height: 1
}
.form.common .text .title {
	font-size: 20px;
	font-weight: 700
}
.form.common .text h4 span {
	vertical-align: text-bottom
}
.case-list a {
	display: block;
	width: -webkit-calc((100% - 20px)/ 2);
	width: -moz-calc((100% - 20px)/ 2);
	width: calc((100% - 20px)/ 2)
}
.case-list a+a {
	margin-left: 20px
}
.case-list a:nth-of-type(n+4) {
	margin-left: 20px
}
.case-list a:nth-of-type(2n+1) {
	margin-left: 0
}
.case-list a:nth-of-type(n+3) {
	margin-top: 20px
}
.form.common .text input,  .index-page .banner+.form.common .text input {
	width: 160px
}
.index-page .box>.type .item {
	padding: 0 15px
}
.index-page .box>.type {
	padding-top: 12px
}
.index-page .about .text .left h3 {
	font-size: 22px
}
.index-page .about .text .left .info+.flexbox {
	position: absolute;
	width: 100%;
	bottom: -115px
}
.index-page .about .text .left .item {
	font-size: 14px;
	line-height: 20px
}
.index-page .about .text .left .item .iconfont {
	line-height: 40px;
	font-size: 32px
}
.news_list ul li {
	width: 100%
}
.news_list ul li+li {
	margin: 0;
	margin-top: 20px
}
.about-page .box1 .left {
	width: 100%;
	padding-right: 0
}
.about-page .box1 .left .type p:nth-child(4) {
	margin-top: 0
}
.about-page .box1 {
	padding: 50px 0
}
.about-page .box1 .right {
	width: 100%;
	padding-top: 40px
}
.about-page .box1 .right .img-box {
	text-align: center;
	height: 120px;
	overflow: hidden
}
.about-page .box1 .right .img-box>img {
	display: inline-block;
	width: 200%;
	-webkit-filter: blur(15px);
	filter: blur(15px);
	max-width: unset;
	position: relative;
	left: -25%;
	top: -25%
}
.about-page .box1 .right .img-box .text {
	left: 0;
	width: 100%;
	top: 27px
}
.contact-page {
	padding-top: 78px
}
}
 @media only screen and (max-width:600px) and (orientation:portrait) {
.slider p.qq {
	display: none;
}
.header,  .header.active {
	padding: 10px 3vw
}
.slider a {
	margin: 0
}
input {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none
}
.title.common .case_cat {
	margin-left: 0;
	width: 100%
}
.detail_same .title,  .ndc_top .title {
	font-size: 18px
}
.backup {
	display: none
}
.about-page .box1 {
	padding-bottom: 0
}
.title.common .case_cat a {
	font-size: 14px;
	width: 49% !important
}
.title.common .case_cat a+a {
	margin-left: 0
}
.header .logo,  .logo {
	width: 120px
}
.title.common .case_cat a:nth-child(n+3),  .title.common .case_cat a:nth-child(n+4) {
	margin-top: 8px !important
}
.case-list.ss .title.common {
	border: none
}
.case-list.ss .title.common>p {
	border-bottom: 1px solid #054074;
	padding-bottom: 10px;
	width: 100%;
	margin-bottom: 20px
}
.case-list.ss .title.common {
	margin-bottom: 20px
}
.menu-btn {
	top: 5px
}
.menu-btn span {
	width: 34px;
	left: 3px
}
.mobile.cover .nav {
	font-size: 18px
}
.mobile.cover .nav .item+.item {
	margin-top: 5vw
}
.slider {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
	bottom: 0;
	-webkit-justify-content: space-around;
	-ms-flex-pack: distribute;
	justify-content: space-around;
	z-index: 61;
	padding: 15px;
	-webkit-box-shadow: 0 0 15px rgba(55, 55, 55, .25);
	-moz-box-shadow: 0 0 15px rgba(55, 55, 55, .25);
	box-shadow: 0 0 15px rgba(55, 55, 55, .25)
}
.slider .list+p,  .slider p+p {
	margin: 0
}
.container {
	padding: 52px 3vw 50px
}
.container.case-page {
	padding-bottom: 0
}
.slider .qq+.qq {
	display: none
}
.case-list.ss,  .hotel-page .case-list {
	padding-bottom: 0
}
.container.index-page {
	padding: 52px 0 30px
}
.index-page .banner {
	width: 100vw
}
.breadcrumb+.w1200 {
	padding-bottom: 0
}
.index-page .banner .text .img-box {
	background-position: center center;
	background-repeat: no-repeat;
	-webkit-background-size: 160% auto;
	-moz-background-size: 160% auto;
	-o-background-size: 160% auto;
	background-size: 160% auto;
	position: relative;
	height: 100%
}
.index-page .case {
	padding: 50px 3vw
}
.case-list a {
	width: 100%
}
.case-list a+a,   .case-list a:nth-of-type(n+3) {
	margin-left: 0;
	margin-top: 3vw
}
.case-list a:nth-of-type(n+4) {
	margin-left: 0
}
.form.common .text .btn {
	width: 70vw;
	margin-top: 3vw
}
.form.common .text input,  .index-page .banner+.form.common .text input {
	width: 70vw;
	background-color: #fff
}
.form.common .text input+input {
	margin: 0;
	margin-top: 3vw
}
.form.common .text .flexbox {
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-moz-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center
}
.index-page .banner+.form.common .text h4 span:first-of-type {
	font-size: inherit
}
.form.common .text .title {
	font-size: 16px
}
.form.common .text h4 span:first-of-type {
	font-family: inherit;
	font-size: inherit;
	font-weight: 700
}
.form.common .text h4 span {
	vertical-align: unset;
	margin-right: 5px
}
.form.common .text h4 {
	top: auto;
	position: relative;
	margin-bottom: 1vw
}
.form.common .text .title {
	text-align: center;
	font-weight: 400;
	margin-bottom: 15px
}
.index-page .banner+.form.common .text h4 {
	top: auto
}
.form.common .text {
	padding: 15px 0 25px
}
.title.common {
	float: none;
	text-align: center;
	margin-bottom: 10px;
	border-bottom: 1px solid #054274;
	padding-bottom: 10px
}
.index-page .box>.type .item {
	padding: 0
}
.index-page .box>.type {
	float: none;
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-moz-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin-bottom: 20px
}
.title.common,  .title.common span {
	font-size: 20px
}
.index-page .about {
	padding: 50px 3vw
}
.index-page .about .text .left {
	width: 100%
}
.index-page .about .text .left .info+.flexbox {
	position: relative;
	bottom: auto
}
.index-page .about .text .left .item:nth-child(n+3) {
	margin-top: 0
}
.index-page .about .text .left .item span {
	display: inline
}
.index-page .about .text .left .item {
	width: 100%;
	line-height: 40px
}
.index-page .about .text .left .item .iconfont {
	font-size: 24px
}
.index-page .about .text .right {
	width: 100%;
	margin-top: 30px
}
.index-page .box>.type .item+.item {
	border-left: none
}
.box.seo {
	display: none
}
.box.btn {
	margin-top: 20px
}
.box.btn {
	padding-bottom: 40px
}
.box.btn::before {
	height: 3px
}
.footer {
	padding: 40px 3vw 60px
}
.footer form {
	display: none
}
.footer .l .logo_ {
	width: 200px;
	margin: 0 auto;
	margin-bottom: 25px
}
.footer-box .l {
	width: 100%;
	text-align: center
}
.footer-box .r {
	width: 100%;
	text-align: center;
	margin-top: 30px
}
.footer-box .b,  .footer-box .r {
	padding-right: 0
}
.footer-box .b .f {
	width: 100%;
	margin-bottom: 20px
}
.footer-box .b {
	border-top: 1px solid rgba(255, 255, 255, .1)
}
.footer-box .b .f a {
	width: -webkit-calc(100% / 3);
	width: -moz-calc(100% / 3);
	width: calc(100% / 3);
	text-align: center
}
.footer-box .b .s {
	font-size: 10px;
	text-align: center
}
.footer-box .b {
	padding-top: 20px;
	padding-bottom: 20px
}
.footer-box .b .s p {
	margin-bottom: 10px
}
.sub_banner {
	width: 100vw;
	margin-left: -3vw;
	height: 200px;
	overflow: hidden
}
.sub_banner img {
	position: relative;
	left: 50%;
	transform: translateX(-50%);
	height: 200px;
	max-width: unset;
	width: auto
}
.case_cat a {
	width: 49%;
	margin: 0;
	margin-bottom: 10px
}
.case_cat {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between
}
.case_cat::after {
	content: '';
	width: 49%
}
.case_cat {
	margin-bottom: 30px
}
.case_cat a:nth-child(n+6) {
	margin-top: 0
}
.case-list a .text {
	padding: 15px 15px 10px
}
.prev_next {
	border: none
}
.prev_next a {
	border: 1px solid #054274;
	width: 100%
}
.prev_next a+a {
	margin-top: 10px
}
.prev_next a+a span {
	margin-left: 0;
	margin-right: 10px;
	float: left
}
.prev_next a p {
	text-align: left
}
.top_list .left .li .info {
	padding: 0 10px;
	font-size: 14px
}
.news_list ul li .thum {
	width: 110px
}
.news_list ul li .info {
	width: calc(100% - 120px);
	margin-left: 10px;
	padding-top: 5px
}
.news_list ul li .info .title {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	font-size: 16px;
	line-height: 24px;
	height: 24px;
	margin-bottom: 10px
}
.news_list ul li .info .more {
	font-size: 10px
}
.news_list ul li {
	padding: 10px 0;
	box-shadow: none
}
.news_list ul li+li {
	margin-top: 0;
	border-top: 1px solid rgba(55, 55, 55, .15)
}
.about-page .box1 .title.common {
	margin-bottom: 40px
}
.about-page .box1 .left .n {
	font-size: 17px
}
.about-page .box1 .left .type p {
	border-radius: 30px;
	line-height: 30px;
	width: 85px;
	font-size: 14px
}
.about-page .box1 .right .img-box .text {
	font-size: 16px
}
.about-page .box1 .right .img-box {
	height: 100px
}
.Bread_nav {
	text-align: left
}
.Bread_nav+.ndc_top {
	padding-top: 10px
}
.contact-page {
	padding-top: 52px
}
.submit {
	width: 100%;
	line-height: 50px;
	font-size: 18px
}
._join2_list ul li .title>span {
	display: none
}
._join2_list ul li .title {
	font-size: 15px
}
}
 @media only screen and (max-width:375px) {
.index-page .box>.type {
	font-size: 15px
}
}
 @media only screen and (max-width:736px) and (orientation:landscape) {
.index-page .banner {
	height: auto
}
.index-page .banner .text .img-box {
	background-size: 100% auto
}
.mobile.cover .nav {
	flex-direction: row
}
.mobile.cover .nav .item+.item {
	margin-top: 0;
	margin-left: 3vw
}
.mobile.cover .nav .item {
	font-size: 16px
}
.mobile.cover .nav .item a.active::before {
	width: 60px;
	margin-left: -30px
}
}

.case .type a{ display:inline-block}

/* ============================================================
   项目修正（2026-10-01）— 非原站样式，勿删
   1) 关于我们 banner：完整展示原图，最高 500px（不裁切）
   2) 友情链接对齐栏目中间内容列，页脚保留 50px 边距
   3) 预订条「酒/店」竖标题锚定到内容列，窄屏不再悬出屏幕外
      （原站为 translateX(-100%) 挂在居中块左侧，≤1450px 即裁切）
   ============================================================ */
.about-page .banner {
	text-align: center;
	line-height: 0
}
.about-page .banner img {
	display: inline-block;
	max-width: 100%;
	max-height: 500px;
	width: auto;
	height: auto
}
.box.seo {
	padding: 30px 50px
}
.box.seo .seo-inner {
	padding: 0
}
.footer {
	padding: 85px 50px 35px
}
@media only screen and (min-width: 769px) {
	.container:not(.index-page) .form.common .text {
		padding-left: 150px
	}
	.container:not(.index-page) .form.common .text h4 {
		left: 0;
		transform: none;
		-webkit-transform: none;
		-moz-transform: none;
		-ms-transform: none;
		-o-transform: none;
		width: 110px
	}
}
/* 4) 栏目 banner 标准（2026-10-01）：
      原图完整展示、不裁切，仅限最大尺寸，居中；
      现有 1920x500 图显示效果不变，后续换图直接适配 */
.sub_banner {
	width: auto;
	margin-left: 0;
	height: auto;
	overflow: visible;
	text-align: center;
	line-height: 0
}
.sub_banner img {
	display: inline-block;
	position: static;
	left: auto;
	top: auto;
	transform: none;
	-webkit-transform: none;
	-moz-transform: none;
	-ms-transform: none;
	-o-transform: none;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 500px
}

.sub_banner img.campaign-banner {
	width: 100%;
	aspect-ratio: 1920 / 500;
	object-fit: cover;
	object-position: center;
}

/* PC 端栏目和详情正文共用 1200px 上限；各页 banner 保留原有尺寸。 */
@media only screen and (min-width: 1201px) {
	.home-page .box.seo, .home-page .footer,
	.home-page .header, .home-page .header.active {
		padding-left: 70px;
		padding-right: 70px
	}
	body:not(.home-page) .box.seo,
	body:not(.home-page) .footer,
	body:not(.home-page) .header,
	body:not(.home-page) .header.active {
		padding-left: max(50px, calc((100% - 1200px) / 2));
		padding-right: max(50px, calc((100% - 1200px) / 2))
	}
	.container:not(.index-page) > :not(.banner):not(.sub_banner):not(._bg) {
		max-width: 1200px;
		margin-left: auto;
		margin-right: auto
	}
	.container:not(.index-page) .case-list {
		padding-left: 0;
		padding-right: 0
	}
	.breadcrumb, .w1200, .width_1200 {
		width: 100%;
		max-width: 1200px;
		margin-left: auto;
		margin-right: auto
	}
}
@media only screen and (min-width: 1201px) and (max-width: 1350px) {
	.home-page .box.seo, .home-page .footer,
	.home-page .header, .home-page .header.active {
		padding-left: 50px;
		padding-right: 50px
	}
}

/* 深蓝页脚底部文字与链接保持清晰可读。 */
.footer-box .b {
	color: #e7eef4;
	font-size: 14px;
	line-height: 1.8
}
.footer-box .b a {
	color: #e7eef4
}
.footer-box .b .s {
	font-size: inherit
}
.footer-box .b a:hover,
.footer-box .b a:focus-visible {
	color: #fff;
	text-decoration: underline
}

/* 客房中心与会议宴会栏目及详情：复用布局，上下内容按 banner 对齐。 */
@media only screen and (min-width: 1201px) {
	.banquet-layout .casebox {
		padding-left: 0;
		padding-right: 0
	}
	body.main.banquet-layout .header,
	body.main.banquet-layout .header.active,
	body.main.banquet-layout .box.seo,
	body.main.banquet-layout .footer,
	body.main.about-layout .header,
	body.main.about-layout .header.active,
	body.main.about-layout .box.seo,
	body.main.about-layout .footer {
		padding-left: 70px;
		padding-right: 70px
	}
	.banquet-layout .container:not(.index-page) > :not(.banner):not(.sub_banner):not(._bg),
	.banquet-layout .breadcrumb, .banquet-layout .w1200,
	.about-layout .container:not(.index-page) > :not(.banner):not(.sub_banner):not(._bg),
	.about-layout .width_1200 {
		max-width: none
	}
}
@media only screen and (min-width: 1201px) and (max-width: 1350px) {
	body.main.banquet-layout .header,
	body.main.banquet-layout .header.active,
	body.main.banquet-layout .box.seo,
	body.main.banquet-layout .footer,
	body.main.about-layout .header,
	body.main.about-layout .header.active,
	body.main.about-layout .box.seo,
	body.main.about-layout .footer {
		padding-left: 50px;
		padding-right: 50px
	}
}

/* 首页酒店介绍：简洁的服务信息与实景图。 */
.home-page .index-page .about { padding: 50px 0; background: none }
.home-page .index-page .about > .text { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(0,.9fr); gap: 0; background: #fff; border: 1px solid #dfe5e9; border-radius: 8px; overflow: hidden }
.home-page .index-page .about .text > .title { display: none }
.home-page .index-page .about .text .left { width: auto; padding: 36px }
.home-page .index-page .about .text .left .ty { margin-bottom: 18px; font-size: 26px; line-height: 1.5; font-weight: 600 }
.home-page .index-page .about .text .left .ty span { font-family: inherit; font-size: 18px; font-weight: 400; color: #647582 }
.home-page .index-page .about .text .left .info { margin-bottom: 28px; font-size: 15px; line-height: 1.9; color: #526575; text-align: left }
.home-page .index-page .about .text .left .info + .flexbox { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; position: static }
.home-page .index-page .about .text .left .item { display: block; width: auto; margin: 0; padding: 20px; background: #f5f8fa; border-radius: 6px; font-size: 14px; line-height: 1.8 }
.home-page .index-page .about .text .left .item .iconfont { margin: 0 0 10px; font-size: 28px; line-height: 32px; color: #406e8c }
.home-page .index-page .about .text .left .item span { display: block }
.home-page .index-page .about .text .left .item span:first-child { margin-bottom: 6px; font-size: 17px; font-weight: 600; color: #002648 }
.home-page .index-page .about .text .left .item span + span { color: #647582 }
.home-page .index-page .about .text .right { width: auto; margin: 0 }
.home-page .index-page .about .text .right .img-box { position: relative; height: 100%; min-height: 520px }
.home-page .index-page .about .text .right img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; object-position: center }
@media only screen and (max-width: 1200px) {
	.home-page .index-page .about > .text { grid-template-columns: minmax(0,1fr) }
	.home-page .index-page .about .text .right .img-box { min-height: 0; height: 380px }
}
@media only screen and (max-width: 768px) {
	.home-page .index-page .about { padding: 32px 0 }
	.home-page .index-page .about .text .left { padding: 24px }
	.home-page .index-page .about .text .left .ty { font-size: 22px }
	.home-page .index-page .about .text .left .ty span { font-size: 15px }
	.home-page .index-page .about .text .left .info + .flexbox { grid-template-columns: minmax(0,1fr); gap: 12px }
	.home-page .index-page .about .text .right .img-box { height: 320px }
}

/* 公共页脚：酒店信息、栏目导航与咨询区。 */
.footer { padding-top: 36px; padding-bottom: 20px; background-image: linear-gradient(110deg, #082e49, #124d70); color: #e6eef4 }
.footer .footer-main { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(0,1fr) minmax(0,.9fr); gap: 48px; align-items: start }
.footer .footer-main > .l, .footer .footer-main > .m, .footer .footer-main > .r { width: auto; min-width: 0; margin: 0; padding: 0; text-align: left }
.footer .l .logo_ { width: 220px; margin: 0 0 18px }
.footer .l .logo_ img { display: block; width: 100%; filter: brightness(0) invert(1); opacity: .95 }
.footer .l p { margin: 0 0 8px; font-size: 14px; line-height: 1.8; overflow-wrap: anywhere }
.footer .footer-main .m { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; align-content: start }
.footer .m .item, .footer .m .item + .item { margin: 0; color: #cfdee9 }
.footer .m .item h4 { margin: 0 0 14px; font-size: 16px; line-height: 1.5; font-weight: 600; color: #fff }
.footer .m .item .list { position: static; padding: 0 }
.footer .m .item .list::before { display: none }
.footer .m .item .n { font-size: 14px; line-height: 1.8 }
.footer .m .item .list a + a { margin-top: 8px }
.footer .m .item a:hover, .footer .l a:hover { color: #fff; text-decoration: underline }
.footer .r .d { margin: 0 0 10px; font-size: 15px; font-weight: 500; color: #cfdee9 }
.footer .r .t { margin: 0 0 14px; font-size: 25px; font-weight: 600; line-height: 1.5; color: #fff }
.footer .r .t a { display: inline-flex; gap: 8px; align-items: center; white-space: nowrap }
.footer .r .t span { margin: 0; font-size: 25px }
.footer .r form { display: block }
.footer .r .input-box { width: 100%; height: 40px; position: relative }
.footer .r .input-box input { width: 100%; height: 40px; padding: 0 44px 0 12px; border: 1px solid rgba(255,255,255,.35); border-radius: 4px; background: rgba(255,255,255,.06); color: #fff; font-size: 13px }
.footer .r .input-box input::placeholder { color: #c0d1de; opacity: 1 }
.footer .r .input-box input:focus { outline: 2px solid #91b5cc; outline-offset: 2px }
.footer .r .input-box button { position: absolute; top: 0; right: 0; width: 40px; height: 40px; padding: 0; border: 0; background: transparent; color: #fff; cursor: pointer }
.footer .r .input-box .iconfont { position: static; font-size: 19px; line-height: 40px; padding: 0 }
.footer .footer-wechat { display: flex; align-items: center; gap: 14px; margin-top: 18px }
.footer .footer-wechat > img { display: block; flex: 0 0 80px; width: 80px; height: 80px; padding: 4px; background: #fff; border-radius: 4px; object-fit: contain }
.footer .footer-wechat h4 { margin: 0 0 8px; font-size: 14px; font-weight: 500; color: #fff }
.footer .footer-wechat p { margin: 0; font-size: 12px; line-height: 1.8; color: #c0d1de }
.footer .footer-box .b { display: flex; gap: 16px 32px; align-items: center; justify-content: space-between; margin-top: 24px; padding: 16px 0 0; border-top: 1px solid rgba(255,255,255,.18); font-size: 13px; color: #cfdee9 }
.footer .footer-box .b .f { width: auto; height: auto; margin: 0 }
.footer .footer-box .b .f a { width: auto; padding: 0; float: none }
.footer .footer-box .b .s { flex: 1; min-width: 0; text-align: right; font-size: 13px; overflow-wrap: anywhere }
.footer .footer-box .b .s p { margin: 0 }
.footer .footer-box .b a { color: #cfdee9 }
@media only screen and (max-width: 1350px) {
	.footer .footer-main { gap: 28px }
	.footer .r .t { font-size: 22px }
}
@media only screen and (max-width: 1200px) {
	.footer .footer-main { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 32px }
	.footer .footer-main .m { grid-column: 1 / -1; grid-row: 2; max-width: 600px }
}
@media only screen and (max-width: 768px) {
	.footer { padding-top: 28px }
	.footer .footer-main { grid-template-columns: minmax(0,1fr); gap: 24px }
	.footer .footer-main .m { grid-column: auto; grid-row: auto; max-width: none }
	.footer .footer-main .r { max-width: 360px }
	.footer .footer-box .b { align-items: flex-start; flex-direction: column; gap: 12px }
	.footer .footer-box .b .s { text-align: left; font-size: 12px }
}

/* 公共页头：搜索与咨询入口共用右边界。 */
.header .right { width: 240px; display: flex; flex-direction: column; gap: 10px }
.header .right .row { justify-content: flex-end; align-items: center; flex-wrap: nowrap }
.header .right .search { width: 240px; height: 32px }
.header .right .search input { width: 100%; height: 32px; padding: 0 40px 0 16px; border: 1px solid #d6dfe6; border-radius: 18px; background: #fff; color: #002648; font-size: 13px; line-height: 30px }
.header .right .search input::placeholder { color: #7c8b97 }
.header .right .search input:focus { border-color: #648aa5; box-shadow: 0 0 0 2px rgba(0,38,72,.08) }
.header .right .search button { position: absolute; top: 0; right: 0; width: 36px; height: 32px; padding: 0; border: 0; background: transparent; border-radius: 0 18px 18px 0; cursor: pointer }
.header .right .search .iconfont { position: static; display: block; padding: 0; line-height: 32px; font-size: 18px }
.header .right .row .tel { width: auto; font-size: 18px; line-height: 32px; font-weight: 500 }
.header .right .tel a { display: inline-flex; align-items: center; gap: 6px; white-space: nowrap }
.header .right .tel .iconfont { font-size: 22px; line-height: 32px }
.header .right .second { margin-left: 14px; padding-left: 14px; height: 32px; line-height: 32px }
.header .right .second::before { height: 18px; top: 7px; background: #b6c5d0; opacity: 1 }
.header .right .qrbtn { display: block; width: 32px; height: 32px; padding: 0; border: 0; background: transparent; color: #002648; cursor: pointer; border-radius: 50% }
.header .right .qrbtn .iconfont { font-size: 24px; line-height: 32px }
.header .right .qrbtn:hover, .header .right .qrbtn:focus-visible, .header .right .search button:hover { background: #e5edf3 }
.header .header-qr-panel { display: none; position: absolute; z-index: 301; right: 0; top: 100%; width: 164px; padding: 12px; background: #fff; border: 1px solid #dfe5e9; border-radius: 6px; box-shadow: 0 8px 24px rgba(0,38,72,.15); text-align: center }
.header .header-qr-panel p { margin: 0 0 8px; color: #002648; font-size: 13px; line-height: 20px }
.header .header-qr-panel img { display: block; width: 138px; height: 138px; object-fit: contain }
.header .second:hover .header-qr-panel, .header .second:focus-within .header-qr-panel { display: block }
.header.active .right { gap: 0 }
@media only screen and (max-width: 1400px) {
	.header .right, .header .right .search { width: 230px }
	.header .right .row .tel { font-size: 17px }
}
@media only screen and (max-width: 1200px) {
	.header .right { display: none }
}

/* 关于我们：与其它栏目共用横向 banner 和内容边距。 */
.home-page .header, .about-layout .header { font-family: "Helvetica Neue", Helvetica, "PingFang SC", Tahoma, Arial, sans-serif }
.home-page .header .logo img, .about-layout .header .logo img { vertical-align: middle }
.about-layout .about-hero { position: relative; width: 100%; aspect-ratio: 1920 / 500; max-height: 500px; overflow: hidden; background: #002648 }
.about-layout .about-hero img { display: block; width: 60%; height: 100%; max-height: none; margin-left: auto; object-fit: cover; object-position: center 60% }
.about-layout .about-hero::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, #002648 35%, rgba(0,38,72,.75) 45%, transparent 70%); pointer-events: none }
.about-layout .about-hero-text { position: absolute; z-index: 1; top: 50%; left: 7%; transform: translateY(-50%); text-align: left; line-height: 1.6; color: #fff }
.about-layout .about-hero-text h1 { margin: 0 0 16px; font-size: 44px; letter-spacing: 6px; font-weight: 600 }
.about-layout .about-hero-text p { margin: 0; color: #d8b57d; font-size: 18px; letter-spacing: 3px }
.about-layout .about-page > .title.common { margin-top: 48px }
.about-layout .about-page > .case_cat { margin-bottom: 0 }
.about-layout > .about-page:not(.container) { padding: 0 70px; margin-top: 40px }
.about-layout .about-page .box1 { padding: 40px 0 60px }
.about-layout .about-page .box1 > .width_1200 { padding: 32px; background: #fff; border: 1px solid #dfe5e9; border-top: 3px solid #c9a063; border-radius: 8px; box-shadow: 0 6px 24px rgba(0,38,72,.04) }
.about-layout .about-page .box1 > .width_1200 > .flexbox { gap: 32px }
.about-layout .about-page .box1 .left, .about-layout .about-page .box1 .right { width: calc(50% - 16px) }
.about-layout .about-page .box1 .left { padding-right: 0; text-align: left }
.about-layout .about-page .box1 .left .n { font-size: 20px; line-height: 1.6 }
.about-layout .about-page .box1 .left .info { font-size: 15px; line-height: 1.9; color: #526575; opacity: 1 }
.about-layout .about-page .box1 .left .type { justify-content: flex-start; gap: 8px }
.about-layout .about-page .box1 .left .type p { width: auto; padding: 0 16px; border-radius: 4px; background: #edf3f7; color: #002648; font-size: 14px }
.about-layout .about-page .box1 .right .img-box { height: auto; margin-bottom: 24px; overflow: hidden; border-radius: 6px }
.about-layout .about-page .box1 .right .img-box > img { position: static; display: block; width: 100%; height: auto; transform: none }
.about-layout .about-page .box1 .right .list .item { line-height: 1.9; font-size: 15px; color: #526575; opacity: 1 }
@media only screen and (max-width: 1200px) {
	.about-layout > .about-page:not(.container) { padding: 0 3vw }
	.about-layout .about-page .box1 > .width_1200 { padding: 24px }
	.about-layout .about-page .box1 .left, .about-layout .about-page .box1 .right { width: 100% }
	.about-layout .about-hero-text h1 { font-size: 32px }
}
@media only screen and (min-width: 1201px) and (max-width: 1350px) {
	.about-layout > .about-page:not(.container) { padding: 0 50px }
}
@media only screen and (max-width: 768px) {
	.about-layout .about-hero { min-height: 200px; aspect-ratio: auto }
	.about-layout .about-hero img { position: absolute; right: 0; width: 75%; height: 100% }
	.about-layout .about-hero-text h1 { font-size: 26px; letter-spacing: 3px }
	.about-layout .about-hero-text p { font-size: 13px; letter-spacing: 1px }
	.about-layout .about-page > .title.common { margin-top: 28px }
	.about-layout .about-page .box1 { padding: 28px 0 40px }
	.about-layout .about-page .box1 > .width_1200 { padding: 20px }
}

.qualifications-panel { padding: 32px; margin-bottom: 60px; background: #fff; border: 1px solid #dfe5e9; border-top: 3px solid #c9a063; border-radius: 8px; box-shadow: 0 6px 24px rgba(0,38,72,.04) }
.qualifications-heading { padding-bottom: 24px; margin-bottom: 28px; border-bottom: 1px solid #e8edf1 }
.qualifications-heading h2 { margin: 0 0 8px; color: #002648; font-size: 24px; font-weight: 600 }
.qualifications-heading p { margin: 0; color: #647582; font-size: 14px }
.qualification-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 24px }
.qualification-grid > :only-child { grid-column: 1 / -1 }
.qualification-card { display: flex; align-items: center; gap: 28px; min-width: 0; padding: 24px; border: 1px solid #e3e9ee; border-radius: 6px }
.qualification-image { display: flex; flex: 0 0 45%; justify-content: center; align-items: center; padding: 16px; background: #f4f6f8; border-radius: 4px }
.qualification-image img { display: block; width: auto; max-width: 100%; height: auto; max-height: 480px; object-fit: contain }
.qualification-info { flex: 1; min-width: 0 }
.qualification-badge { display: inline-block; margin-bottom: 14px; padding: 4px 10px; background: #f7f0e4; color: #806236; border-radius: 4px; font-size: 12px }
.qualification-info h3 { margin: 0 0 16px; font-size: 22px; color: #002648 }
.qualification-info p { margin: 0 0 24px; line-height: 1.9; font-size: 15px; color: #647582 }
.qualification-view { display: inline-flex; gap: 20px; align-items: center; padding: 10px 18px; border: 1px solid #002648; border-radius: 4px; color: #002648 }
.qualification-view:hover { background: #002648; color: #fff }
@media only screen and (max-width: 1200px) {
	.qualification-grid { grid-template-columns: minmax(0,1fr) }
}
@media only screen and (max-width: 768px) {
	.qualifications-panel { padding: 20px; margin-bottom: 40px }
	.qualification-card { flex-direction: column; align-items: stretch; padding: 16px; gap: 20px }
	.qualification-image { flex-basis: auto }
	.qualification-image img { max-height: 360px }
}

/* 客房详情：内容层级、预订标题与推荐导航。 */
.room-detail .ndc_top { padding-top: 24px }
.room-detail .ndc_top > .title { font-size: 28px; color: #002648; line-height: 1.5 }
.room-detail .ndc_top > .des { color: #77818b; margin: 10px 0 20px; font-size: 13px }
.room-detail .ndc_detail { font-size: 16px; line-height: 1.8 }
.room-detail .ndc_detail img {
    display: block;
    width: auto !important;
    height: auto !important;
    max-width: min(100%, 1100px);
    max-height: 70vh;
    margin: 24px auto;
}
.banquet-layout .container .form.common .text { display: block; padding: 28px 32px; text-align: left }
.banquet-layout .container .form.common .text h4 {
    position: static;
    width: auto;
    transform: none;
    font-size: 24px;
    line-height: 1.5;
    margin-bottom: 8px;
}
.banquet-layout .form.common .text .title { font-size: 18px; line-height: 1.6; margin-bottom: 18px }
@media only screen and (max-width: 768px) {
    .room-detail .ndc_top > .title { font-size: 23px }
    .banquet-layout .container .form.common .text { padding: 20px 16px }
}
.banquet-layout .form.common { background: #fff; border: 1px solid #dfe5e9; border-top: 3px solid #c9a063; border-radius: 8px; box-shadow: 0 6px 22px rgba(0,38,72,.05) }
.banquet-layout .form.common .text .title { padding: 0; margin: 0 0 24px; font-size: 14px; color: #647582 }
.banquet-layout .form.common .text .title::before, .banquet-layout .form.common .text .title::after { display: none }
/* 公共页脚保持文字颜色和控件尺寸。 */
.footer.footer a { color: #e6eef4 }
.footer.footer .m h4 a, .footer.footer .r .t a { color: #fff }
.footer.footer a:hover { color: #fff; text-decoration: underline }
.footer.footer .r .input-box input { box-sizing: border-box; min-width: 0 }
.footer.footer .r .input-box button { box-sizing: border-box }
h1.title.common, .ndc_top h1.title { font-weight: inherit }
.home-page .index-page .about .ty { margin: 0; font-weight: 400 }
.case-list > a .img-box > img { object-fit: cover }
/* 原生交互与首页客房网格。 */
.menu-btn { border: 0; padding: 0; background: transparent; cursor: pointer }
[hidden] { display: none !important }
._join2_list li .title.active + .detail { display: block }
.home-page .room-gallery-heading { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 26px }
.home-page .room-gallery-heading > .title { float: none; margin: 0 }
.home-page .room-gallery-heading > .type { display: flex; flex-wrap: wrap; gap: 24px; font-size: 17px }
.home-page .room-gallery-heading .item { padding: 0; color: #647582; line-height: 1.5 }
.home-page .room-gallery-heading a:hover .item { color: #002648 }
.home-page .room-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 30px }
.home-page .room-card { display: block; min-width: 0; background: #fff; border: 1px solid #dfe5e9; overflow: hidden }
.home-page .room-card .img-box { aspect-ratio: 3 / 2; overflow: hidden }
.home-page .room-card .img-box img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center }
.home-page .room-card .text { padding: 18px 16px; text-align: center; color: #002648; font-size: 16px; line-height: 24px }
.home-page .room-card:hover .text { color: #9b7139 }
@media only screen and (max-width: 1200px) {
 .top_list .left .ul { display: flex; overflow-x: auto; scroll-snap-type: x mandatory }
 .top_list .left .ul .li { position: relative; flex: 0 0 100%; opacity: 1; visibility: visible; scroll-snap-align: start }
 .home-page .room-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px }
 .home-page .room-gallery-heading { align-items: flex-start; flex-direction: column; gap: 14px }
}
@media only screen and (max-width: 600px) {
 .home-page .room-grid { grid-template-columns: minmax(0,1fr) }
 .home-page .room-gallery-heading > .type { gap: 18px; font-size: 15px }
}

/* 栏目与推荐图片采用同一比例，分类导航独立于图片网格。 */
.case-list.media-gallery { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 30px; align-items: start }
.case-list.media-gallery > a { width: auto; min-width: 0; margin: 0 }
.case-list.media-gallery > a .img-box { aspect-ratio: 3 / 2; overflow: hidden; background: #e8edf1 }
.case-list.media-gallery > a .img-box img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center }
.case-list.media-gallery > a .text { padding: 20px 16px }
.case-list.media-gallery > a .text .name { margin: 0; line-height: 1.6 }
.case-list.media-gallery .gallery-heading { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0; padding-bottom: 18px }
.case-list.media-gallery .gallery-heading > p { margin: 0; font-size: 24px }
.case-list.media-gallery .gallery-heading .case_cat { display: flex; flex-wrap: wrap; width: auto; margin: 0; gap: 12px }
.case-list.media-gallery .gallery-heading .case_cat a { width: auto !important; margin: 0 !important; padding: 0 20px; line-height: 38px; border-radius: 4px }
@media only screen and (max-width: 1200px) {
    .case-list.media-gallery { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px }
    .case-list.media-gallery .gallery-heading { align-items: flex-start; flex-direction: column }
}
@media only screen and (max-width: 600px) {
    .case-list.media-gallery { grid-template-columns: minmax(0,1fr); gap: 20px }
    .case-list.media-gallery .gallery-heading { padding-bottom: 0 }
    .case-list.media-gallery .gallery-heading > p { width: 100%; padding-bottom: 12px; font-size: 22px }
    .case-list.media-gallery .gallery-heading .case_cat { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); width: 100%; gap: 10px }
    .case-list.media-gallery .gallery-heading .case_cat a { padding: 0 8px; text-align: center }
}

/* 客房、会议宴会详情的相邻内容导航。 */
.banquet-layout .detail-pagination { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; margin: 28px 0 32px }
.banquet-layout .detail-page-link { display: flex; flex-direction: column; gap: 8px; min-width: 0; padding: 18px 22px; background: #fff; border: 1px solid #dfe5e9; border-radius: 6px; text-align: left; transition: border-color .2s, background-color .2s }
.banquet-layout .detail-page-link.is-next { text-align: right }
.banquet-layout .detail-page-label { color: #647582; font-size: 13px; line-height: 1.5 }
.banquet-layout .detail-page-title { color: #002648; font-size: 16px; line-height: 1.6; overflow-wrap: anywhere }
.banquet-layout a.detail-page-link:hover, .banquet-layout a.detail-page-link:focus-visible { border-color: #c9a063; background: #fcfaf6 }
.banquet-layout a.detail-page-link:focus-visible { outline: 2px solid #c9a063; outline-offset: 2px }
.banquet-layout .detail-page-link.is-disabled { background: #f5f7f8 }
.banquet-layout .detail-page-link.is-disabled span { color: #8b98a5 }
@media only screen and (max-width: 768px) {
    .banquet-layout .detail-pagination { grid-template-columns: minmax(0,1fr); gap: 12px; margin: 24px 0 }
    .banquet-layout .detail-page-link { padding: 16px 18px }
    .banquet-layout .detail-page-link.is-next { text-align: left }
}
