@charset "utf-8";

.sub-tab {margin-bottom:70px;}
.sub-tab ul {display:flex; gap:10px; justify-content:center;}
.sub-tab ul li a {min-width:180px; border-radius:20px; height:40px; border:1px solid #ddd; display:flex; align-items:center; justify-content:center; text-align:center; padding:0 13px;}
.sub-tab ul li.active a {color:#fff; background:var(--color-primary); border-color:var(--color-primary);}

.greeting-bnr {margin-bottom:53px; height:240px; background:url('/images/sub/greeting.jpg') no-repeat 50% 50% /cover; display:flex; align-items:center; justify-content:center; text-align:center; color:#fff;}
.greeting-bnr p {font-size:var(--fz32); font-weight:400; letter-spacing:-.03em; line-height:1.3em;}

.greeting {background:url('/images/sub/greeting-txt.jpg') no-repeat right 0 bottom 0;}
.greeting .tt {margin-bottom:7px; font-size:var(--fz24); font-weight:700; letter-spacing:-.03em; line-height:1.4em; color:var(--color-primary);}
.greeting .txt {margin-bottom:30px; font-size:var(--fz18); font-weight:400; letter-spacing:-.03em; line-height:1.80em; color:#454545;}
.greeting .ceo {font-size:var(--fz20);}
.greeting .ceo strong {font-weight:500; color:#242424;}

.history-bnr {height:300px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; position:relative; color:#fff;}
.history-bnr:before {content:''; position:absolute; left:50%; top:0; width:100vw; height:100%; z-index:-1; transform:translateX(-50%); background:url('/images/sub/history.jpg') no-repeat 50% 50% / cover;}
.history-bnr h2 {margin-bottom:11px; font-size:var(--fz28); font-weight:700; letter-spacing:-.03em; line-height:1.4em;}
.history-bnr p {font-weight:400; letter-spacing:-.03em; line-height:1.4em;}

.history {padding-top:50px; position:relative;}
.history:before {content:''; position:absolute; left:50%; top:0; width:1px; height:100%; background:#ddd;}
.history:after {content:''; position:absolute; left:50%; top:-12px; margin-left:-12px; width:24px; height:24px; background:url('/images/sub/history-top.png');}
.history .group:not(:last-child) {margin-bottom:27px;}
.history .group h3 {position:relative; margin-bottom:9px; font-size:var(--fz20); font-weight:700; letter-spacing:-.03em; line-height:1.4em;}
.history .group h3:before {content:''; position:absolute; top:50%; transform:translateY(-50%); width:16px; height:16px; background:url('/images/sub/history-dot.png') no-repeat 50% 50% /contain;}
.history .group ul li {word-break:break-all; display:flex; font-weight:400; line-height:1.88em; color:#454545;}
.history .group ul li strong {min-width:40px; color:var(--color-primary); line-height:1.88em;}
.history .group:nth-child(odd) {margin-left:50%; padding-left:26px;}
.history .group:nth-child(odd) h3:before {left:-26px; margin-left:-8px;}
.history .group:nth-child(even) {text-align:right; margin-right:50%; padding-right:26px;}
.history .group:nth-child(even) ul li {flex-direction:row-reverse;}
.history .group:nth-child(even) h3:before {right:-26px; margin-right:-8px;}

.field-group {margin-bottom:40px; display:flex; justify-content:space-between;}
.field-group:last-child {margin-bottom:0;}
.field-group .img {width:calc(50% - 21px);}
.field-group .cnt {width:calc(50% - 21px); position:relative; padding:35px 20px;}
.field-group .cnt .en {margin-bottom:10px; color:var(--color-primary); font-weight:600; line-height:1.4em;}
.field-group .cnt h2 {margin-bottom:10px; font-size:var(--fz32); font-weight:600; letter-spacing:-.03em; line-height:1.4em;}
.field-group .cnt .txt {font-weight:400; line-height:1.63em; letter-spacing:0; color:#454545;}
.field-group .btn {position:absolute; bottom:40px; height:40px; border:1px solid #ddd; border-radius:20px; padding:0 20px; font-size:var(--fz14); font-weight:400; color:#454545; letter-spacing:-.03em; line-height:1.4em; display:inline-flex; align-items:center;}
.field-group .btn:after {margin-left:36px; content:''; width:5px; height:9px; background:url('/images/sub/more-arr.png') no-repeat 50% 50% /contain;}
.field-group .btn:hover {background:var(--color-primary); border-color:var(--color-primary); color:#fff;}
.field-group .btn:hover:after {background-image:url('/images/sub/more-arr-on.png');}
.field-group:nth-child(even) {flex-direction:row-reverse;}