@charset "utf-8";

.fixed-link {
  display: block;
  position: fixed;
  right: 0;
  top: 180px;
  z-index: 9999;
}

@media screen and (max-width: 640px) {
  .fixed-link {display: none;}
}

.page-header {
  color: #0e357f;
  font-size: 2.7rem;
  font-weight: bold;
  line-height: 1.2;
  margin: 1em 0 0;
  text-align: center;
}

.page-header em {
  display: block;
  font-size: 4.4rem;
}

@media screen and (min-width: 641px) {
  .page-header {
    font-size: 5.6rem;
    margin: 0;
  }

  .page-header em {
    display: inline-block;
    font-size: 1.5em;
  }
}

.go-assessment {
  text-align: center;
}

.go-assessment a {
  background-color: #fffd00;
  border: solid 1px #0e357f;
  border-radius: 3px;
  color: #0e357f;
  display: inline-block;
  font-size: 1.5rem;
  font-weight: bold;
  padding: 10px 18px;
  text-decoration: none;
}

.go-assessment em {
  font-size: 2.1rem;
  margin: 0 2px;
}

.go-assessment a::after {
  background: url("../img/btn_arrow_right.png") no-repeat center;
  background-size: 15px 18px;
  content: "";
  display: inline-block;
  height: 18px;
  margin-left: 3px;
  vertical-align: text-top;
  width: 15px;
}

.achievement-copy {
  background-color: #f18d00;
  color: #fff;
  font-size: 1.7rem;
  font-weight: bold;
  line-height: 1.4;
  margin: 0 0 10px;
  padding: 15px 20px;
  text-align: center;
}

.achievement-copy .note {
  color: #0e357f;
  font-size: 1.0rem;
}

.achievement-note {
  color: #0e357f;
  font-size: 1.0rem;
  margin: 0;
  padding: 0 15px;
}

@media screen and (max-width: 640px) {
  .achievement {margin: 15px -15px 30px;}
  .achievement img {width: 100%;}
}

@media screen and (min-width: 641px) {
  .achievement {margin-top: 30px;}

  .achievement-copy {
    font-size: 2.4rem;
    padding: 20px 25px;
    position: relative;
    text-align: left;
  }

  .achievement-copy img {
    height: 179px;
    margin-top: -90px;
    position: absolute;
    right: 0;
    top: 50%;
    width: 442px;
  }

  .achievement-note {padding: 0;}
}


/**
 * (common)
 */

.form-input-full,
.form-select-full {
  width: 100%;
}

.form-input-half,
.form-select-half {
  width: -webkit-calc((100% - 10px) / 2);
  width: calc((100% - 10px) / 2);
}
.form-input-half-separated,
.form-select-half-separated {
  width: -webkit-calc((100% - 40px) / 2);
  width: calc((100% - 40px) / 2);
}

.input-group {
  overflow: hidden;
  text-align: center;
}

.form-input-left,
.form-select-left {
  float: left;
}

.form-input-right,
.form-select-right {
  float: right;
}

.input-separator {
  display: inline-block;
  height: 37px;
  line-height: 37px;
}



/**
 * .form-proposal
 */
.form-proposal header {
  border-top: dashed 3px #0e357f;
  margin: 0 -15px;
  padding-top: 30px;
}

.form-proposal-lead {text-align: center;}

@media screen and (min-width: 641px) {
  .form-proposal {margin-top: 30px;}

  .form-proposal header {
    border-top: none;
    margin: 0;
  }
}

@media screen and (max-width: 640px) {
  .form-proposal table,
  .form-proposal tbody,
  .form-proposal tr,
  .form-proposal th,
  .form-proposal td {
    display: block;
  }
}

.form-proposal table {
  font-size: 1.3rem;
  width: 100%;
}

.form-proposal th {
  padding-bottom: 7px;
  text-align: left;
}

.form-proposal td {
  padding-bottom: 13px;
}

.form-proposal .required::before,
.form-proposal .any::before {
  border-radius: 2px;
  color: #fff;
  content: "";
  display: inline-block;
  margin-right: 5px;
  padding: 2px 5px;
}

.form-proposal .required::before {
  background: #f3430d;
  content: "必須";
}

.form-proposal .any::before {
  background: #0d94f3;
  content: "任意";
}

.form-proposal .send {
  margin-top: 13px;
  text-align: center;
}

.form-proposal .send .btn {
  margin-bottom: 13px;
  width: 100%;
}

.form-proposal .go-stock {
  background: #0e357f;
  margin: 15px -15px 30px;
  padding: 13px 15px;
  text-align: center;
}

.btn-stock {
  box-sizing: border-box;
  color: #fff100;
  display: inline-block;
  font-size: 1.3rem;
  padding: 13px 15px;
  width: 100%;
}

.btn-stock:hover {text-decoration: none;}

.btn-stock strong {
  color: #fff;
  font-size: 2.0rem;
  margin-right: 3px;
}

.btn-stock::before {
  background: url("../img/btn_arrow_bottom_yellow.png") no-repeat center;
  background-size: 19px 16px;
  content: "";
  display: inline-block;
  height: 16px;
  margin-right: 5px;
  width: 19px;
}

@media screen and (min-width: 641px) {
  .form-body {
    border: solid 1px #0e357f;
    border-radius: 10px;
    margin: 18px 0 50px;
    padding: 25px 45px;
  }

  .form-proposal-lead {
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.4;
    margin-top: 0;
  }

  .form-right table,
  .form-right tbody,
  .form-right tr,
  .form-right th,
  .form-right td {
    display: block;
  }

  .example {
    display: inline-block;
    height: 37px;
    line-height: 37px;
    margin: 0 0 0 5px;
  }

  .form-left .input-group {
    display: inline-block;
    vertical-align: middle;
    width: 190px;
  }

  .form-left .form-input-half {width: 90px;}

  .form-left .form-input-full,
  .form-left .form-select-full {
    width: 190px;
  }

  .form-proposal .form-left {
    float: left;
    width: 490px;
  }

  .form-proposal .form-right {
    float: right;
    width: 365px;
  }

  .form-left th {width: 165px;}
  .form-left td {width: 320px;}

  .form-proposal .btn-wrapper {
    margin-top: 40px;
  }

  .form-proposal .btn-wrapper .btn-orange {
    font-size: 2.4rem;
    margin-bottom: 15px;
    padding-left: 20px;
    padding-right: 20px;
    width: auto;
  }

  .form-proposal .btn-assessment {display: block;}

  .btn-stock {
    font-size: 2.0rem;
    font-weight: bold;
    width: auto;
  }

  .btn-stock::before {
    background-size: 27px 23px;
    height: 23px;
    width: 27px;
  }

  .btn-stock strong {
    font-size: 3.0rem;
    margin-right: .2em;
  }

}




/**
 * .forte
 */
.forte {
  background: #0e357f;
  padding: 10px 0 24px;
}

.forte-title {
  margin: 0;
  position: relative;
  top: 20px;
}

.forte-title img {width: 100%;}

.forte-item {
  border: solid 1px #365a9e;
  border-radius: 5px;
  margin-top: 18px;
  overflow: hidden;
}

.forte-item:first-of-type {margin-top: 0;}

.forte-item-heading {
  background-color: #fff100;
  color: #0e357f;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.2;
  margin: 0;
  padding: 10px 0;
  text-align: center;
}

.forte-item-heading em {
  font-size: 1.8rem;
  margin-left: 5px;
}
.forte-item-heading b {font-size: 2.4rem;}

.forte-item-inner {
  color: #fff;
  padding: 15px;
}

.forte-item-title {
  font-size: 1.8rem;
  font-weight: bold;
  margin: 0;
  text-align: center;
}

.forte-item img {
  margin: 1em 0;
  width: 100%;
}

.forte-item-body {margin: 0;}

.forte-item .marker-wrapper {
  font-size: 1.1em;
  font-weight: bold;
  margin-top: 1em;
  text-align: center;
}

.forte-item .marker {
  background: url("../../common/img/text_marker_blue.png") repeat-x left bottom;
}

.marker-wrapper {display: block;}
.top_visual_bg.yellow {
    background: #FAED00;
}
.top_visual_bg.yellow .pc {
    display: block;
}
.top_visual_bg.yellow img {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
}
@media screen and (min-width: 641px) {
  .forte {
    margin-top: 50px;
    padding-bottom: 50px;
  }

  .forte-title {margin: -70px 0 0;}

  .forte .columns {
    -js-display: flex;
    display: flex;
    margin: -20px 0 30px;
    overflow: hidden;
  }

  .forte-item {
    box-sizing: border-box;
    float: left;
    margin-left: 30px;
    margin-top: 0;
    width: 320px;
  }

  .forte-item:first-child {margin-left: 0;}

  .forte-item-last {
    float: none;
    margin-left: 0;
    width: 100%;
  }

  .forte-item-heading {font-size: 2.0rem;}
  .forte-item-heading em {font-size: 2.4rem;}

  .forte-item-heading b {
    font-size: 1.4em;
    margin: 0 .2em;
  }

  .forte-item-title {
    font-size: 3.0rem;
    line-height: 1.2;
  }

  .forte-item img.l-pc-show {
    display: block;
    margin: 1em auto;
    width: auto;
  }

  .forte-item:first-child .forte-item-title,
  .forte-item:nth-child(3) .forte-item-title {
    padding: .6em 0;
  }

  .forte-item-last .forte-item-inner {padding: 15px 25px 30px;}

  .forte-last-item-wrapper {overflow: hidden;}

  .forte-last-item-wrapper img.l-pc-show {
    float: left;
    margin: 0;
    width: auto;
  }

  .forte-last-item-wrapper .forte-item-body {
    margin-left: 235px;
  }

  .forte-item-last .forte-item-title {margin: .3em 0;}

  .forte-item-last .marker-wrapper {
    margin-left: 235px;
    margin-top: .5em;
    text-align: left;
  }

  .forte-item-last .marker br {display: none;}
}



/**
 * .flow
 */
.flow {padding: 25px 0 30px;}

.flow-header {
  color: #0e357f;
  font-size: 2.1rem;
  line-height: 1.2;
  text-align: center;
}

.flow-header em {
  display: block;
  font-size: 2.8rem;
}

.flow-item {border: solid 2px #0e357f;}

.flow-item-header {
  background: #0e357f;
  color: #fff100;
  font-size: 1.5rem;
  margin: 0;
  padding: 5px; 0;
  text-align: center;
}

.flow-item-header span {
  font-size: 1.0rem;
  margin-right: 5px;
}

.flow-item-inner {
  overflow: hidden;
  padding: 10px;
}

.flow-item img {
  float: left;
  width: 90px;
}

.flow-item-body {margin: 0 0 0 105px;}

@media screen and (min-width: 641px) {
  .flow-header {
    font-size: 3.0rem;
    margin-bottom: .5em;
  }

  .flow-header em {
    display: inline;
    font-size: 1em;
  }

  .flow-items {
    -js-display: flex;
    display: flex;
  }

  .flow-item {
    box-sizing: border-box;
    float: left;
    margin-left: 13px;
    width: 245px;
  }

  .flow-item:first-child {margin-left: 0;}

  .flow-item-header {
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.2;
    padding: .5em 0;
  }

  .flow-item-header span {
    display: block;
    font-size: 1em;
  }

  .flow-item-inner {
    padding: 1em;
    text-align: center;
  }

  .flow-item-inner img {
    float: none;
    width: 180px;
  }

  .flow-item-body {
    font-size: 1.4rem;
    margin: 1em 0 0 0;
    text-align: left;
  }
}


/**
 * .form-stock
 */
.form-stock header {
  /*border-top: dashed 3px #0e357f;*/
  margin: 0 -15px 20px;
  padding-top: 30px;
}

@media screen and (min-width: 641px) {
  .form-stock header {
    border-top: none;
    margin: 0 0 20px;
  }

  .form-groups {overflow: hidden;}
  .form-group {width: 440px;}
  .form-group-left {float: left;}
  .form-group-right {float: right;}

}

.form-groups {margin: 0 -15px;}

.form-group-title {
  background: #244c94;
  color: #fff;
  height: 36px;
  line-height: 36px;
  margin: 0;
  text-align: center;
}

.maker-tabs {
  background: #244c94;
  border-bottom: solid 3px #fde000;
  height: 35px;
  letter-spacing: -.4em;
  line-height: 35px;
  margin: 0;
  text-align: center;
}

.maker-tabs li {
  background: #0e357f;
  border-radius: 5px 5px 0 0;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-size: 1.5rem;
  letter-spacing: normal;
  margin-left: 20px;
  text-align: center;
  width: 135px;
}

.maker-tabs li:first-child {margin-left: 0;}

.maker-tabs .is-active {
  background: #fde000;
  color: #0e357f;
}

.flex-list {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 10px;
}

.flex-list > li {
  flex: 1 0 auto;
  font-size: 1.3rem;
  margin: 5px;
  padding: 1px 8px;
}


.flex-list li.suzuki {
	flex: none;
	}





.flex-list > li img {margin-right: 3px;}
.flex-list > .no-icon {text-align: center;}

.flex-list.body-types > li {
  /* flex-basis: calc((100% - 20px) / 2); */
  width: -webkit-calc((100% - 20px) / 2);
  width: calc((100% - 20px) / 2);
}

.body-types > li {
  height: 40px;
  line-height: 1.2;
  position: relative;
}

.body-types img {
  bottom: 0;
  margin: auto;
  position: absolute;
  top: 0;
  width: 33px;
}

.body-types span {
  display: block;
  left: 50px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.body-types .selected span {
  left: 49px;
}

.imported-items {display: none;}

.flex-list .selected {
  border: solid 2px #ff3c00;
  padding: 0 7px;
}

.form-group table {
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
}

.form-group th,
.form-group td {
  border-top: solid 1px #e6e6e6;
  box-sizing: border-box;
}

.form-group th {
  background: #f2f2f2;
  padding-left: 10px;
  text-align: left;
  width: 75px;
}

.form-group td {padding: 6px 10px;}

.form-group-right table {border-bottom: solid 1px #e6e6e6;}

@media screen and (min-width: 641px) {
  .maker-title {
    color: #244c94;
    font-size: 1.6rem;
    font-weight: bold;
    margin-bottom: 0;
  }

  .imported-items {
    -js-display: flex;
    display: flex !important;
  }

  .flex-list {
    padding: 0;
    margin: -5px;
  }

  .flex-list.body-types {margin-top: 15px;}

  .body-types > li {height: 60px;}

  .body-types img {
    left: 15px;
    width: 55px;
  }

  .body-types .selected img {left: 14px;}
  .body-types span {left: 100px;}
  .body-types .selected span {left: 99px;}


  .form-groups {margin-bottom: 20px;}

  .form-group th {
    padding-left: 20px;
    width: 110px;
  }

  .form-group td {padding: 13px 0 13px 17px;}
  .form-group-left table {border-bottom: solid 1px #e6e6e6;}
}

.keyword-search {
  margin: 20px 0;
  text-align: center;
}

.keyword-search label {
  display: block;
  font-size: 1.4rem;
  font-weight: bold;
  margin-bottom: 10px;
}

.keyword-search .form-input {
  width: -webkit-calc(100% - 70px);
  width: calc(100% - 70px);
}

@media screen and (min-width: 641px) {
  .keyword-search {
    clear: both;
    padding-top: 20px;
  }

  .keyword-search label {
    display: inline-block;
  }

  .keyword-search .form-input {
    margin-left: 20px;
    width: 280px;
  }
}

.form-stock .btn-wrapper {
  letter-spacing: -0.4em;
  margin: 0 15px;
  text-align: center;
}

.form-stock [type="reset"] {width: 100px;}

.form-stock [type="submit"] {
  font-size: 1.9rem;
  font-weight: bold;
  margin-left: 20px;
  padding: 17px 0;
  width: calc(100% - 120px);
}

@media screen and (min-width: 641px) {
.form-stock [type="submit"] {
  width: 300px;
}
}



/**
 * .search-navi
 */
.search-navi {padding-bottom: 30px;}

@media screen and (max-width: 640px) {
  .search-navi header {
    border-top: dashed 3px #0e357f;
    margin: 30px -15px 15px;
    padding-top: 30px;
  }

  .search-navi .line-heading-large-copy {
    font-size: 1.5rem;
    line-height: 1.2;
  }

  .search-navi .line-heading-large-subject {
    font-size: 2.4rem;
    line-height: 1.2;
    margin-top: 5px;
  }

  .search-navi .line-heading-large-subject strong {
    display: block;
    font-size: 2.8rem;
  }
}

.navi-items {overflow: hidden;}

.navi-item {
  background: #0e357f;
  border: solid 2px #0e357f;
  border-radius: 10px;
  box-sizing: border-box;
  margin-top: 10px;
  overflow: hidden;
  width: -webkit-calc(50% - 5px);
  width: calc(50% - 5px);
}

.navi-item:hover {opacity: .7;}

@media screen and (max-width: 640px) {
  .navi-item:nth-child(odd) {float: left;}
  .navi-item:nth-child(even) {float: right;}
  .navi-item:nth-child(-n+2) {margin-top: 0;}
}

.navi-item img {width: 100%;}
.navi-item img:hover {opacity: 1;}

.navi-item a {
  color: #fff;
  display: block;
  text-decoration: none;
}

.navi-item-header {
  background: url("../img/arrow_bottom_yellow.png") no-repeat center 5px;
  background-size: 11px 8px;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.3;
  margin: 0;
  padding: 15px 0 5px;
  text-align: center;
}

.navi-item-header strong {
  display: block;
  font-size: 1.6rem;
}

@media screen and (min-width: 641px) {
  .navi-items {padding-top: 30px;}

  .navi-item {
    float: left;
    margin-left: 20px;
    width: 240px;
  }

  .navi-item:first-child {margin-left: 0;}
}




/**
 * .ranking
 */
.ranking {
  background: #0e357f url("../img/ranking_bg.png") no-repeat center 160px;
  background-size: 409px 409px;
  padding: 17px 0 32px;
}

.ranking-header {text-align: center;}

@media screen and (max-width: 640px) {
  .ranking-header img {width: 83.62%;}
}

.ranking-tabs-wrapper {
  margin: 0 -15px;
  overflow-x: auto;
  position: relative;
  -webkit-overflow-scrolling: touch;
}

.ranking-tabs-wrapper::after {
  background: #06296c;
  content: "";
  display: block;
  height: 3px;
  left: 0;
  position: absolute;
  bottom: 0;
  width: 100%;
  z-index: 0;
}

.ranking-tabs {
  display: table;
  margin: 0 15px;
  position: relative;
  z-index: 100;
}

.ranking-tab {
  border-bottom: solid 3px #06296c;
  color: #fff;
  cursor: pointer;
  display: table-cell;
  font-size: 1.2rem;
  line-height: 1.4;
  padding: 10px 20px;
  text-align: center;
  vertical-align: middle;
  white-space: nowrap;
}

.ranking-tab-current {
  background: url("../img/arrow_bottom_yellow.png") no-repeat;
  background-position: center bottom 7px;
  background-size: 7px 5px;
  color: #fff100;
  border-color: #fff100;
  font-size: 1.5rem;
}

.ranking-maker .ranking-tabs {
  width: -webkit-calc(100% - 30px);
  width: calc(100% - 30px);
}

.ranking-maker .ranking-tab {width: 50%;}
.ranking-group {display: none;}
.ranking-group.is-active {display: block;}

.ranking-group-title {
  color: #fff;
  font-size: 1.5rem;
  text-align: center;
}

.ranking-model-top3 {
  overflow: hidden;
  text-align: center;
}

.ranking-model-rank2 {
  float: left;
  width: 50%;
}

.ranking-model-rank3 {
  float: right;
  width: 50%;
}

.ranking-title {color: #fff;}
.ranking-photo-wrapper {position: relative;}

.ranking-photo {
  box-shadow: 0 7px 20px 3px rgba(0,0,0,.3);
  box-sizing: border-box;
}

.ranking-trophy {position: absolute;}

.ranking-model-rank1 .ranking-photo {
  border: solid 3px #d3a92a;
  width: 58.62%;
}

.ranking-model-rank1 .ranking-trophy {
  bottom: -40px;
  height: 52px;
  left: 50%;
  margin-left: -29px;
  width: 58px;
}

.ranking-model-rank1 .ranking-title {
  font-size: 1.8rem;
  margin-top: 46px;
}

.ranking-model-rank1 .maker {font-size: 1.2rem;}

.ranking-model-rank2 .ranking-photo {
  border: solid 3px #e0e0e0;
  width: 79.3%;
}

.ranking-model-rank3 .ranking-photo {
  border: solid 3px #d07628;
  width: 79.3%;
}

.ranking-model-rank2 .ranking-trophy,
.ranking-model-rank3 .ranking-trophy {
  height: 36px;
  top: -24px;
  width: 46px;
}

.ranking-model-rank2 .ranking-trophy {left: 0;}
.ranking-model-rank3 .ranking-trophy {right: 0;}

.ranking-model-rank2 .ranking-title,
.ranking-model-rank3 .ranking-title {
  font-size: 1.3rem;
}

.ranking-model-rank2 .maker,
.ranking-model-rank3 .maker {
  font-size: 1.0rem;
}

.ranking-model-other {
  color: #fff;
  letter-spacing: -0.4em;
  margin: 15px -5px 0;
  text-align: center;
}

.ranking-model-other > li {
  box-sizing: border-box;
  display: inline-block;
  letter-spacing: normal;
  margin-top: 15px;
  padding: 0 5px;
  width: 25%;
}


.ranking-model-other .ranking-order {margin: 0;}
.ranking-model-other .ranking-photo {
  margin: 5px 0;
  width: 100%;
}

.ranking-model-other .ranking-title {
  font-size: 1.2rem;
  margin: 0;
  white-space: nowrap;
}

.ranking-model-other .maker {
  display: block;
  font-size: 1.0rem;
}

.ranking-maker {margin-top: 30px;}

.ranking-maker .ranking-group ul {text-align: center;}

.ranking-maker .ranking-group li {
  color: #fff;
  display: inline-block;
  margin: 0 0 15px 15px;
  padding-left: 30px;
  width: 18%;
}

.ranking-emblem-wrapper {position: relative;}

.ranking-emblem {
  background: #fff;
  width: 100%;
}

.ranking-emblem-wrapper .ranking-order {
  bottom: 0;
  left: -40px;
  margin: 0;
  position: absolute;
  text-align: right;
  width: 30px;
}

.ranking-maker .ranking-title {margin: 5px 0 0;}

.ranking-maker .ranking-group .ranking-maker-rank1 {
  margin-left: 0;
  width: 27%;
}

.ranking-maker .ranking-group .ranking-maker-rank2,
.ranking-maker .ranking-group .ranking-maker-rank3 {
  width: 20%;
}

.ranking-emblem-wrapper .ranking-trophy {
  bottom: 0;
  position: absolute;
}

.ranking-maker-rank1 .ranking-trophy {
  height: 35px;
  left: -30px;
  width: 39px;
}

.ranking-maker-rank2 .ranking-trophy,
.ranking-maker-rank3 .ranking-trophy {
  height: 24px;
  left: -23px;
  width: 31px;
}

@media screen and (min-width: 641px) {
  .ranking {
    background-image: url("../img/ranking_bg_pc.png");
    background-position: center 80px;
    background-size: 818px 818px;
    min-width: 1020px;
  }

  .ranking-tabs {
    margin: 0 auto;
    width: 100%;
    height: 100px;
    display: table;
  }

  .ranking-tabs-wrapper::after {height: 4px;}

  .ranking-tab {
    font-size: 1.6rem;
    font-weight: bold;
    padding: 20px;
  }

  .ranking-tab-current {
    font-size: 2.0rem;
    background-position: center bottom 10px;
    background-size: 14px 10px;
  }

  .ranking-group-title {
    font-size: 2.6rem;
    line-height: 1.2;
    margin: 22px 0 26px;
  }

  .ranking-model-top3 {overflow: visible;}
  .ranking-model-rank1 {display: inline-block;}

  .ranking-model-rank1 .ranking-photo {
    border-width: 5px;
    width: 320px;
  }

  .ranking-model-rank1 .ranking-trophy {
    bottom: -85px;
    height: 106px;
    margin-left: -57px;
    width: 115px;
  }

  .ranking-model-rank1 .ranking-title {
    font-size: 2.4rem;
    font-weight: bold;
    margin-top: 80px;
  }

  .ranking-model-rank1 .maker {font-size: 1.6rem;}

  .ranking-model-rank2,
  .ranking-model-rank3 {
    margin-top: 120px;
    width: 230px;
  }


  .ranking-model-rank2 .ranking-photo,
  .ranking-model-rank3 .ranking-photo {
    width: 220px;
  }

  .ranking-model-rank2 .ranking-title,
  .ranking-model-rank3 .ranking-title {
    font-size: 1.8rem;
    font-weight: bold;
  }

  .ranking-model-rank2 .maker
  .ranking-model-rank3 .maker {
    font-size: 1.4rem;
  }

  .ranking-model-rank2 .ranking-trophy,
  .ranking-model-rank3 .ranking-trophy {
    bottom: -30px;
    height: 76px;
    margin-left: 0;
    top: initial;
    top: auto;
    width: 92px;
  }

  .ranking-model-rank2 .ranking-trophy {
    left: initial;
    left: auto;
    right: -72px;
  }

  .ranking-model-rank3 .ranking-trophy {
    left: -72px;
    right: initial;
    right: auto;
  }

  .ranking-model-other {
    -js-display: flex;
    display: flex;
    margin-top: 0;
  }

  .ranking-model-other > li {margin-top: 0;}
  .ranking-model-other .ranking-photo {width: 100px;}

  .ranking-model-other .ranking-title {
    font-size: 1.4rem;
    margin-top: 5px;
  }

  .ranking-model-other .ranking-order {
    font-size: 1.2rem;
    font-weight: bold;
    height: 30px;
    line-height: 30px;
  }

  .ranking-model-other .ranking-order b {
    font-size: 1.8rem;
    margin-right: 3px;
  }

  .ranking-model-other .ranking-order em b {font-size: 2.4rem;}
  .ranking-model-other .ranking-order em {font-size: 1.4rem;}
  .ranking-model-other .ranking-maker {font-size: 1.2rem;}

  .ranking-maker .ranking-group-title {margin-bottom: 10px;}

  .ranking-maker ul {
    display: table;
    margin: 0 auto;
    width: 90%;
  }

  .ranking-maker .ranking-group .ranking-maker-rank1,
  .ranking-maker .ranking-group .ranking-maker-rank2,
  .ranking-maker .ranking-group .ranking-maker-rank3,
  .ranking-maker .ranking-group li {
    display: table-cell;
    margin: 0;
    vertical-align: bottom;
  }

  .ranking-maker .ranking-title {
    font-size: 1.4rem;
    font-weight: bold;
    height: 30px;
    line-height: 30px;
    margin-top: 5px;
  }

  .ranking-maker .ranking-maker-rank1 .ranking-title {font-size: 1.8rem;}

  .ranking-maker .ranking-maker-rank2 .ranking-title,
  .ranking-maker .ranking-maker-rank3 .ranking-title {
    font-size: 1.6rem;
  }

  .ranking-maker .ranking-maker-rank1 .ranking-emblem {
    border: solid 3px #d3a92a;
    width: 120px;
  }

  .ranking-maker .ranking-maker-rank2 .ranking-emblem,
  .ranking-maker .ranking-maker-rank3 .ranking-emblem {
    width: 100px;
  }

  .ranking-maker .ranking-maker-rank2 .ranking-emblem {border: solid 3px #e0e0e0;}
  .ranking-maker .ranking-maker-rank3 .ranking-emblem {border: solid 3px #d07628;}

  .ranking-emblem-wrapper {display: inline-block;}

  .ranking-maker .ranking-emblem {width: 80px;}

  .ranking-maker-rank1 .ranking-trophy {
    height: 64px;
    left: -55px;
    margin-bottom: -5px;
    width: 69px;
  }

  .ranking-maker-rank2 .ranking-trophy,
  .ranking-maker-rank3 .ranking-trophy {
    height: 47px;
    left: -42px;
    margin-bottom: -5px;
    width: 57px;
  }

  .ranking-emblem-wrapper .ranking-order {
    line-height: 1.2;
  }

}



/**
 * .voice
 */
.voice {padding: 25px 0 30px;}

@media screen and (max-width: 640px) {
	.ranking-tabs {
	  margin: 0 auto;
	  background: #001c51;
	}
	.ranking-tabs li{
	   border-right: 1px solid #28364f;
	}
  .voice .line-heading-large-subject {
    font-size: 2.1rem;
    line-height: 1.2;
  }

  .voice .line-heading-large-subject strong {
    display: block;
    font-size: 2.8rem;
  }
}

.voice-items {margin-top: 20px;}

.voice-item {
  background: #0e357f;
  border-radius: 10px;
  color: #fff;
  margin-top: 15px;
  overflow: hidden;
}

.voice-item:first-child {margin-top: 0;}

.voice-inner {padding: 15px;}
.voice-item img {width: 100%;}

.voice-title {
  font-size: 1.1em;
  font-weight: bold;
  margin: 0 0 5px 0;
}

.voice-body {margin: 0;}

@media screen and (min-width: 641px) {
  .voice {padding: 50px 0;}

  .voice-items {
    -js-display: flex;
    display: flex;
  }

  .voice-item {
    float: left;
    margin-left: 15px;
    margin-top: 0;
    width: 330px;
  }

  .voice-item:first-child {margin-left: 0;}
}


/**
 * shops
 */
.shops {
  background: #0e357f;
  overflow: hidden;
  padding-top: 30px;
  position: relative;
}

.shops-title {
  color: #fff;
  font-size: 1.4rem;
  line-height: 1.4;
}

.shops-title em {font-size: 2.6rem;}

.shops-title strong {
  color: #fff100;
  font-size: 3.4rem;
  margin: 0 .1em;
}

.shops h2 {
  margin: 0;
  position: relative;
  z-index: 1000;
}

.imagemap-sp {
  position: absolute;
  right: 15px;
  top: 30px;
  width: 61.1%;
  z-index: 500;
}

@media screen and (max-width: 640px) {
  .shops h2 img {width: 61%;}
  .shops-inner {margin: -70px 0 40px;}

  .shop-flyer-sp {
    margin-top: 20px;
    position: relative;
    z-index: 1000;
  }

  .shop-flyer-sp img {width: 40.34%;}
}

@media screen and (min-width: 641px) {
  .shops {padding-top: 65px;}

  .shops-title {
    font-size: 2.2rem;
    line-height: 1.2;
  }

  .shops-title em {font-size: 5.6rem;}
  .shops-title strong {font-size: 7.6rem;}
}
.btn_grid{
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
.btn_grid a img{
  width: 100%;
}
.btn_grid a .pc_view{
  display: block;
}
.btn_grid a .sp_view{
  display: none;
}
@media screen and (max-width: 640px) {
  .btn_grid a .pc_view{
    display: none;
  }
  .btn_grid a .sp_view{
    display: block;
  }
}

/* プライバシーポリシー */
#poricy{-webkit-font-feature-settings:"palt";font-feature-settings:"palt";font-family:-apple-system,BlinkMacSystemFont,YuGothic,"Yu Gothic Medium","Yu Gothic",sans-serif;;}
#poricy h2{font-size:1.2em;margin-top:2em;margin-bottom:0;}
#poricy h3{font-size:1.0em;margin-top:2em;margin-bottom:0;}
#poricy ol{padding-left:1em;}
#poricy li{margin-top:0.5em;padding:0;}
#poricy a{text-decoration:underline;}
#poricy .poricy-title{text-align:center;font-size:1.4em !important;}
:where(#poricy p){margin-block:1em;line-height:1.7;text-wrap:pretty;}
:is(#poricy .mbs-sm){margin-left:1em;text-indent:0;}
:is(#poricy .mbs-md){margin-left:2em;text-indent:0;}
#poricy .mt-xs{margin-top:0.5em !important;}
#poricy .mt-sm{margin-top:1em !important;}
#poricy .mt-md{margin-top:2em !important;}
#poricy .mt-lg{margin-top:4em !important;}
#poricy .list-circle,
#poricy .list-square{padding-left:1.5em;margin-top:0;margin-left:1em;}
#poricy .list-circle>li,
#poricy .list-square>li{display:list-item;line-height:1.2}
#poricy .list-circle>li{list-style:disc}
/**/
#poricy .list-square>li{list-style:square}
#poricy .list-circle>li+li,
#poricy .list-square>li+li{margin-top:0.5em}
/*①*/
#poricy .list-circle-num{margin:0;padding:0;margin-left:1.0em;}
#poricy .list-circle-num>li{line-height:1.2;list-style:none;padding-left:1.0em;text-indent:-1.0em;}
#poricy .list-circle-num>li+li{margin-top:0.5em;}
/*abc*/
#poricy .list-abc{margin:0;padding:0;margin-left:1.0em;}
#poricy .list-abc>li{line-height:1.2;list-style:none;padding-left:1.0em;text-indent:-1.0em;}
#poricy .list-abc>li+li{margin-top:0.5em;}
#poricy .well-border{border:1px solid #000;padding:0.5em 1em 1em;}
#poricy .visible-xs{display:none;}
#poricy .visible-xs-inline-block {display: none;}
#poricy .table-a{width:auto;border-collapse:collapse;margin-left:1em;}
#poricy .table-a th{background-color:hsl(0, 0%, 95%);}
#poricy .table-a th,
#poricy .table-a td{border:1px solid hsl(0, 0%, 80%);padding:0.4em 0.4em;}
#poricy .table-a td{text-align:center;}
@media screen and (max-width: 640px){
#poricy #poricy li a{border-bottom:1px solid #ddd;}
#poricy .visible-xs-inline-block {display:inline-block}
#poricy .visible-xs{display:inline-block}
#poricy .table-a{font-size: 0.7em;}
}