@charset "utf-8";
.word_ul {margin:2rem 0 0 2rem; display:flex; flex-wrap:wrap; gap:1rem;}
.word_ul>li {padding:0.6rem; text-align:center; width:9rem; border-radius:2.5rem; border:1px solid #ccc; background:#fff;}
.word_ul>li:nth-child(2n) {background:#f9f9f9;}

.summary-list {display:flex; gap:1.6%; text-align:center; padding-top:4rem;}
.summary-list>li {position:relative; flex:1; padding:6.4rem 1rem 0; height:16rem; color:#fff; letter-spacing:-0.1rem;}
.summary-list>li:nth-child(1) {border-radius:4rem 0 0 0; background:var(--main-color);}
.summary-list>li:nth-child(2) {background:var(--mix-color);}
.summary-list>li:nth-child(3) {border-radius:0 0 4rem 0; background:var(--sub-color)}
.summary-list>li .s_icon {position:absolute; top:-4rem; left:50%; width:8rem; height:8rem; display:flex; justify-content:center; align-items:center; border-radius:50%; transform:translateX(-50%); box-shadow:0 0.7rem 0.5rem rgba(0,0,0,.2); background:#fff;}

table.data thead th.point {color:#fe1;}

.sub_history {position:relative; padding-left:4rem; margin-top:2rem;}
.sub_history::before {position:absolute; content:""; top:0; bottom:0; left:1.5rem; border-left:1px dashed #ccc; z-index:-1;}
.sub_history>li {position:relative; display:flex; gap:2rem; margin-top:3.2rem;}
.sub_history>li::before {position:absolute; content:""; left:-3.1rem; top:0.9rem; width:0.7rem; height:0.7rem; border-radius:50%; border:0.3rem solid var(--main-color); background:#fff;}
.sub_history>li h5 {font-size:2rem; color:var(--main-color);}
.sub_history>li h6 {flex:0 0 10.4rem; font-weight:600; font-size:1.8rem; color:#777; transform:translateY(0.1rem);}
.sub_history>li dl {display:flex; flex-wrap:wrap; gap:1.2rem;}
.sub_history>li dl dt {color:#000; font-weight:500;}
.sub_history>li dl dd {color:#888;}

.support-step {text-align:center; display:flex; gap:2.4rem; margin-top:2rem;}
.support-step>li {position:relative; flex:1; display:flex; flex-direction:column; gap:2rem;}
.support-step>li p {position:relative; flex:1; display:flex; flex-direction:column; justify-content:center; align-items:center; min-height:9rem; font-weight:600; border-radius:1.2rem; border:1px solid #ccc;}
.support-step>li p span {font-size:1.4rem; font-weight:400; letter-spacing:-0.1rem;}
.support-step>li:nth-child(3) p,
.support-step>li:nth-child(5) p {background:#f0f0f0;}
.support-step>li:nth-child(2) p {color:var(--sub-color); border:3px solid var(--sub-color);}
.support-step>li:nth-child(3) p::before,
.support-step>li:nth-child(5) p::before {position:absolute; right:calc(100% + 0.6rem); top:50%; width:1.2rem; height:1.8rem; background:url('../img/contents/step_arr.gif'); background-size:100%; transform:translateY(-50%); content:"";}
.support-step>li:nth-child(3) p::after {position:absolute; left:calc(100% + 1px); top:50%; width:2.4rem; border-top:1px solid #ccc; z-index:-1; content:"";}
.support-step>li:nth-child(1) p::before {position:absolute; left:calc(100% + 1px); top:50%; width:1.2rem; border-top:1px solid #ccc; z-index:-1; content:"";}
.support-step>li:nth-child(2) p::before {position:absolute; right:calc(100% + 2px); top:50%; width:1.2rem; border-top:1px solid #ccc; z-index:-1; content:"";}
.support-step>li:nth-child(2) p::after {position:absolute; right:calc(100% + 0.2rem); top:calc(16.66% - 0.9rem); bottom:calc(16.66% - 0.9rem); width:1.2rem;  border:solid #ccc; border-width:1px 0 1px 1px;  z-index:-1; content:"";}

.support-system {display:flex; gap:2rem;}
.support-system>dl{position:relative; text-align:center; flex:1 1 60%; display:flex; flex-direction:column; justify-content:center; align-items:center; min-height:40rem; border-radius:2rem; border:1px solid #ddd; box-shadow:0 0.5rem 1rem rgba(0,0,0,.07);}
.support-system>dl::before {position:absolute; left:50%; top:50%; width:30rem; height:30rem; border:1px solid #ddd; border-radius:50%; transform:translate(-50%, -50%); content:"";}
.support-system>dl dt {font-size:2.6rem; font-weight:800; color:#000; line-height:110%;}
.support-system>dl dt span {font-size:1.5rem; font-weight:400; color:#777;}
.support-system>dl dd {position:absolute; padding-top:8.5rem; font-weight:600; line-height:120%;}
.support-system>dl dd::before {position:absolute; left:50%; top:0; width:8rem; height:8rem; border-radius:50%; background-color:var(--main-color); transform:translateX(-50%); background:no-repeat center center; content:"";}
.support-system>dl dd:nth-of-type(1) {top:calc(50% - 18.7rem);}
.support-system>dl dd:nth-of-type(2) {top:calc(50% + 3.8rem); transform:translateX(-13.5rem);}
.support-system>dl dd:nth-of-type(3) {top:calc(50% + 3.8rem); transform:translateX(+13.5rem);}
.support-system>dl dd:nth-of-type(1)::before {background-color:var(--main-color);}
.support-system>dl dd:nth-of-type(2)::before {background-color:var(--mix-color);}
.support-system>dl dd:nth-of-type(3)::before {background-color:var(--sub-color);}
.support-system>dl dd.ic1::before {background-image:url('/img/contents/support-system01.svg');}
.support-system>dl dd.ic2::before {background-image:url('/img/contents/support-system02.svg');}
.support-system>dl dd.ic3::before {background-image:url('/img/contents/support-system03.svg');}
.support-system>dl dd.ic4::before {background-image:url('/img/contents/support-system04.svg');}
.support-system>dl dd.ic5::before {background-image:url('/img/contents/support-system05.svg');}

.support-system>div{flex:1 1 40%; display:flex; flex-direction:column; gap:1.6rem;}
.support-system>div>dl {padding:1.6rem 2.4rem; border-radius:2rem; border:1px solid #ccc;}
.support-system>div>dl dt {font-size:2rem; font-weight:800;}
.support-system>div>dl:nth-of-type(1) dt {color:var(--main-color);}
.support-system>div>dl:nth-of-type(2) dt {color:var(--mix-color);}
.support-system>div>dl:nth-of-type(3) dt {color:var(--sub-color);}
.support-system>div>dl ul.bl04 {margin-top:1rem;}

.imgBox.imgStep {padding-right:2.6rem;}
.imgBox.imgStep>li {position:relative; flex:0 0 calc(33.33% - 1.733rem); overflow:visible;}
.imgBox.imgStep>li:not(:last-child)::before {position:absolute; left:calc(100% + 0.7rem); top:50%; width:1.2rem; height:1.8rem; background:url('../img/contents/step_arr.gif'); background-size:100%; transform:translateY(-50%); content:"";}
.imgBox.imgStep>li img {border-radius:1.2rem;}
.imgBox.imgStep>li p {border-radius:0 0 1.2rem 1.2rem;}
.imgBox li.w100p {flex:1;}

.card-list {display:flex; gap:1rem; margin-top:2rem;}
.card-list>li {flex:1; border:1px solid #ccc;}
.card-list>li .tit{display:flex; flex-direction:column; justify-content:center; align-items:center; min-height:9rem; text-align:center; font-size:1.8rem; font-weight:700; letter-spacing:-0.1rem; line-height:120%; border-bottom:1px solid #ccc;}
.card-list>li .tit span{display:block; font-size:1.4rem; font-weight:normal; color:#666;}
.card-list>li .txt {padding:0.8rem 1rem;}
.card-list>li .txt .bl05>li {font-size:1.5rem;}
.card-list div.img {display:flex; gap:0.5rem;}
.card-list div.img img {flex:1; min-width: 0;}

.video-intro {display:flex; gap:1.7rem;}
.video-intro>div:nth-child(1) {flex:2; min-height:0; overflow:hidden; box-shadow:0 0.1rem 0.5rem rgba(0, 0, 0, .2);}
.video-intro>div:nth-child(1) video {display:block; width:calc(100% + 2px); height:calc(100% + 2px); object-fit:cover;}
.video-intro>div:nth-child(2) {flex:1; display:flex; min-height:0; gap:1.5rem; flex-direction:column;}
.video-intro>div:nth-child(2) img {flex:1 1 auto; min-height:0; width:auto;}

.sub-organ {position:relative;text-align:center;}
.sub-organ ul {position:relative; margin-top:3rem;}
.sub-organ p {display:flex; flex-direction:column; justify-content:center; align-items:center; margin: auto; width:32%; padding:1.2rem; min-height:7.6rem; color:#222; font-weight:700; line-height:160%; border-radius:1.2rem; border:3px solid var(--main-color); background:#fff;}
.sub-organ p span {display:block; font-size:1.3rem; font-weight:400; letter-spacing:-0.05rem;  line-height:110%; color:#666;}
.sub-organ .dep2 p {border-color:var(--sub-color);}
.sub-organ .dep3 p {border-color:#f4a028;}
.sub-organ p.dep2color {border-color:var(--sub-color);}
.sub-organ li.left-side {position:absolute; top:0; left:0; width:32%;}
.sub-organ li.left-side p {width:100%;}
.sub-organ li.right-side {position:absolute; top:0; right:0; width:32%;}
.sub-organ li.right-side p {width:100%;}
.sub-organ::before {position:absolute; left:50%; top:0.5rem; bottom:0.5rem; border-left:dashed 1px #bbb; z-index:-1; content:"";}
.sub-organ li.left-side::before {position:absolute; top:50%; left:50%; width:105.5%; border-top:dashed 1px #bbb; z-index:-1; content:"";}
.sub-organ li.right-side::before {position:absolute; top:50%; right:50%; width:100%; border-top:dashed 1px #bbb; z-index:-1; content:"";}
.sub-organ li.hiatus-ver {top:-5.3rem;}

.mapWrap {width:100%; border:1px solid #ccc;}
#map {height:46rem !important;}

.history {position:relative; margin-top:3rem; margin-left:0.5rem;}
.history>li {position:relative; padding-left:15rem; padding-bottom:5rem; }
.history>li h5 {position:absolute; left:0; font-size:3rem; font-weight:800; color:var(--main-color);}
.history>li dl {padding-top:0.6rem; margin-bottom:2rem;}
.history>li dl:last-child {margin-bottom:0;}
.history>li dl dt {position:relative; font-weight:700; font-size:2.2rem; color:var(--mix-color);}
.history>li dl dt span {font-size:2rem; font-weight:400; color:#000;}
.history>li dl dd {position:relative; margin-top:0.4rem; padding-left:0.8rem;}
.history>li dl dd::before {position:absolute; left:0; top:1.1rem; height:1px; width:0.4rem; background:#333; content:"";}
.history::before {position:absolute; left:12rem; top:0; bottom:0; border-left:1px dashed #ccc; content:"";}
.history>li dl dt::before {position:absolute; left:-3.3rem; top:1.2rem; width:0.7rem; height:0.7rem; border-radius:50%; background:var(--sub-color);content:"";}
.history>li div.img {display:flex; flex-wrap:wrap; gap:.8rem;}

.consbtnBox a{margin:2px;}

.rel_list {position:relative; margin-top:2rem;}
.rel_list>li {position:relative;width:calc(50% - 2rem); padding:2rem; border:1px solid #ddd; border-radius:1.6rem; background:#fff;}
.rel_list>li:nth-child(2n) {margin-left:auto;}
.rel_list>li h5 {text-align:center; margin:1.5rem 0; font-weight:700; font-size:2.2rem; color:var(--main-color);}
.rel_list>li dl {padding:1.5rem 0; border-top:1px dashed #ddd;}
.rel_list>li dl:last-of-type {padding-bottom:0;}
.rel_list>li dl dt {text-align:center; padding:1rem; margin-bottom:1.6rem; font-size:1.8rem; font-weight:bold; color:#fff; border-radius:1.2rem; background:var(--main-color);}
.rel_list>li dl dd {display:flex; gap:0.8rem; align-items:start; padding-left:0.2rem;}
.rel_list>li dl dd+dd {margin-top:0.6rem;}
.rel_list>li dl dd>strong {text-align:center; flex:0 0 7.2rem; padding:0.2rem 0; font-size:1.5rem; font-weight:600; color:#000; border-radius:0.8rem; background:#eee;}
.rel_list>li dl dd>p {font-size:1.5rem;}
.rel_list>li dl dd>p span {display:block; font-weight:500; color:#f53340;}
.rel_list::before {position:absolute; left:50%; top:0; bottom:0; border-left:1px dashed #ddd; content:"";}
.rel_list>li::before {position:absolute; top:50%; left:calc(100% + 1.5rem); width:0.7rem; height:0.7rem; border-radius:50%; border:0.3rem solid var(--main-color); background:#fff; transform:translateY(-50%); content:"";}
.rel_list>li:nth-child(2n)::before {right:calc(100% + 1.4rem); left:auto;}
.rel_list>li::after {position:absolute; top:50%; left:100%; width:2rem; border-top:1px solid #ddd; transform:translateY(-50%); content:""; z-index:-1;}
.rel_list>li:nth-child(2n)::after {left:auto; right:100%;}

.step {display:flex; gap:2.4rem; margin:2rem 0 1rem;}
.step>li {position:relative; flex:1; display:flex; flex-direction:column; min-width:0; border-radius:1.2rem;}
.step>li h5 {text-align:center; flex:0 0 auto; padding:1rem; color:#fff; font-size:1.8rem; border-radius:1.6rem 1.6rem 0 0; border:0; background:var(--mix-color);}
.step>li>* {text-align:center; flex:1 1 auto; padding:1rem; border:1px solid #ccc; border-top:0; font-size:1.5rem; color:#111; letter-spacing:-0.05rem; line-height:140%;}
.step>li>*:last-child {border-radius:0 0 1.6rem 1.6rem;}
.step>li>img {padding:0; border-left:0; border-right:0;}
.step>li>span {flex:0 0 auto; color:var(--main-color); background:#f4f4f4;}
.step>li>p {display:flex; flex-direction:column; justify-content:center; align-items:center;}
.step>li .fixflex {flex:0 0 auto;}
.step>li:first-child h5 {background:var(--main-color);}
.step>li:last-child h5 {background:var(--sub-color);}
.step>li:not(:last-child)::before {position:absolute; left:calc(100% + 0.6rem); top:50%; width:1.2rem; height:1.8rem; background:url('../img/contents/step_arr.gif'); background-size:100%; transform:translateY(-50%); content:"";}
.step>li dl {padding:1.5rem; text-align:left;}
.step>li dl dt {position:relative; margin-top:1.2rem;  font-weight:500; padding-left:1rem;}
.step>li dl dt:first-child {margin-top:0;}
.step>li dl dt::before {position:absolute; left:0; top:0.8rem; width:0.4rem; height:0.4rem; background:#111; content:"";}
.step>li dl dd {position:relative; margin-top:0.5rem; color:#666; font-size:1.5rem; padding-left:1.7rem;}
.step>li dl dd::before {position:absolute; left:0.9rem; top:1rem; width:0.4rem; height:0.1rem; background:#111; content:"";}
.step>li h5.only_h5 {flex:1; border-radius:1.6rem; display:flex; justify-content:center; align-items:center;}

.step.gray-step>li h5 {color:#111; font-size:1.6rem; font-weight:normal; border:1px solid #ccc; background:#eee !important;}


.tbox.info {text-align:center; border:1px solid #f53340; border-top-width:3px; color:#f53340; font-size:1.8rem; background:#ffff99;}
.tbox.info + h4 {margin-top:3rem;}

.info_txt_top {padding:3rem; text-align:center; font-size:3rem; font-weight:500; color:#000; line-height:170%;}
.info_txt_top span {position:relative; font-weight:800;}
.info_txt_top span::before {position:absolute; top:-0.5rem; left:50%; width:0.5rem; height:0.5rem; border-radius:50%; transform:translateX(-50%); background:#d72323; content:"";}

.organ_list {display:flex; gap:0.8rem; margin-top:2rem; margin-left:1rem;}
.organ_list > li {flex:1; display:flex; justify-content:center; align-items:center; border:1px solid #ccc; padding:01rem;}

.festival-bi {display:flex; gap:5rem; margin-top:2rem;  justify-content:space-between;}
.festival-bi ul {display:flex; flex:1 1 auto; gap:1rem; flex-direction:column; justify-content:space-between;}
.festival-bi ul>li {flex:1; display:flex; gap:1rem;}
.festival-bi ul>li span {display:block; width:40%; border-radius:1.6rem; background:#cbc46a;}
.festival-bi ul>li p {display:flex; justify-content:center; align-items:center;}
.festival-bi ul>li:nth-child(2) span {background:#9fba9b;}
.festival-bi ul>li:nth-child(3) span {background:#efb465;}
.festival-bi ul>li:nth-child(4) span {background:#e18369;}

.festival-visit {text-align:center; margin:2rem 0 0 1rem; padding:3rem 2rem; border-radius:2rem; box-shadow:0 0 1rem rgba(0,0,0,.15);}
.festival-visit p {font-size:1.9rem; font-weight:700;}

.sns_list {margin-top:3rem; display:flex; gap:2rem;}
.sns_list>li {text-align:center; flex:1;}
.sns_list>li>a {display:block; padding:3rem; border-radius:2rem; background:#333; font-size:2.4rem; font-weight:bold; color:#fff;}
.sns_list>li>a span {position:relative; display:block; margin-top:8.5rem; margin-left:1rem; margin-right:1rem; padding:0.7rem; font-size:1.7rem; border-radius:3rem; color:#222; background:#fff; content:"";}
.sns_list>li>a span::before {position:absolute; bottom:calc(100% + 1.5rem); left:50%; width:6.2rem; height:6.2rem; border-radius:50%; background:rgba(0,0,0,.2) no-repeat center center; transform:translateX(-50%); content:"";}
.sns_list>li.instagram>a {background:radial-gradient(circle at 30% 130%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285aeb 105%);}
.sns_list>li.blog>a {background:#03c75a;}
.sns_list>li.youtube>a {background:#d00;}
.sns_list>li.instagram>a span {color:#f70961;}
.sns_list>li.blog>a span {color:#03c75a;}
.sns_list>li.youtube>a span {color:#d00;}
.sns_list>li.instagram>a span::before {background-image:url('/img/contents/snslink_instagram.png')}
.sns_list>li.blog>a span::before {background-image:url('/img/contents/snslink_blog.png')}
.sns_list>li.youtube>a span::before {background-image:url('/img/contents/snslink_youtube.png')}

.organization {text-align:center;}
.organization>p {margin:4rem 0 6rem; padding:1.5rem; color:#fff; font-size:2.5rem; font-weight:700; border-radius:3.4rem; background:linear-gradient(100deg, var(--main-color) 38%, var(--sub-color) 110%);}
.organization ul {position:relative; margin-top:2rem;}
.organization ul p {display:flex; justify-content:center; align-items:center; margin-left:auto; margin-right:auto; width:20rem; height:8rem; border-radius:1.6rem; line-height:170%; background:#fff;}
.organization .president {width:26rem; height:9rem; font-size:2.3rem; font-weight:700;  border:3px solid var(--main-color); line-height:130%;}
.organization .second {font-size:2rem; font-weight:700; border:3px solid var(--sub-color);}
.organization .section {width:100%; display:flex; gap:20px;}
.organization .section>li {position:relative; flex:1 1 25%; margin-top:1rem; padding-top:4rem;}
.organization .section p {max-width:36rem; width:auto; margin-left:auto; margin-right:auto; height:6rem; padding:0.5rem; border:1px solid #aaa; border-radius:3.5rem;}
.organization .side {position:relative; display:flex; justify-content:end; margin-bottom:2rem;}
.organization .side>div {flex:0 0 50%; padding-left:4rem;}
.organization .side>div p {height:7rem; max-width:20rem; width:auto; font-size:2rem; font-weight:700; border:3px solid #f4a028;}

.organization>ul::before {position:absolute; content:""; z-index:-1; left:50%; top:1rem; width:1px; height:33rem; background:#ddd;}
.organization .section>li::before {position:absolute; content:""; z-index:-1; left:50%; top:0; height:4rem; width:1px; background:#ddd;}
.organization .section>li:after {position:absolute; content:""; z-index:-1; left:-1rem; right:-1rem; top:0; height:1px; background:#ddd;}
.organization .section>li:first-child:after {left:50%;}
.organization .section>li:last-child:after {right:50%;}
.organization .side>div::before {position:absolute; content:""; z-index:-1; top:50%; left:50%; width:30%; height:1px; background:#ddd;}

.location {display:flex; flex-direction:column; margin-top:3rem; border-top:2px solid var(--main-color);}
.location>dl {display:flex; gap:2rem; border-bottom:1px solid #ddd;}
.location>dl>dt {position:relative; flex:0 0 15rem; min-height:15rem; display:flex; justify-content:center; align-items:center; padding-top:6rem; font-weight:600; font-size:1.8rem; color:#333; background:#f9f9f9;}
.location>dl>dt::before {position:absolute; content:""; top:3.7rem; left:50%; width:4.8rem; height:5.2rem; background:url('/img/contents/location_address.png'); background-size:100%; transform:translateX(-50%);}
.location>dl.address>dt::before {background-image:url('/img/contents/location_address.png');}
.location>dl.subway>dt::before {background-image:url('/img/contents/location_subway.png');}
.location>dl.bus>dt::before {background-image:url('/img/contents/location_bus.png');}
.location>dl>dd {flex:1; display:flex; flex-direction:column; justify-content:center;}
.location>dl>dd>dl {display:flex; flex-wrap:wrap; gap:1.2rem; align-items:center;}
.location>dl>dd>dl>dt {flex:0 0 10rem; text-align:center; padding:0.3rem 0.8rem; color:#fff; font-weight:600; border-radius:1.5rem; background:#000;}
.location>dl>dd>dl>dt.blue-bus {background:#0066B3;} 
.location>dl>dd>dl>dt.green-bus {background:#00A048;} 
.location>dl>dd>dl>dd {flex:1 1 calc(100% - 10rem - 1.2rem);}

.greeting {position:relative;}
.greeting .tit {position:relative; display:inline-block; padding:1.8rem 2rem; font-size:3.4rem; font-weight:800; color:#222;}
.greeting .tit::before {position:absolute; left:0; top:0; width:3.6rem; height:3.6rem; content:""; opacity:0.2; background:url('/img/contents/quote.png'); background-size:100%;}
.greeting .tit::after {position:absolute; right:0; bottom:0; width:3.6rem; height:3.6rem; content:""; opacity:0.2; background:url('/img/contents/quote.png'); background-size:100%; transform:rotate(180deg);}
.greeting .tit span {color:var(--main-color)}
.greeting .bg {position:absolute; right:0; top:11rem; width:50%; z-index:-1;}
.greeting .txt {margin-top:4rem; padding-right:39%;}
.greeting .txt p {margin-top:3rem; letter-spacing:-0.05rem;}
.greeting .sign {text-align:right;}
.greeting .sign img {height:5.2rem; transform:translateY(2rem);} 

.vision-regene {text-align:center;}
.vision-regene>dl {display:flex; gap:1.6rem; margin-bottom:2.5rem;}
.vision-regene>dl>dt {flex:0 0 11.5rem; display:flex; justify-content:center; align-items:center; margin-right:4rem;}
.vision-regene>dl>dt span {position:relative; padding:0.8rem; color:#333; width:100%; font-size:1.8rem; font-weight:600; border-radius:2.4rem; border:2px solid #999; background:#fff;}
.vision-regene>dl>dt span::before {position:absolute; left:calc(100% + 0.6rem); top:50%; width:1rem; height:1rem; background:#fff; box-shadow:0.3rem 0.3rem 0 #555, 0.7rem 0.7rem 0 #fff, 1rem 1rem 0 #777, 1.4rem 1.4rem 0 #fff, 1.7rem 1.7rem 0 #999; transform:translateY(-50%) rotate(-45deg); content:"";}
.vision-regene>dl>dd {position:relative; flex:1; min-width:0;}
.vision-regene .c-vision dd {font-size:3rem; font-weight:600; color:#444;}
.vision-regene .c-vision dd span {font-weight:800; color:var(--main-color);}
.vision-regene .c-vision dd span:nth-of-type(2) {color:var(--mix-color);}
.vision-regene .c-vision dd span:nth-of-type(3) {color:var(--sub-color);}
.vision-regene .c-vision dd b {position:relative; font-weight:800; color:#f31c58;}
.vision-regene .c-vision dd b::before {position:absolute; left:-0.2rem; right:-0.2rem; bottom:0; height:2rem; background:#ff8; content:""; z-index:-1;}
.vision-regene .c-target {margin-bottom:;}
.vision-regene .c-target dd {letter-spacing:-0.05rem; padding-top:8rem;}
.vision-regene .c-target dd::before {position:absolute; content:""; top:0; left:50%; width:7.8rem; height:7.3rem; background:no-repeat center center; background-size:100%; transform:translateX(-50%);}
.vision-regene .c-target dd:nth-of-type(1)::before {background-image:url('/img/contents/vision-regene01.gif');}
.vision-regene .c-target dd:nth-of-type(2)::before {background-image:url('/img/contents/vision-regene02.gif');}
.vision-regene .c-target dd:nth-of-type(3)::before {background-image:url('/img/contents/vision-regene03.gif');}
.vision-regene .c-target dd strong{display:block; font-size:1.9rem;}
.vision-regene .c-target dd:nth-of-type(1) strong{color:var(--main-color);}
.vision-regene .c-target dd:nth-of-type(2) strong{color:var(--mix-color);}
.vision-regene .c-target dd:nth-of-type(3) strong{color:var(--sub-color);}
.vision-regene .c-strategy dd {display:flex; justify-content:center; align-items:center; padding:1.5rem; color:#fff; border-radius:1.6rem;}
.vision-regene .c-strategy dd:nth-of-type(1) {background:var(--main-color);}
.vision-regene .c-strategy dd:nth-of-type(2) {background:var(--mix-color);}
.vision-regene .c-strategy dd:nth-of-type(3) {background:var(--sub-color);}
.vision-regene .c-assignment dd {text-align:left; padding:1.5rem; border:1px solid #ccc; border-radius:1.6rem;}
.vision-regene .c-assignment dd:nth-of-type(1) {border-color:var(--main-color); background:color-mix(in srgb, var(--main-color) 3%, white);}
.vision-regene .c-assignment dd:nth-of-type(2) {border-color:var(--mix-color); background:color-mix(in srgb, var(--mix-color) 3%, white)}
.vision-regene .c-assignment dd:nth-of-type(3) {border-color:var(--sub-color); background:color-mix(in srgb, var(--sub-color) 3%, white)}
.vision-regene .c-assignment dd li {position:relative; margin-top:0.8rem; padding-left:0.8rem; font-size:1.6rem; line-height:140%;}
.vision-regene .c-assignment dd li:first-child {margin-top:0;}
.vision-regene .c-assignment dd li::before {position:absolute; left:0; top:0.8rem; width:0.3rem; height:0.3rem; background:#555; content:"";} 

.establishing {display:flex; flex-direction:column; gap:4rem; margin-top:8rem;}
.establishing p {text-align:center; font-weight:600; font-size:1.8rem;}
.establishing>ul {position:relative; display:flex; gap:1.6rem;}
.establishing>ul>li {flex:1; display:flex; flex-direction:column; align-items:center; border:1px solid #ccc; overflow:hidden;}
.establishing>ul>li:has(ul)>p {flex:0 0 auto; width:100%; padding:1rem; background:#efefef;}
.establishing>ul>li:not(:has(ul)) {display:flex; justify-content:center; align-items:center; background:#efefef;}
.establishing>ul>li>ul {flex:1 1 auto; padding:1.5rem; display:flex; flex-direction:column; justify-content:center; }
.establishing>ul>li>ul li {position:relative; padding-left:0.8rem;}
.establishing>ul>li>ul li::before {position:absolute; left:0; top:1.1rem; width:0.4rem; height:1px; background:#444; content:"";}
.establishing>p {padding:1.6rem 1rem; color:#fff; border-radius:0.4rem; background:#333;}
.establishing>ul:first-child>li:first-child {border-top-left-radius:1.6rem;}
.establishing>ul:first-child>li:last-child {border-top-right-radius:1.6rem;}
.establishing>ul:last-child>li:first-child {border-bottom-left-radius:1.6rem;}
.establishing>ul:last-child>li:last-child {border-bottom-right-radius:1.6rem;}
.establishing>ul::before {position:absolute; left:50%; width:1rem; height:1rem; background:#fff; box-shadow:0.3rem 0.3rem 0 #f31c58, 0.7rem 0.7rem 0 #fff, 1rem 1rem 0 #f186a4; content:"";}
.establishing>ul:first-child::before {top:calc(100% + 0.5rem); transform:translateX(-50%) rotate(45deg);}
.establishing>ul:last-child::before {bottom:calc(100% + 0.5rem); transform:translateX(-50%) rotate(225deg);}

.objective {position:relative; padding:2rem; text-align:center;}
.objective::before {position:absolute; top:0; bottom:0; left:0; width:1.6rem; border:0.4rem solid #f31c58; border-right:0; box-sizing:border-box; content:""; z-index:-1;}
.objective::after {position:absolute; top:0; bottom:0; right:0; width:1.6rem; border:0.4rem solid #f31c58; border-left:0; box-sizing:border-box; content:""; z-index:-1;}
.objective .tit {margin-bottom:2rem; font-size:3rem; font-weight:800; color:#111;}
.objective .tit b {font-weight:800; color:#f31c58;}
.objective .tit span {position:relative;}
.objective .tit span::before {position:absolute; top:-0.5rem; left:50%; width:0.5rem; height:0.5rem; border-radius:50%; transform:translateX(-50%); background:#f31c58; content:"";}

.vision {text-align:center; display:flex; flex-direction:column; gap:2.4rem;}
.vision h4 {font-size:1.8rem; padding:0.8rem 2.4rem; color:#fff; border-radius:2.4rem; background:var(--main-color);}
.vision .v-top>ul {position:relative; display:flex; gap:2.4rem;}
.vision .v-top>ul>li {flex:1; display:flex; gap:1.6rem; flex-direction:column; justify-content:center; align-items:center; padding:3.2rem; border:1px solid #ccc; border-radius:2rem;}
.vision .v-top>ul::after {position:absolute; left:50%; top:50%; display:flex; justify-content:center; align-items:center; width:6rem; height:6rem; font-size:5rem; font-weight:300; color:var(--main-color); border:1px solid #ccc; border-radius:50%; background:#fff; transform:translate(-50%, -50%); content:"+";}
.vision .v-bottom {display:flex; gap:1.6rem; flex-direction:column; justify-content:center; align-items:center; padding:3.2rem; border:1px solid #ccc; border-radius:2rem;}
.vision .v-bottom .list {display:flex; gap:1rem; width:100%;}
.vision .v-bottom .list>dl {flex:1; border:1px solid #ddd; border-radius:1.2rem; overflow:hidden;}
.vision .v-bottom .list>dl dt {color:var(--mix-color); padding:0.5rem; background:#f9f9f9;}
.vision .v-bottom .list>dl dd {padding:1rem 0.5rem; font-size:1.5rem; letter-spacing:-0.05rem;}

/*pc*/
@media all and (min-width:801px){

	.flex.tableBox {display:flex; gap:0.8rem;}
	.history>li dl:first-of-type dt::before { left:-3.6rem; top:1.0rem; background:#fff; border:0.3rem solid var(--sub-color);}

}


/*tablet*/
@media all and (max-width:800px){
	.support-system {flex-direction:column;}
	

}


/*mobile*/
@media all and (max-width:640px){

	.sub_history>li {flex-wrap:wrap; gap:1rem 2rem;}
	.sub_history>li dl {flex:0 0 100%;}
	.support-step {flex-direction:column;}
	.support-step>li {flex-direction:row;}
	.support-step>li p {padding:1rem;}

	
	.support-step>li:nth-child(3) p::before,
	.support-step>li:nth-child(5) p::before {right:auto; top:auto; left:50%; bottom:calc(100% + 0.5rem); transform:translateX(-50%) rotate(90deg);}
	.support-step>li:nth-child(3) p::after {left:50%; top:calc(100% + 1px); height:2.4rem; border-top:0; border-left:1px solid #ccc;}
	.support-step>li:nth-child(1) p::before {left:50%; top:calc(100% + 1px); height:1.2rem; border-top:0; border-left:1px solid #ccc;}

	.support-step>li:nth-child(2) p::before {top:auto; right:auto; bottom:calc(100% + 2px); left:50%; height:1.2rem; width:auto; border-top:0; border-left:1px solid #ccc;}
	.support-step>li:nth-child(2) p::after {top:auto; right:calc(16.66% - 0.9rem); left:calc(16.66% - 0.9rem); bottom:calc(100% + 0.2rem); width:auto; height:1.2rem;  border-width:1px 1px 0 1px; }

	.history {margin-left:0;}
	.history>li {padding-left:5rem;}
	.history>li h5 {position:relative; left:auto; margin-bottom:2rem;}
	.history::before {left:2rem;}
	.history>li h5::before {position:absolute; left:-3.5rem; top:1.7rem; width:0.7rem; height:0.7rem; border-radius:50%; background:#fff; border:0.3rem solid var(--sub-color); content:"";}


	.video-intro {flex-direction:column;}
	.video-intro>div:nth-child(2) {flex-direction:row;}
	.video-intro>div:nth-child(2) img{width:calc(50% - 0.75rem)}

}

/*mobile(small)*/
@media all and (max-width:361px){

}
