@charset "UTF-8";
@import "util.css";

*,:before,:after{margin:0;padding:0;box-sizing:border-box}:before,:after{text-decoration:inherit}html{height:100%;line-height:1.5;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;overflow-wrap:break-word;hyphens:auto;scroll-behavior:smooth}body{min-height:100%;min-height:100dvb}a,area,button,input,label,select,summary,textarea,[tabindex]{touch-action:manipulation}[hidden]:not([hidden='until-found']),summary::-webkit-details-marker{display:none}summary{list-style:none;cursor:pointer;}figure,figcaption{display:block;width:fit-content;margin-inline:0}img{border-style:none;vertical-align:bottom}svg:where(:not([fill])){fill:currentColor}svg:where(:not(:root)){overflow:hidden}audio,canvas,iframe,img,svg,video{vertical-align:middle}audio,video{display:inline-block}iframe{border:0}pre{font:inherit}code,kbd,samp{font-family:monospace;font-size:1em}canvas{display:inline-block}dialog:not([open]){display:none}details{display:block}progress{display:inline-block;vertical-align:baseline}template{display:none}table{border-collapse:collapse}caption{text-align:left}ul{list-style:none}input,button,textarea,select{font:inherit;color:inherit}textarea{resize:vertical}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}::-webkit-input-placeholder{color:inherit;opacity:0.54}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}::-moz-focus-inner{border-style:none}:-moz-focusring{outline:1px dotted ButtonText}:-moz-ui-invalid{box-shadow:none}h1{font-size:1rem}address,em{font-style:normal}b,strong{font-weight:bolder}small{font-size:80%}sup,sub{font-size:.7em;text-decoration:none}sub{vertical-align:-8%}hr{height:0;overflow:visible}main :where(p,ul,ol,dl,table){margin-block:.6em}main ol{padding-left:1.5em}iframe[src*="youtube.com"]{aspect-ratio:16/9;}
@media (min-width:769px){body {min-width:1140px;} .sp {display:none;}}
@media (max-width:768px){.pc {display:none;}}

/* ----- base.js タブ切替 */
[role="tablist"] {display:grid; grid-template-columns:repeat(auto-fit, minmax(0px,1fr));}
[role="tablist"] button {width:100%; border:none; background:transparent; text-align:center; line-height:1.4; cursor:pointer;}
.tabPanels > * {margin:0;}
.tabPanels [aria-hidden] {max-height:0; opacity:0; overflow:hidden; transition:opacity .2s;} .tabPanels [aria-hidden="false"] {max-height:99999px; opacity:1;}

html {font-size:0.9375em;}
a[href="#"] {pointer-events:none;}
.IB {display:inline-block;}

/* ======= メインビジュアルとその下 */

.home2023MV {position:relative; z-index:1; opacity:0; transition:3s;}
.home2023MV.-loaded {opacity:1;}
.home2023MV > *:first-child {position:fixed!important; left:0; top:var(--headerHeight); /*display:grid;*/ width:100%; overflow:hidden;}
.home2023MV ._slide div[class*="-img"] {position:relative; background-position:50% 50%; background-repeat:no-repeat; background-size:cover; transition:8s scale; transition-timing-function:linear;}
.home2023MV ._slide div[class*="-img"].-active {scale:1.04;}
.home2023MV ._slide div[class*="-img"]:not(.-active) {scale:1;}
.home2023MV :is(.bx-wrapper, .bx-viewport, ._slide >div) {height:100%!important;}
/*.home2023MV ._slide div {position:relative; grid-column:1/2; grid-row:1/2; background-position:50% 50%; background-repeat:no-repeat; background-size:cover; opacity:0; transform:scale(1);
  animation:home-mv 25s infinite;}
.home2023MV ._slide div.-img2 {animation-delay:0s;}
.home2023MV ._slide div.-img2 {animation-delay:5s;}
.home2023MV ._slide div.-img3 {animation-delay:10s;}
.home2023MV ._slide div.-img4 {animation-delay:15s;}
.home2023MV ._slide div.-img5 {animation-delay:20s;}
@keyframes home-mv {
  0% {opacity:0; transform: scale(1); z-index:5;}
  15% {opacity:1;}
  80% {opacity:1;}
  99% {opacity:0; transform: scale(1.04);}
  100% {opacity:0; transform: scale(1.04); z-index:1;}
}*/
.home2023MV ._catch {transition:1s opacity;}
.home2023MV :is(._catch, ._badge) {position:fixed; transition:.8s all; z-index:60;}
.home2023MV :is(._catch, ._badge) img {width:100%;}
.home2023MV ._badge a {display:block;}
.home2023MV ._badge a + a {translate:-9% 0;}
.home2023MV ._badge a + a + a {translate:-14% 0;}

.home2023Check {position:relative; z-index:2; display:flow-root; font-family:'Noto Serif JP', serif; letter-spacing:.08em;;}
.home2023Check ._inner {float:right; position:relative; background:#fff; border:2px #fff solid; border-radius:var(--checkR) 0 0 var(--checkR); --checkR:0px; overflow:hidden;}
.home2023Check ._scroll {position:absolute; right:0; bottom:100%; width:2em; padding:1em .7em 0; background:#fff; border-radius:.6em 0 0 0; color:var(--green1); font-size:.77rem; letter-spacing:0;}
.home2023Check ._scroll span {display:block; line-height:1; writing-mode:vertical-rl;}
.home2023Check ._scroll i {position:relative; display:block; width:50%; aspect-ratio:1/16; margin:.6em 0 0 50%; border-left:1px #888 solid;}
.home2023Check ._scroll i:before {content:""; position:absolute; bottom:26.5%; left:-80%; display:block; width:210%; border-top:1px #888 solid;}
.home2023Check ._scroll i:after {content:""; position:absolute; bottom:0; left:0; display:block; height:24%; border-left:1px #888 solid; rotate:16deg; transform-origin:0 100%; translate:-1px -1px;}
.home2023Check h2 {padding:.8em 0 1.1em; text-align:center; font-size:1.3rem; color:var(--green1);}
.home2023Check h2 i {display:flex; align-items:flex-end; justify-content:center; aspect-ratio:1/1; position:absolute; left:0; top:0; background:linear-gradient(90deg, #4ebf57 0%, #18abf8 100%); rotate:-45deg; transform-origin:0 100%; translate:0 -29%; line-height:2.2; font-style:normal; color:#fff;}
.home2023Check h2 i ~ span:before,
.home2023Check h2 i ~ span:after {content:""; position:absolute; display:inline-block; height:1.3em; border-left:1px #ccc solid;}
.home2023Check h2 i ~ span:before {translate:-1em 10%; rotate:-30deg;}
.home2023Check h2 i ~ span:after {translate:1em 10%; rotate:30deg;}
.home2023Check li {border-radius:var(--checkR); overflow:hidden; box-shadow:0 0 0 1px #ccc;}
.home2023Check li:where(:not(.-thru,.-doc)) {aspect-ratio:1/1;}
.home2023Check li img {width:100%;}

.home2023MV:has(.-img7.-active):not(:has(.-img1.-active)) ._catch {opacity:0;}

@media (min-width:769px){
  .home2023MV {--headerHeight:70px; --mvMinHeight:625px;}
  .home2023MV,
  .home2023MV ._slide {height:max(calc(100vh - var(--headerHeight)), var(--mvMinHeight));}
  .home2023MV ._slide .-img1 {background-image:url(../images/home2023/mv1-pc.webp?240412);}
  .home2023MV ._slide .-img2 {background-image:url(../images/home2023/mv2-pc.webp?240412);}
  .home2023MV ._slide .-img3 {background-image:url(../images/home2023/mv3-pc.webp?240412);}
  .home2023MV ._slide .-img4 {background-image:url(../images/home2023/mv4-pc.webp?240412);}
  .home2023MV ._slide .-img5 {background-image:url(../images/home2023/mv5-pc.webp?240412);}
  .home2023MV ._slide .-img6 {background-image:url(../images/home2023/mv6-pc.webp?240412);}
  .home2023MV ._slide .-img7 {background-image:url(../images/home2023/mv7-pc.webp?240412); position:relative;}
  .home2023MV ._slide .-img7 p {position:absolute; top:36vh; right:0; translate:0 -50%; padding:5vw; height:25vw; text-align:right;}
  .home2023MV ._slide .-img7 p img {display:inline-block; max-width:50vw;}
  .home2023MV ._catch {left:10%; top:63%; translate:0 -50%; width:clamp(424px,37.2vw,536px);}
/*  .home2023MV ._badge {left:1%; bottom:1vw; width:clamp(498px,44vw,630px); display:grid; grid-template-columns:1fr 1fr 1fr;}*/
  .home2023MV ._badge {left:3%; bottom:3vw; width:450px; box-shadow:0 6px 0 #0003;}
  .home2023Check {float:right;}
  .home2023Check ._inner {--checkR:8px; --checkPad:clamp(35px,3.2vw,40px); container-type:inline-size; width:clamp(424px, 62.8%, 536px); margin-bottom:50px; padding:0 var(--checkPad) var(--checkPad);}
  .home2023Check h2 i {width:30cqw; font-size:4cqw;}
  .home2023Check ul {display:grid; grid-template-columns:1fr 1fr; gap:3.7cqw;}
  .home2023Check ul .-thru {grid-column:1/-1;}
  .home2023Check + main {clear:both;}
}
@media (max-width:768px){
  .home2023MV, .home2023MV ._slide {height:calc(100svh - var(--headerHeight) - 63px);}
  .home2023MV {--headerHeight:1.5rem; --mvMinHeight:0px;}
  .home2023MV ._slide .-img1 {background-image:url(../images/home2023/mv1-sp.webp?240412);}
  .home2023MV ._slide .-img2 {background-image:url(../images/home2023/mv2-sp.webp?240412);}
  .home2023MV ._slide .-img3 {background-image:url(../images/home2023/mv3-sp.webp?240412);}
  .home2023MV ._slide .-img4 {background-image:url(../images/home2023/mv4-sp.webp?240412);}
  .home2023MV ._slide .-img5 {background-image:url(../images/home2023/mv5-sp.webp?240412);}
  .home2023MV ._slide .-img6 {background-image:url(../images/home2023/mv6-sp.webp?240412);}
  .home2023MV ._slide .-img7 {background-image:url(../images/home2023/mv7-sp.webp?240412);}
  .home2023MV ._slide .-img7 p {position:absolute; top:45vh; translate:0 -50%; left:0; padding:5vw;}
  .home2023MV ._catch {left:16%; bottom:calc(11% + 63px); translate:0 -100%; width:68%;}
/*  .home2023MV ._badge {left:2%; bottom:calc(4vw + 63px); width:clamp(0px,92%,450px); display:grid; grid-template-columns:1fr 1fr 1fr;}*/
  .home2023MV ._badge {left:5%; bottom:calc(4vw + 63px); width:70%; box-shadow:0 1vw 0 #0003;}
/*  body.-scrolled .home2023MV :is(._slide, ._catch, ._badge) {filter:blur(max(8px,2vw));}*/
  body.-scrolled .home2023MV ._slide {filter:blur(max(2px,.5vw));}
  body.-scrolled .home2023MV :is(._catch, ._badge) {filter:blur(max(8px,2vw));}
  
  .home2023Check ._scroll {width:calc(10px + .8rem); font-size:10px;}
  .home2023Check ._scroll i {aspect-ratio:1/6.5; margin-bottom:1em;}
  .home2023Check ._scroll i:before {bottom:28%; left:-60%; width:140%;}
  .home2023Check ._inner {--checkR:6px; width:min(73%,300px); margin-bottom:25px; padding:0 14px 14px;}
  .home2023Check h2 {font-size:1.08rem;}
  .home2023Check h2 i {width:20cqw; font-size:2.6cqw;}
  .home2023Check ul {display:flex; flex-direction:column; gap:14px;}
}

/* ======= コンテンツ部分共通 */
main {position:relative; z-index:3; background:#fff; overflow:hidden; font-family:'Noto Serif JP', serif; letter-spacing:.06em; color:#444; box-shadow:0 200px 0 #fff;}
main :where(h1,h2,h3,h4,h5,h6) {font-weight:normal;}
main > * {margin-inline:auto;}
main .blockTitle2023 b {text-transform:uppercase;}
main :is(.blockTitle2023, .blockTitle2023 *) {font-weight:normal;}
main :is(a.grdBtn) {position:relative; display:inline-block; text-decoration:none; color:#444;}
.grdBtn:before {content:""; display:block; width:calc(100% + 4px); height:calc(100% + 4px); position:absolute; left:-2px; top:-2px; border-radius:8px; background:linear-gradient(90deg, #5bb941 0%, #efa900 40%, #ef9db4 60%, #47affa 100%);}
.grdBtn > span {position:relative; display:block; padding:1em 2.5em; border-radius:6px; background:#fff; text-align:center;}
.grdBtn > span:after {content:""; display:block; width:1em; aspect-ratio:1/1; position:absolute; top:50%; right:1rem; translate:0 -50%; background:url(../images/common2023/arrow01.svg) no-repeat 50% 50%  / 100%;}

@media (min-width:769px){
  main {min-width:1140px;}
  [class*="home2023"] .blockTitle2023 {font-size:85%;}
  .grdBtn {min-width:270px;}
}
@media (max-width:768px){
  [class*="home2023"] .blockTitle2023 {font-size:85%;}
  .grdBtn {min-width:240px; font-size:.85rem;}
}

/* ======= EVENT&NEWS */
.home2023EventNews {position:relative; z-index:2; container-type:inline-size;}
.home2023EventNews a {color:var(--green1); text-decoration:none;}
.home2023EventNews .blockTitle2023 {position:relative; z-index:3;}
.home2023EventNews ._inner {position:relative; background:#f1f6f0; box-shadow:-30px 0 0 #f1f6f0, -900px 0 0 #f1f6f0, 30px 0 0 #f1f6f0, 900px 0 0 #f1f6f0;}
.home2023EventNews ._inner > * {position:relative; z-index:2;}
.home2023EventNews :where(._events, ._news) {border-radius:8px; background:#fff;}
.home2023EventNews :is(._events, ._news) h3:before {content:""; display:inline-block; width:.7em; aspect-ratio:1/1; margin-right:.4em; background-image:url(../images/common2023/marker01.svg); background-size:contain;}
.home2023EventNews ._bg {z-index:0;}
.home2023EventNews ._bg:after {content:""; display:block; width:100%; height:100%; position:absolute; left:0; top:0; background:linear-gradient(85deg, #9ce172 0%, #9ce17200 25%, #3ce1f500 75%, #3ce1f5 100%); mix-blend-mode:screen; opacity:.7;}

.home2023EventNews ._events:not(:has(._entry)) {display:none;}
.home2023EventNews ._events ._slideWrap {position:relative; padding-top:1em; container-type:inline-size;}
.home2023EventNews ._events ._slideWrap > ._slide ._entry {transition:.2s all;}
.home2023EventNews ._events ._slideWrap > ._slide > ._entry {opacity:0;}
.home2023EventNews ._events ._slideWrap > ._slide > ._col:nth-child(n+2) {height:0; overflow:hidden;}
.home2023EventNews ._events .bx-controls {position:absolute; bottom:100%; right:0;}
body:is(.home) .bx-controls a {display:block; border:1px #ccc solid; border-radius:50%; left:auto; right:auto; background:#fff url(../images/common2023/arrow01.svg) no-repeat 50% 50%  / 40%;}
.bx-controls a.bx-prev {scale:-1 1;}
.home2023EventNews ._events .bx-controls a.bx-prev {translate:-65% 0;}
.home2023EventNews ._events .bx-controls a.bx-next {translate:65% 0;}
.home2023EventNews ._events ._entry {position:relative; padding-top:12px;}
.home2023EventNews ._events ._date {position:absolute; left:0; top:0; background:#61b8a8; line-height:1; font-family:"Lora", serif; color:#fff;}
.home2023EventNews ._events ._txt a:before {content:""; display:block; position:absolute; left:0; top:0; width:100%; height:100%;}
.home2023EventNews ._events ._pic {overflow:hidden;}
.home2023EventNews ._events ._pic:empty {display:flex; align-items:center; justify-content:center; background:#eee; font-weight:bold; color:#0004;}
.home2023EventNews ._events ._pic:empty:before {content:"no image";}
.home2023EventNews ._events ._pic img {width:100%; height:100%; object-fit:cover;}

.home2023EventNews ._news ._ctgSelect {display:flex; font-family:"BIZ UDゴシック","Yu Gothic",sans-serif;}
.home2023EventNews ._news ._ctgSelect button {padding:.4em;}
.home2023EventNews ._news ._ctgSelect button:not([aria-selected="true"]) {color:var(--green1);}
.home2023EventNews ._news ._ctgSelect button[aria-selected="true"] {box-shadow:0 -3px 0 0 #333 inset;}
.home2023EventNews ._news .tabPanels {margin-top:1.5rem;}
.home2023EventNews ._news dt {display:flex; align-items:center; justify-content:space-between;}
.home2023EventNews ._news dt ._ctg {display:inline-block; width:6em; translate:0 5%; border:1px #ccc solid; border-radius:20px; text-align:center; font-size:80%; letter-spacing:0;}
.home2023EventNews ._news dd {margin-bottom:1.5rem;}

.home2023EventNews ._bg {position:absolute; top:0; height:100%;}
.home2023EventNews ._bg img {width:100%; object-fit:cover; object-position:50% 30%; opacity:0; filter:brightness(1.3); transition:2s opacity, 2s filter;}
.home2023EventNews ._bg img.-visible {opacity:1; filter:brightness(1);}

@media (min-width:769px){
  .home2023EventNews {width:max(calc(100% - 240px),1020px); padding-top:110px;}
  .home2023EventNews .blockTitle2023 b:after {margin-bottom:-3px;}
  .home2023EventNews ._inner {padding:60px 0 30px;}
  .home2023EventNews ._events {width:max(63.3%, 760px); margin-bottom:25px; padding:1rem 4rem 1.5rem 1.5rem;}
  .home2023EventNews ._events h3 {margin-left:2.5rem;}
  .home2023EventNews ._events .bx-controls {translate:-3rem -1.5rem;}
  .home2023EventNews ._events ._col {display:grid; grid-template-columns:1fr 1fr; gap:3cqw 4cqw;}
  .home2023EventNews ._events ._entry {padding-left:2.5rem;}
  .home2023EventNews ._events ._date {padding:.9em .5em; border-radius:8px; font-size:130%;}
  .home2023EventNews ._events ._date > :is(span,b) {font-weight:inherit; font-size:160%;}
  .home2023EventNews ._events ._pic {aspect-ratio:2.3/1; margin-bottom:.8em; border-radius:8px;}
  .home2023EventNews ._events ._txt {font-size:116%;}
  .home2023EventNews ._bg {left:600px; width:max(calc(50cqw + 50vw - 600px), 540px);}
  .home2023EventNews ._bg img {height:33.333%;}
  .home2023EventNews ._bg img:nth-child(n+4) {display:none;}
  
  .home2023EventNews ._news {width:max(63.3%, 760px); padding:1rem 4rem 1.5rem;}
  .home2023EventNews ._news ._header {display:flex; align-items:center; justify-content:space-between; border-bottom:1px #ccc solid;}
  .home2023EventNews ._news ._ctgSelect {gap:1em; margin:0; font-size:93%;}
  .home2023EventNews ._news dl {display:flex; flex-wrap:wrap; align-items:flex-start; justify-content:space-between;}
  .home2023EventNews ._news dt {width:10.5rem; margin-bottom:1.5rem; font-size:90%;}
  .home2023EventNews ._news dd {width:calc(100% - 12.5rem);}

  .home2023EventNews ._btn {width:max(63.3%, 760px); text-align:right; translate:0 100%;}
}
@media (max-width:768px){
  .home2023EventNews {padding-top:80px;}
  .home2023EventNews h2 {margin:0 15px -2rem;}
  .home2023EventNews h3 {position:relative; font-size:1rem;}
  .home2023EventNews ._inner {padding:3.5rem 0 30px;}
  .home2023EventNews ._events {margin:0 26.67% 30px 0; padding:.8rem 1rem 1rem 0;}
  .home2023EventNews ._events h3 {margin-left:30px;}
  .home2023EventNews ._events .bx-viewport {background:transparent;}
  .home2023EventNews ._events .bx-controls {translate:-3.2rem -1.5rem;}
  .home2023EventNews ._events .bx-controls a.bx-prev {translate:-55% 0;}
  .home2023EventNews ._events .bx-controls a.bx-next {translate:55% 0;}
  .home2023EventNews ._events ._col {padding-left:30px;}
  .home2023EventNews ._events ._entry + ._entry {margin-top:2.4em;}
  .home2023EventNews ._events ._entry + ._entry:before {content:""; display:block; position:absolute; left:0; top:-1.2em; width:100%; border-top:1px #ccc solid;}
  .home2023EventNews ._events ._date {translate:-1rem 0; padding:.9em .3em; border-radius:5px; font-size:80%;}
  .home2023EventNews ._events ._date > :is(span,b) {font-weight:inherit; font-size:140%;}
  .home2023EventNews ._events ._pic {aspect-ratio:2.15/1; margin-bottom:.8em; border-radius:5px;}
  .home2023EventNews ._events ._txt {font-size:93%;}
  .home2023EventNews ._events .bx-controls.sp {all:unset; position:relative; display:flex; justify-content:flex-end; gap:4px;}
  .home2023EventNews ._events .bx-controls.sp a {position:static; translate:5% 0; width:32px; aspect-ratio:1/1; text-indent:-9999px; white-space:nowrap; overflow:hidden;}
  .home2023EventNews ._news {margin-right:26.67%; padding:.8rem 1rem 1rem 30px;}
  .home2023EventNews ._news ._ctgSelect {justify-content:space-between; padding-inline:.5em; border-bottom:1px #ccc solid; font-size:80%;}
  .home2023EventNews ._news dt {width:9rem; margin-bottom:.6em; font-size:77%;}
  .home2023EventNews ._news dd {font-size:85%;}
  .home2023EventNews ._bg {left:50%; width:50%;}
  .home2023EventNews ._bg img {height:20%;}
  .home2023EventNews ._btn {translate:60px 100%;}
}

/* ======= JINKAN NOW */
.home2023Topics, .home2023Topics > * {position:relative;}
.home2023Topics:before {content:""; display:block; width:100vw; height:100%; position:absolute; left:50%; top:0; translate:-50% 0; background:url(../images/home2023/bg_grid.png);}
.home2023Topics h2 {z-index:10; float:right; text-align:right;}
.home2023Topics h2 b:after {margin-left:auto;}
.home2023Topics h2 img {height:1.5em; translate:0 -5%;}
.home2023Topics h2 + * {clear:both;}
.home2023Topics ._entriesWrap > * {position:relative;}
.home2023Topics .bx-wrapper .bx-viewport {background:transparent;}
.home2023Topics ._entry {border-radius:8px; overflow:hidden; border:1px #ccc solid; background:#fff;}
.home2023Topics ._entry ._pic:empty {display:flex; align-items:center; justify-content:center; background:#eee; font-weight:bold; color:#0004;}
.home2023Topics ._entry ._pic:empty:before {content:"no image";}
.home2023Topics ._entry ._pic img {width:100%; height:100%; object-fit:cover;}
.home2023Topics ._entry dl a {text-decoration:none; color:inherit;}
.home2023Topics ._entry dl a:after {content:""; display:block; position:absolute; left:0; top:0; width:100%; height:100%;}
.home2023Topics ._entry dt {position:relative; margin-bottom:.3em; font-size:85%; color:#888;}
.home2023Topics ._entry dt:before {content:""; display:inline-block; width:.89em; aspect-ratio:1/1; position:absolute; translate:-1.4em 40%; background-image:url(../images/common2023/marker01.svg); background-size:contain;}
.home2023Topics :is(._obj1, ._obj2),
.home2023Topics :is(._obj1, ._obj2, ._btn) img {position:absolute;}
.home2023Topics :is(._obj1, ._obj2, ._btn) img {scale:0; transition:.4s all;}
.home2023Topics :is(._obj1, ._obj2, ._btn) img.-visible {scale:1;}

@media (min-width:769px){
  .home2023Topics {max-width:1200px; padding-top:145px;}
  .home2023Topics:before {top:calc(145px + 5.3rem); height:calc(100% - 145px - 5.3rem);}
  .home2023Topics h2 i {display:inline-block; margin-top:.4em; font-size:150%;}
  .home2023Topics ._entriesWrap {margin-top:-3rem; padding:155px 0 100px;}
  .home2023Topics ._entries.pc {display:grid; grid-template-columns:repeat(3,1fr); max-width:1080px; margin-inline:auto;}
  .home2023Topics ._entry {box-shadow:0 0 0 10px #fff, -14px 2px 25px 10px #04380010;}
  .home2023Topics ._entries.pc > ._entry:nth-child(1) {translate:10px -90px;}
  .home2023Topics ._entries.pc > ._entry:nth-child(2) {translate:0;}
  .home2023Topics ._entries.pc > ._entry:nth-child(3) {translate:-10px 120px;}
  .home2023Topics ._entry ._pic {aspect-ratio:9/5;}
  .home2023Topics ._entry dl {padding:1rem 2.2rem 1.5rem;}
  .home2023Topics ._btn {position:absolute; right:50px; top:calc(145px + 11rem);}
  .home2023Topics ._btn img[src*="2-3"] {right:0%; top:100%; height:55px; translate:80% 90%;}
  .home2023Topics ._obj1 {left:0; top:calc(145px + 6rem); z-index:5; width:calc(100% - 30rem);}
  .home2023Topics ._obj1 img[src*="1-1"] {right:96%; height:115px; translate:0 -50%;}
  .home2023Topics ._obj1 img[src*="1-2"] {right:55%; height:105px; translate:0 -60%;}
  .home2023Topics ._obj1 img[src*="1-3"] {right:10%; height:140px; translate:0 -15%;}
  .home2023Topics ._obj2 {left:0; bottom:0; z-index:5; width:60%;}
  .home2023Topics ._obj2 img[src*="2-1"] {right:88%; height:150px; translate:0 -90%;}
  .home2023Topics ._obj2 img[src*="2-2"] {right:47%; height:130px; translate:0 -100%;}
  .home2023Topics ._entries.pc ~ .bx-wrapper {display:none;}
}
@media (max-width:768px){
  .home2023Topics:before {top:calc(85px + 4rem); height:calc(100% - 85px - 4rem); background-size:12px 12px;}
  .home2023Topics {padding-top:85px;}
  .home2023Topics h2 {padding-right:15px;}
  .home2023Topics h2 i {line-height:1.6;}
  .home2023Topics ._entriesWrap {z-index:10; width:min(68%,300px); margin:-3.5rem auto 0; padding:calc(3.5rem + 80px) 0 120px;}
  .home2023Topics ._entry {border:5px #fff solid; border-radius:13px; box-shadow:0 0 0 1px #ccc inset;}
  .home2023Topics ._entry ._pic {aspect-ratio:2/1;}
  .home2023Topics ._entry dl {padding:.6rem 1.8rem 1rem;}
  .home2023Topics ._entry dt {font-size:77%;}
  .home2023Topics .bx-wrapper .bx-prev {left:auto; right:100%; translate:-25% 0;}
  .home2023Topics .bx-wrapper .bx-next {right:auto; left:100%; translate:30% 0;}
  .home2023Topics ._obj1 {left:0; top:calc(85px + 8rem); z-index:5; width:100%;}
  .home2023Topics ._obj1 img[src*="1-1"] {left:0%; height:70px; translate:-10% -100%;}
  .home2023Topics ._obj1 img[src*="1-2"] {left:7%; height:68px; translate:0;}
  .home2023Topics ._obj1 img[src*="1-3"] {right:-5%; height:90px; translate:0 10%;}
  .home2023Topics ._obj2 {left:0; bottom:2.2rem; z-index:5; width:100%;}
  .home2023Topics ._obj2 img[src*="2-1"] {left:0%; height:100px; translate:-5% -100%;}
  .home2023Topics ._obj2 img[src*="2-2"] {left:60%; height:80px; translate:0 -90%;}
  .home2023Topics ._obj2 img[src*="2-3"] {left:80%; height:26px; translate:0 -300%;}
  .home2023Topics ._btn {position:absolute; left:50%; translate:-50% -30%;}
}

/* ======= FACULTY */
.home2023Faculty h2 b:after {margin-bottom:-5px;}
.home2023Faculty ._inner {background:#f2fefa; box-shadow:-900px 0 0 #f2fefa, 900px 0 0 #f2fefa;}
.home2023Faculty a {text-decoration:none; color:inherit;}
.home2023Faculty dl {display:grid;}
.home2023Faculty dl > div {display:grid; grid-template-rows:1fr 1fr; box-shadow:0 0 0 1px #ccc; background:#fff; container-type:inline-size; overflow:hidden;}
.home2023Faculty dt {position:relative; z-index:3;}
.home2023Faculty dt:before {content:attr(data-campus); display:block; position:absolute; right:0; top:0; padding:.2em .6em; border:#ccc solid; border-width:0 0 1px 1px; font-size:85%;}
.home2023Faculty :is(dt.-okp, dt.-okp + dd)  {--facCol1:#fb8044; --facCol2:#ecc925;}
.home2023Faculty :is(dt.-oke, dt.-oke + dd) {--facCol1:#4ca56d; --facCol2:#7ec0d6;}
.home2023Faculty :is(dt.-obk, dt.-obk + dd) {--facCol1:#e893b4; --facCol2:#d96373;}
.home2023Faculty :is(dt.-mts, dt.-mts + dd) {--facCol1:#f8c128; --facCol2:#e0d03d;}
.home2023Faculty :is(dt.-mtk, dt.-mtk + dd) {--facCol1:#ab7fb4; --facCol2:#5abcdf;}
.home2023Faculty :is(dt.-mtkk, dt.-mtkk + dd) {--facCol1:#99c822; --facCol2:#7ba5ff;}
.home2023Faculty :is(dt.-gs, dt.-gs + dd) {--facCol1:#47cefe; --facCol2:#ceaff3;}
.home2023Faculty dt.-new a:before {content:"NEW!"; display:block; width:3.5rem; aspect-ratio:1/1; position:absolute; top:100%; right:3%; z-index:10; translate:0 -50%; border-radius:50%; background:#ff0; text-align:center; font-size:80%; line-height:3.3rem;}
.home2023Faculty dt a:after {content:""; display:block; width:100%; height:210%; position:absolute; left:0; top:0;}
.home2023Faculty dt i {position:relative; display:block; margin-bottom:.5em; font-style:normal;}
.home2023Faculty dt i:before {content:""; display:block; aspect-ratio:1/1; position:absolute; right:100%; bottom:100%; border-radius:20px 20px 0 20px; background:var(--facCol1);}
.home2023Faculty dt b {display:block; font-weight:normal;}
.home2023Faculty dt b .-kari {display:block; width:fit-content; margin-top:.8em; padding:0 .3em; border:1px #666 solid; line-height:1.3; font-size:55%; font-family:"Yu Gothic",sans-serif; letter-spacing:0;}
.home2023Faculty dd {position:relative; background:#eee;}
.home2023Faculty dd:after {content:""; display:block; position:absolute; top:0; left:0; width:100%; height:2px; background:linear-gradient(90deg, var(--facCol1) 0%, var(--facCol2) 50%, var(--facCol1) 100%);}
.home2023Faculty dd img {position:absolute; left:0; top:0; width:100%; height:100%; object-fit:cover;}
.home2023Faculty dd img.-op0 {object-position:0% 50%;}
.home2023Faculty ._bnrs img {width:100%;}

@media (min-width:769px){
  .home2023Faculty {width:clamp(1080px,calc(100% - 80px),1200px); padding-top:150px;}
  .home2023Faculty ._inner {padding:60px 0 80px;}
  .home2023Faculty .-undergraduate {grid-template-columns:repeat(5,1fr); gap:25px 0;}
  .home2023Faculty .-graduate {grid-template-columns:repeat(3,1fr); gap:25px 0; margin-top:25px;}
  .home2023Faculty dt {padding:2.4rem 8.5cqw .8rem;}
  .home2023Faculty dt i:before {width:16px; translate:2px 3px;}
  .home2023Faculty dt b {height:4em; font-size:125%;}
  .home2023Faculty ._bnrs {width:fit-content; display:grid; grid-template-columns:repeat(2, 1fr); gap:55px; margin:90px auto 0;}
  .home2023Faculty ._bnrs li {width:430px;}
  .home2023Faculty ._bnrs img {box-shadow:0 0 0 10px #fff, 2px 6px 20px 8px #00000008;}
}
@media (max-width:768px){
  .home2023Faculty h2 {margin-inline:15px;}
  .home2023Faculty {padding-top:90px;}
  .home2023Faculty ._inner {padding:50px 0;}
  .home2023Faculty dl {grid-template-columns:repeat(2,1fr); gap:20px 0; margin:0;}
  .home2023Faculty .-graduate {margin-top:20px;}
  .home2023Faculty dt {display:table; height:6rem; padding:.8rem 1.4rem .6rem;}
  .home2023Faculty dt:before {padding:0 .3em; font-size:70%;}
  .home2023Faculty dt a {display:table-cell; vertical-align:middle;}
  .home2023Faculty dt.-new a:before {scale:.7; transform-origin:100% 50%;}
  .home2023Faculty dt i {margin-bottom:.3em; font-size:85%;}
  .home2023Faculty dt i:before {width:10px; translate:-2px 4px;}
  .home2023Faculty dt b {line-height:1.1; font-size:116%;}
  .home2023Faculty ._bnrs {display:grid; grid-template-columns:repeat(auto-fill, minmax(200px,1fr)); gap:30px; width:calc(100% - 60px); margin:58px auto 0;}
  .home2023Faculty ._bnrs img {box-shadow:0 0 0 8px #fff, 2px 6px 16px 6px #00000008;}
}

/* =======  */
.home2023special2 {overflow:hidden; container-type:inline-size; background:#fdfaf5;}
.home2023special2 ._people {display:flex;}
.home2023special2 ._people.-upper {animation:sp2-1 120s infinite linear; animation-delay:-5s;}
.home2023special2 ._people.-lower {flex-direction:row-reverse; animation:sp2-2 120s infinite linear;}
.home2023special2 ._people li > * {width:fit-content; text-align:center;}
.home2023special2 ._people li b {position:relative; width:fit-content; display:flex; align-items:flex-end; justify-content:center; margin:0 auto .8em; padding-inline:1em; line-height:1.3; font-weight:normal;}
.home2023special2 ._people li b:before,
.home2023special2 ._people li b:after {content:""; display:block; height:1.3em; position:absolute; bottom:0; border-left:1px #444 solid; translate:0 20%;}
.home2023special2 ._people li b:before {left:0; rotate:-35deg;}
.home2023special2 ._people li b:after {right:0; rotate:35deg;}
.home2023special2 ._people li img {aspect-ratio:1/1; border-radius:50%;}
.home2023special2 ._txt {background:#fff;}
.home2023special2 h2 b {font-family:'Kanit', sans-serif; font-weight:bold;}
.home2023special2 h2 b > span {color:#fff; -webkit-text-stroke:1px #444; text-stroke:1px #444;}
.home2023special2 h2 i {font-style:normal;}
.home2023special2 h2 strong {display:inine-block; line-height:1.2; font-weight:normal;}

@media (min-width:769px){
  .home2023special2 {padding-block:50px;}
  .home2023special2 ._people {width:330cqw;}
  .home2023special2 ._people li {width:20cqw; font-size:93%;}
  .home2023special2 ._people li img {width:min(175px,12cqw);}
  @keyframes sp2-1 {0% {translate:0 0;} 100% {translate:-50% 0;}}
  @keyframes sp2-2 {0% {translate:-50% 0;} 100% {translate:0 0;}}
  .home2023special2 ._txt {display:flex; align-items:flex-end; gap:60px; width:980px; margin:35px auto; padding:2rem 6rem;}
  .home2023special2 h2 b {font-size:2.8rem;}
  .home2023special2 h2 i {font-size:70%;}
  .home2023special2 h2 strong {font-size:170%;}
  .home2023special2 ._txt ._btn {padding-bottom:1rem;}
}
@media (max-width:768px){
  .home2023special2 {padding:2rem 0 4rem;}
  .home2023special2 ._people {width:800cqw;}
  .home2023special2 ._people li {width:40cqw; font-size:85%;}
  .home2023special2 ._people li b {height:3.6em;}
  .home2023special2 ._people li img {width:min(100px,27cqw);}
  @keyframes sp2-1 {0% {translate:0 0;} 100% {translate:-70% 0;}}
  @keyframes sp2-2 {0% {translate:-70% 0;} 100% {translate:0 0;}}
  .home2023special2 h2 b {font-size:116%;}
  .home2023special2 h2 i {font-size:60%;}
  .home2023special2 ._txt {margin:2rem 30px .8rem; padding:1.2rem 1.8rem 2rem;}
  .home2023special2 ._btn {margin-top:1.4rem;}
  .home2023special2 ._btn a {width:min(100%, 260px);}
}

/* ======= sns */
.home2023sns {text-align:center;}
.home2023sns h2.blockTitle2023 {font-size:100%;}
.home2023sns h2 b:after {margin-inline:auto;}
.home2023sns a {color:var(--green1); text-decoration:none;}
.home2023sns ._pic {display:grid; grid-template-columns:repeat(3,1fr);}
.home2023sns ._pic img {width:100%; aspect-ratio:1/1; object-fit:cover;}
.home2023sns ._body {margin:0; display:grid; grid-template-columns:1fr 1fr 1fr;}
.home2023sns ._body :is(.-ig, .-ig + dd) {grid-column:1/-1;}
.home2023sns ._body .-ig ._icon {position:relative; display:block; height:0; margin-bottom:25px; border-top:1px #ccc solid;}
.home2023sns ._body .-ig ._icon img {position:relative; translate:0 -50%; width:40px;}
.home2023sns ._body .-ig + dd {display:grid; grid-template-columns:repeat(3, 1fr); gap:.6rem 0; border-bottom:1px #ccc solid;}
.home2023sns ._body .-ig + dd ul {display:grid; grid-template-columns:subgrid; grid-column:span 3; text-align:center;}
.home2023sns ._body .-ig + dd ul:has(li:nth-child(2):last-child) {translate:16.667% 0;}
.home2023sns ._body .-ig + dd li img {display:block; margin-inline:auto; aspect-ratio:1/1; object-fit:cover; border:1px #ccc solid;}
.home2023sns ._body .-ig ~ dt {padding-top:.6em;}
.home2023sns ._body .-ig ~ dt a {display:flex; align-items:center; justify-content:center; padding:1.6rem 0; border:1px #ccc solid;}
.home2023sns ._body .-ig ~ dt img {height:20px;}
.home2023sns ._body .-ig ~ dt img[src*="_tw"] {scale:1.1;}

@media (min-width:769px){
  .home2023sns {width:1080px; margin-inline:auto; padding:120px 0 100px;}
  .home2023sns h2 {margin-bottom:3rem;}
  .home2023sns ._inner {display:grid; grid-template-columns:repeat(2,1fr); gap:60px;}
  .home2023sns ._body {grid-column:1/2; grid-row:1/2; grid-template-rows:auto 1fr auto; gap:2rem 2rem;}
  .home2023sns ._body .-ig + dd ul {gap:2rem 1.6rem;}
  .home2023sns ._body .-ig + dd ul img {width:80px; margin-bottom:.6em; border-radius:8px;}
  .home2023sns ._body .-ig ~ dt a {border-radius:8px;}
  .home2023sns ._pic {grid-column:2/3; gap:10px;}
}
@media (max-width:768px){
  .home2023sns {padding:70px 0;}
  .home2023sns h2 {margin-bottom:2rem;}
  .home2023sns ._pic {gap:8px; margin-bottom:3rem;}
  .home2023sns ._body {gap:1.2rem 1rem; margin-inline:15px;}
  .home2023sns ._body .-ig + dd ul {gap:1rem; font-size:93%;}
  .home2023sns ._body .-ig + dd ul:last-of-type {padding-bottom:1.5rem;}
  .home2023sns ._body .-ig + dd ul img {width:55px; margin-bottom:.4em; border-radius:5px;}
  .home2023sns ._body .-ig + dd li {padding-inline:.3em;}
  .home2023sns ._body .-ig ~ dt a {padding:1rem 0; border-radius:5px;}
  .home2023sns ._body .-ig ~ dt img {height:18px;}
}


.footer2023 {position:relative; z-index:5; background:#fff;}



/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */


.dp-okp {--dptColor:#f0844a;}
.dp-oke {--dptColor:#40ab6c;}
.dp-obn {--dptColor:#e89abb;}
.dp-mdp {--dptColor:#ffb100;}
.dp-mde {--dptColor:#99c822;}
.dp-mhn {--dptColor:#aa87b7;}
.H2 {display:flex; flex-direction:column; gap:1.2rem; margin-block:calc(var(--fs2vs) * 3) calc(var(--fs2vs) * 1); text-align:center; font-weight:700;}
.H2:not([data-enlabel]) {line-height:1.25; font-size:calc(var(--fs2vs) * 2);}
.H2[data-enlabel] ._wrap {position:relative; order:10; font-size:var(--fs2v); translate:0 -.2em;}
.H2[data-enlabel]:before {position:relative; z-index:10; content:attr(data-enlabel); line-height:1; font-family:"Lora",sans-serif; font-size:calc(var(--fs2vs) * 2); font-weight:normal;}
.H2:after {position:relative; z-index:10; content:url(../images/common2023/title_border5.svg); display:block; line-height:1; font-size:6px; scale:.53 1.5;}
.sqmk {padding-left:1em;}
.sqmk:before {content:""; display:inline-block; vertical-align:-10%; width:1em; aspect-ratio:1/1; margin-left:-1em; background-image: url(../images/common2023/marker01.svg); scale:.7; transform-origin:0 50%;}
.ls0 {letter-spacing:0!important;}

.sitePath {background:#f1f1f1; font-family:"Noto Serif JP",serif;}
.sitePath a {text-decoration:none; color:inherit;}
main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageTitleImg {background:#888; /*background:linear-gradient(-45deg, #000c 12%, #fff0 12%, #fff0 50%, #000c 50%, #000c 62%, #fff0 62%, #fff0 100%, #000c 100%); background-size:36px 36px;*/}
main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageTitleImg > img {width:100%; height:100%; object-fit:cover;}
main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageTitleLabel {display:flex; color:#fff;}
main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) :is(.pageTitleLabel, .pageTitleLabel > div > span) {position:relative;}
main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageTitleLabel > div:before {content:""; display:block; position:absolute; left:0; top:0; width:100%; height:100%; background:linear-gradient(93deg, #22e889 0%, #6fc8d8 50%, #40ab6c 100%);}
main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageTitleLabel.-YL > div:before {background:linear-gradient(93deg, #ffde00 0%, #ffb100 100%);}
main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageTitleTxt {text-align:center;}
main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageTitleTxt h1 {line-height:1.25; font-size:calc(var(--fs2vs) * 2.1); font-weight:700; text-shadow:0 0 .3em #0003;}
main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageSide > nav > ul :is(a,button) {display:block; width:100%; position:relative; padding:.75em .3em; border:0; background:none; text-decoration:none; text-align:left; font-weight:500; color:inherit;}
main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageSide > nav > ul :is(a,button).-here:after {content:""; display:block; position:absolute; right:0; top:50%; translate:0 -50%; width:100%; height:calc(100% - .6em); border-radius:.5em; background:#0001;}
main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageSide > nav > ul {margin:0;}
main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageSide > nav > ul > li {border-top:1px #ccc solid;}
main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageSide > nav > ul > li:last-of-type {border-bottom:1px #ccc solid;}
main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageSide > nav > ul > li > ul {position:relative; max-height:3000px; padding-bottom:1em; overflow:hidden; transition:all .2s;}
main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageSide > nav > ul > li:not(:focus-within):not(:hover) > ul {max-height:0; margin:0; padding-bottom:0; opacity:0;}
main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageSide > nav > ul > li > ul:before {content:""; display:block; position:absolute; left:.3em; top:-.5em; width:1px; height:calc(100% - 1em); background:linear-gradient(180deg, #ccc 2px, #fff0 2px, #fff0 4px, #ccc 4px); background-size:1px 4px;}
main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageSide > nav > ul > li > ul > li {position:relative; padding-left:1em;}
main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageSide > nav > ul > li > ul > li:before {content:""; display:block; position:absolute; left:.3em; top:1.3em; width:.5em; height:9px; background:#333; clip-path:polygon(0 0, 1px 0, 1px 4px,100% 4px, 100% 5px, 1px 5px, 1px 9px, 0 9px);}
main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageSide > nav > ul > li > ul > li a {padding-block:.6em;}
main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageSide > nav > ul > li > ul > li a.-here:after {width:calc(100% + 1em);}
main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageSide > nav > ul > li > ul > li ._sub {display:inline-block; margin-top:.3em; font-size:85%; letter-spacing:.02em;}

.btnR :is(a,button), :is(a,button).btnR {display:inline-block; padding:.6rem 1.2rem; border:1px #ccc solid; border-radius:2rem; line-height:1.3; text-decoration:none; color:inherit;}
main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageSide > nav .btnR a {width:100%;}

.divider {position:relative; height:1px; margin:calc(var(--fs2vs) * 3) 0; background:#ccc;}
.divider:before, .divider:after {content:""; display:block; width:5px; aspect-ratio:1; position:absolute; top:-2px; background:#ccc; border-radius:50%;}
.divider:before {right:calc(100% + 1px);}
.divider:after {left:calc(100% + 1px);}

.plainDatedList {overflow:auto;}
.plainDatedList > div ~ div {border-top:2px #bbb dotted;}
.plainDatedList dd a {text-decoration:none; color:var(--green1);}
.plainDatedList dd a:hover {text-decoration:underline;}

.-bgSplitOnH2Border {position:relative;}
.-bgSplitOnH2Border:before {content:""; display:block; width:100%; position:absolute; left:50%; bottom:0; z-index:-10; background:var(--bgSplitOnH2BorderBg); scale:3 1;}

.bottomEchoLines {position:relative; margin-bottom:1em; padding-bottom:1.6rem; text-align:center;}
.bottomEchoLines:before,
.bottomEchoLines:after {content:""; display:block; position:absolute; left:50%; translate:-50% 0; background:currentColor;}
.bottomEchoLines:before {width:2.2rem; height:4px; bottom:6px;}
.bottomEchoLines:after {width:1.5rem; height:2px; bottom:0;}

.main_endBnr {margin:calc(var(--fs2v) * 4) auto 0;}
.main_endBnr img {width:100%;}

@media (min-width:769px){
  .H2.-bgSplit ._wrap:before {content:""; display:block; width:100cqw; height:calc(var(--fs2vs) * 4); position:absolute; left:50%; bottom:calc(100% + 1.2rem - 2px); translate:-50% 0; background:#fff; scale:3 1;}
  :root {--fs2v:clamp(1.8rem, 0.8rem + 1.25vw, 2rem); --fs2vs:clamp(1.4rem, -1.6rem + 3.75vw, 2rem);}
  .sitePath ul {display:flex; flex-wrap:wrap; margin-inline:max(3vw,25px); padding-block:.6em; font-size:85%;}
  .sitePath ul > li:not(:last-child):after {content:""; display:inline-block; vertical-align:middle; width:.5em; aspect-ratio:1; margin-inline:.3em .6em; box-shadow:1px 1px 0 #0008; rotate:-45deg;}
  main:has(.pageSide) {position:relative; z-index:4; min-width:1160px; overflow:visible;}
  main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) {display:grid; grid-template-columns:calc(var(--fs2v) * 2 + 180px) 1fr; grid-template-rows:auto auto auto 1fr;}
  main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide):before {content:""; grid-column:2/3; grid-row:2/3; background:#fffa; -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px);}
  main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) > * {margin-inline:unset;}
  main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageTitleImg {grid-column:1/-1; grid-row:1/3; width:100%; aspect-ratio:48/13;}
  main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageTitleLabel {grid-column:1/2; grid-row:2/3; align-items:center; height:70px; padding-inline:var(--fs2v); border-radius:.5rem 0 0 0; line-height:1.3; font-size:calc(var(--fs2v) * .6); overflow:hidden;}
  main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageTitleTxt {position:relative; grid-column:2/3; grid-row:2/4; padding-top:70px; overflow:hidden; container-type:inline-size;}
  main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageTitleTxt:before {content:""; display:block; height:100%; width:100px; position:absolute; right:100%; top:0; box-shadow:0 0 3rem #0001;}
  main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageTitleTxt h1 {position:relative; translate:0 -.75em; width:fit-content; margin-inline:auto;}
  main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageTitleTxt h1:before,
  main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageTitleTxt h1:after {content:""; position:absolute; top:.75em; display:block; width:100cqw; height:8px; background-image:url(../images/common2023/title_border.svg); background-size:auto 100%; translate:0 -50%;}
  main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageTitleTxt h1:before {right:calc(100% + var(--fs2v)); background-position:100% 50%;}
  main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageTitleTxt h1:after {left:calc(100% + var(--fs2v)); background-position:0 50%;}
  main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageSide {position:relative; z-index:5; grid-column:1/2; grid-row:3/5;}
  main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageSide > * {padding:var(--fs2vs);}
  main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageSide > nav {position:sticky; top:136px; max-height:calc(100dvh - 136px); overflow:auto;}
  main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageMain {position:relative; grid-column:2/3; grid-row:4/5; padding-inline:calc(var(--fs2vs) * 2); container-type:inline-size; overflow:hidden;}
  main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageMain:before {content:""; display:block; height:calc(100% - 3rem); width:100px; position:absolute; right:100%; top:0; box-shadow:0 0 3rem #0001;}
  main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageMain ._container {max-width:1400px; margin-inline:auto; container-type:inline-size;}
  .plainDatedList {display:grid; grid-template-columns:auto 1fr; gap:0 2rem;}
  .plainDatedList > div {grid-column:span 2; display:grid; grid-template-columns:subgrid; padding-block:1.4rem;}
  .-bgSplitOnH2Border:before {height:calc(100% - var(--fs2vs) * 2 - 1.2rem - 3px);}
  
  .main_endBnr {display:grid; grid-template-columns:repeat(3,1fr); gap:1rem;}
  .main_endBnr:has(li:nth-child(2):last-child) {width:70%; grid-template-columns:repeat(2,1fr);}
  .main_endBnr:has(li:nth-child(1):last-child) {width:35%; grid-template-columns:unset;}
}
@media not (min-width:769px){
  :root {--fs2v:calc(.5rem + 1.8vw); --fs2vs:var(--fs2v);}
  .H2 {gap:.6rem;}
  .H2:after {font-size:4px; scale:.4 1;}
  .sitePath {display:none;}
  main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) > *:not(.pageTitleImg) {padding-inline:4vw;}
  main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide):before {content:""; position:relative; z-index:2; display:block; width:100%; grid-column:1/-1; grid-row:2/4; background:#fffa; -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px);}
  main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageTitleImg {position:relative; grid-row:1/4; width:100%; aspect-ratio:1;}
  main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageTitleLabel {position:relative; z-index:3; grid-row:2/3; justify-content:center; font-size:.7rem;}
  main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageTitleLabel > div {position:relative; padding:.3em .8em; border-radius:0 0 .5rem .5rem; overflow:hidden;}
  main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageTitleTxt {position:relative; z-index:3; grid-row:3/4; padding-block:.4em .6em;}
  main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageTitleTxt:after {content:""; display:block; width:100%; height:4px; position:absolute; left:0; top:calc(100% - 2px); background:url(../images/common2023/title_border.svg) repeat-x 50% 50% / auto 100%;}
  main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageSide {grid-row:4/5; padding-block:1.6rem;}
  main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageMain {grid-row:5/6; font-size:93%;}
  .pageSide {position:relative; z-index:3;}
  .pageSide ._spSwitch {position:relative; text-align:center;}
  .pageSide ._spSwitch button {display:inline-flex; align-items:center; justify-content:space-between; width:200px; padding:.4em .6em .4em .4em; border:1px #ccc solid; border-radius:.5em; background:var(--sbtlYellow); color:var(--green1); font-weight:600;}
  .pageSide ._spSwitch button i {display:inline-block; width:1.4em; aspect-ratio:1; background:url('data:image/svg+xml;charset=UTF-8,<svg width="35" height="35" viewBox="0 0 35 35" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(%23clip0_187_9)"><path d="M17.38 34.76C26.9787 34.76 34.76 26.9787 34.76 17.38C34.76 7.78129 26.9787 0 17.38 0C7.78129 0 0 7.78129 0 17.38C0 26.9787 7.78129 34.76 17.38 34.76Z" fill="%23444444"/><path d="M26.8601 9.91016H7.89014V12.9102H26.8601V9.91016Z" fill="white"/><path d="M22.8901 15.8799H7.89014V18.8799H22.8901V15.8799Z" fill="white"/><path d="M19.1701 21.8398H7.89014V24.8398H19.1701V21.8398Z" fill="white"/></g><defs><clipPath id="clip0_187_9"><rect width="34.75" height="34.75" fill="white"/></clipPath></defs></svg>') no-repeat 50% 50% / contain;}
  .pageSide ._spSwitch button:after {content:""; display:inline-block; width:.5em; aspect-ratio:1; box-shadow:1px 1px 0 #333; rotate:45deg; translate:-20% -25%;}
  .pageSide > nav {position:absolute; left:50%; translate:-50% -5px; width:min(calc(100vw - 80px),300px); background:#fff; border-radius:.5em; box-shadow:0 5px 15px #0003; max-height:2000px; overflow:hidden; opacity:1; transition:opacity .2s, max-height .2s;}
  .pageSide > nav > ul > li {padding-inline:.3rem;}
  .pageSide > nav > ul > li:first-of-type {border:0!important;}
  .pageSide > nav > ul:last-child > li:last-of-type {border-bottom:0!important;}
  .pageSide:not(:has(._spSwitch button.-on)) nav {opacity:0; max-height:0;}
  .pageSide:has(._spSwitch button.-on) ._spCloser {content:""; display:block; width:100%; height:100%; position:fixed; left:0; top:0;}
  main:has(.pageTitleImg):has(.pageTitleLabel):has(.pageSide) .pageSide > nav .btnR {padding:0 1rem 1rem;}
  .pageTitleImg {width:100%; max-width:100vw; aspect-ratio:1;}
  .divider {margin:2rem 0;}
  .plainDatedList > div {padding-block:1.2rem;}
  .plainDatedList dd {margin-top:.4rem;}
  .-bgSplitOnH2Border:before {height:calc(100% - var(--fs2vs) * 2 - .6rem - 2px);}
  
  .main_endBnr {display:grid; grid-template-columns:repeat(auto-fill, minmax(240px,1fr)); gap:1rem; padding-inline:4vw;}
  
  .scrollHint {position:relative; z-index:1000;}
  .scrollHint:after {content:""; display:block; position:absolute; left:50%; top:50%; translate:-50% -50%; height:min(70px,100%); aspect-ratio:3/2;
    background:#0006 url(../images/common2023/scroll_hint.svg) no-repeat 50% 50%  / auto 80%; border-radius:.6rem; -webkit-backdrop-filter:blur(2px); backdrop-filter:blur(2px);
    transition:opacity .2s ease-out, height 0s ease-out .3s;}
  .scrollHint.-done:after {opacity:0; height:0%;}
}


/* ======= オープンキャンパス */
.oc_anchorNav {display:grid; grid-template-columns:repeat(3,1fr); margin-inline:auto;}
.oc_anchorNav li a {display:flex; flex-direction:column; justify-content:center; align-items:center; gap:.4em; border:2px var(--green1) solid; border-radius:.6rem; text-align:center; text-decoration:none; font-weight:bold; color:var(--green1);}
.oc_anchorNav i {font-style:normal; font-size:80%; color:#333;}
.oc_regionalDateList {position:relative; background:#e2faf0;}
.oc_regionalDateList.-ehime {background:#e1f5fc;}
.oc_regionalDateList img {max-width:100%;}
.oc_regionalDateList h3 {position:absolute; z-index:5; left:0; top:0;}
.oc_regionalDateList ._pic {position:absolute; bottom:100%; right:0;}
.oc_regionalDateList ._track {position:relative; display:grid; grid-template-columns:auto 1fr; padding-block:1rem; background:#fff;}
.oc_regionalDateList ._track + ._track {margin-top:.5rem;}
.oc_regionalDateList ._track h4 {position:relative; z-index:20; display:flex; align-items:center; line-height:1.1; font-size:calc(var(--fs2v) * .8); letter-spacing:0;}
.oc_regionalDateList ._track h4 > span {position:relative; display:block;}
.oc_regionalDateList ._track h4 > span:before {content:""; display:block; width:.7em; aspect-ratio:1; position:absolute; left:0; top:0; translate:-130% 40%; border-radius:50% 50% 0 50%; background:var(--dptColor);}
.oc_regionalDateList ._track ul {margin:0;}
.oc_regionalDateList ._track li {position:relative; padding-bottom:.2rem; text-align:center;}
.oc_regionalDateList ._track li:before {content:""; display:block; position:absolute; left:0; top:5%; height:90%; border-left:1px #ccc solid;}
.oc_regionalDateList ._date {padding-left:.5em; color:var(--green1);}
.oc_regionalDateList ._date b {display:inline-block; line-height:1; font-size:220%;}
.oc_regionalDateList ._date b:nth-of-type(2) {margin-right:-.2em;}
.oc_regionalDateList.-ehime ._date {--green1:#489dd4;}
.oc_regionalDateList .grdBtn {width:7rem; min-width:0; margin-top:.5rem;}
.oc_regionalDateList .grdBtn > span {padding:.12rem .4rem .14rem .6rem;}
.oc_regionalDateList .grdBtn > span:after {display:inline-block; vertical-align:middle; position:relative; top:auto; right:0; translate:0 -15%; margin-left:.2rem;}
.oc_regionalDateList .grdBtn.-unready:before {background:#cbcbcb;}
.oc_regionalDateList .grdBtn.-unready > span {background:#f1f1f1;}
.oc_regionalDateList .slick-arrow {width:calc(var(--fs2v) * 1.2); height:auto; aspect-ratio:1; background:#fff; border:1px #ccc solid; border-radius:50%;}
.oc_regionalDateList .slick-arrow:before {content:unset;}
.oc_regionalDateList .slick-arrow:after {content:""; display:inline-block; width:40%; aspect-ratio:1; background:url(../images/common2023/arrow01.svg) no-repeat 50% 50% / contain;}
.oc_regionalDateList .slick-prev {left:0; translate:-50% -50%;}
.oc_regionalDateList .slick-prev:after {scale:-1 1;}
.oc_regionalDateList .slick-next {right:0; translate:50% -50%;}
.oc_regionalDateList .slick-disabled {display:none!important;}

@media (min-width:769px){
  .oc_anchorNav {width:600px; gap:2rem; font-size:1.2rem;}
  .oc_anchorNav a {aspect-ratio:6/5;}
  .oc_regionalDateList {padding:calc(var(--fs2vs) * 1.6) calc(var(--fs2vs) * 2); border-radius:.6rem;}
  .oc_regionalDateList + .oc_regionalDateList {margin-top:6rem;}
  .oc_regionalDateList h3 {width:calc(var(--fs2vs) * 5); translate:-20% -40%;}
  .oc_regionalDateList ._pic {width:calc(var(--fs2vs) * 10); translate:-20% calc(var(--fs2vs) * 1.6);}
  .oc_regionalDateList ._track {container-type:inline-size; border-radius:.6rem;}
  .oc_regionalDateList ._track h4 {width:9.5em; padding-left:2em;}
  .oc_regionalDateList ._track ul {width:100%; width:calc(100cqw - var(--fs2v) * .8 * 9.5);}
}
@media (max-width:768px){
  .oc_anchorNav {gap:3vw; font-size:min(1rem,3vw);}
  .oc_anchorNav a {padding:.8rem .5rem .6rem; white-space:nowrap;}
  .oc_anchorNav img {max-width:40%;}
  .oc_regionalDateList {width:calc(100% + 8vw); margin-left:-4vw; padding:calc(var(--fs2vs) * 1.6) 0 calc(var(--fs2vs) * 1.6) 4vw;}
  .oc_regionalDateList + .oc_regionalDateList {margin-top:calc(2rem + 5vw);}
  .oc_regionalDateList h3 {width:calc(var(--fs2vs) * 5); translate:10% -50%;}
  .oc_regionalDateList ._pic {width:calc(var(--fs2vs) * 10); translate:0 calc(var(--fs2vs) * 1.6);}
  .oc_regionalDateList ._track {border-radius:.6rem 0 0 .6rem; overflow:hidden;}
  .oc_regionalDateList ._track h4 {width:7em; padding-left:2em; background:#fff;font-size:1.2rem;}
  .oc_regionalDateList ._track ul {width:10rem;}
  .oc_regionalDateList ._track .slick-list {overflow:visible;}
}


.oc_searchMenu {position:relative; border:var(--sbtlGreen) solid;}
.oc_searchMenu:before {content:""; display:block; background:#fff; position:absolute; z-index:1; left:50%; translate:-50% 0;}
.oc_searchMenu:after {content:""; display:block; position:absolute; left:50%; z-index:1; translate:-50% -33%; aspect-ratio:1; border:var(--sbtlGreen) solid; rotate:45deg;}
.H2[data-enlabel="MENU SEARCH"] {position:relative; z-index:2;}
.oc_searchMenu ul {position:relative; z-index:3;}
.oc_searchMenu button {border-radius:.5rem; background:transparent; color:var(--green1); font-weight:bold; cursor:pointer;}
.oc_searchMenu .-dpt button {width:100%; padding:.5em; border:1px #ccc solid; line-height:1.3;}
.oc_searchMenu .-hash {display:flex; justify-content:center; flex-wrap:wrap;}
.oc_searchMenu .-hash button {border:none;}
.oc_searchMenu .-hash button:before {content:"#";}
.oc_searchCnt > ._col:nth-child(n+2) {height:0; overflow:hidden;}
.oc_searchCnt ._entry {position:relative; padding-top:12px; transition:.4s all;}
.oc_searchCnt > ._entry {opacity:0;}
.oc_searchCnt ._entry ._date {position:absolute; left:-.6rem; top:0; background:#61b8a8; line-height:1; font-family:"Lora", serif; color:#fff;}
.oc_searchCnt ._entry ._txt a {text-decoration:none; font-weight:bold; color:var(--green1);}
.oc_searchCnt ._entry ._txt a:before {content:""; display:block; position:absolute; left:0; top:0; width:100%; height:100%;}
.oc_searchCnt ._entry ._txt .-sumi {display:block; font-size:80%;}
.oc_searchCnt ._entry ._pic {overflow:hidden;}
.oc_searchCnt ._entry ._pic:empty {display:flex; align-items:center; justify-content:center; background:#eee; font-weight:bold; color:#0004;}
.oc_searchCnt ._entry ._pic:empty:before {content:"no image";}
.oc_searchCnt ._entry ._pic img {width:100%; height:100%; object-fit:cover;}
.oc_searchCnt ._entry ._exp {margin-top:.6em;}
.oc_searchCnt .slick-arrow {top:100%; width:calc(var(--fs2v) * 1.2); height:auto; aspect-ratio:1; background:#fff; border:1px #ccc solid; border-radius:50%;}
.oc_searchCnt .slick-arrow:before {content:unset;}
.oc_searchCnt .slick-arrow:after {content:""; display:inline-block; width:40%; aspect-ratio:1; background:url(../images/common2023/arrow01.svg) no-repeat 50% 50% / contain;}
.oc_searchCnt .slick-prev {left:auto; right:0; scale:-1 1;}

@media (min-width:769px){
  .oc_searchImg {position:relative; width:100%; aspect-ratio:15/1;}
  .oc_searchImg img {width:104%; position:absolute; left:-2%; bottom:0;}
  .oc_searchMenu {margin-top:1.6cqw; padding:1.8cqw; border-width:1.6cqw; border-radius:1cqw;}
  .oc_searchMenu:before {height:2cqw; width:9cqw; bottom:-1.6cqw;}
  .oc_searchMenu:after {width:3.8cqw; top:100%; border-width:0 1.6cqw 1.6cqw 0; border-radius:0 0 1cqw 0;}
  .oc_searchMenu .-dpt {display:grid; grid-template-columns:repeat(6,1fr); gap:.6%; container-type:inline-size;}
  .oc_searchMenu .-dpt button {font-size:min(1.8cqw,1.2rem);}
  .oc_searchMenu .-hash {margin-top:1rem; gap:.6em 2.8%;}
  .oc_searchCnt {container-type:inline-size;}
  .oc_searchCnt ._col {display:grid; grid-template-columns:1fr 1fr; gap:3cqw 4cqw; padding-inline:calc(var(--fs2vs) * 2);}
  .oc_searchCnt ._entry ._date {padding:.9em .5em; border-radius:8px; font-size:130%;}
  .oc_searchCnt ._entry ._date > :is(span,b) {font-weight:inherit; font-size:160%;}
  .oc_searchCnt ._entry ._pic {aspect-ratio:2.3/1; margin-bottom:.8em; border-radius:8px;}
  .oc_searchCnt ._entry ._txt {font-size:calc(var(--fs2v) * .75);}
  .oc_searchCnt ._entry ._exp {font-size:min(1rem,1.6cqw);}
  .oc_searchCnt .slick-prev {translate:calc(-100% - 1rem) 4rem;}
  .oc_searchCnt .slick-next {translate:0 4rem;}
}
@media (max-width:768px){
  .oc_searchMenu {margin-top:12cqw; padding:2.8vw; border-width:2.4vw; border-radius:2vw;}
  .oc_searchMenu:before {height:3vw; width:14vw; bottom:-2.8vw;}
  .oc_searchMenu:after {width:6vw; top:100%; border-width:0 2.4vw 2.4vw 0; border-radius:0 0 2vw 0;}
  .oc_searchMenu .-dpt {display:grid; grid-template-columns:repeat(3,1fr); gap:1vw; font-size:min(1rem,3.6vw); white-space:nowrap;}
  .oc_searchMenu .-hash {padding-block:1vw; gap:1vw 7vw; font-size:min(.93rem,3.4vw);}
  .oc_searchCnt ._col {padding-inline:4vw;}
  .oc_searchCnt ._entry + ._entry {margin-top:2.4em;}
  .oc_searchCnt ._entry ._date {padding:.9em .3em; border-radius:5px;}
  .oc_searchCnt ._entry ._date > :is(span,b) {font-weight:inherit; font-size:140%;}
  .oc_searchCnt ._entry ._pic {aspect-ratio:2.15/1; margin-bottom:.8em; border-radius:5px;}
  .oc_searchCnt ._entry ._txt {font-size:125%;}
  .oc_searchCnt .slick-arrow {width:2rem;}
  .oc_searchCnt .slick-prev {translate:calc(-100% - .9rem) 3rem;}
  .oc_searchCnt .slick-next {translate:0 3rem;}
}

.oc_events, .oc_program, .oc_faq {margin-top:calc(var(--fs2vs) * 4); padding-bottom:calc(var(--fs2vs) * 3.5);}
.oc_access {margin-top:calc(var(--fs2vs) * 5);}

.oc_events {--bgSplitOnH2BorderBg:var(--sbtlGreen); position:relative;}
.oc_events .H2 {margin-bottom:calc(var(--fs2vs) * 2);}
.oc_events .plainDatedList {position:relative; border-radius:.6rem; background:#fff;}

.oc_program .H2 {margin-bottom:2em;}
.oc_program ul {position:relative;}
.oc_program ul:before {content:""; display:block; position:absolute; right:0; top:0; aspect-ratio:5/2; background:url(../images/oc/program_cmt1.png) no-repeat 50% 50% / contain;}
.oc_program ul:after {content:""; display:block; position:absolute; left:0; bottom:0; aspect-ratio:5/2; background:url(../images/oc/program_cmt2.png) no-repeat 50% 50% / contain;}
.oc_program ._pic {position:relative; width:100%; aspect-ratio:3/2;}
.oc_program ._pic img {width:100%; height:100%; object-fit:cover; border-radius:.5rem;}
.oc_program ._pic:before {content:attr(data-num); display:block; width:2em; position:absolute; left:50%; top:0; translate:-50% -50%; border-radius:.3rem; background:#489dd4; line-height:2; text-align:center; font-size:125%; color:#fff;}
.oc_program ._ttl {position:relative; margin-block:.6em .2em; padding-left:1.6rem; font-weight:bold;}
.oc_program ._ttl:before {content:""; display:block; width:1em; aspect-ratio:1; position:absolute; left:0; top:.8em; translate:0 -50%; background:url(../images/common2023/marker01.svg) no-repeat 50% 50% / contain; scale:.7;}
.oc_program ._txt {padding-left:1.6rem; font-size:93%;}

.oc_faq .H2 {margin-bottom:2em;}
.oc_faq dl {background:#fff; border-radius:.6rem;}
.oc_faq :is(dt,dd) {transition:all .2s;}
.oc_faq dt:before,
.oc_faq dd:before {display:block; width:1.6em; border-radius:.2em; line-height:1.6em; text-align:center; font-size:1.5rem; font-family:"Kanit",sans-serif; color:#fff;}
.oc_faq dt {display:grid; grid-template-columns:auto 1fr auto; align-items:start; gap:1rem; font-size:108%; font-weight:bold;}
.oc_faq dd ~ dt {border-top:1px #ccc solid;}
.oc_faq dt:before {content:"Q"; background:var(--green1);}
.oc_faq dt button {position:relative; z-index:3; display:block; padding-top:.3rem; border:0; background:transparent; text-align:left; cursor:poiinter; color:var(--green1); cursor:pointer;}
.oc_faq dt button:after {content:""; height:100%; width:3em; display:block; position:absolute; left:100%; top:0;}
.oc_faq dt i {position:relative; display:block; width:1.4em; aspect-ratio:1; border:1px #ccc solid; border-radius:50%; font-size:1.5rem; translate:0 5%;}
.oc_faq dt i:before,
.oc_faq dt i:after {content:""; display:block; width:40%; border-top:1px #444 solid; position:absolute; left:50%; top:50%; translate:-50% 0; transition:all .15s;}
.oc_faq dt:not(:has(.-on)) i:after {rotate:90deg;}
.oc_faq dd {display:grid; grid-template-columns:auto 1fr; align-items:start; gap:1rem; overflow:hidden; max-height:0;}
.oc_faq dt:has(.-on) + dd {max-height:2000px;}
.oc_faq dd:before {content:"A"; background:#888;}
.oc_faq dd > div {padding-top:.3rem;}

.oc_other {--bgSplitOnH2BorderBg:#FCFCF3; padding-bottom:calc(var(--fs2vs) * 3.5);}
.oc_other article {background:#fff; border-radius:.5rem;}
.oc_other article h3 {margin-bottom:1em; font-weight:bold; font-size:140%;}

.oc_access .H2 {margin-bottom:2em;}
.oc_access dl > div {position:relative; background:#f4f4f4; border-radius:.5rem;}
.oc_access dl > div:after {content:""; display:block; aspect-ratio:5/1; position:absolute; top:0; translate:0 -50%;}
.oc_access dl > div.-aichi:after {background:url(../images/oc/region2-aichi.svg) no-repeat 50% 50% / contain;}
.oc_access dl > div.-ehime:after {background:url(../images/oc/region2-ehime.svg) no-repeat 50% 50% / contain;}
.oc_access dt {display:flex; justify-content:space-between; align-items:center;}
.oc_access dt > div {font-size:max(calc(var(--fs2v) * .8), 1.2rem); font-weight:bold;}
.oc_access dt .grdBtn {min-width:6em;}
.oc_access dt .grdBtn span {padding:.2em 1rem .2em .7em;}
.oc_access dt .grdBtn span:after {right:.4rem;}
.oc_access iframe {width:100%; height:auto; aspect-ratio:2/1; border-radius:0 0 .5rem .5rem;}

.oc_contact {margin-top:calc(var(--fs2vs) * 4); padding:calc(var(--fs2vs) * 1.2) calc(var(--fs2vs) * 2); border-radius:.6rem; text-align:center; box-shadow:0 0 var(--fs2v) #0001;}
.oc_contact h2 {font-weight:bold;}
.oc_contact dl {margin-bottom:1.5rem;}
.oc_contact dl > div {padding:1.4rem 1rem; border:1px #ccc solid; border-radius:.6rem;}
.oc_contact dl a {text-decoration:none;}
.oc_contact a:is([href*="tel:"],.eml) {font-size:max(calc(var(--fs2v) * 1), 1.4rem); font-weight:bold;}
.oc_contact a[href*="tel:"] {color:var(--green1);}
.oc_contact a.eml {color:#489dd4;}
.oc_contact ._time {display:flex; flex-wrap:wrap; justify-content:center; gap:0 min(1.5em,3vw);}

@media (min-width:769px){
  .oc_events .plainDatedList {padding:1rem calc(var(--fs2vs) * 2);}
  .oc_program ul:before {height:2rem; translate:50% -150%;}
  .oc_program ul:after {height:2rem; translate:-50% 150%;}
  .oc_program .pcCol3 {gap:5cqw 2.5cqw;}
  .oc_program ._ttl {font-size:calc(var(--fs2v) * .67);}
  
  .oc_faq dl {padding:2.5rem calc(var(--fs2vs) * 2.5);}
  .oc_faq dt:has(.-on) {margin-bottom:1.5rem;}
  .oc_faq dd {padding-inline:calc(var(--fs2vs) * 1.8);}
  .oc_faq dd ~ dt {margin-top:2rem; padding-top:2rem;}
  
  .oc_other article {padding:calc(var(--fs2vs) * 1.4) calc(var(--fs2vs) * 2.5) calc(var(--fs2vs) * 2);}
  .oc_other article ~ article {margin-top:3rem;}
  .oc_other article h3 {width:calc(100% + 1em); margin-left:-1em;}
  
  .oc_access dl {gap:calc(var(--fs2vs) * 2);}
  .oc_access dl > div:after {left:calc(var(--fs2vs) * 1.2); width:calc(var(--fs2vs) * 6);}
  .oc_access dt {padding:1.6rem calc(var(--fs2vs) * 1.2) .6rem;}
  .oc_access ._address {padding:0 calc(var(--fs2vs) * 1.2) 1.4rem;}
  
  .oc_contact dl {gap:calc(var(--fs2vs) * 2);}
}
@media (max-width:768px){
  .oc_events .plainDatedList {padding-inline:4vw;}
  .oc_program ul:before {height:1.6rem; translate:10% -150%;}
  .oc_program ul:after {height:1.6rem; translate:-10% 150%;}
  .oc_program .spCol2 {gap:6vw 3vw;}
  .oc_program ._pic:before {font-size:100%;}
  .oc_program ._ttl {font-size:108%;}
  
  .oc_faq dl {padding-block:2rem;}
  .oc_faq dt {padding-inline:1.4rem 1rem;}
  .oc_faq dt:has(.-on) {margin-bottom:1.2rem;}
  .oc_faq dd {padding-inline:2rem 1.6rem;}
  .oc_faq dd ~ dt {margin-top:1.5rem; padding-top:1.5rem; border-top:1px #ccc solid;}
  
  .oc_other article {padding:1.4rem 4vw 2rem;}
  .oc_other article ~ article {margin-top:1.5rem;}
  
  .oc_access dl {gap:2rem}
  .oc_access dl > div:after {left:6vw; width:calc(var(--fs2vs) * 7);}
  .oc_access dt {padding:1.6rem 6vw .6rem;}
  .oc_access ._address {padding:0 6vw 1.4rem;}
}

.oc_program {--bgSplitOnH2BorderBg:#f7faff;}

.oc_faq {--bgSplitOnH2BorderBg:#f1fdf8;}