@charset "utf-8";

@font-face {
    font-family: 'honoka_min';
    src: url('font/font_1_honokamin-webfont.woff2') format('woff2'),
         url('font/font_1_honokamin-webfont.woff') format('woff'),
         url('font/font_1_honokamin-webfont.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}


/*#################################################################################

初期設定

################################################################################# */
body {
	margin: 0px;
	padding: 0px;
  background: url("../img/common/background.jpg") center top;
  font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
  font-size: 14px;
	line-height: 1.7;
	color: #6a6a6a;
  -webkit-text-size-adjust: none; /* フォントサイズ自動調整 */
    word-break : break-all;
    word-wrap : break-word;
    overflow-wrap : break-word;
}
h1,h2,h3,h4,h5,h6 {
  font-weight: bold;
}
h1,h2,h3,h4,h5,h6,
ul,ol,dl,
p,li,dt,dd,th,td,em,strong,blockquote {
	margin: 0px;
	padding: 0px;
	border: 0;
	font-size : 100%;
	vertical-align: baseline;
	font-weight: normal;
	font-style: normal;
/*	font-size: 15px;
	word-break: break-all;*/
}
p,dd,li {
  text-align: justify;
}
ul,li {
  list-style: none;
}
em,strong {
  font-weight: bold;
}

img {
	vertical-align:top;
  width:100%;
	max-width: 100%;
	height: auto;
}
a img {
	border: none;
}
a:link,
a:visited,
a:hover,
a:active {
	color: inherit;
	text-decoration: none;
}

a:hover {
	transition: 0.2s ease-in-out;
  opacity: 0.5;	
}

table {
  border-collapse: collapse;
}

.clearfix::after {
	content: ""; 
	display: block;
	clear: both;
	height: 0;
}
.pc {
  display: block;
}
br.pc,
span.pc,
img.pc {
  display: inline;
}
.sp {
  display: none!important;
}
.anchor {
  display: block;
  height: 1px;
  position: relative;
  top: -110px;
}
.none {
  display: none!important;  
}

/* 画面外にいる状態 */
.effect {
	transition : all 700ms 300ms;
  opacity : 0;
  transform: translate(0,-50px);
}
.effect-on {
  opacity: 1.0;
  transform: translate(0,0); 
}
/*アニメーション*/
.delay0 {
  transition-delay:0ms;
}
.delay1 {
  transition-delay:100ms;
}
.delay2 {
  transition-delay:200ms;
}
.delay3 {
  transition-delay:300ms;
}
.delay4 {
  transition-delay:400ms;
}
.delay5 {
  transition-delay:500ms;
}
.delay6 {
  transition-delay:600ms;
}
.delay7 {
  transition-delay:700ms;
}
.delay8{
  transition-delay:800ms;
}
.delay9{
  transition-delay:900ms;
}
.delay10{
  transition-delay:1000ms;
}


/*SP ---------------------------------------------------------------------------- */
@media only screen and (max-width: 768px) {
  html { font-size: 62.5%; } /* 10px */
  body {
    width: 100%;
    background-size: 320px auto;
    font-size: 1.5rem;
    line-height: 1.7;
    overflow-x: hidden;
  }
  .pc {
    display: none!important;
  }
  .sp {
    display: block!important;
  }
  br.sp,
  span.sp,
  img.sp {
    display: inline!important;
  }
  a:hover {
    opacity: 1;	
  }
  .anchor {
    display: block;
    height: 1px;
    position: relative;
    top: -57px;
  }
}

/*#################################################################################

ヘッダー

################################################################################# */
#header-wrapper {
  width: 100%;
  min-width: 1200px;
  height: 95px;
  background-image: url("../img/common/pc_header_bg.png");
  background-size: cover;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
}
.page-header {
  display: flex;
  justify-content: space-between;
  align-content: flex-end;
  align-items: flex-end;
  width: 1000px;
  height: 95px;
  margin: 0 auto;
}
.site-logo {
  width: 224px;
  padding-bottom: 18px;
}

.nav-background {}
.nav-background-ul {
  display: flex;
  justify-content: flex-end
}
.nav-background-ul .pull {
  padding: 0px 52px 18px;
  position: relative;
  cursor: pointer;
}
.nav-background-ul .min {
  font-family: 'honoka_min';
  font-size: 24px;
  line-height: 1;
  color: #fff;
}
.nav-background-ul .pull:last-child {
  padding-right: 0;
}
.nav-background-ul ul {
  display: none;
  width: 250px;
  background-color: #fcfcfc;
  border-right: 1px solid #d8bed5;
  border-left: 1px solid #d8bed5;
  position: absolute;
  top: 42px;
  left: 0;
}
.nav-background-ul ul li {
  display: flex;
  justify-content: space-between;
  align-items: center;
  align-content: center;
  flex-wrap: wrap;
  padding: 10px;
  border-bottom: 1px solid #d8bed5;
}
.nav-background-ul ul li .thumb {
  display: block;
  width: 45px;
  padding-right: 13px;
}
.nav-background-ul ul li .ttl {
  display: block;
  width: 172px;
}
.nav-background-ul .header-ranking-list li {
  display: block;

}
.nav-background-ul .header-ranking-list li a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  align-content: center;
  flex-wrap: wrap;
  color: #6e6e6e;
}
.nav-background-ul ul.header-ranking-list li a::before {
  width: 65px;
  height: 65px;
  margin-right: 15px;
  content:"";
}
.nav-background-ul ul.header-ranking-list li:nth-of-type(1) a::before {
  background-image: url("../img/common/icon_h_ranking_01.jpg")
}
.nav-background-ul ul.header-ranking-list li:nth-of-type(2) a::before {
  background-image: url("../img/common/icon_h_ranking_02.jpg")
}
.nav-background-ul ul.header-ranking-list li:nth-of-type(3) a::before {
  background-image: url("../img/common/icon_h_ranking_03.jpg")
}
.nav-background-ul ul.header-ranking-list li .name {
  width: 150px;
}

/*SP ---------------------------------------------------------------------------- */
@media only screen and (max-width: 768px) {
  #header-wrapper {
    min-width: 100%;
    height: 47px;
    background-image: url("../img/common/sp_header_bg.png");
    background-size: cover;
    position: fixed;
    top: 0;
    left: 0;
  }
  .page-header {
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    width: 100%;
    min-width: 100%;
    height: 47px;
    margin: 0 auto;
  }
  .site-logo {
    width: 112px;
    padding-bottom: 0px;
  }
  #toggle_menu {
    box-sizing: border-box;
    display: block;
    width: 47px;
    height: 47px;
    padding: 16px 13px;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 99;
  }
  #toggle_menu .inner {
    width: 26px;
    height: 14px;
    margin: 0 auto;
    position:relative;
  }
  #toggle_menu .inner div {
    width: 26px;
    height: 2px;
    background-color: #fcfcfc;
    position: absolute;
  }
  #toggle_menu .menu1 {
    top: 0px;
  }
  #toggle_menu .menu2 {
    top: 6px;
  }
  .open #toggle_menu .inner .menu2 {
    width: 17px;
    height: 2px;
    top: 6px;
  }
  #toggle_menu .menu3 {
    top: 12px;
  }
  #toggle_menu .menu1,#toggle_menu .menu2,#toggle_menu .menu3
  { transition: all 0.5s ease-out;
    -o-transition: all 0.5s ease-out; /* opera */
    -moz-transition: all 0.5s ease-out; /* firefox */
    -webkit-transition: all 0.5s ease-out; /* chrome, safari */
    -ms-transition: all 0.5s ease-out; /* ie */ }
  #toggle_menu .menuclick1
  { top:8px;
    left: -3px;
    -moz-transform: rotate(405deg);
    -webkit-transform: rotate(405deg);
    -o-transform: rotate(405deg);
    -ms-transform: rotate(405deg);
    transform: rotate(405deg);
  }
  #toggle_menu .menuclick2
  { opacity:0;}
  #toggle_menu .menuclick3
  { top:8px;
    left: -3px;
    -moz-transform: rotate(-405deg);
    -webkit-transform: rotate(-405deg);
    -o-transform: rotate(-405deg);
    -ms-transform: rotate(-405deg);
    transform: rotate(-405deg);
  }
  #nav-background {
    box-sizing: border-box;
    display: block;
    width: 80%;
    min-width: auto;
    height: calc(100% - 47px);
    padding: 0;
    background-color: #fcfcfc;
    background-image: none;
    box-shadow: none;
    position: fixed;
    top: 47px;
    left: 100%;
    z-index: 90;
    transition: all 0.5s ease-out;
    transform: translate3d(0, 0px, 0);
  }
  .open #nav-background{
    left: 20%;
  }
  .open #header-wrapper::before {
    width: 100vw;
    height: 100vh;
    background-color: rgba(0,0,0,0.7);
    position: fixed;
    top: 0;
    left: 0;
    content:"";
    z-index: 3;
  }
  .nav-background-inner {
    box-sizing: border-box;
    display: block;
    width: 100%;
    height: 100%;
    background-color: #fcfcfc;
    padding: 0;
    overflow-x: hidden;
    overflow-y: auto;
    position: relative;
  }

  .nav-background-ul {
    display: block;
  }
  .nav-background-ul .pull {
    padding: 0;
    position: relative;
    cursor: pointer;
  }
  .nav-background-ul .min {
    box-sizing: border-box;
    display: block;
    width: 100%;
    height: 28px;
    padding-top: 6px;
    background: url("../img/common/sp_header_bg.png");
    background-size: auto 28px;
    font-size: 16px;
    line-height: 1;
    text-align: center;
  }
  .header-ranking .min {
    background-color: #cdc863;
  }
  .header-popular .min {
    background-color: #eeb8e8;
  }
  .header-trouble .min {
    background-color: #bdb8ef;
  }
  
  
  .nav-background-ul ul {
    display: block;
    width: auto;
    border: none;
    margin: 10px 2% 0;
    position: static;
  }
  .nav-background-ul ul li {
    padding: 6px 4%;
    border-bottom: 1px solid #d8bed5;
  }
  .nav-background-ul ul li:last-child {
    border-bottom: none;
  }
  .nav-background-ul ul li a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
    color: #6e6e6e;
  }
  .nav-background-ul ul li .thumb {
    width: 32px;
    padding-right: 0;
  }
  .nav-background-ul ul li .ttl {
    width: calc(100% - 48px);
  }
  .nav-background-ul ul.header-ranking-list li a::before {
    width: 32px;
    height: 32px;
    background-size: 100% auto;
    margin-right: 0;
    content:"";
  }
  .nav-background-ul ul.header-ranking-list li .name {
    width: calc(100% - 48px);
  }
}


/*#################################################################################

コンテンツ

################################################################################# */

#contents-wrapper {
  width: 1000px;
  padding-top: 95px;
  padding-bottom: 1px;
  background-color: #fcfcfc;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
/*SP -------------------------------------- */
@media only screen and (max-width: 768px) {
  #contents-wrapper {
    width: 100%;
    padding-top: 47px;
    background-color: transparent;
    overflow-x: hidden;
  }
}

/*---------------------------------------------------------------------------------
検索
--------------------------------------------------------------------------------- */
.search-wrap {
  width: 600px;
  background-color: #fcfcfc;
  border: 1px solid #e894de;
  border-radius: 10px;
  overflow:hidden;
  margin: 35px auto 40px;
}
.search-wrap h2 {
  box-sizing: border-box;
  width: 100%;
  height: 50px;
  padding-top: 13px;
  padding-right: 22px;
  font-family: 'honoka_min';
  font-size: 24px;
  line-height: 1;
  text-align: center;
  color: #fff;
  position: relative;
  cursor: pointer;
}
.search-wrap h2::after {
  display: block;
  width: 15px;
  height: 15px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  position: absolute;
  top: 20px;
  left: 50%;
  margin: auto 0 auto 88px;
  content:"";
}
.search-wrap h2.selected::after {
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  top: 10px;
}
.search-wrap h2.accordion_head::after {
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  top: 10px;
}
.search-wrap h2.accordion_head.selected::after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 20px;
}

.search-wrap form {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 0px 20px 20px;
}
.feas-select {
  box-sizing: border-box;
  width: 33.33%;
  padding: 15px 20px 15px 0;
  border-bottom: 2px solid #d8bed5;
}
.feas-select:nth-of-type(1),
.feas-select:nth-of-type(4) {
  padding-right: 12px;
}
.feas-select:nth-of-type(2),
.feas-select:nth-of-type(5) {
  padding-right: 35px;
}
.feas-select:nth-last-of-type(1),
.feas-select:nth-last-of-type(2){
  width: 50%;
  padding-right: 40px;
  border-bottom: none;
}
.feas-select select {
  box-sizing: border-box;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0;
  display: block;
  width: 100%;
  padding: 5px 40px 5px 5px;
  background: url("../img/common/pc_search_arrow_bg.png") no-repeat right center;
  border: none;
  outline: none;
  position: relative;
  cursor: pointer;
  font-size: 14px;
  color: #6a6a6a;
  text-indent: 0.01px;
  text-overflow: '';
}
select::-ms-expand {
  display: none;
}
.feas-select:nth-last-of-type(1) select,
.feas-select:nth-last-of-type(2) select{
  color: #e894de;
}
.feas-select .box {
  padding: 0 40px 20px 0;
}
.feas-select label {
  display: block;
}
.feas-submit-button {
  width: 100%;
  height: 50px;
  border-radius: 10px;
  background-color: #ff2d8b;
  box-shadow:  0px 3px 0px 0px #df48a7;
  font-family: 'honoka_min';
  font-size: 24px;
  line-height: 1;
  color: #fff;
  border: none;
  outline: none;
  cursor: pointer;
}
/*SP ---------------------------------------------------------------------------- */
@media only screen and (max-width: 768px) {
  .search-wrap {
    box-sizing: border-box;
    width: 96%;
    padding: 5px 2%;
    border: none;
    border-radius: 0;
    overflow:hidden;
    margin: 5px auto 20px;
  }
  .search-wrap h2 {
    box-sizing: border-box;
    height: 25px;
    padding-top: 4px;
    padding-right: 17px;
    border-radius: 5px 5px 0 0;
    font-size: 16px;
    line-height: 1;
    text-align: center;
    color: #fff;
    position: relative;
    cursor: pointer;
  }
  .search-wrap h2::after {
    display: block;
    width: 7px;
    height: 7px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    position: absolute;
    top: 10px;
    left: 50%;
    margin: auto 0 auto 55px;
    content:"";
  }
  .search-wrap h2.selected::after {
    top: 5px;
  }
  .search-wrap h2.accordion_head::after {
    top: 10px;
  }
  .search-wrap h2.accordion_head.selected::after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    top: 20px;
  }
  .search-wrap form {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 0px 5px 0;
  }
  .feas-select {
    width: 50%;
    padding-right: 0;
    border-bottom: 1px solid #d8bed5;
  }
  .feas-select:nth-last-of-type(1),
  .feas-select:nth-last-of-type(2){
    width: 100%;
    padding-right: 3%;
    border-bottom: none;
    text-align: center;
  }
  .feas-select:nth-of-type(1),
  .feas-select:nth-of-type(2),
  .feas-select:nth-of-type(3),
  .feas-select:nth-of-type(4),
  .feas-select:nth-of-type(5),
  .feas-select:nth-of-type(6){
    padding-right: 3%;
  }
  .feas-select h4 {
    padding: 7px 26px 7px 0;
  }
  .feas-select h4::after {
    width: 5px;
    height: 5px;
    top: 15px;
  }
  .feas-select h4.selected::after {
    top: 18px;
  }
  .feas-select .box {
    padding: 0 20px 7px 0;
  }
  .feas-select:nth-last-of-type(1) .box,
  .feas-select:nth-last-of-type(2) .box{
    text-align: left;
  }
  .feas-select select {
    font-size: 15px;
  }
  .feas-submit-button {
    height: 25px;
    border-radius: 5px;
    box-shadow:  0px 2px 0px 0px #df48a7;
    font-size: 16px;
  }
}


/*---------------------------------------------------------------------------------
メインビジュアル
--------------------------------------------------------------------------------- */
.main-visual {
  margin-bottom: 40px;
  position: relative;
}
.main-visual .main-visual__ttl {
  box-sizing: border-box;
  width: 100%;
  padding: 13px 200px;
  font-size: 24px;
  font-weight: bold;
  color: #fff;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 2;
}
.main-visual .main-visual__ttl::before {
  display: block;
  width: 100%;
  height: 100%;
  opacity: 0.4;
  position: absolute;
  top: 0;
  left: 0;
  content:"";
  z-index: -1;
}
/*SP ---------------------------------------------------------------------------- */
@media only screen and (max-width: 768px) {
  .main-visual {
    margin-bottom: 25px;
    position: relative;
  }
  .main-visual .main-visual__ttl {
    padding: 13px 4%;
    font-size: 19px;
  }
}


/*---------------------------------------------------------------------------------
テキスト
--------------------------------------------------------------------------------- */
.text-section {
  width: 600px;
  margin: 0 auto 60px;
}
.text-section__ttl {
  padding: 8px 0px 10px 16px;
  border-bottom: 2px solid #e99be0;
  border-left: 4px solid #e894de;
  margin-bottom: 35px;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.3;
}
.text-section__ttl-color {
  box-sizing: border-box;
  width: 100%;
  padding: 12px 20px;
  background: url("../img/common/bg_text-section__ttl.png") no-repeat;
  background-size: 100% auto;
  margin-bottom: 35px;
  font-size: 26px;
  font-weight: bold;
  line-height: 1.3;
  text-align: center;
  color: #fff;
}
.text-section__ttl-faq {
  padding: 8px 0px 18px 54px;
  border-bottom: 2px solid #e99be0;
  background: url("../img/common/icon_ttl_faq.png") no-repeat;
  background-size: 46px auto;
  margin-bottom: 35px;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.3;
}

.text-section .dg-wrapper {
  margin-bottom: 30px;
}
.text-section p {
  margin-bottom: 40px;
}
/*SP ---------------------------------------------------------------------------- */
@media only screen and (max-width: 768px) {
  .text-section {
    width: 100%;
    margin: 0 auto 10px;
  }
  .text-section__ttl {
    box-sizing: border-box;
    width: 96%;
    padding: 5px;
    border-bottom: 1px solid #e99be0;
    border-left: 2px solid #e894de;
    margin: 0 auto;
    font-size: 14px;
  }
  .text-section__ttl-color {
    padding: 8px 10px;
    margin: 0 auto;
    font-size: 16px;
  }
  .text-section__ttl-faq {
    box-sizing: border-box;
    width: 96%;
    padding: 5px 0px 10px 30px;
    border-bottom: 1px solid #e99be0;
    background-size: 25px auto;
    margin: 0 auto;
    font-size: 14px;
  }
  .text-section .inner {
    padding: 22px 0px;
    background-color: #fcfcfc;
  }
  .text-section p{
    padding: 0px 4.5%;
    margin-bottom: 20px;
  }

  .text-section .dg-wrapper {
    width: 100%;
  }
  
  .read-slider-txt {
    padding: 0px 4.5%;
    margin-bottom: 40px;
  }
}


/*---------------------------------------------------------------------------------
口コミ　スライダー
--------------------------------------------------------------------------------- */
.voice-slider-section {
  width: 600px;
  margin: 0 auto 90px;
}
.voice-slider-section .dg-wrapper li {
  box-sizing: border-box;
  padding: 20px;
  border: 1px solid #d8bed5;
  background-color: #fcfcfc;
}
.voice-slider-section .dg-wrapper .number {
  box-sizing: border-box;
  display: block;
  width: 80px;
  height: 80px;
  padding-top: 13px;
  padding: 13px 0 0;
  border-radius: 10px;
  background-image: url("../img/common/icon_voice_slider.png");
  background-blend-mode: screen;
  font-family: 'Lora', serif;
  font-size: 20px;
  line-height: 1;
  text-align: center;
  color: #fff;
  position: absolute;
  top: -22px;
  left: -1px;
}
.voice-slider-section .dg-wrapper .number span {
  display: block;
  font-size: 40px;
}
.voice-slider-section .dg-wrapper .dg-right .number,
.voice-slider-section .dg-wrapper .dg-outright .number,
.voice-slider-section .dg-wrapper .dg-left .number,
.voice-slider-section .dg-wrapper .dg-outleft .number {
  transform: scale(0.75);
  transform-origin: left top;
  top: -17px;
}


/*SP ---------------------------------------------------------------------------- */
@media only screen and (max-width: 768px) {
  .voice-slider-section{
    width: 100%;
    margin-bottom: 55px;
  }
  .voice-slider-section .dg-wrapper li {
    padding: 10px;
  }
  .voice-slider-section .dg-wrapper .number {
    box-sizing: border-box;
    display: block;
    width: 40px;
    height: 40px;
    padding: 6px 0 0;
    border-radius: 5px;
    background-size: 100% auto;
    font-size: 10px;
    top: -11px;
    left: -1px;
  }
  .voice-slider-section .dg-wrapper .number span {
    display: block;
    font-size: 20px;
  }
}


/*---------------------------------------------------------------------------------
写真付き見出しブロック
--------------------------------------------------------------------------------- */
.block-photo-header {
  width: 600px;
  background-image: url("../img/common/bg_block-photo-header.jpg");
  background-size: cover;
  margin: 0 auto 60px;
  position: relative;
}
.block-photo-header__ttl {
  padding: 28px 20px 75px 0;
  margin-left: 175px;
  position: relative;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.5;
  color: #e894de;
}
.block-photo-header__ttl::before {
  width: 144px;
  height: 4px;
  background-color: #e894de;
  position: absolute;
  top: 10px;
  left: -10px;
  content:"";
  transform: rotate(-9deg);
  transform-origin: left bottom;
}
.block-photo-header__ttl::after {
  width: 228px;
  height: 4px;
  background-color: #e894de;
  position: absolute;
  bottom: 65px;
  left: -10px;
  content:"";
  transform: rotate(10deg);
  transform-origin: left top;
}

.block-photo-header__photo {
  width: 150px;
  height: 150px;
  position: absolute;
  top: -30px;
  left: 0;
}
.block-photo-header__photo img {
  border-radius: 50%;
  border: 4px solid #e894de;
}
.block-photo-header__txt {
  padding: 0px 20px 40px;
}

/*SP ---------------------------------------------------------------------------- */
@media only screen and (max-width: 768px) {
  .block-photo-header {
    width: 96%;
    margin: 0 auto 30px;
    position: relative;
  }
  .block-photo-header__ttl {
    padding: 20px 10px 43px 0;
    margin-left: 95px;
    font-size: 14px;
  }
  .block-photo-header__ttl::before {
    width: 72px;
    height: 2px;
    top: 8px;
    left: -5px;
  }
  .block-photo-header__ttl::after {
    width: 114px;
    height: 2px;
    bottom: 30px;
    left: -5px;
  }

  .block-photo-header__photo {
    width: 75px;
    height: 75px;
    position: absolute;
    top: -10px;
    left: 10px;
  }
  .block-photo-header__photo img {
    border: 2px solid #e894de;
  }
  .block-photo-header__txt {
    padding: 0px 3.5% 12px;
  }
}


/*---------------------------------------------------------------------------------
クチコミ
--------------------------------------------------------------------------------- */
.voice-list-section {
  width: 600px;
  margin: 0 auto 40px;
}
.voice-list-section__ttl {
  padding: 12px 20px 20px 85px;
  background: url("../img/common/icon_voice.png") no-repeat;
  border-bottom: 1px solid #d8bed5;
  margin-bottom: 22px;
  font-size: 24px;
  font-weight: bold;
  color: #e894de;
}
.voice-list-inner {
  width: 600px;
  height: 430px;
  background-color: #fff3fe;
  overflow-x: hidden;
  overflow-y: auto;
}
.voice-list {
  padding: 0px 32px 0px 20px;
}
.voice-list li {
  padding: 20px 0px 18px;
  border-bottom: 1px solid #d8bed5;
}
.voice-list-star {
  padding-bottom: 10px;
}
.voice-list-star i {
  display: inline-block;
  margin-right: 7px;
  font-size: 28px;
  color: #bbbbbb;
}
.voice-list-star i.on {
  color: #ff2d8b;
}
.voice-list-name {
  margin-bottom: 15px;
  font-size: 18px;
  font-weight: bold;
}
.voice-list-name em {
  color: #ff2d8b;
}
.voice-list-txt {
  
}
.voice-list-note {
  padding-top: 17px;
  font-size: 10px;
  line-height: 1.5;
}

/*SP ---------------------------------------------------------------------------- */
@media only screen and (max-width: 768px) {
  .voice-list-section {
    width:94%;
    margin: 0 auto 25px;
  }
  .voice-list-section__ttl {
    padding: 0px 10px 12px 42px;
    background-size: 33px auto;
    border-bottom: 1px solid #d8bed5;
    margin-bottom: 9px;
    font-size: 19px;
  }
  .voice-list-inner {
    width: 100%;
    height: 215px;
  }
  .voice-list {
    padding: 0px 3% 0px;
  }
  .voice-list li {
    padding: 10px 0px 13px;
  }
  .voice-list-star {
    padding-bottom: 0px;
  }
  .voice-list-star i {
    display: inline-block;
    margin-right: 7px;
    font-size: 17px;
    color: #ff2d8b;
  }
  .voice-list-name {
    margin-bottom: 12px;
    font-size: 13px;
  }
  .voice-list-note {
    padding-top: 13px;
  }
}


/*---------------------------------------------------------------------------------
ランキングA
--------------------------------------------------------------------------------- */
.ranking-A-section {
  width: 600px;
  margin: 0 auto 45px;
}
.ranking-A-section table {
  width: 100%;
}
.ranking-A-section th,
.ranking-A-section td {
  box-sizing: border-box;
  border: 1px solid #d8bed5;
  text-align: center;
  vertical-align: middle;
  padding: 10px 7px 16px;
}
.ranking-A-section th {
  width: 71px;
  padding: 10px 0px 16px;
  background-color: #fff3fe;
  font-size: 13px;
}
.ranking-A-section tr:first-child th {
  background-color: #fcfcfc;
}
.ranking-A-section tr:first-child th img {
  width: 84px;
}
.ranking-A-section tr:first-child th:first-child {
  background-color: #fff3fe;
}
.ranking-A-section tr:first-child th:nth-of-type(2) {
  border-top: 4px solid #e589da;
  border-right: 4px solid #e589da;
  border-left: 4px solid #e589da;
}
.ranking-A-section td {
  width: 105px;
  font-size: 13px;
  line-height: 1.3;
}
.ranking-A-section td:nth-of-type(1) {
  border-right: 4px solid #e589da;
  border-left: 4px solid #e589da;
}
.ranking-A-section tr:last-child td:nth-of-type(1) {
  border-bottom: 4px solid #e589da;
}
.ranking-A-section .photo {
  
  margin-bottom: 12px;
}
.ranking-A-section a.anc-detail {
  display: block;
  color: #ff2d8b;
  text-decoration: underline;
}
.ranking-A-section .star {
  padding-bottom: 15px;
}
.ranking-A-section .star i {
  font-size: 13px;
  color: #bbbbbb;
  line-height: 1;
}
.ranking-A-section .star i.on {
  color: #ff2d8b;
}

.ranking-A-section .score {
  display: block;
  font-size: 17px;
  font-weight: bold;
  line-height: 1;
  color: #6a6a6a;
}
.ranking-A-section .btn-web {
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  flex-wrap: wrap;
  width: 100%;
  height: 62px;
  background-color: #5ee299;
  box-shadow: 0px 2px 0px 0px #6ec8b0;
  border-radius: 6px;
  color: #fff;
}

/*SP ---------------------------------------------------------------------------- */
@media only screen and (max-width: 768px) {
  .ranking-A-section {
    width: 90%;
    margin: 0 auto 22px;
    overflow-x: scroll;
  }
  .ranking-A-section table {
    width: 545px;
  }
  .ranking-A-section th,
  .ranking-A-section td {
    padding: 13px 2px 15px;
  }
  .ranking-A-section th {
    width: 66px;
    padding: 13px 0px 16px;
    font-size: 12px;
  }
  .ranking-A-section tr:first-child th img {
    width: 72px;
  }
  .ranking-A-section tr:first-child th:nth-of-type(2) {
    border-top: 2px solid #e589da;
    border-right: 2px solid #e589da;
    border-left: 2px solid #e589da;
  }
  .ranking-A-section td {
    width: 95px;
    font-size: 12px;
    background-color: #fcfcfc;
  }
  .ranking-A-section td:nth-of-type(1) {
    border-right: 2px solid #e589da;
    border-left: 2px solid #e589da;
  }
  .ranking-A-section tr:last-child td:nth-of-type(1) {
    border-bottom: 2px solid #e589da;
  }
  .ranking-A-section .photo {
    margin-bottom: 6px;
  }
  .ranking-A-section .star {
    padding-bottom: 15px;
    text-align: center;
  }
  .ranking-A-section .star i {
    font-size: 10px;
  }
  .ranking-A-section .score {
    font-size: 15px;
  }
  .ranking-A-section .btn-web {
    height: 55px;
    border-radius: 3px;
  }
}


/*---------------------------------------------------------------------------------
ランキングB
--------------------------------------------------------------------------------- */
.ranking-B-section {
  width: 600px;
  margin: 0 auto 45px;
}
.ranking-B-section table {
  width: 100%;
}
.ranking-B-section th,
.ranking-B-section td {
  box-sizing: border-box;
  border: 1px solid #d8bed5;
  text-align: center;
  vertical-align: middle;
  padding: 10px 7px 16px;
}
.ranking-B-section th {
  width: 75px;
  padding: 10px 0px 16px;
  background-color: #fff3fe;
  font-size: 13px;
}
.ranking-B-section tr:first-child th {
  background-color: #fcfcfc;
}
.ranking-B-section tr:first-child th img {
  width: 84px;
}
.ranking-B-section tr:first-child th:first-child {
  background-color: transparent;
  border-top: none;
  border-left: none;
}
.ranking-B-section tr:first-child th:nth-of-type(2) {
  position: relative;
}
.ranking-B-section tr:first-child th:nth-of-type(2)::before {
  width: 59px;
  height: 38px;
  background-image: url("../img/common/icon_ranking-B-section.png");
  background-size: 100% auto;
  position: absolute;
  top: 2px;
  left: -38px;
  content:"";
}
.ranking-B-section td {
  width: 105px;
  font-size: 13px;
  line-height: 1.3;
}
.ranking-B-section .photo {
  margin-bottom: 12px;
}
.ranking-B-section a.anc-detail {
  display: block;
  color: #ff2d8b;
  text-decoration: underline;
}
.ranking-B-section .privilege {
  display: block;
  padding: 15px 0px 8px;
  position: relative;
  text-align: center;
}
.ranking-B-section .privilege::before {
  width: 77px;
  height: 17px;
  background-image: url("../img/common/icon_ranking_privilege_before.png");
  background-size: 100% auto;
  position: absolute;
  top: -5px;
  right: 0;
  left: 0;
  margin: auto;
  content:"";
}
.ranking-B-section .privilege::after {
  width: 77px;
  height: 17px;
  background-image: url("../img/common/icon_ranking_privilege_after.png");
  background-size: 100% auto;
  position: absolute;
  bottom: -10px;
  right: 0;
  left: 0;
  margin: auto;
  content:"";
}

.ranking-B-section .star {
  padding-bottom: 0;
  text-align: center;
}
.ranking-B-section .star2 {
  padding-top: 25px;
  text-align: center;
  position: relative;
}
.ranking-B-section td:nth-of-type(1) .star2::before {
  width: 55px;
  height: 29px;
  background-image: url("../img/common/icon_good.jpg");
  background-size: 100% auto;
  position: absolute;
  top: -5px;
  right: -2px;
  content:"";
}
.ranking-B-section i {
  font-size: 13px;
  color: #bbbbbb;
  line-height: 1;
}
.ranking-B-section i.on {
  color: #ff2d8b;
}

.ranking-B-section .score {
  display: block;
  font-size: 17px;
  font-weight: bold;
  line-height: 1;
  color: #6a6a6a;
}
.ranking-B-section .total {
  font-size: 26px;
  font-weight: bold;
  color: #ff2d8b;
}
.ranking-B-section .btn-web {
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  flex-wrap: wrap;
  width: 100%;
  height: 62px;
  background-color: #5ee299;
  box-shadow: 0px 2px 0px 0px #6ec8b0;
  border-radius: 6px;
  color: #fff;
}

/*SP ---------------------------------------------------------------------------- */
@media only screen and (max-width: 768px) {
  .ranking-B-section {
    width: 90%;
    margin: 0 auto 22px;
    overflow-x: scroll;
  }
  .ranking-B-section table {
    width: 545px;
  }
  .ranking-B-section th,
  .ranking-B-section td {
    padding: 13px 2px 15px;
  }
  .ranking-B-section th {
    width: 66px;
    padding: 13px 0px 16px;
    font-size: 12px;
  }
  .ranking-B-section tr:first-child th:nth-of-type(2)::before {
    width: 51px;
    height: 33px;
    top: 2px;
    left: -33px;
    content:"";
  }
  .ranking-B-section tr:first-child th img {
    width: 74px;
  }
  .ranking-B-section td {
    width: 95px;
    font-size: 12px;
    background-color: #fcfcfc;
  }
  .ranking-B-section .photo {
    margin-bottom: 6px;
  }
  .ranking-B-section .privilege {
    padding: 10px 0px 6px;
    position: relative;
    text-align: center;
  }
  .ranking-B-section .privilege::before {
    width: 66px;
    height: 15px;
    position: absolute;
    top: -5px;
  }
  .ranking-B-section .privilege::after {
    width: 66px;
    height: 15px;
    position: absolute;
    bottom: -5px;
  }
  .ranking-B-section .star {
    padding-bottom: 15px;
    text-align: center;
  }
  .ranking-B-section .star2 {
    padding-top: 14px;
    text-align: center;
    position: relative;
  }
  .ranking-B-section td:nth-of-type(1) .star2::before {
    width: 48px;
    height: 27px;
    top: -10px;
    right: 0px;
    content:"";
  }
  .ranking-B-section i {
    font-size: 10px;
  }
  .ranking-B-section .score {
    font-size: 15px;
  }
  .ranking-B-section .btn-web {
    height: 55px;
    border-radius: 3px;
  }
  .ranking-B-section .total {
    font-size: 23px;
    font-weight: bold;
    color: #ff2d8b;
  }
}


/*---------------------------------------------------------------------------------
ランキングC
--------------------------------------------------------------------------------- */
.ranking-C-section {
  width: 600px;
  margin: 0 auto 60px;
}
.ranking-C-section__ttl {
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  flex-wrap: wrap;
  width: 386px;
  height: 100px;
  padding: 0px 45px 24px;
  background-image: url("../img/common/ranking-C-section_ttl.png");
  background-size: 100% auto;
  margin: 0 auto 40px;
  font-size: 20px;
  line-height: 1.5;
  font-weight: bold;
  color: #fff;
  text-align: center;
}

.ranking-C-box {
  margin-bottom: 27px;
}
.ranking-C-box__ttl {

}
.ranking-C-box__ttl.accordion_head {
  cursor: pointer;
  position: relative;
}
.ranking-C-box__ttl.accordion_head::after {
  display: block;
  width: 20px;
  height: 20px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  position: absolute;
  top: 10px;
  left: 280px;
  content:"";
}
.ranking-C-box__ttl.accordion_head.selected::after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 20px;
}
.ranking-C-box-detail {
  min-height: 100px;
  padding: 16px 240px 45px 20px;
  position: relative;
}
.ranking-C-box-detail__name {
  padding-bottom: 20px;
}
.ranking-C-box-detail__name a {
  font-size: 24px;
  font-weight: bold;
  line-height: 1.5;
  color: #ff2d8b;
  text-decoration: underline;
}
.ranking-C-box-detail__txt {}
.ranking-C-box-detail-total {
  box-sizing: border-box;
  width: 125px;
  height: 125px;
  padding-top: 22px;
  background-image: url("../img/common/ranking-C_total.jpg");
  background-size: 100% auto;
  font-size: 16px;
  line-height: 1;
  font-weight: bold;
  text-align: center;
  position: absolute;
  top: 20px;
  right: 0;
}
.ranking-C-box-detail-total .total {
  display: block;
  padding: 3px 0px 3px;
  font-family: 'Lora', serif;
  font-size: 50px;
  color: #e894de;
}

.ranking-C-box-detail-total .star,
.ranking-C-box-detail-total .heart {
  display: flex;
  justify-content: center;
}
.ranking-C-box-detail-total i {
  display: inline;
  margin: 0 2px;
  font-size: 12px;
  color: #bbb;
}
.ranking-C-box-detail-total .star i.on {
  color: #ff2d8b;
}
.ranking-C-box-detail-total .heart i.on {
  color: #ff2d8b;
}
.ranking-C-txt {
  padding: 30px 0px 35px;
}
.ranking-C-link {
  width: 410px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 0 auto;
}
.ranking-C-link a {
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  flex-wrap: wrap;
  width: 195px;
  min-height: 38px;border-radius: 10px;
  margin-bottom: 15px;
  font-size: 18px;
  line-height: 1.5;
  text-align: center;
  color: #fff;
}
.ranking-C-link a:nth-of-type(2n+1) {
  background-color: #e894de;
  box-shadow: 0px 3px 0px 0px #cb7fd8;
}
.ranking-C-link a:nth-of-type(2n) {
  background-color: #5ee299;
  box-shadow: 0px 3px 0px 0px #52c295;
}

.ranking-C-anc-btn {
  width: 560px;
  margin: 30px auto 0;
}
.ranking-C-anc-btn a {
  box-sizing: border-box;
  display: block;
  width: 100%;
  height: 50px;
  padding: 18px 28px 0 0;
  border-radius: 10px;
  background-color: #ff2d8b;
  box-shadow:  0px 3px 0px 0px #df48a7;
  font-family: 'honoka_min';
  font-size: 24px;
  line-height: 1;
  color: #fff;
  text-align: center;
  position: relative;
}
.ranking-C-anc-btn a::after {
  display: block;
  width: 16px;
  height: 16px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  position: absolute;
  top: 25px;
  left: 50%;
  margin-left: 90px;
  content:"";
}


/*SP ---------------------------------------------------------------------------- */
@media only screen and (max-width: 768px) {
  .ranking-C-section {
    width: 100%;
    margin: 0 auto 60px;
  }
  .ranking-C-section__ttl {
    width: 300px;
    height: 78px;
    padding: 0px 35px 24px;
    margin: 0 auto 30px;
    font-size: 16px;
  }
  .ranking-C-box {
    background-color: #fcfcfc;
    padding-bottom: 15px;
    margin-bottom: 14px;
  }
  .ranking-C-box__ttl {

  }
  .ranking-C-box__ttl.accordion_head::after {
    width: 10px;
    height: 10px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    top: 0;
    left: 50%;
    bottom: 0;
    margin: auto;
    margin-left: -18px;
    content:"";
  }
  .ranking-C-box__ttl.accordion_head.selected::after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    top: 20px;
  }
  .ranking-C-box-detail {
    min-height: 100px;
    padding: 15px 30% 20px 3%;
    margin: 0 4.5%;
  }
  .ranking-C-box-detail__name {
    padding-bottom: 10px;
  }
  .ranking-C-box-detail__name a {
    font-size: 16px;
  }
  .ranking-C-box-detail__txt {}
  .ranking-C-box-detail-total {
    width: 85px;
    height: 85px;
    padding-top: 14px;
    font-size: 11px;
    top: 15px;
    right: 0;
  }
  .ranking-C-box-detail-total .total {
    padding: 1px 0px 1px;
    font-size: 34px;
  }

  .ranking-C-box-detail-total i {
    display: inline;
    margin: 0 1px;
    font-size: 9px;
  }
  .ranking-C-txt {
    padding: 25px 4.5% 13px;
  }
  .ranking-C-link {
    width: 80%;
  }
  .ranking-C-link a {
    width: 46%;
    min-height: 24px;
    border-radius: 5px;
    margin-bottom: 15px;
    font-size: 13px;
  }
  .ranking-C-link a:nth-of-type(2n+1) {
    box-shadow: 0px 2px 0px 0px #cb7fd8;
  }
  .ranking-C-link a:nth-of-type(2n) {
    box-shadow: 0px 2px 0px 0px #52c295;
  }
  .ranking-C-anc-btn {
    width: 94%;
    margin: 15px auto 0;
  }
  .ranking-C-anc-btn a {
    height: 25px;
    padding: 6px 28px 0 0;
    border-radius: 5px;
    box-shadow:  0px 2px 0px 0px #df48a7;
    font-size: 16px;
  }
  .ranking-C-anc-btn a::after {
    display: block;
    width: 10px;
    height: 10px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    top: 12px;
    left: 50%;
    margin-left: 55px;
    content:"";
  }
}

/*---------------------------------------------------------------------------------
おすすめ記事
--------------------------------------------------------------------------------- */
.recommend-section {
  width: 621px;
  margin: 0 auto 60px;
}
.recommend-list {
  display: flex;
  flex-wrap: wrap;
}
.recommend-list li {
  width: 185px;
  padding: 0px 11px 20px;
}
.recommend-list li a {
  display: block;
  padding-top: 30px;
  position: relative;
}
.recommend-list li a .icon {
  box-sizing: border-box;
  width: 100%;
  height: 30px;
  padding-top: 6px;
  font-family: 'Lora', serif;
  font-size: 18px;
  line-height: 1;
  text-align: center;
  color: #fff;
  position: absolute;
  top: 0;
  left: 0;
}
.recommend-list li a::after {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 20px 20px;
  border-color: transparent transparent #e894de transparent;
  position: absolute;
  right: 0;
  bottom: 0;
  content:"";
}
.recommend-list .img {}
.recommend-list .txt {
  padding-top: 12px;
  line-height: 1.7;
}

/*SP ---------------------------------------------------------------------------- */
@media only screen and (max-width: 768px) {
  .recommend-section {
    width: 90%;
    margin: 0 auto 30px;
  }
  .recommend-list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .recommend-list li {
    width: 47%;
    padding: 0px 0 15px;
  }
  .recommend-list li a {
    padding-top: 15px;
  }
  .recommend-list li a .icon {
    height: 15px;
    padding-top: 2px;
    font-size: 11px;
  }
  .recommend-list li a::after {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 10px 10px;
    border-color: transparent transparent #e894de transparent;
    position: absolute;
    right: 0;
    bottom: 0;
    content:"";
  }
  .recommend-list .img {}
  .recommend-list .txt {
    padding-top: 12px;
    line-height: 1.4;
  }
}

/*---------------------------------------------------------------------------------
ライター
--------------------------------------------------------------------------------- */
.writer-section {
  box-sizing: border-box;
  width: 600px;
  padding: 25px 30px 0;
  margin: 0 auto 60px;
  background: url("../img/common/line_writer.jpg") no-repeat center top;
  background-size: 100% auto;
}
.writer-section__ttl {
  padding: 3px 0px 30px 25px;
  background: url("../img/common/icon_writer.png") no-repeat;
  background-size: 18px auto;
  font-size: 18px;
  line-height: 1; 
  color: #a694e8;
}
.writer-section-box {
  min-height: 110px;
  padding: 0px 0px 25px 140px;
  position: relative;
}
.writer-section__name {
  font-size: 24px;
  font-weight: bold;
}
.writer-section p {}
.writer-section .img {
  width: 110px;
  position: absolute;
  top: 0;
  left: 0;
}
.writer-section .img img {
  border-radius: 50%;
}
.writer-section__sign {}

/*SP ---------------------------------------------------------------------------- */
@media only screen and (max-width: 768px) {
  .writer-section {
    width: 100%;
    padding: 15px 4% 0;
    margin: 0 auto 40px;
  }
  .writer-section__ttl {
    padding: 3px 0px 15px 17px;
    background-size: 15px auto;
    font-size: 12px;
  }
  .writer-section-box {
    min-height: 60px;
    padding: 0px 0px 12px 25%;
  }
  .writer-section__name {
    font-size: 16px;
    font-weight: bold;
  }
  .writer-section p {}
  .writer-section .img {
    width: 20%;
  }
  .writer-section .img img {
    border-radius: 50%;
  }
  .writer-section__sign {}
}


/*---------------------------------------------------------------------------------
検索結果
--------------------------------------------------------------------------------- */
.search-result {
  width: 600px;
  margin: 0 auto 60px;
}
.search-result-read-txt {
  margin-bottom: 42px;
}

#feas-sort-menu {
  display: flex;
  justify-content: space-around;
  margin-bottom: 40px;
}
#feas-sort-menu > div {
  box-sizing: border-box;
  max-width: 156px;
  height: 60px;
  padding: 13px 10px 0;
  background-color: #adadad;
  box-shadow: 0px 3px 0px 0px #9895a8;
  margin: 0px 10px;
  border-radius: 10px;
  line-height: 1;
  color: #fff;
  text-align: center;
}
#feas-sort-menu > div:hover {
  background-color: #ff2d8b;
  box-shadow: 0px 3px 0px 0px #df2787;
}
#feas-sort-menu .feas-st {
  display: block;
  width: 100%;
  text-align: center;
}
#feas-sort-menu > div a {
  display: inline-block;
  padding: 7px 6px 0;
  text-decoration: underline;
}

.search-result-list {}
.search-result-list > li {
  border: 2px solid #d8bed5;
  padding: 18px 20px 20px;
  margin-bottom: 40px;
}
.search-result-detail {
  min-height: 90px;
  padding: 0 240px 20px 20px;
  position: relative;
}
.search-result-detail__name {
  padding-bottom: 20px;
}
.search-result-detail__name a {
  font-size: 24px;
  font-weight: bold;
  line-height: 1.5;
  color: #ff2d8b;
  text-decoration: underline;
}
.search-result-detail__txt {}
.search-result-detail-total {
  box-sizing: border-box;
  width: 125px;
  height: 125px;
  padding-top: 22px;
  background-image: url("../img/common/search_reseult_total.png");
  background-size: 100% auto;
  font-size: 16px;
  line-height: 1;
  font-weight: bold;
  text-align: center;
  position: absolute;
  top: -38px;
  right: 0;
}
.search-result-detail-total .total {
  display: block;
  padding: 3px 0px 3px;
  font-family: 'Lora', serif;
  font-size: 50px;
  color: #e894de;
}

.search-result-detail-total .star,
.search-result-detail-total .heart {
  display: flex;
  justify-content: center;
}
.search-result-detail-total i {
  display: inline;
  margin: 0 1px;
  font-size: 12px;
  color: #bbb;
}
.search-result-detail-total .star i.on {
  color: #ff2d8b;
}
.search-result-detail-total .heart i.on {
  color: #a694e8;
}
.search-result-list-txt {
  padding: 30px 0px 35px;
}
.search-result-link {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: 0 auto;
}
.search-result-link a {
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  flex-wrap: wrap;
  width: 195px;
  min-height: 38px;
  border-radius: 10px;
  margin: 0px 10px 15px;
  font-size: 18px;
  line-height: 1.5;
  text-align: center;
  color: #fff;
}
.search-result-link a:nth-of-type(2n+1) {
  background-color: #e894de;
  box-shadow: 0px 3px 0px 0px #cb7fd8;
}
.search-result-link a:nth-of-type(2n) {
  background-color: #5ee299;
  box-shadow: 0px 3px 0px 0px #52c295;
}

.search-result-list .dg-container {
  width: 450px;
  min-height: 300px;
  margin: 0 auto;
}
.search-result-list .dg-wrapper,
.search-result-list .dg-wrapper li{
  width: 450px;
  height: 300px;
}
.search-result-list .dg-wrapper li.dg-right,
.search-result-list .dg-wrapper li.dg-outright {
  width: 338px;
  position: absolute;
  top: 37px;
  left: 167px;
}
.search-result-list .dg-wrapper li.dg-left,
.search-result-list .dg-wrapper li.dg-outleft{
  width: 338px;
  position: absolute;
  top: 37px;
  left: -55px;
}
.search-result-list .dg-wrapper li.dg-transition {
}
.search-result-list .dg-wrapper li.dg-transition {}
.search-result-list .dg-container nav span {
  top: 120px;
}
.search-result-list .dg-container nav span.dg-prev {
  left: -55px;
}
.search-result-list .dg-container nav span.dg-next{
	right: -55px;
}
/*SP ---------------------------------------------------------------------------- */
@media only screen and (max-width: 768px) {
  .search-result {
    width: 100%;
    margin: 0 auto 60px;
  }
  .search-result-header {
    padding: 24px 3% 25px;
    background-color: #fcfcfc;
    margin-bottom: 42px;
  }
  .search-result-read-txt {
    margin-bottom: 20px;
  }

  #feas-sort-menu {
    flex-wrap: wrap;
    margin-bottom: 0;
  }
  #feas-sort-menu > div {
    width: 48%;
    max-width: 48%;
    height: 43px;
    padding: 6px 5px 0;
    box-shadow: 0px 2px 0px 0px #9895a8;
    margin: 0px 1% 10px;
    border-radius: 5px;
    font-size: 11px;
  }
  #feas-sort-menu > div:hover {
    box-shadow: 0px 2px 0px 0px #df2787;
  }
  #feas-sort-menu > div a {
    display: inline-block;
    padding: 7px 3px 0;
    text-decoration: underline;
  }

  .search-result-list {
    width: 96%;
    margin: 0 auto;
  }
  .search-result-list > li {
    background-color: #fcfcfc;
    border: 1px solid #d8bed5;
    padding: 18px 3% 20px;
    margin-bottom: 40px;
  }
  .search-result-detail {
    min-height: 45px;
    padding: 0 30% 20px 3%;
    position: relative;
  }
  .search-result-detail__name {
    padding-bottom: 10px;
  }
  .search-result-detail__name a {
    font-size: 16px;
  }
  .search-result-detail__txt {}
  .search-result-detail-total {
    width: 85px;
    height: 85px;
    padding-top: 14px;
    font-size: 11px;
    top: -36px;
    right: 5px;
  }
  .search-result-detail-total .total {
    padding: 1px 0px 1px;
    font-size: 34px;
  }

  .search-result-detail-total i {
    display: inline;
    margin: 0 1px;
    font-size: 9px;
  }

  .search-result-list-txt {
    padding: 25px 4.5% 13px;
  }
  .search-result-link {
    width: 80%;
  }
  .search-result-link a {
    width: 46%;
    min-height: 24px;
    border-radius: 5px;
    margin: 0 2% 15px;
    font-size: 13px;
  }
  .search-result-link a:nth-of-type(2n+1) {
    box-shadow: 0px 2px 0px 0px #cb7fd8;
  }
  .search-result-link a:nth-of-type(2n) {
    box-shadow: 0px 2px 0px 0px #52c295;
  }

  .search-result-list .dg-container {
    width: 70%;
    min-height: 130px;
    margin: 0 auto;
  }
  .search-result-list .dg-wrapper,
  .search-result-list .dg-wrapper li{
    width: 100%;
    height: auto;
    min-height: 130px;
  }
  .search-result-list .dg-wrapper li.dg-right,
  .search-result-list .dg-wrapper li.dg-outright {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
  }
  .search-result-list .dg-wrapper li.dg-left,
  .search-result-list .dg-wrapper li.dg-outleft{
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
  }
  .search-result-list .dg-container nav {
    height: 100%;
  }
  .search-result-list .dg-container nav span {
    top: 50%;
    margin-top: -25px;
  }
  .search-result-list .dg-container nav span.dg-prev {
    left: -32%;
  }
  .search-result-list .dg-container nav span.dg-next{
    right: -32%;
  }
}
/*#################################################################################

フッター

################################################################################# */
#pagetop {
  display: none;
  width: 90px;
  height: 106px;
  position: fixed;
  bottom: 0;
  left: 50%;
  margin-left: 410px;
  z-index: 50;
}
#pagetop a {
  display: block;
  width: 100%;
  height: 100%;
  background-image: url("../img/common/btn-top.png");
  background-size: 100% auto;
}
#footer-wrap {
  box-sizing: border-box;
  width: 1000px;
  height: 105px;
  padding-top: 40px;
  background-color: #fcfcfc;
  margin: 0 auto;
}
.copyright {
  font-size: 10px;
  line-height: 1;
  text-align: center;
  color: #6e6e6e;
}

/*SP ---------------------------------------------------------------------------- */
@media only screen and (max-width: 768px) {
  #pagetop {
    width: 45px;
    height: 53px;
    position: fixed;
    bottom: 0;
    right: 3%;
    left: auto;
    margin-left: 0px;
  }
  #footer-wrap {
    width: 100%;
    height: 53px;
    padding-top: 28px;
    background-color: transparent;
  }
  .copyright {
    font-size: 12px;
  }
}


/*#################################################################################

script

################################################################################# */

/*---------------------------------------------------------------------------------
3Dギャラリー
--------------------------------------------------------------------------------- */
.dg-container{
	width: 100%;
  min-height: 400px;
	position: relative;
}
.dg-wrapper{
	width: 600px;
  height: 400px;
	margin: 0 auto;
	position: relative;
	-webkit-transform-style: preserve-3d;
	-moz-transform-style: preserve-3d;
	-o-transform-style: preserve-3d;
	-ms-transform-style: preserve-3d;
	transform-style: preserve-3d;
	-webkit-perspective: 1000px;
	-moz-perspective: 1000px;
	-o-perspective: 1000px;
	-ms-perspective: 1000px;
	perspective: 1000px;
}
.dg-wrapper li{
	width: 600px;
	display: block;
	position: absolute;
  right: 0;
	left: 0;
	top: 0;
}
.dg-wrapper li.dg-transition{
	-webkit-transition: all 0.5s ease-in-out;
	-moz-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	-ms-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
  z-index: 9;
}
.dg-wrapper li img{
	display: block;
}
.dg-wrapper li div{
  padding-top: 18px;
	width: 100%;
	font-size: 0.75em;
  
}
.dg-wrapper li.dg-center {
  z-index: 10;
}
.dg-wrapper li.dg-center div{
	display: block;
  font-size: 1em;
}
.dg-wrapper li.dg-right,
.dg-wrapper li.dg-outright {
  width: 448px;
  position: absolute;
  top: 50px;
  left: 302px;
  z-index: 8;
}
.dg-wrapper li.dg-outright {
  z-index: 2;
}
.dg-wrapper li.dg-left,
.dg-wrapper li.dg-outleft{
  width: 448px;
  position: absolute;
  top: 50px;
  left: -150px;
}
.dg-wrapper li.dg-outleft {
  z-index: 2;
}
.dg-wrapper li.dg-transition.dg-right
.dg-wrapper li.dg-transition.dg-left {
  z-index: 9;
}
.dg-wrapper li.dg-transition.dg-outright
.dg-wrapper li.dg-transition.dg-outleft {
  z-index: 3;
}


.dg-container nav{
}
.dg-container nav span {
  display: block;
  width: 60px;
  height: 60px;
  opacity: 0.7;
  border-radius: 10px;
  position: absolute;
  top: 170px;
  cursor: pointer;
  z-index: 12;
}
.dg-container nav span::before {
  width: 22px;
  height: 22px;
  position: absolute;
  top: 18px;
  content:"";
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.dg-container nav span:hover{
	opacity: 1;
}
.dg-container nav span.dg-prev {
  left: -30px;
}
.dg-container nav span.dg-prev::before {
  border-bottom: 2px solid #fff;
  border-left: 2px solid #fff;
  right: 12px;
}
.dg-container nav span.dg-next{
	right: -30px;
}
.dg-container nav span.dg-next::before {
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  left: 12px;
}

/*SP ---------------------------------------------------------------------------- */
@media only screen and (max-width: 768px) {
  .dg-container{
    width: 100%;
    min-height: 130px;
    position: relative;
  }
  .dg-wrapper{
    width: 90%;
    height: auto;
  }
  .dg-wrapper li{
    width: 100%;
    height: auto;
  }
  .dg-wrapper li div{
    padding-top: 24px;
    font-size: 13px;
  }
  
  .dg-wrapper li.dg-right,
  .dg-wrapper li.dg-outright {
    width: 90%;
    position: absolute;
    top: 5%;
    left: 65%;
    z-index: 8;
  }
  .dg-wrapper li.dg-left,
  .dg-wrapper li.dg-outleft{
    width: 90%;
    position: absolute;
    top: 5%;
    left: -45%;
  }
  
  .dg-container nav{
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
  }
  .dg-container nav span {
    width: 50px;
    height: 50px;
    border-radius: 5px;
    top: calc(100vw *0.25);
  }
  .dg-container nav span::before {
    width: 18px;
    height: 18px;
    top: 14px;
  }
  .dg-container nav span.dg-prev {
    left: -10px;
  }
  .dg-container nav span.dg-prev::before {
    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
    right: 12px;
  }
  .dg-container nav span.dg-next{
    right: -10px;
  }
  .dg-container nav span.dg-next::before {
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    left: 12px;
  }
}
