@charset "UTF-8";
/* ==========================================================================//
//
//　かんたん検索
//
// ========================================================================== */
/** -------------------------------- **
	かんたん検索
*** ----------------------------------------------------------------- ***/
#easySearch {
  position: fixed;
  /*top: 238px;*/
  top: calc((100% - 472px) / 2);
  right: 0;
  z-index: 98;
  display: flex;
  pointer-events: none; }
  #easySearch.open {
    transition: right .5s; }
  @media only screen and (max-width: 750px) {
    #easySearch {
      top: auto;
      bottom: 0;
      right: 0;
      width: 100%; }
      #easySearch.open {
        z-index: 100;
        height: calc(100% - 65px); } }

/** -------------------------------- **
	かんたん検索ボタン
*** ----------------------------------------------------------------- ***/
#btnEasySearch {
  position: relative;
  width: 130px;
  height: 130px;
  border-radius: 16px 0 0 16px;
  background-color: #D92E53;
  cursor: pointer;
  transition: opacity .5s;
  pointer-events: auto; }
  #btnEasySearch::before {
    content: '';
    position: absolute;
    top: calc((100% - 105px) / 2);
    left: calc((100% - 114px) / 2);
    width: 114px;
    height: 105px;
    background: url(../images/common/easySearch/icon_easy-search.svg) no-repeat; }
  #btnEasySearch:hover {
    opacity: 0.7; }
  #btnEasySearch:focus {
    border: 5px double #fff;
    outline: none; }
    #btnEasySearch:focus:not(.focus-visible) {
      border: none; }
  @media only screen and (max-width: 750px) {
    #btnEasySearch {
      width: 100%;
      height: 50px;
      border-radius: 0; }
      #btnEasySearch::before {
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        width: 100%;
        height: 31px;
        margin: auto;
        background: url(../images/common/easySearch/icon_easy-search_sp.svg) no-repeat center center/contain; }
      #btnEasySearch:focus::before {
        top: 5px; }
      #btnEasySearch:focus:not(.focus-visible)::before {
        top: 10px; } }

/** -------------------------------- **
	body
*** ----------------------------------------------------------------- ***/
.easySearchBox {
  display: none;
  width: 0;
  border: 1px solid #D92E53;
  border-right: none;
  transition: width 500ms;
  pointer-events: auto; }
  .easySearchBox.open {
    display: block;
    width: 440px; }
  @media only screen and (max-width: 750px) {
    .easySearchBox {
      position: fixed;
      bottom: -100%;
      left: 0;
      width: 100%;
      height: calc(100% - 65px);
      border-right: 1px solid #D92E53; }
      .easySearchBox.open {
        bottom: 0;
        width: 100%; } }

/** -------------------------------- **
	メニュー
*** ----------------------------------------------------------------- ***/
.easySearchMenuBox {
  overflow-y: auto;
  display: none;
  height: 420px;
  background: #FDF5F7; }
  .easySearchMenuBox.open {
    display: block; }
  .easySearchMenuBox.easySearchScrollBar .mCSB_scrollTools {
    margin: 5px 0; }
  @media only screen and (max-width: 750px) {
    .easySearchMenuBox {
      height: calc(100% - 50px); } }

.easySearchMenuWrap {
  padding: 25px 15px 20px; }
  @media only screen and (max-width: 750px) {
    .easySearchMenuWrap {
      padding: 25px 10px 20px; } }

.easySearchMenuList {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 15px 10px; }
  .easySearchMenuList > li {
    width: 100%;
    text-align: center; }
    .easySearchMenuList > li:hover img {
      opacity: .7; }
    .easySearchMenuList > li img {
      max-width: 74px;
      border-radius: 50%;
      box-shadow: 0 0 15px #D92E53; }
    .easySearchMenuList > li p {
      margin-top: 7px;
      color: #000;
      font-size: 1.2rem;
      font-weight: 400;
      line-height: 1.5;
      text-align: center;
      transform: rotate(0.03deg); }
  @media only screen and (max-width: 750px) {
    .easySearchMenuList > li img {
      max-width: 70%;
      box-shadow: 0 0 10px #D92E53; }
    .easySearchMenuList > li p {
      margin-top: 10px;
      font-size: 1rem; } }

/** -------------------------------- **
	カテゴリ
*** ----------------------------------------------------------------- ***/
.btnEasySearchCategory {
  display: block; }

.easySearchCategoryBox {
  position: relative;
  display: none;
  height: 420px;
  background: #FFFDF8; }
  .easySearchCategoryBox.open {
    display: block; }
  @media only screen and (max-width: 750px) {
    .easySearchCategoryBox {
      height: calc(100% - 50px); } }

.easySearchCategoryWrap {
  display: none;
  height: 100%;
  padding: 30px 0 20px; }
  .easySearchCategoryWrap.open {
    display: block; }
  @media only screen and (max-width: 750px) {
    .easySearchCategoryWrap {
      padding: 20px 0; } }

.easySearchCategoryHead {
  display: flex;
  align-items: center;
  padding: 0 30px; }
  .easySearchCategoryHead img {
    max-width: 74px;
    margin-right: 20px;
    border-radius: 50%;
    box-shadow: 0 0 15px #D92E53; }
  .easySearchCategoryHead .easySearchCategoryTitle {
    color: #D92E53;
    font-size: 2rem;
    font-weight: 600;
    line-height: 1.45;
    transform: rotate(0.03deg); }
  @media only screen and (max-width: 750px) {
    .easySearchCategoryHead {
      padding: 0 15px; }
      .easySearchCategoryHead img {
        max-width: 50px;
        margin-right: 10px;
        box-shadow: 0 0 10px #D92E53; }
      .easySearchCategoryHead .easySearchCategoryTitle {
        font-size: 1.8rem; } }

.easySearchCategoryBody {
  height: 285px;
  margin-top: 20px;
  height: calc(100% - 90px); }
  @media only screen and (max-width: 750px) {
    .easySearchCategoryBody {
      height: calc(100% - 70px); } }

.easySearchCategoryList {
  padding: 0 30px; }
  .easySearchCategoryList > li + li {
    margin-top: 20px; }
  @media only screen and (max-width: 750px) {
    .easySearchCategoryList {
      padding: 0 15px; } }

/** -------------------------------- **
	アイテム
*** ----------------------------------------------------------------- ***/
.easySearchItemTitle a,
.easySearchItemTitle span {
  position: relative;
  display: block;
  padding: 13px 38px 13px 15px;
  font-size: 1.7rem;
  color: #000;
  font-weight: 400;
  line-height: 1.3;
  border: 1px solid #D92E53;
  border-radius: 15px;
  background-color: #fff;
  transition: background-color .5s;
  transform: rotate(0.03deg); }
.easySearchItemTitle a::before {
  content: '';
  position: absolute;
  top: calc((100% - 15px) / 2);
  right: 15px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 7.5px 0 7.5px 8px;
  border-color: transparent transparent transparent #D92E53; }
.easySearchItemTitle a:hover, .easySearchItemTitle a:focus {
  background-color: #FDF5F7; }
.easySearchItemTitle a:focus {
  padding: 9px 34px 9px 11px;
  border: 5px double #D92E53;
  outline: none; }
  .easySearchItemTitle a:focus::before {
    right: 11px; }
  .easySearchItemTitle a:focus:not(.focus-visible) {
    padding: 13px 38px 13px 15px;
    border: 1px solid #D92E53; }
    .easySearchItemTitle a:focus:not(.focus-visible)::before {
      right: 15px; }
@media only screen and (max-width: 750px) {
  .easySearchItemTitle a,
  .easySearchItemTitle span {
    padding: 9px 27px 9px 10px;
    font-size: 1.4rem;
    border-radius: 10px; }
  .easySearchItemTitle a::before {
    top: calc((100% - 12px) / 2);
    right: 10px;
    border-width: 6px 0 6px 7px; }
  .easySearchItemTitle a:focus {
    padding: 5px 23px 5px 6px; }
    .easySearchItemTitle a:focus::before {
      right: 6px; }
    .easySearchItemTitle a:focus:not(.focus-visible) {
      padding: 9px 27px 9px 10px; }
      .easySearchItemTitle a:focus:not(.focus-visible)::before {
        right: 10px; } }

.easySearchItemBox {
  margin-top: 15px;
  padding: 0 15px; }
  .easySearchItemBox li {
    transform: rotate(0.03deg); }
    .easySearchItemBox li:nth-child(n + 2) {
      margin-top: 10px; }
    .easySearchItemBox li a {
      display: inline-block;
      padding-left: .8em;
      color: #000;
      font-size: 1.6rem;
      text-indent: -.8em;
      line-height: 1.3;
      transition: color .5s;
      transform: rotate(0.03deg); }
      .easySearchItemBox li a::before {
        content: '';
        display: inline-block;
        width: 0;
        height: 0;
        margin: 0 .5em -.05em 0;
        border-style: solid;
        border-width: 6.5px 0 6.5px 6px;
        border-color: transparent transparent transparent #D92E53;
        transition: all .5s; }
      .easySearchItemBox li a:hover, .easySearchItemBox li a:focus {
        color: #D92E53; }
      .easySearchItemBox li a:hover {
        text-decoration: underline; }
  .easySearchItemBox.sub {
    margin-left: 1em; }
  @media only screen and (max-width: 750px) {
    .easySearchItemBox li a {
      font-size: 1.4rem; }
      .easySearchItemBox li a::before {
        border-width: 5.5px 0 5.5px 5px; } }

.linkEasySearchBlank::after {
  content: '';
  display: inline-block;
  width: 1em;
  height: 1em;
  margin: 0 0 -.1em .5em;
  background: url(../images/common/icon_blank.svg) no-repeat center center/contain; }

/** -------------------------------- **
	フッター
*** ----------------------------------------------------------------- ***/
.easySearchFooter {
  border-top: 1px solid #D92E53;
  background-color: #fff; }
  .easySearchFooter button {
    width: 100%;
    color: #000;
    font-size: 1.6rem;
    font-weight: 500;
    height: 49px;
    cursor: pointer;
    transition: opacity .5s, background-color .5s;
    transform: rotate(0.03deg); }
    .easySearchFooter button:hover, .easySearchFooter button:focus {
      color: #fff !important;
      background-color: #D92E53 !important; }
    .easySearchFooter button:focus {
      border: 5px double #fff;
      outline: none; }
      .easySearchFooter button:focus:not(.focus-visible) {
        border: none; }
  .easySearchFooter #btnEasySearchClose {
    background-color: #fff; }
  .easySearchFooter #btnEasySearchBack {
    display: none;
    color: #fff;
    background-color: #D92E53; }
  .easySearchFooter.col2 {
    display: flex; }
    .easySearchFooter.col2 button {
      width: 50%; }
    .easySearchFooter.col2 #btnEasySearchBack {
      display: block;
      border-right: 1px solid #fff; }
      .easySearchFooter.col2 #btnEasySearchBack:hover, .easySearchFooter.col2 #btnEasySearchBack:focus {
        opacity: 0.7; }

/** -------------------------------- **
	scrollBar
*** ----------------------------------------------------------------- ***/
.easySearchScrollBar .mCustomScrollBox {
  padding: 0; }
.easySearchScrollBar .mCSB_container {
  margin-right: 0; }
.easySearchScrollBar .mCSB_scrollTools {
  right: 0;
  width: 15px;
  margin: 0; }
  .easySearchScrollBar .mCSB_scrollTools .mCSB_draggerRail {
    opacity: 0; }
  .easySearchScrollBar .mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
    width: 5px;
    border-radius: 0 !important;
    background-color: #D92E53 !important; }
