@charset "utf-8";
/*（new design）*/
body {
  font-size: 1.4rem;/*スマホ本文基本14px*/
  color: #3B3B3B;
}
@media screen and (min-width: 480px) {
body {
  font-size: 1.4rem;/*PC本文基本14px*/
}
}
.price_taxin {
  font-size: 80%;
  font-weight: normal;
}
/*トップページCSS（new design）*/
.top_main {
	padding-top:1em;
}
.top_main_title {
	position: relative;
	width: 250px;
	margin: auto;
	text-align: center;
	font-size: 1.2;
}
.top_main_title span {
	display: block;
}
.top_main_title h1:before, .top_main_title h1:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 35px;
  height: 1px;
  background-color: #000;
  -webkit-transform: rotate(-60deg);
  transform: rotate(-60deg);
}
.top_main_title h1:before {
  -webkit-transform: rotate(60deg);
  transform: rotate(60deg);
}
.top_main_title h1:before {
  left:0;
}
.top_main_title h1:after {
  right: 0;
}


.top_main {
  position: relative;
}

.top_main_plate {
  width: 90%;
  max-width: 320px;
  margin: 1em auto;
}

.top_main_bg01 {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 50%;
  -o-object-fit: cover;
  object-fit: cover;
  z-index: -1;
}
.top_main_bg02 {
  position: absolute;
  right: 0;
  top: 50%;
  width: 100%;
  height: 50%;
  -o-object-fit: cover;
  object-fit: cover;
  z-index: -1;
}

@media screen and (min-width: 480px) {
.top_main_bg01 {
  position: absolute;
  left: 0;
  top: 0;
  width: 50%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  z-index: -1;
}
.top_main_bg02 {
  position: absolute;
  right: 0;
  top: 0;
  width: 50%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  z-index: -1;
}
}

/* No.1価格 */
.top_no1_h2 {
	text-align: center;
	margin-bottom: 2em;
  margin-top: 3em;
}
#top_kakaku .ti_vline > span {
  font-size: 1.3em;
}

#top_kakaku ul.top_freelist01 {
	display: flex;
	justify-content: space-between;
	width: 100%;
	overflow: hidden;
  margin-bottom: 1em;
}
@media screen and (min-width: 480px) {
  #top_kakaku ul.top_freelist01 {
    width: 80%;
    overflow: hidden;
    margin: auto;
    margin-bottom: 1em;
  }
  }
.free_text {
	text-align: center;
	/* font-size: 100%; */
  font-size: 85%;
  margin-top: 0.5em;
}
      @media screen and (min-width: 768px) {
        .free_text {
          font-size: 90%;
        }
      }
.free_icon {
	background-color: #E6F2FF;
	width: 70px;
	height: 70px;
	border-radius: 35px;
	text-align: center;
	line-height: 100%;
	vertical-align: middle;
  margin: auto;
}
.free_icon img{
	width:70%;
  height: inherit;
}

/* news
**************************************************************/
#news {
  padding: 9.067vw 0 5vw;
}
#news h2 { /* 12/24　神原追加 */
  font-size: min(6vw, 30px);
  font-weight: 700;
  margin-bottom: 1vw;
  font-family: 'Quicksand', sans-serif;
  color: #F24D53;
}
#news .container {
  max-width: 1080px;
}
#news .news {
  display: block;
  position: relative;
}
#news .news ul {
  border: 1px solid #F24D53;
  border-radius: 1.33vw;
  overflow: hidden;
  padding: 2.67vw 5.6vw 2.67vw 3.34vw;
  display: table;
  width: 100%;
  box-sizing: border-box;
  position: relative;
  table-layout: fixed;
}
#news .news li {
  vertical-align: middle;
  display: table-cell;
  font-weight: 700;
	color: #3B3B3B;
}
#news .news dd {
  font-size: 3.467vw;
  font-weight: 700;
  width: 80%;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
#news .news i {
  display: block;
  position: absolute;
  width: 3.467vw;
  height: 3.467vw;
  line-height: 3.467vw;
  color: #fff;
  background: #F24D53;
  text-align: center;
  border-radius: 50%;
  right: 1.34vw;
  top: 0;
  bottom: 0;
  margin: auto;
}
#news .attention {
  margin-top: 5.067vw;
  display: block;
  background: #fef5f4;
  border: 1px solid #f7c4bc;
  font-size: 3.467vw;
  padding: 3.467vw 6.267vw 3.467vw 5.267vw;
  color: #e53b1f;
}
#news .attention li:before {
  content: "■";
  display: block;
  float: left;
  position: relative;
  margin-left: -1.5em;
}
#news .attention li {
  position: relative;
  padding-left: 1.5em;
}
#news .attention li + li {
  margin-top: 2vw;
}
#news .attention li a {
  color: #3B3B3B;
}
@media screen and (min-width: 480px) {/*480px以上*/
  /* news
**************************************************************/
  /* news
**************************************************************/
  #news {
    padding: 40px 0 46px;
  }
  #news h2 {
    margin-bottom: 0.5rem;
  }
  #news .news ul {
    border-radius: 6px;
    padding: 12px 25px 12px 15px;
  }
  #news .news li {
    font-size: 1.5rem;
    font-weight: 700;
  }
  #news .news i {
    width: 15px;
    height: 15px;
    line-height: 15px;
    right: 6px;
  }
  #news .attention {
    margin-top: 22px;
    font-size: 1.5rem;
    padding: 15px 28px 15px 23px;
    color: #e53b1f;
  }
  #news .attention li + li {
    margin-top: 10px;
  }
}
@media screen and (min-width: 1111px) {/*1111px以上*/
  /* news
**************************************************************/
  #news {
    padding: 60px 0 0px;
  }
  #news .news ul {
    border-width: 2px;
    border-radius: 10px;
    padding: 10px 50px 10px 21px;
  }
  #news .news li {
    font-size: 1.4rem;
    width: 805px;
    font-weight: 700;
  }
  #news .news i {
    width: 17px;
    height: 17px;
    line-height: 17px;
    right: 15px;
  }
  #news .attention {
    margin-top: 30px;
    font-size: 1.4rem;
    padding: 24px 32px;
  }
  #news .attention li + li {
    margin-top: 14px;
  }
}

/*価格*/
#top_pack {
  justify-content: space-between;
}
@media screen and (min-width: 768px) {
  #top_pack .flex_item01{
    width: 58%;
  }
  #top_pack .flex_item02{
    width: 38%;
  }
  }
.top_pack_table {
	font-size: 1.2rem;
	width: 100%;
  margin-bottom: 3vw;
}
.top_pack_table th,.top_pack_table td {
	border: 1px solid #DDDCDC;
	padding: 1rem 0.5rem;
	vertical-align: middle;
	
}
.top_pack_table th { 
	background-color: rgba(255,245,157,0.4);
	text-align: center;
	font-size: 1.1rem;
  width: 27%;
  min-width:50px;
}

@media screen and (min-width: 768px) {
  .top_pack_table th,.top_pack_table td {
    padding: 1rem 1.5rem;
    
  }
  .top_pack_table th { 
    width: 20%;
    min-width: 100px;
  }
  }

  .top_pack_table th .number{
	display: block;
	font-weight: bold;
	color:#C79C37;
	font-size: 37px;
	line-height: 1;
}

.top_pack_table td ul li{
	display: inline-block;
	margin-right: 1em;
}
.top_pack_table td .price_pack span{
	font-weight: bold;
	font-size: 170%;
}
.top_pack_table td .price_per span{
	font-weight: bold;
	font-size: 120%;
}
/*クーポン*/
.top_coupon {
	border: 1px solid #C79C37;
	text-align: center;
	padding-top: 0.5em;
  margin-bottom: 20px;
}
.top_coupon h4 {
	font-size: 1.4rem;
	color: #C79C37;
	font-weight: bold;
}
.top_coupon p.title {
	font-size: 1.4rem;
	color: #C79C37;
	font-weight: bold;
}
.top_coupon .text {
	font-size: 27px;
	color: #C79C37;
	line-height: 1;
	font-weight: bold;
  padding-bottom: 0.5em;
}
.top_coupon .number{
	font-size: 86px;
}
.top_coupon_code {
	background-color: #C79C37;
	color: #FFF;
	vertical-align: text-top;
}
.top_coupon_code .code {
	font-weight: bold;
	font-size: 130%;
	color: #FFF;
}
.top_coupon_code .code_text {
	font-size: 90%;
}
#couponcopy .sp {
  display: inline-block;
}
#couponcopy .pc {
  display: none;
}
      @media screen and (min-width: 1025px) {
        #couponcopy .sp {
          display: none;
        }
        #couponcopy .pc {
          display: inline-block;
        }
      }

.top_coupon_member {
  position: relative;
	background-color: rgba(242,77,83,0.1);
	color: #F24D53;
	border-radius: 10px;
	padding: 0.8em 1.2em;
	font-weight: bold;
}
.top_coupon_member:before {
  content: "";
  position: absolute;
  top: -30px;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-bottom: 15px solid rgba(242,77,83,0.1);
}
.top_coupon_member a{
	display: inline;
	color: #F24D53;
	text-decoration:underline;
	font-weight: bold;
}
/*クーポンコピー*/
#top_coupon3 {
  max-width: 400px;
  margin: 2em auto;
}
.coupon_box_code {
  display: none;
}


/*価格イメージ*/
.absonsive {
  position: relative;
	max-width: 1080px;
	height: 605px;
	margin: 0 auto;
}
@media screen and (max-width: 1080px) {
.absonsive {
  height: calc(605 / 1080 *100vw);
}
}
@media screen and (max-width: 480px) {
  .absonsive {
    height: calc(453 / 1080 *100vw);
  }
  }
#top_kakaku_image {
    margin-top: 3em;
    position: relative;
}
#top_kakaku_image .image img {
	width: 100%;
  z-index: -1;
  margin-top: 1em;
}
#top_kakaku_image .text01 {
	position: absolute;
	top: 55px;
	right: 65px;
  background-color: rgb(255, 255, 255,0.8);
  padding: 1.5em;
  font-size: 16px;
}
@media screen and (max-width: 1080px) {
  #top_kakaku_image .text01 {
    top: calc(55 / 1080 *100vw);
    right: calc(65 / 1080 *100vw);
    font-size:calc(16 / 1080 *100vw);
}
}
#top_kakaku_image .text02,#top_kakaku_image .text03 {
	position: absolute;
  background-color: rgb(255, 255, 255,0.8);
  font-size: 16px;
  line-height: 1.5em;
  padding: 0.5em 1em;
}
#top_kakaku_image .text02 {
  bottom:130px;
	left: 0;
}
@media screen and (max-width: 1080px) {
  #top_kakaku_image .text02 {
    bottom: calc(130 / 1080 *100vw);
    font-size:calc(16 / 1080 *100vw);
}
}
#top_kakaku_image .text03 {
  bottom:70px;
	left: 0;
}
@media screen and (max-width: 1080px) {
  #top_kakaku_image .text03 {
    bottom: calc(70 / 1080 *100vw);
    font-size:calc(16 / 1080 *100vw);
}
}

@media screen and (max-width: 480px) {
  #top_kakaku_image .text01 {
    top: 0;
    left:50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    font-size:13px;
    text-align: center;
    width: 70%;
  }
  #top_kakaku_image .text02 {
    bottom: calc(210 / 360 *100vw);
    font-size:13px;
}
#top_kakaku_image .text03 {
  bottom: calc(180 / 360 *100vw);
  font-size:13px;
}
  #top_kakaku_image .image img {
    width: 100%;
    z-index: -1;
    margin-top: 3em;
  }
}
/*サービス*/
#top_service {
  padding-top: 3em;
}
#top_service .top_no1_h2 {
  margin-bottom: 4em;
}
/*サービス　無料サービス*/
#top_service_free {
  display: flex;
  justify-content: space-between;
  /* align-items: center; */
}
#top_service_free .ribon{
  font-size: 1.3rem;
}
#top_service_free .flex_item01 {
  background-color: #F5F2E8;
  border: 1px dashed #707070;
  text-align: center;
  width: 100%;
  padding: 1em 0;
}
#top_service_free .flex_item02 {
  display: none;
}
@media screen and (min-width: 768px) {
  #top_service_free .flex_item01 {
    width: 57%;
  }
  #top_service_free .flex_item02 {
    display: block;
    width: 38%;
  }
}
#top_service_free h3 {
  font-size: 17px;
  font-weight: bold;
  margin-top: -20px;
}
.textL {
  font-size: 2em;
}
.font_yellow {
  color: #FFF59D
}
#top_service_free .free_icon {
  background-color: #FFF;
  margin: auto;
}
#top_service ul.top_freelist02 {
	display: flex;
	justify-content: space-around;
  align-items: center;
  flex-wrap: wrap;
  width: 90%;
  height: 80%;
  margin: 3vw auto;
}
#top_service ul.top_freelist02 li {
  width: 33%;
	text-align: center;
  margin-top: 0.5em;
}
@media screen and (min-width: 768px) {
  #top_service ul.top_freelist02 {
    width: 80%;
    margin: 1vw auto;
  }
  #top_service ul.top_freelist02 li {
    width: 25%;
    text-align: center;
    margin-top: 0.5em;
  }
}
.top_freelist02 .free_icon img {
	width: 70%;
  height: inherit;
}


/*サービス　保証*/
#top_service_support .frwap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}
@media screen and (min-width: 1080px) {
  #top_service_support .lw-cMenu {
    width: 68%;
  }
  #top_service_support .top_tel {
    width: 30%;
  }
}
#top_service_support .ti_vline > span {
  font-size: 1.3em;
  font-weight: bold;
}
.lw-cMenu {
  margin-top: 2em;
  margin-bottom: 1em;
  display: flex;
  justify-content: space-between;
}

.lw-cMenu .card {
  background: #FFFFFF;
  border-radius: 7px;
  overflow: hidden;
  -webkit-box-shadow: rgba(0, 0, 0, 0.2) 0 3px 6px;
          box-shadow: rgba(0, 0, 0, 0.2) 0 3px 6px;
  width: 48%;
}

.lw-cMenu .card figure {
  display: block;
  width: 100%;
  margin-bottom: 1rem;
  cursor: default;
}

.lw-cMenu .card figure img {
  width: 100%;
  display: block;
}

.lw-cMenu .card .cmc_title {
  text-align: center;
  color: #144282;
  font-size: 18px;
  font-weight: bold;
  margin: 1rem auto;
}

.lw-cMenu .card p {
  width: 90%;
  margin: auto;
  margin-bottom: 1rem;
  font-size: min(3.47vw, 14px);
}

@media screen and (min-width: 480px) {
  .lw-cMenu .card p {
    width: 80%;
  }
}

.top_tel {
  text-align: center;
}

.top_tel h3 {
    font-size: 15px;
    font-weight: 700;
    color: #144282;
    margin-bottom: 10px;
    margin-top: 1em;
}
.top_tel .tel_btn a{
  display: block;
  max-width: 280px;
  height: 50px;
  margin-left:auto;
  margin-right:auto;
  font-size: 23px;
  line-height: 50px;
  color: #144282;
  font-weight: bold;
  background-color:#E6F2FF;
  border: 1px solid #144282;
  border-radius: 25px;
}
.top_tel .tel_btn span {
  padding-left: 40px;
  background-size: 30px;
  background-repeat: no-repeat;
  background-position: left center;
  background-image: url(../../img/front/new_common/ico_tel.svg);
}
.top_tel p {
  margin-top: 0.6em;
}
.top_tel small {
  color: #F24D53;
  font-size: 13px;
}

/*オプション*/
#top_option {
  background-color: #F4F5F7;
}
#top_option .aco_menu {
  border: 1px solid #144282;
  margin-bottom: 1em;
}
#top_option .text-c {
  margin-bottom: 2em;
}
#top_option label {
  background-color: #FFF;
  color: #144282;
  font-weight: bold;
  font-size: 110%;
  margin-top: 0;
}
#osusume_item {
  margin-top: 2em;
}
#osusume_item .title{
  background-color: #E6F2FF;
  color: #144282;
  padding: 1px 5px;
  margin-bottom: 8px;
  display: inline-block;
}
#osusume_item .text{
  margin-bottom: 0;
}
/* オプションアイコン */
#top_option label span {
  padding-left: 30px;
}
#top_option label span::before {
  content: url(../../img/front/new_common/kakou_ico_virus.svg);
  -webkit-transform: scale(0.35);
    transform: scale(0.35);
  display: inline-block;
  width: 70px;
  height: 30px;
  position: absolute;
  top:0; left: -10px;
}
#top_option label[for="op_bar01"] span::before {
  content: url(../../img/front/new_common/kakou_ico_virus.svg);
}
#top_option label[for="op_bar02"] span::before {
  content: url(../../img/front/new_common/kakou_ico_delux.svg);
}
#top_option label[for="op_bar03"] span::before {
  content: url(../../img/front/new_common/kakou_ico_bouchu.svg);
}
#top_option label[for="op_bar04"] span::before {
  content: url(../../img/front/new_common/kakou_ico_uv.svg);
}
.top_option_item {
  font-size:14px;
}
.top_option_item .fwrap {
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .top_option_item .fwrap {
    flex-direction: row-reverse;
  }
}
.top_option_item .flex_item02 {
  margin-top: 1em;
}
@media screen and (min-width: 768px) {
  .top_option_item .flex_item02 {
    width:30%;
    display: block;
    margin-top: 0;
  }
  .top_option_item .flex_item01 {
    width:66%;
  }
}
.top_option_item .flex_item01 p {
  margin-bottom: 1em;
}
.top_option_item img {
  width:100%;
}

.option_price {
  text-align: right;
  margin-top: 1em;
}
.option_price p:nth-child(1) {
  color: #F24D53;
  font-size: 1.3em;
  font-weight: bold;
  line-height: 1.1;
}
.option_price p:nth-child(2) {
  color: #969696;
  font-size: 0.9em;
}

/* 保管 */
#top_hokan {
    background-color: #FAF4E8;
}
#top_hokan .fwrap {
  justify-content: space-between;
  padding-bottom: 3em;
}
@media screen and (min-width: 768px) {
  #top_hokan .flex_item01 {
    width: 45%;
  }
  #top_hokan .flex_item02 {
    width: 48%;
  }
}

#top_hokan .balloon {
	background-color:#FFF;
}
#top_hokan .balloon ul {
  padding: 2em;
}

.top_hokan_image {
  position: relative;
}
.top_hokan_image img {
  width: 100%;
}
.top_hokan_image p:before,.top_hokan_image p:after{
    content: "";
    display: block;
    position: absolute;
    background-position: center center;
    background-size: 100% auto;
    background-repeat: no-repeat;
    width: 70px;
    height: 70px;
    background-image: url(../../img/front/new_common/kira.svg);
}
.top_hokan_image p:before{
    left: 0.5vw;
    top: -4vw;
}
.top_hokan_image p:after{
  right: 0.5vw;
  bottom: -4vw;
}

/* No.1品質 */

#top_hinsitu_sec01 .text-c {
  margin-top: 2em;
}

#top_hinsitu_sec01 .fwrap {
  align-items: flex-start;
  justify-content: space-between;
}
#top_hinsitu_sec01 .flex_item01,#top_hinsitu_sec01 .flex_item02 {
  margin-bottom: 1em;
}

@media screen and (min-width: 768px) {
  #top_hinsitu_sec01 .flex_item01 {
    width: 60%;
  }
  #top_hinsitu_sec01 .flex_item02 {
    width: 28%;
    align-self: stretch;
  }
}

.top_hotel_bg01 {
  /* background-color: #D8C9A2; */
  background: linear-gradient(180deg, #FFF 0%, #FFF 20%, #D8C9A2 20%, #D8C9A2 100%);
  padding-bottom: 2em;
  margin-top: 2em;
}
.top_hotel_bg01 .fwrap {
  justify-content: space-between;
  
}
.top_hotel_bg01 .checklist li{
  margin-bottom: 0.2em;
}

.top_hinsitu_hosho {
  background-color: #F5F3ED;
  padding: 2.5em 2em 2em;
  text-align: center;
  box-shadow: 0 5px 10px 0 rgba(0, 0, 0, .2);
}

.top_hinsitu_hosho div {
  font-size: 16px;
}
.top_hinsitu_hosho div span{
  font-size: 2em;
}
.top_hinsitu_hosho .star5_rating {
	font-size: 1.5em;
  margin-bottom: 1em;
}

.top_hotel_bgimage {
  background-image: url(../../img/front/new_front/top_hotel_bgimage.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}
.top_hotelname_text {
  color: #FFF;
  text-align: center;
  padding: 1.5em 0;
}
.top_hotelname_text div {
  font-weight: bold;
  font-size: 1.2em;
}

/* 動画 */
#top_hinsitu_mv {
  padding-top: 0;
}
@media screen and (min-width: 480px) {
  #top_hinsitu_mv {
    max-width: 600px;
  }
}
.movie-wrap {
     position: relative;
     padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
     height: 0;
     overflow: hidden;
     margin-top: 2em;
}
.movie-wrap iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}

/* 店舗 */
#top_tenpo {
  background-color: #144282;
  color: #FFF;
}

#top_tenpo h3 {
  font-weight: bold;
  text-align: center;
  font-size: min(4.5vw, 20px);
  margin-bottom: 1.5em;
  position: relative;
}
#top_tenpo h3::before {
  content: "";
    display: block;
    margin: 0 auto 10px;
    width: 38px;
    height: 19px;
  background-image: url(../../img/front/new_common/title_icon01.svg);
}

#top_tenpo .fwrap {
  justify-content: space-around;
  max-width: 1080px;
    margin: 0 auto;
}
#top_tenpo .flex_item01 {
  padding: 0 3.34vw;
}
#top_tenpo .flex_item02 {
  margin-top: 1em;
}
@media screen and (min-width: 768px) {
  #top_tenpo .flex_item01 {
    width: 38%;
  }
  #top_tenpo .flex_item02 {
    width: 50%;
    margin-top: 0;
  }
}

#top_tenpo a.rd_btn {
	background: #FFFFFF;
	color: #144282;
  width: 250px;
	height: 40px;
  border-radius: 20px;
  font-size: 1.4rem;
  line-height: 40px;
  margin: 2em auto;
}

/* 会員 */
#top_member .catch {
  text-align: center;
  margin-bottom: 2em;
  font-size: 20px;
}
#top_member .fwrap{
  justify-content: space-between;
  flex-wrap: wrap;
}

#top_member .flex_item01{
  margin: 0 auto 2em;
  display: block;
  padding-bottom: 0.5em;
}
#top_member .flex_item02{
  margin-bottom: 2em;
  display: block;
}
#top_member .flex_item03{
  background-color:#FFECED;
  margin-bottom: 2em;
}
@media screen and (min-width: 768px) {
  #top_member .flex_item01{
    width: 48%;
  }
  #top_member .flex_item02{
    width: 48%;
  }
  #top_member .flex_item03{
    width: 100%;
  }
}

/* 入会特典 */
#top_member_tokuten {
	background-color:#FAF4E8;
}
#top_member_tokuten h3 {
	margin-top: -10px;
  text-align: center;
  font-weight: bold;
  font-size: 120%;
}

#top_member_tokuten ul.checklist {
  margin: 1em 2em 1em;
}
#top_member_tokuten ul.checklist li {
	line-height: 1.5;
	padding: 0.5em 0;
	padding-left: 2em;
	background-image: url(../../img/front/new_common/checkmark02.svg);
	background-repeat: no-repeat;
	background-position: left center;
	text-align: left;
  font-weight: bold;
  font-size: min(4vw, 16px);
}
/* クーポン */
#top_member_coupon .top_coupon {
	margin-bottom: 0;
}
/* プライム会員 */
#top_member_prime {
  text-align: center;
  font-weight: bold;
  background-color:#FFECED;
  border:  5px solid #FFC7C9;
  padding: 2em 0;
}
#top_member_prime .text01{
  font-size: min(4vw, 15px);
  margin-bottom: 0.2em;
  display: block;
}
#top_member_prime .text02{
  font-size: min(5.3vw, 30px);
  margin-bottom: 0.2em;
  display: block;
}
#top_member_prime .text03{
  font-size: 1.2em;
  margin-bottom: 0.2em;
}
#top_member_prime a.rd_btn {
  width: 250px;
	height: 40px;
  border-radius: 20px;
	background: #F24D53;
  font-size: 1.4rem;
  line-height: 40px;
}

/* 比較 */
ul.top_hikaku_item {
  display: flex;
  flex-wrap: nowrap;
  max-width: 460px;
  margin: 1em auto;
}
ul.top_hikaku_item li{
  width: 24%;
  text-align: center;
  font-size: 12px;
}
ul.top_hikaku_item img{
  display: block;
  margin: auto;
}

.top_hikaku_table {
  width: 98%;
  margin-left: 2%;
}
@media screen and (min-width: 601px) {
  .top_hikaku_table {
    width: 610px;
    margin: auto;
  }
}
.top_hikaku_table table {
  width: 400px;
}
@media screen and (min-width: 480px) {
  .top_hikaku_table table {
    width: 610px;
  }
}

.top_hikaku_table th,.top_hikaku_table td {
  text-align: center;
  padding: 1em 0.5em;
  border: 1px solid #DDDCDC;
  white-space: nowrap;
}
.top_hikaku_table th{
  font-weight: bold;
  background-color:#F3F3F3;
}
.top_hikaku_table thead th{
  background-color: #144282;
  color: #FFF;
}
.top_hikaku_table thead th:nth-child(2){
  background-color: #F24D53;
}

.top_hikaku_table .td_white {
  border: none;
}

.top_hikaku_table .company {
  display: block;
}
.top_hikaku_table .menu {
  display: block;
  font-weight: normal;
}
.top_hikaku_table td small {
  font-size: min(80%,12px);
  display: block;
}
td.td_own {
  background-color:#F5F6F2;
}
td.bg_grey {
  background-color:#969696;
  color: #FFF;
  line-height: 1.1;
}

/* 初めての方へ */
#first_time {
  background-color: #F3F8FA;
}

#top_flow .balloon{
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
}

#top_flow .balloon ul {
  padding: 2em;
}

.top_hokan_text {
  margin-bottom: 2em;
  color: #144282;
  font-weight: bold;
  font-size: min(5.8vw, 26px);
  text-align: center;
}

#top_flow .text01 {
  color: #144282;
  font-weight: bold;
  font-size: min(5vw, 18px);
  margin-bottom: 0.5em;
  text-align: center;
  display: block;
}
#top_flow .text02 {
  color: #144282;
  font-weight: bold;
  font-size: min(7vw, 26px);
  margin-bottom: 2em;
  text-align: center;
  display: block;
}

ul.top_flow_list li {
  background-color: #FFF;
  padding: 1em;
  margin-bottom: 0.5em;
}

.top_flow_list .fwrap {
  justify-content: space-between;
  flex-direction: row-reverse;
}
.top_flow_list .flex_item01 {
  width: 65%;
}
.top_flow_list .flex_item02 {
  width: 30%;
}

@media screen and (min-width: 768px) {
  .top_flow_list .flex_item01 {
    width: 70%;
  }
  .top_flow_list .flex_item02 {
    width: 25%;
  }
}

.top_flow_list .flex_item01 small {
  font-size: 80%;
}

.top_flow_list h4 {
  color: #144282;
  font-weight: bold;
  font-size: 1.2em;
}
.top_flow_list h4 .number{
  font-size: 1.8em;
  margin-left: 0.1em;
  display: inline-block;
}
.top_flow_list .text{
  font-size: min(3.8vw, 18px);
  font-weight: bold;
  margin-top: 1vw;
}

/* お客様の声 */
#top_voice {
  margin: auto;
  /* max-width: 1080px; */
}
.top_voice_list {
  display: flex;
  justify-content: flex-start;
  flex-wrap: nowrap;
  font-size: 13px;
  margin-left: 1vw;
}
@media screen and (min-width: 480px) {
  .top_voice_list {
    /* justify-content: center; */
  }
}

.top_voice_list li {
  margin-right: 10px;
}

.top_voice_list .balloon {
  width: 310px;
}
.top_voice_list .balloon_inner {
  padding: 2em;
  min-height: 280px;
}
.top_voice_list .person img {
  width: 155px;
}

.top_voice_list li .title {
  color: #144282;
  font-weight: bold;
}
.top_voice_list .star {
	font-size: 1.1em;
}
.top_voice_list .person {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.top_voice_list .image {
  width: 50%;
}
.top_voice_list .name {
  width: 45%;
  color: #969696;
  font-weight: bold;
}

/* Q&A */

.top_faq_list dt, .top_faq_list dd {
  position: relative;
  padding-left: 50px;
}

.top_faq_list dt {
  font-size: 1em;
  font-weight: bold;
  color: #0B318F;
  margin-bottom: 2em;
  padding-right: 25px;
}
.top_faq_list dd {
  padding-bottom: 2em;
}

.top_faq_list dt::before,.top_faq_list dd::before {
  position: absolute;
  left: 0;
  width: 40px;
  height: 40px;
  border-radius: 20px;
  border: 1px solid #0B318F;
  text-align: center;
  line-height: 35px;
  vertical-align: middle;
  font-size: 22px;
}
.top_faq_list dt::before {
  content: 'Q';
  color: #FFF;
  background-color: #0B318F;
  margin-top: -7px;
}
.top_faq_list dd::before {
  content: 'A';
  color:  #0B318F;
  background-color: #FFF;
}
/* 区切り線 */
.top_faq_list hr {
  border-top: 1px solid #D1D1D1;
  margin-bottom: 3em;
}

#top_faq .rd_btn a{
  margin-left:0;
}
@media screen and (max-width: 1024px) {
  #top_faq .rd_btn a{
      margin-left:5px;
  }
}
#top_faq .rd_btn {
  margin-top:0;
}

/* お届目安 */
.top_otodoke_box {
  border: 1px solid #000;
  padding: 0 0 1em;
  width: 100%;
  text-align: center;
}
.top_otodoke_box h2{
  background-color: #000;
  color: #FFF;
  text-align: center;
  width: 100%;
  padding: 0.5em 0;
}
.top_otodoke_box .date_wrap {
  text-align: center;
  font-size: 150%;
  font-weight: bold;
  margin-top: 1em;
  margin-bottom: 0.5em;
}
.top_otodoke_box .note {
  text-align: center;
  font-size: 90%;
}

/* ご注意 */
#top_attention {
  background-color:#FFFAD1;
}

/* 追従ボタン */
main {
  position: relative;
}
#top_fix_sp {
    position: fixed;
    bottom: 0px;
    left: 0px;
    width: 100%;
    height: 60px;
    background-color:rgba(255,255,255,0.8);
    -webkit-box-shadow: rgba(0, 0, 0, 0.2) 0 3px 6px;
          box-shadow: rgba(0, 0, 0, 0.2) 0 3px 6px;
}
.fix_inner {
	padding:5px;
  display: flex;
  align-items: center;
}
.fix_inner .flex_item01{
	text-align: center;
}
.fix_inner .flex_item02{
	text-align: center;
}
#top_fix_sp .title {
    font-size: 12px;
}
#top_fix_sp .tel a {
    font-size: 17px;
    color: #144282;
    font-weight: bold;
}
#top_fix_sp .to_form a {
  display: block;
  background-color: #F24D53;
  color: #FFF;
  width: 150px;
	height: 38px;
  border-radius: 19px;
  font-size: 1em;
  line-height: 38px;
}
#top_fix_pc {
  display: none;
}
@media screen and (min-width: 1080px) {
  #top_fix_pc {
    display: block;
    position: fixed;
    bottom: 60px;
    right: 0px;
    z-index: 10;
  }
  #top_fix_pc li {
    margin-bottom: 10px;
  }
  #top_fix_sp {
    display: none;
}
}


/* 発送の準備　中身 */
.top_flow_content h5{
  padding: 5px 10px;
  background: #144282;
  color: #FFF;
  margin-bottom: 0.5em;
  font-weight: bold;
}
.top_flow_content h6 {
  background: linear-gradient(transparent 30%, #d2fbfa 0%);
  font-size: 1.2em;
  font-weight: bold;
  margin-bottom: 20px;
  line-height: 1.5;
}

.top_flow_content .fwrap {
  flex-direction: row-reverse;
}
.top_flow_content dt,.top_flow_content dd{
  width: 100%;
  margin-bottom: 1em;
}

                  @media screen and (min-width: 768px) {
                      .top_flow_content dt{
                          width: 35%;
                      }
                      .top_flow_content dd{
                        width: 60%;
                    }
                  }
.top_flow_content dd small{
  display: block;
  color: #969696;
  margin-top: 1em;
  font-size: 1.2rem;
}

/* ご注意事項　中身 */
.top_at_content{
  font-size: 1.3rem;
}
.top_at_content h3 {
  margin: 1em 0 0.3em;
  color: #144282;
  font-size: 1.1em;
  font-weight: bold;
}
.top_at_content div {
  color: #3B3B3B;
  margin: 0.7em 0 0.4em;
  font-weight: bold;
}

.top_at_content ol {
    list-style-type: decimal;
    padding-inline-start: 40px;
}
.top_at_content small {
  display: block;
  color: #969696;
  margin-top: 1em;
  font-size: 1.2rem;
}

@media screen and (min-width: 768px) {
  .top_at_content .flex_item01{
      width: 48%;
  }
  .top_at_content .flex_item02{
    width: 48%;
}
}

#at_links05 table td {
  text-align: center;
}
#at_links05 table {
  width: 80%;
}
#at_links05 img {
  margin-left: 0;
}
#at_links01 .fwrap {
  justify-content: flex-start;
}
#at_links01 .oazukari img {
  max-width: 300px;
}

/*　取扱い可能アイテム・取扱除外品　共通CSS　*/
div.impossible_area ul li p,
div.possible_area ul li p{
  text-align: center;
  font-size: 12px;
}
p.other_title{
  display: inline-block;
  background: #FFF;
  padding: 5px 10px;
  margin-bottom: 10px;
}
div.impossible_area .memo,
div.possible_area .memo{
  color: #777777;
  font-size: 12px;
}
  /* ↓　2022/9/8 削除 */
/* .other ul li::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  font-size: 10px;
  content: '\f111';
  margin-right: 5px;
} */
.other ul li{
  margin-bottom: 5px;
  font-size: 12px;
  list-style: disc;  /* 2022/9/8 追記 */
  margin-left: min(7%,20px);  /* 2022/9/8 追記 */
}
.impossible_area .ftn_link{
  background: #ffffff;
  padding: 5px 10px;
  border-radius: 5px;
}
.impossible_area .ftn_link a{
  border-bottom: dashed 1px #144282;
  color: #144282;
}
div.impossible_area ul li p + p,
div.possible_area ul li p + p{
  margin-top: 5px;
}
sup {
  vertical-align: super;
  font-size: 72%;
}


/* 取扱除外品について */
div.impossible_area{
  background:#FFF0F0;
  padding: 10px;
  margin: 20px 0;
  border-radius: 5px;
}
div.impossible_area > ul.fwrap li{
  width: 33.333%;
  margin-bottom: 15px;
}
div.impossible_area img{
  width: 85px;
}
div.impossible_area div.other{
  margin: 20px 0 0;
}
@media screen and (min-width: 768px) {
    div.impossible_area{
        padding: 20px;
    }
    div.impossible_area > ul.fwrap li{
        width: 139px;
        display: inline-block;
    }
    div.impossible_area img{
        width: auto;
    }
}

/* クリーニング可能アイテム */
div.possible_area ul.possible_list2{
  justify-content: space-between;
  margin: 20px 0;
}
div.possible_area ul.possible_list2 li{
  width: 42%;
  background: #e6f2ff;
  margin-bottom: 15px;
  border-radius: 5px;
  padding: 10px;
}
div.possible_area > .other{
  background: #e6f2ff;
  padding:10px;
  margin-bottom: 20px;
}
div.possible_area > .other ul li{
  width: 50%;
}
@media screen and (min-width: 768px) {
    div.possible_area ul.possible_list2 li{
        width: 21%;
    }
    div.possible_area > .other{
        padding:10px 30px;
    }
    div.possible_area > .other ul li{
        width: 23%;
    }
}

/* 会員特典リンク */
#top_member_tokuten p {
  text-align: center;
  margin: 0 auto 1em;
}

/* 210705　ご注意事項小文字 */
span.memo:before {
  content: "※";
  float: left;
  display: inline-block;
  margin-left: -1em;
  position: relative;
}

span.memo {
  padding-left: 1em;
  display: inline-block;
  position: relative;
  font-size: 95%;
  color: #777;
  margin-top: 1em;
}

.attention_red {
  color: #e53b1f;
  font-weight: 700;
  font-size: 95%;
  margin-top: 1em;
  margin-left: 1em;
}

@media screen and (min-width: 1111px) {

  span.memo {
      font-size: 86%;
  }

  .attention_red {
      font-size: 90%;
  }
}


  /* 年末年始のお知らせバナー
**************************************************************/
.info_banner{
  margin:40px auto 0;
  text-align:center;
  max-width: 600px;
}
@media screen and (min-width:1111px) {
  .info_banner{
    margin-top:70px;
  }
}

  /* お友達紹介バナー
**************************************************************/
.friends_banner{
  margin:40px auto 0;
  text-align:center;
}


  /* 2022.3.24追加　コース一覧
**************************************************************/
#top_course_ichiran h2 {
  text-align: center;
  font-size: min(6vw, 26px);
  font-weight: 700;
  margin-bottom: 2.5vw;
}
#top_course_ichiran h2 span {
  display: block;
  font-size: 65%;
  font-weight: normal;
  color: #969696;
  margin-bottom: 0.2em;
}
#top_course_ichiran ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#top_course_ichiran ul li {
  width: 45%;
  text-align: center;
  padding: 2%;
  margin-bottom: 1em;
}
@media screen and (min-width: 580px) {
  #top_course_ichiran ul li {
    width: 30%;
    padding: 1%;
  }
  }

#top_course_ichiran ul li .img {
  width: 90%;
  max-width: 200px;
  margin: auto;
}
#top_course_ichiran ul li h3 {
  color: #144282;
  font-size: min(4vw, 20px);
  font-weight: 700;
  margin: 0.8em 0 0.4em;
}
#top_course_ichiran ul li p.text {
  font-size: min(3.2vw, 13px);
  margin-bottom: min(3vw, 15px);
}

/* ボタン new_common追記 */
a.btn_small, button.btn_small {
    width: 70%;
    max-width: 140px;
    height: 36px;
    line-height: 36px;
    border-radius: 18px;
    font-size: 80%;
	
}
@media screen and (min-width: 480px) {
  a.btn_small, button.btn_small {
    width: 70%;
    max-width: 180px;
	  height: 40px;
    line-height: 40px;
    border-radius: 20px;
	  font-size: 90%;
  }
  }
a.btn_outline, button.btn_outline {
  color: #144282;
	background-color: #FFF;
  border:  1px solid #144282;
}

/*new_common更新 リンク*/
a.text_link {
	color: #3B3B3B;
	font-weight: bold;
	border-bottom: dashed 1px #3B3B3B;
}
a.text_link::after {
	content: "";
  display: inline-block;
  width: 5px;
  height: 10px;
  margin: 0 0 0 5px;
  background: url(../../img/front/common/link_arrow_right.svg) no-repeat;
  background-size: contain;
  vertical-align: middle;
}
