@charset "UTF-8";
:root {
    --font-family: "YakuHanJP", "Noto Sans Japanese", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
    --font-family-en: "Montserrat", sans-serif;
    --font-color: #000;
    --font-color-brown: #5e5650;
    --font-color-blue: #344669;
    --font-color-blue-light: #5e77a8;
    --font-color-orange: #f0bf6e;
    --blue: #5e77a8;
    --blue-20: #dfe4ee;
    --blue-50: #aebbd3;
    --light-gray: #d2d7d9;
    --light-orange: #fadeaf;
    --light-orange-30: #faecd3;
    --light-orange-70: #f4d39a;
    --beige: #e3decb;
    --beige-20: #f9f8f5;
    --beige-50: #f5f3ed;
    --beige-60: #eeebe0;
    --gold: #dfc080;
    --border-radius: 20px;
    --bg-gradation: linear-gradient(115deg, #fcefd7, #fcefd7 20%, #fef8ef 70%, #fef8ef);
    --font-size-sp: 12px;
    --font-size-tb: 13px;
    --font-size-pc: 18px;
    --col1: 8.3333%;
    --col2: 16.6666%;
    --col3: 25%;
    --col4: 33.3333%;
    --col5: 41.6666%;
    --col6: 50%;
    --col7: 58.333%;
    --col8: 66.666%;
    --col9: 75%;
    --col10: 83.333%;
    --col11: 91.666%;
    --col12: 100%;
    --inner-col1: 8.73%;
    --inner-col2: 17.46%;
    --inner-col3: 26.19%;
    --inner-col4: 34.92%;
    --inner-col5: 43.65%;
    --inner-col6: 52.38%;
    --inner-col7: 61.11%;
    --inner-col8: 69.84%;
    --inner-col9: 78.57%;
    --inner-col10: 87.3%;
    --inner-col11: 96.03%;
    --inner-col12: 104.76%;
}

/* guide */
#guide.container {
  padding: 10px 15px 50px;
  background: #FFF;
  color: #333;
}

#guide h2 {
	font-size: min(7.7vw, var(--36px));
  text-align: center;
  line-height: 0.8;
  margin-bottom: 30px;
  font-weight: 400;
  color: #333 !important;
}

#guide h2 span {
  font-size: 16px;
  letter-spacing: 2px;
}

#guide h3 {
  font-size: min(3.6vw, var(--20px));
  border: 1px solid #333;
  border-radius: 5px;
  margin-top: 15px;
  padding: 5px;
  min-height: 50px;
  line-height: 1.5;
  text-align: center;
  font-weight: 500;
  box-sizing: border-box;
  position: relative;
  color: #333 !important;
}

#guide .link_underline {
  text-decoration: underline;
}

#guide h3.one-line {
  display: flex;
  align-items: center;
  justify-content: center;
}

#guide h3.link::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-48%);
  width: 20px;
  height: 20px;
  background: url(../img/external_link-icon.png);
  background-size: cover;
}

#guide h3 a {
  color: #333;
}

#guide p {
  font-size: min(3.2vw, var(--18px));
  padding: 5px 0;
  color: #333 !important;
}

@media screen and (min-width:660px) {
  #guide.container {
    padding: 0 30px 50px;
  }

  #guide h3 {
    min-height: 60px;
    margin-top: 20px;
  }

  #guide h3.link::after {
    width: 25px;
    height: 25px;
    right: 15px;
  }
}


.origin * {
  /* color: #344669 !important */
}

.origin .footer {
  margin: 0 auto;
  /* max-width: 490px; */
  padding-bottom: 15vw
}

.origin .footer .col4-sp {
  width: 36.7346938776vw
}

.origin .footer .col9 {
  width: auto
}

.origin .footer .copyright .col9 {
  padding-right: 15px !important
}

@media screen and (min-width:490px) {
  .origin .footer .col4-sp {
    width: 180px
  }
}

@media screen and (min-width:768px) {
  .origin .footer {
    padding-bottom: 0
  }
}

.origin .footer {
  background: #fff;
  color: var(--font-color-blue);
  font-weight: 500
}

.origin .footer .footer_menu {
  width: 94%;
  border-top: 2px solid #ccc;
  border-bottom: 2px solid #ccc;
  padding: 10px;
  font-size: 12px;
  margin-bottom: 10px;
}

.origin .footer .footer_menu a {
  display: inline-block;
  font-size: var(--16px);
  line-height: 1.4;
  padding: 3px 0;
  vertical-align: middle;
  color: #333 !important;
  white-space: nowrap;
  letter-spacing: 0;
}

.origin .footer .footer_menu a:after {
  background: var(--beige);
  content: "";
  display: inline-block;
  height: 12px;
  margin: 0 5px;
  -webkit-transform: translateY(2px);
  transform: translateY(2px);
  width: 1px
}

.origin .footer .footer_menu a:last-child:after {
  display: none
}

.origin .footer .copyright {
  font-size: 80%;
  padding: 10px 15px 50px;
}

@media screen and (max-width:767px) {
  .origin .sp_none {
    display: none
  }

  .origin .grid_container {
    width: 100%
  }
}

@media screen and (min-width:768px) {
  .origin .pc_none {
    display: none
  }

  .origin .footer .footer_menu {
        padding: 15px 15px;
        margin: 0px auto 24px;
  }

  .origin .footer .footer_menu a:after {
    height: 15px;
    margin: 0 15px
  }

  .origin .footer .footer_menu a:nth-child(3):after {
    display: inline-block
  }

  .origin .footer .copyright {
    padding: 0
  }

  .origin .footer .copyright .col9 {
    padding-right: 170px;
    font-size: 12px;
	text-align: right;
	color: #333;
	margin: 16px;
  }
}