@charset "utf-8";
/*
	Last Update:2021/11/21
	Auther: iw
*/
/*===================================================================
	layout
===================================================================*/
a:link { color:#555; }
a:visited { color:#555; }
a._underline { text-decoration:underline; }
a._underline:hover { text-decoration:none; }
a._underline2 { text-decoration:none; }
a._underline2:hover { text-decoration:underline; }

.wrapper, .wrapper-t, .wrapper-b { position:relative; }
@media (max-width: 767px){
	.wrapper, .wrapper-t { padding-top:60px; }
	.wrapper, .wrapper-b { padding-bottom:60px; }
}
@media (min-width: 768px){
	.wrapper, .wrapper-t { padding-top:80px; }
	.wrapper, .wrapper-b { padding-bottom:80px; }
}

.center, .center2, .center3, .center4 { width:100%; margin:0 auto; text-align:left; }
.center { max-width:1350px; }
.center2 { max-width:1250px; }
.center3 { max-width:1150px; }
.center4 { max-width:1000px; }
	@media (max-width:1390px){
		.center { padding-left:20px; padding-right:20px; max-width:100%; }
	}
	@media (max-width:1290px){
		.center2 { padding-left:20px; padding-right:20px; max-width:100%; }
	}
	@media (max-width:1190px){
		.center3 { padding-left:20px; padding-right:20px; max-width:100%; }
	}
	@media (max-width:1040px){
		.center4 { padding-left:20px; padding-right:20px; max-width:100%; }
	}

.indent { display:inline-block; padding-left:1em; text-indent:-1em; }

#base { --c_intern-short:#DB50A7; --c_intern-long:#44979F; }

/*===================================================================
	#head
===================================================================*/
#head { position:fixed; top:0; left:0; width:100%; z-index:7000; height:120px; transition:.2s; }
#base:not(.open) #head.fixed { background:rgba(29, 44, 64, 0.96); }
#head .head_wrap { padding:0 20px; height:100%; display:flex; justify-content:space-between; }
#head .head_wrap .head_logo { width:262px; display:flex; align-items:center; }
#head .head_wrap .head_links { display:flex; align-items:center; }
#head .head_wrap .head_links .head_button { display:block; padding:15px 30px; border:1px solid #fff; border-radius:60px; margin-right:20px; }
#head .head_wrap .head_links .head_button .main { font-weight:500; color:#fff; display:inline-block; font-size:1.1em; }
#head .head_wrap .head_links .entry_button .main { padding-left:25px; background:url(../image/layout/icon/entry.png) no-repeat center left / 18px auto; }
#head .head_wrap .head_links .recruit_button .main { padding-left:18px; background:url(../image/layout/icon/recruit.png) no-repeat center left / 12px auto; }
#head a { text-decoration:none; display:block; }
@media (max-width:991px) {
	#head { height:80px; }
	#head .head_wrap .head_logo { width:190px; }
	#head .head_wrap .head_links .head_button { padding:10px 20px; }
}
@media (max-width:767px) {
	#head .head_wrap { padding:0 10px; }
	#head .head_wrap .head_links .head_button { margin-right:10px; padding:8px 5px; }
	#head .head_wrap .head_links .head_button .main { font-size:1em; }
	#head .head_wrap .head_logo { width:140px; }
}

#head .btn_open_wrap { position:relative; width:50px; height:120px; }
#btn_open { width:50px; height:120px; display:inline-block; position:absolute; top:0; right:0; box-sizing:border-box; }
#btn_open a { position:relative; display:block; width:100%; height:120px; }
#btn_open .line { position:absolute; display:block; height:1px; border-top:5px solid #fff; transition:all 0.3s; transform-origin:center; top:50%; width:100%; border-radius:3px; }
#base:not(.open) #btn_open .line { left:50%; transform:translateX(-50%); }
#base:not(.open) #btn_open .line._l1 { top:calc(50% - 15px); }
#base:not(.open) #btn_open .line._l2 { }
#base:not(.open) #btn_open .line._l3 { top:calc(50% + 15px); }
#base.open #btn_open .line { left:0%; }
#base.open #btn_open .line._l1 { transform: rotate(45deg) translateX(0); }
#base.open #btn_open .line._l2 { left:50%; transform:translateX(-50%); width:0; }
#base.open #btn_open .line._l3 { transform: rotate(-45deg) translateX(0); }
@media (max-width:991px) {
	#head .btn_open_wrap,
	#btn_open,
	#btn_open a { height:80px; }
}
@media (max-width:575px) {
	#head .btn_open_wrap,
	#btn_open,
	#btn_open a { width:40px; }
	#btn_open .line { border-top:4px solid #fff; }
	#base:not(.open) #btn_open .line._l1 { top:calc(50% - 12px); }
	#base:not(.open) #btn_open .line._l2 { }
	#base:not(.open) #btn_open .line._l3 { top:calc(50% + 12px); }

}

#base:not(.open) #main_navi { left:-40px; opacity:0; pointer-events:none; }
#main_navi { position:fixed; top:0; left:0; width:100%; height:100vh; z-index:3000; text-align:left; background:url(../image/layout/head/navi_bg.jpg) no-repeat center center / cover; transition:.2s; padding-top:120px; }
#main_navi a { color:#fff; }
#main_navi .main_navi_wrap { overflow-y:auto; overscroll-behavior:none; height:calc(100vh - 120px); }
#main_navi .main_navi_wrap .hl_main_navi { display:flex; align-items:center; margin-bottom:20px; }
#main_navi .main_navi_wrap .hl_main_navi .main { font-size:3.5em; font-weight:500; color:#fff; letter-spacing:2px; display:inline-block; padding-right:20px; }
#main_navi .main_navi_wrap .hl_main_navi::after { content:""; display:block; flex-grow:1; height:0; border-top:1px dashed rgba(255, 255, 255, 0.5); }
#main_navi .main_navi_wrap .entry_unit { background:#442767; padding:40px 20px; color:#fff; margin-bottom:40px; }
#main_navi .main_navi_wrap .entry_unit .hl_entry_unit { text-align:center; margin-bottom:15px; }
#main_navi .main_navi_wrap .entry_unit .hl_entry_unit .main { font-size:1.25em; line-height:1.4; }
#main_navi .main_navi_wrap .entry_unit .tel,
#main_navi .main_navi_wrap .entry_unit .mail { font-size:2em; line-height:2; display:inline-block; font-weight:bold; }
#main_navi .main_navi_wrap .entry_unit .tel { padding-left:50px; background:url(../image/layout/icon/tel.png) no-repeat center left / 40px auto; }
#main_navi .main_navi_wrap .entry_unit .mail { padding-left:50px; background:url(../image/layout/icon/mail.png) no-repeat center left / 40px auto; }

#main_navi .main_navi_wrap .menu_wrap ul { width:calc(100% + 40px); margin-left:-20px; margin-right:-20px; display:flex; flex-wrap:wrap; }
#main_navi .main_navi_wrap .menu_wrap ul > li { padding:0 20px; width:33.333%; }
#main_navi .main_navi_wrap .menu_wrap ul > li a { display:block; padding-bottom:10px; border-bottom:1px solid #707070; margin-bottom:30px; }
#main_navi .main_navi_wrap .menu_wrap ul > li a .main { display:block; background:url(../image/layout/icon/arrow3_r.png) no-repeat center right / 35px auto; padding-right:40px; font-size:1.5em; font-weight:bold; }

#main_navi .main_navi_wrap .large_link_wrap { padding-bottom:40px; }
#main_navi .main_navi_wrap .large_link_wrap a { display:block; background:no-repeat center center / cover; width:100%; padding:10px; }
#main_navi .main_navi_wrap .large_link_wrap._portal a { background-image:url(../image/layout/head/navi_portal_bg.jpg); }
#main_navi .main_navi_wrap .large_link_wrap._recruit a { background-image:url(../image/layout/head/navi_recruit_bg.jpg); }
#main_navi .main_navi_wrap .large_link_wrap a .large_link_inner { padding:50px 10px; border:1px solid rgba(255, 255, 255, 0.56); text-align:center; }
#main_navi .main_navi_wrap .large_link_wrap a .large_link_inner .main { display:inline-block; font-size:2em; font-weight:bold; padding-left:50px; background:url(../image/layout/icon/arrow3_r.png) no-repeat center left / 35px auto; }
@media (max-width:1200px) {
	#main_navi .main_navi_wrap .menu_wrap ul > li a .main { font-size:1.25em; background-size:25px auto; }
}
@media (max-width:991px) {
	#main_navi { padding-top:80px; }
	#main_navi .main_navi_wrap { height:calc(100vh - 80px); }
	#main_navi .main_navi_wrap .menu_wrap ul > li { width:50%; }
}
@media (max-width:767px) {
	#main_navi .main_navi_wrap { padding-bottom:40px; }
	#main_navi .main_navi_wrap .hl_main_navi .main { font-size:2em; }
	#main_navi .main_navi_wrap .menu_wrap ul > li { width:100%; }
	#main_navi .main_navi_wrap .menu_wrap ul > li a { margin-bottom:20px; }
	#main_navi .main_navi_wrap .menu_wrap ul > li a .main { font-size:1.1em; }
	#main_navi .main_navi_wrap .entry_unit { padding:20px; }
	#main_navi .main_navi_wrap .entry_unit .tel,
	#main_navi .main_navi_wrap .entry_unit .mail { font-size:1.5em; }
	#main_navi .main_navi_wrap .entry_unit .tel { padding-left:30px; background-size:20px auto; }
	#main_navi .main_navi_wrap .entry_unit .mail { padding-left:30px; background-size:20px auto; }
	#main_navi .main_navi_wrap .large_link_wrap a .large_link_inner { padding:30px 20px; }
	#main_navi .main_navi_wrap .large_link_wrap a .large_link_inner .main { font-size:1.5em; }

}

/*===================================================================
	#foot
===================================================================*/
#pagetop a { position:fixed; bottom:130px; right:20px; z-index:2000; display:inline-block; width:68px; height:68px; background:#49256B url(../image/layout/icon/pagetop.png) no-repeat center center / 26px auto; box-shadow:0 3px 6px rgba(0,0,0,.16); }
@media (max-width:991px) {
	#pagetop a { width:40px; height:40px; bottom:70px; background-size:20px auto; }
}

#foot {}
#foot .foot_top_wrap { background:#FAFAFA; }
#foot .foot_top_wrap .foot_top { display:flex; justify-content:space-between; padding:40px 0; }
#foot .foot_top_wrap .foot_top ._left .foot_address_wrap { display:flex; }
#foot .foot_top_wrap .foot_top ._left .foot_address_wrap .foot_logo { padding-right:30px; margin-right:30px; border-right:1px solid #DDDDDD; }
#foot .foot_top_wrap .foot_top ._left .foot_address_wrap .foot_logo img { width:224px; }
#foot .foot_top_wrap .foot_top ._left .foot_address_wrap .foot_address { color:#000000; }
#foot .foot_top_wrap .foot_top ._left .foot_address_wrap .foot_address a { color:#000000; }
#foot .foot_top_wrap .foot_top ._right { display:flex; align-items:flex-end; }
@media (max-width:1200px) {
	#foot .foot_top_wrap .foot_top { flex-direction:column; }
	#foot .foot_top_wrap .foot_top ._right { width:100%; justify-content:flex-end; padding-top:10px; }
}
@media (max-width:991px) {
	#foot .foot_top_wrap .foot_top ._left .foot_address_wrap { flex-direction:column; }
	#foot .foot_top_wrap .foot_top ._left .foot_address_wrap .foot_logo { padding-right:0; margin-right:0; border-right:0; text-align:center; padding-bottom:20px; margin-bottom:20px; border-bottom:1px solid #ddd; }
	#foot .foot_top_wrap .foot_top ._left .foot_address_wrap .foot_address p { text-align:center; }
	#foot .foot_top_wrap .foot_top ._right { justify-content:center; }
	#foot .foot_top_wrap .foot_top ._right a { text-align:center; }
}

#foot .foot_bottom_wrap { background:#442966; }

#copyright { padding:10px 0; font-size:0.85em; color:#fff; text-align:center; }
@media (max-width:991px) {
	#copyright { background:none; }
}

/*===================================================================
	#modal
===================================================================*/
#modal:not(.active) { opacity:0; pointer-events:none; }
#modal { position:fixed; top:0; left:0; width:100%; height:100vh; z-index:7000; text-align:left; transition:.2s; padding-top:120px; padding:120px 20px; text-align:center; }
#modal .modal_bg { position:absolute; top:0; left:0; z-index:-1; width:100%; height:100%; background:rgba(0, 0, 0, 0.71);  }
#modal .modal_wrap { position:relative; width:100%; max-width:1150px; display:inline-block; }
#modal .modal_wrap .modal_close { content:""; width:40px; height:40px; background:url(../image/layout/icon/time.png) no-repeat center center / 35px auto; display:block; position:absolute; top:-10px; right:0; transform:translateY(-100%); cursor:pointer; transition:.2s; }
#modal .modal_wrap .modal_close:hover { opacity:.6; }
#modal .modal_wrap .modal_area { background:#fff; padding:60px; max-height:calc(100vh - 240px); overflow-y:auto; overscroll-behavior:none; border-radius:10px; }
@media (max-width:991px) {
	#modal .modal_wrap .modal_area { padding:40px 15px; }
}
@media (max-width:767px) {
	#modal { padding:80px 20px; }
	#modal .modal_wrap .modal_area { max-height:calc(100vh - 160px); }
}

#modal .modal_wrap .modal_area .modal_about .hl_modal { padding-bottom:20px; margin-bottom:40px; border-bottom:1px solid #AFAFAF; text-align:center; }
#modal .modal_wrap .modal_area .modal_about .hl_modal .main { font-size:2em; font-weight:500; }
#modal .modal_wrap .modal_area .modal_about .image { border-radius:3px; overflow:hidden; margin-bottom:40px; }
#modal .modal_wrap .modal_area .modal_about .text p { line-height:2; font-weight:500; font-size:1.25em; }
#modal .modal_wrap .modal_area .modal_about .service_wrap { display:flex; }
#modal .modal_wrap .modal_area .modal_about .service_wrap ul { line-height:2; font-weight:500; font-size:1.25em; text-align:left; }
#modal .modal_wrap .modal_area .modal_about .service_wrap ul:not(:last-child) { padding-right:20px; }
#modal .modal_wrap .modal_area .modal_about .service_wrap ul li { text-indent:-1em; padding-left:1em; }
#modal .modal_wrap .modal_area .modal_about .service_wrap ul li::before { content:"・"; }
@media (max-width:991px) {
	#modal .modal_wrap .modal_area .modal_about .hl_modal .main { font-size:1.5em; }
	#modal .modal_wrap .modal_area .modal_about .text p { font-size:1em; width:100%; text-align:left; }
	#modal .modal_wrap .modal_area .modal_about .service_wrap ul { font-size:1em; }
}
@media (max-width:767px) {
	#modal .modal_wrap .modal_area .modal_about .hl_modal .main { font-size:1.25em; }
	#modal .modal_wrap .modal_area .modal_about .image { margin-bottom:20px; }
	#modal .modal_wrap .modal_area .modal_about .service_wrap { flex-wrap:wrap; }
	#modal .modal_wrap .modal_area .modal_about .service_wrap ul { width:100%; }
}

#modal .modal_wrap .modal_area .modal_voice { text-align:left; --c_voice-sub:#B91856; }
#modal .modal_wrap .modal_area .modal_voice._1 { --c_voice:#8C78AA; }
#modal .modal_wrap .modal_area .modal_voice._2 { --c_voice:#EB734B; }
#modal .modal_wrap .modal_area .modal_voice._3 { --c_voice:#375A8C; }
#modal .modal_wrap .modal_area .modal_voice._4 { --c_voice:#67b2cd; }
#modal .modal_wrap .modal_area .modal_voice._5 { --c_voice:#e9a600; }
#modal .modal_wrap .modal_area .modal_voice._6 { --c_voice:#a6c100; }
#modal .modal_wrap .modal_area .modal_voice._7 { --c_voice:#e49dad; }
#modal .modal_wrap .modal_area .modal_voice._8 { --c_voice:#288256; }
#modal .modal_wrap .modal_area .modal_voice._9 { --c_voice:#78afde; }
#modal .modal_wrap .modal_area .modal_voice .title { display:flex; margin-bottom:40px; }
#modal .modal_wrap .modal_area .modal_voice .title .image { width:206px; position:relative; z-index:2; }
#modal .modal_wrap .modal_area .modal_voice .title .text { width:calc(100% - 206px); display:flex; flex-direction:column; justify-content:space-between; position:relative; z-index:1; }
#modal .modal_wrap .modal_area .modal_voice .title .text .tag { flex-grow:1; display:flex; flex-direction:center; align-items:center; padding-left:30px; }
#modal .modal_wrap .modal_area .modal_voice .title .text .tag._short { --c_intern:var(--c_intern-short); }
#modal .modal_wrap .modal_area .modal_voice .title .text .tag._long { --c_intern:var(--c_intern-long); }
#modal .modal_wrap .modal_area .modal_voice .title .text .tag .main { background:var(--c_intern); padding:5px 20px; color:#fff; border-radius:3px; font-weight:bold; font-size:1.5em; display:inline-block; }
#modal .modal_wrap .modal_area .modal_voice .title .text .hl_modal { background:var(--c_voice); padding:30px 40px; color:#fff; font-weight:bold; font-size:2em; border-radius:0 60px 60px 0; position:relative; }
#modal .modal_wrap .modal_area .modal_voice .title .text .hl_modal::before { content:""; position:absolute; width:calc(206px / 2); height:100%; display:block; top:0; right:100%; background:var(--c_voice); }
#modal .modal_wrap .modal_area .modal_voice .voice_list dl:not(:last-child) { padding-bottom:40px; margin-bottom:40px; border-bottom:1px dashed #919191; }
#modal .modal_wrap .modal_area .modal_voice .voice_list dl > * { display:flex; justify-content:space-between; }
#modal .modal_wrap .modal_area .modal_voice .voice_list dl > * .sub { width:68px; height:68px; border-radius:40px; color:#fff; font-size:2.5em; display:inline-flex; align-items:center; justify-content:center; }
#modal .modal_wrap .modal_area .modal_voice .voice_list dl > * .main { width:calc(100% - 90px); }
#modal .modal_wrap .modal_area .modal_voice .voice_list dl > dt { margin-bottom:20px; align-items:center; line-height:1.4; }
#modal .modal_wrap .modal_area .modal_voice .voice_list dl > dt .sub { background:var(--c_voice); }
#modal .modal_wrap .modal_area .modal_voice .voice_list dl > dt .main { color:var(--c_voice); font-weight:500; font-size:2em; display:flex; align-items:center; }
#modal .modal_wrap .modal_area .modal_voice .voice_list dl > dd .sub { background:var(--c_voice-sub); }
#modal .modal_wrap .modal_area .modal_voice .voice_list dl > dd .main { padding-top:10px; }
#modal .modal_wrap .modal_area .modal_voice .voice_list dl > dd .main p { font-weight:500; font-size:1.1em; color:#000; }
#modal .modal_wrap .modal_area .modal_voice .voice_list dl > dd .main p._small { font-size:1em; }
@media (max-width:991px) {
	#modal .modal_wrap .modal_area .modal_voice .title .image { width:140px; }
	#modal .modal_wrap .modal_area .modal_voice .title .text { width:calc(100% - 140px); }
	#modal .modal_wrap .modal_area .modal_voice .title .text .hl_modal { padding:10px 20px; font-size:1.5em; }
	#modal .modal_wrap .modal_area .modal_voice .title .text .hl_modal::before { width:calc(140px / 2); }
	#modal .modal_wrap .modal_area .modal_voice .title .text .tag .main { font-size:1.25em; }
	#modal .modal_wrap .modal_area .modal_voice .voice_list dl > dt .main { font-size:1.5em; }
}
@media (max-width:767px) {
	#modal .modal_wrap .modal_area .modal_voice .title .image { width:100px; }
	#modal .modal_wrap .modal_area .modal_voice .title .text { width:calc(100% - 100px); }
	#modal .modal_wrap .modal_area .modal_voice .title .text .hl_modal { font-size:1.1em; line-height:1.2; padding:10px; }
	#modal .modal_wrap .modal_area .modal_voice .title .text .hl_modal::before { width:calc(100px / 2); }
	#modal .modal_wrap .modal_area .modal_voice .title .text .tag { padding-left:5px; }
	#modal .modal_wrap .modal_area .modal_voice .title .text .tag .main { font-size:1em; padding:0 5px; }
	#modal .modal_wrap .modal_area .modal_voice .voice_list dl > * .sub { width:50px; height:50px; font-size:2em; }
	#modal .modal_wrap .modal_area .modal_voice .voice_list dl > * .main { width:calc(100% - 60px); }
	#modal .modal_wrap .modal_area .modal_voice .voice_list dl > dt .main { font-size:1.25em; }
	#modal .modal_wrap .modal_area .modal_voice .voice_list dl > dd .main { padding-top:0; }
	#modal .modal_wrap .modal_area .modal_voice .voice_list dl > dd .main p { font-size:1em; }
}
@media (max-width:575px) {
	#modal .modal_wrap .modal_area .modal_voice .voice_list dl > * .sub { width:30px; height:30px; font-size:1.25em; }
	#modal .modal_wrap .modal_area .modal_voice .voice_list dl > * .main { width:calc(100% - 40px); }
	#modal .modal_wrap .modal_area .modal_voice .voice_list dl > dt .main { font-size:1.1em; }
	#modal .modal_wrap .modal_area .modal_voice .voice_list dl > dd .main p { font-size:1em; }

}

/*===================================================================
	main
===================================================================*/
.box { box-shadow:0 0 5px rgba(0,0,0,0.2); }
	@media (max-width: 575px){
		.box > .box_in { padding:20px 15px; }
	}
	@media (min-width: 576px){
		.box > .box_in { padding:25px 30px; }
	}

.hl_1 { text-align:center; }
.hl_1 > * { display:block; }
.hl_1 .main { line-height:140%; font-weight:bold; padding-bottom:30px; background:url(../image/layout/hl_1.png) no-repeat center bottom / 45px auto; }
	@media (max-width: 575px){
		.hl_1 { margin-bottom:40px; }
		.hl_1 .main { font-size:1.55em; }
	}
	@media (min-width: 576px){
		.hl_1 { margin-bottom:50px; }
		.hl_1 .main { font-size:2em; }
	}


.tbl_1 { width:100%; }
.tbl_1 tr > * { border:1px solid #000; padding:15px; }
.tbl_1 tr > *.bb_dashed { border-bottom:1px dashed #000; }
.tbl_1 tr > *.bt_none { border-top:0; }
.tbl_1 tr > th { text-align:center; background:#FAF8F8; width:150px; }
.tbl_1 tr > th._small { width:100px; }
@media (max-width:767px) {
	.tbl_1 { border-top:1px solid #000; }
	.tbl_1 tr > * { display:block; width:100%!important; border-top:0; }
	.tbl_1 tr > *[data-label]:not(:last-child) { border-bottom:1px dashed #000; }
	.tbl_1 tr > *[data-label]::before { content:attr(data-label); display:block; background:#fbf3f5; text-align:center; padding:5px 0; margin-bottom:10px; }
}

.tbl_form { width:100%; }
.tbl_form tr > * { border-bottom:1px solid #ddd; padding:20px 15px; }
.tbl_form tr > th { width:260px; vertical-align:middle; }
.tbl_form th .need { margin-left:10px; }

.tbl_form td dl { display:table; width:100%; }
.tbl_form td dl > * { display:table-cell; }
.tbl_form td dl > dt { width:180px; }
.tbl_form td dl > dt.indent { padding-left:25px; }
@media (max-width:767px) {
	.tbl_form tr > * { display:block; width:100%!important; padding-left:0; padding-right:0; }
	.tbl_form td dl > * { display:block; }
	.tbl_form td dl > dt.indent + dd { padding-left:25px; }

}


.button._type1 { position:relative; border-radius:30px; border:1px solid #fff; background:#fff; text-align:center; padding:15px 20px; width:430px; max-width:100%; }
.button._type1 .main { font-weight:900; color:#49256B; font-size:1.1em; line-height:1.6; display:inline-block; }
.button._type1 .main._entry { padding-left:35px; background:url(../image/layout/icon/entry-v.png) no-repeat center left / 30px auto; }

/*===================================================================
	color
===================================================================*/
.bg_white { background-color:#fff !important; }

.c_white { color:#fff !important; }

/*===================================================================
	icon
===================================================================*/
.icon { display:inline-block; line-height:100%; background-repeat:no-repeat; background-size:contain; background-position:left center; padding-left:1.25em; }

/*===================================================================
	common
===================================================================*/
.mb0 { margin-bottom:0 !important; }
.mb5 { margin-bottom:5px !important; }
.mb10 { margin-bottom:10px !important; }
.mb15 { margin-bottom:15px !important; }
.mb20 { margin-bottom:20px !important; }
.mb30 { margin-bottom:30px !important; }
.mb40 { margin-bottom:40px !important; }
.mb50 { margin-bottom:50px !important; }
.p0 { padding:0 !important; }

.disp_b { display:block; }
.disp_ib { display:inline-block; }
.disp_tbl { display:table; width:100%; height:100%; }
.disp_td { display:table-cell; vertical-align:middle; }

.img_back { background-position:center center; background-repeat:no-repeat; background-size:cover; overflow:hidden; }
.img_back > img { visibility:hidden; width:1px; height:1px; }
.img_rect { padding-top:65%; line-height:1px; }
.img_sq { padding-top:100%; line-height:1px; }

.parallax,
.parallax:before,
.parallax:after { transition:opacity .7s, transform .7s, left .7s, right .7s; }
.parallax[data-parallax-in="vertical"],
.parallax[data-parallax-in="vertical2"],
.parallax[data-parallax-in="vertical3"] { opacity:1; transform:translateY(0); -webkit-transform:translateY(0); -ms-transform:translateY(0); }
.parallax[data-parallax-in="vertical"]:not(.parallax_on),
.parallax[data-parallax-in="vertical2"]:not(.parallax_on),
.parallax[data-parallax-in="vertical3"]:not(.parallax_on) { opacity:0 !important; }
.parallax[data-parallax-in="vertical"]:not(.parallax_on) { transform:translateY(30px); -webkit-transform:translateY(30px); -ms-transform:translateY(30px); }
.parallax[data-parallax-in="vertical2"]:not(.parallax_on) { transform:translateY(60px); -webkit-transform:translateY(60px); -ms-transform:translateY(60px); }
.parallax[data-parallax-in="vertical3"]:not(.parallax_on) { transform:translateY(90px); -webkit-transform:translateY(90px); -ms-transform:translateY(90px); }
.parallax[data-parallax-in="left"] { position:relative; left:0; }
.parallax[data-parallax-in="left"]:not(.parallax_on) { left:-100vw; }
.parallax[data-parallax-in="right"] { position:relative; right:0; }
.parallax[data-parallax-in="right"]:not(.parallax_on) { right:-100vw; }

.parallax[data-parallax-in="slide_right"],
.parallax[data-parallax-in="slide_left"] { display:inline-block; position:relative; }
.parallax[data-parallax-in="slide_right"] > *,
.parallax[data-parallax-in="slide_left"] > * { position:relative; display:block; transform:translateX(0vw); transition:all .5s; transition-delay:.4s; }
.parallax[data-parallax-in="slide_right"]:before,
.parallax[data-parallax-in="slide_left"]:before { content:""; position:absolute; top:0; width:100%; height:100%; background:#9CB5A7; transition:all .5s; }
.parallax[data-parallax-in="slide_right"]:before { right:0; }
.parallax[data-parallax-in="slide_left"]:before { left:0; }
.parallax[data-parallax-in="slide_right"]:not(.parallax_on):before,
.parallax[data-parallax-in="slide_left"]:not(.parallax_on):before { width:0%; }
.parallax[data-parallax-in="slide_right"]:not(.parallax_on)  > * { transform:translateX(100vw); }
.parallax[data-parallax-in="slide_left"]:not(.parallax_on)  > * { transform:translateX(-100vw); }
