#WORK .pickup ul:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
#WORK .pickup ul {
    zoom: 1;
}

#VISUAL {
position: relative;
background-color: #fff;
margin: 0;
padding: 0;
z-index: 1;
}
#VISUAL::before {
content: '';
display: block;
position: absolute;
left: 0;
top: 0;
background: #fbf1e5 url("../../common/img/wave1_t.svg") no-repeat center center;
background-size: 170% auto;
padding-top: 30%;
width: 100%;
z-index: -2;
}
#VISUAL::after {
content: '';
display: block;
position: absolute;
left: 0;
bottom: 0;
background: #fbf1e5 url("../../common/img/wave1_b.svg") no-repeat center center;
background-size: 170% auto;
padding-top: 30%;
width: 100%;
z-index: -2;
}
#VISUAL .head {
padding: 15px 15px 0 15px;
}
#VISUAL .head::before {
transform: rotate(-15deg);
content: '';
display: block;
position: absolute;
right: 15vw;
top: 5vw;
background: url("../../common/img/icn_03.svg") no-repeat center center;
background-size: contain;
width: 10.4vw;
height: 4vw;
}
#VISUAL .head p {
margin-bottom: 10px;
font-family: 'Poppins', sans-serif;
font-size: 9.333vw;
font-weight: 700;
line-height: 1;
}
#VISUAL .head h1 {
font-size: 3.2vw;
font-weight: 900;
line-height: 1;
}
#VISUAL .cont {
padding: 15px;
}
#VISUAL .cont::before {
content: '';
display: block;
position: absolute;
right: 5vw;
bottom: 5vw;
background: url("../../common/img/icn_05.svg") no-repeat center center;
background-size: contain;
width: 10vw;
height: 12.8vw;
}
#VISUAL .cont .lead {
margin-bottom: 20px;
font-size: 4vw;
line-height: 1.5;
}
#VISUAL .block {
padding-bottom: 45px;
}
#VISUAL .image {
margin: 0 20px 15px -15px;
}
#VISUAL .image img {
display: block;
border-radius: 0 15px 15px 0;
width: 100%;
height: 250px;
object-fit: cover;
}
#VISUAL .image2 {
margin-bottom: 20px;
}
#VISUAL .image2 img {
display: block;
border-radius: 10px;
width: 100%;
height: auto;
object-fit: cover;
}
#VISUAL div.image3 {
padding-bottom: 80px;
}
#VISUAL div.image3 span:first-child {
display: inline-block;
box-sizing: border-box;
padding-right: 10px;
width: 50%;
}
#VISUAL div.image3 span:last-child {
display: inline-block;
box-sizing: border-box;
padding-left: 10px;
width: 50%;
}
#VISUAL div.image3 img {
display: inline-block;
border-radius: 10px;
width: 100%;
height: auto;
object-fit: cover;
}
#VISUAL .cont h4 {
font-weight: 700;
font-size: 4.267vw;
}
#VISUAL .cont h3 {
margin-bottom: 10px;
font-weight: 700;
font-size: 5.333vw;
}
#VISUAL .cont h2 {
margin-bottom: 10px;
font-weight: 700;
font-size: 5.333vw;
}
#VISUAL .cont .text {
margin-bottom: 25px;
font-size: 3.467vw;
line-height: 1.55;
}
#VISUAL .more a {
display: block;
position: relative;
background-color: #535d60;
border-radius: 5.333vw;
margin: 0 auto;
width: 53.333vw;
height: 10.667vw;
font-weight: 700;
font-size: 3.733vw;
line-height: 10.667vw;
text-align: center;
color: #fff;
}
#VISUAL .more a::after {
content: '';
transform: rotate(45deg);
display: inline-block;
position: relative;
top: -2px;
margin-left: 10px;
width: 5px;
height: 5px;
border-top: 2px solid #fff;
border-right: 2px solid #fff;
}
@media (min-width: 768px) {
	#VISUAL::before {
	transform: translateY(-40%);
	background-size: 100% auto;
	padding-top: 20%;
	}
	#VISUAL::after {
	transform: translateY(40%);
	background-size: 100% auto;
	padding-top: 20%;
	}
	#VISUAL .head {
	position: relative;
	box-sizing: border-box;
	margin: 0 auto;
	padding: 0 50px 0 50px;
	max-width: 1500px;
	}
	#VISUAL .head::before {
	right: 320px;
	top: 0;
	width: 78px;
	height: 29px;
	}
	#VISUAL .head p {
	margin-bottom: 10px;
	font-size: 60px;
	}
	#VISUAL .head h1 {
	font-size: 16px;
	}
	#VISUAL .cont {
	padding: 30px 0 80px 0;
	}
	#VISUAL .cont::before {
	right: 115px;
	bottom: 160px;
	width: 75px;
	height: 76px;
	}
	#VISUAL .cont .lead {
	box-sizing: border-box;
	margin: 0 auto;
	padding: 0 50px 65px 50px;
	max-width: 1500px;
	font-size: 16px;
	line-height: 1.75;
	}
	#VISUAL .block {
	position: relative;
	padding-bottom: 60px;
	min-height: 420px;
	}
	#VISUAL .inner {
	box-sizing: border-box;
	margin: 0 auto;
	padding: 0 50px 0 50px;
	max-width: 1500px;
	min-height: 420px;
	display: flex;
	align-items: center;
	}
	#VISUAL .image {
	position: absolute;
	left: 0;
	top: 0;
	margin: 0;
	padding: 0;
	width: 50%;
	z-index: -1;
	}
	#VISUAL .image img {
	border-radius: 0 30px 30px 0;
	height: 420px;
	}
	#VISUAL .pack {
	margin-left: 50%;
	padding-left: 50px;
	}
	#VISUAL .cont h4 {
	font-size: 24px;
	}
	#VISUAL .cont h3 {
	margin-bottom: 10px;
	font-size: 26px;
	}
	#VISUAL .cont .text {
	margin-bottom: 25px;
	font-size: 16px;
	line-height: 1.75;
	}
	#VISUAL .more a {
	border-radius: 30px;
	margin: 0;
	width: 270px;
	height: 60px;
	font-size: 16px;
	line-height: 60px;
	}
	#VISUAL .more a::after {
	transform: translateY(-50%) rotate(45deg);
	content: '';
	position: absolute;
	right: 25px;
	top: 50%;
	width: 8px;
	height: 8px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	}
	#VISUAL .image2 {
	position: relative;
	box-sizing: border-box;
	margin: 0 auto 40px auto;
	padding: 0 50px 0 50px;
	max-width: 1500px;
	}
	#VISUAL .image2 img {
	border-radius: 20px;
	}
	#VISUAL .image3 {
	position: relative;
	box-sizing: border-box;
	margin: 0 auto 120px auto;
	padding: 0 50px 0 50px;
	max-width: 1500px;
	}
	#VISUAL .image3 span:first-child {
	padding-right: 20px;
	}
	#VISUAL .image3 span:last-child {
	padding-left: 20px;
	}
	#VISUAL .image3 img {
	border-radius: 20px;
	}
	#VISUAL .cont h2 {
	position: relative;
	box-sizing: border-box;
	margin: 0 auto 40px auto;
	padding: 0 50px 0 50px;
	max-width: 1500px;
	font-size: 32px;
	}
}

#WORK {
position: relative;
padding-top: 40px;
}
#WORK .cont {
position: relative;
padding: 15px;
z-index: 1;
}
#WORK .cont::before {
transform: rotate(15deg);
content: '';
display: block;
position: absolute;
left: 10vw;
top: -15vw;
background: url("../../common/img/icn_04.svg") no-repeat center center;
background-size: contain;
width: 12.267vw;
height: 6.933vw;
}
#WORK .cont::after {
content: '';
display: block;
position: absolute;
left: 15vw;
bottom: -15vw;
background: url("../../common/img/icn_01.svg") no-repeat center center;
background-size: contain;
width: 12vw;
height: 10.667vw;
visibility: visible;
}
#WORK .list {
padding: 0 20px;
}
#WORK .block {
position: relative;
padding-bottom: 75px;
}
#WORK .block:last-child {
padding-bottom: 0;
}
#WORK .image img {
display: block;
border-radius: 5px;
width: 100%;
height: auto;
object-fit: cover;
}
#WORK h4 {
position: absolute;
left: 0;
top: 0;
background-color: #fbf1e5;
padding: 5px 0;
font-feature-settings: "pkna";
-webkit-writing-mode: vertical-rl;
-moz-writing-mode: vertical-rl;
-ms-writing-mode: tb-rl;
-ms-writing-mode: vertical-rl;
writing-mode: vertical-rl;
font-size: 3.733vw;
font-weight: 400;
line-height: 5.333vw;
}
#WORK h3 {
margin-bottom: 5px;
font-size: 4.267vw;
font-weight: 700;
color: #333333;
}
#WORK p {
font-size: 3.733vw;
line-height: 1.45;
}
@media (min-width: 768px) {
	#WORK {
	padding-top: 0;
	}
	#WORK .cont {
	box-sizing: border-box;
	margin: 0 auto;
	padding: 0 50px 5px 50px;
	max-width: 1220px;
	}
	#WORK .cont::before {
	left: 200px;
	top: -100px;
	width: 92px;
	height: 52px;
	}
	#WORK .cont::after {
	left: 290px;
	bottom: -50px;
	width: 90px;
	height: 80px;
	}
	#WORK .list {
	display: flex;
	flex-wrap: wrap;
	padding: 0;
	}
	#WORK .block {
	box-sizing: border-box;
	position: relative;
	padding: 0 30px 75px 30px;
	width: 50%;
	}
	#WORK .image img {
	border-radius: 10px;
	}
	#WORK h4 {
	position: absolute;
	left: 0;
	top: 0;
	background-color: inherit;
	padding: 0;
	font-feature-settings: "pkna";
	font-size: 14px;
	line-height: 1;
	}
	#WORK h3 {
	margin-bottom: 5px;
	font-size: 16px;
	font-weight: 700;
	color: #333333;
	}
	#WORK p {
	font-size: 14px;
	line-height: 1.45;
	}
}

#ZEH {
position: relative;
background: url("../../common/img/bg.png") repeat center center;
background-size: 75px auto;
margin: 0;
padding: 25% 0;
z-index: -2;
}
#ZEH::before {
content: '';
display: block;
position: absolute;
left: 0;
top: 0;
background-image: url("../../common/img/wave2_b.svg"), url("../../common/img/bg.png");
background-repeat: no-repeat, repeat-x;
background-position: center center, center 1px;
background-size: 170% auto, 150px auto;
padding-top: 30%;
width: 100%;
z-index: -1;
}
#ZEH::after {
content: '';
display: block;
position: absolute;
left: 0;
bottom: 0;
background-image: url("../../common/img/wave2_t.svg"), url("../../common/img/bg.png");
background-repeat: no-repeat, repeat-x;
background-position: center center, center bottom 1px;
background-size: 170% auto, 150px auto;
padding-top: 30%;
width: 100%;
z-index: -1;
}
#ZEH .cont {
position: relative;
z-index: 1;
padding: 15px;
}
#ZEH .cont::before {
transform: rotate(15deg);
content: '';
display: block;
position: absolute;
right: 8vw;
top: 0;
background: url("../../common/img/icn_06.svg") no-repeat center center;
background-size: contain;
width: 16vw;
height: 9.067vw;
}
#ZEH .cont::after {
transform: rotate(-40deg);
content: '';
display: block;
position: absolute;
right: 5vw;
bottom: -20vw;
background: url("../../common/img/icn_07.svg") no-repeat center center;
background-size: contain;
width: 7.733vw;
height: 12.8vw;
visibility: visible;
}
#ZEH .hed {
position: relative;
padding: 0 0 20px 0;
z-index: 1;
}
#ZEH .hed p {
font-family: 'Poppins', sans-serif;
font-weight: 700;
font-size: 6.4vw;
text-align: center;
}
#ZEH h2 {
margin-bottom: 5px;
font-weight: 900;
font-size: 3.2vw;
text-align: center;
}
#ZEH h2::before {
content: '';
display: block;
margin: 3px auto 9px auto;
background-color: #535d60;
width: 30px;
height: 1px;
}
#ZEH .box {
background-color: #fff;
border: solid 3px #535d60;
border-radius: 10px;
padding: 34px 20px 20px 20px;
}
#ZEH .box p {
margin-bottom: 1em;
font-size: 3.733vw;
line-height: 1.92;
}
@media (min-width: 768px) {
	#ZEH {
	background-size: 150px auto;
	margin: 0;
	padding: 0;
	}
	#ZEH::before {
	transform: translateY(-40%);
	background-size: 100% auto, 300px auto;
	padding-top: 20%;
	}
	#ZEH::after {
	transform: translateY(40%);
	background-size: 100% auto, 300px auto;
	padding-top: 20%;
	}
	#ZEH .cont {
	box-sizing: border-box;
	margin: 0 auto;
	padding: 0 50px 150px 50px;
	max-width: 1220px;
	}
	#ZEH .cont::before {
	right: 100px;
	top: 140px;
	width: 103px;
	height: 58px;
	}
	#ZEH .cont::after {
	right: 100px;
	bottom: -70px;
	width: 57px;
	height: 95px;
	}
	#ZEH .hed {
	padding: 150px 0 40px 0;
	z-index: 2;
	}
	#ZEH .hed p {
	font-size: 40px;
	}
	#ZEH h2 {
	margin-bottom: 5px;
	font-size: 16px;
	}
	#ZEH h2::before {
	margin: 5px auto 15px auto;
	}
	#ZEH .box {
	box-sizing: border-box;
	background-color: #fff;
	border: solid 3px #535d60;
	border-radius: 10px;
	margin: 0 auto;
	padding: 60px 60px 30px 60px;
	width: 800px;
	}
	#ZEH .box p {
	font-size: 16px;
	line-height: 2.25;
	}
}

#EXPLAN {
position: relative;
padding-top: 0;
}
#EXPLAN .cont {
position: relative;
padding: 15px;
z-index: 1;
}
#EXPLAN .cont::before {
transform: rotate(15deg);
content: '';
display: block;
position: absolute;
left: 10vw;
top: -5vw;
background: url("../../common/img/icn_04.svg") no-repeat center center;
background-size: contain;
width: 12.267vw;
height: 6.933vw;
}
#EXPLAN .cont::after {
content: '';
display: block;
position: absolute;
left: 15vw;
bottom: -15vw;
background: url("../../common/img/icn_01.svg") no-repeat center center;
background-size: contain;
width: 12vw;
height: 10.667vw;
visibility: visible;
}
#EXPLAN .cont h2 {
margin-bottom: 10px;
font-weight: 700;
font-size: 5.333vw;
text-align: center;
}
#EXPLAN .cont p {
margin-bottom: 1em;
font-size: 3.733vw;
line-height: 1.92;
}
@media (min-width: 768px) {
	#EXPLAN {
	padding-top: 40px;
	}
	#EXPLAN .cont {
	box-sizing: border-box;
	margin: 0 auto;
	padding: 0 50px 50px 50px;
	max-width: 900px;
	}
	#EXPLAN .cont::before {
	left: 200px;
	top: -100px;
	width: 92px;
	height: 52px;
	}
	#EXPLAN .cont::after {
	left: 290px;
	bottom: -50px;
	width: 90px;
	height: 80px;
	}
	#EXPLAN .cont h2 {
	margin-bottom: 20px;
	font-size: 32px;
	}
	#EXPLAN .cont p {
	margin-bottom: 1em;
	font-size: 16px;
	line-height: 1.92;
	}

}

#NONE {
position: relative;
background: url("../../common/img/bg.png") repeat center center;
background-size: 75px auto;
margin: 0;
padding: 25% 0;
z-index: -2;
}
#NONE::before {
content: '';
display: block;
position: absolute;
left: 0;
top: 0;
background-image: url("../../common/img/wave2_b.svg"), url("../../common/img/bg.png");
background-repeat: no-repeat, repeat-x;
background-position: center center, center 1px;
background-size: 170% auto, 150px auto;
padding-top: 30%;
width: 100%;
z-index: -1;
}
#NONE::after {
content: '';
display: block;
position: absolute;
left: 0;
bottom: 0;
background-image: url("../../common/img/wave2_t.svg"), url("../../common/img/bg.png");
background-repeat: no-repeat, repeat-x;
background-position: center center, center bottom 1px;
background-size: 170% auto, 150px auto;
padding-top: 30%;
width: 100%;
z-index: -1;
}
#NONE .cont {
position: relative;
z-index: 1;
padding: 15px;
}
#NONE .cont::after {
transform: rotate(-40deg);
content: '';
display: block;
position: absolute;
right: 5vw;
bottom: -20vw;
background: url("../../common/img/icn_07.svg") no-repeat center center;
background-size: contain;
width: 7.733vw;
height: 12.8vw;
visibility: visible;
}
@media (min-width: 768px) {
	#NONE {
	background-size: 150px auto;
	margin: 0;
	padding: 0;
	}
	#NONE::before {
	transform: translateY(-40%);
	background-size: 100% auto, 300px auto;
	padding-top: 20%;
	}
	#NONE::after {
	transform: translateY(40%);
	background-size: 100% auto, 300px auto;
	padding-top: 20%;
	}
	#NONE .cont {
	box-sizing: border-box;
	margin: 0 auto;
	padding: 0 50px 150px 50px;
	max-width: 1220px;
	min-height: 400px;
	}
	#NONE .cont::after {
	right: 100px;
	bottom: -70px;
	width: 57px;
	height: 95px;
	}
}

/* Arrows */
.slick-prev,
.slick-next {
font-size: 0;
line-height: 0;
position: absolute;
top: 50%;
display: none !important;
width: 25px;
height: 25px;
padding: 0;
box-shadow: 0px 0px 3px rgba(0,0,0,0.5);
-webkit-transform: translate(0, -50%);
-ms-transform: translate(0, -50%);
transform: translate(0, -50%);
cursor: pointer;
color: transparent;
border: none;
outline: none;
background: #fff;
border-radius: 50%;
z-index: 10;
}
.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
color: transparent;
outline: none;
background: #fff;
}
.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
opacity: 1;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
opacity: .25;
}

.slick-next:before {
transform: translateY(-50%) rotate(45deg);
content: '';
position: absolute;
left: 8px;
top: 50%;
width: 5px;
height: 5px;
border-top: 2px solid #000;
border-right: 2px solid #000;
}
.slick-prev:before {
transform: translateY(-50%) rotate(135deg);
content: '';
position: absolute;
right: 8px;
top: 50%;
width: 5px;
height: 5px;
border-bottom: 2px solid #000;
border-right: 2px solid #000;
}

.slick-prev {
left: 25px;
}
.slick-next {
right: 25px;
}
@media (min-width: 768px) {
	.slick-prev,
	.slick-next {
	display: block !important;
	}
}

/* Dots */
.slick-dotted.slick-slider {
margin-bottom: 30px;
}

.slick-dots {
position: absolute;
bottom: -25px;
display: block;
width: 100%;
padding: 0;
margin: 0;
list-style: none;
text-align: center;
}
.slick-dots li {
position: relative;
display: inline-block;
width: 10px;
height: 10px;
margin: 0 9px;
padding: 0;
cursor: pointer;
}
.slick-dots li button {
box-shadow: 0px 0px 3px rgba(0,0,0,0.5);
font-size: 0;
line-height: 0;
display: block;
width: 10px;
height: 10px;
padding: 0;
border-radius: 50%;

cursor: pointer;

color: transparent;
border: 0;
outline: none;
background-color: #fff;
}
.slick-dots li button:hover,
.slick-dots li button:focus {
outline: none;
}
.slick-dots li button:hover,
.slick-dots li button:focus {
opacity: 1;
}
.slick-dots li.slick-active button {
background-color: #535d60;
}