/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Nov 27 2025 | 06:02:17 */
:root {
  font-size: 16px;
  line-height: 1.7;
  font-feature-settings: "palt";
  letter-spacing: 0.03rem;
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  color: var(--systemColor--defaultText);
  min-width: 350px;


  --mp15px: 15px;

  /* カラーシステム */
  --systemColor--defaultText: #535353;
  --systemColor--linkText: #007DC5;
  --systemColor--linkText--after: #8A0BD9;
  --systemColor--grayText: #707070;

  --systemColor--thin--gray: #CBCBCB;
  --systemColor--thin2--gray: #EEEEEE;
  --systemColor--thin3--gray: #F6F6F6;
  --systemColor--thin--blueGreen: #EEFAFA;
  --systemColor--thin--blueGreen--clear: #F4FFFF;
  --systemColor--thin--red: #FFE4E4;
  --systemColor--thin--red--clear: #FFF4F4;
  --systemColor--favoriteYellow: #FCD053;

  --systemColor--red: #FF8486;
  --systemColor--orange: #FC8D51;
  --systemColor--yellow: #FCD053;
  --systemColor--green: #73D576;
  --systemColor--blueGreen: #00C2C5;
  --systemColor--blue: #729EF7;
  --systemColor--purple: #C07ADA;
  --systemColor--pink: #FF94CD;

  --designColor--btnYellow: #FFE37E;


  /* スペーシング */
  --space-xs: 0.25rem;
  /* 4px */
  --space-sm: 0.5rem;
  /* 8px */
  --space-ms: 0.75rem;
  /* 12px */
  --space-md: 1rem;
  /* 16px */
  --space-ml: 1.25rem;
  /* 20px */
  --space-lg: 1.5rem;
  /* 24px */
  --space-xl: 2rem;
  /* 32px */
  --space-xxl: 3rem;
  /* 48px */


  /* タイポグラフィ */
  --font-size-xs: 0.75rem;
  /* 12px */
  --font-size-sm: 0.85rem;
  /* 13.6px */
  --font-size-base: 1rem;
  /* 16px */
  --font-size-lg: 1.25rem;
  /* 20px */
  --font-size-ml: 1.5rem;
  /* 24px */
  --font-size-xl: 2rem;
  /* 32px */
  --font-size-xxl: 2.25rem;
  /* 36px */

  /* ボーダー */
  --border-xs-thin--gray: solid 1px var(--systemColor--thin--gray);
  --border-sm-thin--gray: solid 2px var(--systemColor--thin--gray);
}

* {
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
}

h1 {
  margin: var(--space-xl) auto var(--space-lg);;
  font-size: var(--font-size-ml);
  line-height: 1;
  padding: 0 var(--space-ms);
}

@media (min-width: 768px) {

  h1 {
    max-width: 950px;
    padding: 0 var(--space-md);
  }
}




p {
  margin: 0;
}

a {
  color: var(--systemColor--linkText);
}

a:visited {
  color: var(--systemColor--linkText--after);
}

button,
a {
  cursor: pointer;
  text-decoration: none;
}

button:hover,
a:hover {
  opacity: 0.8;
}



/* マージン・パディング */
.pd_4vw {
  padding: 4vw;
}

.pd_4vw_TB {
  padding-top: 4vw;
  padding-bottom: 4vw;
}

.pd_4vw_LR {
  padding-left: 4vw;
  padding-right: 4vw;
}

.pd_4vw_B {
  padding-bottom: 4vw;
}

.mg_4vw {
  margin: 4vw;
}

.mg_2vw_B {
  margin-bottom: 2vw;
}

.mg_4vw_B {
  margin-bottom: 4vw;
}

.mg_4vw_TB {
  margin-top: 4vw;
  margin-bottom: 4vw;
}

.mg_4vw_LR {
  margin-left: 4vw;
  margin-right: 4vw;
}

@media (min-width: 768px) {
  .pd_4vw {
    padding: var(--mp15px);
  }

  .pd_4vw_TB {
    padding-top: var(--mp15px);
    padding-bottom: var(--mp15px)
  }

  .pd_4vw_LR {
    padding-left: var(--mp15px);
    padding-right: var(--mp15px);
  }

  .pd_4vw_B {
    padding-bottom: var(--mp15px);
  }

  .mg_4vw {
    margin: var(--mp15px);
  }

  .mg_2vw_B {
    margin-bottom: 10px;
  }

  .mg_4vw_B {
    margin-bottom: var(--mp15px);
  }
}

.flex_Center {
  display: flex;
  align-items: center;
}

.flex_Center-jc_sb {
  display: flex;
  align-items: center;
  justify-content: space-between;
}



.fs_1-1em {
  font-size: 1.1rem;
}

.fs_0-9em {
  font-size: 0.9rem;
}

.fs_0-85em {
  font-size: 0.85rem;
}

.fs_0-75em {
  font-size: 0.75rem;
}

.pc_on {
  display: none;
}

/* spだけ改行 */
.br-sp {
  display: block;
}

/* レスポンシブ */
@media (min-width: 768px) {
  .flex_Center--pc {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
  }

  .flex_Start--pc {
    display: flex;
    align-items: start;
    justify-content: space-between;
    gap: 10px;
  }

  .sp_on {
    display: none;
  }

  .pc_on {
    display: block;
  }

  .br-sp {
    display: none;
  }
}