@charset "UTF-8";

/* General Settings
------------------------------------------ */

* {
	box-sizing: border-box;
}
:root {
	--blue-color: #0061a9;
	--red-color: #cc0014;
	--bg-color: #e5eff6;
	--fsize-13: .8125rem;
	--fsize-14: .875rem;
	--fsize-15: .9375rem;
	--fsize-18: 1.125rem;
	--fsize-20: 1.25rem;
	--fsize-22: 1.375rem;
	--fsize-24: 1.5rem;
	--fsize-26: 1.625rem;
	--fsize-28: 1.75rem;
	--fsize-30: 1.875rem;
	--fsize-36: 2.25rem;
	--fsize-40: 2.5rem;
	--fsize-42: 2.625rem;
	--fsize-44: 2.75rem;
	--fsize-48: 3rem;
	--fsize-54: 3.375rem;
	--fsize-56: 3.5rem;
	--fsize-60: 3.75rem;
	--fsize-64: 4rem;
	--fsize-66: 4.125rem;
	--fsize-72: 4.5rem;
	--ffamily-ja: NotoSansJP,"游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", 'メイリオ', Meiryo, sans-serif;
	--ffamily-en: Roboto, NotoSansJP,"游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", 'メイリオ', Meiryo, sans-serif;
}
html {
	scroll-padding-top: 100px;
}
body {
	position: relative;
	color: #444;
	background: #FFF;
	font-size: 18px;
	/* font-size: 1.125rem; */
	font-size: var(--fsize-18);
	line-height: 2.0;
	font-family: NotoSansJP,"游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", 'メイリオ', Meiryo, sans-serif;
	font-weight: 400;
	margin: 0;
	padding: 0;
}
main {
	position: relative;
	/* padding-top: 100px; */
}
article {
	position: relative;
}
h1,h2,h3,h4,h5,h6 {
	font-family: NotoSansJP, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", 'メイリオ', Meiryo, sans-serif;
	font-weight: 700;
	line-height: 1.6;
	margin: 0 0 1.5em;
}
img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}
ul, ol {
	margin: 0;
	padding: 0;
}
ul li, ol li {
	list-style-type: none;
}

dl, dt, dd, figure {
	margin: 0;
	padding: 0;
}
p {
	word-wrap: break-word;
}
em {
	display: block;
	font-style: normal;
}
a {
	text-decoration: none;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
a[href*="tel:"] {
	pointer-events: none;
}
.alignl {
	text-align: left;
}
.alignc {
	text-align: center;
}
.alignr {
	text-align: right;
}

.grecaptcha-badge{
    margin-block-end: 50px;
}

@media screen and (max-width: 800px) {
	body {
		font-size: 16px;
		font-size: 1rem;
	}
}
/*-------------------------------------
 for block editor
 --------------------------------------*/
.aligncenter,
.aligncenter img {
	margin-left: auto;
	margin-right: auto;
}
img.aligncenter  {
	display: block;
	margin-left: auto;
	margin-right: auto;
}
img.alignright {
	margin-left: auto;
}
.wp-block-button__link {
	border-radius: 0;
}
.wp-block-buttons .wp-block-button {
	display: block;
	margin: 0 auto 60px;
}
.wp-block-buttons .wp-block-button:last-child {
	margin-right: auto;
}

/*-------------------------------------
 common
--------------------------------------*/

strong {
	font-family: NotoSansJP, "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-weight: 700;
}

.btn {
	max-width: 380px;
	width: 100%;
	height: 74px;
	margin: 0 auto;
}
.btn a {
	position: relative;
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	letter-spacing: .075em;
	border: 2px solid var(--blue-color);
	background-color: var(--blue-color);
	color: #FFF;
	border-radius: 48px 48px;
	font-weight: 500;
	/* font-size: 1.375rem; */
	font-size: var(--fsize-22);
	line-height: 1;
	letter-spacing: .025em;
}
.btn a::after {
	content: '';
	display: inline-block;
	width: 20px;
	height: 20px;
	background: url(../img/arrow1-w.svg) no-repeat center center;
	background-size: contain;
	margin-inline-start: .5em;
	transition: all .5s ease;
}
.btn a:hover {
	opacity: .8;
}
.btn a:hover::after {
	margin-left: 1em;
}
.btn.member a {
	border: 2px solid var(--red-color);
	background-color: var(--red-color);
}
.btn2 {
	width: 200px;
	height: 60px;
}
.btn2 a {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	border: 2px solid var(--blue-color);
	color: var(--blue-color);
	font-weight: 700;
	line-height: 1;
	letter-spacing: .025em;
	border-radius: 30px;
	margin-top: 30px;
}
.btn2 a::after {
	content: '';
	display: inline-block;
	width: 9px;
	height: 15px;
	background: url(../img/arrow2.svg) no-repeat center center;
	background-size: contain;
	margin-left: .5em;
	transition: all .5s ease;
}
.btn2 a:hover {
	background: var(--blue-color);
	color: #FFF;
}
.btn2 a:hover::after {
	background: url(../img/arrow2-w.svg) no-repeat center center;
	background-size: contain;
}
.pc-mode {
	display: block;
}
img.pc-mode {
	display: inline;
}
.sp-mode {
	display: none;
}
#sp-nav {
	display: none;
}
.half-wrap {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: justify;
	justify-content: space-between;
}


/* common responsive
--------------------------------------*/
@media screen and (max-width: 1400px) {
	.btn a {
		font-size: var(--fsize-20);
	}
}
@media screen and (max-width: 1200px) {
	html {
		scroll-padding-top: 60px;
	}
}
@media screen and (max-width: 800px) {
	.btn {
		height: 70px;
	}
	.btn a {
        font-size: var(--fsize-18);
    }
}
@media screen and (max-width: 480px) {
	.btn {
		max-width: initial;
	}
}

/*-------------------------------------
 header
--------------------------------------*/
header {
	/* position: fixed;
	left: 0;
	top: 0;
	z-index: 99; */
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: justify;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	height: 100px;
	background-color: #FFF;
	transition: all .5s ease;
}
header.fixed {
	position: fixed;
	left: 0;
	top: 0;
	z-index: 99;
	transition: all .5s ease;
}
header h1 {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: start;
	justify-content: flex-start;
	align-items: center;
	max-width: 464px;
	/* width: 24.1vw; */
	width: 100%;
	padding-left: 2.6vw;
	margin: 0 1.5% 0 0;
}
header h1 a {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: start;
	justify-content: flex-start;
	align-items: center;
	width: inherit;
}
header h1 img {
	width: inherit;
}
header #pc-nav {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: end;
	justify-content: flex-end;
	align-items: center;
}
header .upper,
header .gnav {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: end;
	justify-content: flex-end;
	margin-right: 1.5em;
	font-weight: 500;
	line-height: 1;
}
header .upper {
	font-size: 1rem;
	margin-bottom: 1em;
}
header .upper a,
header .gnav a {
	color: #444;
}
header .upper a:hover {
	color: var(--blue-color);
}
header .upper li {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: start;
	justify-content: flex-start;
	align-items: center;
	margin-right: 1.5em;
}
header .upper li p {
	margin: 0;
}
header .upper #h_search:hover {
	cursor: pointer;
	color: var(--blue-color);
}
header .upper #h_search::before {
	content: '';
	display: inline-block;
	width: 16px;
	height: 16px;
	background: url(../img/search.svg) no-repeat center center;
	margin-right: .3em;
	transition: all 0.5s ease;
}
header .upper #h_search:hover::before {
	background: url(../img/search-b.svg) no-repeat center center;
}
header .upper #h_contact a::before {
	content: '';
	display: inline-block;
	width: 16px;
	height: 12px;
	background: url(../img/mail.svg) no-repeat center center;
	margin-right: .3em;
	transition: all 0.5s ease;
}
header .upper #h_contact a:hover::before {
	background: url(../img/mail-b.svg) no-repeat center center;
}
header .upper #h_lang a {
	margin-right: .5em;
	color: #888;
}
header .upper #h_lang a.current {
	color: #444;
}
header .upper #h_lang a:hover,
header .upper #h_lang a.current:hover {
	color: var(--blue-color);
}
header .upper #h_lang a:last-of-type {
	margin-right: 0;
}
header .upper #h_lang a::after {
	content: '';
	display: inline-block;
	width: 1px;
	height: 1em;
	background-color: #888;
	margin-left: .5em;
}
header .upper #h_lang a:last-of-type::after {
	display: none;
}
header .gnav li {
	margin-right: 1.5em;
}
header .upper li:last-child,
header .gnav li:last-child {
	margin-right: 0;
}
header .gnav a {
	position: relative;
	display: inline-block;
	overflow: hidden;
	padding: 6px 0;
}
header .gnav a:hover {
	color: var(--blue-color);
}
header .gnav a::after {
	content: '';
	position: absolute;
	left: -101%;
	bottom: 2px;
	display: block;
	width: 100%;
	height: 2px;
	background-color: var(--blue-color);
	transition: all 0.5s ease;
}
header .gnav a:hover::after {
	left: 0;
}
header #pc-nav .btns {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: end;
	justify-content: flex-end;
}
header #pc-nav .btns a {
	position: relative;
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	width: 100px;
	height: 100px;
	text-align: center;
	color: #FFF;
	font-size: .8125rem;
	font-weight: 500;
	line-height: 1.3;
	padding-top: .5em;
}
header #pc-nav .btns a:hover {
	opacity: .8;
}
header #pc-nav .btns a:first-of-type {
	background-color: var(--blue-color);
}
header #pc-nav .btns a:first-of-type::before {
	content: '';
	display: block;
	width: 50px;
	height: 31px;
	background: url(../img/baios.svg) no-repeat top center;
	background-size: contain;
	margin: 0 auto 5px;
}
header #pc-nav .btns a:last-of-type {
	background-color: var(--red-color);;
}
header #pc-nav .btns a:last-of-type::before {
	content: '';
	display: block;
	width: 50px;
	height: 31px;
	background: url(../img/baios-add.svg) no-repeat top center;
	background-size: contain;
	margin: 0 auto 5px;
}
#search-form {
	display: none;
}
#search-form {
	position: fixed;
	left: 0;
	top: 100px;
	z-index: 1000;
	width: 100%;
	padding: 2em;
	background-color: var(--bg-color);
	text-align: center;
}
#search-form h3 {
	font-size: var(--fsize-24);
	margin-bottom: .5em;
	color: var(--blue-color);
}
#top #search-form h3 {
	font-size: var(--fsize-24);
}
#search-form div {
	display: flex;
	justify-content: center;
}
#search-form input#s {
	padding: .5em;
	width: 480px;
	margin: 0;
	border-radius: 4px;
	border: 1px solid #999;
	box-sizing: border-box;
}
#search-form input#s::placeholder {
	font-size: 1rem;
}
#search-form #searchsubmit {
	display: block;
	text-indent: -9090px;
	border-style: none;
	width: 40px;
	padding: 0;
	margin: 0;
	background: url(../img/search.svg) no-repeat center center;
	background-size: 30px;
	border-width: 0;
	border-radius: 0;
	box-sizing: border-box;
	margin-inline-start: 10px;
}
#search-form #searchsubmit:hover {
	cursor: pointer;
}

/* header responsive
--------------------------------------*/
@media screen and (max-width: 1500px) {

}
@media screen and (max-width: 1400px) {
	header h1 {
		max-width: 400px;
	}
	header .gnav {
		font-size: 1rem;
	}
	header .upper {
		font-size: var(--fsize-15);
	}
}
@media screen and (max-width: 1300px) {
	
}
@media screen and (max-width: 1200px) {
	a[href*="tel:"] {
		pointer-events: initial;
	}
	header {
		height: 60px;
	}
	/* main {
		padding-top: 60px;
	} */
	header h1 {
		max-width: 320px;
	}
	header #pc-nav {
		display: none;
	}
	#sp-nav {
		display: block;
	}
	#sp-nav .btns {
		display: -webkit-box;
		display: flex;
		-webkit-box-pack: end;
		justify-content: flex-end;
		margin-inline-end: 56px;
	}
	#sp-nav .btns li {
		display: flex;
		justify-content: center;
		align-items: center;
		margin-right: .5em;
	}
	/* #sp-nav .btns li:last-child {
		margin-inline-end: unset;
	} */
	#sp-nav #sp_search {
		width: 30px;
		height: 30px;
	}
	#sp-nav #sp_search img {
		width: 30px;
	}
	/* #sp-nav #h_lang a {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 30px;
		height: 30px;
		background-color: #d4d4d4;
		color: #444;
		font-size: var(--fsize-14);
		font-weight: 500;
		border-radius: 4px;
	} */
	/*------------------------------------------ drawer nav関連　*/
	.drawer-hamburger {
		color: var(--blue-color);
	}
	.drawer--right.drawer-open .drawer-hamburger {
		right: 0;
	}
	.drawer-hamburger-icon, 
	.drawer-hamburger-icon:after, 
	.drawer-hamburger-icon:before {
		height: 4px;
		background-color: var(--blue-color);
		border-radius: 2px;
	}
	.drawer-nav {
		width: 100%;
		background-color: var(--blue-color);
		color: #FFF;
	}
	.drawer--right .drawer-nav {
		right: -100%;
	}
	.drawer-open .drawer-hamburger {
		color: #FFF;
	}
	.drawer-open .drawer-hamburger-icon:after, 
	.drawer-open .drawer-hamburger-icon:before {
		background-color: #FFF;
	}
	.drawer-menu {
		padding: 65px 10%;
	}
	.drawer-menu .menu > li {
		border-bottom: 1px solid #FFF;
		line-height: 1.5;
	}
	.drawer-menu a {
		position: relative;
		display: block;
		padding: 1em 1em 1em .5em;
		color: #FFF;
	}
	.drawer-menu .menu > li > a::after {
		content: '';
		position: absolute;
		right: .5em;
		top: 50%;
		transform: translateY(-50%);
		display: block;
		width: 8px;
		height: 14px;
		background: url(../img/arrow3-w.svg) no-repeat center center;
		background-size: contain;
	}
	.drawer-menu .menu > li.drawer-dropdown > a::before,
	.drawer-menu .menu > li.drawer-dropdown > a::after {
		content: '';
		position: absolute;
		right: .5em;
		top: 50%;
		transform: translateY(-50%);
		display: block;
		width: 14px;
		height: 2px;
		background-color: #FFF;
		transition: all .5s ease;
	}
	.drawer-menu .menu > li.drawer-dropdown > a::after {
		transform: translateY(-50%) rotate(90deg);
	}
	.drawer-menu .menu > li.drawer-dropdown.open > a::after {
		transform: translateY(-50%) rotate(180deg) ;
	}
	.drawer-menu-item {
		/* font-size: 1.125rem; */
		font-size: var(--fsize-18);
	}
	.drawer-dropdown-menu {
		background-color: transparent;
		font-size: 1rem;
	}
	.drawer-dropdown-menu li a {
		position: relative;
		padding: .75em .5em .75em 1.5em;
	}
	.drawer-dropdown-menu li:last-child a {
		padding-block-end: 1.5em;
	}
	.drawer-dropdown-menu li a::before {
		content: '';
		position: absolute;
		left: .5em;
		top: 1.5em;
		display: block;
		width: 10px;
		height: 1px;
		background-color: #FFF;
	}
	.drawer-nav h2 figure {
		text-align: center;
	}
	.drawer-nav h2 img {
		max-width: 400px;
		width: 100%;
	}
	.drawer-nav .lang-menu {
		display: flex;
		justify-content: center;
		column-gap: 1em;
		width: 100%;
		padding: .5em 0;
		margin-block-start: 20px;
		background: var(--bg-color);
	}
	.drawer-nav .lang-menu a {
		color: var(--blue-color);
		padding: 0;
	}
	.drawer-nav .lang-menu a.current {
		border-bottom: 2px solid var(--blue-color);
	}
	.drawer-nav .member-btns {
		display: flex;
		justify-content: center;
		gap: 1%;
		margin-block-start: 2em;
	}
	.drawer-nav .member-btns li {
		max-width: 360px;
		width: 100%;
		height: 60px;
	}
	.drawer-nav .member-btns li a {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 100%;
		border: 1px solid #FFF;
		background: #FFF;
		color: var(--blue-color);
		font-weight: 500;
		line-height: 1;
		border-radius: 30px;
	}
	.drawer-nav .member-btns li:last-child a {
		border-color: var(--red-color);
		background-color: var(--red-color);
		color: #FFF;
	}
	.drawer-dropdown-menu-item {
		line-height: inherit;
	}
	#search-form {
		top: 60px;
	}
}
@media screen and (max-width: 800px) {
	.drawer-nav {
		width: 100%;
	}
	.drawer--right .drawer-nav {
		right: -100%;
	}
}
@media screen and (max-width: 700px) {
	
}
@media screen and (max-width: 480px) {
	#sp-nav {
		margin-inline-start: 3%;
	}
	.drawer-hamburger {
		width: 28px;
		padding: 18px .5rem 30px;
	}
	.drawer-menu {
		padding: 65px 3% 30px;
	}
	.drawer-nav h2 {
		display: none;
	}
	.drawer-nav .member-btns {
		display: block;
	}
	.drawer-nav .member-btns li {
		max-width: unset;
		margin-block-end: 20px;
	}
	.drawer-nav .member-btns li:last-child {
		margin-block-end: 0;
	}
	#sp-nav .btns {
		margin-inline-end: 44px;
	}
}
@media screen and (max-width: 420px) {
	
}
@media screen and (max-width: 350px) {
	
}

/*-------------------------------------
 footer
--------------------------------------*/
footer #contact-wrap {
	background: var(--bg-color);
	text-align: center;
	padding: 100px 0;
}
footer #contact-wrap h2 {
	font-weight: 700;
	/* font-size: 2.25rem; */
	font-size: var(--fsize-36);
	line-height: 1.5;
	letter-spacing: .025em;
	margin-bottom: 1em;
	color: #444;
}
footer #contact-wrap ul {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
	margin-bottom: 50px;
}
footer #contact-wrap .btn {
	margin: 0 1.5vw;
}
footer #contact-wrap .tel a {
	font-family: Roboto, NotoSansJP,"游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", 'メイリオ', Meiryo, sans-serif;
	font-weight: 700;
	/* font-size: 2.75rem; */
	font-size: var(--fsize-44);
	letter-spacing: .025em;
	line-height: 1;
	color: var(--blue-color);
}
footer #contact-wrap .tel a::before {
	content: '';
	display: inline-block;
	width: 35px;
	height: 36px;
	background: url(../img/icon-tel.svg) no-repeat  center center;
	background-size: contain;
	margin-right: .2em;
}
footer #contact-wrap p {
	font-size: 1rem;
	margin-top: 0;
}
footer #f-area {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: justify;
	justify-content: space-between;
	flex-wrap: wrap;
	background: #444;
	color: #FFF;
	padding: 120px 5vw 100px;
	font-size: 1rem;
}
footer #f-area .company-wrap {
	max-width: 440px;
	width: 100%;
	margin: 0;
}
footer #f-area h2 {
	font-weight: 400;
	font-size: 1rem;
	color: #FFF;
}
footer #f-area h2 img {
	max-width: 400px;
	width: 100%;
	margin: 0 0 1em;
}
footer #f-area h2 span {
	display: block;
}
footer #f-area .copy {
	width: 100%;
	font-weight: 400;
	/* font-size: .875rem; */
	font-size: var(--fsize-14);
	margin-top: 2em;
}
footer #f-area nav {
	width: calc( 100% - ( 400px + 5vw ) );
}
footer #f-area nav .inner {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	gap: 2vw 1.5vw;
	line-height: 2.5;
	margin-block-end: 40px;
}
footer #f-area nav .inner a {
	display: inline-block;
	font-weight: 500;
	letter-spacing: .025em;
	color: #FFF;
}
footer #f-area nav .inner .sub-menu {
	line-height: 1.8;
}
footer #f-area nav .inner .sub-menu li {
	margin-block-end: 1em;
}
footer #f-area nav .inner .sub-menu a {
	/* font-size: .9375rem; */
	font-size: var(--fsize-15);
	color: #c2c2c2;
}
footer #f-area .btn {
	width: 380px;
	margin-left: 0;
}
footer #f-area .btn a::before {
	content: '';
	display: inline-block;
	width: 24px;
	height: 22px;
	background: url(../img/baios.svg) no-repeat center center;
	background-size: contain;
	margin-inline-end: 5px;
}
#pagetop {
	display: none;
}
#pagetop a {
	position: fixed;
	right: 0;
	bottom: 0;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
	align-items: center;
	width: 50px;
	height: 50px;
	background-color: var(--blue-color);
	border: 2px solid var(--blue-color);
}
#pagetop.fixed {
	display: block
}
#pagetop a:hover {
	opacity: .8;
}
#pagetop a::after {
	content: '';
	display: block;
	width: 30px;
	height: 20px;
	background: url(../img/arrow2-w.svg) no-repeat center center;
	background-size: contain;
	transform: rotateZ(-90deg);
	z-index: 1;
}
/* footer responsive
--------------------------------------*/
@media screen and (max-width: 1400px) {
	
}
@media screen and (max-width: 1200px) {
	footer #contact-wrap h2 {
		font-size: var(--fsize-30);
	}
	footer #f-area .company-wrap {
		max-width: initial;
		margin-block-end: 40px;
	}
	footer #f-area nav {
		width: 100%;
	}
}
@media screen and (max-width: 1000px) {
	footer #f-area nav .inner {
		grid-template-columns: 1fr 1fr;
	}
}
@media screen and (max-width: 800px) {
	footer #contact-wrap h2 {
		font-size: var(--fsize-26);
	}
}
@media screen and (max-width: 700px) {
	
}
@media screen and (max-width: 480px) {
	footer #contact-wrap {
		padding: 80px 3%;
	}
	footer #contact-wrap h2 {
		font-size: var(--fsize-22);
	}
	footer #contact-wrap ul {
		flex-wrap: wrap;
	}
	footer #contact-wrap li.btn {
		margin-block-end: 20px;
	}
	footer #contact-wrap li:last-child.btn {
		margin-block-end: 0;
	}
	footer #contact-wrap .tel a {
		font-size: var(--fsize-36);
	}
	footer #contact-wrap .tel a::before {
		width: 24px;
		height: 25px;
	}
	footer #f-area {
		padding: 80px 3% 20p;
	}
	footer #f-area .company-wrap {
		margin-block-end: 0;
	}
	footer #f-area h2 {
		font-size: var(--fsize-15);
		margin-block-end: 40px;
	}
	footer #f-area nav .inner {
		grid-template-columns: 1fr;
	}
	footer #f-area nav .fnav {
		display: none;
	}
	footer #f-area .btn {
		width: 100%;
	}
}
@media screen and (max-width: 410px) {
	footer #contact-wrap h2 {
		font-size: var(--fsize-20);
	}
}


/* Animation -------------------------------*/
.fadeup {
	opacity: 0;
}
.fadeup.active {
	animation-name: fadeUpAnime;
	animation-duration: 0.6s;
	animation-fill-mode: forwards;
}
@keyframes fadeUpAnime {
	from {
		opacity: 0;
		transform: translateY(100px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}
@media screen and (max-width: 1200px) {
	.fadeup {
		opacity: 1;
	}
}