/* {
  outline: 2px red solid;
}*/

* {
  font-size: 1em;
}

.textarea_center{
text-align: center;
margin: 0 auto;
}

.mein_center {
  text-align: center;
  font-size: 2em;
  font-weight: 400;
}

.textarea_center span{
  font-weight: bold;
}

.mein_title {
  padding-top: 2em;
  margin: 0 auto;
  width: 80vw;
  text-align: center;
}

.mein_text {
  margin: 0 auto;
  font-size: 2.3em;
  color: #ffffff;
}

.template_content_sub,
.template_content {
  width: 60vw;
  margin: 3em auto;
}

.template_title {
  padding-top: 2em;
  margin: 0 auto;
  width: 80vw;
  text-align: center;
}

.template_text {
  color: #ffffff;
  font-size: 2em;
  margin-top: 40px;
  margin-bottom: 40px;
  width: fit-content;
  border-bottom-width: 3px;
  border-bottom-style: solid;
  border-image-source: linear-gradient(90deg, #0d3e30, #48922b, #0d3e30);
  border-image-slice: 1;
}

.template_text {
  margin: 0 auto;
  font-size: 2.3em;
}

.template2_content {
  margin:2em 10vw 100px 10vw;
  width: 80vw;
}

.terms_text {
  font-size: 1.1em;
  margin: 1em 0;
}

.terms_text_sub {
  margin: 1em 20px;
}

.terms_text_sub2 {
  margin: 1em 20px 1em 40px;
}

.terms_company {
  width: fit-content;
  margin: 1em 20px 1em auto;
}

.font_weight {
  font-size: 1.5em;
  font-weight: 400;
}

th,
td {
  border-top: solid 1px #c7c7c7; /* 枠線指定 */
  border-bottom: solid 1px #c7c7c7;
}

table {
  border-collapse: collapse; /* セルの線を重ねる */
  width: 100%; /* 幅指定 */
}

th {
  width: 15vw; /* 幅指定 */
  text-align: left; /* 文字の揃え位置指定 */
  border-right: solid 1px #c7c7c7;
  padding: 10px 5px 10px 15px;
}

td {
  text-align: center; /* 文字の揃え位置指定 */
  padding: 5px;
  background-color: #f1f1f1;
}

.pastresult td{
  border-right: solid 1px #c7c7c7;
  border-left: solid 1px #c7c7c7;
}

.nextresult td{
  background-color: #ffffff;
  border:solid 1px #48922b;
  padding: 10px;
  font-size: 1.1em;
  font-weight: bold;
}


.news_list{
  padding-top: 50px;
}

.sub_list{
  margin-left: 30px;
  list-style-type: none;
  font-size: 0.95em;
  margin-bottom: 3px;
}

.table_title{
  margin-top: 3em;
  font-size: 1.1em;
}

.template_content_sub{
  display: flex;
}

.original_button{
  margin-top: 3vw;
  font-size: 0.9em  !important;
  padding-bottom: 0px !important;
}

.original_img{
  margin: auto;
}

.original_font{
  font-size: 1.1em;
  padding-bottom: 30px;
}

.past_img{
  display: flex;
}

.past_imgs{
  width: 50%;
  padding: 5px;
}

.original_container th{
  text-align: center;
  border:solid 1px #48922b;
  padding: 10px;
  font-size: 1.1em;
  font-weight: bold;
  white-space: nowrap;
}

.original_container th:first-child{
  min-width: 17vw;
}

.original_container th:nth-child(2),
.original_container th:nth-child(4){
  width: 10%;
}
.original_container th:nth-child(3){
  min-width: 36vw;
}


.original_container td{
  font-weight: normal;
  white-space: nowrap;
}

.closed { 
  color:#999;  
}

.original_container a{
  color: #000;
  text-decoration: none;
  border-bottom-width: 3px;
  border-bottom: solid 1px#48922b;
  transition: all 0.4s;
}

.original_container a:hover{
  color: #48922b;
  border-bottom-style: solid;
  border-image-source: linear-gradient(90deg, #ffffff, #48922b, #ffffff);
  border-image-slice: 1;
}

.news_page{
  display: flex;
  flex-flow: column;
  border-width: 5px;
  border-style: solid;
  border-image-source: linear-gradient(60deg, #48922b, #ffffff, #48922b);
  border-image-slice: 1;
}

.news_page li{
  border-image-source:  linear-gradient(90deg, #ffffff, #ffffff, #ffffff);
}

.news_page li:hover{
  border-image-source:  linear-gradient(90deg, #ffffff, #48922b, #ffffff);
}

.news_page_list{
  margin: 2em auto;
}

.news_page_list .day,
.news_page_list .text{
  color: #000;
}

.page{
  color: #dfdfdf;
  margin: auto auto;
  padding-bottom: 2em;
}

.page *{
  margin: 0 20px;
  font-size: 1.2em;
}

.page a{
  color: #000000;
  text-decoration: none;
}

.news_content_detail{
  margin-top: 2em;
  padding-top: 80px;
  padding-bottom: 80px;
  max-width: 1500px;
}

.news_content_detail *{
  max-width: 1500px;
}

.news_content_text{
  padding-top: 1em;
}



@media screen and (max-width: 700px) {
  * {
    font-size: 0.99em;
  }

  
  .template_text {
    font-size: 1.5em;
  }
  .template_content {
    width: 90vw;
  }

  .template2_content {
    margin: 1em auto;
    width: 96vw;
    overflow: hidden;
  }

  .template2_content ul{
    width: 80vw;
  }

  .nextresult td{
    padding: 7px;
    font-size: 1em;
  }
  
  .template_content_sub{
    flex-wrap: wrap;
    justify-content: center;
    width: 83vw;
    margin: 20px auto;
  }

  .page *{
    margin: 0 15px;
    font-size: 1.0em;
  }
}
