@charset "UTF-8";
:root {
  --border: #ddd;
  --bg: #fff;
}

/* mv
-------------------------------------*/
#main-visual.corporate p img {
  width: 100%;
  height: auto;
}

.corporate-section p img {
  max-width: 100%;
  height: auto;
}

/* table
-------------------------------------*/
.js-scroll_hint table {
  min-width: 1000px;
  width: max-content;
  line-height: 1.4;
  margin: auto;
}

.js-scroll_hint th {
  background-color: #F8DBB8;
  font-weight: bold;
  text-align: left;
}

.js-scroll_hint th,
.js-scroll_hint td {
  padding: 10px 5px;
  border: none;
  border-bottom: 1px solid #6d6d6d;
}

.js-scroll_hint tr:nth-child(even) {
  background: #f7f7f7;
}

.table-wrap_box {
  border: 2px solid #e55f0e;
  max-width: 1000px;
  line-height: 1.4;
  margin: auto;
  padding: 10px;
}
.table-wrap_box li {
  display: inline-block;
  margin-right: 10px;
}

.table-wrap_box li:before {
  content: "●";
  color: #e55f0e;
  margin-right: 2px;
}


/* schedule
-------------------------------------*/
.pdf-schedule__canvas {
  overflow-x: auto;
  width: 100%;
  height: 400px;
  max-width: 1100px;
  position:relative;
  background:#fff;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans JP", sans-serif;
}

.pdf-schedule__canvas .grid {
  min-width: 1100px;
}

.pdf-schedule__title{ display:flex; gap:12px; align-items:baseline; flex-wrap:wrap; }
.pdf-schedule__title h2{ margin:0; font-size:28px; }
.pdf-schedule__title p{ margin:0; color:#555; font-size:14px; }

.pdf-schedule__scroll{
  margin-top:14px;
  overflow-x:auto;
  border:1px solid #e5e7eb;
  border-radius:10px;
  background:#fff;
  -webkit-overflow-scrolling: touch;
}

.grid{
  position:absolute;
  inset:0;
  display:grid;
  grid-template-columns:100px repeat(12,90px);
  grid-template-rows:46px repeat(4,100px);
  z-index:1;
}

.cell{
  border-right:2px dotted #d9d9d9;
  border-bottom:2px dotted #d9d9d9;
  box-sizing:border-box;
}

.grid > .cell:nth-child(1) {
  border-right: none;
}

.month{
  background:#ed7a33;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:700;
  border-right:1px solid rgba(255,255,255,.35);
  border-bottom:0;
  font-size:15px;
}

.grid > .month:nth-child(2)  { background:#f39a63; }
.grid > .month:nth-child(3)  { background:#f19258; }
.grid > .month:nth-child(4)  { background:#ef894d; }
.grid > .month:nth-child(5)  { background:#ee8242; }
.grid > .month:nth-child(6)  { background:#ed7d38; }
.grid > .month:nth-child(7)  { background:#ed7a33; }
.grid > .month:nth-child(8)  { background:#eb752f; }
.grid > .month:nth-child(9)  { background:#e9702c; }
.grid > .month:nth-child(10) { background:#e66c29; }
.grid > .month:nth-child(11) { background:#e36827; }
.grid > .month:nth-child(12) { background:#e06425; }
.grid > .month:nth-child(13) { background:#dd6123; }

.lane-label{
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:700;
  white-space:pre-line;
  text-align:left;
  line-height:1.2;
  font-size:16px;
  border-right:2px dotted #d9d9d9;
  border-left:2px dotted #d9d9d9;
  border-bottom:2px dotted #d9d9d9;
  box-sizing:border-box;
  background:#fff;
}

.lane-bg{
  position:absolute;
  z-index:0;
  pointer-events:none;
}

.event{
  position:absolute;
  z-index:2;
  pointer-events:none;
}

.event__bar{
  position:absolute;
  background:#ed7a33;
  height:10px;
}
.event--dark .event__bar{ background:#4b5563; }

.event__label{
  position:absolute;
  font-size:13px;
  line-height:1.25;
  white-space:pre-line;
  color:#dd6123;
}
.event--dark .event__label{ color:#111; }

/* merit
-------------------------------------*/
.merit-box {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 800px;
  margin: auto;
}

.merit-box h3 {
  border: none;
}

.merit-box li {
  position: relative;
  background-color: #f8dbb8;
  border-radius: 10px;
  padding: 4px 10px 10px;
  margin-bottom: 15px;
  line-height: 1.4;
}

.merit-box li:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  border-style: solid;
  border-width: 7.5px 10px 7.5px 0;
  border-color: transparent #f8dbb8 transparent transparent;
  translate: -100% -50%;
}

.merit-box .ico {
  width: 150px;
}

.merit-box .ico img {
  width: 100%;
  height: auto;
}

.merit-box .serif {
  padding-left: 20px;
}

/* burden
-------------------------------------*/
.burden-box {
  max-width: 800px;
  margin: auto;
}
.burden-box img {
  width: 100%;
  height: auto;
  margin-bottom: 5px;
}

/* column
-------------------------------------*/
.corporate .column {
  max-width: 1000px;
  margin: auto;
}
.corporate .column .lead {
  border-bottom: 2px dashed #dbdbdb;
}

/* guidelines
-------------------------------------*/
.catalog-wrap > h3 {
  background:#ff671d;
  border-radius: 10px 10px 0 0;
  color: #fff;
  margin: 0 0 10px;
}

.catalog-box {
  border: 1px solid #dadada;
  width: 300px;
  margin: 0 auto;
  line-height: 2rem;
  padding: 20px;
  display: flex;
  justify-content: center;
}

/* sp
-------------------------------------*/
@media screen and (max-width:640px) {
  .merit-box .ico {
    width: 120px;
    min-width: 120px;
  }
  .merit-box .serif {
    padding-left: 10px;
  }
}
