:root {
  --accent-color: #f7b639;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

ul[role='list'],
ol[role='list'] {
  list-style: none;
}

body {
  min-height: 100vh;
  line-height: 1.5;
}

h1,
h2,
h3,
h4,
button,
input,
label {
  line-height: 1.1;
}

h1,
h2,
h3,
h4 {
  text-wrap: balance;
}

a:not([class]) {
  text-decoration-skip-ink: auto;
  color: currentColor;
  text-decoration: none;
}

img,
picture {
  max-width: 100%;
  display: block;
}

input,
button,
textarea,
select {
  font: inherit;
}

textarea:not([rows]) {
  min-height: 10em;
}

:target {
  scroll-margin-block: 5ex;
}

a {
  transition: ease-in-out .3;
}

a:hover {
  transition: ease-in-out .3;
  opacity: .8;
}

/* ひし形の画像 */
.dia_img {
  width: 1rem;
}

/* キラキラの画像 */
.kirakira_img {
  width: 4rem;
}


body {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: normal;
  font-style: normal;
  font-size: clamp(15px, 2vw, 19px);
  overflow-x: hidden;
}

body header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  position: absolute;
  padding: 5px 0 3rem;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0.6) 60%, rgba(0, 0, 0, 0.4) 80%, rgba(0, 0, 0, 0) 100%);
}

body header p {
  width: 22%;
  margin-left: 1em;
  margin-top: .8em;
  min-width: 230px;
  z-index: 200 !important;
}

body header p a {
  transition: ease-in-out .3;
  display: block;
}

body header p a:hover {
  transition: ease-in-out .3;
  opacity: .8;
}

body header nav {
  width: 60%;
}

body header nav ul.menu {
  list-style: none;
  display: flex;
  justify-content: flex-end;
  margin: 3% 1.5em 0 0;
}

body header nav ul.menu li a {
  display: block;
  color: #fff !important;
  text-decoration: none;
  filter: drop-shadow(0 1px 10px #000);
  padding: 10px .5em;
  white-space: pre;
  font-size: clamp(12px, 1.8vw, 16px);
  text-shadow: 0 1px 8px #000;
}

body header nav ul.menu li a {
  transition: ease-in-out .3;
  display: block;
}

body header nav ul.menu li a:hover {
  transition: ease-in-out .3;
  opacity: .8;
}

body #hero-container {
  background: url(../image/main_description_bg.webp);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center top;
  width: 100%;
}

body #top {
  background: transparent;
  height: 58.5vw;
  width: 100%;
  margin: auto;
}

body #top h1 {
  margin: 10vw auto -.5em;
  width: 67.5%;
  transform: translateX(35px);
}

body #top h1 img {
  display: block;
  margin: auto;
}

body #top .column {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 60%;
}

body #top #slide {
  transform: translateX(35px);
}

body #top #slide .swiper-carousel-animate-opacity {
  aspect-ratio: 16/11;
}

body #top #slide img {
  border-radius: 10px;
  object-fit: cover;
  height: 100%;
  width: 100%;
}

body #top #slide .slide-content {
  padding: .8em 1em;
  width: 100%;
}

body #top #slide .slide-content h4 {
  font-size: clamp(14px, 2vw, 17px);
  margin-bottom: .4em;
  font-size: small;
}

body #top #slide .slide-content h5 {
  font-size: clamp(14px, 2vw, 17px);
  margin: initial;
  font-size: small;
}

body #top #slide .swiper-carousel {
  padding-bottom: 45px;
}

body #top #slide img {
  max-width: 460px;
  max-height: 316.25px;
}

body #top #slide .swiper-carousel .swiper-slide {
  width: 50%;
  height: 50%;
  max-width: 460px;
}

body #top #slide .swiper-pagination-bullet-active {
  background: var(--accent-color);
}

body #news {
  background: transparent;
  color: #000;
  font-weight: 700;
}

body #news .inner {
  max-width: 1200px;
  margin: auto;
  line-height: 2.8;
  padding: 1.5em 1em 3.5em;
}

body #news .news {
  display: flex;
  align-items: center;
}

body #news .news h3 {
  font-size: clamp(14px, 2vw, 17px);
  font-weight: lighter;
}

body #news .news p {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: lighter;
  font-style: normal;
}

body #news .news p:first-of-type {
  margin: 0 1em;
}

body #news .news p:nth-of-type(2) {
  margin-right: 1em;
  font-size: clamp(12px, 2vw, 16px);
}

body #news .news p:last-of-type {
  font-size: clamp(10px, 2vw, 15px);
}

body #news hr+p {
  font-size: clamp(12px, 2vw, 18px);
}

body #news hr {
  background-color: var(--accent-color);
  display: block;
  height: 1px;
  width: 100%;
  outline: none;
  border: none;
  margin-bottom: 2.5em;
  margin-top: .6em;
}

body main {
  inset: 0;
  color: #000;
}

body main .award_inner::before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100lvw;
  height: 100lvh;
  background-image: url(../image/nomination_bg.webp);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}


body main .inner {
  position: relative;
  /* max-width: 1300px;
  margin: auto; */
  padding: .5em 0 0;
}

.award_inner {
  max-width: 1300px;
  margin: auto;
}

.nominate_section {
  position: relative;
  background-image: url(../image/nomination_bg_02.webp);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-attachment: fixed;
  z-index: 0;
}

.nominate_inner {
  max-width: 1300px;
  margin: auto;
  padding-top: 30px;
  padding-bottom: 40px;
}

body main .inner h2 {
  text-align: center;
  font-weight: 700;
  font-size: clamp(28px, 3vw, 38px);
  margin: 1.5em auto .8em;
  color: #000;
}

body main .inner h2 span {
  display: block;
  font-size: clamp(12px, 2vw, 14px);
  margin-bottom: 1.2em;
}

body main .inner h2+p img {
  margin: auto;
}

body main .inner aside {
  margin: 3em auto 0;
}

body main .inner aside ul {
  display: flex;
  justify-content: space-between;
  padding-left: 0;
}

body main .inner aside ul li {
  width: 24%;
  background: #D3FBFB;
  background: linear-gradient(90deg, rgba(211, 251, 251, 1) 0%, rgba(251, 221, 151, 1) 100%);
  color: #000;
  display: grid;
  margin: 0 .5em;
}

body main .inner aside ul li a {
  text-decoration: none;
  font-size: clamp(14px, 2vw, 14px);
  text-align: center;
  list-style: none;
  display: flex;
  align-items: center;
  line-height: 1.3;
  padding: .4em 1em;
}

body main .inner aside ul li a p {
  margin: auto;
}

body main .inner aside ul li a p span {
  font-size: smaller;
}

body main .inner aside ul li a span {
  display: block;
}

body.en main .inner aside ul li a span {
  display: inline;
}


body main .inner aside ul li:nth-child(1) {
  margin-left: 0;
}

body main .inner aside ul li:nth-child(4) {
  margin-right: 0;
}

body main .inner h3 {
  font-size: clamp(18px, 3vw, 24px);
  color: #000;
  font-weight: 700;
  text-align: center;
  margin: 2.8em auto .8em;
  line-height: 1.3;
}

body main .inner h3+p {
  margin-bottom: 2.5em;
  font-size: clamp(12px, 2vw, 16px);
}

body main .inner h3+p img {
  margin: auto;
}

body main .inner h3 span {
  font-size: smaller;
  display: block;
}

body main .inner .nominate_lists {
  display: flex;
  justify-content: flex-start;
  padding-left: 0;
  list-style: none;
  flex-wrap: wrap;
  gap: 40px 3%;
}

body main .inner .nominate_lists li {
  width: 31.33333333333333%;
  /* margin-right: 3%; */
  /* margin-bottom: 40px; */
  display: flex;
  background: #fff;
}

body main .inner .nominate_lists li:nth-child(3n) {
  /* margin-right: 0; */
}

body main .inner .nominate_lists li a {
  width: 100%;
  text-decoration: none;
  /* pointer-events: none; */
  /*↑会期終了後にpointer-events: noneにする↑*/
}

/* D-3.webp画像を含むリンクを無効化 */
body main .inner .nominate_lists li a:has(img[src*="D-3.webp"]) {
  pointer-events: none;
  cursor: default;
}

body main .inner .nominate_lists li figure {
  display: flex;
  flex-direction: column;
  width: 100%;
}

body main .inner .nominate_lists li figure p.image {
  object-fit: contain;
  min-height: 229px;
}

body main .inner .nominate_lists li figure img {
  /* width: 100%; */
  max-height: 229px;
  margin: auto;
}

body main .inner .nominate_lists li figure figcaption {
  display: flex;
  flex-direction: column;
  flex: 1;
  justify-content: space-between;
  color: #000;
  background-color: #fff;
  padding: 1.5em 1.3em 1em 1.3em;
}

body main .inner .nominate_lists li figure figcaption .image {
  aspect-ratio: 16 / 9;
}

body main .inner .nominate_lists li figure figcaption h4 {
  font-size: clamp(14px, 2vw, 17px);
  word-break: keep-all;
  overflow-wrap: break-word;
  line-break: strict;
}

body main .inner .nominate_lists li figure figcaption hr {
  background-color: #e6e6e6;
  display: block;
  outline: none;
  border: none;
  height: 1px;
  width: 100%;
  margin: 1em 0 .5em;
}

body main .inner .nominate_lists li figure figcaption div {
  display: flex;
  flex-direction: column;
}

body main .inner .nominate_lists li figure figcaption div div {
  display: flex;
  flex-direction: row;
  align-items: center;
}

body main .inner .nominate_lists li figure figcaption div p {
  background-color: #e6e6e6;
  text-align: center;
  margin-right: 1em;
  line-height: 1.2;
  padding: .5em 1.3em;
  min-width: 80px;
}

body main .inner .nominate_lists li figure figcaption div p {
  font-size: clamp(8px, 2vw, 12px);
  font-weight: bold;
}

body main .inner .nominate_lists li figure figcaption div h5 {
  font-size: clamp(13px, 2vw, 16px);
  margin: 0;
}

body .btn-trigger {
  display: none;
}

body .pc {
  display: block;
}

body .tablet {
  display: block;
}

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

  body .nominate_lists,
  body aside ul {
    margin: 0 2em;
  }
}

@media screen and (max-width: 1100px) {
  body main .inner .nominate_lists li figure p.image {
    min-height: auto;
  }

  body .btn-trigger {
    display: block;
    width: 40px;
    height: 43px;
    cursor: pointer;
    position: fixed;
    top: 25px;
    right: 20px;
    filter: drop-shadow(2px 2px 4px #000);
    z-index: 9999;
  }

  body .btn-trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 4px;
    background-color: #fff;
    border-radius: 4px;
  }

  body .btn-trigger span:nth-of-type(1) {
    top: 0;
  }

  body .btn-trigger span:nth-of-type(2) {
    top: 16px;
  }

  body .btn-trigger span:nth-of-type(3) {
    bottom: 8px;
  }

  body .btn-trigger,
  body .btn-trigger span {
    display: inline-block;
    transition: all .2s;
    box-sizing: border-box;
  }

  body #hamburger.active span:nth-of-type(1) {
    -webkit-transform: translateY(20px) rotate(-45deg);
    transform: translateY(20px) rotate(-45deg);
  }

  body #hamburger.active span:nth-of-type(2) {
    opacity: 0;
  }

  body #hamburger.active span:nth-of-type(3) {
    -webkit-transform: translateY(-11px) rotate(45deg);
    transform: translateY(-11px) rotate(45deg);
  }

  body nav {
    display: none;
    position: fixed;
    top: 0;
    right: 0;
    transition: all .2s;
    width: 100% !important;
    height: 100vh;
    z-index: 300;
  }

  body ul.menu {
    display: none;
  }

  body #hamburger.active+nav {
    display: grid;
    place-content: center;
    background-color: rgba(0, 0, 0, 0.7);
    transition: all .2s;
  }

  body #hamburger.active+nav ul.menu {
    display: block;
    flex-direction: column;
    z-index: 9998;
    padding: 0.8em 0.5em !important;
    text-align: center;
  }

  body #hamburger.active+nav ul.menu li a {
    padding: 20px .5em;
    font-size: clamp(18px, 4vw, 25px);
  }

  body aside ul {
    flex-wrap: wrap !important;
  }

  body aside ul li {
    width: 48% !important;
    margin: initial !important;
    margin-bottom: 1em !important;
  }

  body #hero-container {
    background: url(../image/main_description_bg_tablet.webp);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center top;
  }
}


@media screen and (max-width: 850px) {
  body #top h1 {
    margin: 12vw auto -0.5em !important;
  }

  body main .inner .nominate_lists {
    flex-wrap: wrap !important;
    gap: 30px 4%;
  }

  body main .inner .nominate_lists li {
    width: 48% !important;
    /* margin-bottom: 1.3em; */
  }

  body .tablet {
    display: none !important;
  }

  body main .inner .nominate_lists li:nth-child(3n) {
    /* margin-right: 3%; */
  }

  body main .inner .nominate_lists li:nth-child(2n) {
    margin-right: 0;
  }

  body main .inner .nominate_lists li figure figcaption div p {
    padding: .5em 0;
    min-width: 60px;
  }
}

@media screen and (max-width: 800px) {
  body .swiper-carousel .swiper-slide {
    width: 45% !important;
    height: 45% !important;
  }

  body .slide-content {
    padding: 0 0 0.7em 0.8em !important;
  }

  body .slide-content h5 {
    font-size: clamp(8px, 2vw, 12px) !important;
  }
}

@media screen and (max-width: 600px) {
  body .slide-content {
    padding: 0 0 0.5em 0.6em !important;
  }

  body .swiper-carousel {
    padding-bottom: 35px !important;
  }
}

@media screen and (max-width: 480px) {
  body header {
    padding: 20px;
  }

  body .pc {
    display: none !important;
  }

  body #hero-container {
    background: url(../image/main_description_bg_sp.webp);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center top;
  }

  body #top {
    background: transparent;
    height: 100vw;
    position: relative;
  }



  body #top h1 {
    margin: 18vw auto -0.5em !important;
    width: 100%;
    transform: initial;
  }

  body #top #slide {
    transform: initial;
    width: 80%;
  }

  body #top .column {
    width: 72%;
  }

  body #top .swiper-carousel .swiper-slide {
    width: 72% !important;
    height: 72% !important;
  }

  body #top .swiper-carousel {
    padding-bottom: 0 !important;
  }

  body #top .swiper-pagination {
    width: 70%;
    bottom: 8vw;
  }

  body .btn-trigger {
    top: 18px;
    right: 15px;
    width: 35px;
    height: 35px;
  }

  body .btn-trigger span {
    height: 3px;
  }

  body .btn-trigger span:nth-of-type(2) {
    top: 12px;
  }

  body #hamburger.active span:nth-of-type(1) {
    transform: translateY(13px) rotate(-45deg);
  }

  body header p {
    margin-left: 0;
    margin-top: 0;
    min-width: 248px;
  }

  body #news {
    background: transparent;
  }

  body #news .inner {
    padding: 1.5em 1em 2em;
  }

  body #news hr {
    margin-top: 1em;
    margin-bottom: 1em;
  }

  body #news .news {
    align-items: flex-start;
  }

  body #news .news p {
    line-height: 1.3;
  }

  body #news .news p:first-of-type {
    margin: .2em .5em 0;
    width: .8em;
    min-width: .7em;
    margin-top: .1em;
  }

  body #news .news p:nth-of-type(2) {
    margin-right: .5em;
  }

  body main h2+p {
    width: 3em;
    margin: auto;
  }

  body main aside {
    margin: 2em auto 0 !important;
  }

  body main aside ul {
    margin: 0 1em;
  }

  body main aside ul li {
    width: 100% !important;
    margin-bottom: 0.5em !important;
  }

  body main aside ul li a {
    line-height: 1.5 !important;
    padding: 0.8em 1em !important;
  }

  body main aside ul li a p+span {
    width: 0.8em !important;
  }

  body main h3 {
    margin: 2em auto 1em !important;
  }

  body main h3+p {
    width: 1em;
    margin: 0 auto 2em !important;
  }

  body main .inner .nominate_lists li {
    width: 100% !important;
    /* margin-bottom: 2em; */
    margin-right: 0;
  }

  body main .inner .nominate_lists li:nth-child(3n) {
    margin-right: 0;
  }

  body main .inner .nominate_lists li figure figcaption div p {
    min-width: 50px;
  }


}




ol,
ul {
  list-style: none;
}

.c-footer__body {
  background-color: #000;
  padding: 30px 0 50px;
  position: relative;
  z-index: 1;
}

.c-footer__body__navi {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  margin-bottom: 50px;
  flex-wrap: wrap;
  width: 100%;
  overflow: hidden;
}

.c-footer__body__navi__item+.c-footer__body__navi__item {
  margin-left: 50px;
}

.c-footer__body__navi__item__link {
  font-size: 16px;
  font-weight: 700;
  text-decoration: none;
  color: #fff;
}

.c-footer__body__copyright {
  line-height: 1;
  display: block;
  width: 100%;
  text-align: center;
  color: #fff;
  font-size: 14px;
}

/*.c-footer__totop*/
.c-footer__totop_merge {
  color: #fff;
  width: 40px;
  height: 40px;
  background-color: #d50000;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: baseline;
  justify-content: baseline;
  -ms-flex-align: center;
  align-items: center;
  text-decoration: none;
  -ms-flex-pack: center;
  justify-content: center;
  /*position: absolute;*/
  right: 0;
  top: -40px;
  /*z-index: 1;*/
  z-index: 500;
  margin-left: auto;
  margin-right: 0;
  margin-top: 13px;
}

/*.c-footer__totop:after */
.c-footer__totop_merge:after {
  content: "\f077";
  font-size: 13px;
  font-weight: 700;
  font-family: "Font Awesome 5 Free";
}

.fix_button_cont {
  /*width: 160px;*/
  position: fixed;
  z-index: 500;
  /*right: 10px;*/
  /*bottom: 55px;*/
  right: 0;
  bottom: 0;
  opacity: 0;
  transition: opacity 0.5s;
}

.fix_button_cont .c-button_list {
  margin-right: 10px;
}

.fix_button_cont .c-button_list li+li {
  margin-top: 10px;
}

.fix_button_cont .c-button_list li a {
  background-color: #006edc;
  border: none;
  filter: drop-shadow(0px 0px 10px #0410481a);
  padding: 12px;
}

@media screen and (max-width: 480px) {
  .c-footer__body__navi {
    display: block;
    text-align: center;
    box-sizing: border-box;
    padding: 0;
  }

  .c-footer__body__navi__item+.c-footer__body__navi__item {
    margin: 0;
    margin-top: 10px;
  }
}

/*英語タイトル内もの非表示*/
.en #id7,
.en #id9,
.en #id10,
.en #id17,
.en #id22,
.en #id33 {
  display: none;
}




/*受賞作品-----------------------------------------------------------*/
#winning {
  margin-bottom: 100px;
}

#winning .winning_list {
  padding: 0;
  max-width: 1200px;
  margin: auto;
}

/*#winning h2 {
  color: #e4af3e;
}*/

#winning .winning_list li.grandprix {
  background: #fff url(../image/grandprix_bg_sp.png) no-repeat 100% bottom;
  background-size: 120%;
}

#winning .winning_list li.runnerup_grandprix {
  background: #fff url(../image/runnerup_grandprix_bg_sp.png) no-repeat 100% bottom;
  background-size: 120%;
}

#winning .winning_list li.judging_award {
  background: #fff url(../image/judging_award_bg_sp.png) no-repeat 100% bottom;
  background-size: 120%;
}

#winning .winning_list li:not(:last-child) {
  margin-bottom: 20px;
}

#winning .winning_list li {
  padding-bottom: 10px;
}

#winning .winning_list li .border {
  height: 10px;
}


#winning .winning_list li.grandprix .border {
  background-image: -moz-linear-gradient(3deg, rgba(247, 203, 107, 0.99608) 0%, rgb(251, 169, 128) 100%);
  background-image: -webkit-linear-gradient(3deg, rgba(247, 203, 107, 0.99608) 0%, rgb(251, 169, 128) 100%);
  background-image: -ms-linear-gradient(3deg, rgba(247, 203, 107, 0.99608) 0%, rgb(251, 169, 128) 100%);
  ;
}

#winning .winning_list li.runnerup_grandprix .border {
  background-image: -moz-linear-gradient(3deg, rgb(70, 174, 247) 0%, rgb(29, 213, 230) 100%);
  background-image: -webkit-linear-gradient(3deg, rgb(70, 174, 247) 0%, rgb(29, 213, 230) 100%);
  background-image: -ms-linear-gradient(3deg, rgb(70, 174, 247) 0%, rgb(29, 213, 230) 100%);
}

#winning .winning_list li.judging_award .border {
  background-image: -moz-linear-gradient(3deg, rgb(40, 113, 250) 0%, rgb(103, 23, 205) 100%);
  background-image: -webkit-linear-gradient(3deg, rgb(40, 113, 250) 0%, rgb(103, 23, 205) 100%);
  background-image: -ms-linear-gradient(3deg, rgb(40, 113, 250) 0%, rgb(103, 23, 205) 100%);
}

#winning .winning_list li {
  /*会期終了後対応*/
  /* pointer-events: none !important; */
}

/*会期終了後対応↓ aをdiv.contentに変更。※pointer-events: noneがiosで効かないため*/
#winning .winning_list li .content {
  color: #000;
  text-decoration: none;
  /*会期終了後対応*/
  /* pointer-events: none !important; */
  cursor: default;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

#winning .winning_list li .content .flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  padding: 10px;
}

#winning .winning_list li .flex figure {
  width: 40%;
}

#winning .winning_list li .flex figure img {
  max-height: 300px;
  margin: auto;
}

#winning .winning_list li .flex .text {
  width: 58%;
  padding: 20px 0 20px;
}

#winning .winning_list li .flex .text h4 {
  max-width: 200px;
}

#winning .winning_list li .flex .text h5 {
  font-size: 1.6rem;
  margin: 20px 0;
}

#winning .winning_list li .flex .text .company_info {
  display: flex;
  align-items: center;
}

#winning .winning_list li .flex .text .company_info p {
  font-size: 0.9rem;
  background: #e6e6e6;
  padding: 10px;
  text-align: center;
  width: 120px;
  margin-right: 20px;
}

#winning .winning_list li .flex .text .company_info p br.sp {
  display: none;
}

#winning .winning_list li .flex .text .company_info h6 {
  flex: 1;
  font-size: 1.2rem;
  margin: 0;
}

/*---------------- 【案件概要】【選評】の掲載 ----------------*/

#winning .winning_list .product_detail {
    margin: 0 10px;
    padding: 10px;
    font-size: .9rem;
    background: rgb(255, 248, 223, 0.7);
    font-family: 'LINESeedJP', sans-serif;
}

/* 準グランプリの背景色（薄い水色） */
#winning .winning_list li.runnerup_grandprix .product_detail {
    background: rgb(228, 239, 246, 0.7);
}

/* 審査委員会賞の背景色（薄い紫） */
#winning .winning_list li.judging_award .product_detail {
    background: rgba(244, 237, 247, 0.7);
}

#winning .winning_list .product_detail .title {
    color: #d39822;
    font-weight: bold;
    font-size: 1rem;
}

#winning .winning_list li.runnerup_grandprix .product_detail .title {
    color: #1b83c2;
}

#winning .winning_list li.judging_award .product_detail .title {
    color: #4827a8;
}

#winning .winning_list .product_detail .selection_comment {
    margin-top: 10px;
}

#winning .winning_list .product_detail .text_container {
  line-height: 1.6;
}

/*---------------- 審査委員会　アコーディオン ----------------*/

#judging_award_winning .review_committee {
  max-width: 1200px;
  margin: 2em auto 0;
}

#judging_award_winning .accordion-container {
  margin: 0rem auto 0;
  width: 100%;
  text-align-last: left;
}

#judging_award_winning .accordion-list {
  position: relative;
}

#judging_award_winning .accordion-list:not(:first-child) {
  margin-top: 1rem;
}

#judging_award_winning .top-accordion-title.js-top-accordion-title {
  background: #ffffff;
  color: #000000;
  cursor: pointer;
  font-size: 1.2rem;
  font-weight: bold;
  border-radius: 7px;
  border-bottom: none;
  padding: 1.5rem 3rem 1.5rem 2rem;
  line-height: 1.5;
  height: max-content;
  position: relative;
}

#judging_award_winning .top-accordion-title.js-top-accordion-title.open {
  border-radius: 10px 10px 0 0;
}

#judging_award_winning .top-accordion-title:before {
  position: absolute;
  content: '';
  top: 50%;
  right: 25px;
  height: 2px;
  width: 15px;
  background: #000000;
  transform: rotate(90deg);
  transition: all .3s ease-in-out;
}

#judging_award_winning .top-accordion-title:after {
  position: absolute;
  content: '';
  top: 50%;
  right: 25px;
  height: 2px;
  width: 15px;
  background: #000000;
  transition: all .3s ease-in-out;
}

#judging_award_winning .top-accordion-title.open:before {
  transform: rotate(180deg);
}

#judging_award_winning .top-accordion-title.open:after {
  opacity: 0;
}

#judging_award_winning .accordion-text {
  border-left: 1px solid #ffffff;
  border-right: 1px solid #ffffff;
  border-top: 1px solid #ffffff;
  background-color: #fff;
  color: #000;
  display: none;
  padding: 1.5rem 2rem;
  border-radius: 0 0 10px 10px;
  position: relative;
  border-top: 1px solid #cae4ef;
  width: 100%;
  line-height: 1.4;
}

#judging_award_winning .accordion-text p {
  margin-top: 10px;
}

#judging_award_winning .accordion-text p:first-child {
  margin-top: 0;
}

#judging_award_winning .accordion-text p:last-child {
  margin-bottom: 0;
}

#judging_award_winning .accordion-text p strong {
  font-weight: bold;
}

  /*---------------- レスポンシブのスタイル ----------------*/


@media screen and (max-width: 1300px) {
  #winning .winning_list {
    margin: 0 2em;
  }

  #judging_award_winning .review_committee {
    max-width: 1200px;
    margin: 2em 2em;
  }
}


@media screen and (max-width: 850px) {
  #winning .winning_list li .flex .text {
    padding: 20px 0;
  }

  #winning .winning_list li .flex .text h4 {
    max-width: 180px;
  }

  #winning .winning_list li .flex .text h5 {
    font-size: 1.3rem;
    margin: 10px 0;
  }

  #winning .winning_list li .flex .text .company_info p br.sp {
    display: block;
  }

  #winning .winning_list li .flex .text .company_info p {
    width: 80px;
    font-size: 0.8rem;
    margin-right: 10px;
    padding: 5px;
  }

  #winning .winning_list li .flex .text .company_info h6 {
    font-size: 1.1rem;
  }
}

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

  #winning .winning_list li .flex figure {
    width: 100%;
  }

  #winning .winning_list li .flex .text {
    width: 100%;
  }

  #winning .winning_list li .flex .text h5 {
    font-size: 1.1rem;
    margin-bottom: 20px;
  }

  #winning .winning_list li .flex .text .company_info h6 {
    font-size: 1rem;
  }

  #winning .winning_list li .flex .text {
    padding-bottom: 5px;
  }

  #winning .winning_list li.grandprix {
    background: #fff url(../image/grandprix_bg_sp.png) no-repeat 100% bottom;
    background-size: 200%;
  }

  #winning .winning_list li.runnerup_grandprix {
    background: #fff url(../image/runnerup_grandprix_bg_sp.png) no-repeat 100% bottom;
    background-size: 200%;
  }

  #winning .winning_list li.judging_award {
    background: #fff url(../image/judging_award_bg_sp.png) no-repeat 100% bottom;
    background-size: 200%;
  }

  #winning .winning_list .product_detail .title {
    font-size: .8rem;
  }

  #winning .winning_list .product_detail {
    font-size: 11px;
  }

  #judging_award_winning .top-accordion-title.js-top-accordion-title {
    padding: 1.5rem 4rem 1.5rem 1.5rem;
  }

}
