@font-face {
    font-family: 'Archangelsk';
    src: url('assets/fonts/Archangelsk-Regular.eot');
    src: url('assets/fonts/Archangelsk-Regular.eot?#iefix') format('embedded-opentype'),
         url('assets/fonts/Archangelsk-Regular.woff2') format('woff2'),
         url('assets/fonts/Archangelsk-Regular.woff') format('woff'),
         url('assets/fonts/Archangelsk-Regular.ttf')  format('truetype'),
         url('assets/fonts/Archangelsk-Regular.svg#Archangelsk') format('svg');
}
@font-face {
    font-family: 'Gotham Pro';
	font-weight: normal;
    src: url('assets/fonts/gothampro.eot');
    src: url('assets/fonts/gothampro.eot?#iefix') format('embedded-opentype'),
         url('assets/fonts/gothampro.woff2') format('woff2'),
         url('assets/fonts/gothampro.woff') format('woff'),
         url('assets/fonts/gothampro.ttf')  format('truetype'),
         url('assets/fonts/gothampro.svg#Gotham Pro') format('svg');
}
@font-face {
    font-family: 'Gotham Pro';
	font-weight: bold;
    src: url('assets/fonts/gothamprobold.eot');
    src: url('assets/fonts/gothamprobold.eot?#iefix') format('embedded-opentype'),
         url('assets/fonts/gothamprobold.woff2') format('woff2'),
         url('assets/fonts/gothamprobold.woff') format('woff'),
         url('assets/fonts/gothamprobold.ttf')  format('truetype'),
         url('assets/fonts/gothamprobold.svg#Gotham Pro') format('svg');
}
@font-face {
    font-family: 'Gotham Pro';
	font-weight: 500;
    src: url('assets/fonts/gothampromedium.eot');
    src: url('assets/fonts/gothampromedium.eot?#iefix') format('embedded-opentype'),
         url('assets/fonts/gothampromedium.woff2') format('woff2'),
         url('assets/fonts/gothampromedium.woff') format('woff'),
         url('assets/fonts/gothampromedium.ttf')  format('truetype'),
         url('assets/fonts/gothampromedium.svg#Gotham Pro Medium') format('svg');
}
html { width:100%; height: 100%; }

body {
    height: 100%;
    margin: 0;
    padding: 0;
    font-size: 16px;
    font-family: 'Gotham Pro', Arial, Helvetica, sans-serif;
    background: #303D45 url(assets/images/bg.svg);
    background-size: contain;
    background-repeat: repeat-y;
}

form { margin:0; padding:0;}
form.main-form
{ 
	display: block;
	margin:0; 
	padding:0;
	width:100%;
	height:100%;
}
/*
#page-wrapper
{	
	min-height:100%;	  
	margin: 0 auto -85px;
	min-width: 990px;
}

* html #page-wrapper { height: 100%; }

#header { height: 77px; position: relative;}
#header table { width: 80%; height: 77px;}
#header td { padding: 0; vertical-align: middle; text-align: left;}

td#logo { padding-left: 32px;}
td#logo a { outline: none;}
td#slogan { padding-left: 32px; width: 100%;  font-size: 1.2em; font-style: italic; /*font-weight: bold;*//*}

#search { width: 23%; position: absolute; right:21px; top: 30px; }
#search div.flat{height: 20px;}							 
#search div.search-box
{
	border: 1px solid; 
	height: 20px;
	overflow:hidden;
	padding:0;
	position: absolute;
	left: 21px;
	right: 61px;
	float: left;
}

* html #search div.search-box { margin-right:-82px;	}

#search div.search-box input
{
	border:1px solid;
	width:98%;
	height: 18px;
	padding:0;
	margin:0;
}

#search input { vertical-align: top;}
#search-button { float: right; width:48px; border: 1px solid;}
#search-button input::-moz-focus-inner { border: 0; padding: 0; }/*Remove button padding in FF*//*
#search-button input 
{
	display: block;
	border: none;
	background: none;	
	width:48px;
	padding:0;
	margin:0;
	font-family: Georgia, serif;
	font-size: 12px;
	height: 19px;
	cursor: pointer;
	cursor: hand;
	outline: none;	
}

div.search-item h4 { margin-bottom: 0.4em;}

#top-menu { margin: 0 0 0 32px; padding: 0; list-style-type: none; overflow: hidden; zoom:1;}
#top-menu li { float: left; margin: 0 1.5em 0 0; }
#top-menu a  
{
	display: block; 
	border-bottom-width: 2px;
	border-bottom-style: solid;

	text-decoration: none; 
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 1.2em;
	outline: none;
	padding: 11px 0 7px;	
	margin: 0 16px 3px;
}

#top-menu li.selected a { padding: 11px 16px 10px; margin: 0;}
#top-menu li.selected .r1 { border-left: 1px solid; border-right: 1px solid; }
#top-menu li.selected .r0 { border-left: 1px solid; border-right: 1px solid; }

* html #top-menu .r1 { width: 2px;}
* html #top-menu .r0 { width: 2px;}

#top-menu li.selected .r1 { width: expression(runtimeStyle.width = parentNode.offsetWidth - 4 + 'px'); }
#top-menu li.selected .r0 { width: expression(runtimeStyle.width = parentNode.offsetWidth - 2 + 'px'); }

#breadcrumb  {	padding:0; margin: 0 41px 32px 32px;}
#breadcrumb p { margin: 0 10px;}

#breadcrumb span.bx-breadcrumbs-name { font-size: 0.85em; padding:0 0.4em;}
#breadcrumb a {text-decoration: none;}
#breadcrumb a:hover { text-decoration: underline;}
#breadcrumb b { border-right: 1px solid; border-left: 1px solid;}
#breadcrumb b.top { margin-bottom: 2px;}
#breadcrumb b.bottom { margin-top: 2px;}

#content-wrapper { overflow: hidden; margin: 21px 0 50px; zoom:1;}
#content { float: left; width: 77%; overflow: hidden; }
#sidebar { float: right; width: 23%; overflow: hidden;  }
#sidebar-inner { margin-right: 21px;}

#workarea-wrapper { margin: 0 38px 0 25px;}
#left-menu { float: left; width: 25%; }

ul.left-menu { font-weight: bold; list-style-type: none; margin: 0; padding: 0 0 0 1.5em;}

/* Root */
ul.left-menu a { font-size: 1.1em; outline: none;}
ul.left-menu .selected a { text-decoration: none; }

ul.left-menu ul a { font-size: 0.85em !important; text-decoration: underline !important; outline: none; vertical-align:top; }

ul.left-menu li.current { overflow: hidden; zoom:1; display: block; margin-top: 0.3em;}
ul.left-menu .current i  
{
	padding: 1px 10px 2px 13px; 
	text-decoration: none !important;
	display: block;
	zoom:1;
	font-style:normal;
	font-size: 0.85em !important;
	vertical-align:top;
}

ul.left-menu .current b { border-left:1px solid; border-right:1px solid; }
ul.left-menu ul { font-weight: normal; margin: 0.5em 0 0 -4px; padding: 0; list-style-type: none;}
ul.left-menu ul ul { margin: 0.5em 0 0 1em; }
ul.left-menu li li
{ 
	margin-bottom: 0.7em; 
	padding:0 13px 0;
	text-indent: 0;
	background: url(images/left-menu-arrow.gif) no-repeat 5px 3px;
	list-style-type: none; 
}

ul.left-menu li
{
	behavior:expression( !this.before ? this.before = this.innerHTML = '<span class="dash">&mdash;&nbsp;</span>' + this.innerHTML :'' );
	text-indent:-1.35em;
	background: none;
	padding:0;
	margin-bottom: 1.5em;
}
ul.left-menu li li { behavior: '';}

ul.left-menu li:before { content:'\2014\a0'; }
ul.left-menu li li:before { content:'';}

ul.left-menu li li li { margin-bottom: 0.3em; }

#workarea { float: right; width: 75%; clear:right; }
#workarea-inner { margin-left: 25px;}

#banner 
{ 
	height: 175px; 
	margin: 0 28px 40px 19px; 
	overflow:hidden; 
	position:relative; 
}

#banner-image { height:175px; width: 425px; overflow:hidden; text-decoration: none; display: block; }
#banner-text 
{ 
	padding: 0; 
	font-family: Arial, Helvetica, sans-serif;
	font-size: 2em;
	position: absolute;
	left: 35%;
	top: 0;
	left:0;
	width: 100%;
	height: 175px;
	z-index:10;
	
}

#banner-text td {padding:0;}
#banner-text a { text-decoration: none; display: block;}

#banner-text small { font-size: 0.5em; padding-top: 1em; display: block; padding-left: 30px;}
#banner-text big { font-size: 1.4em; display: block; }
#banner-text span { padding-left: 30px; display:block;}
#banner-overlay
{ 
	z-index:5; 
	height: 175px; 
	width: 100%; 
	position: absolute; 
	top: 0;
	left: 0; 
	outline: none;
	display: block;
	cursor: pointer;
	cursor: hand;
}



#footer, #space-for-footer  { height: 85px; }
#footer { position: relative;}

#copyright { padding:21px 0 0 35px; font-size: 0.85em; width: 49%;}
#copyright p { margin:0;}

#footer-links { margin:0; padding:0; list-style: none;}
#bottom-menu { width:50%; position:absolute; right:25px; top: 20px;  text-align: right;}
#footer-links li { display: inline; padding-left:1.5em;}

/* Navigation */
div.navigation { font-size:100%; line-height:200%; }
span.navigation-title { padding-right:0.65em; font-weight: bold;}
div.navigation a { text-decoration:underline; padding:0.2em 0.3em;}
span.nav-current-page { padding:0.2em 0.3em; }
div.navigation span.arrow { font-size:100%; font-family:Times, serif; }
div.navigation span.ctrl { font-size:85%; }

/*Site Map */
table.map-columns { width: 100%;}
table.map-columns td { vertical-align: top; padding: 0;}
table.map-columns ul { padding:0 0 2em 0; font-weight: bold;}
table.map-columns li { margin: 0 0 1.5em 0 !important;}
table.map-columns li li { margin: 0 0 0.6em 0 !important;}
table.map-columns ul ul { font-weight: normal; padding:0 0 0 1.5em; margin: 0.6em 0}


/* Ask a question */
#support {position: relative; margin:0 0 3em; padding-top: 3px;}
#support-question { position: absolute; width: 30px; height: 30px; top: 0; left:0;}
#support-text { height: 20px; margin-left: 15px; padding-left: 22px; padding-top: 2px; overflow:hidden;}
#support-text a { font-size: 14px; font-weight: bold; text-decoration: none;}
#support b { border-right:1px solid; margin-left: 15px;}

/* Schedule */
#schedule { margin: 0 0 3em; }
#schedule div.schedule { font-size: 0.85em; }
#schedule p { margin: 0 0 1em; }

/* Telephone*/
#telephone  
{
	padding: 0 0 0 37px;
	margin: 0 0 1.5em;
	min-height: 30px;
}

* html #telephone { padding-top: 6px;}

#telephone nobr { font-family: Georgia, serif;  font-size: 1.6em;}

/* Content Block List */
dl.block-list { margin: 0 0 3.2em 0; padding:0; }
dl.block-list dt { margin: 0; padding: 0 0 0.3em; font-size: 1em;}
dl.block-list dd { margin:0 0 1.8em; padding:0; font-size: 0.85em;}

/* Information Box*/
div.information-box .r1 { border-left:1px solid; border-right:1px solid; }
div.information-box .r0 { border-left:1px solid; border-right:1px solid; }
div.information-box-content { font-size: 0.9em; padding: 12px 15px;}

/* News List */
div.news-list { margin: 0 0 2em;}
div.news-item { margin: 0 0 1.3em; }
div.news-date { margin: 0 0 0.5em; }
div.news-title { font-size: 1.2em; margin: 0 0 0.5em; }
a.news-detail-link { display: block; margin: 1em 0 0; outline: none;}

/* Forms */
div.content-form div.form-input input, div.content-form div.form-input textarea, div.content-form div.form-input select 
{ 	
	border:1px solid;  
	border-color: #777 #CCCCCC #CCCCCC #777
}
 
div.content-form div.field label.field-title { font-size: 1.117em; }





figure {
    position: relative;
	margin: 0;
}
figure img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
	border-radius: 8px;
}
/*********************************************************/

header {
    background: #FFFFFF4D;
    backdrop-filter: blur(30px);
    position: relative;
    z-index: 100;
}
.hdr-wrap {
    display: flex;
    flex-flow: row wrap;
    gap: 30px;
    justify-content: space-between;
}
.hdr-block {
    display: flex;
    flex-flow: column;
    gap: 20px;
    justify-content: space-between;
    align-items: flex-end;
}
.hdr-addr {
    background: #D9C94A;
    padding: 4px 30px;
    flex: 0 0 0;
    display: flex;
    width: max-content;
    gap: 30px;
}
.hdr-addr a {
    font-size: 20px;
    color: #303D45;
    text-decoration: none;
}
.hdr-menu {
    display: flex;
    gap: 30px;
    margin-bottom: 15px;
}
.hdr-menu a {
    font-size: 20px;
    font-weight: 700;
    text-decoration: none;
    color: #fff;
}



section.banner {
    position: relative;
    margin-top: -104px;
}
.banner-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.banner-bg img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.banner-shd {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #00000099;
}
.banner-wrap {
    position: relative;
}
.banner-text {
    padding-top: 90px;
    padding-bottom: 120px;
    margin-top: 104px;
}
.banner h1 {
    font-size: 60px;
    color: #fff;
    font-family: 'Archangelsk';
    max-width: 80%;
    margin-bottom: 30px;
    line-height: 1;
}
.banner h1+p {
    color: #fff;
    font-size: 22px;
    max-width: 60%;
    margin-bottom: 75px;
    line-height: 1.3;
}
.banner .btn-wrap {
    display: flex;
    gap: 15px;
}
.banner #myVideo {
    background-position: center center;
    background-size: contain;
    object-fit: cover;
    position: absolute;
    right: 0;
    bottom: 0;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}


button.order {
    background: #FFF200;
    border: none;
    border-radius: 8px;
    padding: 16px 40px;
    font-size: 18px;
    color: #1E272C;
}
button.order:hover {
    background: #FFE700;
}
button.link {
    background: #FFFFFF1A;
    backdrop-filter: blur(10px);
    border: none;
    border-radius: 8px;
    padding: 16px 40px;
    font-size: 18px;
    color: #ffffff;
}
button.link:hover {
    background: #FFFFFF4D;
}
button.sb {
    backdrop-filter: blur(30px);
    background: #303D45;
    border: none;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0;
}
h2 {
    font-size: 48px;
    font-family: 'Archangelsk';
    margin: 0;
    padding: 0;
    line-height: 1;
    color: #222C31;
}
h2 i {
    color: #fff;
    font-style: normal;
}
h3 {
    color: #FFF200;
    margin: 0;
    line-height: 1.3;
    font-size: 24px;
    font-weight: 400;
    margin-bottom: 15px;
}
.hdr-fl {
    background: linear-gradient(to right, #ebd85d 10%,#EBD85D80 50%,#EBD85D00 100%);
}
.hdr-sl {
    background: linear-gradient(to right, #ebd85d 0%,#EBD85D80 50%,#EBD85D00 100%);
}
li::marker {
    color: #FFF200;
}
p {
    margin-top: 0;
    margin-bottom: 0;
}


section.m1 {
    margin-top: 120px;
    margin-bottom: 120px;
    position: relative;
}
.m1-wrap {
    display: flex;
    flex-flow: row wrap;
}

.m1 figure {
    padding-top: 37%;
    height: 0;
    flex: 40% 0 0;
}
.m1-text {
    flex: 1 0 0;
    /* padding: 40px; */
    background: #FFFFFF33;
    backdrop-filter: blur(50px);
    color: #fff;
    border-radius: 0 8px 8px 0;
    /* display: flex; */
    /* flex-flow: column; */
}
.m1 figure img {
    border-radius: 8px 0 0 8px;
}
.m1 .btn-wrap {
    flex: 1 0 0;
    display: flex;
    flex-flow: column;
    justify-content: flex-end;
    align-items: flex-end;
}
.m1 .flip-front {
    padding: 40px;
    display: flex;
    flex-flow: column;
    font-size: 24px;
    line-height: 1.3;
}
.m1 .flip-back-wrap {
    background: #787012;
    font-size: 24px;
    line-height: 1.3;
}

section.m2hdr {
    margin-top: 120px;
    margin-bottom: 75px;
}
.m2hdr-wrap {
    display: flex;
    flex-flow: row wrap;
    gap: 60px;
    padding: 30px 0px;
    align-items: center;
}
.m2hdr-l {
    flex: 1 0 0;
    font-size: 28px;
    color: #1E272C;
}
.m2hdr-r {
    flex: 1 0 0;
    color: #fff;
    display: flex;
    align-items: center;
    font-size: 24px;
    line-height: 1.3;
}

section.m2 {
    margin-top: 75px;
    margin-bottom: 120px;
}
.m2-wrap {
    display: flex;
    flex-flow: row wrap;
    gap: 40px;
}
.m2-text {
    flex: 1 0 0;
}
.m2 figure {
    flex: 1 0 0;
    padding-top: 32%;
    height: 0;
}
.m2 figure img {
    border-radius: 8px;
}
.m2-item {
    margin-bottom: 4px;
}
.m2-item-hdr {
    background: #E1E2E3;
    padding: 16px 25px 16px 40px;
    display: flex;
    justify-content: space-between;
    font-size: 20px;
    color: #1E272C;
    border-radius: 8px;
    border-left: 4px solid transparent;
}
.m2-item.open .m2-item-hdr {
    border-left-color: #FFF200;
}
.m2-item-text {
    background: #FFFFFF33;
    display: none;
    color: #fff;
    padding: 20px 20px 20px 40px;
    font-size: 16px;
}
.m2-item.open .m2-item-text {
    display: block;
}
.m2-text > p {
    font-size: 18px;
    color: #fff;
    margin-top: 30px;
}
.m2 ul {
    list-style: square outside;
    padding: 0;
    margin: 0;
}
.m2-item-text {
    background: #FFFFFF33;
    display: none;
    color: #fff;
    padding: 20px 20px 20px 40px;
    font-size: 16px;
    border-radius: 8px;
}
.m2-item-hdr {
    background: #E1E2E3;
    padding: 16px 25px 16px 40px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 20px;
    color: #1E272C;
    border-radius: 8px;
    border-left: 4px solid transparent;
    cursor: pointer;
}
.m2-item.open .m2-item-hdr svg {
    transform: rotate(180deg);
}


.m3-wrap {
    display: flex;
    flex-flow: row wrap;
    gap: 40px;
}
.m3-wrap > * {
    flex: 1 0 0;
}
.m3-l {
    display: flex;
    flex-flow: column;
    gap: 40px;
}
.m3 a {
    position: relative;
    border: 2px solid #FFFFFF1A;
    border-radius: 8px;
    display: block;
    overflow: hidden;
    height: 100%;
}
.m3-l a:first-child figure {
    height: 0;
    padding-top: 70%;
}
.m3-l a:last-child figure {
    height: 0;
    padding-top: 70%;
}
.m3-r a figure {
    height: 100%;
    /* padding-top: 140%; */
}
.m3 a div {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    background: #303D4599;
    backdrop-filter: blur(20px);
    padding: 30px 0;
    text-align: center;
    color: #FFFFFFE5;
    font-size: 36px;
}
.m3 a button.sb {
    position: absolute;
    bottom: 15px;
    right: 15px;
}

.flip-card {
    position: relative;
    perspective: 1000px;
    height: 100%;
}
.flip-front,
.flip-back {
    position: absolute;
    inset: 0;
    backface-visibility: hidden;
    transition: transform 0.6s ease, opacity 0.6s ease;
}
a.flip-close {
    position: absolute!important;
    top: 30px;
    right: 30px;
    z-index: 100;
    border: none!important;
    height: auto!important;
}

/* лицевая сторона */
.flip-front {
    transform: rotateY(0deg);
    opacity: 1;
}

/* задняя сторона */
.flip-back {
    transform: rotateY(180deg);
    opacity: 0;
}

/* активное состояние */
.flip-card.active .flip-front {
    transform: rotateY(-180deg);
    opacity: 0;
    pointer-events: none;
}

.flip-card.active .flip-back {
    transform: rotateY(0deg);
    opacity: 1;
}
.flip-back-wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    color: #fff;
}
.flip-back-wrap {
    background: #434f56;
	/* background: #FFFFFF4D; */
    /* backdrop-filter: blur(20px); */
    padding: 30px 45px;
    border-radius: 8px;
}
.m3 h4 {
    font-size: 25px;
    font-weight: bold;
    text-align: center;
    margin-top: 40px;
    margin-bottom: 25px;
}
.m3-frm {
    display: flex;
    flex-flow: row wrap;
    gap: 45px;
    justify-content: space-around;
}
.m3-frm figure {
    font-size: 20px;
}
.m3-frm img {
    position: relative;
    width: auto;
    height: auto;
    display: block;
    margin: 0 auto;
}
.m3-blk-wrap {
    display: flex;
    flex-flow: row wrap;
    gap: 20px;
}
.m3-blk {
    background: #F5F6F7;
    color: #3A3A3A;
    padding: 15px 20px;
    border-radius: 4px;
    flex: calc(50% - 10px);
}
.m3-blk p {
    font-size: 18px;
}
.m3-blk ul {
    padding: 0;
    margin: 0;
    list-style-position: inside;
    list-style-type: disc;
}
.m3-blk ul li::marker {
    color: #3A3A3A;
}



.m4-wrap {
    display: flex;
    flex-flow: row wrap;
    gap: 4px;
}
.m4 .flip-card {
    flex: calc(33.333% - 3px) 0 0;
	height: auto;
}
.flip-card.flip-empty {
    color: #fff;
    font-size: 30px;
    line-height: 1.3;
}
.m4 a {
    position: relative;
    border: 2px solid #FFFFFF1A;
    border-radius: 8px;
    display: block;
    overflow: hidden;
    height: 100%;
}
.m4 a figure {
    height: 0;
    padding-top: 70%;
}
.m4 a div {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to right, #00000080 0%, #00000040 100%);
}
.m4 a span {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    background: #FFEA0033;
    backdrop-filter: blur(10px);
    padding: 15px 20px;
    text-align: center;
    color: #FFFFFFE5;
    font-size: 24px;
    line-height: 1.3;
}
.m4 .flip-back-wrap {
    background: #787012;
    /* background: #FFFFFF4D; */
    /* backdrop-filter: blur(20px); */
    padding: 30px 45px;
    border-radius: 8px;
	font-size: 20px;
}
.m4 li::marker {
    color: #fff;
}



section.m5 {
    padding-top: 120px;
    padding-bottom: 120px;
}
.m5-wrap {
    display: flex;
    flex-flow: row wrap;
    gap: 40px;
}
.m5 figure {
    flex: 30% 0 0;
}
.m5 figure img {
    border-radius: 8px;
}
.m5-l {
    flex: 1 0 0;
}
.m5-hdr {
    padding: 40px;
}
.m5-list {
    display: flex;
    flex-flow: row wrap;
    gap: 40px;
    padding-top: 60px;
}
.m5-item {
    flex: calc(50% - 20px) 0 0;
    background: #FFFFFF08;
    padding: 10px 20px;
    position: relative;
    color: #fff;
    font-size: 18px;
    border-radius: 8px;
    overflow: hidden;
}
.m5-item h4 {
    font-size: 32px;
    font-weight: bold;
    margin: 0;
    margin-bottom: 15px;
}
.m5-brd {
    position: absolute;
    top: 0;
    left: 0;
    width: 4px;
    height: 100%;
    background: linear-gradient(to top, #ebd85d 10%,#EBD85D80 50%,#EBD85D00 100%);
}



.m6-wrap {
    display: flex;
    flex-flow: column;
}
.m6 figure {
    padding-top: 40%;
}
.m6 figure img {
    border-radius: 0 0 8px 8px;
}
.m6-list {
    display: flex;
    border-radius: 8px 8px 0 0;
    overflow: hidden;
}
.m6-item {
    flex: 1 0 0;
    display: flex;
    flex-flow: column;
    padding: 20px;
    justify-content: flex-end;
    background: #1E272C;
}
.m6-item:nth-child(2) {
    background: #303D45;
}
.m6-item:nth-child(3) {
    background: #37464F;
}
.m6-item:nth-child(4) {
    background: #4B5A63;
}
.m6-item:nth-child(5) {
    background: #5F6E77;
}
.m6-item:nth-child(6) {
    background: #73828B;
}
.m6-item h4 {
    color: #fff;
    font-size: 20px;
    margin: 0;
    flex: 1 0 0;
    margin-bottom: 8px;
}
.m6-item p {
    font-size: 90px;
    color: #FFF20066;
    line-height: 1;
    text-align: center;
    margin-top: 30px;
    margin-bottom: 20px;
}
.m6-item:last-child svg {
    margin-top: 4px;
    margin-bottom: 4px;
}


section.m7 {
    margin-top: 120px;
    margin-bottom: 90px;
}
.m7 h4 {
    font-size: 24px;
    color: #fff;
    max-width: 65%;
}
.m7 h4 i {
    font-style: normal;
    color: #FFF200;
    font-family: 'Archangelsk';
    font-size: 28px;
}
.m7 p {
    color: #fff;
    font-size: 20px;
    max-width: 50%;
}
.m7-map {
    display: flex;
    justify-content: flex-end;
    margin-top: -150px;
}



.m8-wrap {
    display: flex;
    flex-flow: row wrap;
}
.m8-form {
    flex: 60% 0 0;
}
.m8-text {
    flex: 1 0 0;
    padding: 80px 100px;
}
.m8-text-w {
    background: #FFF20033;
    padding: 40px;
    color: #fff;
    border-radius: 8px;
}
.m8-text h4+p {
    margin-bottom: 45px;
}
.m8-form {
    flex: 60% 0 0;
    padding: 80px;
}
.m8 .phone a {
    font-size: 24px;
    color: #fff;
    text-decoration: none;
    margin-bottom: 20px;
    display: inline-block;
}
.m8 .mail a {
    font-size: 20px;
    color: #fff;
    text-decoration: none;
    display: inline-block;
}

form h4 {
    font-size: 24px;
    color: #fff;
    margin: 0;
}
form h4+p {
    font-size: 16px;
    color: #fff;
    margin-bottom: 30px;
}
form input[type="text"], form input[type="tel"], form input[type="email"], form textarea {
    display: block;
    margin-bottom: 15px;
    padding: 15px 15px;
    border: 1px solid  #D5D6D8;
    border-radius: 8px;
    width: 100%;
    color: #2B2A2980;
}
form button {
    font-size: 18px;
    color: #303D45;
    border: none;
    background: #FFF200;
    border-radius: 8px;
    padding: 12px 100px;
    margin-top: 30px;
}
form button:disabled {
    opacity: 0.5;
}
input#fb-agree {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    width: 20px;
    height: 20px;
    background-color: #FFF200;
    border: 1px solid #ccc;
    border-radius: 3px;
    cursor: pointer;
    margin-right: 8px;
    position: relative;
    vertical-align: middle;
    padding: 0;
}
input#fb-agree:checked {
    background-color: #FFF200;
    border-color: #FFF200;
}
input#fb-agree:checked::after {
    content: "✓";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #303D45;
    font-size: 14px;
    font-weight: bold;
}
.form-checkbox label {
    color: #fff;
}
.form-checkbox label a {
    color: #fff;
    border-bottom: 1px solid #ccc;
    text-decoration: none;
}
form textarea {
    height: 120px;
}
.error-msg {
    color: #FFF200;
    font-size: 14px;
}


footer {
    background: #1E272C;
    padding-top: 60px;
    padding-bottom: 60px;
}
.ft-wrap {
    display: flex;
    flex-flow: row wrap;
    gap: 85px;
}
.ft-menu {
    flex: 1 0 0;
    display: flex;
    justify-content: space-between;
}
.ft-menu ul {
    margin: 0;
    list-style: none;
    padding: 0;
}
.ft-menu a {
    color: #FFFFFFB2;
    text-decoration: none;
    font-size: 14px;
    margin-bottom: 26px;
    display: inline-block;
}
.ft-addr {
    text-align: right;
}
.ft-tel a {
    color: #fff;
    text-decoration: none;
    font-size: 24px;
    margin-bottom: 15px;
    display: inline-block;
}
.ft-mail a {
    color: #fff;
    text-decoration: none;
    font-size: 20px;
    display: inline-block;
    margin-bottom: 25px;
}
.ft-req a {
    color: #FFFFFFB2;
    text-decoration: none;
    font-size: 14px;
    display: inline-block;
}




.banner.about .banner-text {
    padding-top: 240px;
    padding-bottom: 240px;
    margin-top: 104px;
}
section.a1 {
    margin-top: -45px;
}
.a1-wrap {
    background: #FFFFFF33;
    backdrop-filter: blur(100px);
    padding: 40px;
    display: flex;
    flex-flow: row wrap;
    color: #fff;
    font-size: 18px;
    border-radius: 8px;
    gap: 40px;
}
.a1-l {
    flex: 1 0 0;
}
.a1-r {
    flex: 40% 0 0;
}
.a2-hdr {
    margin-bottom: 60px;
}
.a2 h4 {
    font-size: 24px;
    color: #fff;
}
.a2 p {
    color: #fff;
    font-size: 20px;
}
.a2-wrap {
    display: flex;
    flex-flow: row wrap;
    gap: 40px;
    margin-bottom: 60px;
}
.a2-slog {
    display: flex;
    justify-content: flex-end;
    position: relative;
    margin-top: 60px;
    margin-bottom: 60px;
}
.a2-slog p {
    background: #FFFFFF1A;
    flex: 70% 0 0;
    color: #fff;
    backdrop-filter: blur(15px);
    border-radius: 12px;
    padding: 28px 40px;
    font-size: 24px;
}
.a2-slog svg {
    position: absolute;
    top: -20px;
    right: -20px;
}
.a2-list {
    display: flex;
    flex-flow: row wrap;
    gap: 40px;
    margin-top: 45px;
}
.a2-item {
    flex: 1 0 0;
    position: relative;
    overflow: hidden;
    border-radius: 8px;
    padding: 20px 0px 20px 20px;
    border-left: 2px solid #FFF200;
}
.a2-item h4 {
    font-size: 32px;
    font-weight: bold;
}
.a2-item p {
    font-size: 18px;
}

.a3-wrap {
    display: flex;
    flex-flow: row wrap;
    gap: 40px;
}
.a3-l, .a3-r {
    background: #F5F6F71A;
    flex: 1 0 0;
    padding: 40px;
    border-radius: 12px;
    color: #fff;
    font-size: 18px;
}
.a3 figure {
    flex: 100% 0 0;
    height: 0;
    padding-top: 33%;
}

.a4-wrap {
    display: flex;
    flex-flow: row wrap;
    gap: 40px;
}
.a4-l, .a4-r {
    display: flex;
    flex: 1 0 0;
    flex-flow: column;
    gap: 40px;
}
.a4-l figure, .a4-r figure {
    height: 0;
    padding-top: 90%;
}
.a4-r figure {
    height: auto;
    padding: 0;
    flex: 1 0 0;
}
.a4-l p, .a4-r p {
    font-size: 18px;
    color: #fff;
    padding: 40px;
    background: #F5F6F733;
    border-radius: 12px;
}
.a1 p i {
    font-size: 20px;
    font-style: normal;
    color: #FFF200;
}
.a2 p i {
    font-size: 24px;
    font-style: normal;
    color: #FFF200;
}
.a3 p i, .a4 p i  {
    font-family: 'Archangelsk';
    font-style: normal;
    font-size: 24px;
    color: #FFF200;
}

.a5-w1 {
    display: flex;
    flex-flow: row wrap;
    gap: 40px;
    margin-bottom: 45px;
}
.a5-w1 figure {
    flex: 1 0 0;
}
.a5-w1-txt {
    flex: 66% 0 0;
    font-size: 20px;
    color: #fff;
}
.a5-w2 {
    display: flex;
    flex-flow: row wrap;
    gap: 40px;
}
.a5-w2-txt {
    flex: 55% 0 0;
}
.a5-w2 figure {
    flex: 1 0 0;
}
.a5-w2-txt h4 {
    font-size: 20px;
    color: #fff;
    margin-bottom: 45px;
}
.a5-w2-txt p {
    font-size: 20px;
    color: #fff;
}
.a5 ul {
    list-style: none;
    padding: 0;
    margin: 0;
    margin-bottom: 60px;
    display: flex;
    flex-flow: row wrap;
    gap: 20px 40px;
}
.a5 ul li {
    display: flex;
    flex-flow: row;
    flex: calc(50% - 20px) 0 0;
    gap: 15px;
}
.a5 ul li svg {
    flex: 46px 0 0;
}
.a5-w2-txt ul p {
    font-size: 16px;
    color: #fff;
}
.a5 p i {
    font-size: 20px;
    font-style: normal;
    color: #FFF200;
}

.a6-wrap {
    display: flex;
    flex-flow: row wrap;
    gap: 45px 40px;
}
.a6-l {
    flex: 66% 0 0;
    color: #fff;
    font-size: 18px;
}
.a6-l figure {
    height: 0;
    padding-top: 45%;
    margin-bottom: 35px;
}
.a6-l-txt p:first-child {
    font-size: 20px;
}
.a6-l-txt p i:last-child {
    font-size: 20px;
    font-style: normal;
    color: #FFF200;
}
.a6-l-txt p i:first-child {
	font-family: 'Archangelsk';
    font-style: normal;
    font-size: 24px;
    color: #FFF200;
}
.a6-wrap figure:nth-child(2) {
    flex: 1 0 0;
}
.a6-wrap figure:nth-child(3) {
    flex: 43% 0 0;
    padding-top: 28%;
}
.a6-wrap figure:nth-child(4) {
    flex: 1 0 0;
}


.a7 h4 {
    max-width: 50%;
    font-size: 18px;
    color: #fff;
    margin-bottom: 20px;
    font-weight: 500;
}
.a7 h4 + p {
    color: #fff;
    max-width: 50%;
    font-size: 18px;
}
.a7 h4 + p + h5 {
    color: #fff;
    text-align: center;
    font-size: 20px;
    margin-top: 60px;
    margin-bottom: 45px;
}
.a7-wrap {
    display: flex;
    flex-flow: row wrap;
    gap: 40px;
}
.a7-item {
    flex: 1 0 0;
}
.a7-item figure {
    padding-top: 140%;
}
.a7-item p {
    font-size: 16px;
    color: #fff;
    margin-top: 15px;
}

.a9 p {
    color: #fff;
    font-size: 20px;
    max-width: 50%;
}
.a9-wrap {
    display: flex;
    justify-content: center;
    flex-flow: row wrap;
    gap: 60px 20px;
}
.a9-item {
    flex: calc(20% - 16px)  0 0;
    text-align: center;
}
.a9-item p {
    text-align: center;
    max-width: none;
}

section.a10 {
    padding-top: 120px;
    padding-bottom: 120px;
}
.a10-wrap {
    display: flex;
    flex-flow: row wrap;
    gap: 90px;
}
.a10-wrap > div {
    flex: 1 0 0;
}
.a10-text figure {
    height: 0;
    padding-top: 60%;
}
.a10 h3 {
    font-size: 60px;
    color: #FFF200;
    font-family: 'Archangelsk';
}
.a10-text p {
    font-size: 24px;
    color: #fff;
    margin-bottom: 30px;
}