@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
.pr{
  text-align: right;
  color: #aaa;
  max-width: 1030px;
  margin: -18px auto 0;
  font-size: 0.8em;
  padding: 0 6px;
}
a{
  color: #123c62;
  text-decoration: underline;
}
#main{
  max-width: 900px;
  margin-inline: auto;
}
#content-bottom {
  background-color: #2d2d2d;
  color: #aaa;
  font-size: 12px;
  margin-bottom: 0;
  padding: 120px 10px 20px 10px;
  font-weight: 100;
}
#footer {
  margin-top: 0;
}
.line{
  background: linear-gradient(transparent 60%, #ffd70078 60%);
}
.header-container {
  padding: 4px;
}
.header-container-in.hlt-top-menu .wrap {
  min-width: 245px;
}
.entry-title {
  font-size: 42px;
}

.header-ca-main-title {
  position: absolute;
  bottom: 30px;
  left: 0;
  right: 0;
  margin: auto;
}
#lp02-header {
  min-width: var(--full-column-width);
  background: linear-gradient(93.44deg,#eaf0f6,#eaf0f6 57.98%,#d9e1e4);
  overflow: hidden;
}
.lp02-header-in {
  margin: 0 auto;
  max-width: 1000px;
  position: relative;
}
.lp02-header-in h2{
  font-size: 4em;
  color: #1e4765;
  line-height: 1.3;
  padding-top: 50px;
  position: absolute;
}
#lp02-header-sp{
  display: none;
}
.lp02-header-in-sp{
  position: relative;
}
.lp02-header-in-sp h2{
  font-size: 2em;
  color: #255476;
  line-height: 1.3;
  padding: 30px 16px;
  position: absolute;
  z-index: 9999;
}
.banner-ranking, .header-btn{
  max-width: 640px;
  margin: 0 auto;
  display: flex;
  justify-content: space-evenly;
  padding: 0 8px;
  margin-bottom: 14px;
}
.header-btn .header-btn-l,.header-btn .header-btn-r{
  width: 90%;
  max-width: 230px;
  text-align: center;
  padding: 8px;
  border-radius: 16px;
  text-decoration: none;
  color: black;
}
.header-btn .header-btn-l{
  background-color: #c3d825;
}
.header-btn .header-btn-r{
  background-color: #ffb435;
}
.main-visual-sokyu{
  margin-top: 16px;
}
.main-visual-inner, .main-visual-inner-sp{
  text-align: center;
}

.ribbon1{
  position: absolute;
  bottom: 0;
  right: 0;
  background-color: #030c41;
  color: #fff;
  padding: 6px 8px;
  line-height: 20px;
}
.header-lead {
  background-color: #000;
  color: #fff;
  padding: 10px;
  border-radius: 12px 16px;
  border: solid #fff 4px;
  margin: 0 150px 0;
}

.type-lead {
  width: 1256px;
  margin: 0 auto;
  padding-top: 60px;
}
.type-lead-item {
  background-color: #000;
  margin-bottom: 40px;
  position: relative;
}
.type-lead-item:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -18px;
  left: 0;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-color: #000 transparent transparent transparent;
  border-width: 18px 18px 0 18px;
}
.type-lead-item-in {
  padding: 4px 4px 4px 60px;
}
.type-lead-item-in h3 {
  font-size: 2.2em;
  color: #fff;
}
.type-lead-item-in p {
  background-color: #fff;
  padding: 20px;
  margin: 0;
}
@-webkit-keyframes bgscroll {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -2000px 0;
  }
} /* 2000px使用した背景画像の横幅 */
@keyframes bgscroll {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -2000px 0;
  }
}
.content {
  margin-top: 0px;
}
#ranking {
  margin-top: 40px;
  margin-bottom: 60px;
}
.ranking-list {
  font-size: 22px;
  font-weight: bold;
  line-height: 1.4;
  margin-left: 14px;
}
.ranking-list ul li {
  padding: 6px 0;
  font-weight: bold;
}
.ranking-list ul {
  padding: 10px 20px;
  position: relative;
}
.ranking-list ul li {
  line-height: 1.5;
  padding: 0.5em 0;
  list-style-type: none!important;
}
.ranking-list ul li:before {
  font-family: FontAwesome;
  content: "\f138";/*アイコンの種類*/
  position: absolute;
  left : -.3em;/*左端からのアイコンまでの距離*/
  color: #ff8f00;/*アイコン色*/
}
#search-form-wrapper {
  max-width: 1000px;
  margin: 8px auto 40px;}
#search-form {
  padding: 30px;
  margin: 0 auto;
  text-align: center;
  border-radius: 12px;
  background: #ffffff;
  box-shadow:  12px 12px 24px #d9d9d9,
              -12px -12px 24px #ffffff;
}
#search-form h2 {
  font-size: 32px;
}
#feas-searchform-0 {
  font-size: 14px;
}
#feas-searchform-0 label {
  max-width: 208px;
}
.search-form0 {
  margin-top: 30px;
}
#feas-searchform-0 h5{
  margin-top: 16px;
}
.container input[type="submit"] {
  background-color: #000;
  color: #fff;
  transition: 0.4s;
  font-weight: bold;
}
.container input[type="submit"]:hover {
  background-color: #ff8800;
}
.search-title {
  text-align: center;
  background-color: #ff8f00;
  color: #fff;
  font-weight: bold;
}
.svg-inline--fa {
  width: 20px;
  margin-right: 6px;
  vertical-align: sub;
  color: #fff;
}
.search-text {
  font-size: 16px;
  line-height: 1.6;
  transform: rotate(1.5deg);
}
.search-text-wrpper {
  display: flex;
  background-color: #9acd32;
  padding: 16px 24px;
  margin: 1.8em -6em 1.8em 6em;
  align-items: center;
  transform: rotate(-1.5deg);
}
.rank-item-wrapper:first-child .search-text-wrpper {
  background-color: #ffc107;
}
.point {
  min-width: 75px;
  margin-right: 20px;
}
.rank-item {
  padding: 10px 15px;
  border-top: 30px solid #000;
  border-bottom: 6px solid #000;
  box-sizing: border-box;
  margin-bottom: 20px;
  background-color: #fff;
}
.rank-item-wrapper:first-of-type ul li,
.search-item-1st {
  border-top: none;
}
.rank-item h3 {
  text-align: center;
  font-size: 2.8em;
  margin-bottom: 20px;
}
.rank-item-wrapper:nth-of-type(1) .rank-item h3:before {
  content: "";
  display: inline-block;
  width: 80px;
  height: 80px;
  background-image: url(https://xn--u9j926g9ub946be1v.com/wp-content/uploads/2019/11/rankicon1.png);
  background-size: contain;
  vertical-align: top;
}
.rank-item-wrapper:nth-of-type(2) .rank-item h3:before {
  content: "";
  display: inline-block;
  width: 80px;
  height: 80px;
  background-image: url(https://xn--u9j926g9ub946be1v.com/wp-content/uploads/2019/11/rankicon2.png);
  background-size: contain;
  vertical-align: top;
}
.rank-item-wrapper:nth-of-type(3) .rank-item h3:before {
  content: "";
  display: inline-block;
  width: 80px;
  height: 80px;
  background-image: url(https://xn--u9j926g9ub946be1v.com/wp-content/uploads/2019/11/rankicon3.png);
  background-size: contain;
  vertical-align: top;
}
.rank-item-wrapper:nth-of-type(5) .rank-item h3:after {
  content: "[PR]";
  display: inline-block;
  vertical-align: baseline;
  font-size: 16px;
}

.rank-item a {
  text-decoration: none;
}
.rank-item-list {
  flex-basis: 370px;
  min-width: 370px;
}
#ranking .rank-item01-wrapper .rank-item-list ul {
  margin: 0;
  padding: 0 20px;
  margin-left: 20px;
}
.rank-item-list ul li {
  font-size: 16px;
}
.Reviews1,
.Reviews2,
.Reviews3,
.Reviews4,
.Reviews5,
.Reviews6,
.Reviews7,
.Reviews8,
.Reviews9,
.Reviews10 {
  font-size: 14px;
  line-height: 1.4;
  font-weight: 300;
  padding-left: 18px;
}
.Reviews1 strong,
.Reviews2 strong,
.Reviews3 strong,
.Reviews4 strong,
.Reviews5 strong,
.Reviews6 strong,
.Reviews7 strong,
.Reviews8 strong,
.Reviews9 strong,
.Reviews10 strong {
  display: block;
}
.rank-item00-wrapper {
  display: flex;
  justify-content: space-around;
  padding: 4px;
}
.rank-item01-wrapper {
  display: flex;
}
.rank-item01-image {
  width: 200px;
  padding-right: 20px;
  flex-basis: 200px;
}
.rank-item02-wrapper {
  padding-left: 10px;
}
.rank-item02-wrapper table {
  font-size: 12px;
  margin: 0;
  width: 290px;
}
.rank-item00-wrapper table th {
  white-space: nowrap;
  text-align: center;
}
.rank-item00-wrapper table td {
  min-width: 130px;
}
.rank-bt {
  display: flex;
  justify-content: center;
  padding: 20px;
}
.rank-bt a {
  text-align: center;
  color: #fff;
  padding: 12px;
  margin: 6px;
  transition: 0.5s ease;
}
.rank-bt a:hover {
  opacity: 0.6;
}
.search-bt {
  max-width: 900px;
  margin: 0 auto;
  padding: 20px;
}
.search-bt a {
  display: block;
  text-align: center;
  color: #fff;
  margin: 6px;
  white-space: nowrap;
  padding: 30px 30px;
  border-radius: 12px;
  background: #3fca3a linear-gradient(to bottom, #58ca54, #29be22 1px, #29be22 50%, #05a800 50%, #3fca3a);
  transition: 0.5s ease;
}
.search-bt a .fa {
  top: 37px;
}
.good-num {
  text-align: center;
  font-weight: bold;
  white-space: nowrap;
}
.officialLink_s {
  /*background: #3fca3a linear-gradient(to bottom,#58ca54,#29be22 1px,#29be22 50%,#05a800 50%,#3fca3a);*/
  background-color: #000;
  position: relative;
  overflow: hidden;
  flex: 2;
  border-radius: 30px;
  text-decoration: none;
}
.officialLink_s:after {
  content: "";
  height: 100%;
  width: 30px;
  position: absolute;
  top: -180px;
  left: 0;
  background-color: #fff;
  opacity: 0;
  transform: rotate(45deg);
  animation: reflection 3s ease-in-out infinite;
  -webkit-animation: reflection 3s ease-in-out infinite;
}
@-webkit-keyframes reflection {
  0% {
    transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  80% {
    transform: scale(0) rotate(45deg);
    opacity: 0.5;
  }
  81% {
    transform: scale(4) rotate(45deg);
    opacity: 1;
  }
  100% {
    transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}
.officialLink_s .fa {
  position: absolute;
  right: 10px;
  top: 20px;
}
.result_shousai {
  background: #cfcfcf linear-gradient(to bottom, #c7c9c7, #bcbfbc 1px, #bcbfbc 50%, #a8a8a8 50%, #cfcfcf);
  position: relative;
  flex: 1;
}
.hyouka-star {
  font-size: 1.4em;
  font-weight: bold;
  text-align: center;
  border-radius: 30px;
  padding: 4px 0;
  margin: 0 18px 8px 18px;
  border: solid #000 4px;
}
.hyouka-star span {
  background-color: #fff;
  color: #e61c1c;
  padding: 0 20px;
  border-radius: 10px;
  margin-left: 20px;
}
#content-bottom {
  background-color: #2d2d2d;
  color: #aaa;
  font-size: 12px;
  margin-bottom: 0;
  padding: 120px 10px 20px 10px;
  font-weight: 100;
}
#footer {
  margin-top: 0;
}
.micro-copy {
  text-align: center;
  color: #fff;
  background-color: #000;
  margin: 10px auto;
  width: 60%;
  font-size: 26px;
  border-radius: 30px;
  position: relative;
}
.micro-copy:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -6px;
  left: 0;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-color: #000 transparent transparent transparent;
  border-width: 6px 6px 0 6px;
}
.comment-wrapper {
  display: flex;
  padding: 10px 0 10px 180px;
}
.face {
  min-width: 100px;
}
.ore {
  color: #ff8800;
  font-weight: bold;
}
.n-price,
.sp-price {
  display: flex;
  align-items: baseline;
}
.sp-price {
  margin-top: -20px;
}
.n-price {
  margin-bottom: 8px;
}
.n-price dd span {
  font-weight: bold;
}
.n-price dt {
  background-color: #bbb;
  padding: 0px 40px;
  margin-right: 20px;
  font-size: 12px;
  font-weight: bold;
}
.sp-price dt {
  background-color: rgba(230, 28, 28, 0.2);
  color: #e61c1c;
  padding: 0px 20px;
  margin-right: 20px;
  font-weight: bold;
}
.sp-price dd {
  color: #e61c1c;
}
.sp-price dd span {
  font-size: 2em;
  font-weight: bold;
}
#hikaku {
  text-align: center;
  margin-bottom: 30px;
}
#hikaku table {
  background-color: #fff;
  table-layout: fixed;
  width: 100%;
  margin-inline: auto;
}
#hikaku table img {
  display: block;
  margin-inline: auto;
}
#hikaku table td {
  height: 40px;
  padding: 8px;
}
#hikaku .hikaku-th {
  background-color: #f6f6f6;;
}
#hikaku table .h01 {
  background-position: center;
  background-repeat: no-repeat;
  background-size: auto;
  background-color: rgba(255, 255, 255, 0.85);
  background-blend-mode: lighten;
}
#hikaku table .h02 {
  background-position: center;
  background-repeat: no-repeat;
  background-size: auto;
  background-color: rgba(255, 255, 255, 0.85);
  background-blend-mode: lighten;
}
#hikaku table .h03 {
  background-position: center;
  background-repeat: no-repeat;
  background-size: auto;
  background-color: rgba(255, 255, 255, 0.85);
  background-blend-mode: lighten;
}
.hikaku-btn{
  background: #f84646;
  box-shadow: 0 4px 0 0 #c02222;
  color: #FFF;
  display: block;
  text-align: center;
  border-radius: 8px;
  margin: 5px 0;
  line-height: 1.35;
  text-decoration: none;
  padding: 10px 5px;
}
#hikaku table tbody tr td:first-of-type {
  background: #fffeef;
}
#question {
  padding: 40px 0;
  text-align: center;
  width: 900px;
  margin: 0 auto;
}
.cp_qa *,
.cp_qa *:after,
.cp_qa *:before {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.cp_qa .cp_qanda {
  line-height: 1.5;
  position: relative;
  margin: 0 0 2em 15em;
  padding: 0 0 0 1em;
  border-left: 1px solid #333333;
}
.cp_qa .quest {
  font-weight: bold;
  position: absolute;
  bottom: -1em;
  left: -15em;
  display: inline-block;
  width: 14em;
  text-align: right;
}
.cp_qa .cp_qanda::before {
  font-family: serif;
  font-size: 4em;
  position: absolute;
  top: -0.4em;
  left: -3.7em;
  display: inline-block;
  content: "Q";
  opacity: 0.1;
}
.cp_qa .answer {
  min-height: 3em;
  text-align: left;
}
#ikumou-column {
  text-align: center;
  padding-top: 40px;
  background-color: #fff;
  border-radius: 10px;
  padding-bottom: 2px;
  border-top: solid 5px #000;
  border-bottom: solid 5px #000;
}
.ikumou-column-wrapper {
  display: flex;
  margin: 1.2em;
}
.ikumou-column-wrapper a {
  width: 33%;
  margin: 10px;
  text-decoration: none;
}
.ikumou-column-item {
  display: flex;
  background-color: #fff;
  padding: 10px;
  border-radius: 10px;
  box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.15);
}
.ikumou-column-left {
  margin-right: 10px;
}
.ikumou-column-left img {
  width: 90px;
  min-width: 90px;
}
.ikumou-column-right {
  position: relative;
}
.ikumou-column-right h3 {
  font-size: 14px;
  text-align: left;
  color: #333;
  font-weight: normal;
  transition: 0.2s;
}
.ikumou-column-right h3:hover {
  color: #9acd32;
}
.ikumou-column-right .btn-more {
  border: 1px solid #ddd;
  border-radius: 100px;
  position: absolute;
  bottom: 8px;
  left: 20px;
  width: calc(100% - 40px);
  height: 28px;
  font-size: 14px;
  color: #333;
  transition: background-color 0.2s ease, color 0.2s ease;
}
.ikumou-column-right .btn-more:hover {
  background-color: #9acd32;
  color: #fff;
}
.sort th {
  background-color: #fff;
  border: none;
}
.search-item-wrapper {
  border-top: solid thin #aaa;
  border-bottom: solid thin #aaa;
  margin-bottom: 2em;
}
.search-item-wrapper ul {
  margin: 0;
}
.search-item-title {
  text-decoration: none;
}
.search-item-title h3 {
  max-width: 400px;
  text-align: center;
  font-size: 24px;
  background-color: #000;
  color: #fff;
  margin: 24px auto;
  border-radius: 30px;
  transition: 0.2s;
}
.search-item-title h3:hover {
  opacity: 0.6;
}
.search-item-detail {
  display: flex;
  justify-content: space-around;
  padding: 4px;
  font-size: 16px;
  align-items: center;
}
.search-item-detail-in {
  display: flex;
}
.search-item-list {
  flex-basis: 376px;
  min-width: 376px;
}
.search-item-image {
  width: 200px;
  padding-right: 20px;
  flex-basis: 200px;
}
.search-item-table table {
  font-size: 12px;
}
.search-item-table table th {
  white-space: nowrap;
}
.rankingUpdate {
  /* position: absolute; */
  top: 103px;
  display: block;
  width: 100%;
  font-size: 32px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  text-align: center;
  left: 0;
  right: 0;
  margin: auto;
}
.rankingUpdate-ca {
  position: absolute;
  bottom: 246px;
  display: block;
  width: 100%;
  font-size: 40px;
  line-height: 1;
  color: #fff;
  text-align: center;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 9999;
}
.keyvisual {
  position: relative;
  text-align: center;
  color: #fff;
  padding-top: 6em;
}
.keyvisual h1 {
  font-size: 4em;
  line-height: 1.5em;
  margin-top: 24px;
  text-shadow: 0px 0px 8px #000;
}
.three-point {
  display: flex;
  color: #fff;
  justify-content: center;
}
.three-point div {
  border: solid thin #fff;
  padding: 4px 24px;
  margin: 0 4px;
  font-weight: bold;
  border-radius: 16px;
}
#other-ranking {
  padding: 40px 0;
  text-align: center;
  margin: 0 auto;
}
.other-ranking-wrapper {
  display: flex;
  margin: 1.2em;
}
.other-ranking-wrapper a {
  width: 33%;
  margin: 10px;
  text-decoration: none;
}
.other-ranking-item {
  display: flex;
  padding: 10px;
  border-radius: 10px;
  border: solid 4px #000;
  align-items: center;
}
.other-ranking-left {
  margin-right: 10px;
}
.other-ranking-left img {
  width: 120px;
  min-width: 120px;
}
.other-ranking-right {
  position: relative;
}
.other-ranking-right h3 {
  font-size: 20px;
  text-align: left;
  color: #000;
  transition: 0.2s;
}
.other-ranking-right div {
  color: #333;
  font-size: 14px;
  font-weight: normal;
  text-align: left;
}
/*#genre{
	text-align: center;
	width: 1256px;
    margin: 0 auto 60px;
    padding: 8px 0 26px 0;
    border-radius: 8px;
}*/
.genre-wrapper {
  display: flex;
  justify-content: space-around;
  margin: 0 120px;
}
.genre-wrapper a {
  text-decoration: none;
}
.genre-item {
  display: flex;
  align-items: center;
  background-color: #fff;
  border-radius: 16px;
  padding: 0 55px;
  background: #1e5799; /* Old browsers */
  background: -moz-linear-gradient(top, #1e5799 0%, #2989d8 50%, #207cca 51%, #7db9e8 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #1e5799 0%, #2989d8 50%, #207cca 51%, #7db9e8 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #1e5799 0%, #2989d8 50%, #207cca 51%, #7db9e8 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  border: solid 4px #1af;
  transition: 0.5s ease;
}
.genre-item:hover {
  opacity: 0.6;
}
.genre-item h4 {
  color: #000;
  font-size: 1.4em;
}
.genre-item img {
  width: 90px;
}
.arrow-section {
  width: 1256px;
  margin: 0 auto;
  text-align: center;
  /*margin-top: -70px;*/
}
.arrow-section a {
  z-index: 2;
  display: inline-block;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  text-decoration: none;
  padding-top: 30px;
  color: #fff;
}
.arrow-section a span {
  position: absolute;
  top: 0;
  left: 50%;
  width: 24px;
  height: 24px;
  margin-left: -12px;
  border-left: 1px solid #fff;
  border-bottom: 1px solid #fff;
  -webkit-transform: rotateZ(-45deg);
  transform: rotateZ(-45deg);
  -webkit-animation: sdb 1.5s infinite;
  animation: sdb 1.5s infinite;
  box-sizing: border-box;
}
@-webkit-keyframes sdb {
  0% {
    -webkit-transform: rotateY(0) rotateZ(-45deg) translate(0, 0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    -webkit-transform: rotateY(720deg) rotateZ(-45deg) translate(-20px, 20px);
    opacity: 0;
  }
}
@keyframes sdb {
  0% {
    transform: rotateY(0) rotateZ(-45deg) translate(0, 0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: rotateY(720deg) rotateZ(-45deg) translate(-20px, 20px);
    opacity: 0;
  }
}
.side-ikumouzai {
  position: relative;
}
.side-ikumouzai .side-ikumouzai-l {
  position: absolute;
  left: -120px;
  bottom: -40px;
}
.side-ikumouzai .side-ikumouzai-r {
  position: absolute;
  right: -110px;
  bottom: -40px;
}
.float {
  animation: float_5986 2s linear infinite;
  transform-origin: 50% 50%;
}
.float2 {
  animation: float_5986 2s linear infinite;
  transform-origin: 50% 50%;
  animation-duration: 1.5s;
}
@keyframes float_5986 {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-6px);
  }
  100% {
    transform: translateY(0);
  }
}
.mark01 {
  color: #f00;
  font-weight: bold;
}
.mark02 {
  color: #00f;
  font-weight: bold;
}
.ikumou-column-more .alm-reveal {
  display: flex;
  flex-wrap: wrap;
  margin: 1.2em;
}
.ikumou-column-more .alm-reveal li {
  padding: 10px;
  border-radius: 10px;
  box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.15);
  margin: 10px !important;
  width: 31%;
  min-height: 120px;
  list-style-type: none;
}
.ikumou-column-more .alm-reveal li h3 {
  font-size: 14px;
  text-align: left;
  color: #333;
  font-weight: normal;
  transition: 0.2s;
  line-height: 1.5;
}
.ikumou-column-more .alm-reveal li h3 a {
  text-decoration: none;
  color: #333;
}
.ikumou-column-more .alm-reveal li p {
  font-size: 12px;
  display: none;
}
.alm-reveal li .btn-more {
  border: 1px solid #ddd;
  border-radius: 100px;
  height: 28px;
  font-size: 14px;
  color: #333;
  transition: background-color 0.2s ease, color 0.2s ease;
  margin: 8px;
  cursor: pointer;
}
.alm-reveal li .btn-more:hover {
  background-color: #9acd32;
  color: #fff;
}
#cartoon {
  width: 860px;
  margin: 0 auto;
  position: relative;
}
#cartoon img {
  border: solid #000 3px;
}
.text-red {
  color: #f00;
  font-weight: bold;
}
#lp-card{
  display: flex;
  justify-content: center;
}
#lp-card-wrapper{
  padding: 6px 6px 12px;
  margin-bottom: 12px
}
.lp-card-item{
  background-color: #fff;
  width: 33%;
  padding: 16px;
  max-width: 236px;
  margin: 0 8px;
  box-shadow: 12px 12px 24px #d9d9d9, -12px -12px 24px #ffffff;
}
#lp-card-wrapper h3{
  color: #19448e;
  font-size: 1.1rem;
  text-align: center;
}
#ichiran{
  text-align: center;
}
#kyujinrei{
  max-width: 1000px;
  margin: 0px auto 40px;
  position: relative;
  border-top: 3px solid #8bc34a;
  background-color: #fff;
  box-shadow: 0 1px 4px 0 rgba(0,0,0,0.15);
  border-radius: 3px;
  padding: 8px;
  font-weight: bold;
}
.mySwiper {
  width: 90%;
}
.swiper-backface-hidden .swiper-slide {
  border: solid thin #000;
  padding: 0 0 22px 0;
}
.button-jump {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 90%;
  max-width: 400px;
  margin: 8px auto 0;
  padding: 0.5em;
  background: linear-gradient(-15deg, #8B7326 20%, #D9BC41 50%, #8B7326 80%);
  border-radius: 6px;
  text-align: center;
  color: #fff;
  text-decoration: none;
  position: relative;
  overflow: hidden;
}
#sokyu {
  padding: 16px;
}
.sokyu-wrapper {
  display: flex;
  justify-content: space-around;
  max-width: 1330px;
  margin: 0 auto 100px;
}
.sokyu-wrapper > div {
  flex-basis: 30%;
  border: solid;
  border-radius: 8px;
  background: #fff;
  box-shadow: 12px 12px 10px #c9c9c9, 0px 0px 10px #fff;
  padding: 12px;
}
.sokyu-wrapper img {
  display: block;
  margin: 0 auto;
  width: 50%;
}
#sokyu h2 {
  margin: 20px 0;
  text-align: center;
}
#sokyu h3 {
  text-align: center;
  color: #030c41;
  line-height: 1.6;
  margin-bottom: 1.4em;
  font-size: 1.5em;
}
#sokyu-pc{
  max-width: 900px;
  margin: 0 auto 40px;
  padding: 10px;
}
.sokyu-pc-title {
  display: flex;
  padding: 10px;
  border-style: solid;
  border-width: 1px;
  border-color: #030c41;
  transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
  margin-bottom: 12px;
  align-items: center;
}
.sokyu-pc-title-l {
  padding: 10px 0;
  background-color: #030c41;
  width: 18%;
  text-align: center;
  color: #fff;
  font-weight: bold;
}
.sokyu-pc-title-r {
  color: #3f3f3f;
  font-size: 1.8em;
  font-weight: 700;
  width: 81.332%;
  text-align: center;
}
.sokyu-pc-article-l {
  width: 100%;
  margin-right: 0;
}
.sokyu-pc-article-l p {
  margin-bottom: 1.2em;
  font-size: 14px;
}
.sokyu-pc-article-r {
  width: 33.333%;
  float: right;
}
#sokyu-sp {
  display: none;
}
.cp_point {
  position: relative;
  margin: 72px auto 30px;
  padding: 35px 20px 25px 50px;
  border: 3px double #aa871b;
  background-color: #fff;
  border-radius: 10px;
  max-width: 730px;
}
.cp_point::before {
  position: absolute;
  top: -1.25em;
  left: 1.5em;
  content: attr(title);
  padding: 0.3em 0.5em 0 2em;
  font-size: 90%;
  font-weight: bold;
  color: #aa871b;
  height: 27px;
  background-color: #fcfcfc;
  border-radius: 20px;
  border: 2px solid #aa871b;
}
.cp_point::after {
  position: absolute;
  top: -1em;
  left: 0.5em;
  font-family: FontAwesome;
  content: "\f164 ";
  padding: 0.3em 0 0 0;
  font-size: 18px;
  color: #fff;
  line-height: 25px;
  text-align: center;
  width: 35px;
  height: 30px;
  background-color: #aa871b;
  border-radius: 20px 0 0 20px;
}
.cp_point > li {
  position: relative;
  list-style-type: none;
}
.cp_point > li::before {
  position: absolute;
  top: 0.25em;
  left: -1.5em;
  font-family: FontAwesome;
  content: "\f138 ";
  color: #bbb;
}
.cp_point h4 {
  text-align: center;
  margin-top: 24px;
  border: solid thin #000;
  max-width: 400px;
  margin: 24px auto 8px;
}
.kumiawase-list {
  display: flex;
  justify-content: center;
  list-style-type: none;
  padding: 0;
  max-width: 550px;
  margin: 0 auto;
}
.kumiawase-item {
  flex-basis: 50%;
  padding: 8px;
  text-align: center;
  max-width: 200px;
}
/************************ランキングスタート********************/
.fukidashi {
  margin: 0;
  padding: 17px;
  background-color: #f4efe1;
  border-radius: 10px;
  box-shadow: 2px 2px 2px 0px rgba(0, 0, 0, 0.2);
  position: relative;
}
.fukidashi-nurse {
  width: 96px;
  padding: 10px;
  min-width: 96px;
}
.fukidashi-wrapper {
  padding: 0 120px 15px 60px;
  display: flex;
}
.ranking-title {
  text-align: center;
  margin-bottom: 1em;
}
.ranking-title strong {
  position: relative;
  display: inline-block;
  margin: .75rem 0 0;
  font-size: 1.5rem;
  line-height: 1;
  letter-spacing: .05em;
  color: #030c41;
}
.ranking-title strong::before {
  content: "";
  position: absolute;
  background: #030c41;
  width: .25rem;
  height: 1.75rem;
  left: -1.5rem;
  top: 0;
  bottom: 0;
  margin: auto;
  -webkit-transform: rotate(-30deg);
  -ms-transform: rotate(-30deg);
  transform: rotate(-30deg);
}
.ranking-title strong::after {
  content: "";
  position: absolute;
  background: #030c41;
  width: .25rem;
  height: 1.75rem;
  right: -1.5rem;
  top: 0;
  bottom: 0;
  margin: auto;
  -webkit-transform: rotate(30deg);
  -ms-transform: rotate(30deg);
  transform: rotate(30deg);
}
.ranking-items{
  margin: 0 auto;
}
.ranking-item {
  border: none;
  margin-bottom: 1rem;
  border-radius: 12px;
  background: #ffffff;
  box-shadow:  12px 12px 24px #d9d9d9,
              -12px -12px 24px #ffffff;
  border-top: solid 10px #0d3775;
}
.ranking-item-title {
  padding: 0;
}
.ranking-item-title h4 {
  font-size: 26px;
  color: #ed143d;
  margin-bottom: 8px
}
.ranking-item .ranking-item-name {
  padding: 3px 2px 16px;
}
.ranking-item-name-text {
  font-size: 30px;
  font-weight: bold;
}
.ranking-item-name-text a{
  color: #000;
  text-decoration: none;
}
.ranking-item-rating {
  text-align: right;
  margin-top: -30px;
  position: relative;
}
.ranking-item-image-tag {
  width: 40% !important;
  max-width: 200px;
}
.ranking-item-image-tag .rank-img-sp {
  display: none !important;
}
.ranking-item-img-desc {
  margin: 8px 0;
}
.ranking-item-description {
  margin-top: 0;
}
.ranking-item-description strong {
  color: #e60033;
}
.ranking-item-koumoku-wrapper{
  width: 100%;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 4px;
  margin-bottom: 36px;
}
.ranking-item-koumoku dt{
  background-color: #0d3775;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: .8rem;
  padding: .4rem 1rem;
}
.ranking-item-koumoku dd{
  border: 1px solid rgba(34, 75, 123, .15);
  width: 100%;
  padding: .8rem;
}
.ranking-comment-wrapper {
  display: flex;
  padding: 10px 20px;
}
.ranking-comment {
  border: solid 4px #d1c0a5;
  padding: 8px;
  border-radius: 8px;
}
.ranking-comment:after {
  content: "";
  position: absolute;
  right: 84px;
  bottom: 85px;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-color: transparent transparent transparent #d1c0a5;
  border-width: 10px 20px 10px 20px;
}
.fukidashi:after {
  content: "";
  position: absolute;
  right: -37px;
  bottom: 48px;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-color: transparent transparent transparent #f4efe1;
  border-width: 10px 20px 10px 20px;
}
.ranking-comment-right {
  flex-basis: 100px;
  flex-shrink: 0;
}
.ranking-table {
  table-layout: fixed;
  margin-bottom: 0;
}
.ranking-table th,
.ranking-table-sp th {
  background-color: #f9f9ea;
  white-space: nowrap;
}
.ranking-table th {
  font-size: 14px;
}
.ranking-table td {
  text-align: center;
  font-size: 14px;
}
.ranking-item-detail {
  flex-shrink: 2;
}
.ranking-item-detail a {
  background: #cfcfcf linear-gradient(to bottom, #c7c9c7, #bcbfbc 1px, #bcbfbc 50%, #a8a8a8 50%, #cfcfcf);
}
.ranking-item-link a {
  border-bottom: solid 4px #30a435;
  border-radius: 8px;
  background: #3fca3a linear-gradient(to bottom, #58ca54, #29be22 1px, #29be22 50%, #05a800 50%, #3fca3a) !important;
}
.ranking-item-link a:hover {
  color: #fff !important;
  background-color: #ff7200 !important;
  border-top: solid 2px transparent !important;
  border-left: solid 2px transparent !important;
  border-right: solid 2px transparent !important;
  border-bottom: solid 4px rgba(181, 86, 10, 1) !important;
  opacity: 0.7;
}
.interviewauthor {
  display: flex;
  border: solid 3px #2882b4;
  background-color: #e9f3ff;
  padding: 10px;
  margin-bottom: 15px;
}
.interviewauthor p {
  margin: 0;
}
.evaluationTable td {
  background-color: #fff;
}
.detail-table th {
  min-width: 100px;
}
.sindan-title {
  margin-bottom: 10px;
}
.btmicro-copy {
  text-align: center;
  color: #fff;
  background-color: #e60033;
  margin: 20px auto;
  width: 380px;
  font-size: 12px;
  border-radius: 30px;
  position: relative;
  top: 4px;
  padding: 6px;
  animation-name: microbaloon;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-duration: 0.5s;
}
.btmicro-copy:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -6px;
  left: 0;
  width: 0;
  height: 0;
  margin: auto;
  border-style: solid;
  border-color: #e60033 transparent transparent;
  border-width: 6px 6px 0;
}
@keyframes microbaloon {
  0% {
    transform: translate(0, 0px);
  }

  100% {
    transform: translate(0, -4px);
  }
}
.ac-container {
  border-top: none;
}
.ac-container label {
  display: block;
  cursor: pointer;
  background: #cfcfcf linear-gradient(to bottom, #c7c9c7, #bcbfbc 1px, #bcbfbc 50%, #a8a8a8 50%, #cfcfcf);
  width: 100%;
  text-align: center;
  color: #fff;
  margin: 0 0 8px;
  padding: 14px 0;
  font-size: 18px;
  font-weight: 700;
  border-radius: 4px;
  border-bottom: solid 4px rgba(147, 147, 147, 1);
}
.ac-article {
  overflow: hidden;
  height: 0;
}
.ac-article h4 {
  margin-bottom: 12px;
  border-bottom: solid thin #000;
}
.ac-container input {
  display: none;
}
.ac-container input:checked ~ .ac-article {
  height: 100%;
}
.ac-container .sbp-l {
  margin-right: 1em;
}
.ac-container .speech-balloon p {
  font-size: 12px;
}
.ranking-item .search-tag {
  margin: 12px 0;
  text-align: left;
}
.ranking-item .search-tag ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.ranking-item .search-tag ul li {
  background-color: #fffaf1;
  border: solid thin #ff8800;
  color: #ff8800;
  font-size: 12px;
  padding: 1px 3px;
  margin-right: 6px;
  display: inline-block;
}
.introduction {
  padding: 12px;
  border: solid 3px #ff8f00;
  border-radius: 8px;
  margin: 24px 0;
  min-height: 96px;
  position: relative;
}
.introduction dt{
  background-color: #ff8f00;
  color: #fff;
  font-weight: bold;
  padding: 6px;
  position: absolute;
  left: -3px;
  top: -26px;
  margin-bottom: 1rem;
}
.modal .h5, h5 {
  font-size: 1rem;
  margin-bottom: .8rem;
  margin-top: 0;
  font-weight: 500;
  line-height: 1.2;
}
.ranking-item-link a {
  overflow: hidden;
}
.ranking-item-link a:before {
  content: "";
  height: 100%;
  width: 30px;
  position: absolute;
  top: -180px;
  left: 0;
  background-color: #fff;
  opacity: 0;
  transform: rotate(45deg);
  animation: reflection 3s ease-in-out infinite;
}
@keyframes reflection {
  0% {
    transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  80% {
    transform: scale(0) rotate(45deg);
    opacity: 0.5;
  }
  81% {
    transform: scale(4) rotate(45deg);
    opacity: 1;
  }
  100% {
    transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}
/************************ランキングエンド********************/

.h-line {
  color: #19448e;
  margin-top: 10px;
  text-align: center;
  padding: 2px 8px;
  font-size: 1.1rem;
  font-weight: bold;
}
.tb_list {
  display: flex;
  margin: 0 auto;
  padding: 0;
  list-style: none;
  max-width: 1030px;
  flex-wrap: wrap;
}
.tb_item {
  width: 50%;
  border: 1px solid #ddd;
  font-weight: bold;
}
@media screen and (max-width: 480px) {
  .tb_item {
    width: 100%;
  }
}
.tb_list .tb_item a {
  position: relative;
  display: block;
  padding: 25px 25px 25px 67px;
  overflow: hidden;
  font-size: 16px;
  line-height: 14px;
  color: #222;
  white-space: nowrap;
  text-overflow: ellipsis;
  text-decoration: none;
}
.tb_list .tb_item a:after {
  position: absolute;
  top: 50%;
  right: 20px;
  display: block;
  content: "";
  border-top: 2px solid #ddd;
  border-right: 2px solid #ddd;
  width: 10px;
  height: 10px;
  transform: rotate(45deg) translate(0, -50%);
}
.tb_list .tb_item a:hover {
  color: #0364a7;
}
.tb_list .tb_item a:hover::after {
  border-color: #0364a7;
}
.tb_list .tb_item a img {
  position: absolute;
  top: 50%;
  left: 18px;
  display: block;
  width: 32px;
  height: 32px;
  transform: translate(0, -50%);
}
/* .triangle {
  width: 50px;
  height: 30px;
  background-color: #000;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  margin: 0 auto 30px;
} */

/**************** 転職の流れ*******************/
#flow{
  margin: 24px auto 0;
}
.flow-wrapper{
  max-width: 780px;
  margin: 0 auto;
}
.flow-contents{
  display: flex;
  justify-content: space-between;
  list-style: none;
  padding: 32px 0;
}
.flow-items{
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 171px;
}
.flow-items + .flow-items {
  position: relative;
}
.flow-items + .flow-items::after {
  content: "";
  position: absolute;
  top: 62px;
  left: -50%;
  width: 100%;
  height: 0;
  border: 1px dashed #005982;
}
.flow-itemsNum{
  line-height: 1;
  font-weight: bold;
  color: #005982;
}
.flow-itemsIcon{
  width: 70px;
  height: 70px;
  margin-top: 8px;
  z-index: 1;
}
.flow-itemsTtl{
  font-size: 1rem;
  line-height: 1;
  font-weight: bold;
  color: #005982;
  margin-top: 8px;
}
.flow-itemsTxt{
  line-height: 2;
  color: #2d2d2d;
  letter-spacing: -0.6px;
  margin-top: 8px;
}
.oisogi{
  border: solid thin #c5c5c5;
  border-radius: 5px;
  max-width: 770px;
  margin-inline: auto;
  margin-bottom: 3em;
  margin-top: 3em;
}
.oisogi h5{
  text-align: center;
  background-color: #fff7cc;
  padding: 16px;
  font-size: 1.2em;
}
.oisogi p{
  padding: 16px;
}
@view-transition {
  navigation: auto;
}

/**********************************************************************************************************
** レスポンシブデザイン用のメディアクエリ
**********************************************************************************************************/
/*1280px以下*/
@media screen and (max-width: 1280px) {
  .search-text-wrpper {
    margin: 1.8em -2em 1.8em 6em;
  }
  #genre {
    width: 100%;
  }
  .arrow-section {
    width: 100%;
  }
  .side-ikumouzai .side-ikumouzai-l {
    left: 10px;
    bottom: 50px;
    height: 150px;
  }
  .side-ikumouzai .side-ikumouzai-r {
    right: 10px;
    bottom: 90px;
    height: 150px;
  }
  .type-lead {
    width: auto;
    padding: 20px 60px;
  }
  .lp03-header-in {
    width: auto;
  }
}

/*1030px以下*/
@media screen and (max-width: 1030px) {
  .lp01-header-in {
    width: 100%;
  }
  .lp02-header-in {
    width: 100%;
  }
  .lp01-header-in2 {
    width: 100%;
    padding: 0 12px;
    margin-top: -20px;
  }
  #search-form-wrapper {
    width: 100%;
  }
  .rankingUpdate {
    top: 27%;
    width: 100%;
    font-size: 32px;
  }
  .rankingUpdate-ca {
    top: -49%;
    width: 100%;
    font-size: 40px;
  }
  .slideLR01MF {
    bottom: 420px;
  }
  .slideLR02MF {
    bottom: 277px;
  }
  .rank-item-list {
    flex-basis: 310px;
    min-width: 310px;
  }
  .hyouka-star {
    font-size: 1em;
  }
  .hyouka-star span {
    margin-left: 8px;
  }
  .rank-item01-image {
    width: 160px;
    padding-right: 0px;
    flex-basis: 160px;
  }
  .rank-item02-wrapper table {
    width: 380px;
  }
  .genre-wrapper {
    margin: 0 60px;
  }
  .type-lead-item-in {
    padding: 4px 4px 4px 90px;
  }
  .ikumou-column-more .alm-reveal li {
    width: 47%;
  }
  .sokyu-wrapper {
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto 32px;
  }
}

/*768px以下*/
@media screen and (max-width: 768px) {
  .header-container-in.hlt-top-menu .logo-header {
    max-width: 160px;
  }
  .header-container-in.hlt-top-menu {
    display: block;
}
  .entry-title {
    font-size: 24px;
  }
  .mobile-none {
    display: none;
  }
  .lp01-header-in {
    height: 340px;
  }
  .lp01-header-in-r {
    min-width: 330px;
    overflow: hidden;
    width: 400px;
  }
  .lp01-header-in-r img {
    right: -50px;
  }
  .lp01-header-in2,
  .lp02-header-in2 {
    width: 100%;
  }

  #lp02-header {
    display: none;
  }
  .lp02-header-in {
    width: 100%;
    height: auto;
    padding-bottom: 0;
    margin-bottom: 0;
    min-height: 210px;
  }
  .lp02-header-in h2 {
    padding-top: 60px;
  }
  .keyvisual {
    padding-top: 5em;
  }
  .keyvisual h1 {
    font-size: 2.1em;
    line-height: 1.5em;
    margin-top: 24px;
  }
  .lp02-header-in2 img {
    display: block;
    width: 100%;
    padding-bottom: 10px;
  }
  #lp02-header-sp{
    display: block;
    background: linear-gradient(93.44deg,#eaf0f6,#eaf0f6 57.98%,#95adc2);
    overflow: hidden;
  }
  .ribbon1 {
    bottom: 0;
    padding: 0px 8px;
}
  #lp-card {
    justify-content: space-around;
}
  #lp-card-wrapper{
    background-color: #1b6b91;
  }
  
  .lp-card-item{
    padding: 6px;
    margin: 0 4px;
  }
  #lp-card-wrapper h3{
  font-size: 1.3em;
  text-align: center;
  color: #fff;
}

  #kyujinrei{
    margin: 0 auto 40px;
  }
  .header-lead {
    margin: -10px 136px 0;
  }
  .ranking-list ul {
    margin: 0;
    padding: 0;
  }
  .ranking-list ul li:before {
    left: -1.3em;
  }
  .rank-item {
    padding: 10px 4px;
  }

  .rank-item00-wrapper {
    flex-wrap: wrap;
  }
  .rank-item02-wrapper table {
    width: 100%;
    max-width: 330px;
  }
  .rank-item00-wrapper table th {
    white-space: nowrap;
  }
  .rank-item00-wrapper table td {
    min-width: 30px;
  }
  .rank-item02-wrapper {
    padding-left: 0px;
  }
  .rank-item-list {
    flex-basis: 100%;
    min-width: 100px;
  }
  #ranking .rank-item01-wrapper .rank-item-list ul {
    margin-left: 0px;
    padding: 0 0 0 10px;
  }
  .rank-item-list ul li {
    font-size: 14px;
  }
  .rank-item01-image {
    width: 120px;
    padding-right: 20px;
    flex-basis: 120px;
  }
  .rank-item01-wrapper {
    margin-bottom: 10px;
    max-width: 380px;
  }
  .hyouka-star {
    font-size: 1em;
    text-align: center;
    padding: 4px 0;
    margin: 0 0 8px 0;
  }
  .hyouka-star span {
    padding: 0 6px;
    margin-left: 0px;
  }
  .rank-item h3 {
    font-size: 1.8em;
    margin-bottom: 2px;
  }
  .rank-bt {
    padding: 4px;
  }
  .rank-item-wrapper:nth-of-type(1) .rank-item h3:before,
  .rank-item-wrapper:nth-of-type(2) .rank-item h3:before,
  .rank-item-wrapper:nth-of-type(3) .rank-item h3:before {
    vertical-align: text-bottom;
    width: 50px;
    height: 50px;
  }
  #search-form-wrapper {
    width: 100%;
  }
  #search-form {
    width: 100%;
    padding: 8px;
  }
  .comment-wrapper {
    padding: 6px;
  }
  #feas-searchform-0 {
    display: block;
  }
  #feas-searchform-0 label {
    display: flex;
    margin-bottom: 8px;
    max-width: none;
  }
  #feas-searchform-0 select {
    font-size: 16px;
    margin-left: 4px;
    padding: 8px;
  }
  input[type="submit"], #bbp_reply_submit, .bp-login-widget-register-link a {
    background: #3fca3a linear-gradient(to bottom, #58ca54, #29be22 1px, #29be22 50%, #05a800 50%, #3fca3a) !important;
    color: #fff;
    border: none;
    border-radius: 5px;
    font-size: 18px;
    font-weight: 700;
}
  .search-title {
    width: 156px;
    padding: 2px;
    font-size: 14px;
    margin: 0;
  }
  .search-text {
    font-size: 14px;
  }
  #feas-submit-button-0 {
    width: 100%;
    margin-top: 2px;
    font-size: 18px;
  }
  .content-in {
    margin: 0 4px;
  }
  .mobile-menu-buttons {
    background: #000;
  }
  .micro-copy {
    width: 100%;
    font-size: 15px;
  }
  .btmicro-copy {
    width: 90%;
    margin: 12px auto;
  }
  .search-text-wrpper {
    margin: 1.2em 0;
    padding: 0 10px;
  }
  .sp-price {
    margin-top: 0;
  }
  .sp-price dt {
    padding: 0px 14px;
  }
  .n-price dt {
    padding: 0px 22px;
  }
  #question {
    width: 100%;
  }
  .cp_qa .cp_qanda {
    position: relative;
    margin: 0 0 2em 3em;
    padding: 0 0 0 1em;
    border-left: 1px solid #333333;
  }
  .cp_qa .quest {
    position: initial;
    text-align: left;
    display: block;
  }
  .cp_qa .cp_qanda::before {
    left: -1em;
    font-size: 3em;
  }
  .cp_point{
    font-size: 1em;
    padding: 30px;
  }
  .ikumou-column-wrapper {
    display: block;
    margin: 0;
  }
  .still:after {
    top: 50%;
    right: 20px;
    margin-top: -8px;
  }
  .ok:after {
    top: 50%;
    right: 20px;
    margin-top: -8px;
  }
  .search-item-detail {
    flex-wrap: wrap;
  }
  .search-item-detail-in {
    display: flex;
  }
  .search-item-list {
    flex-basis: 100%;
    min-width: 100px;
    font-size: 14px;
  }
  .search-item-list ul {
    padding: 0 0 0 18px;
    margin: 0;
    line-height: 1.6;
  }
  .search-item-image {
    width: 120px;
    padding-right: 8px;
    flex-basis: 120px;
  }
  .search-item-table table {
    font-size: 12px;
  }
  .search-bt {
    width: 100%;
    padding: 0 2px;
  }
  .search-bt a {
    padding: 12px;
    border-radius: 30px;
  }
  .search-bt a .fa {
    top: 20px;
  }
  .rankingUpdate {
    top: 43%;
    width: 100%;
    font-size: 20px;
  }
  .rankingUpdate-ca {
    top: 22%;
    width: 100%;
    font-size: 20px;
  }
  .slideLR01MF {
    bottom: 320px;
    width: 380px;
  }
  .slideLR02MF {
    bottom: 210px;
    width: 510px;
  }
  #other-ranking {
    padding-bottom: 0;
  }
  .other-ranking-wrapper {
    display: block;
    margin: 0;
  }
  .other-ranking-left img {
    width: 80px;
    min-width: 80px;
  }
  #genre {
    margin: 24px auto;
  }
  .genre-wrapper {
    margin: 0 12px;
  }
  .genre-item {
    padding: 0 36px;
  }
  .arrow-section {
    width: 100%;
    margin-top: -30px;
  }
  #lp03-header h2 {
    text-align: center;
    margin-bottom: 80px;
  }
  #lp03-header {
    padding-top: 30px;
  }
  #lp03-header h2 {
    margin-bottom: 20px;
  }
  .sokyu-pc-title-l{
    font-size: 10px;
    width: 24%;
    white-space: nowrap;
  }
  .sokyu-pc-title-r{
    font-size: 16px;
    text-align: left;
    line-height: 1.2;
    margin-left: 10px;
  }
  #cartoon {
    width: auto;
  }
  .header-btn .header-btn-l,.header-btn .header-btn-r{
    max-width: 160px;
  }
}

/*480px以下*/
@media screen and (max-width: 480px) {
  .header-lead {
    margin: 0px 10px 0;
    font-size: 14px;
    line-height: 1.6;
  }

  #genre {
    width: 98%;
    margin: 0px auto 24px;
    padding: 12px 2px;
  }
  .genre-wrapper {
    margin: 0;
    justify-content: space-around;
  }
  .rankingUpdate {
    top: 49%;
    width: 100%;
    font-size: 14px;
  }
  .rankingUpdate-ca {
    top: 32%;
    width: 100%;
    font-size: 16px;
    margin: 0;
  }
  .genre-item {
    padding: 0 20px 20px;
    display: block;
    border-radius: 8px;
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.15);
  }
  .genre-item img {
    width: 60px;
  }
  .genre-item h4 {
    font-size: 14px;
    position: relative;
    margin-top: -8px;
  }
  .genre-item h4:after {
    content: " ";
    position: absolute;
    right: 8%;
    bottom: -14px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 8px 24px 0 24px;
    border-color: #000000 transparent transparent transparent;
  }
  .arrow-section a span {
    width: 16px;
    height: 16px;
  }
  .content {
    margin-top: 0;
  }
  .side-ikumouzai .side-ikumouzai-l {
    left: 10px;
    bottom: 310px;
    height: 80px;
  }
  .side-ikumouzai .side-ikumouzai-r {
    right: 10px;
    bottom: 310px;
    height: 80px;
  }
  .rank-item01-wrapper {
    max-width: none;
  }
  .rank-item02-wrapper {
    width: 100%;
  }
  .rank-item02-wrapper table {
    width: 100%;
    max-width: none;
  }
  .type-lead {
    width: auto;
    padding: 20px 10px;
  }
  .type-lead-item-in {
    padding: 4px 4px 4px 20px;
  }
  .type-lead-item-in h3 {
    font-size: 1.3em;
  }
  .type-lead-item-in p {
    padding: 4px 12px;
    line-height: 1.6;
    font-size: 14px;
  }
  .lp01-header-in {
    height: 125px;
  }
  .lp01-header-in-r {
    min-width: 220px;
    width: 220px;
  }
  .lp01-header-in2 {
    margin-bottom: 0;
  }
  .slideLR01MF {
    bottom: 175px;
    left: 16px;
    width: 180px;
  }
  .slideLR02MF {
    bottom: 122px;
    width: 236px;
  }
  .lp03-header-in {
    padding-top: 20px;
  }
  .ikumou-column-more .alm-reveal {
    display: block;
    margin: 0;
  }
  .ikumou-column-more .alm-reveal li {
    width: auto;
  }
  #hikaku table td{
    font-size: 12px;
  }
  #hikaku th {
    line-height: 1.1em;
  }
  #hikaku .txt-s {
    font-size: 11px;
  }
  main.main {
    padding: 8px;
  }
  #sokyu {
    font-size: 14px;
    padding: 4px;
  }
  #sokyu h3 {
    font-size: 1.3em;
    margin-bottom: 0;
  }
  .sokyu-wrapper {
    padding: 34px;
  }
  .sokyu-wrapper > div {
    padding: 18px;
    flex-basis: 100%;
    margin-bottom: 16px;
  }
  .ranking-item-title {
    padding: 0 0 10px;
  }
  .ranking-item-title h4 {
    font-size: 16px;
  }
  .ranking-list {
    font-size: 14px;
    font-weight: normal;
    line-height: 1.2;
  }
  .ranking-list ul li {
    padding: 3px 0;
  }
  .ranking-item-image-tag {
    display: block;
    margin-inline: auto;
    margin-bottom: 8px;
  }
  .ranking-item-rating {
    text-align: right;
    margin-top: -10px;
    position: relative;
  }
  .ranking-item-img-desc {
    margin-top: 0px;
    display: block;
  }
  .ranking-item {
    padding: 14px;
    border-width: 6px;
  }
  .ranking-item-name-text {
    font-size: 24px;
  }
  .ranking-item-image-tag {
    width: 100% !important;
  }
  .ranking-item-image-tag .rank-img-sp {
    display: block !important;
  }
  .ranking-item-image-tag .rank-img-pc {
    display: none !important;
  }
  .ranking-comment-wrapper {
    padding: 0px;
  }
  .ranking-comment:after {
    right: 64px;
  }
  .ranking-item-link-buttons {
    display: flex;
  }
  .ranking-item-detail a {
    padding: 14px 0;
    font-size: 11px;
  }
  .ranking-item .ranking-table-sp {
    display: table;
    padding: 4px;
    margin: 6px 0;
  }
  .ranking-table th, .ranking-table td {
    font-size: 12px;
  }
  .ac-container label {
    font-size: 14px;
  }
  #search-form {
    border: none;
    border-radius: 18px;
    background: #ffffff;
    box-shadow:  8px 8px 16px #e0e0e0,
                -8px -8px 16px #ffffff;
  }
  #search-form h3 {
    font-size: 16px;
  }
  .ranking-item .search-tag {
    margin: 10px 0 16px;
  }
  .introduction {
    font-size: 14px;
  }
  .flow-itemsIcon{
    width: 52px;
    height: 52px;
    margin-top: 8px;
  }
  .flow-itemsTtl{
    font-size: 10px;
    margin-top: 8px;
  }
  .flow-itemsTxt{
    font-size: 10px;
    line-height: 1.6;
    letter-spacing: -0.6px;
    margin-top: 8px;
  }
  .flow-items + .flow-items::after {
    top: 46px;
  }
  .ranking-item-koumoku-wrapper{
    grid-template-columns: 1fr;
    gap: 2px;
  }
  .ranking-item-koumoku{
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    display: flex;
    margin-bottom: .1rem;
  }
  .ranking-item-koumoku dt{
    justify-content: flex-start;
    min-width: 25vw;
    font-size: 3vw;
    padding: .5rem 2vw;
    border-bottom: 1px solid rgba(34, 75, 123, .15);
    border-right: none;
  }
  .ranking-item-koumoku dd{
    padding: 2vw;
  }
}
/*320px以下*/
@media screen and (max-width: 320px) {
  .side-ikumouzai .side-ikumouzai-l {
    left: 10px;
    bottom: 320px;
    height: 80px;
  }
  .side-ikumouzai .side-ikumouzai-r {
    right: 10px;
    bottom: 320px;
    height: 80px;
  }
  .rank-bt a {
    text-align: center;
    color: #fff;
    padding: 12px;
    margin: 6px;
    transition: 0.5s ease;
  }
  .result_shousai {
    font-size: 12px;
  }
  .officialLink_s {
    font-size: 14px;
  }
  main.main,
  div.sidebar {
    padding: 10px 2px;
  }
  .micro-copy {
    font-size: 14px;
  }
  .genre-item {
    padding: 0 14px 20px;
  }
  .rankingUpdate-ca {
    top: 39%;
    font-size: 14px;
  }
}