@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@500&display=swap");
@font-face {
  font-family: "icomoon";
  src: url("../fonts/icomoon.eot?lzfmy2");
  src: url("../fonts/icomoon.eot?lzfmy2#iefix") format("embedded-opentype"), url("../fonts/icomoon.ttf?lzfmy2") format("truetype"), url("../fonts/icomoon.woff?lzfmy2") format("woff"), url("../fonts/icomoon.svg?lzfmy2#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
}
[class^=icon-]::before, [class^=icon-]::after, a.htBtn::after, a.htToIndex::before {
  font-family: "icomoon" !important;
  speak: none;
  font-style: normal;
  font-variant: normal;
  text-transform: none; /*line-height:1;*/
}

.icon-location::before {
  content: "\e900";
}

.icon-link::after {
  content: "\e9cb";
}

.icon-arrow-t::before, a.htToIndex::before {
  content: "\e908";
}

.icon-arrow-b::before {
  content: "\e909";
}

.icon-arrow-l::before {
  content: "\e90a";
}

.icon-arrow-r::before, a.htBtn::after {
  content: "\e90b";
}

.icon-pdf::before {
  content: "\e90c";
}

.icon-img::before {
  content: "\e90d";
}

.icon-text::before {
  content: "\e90e";
}

.icon-excel::before {
  content: "\e90f";
}

.icon-word::before {
  content: "\e910";
}

.icon-link::after, a.htBtn::after {
  font-size: 14px;
  margin-left: 5px;
}

a.htToIndex::before {
  font-size: 14px;
  margin-right: 5px;
}

* {
  box-sizing: border-box;
}

.clearfix:after, .clearfix:before {
  content: "";
  display: block;
  clear: both;
}

.clearfix {
  display: block;
}

.hottopics p {
  margin-bottom: 1em;
}

.hottopics a {
  text-decoration: underline;
  transition: 0.2s;
}

.hottopics a:hover {
  text-decoration: none;
}

.skip {
  width: 1px;
  color: #000;
  font-size: 0.1%;
  line-height: 0.1;
  position: absolute;
  left: -3000px;
  z-index: 9999;
}

/*------------------------------------------------------------------------ main */
/*------------------------------------------------------------------------ header */
.twitter {
  display: inline-block;
}

.twitter iframe {
  vertical-align: bottom;
}

.fb-share-button {
  display: inline-block !important;
  vertical-align: top !important;
}

.fb-share-button span {
  vertical-align: top !important;
}

.fb-share-button iframe {
  max-width: none !important;
}

.sns-post-box .sclFb, .sns-post-box .sclTw, .sns-post-box .sclLine {
  vertical-align: top;
}

.sns-post-box .sclTw {
  padding: 4px 10px 5px;
  background-color: #000;
  border: 1px solid #333;
}

.sns-post-box .sclTw:hover {
  background-color: #333;
}

.sns-post-box .sclLine a {
  padding: 4px 10px 2px;
}

/*------------------------------ */
.htHeader {
  overflow: hidden;
  margin-bottom: 1em;
  border-radius: 16px;
  border: 1px solid rgba(0, 0, 0, 0.1);
  box-shadow: 0 16px 40px -30px rgba(0, 0, 0, 0.8);
  background-color: #FFF;
}

.htHeadTtl {
  min-height: 500px;
  background: url("../img/mv_bg.webp") no-repeat center bottom/cover;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .htHeadTtl {
    min-height: 350px;
    background: url("../img/mv_bg.webp") no-repeat left bottom/cover;
  }
}
@media screen and (max-width: 576px) {
  .htHeadTtl {
    min-height: initial;
    padding: 10vw 0;
  }
}
.htHeadTtl h1 {
  width: 80%;
}
@media screen and (max-width: 1024px) {
  .htHeadTtl h1 {
    width: 100%;
  }
}

.htHeadCap {
  padding: 0 30px 24px 30px;
  text-align: center;
  color: #FFF;
  font-weight: bold;
  background: #9fd05a;
}

.htAnchor {
  background: url("../img/bg_muscat_01.webp") no-repeat center/cover, url("../img/green_noise.webp") no-repeat center/cover;
  padding: 36px 0;
}
.htAnchor ul {
  width: 100%;
  max-width: fit-content;
  margin: 0 auto;
  padding: 0 10px;
  display: flex;
  flex-direction: column;
  gap: 20px;
  text-align: center;
}
@media screen and (max-width: 576px) {
  .htAnchor ul {
    text-align: left;
  }
}
.htAnchor ul li {
  line-height: 1.5;
  font-size: 14px;
}
.htAnchor ul li strong {
  font-size: 16px;
}
.htAnchor ul li a {
  display: inline-block;
  padding-left: 1.25em;
  position: relative;
}
.htAnchor ul li a::before {
  content: "ー";
  position: absolute;
  top: 0px;
  left: 0px;
}

.htAncTtl {
  margin: 0 0.5em 30px 0.5em;
  font-weight: bold;
  text-align: center;
  color: #4b6919;
}

.htAncTtl::after, .htAncTtl::before {
  content: " - ";
}

.htAnchor dt {
  width: 100%;
  margin-bottom: 0.5em;
}

.htAnchor dt a {
  display: block;
  padding: 4px 0;
  color: #FFF;
  text-align: center;
  font-weight: bold;
  text-decoration: none;
}

.htAnchor dt.htA1 a, #area1 h2.htAreaTtl {
  background-color: #E46551;
}

.htAnchor dt.htA2 a, #area2 h2.htAreaTtl {
  background-color: #2f4931;
}

.htAnchor dd {
  margin-bottom: 1em;
  padding: 0 0.5em;
}

.htAnchor dd ul li {
  margin-bottom: 0.2em;
  padding-left: 1em;
}

.htAnchor dd li:before {
  content: "-";
  display: inline-block;
  width: 1em;
  margin-left: -1em;
  text-align: center;
}

/*------------------------------------------------------------------------ htBlock */
h2.htAreaTtl {
  position: relative;
  margin: 0 0 16px 0;
  padding:8px 0;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 900;
  text-align: center;
  font-size: min(5.4vw, 2em);
  color: #FFF;
  line-height: 1;
}

h2.htAreaTtl::before {
  content: "";
  position: absolute;
  left: 0;
  top: -1px;
  width: 100%;
  height: 5px;
  background-image: url("../img/bg_h2.png");
  background-position: center top;
  background-repeat: repeat-x;
  background-size: 20px auto;
}

.htGroup {
  background: url("../img/green_noise.webp") repeat-y center top/1500px;
}

/*アルファ.25*/
#area1.htGroup {
  background-color: #F8D9D3;
}

#area2.htGroup {
  background-color: #F6E0D0;
}

#area3.htGroup {
  background-color: #E5EED7;
}

#area4.htGroup {
  background-color: #E9D6DF;
}

#area5.htGroup {
  background-color: #DEDDEC;
}

#area6.htGroup {
  background-color: #F0E5D4;
}

.htBlock {
  padding: 0 5px 16px 5px;
  margin-bottom: 16px;
}

.htSpotTtl {
  position: sticky;
  top: 0;
  max-width: 96%;
  margin-left: -5px;
  margin-bottom: 16px;
}

.htSpotTtl::after {
  display: block;
  content: "";
  position: absolute;
  z-index: -1;
  bottom: -10px;
  right: -18px;
  border: 16px solid #223524;
  border-right-width: 12px;
  border-right-color: transparent;
}

.htSpotTtl > div {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 8px;
  background: #2f4931;
  color: #fff;
}

.htSpotTtl > div::after {
  position: absolute;
  bottom: -10px;
  display: block;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-color: #29201e transparent transparent transparent;
}

.htSpotTtl > div::after {
  right: 0;
  border-width: 10px 10px 0 0;
}

.htSpotTtl h3 {
  padding: 0 8px 0 0;
  line-height: 1;
  font-size: min(4.3vw, 1.4em);
}

.htBox {
  border-radius: 16px;
  background: #FFF;
  overflow: hidden;
  margin-bottom: 5px;
  padding-bottom:16px;
  box-shadow: 0 8px 10px -5px rgba(0, 0, 0, 0.2);
}

.htImg1 {
  text-align: center;
}

.htTxt1-1 {
  padding: 10px;
  background: #9fd05a;
  font-feature-settings: "palt";
}

.htTxt1-1 a {
  color: #FFF;
  text-decoration: none;
}

.htTxt1-1 p {
  font-size: min(4.7vw, 1em);
  font-weight: bold;
  margin-bottom: 0.5em;
}
.htTxt1-1 p:last-child {
  margin-bottom: 0;
}

.htTxt1-1 h4 {
  margin-bottom:.5em;
  font-feature-settings: "palt";
  font-size: min(5.3vw, 1.5em);
  font-family: "M PLUS Rounded 1c", sans-serif;
}

.htTxt1-1 h4 span {
  display: block;
  font-size: min(4.5vw, 0.75em);
}

.htTxt1-2 {
  padding: 10px 10px 0 10px;
}
.htTxt1-2 p {
  line-height: 1.8;
}

.htIcon {
  margin-bottom: 1em;
}

.htIcon li {
  display: inline-block;
  border: 1px solid rgb(245, 111, 137);
  border-radius: 4px;
  padding: 1px 5px;
  margin-right: 8px;
  color: rgb(245, 111, 137);
  font-size: 1.2rem;
  font-weight: bold;
  letter-spacing: -0.05em;
}

.htBox2 {
  padding: 10px;
}

.htBox2 table,.htKariList table {
  width: 100%;
  border-collapse: collapse;
  border: none;
  border-top: 1px solid rgba(141, 110, 99, 0.5);
}
@media screen and (max-width: 768px) {
  .htBox2 table,.htKariList table {
    font-size: 14px;
  }
}

.htBox2 tr,.htKariList tr {
  border-bottom: 1px solid rgba(141, 110, 99, 0.5);
}

.htBox2 th,.htKariList th{
  width: 4.5em;
  padding: 10px 8px;
  background: rgba(190, 156, 145, 0.15);
  border: none;
  color: rgb(141, 110, 99);
  text-align: center;
  font-feature-settings: "palt" 1;
}
.htKariList th{
  width:6em;
}

.htBox2 td,.htKariList td {
  border: none;
  padding: 10px 8px;
  vertical-align: middle;
}
.htBox2 td p {
  margin-bottom: 0;
}
.htBox2 td p:not(:last-child) {
  margin-bottom: 10px;
}

.htBox2 td ul {
  list-style: disc;
  padding-left: 18px;
}

.htBtnLast {
  text-align: center;
}

a.htBtn {
  display: inline-block;
  min-width: 280px;
  padding: 0.2em 1.5em;
  background:#8CBD47;
  box-shadow: 0 6px 0 #669721;
  border-radius: 8px;
  text-align: center;
  color: #FFF;
  font-weight: bold;
  text-decoration: none;
  transition: none;
  transition: 0.3s;
  position: relative;
  top: 0px;
}

a.htBtn:hover {
  top: 6px;
  box-shadow: 0 0px 0 #669721;
}

a.htToIndex {
  display: block;
  max-width: 16em;
  padding: 0.5em 1em;
  margin: 0 auto 16px;
  background: #714f44;
  border: 2px solid #714f44;
  border-radius: 8px;
  text-align: center;
  color: #FFF;
  font-weight: bold;
  text-decoration: none;
  transition: none;
}

a.htToIndex:hover {
  background: #FFF;
  color: #714f44;
}
.htBoxIn {
  border-radius: 10px;
  overflow: hidden;
  border: 2px solid rgba(141, 110, 99, 0.4);
  margin: 8px;
}

.htBtnLast a.htBtn {
  font-size: 120%;
  padding: 0.5em 1.5em;
}
.htTxt3 {
  padding: 1em 0 5px;
}

.htTxt3 p {
  padding: 0 10px;
}

.anc {
  display: block;
  position: relative;
  top: -100px;
}

.htKariList {
  width: 100%;
  /* max-width: 850px; */
  margin: 0 auto;
}
.htKariList .box {
  display: flex;
  flex-wrap: wrap;
  padding-bottom:16px;
  
  
  /*margin-bottom:16px; gap: 50px; */
  /* border-bottom: 1px solid rgba(141, 110, 99, 0.5);
  padding-bottom: 20px;
  margin-bottom: 20px; */
}
.htKariList .box:last-of-type{
  margin-bottom:0;
  padding-bottom:0;
}
.htKariList .box h3 {
  width:100%;
  font-size: 16px;
  font-size: 1.6rem;
  color:#2f4931;
  border-top: 1px solid rgba(47, 73, 49, 1);
  background-color: rgba(47, 73, 49, .15);
  padding:10px;

  text-align: center;
}
.htKariList .box .boxL {
  width: 100%;
}
.htKariList .box .boxL iframe{
  width:100%;
  height:50vh;
  max-height:300px;
}
.htKariList .box .boxR{
  padding:16px 10px 1px;
}
.htKariBtn{
  text-align:center;
}
.htKariBtn a.htBtn {
  padding:.3em .5em;
}

.htKariBtn a.htBtn::after {
  font-size: 8px;
}
/*SP only */
@media screen and (max-width: 599px) {
  .htKariList .box .boxL{
    
  }
}
/*TB以上 */
@media screen and (min-width: 600px) {
  .htBox3 {
    padding: 20px;
  }
  .htKariList .box h3{
    text-align:left;
  }
  .htKariList .box .boxL{
    width:50%;
    padding:16px 0;
    order:2;
  }
  .htKariList .box .boxR{
    width:50%;
    padding:16px 16px 16px 0;
  }
}
/*PC以上 */
@media screen and (min-width: 1025px) {
  .htKariList .box{
    padding-bottom:24px;
  }
  .htKariList th{
    width:10em;
  }
  .htKariList .box .boxR{
    padding-right:24px;
  }
}

/*SP only */
@media screen and (max-width: 599px) {
  .pub .snsBox {
    margin-top: 0.3em;
  }
  .forPC, .forTB, .hiddenSP {
    display: none;
  }
  .htImg1 {
    background-color: rgb(245, 111, 137);
  }
  .htImg2 {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 10px;
  }
  .htImg2 li {
    width: 50%;
    padding: 0 1px;
  }
}
/*TB only */
@media screen and (min-width: 600px) and (max-width: 1099px) {
  .forPC, .forSP, .hiddenTB {
    display: none;
  }
}
/*TB以上 */
@media screen and (min-width: 600px) {
  .htHeader {
    margin-bottom: 40px;
  }
  .htAnchor dl {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    max-width: 45em;
    margin: 0 auto 16px;
  }
  .htAnchor dt {
    width: 15em;
    padding-bottom: 0.5em;
    margin-bottom: 0.7em;
    border-bottom: 1px dotted #714f44;
  }
  .htAnchor dd {
    width: calc(100% - 15em - 1px);
    padding: 0 0 0.5em 1em;
    margin: 0 0 0.7em 1px;
    border-bottom: 1px dotted #714f44;
  }
  .htAnchor dt:last-of-type, .htAnchor dd:last-of-type {
    border-bottom: none;
  }
  .htGroup {
    margin-top: 40px;
  }
  .htBlock {
    padding: 0 16px 1px 16px;
  }
  h2.htAreaTtl {
    margin: 0 0 24px 0;
    padding:16px 0;
  }
  h2.htAreaTtl::before {
    height: 9px;
    background-size: 40px auto;
  }
  .htSpotTtl {
    margin-left: -26px;
    margin-bottom: 20px;
  }
  .htSpotTtl > div {
    padding: 10px 24px;
  }
  .htSpotTtl > div::before {
    position: absolute;
    bottom: -10px;
    display: block;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-color: #29201e transparent transparent transparent;
  }
  .htSpotTtl > div::before {
    left: 0;
    border-width: 10px 0 0 10px;
  }
  .htBox {
    margin: 0 0 24px;
    padding-bottom: 16px;
  }
  .htBox1 {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
  }
  .htTxt1 {
    width: 40%;
  }
  .htTxt1-1 {
    padding:24px;
  }
  .htTxt1-2 {
    padding: 16px 24px 1px;
  }
  .htImg1 {
    width: 60%;
  }
  .htBox2 {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    padding: 24px 24px 8px;
  }
  .htImg2 {
    width: 30%;
    padding-right: 16px;
  }
  .htImg2 li {
    margin-bottom: 10px;
  }
  .htBox2 table {
    width: 100%;
  }
  .htImg2 + table {
    width: 70%;
  }
  .htBox2 th{
    width: 10em;
  }

  #no01-9 .htBox > .htBox1 .htTxt1 {
    width: 100%;
  }
  .htBoxIn {
    margin: 32px 40px 40px;
    border: 6px solid rgba(141, 110, 99, 0.4);
  }
  .htImg3 {
    padding-bottom: 16px;
    text-align: center;
  }
  .htImg3 img {
    margin: 0 auto;
  }
  .htTxt3 {
    padding: 0 0 24px 24px;
    text-align: center;
  }
}
/*PC以上 */
@media screen and (min-width: 1100px) {
  .forTB, .forSP, .hiddenPC {
    display: none;
  }
  .htBlock {
    padding: 0 32px 16px 32px;
  }
  .htSpotTtl {
    margin-left: -42px;
  }
  .htSpotTtl > div {
    padding-left: 42px;
  }
}/*# sourceMappingURL=style.css.map */