/* テーマ側の table / a の装飾に負けないよう、.lyc から始めて主要な指定は !important にしている */
.lyc{max-width:560px;margin:1.5em auto;font-size:14px;line-height:1.4;color:#333}
.lyc p::before,.lyc p::after,.lyc a::before,.lyc a::after,.lyc th::before,.lyc td::before{content:none !important;display:none !important}
.lyc p{margin:0;padding:0;border:0;background:none}
.lyc .lyc-lead{margin:0 0 .6em !important;text-align:center;font-weight:700;color:#333 !important}
.lyc .lyc-lead span{font-size:12px;font-weight:400;color:#666 !important}

.lyc .lyc-note{margin:0 0 1em;padding:12px 14px;border:2px solid #1f6fb5;border-radius:8px;background:#f2f7fc;text-align:left}
.lyc .lyc-note p{margin:0 !important;padding:0 !important;border:0 !important;background:none !important}
.lyc .lyc-note .lyc-note-ttl{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:700;line-height:1.4;color:#333 !important}
.lyc .lyc-note .lyc-note-icon{flex:none;padding:3px 8px;border-radius:4px;background:#1f6fb5;color:#fff !important;font-size:11px;letter-spacing:.05em}
.lyc .lyc-note em{display:inline-block;white-space:nowrap;font-style:normal;color:#1f6fb5 !important;background:linear-gradient(transparent 60%,#ffe08a 60%)}
.lyc .lyc-note .lyc-note-txt{margin-top:6px !important;font-size:13px;line-height:1.7;color:#444 !important}
.lyc .lyc-note strong{font-weight:700;color:#333 !important;background:linear-gradient(transparent 60%,#ffe08a 60%)}

.lyc .lyc-body{border:2px solid #1f6fb5;border-radius:8px;padding:12px 8px;background:#fff}

.lyc .lyc-soon{margin:0 0 14px;padding-bottom:14px;border-bottom:1px dashed #cfdceb}
.lyc .lyc-soon-ttl{margin:0 0 8px !important;font-weight:700;font-size:14px;color:#333 !important;text-align:center}
.lyc .lyc-soon-list{display:flex;gap:6px}
.lyc a.lyc-soon-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px 2px;border:2px solid #1f6fb5 !important;border-radius:8px;background:#fff !important;box-shadow:none !important;outline:0 !important;text-decoration:none !important}
.lyc a.lyc-soon-item:hover{background:#f2f7fc !important}
.lyc .lyc-soon-date{font-size:12px;color:#555 !important}
.lyc .lyc-soon-time{font-size:17px;font-weight:700;color:#1f6fb5 !important}
.lyc .lyc-filter{display:flex;gap:6px;margin-top:8px}
.lyc .lyc-filter-btn{flex:1;margin:0;padding:9px 4px;border:1px solid #1f6fb5 !important;border-radius:999px;background:#fff !important;color:#1f6fb5 !important;font:inherit;font-size:13px;font-weight:700;box-shadow:none !important;cursor:pointer}
.lyc .lyc-filter-btn.is-active{background:#1f6fb5 !important;color:#fff !important}

.lyc .lyc-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.lyc .lyc-nav button{padding:6px 10px;border:1px solid #1f6fb5 !important;border-radius:4px;background:#fff !important;color:#1f6fb5 !important;font:inherit;font-size:12px;box-shadow:none !important;cursor:pointer}
.lyc .lyc-nav button:disabled{border-color:#ddd !important;color:#bbb !important;cursor:default}
.lyc .lyc-range{font-weight:700;color:#333}

.lyc .lyc-grid{max-height:380px;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;border-bottom:1px solid #dde5ee}
.lyc table.lyc-table{width:100% !important;margin:0 !important;border-collapse:collapse !important;table-layout:fixed;background:#fff !important;border:0 !important}
.lyc table.lyc-table th,.lyc table.lyc-table td{padding:0 !important;border:1px solid #dde5ee !important;text-align:center !important;vertical-align:middle !important;background:#fff !important;color:#333 !important;font-size:12px}
.lyc table.lyc-table thead th{position:sticky;top:0;z-index:1;padding:4px 0 !important;background:#f2f7fc !important;color:#333 !important;font-weight:700}
.lyc table.lyc-table thead th span{font-size:11px;font-weight:400;color:inherit !important}
.lyc table.lyc-table th.is-sat{color:#2f6db5 !important}
.lyc table.lyc-table th.is-sun{color:#c63b3b !important}
.lyc table.lyc-table th.lyc-time{width:3.4em;background:#f2f7fc !important;color:#555 !important;font-size:11px;font-weight:400}
.lyc table.lyc-table tr.is-hour th,.lyc table.lyc-table tr.is-hour td{border-top:2px solid #c3d3e5 !important}
.lyc table.lyc-table td.lyc-cell{height:28px}
.lyc table.lyc-table td.is-none{color:#bbb !important}
.lyc table.lyc-table td.lyc-cell a{display:block;height:28px;line-height:28px;margin:0;padding:0;border:0 !important;outline:0 !important;box-shadow:none !important;background:none !important;font-size:14px;font-weight:700;text-decoration:none !important}
.lyc table.lyc-table td.lyc-cell a:hover{background:#eaf2fb !important}

.lyc .lyc-msg{margin:1.5em 0 !important;text-align:center;color:#666 !important;font-size:13px;width:100%}
.lyc .lyc-scroll-hint{margin:6px 0 0 !important;font-size:11px;color:#999 !important;text-align:center}
.lyc .lyc-legend{margin:6px 0 0 !important;font-size:12px;color:#666 !important;text-align:center}
.lyc a.lyc-cta{display:block;margin:12px auto 0;padding:14px;border:0 !important;border-radius:999px;outline:0 !important;box-shadow:none !important;font-weight:700;text-align:center}
.lyc a.lyc-cta:hover{opacity:.85}
html body .lyc a.lyc-cta,html body .lyc a.lyc-cta:link,html body .lyc a.lyc-cta:visited,html body .lyc a.lyc-cta *{color:#fff !important;text-decoration:none !important}
.lyc a.lyc-now-btn{display:flex;flex-direction:column;align-items:center;margin:0 0 14px;padding:12px 8px;border:0 !important;border-radius:999px;outline:0 !important;box-shadow:0 3px 0 #b84d1c !important;text-decoration:none !important}
.lyc a.lyc-now-btn:hover{opacity:.9}
.lyc .lyc-now-main{font-size:17px;font-weight:700;line-height:1.3}
.lyc .lyc-now-sub{font-size:11px;line-height:1.4;opacity:.95}
.lyc .lyc-updated{margin:4px 0 0 !important;font-size:11px;color:#999 !important;text-align:center}
