html { scroll-padding: 80px;}
main { letter-spacing: .2em;}

h2 {
	font-size: 2.5rem;
	text-align: center;
	margin-top: 160px;
	margin-bottom: 80px;
	font-weight: 300;
}
h3 {font-weight: 300;}

figure {
  position: relative;
}
figure img {
  width:100%;
}
figure figcaption {
  position: absolute;
  font-size: 0.75rem;
  font-feature-settings: normal;
  font-family: 'Noto Serif JP';
  font-weight: 400;
  letter-spacing: 0;
}
figure figcaption.lb_type {
  left: 1%;
  bottom: 1%;
  color:#000;
  text-shadow: 1px 1px 2px rgba(255, 255, 255, 1),-1px -1px 2px rgba(255, 255, 255, 1);
}
figure figcaption.lw_type {
  left: 1%;
  bottom: 1%;
  color:#fff;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 1),-1px -1px 2px rgba(0, 0, 0, 1);
}
figure figcaption.rb_type {
  right: 1%;
  bottom: 1%;
  color:#000;
  text-shadow: 1px 1px 2px rgba(255, 255, 255, 1),-1px -1px 2px rgba(255, 255, 255, 1);
}
figure figcaption.rw_type {
  right: 1%;
  bottom: 1%;
  color:#fff;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 1),-1px -1px 2px rgba(0, 0, 0, 1);
}

/* --------------------------------------------- */
/* 1599 */
/* --------------------------------------------- */
@media screen and (max-width: 1599px) {
figure figcaption {
  font-size: 0.875vw;
}
}

/* --------------------------------------------- */
/* 999 */
/* --------------------------------------------- */
@media screen and (max-width: 999px) {
figure figcaption {
  font-size: 1.25vw;
}
}

/* --------------------------------------------- */
/* 767 */
/* --------------------------------------------- */
@media screen and (max-width: 767px) {
figure figcaption {
  font-size: 2.5vw;
}
}


.p32 {font-size: 2rem;}
.p24 {font-size: 1.5rem;}
.color_gold { color:var(--Color4);}
.color_white { color:var(--Color2); }
.under_line_g {
	border-bottom: 1px solid var(--Color4);
	padding: 0 .5em .2em;
}

.main_lead {
	text-align: center;
	margin-bottom: 80px;
	width: auto;
}



/*　-----------------------　注釈群　-----------------------　*/

ul.item_ann{
    max-width: 1240px; 
    margin: -2vw auto 0;
    padding: 0!important;
    color: #000;
}

/* ----------------------- */
/* 1280 */
/* ----------------------- */
@media screen and (max-width: 1280px) {

ul.item_ann{
	width: 90vw;
}

}



/*　-----------------------　メインビジュアル　-----------------------　*/

#mainVisual {
	margin-top: 70px;
}


/*　-----------------------　コンテンツ　-----------------------　*/

article.article_index {
	width: 100%;
	margin: 80px auto 0;
	padding: 50px 0 80px;
	background-color: var(--Color3);
	position: relative;
	color: var(--Color2);
}
article.article_index img.article_img {
	position: absolute;
	width: 240px;
	top:150px;
	left: 24px;
}
article.article_index .article_index_head,
article.article_index .article_index_inner {
	margin: auto;
	display: flex;
	justify-content: center;
}
article.article_index .article_index_head {
	margin-bottom: 10px;
}

article.article_index .article_index_inner li.rank1 {
	background-image: url(../images/voice/rank1.svg);
}
article.article_index .article_index_inner li.rank2 {
	background-image: url(../images/voice/rank2.svg);
}
article.article_index .article_index_inner li.rank3 {
	background-image: url(../images/voice/rank3.svg);
}
article.article_index .article_index_inner li {
	background-repeat: no-repeat;
	background-size: 120px;
	height: 105px;
	margin-top: 40px;
	font-size: 2rem;
	padding-top: 10px;
	padding-left: 130px;
	margin-left: 120px;
}
article.article_index .article_index_inner li span {
	font-size: 1.5rem;
}


.rank_head{
	padding-top: 80px;
	background-color: var(--Color7);
	padding-bottom: 80px;
}
article.article01,
article.article02,
article.article03 {
	padding-bottom: 20px;
}
article.article04 {
	padding-top: 80px;
	padding-bottom: 20px;
}

.lease {
	width: 240px;
	margin: auto;
}
h3 {
	display: flex;
	justify-content: center;
}
h3 div {
	font-size: 2.5rem;
	text-align: center;
	margin-top: 60px;
  display: inline-block;
  padding: 0 40px 16px;
  background-repeat: no-repeat, repeat-x, no-repeat;
  background-position:
    left bottom,
    center bottom,
    right bottom;
  background-image:
    url(../images/voice/h3_left.png),
    url(../images/voice/h3_center.png),
    url(../images/voice/h3_right.png);
  background-size:
    auto 14px,
    auto 14px,
    auto 14px;
}

h4 {
	text-align: center;
	margin: 120px auto;
}

.h4_2l {display: inline-block;}
.h4_2l::before,.h4_2l::after {
  width: 1px;
  height: 32px;
  content: "";
  background-color: var(--Color4);
  display: inline-block;
}
.h4_2l::before {
  margin-right: 1em;
  transform: rotate(-30deg) translateY(6px);
}
.h4_2l::after {
  margin-left: 1em;
  transform: rotate(30deg) translateY(6px);
}

.voice_item {
	width: 1060px;
	display: flex;
	justify-content: space-between;
	margin: auto;
	flex-wrap: wrap;
}


h4.select_point {
	display: flex;
	justify-content: center;
	height: 110px;
}
h4.select_point div {
	font-size: 2rem;
	text-align: center;
	display: inline-block;
	background-repeat: no-repeat, no-repeat;
	background-position: left center,	right center;
	background-image:	url(../images/voice/hl_deco_l.svg),	url(../images/voice/hl_deco_r.svg);
	background-size: 42px auto,42px auto;
	overflow: visible;
	padding: 0 2em;
}


.point_item {
	width: 1200px;
	padding: 20px;
	margin: 0 auto 40px;
	display: flex;
	justify-content: space-between;
	background-color: var(--Color3);
}
.flex_re {
	flex-direction:row-reverse
}
.point_item .item_p {
	width: 560px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.point_item .item_c {
	width: 480px;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: auto;
}

.detail_btn {
	width: 600px;
	height: 60px;
	padding: 0 60px;
	margin: 0 auto 60px;
	font-size: 1.5rem;
	background-color: var(--Color4);
	color: var(--Color2);
}
.detail_btn a {
	display: flex;
	width: 100%;
	height: 100%;
	justify-content: space-between;
	align-items: center;
}


.article04 {
	background-color: var(--Color3);
	color: var(--Color2);
}
.article04 h3 p {
	display: inline-block;
	text-align: center;
	font-size: 2.5rem;
}


.madamada {display: inline-block;}
.madamada::before,.madamada::after {
  width: 1px;
  height: 32px;
  content: "";
  background-color: var(--Color2);
  display: inline-block;
}
.madamada::before {
  margin-right: 1em;
  transform: rotate(-30deg) translateY(6px);
}
.madamada::after {
  margin-left: 1em;
  transform: rotate(30deg) translateY(6px);
}

.article04 .voice_item {
	margin-top: 80px;
}
.article04 .voice_item li {
	margin-bottom: 80px;
}



@media screen and (max-width: 1280px) {
h2 {
	margin-top: 12.5vw;
	margin-bottom: 6.25vw;
}
.main_lead {
	margin-bottom: 6.25vw;
}
#mainVisual {
	margin-top: 5.46875vw;
}
article.article_index {
	padding: 3.90625vw 0 6.25vw;
}
article.article_index img.article_img {
	display: none;
}
article.article_index .article_index_inner li {
	background-size: 9.375vw;
	height: 8.203125vw;
	margin-top: 40px;
	padding-top: 3.125vw;
	padding-left: 10.15625vw;
	margin-left: 9.375vw;
}
article.article01,
article.article02,
article.article03,
article.article04 {
	padding-bottom: 1.5625vw;
}
.rank_head{
	padding-top: 8vw;
	padding-bottom: 8vw;
}
.lease {
	width: 18.75vw;
}
h4 {
	margin: 9.375vw auto;
}
.voice_item {
	width: 90vw;
}
.voice_item li {
	width: 48%;
}
h4.select_point {
	height: 11.5vw;
}
h4.select_point div {
	background-size: 3vw auto,3vw auto;
}
.point_item {
	width: 90vw;
	padding: 1.5625vw;
	margin: 0 auto 3.125vw;
}
.point_item .item_p {
	width: 43.75vw;
}
.point_item .item_c {
	width: 37.5vw;
}
}




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

h2 {
	font-size: 4vw;
}
.p32 {font-size: 3.2vw;}
.p24 {font-size: 2.4vw;}
#mainVisual {
	margin-top: 70px;
}
article.article_index .article_index_inner li {
	font-size: 3.2vw;
	background-size: 12vw;
	height: 10.5vw;
	margin-top: 4vw;
	padding-top: 1vw;
	padding-left: 13vw;
	margin-left: 0;
}
article.article_index .article_index_inner li span {
	font-size: 2.4vw;
}
h3 div {
	font-size: 4vw;
	margin-top: 6vw;
}
h4.select_point div {
	font-size: 3.2vw;
}
.detail_btn {
	width: 60vw;
	height: 6vw;
	padding: 0 6vw;
	margin: 0 auto 6vw;
	font-size: 2.4vw;
}
.article04 h3 p {
	font-size: 4vw;
}

}

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

html { scroll-padding: 4vw;}

h3 div {
	margin-top: 7.8125vw;
  padding: 0 5.208333vw 2.083333vw;
  background-size:
    auto 1.822916vw,
    auto 1.822916vw,
    auto 1.822916vw;
}
.h4_2l::before,.h4_2l::after {
  height: 18px;
}
.voice_item {
	display: block;
}
.voice_item li {
	width: 80vw;
	margin: 0 auto 8vw;
}
.point_item {
	/*width: 100vw;*/
	display: block;
	background-size: 350%;
	padding: 4vw;
}
.point_item .item_p,
.point_item .item_c {
	width: 100%;
}
.point_item .item_c {
	margin-top: 4vw;
}
.detail_btn {
	width: 80vw;
	height: 3em;
	font-size: 3vw;
	background-color: var(--Color4);
	margin-top: 8vw;
}
.madamada::before,.madamada::after {
  height: 18px;
}
.article04 .voice_item {
	margin-top: 4vw;
}
.article04 .voice_item li {
	margin-bottom: 4vw;
}
.ls0 {letter-spacing: 0;}

}


.mt80 {margin-top: 80px;}
@media screen and (max-width: 999px) {.mt80 {margin-top: 8vw;}}

.rb_type.gainenzu {
	bottom: 9%;
}