@charset "utf-8";

.only-desktop {display:block;}
.only-mobile {display:none;}

@media (max-width: 640px) {
	.only-desktop {display:none;}
	.only-mobile {display:block;}
}

.port-st-tit {font-size:80px; line-height:1em;}
.port-st-tit2 {font-size:50px; line-height:1em;}

.port-st-1 {display:flex; justify-content:space-between; align-items:center; overflow:hidden; background:#e8e8e8; padding:150px 8% 30px; min-height:100vh;}
.port-st-1 .cnt {position:relative; flex:1 1 auto; min-width:0; width:1%; margin:0 4% 3% 0; padding-bottom:140px;}
.port-st-1 .cnt h2 {font-size:75px; line-height:1.067em; margin-bottom:40px;}
.port-st-1 .cnt .txt1 {font-size:26px; line-height:1.5em; letter-spacing:-.03em; margin-bottom:10px;}
.port-st-1 .cnt .txt2 {font-size:17px; font-weight:300; line-height:1.765em; letter-spacing:-.03em;}
.port-st-1 .cnt .btn {position:absolute; bottom:0; left:0; display:inline-block; width:160px; text-align:center; color:#686868; font-size:15px; font-weight:500; line-height:48px; letter-spacing:-.03em; border:1px solid #bfbfbf;}
.port-st-1 .cnt .btn:hover {color:#fff; background:#242424; border-color:#242424;}
.port-st-1 .img {width:65%; margin-right:-9%;}

.port-st-2 {display:flex; background:#2c2c2c; color:#fff;}
.port-st-2 .img {width:50%; position:relative; overflow:hidden;}
.port-st-2 .img img {position:absolute; top:50%; left:0; transform:translateY(-50%); -ms-transform:translateY(-50%); -webkit-transform:translateY(-50%); width:100%; height:auto !important; max-width:100%; min-height:100%; object-fit:cover;}
.port-st-2 .cnt {width:50%; padding:95px 100px; font-size:17px; font-weight:300; line-height:1.765em; letter-spacing:-.03em;}
.port-st-2 .cnt .inner {max-width:510px;}
.port-st-2 .cnt h2 {margin-bottom:40px;}
.port-st-2 .cnt .dl-cnt {margin-top:85px; font-size:18px; line-height:1.389em;}
.port-st-2 .cnt .dl-cnt dl {margin-bottom:23px;}
.port-st-2 .cnt .dl-cnt dl:last-child {margin-bottom:0;}
.port-st-2 .cnt .dl-cnt dt {font-weight:700;}
.port-st-2 .cnt .dl-cnt a {display:inline-block; word-break:break-all;}

.port-st-3 {padding:150px 0; background:#1c1c1c; color:#fff;}
.port-st-3 .contain {max-width:1260px;}
.port-st-3 .title {margin-bottom:35px;}
.port-st-3 .title h2 {margin-bottom:15px;}
.port-st-3 .title p {font-size:17px; font-weight:300; line-height:1.765em; letter-spacing:-.03em;}
.port-st-3 .imgs {display:flex; flex-wrap:wrap; justify-content:space-between;}
.port-st-3 .imgs .m {width:100%; margin-bottom:40px;}
.port-st-3 .imgs .s {width:calc(50% - 20px); margin-bottom:40px;}

.port-st-4 {min-height:650px; padding:150px 0; color:#fff;}
.port-st-4 .content {width:600px; float:left; margin-top:-8px;}
.port-st-4 .content h2 {margin-bottom:20px;}
.port-st-4 .content p {font-size:17px; font-weight:300; line-height:1.765em; letter-spacing:-.03em;}
.port-st-4 .image {float:right; width:calc(100% - 600px); display:flex; justify-content:space-between;}
.port-st-4 .image div {width:calc(50% - 20px)}
.port-st-4 .image div:nth-child(2) {margin-top:100px;}
.port-st-4 .image img {border-radius:30px; box-shadow:0 0 40px rgba(0,0,0,.2);}

.port-st-5 {padding:90px 0 150px 0;}
.port-st-5:after {content:""; display:block; clear:both;}
.port-st-5 .content {width:500px;}
.port-st-5 h2 {margin-bottom:20px;}
.port-st-5 p {font-size:18px; font-weight:500; line-height:1.765em; letter-spacing:-.04em;}

.port-st-6 {padding:100px 0 130px; background:#2c2c2c; color:#fff;}
.port-st-6 h2 {margin-bottom:55px;}
.port-st-6 .wrap {display:flex; align-items:center;}
.port-st-6 .typo-word {width:40%; max-width:500px; font-size:150px; line-height:1.1em; letter-spacing:.1em; margin-right:50px;}
.port-st-6 .typo-st {flex:1 1 auto; min-width:0; width:1%;}
.port-st-6 .typo-st .tit {position:relative; padding-bottom:15px; margin-bottom:15px; border-bottom:1px solid #ddd; font-size:25px; font-weight:700; line-height:1.3em;}
.port-st-6 .typo-st .tit .weight {position:absolute; top:4px; right:0; font-size:18px; line-height:1.3em;}
.port-st-6 .typo-st .tit .weight span {margin-left:16px;}
.port-st-6 .typo-st .txt {font-size:28px; line-height:1.429em; letter-spacing:.1em; margin-right:-.2em; word-break:break-all;}

.port-st-7 {padding:150px 0;}
.port-st-7 .contain {display:flex; align-items:center; justify-content:space-between;}
.port-st-7 h2 {margin-right:4%;}
.port-st-7 .colors {display:flex; flex-wrap:wrap; margin:-18px;}
.port-st-7 .color {margin:18px; width:100px;}
.port-st-7 .color span {display:block; padding-bottom:100%; border-radius:100%;}

@media (max-width: 1400px) {
	.port-st-1 {padding:110px 6% 30px;}
	.port-st-1 .cnt {margin:0 4% 0 0; padding-bottom:170px;}

	.port-st-2 .cnt {padding:80px 50px;}
}

@media (max-width: 1024px) {
	.port-st-tit {font-size:50px;}
	.port-st-tit2 {font-size:35px;}

	.port-st-1 {padding:80px 30px;}
	.port-st-1 .cnt {padding-bottom:0;}
	.port-st-1 .cnt h2 {font-size:50px;}
	.port-st-1 .cnt .txt1 {font-size:22px;}
	.port-st-1 .cnt .txt2 {font-size:16px;}
	.port-st-1 .cnt .btn {position:static; margin-top:30px;}

	.port-st-2 .cnt .dl-cnt {margin-top:80px; font-size:16px;} 

	.port-st-3 {padding:100px 0;}
	.port-st-3 .title p {font-size:16px;}
	.port-st-3 .imgs .m {margin-bottom:20px;}
	.port-st-3 .imgs .s {width:calc(50% - 10px);}

	.port-st-4 {padding:100px 0; min-height:500px;}
	.port-st-4 .content {width:400px;}
	.port-st-4 .content p {font-size:16px;}
	.port-st-4 .image {width:calc(100% - 400px);}
	.port-st-4 .image div {width:calc(50% - 10px);}
	.port-st-4 .image img {box-shadow:0 0 20px rgba(0,0,0,.2);}

	.port-st-5 {padding:80px 0 100px;}
	.port-st-5 .content {width:350px;}
	.port-st-5 p {font-size:16px;}

	.port-st-6 {padding:100px 0;}
	.port-st-6 .typo-word {font-size:105px; margin-right:30px;}
	.port-st-6 .typo-st .tit {font-size:20px;}
	.port-st-6 .typo-st .tit .weight {font-size:14px;}
	.port-st-6 .typo-st .tit .weight span {margin-left:12px;}
	.port-st-6 .typo-st .txt {font-size:23px;}

	.port-st-7 {padding:100px 0;}
	.port-st-7 .colors {margin:-13px;}
	.port-st-7 .color {margin:13px; width:80px;}
	
}

@media (max-width: 640px) {
	.port-st-tit {font-size:40px;}
	.port-st-tit2 {font-size:25px;}

	.port-st-1 {display:block; padding:50px 15px;}
	.port-st-1 .cnt {width:auto; margin:0 0 75px;}
	.port-st-1 .cnt h2 {font-size:40px; margin-bottom:20px;}
	.port-st-1 .cnt .txt1 {font-size:18px;}
	.port-st-1 .cnt .txt2 {font-size:14px;}
	.port-st-1 .cnt .btn {margin-top:25px; font-size:14px; width:130px; line-height:38px;}
	.port-st-1 .img {width:auto; margin-right:-12%;}

	.port-st-2 {display:block;}
	.port-st-2 .img {width:auto; padding-bottom:120%;}
	.port-st-2 .cnt {width:auto; padding:50px 15px; font-size:14px;}
	.port-st-2 .cnt h2 {margin-bottom:20px;}
	.port-st-2 .cnt .dl-cnt {font-size:14px; margin-top:50px;}

	.port-st-3 {padding:50px 0;}
	.port-st-3 .title p {font-size:14px;}
	.port-st-3 .imgs {display:block; padding:0 20px;}
	.port-st-3 .imgs div {width:100% !important; margin-bottom:20px !important;}
	.port-st-3 .imgs div:last-child {margin-bottom:0 !important;}

	.port-st-4 {min-height:auto; padding:50px 0 90% 0;}
	.port-st-4 .content {float:none; margin-bottom:35px; width:auto;}
	.port-st-4 .content h2 {margin-bottom:10px;}
	.port-st-4 .content p {font-size:14px;}
	.port-st-4 .image {width:auto; float:none; margin-right:-15px; padding-bottom:20px; overflow:hidden;}
	.port-st-4 .image div {flex-shrink: 0; width:55%; margin-right:20px;}
	.port-st-4 .image div:nth-child(2) {margin-top:50px;}
	.port-st-4 .image img {border-radius:15px;}

	.port-st-5 {padding:74% 0 70px;}
	.port-st-5 .content {width:auto;}
	.port-st-5 p {font-size:14px;}

	.port-st-6 {padding:50px 0;}
	.port-st-6 h2 {text-align:center; margin-bottom:30px;}
	.port-st-6 .wrap {display:block;}
	.port-st-6 .typo-word {width:auto; font-size:75px; text-align:center; margin:0 0 35px;}
	.port-st-6 .typo-st {width:auto;}
	.port-st-6 .typo-st .tit {font-size:16px; padding-bottom:12px; margin-bottom:10px;}
	.port-st-6 .typo-st .tit .weight {font-size:11px; top:6px;}
	.port-st-6 .typo-st .tit .weight span {margin-left:6px;}
	.port-st-6 .typo-st .txt {font-size:16px;}

	.port-st-7 {padding:50px 0; text-align:center;}
	.port-st-7 .contain {display:block;}
	.port-st-7 h2 {margin-bottom:30px;}
	.port-st-7 .colors {justify-content:center; margin:-9px;}
	.port-st-7 .color {width:50px; margin:9px;}


	
}