@charset "UTF-8";
/*-------------------------------------------------------------------

	Utility

-------------------------------------------------------------------*/
.hidden_sp {
  display:none !important;
}
.hidden_pc {
  display:block !important;
}
a.anchor {
  display: block;
  /*padding-top: calc(100vw * (100 / 750));
  margin-top: calc(-100vw * (100 / 750));*/
}
.u-sp-item {
  display: block !important;
}
.u-sp-item-inline {
  display: inline !important;
}
.u-sp-item-flex {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
}
.u-pc-item, .u-pc-item-inline, .u-pc-item-flex {
  display: none !important;
}
.u-marker {
  background: #FFFF73;
  font-style: normal;
}
.u-marker-under {
  background: linear-gradient(transparent 50%, #ffff99 50%);
}
.u-marker-under.nowrap {
  white-space: nowrap;
}
.u-clr {
  clear: both;
}
.u-mb-0em {
  margin-bottom: 0 !important;
}
.u-mb-05em {
  margin-bottom: .5em !important;
}
.u-mb-1em {
  margin-bottom: 1em !important;
}
.u-mb-2em {
  margin-bottom: 2em !important;
}
.u-mb-2_5em {
  margin-bottom: 2.5em !important;
}
.u-mb-3em {
  margin-bottom: 3em !important;
}
.u-mb-4em {
  margin-bottom: 4em !important;
}
.u-mb-5em {
  margin-bottom: 5em !important;
}
.u-mb-6em {
  margin-bottom: 6em !important;
}
.u-mb-7em {
  margin-bottom: 7em !important;
}
.u-mb-default {
  margin-bottom: 6.5rem !important;
}
.u-figure-mg {
  margin:2em 0;
}
.u-text-center {
  text-align: center;
}
.u-text-left {
  text-align: left;
}
.u-text-right {
  text-align: right;
}
.u-text-normal {
  font-weight: normal;
}
.u-text-bold {
  font-weight: bold;
}
.u-text-red {
  color: #ff5c5c;
}
.u-text-red2 {
  color: #ff0000;
}
.u-text-dark-red {
  color: #c03;
}
.u-text-pink {
  color: #ed7eae;
}
.u-text-green {
  color: #75bec6;
}
.u-text-dark-green {
  color: #1e7e8f;
}
.u-text-small {
  font-size: .93em;
}
.u-text-x-small {
  font-size: .86em;
}
.u-text-xx-small {
  font-size: .79em;
}
.u-text-xxx-small {
  font-size: .72em;
}
.u-text-large {
  font-size: 1.07em;
}
.u-text-x-large {
  font-size: 1.14em;
}
.u-text-xx-large {
  font-size: 1.29em;
}
.u-text-xxx-large {
  font-size: 1.57em;
}
.u-text-xxxx-large {
  font-size: 1.71em;
}
.u-valign-top {
  vertical-align:top !important;
}
.u-text-ellipsis {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.u-replace {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-decoration: none;
}
.u-item-left {
  float: left;
}
.u-item-left.margin {
  margin: 0 1.5em 1em 0;
}
.u-item-right {
  float: right;
}
.u-item-right.margin {
  margin: 0 0 1em 1.5em;
}
.u-item-overflow-hidden {
  overflow: hidden;
}
.u-item-auto {
  margin-left: auto;
  margin-right: auto;
}
.u-item-left-pc, .u-item-right-pc {
  margin: 0 auto 1em;
  text-align: center;
}
.u-item-inline {
  display: inline;
}
.u-figcaption-basic {
  text-align: center;
  padding-top: .7em;
  font-size:.88em;
  line-height: 1.5;
}
.u-figcaption-basic.left {
  text-align: left;
}
.u-ul-basic, .u-ol-basic {
  padding-left: 1.5em;
  line-height: 1.4;
}
.u-ul-basic li {
  list-style-type: disc;
  padding: 0 0 .5em 0;
}
.u-ol-basic li {
  list-style-type: decimal;
  padding: 0 0 .5em 0;
}
.u-ul-basic > :last-child, .u-ol-basic > :last-child {
  padding: 0;
}
.u-ul-inline li {
  display: inline-block;
  margin: 0 2em .5em 0;
}
.u-ul-inline.mg0 li {
  margin: 0;
}
.u-check-list li {
  margin: 0 0 .6em 0;
  padding: 0 0 0 2em;
  line-height: 1.4;
}
.u-check-list li:last-child {
  margin: 0;
}
.u-check-list li::before {
  content: "\f00c";
  display: inline-block;
  margin-left: -2em;
  width: 2em;
  font-family: "Font Awesome 5 Free";
  text-align: center;
  font-weight: 600;
}
.u-check-list.red li::before {
  color: #ff5c5c;
}

.u-check-list.is-black li::before {
  color: inherit;
}
.u-caution-list li {
  margin: 0 0 .7em 0;
  padding: 0 0 0 2em;
  line-height: 1.4;
}
.u-caution-list li:last-child {
  margin: 0;
}
.u-caution-list li::before {
  content: "＊";
  display: inline-block;
  margin-left: -2em;
  width: 2em;
  text-align: center;
  font-weight: 600;
}
.u-dl-basic dt {
  padding-left: .8em;
  margin-bottom: .5em;
  line-height: 1.4;
  font-weight: 600;
  border-left: 4px solid #ccc;
  border-radius: 2px 0 0 2px;
}
.u-dl-basic dd {
  font-size: .88em;
  padding-left: 1.2em;
  margin-bottom: 2em;
}
.u-dl-basic > :last-child {
  margin-bottom: 0;
}
.u-osusume-title {
  display: inline-block;
  background: #fe7c7b;
  padding: .6em .7em .5em;
  font-size: .7em;
  line-height: 1;
  font-weight: 600;
  color: #fff;
  border-radius: .4rem;
}
/*table*/
.u-table-basic {
  width: 100%;
  border: 1px solid #ddd;
  background: #FFF;
}
.u-table-basic th, .u-table-basic td {
  border: 1px solid #ddd;
  padding: 1.4em 1em;
  font-size: 1.4rem;
  line-height: 1.5;
}
.u-table-basic.middle th, .u-table-basic.middle td {
  font-size: 1.3rem;
}
.u-table-basic.small th, .u-table-basic.small td {
  font-size: 1.2rem;
  font-feature-settings:"palt"
}
.u-table-basic .current th, .u-table-basic .current td {
  background-color: #f9e0eb;
}
.u-table-basic th {
  font-weight: 500;
  text-align: center;
  vertical-align: middle;
  background: #ede9e1;
}
.u-table-basic.light th {
  background: #faf8f6;
}
.u-table-basic thead th {
  background: #f9f8f6;
}

.u-table-basic th.current {
  background-color: #f9e0eb;
}
.u-table-basic th.left {
  text-align: left;
}
.u-table-basic td {
  text-align: left;
  vertical-align: middle;
}
.u-table-basic td.current {
  background-color: #f9e0eb;
}
.u-table-basic td.right {
  text-align: right;
}
.u-table-basic .yen {
  text-align: right;
}
.u-table-basic td.center,.u-table-basic td.unit  {
  text-align: center;
}
/*button*/
.u-button-detail {
  font-size: 1.3rem;
  line-height: 1.3;
  font-weight:500;
}
.u-button-detail a {
  display: inline-block;
  padding:1.1em 1.5em 1em;
  text-decoration: none;
  color: white;
  background-color: #75bec6;
  border-radius: .5rem;
  text-align: left;
}
.u-button-detail.u-text-center a {
  text-align: center;
}
.u-button-detail a::after {
  font-family:"Font Awesome 5 Free";
  content:"\f30b";
  display:inline-block;
  margin-left:.4em;
  font-weight:600;
}
.u-button-detail.large {
  font-size: 1.4rem;
}
.u-button-detail.small {
  font-size: 1.2rem;
}
.u-button-detail.center {
  text-align: center;
}
.u-button-detail.right {
  text-align: right;
}
.u-button-detail.wide a {
  display: block;
  text-align: center;
}
.u-button-detail.cream a {
  color: #333;
  background-color: #f7f5f2;
}
.u-button-detail.red a {
  border:2px solid var(--color-red);
  color:var(--color-red);
  background-color:#ffffcc;
}
.u-button-detail.fit a {
  display: block;
  width:fit-content;
  margin:auto;
}
.u-button-detail.xx-large a {
  display: block;
  margin-left:auto;
  margin-right:auto;
  padding:1.6em .5em;
  font-size:1.5rem;
  text-align: center;
  background-color:#e5f8fa;
  color:#435259;
  font-weight:600;
}
.u-button {
  font-size: 1.3rem;
  line-height: 1.3;
  font-weight:500;
}
.u-button a {
  display: inline-block;
  padding:1.1em 1.5em 1em;
  text-decoration: none;
  background-color:#EFEFEF;
  text-align: left;
  border:1px solid #DDD;
}
.u-button a::after {
  font-family:"Font Awesome 5 Free";
  content:"\f30b";
  display:inline-block;
  margin-left:.4em;
  font-weight:600;
}
.u-button--line a {
  background-color:white;
  border:1px solid #DDD;
}
.u-button.large {
  font-size: 1.4rem;
}
.u-button.small {
  font-size: 1.2rem;
}
.u-button.center {
  text-align: center;
}
.u-button.right {
  text-align: right;
}
.u-banner-fit {
  width:fit-content;
  margin-left:auto;
  margin-right:auto;
}
.u-hr-basic {
  border: none;
  height: 1px;
  background-color: #DDD;
  margin-bottom: 1em;
}
.u-youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  margin-left:auto;
  margin-right:auto;
}
.u-youtube.middle {
  width: 90%;
  height:auto;
  padding-top: 56.25%;
}
.u-youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
.u-flex-basic.u-columns1-2 .u-youtube {
  margin-bottom: 0.5em;
}
/*flex*/
.u-flex-basic {
  display: flex;
}
.u-flex-basic.center {
  justify-content: center;
}
.u-flex-basic.between {
  justify-content: space-between;
}
.u-flex-basic.center-x {
  justify-content: center;
}
.u-flex-basic.justify-start {
  justify-content: flex-start;
}
.u-flex-basic.center-y {
  align-items: center;
}
.u-flex-basic.align-start {
  align-items:flex-start;
}
.u-flex-basic.align-end {
  align-items:flex-end;
}
.u-flex-basic.wrap {
  flex-wrap: wrap;
}
.u-flex-basic_item {
  text-align: center;
}
.u-flex-basic_item.left {
  text-align: left;
}
.u-flex-basic.column1-2 > .u-flex-basic_item {
  width: 100%;
  margin: 0 0 1em;
}
.u-flex-basic.column1-3 > .u-flex-basic_item {
  width: 100%;
  margin: 0 0 1em;
}
/*.u-flex-basic.column1-4 > .u-flex-basic_item {
  width: 100%;
  margin: 0 0 1em;
}*/
.u-flex-basic.column2-2 > .u-flex-basic_item {
  width: 48.5%;
  margin: 0 0 1em 3%;
}
.u-flex-basic.column2-2 > .u-flex-basic_item:nth-child(2n+1) {
  margin-left: 0;
}
.u-flex-basic.column2-3 > .u-flex-basic_item {
  width: 48.5%;
  margin: 0 0 1em 3%;
}
.u-flex-basic.column2-3 > .u-flex-basic_item:nth-child(2n+1) {
  margin-left: 0;
}
.u-flex-basic.column2-3b > .u-flex-basic_item {
  width: 47%;
  margin: 0 0 1em 6%;
}
.u-flex-basic.column2-3b > .u-flex-basic_item:nth-child(2n+1) {
  margin-left: 0;
}
.u-flex-basic.column2-4 > .u-flex-basic_item {
  width: 48.5%;
  margin: 0 0 1em 3%;
}
.u-flex-basic.column2-4 > .u-flex-basic_item:nth-child(2n+1) {
  margin-left: 0;
}
.u-flex-basic.column3-3 > .u-flex-basic_item {
  width: 31.5942%;
  margin: 0 0 1em 2.6087%;
}
.u-flex-basic.column3-3 > .u-flex-basic_item:nth-child(3n+1) {
  margin-left: 0;
}
.u-item-box {
  border: 1px solid #efefef;
  padding: 2em;
  background-color:white;
}
.u-item-box.small {
  padding: 1em;
}
.u-item-box.cream {
  background-color:#f9f8f6;
}
.u-item-box.yellow {
  background-color:#ffc;
}
.u-item-box.blue {
  background-color:#f3f9f9;
}
.u-item-box.red {
  background-color:#fdf4f4;
}
.u-item-box.caution {
  border:1px solid #ff6666;
}
.u-item-box.u-item-box-bdr-yellow {
  border: 1px solid #cbb83a;
}
.u-item-box.u-item-box-bdr-dark-green {
  border: 1px solid #1e7e8f;
}
.u-item-box > :last-child {
  margin-bottom:0;
}
.scroll {
  overflow-y: scroll;
}
.scroll::-webkit-scrollbar {
  width: 8px;
}
.scroll::-webkit-scrollbar-thumb {
  background: #666;
  border-radius: 4px;
}
.scroll::-webkit-scrollbar-track-piece:start {
  background: #ddd;
  border-radius: 4px;
}
.scroll::-webkit-scrollbar-track-piece:end {
  background: #ddd;
  border-radius: 4px;
}
.u-float-item::after {
  content:"";
  display:block;
  clear:both;
}
.u-float-item > :last-child {
  margin-bottom:0;
}
.u-float-item_photo {
  width:52.17391%;
}
.u-float-item_photo.left {
  float:left;
  margin:0 1.5em .5em 0;
}
.u-float-item_photo.right {
  float:right;
  margin:0 0 .5em 1.5em;
}
/*-------------------------------------------------------------------
	SP
-------------------------------------------------------------------*/
@media screen and (max-width: 768px) {
  .u-sp-w10 {
    width: 10% !important;
  }
  .u-sp-w15 {
    width: 15% !important;
  }
  .u-sp-w20 {
    width: 20% !important;
  }
  .u-sp-w25 {
    width: 25% !important;
  }
  .u-sp-w30 {
    width: 30% !important;
  }
  .u-sp-w35 {
    width: 35% !important;
  }
  .u-sp-w40 {
    width: 40% !important;
  }
  .u-sp-w45 {
    width: 45% !important;
  }
  .u-sp-w50 {
    width: 50% !important;
  }
  .u-sp-w55 {
    width: 55% !important;
  }
  .u-sp-w60 {
    width: 60% !important;
  }
  .u-sp-w65 {
    width: 65% !important;
  }
  .u-sp-w70 {
    width: 70% !important;
  }
  .u-sp-w75 {
    width: 75% !important;
  }
  .u-sp-w80 {
    width: 80% !important;
  }
  .u-sp-w85 {
    width: 85% !important;
  }
  .u-sp-w90 {
    width: 90% !important;
  }
  .u-sp-w95 {
    width: 95% !important;
  }
  .u-sp-w100 {
    width: 100% !important;
  }
  .u-sp-center {
    float: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .u-item-box.sp-small {
    padding: 1em;
  }
  .u-item-box.sp-middle {
    padding: 1.4em;
  }
}
/*-------------------------------------------------------------------
	PC
-------------------------------------------------------------------*/
@media screen and (min-width: 769px) {
  a.anchor {
    /*padding-top: 0;
    margin-top: 0;*/
  }
  .hidden_sp {
    display:block !important;
  }
  .hidden_pc {
    display:none !important;
  }
  .u-mb-default {
    margin-bottom: 13rem !important;
  }
  .u-sp-item, .u-sp-item-inline, .u-sp-item-flex {
    display: none !important;
  }
  .u-pc-item {
    display: block !important;
  }
  .u-pc-item-inline {
    display: inline !important;
  }
  .u-pc-item-flex {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .u-pcitem-center {
    float: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  /*button*/
  .u-button-detail {
    font-size: 1.6rem;
  }
  .u-button-detail a {
    border-radius: .6rem;
  }
  .u-button-detail.large {
    font-size: 1.8rem;
  }
  .u-button-detail.small {
    font-size: 1.4rem;
  }
  .u-button-detail.xx-large a {
    font-size:1.8rem;
    max-width:68rem;
  }
  .u-button {
    font-size: 1.6rem;
  }
  .u-button a {
    border-radius: .6rem;
  }
  .u-button.large {
    font-size: 1.8rem;
  }
  .u-button.small {
    font-size: 1.4rem;
  }
  .u-text-small {
    font-size: .88em;
  }
  .u-text-x-small {
    font-size: .77em;
  }
  .u-text-xx-small {
    font-size: .66em;
  }
  .u-text-xxx-small {
    font-size: .55em;
  }
  .u-text-large {
    font-size: 1.11em;
  }
  .u-text-x-large {
    font-size: 1.22em;
  }
  .u-text-xx-large {
    font-size: 1.33em;
  }
  .u-text-xxx-large {
    font-size: 1.44em;
  }
  .u-text-xxxx-large {
    font-size: 1.55em;
  }
  .u-table-basic th, .u-table-basic td {
    padding: 1.4em 1em;
    font-size: 1.8rem;
  }
  .u-table-basic.middle th, .u-table-basic.middle td {
    font-size: 1.6rem;
  }
  .u-table-basic.small th, .u-table-basic.small td {
    font-size: 1.4rem;
  }
  .u-item-left-pc {
    float: left;
    margin: 0 1.5em 1em 0;
  }
  .u-item-right-pc {
    float: right;
    margin: 0 0 1em 1.5em;
  }
  .u-pc-w10 {
    width: 10% !important;
  }
  .u-pc-w15 {
    width: 15% !important;
  }
  .u-pc-w18 {
    width: 18% !important;
  }
  .u-pc-w20 {
    width: 20% !important;
  }
  .u-pc-w25 {
    width: 25% !important;
  }
  .u-pc-w30 {
    width: 30% !important;
  }
  .u-pc-w35 {
    width: 35% !important;
  }
  .u-pc-w40 {
    width: 40% !important;
  }
  .u-pc-w45 {
    width: 45% !important;
  }
  .u-pc-w50 {
    width: 50% !important;
  }
  .u-pc-w55 {
    width: 55% !important;
  }
  .u-pc-w60 {
    width: 60% !important;
  }
  .u-pc-w65 {
    width: 65% !important;
  }
  .u-pc-w70 {
    width: 70% !important;
  }
  .u-pc-w75 {
    width: 75% !important;
  }
  .u-pc-w80 {
    width: 80% !important;
  }
  .u-pc-w85 {
    width: 85% !important;
  }
  .u-pc-w90 {
    width: 90% !important;
  }
  .u-pc-w95 {
    width: 95% !important;
  }
  .u-pc-w100 {
    width: 100% !important;
  }
  .u-youtube {
    position: relative;
    width: 66.4rem;
    height:37.3rem;
    padding-top: 0;
    margin-left:auto;
    margin-right:auto;
  }
  .u-youtube.small {
    width: 100%;
    height:auto;
    padding-top: 56.25%;
  }
  .u-youtube.middle {
    width: 70%;
    height:auto;
    padding-top: 56.25%;
  }
  .u-flex-basic.u-columns1-2 .u-youtube {
    width: 49.7rem;
    height: 27.92rem;
  }
  .u-flex-basic.column1-2 > .u-flex-basic_item {
    width: 48.5%;
    margin: 0 0 1em 3%;
  }
  .u-flex-basic.column1-2 > .u-flex-basic_item:nth-child(2n+1) {
    margin-left: 0;
  }
  .u-flex-basic.column1-3 > .u-flex-basic_item {
    width: 31.5942%;
    margin: 0 0 1em 2.6087%;
  }
  .u-flex-basic.column1-3 > .u-flex-basic_item:nth-child(3n+1) {
    margin-left: 0;
  }
  /*.u-flex-basic.column1-4 > .u-flex-basic_item {
    width: 23.5%;
    margin: 0 0 1em 2%;
  }
  .u-flex-basic.column1-4 > .u-flex-basic_item:nth-child(4n+1) {
    margin-left: 0;
  }*/
  .u-flex-basic.column2-3 > .u-flex-basic_item {
    width: 31.5942%;
    margin: 0 0 1em 2.6087%;
  }
  .u-flex-basic.column2-3 > .u-flex-basic_item:nth-child(2n+1) {
    margin-left: 2.6087%;
  }
  .u-flex-basic.column2-3 > .u-flex-basic_item:nth-child(3n+1) {
    margin-left: 0;
  }
  .u-flex-basic.column2-3b > .u-flex-basic_item {
    width: 30%;
    margin: 0 0 1em 5%;
  }
  .u-flex-basic.column2-3b > .u-flex-basic_item:nth-child(2n+1) {
    margin-left: 5%;
  }
  .u-flex-basic.column2-3b > .u-flex-basic_item:nth-child(3n+1) {
    margin-left: 0;
  }
  .u-flex-basic.column2-4 > .u-flex-basic_item {
    width: 23.5%;
    margin: 0 0 1em 2%;
  }
  .u-flex-basic.column2-4 > .u-flex-basic_item:nth-child(2n+1) {
    margin-left: 2%;
  }
  .u-flex-basic.column2-4 > .u-flex-basic_item:nth-child(4n+1) {
    margin-left: 0;
  }
  .u-float-item_photo {
    width:34.95145%;
  }
  .u-columns1-2 {
    columns: 2;
    column-gap: 2em;
  }
  .u-item-overflow-hidden-pc {
    overflow: hidden;
  }
}

/* マーキー */
.marquee {
  display: flex;
  white-space: nowrap;
  overflow: hidden;
  gap: 60rem;
  font-size: 1.5rem;
	height: 2em;
	margin: 0 auto 4rem !important;
  max-width: 103rem !important;
}
.marquee a {
  text-decoration: none;
}
@media screen and (min-width: 769px) {
  .marquee-inner {
    animation: marquee 15s linear infinite;
  }
}
@media screen and (max-width: 768px) {
  .marquee {
    gap: 30rem;
    font-size: 1.2rem;
	  margin: 3.6rem auto !important;
    max-width: calc(100% - 3rem) !important;
  }
  .marquee-inner {
    animation: marqueeSp 25s linear infinite;
  }
}
@keyframes marquee {
  0%   { translate: 0; }
  100% { translate: calc(-100% - 60rem); }
}
@keyframes marqueeSp {
  0%   { translate: 0; }
  100% { translate: calc(-100% - 30rem); }
}

/* Googleカスタム検索 */
.gsc-results-wrapper-visible {}
.gsc-modal-background-image p.original-gsc-notice {
  display: block;
  position: absolute;
  bottom: calc(32% - 2em);
  left: 12%;
  width: 70%;
  box-sizing: border-box;
  color: #cf2e2e;
  line-height: 1.2;
}
@media screen and (max-width: 768px) {
.gsc-modal-background-image p.original-gsc-notice {
  bottom: calc(26% - 1.2em);
  left: 5%;
  width: 90%;
  font-size: 11px;
}
}

