@charset "utf-8";

.dot-tit {margin-bottom:21px;position:relative;padding-left:20px;font-size:var(--fz22); font-weight:600; letter-spacing:-.02em; line-height:1.4em; color:#242424;}
.dot-tit:before {content:''; position:absolute; left:0; top:.5em; width:8px; height:8px; border-radius:100%; background:var(--color-primary);}

.color-tit {font-size:var(--fz26); font-weight:700; letter-spacing:-.01em; line-height:1.4em; color:var(--color-primary);}

.doc-txt {line-height:1.69em; letter-spacing:-.02em;}

.chairman-img {margin-bottom:40px;height:450px; background:url('/images/sub/chairman.jpg') no-repeat 50% 50% / cover;}
.chairman h2 {margin-bottom:17px;font-size:var(--fz30); font-weight:700; letter-spacing:-.03em; line-height:1.4em; color:#242424;}
.chairman h2 span {color:#3962e9;}
.chairman p {line-height:1.69em;}
.chairman p + p {margin-top:28px;}
.chairman .ceo {margin-top:60px;font-size:var(--fz20); font-weight:600; letter-spacing:-.02em; color:#242424;}

.table01 table {border-top:2px solid #242424; width:100%; border-collapse:collapse; border-spacing:0; text-align:center; line-height:1.69em;}
.table01 thead th {padding:16px 10px;border-right:1px solid #ddd; background:#f4f4f4; font-weight:600; color:#242424;}
.table01 tbody td {padding:21px 10px;border-right:1px solid #ddd; border-bottom:1px solid #ddd;}
.table01 thead th:last-child,
.table01 tbody td:last-child {border-right:0;}
.table01.type2 tbody td {padding:16px 10px;}

.establish-img {margin-bottom:35px;border-radius:16px; height:350px; background:url('/images/sub/establish.jpg') no-repeat 50% 50% / cover;}

.num-list ul li {margin-bottom:15px;display:flex; align-items:center;}
.num-list ul li:last-child {margin-bottom:0;}
.num-list .num {margin-right:19px;font-size:var(--fz27); font-weight:600; display:flex; align-items:center; justify-content:center; border:2px solid var(--color-primary); min-width:70px; height:70px; border-radius:100%; color:var(--color-primary);}

.history {position:relative;}
.history:before {content:''; position:absolute; left:50%; height:100%; margin-left:-.5px; width:1px; border:1px dashed #ddd;}
.history .row {margin-bottom:58px;position:relative;}
.history .row:last-child {margin-bottom:0;}
.history .row:before {position:absolute; left:50%; top:50%; margin:-14px 0 0 -14px;content:''; width:28px; height:28px; border-radius:100%; border:5px solid var(--color-primary); background:#fff; z-index:2;}
.history .row .txt {letter-spacing:-.02em; line-height:1.4em;display:flex; align-items:center; position:relative;}
.history .row .txt .bar {position:absolute; top:9px; width:48px; height:1px; background:#ddd;}
.history .row:nth-child(odd) {padding-left:50%;}
.history .row:nth-child(odd) .txt {padding-left:63px;}
.history .row:nth-child(odd) .txt .bar {left:0;}
.history .row:nth-child(even) {padding-right:50%; text-align:right;}
.history .row:nth-child(even) .txt {justify-content:flex-end; padding-right:63px;}
.history .row:nth-child(even) .txt .bar {right:0;}

.emblem-img {margin-bottom:43px;text-align:center; padding:50px; border:1px solid #ddd;}
.emblem {text-align:center;}
.emblem h2 {font-size:var(--fz25); font-weight:700; letter-spacing:-.01em; line-height:1.4em; color:#242424;}
.emblem .tt {margin:13px 0 27px;font-size:var(--fz14); letter-spacing:-.01em; line-height:1.4em; color:#686868;}

.incorp-sec {padding:70px 0;border-bottom:1px solid #ddd;}
.incorp-sec:first-child {padding-top:0;}
.incorp-sec .group + .group {margin-top:38px;}
.incorp-sec h2 {margin-bottom:55px;font-size:var(--fz30); font-weight:700; letter-spacing:-.01em; line-height:1.4em; color:#242424;text-align:center;}
.incorp-sec h3 {margin-bottom:9px;font-size:var(--fz22); font-weight:600; letter-spacing:-.01em; line-height:1.4em; color:#242424;}
.incorp-sec p {line-height:1.69em; letter-spacing:-.02em;}
.incorp-sec ul li {padding-left:1em; text-indent:-1em; line-height:1.69em; letter-spacing:-.02em;}
.incorp-date {margin-top:70px;}
.incorp-date p {font-size:var(--fz18);text-align:right; letter-spacing:-.01em;}
.incorp-date p + p {margin-top:5px;}

.society-background {display:flex;}
.society-background .img {margin-right:60px;width:550px;}
.society-background .cnt {flex:1 1 auto; min-width:0; width:1%;}
.society-background .cnt h2 {margin-top:-4px;margin-bottom:40px;font-size:var(--fz28); font-weight:700; letter-spacing:-.01em; line-height:1.4em; color:#242424;}
.society-background .group + .group {margin-top:28px;}
.society-background .group .tit {margin-bottom:9px;font-size:var(--fz20); font-weight:600; letter-spacing:-.01em; line-height:1.4em;color:var(--color-primary);}

.hypen-list li {padding-left:.6em; text-indent:-.6em; letter-spacing:-.02em;}

.wisdom {text-align:center;}
.wisdom p {margin-top:25px;}
.wisdom .img {margin-top:45px;}

.unification-background {display:flex; align-items:center;}
.unification-background .img {margin-left:-20px;margin-right:70px;width:600px;}
.unification-background .cnt {flex:1 1 auto; min-width:0; width:1%;}
.cooper-list ul {display:flex; margin:-15px;}
.cooper-list ul li {padding:15px;width:25%; text-align:center;}
.cooper-list .txt {margin-top:18px;letter-spacing:-.01em; line-height:1.4em;}
.cooper-list .txt strong {margin-bottom:8px;font-size:var(--fz22); letter-spacing:-.01em; display:block;}
.cooper-list ul li:nth-child(odd) .txt strong {color:var(--color-primary);}
.cooper-list ul li:nth-child(even) .txt strong {color:#ff0000;}

.doc-bar {margin:78px 0;width:100%; height:1px; background:#e7e7e7;}

picture {display:block;}

.sharing {display:flex; align-items:center; justify-content:center;}
.sharing .img {margin-right:60px;}
.sharing .cnt h2 {font-size:var(--fz30); font-weight:700; letter-spacing:-.01em; line-height:1.4em; color:#242424;}
.sharing .cnt .txt {margin:40px 0 35px;}
.sharing .cnt .tt {font-size:var(--fz18); font-weight:600; letter-spacing:-.02em; line-height:1.4em; color:var(--color-primary);}

.account {margin-bottom:25px;padding:40px 30px 53px;background:#f4f4f4;}
.account .tit {margin-bottom:22px;text-align:center;}
.account .tit span {border-radius:21px; font-size:var(--fz18); font-weight:700;display:inline-block; color:#fff; background:var(--color-primary); line-height:42px; padding:0 34px;}
.account dl {margin-right:-30px;display:flex; align-items:center; justify-content:center;}
.account dl .num {margin:0 60px;font-size:var(--fz22); font-weight:700; letter-spacing:-.01em; line-height:1.4em; color:#242424;}
.account dl .name {font-size:var(--fz18); font-weight:500; letter-spacing:-.01em; line-height:1.4em;}
.account-tt {color:#686868;font-size:var(--fz14); letter-spacing:-.02em; line-height:1.6em;}