@charset "UTF-8";
/* CSS Document */
/* --------------------------------------------------------------


                      production


-----------------------------------------------------------------*/
html, body {
   height: 100%;
}
html {
   background: url(../img/dt-2023/bg.png) center center;
}
body {
   background: url(../img/dt-2023/bg-kirakira.png) no-repeat top center;
   color: #3b3b3b;
   font-family: "ヒラギノ角ゴシック", "Hiragino Kaku Gothic", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.color-yellow {
	color: #ffd200;
	}

.color-blue {
	color: #58c5f2;
	}

.button-behavior {
	display: block;
	opacity: 1;
	transform: scale(1);
	transition: opacity 0.15s ease-out,transform 0.2s;
	cursor: pointer;
}

.button-behavior:hover {
	opacity: 0.9;
	transform: scale(1.1);
	cursor: pointer;
}

.main {
   /*position: absolute;*/
   /*top: 63%;*/
   /*left: 50%;*/
   /*transform: translate(-50%, -50%);*/
   /*width: 50%;
   height: 910px;*/
   /*background: url(../img/dt-2023/main.png) no-repeat center center;*/
   margin: 5% auto;
   width: 100%;
   max-width: 900px;
}

.main .summary {
   margin: auto;
   width: 100%;
}

  .main h2 {
      margin-top: 6em;
   }
   
.production .block-ranking {
/* 	background: url(../img/dt-2023/bnr-ranking-kirakira.png) no-repeat center top; */
	background-position-y: 18px;
	background-color: #ffef7e;
	border-bottom: solid #ffe100 5px;
	text-align: center;
	padding: 45px 0 45px;
/* 	margin-bottom: 96px; */
	
}

.production .block-ranking img{
  width:80%;
  max-width:410px;
}

.production .block-ranking .bnr-rkg {
	margin: auto;
}

.production .tp-main-img {
	position: relative;
}

.production .tp-main-img .btn {
	position: absolute;
	top: 420px;
	right: 120px;
}

.production .tp-main-img .btn img {
	width: 123px;
}

.sns {
   width: 910px;
   margin: auto;
}

.block-sns {
   width: 181px;
   height: 110px;
   position: absolute;
   top: 560px;
   background: url(../img/dt-2021/sns-icon-bg.png) no-repeat center center;
   display: -webkit-flex;
   display: -ms-flexbox;
   display: flex;
   -webkit-flex-wrap: wrap;
   -ms-flex-flow: row wrap;
   flex-wrap: wrap;
   -ms-flex-pack: center;
   -webkit-justify-content: center;
   justify-content: center;
   flex-wrap: wrap;
   z-index: 10;
}

.sns-box {
   display: block;
   margin: 4% 6% 0;
}

.sns-box img {
	width: auto;
	height: 29px;
}

.sns-box-tw {
   display: block;
   margin: 4% 4% 0;
}

.block-sns h1 {
   margin: 1.57407407407407vw auto 0;
   width: 16.3888888888889vw;
   text-align: center;
}

.nav-vote {
	text-align: center;
	}

.nav-vote {
	max-width: 528px;
	margin: 50px auto 0;
	text-align: center;
	}

.nav-vote .heading img {
	width: 100%;
	margin: 0 auto;
	}


.nav-vote .caption {
	width: 488px;
	margin: 58px auto 20px;
	text-align: center;
	}

.nav-vote .caption img {
	margin: 0 auto;
	}

.nav-vote a:hover img {
	cursor: pointer;
	}

.nav-vote .flex {
	display: flex;
	width: 488px;
	margin: 0 auto;
   justify-content: space-between;
	}

.tohyo {
   max-width: 50%;
   margin: auto;
   text-align: center;
   width: 100%;
}
.about {
   margin-top: 0;
   padding-top: 60px;
   padding-bottom: 150px;
   text-align: center;
/*    background: url(../img/dt-2023/about-kirakira.png) no-repeat top center; */
}
.about-txt {
   margin-top: 86px;
   margin-bottom: 100px;
   font-size: 24px;
   line-height: 2.6;
   letter-spacing: 0.1em;
}

.about .award {
}

.about .award .heading {
	margin: 0 0 47px;
}

.about .award .heading img {
	max-width: 536px;
	width: 80%;
	height: auto;
}

.about .award .btn-group {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 785px;
	width: 90%;
	margin: 0 auto;
}

.about .award .btn-group p.btn {
	width: 45.9%;
	margin-bottom: 30px;
}

.about .award .btn-group img.btn {
	max-width: 342px;
}

.topics {
   width: 100%;
   background-color: #fdfabe;
   padding-top: 100px;
   padding-bottom: 120px;
   display: inline-block;
}
.topics iframe{
margin: auto;
margin-bottom: 2em;
}
.block-topics {
   max-width: 980px;
   width: 100%;
   margin: auto;
   font-size: 18px;
   line-height: 1.6;
}
.block-topics h1 {
   margin-bottom: 100px;
}
.wrap-topics {
   display: -webkit-flex;
   display: -ms-flexbox;
   display: flex;
   -webkit-flex-wrap: wrap;
   -ms-flex-flow: row wrap;
   flex-wrap: wrap;
   flex-wrap: wrap;
}
.pickup {
   max-width: 46%;
   width: 100%;
   /* background: url(../img/dt-2023/topics-pickup-bg.png) no-repeat; */
   border: 4px solid #e60012;
   border-radius: 10px;
   background-color: #fff;
}
.news {
   max-width: 740px;
   width: 90%;
   margin: 150px auto 0;
}

.news .heading {
	margin: 0 0 2em;
}

.news .heading img {
	width: 97px;
}

.news article {
	margin: 0 0 2em;
	font-size: 18px;
	line-height: 1.8;
}

.news article .heading {
	display: block;
	margin: 0 0 0.6em;
	font-weight: 600;
}

.news .overlay-trigger {
	text-decoration: underline;
}


.news .now-wanted {
	margin-top: 4.4em;
}

.news .now-wanted img {
	width: 240px;
}

.topics .block-topics .wrap-topics .ttl {
   width: 100%;
   max-width: 175px;
}
/*.pickup h2 ,
.news h2{
   padding: 5px 0 0 30px;
}*/
.topics .block-topics .wrap-topics .topics-item .topics-main-title {
   margin-bottom: 23px;
   font-size: 20px;
   font-weight: bold;
   line-height: 1.85;
   letter-spacing: 0.05em;
}
.topics .block-topics .wrap-topics .topics-item .topics-main-text {
   letter-spacing: 0.1em;
   text-align: justify;
}

.topics-event{
margin: auto;
}

.topics-event .topics-main-title {
   margin-bottom: 23px;
   font-size: 20px;
   font-weight: bold;
   line-height: 1.85;
   letter-spacing: 0.05em;
}
.topics-event .block-topics .wrap-topics .topics-item .topics-main-text {
   letter-spacing: 0.1em;
   text-align: justify;
}


.check-sns {
   width: 100%;
   margin: 0 auto 0;
   padding: 100px 0;
   background: #fdfabe;
   text-align: center;
}

.check-sns .content {
   max-width: 900px;
   width: 90%;
   height: 420px;
   margin: 0 auto 0;
   background: url(../img/dt-2023/sns-images.png) no-repeat right bottom;
   background-size: 302px auto;
}

.check-sns-wrap {
   display: -webkit-flex;
   display: -ms-flexbox;
   display: flex;
   -webkit-flex-wrap: wrap;
   -ms-flex-flow: row wrap;
   flex-wrap: wrap;
   flex-wrap: wrap;
   -ms-flex-pack: flex-start;
   -webkit-justify-content: flex-start;
   justify-content: flex-start;
   margin-top: 50px;
}

.check-sns h1 {
   display: inline-block;
}

.check-sns .check-sns-box {
	margin: 0 25px 0 0;
}

.check-sns .check-sns-box img {
	max-width: 155px;
	width: 100%;
}

.warning-note {
   text-align: right;
   margin-top: 45px;
}
.rule-polling {
	margin-top: 120px;
	padding-bottom: 58px;
	background-color: #fff;
}
.rule-polling h1 {
   margin-bottom: 65px;
   padding: 13px 0 18px;
   text-align: center;
   background-color: #e60012;
}
.poll-catch-me {
   margin-bottom: 40px;
   text-align: center;
}
.rule-polling .ttl {
   width: 100%;
   text-align: center;
   /*max-width: 169px;*/
}
.poll-catch {
   margin-bottom: 60px;
   max-width: 100%;
}
.wrap-rule {
   display: -webkit-flex;
   display: -ms-flexbox;
   display: flex;
   -webkit-flex-wrap: wrap;
   -ms-flex-flow: row wrap;
   flex-wrap: wrap;
   -ms-flex-pack: flex-start;
   -webkit-justify-content: flex-start;
   justify-content: flex-start;
   flex-wrap: wrap;
   max-width: 600px;
   width: 100%;
   margin: 0 auto 0;
   padding: 68px 20px 0;
}
.box-rule {
   font-size: 24px;
   line-height: 2.2;
   letter-spacing: 0.15em;
}

.box-rule a {
	font-weight: 600;
}
.box-rule-image {
   margin: 0 0 0 auto;
}
.poll-me {
   background-color: #ffef7e;
}
.block-poll-ttl {
   background-color: #ffe100;
}
.poll-me h1 {
   max-width: 620px;
   width: 100%;
   margin: auto;
   padding: 23px 0;
}
.poll-me-contents {
   width: 100%;
   margin: auto;
   padding: 70px 0 70px 0;
   font-size: 21px;
   line-height: 2.2;
   letter-spacing: 0.15em;
   max-width: 980px;
}
.poll-me-contents .poll-img {
   max-width: 813px;
   width: 100%;
   margin: 0 auto 50px;
}

.poll-me-contents .center .note {
	max-width: 740px;
	width: 90%;
	margin: 0 auto 50px;
	font-size: 17px;
	text-align: left;
	letter-spacing: 0;
}


.poll-me-contents .block-bordered {
   width: 90%;
   margin: 0 auto;
   padding: 68px 0 68px;
   text-align: center;
   border: 6px solid #ffe100;
   border-radius: 26px;
   background-color: #fff;
}

.poll-me-contents h2 {
   width: 100%;
   margin-bottom: 50px;
}

.poll-me-contents h2 img {
	max-width: 618px;
}
.wrap-poll {
   display: -webkit-flex;
   display: -ms-flexbox;
   display: flex;
   -webkit-flex-wrap: wrap;
   -ms-flex-flow: row wrap;
   flex-wrap: wrap;
   -ms-flex-pack: flex-start;
   -webkit-justify-content: flex-start;
   justify-content: flex-start;
   flex-wrap: wrap;
}
.box-poll {
   max-width: 740px;
   width: 90%;
   margin: 0 auto 0 auto;
   font-size: 24px;
   letter-spacing: 0.05em;
   line-height: 2;
   text-align: justify;
}

.poll-catch {
	display: block;
	margin: 50px auto 56px;
}

.box-poll .note {
	font-size: 17px;
}
.box-poll-image {
   width: 48%;
   text-align: center;
   margin: 0 auto 0;
}
.vote {
   background-color: #fff;
   border-top: 4px solid #fff;
   position: relative;
}
.vote-contents {
   max-width: 900px;
   width: 100%;
   margin: 70px auto 0;
}
.vote h1 .ttl {
    position: absolute;
    top: -73px;
     max-width: 684px; 
    width: 100%;
    margin: 0 8%;
}
.vote .vote-contents .block-ttl {
   max-width: 980px;
   width: 100%;
}
.wrap-vote {
   display: -webkit-flex;
   display: -ms-flexbox;
   display: flex;
   -webkit-flex-wrap: wrap;
   -ms-flex-flow: row wrap;
   flex-wrap: wrap;
   -ms-flex-pack: flex-start;
   -webkit-justify-content: flex-start;
   justify-content: flex-start;
   flex-wrap: wrap;
   padding-bottom: 0;
}

.wrap-vote a {
	display: block;
	margin: 0 auto 1em;
}
.btn-web {
   width: 47%;
   margin: 0 auto 0 0;
   padding: 35px 0 20px;
   background-color: #e60012;
   text-align: center;
   border-radius: 20px;
}
.btn-paper {
   width: 47%;
   margin: 0 0 0 auto;
   padding: 24px 0 20px;
   background-color: #ff7398;
   text-align: center;
   border-radius: 20px;
}
.btn-application {
   width: 100%;
   margin-top: 50px;
   padding: 25px 0 30px;
   background-color: #fff;
   border: 2px solid #0068b7;
   text-align: center;
   border-radius: 20px;
}
.result {
   width: 100%;
   height: 542px;
   background: url(../img/dt-2023/result-announcement1.png) no-repeat center center;
   background-size: 562px auto;
   background-color: #ffffff;
   margin: 0 auto 0;
}

.result-2 {
	display: flex;
	justify-content: center;
	align-content: center;
	width: 100%;
	height: 536px;
	background-color: #ffffff;
	border-top: 3px solid #ffef7e;
	border-bottom: 3px solid #ffef7e;
	margin: 0 auto 0;
}

.result-2:after {
	content: '';
	display: block;
	max-width: 740px;
	width: 100%;
	height: 536px;
	background: url(../img/dt-2023/result-announcement2.png) no-repeat center center;
	background-size: 100% auto;
	margin: 0;
}

.result-2 * {
   display: none;
}
.result-pattern {
   width: 100%;
   /* height: 540px; */
   /* background: url(../img/dt-2023/result-announcement2.png) no-repeat center center; */
   background-color: #ffef7e;
   margin: 0 auto 140px;
   padding: 48px 0;
}
.result-pattern .summary {
   margin: auto;
   width: 100%
}
.group {
   background-color: #e4f3f9;
}
.block-group-ttl {
   background-color: #a7ddf3;
}
.block-group-ttl .ttl {
   max-width: 682px;
   width: 100%;
   margin: auto;
}
.group h1 {
   margin: auto;
   padding: 23px 20px 14px;
   text-align: center;
}
.group-contents {
   max-width: 740px;
   margin: auto;
   padding: 70px 20px 100px;
   font-size: 18px;
   line-height: 1.8;
   letter-spacing: 0.05em;
}
.group-contents h2 {
   text-align: center;
   border-radius: 10px;
   font-size: 22px;
   font-weight: bold;
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
}
.group-txt {
   width: 100%;
   margin: 0 auto 60px auto;
   text-align: justify;
   line-height: 1.8;
}
.present {
	max-width: 100%;
	margin: 0 auto 0;
	font-weight: normal;
	letter-spacing: 0.05em;
	font-size: 18px;
	line-height: 1.8;
	margin-bottom: 0;
}

.present .center.mt30.mb30 img {
	max-width: 426px;
	width: 90%;
	margin: 0 auto;
}
.present h3 {
   font-weight: bold;
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
}

.present .present-text {
   margin-bottom: 1em;
   font-size: 100%;
   letter-spacing: 0;
}

.present .present-attention {
   font-size: 77%;
   text-align: right;
}

.block-btn-group {
	display: flex;
	/*flex-wrap: wrap;*/
	justify-content: space-between;
	margin: 80px 0 0;
}

   .btn-pdf, .brn-application {
      box-shadow: 0px 3px 4px -2px rgba(0,0,0,0.3);
   }

.btn-pdf .btn-dl-txt {
      max-width: 230px;
   width: 100%;
   }

.brn-application .btn-dl-txt {
      max-width: 73px;
      width: 100%;
   }

.btn-pdf {
   max-width: 44%;
   width: 100%;
   margin: 3% 3% 3% 0;
   padding: 15px 0 10px;
   background-color: #fff;
   border: 1px solid #4b4b4b;
   border-radius: 10px;
   text-align: center;
   opacity: 1;
}

.btn-pdf.closed {
   max-width: 44%;
   width: 100%;
   margin: 3% 3% 3% 0;
   padding: 0;
   border: none;
   border-radius: 0;
   background: none;
   box-shadow: none;
   text-align: center;
   opacity: 0.5;
}

.btn-pdf.closed .btn {
	display: block;
	width: 100%;
	padding: 15px 0 10px;
	background-color: #fff;
	border: 1px solid #4b4b4b;
	border-radius: 10px;
	box-shadow: 0px 3px 4px -2px rgba(0,0,0,0.3);
	text-align: center;
	opacity: 0.5;
}

.btn-pdf.closed .caption {
	font-size: 65%;
	text-align: center;
}


.brn-application {
   max-width: 44%;
   width: 100%;
   margin: 3% 0 3% 3%;
   text-align: center;
   box-shadow: none;
}

.brn-application a {
	display: block;
	width: 100%;
	padding: 15px 0 10px;
	background-color: #fff;
	border: 1px solid #4b4b4b;
	border-radius: 10px;
	box-shadow: 0px 3px 4px -2px rgba(0,0,0,0.3);
	text-align: center;
}


.poster {
   max-width: 735px;
   width: 100%;
   margin: auto;
   padding: 120px 0;
   text-align: center;
}
.poster-txt {
   font-size: 18px;
   letter-spacing: 0.05em;
   line-height: 1.8;
}
.poster .wrap-dl .btn-dl .shop {
   max-width: 144px;
   width: 100%;
   margin: auto;
}
.poster .wrap-dl .btn-dl .group {
   max-width: 200px;
   width: 100%;
   margin: auto;
   background: none;
}
.poster .ttl {
   margin: 0 auto 70px;
   max-width: 450px;
   width: 100%;
}
.wrap-dl {
   display: -webkit-flex;
   display: -ms-flexbox;
   display: flex;
   -webkit-flex-wrap: wrap;
   -ms-flex-flow: row wrap;
   flex-wrap: wrap;
   -ms-flex-pack: center;
   -webkit-justify-content: center;
   justify-content: center;
   flex-wrap: wrap;
}

.box-dl {
   width: 38%;
   margin: 6% 6% 0;
}

.box-dl dt img {
	width: 166px;
}
.btn-dl {
	max-width: 100%;
   text-align: center;
   margin-top: 30px;
}
.btn-dl a {
   display: block;
}
.wrap-pick-pu, .wrap-news {
   padding: 30px 18px;
}
.topics-text {
   letter-spacing: 0.05em;
   line-height: 1.6;
   text-align: justify;
}
.about .btn {
   width: 100%;
   max-width: 420px;
   margin: auto;
}
.about .btn .bnt-1st-event {
   width: 100%;
}
.check-sns .check-sns-ttl-img {
   width: 100%;
   margin: auto;
}

@media screen and (max-width: 900px) {
	.check-sns .content {
	   width: 90%;
	   height: 600px;
	   margin: 0 auto 0;
	   background: url(../img/dt-2023/sns-images.png) no-repeat right bottom;
	   background-size: 302px auto;
	}

	.block-sns {
	   width: 20.1111111111111vw;
	   height: 12.2222222222222vw;
	   position: absolute;
/* 	   top: 53.111111111vw; */
    top: 110.222222222vw;
	   background-size: 20.1111111111111vw auto;
	   z-index: 10;
	}
	
	.sns-box {
	   display: block;
	   margin: 4% 6% 0;
	}
	
	.sns-box img {
		width: auto;
		height: 3.22222222222222vw;
	}

	.production .tp-main-img .btn {
		top: 47vw;
		right: 13.3333333333333vw;
	}

	.production .tp-main-img .btn img {
		width: 13.6666666666667vw;
	}

}

@media screen and (max-width: 800px) {


   .topics .check-sns {
       width: 80%;
       margin: 0 auto 50px;
       padding-top: 0 !important;
   }
   /*.check-sns {
       width: 100%;
       margin: 0 auto 50px;
       padding: 100px 0 198px;
       text-align: center;
       background: url(../img/dt-2023/sns-images.png) no-repeat left bottom;
       background-size: 90% auto;
   }*/

}
@media screen and (max-width:846px) {
   .block-sns {
	   /*top: 582px;*/
   }
}
@media only screen and (max-width:768px) {
   .topics .check-sns {
       margin-bottom: 100px;
   }
   .vote h1 .ttl {
       position: absolute;
       top: -73px;
        max-width: 684px; 
       width: 100%;
       margin: 0 auto;
   }
}
@media screen and (max-width:767px) {
   .block-sns {
	   /*top: 582px;*/
   }

}
@media screen and (max-width:687px) {
   .block-sns {
	   /*top: 582px;*/
   }
}
@media screen and (max-width:670px) {
   .block-sns {
	   /*top: 582px;*/
   }
}
@media screen and (max-width:630px) {
   .block-sns {
	   /*top: 582px;*/
   }
}

@media screen and (max-width:599px) {
	.topics iframe{
		width: 100%;
	}

   html, body, div { /*height: 100%;*/ background: none;
   }
   /*body {
      background: url(../img/sp-2023/bg.png);
      background-size: 7%;
   }*/
   .bg-kirakira {
      background: none;
   }
   .box-rule-image img {
      width: 80%;
   }
   .main {
      width: 100%;
      height: auto;
      background-image: none;
      margin: 0;
      position: relative;
   }

.main .summary {
   margin: auto;
   width: 100%;
}

   .main * {
      display: block;
   }
   .main img {
      width: 100%;
   }
   .main h2 {
      margin-top: 4em;
   }
   .production .block-ranking {
		background-image:none;
		padding: 20px 0;
		margin-bottom: 0;
		
	}
	.production .block-ranking .bnr-rkg {
		margin: auto;
	}
	.main .tp-main-img {
		width: 90%;
		margin: auto;
		padding-top: 30px;
	}


.production .tp-main-img {
	position: relative;
}

.production .tp-main-img .btn {
	position: absolute;
	top: 102vw;
	right: -1vw;
}

.production .tp-main-img .btn img {
	width: 19.6666666666667vw;
}


.nav-vote {
	max-width: 100%;
	width: 100%;
	margin: 50px 0 0;
	text-align: center;
	}

.nav-vote .heading img {
	max-width: 90%;
	width: 90%;
	margin: 0 auto;
	}

.nav-vote .caption {
	max-width: 491px;
	width: 90%;
	margin: 58px auto 30px;
	text-align: center;
	}

.nav-vote .caption img {
	width: 100%;
	margin: 0 auto;
	}

.nav-vote a img {
	max-width: 232px;
	width: 90%;
	margin: 0 auto;
	}

.nav-vote a:hover img {
	cursor: pointer;
	}

.nav-vote .flex {
	display: flex;
	max-width: 491px;
	width: 100%;
	margin: 0 auto;
   justify-content: space-between;
	}

   .block-sns {
      width: 31.5625vw;
      height: 19.375vw;
      position: absolute;
      top: 0;
      right: 0;
      background: url(../img/sp-2023/sns-icon-bg.png) no-repeat right top;
      background-size: 31.5625vw auto;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
      -ms-flex-flow: row wrap;
      flex-wrap: wrap;
      -ms-flex-pack: center;
      -webkit-justify-content: center;
      justify-content: center;
      flex-wrap: wrap;

   }
   .block-sns h1 {
      width: 100%;
      margin: 1.66666666666667vw auto 0;
      height: 3.33333333333333vw;
   }
   .block-sns h1 img {
		width: 13.8333333333333vw;
		position: relative;
		top: 0.5vw;
		margin: auto;
   }

   .sns-box {
      display: block;
      margin: 0px 1.33333333333333vw 0 3vw;
      height: auto;
   }
   .sns-box img {
      width: auto;
      height: 5.83333333333333vw;
   }
   .tohyo .btn {
      width: 100%;
   }
   .about {
      margin-top: 0px;
      padding-top: 120px;
      padding-bottom: 60px;
      text-align: center;
/*       background: url(../img/sp-2023/about-kirakira.png) no-repeat center; */
      background-size: contain;
      width: 94%;
      margin: auto;
      background-position: 0 10px, center;
   }
   .about h1 img {
      width: 90%;
   }
   .about-txt {
      margin: 50px auto 100px;
      font-size: 5vw;
      line-height: 2.9;
      letter-spacing: 0.09em;
   }
   .about .btn {
	max-width: 90%;
      width: 100%;
      margin: auto;
   }
   .about .btn .bnt-1st-event {
      width: 100%;
   }

.about .award {
}

.about .award .heading {
	margin: 0 0 47px;
}

.about .award .heading img {
	width: 100%;
	height: auto;
}

.about .award .btn-group {
	display: block;
	max-width: 100%;
	width: 100%;
	margin: 0 auto;
}

.about .award .btn-group p.btn {
	width: 100%;
	margin-bottom: 5px;
}

.about .award .btn-group img.btn {
	max-width: 100%;
	width: 100%;
	height: auto;
}

   .block-topics h1 img {
      width: 100%;
   }
   .pickup h2 img {
      width: 100%;
   }

.news {
      max-width: 100%;
      background-size: 100%;
      margin: 100px auto 100px;
   }

.news h2 img {
      width: 100%;
   }
   .news h1 img {
      width: 100px;
   }
   .block-topics {
      width: 90%;
      margin: auto;
      font-size: 18px;
      line-height: 1.6;
   }
   .pickup {
      max-width: 100%;
      background-size: 100%;
      margin-bottom: 35px;
      border: 2px solid #e60012;
   }
   .topics-text {
      font-size: 14px;
      letter-spacing: 0.05em;
      line-height: 1.6;
      text-align: justify;
   }

.news .heading {
	margin: 0 0 1.5em;
}

.news .heading img {
	width: 16.1666666666667vw;
}

.news article {
	margin: 0 0 2em;
	font-size: 4.16666666666667vw;
	line-height: 1.8;
	text-align: left;
}

   .wrap-topics {
      display: block;
   }
   .block-topics h1 {
      margin-bottom: 50px;
   }
   .topics-txt {
      padding: 20px 25px 0;
      font-size: 14px;
      letter-spacing: 0.05em;
   }
   .pickup h3, .news h3 {
      margin-bottom: 20px;
      font-weight: bold;
      line-height: 1.85;
      letter-spacing: 0.05em;
   }
   .topics {
      padding-bottom: 90px;
   }

   .topics .block-topics .wrap-topics .topics-item .topics-main-title{
      font-size: 15px;
      margin-bottom: 20px;
   }
   .topics .block-topics .wrap-topics .topics-item .topics-main-text{
      font-size: 14px;
   }

    .topics-event .topics-main-title{
    font-size: 15px;
    margin-bottom: 20px;
 }
 .topics-event .topics-main-text{
    font-size: 14px;
 }
.news .now-wanted {
	margin-top: 6em;
}

.news .now-wanted img {
	width: 49.7142857%;
}

.check-sns {
    width: 100%;
    margin: 0 auto 0;
    padding: 16.6666666666667vw 0 61.3333333333333vw;
    text-align: center;
    background: #fdfabe url(../img/sp-2023/sns-images.png) no-repeat right bottom;
    background-size: 70% auto;
    border-bottom: 40px solid #fdfabe;
}

.check-sns .content {
   max-width: 533px;
   width: 90%;
   height: auto;
   margin: 0 auto 0;
   background: none;
   background-size: 302px auto;
}

.check-sns-wrap {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
      -ms-flex-flow: row wrap;
      flex-wrap: wrap;
      flex-wrap: wrap;
      -ms-flex-pack: center;
      -webkit-justify-content: center;
      justify-content: center;
      margin-top: 50px;
   }

.check-sns-wrap {
   display: -webkit-flex;
   display: -ms-flexbox;
   display: flex;
   -webkit-flex-wrap: wrap;
   -ms-flex-flow: row wrap;
   flex-wrap: wrap;
   flex-wrap: wrap;
   -ms-flex-pack: space-between;
   -webkit-justify-content: space-between;
   justify-content: space-between;
   margin-top: 50px;
}

   .check-sns-box, .check-sns-box {
      width: 29%;
      margin: 2%;
   }

	.check-sns .check-sns-box {
		margin: 0 0 0 0;
	}

   .check-sns-box img, .check-sns-box img {
      width: 100%;
   }
   .check-sns .block-ttl-h1 {
      width: 100%;
      height: 130px;
      margin: 0 auto 20px;
      background: url(../img/sp-2023/sns-catch.png) no-repeat top center;
      background-size: 87%;
   }
   .rule-polling {
	margin-top: 100px;
	padding-bottom: 44px;
   }
   .rule-polling h1 {
      margin-bottom: 35px;
      padding: 8px 0 0;
   }
   .rule-polling h1 img {
      width: 100%;
   }
   .poll-catch-me .wrap-rule {
      width: 100%;
      display: block;
   }

.rule-polling h2 img {
      display: inline;
      width: 100%;
   }
   .wrap-rule {
		display: block;
		width: 90%;
		margin-top: 0;
		padding: 20px 20px 0;
		text-align: center;
   }
   .box-rule {
      font-size: 5vw;
      line-height: 2;
      letter-spacing: 0.05em;
      margin: 32px 0;
   }
   .block-poll-ttl{
      /*padding-bottom: 8px;*/
   }
   .block-poll-ttl h1 img {
      width: 100%;
   }
   .poll-me h1 {
      width: 100%;
      padding-top: 5px;
      padding-bottom: 0;
   }
   .poll-me-contents {
      width: 94%;
      margin: auto;
      padding-bottom: 0;
      padding-top: 40px;
      font-size: 17px;
      letter-spacing: 0.2em;
      text-align: justify;
      line-height: 2.4;
   }
   .poll-me-contents img {
      width: auto;
   }
   .poll-me-contents h2 {
      width: auto;
      padding: 0;
      text-align: center;
      margin-bottom: 34px;
   }
   .poll-me-contents h2 img {
      max-width: 100%;
      width: 90%;
      margin: 0 auto;
   }
   .poll-me-contents .poll-img {
	max-width: 480px;
	width: 90%;
      margin: 0 auto 40px;
   }

.poll-me-contents .center .note {
	width: 90%;
	margin: 0 auto 40px;
	text-align: left;
	font-size: 3.33333333333333vw;
	line-height: 1.6;
   }
   .box-poll-image {
      width: auto;
      margin-bottom: 20px;
   }

.poll-me-contents .block-bordered {
   padding: 9vw 0 9vw;
   border: 1vw solid #ffe100;
   border-radius: 26px;
   background-color: #fff;
}


.poll-me-contents .block-bordered h2 {
   margin-bottom: 30px;
}

.poll-me-contents .block-bordered h2 img {
	width: 60.5vw;
}

.wrap-poll {
   display: block;
}
.box-poll {
   max-width: 480px;
   width: 86%;
   margin: 0 auto 0 auto;
   font-size: 4vw;
   letter-spacing: 0.05em;
   line-height: 2;
   text-align: justify;
}

.poll-catch {
	display: block;
	margin: 8.33333333333333vw auto 8.33333333333333vw;
}

.box-poll .note {
	font-size: 3.33333333333333vw;
	line-height: 1.6;
}


   .vote-contents {
      width: 100%;
      margin: 60px auto 0;
   }
   .vote-contents h1 img {
      width: 90%;
      margin: auto;
   }
   .btn-web {
      width: 90%;
      margin: 10px auto;
   }
   .btn-paper {
      width: 90%;
      margin: 10px auto;
   }
   .vote-contents h1 {
      width: 100%;
   }
   .btn-application {
      width: 88%;
      margin: 10px auto;
      padding: 14px 0 8px;
   }
   .btn-application img {
      width: 90%;
   }
   .btn-web img {
      width: 50%;
   }
   .btn-paper img {
      width: 38%;
   }

   .wrap-vote {
      padding-bottom: 50px;
   }

.wrap-vote img {
	width: 100%;
   }

   .btn-web {
      padding: 28px 0 26px;
   }
   .result {
      width: 100%;
      height: 110vw;
      background: #ffffff url(../img/sp-2023/result-announcement1.png) no-repeat center center;
      background-size: 90% auto;
      margin: 0 auto 0;
   }

.result-2 {
	overflow: hidden;
	width: 100%;
	height: 110vw;
	background-color: #ffffff;
	border-top: 3px solid #ffef7e;
	border-bottom: 3px solid #ffef7e;
	margin: 0;
}

.result-2:after {
	content: '';
	display: block;
	max-width: 100%;
	width: 87.6666667%;
	height: auto;
	background: url(../img/sp-2023/result-announcement2.png) no-repeat center center;
	background-size: 100% auto;
	margin: 0;
}

.result-2 * {
   display: none;
}

   .group-contents {
      width: 90%;
      padding: 50px 0 40px 0;
      font-size: 14px;
      line-height: 1.8;
   }
   .group h1 img {
      width: 100%;
      /*display: block;*/
   }
   .group h1 {
      margin: auto;
      padding: 0px 0 0;
      text-align: center;
   }
   .present img {
      width: 100%;
   }
   .group-txt {
      width: 100%;
      margin: 0 auto 50px 0;
      font-size: 3.5vw;
      text-align: justify;
   }
   .group-contents h2 {
      font-size: 4.33333333333333vw;
   }
   .present {
      font-weight: normal;
      letter-spacing: 0.04em;
      font-size: 3.66666666666667vw;
      line-height: 1.8;
      margin-bottom: 60px;
   }

.present .present-attention {
   font-size: 77%;
   text-align: left;
}

   .btn-pdf, .brn-application {
      max-width: 100%;
      margin: 20px 0 0 0;
      padding: 14px 0 10px;
   }

.btn-pdf a, .brn-application a {
      /*box-shadow: 0px 3px 5px -3px rgba(0,0,0,0.3);*/
   }

.btn-pdf.closed {
   width: 100%;
   max-width: 100%;
      margin: 20px 0 0 0;
   padding: 0;
   border: none;
   border-radius: 0;
   background: none;
   box-shadow: none;
   text-align: center;
   opacity: 0.5;
}

.btn-pdf.closed .btn {
	display: block;
	width: 100%;
      padding: 14px 0 10px;
	background-color: #fff;
	border: 1px solid #4b4b4b;
	border-radius: 10px;
      box-shadow: 0px 3px 5px -3px rgba(0,0,0,0.3);
	text-align: center;
	opacity: 0.5;
}

.btn-pdf.closed .caption {
	font-size: 65%;
	text-align: center;
}


   .btn-pdf img.btn-dl-txt {
	max-width: 100%;
      width: 59.8333333333333vw;
      height: auto;
   }
   .brn-application img.btn-dl-txt {
	max-width: 100%;
      width: 19vw;
      height: auto;
   }

   .poster {
      width: 90%;
      margin: auto;
      padding: 100px 0 60px;
      text-align: center;
   }

.poster-txt .row {
	display: block;
}

   .poster h1 img {
      width: 100%;
   }

   .poster-txt {
      font-size: 3.66666666666667vw;
      letter-spacing: 0.05em;
      line-height: 1.8;
   }

   .poster .wrap-dl .btn-dl .shop {
      width: 80px;
      margin: auto;
   }
   .poster .wrap-dl .btn-dl .group {
      width: 110px;
      margin: auto;
      background: none;
   }
   .poster .ttl {
      margin: 0 auto 35px;
   }
   .wrap-dl {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
      -ms-flex-flow: row wrap;
      flex-wrap: wrap;
      -ms-flex-pack: space-between;
      -webkit-justify-content: space-between;
      justify-content: space-between;
      flex-wrap: wrap;
   }

   .box-dl {
      width: 40.8333333333333vw;
      margin: 8% 0;
   }

   .box-dl dt img {
      width: 34.6666666666667vw;
   }

   img.btn-dl  {
      width: 40.8333333333333vw;
      margin: 1em auto 0;
   }
   .bookstore {
      width: 100px !important;
   }
   .bookstore {
      width: 90px !important;
   }
   .school {
      width: 120px !important;
   }

   .result-pattern {
      width: 100%;
      background-color: #ffef7e;
      margin: 0;
      background-size: 100%;
   }
   .topics .block-topics .wrap-topics .ttl {
      max-width: 175px;
      position: relative;
      top: 0;
   }
   .vote h1 .ttl {
      top: -63px;
      width: 80%;
      margin: 0 10%;
   }

   .block-btn-group {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
      -ms-flex-flow: row wrap;
      flex-wrap: wrap;
      -ms-flex-pack: center;
      -webkit-justify-content: center;
      justify-content: center;
      flex-wrap: wrap;
   margin: 40px 0 0;
   }

   .check-sns .check-sns-ttl-img {
       max-width: 84%;
   }
   .poll-catch-me {
	font-size: 4.33333333333333vw;
      margin-bottom: 30px;
      text-align: center;
   }

}

@media screen and (max-width: 375px) {
   .check-sns-wrap {
      margin-top: 30px;
   }
   .topics .return-toppage-btn {
      width: 80%;
   }
}

