@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-1 {position:relative;}
.port-st-1 .image {position:relative; height:100vh; overflow:hidden;}
.port-st-1 .image img {position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover;}
.port-st-1 .content {position:absolute; bottom:0; left:0; width:100%;}
.port-st-1 .title {margin-bottom:65px;}
.port-st-1 .text {position:relative; padding:50px 0; min-height:225px;}
.port-st-1 .text:before {content:""; position:absolute; top:0; left:0; width:calc(50% + 230px); height:100%; background:#fff;}
.port-st-1 .text .contain {position:relative;}
.port-st-1 .text .inner {width:calc(50% + 180px);}
.port-st-1 .text .txt1 {font-size:26px; font-weight:700; line-height:1.3em; letter-spacing:-.03em; margin-bottom:12px;}
.port-st-1 .text .txt2 {color:#454545; font-size:18px; font-weight:300; line-height:1.667em; letter-spacing:-.03em;}

.port-st-2 {padding:150px 0; color:#fff;}
.port-st-2 .content {width:50%;float:left;}
.port-st-2 .content h2 {margin-bottom:40px;}
.port-st-2 .content .txt {font-size:17px; font-weight:300; line-height:1.765em; letter-spacing:-.03em;}
.port-st-2 .content .dl-cnt {margin-top:115px; font-size:18px; line-height:1.389em;} 
.port-st-2 .content .dl-cnt dl {margin-bottom:23px;}
.port-st-2 .content .dl-cnt dl:last-child {margin-bottom:0;}
.port-st-2 .content .dl-cnt dt {font-weight:700;}
.port-st-2 .content .dl-cnt a {display:inline-block; word-break:break-all;}
.port-st-2 .image {float:right; width:45%; max-width:600px;}
.port-st-2 .image img {border-radius:30px; border:4px solid #222222; box-shadow:0 0 40px rgba(0,0,0,.2);}

.port-st-3 {padding:150px 0;}
.port-st-3:after {content:""; display:block; clear:both;}
.port-st-3 .content {width:50%;}
.port-st-3 h2 {margin:30px 0 50px;}
.port-st-3 .txt1 {font-size:22px; font-weight:700; line-height:1.364em; letter-spacing:-.03em; margin-bottom:10px;}
.port-st-3 .txt2 {font-size:17px; font-weight:300; line-height:1.765em; letter-spacing:-.03em;}

.port-st-4 {padding:100px 0; background:#f4f4f4;}
.port-st-4 .group {display:flex; align-items:center; padding:35px 0;}
.port-st-4 .left {width:50%; padding-right:30px;}
.port-st-4 .right {width:50%; padding-left:80px; font-size:40px; line-height:1.25em; color:#bbb;}
.port-st-4 .typo-tit {position:relative; padding-bottom:17px; margin-bottom:17px; border-bottom:1px solid #ddd;}
.port-st-4 .typo-tit h2 {font-size:30px; line-height:1.3em;}
.port-st-4 .typo-tit .lang {position:absolute; top:7px; right:0; font-size:18px; font-weight:500; line-height:1.3em;}
.port-st-4 .typo-st {display:flex; align-items:center;}
.port-st-4 .typo-st .big {width:185px; font-size:140px; line-height:1.15em;}
.port-st-4 .typo-st .small {flex:1 1 auto; min-width:0; width:1%; font-size:32px; line-height:1.5em; letter-spacing:.1em; word-break:break-all;}

.port-st-5 {padding:150px 0;}
.port-st-5 .colors {display:flex; height:180px; margin-top:45px;}

.port-st-6 {padding:100px 0; background:#f4f4f4;}
.port-st-6 .contain {display:flex; justify-content:space-between;}

.port-st-7 {display:flex;}
.port-st-7 div {width:50%;}
.port-st-7 img {width:100%;}

.port-st-8 {padding:150px 0; text-align:center;}
.port-st-8 .title {margin-bottom:50px;}
.port-st-8 .title p {font-size:22px; font-weight:700; line-height:1.3em; letter-spacing:-.03em; margin-top:15px;}
.port-st-8 .image img {border-radius:30px; border:4px solid #222222; box-shadow:0 0 40px rgba(0,0,0,.2);}

.port-st-9 .title {margin-bottom:55px;}
.port-st-9 .title .contain {display:flex; justify-content:space-between;}
.port-st-9 .title p {text-align:right; margin-left:40px; margin-top:4px; font-size:17px; line-height:1.765em; letter-spacing:-.03em;}
.port-st-9 .image img {width:100%;}

@media (max-width: 1024px) {
	.port-st-tit {font-size:60px;}

	.port-st-1 .image {height:calc(100vh - 80px);}
	.port-st-1 .title {margin-bottom:40px;}
	.port-st-1 .text {padding:35px 0; min-height:auto;}
	.port-st-1 .text:before {width:70%;}
	.port-st-1 .text .inner {width:70%; padding-right:20px;}
	.port-st-1 .text .txt1 {font-size:22px;}
	.port-st-1 .text .txt2 {font-size:16px;}

	.port-st-2 {padding:100px 0;}
	.port-st-2 .content h2 {margin-bottom:20px;}
	.port-st-2 .content .txt {font-size:16px;}
	.port-st-2 .content .txt br {display:none;}
	.port-st-2 .content .dl-cnt {margin-top:80px; font-size:16px;} 
	.port-st-2 .image img {box-shadow:0 0 20px rgba(0,0,0,.2);}

	.port-st-3 {padding:100px 0;}
	.port-st-3 h2 {margin:20px 0 30px;}
	.port-st-3 .txt1 {font-size:20px;}
	.port-st-3 .txt2 {font-size:16px;}

	.port-st-4 {padding:70px 0;}
	.port-st-4 .right {padding-left:40px; font-size:32px;}
	.port-st-4 .typo-tit {padding-bottom:15px; margin-bottom:15px;}
	.port-st-4 .typo-tit h2 {font-size:24px;}
	.port-st-4 .typo-tit .lang {font-size:16px;}
	.port-st-4 .typo-st .big {width:130px; font-size:100px;}
	.port-st-4 .typo-st .small {font-size:22px;}

	.port-st-5 {padding:100px 0;}
	.port-st-5 .colors {height:120px; margin-top:35px;}

	.port-st-8 {padding:100px 0;}
	.port-st-8 .title {margin-bottom:40px;}
	.port-st-8 .title p {font-size:19px;}
	.port-st-8 .image img {box-shadow:0 0 20px rgba(0,0,0,.2);}

	.port-st-9 .title {margin-bottom:40px;}
	.port-st-9 .title p {font-size:16px; width:50%;}
	.port-st-9 .title p br {display:none;}
}

@media (max-width: 640px) {
	.port-st-tit {font-size:35px;}

	.port-st-1 .image {height:calc(100vh - 60px);}
	.port-st-1 .text {padding:30px 0;}
	.port-st-1 .text:before {width:90%;}
	.port-st-1 .text .inner {width:90%; padding-right:15px;}
	.port-st-1 .text .txt1 {font-size:18px;}
	.port-st-1 .text .txt2 {font-size:13px;}
	.port-st-1 .text .txt2 br {display:none;}

	.port-st-2 {padding:60px 0 0;}
	.port-st-2 .contain {height:auto !important;}
	.port-st-2 .content {float:none; width:100%; margin-bottom:30px;}
	.port-st-2 .content h2 {margin-bottom:10px;}
	.port-st-2 .content .txt {font-size:14px;}
	.port-st-2 .content .dl-cnt {margin-top:30px; font-size:16px;}
	.port-st-2 .image {position:relative; float:none; width:auto; padding:0 15px;}
	.port-st-2 .image:before {content:""; position:absolute; bottom:0; left:-15px; right:-15px; height:50%; background:#fff;}
	.port-st-2 .image img {position:relative; border-radius:15px; border-width:3px;}

	.port-st-3 {padding:50px 0 60px;}
	.port-st-3 .content {width:auto;}
	.port-st-3 h2 {margin:0 0 20px;}
	.port-st-3 .txt1 {font-size:18px;}
	.port-st-3 .txt1 br {display:none;}
	.port-st-3 .txt2 {font-size:14px;}
	.port-st-3 .txt2 br {display:none;}

	.port-st-4 {padding:30px 0;}
	.port-st-4 .group {display:block; padding:30px 0;}
	.port-st-4 .left {width:auto; padding:0 0 20px;}
	.port-st-4 .right {width:auto; padding-left:0; font-size:22px;}
	.port-st-4 .typo-tit {padding-bottom:12px; margin-bottom:12px;}
	.port-st-4 .typo-tit h2 {font-size:18px;}
	.port-st-4 .typo-tit .lang {top:3px; font-size:13px;}
	.port-st-4 .typo-st .big {width:90px; font-size:70px;}
	.port-st-4 .typo-st .small {font-size:16px;}

	.port-st-5 {padding:60px 0;}
	.port-st-5 .colors {flex-wrap:wrap; height:auto; margin-top:20px;}
	.port-st-5 .colors > div {flex:0 0 auto; height:90px; width:50% !important}

	.port-st-6 {padding:60px 0;}
	.port-st-6 .contain {display:block;}
	.port-st-6 h2 {margin-bottom:20px;}

	.port-st-7 {display:block;}
	.port-st-7 div {width:100%;}

	.port-st-8 {padding:60px 0; background-position:0 50% !important; background-size:100% !important;}
	.port-st-8 .title {margin-bottom:25px;}
	.port-st-8 .title p {font-size:15px;}
	.port-st-8 .image {padding:0 30px;}
	.port-st-8 .image img {border-radius:15px; border-width:3px;}

	.port-st-9 .title {margin-bottom:20px;}
	.port-st-9 .title .contain {display:block;}
	.port-st-9 .title p {font-size:14px; width:auto; text-align:left; margin:10px 0 0 0;}
}