@media all and (min-width: 768px), print {
  .l-container {
    /* padding-bottom: calc(80 / var(--font-size) * 1rem); */
    margin-top: calc(65 / var(--font-size) * 1rem);
  }
}

/* --------------------------------------------------------------------------
  NEWSLIST
-------------------------------------------------------------------------- */
@media all and (min-width: 768px), print {
  .c-news-list__item__category.--jigyo01::before {
    content: "キャンペーン";
    color: var(--main-color-jigyo01);
  }
}
@media all and (max-width: 767px), print {
  .c-news-list__item__category.--jigyo01::before {
    content: "キャンペーン";
    color: var(--main-color-jigyo01);
  }
}

/* --------------------------------------------------------------------------
  FAQ Form
-------------------------------------------------------------------------- */

input[type="text"]{
  border: calc(2 / var(--font-size) * 1rem) solid var(--color-white);
  border-radius:0;
  padding: calc(11 / var(--font-size) * 1rem) calc(12 / var(--font-size) * 1rem);
}


/*==========================================================================
  keyword-search
========================================================================== */

@media all and (min-width: 768px), print {
  .keyword-search{
    padding:calc(24 / var(--font-size) * 1rem) calc(90 / var(--font-size) * 1rem);
    border-radius: calc(15 / var(--font-size) * 1rem);
  }

  .keyword-search.--type-02{
    padding:calc(40 / var(--font-size) * 1rem) calc(24 / var(--font-size) * 1rem) 0 calc(24 / var(--font-size) * 1rem);
    border-radius:calc(16 / var(--font-size) * 1rem) calc(16 / var(--font-size) * 1rem) 0 0;
    margin-bottom: 0;
  }
  .keyword-search.--type-02 .keyword-search__inner{
    padding-bottom: calc(32 / var(--font-size) * 1rem);
    border-bottom:calc(1 / var(--font-size) * 1rem) solid #ccc;
  }

  .keyword-search__object__parts{
    overflow:hidden;
    display:flex;
    height:calc(48 / var(--font-size) * 1rem);
    position: relative;
  }

  .keyword-search__object__parts input[type="text"]{
    font-size:calc(var(--text-size-s) / var(--font-size) * 1rem);
    border:calc(1 / var(--font-size) * 1rem) solid var(--main-accent-color);
    border-radius:calc(5 / var(--font-size) * 1rem);
    width:100%;
    height:calc(48 / var(--font-size) * 1rem);
    padding-right:calc(144 / var(--font-size) * 1rem + 15 / var(--font-size) * 1rem);
  }
  .keyword-search__object__parts input[type="text"]:focus{
    outline: none;
  }
  ::placeholder {
    color: #dadada;
  }

  .keyword-search__object__parts button{
    border-radius:0 calc(5 / var(--font-size) * 1rem) calc(5 / var(--font-size) * 1rem) 0;
    background-color: var(--main-accent-color);
    color:var(--color-white);
    font-size:calc(var(--text-size-xs) / var(--font-size) * 1rem);
    font-weight: 700;
    height:100%;
    position: absolute;
    top:0;
    right:0;
    cursor:pointer;
  }

  .keyword-search__inner{
    display: flex;
    align-items: center;
  }
  .keyword-search__inner.--keyword{
    padding-top: calc(24 / var(--font-size) * 1rem);
    border-top:calc(1 / var(--font-size) * 1rem) solid var(--main-accent-color);
    margin-top: calc(24 / var(--font-size) * 1rem);
  }
  .keyword-search__title{
    flex-shrink: 0;
    width:calc(264 / var(--font-size) * 1rem);
    display:flex;
    align-items:center;
  }
  .--keyword .keyword-search__title{
    width:auto;
    margin-left: calc(24 / var(--font-size) * 1rem);
  }
  .keyword-search__title__ico{
    display:flex;
    align-items:center;
    justify-content:center;
    width: calc(62 / var(--font-size) * 1rem);
    height: calc(62 / var(--font-size) * 1rem);
    border-radius: calc(62 / var(--font-size) * 1rem);
    background-color: var(--color-white);
  }
  .keyword-search__title__ico svg{
    width: calc(40 / var(--font-size) * 1rem);
    height: calc(40 / var(--font-size) * 1rem);
    fill: var(--main-accent-color);
  }
  .keyword-search__title__label{
    display: inline-block;
    vertical-align: top;
    margin-left: calc(17 / var(--font-size) * 1rem);
    font-size:calc(var(--title-size-xs) / var(--font-size) * 1rem);
    font-feature-settings: "palt";
  }
  .keyword-search__title__label:first-child{
    margin-left: 0;
  }
  .--keyword .keyword-search__title__label{
    font-size:calc(14 / var(--font-size) * 1rem);
  }
  .keyword-search__object{
    /*width:calc(432 / var(--font-size) * 1rem + 144 / var(--font-size) * 1rem);*/
    width:calc(100% - 264 / var(--font-size) * 1rem - 24 / var(--font-size) * 1rem - 144 / var(--font-size) * 1rem);
    margin-left: calc(24 / var(--font-size) * 1rem);
  }
  .keyword-search__object__parts button{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink: 0;
    width:calc(144 / var(--font-size) * 1rem);
    transition:0.3s ease;
  }
  .keyword-search__object__parts button svg{
    width:calc(17 / var(--font-size) * 1rem);
    height:calc(17 / var(--font-size) * 1rem);
    fill:var(--color-white);
    margin-left:calc(6 / var(--font-size) * 1rem);
  }
  .keyword-search__object__parts button:hover{
    /* background-color: #fff;
    border-color:var(--bg-main-color);
    color:var(--bg-main-color); */
    opacity: 0.7;
  }

  .c-button-list__item .c-button,
  .c-button-list__item .c-button a,
  .c-button-list__item .c-button_inner,
  .c-button-list__item .c-button_body {
    height: 100%;
  }
}

@media all and (max-width: 767px), print {
  .keyword-search{
    padding:calc(16 / var(--font-size) * 1rem) calc(16 / var(--font-size) * 1rem);
    border-radius: calc(10 / var(--font-size) * 1rem);
  }

  .keyword-search.--type-02{
    padding:calc(40 / var(--font-size) * 1rem) calc(24 / var(--font-size) * 1rem) 0 calc(24 / var(--font-size) * 1rem);
    border-radius:calc(16 / var(--font-size) * 1rem) calc(16 / var(--font-size) * 1rem) 0 0;
    margin-bottom: 0;
  }
  .keyword-search.--type-02 .keyword-search__inner{
    padding-bottom: calc(32 / var(--font-size) * 1rem);
    border-bottom:calc(1 / var(--font-size) * 1rem) solid #ccc;
  }

  .keyword-search__object__parts{
    overflow:hidden;
    display:flex;
    height:calc(48 / var(--font-size) * 1rem);
    position: relative;
  }

  .keyword-search__object__parts input[type="text"]{
    font-size:calc(var(--text-size-s) / var(--font-size) * 1rem);
    border:calc(1 / var(--font-size) * 1rem) solid var(--main-accent-color);
    border-radius:calc(5 / var(--font-size) * 1rem);
    width:100%;
    height:calc(48 / var(--font-size) * 1rem);
    padding-right:calc(80 / var(--font-size) * 1rem + 15 / var(--font-size) * 1rem);
  }
  .keyword-search__object__parts input[type="text"]:focus{
    outline: none;
  }
  ::placeholder {
    color: #dadada;
  }

  .keyword-search__object__parts button{
    border-radius:0 calc(5 / var(--font-size) * 1rem) calc(5 / var(--font-size) * 1rem) 0;
    background-color: var(--main-accent-color);
    color:var(--color-white);
    font-size:calc(var(--text-size-xs) / var(--font-size) * 1rem);
    font-weight: 700;
    width:calc(56 / var(--font-size) * 1rem);
    height:100%;
    position: absolute;
    top:0;
    right:0;
    cursor:pointer;
  }

  .keyword-search__inner{
    display: flex;
    flex-direction: column;
  }
  .keyword-search__inner.--keyword{
    padding-top: calc(24 / var(--font-size) * 1rem);
    border-top:calc(1 / var(--font-size) * 1rem) solid var(--main-accent-color);
    margin-top: calc(24 / var(--font-size) * 1rem);
  }
  .keyword-search__title{
    display:flex;
    align-items:center;
  }
  .keyword-search__title__ico{
    display:flex;
    align-items:center;
    justify-content:center;
    width: calc(40 / var(--font-size) * 1rem);
    height: calc(40 / var(--font-size) * 1rem);
    border-radius: calc(40 / var(--font-size) * 1rem);
    background-color: var(--color-white);
  }
  .keyword-search__title__ico svg{
    width: calc(40 * 40 / 62 / var(--font-size) * 1rem);
    height: calc(40 * 40 / 62 / var(--font-size) * 1rem);
    fill: var(--main-accent-color);
  }
  .keyword-search__title__label{
    display: inline-block;
    vertical-align: top;
    margin-left: calc(9 / var(--font-size) * 1rem);
    font-size:calc(var(--title-size-xs) / var(--font-size) * 1rem);
    font-feature-settings: "palt";
  }
  .keyword-search__title__label:first-child{
    margin-left: 0;
  }
  .keyword-search__object{
    width: 100%;
    margin-top: calc(9 / var(--font-size) * 1rem);
  }
  .keyword-search__object__parts button{
    display:flex;
    align-items:center;
    justify-content:center;
    width:calc(80 / var(--font-size) * 1rem);
    transition:0.3s ease;
  }
  .keyword-search__object__parts button svg{
    width:calc(17 / var(--font-size) * 1rem);
    height:calc(17 / var(--font-size) * 1rem);
    margin-left:calc(5 / var(--font-size) * 1rem);
    fill:var(--color-white);
  }
  .keyword-search__object__parts button:hover{
    /* background-color: #fff;
    border-color:var(--bg-main-color);
    color:var(--bg-main-color); */
    opacity: 0.7;
  }

  .c-button-list__item .c-button,
  .c-button-list__item .c-button a,
  .c-button-list__item .c-button_inner,
  .c-button-list__item .c-button_body {
    height: 100%;
  }
}

/*==========================================================================
  form-date
========================================================================== */

@media all and (min-width: 768px), print {
  * + .form-date{
    margin-top: calc(16 / var(--font-size) * 1rem);
  }
  .form-date{
    padding: calc(24 / var(--font-size) * 1rem) calc(90 / var(--font-size) * 1rem);
    border-radius: calc(15 / var(--font-size) * 1rem);
  }
  .form-date.type-02{
    padding-top: calc(16 / var(--font-size) * 1rem);
    padding-bottom: calc(16 / var(--font-size) * 1rem);
    border-radius:0 0 calc(16 / var(--font-size) * 1rem) calc(16 / var(--font-size) * 1rem);
    margin-bottom: calc(48 / var(--font-size) * 1rem);
  }
  .form-date.type-02.is-accordion-active{
    padding-top: calc(32 / var(--font-size) * 1rem);
  }
  .form-date.type-02.is-accordion-active .js-accordion-header{
    margin-top: calc(16 / var(--font-size) * 1rem);
  }
  .form-date.type-02 .form-date__inner{
    padding-bottom: calc(32 / var(--font-size) * 1rem);
    border-bottom: calc(1 / var(--font-size) * 1rem) solid #ccc;
  }

  .form-date__object__parts{
    display: flex;
    align-items: center;
    gap:calc(16 / var(--font-size) * 1rem);
  }
  .form-date__object__parts input[type="radio"] + label:before,
  .form-date__object__parts input[type="checkbox"] + label:before{
    border-color:var(--main-accent-color);
  }
  .form-date__object__parts input[type="radio"] + label:after{
    background-color:var(--main-accent-color);
  }
  .form-date__object__parts input[type="checkbox"] + label:after{
    border-color:var(--main-accent-color);
  }

  .form-date__object__box{
    display:flex;
    align-items:center;
    flex-grow: 1;
    position: relative;
  }

  .form-date__object__input-clear{
    background-color: #dbdbdb;
    /* border: 1px solid #fff; */
    border-radius: 100%;
    display: block;
    width: calc(24 / var(--font-size) * 1rem);
    height: calc(24 / var(--font-size) * 1rem);
    position: absolute;
    top: 0;
    bottom: 0;
    right: calc(44 / var(--font-size) * 1rem);
    margin: auto 0;
    transition:0.3s ease;
    cursor:pointer;
    display: none;
  }

  .form-date__object__input-clear.is-active{
    display: block;
  }

  .form-date__object__input-clear:before{
    content:"";
    background-color: #fff;
    display: block;
    width:calc(10.4 / var(--font-size) * 1rem);
    height:calc(1 / var(--font-size) * 1rem);
    position: absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
    margin:auto;
    transform:rotate(45deg);
  }
  .form-date__object__input-clear:after{
    content:"";
    background-color: #fff;
    display: block;
    width:calc(10.4 / var(--font-size) * 1rem);
    height:calc(1 / var(--font-size) * 1rem);
    position: absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
    margin:auto;
    transform:rotate(-45deg);
  }
  .form-date__object__input-clear:hover{
    background-color: #ccc;
  }

  .form-date__object__input-clear:hover:before,
  .form-date__object__input-clear:hover:after{
    background-color: #fff;
  }

  .form-date__object__unit{
    padding:0 calc(8 / var(--font-size) * 1rem);
  }

  .form-date__object__parts input[type="text"]{
    font-size:calc(var(--text-size-s) / var(--font-size) * 1rem);
    height:calc(40 / var(--font-size) * 1rem);
  }
  .form-date__object__parts input[type="text"]:focus{
    outline: none;
  }

  .form-date-button{
    margin-top: calc(48 / var(--font-size) * 1rem);
    margin-bottom: calc(80 / var(--font-size) * 1rem);
  }

  .form-date__calender-button{
    display: block;
    width:calc(17 / var(--font-size) * 1rem);
    height:calc(19 / var(--font-size) * 1rem);
    position: absolute;
    top:0;
    right:calc(18 / var(--font-size) * 1rem);
    bottom:0;
    margin:auto 0;
    pointer-events: none;
  }
  .form-date__calender-button svg{
    fill:var(--main-accent-color);
    width:calc(17 / var(--font-size) * 1rem);
    height:calc(19 / var(--font-size) * 1rem);
    vertical-align: top;
  }
  .form-date__inner{
    display: flex;
    align-items: center;
  }
  .form-date__title{
    flex-shrink: 0;
    width:calc(264 / var(--font-size) * 1rem);
    display:flex;
    align-items:center;
  }
  .form-date__title__ico{
    display:flex;
    align-items:center;
    justify-content:center;
    width: calc(62 / var(--font-size) * 1rem);
    height: calc(62 / var(--font-size) * 1rem);
    border-radius: calc(62 / var(--font-size) * 1rem);
    background-color: var(--color-white);
  }
  .form-date__title__ico svg{
    width: calc(34 / var(--font-size) * 1rem);
    height: calc(34 / var(--font-size) * 1rem);
    fill: var(--main-accent-color);
  }
  .form-date__title__label{
    display: inline-block;
    vertical-align: top;
    margin-left: calc(17 / var(--font-size) * 1rem);
    font-size:calc(var(--title-size-xs) / var(--font-size) * 1rem);
    font-feature-settings: "palt";
  }
  .keyword-search__title__label:first-child{
    margin-left: 0;
  }
  .form-date__object{
    width:calc(100% - 264 / var(--font-size) * 1rem - 24 / var(--font-size) * 1rem - 144 / var(--font-size) * 1rem);
    margin-left: calc(24 / var(--font-size) * 1rem);
  }
  #form-date__object__input,
  #form-date__object__input-02{
    flex-grow: 1;
  }
  #form-date__object__input:focus-visible,
  #form-date__object__input-02:focus-visible{
  }
}

@media all and (max-width: 767px), print {
  * + .form-date{
    margin-top: calc(16 / var(--font-size) * 1rem);
  }
  .form-date{
    padding: calc(16 / var(--font-size) * 1rem);
    border-radius: calc(10 / var(--font-size) * 1rem);
  }
  .form-date.type-02{
    padding-top: calc(16 / var(--font-size) * 1rem);
    padding-bottom: calc(16 / var(--font-size) * 1rem);
    border-radius:0 0 calc(16 / var(--font-size) * 1rem) calc(16 / var(--font-size) * 1rem);
    margin-bottom: calc(48 / var(--font-size) * 1rem);
  }
  .form-date.type-02.is-accordion-active{
    padding-top: calc(32 / var(--font-size) * 1rem);
  }
  .form-date.type-02.is-accordion-active .js-accordion-header{
    margin-top: calc(16 / var(--font-size) * 1rem);
  }
  .form-date.type-02 .form-date__inner{
    padding-bottom: calc(32 / var(--font-size) * 1rem);
    border-bottom: calc(1 / var(--font-size) * 1rem) solid #ccc;
  }

  .form-date__object__parts{
    display: flex;
    align-items: center;
  }
  .form-date__object__parts input[type="radio"] + label:before,
  .form-date__object__parts input[type="checkbox"] + label:before{
    border-color:var(--main-accent-color);
  }
  .form-date__object__parts input[type="radio"] + label:after{
    background-color:var(--main-accent-color);
  }
  .form-date__object__parts input[type="checkbox"] + label:after{
    border-color:var(--main-accent-color);
  }
  .form-date__object__parts.is-date{
    flex-wrap:wrap;
    gap: calc(16 / var(--font-size) * 1rem);
  }

  .form-date__object__box{
    display:flex;
    align-items:center;
    position: relative;
    width:calc(280 / var(--font-size) * 1rem);
  }

  .form-date__object__input-clear{
    background-color: #dbdbdb;
    /* border: 1px solid #fff; */
    border-radius: 100%;
    display: block;
    width: calc(24 / var(--font-size) * 1rem);
    height: calc(24 / var(--font-size) * 1rem);
    position: absolute;
    top: 0;
    bottom: 0;
    right:calc(18 / var(--font-size) * 1rem - 3.5 / var(--font-size) * 1rem);
    margin: auto 0;
    transition:0.3s ease;
    cursor:pointer;
    display: none;
  }

  .form-date__object__input-clear.is-active{
    display: block;
  }

  .form-date__object__input-clear:before{
    content:"";
    background-color: #fff;
    display: block;
    width:calc(10.4 / var(--font-size) * 1rem);
    height:calc(1 / var(--font-size) * 1rem);
    position: absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
    margin:auto;
    transform:rotate(45deg);
  }
  .form-date__object__input-clear:after{
    content:"";
    background-color: #fff;
    display: block;
    width:calc(10.4 / var(--font-size) * 1rem);
    height:calc(1 / var(--font-size) * 1rem);
    position: absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
    margin:auto;
    transform:rotate(-45deg);
  }
  .form-date__object__input-clear:hover{
    background-color: #ccc;
  }

  .form-date__object__input-clear:hover:before,
  .form-date__object__input-clear:hover:after{
    background-color: #fff;
  }

  .form-date__object__unit{
    padding:0 calc(8 / var(--font-size) * 1rem);
  }

  .form-date__object__parts input[type="text"]{
    font-size:calc(var(--text-size-s) / var(--font-size) * 1rem);
    height:calc(40 / var(--font-size) * 1rem);
  }
  .form-date__object__parts input[type="text"]:focus{
    outline: none;
  }

  .form-date-button{
    margin: 0 auto;
    margin-top: calc(24 / var(--font-size) * 1rem);
    margin-bottom: calc(48 / var(--font-size) * 1rem);
    width: calc(240 / var(--font-size) * 1rem);
  }

  .form-date__calender-button{
    display: block;
    width:calc(17 / var(--font-size) * 1rem);
    height:calc(19 / var(--font-size) * 1rem);
    position: absolute;
    top:0;
    right:calc(18 / var(--font-size) * 1rem);
    bottom:0;
    margin:auto 0;
    pointer-events: none;
  }
  .form-date__calender-button svg{
    fill:var(--main-accent-color);
    width:calc(17 / var(--font-size) * 1rem);
    height:calc(19 / var(--font-size) * 1rem);
    vertical-align: top;
  }
  .form-date__inner{
    display: flex;
    flex-direction: column;
  }
  .form-date__title{
    display:flex;
    align-items:center;
  }
  .form-date__title__ico{
    display:flex;
    align-items:center;
    justify-content:center;
    width: calc(40 / var(--font-size) * 1rem);
    height: calc(40 / var(--font-size) * 1rem);
    border-radius: calc(40 / var(--font-size) * 1rem);
    background-color: var(--color-white);
  }
  .form-date__title__ico svg{
    width: calc(34 * 40 / 62 / var(--font-size) * 1rem);
    height: calc(34 * 40 / 62 / var(--font-size) * 1rem);
    fill: var(--main-accent-color);
  }
  .form-date__title__label{
    display: inline-block;
    vertical-align: top;
    margin-left: calc(9 / var(--font-size) * 1rem);
    font-size:calc(var(--title-size-xs) / var(--font-size) * 1rem);
    font-feature-settings: "palt";
  }
  .keyword-search__title__label:first-child{
    margin-left: 0;
  }
  .form-date__object{
    width: 100%;
    margin-top: calc(16 / var(--font-size) * 1rem);
  }
  #form-date__object__input,
  #form-date__object__input-02{
    flex-grow: 1;
  }
  #form-date__object__input:focus-visible,
  #form-date__object__input-02:focus-visible{
  }
}

/*==========================================================================
  keyword-list
========================================================================== */

.keyword-list{
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(-8 / var(--font-size) * 1rem);
  margin-left: calc(-8 / var(--font-size) * 1rem);
}

.keyword-list__button{
  margin-top: calc(8 / var(--font-size) * 1rem);
  margin-left: calc(8 / var(--font-size) * 1rem);
}

.keyword-list__button__link{
  padding:calc(4 / var(--font-size) * 1rem) calc(16 / var(--font-size) * 1rem);
  background-color: var(--color-white);
  border:1px solid var(--main-accent-color);
  border-radius:calc(24 / var(--font-size) * 1rem);
  font-size:calc(var(--text-size-s) / var(--font-size) * 1rem);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.03em;
  color:var(--main-accent-color);
  display:flex;
  align-items:center;
  justify-content:center;
  position: relative;
}

@media all and (min-width: 768px), print {
  .keyword-list{
    display: flex;
    flex-wrap: wrap;
    margin-top: calc(-8 / var(--font-size) * 1rem);
    margin-left: calc(-8 / var(--font-size) * 1rem + 264 / var(--font-size) * 1rem + 24 / var(--font-size) * 1rem);
  }
  .keyword-search__title + .keyword-list{
    margin-left: calc(-8 / var(--font-size) * 1rem + 24 / var(--font-size) * 1rem);
  }
  .keyword-list__button__link{
    transition:0.3s ease;
  }
  .keyword-list__button__link:hover{
    background-color: var(--main-accent-color);
    color:#fff;
  }
  .keyword-list__button__link:hover:before{
  }
}

@media all and (max-width: 767px), print {
  .keyword-list{
    margin-left: calc(-4 / var(--font-size) * 1rem);
  }
  .keyword-list.--justify-content-center{
    justify-content: start;
  }
  .keyword-list__button{
    margin-top: calc(8 / var(--font-size) * 1rem);
    margin-left: calc(4 / var(--font-size) * 1rem);
  }
  .keyword-list__button__link{
    padding:calc(4 / var(--font-size) * 1rem) calc(16 / var(--font-size) * 1rem);
    background-color: var(--color-white);
    border:1px solid var(--main-accent-color);
    border-radius:calc(24 / var(--font-size) * 1rem);
    font-size:calc(var(--text-size-xs) / var(--font-size) * 1rem);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.03em;
    color:var(--main-accent-color);
    display:flex;
    align-items:center;
    justify-content:center;
    position: relative;
  }
}

/*==========================================================================
  一覧と詳細共通パーツ
========================================================================== */


@media all and (min-width: 768px), print {
  .faq-header {
    display: flex;
    align-items: center;
  }
  .faq-list__contents + .faq-header {
    margin-top: calc(12 / var(--font-size) * 1rem);
    margin-left: calc(48 / var(--font-size) * 1rem + 24 / var(--font-size) * 1rem);
    padding-top: calc(12 / var(--font-size) * 1rem);
    border-top: calc(1 / var(--font-size) * 1rem) solid var(--sub-color-jigyo01);
  }
  .faq-list-box.--kosodate .faq-list__contents + .faq-header{
    border-color: var(--sub-color-jigyo02);
  }
  .faq-list-box.--mado .faq-list__contents + .faq-header{
    border-color: var(--sub-color-jigyo03);
  }
  .faq-list-box.--kyuto .faq-list__contents + .faq-header{
    border-color: var(--sub-color-jigyo04);
  }
  .faq-list-box.--jaws .faq-list__contents + .faq-header{
    border-color: var(--sub-color-jigyo05);
  }
  .faq-single__contents + .faq-header {
    margin-top: calc(16 / var(--font-size) * 1rem);
    margin-left: calc(48 / var(--font-size) * 1rem + 18 / var(--font-size) * 1rem);
  }
  .faq-header__category-wrap {
    display: flex;
    align-items: center;
  }
  .faq-header__category {
    border: calc(1 / var(--font-size) * 1rem) solid var(--jigyo-color);
    background-color: var(--jigyo-color);
    margin-left:calc(8 / var(--font-size) * 1rem);
    padding:calc(4 / var(--font-size) * 1rem) calc(16 / var(--font-size) * 1rem);
    color:var(--color-white);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: calc(var(--text-size-xs) / var(--font-size) * 1rem);
    font-weight: 700;
    height: calc(24 / var(--font-size) * 1rem);
    border-radius: calc(12 / var(--font-size) * 1rem);
    letter-spacing: 0;
  }
  .faq-header__category:first-child {
    margin-left:0;
  }
  .faq-header__category:last-child {
    border: calc(1 / var(--font-size) * 1rem) solid var(--color-white);
    background-color: var(--color-white);
    color:var(--jigyo-color);
  }
  .faq-section > .faq-header .faq-header__category:last-child {
    border: calc(1 / var(--font-size) * 1rem) solid var(--jigyo-color);
    background-color: var(--jigyo-color);
    padding:calc(6 / var(--font-size) * 1rem) calc(24 / var(--font-size) * 1rem);
    color:var(--color-white);
    font-size: calc(var(--text-size-m) / var(--font-size) * 1rem);
    height: calc(36 / var(--font-size) * 1rem);
    border-radius: calc(18 / var(--font-size) * 1rem);
    letter-spacing: 0;
  }

  .faq-header__create-date,
  .faq-header__update-date {
    font-size:calc(var(--text-size-xxs) / var(--font-size) * 1rem);
    font-weight: 500;
    line-height: 1;
    margin-left: calc(16 / var(--font-size) * 1rem);
  }
  .faq-header .faq-list__link-wrap{
    margin-left: auto;
  }
}

@media all and (max-width: 767px), print {
  .faq-header {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  .faq-list__contents + .faq-header {
    margin-top: calc(8 / var(--font-size) * 1rem);
    padding-left: 0;
  }
  .faq-single__contents + .faq-header {
    margin-top: calc(12 / var(--font-size) * 1rem);
    padding-left: 0;
  }
  .faq-header__category-wrap {
    display: flex;
    align-items: center;
  }
  .faq-header__category {
    border: calc(1 / var(--font-size) * 1rem) solid var(--jigyo-color);
    background-color: var(--jigyo-color);
    margin-left:calc(8 / var(--font-size) * 1rem);
    padding:calc(4 / var(--font-size) * 1rem) calc(8 / var(--font-size) * 1rem);
    color:var(--color-white);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: calc(var(--text-size-xs) / var(--font-size) * 1rem);
    font-weight: 700;
    height: calc(24 / var(--font-size) * 1rem);
    border-radius: calc(12 / var(--font-size) * 1rem);
    letter-spacing: 0;
  }
  .faq-header__category:first-child {
    margin-left:0;
  }
  .faq-header__category:last-child {
    border: calc(1 / var(--font-size) * 1rem) solid var(--color-white);
    background-color: var(--color-white);
    color:var(--jigyo-color);
  }
  .faq-section > .faq-header .faq-header__category:last-child {
    border: calc(1 / var(--font-size) * 1rem) solid var(--jigyo-color);
    background-color: var(--jigyo-color);
    padding:calc(6 / var(--font-size) * 1rem) calc(24 / var(--font-size) * 1rem);
    color:var(--color-white);
    font-size: calc(var(--text-size-m) / var(--font-size) * 1rem);
    height: calc(36 / var(--font-size) * 1rem);
    border-radius: calc(18 / var(--font-size) * 1rem);
    letter-spacing: 0;
  }

  .faq-header__create-date,
  .faq-header__update-date {
    font-size:calc(var(--text-size-xxs) / var(--font-size) * 1rem);
    font-weight: 500;
    line-height: 1;
    margin-left: calc(8 / var(--font-size) * 1rem);
  }
  .faq-single__contents + .faq-header .faq-header__create-date {
    margin-left: 0;
  }
  .faq-header .faq-list__link-wrap{
    width: 100%;
    margin-top: calc(16 / var(--font-size) * 1rem);
    padding-top: calc(8 / var(--font-size) * 1rem);
    border-top: calc(1 / var(--font-size) * 1rem) solid var(--sub-color-jigyo01);
    text-align: center;
  }
  .faq-list-box.--kosodate .faq-header .faq-list__link-wrap{
    border-color: var(--sub-color-jigyo02);
  }
  .faq-list-box.--mado .faq-header .faq-list__link-wrap{
    border-color: var(--sub-color-jigyo03);
  }
  .faq-list-box.--kyuto .faq-header .faq-list__link-wrap{
    border-color: var(--sub-color-jigyo04);
  }
  .faq-list-box.--jaws .faq-header .faq-list__link-wrap{
    border-color: var(--sub-color-jigyo05);
  }
}

/*==========================================================================
  カレンダー
========================================================================== */
span.flatpickr-day.selected {
  font-weight: bold;
}

.flatpickr-calendar{
  width: fit-content!important;
  background-color: var(--color-white);
  box-shadow: none;
  box-shadow: 0px calc(4 / var(--font-size) * 1rem) calc(15 / var(--font-size) * 1rem) 0px rgba(0, 0, 0, 0.10);
}
.flatpickr-calendar.arrowTop:before,
.flatpickr-calendar.arrowTop:after{
  display: none;
}
.flatpickr-innerContainer {
  border: none;
  border-radius: 0 0 calc(10 / var(--font-size) * 1rem) calc(10 / var(--font-size) * 1rem);
  padding: calc(16 / var(--font-size) * 1rem) calc(24 / var(--font-size) * 1rem) calc(24 / var(--font-size) * 1rem);
}
.flatpickr-rContainer {
}
.flatpickr-days {
  border: none;
}
.flatpickr-day{
  font-size: calc(15 / var(--font-size) * 1rem);
  max-width: calc(39 / var(--font-size) * 1rem);
  height: calc(39 / var(--font-size) * 1rem);
  line-height: calc(39 / var(--font-size) * 1rem);
  border: none!important;
}
.flatpickr-months,.flatpickr-days,.flatpickr-weekdays{
  gap: calc(28 / var(--font-size) * 1rem);
  width: 100%!important;
}
.flatpickr-months{
  background: var(--color-white);
  border-top-left-radius: calc(10 / var(--font-size) * 1rem);
  border-top-right-radius: calc(10 / var(--font-size) * 1rem);
  padding: calc(18 / var(--font-size) * 1rem) calc(24 / var(--font-size) * 1rem) 0;
  position: relative;
}
.flatpickr-months .flatpickr-month {
  background: var(--color-white);
  width: calc(307.875 / var(--font-size) * 1rem);
  min-width: calc(307.875 / var(--font-size) * 1rem);
  max-width: calc(307.875 / var(--font-size) * 1rem);
}
.dayContainer{
  width: calc(307.875 / var(--font-size) * 1rem);
  min-width: calc(307.875 / var(--font-size) * 1rem);
  max-width: calc(307.875 / var(--font-size) * 1rem);
}
.dayContainer + .dayContainer{
  -webkit-box-shadow: none;
  box-shadow: none;
}
.flatpickr-current-month {
  padding: 0 0 calc(16 / var(--font-size) * 1rem);
  height: calc(34 / var(--font-size) * 1rem);
  display: none!important;
}
.flatpickr-current-month .flatpickr-monthDropdown-months {
  background: inherit;
}
.flatpickr-months .flatpickr-prev-month, .flatpickr-months .flatpickr-next-month {
  padding: 0;
}
.flatpickr-next-month {

}
.flatpickr-weekdays {
  background: var(--color-white);
}
.flatpickr-weekdays .flatpickr-weekdaycontainer {
  width: calc(307.875 / var(--font-size) * 1rem);
  min-width: calc(307.875 / var(--font-size)* 1rem);
  max-width: calc(307.875 / var(--font-size)* 1rem);
}
span.flatpickr-weekday {
  background: inherit;
  color: #757575;
}
.flatpickr-current-month {
  display: flex;
  justify-content: center;
  align-items: center;
}

.numInputWrapper {
  order: 1;
}
.flatpickr-monthDropdown-months,
.cur-month {
  order: 2;
}
.cur-year, .flatpickr-monthDropdown-month {
}
.flatpickr-current-month .flatpickr-monthDropdown-months,
.flatpickr-current-month input.cur-year,
.flatpickr-current-month span.cur-month {
  font-size: calc(18 / var(--font-size) * 1rem);
  font-weight: bold;
  pointer-events: none;
}
.flatpickr-current-month input.cur-year{
  padding: 0;
}
.flatpickr-current-month .numInputWrapper{
  display: flex;
  align-items: center;
  pointer-events: none;
  width: calc(62 / var(--font-size) * 1rem);
  min-width: calc(62 / var(--font-size) * 1rem);
  max-width: calc(62 / var(--font-size) * 1rem);
}
.numInputWrapper::after{
  content: "年";
  font-size: calc(18 / var(--font-size) * 1rem);
  font-weight: bold;
}
.numInputWrapper span.arrowUp,
.numInputWrapper span.arrowDown{
  display: none;
}

.flatpickr-months .flatpickr-prev-month-icon,
.flatpickr-months .flatpickr-next-month-icon{
  padding: 0;
  position: absolute;
  top: 0;
}
.flatpickr-months .flatpickr-prev-month-icon{
  left: 0;
}
.flatpickr-months .flatpickr-next-month-icon{
  right: 0;
}

.flatpickr-months .flatpickr-prev-month-icon::before,
.flatpickr-months .flatpickr-next-month-icon::before{
  content: "";
  background-color: var(--main-color);
  mask-image: url(/assets/img/common/ico_circle_cursor_03.svg);
  mask-size: contain;
  mask-position: center center;
  mask-repeat: no-repeat;
  display: block;
  width: calc(19 / var(--font-size)* 1rem);
  height: calc(19 / var(--font-size)* 1rem);
  position: absolute;
  top: calc(18 / var(--font-size)* 1rem);
}
.flatpickr-months .flatpickr-prev-month-icon:hover::before,
.flatpickr-months .flatpickr-next-month-icon:hover::before{
  opacity: 0.6;
}
.flatpickr-months .flatpickr-prev-month-icon::before{
  left: calc(23 / var(--font-size)* 1rem);
  transform: scale(-1, 1);
}
.flatpickr-months .flatpickr-next-month-icon::before{
  right: calc(23 / var(--font-size)* 1rem);
}

/*カレンダー日付選択*/
.flatpickr-day.selected, .flatpickr-day.startRange, .flatpickr-day.endRange, .flatpickr-day.selected.inRange, .flatpickr-day.startRange.inRange, .flatpickr-day.endRange.inRange, .flatpickr-day.selected:focus, .flatpickr-day.startRange:focus, .flatpickr-day.endRange:focus, .flatpickr-day.selected:hover, .flatpickr-day.startRange:hover, .flatpickr-day.endRange:hover, .flatpickr-day.selected.prevMonthDay, .flatpickr-day.startRange.prevMonthDay, .flatpickr-day.endRange.prevMonthDay, .flatpickr-day.selected.nextMonthDay, .flatpickr-day.startRange.nextMonthDay, .flatpickr-day.endRange.nextMonthDay,
.flatpickr-day.inRange, .flatpickr-day.prevMonthDay.inRange, .flatpickr-day.nextMonthDay.inRange, .flatpickr-day.today.inRange, .flatpickr-day.prevMonthDay.today.inRange,.flatpickr-day.nextMonthDay.today.inRange,
.flatpickr-day:hover, .flatpickr-day.prevMonthDay:hover, .flatpickr-day.nextMonthDay:hover, .flatpickr-day:focus, .flatpickr-day.prevMonthDay:focus, .flatpickr-day.nextMonthDay:focus {
  background: none!important;
  border: none;
}
.flatpickr-day{
  box-shadow: none!important;
}
.rangeMode .flatpickr-day{
  margin-top: calc(5 / var(--font-size) * 1rem);
}
.flatpickr-day.today::before{
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  background-color:  var(--main-color-jigyo01);
  width: calc(5 / var(--font-size) * 1rem);
  height: calc(5 / var(--font-size) * 1rem);
  border-radius: 9999px;
}
.flatpickr-day.today{
  font-weight: 500;
}
.custom-year-month-select{
  font-size: calc(18 / var(--font-size) * 1rem);
  font-weight: 700;
  outline: none;
  border: none;
  border-radius: calc(3 / var(--font-size) * 1rem);
  pointer-events: none;
}
.custom-year-month-select:hover,
.custom-year-month-select:focus{
  background-color: var(--color-gray_200);
}

/*開始・終了・選択時*/
.flatpickr-day.selected.startRange::before,
.flatpickr-day.selected.endRange::before,
.flatpickr-day.selected.startRange::before, .flatpickr-day.startRange.startRange::before, .flatpickr-day.endRange.startRange::before,
.flatpickr-day.selected.endRange::before, .flatpickr-day.startRange.endRange::before, .flatpickr-day.endRange.endRange::before,
.flatpickr-day.selected::before, .flatpickr-day.startRange::before, .flatpickr-day.endRange::before, .flatpickr-day.selected.inRange::before, .flatpickr-day.startRange.inRange::before, .flatpickr-day.endRange.inRange::before,
.flatpickr-day.selected:focus::before, .flatpickr-day.startRange:focus::before, .flatpickr-day.endRange:focus::before, .flatpickr-day.selected:hover::before, .flatpickr-day.startRange:hover::before, .flatpickr-day.endRange:hover::before,
.flatpickr-day.selected.prevMonthDay::before, .flatpickr-day.startRange.prevMonthDay::before, .flatpickr-day.endRange.prevMonthDay::before, .flatpickr-day.selected.nextMonthDay::before, .flatpickr-day.startRange.nextMonthDay::before, .flatpickr-day.endRange.nextMonthDay::before{
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
  background: var(--main-color-jigyo01);
  z-index: -1;
  border-radius: 9999px;
}
.flatpickr-day.flatpickr-disabled, .flatpickr-day.flatpickr-disabled:hover, .flatpickr-day.prevMonthDay, .flatpickr-day.nextMonthDay, .flatpickr-day.notAllowed, .flatpickr-day.notAllowed.prevMonthDay, .flatpickr-day.notAllowed.nextMonthDay{
  visibility: hidden;
}
.flatpickr-day.selected.startRange.no-end-range::after{
  background: transparent;
}

/*範囲内*/
.flatpickr-day.selected.startRange::after,
.flatpickr-day.selected.endRange::after{
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: calc(100% + 13%);
  height: 100%;
  z-index: -2;
}
.flatpickr-day.startRange::after{
  background: linear-gradient(to right, transparent 50%, var(--bg-color-jigyo01) 50%);
}
.flatpickr-day.endRange::after{
  background: linear-gradient(to left, transparent 50%, var(--bg-color-jigyo01) 50%);
}
.flatpickr-day.startRange:hover::after,
.flatpickr-day.endRange:hover::after{
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: calc(100% + 13%);
  height: 100%;
  z-index: -2;
  background: linear-gradient(to right, transparent 50%, var(--bg-color-jigyo01) 50%);
}
.flatpickr-day.startRange:hover::after{
  background: linear-gradient(to right, transparent 50%, var(--bg-color-jigyo01) 50%);
}
.flatpickr-day.endRange:hover::after{
  background: linear-gradient(to left, transparent 50%, var(--bg-color-jigyo01) 50%);
}
.flatpickr-day.inRange::after, .flatpickr-day.prevMonthDay.inRange::after, .flatpickr-day.nextMonthDay.inRange::after, .flatpickr-day.today.inRange::after, .flatpickr-day.prevMonthDay.today.inRange::after,.flatpickr-day.nextMonthDay.today.inRange::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: calc(100% + 13%);
  height: 100%;
  z-index: -2;
  background: var(--bg-color-jigyo01);
}
.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7)::after,
.flatpickr-day.inRange:has(+ .nextMonthDay)::after{
  content: "";
  position: absolute;
  top: 0;
  left: auto;
  right: 0;
  transform: translateX(0);
  width: calc(100% + 13%);
  height: 100%;
  z-index: -2;
  background: var(--bg-color-jigyo01);
}
.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1)::after,
.prevMonthDay + .flatpickr-day.inRange::after{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  transform: translateX(0);
  width: calc(100% + 13%);
  height: 100%;
  z-index: -2;
  background: var(--bg-color-jigyo01);
}

/*hover時*/
.flatpickr-day:hover, .flatpickr-day.prevMonthDay:hover, .flatpickr-day.nextMonthDay:hover, .flatpickr-day:focus, .flatpickr-day.prevMonthDay:focus, .flatpickr-day.nextMonthDay:focus{
  color: var(--color-white);
}
.flatpickr-day:hover::before, .flatpickr-day.prevMonthDay:hover::before, .flatpickr-day.nextMonthDay:hover::before, .flatpickr-day:focus::before, .flatpickr-day.prevMonthDay:focus::before, .flatpickr-day.nextMonthDay:focus::before{
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
  background: var(--main-color-jigyo01);
  z-index: -1;
  border-radius: 9999px;
}
.flatpickr-day.inRange:hover::after, .flatpickr-day.prevMonthDay.inRange:hover::after, .flatpickr-day.nextMonthDay.inRange:hover::after, .flatpickr-day.inRange:focus::after, .flatpickr-day.prevMonthDay.inRange:focus::after, .flatpickr-day.nextMonthDay.inRange:focus::after{
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: calc(100% + 13%);
  height: 100%;
  z-index: -2;
  background: var(--bg-color-jigyo01);
}

.flatpickr-button-wrapper{
  padding: calc(13 / var(--font-size) * 1rem) 0 calc(18 / var(--font-size) * 1rem);
  margin: 0 calc(24 / var(--font-size) * 1rem);
  border-top: var(--color-gray_300) calc(1 / var(--font-size) * 1rem) solid;
}
.flatpickr-button-content{
  display: flex;
  justify-content: flex-end;
}
.flatpickr-submit-button{
  background-color: var(--spare-color);
  color: var(--color-white);
  width: calc(80 / var(--font-size) * 1rem);
  height: calc(26 / var(--font-size) * 1rem);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: calc(13 / var(--font-size) * 1rem);
  font-size: calc(12 / var(--font-size) * 1rem);
  font-weight: 700;
  line-height: calc(26 / var(--font-size) * 1rem);
  cursor: pointer;
}

@media all and (max-width: 767px), print {
  .flatpickr-current-month .flatpickr-monthDropdown-months{
    padding-left: 0;
    margin-left: 0.5ch;
    pointer-events: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
  }
  .flatpickr-button-content{
    justify-content: center;
  }
}