// スタイルシート common

@charset "utf-8";

@import "mixin";

body{
	@include root;
	position: relative;
}

img, video{
	max-width: 100%;
	height: auto;
}

//a:hover {
//	opacity: .75;
//}

.default {
	@include contentdefault;
}

.fadein_object{
	opacity: 0;
	transform: translateY(40px);
	&[data-top="already"] {
		animation-name: fadeInAnime;
		animation-duration: 1s;
		animation-fill-mode: forwards;
	}
}
.fadein_object2{
	ul li {
		opacity: 0;
		transform: translateY(40px);
	}
	&[data-top="already"] ul li {
		animation-name: fadeInAnime;
		animation-duration: 1s;
		animation-fill-mode: forwards;
	}
	&[data-top="already"] ul li:nth-child(1) {animation-delay: .25s;}
	&[data-top="already"] ul li:nth-child(2) {animation-delay: .50s;}
	&[data-top="already"] ul li:nth-child(3) {animation-delay: .75s;}
}
@keyframes fadeInAnime {
	0%{
		opacity:0;
		transform: translateY(40px);
	}
	100%{
		opacity:1;
		transform: translateY(0px);
	}
}














div#header {
	div.container {
		@include container(1680,20);
		display:flex;
		position:relative;
		align-items:flex-end;;
		div.title {
			padding-top:18px;
			padding-bottom:33px;
			@include maxwidth(800){
				padding-bottom:18px;
			}
			div.description {
				@include f_all(14, "", 17);
				margin-bottom:20px;
				@include maxwidth(1000){
					@include f_all(11);
				}
				@include maxwidth(500){
					width:190px;
					margin-bottom:10px;
				}
			}
			h1 {
				a {
					img {
						width:333px;
						@include maxwidth(1000){
							width: 270px;
						}
						@include maxwidth(400){
							width:180px;
						}
					}
				}
			}
		}

		div#gnav {
			margin-left:auto;
			margin-bottom:30px;
			a#gnav_close {
				pointer-events: none;
				position:fixed;
				right:35px;
				top:32px;
				display:none;
				text-indent:9999px;
				overflow:hidden;
				white-space: nowrap;
				width:50px;
				height:50px;
				&:before, &:after {
					content:'';
					display:block;
					width:40px;
					height:2px;
					background-color:$themetextcolor;
					@include absolute_centering;
				}
				&:before {
					transform: rotateZ(45deg);
				}
				&:after {
					transform: rotateZ(-45deg);
				}
			}
			nav {
				ul {
					display:flex;
					@include f_all(18);
					@include maxwidth(1000){
						@include f_all(16);
					}
					@include maxwidth(800){
						flex-direction: column;
						align-items:center;
						@include f_all(16, 80, "");
					}
					li {
						margin-right: 50px;
						@include maxwidth(1000){
							margin-right: 25px;
						}
						transition: .2s;
						&:last-child {
							margin-right:0;
						}
						@include maxwidth(800){
							margin-right:0;
						}
						a {
							display:block;
							padding-bottom: 18px;
							position:relative;
							&:after {
								content:'';
								width: 15px;
								height:1px;
								background-color:currentcolor;
								position:absolute;
								bottom:4px;
								left:0;
								right:0;
								margin:auto;
								transition: .2s;
								border-radius:100px;
							}
							@include maxwidth(800){
								padding: 20px 0;
								&:after {
									display:none;
								}
							}
						}
						&.current,
						&:hover {
							a {
								&:after {
									width:8px;
									height:8px;
									//border-radius:8px;
									background-color:$themecolor;
									bottom:0;
								}
							}
						}
						&:hover {
							color:$themecolor;
						}
					}
				}
			}
			@include maxwidth(800){
				display:flex;
				transform: scale(0);
				position:fixed;
				top:0;
				right:0;
				bottom:0;
				left:0;
				justify-content:center;
				align-items:center;
				background-color:rgba($themecolor, .9);
				color:$themetextcolor;
				z-index:9999;
				margin-bottom:0;
				a#gnav_close {
					display:block;
				}
				nav {
					ul {
						transition: .5s;
						transform: translateY(40px);
						opacity:0;
						li {
							&:hover {
								color:$themetextcolor;
								a:hover {
									text-decoration:underline;
								}
							}
						}
					}
				}
				body.menu_open & {
					transform:scale(1);
					nav {
						ul {
							opacity:1;
							transform: translateY(0);
						}
					}
				}
			}
		}
		div.contact {
			position:absolute;
			right:0;
			top:0;
			@include maxwidth(800){
				position:fixed;
				right:20px;
				bottom:0;
				//left:0;
				top:auto;
				z-index:100;
			}
			@include maxwidth(500){
				right:0;
				left:0;
			}
			ul.common_button_area2 {
				display:flex;
				li {
					margin-right:20px;
					@include maxwidth(500){
						margin-right:0;
						flex: 0 1 100%;
						&:last-child a:after { display:none; }
					}
					&:last-child {
						margin-right:0;
					}
					a {
						display:flex;
						width: 220px;
						height:60px;
						background-color:$themecolor;
						color:$themetextcolor;
						justify-content:center;
						align-items:center;
						span.icon {
							margin-right:11px;
							flex: 0 0 22px;
							img {
								width:100%;
							}
						}
						span.text {
							flex: 0 1 auto;
						}
						@include maxwidth(500){
							width:100%;
							position:relative;
							&:after {
								content:'';
								display:block;
								position:absolute;
								top:15px;
								bottom:15px;
								right:0;
								width:1px;
								background-color:currentcolor;
								opacity:.5;
							}
							
						}
					}
				}
				li.tel {
					a {
						span.icon {
							@include maxwidth(400){
								margin-right:2px;
							}
							img {
							}
						}
						span.text {
							span {
								display:block;
							}
							span.t1 {
								@include f_all(21);
								margin-bottom:4px;
								@include maxwidth(400){
									@include f_all(19);
									margin-bottom:5px;
								}
							}
							span.t2 {
								@include f_all(10, 100, "");
							}
						}
					}
				}
				li.contact {
					a {
						span.icon {
							img {
							}
						}
						span.text {
							@include f_all(16);
							@include fw_b;
						}
					}
				}
			}
		}
		div#gnavToggle.scroll {
			display:none;
			@include maxwidth(800){
				display:block;
			}
			a {
				position:absolute;
				right:0;
				bottom:12px;
				@include maxwidth(800){
					bottom:0;
					top:0;
					margin:auto;
				}
				body.menubutton_scrollout & {
					position:fixed;
					top:10px;
					right:10px;
					bottom:auto;
					z-index:100;
				}
				display:block;
				width:80px;
				height:80px;
				background-color:$themecolor;
				color:$themetextcolor;
				span {
					display:block;
					@include absolute_centering;
				}
				span.l {
					@include f_all(14);
					@include fw_b;
					text-align:center;
					height:1em;;
					transform: translateY(-16px);
				}
				span.b {
					background-color:currentcolor;
					border-radius:10px;
				}
				span.b.b1 {
					width: 10px;
					height:10px;
					transform: translateY(6px);
				}
				span.b.b2 {
					width:6px;
					height:6px;
					transform: translateY(20px);
				}
			}
		}
	}
}

div#mainVisual {
	background-color:$basetextcolor;
	color:$basecolor;
	div.container {
		position:relative;
		div.slides {
			position:relative;
			&:after {
				content:'';
				background:linear-gradient(180deg, rgba(#000,.2), rgba(#000, .7));
				@include absolute_centering;
				pointer-events: none;
			}
			div.slide_frame {
				p {
					span {
						display:block;
						height: 913px;
						background:none center / cover no-repeat;
						@include maxwidth(600){
							height:calc(100vh - 250px);
						}
					}
				}
			}
		}
		div.overlay {
			position:absolute;
			left:137px;
			bottom:15px;
			display:flex;
			flex-direction: column;
			align-items:center;
			@include maxwidth(1240){
				left:50px;
			}
			@include maxwidth(600){
				left:0;
				right:0;
				margin:auto;
				padding: 0 10px;
			}
			div.text {
				@include fw_b;
				margin-bottom:75px;
				@include maxwidth(600){
					margin-bottom:25px;
				}
				div.t1 {
					@include f_all(57, "", 70);
					margin-bottom:20px;
					@include maxwidth(600){
						margin-bottom:7px;
						@include f_all(27, "", 42);
					}
				}
				div.t2 {
					@include f_all(34, "", 41);
					@include maxwidth(600){
						@include f_all(13, "", 24);
					}
				}
			}
			div.scroll {
				a {
					display:block;
					width:52px;
					text-align:center;
					span.t1 {
						@include f_all(14);
						margin-bottom:10px;
						display:block;
						@include maxwidth(600){
							@include f_all(11);
						}
					}
					span.icon {
						background:url(../images/scroll.svg) center bottom / contain no-repeat;
						display:inline-block;
						width:31px;
						height:31px;
						@include maxwidth(600){
							background-image:url(../images/scroll-small.svg);
							width:21px;
							height:21px;
						}
					}
				}
			}
		}
	}
}


div.heading.toppage_common_heading {
	position:relative;
	&:before {
		content:attr(data-en);
		@include f_all(120);
		@include maxwidth(1240){
			@include f_all(90);
		}
		@include maxwidth(500){
			@include f_all(60);
		}
		color:#dfdfdf;
		@include absolute_centering;
		bottom:.15em;
		display:flex;
		justify-content:center;
		align-items:center;
		text-align:center;
	}
	h2 {
		padding: 50px 0;
		@include f_all(24, "", 35);
		@include fw_b;
		text-align:center;
		z-index:1;
		position:relative;
		&:before {
			content:'';
			display:block;
			@include absolute_centering;
			bottom:auto;
			height:24px;
			width:100px;
			background:url(../images/num-01.svg) center / contain no-repeat;
		}
		&:after {
			content:'';
			display:block;
			@include absolute_centering;
			top:auto;
			width:10px;
			height:34px;
			background:url(../images/decoration-01-color.svg) center bottom / contain no-repeat;
		}
	}
}

.common_button_area a {
	display:inline-flex;
	width:200px;
	height:55px;
	justify-content:center;
	align-items:center;
	background-color:$basetextcolor;
	color:$basecolor;
	@include f_all(14, "", 20);
	@include fw_b;
	position:relative;
	&:before {
		content:'';
		width:20px;
		height:1px;
		background-color:currentcolor;
		position:absolute;
		top:0;
		bottom:0;
		left:0;
		margin:auto;
		transition: .2s;
	}
	&:hover:before {
		width: 30px;
	}
}

div#content {
	section {

		//& > div { display:none; }

		// サブページ

		div#subpageHeading {
			background: none center / cover no-repeat $basetextcolor;
			color:$basecolor;
			position:relative;
			margin-bottom:30px;
			&:before {
				content:'';
				background-color:rgba($basetextcolor, .5);
				@include absolute_centering;
			}
			div.container {
				@include container(1600, 0);
				height:280px;
				display:flex;
				justify-content:center;
				align-items:center;
				h2 {
					display:flex;
					flex-direction: column;
					align-items:center;
					padding: 20px 0 55px;
					span.en {
						@include f_all(14, 40, 18);
						margin-bottom:15px;
					}
					span.ja {
						@include f_all(24, 40, 30);
						@include fw_b;
					}
					background: url(../images/decoration-01-white.svg) center bottom / 10px auto no-repeat;
				}
			}
		}

		div#subpageTopicPath {
			margin-bottom:80px;
			div.container {
				background-color:#f1f1f1;
				color:$basetextcolor;
				@include f_all(14, "", 20);
				@include container(1580, 10);
				ul {
					margin: 0 50px;
					padding: 1em 0;
					@include maxwidth(840){
						margin: 0 20px;
					}
					li {
						display:inline;
						&:after {
							content:'－';
							margin-left: .25em;
						}
						&:last-child:after {
							display:none;
						}
						a {
						}
					}
				}
			}
		}

		div#subpageContent {
			margin-bottom:120px;
			div.container {
				@include container(800, 20);
			}
		}



		// トップページ

		div#toppageConcept {
			div.container {
				display:flex;
				@include container(1580, 0);
				@include maxwidth(1060){
					display:block;
				}
				div.body {
					flex: 0 1 800px;
					background-color:#f1f1f1;
					padding:117px 110px 80px;
					@include maxwidth(1580){
						padding:117px 60px 80px;
					}
					@include maxwidth(1240){
						flex: 0 1 600px;
						padding: 60px 30px;
					}
					box-sizing: border-box;
					div.heading.toppage_common_heading {
						margin-bottom: 38px;
						h2 {
							&:before {
								background-image:url(../images/num-01.svg);
							}
						}
					}
					div.leadtext {
						@include f_all(21, "", 30);
						@include fw_b;
						margin-bottom: 59px;
						text-align:center;
						h3 {
						}
					}
					div.logo {
						max-width: 333px;
						margin: 0 auto 60px;
						img {
						}
					}
					div.text {
						margin-bottom:50px;
						@include f_all(14, "", 36);
						p {
						}
					}
					div.link {
						text-align:center;
						a {
						}
					}
				}
				div.aside {
					flex: 0 1 660px;
					margin: 100px 40px 0 80px;
					@include maxwidth(1580){
						margin-left:20px;
						margin-right: 20px;
					}
					height:788px;
					background: none top 0px center / 100% auto no-repeat;
					@include maxwidth(600){
						background: none top 0px center / cover no-repeat;
					}
					//outline: 1px solid red;
				}
			}
		}

		div#toppageBusiness {
			padding-top:144px;
			padding-bottom:90px;
			div.heading.toppage_common_heading {
				margin-bottom:66px;
				h2 {
					&:before {
						background-image:url(../images/num-02.svg);
					}
				}
			}
			div.body {
				div.container {
					@include container(1580, 40);
					display:flex;
					//flex-wrap:wrap;
					@include maxwidth(1060){
						display:block;
						margin-left:20px;
						margin-right:20px;
					}
					@include maxwidth(500){
						margin-right:0;
						margin-left:0;
					}
					div.item {
						//flex: 0 1 780px;
						margin-right:20px;
						position:relative;
						background: none center / cover no-repeat;
						flex: 0 0 50%;
						&:last-child { margin-right:0;}
						@include maxwidth(1060){
							margin-right:0;
							margin-bottom:20px;
							&:last-child { margin-bottom:0;}
						}
						&:before {
							content:'';
							background-color:$basecolor;
							opacity:.6;
							@include absolute_centering;
						}
						div.docs {
							display:flex;
							flex-direction: column;
							align-items:center;
							padding:45px 145px 30px;
							@include maxwidth(1640){
								padding: 45px 60px 30px;
							}
							@include maxwidth(500){
								padding: 45px 20px;
							}
							div.i {
								margin-bottom:30px;
								img {
									width:95px;
								}
							}
							div.h {
								margin-bottom:32px;
								@include f_all(21, "", 30);
								@include fw_b;
								h3 {
								}
							}
							div.b {
								margin-bottom:70px;
								@include f_all(14, "",36);
							}
							div.l.common_button_area {
								a {
								}
							}
						}
					}
				}
			}
		}

		div#toppageRecruit {
			background-color:#f1f1f1;
			color:$basetextcolor;
			padding:80px 0;
			div.container {
				@include container(1580, 40);
				@include maxwidth(500){
					margin-left:20px;
					margin-right:20px;
				}
				display:flex;
				flex-direction: row-reverse;
				//flex-wrap:wrap;
				@include maxwidth(1000){
					display:block;
				}
				div.body {
					flex: 0 1 530px;
					padding: 0 50px;
					margin-left:56px;
					@include maxwidth(1200){
						//flex: 0 1 400px;
						padding: 0 0px;
					}
					@include maxwidth(1000){
						margin-left:auto;
						margin-right:auto;
						margin-bottom: 50px;
						max-width:530px;
					}
					div.heading.toppage_common_heading {
					margin-bottom:50px;
						h2 {
							&:before {
								background-image:url(../images/num-03.svg);
							}
						}
					}
					div.leadtext {
						margin-bottom:30px;
						@include f_all(21, "", 30);
						@include fw_b;
						text-align:center;
						h3 {
						}
					}
					div.text {
						@include f_all(14, "", 36);
						p {
						}
					}
				}
				div.links {
					flex: 0 1 894px;
					display:flex;
					@include maxwidth(1000){
						flex-direction: column;
					}
					div.col {
						flex: 0 1 100%;
						margin-right: 20px;
						display:flex;
						flex-direction: column;
						&:last-child {
							margin-right:0;
						}
						@include maxwidth(1000){
							flex-direction: row;
							margin-right:0;
							flex: 0 0 230px;
							margin-bottom:20px;
							&:last-child { margin-bottom:0; }
						}
						@include maxwidth(540){
							flex-direction: column;
							flex: 0 0 480px;
						}
						div.tile {
							flex: 0 1 100%;
							margin-bottom: 10px;
							&:last-child { margin-bottom:0;}
							position:relative;
							color:$themetextcolor;
							display:flex;
							justify-content:center;
							align-items:center;
							background:none center / cover no-repeat;
							@include maxwidth(1000){
								margin-bottom: 0;
								margin-right:10px;
								&:last-child { margin-right:0;}
							}
							@include maxwidth(540){
								margin-bottom: 20px;
								margin-right:0;
							}
							&:before {
								content:'';
								background-color:$themecolor;
								opacity:.75;
								display:block;
								@include absolute_centering;
							}
							div.t {
								z-index:1;
								@include f_all(21, "", 30);
								@include fw_b;
								margin-top:-1.5em;
							}
							div.l {
								position:absolute;
								bottom:10px;
								left:0;
								right:0;
								text-align:center;
								a {
								}
							}
						}
					}
				}
			}
		}

		div.newstopics_nav {
			margin-bottom:50px;
			ul {
				display:flex;
				flex-wrap:wrap;
				justify-content:center;
				@include maxwidth(600){
					justify-content:flex-start;
				}
				li {
					flex: 0 0 160px;
					margin-right: 50px;
					@include maxwidth(800){
						margin-right:20px;
					}
					&:last-child {
						margin-right:0;
					}
					@include maxwidth(600){
						flex: 0 1 calc(50% - 3px);
						margin-right:6px;
						margin-top:6px;
						&:nth-child(2n) {
							margin-right:0;
						}
						&:nth-child(1), &:nth-child(2) {
							margin-top:0;
						}
					}
					a {
						width: 100%;
						height:45px;
						&.current{
							background-color:$themecolor;
							color:$themetextcolor;
						}
					}
				}
			}
		}


		div.newstopics_headline {
			ul {
				li {
					&:first-child a {
						border-top: 1px solid #cfcfcf;
					}
					a {
						display:flex;
						padding:20px 0 20px 50px;
						border-bottom: 1px solid #cfcfcf;
						position:relative;
						&:after {
							content:'';
							width:20px;
							height:1px;
							background-color:currentcolor;
							position:absolute;
							margin:auto;
							top:0; bottom:0; left: calc(100% - 35px);
							transition: .2s;
						}
						&:hover {
							opacity:.7;
							&:after { width:30px; }
						}
						@include maxwidth(800){
							padding: 20px 0 20px 15px;
						}
						@include maxwidth(600){
							flex-wrap:wrap;
						}
						span {
							@include f_all(14, "", 20);
						}
						span.date {
							margin-right:60px;
							@include maxwidth(600){
								margin-right:20px;
							}
						}
						span.terms {
							margin-right:30px;
							@include maxwidth(600){
								margin-right:0;
							}
							span.term {
								@include f_all(12, "", 12);
								border:1px solid #707070;
								display:flex;
								justify-content:center;
								align-items:center;
								width: 107px;
								height:22px;
								box-sizing: border-box;
								padding-bottom:2px;
							}
						}
						span.title {
							@include maxwidth(600){
								flex: 0 0 100%;
								margin-top:10px;
							}
							span.term.blog {
							}
						}
					}
				}
			}
		}

		div.subpageArchive {
			margin-bottom:120px;
			div.container {
				@include container(800, 20);
			}
		}

		div#toppageNewsTopics {
			padding: 145px 0 96px;
			div.container {
				@include container(900, 20);
				div.heading.toppage_common_heading {
					margin-bottom:66px;
					h2 {
						&:before {
							background-image:url(../images/num-04.svg);
						}
					}
				}
				div.body {
					div.newstopics_nav {
					}
					div.newstopics_headline {
					}
				}
			}
		}

		div#toppageInstagram {
			div.container {
				@include container(1580, 0);
				background-color:#f1f1f1;
				color:$basetextcolor;
				padding: 0 0 30px;
				div.heading.toppage_common_heading {
					transform: translateY(-15px);
					margin-bottom:3px;
					h2 {
						&:before {
							width:32px;
							height:32px;
							background-image:url(../images/icon-instagram-color.svg);
						}
					}
				}
				div.body {
					@include container(896, 20);
					ul {
						margin-bottom:25px;
						display:flex;
						justify-content:center;
						flex-wrap:wrap;
						@include maxwidth(1000){
							width: 454px;
							margin:auto;
						}
						@include maxwidth(600){
							width: 356px;
							margin:auto;
						}
						@include maxwidth(360){
							width: 280px;
							margin:auto;
						}
						li {
							margin-left: 6px;
							margin-right:6px;
							margin-bottom:12px;
							a {
								img {
									@include maxwidth(600){
										width:166px;
									}
									@include maxwidth(360){
										width:128px;
									}
								}
							}
						}
					}
					div.common_button_area {
						margin-top:15px;
						text-align:center;
						a {
							width:267px;
							img {
								margin-left:6px;
								width: 16px;
							}
						}
					}
				}
			}
		}

		div#toppageContact {
			padding:158px 0 106px;
			position:relative;
			&:after {
				content:'';
				display:block;
				background-color:#f1f1f1;
				max-width: 800px;
				margin:auto;
				position:absolute;
				bottom:0;
				left:0;
				right:0;
				top: 78px;
				@include maxwidth(920){
					width:auto;
					margin: 0 60px;
				}
				@include maxwidth(540){
					margin: 0 40px;
				}
			}
			div.container {
				z-index:1;
				@include container(1580, 13);
				border:1px solid #5f5e5e;
				padding:75px 10px 50px;
				box-sizing: border-box;
				div.heading.toppage_common_heading {
					margin-bottom:70px;
					h2 {
						&:before {
							background-image:url(../images/num-05.svg);
						}
					}
				}
				div.body {
					div.text {
						margin-bottom:50px;
						text-align:center;
						@include f_all(14, "", 20);
						p {
						}
					}
					div.links {
						ul.common_button_area2 {
							li {
								margin-bottom:20px;
								&:last-child {
									margin-bottom:0;
								}
								a {
									margin:auto;
									display:flex;
									width: 380px;
									height:100px;
									box-sizing: border-box;
									@include maxwidth(460){
										width: 260px;
										overflow:hidden;
									}
								}
							}
							li.tel {
								a {
									flex-wrap:wrap;
									background-color:$basecolor;
									color:$basetextcolor;
									border:1px solid currentcolor;
									display:flex;
									justify-content:center;
									align-items:center;
									flex-direction: column;
									span.row1 {
										display:flex;
										justify-content:center;
										align-items:center;
										margin-bottom:5px;
										span.icon {
											flex: 0 0 37px;
											img {
											}
										}
										span.telnum {
											flex: 0 0 auto;
											text-align:center;
											@include f_all(32);
											@include fw_b;
											color:$themecolor;
											@include maxwidth(460){
												@include f_all(24);
											}
										}
									}
									span.row2 {
										span.teltime {
											@include f_all(14);
										}
									}
								}
							}
							li.contact {
								a {
									background-color:$themecolor;
									color:$themetextcolor;
									justify-content:center;
									align-items:center;
									@include f_all(18);
									@include maxwidth(460){
										@include f_all(15);
									}
									@include fw_b;
									img {
										width:25px;
										margin-right:13px;
									}
									position:relative;
									&:after {
										content:'';
										width:0;
										height:0;
										border:10px solid currentcolor;
										border-width:5px 10px;
										border-color:transparent transparent transparent currentcolor;
										position:absolute;
										top:0;
										bottom:0;
										right:25px;
										margin:auto;
										opacity:0;
										transition: .2s;
									}
									&:hover:after {
										opacity:1;
										right:10px;
									}
								}
							}
						}
					}
				}
			}
		}
	}
}

div#footer {
	background-color:$themecolor;
	color:$themetextcolor;
	padding:80px 0 30px;
	@include maxwidth(800){
		padding-bottom:80px;
	}
	a:hover {
		opacity:.7;
	}
	position:relative;
	div.container {
		@include container(1920, 20);

		div#totop {
			a {
				z-index:100;
				display:block;
				width:50px;
				height:50px;
				background-color:$basetextcolor;
				color:$basecolor;
				//position:absolute;
				//right:-20px;
				//top:-130px;
				text-indent:9999px;
				overflow:hidden;
				white-space: nowrap;
				transform: translateY(55px);
				position:fixed;
				right:0;
				bottom:0;
				transition: 1s;
				@include maxwidth(500){
					bottom:60px;
					transform: translateY(115px);
				}
				body.menubutton_scrollout & {
					transform: translateY(0);
				}
				&:after {
					content:'';
					display:block;
					width:8px;
					height:8px;
					box-shadow: -2px -2px 0 0 currentcolor;
					transform: translateY(5px) rotateZ(45deg) ;
					@include absolute_centering;
				}
			}
		}

		div#footerLogo {
			text-align:center;
			margin-bottom:15px;
			a {
				img {
					width:333px;
				}
			}
		}

		div#footerAddress {
			margin-bottom:60px;
			@include f_all(14, "", 20);
			@include maxwidth(500){
				@include f_all(12, "", 20);
			}
			text-align:center;
			p {
			}
		}

		div#footerMenu {
			margin-bottom:80px;
			div.item {
				margin-bottom:30px;
				@include maxwidth(500){
					margin-bottom:60px;
				}
				&:last-child {
					margin-bottom:0;
				}
				ul {
					display:flex;
					flex-wrap:wrap;
					justify-content:center;
					@include maxwidth(500){
						display:block;
						text-align:center;
					}
					li {
						margin: 0 1em 1em;
						@include f_all(14, "", 18);
						@include maxwidth(500){
							margin-bottom:25px;
						}
					}
				}
			}
		}

		div#footerCopy {
			@include f_all(12, "", 17);
			text-align:center;
			p {
			}
		}
	}
}
