@charset "UTF-8";
/* PCとSPの適用切り替え
--------------------------------- */
/* ホバー用メディアクエリ
--------------------------------- */
/* メディアクエリ調整関数
--------------------------------- */
/* 画面サイズ
--------------------------------- */
/* flex-boxのMixin
--------------------------------- */
.main-inner {
  max-width: 1100px;
  width: 93%;
  margin: 0 auto;
  position: relative;
}

.main-inner--hidden {
  overflow: hidden;
}

@media screen and (max-width: 1024px) {
  .main-inner {
    width: 93%;
  }
}
.favorite-dialog__overlay {
  display: none;
  position: fixed;
  height: 100vh;
  width: 100vw;
  background-color: #000;
  opacity: 0.7;
  top: 0;
  left: 0;
  z-index: 999999;
}

.favorite-dialog__overlay.active {
  display: block;
}

.btn01 {
  max-width: 400px;
  width: 100%;
  background-color: #eb6da5;
  font-size: 2.2rem;
  font-weight: bold;
  display: block;
  text-align: center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.btn01:hover {
  opacity: 0.7;
}

.btn01 > a {
  height: 100%;
  width: 100%;
  display: block;
  padding: 16px 48px;
}

@media screen and (max-width: 599px) {
  .btn01 > a {
    padding: 0;
  }
}
.breadcrumb {
  font-size: 1.6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 12px 0;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  position: relative;
}

@media screen and (max-width: 599px) {
  .breadcrumb {
    font-size: 1.4rem;
  }
}
.breadcrumb::after {
  content: "";
  position: absolute;
  display: block;
  height: 1px;
  width: 100vw;
  bottom: 0;
  left: 50%;
  background-color: #909090;
  /* margin: 0 calc(50% - 50vw); */
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: -1;
}

.breadcrumb li {
  position: relative;
}

.breadcrumb li a {
  word-break: break-all;
}

.breadcrumb li:not(:first-child) {
  margin-left: 24px;
}

.breadcrumb li:not(:first-child)::before {
  content: "";
  position: absolute;
  display: block;
  top: 50%;
  left: -14px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  height: 12px;
  width: 12px;
  background-image: url(../img/arrow-brown.png);
  background-size: contain;
  background-repeat: no-repeat;
}

.TitleStyle01 {
  position: relative;
  font-size: 3.6rem;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

@media screen and (max-width: 599px) {
  .TitleStyle01 {
    font-size: 2.8rem;
  }
}
.TitleStyle01::after {
  content: "";
  position: absolute;
  display: block;
  height: 100%;
  width: 100%;
  max-width: 120px;
  background: url(../img/sectionTitle-line.png) center/contain no-repeat;
  bottom: -48px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.TitleStyle02 {
  position: relative;
  font-size: 2.4rem;
  font-weight: bold;
}

@media screen and (max-width: 599px) {
  .TitleStyle02 {
    font-size: 2rem;
  }
}
.TitleStyle02--pink {
  color: #eb6da5;
}

.TitleStyle03 {
  position: relative;
  font-size: 2rem;
  font-weight: bold;
  padding-left: 20px;
}

@media screen and (max-width: 599px) {
  .TitleStyle03 {
    font-size: 2rem;
  }
}
.TitleStyle03::before {
  content: "";
  position: absolute;
  display: block;
  height: 16px;
  width: 16px;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  background-color: #f4b8d6;
  border-radius: 4px;
}

@media screen and (max-width: 599px) {
  .TitleStyle03::before {
    height: 14px;
    width: 14px;
  }
}
.TitleStyle04 {
  position: relative;
  font-size: 2.4rem;
  font-weight: bold;
  padding-left: 30px;
}

@media screen and (max-width: 599px) {
  .TitleStyle04 {
    font-size: 2rem;
  }
}
.TitleStyle04::before {
  content: "";
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  background-color: #f4b8d6;
  border-radius: 4px;
}

.lower-fv {
  width: 100%;
  height: 190px;
  background-repeat: no-repeat;
  position: relative;
}

@media screen and (max-width: 599px) {
  .lower-fv {
    height: 160px;
  }
}
.lower-fv::before {
  content: "";
  position: absolute;
  display: block;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  background-color: #88c8b5;
}

@media screen and (max-width: 1024px) {
  .lower-fv {
    margin-top: 84px;
  }
}
@media screen and (max-width: 599px) {
  .lower-fv__catch {
    position: absolute;
    top: 50%;
    left: 50%;
    margin: 0 auto;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
  }
}
.lower-fv__title {
  font-size: 3.6rem;
  font-weight: bold;
  position: absolute;
  top: 50%;
  left: 50%;
  color: #faf9f8;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  word-break: keep-all;
  display: inline-block;
}

@media screen and (max-width: 1024px) {
  .lower-fv__title {
    font-size: 3rem;
  }
}
@media screen and (max-width: 599px) {
  .lower-fv__title {
    font-size: 2.6rem;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    display: inline-block;
    max-width: 350px;
    white-space: nowrap;
  }
}
.wp-pagenavi {
  clear: both;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /*	margin: 120px 0 100px;*/
  margin: 80px 0 100px;
}

.wp-pagenavi a,
.wp-pagenavi span {
  font-size: 1.8rem;
  color: #45371b;
  background-color: transparent;
  margin: 0 10px;
  white-space: nowrap;
  border-radius: 9999px;
  display: inline-block;
  height: 40px;
  width: 40px;
  line-height: 40px;
  cursor: pointer;
  /*
  	-moz-border-radius: 3px;
  	-webkit-border-radius: 3px;
  */
  -webkit-transition: 0.2s ease-in-out;
  transition: 0.2s ease-in-out;
  text-align: center;
  text-decoration: none;
}

@media screen and (max-width: 768px) {
  .wp-pagenavi a,
  .wp-pagenavi span {
    margin: 4px;
  }
  .wp-pagenavi {
    margin: 64px 0 80px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
.wp-pagenavi a:not(.previouspostslink, .nextpostslink):hover {
  color: #fff;
  border-radius: 9999px;
  background-color: #333;
}

.wp-pagenavi span.current {
  color: #fff;
  border-radius: 9999px;
  font-weight: bold;
  position: relative;
  border-radius: 100%;
  background-color: #333;
  display: inline-block;
  height: 40px;
  width: 40px;
  line-height: 40px;
}

.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
  position: relative;
  width: 8px;
  margin: 0 40px;
}

.wp-pagenavi .previouspostslink:hover,
.wp-pagenavi .nextpostslink:hover {
  opacity: 0.7;
}

.wp-pagenavi .previouspostslink > img,
.wp-pagenavi .nextpostslink > img {
  height: 100%;
  width: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}

.wp-pagenavi .nextpostslink > img {
  height: 100%;
  width: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

@media screen and (max-width: 768px) {
  .wp-pagenavi .previouspostslink,
  .wp-pagenavi .nextpostslink {
    position: relative;
    width: 8px;
    margin: 0 24px;
  }
  .wp-pagenavi .previouspostslink:hover,
  .wp-pagenavi .nextpostslink:hover {
    opacity: 0.7;
  }
  .wp-pagenavi .previouspostslink > img,
  .wp-pagenavi .nextpostslink > img {
    height: 100%;
    width: 100%;
    -o-object-fit: contain;
    object-fit: contain;
  }
  .wp-pagenavi .nextpostslink > img {
    height: 100%;
    width: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
  }
}
.TableStyle01 {
  background-color: #fcf9f2;
  width: 100%;
}

@media screen and (max-width: 1024px) {
  .TableStyle01--tab-2column {
    width: calc(50% - 20px);
    margin-top: 40px !important;
  }
}
@media screen and (max-width: 599px) {
  .TableStyle01--tab-2column {
    width: 100%;
  }
}
.TableStyle01:nth-child(2) {
  margin-top: 40px;
}

.TableStyle01 > thead > tr > th {
  background-color: #e58047;
  color: white;
  text-align: center;
  font-size: 2rem;
  font-weight: 100;
  border-radius: 8px 8px 0 0;
  padding: 4px;
}

.TableStyle01 > tbody {
  font-size: 1.8rem;
}

.TableStyle01 > tbody > tr > th {
  color: #e65707;
  font-weight: 100;
  white-space: nowrap;
}

.TableStyle01 > tbody > tr > th {
  padding: 8px 4px 8px 20px;
}

.TableStyle01 > tbody > tr > td {
  padding: 8px 20px 8px 0;
}

.TableStyle01__ol {
  padding: 8px 0 8px 20px;
}

.TableStyle01__ol-li {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.TableStyle01__ol-li:not(:first-child) {
  margin-top: 8px;
}

.TableStyle01__ol-li > span {
  color: #e65707;
  font-weight: 100;
  white-space: nowrap;
  margin-right: 12px;
}

.TableStyle01__ol-li > p {
  font-size: 1.8rem;
}

.TableStyle01__ul {
  padding: 8px 0 8px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

@media screen and (max-width: 1024px) {
  .TableStyle01__ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
.TableStyle01__ul-li {
  position: relative;
  padding-left: 18px;
  width: calc(50% - 24px);
}

@media screen and (max-width: 1024px) {
  .TableStyle01__ul-li {
    width: 100%;
  }
}
.TableStyle01__ul-li::before {
  content: "・";
  position: absolute;
  display: block;
  top: 0;
  left: 0;
}

.ListStyle01 > li {
  position: relative;
  padding-left: 20px;
}

.ListStyle01 > li:not(:first-child) {
  margin-top: 8px;
}

.ListStyle01 > li::before {
  content: "";
  position: absolute;
  display: block;
  top: 14px;
  left: 5px;
  background-color: #eb6da5;
  height: 6px;
  width: 6px;
  border-radius: 9999px;
}

.CardStyle01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.CardStyle01 li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  width: calc(33.3333333333% - 46.6666666667px);
  margin-right: 70px;
  margin-bottom: 15px;
}

@media screen and (max-width: 1024px) {
  .CardStyle01 li {
    width: calc(50% - 17.5px);
    margin-right: 35px;
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 599px) {
  .CardStyle01 li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 64px;
  }
}
.CardStyle01 li:nth-of-type(3n) {
  margin-right: 0;
}

@media screen and (max-width: 1024px) {
  .CardStyle01 li:nth-of-type(2n) {
    margin-right: 0;
  }
}
html {
  font-size: 62.5%;
  scroll-behavior: smooth;
}

body {
  color: #45371b;
  background-color: #fafafa;
  font-family: "Noto Sans JP", serif;
  line-height: 1.7;
  overflow-x: hidden;
  position: relative;
  font-weight: 500;
}

body.active {
  overflow: hidden;
}

body.hidden {
  overflow: hidden;
}

.container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.main {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

.fwb {
  font-weight: bold;
}

.color-white {
  color: #fff;
}

.color-accent {
  color: #ed6c00;
}

.color-notice {
  color: #f24e4e;
}

.color-pink {
  color: #eb6da5;
}

.inline_B_Sp {
  display: inline-block !important;
}

.linkStyle01 {
  text-decoration: underline !important;
  color: #0956bf !important;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.linkStyle01:hover {
  opacity: 0.7;
}

.anker-point {
  opacity: 0;
}

@media screen and (max-width: 1024px) {
  .anker-point {
    position: relative;
    top: -80px;
  }
}
.border-dashed {
  padding-top: 20px;
  margin-top: 20px;
  border-top: 2px dashed #897b57;
}

.small-font {
  font-size: 1.6rem;
}

ul.notice {
  display: table;
  width: 100%;
  margin: 0;
  padding-left: 0;
  margin-top: 8px;
}

ul.notice li {
  list-style: none;
  line-height: 1.6;
  font-size: 1.8rem;
}

@media screen and (max-width: 599px) {
  ul.notice li {
    font-size: 1.7rem;
  }
}
ul.notice li .notice__head {
  display: table-cell;
  vertical-align: top;
  white-space: nowrap;
  padding-right: 0.1em;
}

@media screen and (min-width: 1025px) {
  ul.notice li .notice__head--7pxPc {
    position: relative;
    top: 7px;
  }
}
ul.notice li .notice__text {
  display: table-cell;
  vertical-align: top;
}

/* -------------------------------------------------- */
/* block item Width */
.wid10Per {
  width: 10% !important;
}

.wid15Per {
  width: 15% !important;
}

.wid20Per {
  width: 20% !important;
}

.wid25Per {
  width: 25% !important;
}

.wid30Per {
  width: 30% !important;
}

.wid35Per {
  width: 35% !important;
}

.wid40Per {
  width: 40% !important;
}

.wid45Per {
  width: 45% !important;
}

.wid50Per {
  width: 50% !important;
}

.wid55Per {
  width: 55% !important;
}

.wid60Per {
  width: 60% !important;
}

.wid65Per {
  width: 65% !important;
}

.wid70Per {
  width: 70% !important;
}

.wid75Per {
  width: 75% !important;
}

.wid80Per {
  width: 80% !important;
}

.wid85Per {
  width: 85% !important;
}

.wid90Per {
  width: 90% !important;
}

.wid95Per {
  width: 95% !important;
}

.wid100Per {
  width: 100% !important;
}

.wid50 {
  width: 50px !important;
}

.wid100 {
  width: 100px !important;
}

.wid150 {
  width: 150px !important;
}

.wid200 {
  width: 200px !important;
}

.wid250 {
  width: 250px !important;
}

.wid300 {
  width: 300px !important;
}

.wid350 {
  width: 350px !important;
}

.wid400 {
  width: 400px !important;
}

.wid450 {
  width: 450px !important;
}

.wid500 {
  width: 500px !important;
}

.wid550 {
  width: 550px !important;
}

.wid600 {
  width: 600px !important;
}

.wid650 {
  width: 650px !important;
}

.wid700 {
  width: 700px !important;
}

.wid750 {
  width: 750px !important;
}

.wid800 {
  width: 800px !important;
}

.wid850 {
  width: 850px !important;
}

.wid900 {
  width: 900px !important;
}

.wid950 {
  width: 950px !important;
}

/* -------------------------------------------------- */
/* block item Margin */
/* - All margin */
.marA0 {
  margin: 0px !important;
}

.marA5 {
  margin: 5px !important;
}

.marA10 {
  margin: 10px !important;
}

.marA15 {
  margin: 15px !important;
}

.marA20 {
  margin: 20px !important;
}

.marA25 {
  margin: 25px !important;
}

.marA30 {
  margin: 30px !important;
}

.marA40 {
  margin: 40px !important;
}

.marA50 {
  margin: 50px !important;
}

.marA60 {
  margin: 60px !important;
}

.marA70 {
  margin: 70px !important;
}

.marA80 {
  margin: 80px !important;
}

.marA90 {
  margin: 90px !important;
}

/* - Top margin */
.marT0 {
  margin-top: 0px !important;
}

.marT5 {
  margin-top: 5px !important;
}

.marT10 {
  margin-top: 10px !important;
}

.marT15 {
  margin-top: 15px !important;
}

.marT20 {
  margin-top: 20px !important;
}

.marT25 {
  margin-top: 25px !important;
}

.marT30 {
  margin-top: 30px !important;
}

.marT40 {
  margin-top: 40px !important;
}

.marT50 {
  margin-top: 50px !important;
}

.marT60 {
  margin-top: 60px !important;
}

.marT70 {
  margin-top: 70px !important;
}

.marT80 {
  margin-top: 80px !important;
}

.marT90 {
  margin-top: 90px !important;
}

.marT120 {
  margin-top: 120px !important;
}

/* - Bottom margin */
.marB0 {
  margin-bottom: 0px !important;
}

.marB5 {
  margin-bottom: 5px !important;
}

.marB10 {
  margin-bottom: 10px !important;
}

.marB15 {
  margin-bottom: 15px !important;
}

.marB20 {
  margin-bottom: 20px !important;
}

.marB25 {
  margin-bottom: 25px !important;
}

.marB30 {
  margin-bottom: 30px !important;
}

.marB40 {
  margin-bottom: 40px !important;
}

.marB50 {
  margin-bottom: 50px !important;
}

.marB60 {
  margin-bottom: 60px !important;
}

.marB70 {
  margin-bottom: 70px !important;
}

.marB80 {
  margin-bottom: 80px !important;
}

.marB90 {
  margin-bottom: 90px !important;
}

/* - Left margin */
.marL0 {
  margin-left: 0px !important;
}

.marL5 {
  margin-left: 5px !important;
}

.marL10 {
  margin-left: 10px !important;
}

.marL15 {
  margin-left: 15px !important;
}

.marL20 {
  margin-left: 20px !important;
}

.marL25 {
  margin-left: 25px !important;
}

.marL30 {
  margin-left: 30px !important;
}

.marL40 {
  margin-left: 40px !important;
}

.marL50 {
  margin-left: 50px !important;
}

.marL60 {
  margin-left: 60px !important;
}

.marL70 {
  margin-left: 70px !important;
}

.marL80 {
  margin-left: 80px !important;
}

.marL90 {
  margin-left: 90px !important;
}

/* - Right margin */
.marR0 {
  margin-right: 0px !important;
}

.marR5 {
  margin-right: 5px !important;
}

.marR10 {
  margin-right: 10px !important;
}

.marR15 {
  margin-right: 15px !important;
}

.marR20 {
  margin-right: 20px !important;
}

.marR25 {
  margin-right: 25px !important;
}

.marR30 {
  margin-right: 30px !important;
}

.marR40 {
  margin-right: 40px !important;
}

.marR50 {
  margin-right: 50px !important;
}

.marR60 {
  margin-right: 60px !important;
}

.marR70 {
  margin-right: 70px !important;
}

.marR80 {
  margin-right: 80px !important;
}

.marR90 {
  margin-right: 90px !important;
}

/* -------------------------------------------------- */
/* block item Padding */
/* - All padding */
.padA0 {
  padding: 0px !important;
}

.padA5 {
  padding: 5px !important;
}

.padA10 {
  padding: 10px !important;
}

.padA15 {
  padding: 15px !important;
}

.padA20 {
  padding: 20px !important;
}

.padA25 {
  padding: 25px !important;
}

.padA30 {
  padding: 30px !important;
}

.padA40 {
  padding: 40px !important;
}

.padA50 {
  padding: 50px !important;
}

.padA60 {
  padding: 60px !important;
}

.padA70 {
  padding: 70px !important;
}

.padA80 {
  padding: 80px !important;
}

.padA90 {
  padding: 90px !important;
}

/* - Top padding */
.padT0 {
  padding-top: 0px !important;
}

.padT5 {
  padding-top: 5px !important;
}

.padT10 {
  padding-top: 10px !important;
}

.padT15 {
  padding-top: 15px !important;
}

.padT20 {
  padding-top: 20px !important;
}

.padT25 {
  padding-top: 25px !important;
}

.padT30 {
  padding-top: 30px !important;
}

.padT40 {
  padding-top: 40px !important;
}

.padT50 {
  padding-top: 50px !important;
}

.padT60 {
  padding-top: 60px !important;
}

.padT70 {
  padding-top: 70px !important;
}

.padT80 {
  padding-top: 80px !important;
}

.padT90 {
  padding-top: 90px !important;
}

/* - Bottom padding */
.padB0 {
  padding-bottom: 0px !important;
}

.padB5 {
  padding-bottom: 5px !important;
}

.padB10 {
  padding-bottom: 10px !important;
}

.padB15 {
  padding-bottom: 15px !important;
}

.padB20 {
  padding-bottom: 20px !important;
}

.padB25 {
  padding-bottom: 25px !important;
}

.padB30 {
  padding-bottom: 30px !important;
}

.padB40 {
  padding-bottom: 40px !important;
}

.padB50 {
  padding-bottom: 50px !important;
}

.padB60 {
  padding-bottom: 60px !important;
}

.padB70 {
  padding-bottom: 70px !important;
}

.padB80 {
  padding-bottom: 80px !important;
}

.padB90 {
  padding-bottom: 90px !important;
}

/* - Left padding */
.padL0 {
  padding-left: 0px !important;
}

.padL5 {
  padding-left: 5px !important;
}

.padL10 {
  padding-left: 10px !important;
}

.padL15 {
  padding-left: 15px !important;
}

.padL20 {
  padding-left: 20px !important;
}

.padL25 {
  padding-left: 25px !important;
}

.padL30 {
  padding-left: 30px !important;
}

.padL40 {
  padding-left: 40px !important;
}

.padL50 {
  padding-left: 50px !important;
}

.padL60 {
  padding-left: 60px !important;
}

.padL70 {
  padding-left: 70px !important;
}

.padL80 {
  padding-left: 80px !important;
}

.padL90 {
  padding-left: 90px !important;
}

/* - Right padding */
.padR0 {
  padding-right: 0px !important;
}

.padR5 {
  padding-right: 5px !important;
}

.padR10 {
  padding-right: 10px !important;
}

.padR15 {
  padding-right: 15px !important;
}

.padR20 {
  padding-right: 20px !important;
}

.padR25 {
  padding-right: 25px !important;
}

.padR30 {
  padding-right: 30px !important;
}

.padR40 {
  padding-right: 40px !important;
}

.padR50 {
  padding-right: 50px !important;
}

.padR60 {
  padding-right: 60px !important;
}

.padR70 {
  padding-right: 70px !important;
}

.padR80 {
  padding-right: 80px !important;
}

.padR90 {
  padding-right: 90px !important;
}

/* - Font size */
.txt10px {
  font-size: 1rem !important;
}

.txt11px {
  font-size: 1.1rem !important;
}

.txt12px {
  font-size: 1.2rem !important;
}

.txt13px {
  font-size: 1.3rem !important;
}

.txt14px {
  font-size: 1.4rem !important;
}

.txt15px {
  font-size: 1.5rem !important;
}

.txt16px {
  font-size: 1.6rem !important;
}

.txt17px {
  font-size: 1.7rem !important;
}

.txt18px {
  font-size: 1.8rem !important;
}

.txt19px {
  font-size: 1.9rem !important;
}

.txt20px {
  font-size: 2rem !important;
}

.txt21px {
  font-size: 2.1rem !important;
}

.txt22px {
  font-size: 2.2rem !important;
}

.txt23px {
  font-size: 2.3rem !important;
}

.txt24px {
  font-size: 2.4rem !important;
}

.txt25px {
  font-size: 2.5rem !important;
}

.txt26px {
  font-size: 2.6rem !important;
}

/* -line-height */
.LH100 {
  line-height: 1 !important;
}

.LH110 {
  line-height: 1.1 !important;
}

.LH120 {
  line-height: 1.2 !important;
}

.LH130 {
  line-height: 1.3 !important;
}

.LH140 {
  line-height: 1.4 !important;
}

.LH150 {
  line-height: 1.5 !important;
}

.LH160 {
  line-height: 1.6 !important;
}

.LH170 {
  line-height: 1.7 !important;
}

.LH180 {
  line-height: 1.8 !important;
}

.LH190 {
  line-height: 1.9 !important;
}

.LH200 {
  line-height: 2 !important;
}

/* Float setting */
.flt-L {
  float: left !important;
}

.flt-R {
  float: right !important;
}

/* Align setting */
.ali-L {
  text-align: left !important;
}

.ali-C {
  text-align: center !important;
}

.ali-R {
  text-align: right !important;
}

@media print, screen and (min-width: 1025px) {
  /* -------------------------------------------------- */
  /* block item Width */
  .wid10Per_pc {
    width: 10% !important;
  }
  .wid15Per_pc {
    width: 15% !important;
  }
  .wid20Per_pc {
    width: 20% !important;
  }
  .wid25Per_pc {
    width: 25% !important;
  }
  .wid30Per_pc {
    width: 30% !important;
  }
  .wid35Per_pc {
    width: 35% !important;
  }
  .wid40Per_pc {
    width: 40% !important;
  }
  .wid45Per_pc {
    width: 45% !important;
  }
  .wid50Per_pc {
    width: 50% !important;
  }
  .wid55Per_pc {
    width: 55% !important;
  }
  .wid60Per_pc {
    width: 60% !important;
  }
  .wid65Per_pc {
    width: 65% !important;
  }
  .wid70Per_pc {
    width: 70% !important;
  }
  .wid75Per_pc {
    width: 75% !important;
  }
  .wid80Per_pc {
    width: 80% !important;
  }
  .wid85Per_pc {
    width: 85% !important;
  }
  .wid90Per_pc {
    width: 90% !important;
  }
  .wid95Per_pc {
    width: 95% !important;
  }
  .wid100Per_pc {
    width: 100% !important;
  }
  .wid50_pc {
    width: 50px !important;
  }
  .wid100_pc {
    width: 100px !important;
  }
  .wid150_pc {
    width: 150px !important;
  }
  .wid200_pc {
    width: 200px !important;
  }
  .wid250_pc {
    width: 250px !important;
  }
  .wid300_pc {
    width: 300px !important;
  }
  .wid350_pc {
    width: 350px !important;
  }
  .wid400_pc {
    width: 400px !important;
  }
  .wid450_pc {
    width: 450px !important;
  }
  .wid500_pc {
    width: 500px !important;
  }
  .wid550_pc {
    width: 550px !important;
  }
  .wid600_pc {
    width: 600px !important;
  }
  .wid650_pc {
    width: 650px !important;
  }
  .wid700_pc {
    width: 700px !important;
  }
  .wid750_pc {
    width: 750px !important;
  }
  .wid800_pc {
    width: 800px !important;
  }
  .wid850_pc {
    width: 850px !important;
  }
  .wid900_pc {
    width: 900px !important;
  }
  .wid950_pc {
    width: 950px !important;
  }
  /* -------------------------------------------------- */
  /* block item Margin */
  /* - All margin */
  .marA0_pc {
    margin: 0px !important;
  }
  .marA5_pc {
    margin: 5px !important;
  }
  .marA10_pc {
    margin: 10px !important;
  }
  .marA15_pc {
    margin: 15px !important;
  }
  .marA20_pc {
    margin: 20px !important;
  }
  .marA25_pc {
    margin: 25px !important;
  }
  .marA30_pc {
    margin: 30px !important;
  }
  .marA40_pc {
    margin: 40px !important;
  }
  .marA50_pc {
    margin: 50px !important;
  }
  .marA60_pc {
    margin: 60px !important;
  }
  .marA70_pc {
    margin: 70px !important;
  }
  .marA80_pc {
    margin: 80px !important;
  }
  .marA90_pc {
    margin: 90px !important;
  }
  /* - Top margin */
  .marT0_pc {
    margin-top: 0px !important;
  }
  .marT5_pc {
    margin-top: 5px !important;
  }
  .marT10_pc {
    margin-top: 10px !important;
  }
  .marT15_pc {
    margin-top: 15px !important;
  }
  .marT20_pc {
    margin-top: 20px !important;
  }
  .marT25_pc {
    margin-top: 25px !important;
  }
  .marT30_pc {
    margin-top: 30px !important;
  }
  .marT40_pc {
    margin-top: 40px !important;
  }
  .marT50_pc {
    margin-top: 50px !important;
  }
  .marT60_pc {
    margin-top: 60px !important;
  }
  .marT70_pc {
    margin-top: 70px !important;
  }
  .marT80_pc {
    margin-top: 80px !important;
  }
  .marT90_pc {
    margin-top: 90px !important;
  }
  .marT120_pc {
    margin-top: 120px !important;
  }
  /* - Bottom margin */
  .marB0_pc {
    margin-bottom: 0px !important;
  }
  .marB5_pc {
    margin-bottom: 5px !important;
  }
  .marB10_pc {
    margin-bottom: 10px !important;
  }
  .marB15_pc {
    margin-bottom: 15px !important;
  }
  .marB20_pc {
    margin-bottom: 20px !important;
  }
  .marB25_pc {
    margin-bottom: 25px !important;
  }
  .marB30_pc {
    margin-bottom: 30px !important;
  }
  .marB40_pc {
    margin-bottom: 40px !important;
  }
  .marB50_pc {
    margin-bottom: 50px !important;
  }
  .marB60_pc {
    margin-bottom: 60px !important;
  }
  .marB70_pc {
    margin-bottom: 70px !important;
  }
  .marB80_pc {
    margin-bottom: 80px !important;
  }
  .marB90_pc {
    margin-bottom: 90px !important;
  }
  /* - Left margin */
  .marL0_pc {
    margin-left: 0px !important;
  }
  .marL5_pc {
    margin-left: 5px !important;
  }
  .marL10_pc {
    margin-left: 10px !important;
  }
  .marL15_pc {
    margin-left: 15px !important;
  }
  .marL20_pc {
    margin-left: 20px !important;
  }
  .marL25_pc {
    margin-left: 25px !important;
  }
  .marL30_pc {
    margin-left: 30px !important;
  }
  .marL40_pc {
    margin-left: 40px !important;
  }
  .marL50_pc {
    margin-left: 50px !important;
  }
  .marL60_pc {
    margin-left: 60px !important;
  }
  .marL70_pc {
    margin-left: 70px !important;
  }
  .marL80_pc {
    margin-left: 80px !important;
  }
  .marL90_pc {
    margin-left: 90px !important;
  }
  /* - Right margin */
  .marR0_pc {
    margin-right: 0px !important;
  }
  .marR5_pc {
    margin-right: 5px !important;
  }
  .marR10_pc {
    margin-right: 10px !important;
  }
  .marR15_pc {
    margin-right: 15px !important;
  }
  .marR20_pc {
    margin-right: 20px !important;
  }
  .marR25_pc {
    margin-right: 25px !important;
  }
  .marR30_pc {
    margin-right: 30px !important;
  }
  .marR40_pc {
    margin-right: 40px !important;
  }
  .marR50_pc {
    margin-right: 50px !important;
  }
  .marR60_pc {
    margin-right: 60px !important;
  }
  .marR70_pc {
    margin-right: 70px !important;
  }
  .marR80_pc {
    margin-right: 80px !important;
  }
  .marR90_pc {
    margin-right: 90px !important;
  }
  /* -------------------------------------------------- */
  /* - All padding */
  .padA0_pc {
    padding: 0px !important;
  }
  .padA5_pc {
    padding: 5px !important;
  }
  .padA10_pc {
    padding: 10px !important;
  }
  .padA15_pc {
    padding: 15px !important;
  }
  .padA20_pc {
    padding: 20px !important;
  }
  .padA25_pc {
    padding: 25px !important;
  }
  .padA30_pc {
    padding: 30px !important;
  }
  .padA40_pc {
    padding: 40px !important;
  }
  .padA50_pc {
    padding: 50px !important;
  }
  .padA60_pc {
    padding: 60px !important;
  }
  .padA70_pc {
    padding: 70px !important;
  }
  .padA80_pc {
    padding: 80px !important;
  }
  .padA90_pc {
    padding: 90px !important;
  }
  /* - Top padding */
  .padT0_pc {
    padding-top: 0px !important;
  }
  .padT5_pc {
    padding-top: 5px !important;
  }
  .padT10_pc {
    padding-top: 10px !important;
  }
  .padT15_pc {
    padding-top: 15px !important;
  }
  .padT20_pc {
    padding-top: 20px !important;
  }
  .padT25_pc {
    padding-top: 25px !important;
  }
  .padT30_pc {
    padding-top: 30px !important;
  }
  .padT40_pc {
    padding-top: 40px !important;
  }
  .padT50_pc {
    padding-top: 50px !important;
  }
  .padT60_pc {
    padding-top: 60px !important;
  }
  .padT70_pc {
    padding-top: 70px !important;
  }
  .padT80_pc {
    padding-top: 80px !important;
  }
  .padT90_pc {
    padding-top: 90px !important;
  }
  /* - Bottom padding */
  .padB0_pc {
    padding-bottom: 0px !important;
  }
  .padB5_pc {
    padding-bottom: 5px !important;
  }
  .padB10_pc {
    padding-bottom: 10px !important;
  }
  .padB15_pc {
    padding-bottom: 15px !important;
  }
  .padB20_pc {
    padding-bottom: 20px !important;
  }
  .padB25_pc {
    padding-bottom: 25px !important;
  }
  .padB30_pc {
    padding-bottom: 30px !important;
  }
  .padB40_pc {
    padding-bottom: 40px !important;
  }
  .padB50_pc {
    padding-bottom: 50px !important;
  }
  .padB60_pc {
    padding-bottom: 60px !important;
  }
  .padB70_pc {
    padding-bottom: 70px !important;
  }
  .padB80_pc {
    padding-bottom: 80px !important;
  }
  .padB90_pc {
    padding-bottom: 90px !important;
  }
  /* - Left padding */
  .padL0_pc {
    padding-left: 0px !important;
  }
  .padL5_pc {
    padding-left: 5px !important;
  }
  .padL10_pc {
    padding-left: 10px !important;
  }
  .padL15_pc {
    padding-left: 15px !important;
  }
  .padL20_pc {
    padding-left: 20px !important;
  }
  .padL25_pc {
    padding-left: 25px !important;
  }
  .padL30_pc {
    padding-left: 30px !important;
  }
  .padL40_pc {
    padding-left: 40px !important;
  }
  .padL50_pc {
    padding-left: 50px !important;
  }
  .padL60_pc {
    padding-left: 60px !important;
  }
  .padL70_pc {
    padding-left: 70px !important;
  }
  .padL80_pc {
    padding-left: 80px !important;
  }
  .padL90_pc {
    padding-left: 90px !important;
  }
  /* - Right padding */
  .padR0_pc {
    padding-right: 0px !important;
  }
  .padR5_pc {
    padding-right: 5px !important;
  }
  .padR10_pc {
    padding-right: 10px !important;
  }
  .padR15_pc {
    padding-right: 15px !important;
  }
  .padR20_pc {
    padding-right: 20px !important;
  }
  .padR25_pc {
    padding-right: 25px !important;
  }
  .padR30_pc {
    padding-right: 30px !important;
  }
  .padR40_pc {
    padding-right: 40px !important;
  }
  .padR50_pc {
    padding-right: 50px !important;
  }
  .padR60_pc {
    padding-right: 60px !important;
  }
  .padR70_pc {
    padding-right: 70px !important;
  }
  .padR80_pc {
    padding-right: 80px !important;
  }
  .padR90_pc {
    padding-right: 90px !important;
  }
  /* - Font size */
  .txt10px_pc {
    font-size: 1rem !important;
  }
  .txt11px_pc {
    font-size: 1.1rem !important;
  }
  .txt12px_pc {
    font-size: 1.2rem !important;
  }
  .txt13px_pc {
    font-size: 1.3rem !important;
  }
  .txt14px_pc {
    font-size: 1.4rem !important;
  }
  .txt15px_pc {
    font-size: 1.5rem !important;
  }
  .txt16px_pc {
    font-size: 1.6rem !important;
  }
  .txt17px_pc {
    font-size: 1.7rem !important;
  }
  .txt18px_pc {
    font-size: 1.8rem !important;
  }
  .txt19px_pc {
    font-size: 1.9rem !important;
  }
  .txt20px_pc {
    font-size: 2rem !important;
  }
  .txt21px_pc {
    font-size: 2.1rem !important;
  }
  .txt22px_pc {
    font-size: 2.2rem !important;
  }
  .txt23px_pc {
    font-size: 2.3rem !important;
  }
  .txt24px_pc {
    font-size: 2.4rem !important;
  }
  .txt25px_pc {
    font-size: 2.5rem !important;
  }
  .txt26px_pc {
    font-size: 2.6rem !important;
  }
  /* Float setting */
  .flt-L_pc {
    float: left !important;
  }
  .flt-R_pc {
    float: right !important;
  }
  /* Align setting */
  .ali-L_pc {
    text-align: left !important;
  }
  .ali-C_pc {
    text-align: center !important;
  }
  .ali-R_pc {
    text-align: right !important;
  }
  .SpNodisplay {
    display: inherit !important;
  }
  .PcNodisplay {
    display: none !important;
  }
}
@media screen and (max-width: 1024px) {
  /* -------------------------------------------------- */
  /* block item Width */
  .wid10Per_sp {
    width: 10% !important;
  }
  .wid15Per_sp {
    width: 15% !important;
  }
  .wid20Per_sp {
    width: 20% !important;
  }
  .wid25Per_sp {
    width: 25% !important;
  }
  .wid30Per_sp {
    width: 30% !important;
  }
  .wid35Per_sp {
    width: 35% !important;
  }
  .wid40Per_sp {
    width: 40% !important;
  }
  .wid45Per_sp {
    width: 45% !important;
  }
  .wid50Per_sp {
    width: 50% !important;
  }
  .wid55Per_sp {
    width: 55% !important;
  }
  .wid60Per_sp {
    width: 60% !important;
  }
  .wid65Per_sp {
    width: 65% !important;
  }
  .wid70Per_sp {
    width: 70% !important;
  }
  .wid75Per_sp {
    width: 75% !important;
  }
  .wid80Per_sp {
    width: 80% !important;
  }
  .wid85Per_sp {
    width: 85% !important;
  }
  .wid90Per_sp {
    width: 90% !important;
  }
  .wid95Per_sp {
    width: 95% !important;
  }
  .wid100Per_sp {
    width: 100% !important;
  }
  .wid50_sp {
    width: 50px !important;
  }
  .wid100_sp {
    width: 100px !important;
  }
  .wid150_sp {
    width: 150px !important;
  }
  .wid200_sp {
    width: 200px !important;
  }
  .wid250_sp {
    width: 250px !important;
  }
  .wid300_sp {
    width: 300px !important;
  }
  .wid350_sp {
    width: 350px !important;
  }
  .wid400_sp {
    width: 400px !important;
  }
  .wid450_sp {
    width: 450px !important;
  }
  .wid500_sp {
    width: 500px !important;
  }
  .wid550_sp {
    width: 550px !important;
  }
  .wid600_sp {
    width: 600px !important;
  }
  .wid650_sp {
    width: 650px !important;
  }
  .wid700_sp {
    width: 700px !important;
  }
  .wid750_sp {
    width: 750px !important;
  }
  .wid800_sp {
    width: 800px !important;
  }
  .wid850_sp {
    width: 850px !important;
  }
  .wid900_sp {
    width: 900px !important;
  }
  .wid950_sp {
    width: 950px !important;
  }
  /* -------------------------------------------------- */
  /* block item Margin */
  /* - All margin */
  .marA0_sp {
    margin: 0px !important;
  }
  .marA5_sp {
    margin: 5px !important;
  }
  .marA10_sp {
    margin: 10px !important;
  }
  .marA15_sp {
    margin: 15px !important;
  }
  .marA20_sp {
    margin: 20px !important;
  }
  .marA25_sp {
    margin: 25px !important;
  }
  .marA30_sp {
    margin: 30px !important;
  }
  .marA40_sp {
    margin: 40px !important;
  }
  .marA50_sp {
    margin: 50px !important;
  }
  .marA60_sp {
    margin: 60px !important;
  }
  .marA70_sp {
    margin: 70px !important;
  }
  .marA80_sp {
    margin: 80px !important;
  }
  .marA90_sp {
    margin: 90px !important;
  }
  /* - Top margin */
  .marT0_sp {
    margin-top: 0px !important;
  }
  .marT5_sp {
    margin-top: 5px !important;
  }
  .marT10_sp {
    margin-top: 10px !important;
  }
  .marT15_sp {
    margin-top: 15px !important;
  }
  .marT20_sp {
    margin-top: 20px !important;
  }
  .marT25_sp {
    margin-top: 25px !important;
  }
  .marT30_sp {
    margin-top: 30px !important;
  }
  .marT40_sp {
    margin-top: 40px !important;
  }
  .marT50_sp {
    margin-top: 50px !important;
  }
  .marT60_sp {
    margin-top: 60px !important;
  }
  .marT70_sp {
    margin-top: 70px !important;
  }
  .marT80_sp {
    margin-top: 80px !important;
  }
  .marT90_sp {
    margin-top: 90px !important;
  }
  .marT120_sp {
    margin-top: 120px !important;
  }
  /* - Bottom margin */
  .marB0_sp {
    margin-bottom: 0px !important;
  }
  .marB5_sp {
    margin-bottom: 5px !important;
  }
  .marB10_sp {
    margin-bottom: 10px !important;
  }
  .marB15_sp {
    margin-bottom: 15px !important;
  }
  .marB20_sp {
    margin-bottom: 20px !important;
  }
  .marB25_sp {
    margin-bottom: 25px !important;
  }
  .marB30_sp {
    margin-bottom: 30px !important;
  }
  .marB40_sp {
    margin-bottom: 40px !important;
  }
  .marB50_sp {
    margin-bottom: 50px !important;
  }
  .marB60_sp {
    margin-bottom: 60px !important;
  }
  .marB70_sp {
    margin-bottom: 70px !important;
  }
  .marB80_sp {
    margin-bottom: 80px !important;
  }
  .marB90_sp {
    margin-bottom: 90px !important;
  }
  /* - Left margin */
  .marL0_sp {
    margin-left: 0px !important;
  }
  .marL5_sp {
    margin-left: 5px !important;
  }
  .marL10_sp {
    margin-left: 10px !important;
  }
  .marL15_sp {
    margin-left: 15px !important;
  }
  .marL20_sp {
    margin-left: 20px !important;
  }
  .marL25_sp {
    margin-left: 25px !important;
  }
  .marL30_sp {
    margin-left: 30px !important;
  }
  .marL40_sp {
    margin-left: 40px !important;
  }
  .marL50_sp {
    margin-left: 50px !important;
  }
  .marL60_sp {
    margin-left: 60px !important;
  }
  .marL70_sp {
    margin-left: 70px !important;
  }
  .marL80_sp {
    margin-left: 80px !important;
  }
  .marL90_sp {
    margin-left: 90px !important;
  }
  /* - Right margin */
  .marR0_sp {
    margin-right: 0px !important;
  }
  .marR5_sp {
    margin-right: 5px !important;
  }
  .marR10_sp {
    margin-right: 10px !important;
  }
  .marR15_sp {
    margin-right: 15px !important;
  }
  .marR20_sp {
    margin-right: 20px !important;
  }
  .marR25_sp {
    margin-right: 25px !important;
  }
  .marR30_sp {
    margin-right: 30px !important;
  }
  .marR40_sp {
    margin-right: 40px !important;
  }
  .marR50_sp {
    margin-right: 50px !important;
  }
  .marR60_sp {
    margin-right: 60px !important;
  }
  .marR70_sp {
    margin-right: 70px !important;
  }
  .marR80_sp {
    margin-right: 80px !important;
  }
  .marR90_sp {
    margin-right: 90px !important;
  }
  /* -------------------------------------------------- */
  /* - All padding */
  .padA0_sp {
    padding: 0px !important;
  }
  .padA5_sp {
    padding: 5px !important;
  }
  .padA10_sp {
    padding: 10px !important;
  }
  .padA15_sp {
    padding: 15px !important;
  }
  .padA20_sp {
    padding: 20px !important;
  }
  .padA25_sp {
    padding: 25px !important;
  }
  .padA30_sp {
    padding: 30px !important;
  }
  .padA40_sp {
    padding: 40px !important;
  }
  .padA50_sp {
    padding: 50px !important;
  }
  .padA60_sp {
    padding: 60px !important;
  }
  .padA70_sp {
    padding: 70px !important;
  }
  .padA80_sp {
    padding: 80px !important;
  }
  .padA90_sp {
    padding: 90px !important;
  }
  /* - Top padding */
  .padT0_sp {
    padding-top: 0px !important;
  }
  .padT5_sp {
    padding-top: 5px !important;
  }
  .padT10_sp {
    padding-top: 10px !important;
  }
  .padT15_sp {
    padding-top: 15px !important;
  }
  .padT20_sp {
    padding-top: 20px !important;
  }
  .padT25_sp {
    padding-top: 25px !important;
  }
  .padT30_sp {
    padding-top: 30px !important;
  }
  .padT40_sp {
    padding-top: 40px !important;
  }
  .padT50_sp {
    padding-top: 50px !important;
  }
  .padT60_sp {
    padding-top: 60px !important;
  }
  .padT70_sp {
    padding-top: 70px !important;
  }
  .padT80_sp {
    padding-top: 80px !important;
  }
  .padT90_sp {
    padding-top: 90px !important;
  }
  /* - Bottom padding */
  .padB0_sp {
    padding-bottom: 0px !important;
  }
  .padB5_sp {
    padding-bottom: 5px !important;
  }
  .padB10_sp {
    padding-bottom: 10px !important;
  }
  .padB15_sp {
    padding-bottom: 15px !important;
  }
  .padB20_sp {
    padding-bottom: 20px !important;
  }
  .padB25_sp {
    padding-bottom: 25px !important;
  }
  .padB30_sp {
    padding-bottom: 30px !important;
  }
  .padB40_sp {
    padding-bottom: 40px !important;
  }
  .padB50_sp {
    padding-bottom: 50px !important;
  }
  .padB60_sp {
    padding-bottom: 60px !important;
  }
  .padB70_sp {
    padding-bottom: 70px !important;
  }
  .padB80_sp {
    padding-bottom: 80px !important;
  }
  .padB90_sp {
    padding-bottom: 90px !important;
  }
  /* - Left padding */
  .padL0_sp {
    padding-left: 0px !important;
  }
  .padL5_sp {
    padding-left: 5px !important;
  }
  .padL10_sp {
    padding-left: 10px !important;
  }
  .padL15_sp {
    padding-left: 15px !important;
  }
  .padL20_sp {
    padding-left: 20px !important;
  }
  .padL25_sp {
    padding-left: 25px !important;
  }
  .padL30_sp {
    padding-left: 30px !important;
  }
  .padL40_sp {
    padding-left: 40px !important;
  }
  .padL50_sp {
    padding-left: 50px !important;
  }
  .padL60_sp {
    padding-left: 60px !important;
  }
  .padL70_sp {
    padding-left: 70px !important;
  }
  .padL80_sp {
    padding-left: 80px !important;
  }
  .padL90_sp {
    padding-left: 90px !important;
  }
  /* - Right padding */
  .padR0_sp {
    padding-right: 0px !important;
  }
  .padR5_sp {
    padding-right: 5px !important;
  }
  .padR10_sp {
    padding-right: 10px !important;
  }
  .padR15_sp {
    padding-right: 15px !important;
  }
  .padR20_sp {
    padding-right: 20px !important;
  }
  .padR25_sp {
    padding-right: 25px !important;
  }
  .padR30_sp {
    padding-right: 30px !important;
  }
  .padR40_sp {
    padding-right: 40px !important;
  }
  .padR50_sp {
    padding-right: 50px !important;
  }
  .padR60_sp {
    padding-right: 60px !important;
  }
  .padR70_sp {
    padding-right: 70px !important;
  }
  .padR80_sp {
    padding-right: 80px !important;
  }
  .padR90_sp {
    padding-right: 90px !important;
  }
  /* - Font size */
  .txt10px_sp {
    font-size: 1rem !important;
  }
  .txt11px_sp {
    font-size: 1.1rem !important;
  }
  .txt12px_sp {
    font-size: 1.2rem !important;
  }
  .txt13px_sp {
    font-size: 1.3rem !important;
  }
  .txt14px_sp {
    font-size: 1.4rem !important;
  }
  .txt15px_sp {
    font-size: 1.5rem !important;
  }
  .txt16px_sp {
    font-size: 1.6rem !important;
  }
  .txt17px_sp {
    font-size: 1.7rem !important;
  }
  .txt18px_sp {
    font-size: 1.8rem !important;
  }
  .txt19px_sp {
    font-size: 1.9rem !important;
  }
  .txt20px_sp {
    font-size: 2rem !important;
  }
  .txt21px_sp {
    font-size: 2.1rem !important;
  }
  .txt22px_sp {
    font-size: 2.2rem !important;
  }
  .txt23px_sp {
    font-size: 2.3rem !important;
  }
  .txt24px_sp {
    font-size: 2.4rem !important;
  }
  .txt25px_sp {
    font-size: 2.5rem !important;
  }
  .txt26px_sp {
    font-size: 2.6rem !important;
  }
  /* Float setting */
  .flt-L_sp {
    float: left !important;
  }
  .flt-R_sp {
    float: right !important;
  }
  /* Align setting */
  .ali-L_sp {
    text-align: left !important;
  }
  .ali-C_sp {
    text-align: center !important;
  }
  .ali-R_sp {
    text-align: right !important;
  }
  .SpNodisplay {
    display: none !important;
  }
  .PcNodisplay {
    display: inherit !important;
  }
}
.Tabdisplay {
  display: none !important;
}

@media screen and (max-width: 1024px) {
  .Tabdisplay {
    display: block !important;
  }
}
.TabNodisplay {
  display: block;
}

@media screen and (max-width: 1024px) {
  .TabNodisplay {
    display: none !important;
  }
}
.Spdisplay {
  display: none;
}

@media screen and (max-width: 599px) {
  .Spdisplay {
    display: block !important;
  }
}
/*! destyle.css v4.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model and set borders */
/* ============================================ */
*,
::before,
::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-style: solid;
  border-width: 0;
  overflow-wrap: break-word;
  /* その上で、下記のいずれかを指定する。overflow-wrapと併せて指定しましょう */
  word-break: break-all;
  letter-spacing: 0.03em;
}

/* Document */
/* ============================================ */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -webkit-tap-highlight-color: transparent;
  /* 3*/
}

/* Sections */
/* ============================================ */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/* Vertical rhythm */
/* ============================================ */
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

/* Headings */
/* ============================================ */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
  margin: 0;
}

/* Lists (enumeration) */
/* ============================================ */
ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Lists (definition) */
/* ============================================ */
dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Grouping content */
/* ============================================ */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
  border-top-width: 1px;
  margin: 0;
  clear: both;
  color: inherit;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: inherit;
  /* 2 */
}

address {
  font-style: inherit;
}

/* Text-level semantics */
/* ============================================ */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
  text-decoration: none;
  color: inherit;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: inherit;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 100%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Replaced content */
/* ============================================ */
/**
 * Prevent vertical alignment issues.
 */
svg,
img,
embed,
object,
iframe {
  vertical-align: bottom;
}

/* Forms */
/* ============================================ */
/**
 * Reset form fields to make them styleable.
 * 1. Make form elements stylable across systems iOS especially.
 * 2. Inherit text-transform from parent.
 */
button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  border-radius: 0;
  text-align: inherit;
  text-transform: inherit;
}

/**
 * Correct cursors for clickable elements.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
}

button:disabled,
[type=button]:disabled,
[type=reset]:disabled,
[type=submit]:disabled {
  cursor: default;
}

/**
 * Improve outlines for Firefox and unify style with input elements & buttons.
 */
:-moz-focusring {
  outline: auto;
}

select:disabled {
  opacity: inherit;
}

/**
 * Remove padding
 */
option {
  padding: 0;
}

/**
 * Reset to invisible
 */
fieldset {
  margin: 0;
  padding: 0;
  min-width: 0;
}

legend {
  padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * Correct the outline style in Safari.
 */
[type=search] {
  outline-offset: -2px;
  /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Fix font inheritance.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/**
 * Fix appearance for Firefox
 */
[type=number] {
  -moz-appearance: textfield;
}

/**
 * Clickable labels
 */
label[for] {
  cursor: pointer;
}

/* Interactive */
/* ============================================ */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/*
 * Remove outline for editable content.
 */
[contenteditable]:focus {
  outline: auto;
}

/* Tables */
/* ============================================ */
/**
1. Correct table border color inheritance in all Chrome and Safari.
*/
table {
  border-color: inherit;
  /* 1 */
  border-collapse: collapse;
}

caption {
  text-align: left;
}

td,
th {
  vertical-align: top;
  padding: 0;
}

th {
  text-align: left;
  font-weight: bold;
}

/*
 * footer
 * -------------------------------------------------------------------
 */
/*
 * header
 * -------------------------------------------------------------------
 */
.header {
  position: relative;
  padding: 24px;
}

.header__wrapper {
  position: relative;
  max-width: 1100px;
  margin: 0 auto;
}

.header__logo {
  max-width: 353px;
  height: auto;
  width: 100%;
}

@media screen and (max-width: 1024px) {
  .header__logo {
    width: 45%;
  }
}
@media screen and (max-width: 599px) {
  .header__logo {
    width: 73%;
  }
}
.header__logo a > img {
  height: 100%;
  width: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  vertical-align: middle;
}

.header__search-btn {
  position: fixed;
  z-index: 999;
  display: block;
  top: 26px;
  right: 36px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 60px;
  width: 60px;
  border-radius: 99999px;
  background-color: #459fdb;
}
.header__search-btn--animation::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  box-sizing: border-box;
  pointer-events: none;
  animation: pulsate 5s 4s linear forwards;
  background-color: #459fdb;
  z-index: -1;
}
@keyframes pulsate {
  0% {
    transform: scale(1);
    opacity: 1;
  }
  25% {
    transform: scale(2);
    opacity: 0;
  }
  50% {
    transform: scale(1);
    opacity: 0;
  }
  75% {
    transform: scale(1);
    opacity: 1;
  }
  100% {
    transform: scale(2);
    opacity: 0;
  }
}

@media screen and (max-width: 1024px) {
  .header__search-btn {
    top: initial;
    bottom: 48px;
  }
}
@media screen and (max-width: 599px) {
  .header__search-btn {
    height: 50px;
    width: 50px;
    right: 16px;
  }
}
.header__search-btn > img {
  height: 36px;
  width: 36px;
  -o-object-fit: contain;
  object-fit: contain;
  filter: brightness(0) invert(1);
}

@media screen and (max-width: 599px) {
  .header__search-btn > img {
    height: 28px;
    width: 28px;
  }
}
.archive__ul {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
  grid-gap: 60px 40px;
  gap: 60px 40px;
  width: 100%;
}

.archive__ul-li {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.archive__ul-li a {
  display: block;
}

.archive__ul-li a:hover {
  opacity: 0.7;
}

@media screen and (max-width: 1024px) {
  .archive__ul {
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 48px 24px;
    gap: 48px 24px;
  }
}
@media screen and (max-width: 599px) {
  .archive__ul {
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 24px 16px;
    gap: 24px 16px;
  }
}
.archive__pht {
  padding-top: 64.7058823529%;
  position: relative;
  background-color: #fff;
}

.archive__pht > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  border: 1px solid #bcbcbc;
}

.archive__box {
  margin-top: 10px;
}

.archive__time {
  font-size: clamp(1.2rem, 0.9163120567rem + 0.4728132388vw, 1.4rem);
}

.archive__title {
  font-size: clamp(1.4rem, 1.1163120567rem + 0.4728132388vw, 1.6rem);
}

.archive__category {
  font-size: clamp(1.2rem, 0.9163120567rem + 0.4728132388vw, 1.4rem);
}

.archive__box:not(:has(time)) > h2 {
  padding-right: 1.6em;
}

.search {
  position: fixed;
  background-color: #fff;
  min-height: 100vh;
  width: 100%;
  z-index: 99;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow-y: auto;
  display: none;
}

.search__inner {
  max-width: 1400px;
  width: 93%;
  margin: 0 auto 56px;
  position: relative;
}

.search__wrapper {
  position: relative;
  padding: 32px;
}

.search__wrapper:not(:first-child) {
  margin-top: 12px;
}

.search__box {
  max-width: 1024px;
  margin: 0 auto;
  align-items: center;
  display: flex;
  flex-direction: column;
}
.search__box.search-client, .search__box.search-list {
  display: none;
}
.search__box.search-client .search__title, .search__box.search-list .search__title {
  width: 350px;
  justify-content: flex-start;
  margin-bottom: 20px;
}
.search__box.search-client input, .search__box.search-list input {
  background-color: #fff;
  padding: 7px 20px;
  font-size: 1.4rem;
  border: 1px solid #333;
  width: 350px;
}
.search__box.search-client input::placeholder, .search__box.search-list input::placeholder {
  color: #888;
}
.search__box.search-client select, .search__box.search-list select {
  width: 350px;
  padding: 10px 18px;
  font-size: 1.4rem;
  border: 1px solid #333;
  background-color: #fff;
  user-select: none;
}
.search__box.search-client select:focus, .search__box.search-list select:focus {
  outline: none;
}
.search__box.search-client select option, .search__box.search-list select option {
  margin-bottom: 4px;
}
.search__box.search-client .select-message, .search__box.search-list .select-message {
  width: 350px;
  margin-bottom: 8px;
  font-size: 1.4rem;
  color: #45371b;
  user-select: none;
}
.search__box.search-client.active, .search__box.search-list.active {
  display: flex;
}
.search__box.search-list .search__title {
  margin-bottom: 20px;
}
.search__box.search-list .search-list__input {
  box-sizing: border-box;
  position: relative;
  display: flex;
  align-items: center;
  width: 350px;
  padding: 7px 27px 7px 20px;
  font-size: 1.4rem;
  border: 1px solid #333;
  background-color: #fff;
}
.search__box.search-list .search-list__input img {
  width: 2rem;
  margin-right: 1rem;
}
.search__box.search-list .search-list__input input {
  border: none;
  padding: 0;
}
.search__box.search-list .search-list__input input:focus {
  outline: none;
}
.search__box.search-list .search-list__input::before {
  position: absolute;
  content: "";
  top: 50%;
  right: 1rem;
  transform: translateY(-70%) rotate(45deg);
  width: 0.7rem;
  height: 0.7rem;
  border-right: 0.15rem solid #999;
  border-bottom: 0.15rem solid #999;
}
.search__box.search-list .search-list__input::after {
  position: absolute;
  content: "";
  top: 50%;
  right: 2.6rem;
  transform: translateY(-50%);
  width: 0.1rem;
  height: 80%;
  background-color: #999;
}
.search__box.search-list #client-list {
  overflow-y: scroll;
  display: none;
  width: 350px;
  max-height: 250px;
  margin-top: -0.1rem;
  background-color: #fff;
  border: 1px solid #333;
}
.search__box.search-list #client-list li.client-item {
  font-size: 1.4rem;
  padding: 5px 20px;
  font-weight: 400;
  user-select: none;
}
.search__box.search-list #client-list li.client-item.active {
  background-color: rgba(51, 203, 255, 0.7098039216);
}

.switch-search-type {
  z-index: 99;
  position: absolute;
  top: 110px;
  left: 50%;
  transform: translateX(calc(-50% - 260px));
  font-size: 1.4rem;
}
.switch-search-type .search-client,
.switch-search-type .search-list {
  position: relative;
  display: block;
}
.switch-search-type .search-client::before, .switch-search-type .search-client::after,
.switch-search-type .search-list::before,
.switch-search-type .search-list::after {
  position: absolute;
  content: "";
  top: 50%;
  left: -18%;
  transform: translate(-50%, -50%);
  display: block;
  border-radius: 50%;
}
.switch-search-type .search-client::before,
.switch-search-type .search-list::before {
  width: 18px;
  height: 18px;
  border: 1px solid #333;
}
.switch-search-type .search-client::after,
.switch-search-type .search-list::after {
  display: none;
  width: 8px;
  height: 8px;
  background-color: #333;
}

input#search-client:checked ~ .switch-search-type .search-client::after {
  display: block;
}

input#search-list:checked ~ .switch-search-type .search-list::after {
  display: block;
}

.search__title {
  font-size: clamp(2.4rem, 1.8326241135rem + 0.9456264775vw, 2.8rem);
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

@media screen and (max-width: 599px) {
  .search__title {
    font-size: clamp(1.8rem, 1.5993311037rem + 0.6688963211vw, 2rem);
  }
}
.search__title > img {
  height: auto;
  width: 32px;
  margin-right: 12px;
  position: relative;
  top: 2px;
}

@media screen and (max-width: 599px) {
  .search__title > img {
    width: 24px;
    margin-right: 8px;
  }
}
.search-category__sub {
  font-size: 1.4rem;
  text-align: right;
  padding: 8px 0;
}

@media screen and (max-width: 1024px) {
  .search-category__sub {
    text-align: center;
    padding: 0;
  }
}
.search-category__ul {
  display: grid;
  grid-template-columns: 88px 1fr 2fr 2fr;
  gap: 48px 14px;
  width: 100%;
  margin-top: 40px;
}

@media screen and (max-width: 1024px) {
  .search-category__ul {
    grid-template-columns: 1fr;
    gap: 24px 12px;
  }
  .search-category__ul > li:first-child {
    grid-column: 1/-1;
  }
  .search-category__ul > li:not(:first-child) {
    grid-template-columns: 1fr 2fr 2fr;
  }
}
.search-category__btn {
  position: relative;
  font-size: clamp(1.6rem, 1.3163120567rem + 0.4728132388vw, 1.8rem);
  background-color: #333333;
  color: white;
  border: 1px solid #333;
  width: 100%;
  padding: 14px 10px;
  border-radius: 10px;
  text-align: center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.search-category__btn:hover {
  opacity: 0.7;
}

.search-category__btn.addSelect {
  background-color: #666666;
}

.search-category__btn.addSelectAll {
  background-color: transparent;
  color: #333;
}

.search-category__btn.addSelectAll::after {
  border: 1px solid #333 !important;
}

.search-category__btn::after {
  content: "+";
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  top: 50%;
  right: 4px;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  border: 1px solid #fff;
  height: 22px;
  width: 22px;
  border-radius: 9999px;
  font-size: 1.4rem;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.search-category__btn.active::after {
  content: "";
}

.search-category__btn.active::before {
  content: "";
  position: absolute;
  display: block;
  top: 50%;
  right: 18px;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  height: 1px;
  width: 8px;
  background: #fff;
}

.search-category__btn.active.addSelectAll::before {
  background: #333;
}

.search-category__select-btn{
  display: flex;
  justify-content: flex-end;
  margin-top: 8px;
  font-size: 1.2rem;
  text-decoration: underline;
  width: 100%;
  transition: .3s;
}

.search-category__select-btn:hover{
  opacity: .7;
}

.search-category__toggle {
  display: none;
}

.search-category__items {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 8px;
  margin-top: 8px;
}

.search-category__items--real_ad {
  grid-template-columns: 1fr;
}

@media screen and (max-width: 1024px) {
  .search-category__items--real_ad {
    grid-template-columns: repeat(2, 1fr);
  }
}
.search-category__item {
  font-size: clamp(1.4rem, 1.1163120567rem + 0.4728132388vw, 1.6rem);
  background-color: #333333;
  border: 1px solid #333;
  color: white;
  padding: 10px 8px;
  border-radius: 5px;
  text-align: center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.search-category__item:hover {
  opacity: 0.7;
}

.search-category__item.unChecked {
  background-color: transparent;
  color: #333;
}

.search-tag__ul {
  display: grid;
  grid-template-columns: 88px 1fr;
  grid-gap: 48px 24px;
  width: 100%;
  margin-top: 32px;
}

@media screen and (max-width: 1024px) {
  .search-tag__ul {
    grid-template-columns: 1fr;
    gap: 24px 12px;
  }
}
.search-tag__items {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(145px, 1fr));
  gap: 8px;
}

.search-tag__item {
  border: 1px solid #333;
  text-align: center;
  width: 100%;
  font-size: clamp(1.2rem, 1.0581560284rem + 0.2364066194vw, 1.3rem);
  border-radius: 9999px;
  padding: 10px 4px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.search-tag__item:hover {
  opacity: 0.7;
}

.search-tag__item.checked {
  background-color: #333;
  color: #fff;
}

.search-submit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: 48px;
}

.search-submit__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #333;
  color: #fff;
  font-size: clamp(1.6rem, 1.3163120567rem + 0.4728132388vw, 1.8rem);
  max-width: 250px;
  width: 100%;
  border-radius: 5px;
  padding: 17px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  border: 1px solid #333;
}

.search-submit__btn > img {
  height: 25px;
  width: 25px;
  -o-object-fit: contain;
  object-fit: contain;
  -webkit-filter: brightness(0) invert(1);
  filter: brightness(0) invert(1);
  margin-left: 4px;
}

.search-submit__btn:hover {
  background-color: transparent;
  color: #333;
}

.search-submit__btn:hover > img {
  -webkit-filter: initial;
  filter: initial;
}

.search-result {
  padding: 32px;
  width: 100%;
  -webkit-box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
  background-color: #fff;
  margin-bottom: 56px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.search-result .search-result__wrapper {
  width: calc(100% - 100px);
}

.search-result .search-result__wrapper > p {
  margin-top: 1.6rem;
  font-size: 1.5rem;
}
.search-result .search-result__wrapper > p span {
  margin-right: 0.5rem;
  font-size: 2rem;
  font-weight: 500;
}

@media screen and (max-width: 599px) {
  .search-result {
    padding: 16px;
    margin-bottom: 32px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
}
.search-result__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
}

.search-result__item:not(:first-child) {
  margin-top: 12px;
}

.search-result__item span {
  font-size: clamp(1.4rem, 1.1163120567rem + 0.4728132388vw, 1.6rem);
  white-space: nowrap;
  min-width: 120px;
}

@media screen and (max-width: 599px) {
  .search-result__item span {
    margin-right: 8px;
    min-width: initial;
    margin-right: 20px;
  }
}
.search-result__client {
  font-size: clamp(1.8rem, 1.5163120567rem + 0.4728132388vw, 2rem);
}

.search-result__tag {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 0.3rem;
}
.search-result__tag::before {
  content: "：";
  display: inline-block;
  font-size: clamp(1.4rem, 1.1163120567rem + 0.4728132388vw, 1.6rem);
  position: absolute;
  left: -16px;
  top: -3px;
}

.search-result__item > p {
  position: relative;
  margin-top: 0.3rem;
  font-size: 1.2rem;
}
.search-result__item > p::before {
  content: "：";
  display: inline-block;
  font-size: clamp(1.4rem, 1.1163120567rem + 0.4728132388vw, 1.6rem);
  position: absolute;
  left: -16px;
  top: -3px;
}

.search-result__tag > li {
  font-size: 1.2rem;
}

.search-result__tag > li:not(:last-child) {
  margin-right: 12px;
}

.search-result__btn {
  width: 80px;
  padding: 10px;
  border: 1px solid #333;
  border-radius: 5px;
  font-size: 1.2rem;
  text-align: center;
  cursor: pointer;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.search-result__btn:hover {
  background-color: #333;
  color: #fff;
}

@media screen and (max-width: 599px) {
  .search-result__btn {
    margin-top: 24px;
  }
}
.single__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

@media screen and (max-width: 599px) {
  .single__wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
.single__item {
  width: calc(50% - 24px);
}

@media screen and (max-width: 599px) {
  .single__item {
    display: contents;
  }
}
@media screen and (max-width: 599px) {
  .single__catch {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }
}
.single__thumbnail {
  position: relative;
  padding-top: 64.7058823529%;
  margin-bottom: 24px;
  background-color: #fff;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.single__thumbnail:hover {
  opacity: 0.7;
}

.single__thumbnail > a > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  border: 1px solid #bcbcbc;
}

@media screen and (max-width: 599px) {
  .single__thumbnail {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    margin-top: 24px;
    margin-bottom: 0;
  }
}
.single__ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 16px;
}

@media screen and (max-width: 599px) {
  .single__ul {
    -webkit-box-ordinal-group: 5;
    -ms-flex-order: 4;
    order: 4;
  }
}
.single__pht {
  max-width: 550px;
  width: auto;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.single__pht:hover {
  opacity: 0.7;
}

.single__pht > a > img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  border: 1px solid #bcbcbc;
}

.single__pht > div > img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  border: 1px solid #bcbcbc;
  cursor: pointer;
}

.single__box {
  margin-top: 10px;
}

.single__time {
  font-size: clamp(1.4rem, 1.1163120567rem + 0.4728132388vw, 1.6rem);
}

.single__title {
  font-size: clamp(1.8rem, 0.9489361702rem + 1.4184397163vw, 2.4rem);
}

.single__category {
  font-size: clamp(1.4rem, 1.1163120567rem + 0.4728132388vw, 1.6rem);
}

.single__contents {
  margin-top: 50px;
}

@media screen and (max-width: 599px) {
  .single__contents {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3;
    margin-top: 24px;
  }
}
.single__box {
  margin-bottom: 30px;
  padding-bottom: 30px;
}

.single__box:not(:last-child) {
  border-bottom: 1px solid #bcbcbc;
}

.single dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: clamp(1.4rem, 1.1163120567rem + 0.4728132388vw, 1.6rem);
  margin-top: 10px;
}

@media screen and (max-width: 599px) {
  .single dl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
.single dt {
  width: 30%;
  min-width: 120px;
  max-width: 120px;
}

@media screen and (max-width: 599px) {
  .single dt {
    width: 100%;
  }
}
.single dd {
  width: 70%;
}

@media screen and (max-width: 599px) {
  .single dd {
    width: 100%;
  }
}
.single__content {
  font-size: clamp(1.4rem, 1.1163120567rem + 0.4728132388vw, 1.6rem);
}

/*-----------------------------------
 フロントページ
-----------------------------------*/
.home .main {
  width: calc(100% - 3rem);
  max-width: 52rem;
  margin: 10rem auto 10rem;
}
.home .main h2 {
  margin-bottom: 3rem;
  font-size: 3.4rem;
  text-align: center;
}
.home .main form {
  padding: 4.7rem 8rem 3.8rem;
  box-shadow: 0 0.2rem 0.8rem rgba(0, 0, 0, 0.2);
}
.home .main form .login-err-message {
  margin-bottom: 1.4rem;
  font-size: 1.6rem;
  color: red;
}
.home .main form label {
  position: relative;
  display: block;
  padding: 0.6rem 0.6rem 0.7rem 3.8rem;
  border: 0.1rem solid #333;
  border-radius: 0.4rem;
  background-color: #fff;
}
.home .main form label::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 1rem;
  transform: translateY(-50%);
  width: 2rem;
  height: 2rem;
}
.home .main form label #username,
.home .main form label #password {
  display: block;
  width: 100%;
  padding: 0 0.5rem 0 1rem;
  font-size: 1.8rem;
}
.home .main form label:nth-of-type(1) {
  margin-bottom: 2rem;
}
.home .main form label:nth-of-type(1)::before {
  background: url(../img/icon-user.png) no-repeat center/contain;
}
.home .main form label:nth-of-type(2) {
  margin-bottom: 3rem;
}
.home .main form label:nth-of-type(2)::before {
  background: url(../img/icon-key.png) no-repeat center/contain;
}
.home .main form input[type=submit] {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  padding: 0.5rem 1rem;
  font-size: 2rem;
  font-weight: 700;
  color: #fff;
  background-color: #333;
  border-radius: 0.5rem;
  cursor: pointer;
}

/*-----------------------------------
 詳細ページ
-----------------------------------*/
.btn-back {
  position: relative;
  margin-bottom: 2rem;
  padding-left: 1.4rem;
  font-size: 1.4rem;
  cursor: pointer;
  display: inline-block;
  padding: 6px 12px 6px 32px;
  border: 1px solid #000;
  border-radius: 5px;
  transition: 0.3s;
}
.btn-back:hover {
  opacity: 0.7;
}
.btn-back::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 16px;
  transform: translateY(-50%) rotate(45deg);
  width: 0.9rem;
  height: 0.9rem;
  border-left: 0.2rem solid #333;
  border-bottom: 0.2rem solid #333;
}

/*-----------------------------------
 実績アーカイブページ
-----------------------------------*/
.post-type-archive-achievement .favorite-list-name {
  margin-bottom: 2rem;
  font-size: 2rem;
}
.post-type-archive-achievement .no-works {
  font-size: 16px;
}
.post-type-archive-achievement .main .main-inner {
  margin-bottom: 100px;
}
.post-type-archive-achievement .main .main-inner .archive__ul .archive__ul-li .archive__box {
  position: relative;
}
.post-type-archive-achievement .main .main-inner .archive__ul .archive__ul-li .archive__box .favorite {
  position: absolute;
  content: "";
  top: 0;
  right: 0;
  width: 2rem;
  height: 2rem;
  background: url(../img/icon-favorite-off.png) no-repeat center/contain;
  cursor: pointer;
}
.post-type-archive-achievement .main .main-inner .archive__ul .archive__ul-li .archive__box .favorite.favorite-active {
  background: url(../img/icon-favorite-on.png) no-repeat center/contain;
}

#favorite-dialog {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  width: 40rem;
  height: 25rem;
  padding: 2rem;
  background-color: #fff;
  border-radius: 1rem;
  border: 0.1rem solid #333;
  z-index: 9999999;
}
#favorite-dialog label {
  align-self: flex-end;
  width: 7.5rem;
  font-size: 1.4rem;
}
#favorite-dialog input {
  align-self: flex-end;
  width: calc(90% - 7.5rem);
  padding: 4px 10px;
  font-size: 1.2rem;
  border: 0.1rem solid #333;
}
#favorite-dialog button {
  position: relative;
  width: 35%;
  font-size: 1.4rem;
  text-align: center;
}
#favorite-dialog button::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 8rem;
  height: 120%;
  border: 0.1rem solid #333;
  border-radius: 0.5rem;
}

#favorite-dialog.favorite-dialog-2 {
  overflow-y: auto;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 50rem;
  height: fit-content;
  max-height: 50vh;
  padding: 2rem;
  background-color: #fff;
  border-radius: 1rem;
  border: 0.1rem solid #333;
}
#favorite-dialog.favorite-dialog-2 .save-as-new {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 100%;
}
#favorite-dialog.favorite-dialog-2 .save-as-new label {
  width: 7rem;
  font-size: 1.4rem;
  line-height: 3.2rem;
}
#favorite-dialog.favorite-dialog-2 .save-as-new input {
  width: calc(100% - 7rem);
  margin-right: auto;
  padding: 0.4rem 1.6rem;
  font-size: 1.4rem;
  border: 0.1rem solid #333;
  border-radius: 0.4rem;
}
#favorite-dialog.favorite-dialog-2 .save-as-new p {
  margin: 1rem auto 0;
}
#favorite-dialog.favorite-dialog-2 hr {
  width: 100%;
  margin: 2rem 0;
}
#favorite-dialog.favorite-dialog-2 #existing-lists {
  overflow-y: auto;
  width: 100%;
}
#favorite-dialog.favorite-dialog-2 #existing-lists .existing-list {
  display: flex;
  align-items: center;
  column-gap: 1.6rem;
}
#favorite-dialog.favorite-dialog-2 #existing-lists .existing-list:not(:last-child) {
  margin-bottom: 1rem;
}
#favorite-dialog.favorite-dialog-2 #existing-lists .existing-list span {
  overflow: hidden; /* 要素をはみ出すテキストを非表示にする */
  display: inline-block; /* 必要に応じてインラインブロック要素として扱う */
  width: calc(100% - 8rem);
  white-space: nowrap; /* テキストを1行に収める */
  text-overflow: ellipsis; /* はみ出したテキストを「...」で省略 */
  font-size: 1.4rem;
}
#favorite-dialog.favorite-dialog-2 #existing-lists .existing-list .btn {
  margin: 0 0 0 auto;
  cursor: pointer;
}
#favorite-dialog.favorite-dialog-2 .btn {
  width: 7.5rem;
  margin: 2rem auto 0;
  padding: 0.4rem 1rem;
  font-size: 1.4rem;
  border: 0.1rem solid #333;
  border-radius: 0.5rem;
  text-align: center;
  cursor: pointer;
}

/*-----------------------------------
 実績シングル
-----------------------------------*/
.single-achievement .main .main-inner .single__wrapper .single__item .single__catch {
  position: relative;
}
.single-achievement .main .main-inner .single__wrapper .single__item .single__catch .favorite-register {
  position: absolute;
  top: 0;
  right: 0;
  width: 4rem;
  height: 3rem;
  padding: 0.2rem 1rem;
  color: #fff;
  border-radius: 0.5rem;
  user-select: none;
  cursor: pointer;
}
.single-achievement .main .main-inner .single__wrapper .single__item .single__catch .favorite-register img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.single-achievement .main .main-inner .single__wrapper .single__item .single__catch .favorite-register img:nth-child(1) {
  display: block;
}
.single-achievement .main .main-inner .single__wrapper .single__item .single__catch .favorite-register img:nth-child(2) {
  display: none;
}
.single-achievement .main .main-inner .single__wrapper .single__item .single__catch .favorite-register.is-registered img:nth-child(1) {
  display: none;
}
.single-achievement .main .main-inner .single__wrapper .single__item .single__catch .favorite-register.is-registered img:nth-child(2) {
  display: block;
}
.single-achievement .favorite-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 999;
}
.single-achievement .favorites-popup {
  z-index: 1000;
  overflow: scroll;
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-height: 60vh;
  max-width: 60vw;
  padding: 2rem 3rem;
  border-radius: 0.5rem;
  box-shadow: 0 0 1rem rgba(0, 0, 0, 0.3);
  background-color: #fff;
}
.single-achievement .favorites-popup::-webkit-scrollbar {
  width: 0.5rem;
  height: 0.5rem;
}
.single-achievement .favorites-popup::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 0.4rem;
}
.single-achievement .favorites-popup::-webkit-scrollbar-thumb {
  background: #888;
  border-radius: 0.4rem;
}
.single-achievement .favorites-popup::-webkit-scrollbar-thumb:hover {
  background: #555;
}
.single-achievement .favorites-popup h3 {
  margin-top: 0;
  margin-bottom: 1.5rem;
  font-size: 1.8rem;
}
.single-achievement .favorites-popup ul {
  width: max-content;
  padding: 0;
  list-style-type: none;
}
.single-achievement .favorites-popup ul li {
  margin-bottom: 1rem;
  display: flex;
  align-items: center;
}
.single-achievement .favorites-popup ul li .list-name {
  font-weight: bold;
  margin-right: 2rem;
  font-size: 1.6rem;
}
.single-achievement .favorites-popup ul li .created-at {
  font-size: 1.4rem;
  color: #666;
  margin-right: 1rem;
  margin-left: auto;
}
.single-achievement .favorites-popup ul li .add-to-list {
  padding: 0.5rem 1rem;
  background-color: #459fdb;
  color: #fff;
  border: none;
  border-radius: 0.3rem;
  cursor: pointer;
  font-size: 1.3rem;
}
.single-achievement .favorites-popup ul li .add-to-list:hover {
  background-color: #0056b3;
}
.single-achievement .favorites-popup ul li .add-to-list.disabled {
  background-color: #ccc;
  pointer-events: none;
  cursor: default;
}
.single-achievement .favorites-popup ul li .add-to-list.disabled:hover {
  background-color: #ccc;
}
.single-achievement .registration-popup {
  z-index: 1001;
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #fff;
  padding: 2rem;
  border-radius: 0.5rem;
  box-shadow: 0 0 1rem rgba(0, 0, 0, 0.3);
  z-index: 1001;
  text-align: center;
}
.single-achievement .registration-popup p {
  font-size: 1.6rem;
  margin-bottom: 1.5rem;
}
.single-achievement .registration-popup .close-popup {
  padding: 0.5rem 1rem;
  background-color: #007bff;
  color: #fff;
  border: none;
  border-radius: 0.3rem;
  cursor: pointer;
  font-size: 1.4rem;
}
.single-achievement .registration-popup .close-popup:hover {
  background-color: #0056b3;
}

/*-----------------------------------
 お気に入りリスト作成ページ
-----------------------------------*/
.page-favorite_create .header .header__wrapper .favorite-list ul li,
.page-favorite_edit .header .header__wrapper .favorite-list ul li {
  cursor: pointer;
}
.page-favorite_create .header .header__wrapper .favorite-list ul li.save-favorite-list,
.page-favorite_edit .header .header__wrapper .favorite-list ul li.save-favorite-list {
  display: block;
  color: #333;
  cursor: pointer;
  pointer-events: auto;
  transition: 0.3s;
}
.page-favorite_create .header .header__wrapper .favorite-list ul li.save-favorite-list:hover,
.page-favorite_edit .header .header__wrapper .favorite-list ul li.save-favorite-list:hover {
  opacity: 0.7;
}
.page-favorite_create .header .header__wrapper .favorite-list ul li.save-favorite-list::before,
.page-favorite_edit .header .header__wrapper .favorite-list ul li.save-favorite-list::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 2rem;
  height: 2rem;
  background: url(../img/icon-favorite.png) no-repeat center/contain;
}
.page-favorite_create #favorite-dialog,
.page-favorite_edit #favorite-dialog {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  width: 40rem;
  height: 25rem;
  padding: 2rem;
  background-color: #fff;
  border-radius: 1rem;
  border: 0.1rem solid #333;
}
.page-favorite_create #favorite-dialog label,
.page-favorite_edit #favorite-dialog label {
  align-self: flex-end;
  width: 7.5rem;
  font-size: 1.4rem;
}
.page-favorite_create #favorite-dialog input,
.page-favorite_edit #favorite-dialog input {
  align-self: flex-end;
  width: calc(90% - 7.5rem);
  padding: 4px 10px;
  font-size: 1.2rem;
  border: 0.1rem solid #333;
}
.page-favorite_create #favorite-dialog button,
.page-favorite_edit #favorite-dialog button {
  position: relative;
  width: 35%;
  font-size: 1.4rem;
  text-align: center;
}
.page-favorite_create #favorite-dialog button::before,
.page-favorite_edit #favorite-dialog button::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 8rem;
  height: 120%;
  border: 0.1rem solid #333;
  border-radius: 0.5rem;
}
.page-favorite_create .archive__ul .archive__ul-li,
.page-favorite_edit .archive__ul .archive__ul-li {
  position: relative;
}
.page-favorite_create .archive__ul .archive__ul-li a .archive__box,
.page-favorite_edit .archive__ul .archive__ul-li a .archive__box {
  position: relative;
}
.page-favorite_create .archive__ul .archive__ul-li .favorite,
.page-favorite_edit .archive__ul .archive__ul-li .favorite {
  position: absolute;
  content: "";
  top: 0;
  right: 0;
  width: 2rem;
  height: 2rem;
  background: url(../img/icon-favorite-off.png) no-repeat center/contain;
  cursor: pointer;
}
.page-favorite_create .archive__ul .archive__ul-li .favorite.favorite-active,
.page-favorite_edit .archive__ul .archive__ul-li .favorite.favorite-active {
  background: url(../img/icon-favorite-on.png) no-repeat center/contain;
}

@media screen and (max-width: 599px) {
  .page-favorite_create .header .header__wrapper .favorite-list ul li,
  .page-favorite_edit .header .header__wrapper .favorite-list ul li {
    cursor: pointer;
  }
  .page-favorite_create .header .header__wrapper .favorite-list ul li.save-favorite-list,
  .page-favorite_edit .header .header__wrapper .favorite-list ul li.save-favorite-list {
    display: flex;
    color: transparent;
    cursor: pointer;
  }
  .page-favorite_create .header .header__wrapper .favorite-list ul li.save-favorite-list::before,
  .page-favorite_edit .header .header__wrapper .favorite-list ul li.save-favorite-list::before {
    position: absolute;
    content: "";
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: url(../img/icon-favorite.png) no-repeat center/contain;
  }
}
/*-----------------------------------
 お気に入りリスト編集ページ
-----------------------------------*/
.page-favorite_edit .header .header__search-btn {
  display: none;
}

/*-----------------------------------
 お気に入りリスト管理ページ
-----------------------------------*/
.page-favorite_list .main .main-inner h2 {
  margin-bottom: 2rem;
  font-size: 2rem;
}
.page-favorite_list .main .main-inner #favorite-lists-container .favorite-list-item {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  column-gap: 1.4rem;
  margin-bottom: 1rem;
  padding: 1.5rem;
  border: 0.1rem solid #333;
}
.page-favorite_list .main .main-inner #favorite-lists-container .favorite-list-item h3 {
  width: 100%;
  font-size: 1.8rem;
  margin-right: 1rem;
  margin-bottom: 1rem;
  text-decoration: underline;
  text-underline-offset: 0.4rem;
  cursor: pointer;
  transition: 0.3s;
}
.page-favorite_list .main .main-inner #favorite-lists-container .favorite-list-item h3:hover {
  opacity: 0.7;
}
.page-favorite_list .main .main-inner #favorite-lists-container .favorite-list-item p {
  font-size: 1.2rem;
  font-weight: 400;
  color: #707070;
}
.page-favorite_list .main .main-inner #favorite-lists-container .favorite-list-item button {
  padding: 0.2rem 1rem 0.3rem;
  font-size: 1.2rem;
  border: 1px solid #333;
  border-radius: 4px;
}
.page-favorite_list .main .main-inner #favorite-lists-container .favorite-list-item button.view-list {
  color: #fff;
  background-color: #000;
}
.page-favorite_list .main .main-inner #favorite-lists-container .favorite-list-item button.edit-list, .page-favorite_list .main .main-inner #favorite-lists-container .favorite-list-item button.rename-list {
  position: relative;
  padding-left: 3rem;
}
.page-favorite_list .main .main-inner #favorite-lists-container .favorite-list-item button.edit-list::before, .page-favorite_list .main .main-inner #favorite-lists-container .favorite-list-item button.rename-list::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 1rem;
  transform: translateY(-50%);
  width: 1.8rem;
  height: 1.8rem;
  background: url(../img/icon-edit.png) no-repeat center/contain;
}
.page-favorite_list .main .main-inner #favorite-lists-container .favorite-list-item button.delete-list {
  position: relative;
  padding-left: 3rem;
}
.page-favorite_list .main .main-inner #favorite-lists-container .favorite-list-item button.delete-list::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 1rem;
  transform: translateY(-50%);
  width: 1.6rem;
  height: 1.8rem;
  background: url(../img/icon-delete.png) no-repeat center/contain;
}
.page-favorite_list .main .main-inner #favorite-lists-container p {
  font-size: 1.4rem;
}
.page-favorite_list #edit-dialog {
  position: absolute;
  top: 45vh;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  width: 40rem;
  height: 25rem;
  padding: 2rem;
  background-color: #fff;
  border-radius: 1rem;
  border: 0.1rem solid #333;
}
.page-favorite_list #edit-dialog label {
  align-self: flex-end;
  width: 7.5rem;
  font-size: 1.4rem;
}
.page-favorite_list #edit-dialog input {
  align-self: flex-end;
  width: calc(90% - 7.5rem);
  padding: 4px 10px;
  font-size: 1.2rem;
  border: 0.1rem solid #333;
}
.page-favorite_list #edit-dialog button {
  position: relative;
  width: 35%;
  font-size: 1.4rem;
  text-align: center;
}
.page-favorite_list #edit-dialog button::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 8rem;
  height: 120%;
  border: 0.1rem solid #333;
  border-radius: 0.5rem;
}

/*-----------------------------------
 ヘッダー
-----------------------------------*/
.header .header__wrapper {
  display: flex;
  justify-content: space-between;
}
.header .header__wrapper .favorite-list ul {
  display: flex;
  height: 100%;
  align-items: center;
  column-gap: 16px;
}
.header .header__wrapper .favorite-list ul li {
  position: relative;
  padding-left: 2.4rem;
  font-size: 1.4rem;
  line-height: 1;
}
.header .header__wrapper .favorite-list ul li::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 2rem;
  height: 2rem;
}
.header .header__wrapper .favorite-list ul li:nth-of-type(1)::before {
  background: url(../img/icon-list-2.png) no-repeat center/contain;
}
.header .header__wrapper .favorite-list ul li:nth-of-type(2)::before {
  background: url(../img/icon-file-2.png) no-repeat center/contain;
}
.header .header__wrapper .favorite-list ul li:nth-of-type(3)::before {
  background: url(../img/icon-manual.png) no-repeat center/contain;
}
@media (max-width: 1320px) and (min-width: 1024px) {
  .header .header__wrapper .favorite-list ul {
    margin-right: 10rem;
  }
}
@media (max-width: 1024px) {
  .header .header__wrapper .favorite-list ul {
    margin-right: initial;
    margin-left: 1.6rem;
    column-gap: 8px;
  }
}
@media (max-width: 599px) {
  .header .header__wrapper .favorite-list {
    position: relative;
    right: -16px;
  }
  .header .header__wrapper .favorite-list ul li {
    height: 40px;
    width: 36px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-left: initial;
  }
  .header .header__wrapper .favorite-list ul li::before {
    z-index: -1;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  .header .header__wrapper .favorite-list ul li a {
    color: transparent;
  }
}
/*-----------------------------------
 実績一覧へ戻る
-----------------------------------*/
.create-favorite-heading {
  background-color: #e4e4e4;
}
.create-favorite-heading .create-favorite-heading__inner {
  position: relative;
  width: 93%;
  max-width: 1100px;
  margin: 0 auto 2rem;
  padding: 2rem 0 2.4rem;
}
.create-favorite-heading .create-favorite-heading__inner h2 {
  position: relative;
  margin-bottom: 0.6rem;
  padding-left: 3rem;
  font-size: 2rem;
}
.create-favorite-heading .create-favorite-heading__inner h2::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 2.4rem;
  height: 2.4rem;
  background: url(../img/icon-file-2.png) no-repeat center/contain;
}
.create-favorite-heading .create-favorite-heading__inner h2.favorite-list::before {
  background: url(../img/icon-list-2.png) no-repeat center/contain;
}
.create-favorite-heading .create-favorite-heading__inner h2.favorite-article-list {
  padding-left: 0;
}
.create-favorite-heading .create-favorite-heading__inner h2.favorite-article-list::before {
  background: none;
}
.create-favorite-heading .create-favorite-heading__inner p {
  font-size: 1.4rem;
  font-weight: 400;
}

/*-----------------------------------
 実績一覧へ戻る
-----------------------------------*/
.bread-list {
  position: relative;
  width: 93%;
  max-width: 1100px;
  margin: 0 auto 2rem;
}
.bread-list a {
  font-size: 1.4rem;
  display: inline-block;
  padding: 6px 12px 6px 32px;
  border: 1px solid #000;
  border-radius: 5px;
  transition: 0.3s;
}
.bread-list a:hover {
  opacity: 0.7;
}
.bread-list a::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 16px;
  transform: translateY(-50%) rotate(45deg);
  width: 0.9rem;
  height: 0.9rem;
  border-left: 0.2rem solid #333;
  border-bottom: 0.2rem solid #333;
}

/*-----------------------------------
 全て解除ボタン
-----------------------------------*/
.search__box {
  position: relative;
}

.all-check-off {
  position: absolute;
  top: 0.3em;
  right: 0;
  font-size: 1.4rem;
  padding: 1rem 2rem;
  border: 0.1rem solid #333;
  border-radius: 1rem;
  cursor: pointer;
  transition: 0.3s;
  transition: all 0.3s;
}
@media (hover: hover) {
  .all-check-off:hover:hover {
    background-color: #333;
    color: #fff;
  }
}

@media screen and (max-width: 599px){
  .all-check-off {
    position: static;
    margin-top: 24px;
  }
}