@charset "utf-8";

.title_container{
  display: block;
}
.title_container .tit_small{
  font-size: 20px;
}
.title_container .tit_normal{
  font-size: 28px;
}

.content-link {
  width: auto;
  padding: 0 6.6667%;
  margin-bottom: 4%;
}
.content-link-list {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.content-link-list li {
  width: 48.4616%;
  line-height: 0;
  margin-bottom: 10px;
}
.content-inner {
  width: auto;
  padding: 0 20px;
  margin-bottom: 20px;
}
.hsLinkArea {
  width: auto;
  margin: 4% auto 6.6667%;
}
.othersLink {
  width: auto;
}
.content-title {
  padding-top: 6.6667%;
  width: 61.7334%;
  margin: 0 auto 5.3334%;
}
.content-section {
  overflow: hidden;
  padding-bottom: 9.2308%;
}
.content-section-feature {
  padding: 4.6154% 0;
}
.content-section-feature li {
  width: 32.3077%;
}
.content-section-title {
  font-size: 30px;
  padding-top: 20px;
  margin-bottom: 6.1539%;
}
.content-section-title-small {
  font-size: 25px;
  padding-right: 0;
}
.content-section-title-notes {
  font-weight:bold;
  text-align:center;
  margin: 20px 0 -15px;
}
.content-section-text {
  font-size: 14px;
}
.content-section-box {
  display: block;
  padding-top: 10.7693%;
}
.content-section-image {
  padding-top: 4.6154%;
}
.content-section-box-text {
  margin-bottom: 4.6154%;
}
.content-section-box-image {
  margin-left: 0;
  width: 76.9231%;
  margin: 0 auto;
}
.content-section-box-image li:not(:last-child) {
  margin-bottom: 4%;
}
.content-section-box-title {
  font-size: 17px;
  margin-bottom: 4.6154%;
}
.content-section-box-list {
  font-size: 14px;
}
.content-section-annotation {
  font-size: 11px;
}
.content-section-box-ordered {
  font-size: 14px;
}
.table-annotation {
  text-align: left;
  font-size: 11px;
  font-weight: bold;
  padding-top: 4.6154%;
  margin-bottom: 1.5385%;
}
.content-section-table-scroll {
  width: 100%;
  overflow-x: scroll;
}
.content-section-table {
  width:900px;
  margin-top: 0;
  margin-bottom: 4.6154%;
}
.content-section-table th {
  font-size: 10.5px;
  line-height: 1;
}
.content-section-table td {
  font-size: 10px;
  line-height: 1.7;
  padding: 4px 15px;
}
.content-section-table td .content-section-image{
  padding-top: 0;
  padding-bottom: 0.5em;
}
.content-section-table td .content-section-image img{
  width: 50%;
}
.content-section-text-link {
  padding-top: 4.6154%;
}
.content-section-text-link a {
  font-size: 14px;
}
.content-section-schedule {
  padding-top: 0;
}




/* 変数
----------------------------------- */
section p, section li, section dd {
  font-size: 12px;
  line-height: 1.5;
  margin-bottom: .5em;
}
.mb-10 {
  margin-bottom: -10px !important;
}


/* movie
----------------------------------- */
.heading {
  padding: 20px 0;
}

.programLink {
  width : 100%;
  margin : 0 0 20px;
  padding: 0 6.6667%;
  box-sizing: border-box;
}
.programLink ul {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0;
}
.programLink ul li {
  margin : 0 0 5px;
  padding: 0;
  width: 49%;
}
.programLink ul li img{
  width : 100%;
  height: auto;
}

.planning {
  width: auto;
}
.planning h3 {
  font-size: 16px;
  margin-bottom: 15px;
}
.planning .point,
.planning .step {
  border-bottom-width: 1px;
  width: auto;
}
.planning .point > li, .planning .step > li {
  border-top-width: 1px;
  padding: 10px 0;
}
.planning .point > li .figure, .planning .step > li .figure {
  -ms-flex-item-align: center;
      align-self: center;
  border-right: 0;
  padding: 0 7px 0 0;
  width: 30%;
}
.planning .point > li dl, .planning .step > li dl {
  border-left: 1px solid #b3bac0;
  padding-left: 10px;
  width: 100%;
}
.planning .point > li dl dt p, .planning .step > li dl dt p {
  font-size: 12px;
}
.planning .point > li dl dt p span, .planning .step > li dl dt p span {
  margin-right: 5px;
  padding: 2px 5px;
}
.planning .point > li dl dt p.title, .planning .step > li dl dt p.title {
  font-size: 14px;
  line-height: 1.3;
}
.planning .point > li dl dd, .planning .step > li dl dd {
  font-size: 11px;
  margin-top: 10px;
}
.planning .point > li dl dd li, .planning .step > li dl dd li {
  font-size: 11px;
  margin-bottom: 0;
}
.planning .point + p, .planning .step + p {
  font-size: 12px;
  margin: -15px 0 40px;
  width: auto;
}
.planning .step {
  margin-bottom: 30px;
}

.application {
  display: block;
  margin: 0 -8% 30px;
  padding: 20px;
}
.application p {
  font-size: 14px;
}
.application .btn + .btn {
  margin-top: 20px;
}

.feature-box{
  border: 4px solid #2969b7;
  width: auto;
  height: auto;
  min-height: 150px;
}
.feature-box td{
  font-size: 12px;
}
.feature-box td span{
  font-size: 10px;
  line-height: 1.2em;
}

.feature-box th{
  border: 2px solid #2969b7;
  height: 50px;
}
.feature-img{
  width: 60%;
}

.bannerBlock-image.normal.bgImg-hs a{
  width : 326px;
  height: 66px;
  margin: 0 auto;
  background-size: 14%;
  font-size: 16px;
}

.schedulelist{
}
.schedulelist li{
}
.schedulelist li .timeline{
  height: 24px;
  font-size: 11px;
  padding: 0 0 4px;
}
.schedulelist li .timeline small{
  transform: scale(0.8);
  position: absolute;
  top: 0;
  left: auto;
  right: auto;
  width: 5em;
}
.schedulelist li .scheduleline{
  flex-wrap: nowrap;
  font-size: 10px;
  margin: 10px 5px 0 0;
  height: 35px;
}
.schedulelist li .scheduleline:after{
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 17.5px 0 17.5px 5px;
  border-color: transparent transparent transparent #036eb7;
  position: absolute;
  top: 0;
  right: -5px;
}
.schedulelist li .scheduleline.colspan3{
  width: calc(100% * 3 - 5px);
}
.schedulelist li .scheduleline.colspan1half{
  width: calc(100% * 1.5 - 5px);
}
.schedulelist li .scheduleline.colspan4{
  width: calc(100% * 2.5 + 40px);
}
.schedulelist li .scheduleline.colspan1-5{
  right: -23px;
}
.schedulelist li .scheduleline small{
  transform: scale(0.6);
  font-size: 10px;
  text-align: left;
  margin: 0;
  flex: 1;
}

