@charset "utf-8";

main figure img {
  display: block;
  margin: 0 auto;
}
@media not all and (min-width: 768px) {
  main dl dd {
    font-size: calc(15 / 16 * 1rem);
  }
}

.indent--half {
  padding-left: 0.5em;
  text-indent: -0.5em;
}

.link__list01 li:first-child {
  padding-top: 0;
}
.link__list01 li a {
  color: #7e0017;
  transition: all 0.3s ease;
}
.link__list01 li a:hover {
  opacity: 0.7;
}

/* === .tit and .subTit === */
.tit {
  color: #0068b7;
  font-weight: bold;
  line-height: 1.3;
  display: inline-block;
}
.subTit {
  color: #0068b7;
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .tit {
    font-size: calc(18 / 16 * 1rem);
    margin-bottom: 8px;
  }
  .subTit {
    font-size: calc(16 / 16 * 1rem);
    margin-bottom: 4px;
  }
}
@media not all and (min-width: 768px){
  .tit {
    font-size: calc(15 / 16 * 1rem);
    margin-bottom: 4px;
  }
  .subTit {
    font-size: calc(15 / 16 * 1rem);
    margin-bottom: 4px;
  }
}

/* === .fBox (flexBox) === */
@media screen and (min-width: 768px){
  .fBox {
    display: -webkit-box;
    display: flex;
  }
}

/* === .innerBox_b === */
.innerBox_b {
  border: 2px solid #0068b7;
}
@media screen and (min-width: 768px) {
  .innerBox_b {
    padding: 20px;
  }
}
@media not all and (min-width: 768px) {
  .innerBox_b {
    padding: 12px;
  }
}

/* === table === */
table th,
table td {
  font-weight: normal;
  border: 2px solid #d1d1d1;
  vertical-align: middle;
}
table th {
  color: #fff;
  background-color: #0068b7;
}
table .taC {text-align: center;}
table .taR {text-align: right;}

table .tate {
  writing-mode: vertical-lr;
  text-orientation: upright;
  text-align: center;
}
table .kara {
  border: 0;
}
@media screen and (min-width: 768px){
  table th,
  table td {
    padding: 12px;
  }
  table .td01 {width: 4%;}
  table .td02 {width: 10%;}
  table .td03 {width: 38%;}
  table .td04 {width: 16%;}
  table .td05 {width: 42%;}
  table ul li {
    margin-top: 4px;
  }
  table ul li:first-child {
    margin-top: 0;
  }
  table ul li.pcIndent {
    text-indent: -1em;
    padding-left: 1em;
  }
}
@media not all and (min-width: 768px){
  table th,
  table td {
    padding: 4px;
  }
  table .td01 {width: 6%;}
  table .td02 {width: 6%;}
  table .td03 {width: 41%;}
  table .td04 {width: 20%;}
  table .td05 {width: 40%;}
  table ul li {
    margin-top: 2px;
  }
  table ul li:first-child {
    margin-top: 0;
  }
  table .sptate {
    writing-mode: vertical-lr;
    text-orientation: upright;
    text-align: center;
  }
}

/* === #strategy === */
#strategy .relatedProducts li {
  background-color: #c8e7f1;
  text-align: center;
}
@media screen and (min-width: 768px){
  #strategy .relatedProducts li {
    width: calc((100% - 36px) / 4);
    margin-left: 12px;
    padding: 16px 8px;
  }
  #strategy .relatedProducts li:first-child {
    margin-left: 0;
  }
  #strategy .relatedProducts li span {
    font-size: calc(15 / 16 * 1rem);
  }
}
@media not all and (min-width: 768px){
  #strategy .relatedProducts li {
    margin-top: 8px;
    padding: 8px;
  }
  #strategy .relatedProducts li:first-child {
    margin-top: 0;
  }
}

/* === #indicator === */
#indicator .box03 {
  display: -webkit-box;
  display: flex;
}
#indicator .box03 div img {
  display: block;
  object-fit: contain;
  height: 100%;
  margin: 0 auto;
}
@media screen and (min-width: 768px){
  #indicator .box01 > * {
    width: calc((100% - 12px) / 2);
    margin-left: 12px;
  }
  #indicator .box01 > *:first-child {
    margin-left: 0;
  }
  #indicator .box02 > * {
    width: calc((100% - 24px) / 2);
    margin-left: 24px;
  }
  #indicator .box02 > *:first-child {
    margin-left: 0;
  }
  #indicator .box03 div {
    width: calc((100% - 24px) * 0.15);
    text-align: center;
  }
  #indicator .box03 table {
    width: calc((100% - 24px) * 0.85);
    margin-left: 24px;
  }
}
@media not all and (min-width: 768px){
  #indicator .box01 > * {
    margin-top: 12px;
  }
  #indicator .box01 > *:first-child {
    margin-top: 0;
  }
  #indicator .box02 > * {
    margin-top: 12px;
  }
  #indicator .box02 > *:first-child {
    margin-top: 0;
  }
  #indicator .box03 div {
    width: calc((100% - 8px) * 0.15);
    text-align: center;
  }
  #indicator .box03 table {
    width: calc((100% - 8px) * 0.85);
    margin-left: 8px;
  }
}