@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;500;600;700&display=swap");
* {
  box-sizing: border-box; /*余白や線を幅や高さに含める*/
}

body {
  width: 100%;
  font-family: "Noto Sans JP";
  color: #111;
  font-weight: 400;
  font-size: 4.2vw;
  font-feature-settings: "palt";
  line-height: 1.8em;
  letter-spacing: 0.1em;
  overflow-x: hidden;
  -moz-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
@media screen and (min-width: 768px) {
  body {
    font-size: 16px;
    width: 100%;
    position: relative;
  }
}

.shippori {
  font-family: "Shippori Mincho", serif;
}

@media (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}
main {
  overflow: hidden;
}

span.asterisk {
  font-size: 0.6em;
  vertical-align: top;
  position: relative;
  top: -0.1em;
}

.smp-block {
  display: block;
}
@media screen and (min-width: 768px) {
  .smp-block {
    display: none;
  }
}

.pc-block {
  display: none;
}
@media screen and (min-width: 768px) {
  .pc-block {
    display: block;
  }
}

img {
  width: 100%;
  height: auto;
  max-width: 100%;
  height: auto;
  display: block;
  vertical-align: bottom;
}

a {
  color: #000;
  text-decoration: none;
  transition: all 0.6s;
}

a.fix-btn {
  display: block;
  position: fixed;
  right: 0;
  bottom: 0;
  width: 100%;
  z-index: 999;
}
@media screen and (min-width: 768px) {
  a.fix-btn {
    right: 50px;
    bottom: 50px;
    width: 162px;
  }
}

a.fix-btn02 {
  display: block;
  width: 100%;
  padding: 3% 0;
  text-align: center;
  background: #3e3a39;
  color: #FFF;
  position: fixed;
  right: 0;
  bottom: 0;
  width: 100%;
  z-index: 999;
}
@media screen and (min-width: 768px) {
  a.fix-btn02 {
    width: 162px;
    height: 162px;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1.4em;
    border-radius: 50%;
    right: 50px;
    bottom: 50px;
  }
}
a.fix-btn02 span {
  display: inline-block;
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  a.fix-btn02 span {
    line-height: 1.5em;
    font-size: 20px;
    position: relative;
  }
  a.fix-btn02 span::after {
    content: " ";
    display: block;
    width: 9px;
    height: 25px;
    background: url(../myimg/fix-arrow.png) no-repeat center center;
    background-size: contain;
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translate(-50%, 120%);
  }
}
@media screen and (min-width: 768px) {
  a.fix-btn02.inversion span {
    padding-top: 20%;
  }
  a.fix-btn02.inversion span::after {
    transform-origin: center center;
    bottom: auto;
    top: 30%;
    transform: translate(-50%, -120%) rotate(-180deg);
  }
}

div.hero-area {
  position: relative;
  z-index: 0;
}
div.hero-area a {
  display: block;
  position: absolute;
  top: 1em;
  left: 1em;
  width: 67%;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  div.hero-area a {
    width: 23%;
    top: 3%;
    left: 2%;
  }
}

section.sec-present {
  background: #ca2328;
  padding: 10% 0 0;
}
@media screen and (min-width: 768px) {
  section.sec-present {
    padding: 50% 0 0;
    position: relative;
  }
}
@media screen and (min-width: 1000px) {
  section.sec-present {
    padding: 400px 0 0;
  }
}
@media screen and (min-width: 768px) {
  section.sec-present h2.present-img {
    width: 83%;
    max-width: 838px;
    top: -25px;
    left: 0;
    right: 0;
    margin: auto;
    position: absolute;
  }
}
section.sec-present p {
  text-align: center;
  color: #fff;
  font-size: 0.76em;
  letter-spacing: 0;
  line-height: 1.6em;
}
@media screen and (min-width: 768px) {
  section.sec-present p {
    font-size: 1.6vw;
    margin: -15vw auto 0;
  }
}
@media screen and (min-width: 1000px) {
  section.sec-present p {
    font-size: 16px;
    margin: -40px auto 0;
  }
}
@media screen and (min-width: 768px) {
  section.sec-present div.list-bg {
    margin: 32px auto 0;
    max-width: 1100px;
    position: relative;
  }
  section.sec-present div.list-bg::after, section.sec-present div.list-bg::before {
    content: "";
    display: block;
    width: 100vw;
    height: 4px;
    background: #d7c698;
    bottom: 9px;
    position: absolute;
  }
  section.sec-present div.list-bg::after {
    left: 0;
    transform: translate(-100%, 0);
  }
  section.sec-present div.list-bg::before {
    right: 0;
    transform: translate(100%, 0);
  }
}

section.sec-list {
  background: #005237;
  padding: 0 0 10%;
}
@media screen and (min-width: 768px) {
  section.sec-list {
    padding: 0 0 100px;
  }
}
@media screen and (min-width: 768px) {
  section.sec-list div.sec-list-inner {
    width: 90%;
    max-width: 1100px;
    margin: auto;
  }
}
section.sec-list h2 {
  text-align: center;
  color: #fff;
  font-size: 1.6em;
  line-height: 1em;
}
@media screen and (min-width: 768px) {
  section.sec-list h2 {
    font-size: 32px;
  }
}
@media screen and (min-width: 1000px) {
  section.sec-list h2 {
    font-size: 44px;
  }
}
section.sec-list h2 span {
  display: inline-block;
  position: relative;
  padding: 0 1em;
}
section.sec-list h2 span::after, section.sec-list h2 span::before {
  content: "";
  display: block;
  width: 0.2em;
  height: 1em;
  background: linear-gradient(150deg, rgb(210, 183, 128), rgb(248, 246, 223) 50%, rgb(210, 183, 128));
  position: absolute;
  top: 0;
}
section.sec-list h2 span::after {
  left: 0;
}
section.sec-list h2 span::before {
  right: 0;
}
@media screen and (min-width: 768px) {
  section.sec-list div.list-area {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    margin-top: 60px;
  }
}
section.sec-list div.list-area nav {
  width: 76.4%;
  margin: 8% auto 3%;
}
@media screen and (min-width: 768px) {
  section.sec-list div.list-area nav {
    width: calc(100% - 530px);
    margin: 0;
  }
}
@media screen and (min-width: 1000px) {
  section.sec-list div.list-area nav {
    width: calc(100% - 700px);
  }
}
section.sec-list div.list-area nav ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
section.sec-list div.list-area nav ul li {
  width: 47%;
  text-align: center;
  border-radius: 0.8em;
  margin-bottom: 3%;
}
@media screen and (min-width: 768px) {
  section.sec-list div.list-area nav ul li {
    width: 100%;
    border-radius: 1em;
    margin-bottom: 10px;
  }
}
section.sec-list div.list-area nav ul li:nth-of-type(1) {
  background: #d67200;
}
section.sec-list div.list-area nav ul li:nth-of-type(2) {
  background: #cd5868;
}
section.sec-list div.list-area nav ul li:nth-of-type(3) {
  background: #9fb322;
}
section.sec-list div.list-area nav ul li:nth-of-type(4) {
  background: #3c8cb9;
}
section.sec-list div.list-area nav ul li:nth-of-type(5) {
  background: #1c9c57;
}
section.sec-list div.list-area nav ul li:nth-of-type(6) {
  background: #cbb021;
}
section.sec-list div.list-area nav ul li button {
  display: block;
  padding: 0.6em 0;
  background: none;
  border: none;
  color: #fff;
  font-size: 1.32em;
  width: 100%;
  position: relative;
}
@media screen and (min-width: 768px) {
  section.sec-list div.list-area nav ul li button {
    font-size: 28px;
    padding: 25px 0;
    cursor: pointer;
  }
}
@media screen and (min-width: 1000px) {
  section.sec-list div.list-area nav ul li button {
    font-size: 33px;
    padding: 21px 0;
  }
}
@media screen and (min-width: 1280px) {
  section.sec-list div.list-area nav ul li button {
    font-size: 40px;
    padding: 0.4em 0;
  }
}
@media screen and (min-width: 768px) {
  section.sec-list div.list-area nav ul li button.active::before {
    content: "";
  }
}
section.sec-list div.list-area nav ul li button::after {
  content: "";
  position: absolute;
  top: 55%;
  right: 0.8em;
  transform: translateY(-50%);
  border: 0.2em solid transparent;
  border-top: 0.6em solid #fff;
}
@media screen and (min-width: 768px) {
  section.sec-list div.list-area nav ul li button::after {
    top: 50%;
    border: 0.12em solid transparent;
    border-left: 0.4em solid #fff;
    right: 0.6em;
  }
}
@media screen and (min-width: 1000px) {
  section.sec-list div.list-area nav ul li button::after {
    right: 0.8em;
  }
}
@media screen and (min-width: 768px) {
  section.sec-list div.list-area nav ul li button::before {
    position: absolute;
    top: 50%;
    right: -60px;
    transform: translateY(-50%);
    border: 20px solid transparent;
    border-right: 40px solid #fff;
  }
}
@media screen and (min-width: 1000px) {
  section.sec-list div.list-area nav ul li button::before {
    right: -80px;
  }
}
section.sec-list div.list-area div.tenji-box-wrap {
  background: #fff;
  width: 88%;
  margin: auto;
  border-radius: 0.6em;
  overflow-y: scroll;
  height: 120vw;
}
@media screen and (min-width: 768px) {
  section.sec-list div.list-area div.tenji-box-wrap {
    width: 480px;
    height: 590px;
    margin: 0;
  }
}
@media screen and (min-width: 1000px) {
  section.sec-list div.list-area div.tenji-box-wrap {
    width: 632px;
  }
}
section.sec-list div.list-area div.tenji-box-wrap div.tenji-box {
  display: none;
}
section.sec-list div.list-area div.tenji-box-wrap div.tenji-box.active {
  display: block;
}
section.sec-list div.list-area div.tenji-box-wrap div.tenji-box ul {
  width: 93%;
  margin: auto;
  padding: 4% 0;
  /*li*/
}
@media screen and (min-width: 768px) {
  section.sec-list div.list-area div.tenji-box-wrap div.tenji-box ul {
    width: 88%;
  }
}
section.sec-list div.list-area div.tenji-box-wrap div.tenji-box ul li {
  margin-bottom: 5%;
  /*
  p.tenji-txt02{
  	margin: 0.4em 0;
  	@include mq(pc) {
  		width: 440px;
  		margin: 0.8em 0;
  	}
  }
  	*/
  /*p.add-txt01*/
}
@media screen and (min-width: 768px) {
  section.sec-list div.list-area div.tenji-box-wrap div.tenji-box ul li {
    position: relative;
  }
}
section.sec-list div.list-area div.tenji-box-wrap div.tenji-box ul li p.tenji-txt01 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  line-height: 1em;
  background: linear-gradient(150deg, rgb(215, 188, 130), rgb(248, 246, 223) 50%, rgb(215, 188, 130));
  padding: 0.8em 1em;
  gap: 0.6em;
  position: relative;
  letter-spacing: 0;
}
@media screen and (min-width: 768px) {
  section.sec-list div.list-area div.tenji-box-wrap div.tenji-box ul li p.tenji-txt01 {
    font-size: 18px;
  }
}
section.sec-list div.list-area div.tenji-box-wrap div.tenji-box ul li p.tenji-txt01::after {
  content: "";
  display: block;
  width: calc(100% - 5px);
  height: calc(100% - 5px);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border: solid 1px #fff;
}
section.sec-list div.list-area div.tenji-box-wrap div.tenji-box ul li p.tenji-txt01 span {
  display: block;
}
section.sec-list div.list-area div.tenji-box-wrap div.tenji-box ul li p.tenji-txt01 span.icon {
  width: 1.1em;
}
section.sec-list div.list-area div.tenji-box-wrap div.tenji-box ul li p.tenji-txt01 span.txt {
  width: calc(100% - 1.6em);
  font-size: 1.32em;
  font-weight: 500;
}
section.sec-list div.list-area div.tenji-box-wrap div.tenji-box ul li p.tenji-txt01 span.txt02 {
  width: calc(100% - 1.6em);
  font-size: 1.32em;
  line-height: 1.2em;
  font-weight: 500;
}
section.sec-list div.list-area div.tenji-box-wrap div.tenji-box ul li div.flex-box {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
@media screen and (min-width: 768px) {
  section.sec-list div.list-area div.tenji-box-wrap div.tenji-box ul li div.flex-box {
    width: 100%;
    min-height: 184px;
    margin: 0 0 0 auto;
  }
}
section.sec-list div.list-area div.tenji-box-wrap div.tenji-box ul li p.tenji-txt03 {
  font-size: 0.8em;
  letter-spacing: 0;
  line-height: 1.2em;
  margin: 0 0 0.6em;
  width: 100%;
}
@media screen and (min-width: 768px) {
  section.sec-list div.list-area div.tenji-box-wrap div.tenji-box ul li p.tenji-txt03 {
    font-size: 15px;
    margin: 0;
    width: 45%;
    margin-left: 55%;
  }
}
section.sec-list div.list-area div.tenji-box-wrap div.tenji-box ul li p.tenji-txt03 span.txt01 {
  /*								width: 100%;*/
}
section.sec-list div.list-area div.tenji-box-wrap div.tenji-box ul li p.tenji-txt03 span.txt02 {
  font-size: 1.3em;
  display: inline-block;
  padding-top: 5px;
}
@media screen and (min-width: 768px) {
  section.sec-list div.list-area div.tenji-box-wrap div.tenji-box ul li p.tenji-txt03 span.txt02 {
    font-size: 23px;
  }
}
section.sec-list div.list-area div.tenji-box-wrap div.tenji-box ul li div.tenji-img {
  width: 41%;
}
@media screen and (min-width: 768px) {
  section.sec-list div.list-area div.tenji-box-wrap div.tenji-box ul li div.tenji-img {
    width: 52%;
    position: absolute;
    bottom: 0;
    left: 0;
  }
}
section.sec-list div.list-area div.tenji-box-wrap div.tenji-box ul li div.link-box {
  width: 55.2%;
}
@media screen and (min-width: 768px) {
  section.sec-list div.list-area div.tenji-box-wrap div.tenji-box ul li div.link-box {
    width: 45%;
    margin-left: auto;
    margin-top: 10px;
  }
}
section.sec-list div.list-area div.tenji-box-wrap div.tenji-box ul li div.link-box a {
  display: block;
  margin: 0 0 0.4em;
}
section.sec-list div.list-area div.tenji-box-wrap div.tenji-box ul li p.add-txt01 {
  font-size: 0.8em;
  letter-spacing: -0.02em;
  line-height: 1.4em;
}
section.sec-list a.list-btn {
  display: block;
  margin: 8% 0 0;
}
@media screen and (min-width: 768px) {
  section.sec-list a.list-btn {
    margin: 60px 0 0;
  }
}

section.sec-taikan {
  background: #ca2328;
  padding: 0 0 20%;
  /*sec01-inner01*/
  /*sec01-inner02*/
}
@media screen and (min-width: 768px) {
  section.sec-taikan {
    padding: 0 0 70px;
  }
}
section.sec-taikan h2 {
  width: 80%;
  margin: auto;
  padding: 10% 0;
}
@media screen and (min-width: 768px) {
  section.sec-taikan h2 {
    width: 70%;
    max-width: 862px;
    padding: 130px 0 70px;
  }
}
section.sec-taikan div.taikan-cont {
  width: 90%;
  margin: 0 auto;
  background: #FFF;
  position: relative;
}
@media screen and (min-width: 768px) {
  section.sec-taikan div.taikan-cont {
    width: 98%;
    max-width: 1100px;
    padding: 0 0 20px;
  }
}
section.sec-taikan div.taikan-cont h3 {
  width: 63%;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  section.sec-taikan div.taikan-cont h3 {
    width: 90%;
    max-width: 940px;
    margin: 40px auto;
  }
}
section.sec-taikan div.taikan-inner01 {
  /*div.taikan-cont-inner01-lf-cont*/
}
section.sec-taikan div.taikan-inner01 h4 {
  width: 86%;
  margin: 0 auto;
  margin-bottom: 6%;
  text-align: center;
  background: rgb(215, 188, 130);
  background: linear-gradient(100deg, rgb(215, 188, 130) 0%, rgb(253, 251, 228) 48%, rgb(215, 188, 130) 100%);
  padding: 0.6em 0;
  font-size: 1.2em;
}
@media screen and (min-width: 768px) {
  section.sec-taikan div.taikan-inner01 h4 {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  section.sec-taikan div.taikan-inner01 {
    width: 90%;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
  }
}
section.sec-taikan div.taikan-inner01 p {
  font-size: 0.8em;
  text-align: justify;
  line-height: 1.8em;
  letter-spacing: 0;
}
section.sec-taikan div.taikan-inner01 dt {
  margin-bottom: 5%;
}
section.sec-taikan div.taikan-inner01 dd figure {
  margin-bottom: 5%;
}
section.sec-taikan div.taikan-inner01 div.taikan-inner01-lf-cont {
  /*dl.lf-cont-dl01*/
  /*dl.lf-cont-dl02*/
}
@media screen and (min-width: 768px) {
  section.sec-taikan div.taikan-inner01 div.taikan-inner01-lf-cont {
    width: 48%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
section.sec-taikan div.taikan-inner01 div.taikan-inner01-lf-cont dl.lf-cont-dl01 {
  width: 86%;
  margin: 0 auto;
  margin-bottom: 10%;
}
@media screen and (min-width: 768px) {
  section.sec-taikan div.taikan-inner01 div.taikan-inner01-lf-cont dl.lf-cont-dl01 {
    width: 43%;
    margin: 0;
  }
}
section.sec-taikan div.taikan-inner01 div.taikan-inner01-lf-cont dl.lf-cont-dl02 {
  width: 86%;
  margin: 0 auto;
  margin-bottom: 10%;
}
@media screen and (min-width: 768px) {
  section.sec-taikan div.taikan-inner01 div.taikan-inner01-lf-cont dl.lf-cont-dl02 {
    width: 47%;
    margin: 0;
  }
}
section.sec-taikan div.taikan-inner01 div.taikan-inner01-rt-cont {
  /*dl.rt-cont-dl01*/
  /*dl.rt-cont-dl02*/
}
@media screen and (min-width: 768px) {
  section.sec-taikan div.taikan-inner01 div.taikan-inner01-rt-cont {
    width: 48%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
section.sec-taikan div.taikan-inner01 div.taikan-inner01-rt-cont dl.rt-cont-dl01 {
  width: 86%;
  margin: 0 auto;
  margin-bottom: 10%;
}
@media screen and (min-width: 768px) {
  section.sec-taikan div.taikan-inner01 div.taikan-inner01-rt-cont dl.rt-cont-dl01 {
    width: 53%;
    margin: 0;
  }
}
section.sec-taikan div.taikan-inner01 div.taikan-inner01-rt-cont dl.rt-cont-dl01 dd p span {
  font-size: 0.8em;
  line-height: 1.4em;
  display: block;
  text-indent: -1em;
  margin-left: 1em;
}
section.sec-taikan div.taikan-inner01 div.taikan-inner01-rt-cont dl.rt-cont-dl02 {
  width: 86%;
  margin: 0 auto;
  margin-bottom: 10%;
}
@media screen and (min-width: 768px) {
  section.sec-taikan div.taikan-inner01 div.taikan-inner01-rt-cont dl.rt-cont-dl02 {
    width: 40%;
    margin: 0;
  }
}
section.sec-taikan div.taikan-inner02 {
  /*ul*/
}
section.sec-taikan div.taikan-inner02 h2 {
  width: 76%;
  margin: 0 auto;
  margin-bottom: 5%;
  padding: 0;
}
@media screen and (min-width: 768px) {
  section.sec-taikan div.taikan-inner02 h2 {
    width: 80%;
    max-width: 912px;
    margin-bottom: 45px;
    margin-top: 45px;
  }
}
section.sec-taikan div.taikan-inner02 ul {
  width: 80%;
  margin: 0 auto;
  /*li*/
}
@media screen and (min-width: 768px) {
  section.sec-taikan div.taikan-inner02 ul {
    width: 90%;
    display: flex;
    flex-wrap: wrap;
  }
}
section.sec-taikan div.taikan-inner02 ul li {
  position: relative;
  padding: 10% 0;
  /*pc*/
}
@media screen and (min-width: 768px) {
  section.sec-taikan div.taikan-inner02 ul li {
    width: 47%;
    padding: 0 0 30px 0;
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 30px;
  }
  section.sec-taikan div.taikan-inner02 ul li:nth-child(2n+1) {
    margin-right: 6%;
  }
  section.sec-taikan div.taikan-inner02 ul li:nth-child(2n+1)::before {
    content: " ";
    display: block;
    width: 1px;
    height: 89%;
    background: #222;
    position: absolute;
    right: -6%;
    top: 0;
    transform: translate(0, 0);
  }
  section.sec-taikan div.taikan-inner02 ul li div.inner02-rt-cont {
    width: 48%;
    margin-left: 2%;
  }
}
section.sec-taikan div.taikan-inner02 ul li::after {
  content: " ";
  display: block;
  width: 100%;
  height: 1px;
  background: #222;
  position: absolute;
  left: 0;
  bottom: 0;
  transform: translate(0, 0);
}
section.sec-taikan div.taikan-inner02 ul li:last-child::after {
  display: none;
}
@media screen and (min-width: 768px) {
  section.sec-taikan div.taikan-inner02 ul li:last-child::after {
    display: block;
  }
}
section.sec-taikan div.taikan-inner02 ul li div.inner02-lf-cont {
  margin: 0 0 3%;
}
@media screen and (min-width: 768px) {
  section.sec-taikan div.taikan-inner02 ul li div.inner02-lf-cont {
    width: 48%;
    margin: 0;
  }
}
section.sec-taikan div.taikan-inner02 ul li p.caution {
  font-size: 0.72em;
  font-weight: bold;
  line-height: 1.4em;
  margin-top: 3%;
  font-weight: 400;
  letter-spacing: 0;
}
@media screen and (min-width: 768px) {
  section.sec-taikan div.taikan-inner02 ul li p.caution {
    font-size: 10px;
    width: 100%;
    margin-top: 0;
  }
}
section.sec-taikan p.attention {
  font-size: 0.8em;
  text-align: center;
  color: #fff;
}
@media screen and (min-width: 768px) {
  section.sec-taikan p.attention {
    font-size: 11px;
    margin-top: 15px;
  }
}
section.sec-taikan p.btm-txt {
  text-align: center;
  color: #fff;
  margin: 10% 0 5%;
  letter-spacing: 0;
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  section.sec-taikan p.btm-txt {
    margin: 50px 0 30px;
    font-size: 24px;
  }
}
section.sec-taikan a {
  background: #111;
  text-align: center;
  color: #fff;
  display: block;
  padding: 1em 0;
  letter-spacing: 0;
  width: 88%;
  margin: auto;
  border: solid 1px #fff;
}
@media screen and (min-width: 768px) {
  section.sec-taikan a {
    width: 411px;
    margin: auto;
    font-size: 20px;
    padding: 0.4em 0;
  }
}
section.sec-taikan a span {
  display: inline-block;
  position: relative;
}
section.sec-taikan a span::after {
  content: "";
  position: absolute;
  top: 40%;
  right: -2em;
  transform: translateY(-50%);
  border: 0.32em solid transparent;
  border-bottom: 0.6em solid #fff;
}

div.sec-event-inner p.caution {
  color: #FFF;
}

section.sec-event {
  background: #005237;
  padding: 0 0 10%;
}
section.sec-event a.event-cm-btn {
  background: #111;
  text-align: center;
  color: #fff;
  display: block;
  padding: 0.4em 0;
  letter-spacing: 0;
  width: 100%;
  border: solid 1px #fff;
}
@media screen and (min-width: 768px) {
  section.sec-event a.event-cm-btn {
    width: 411px;
    margin: auto;
    font-size: 20px;
  }
}
section.sec-event a.event-cm-btn span {
  display: inline-block;
  position: relative;
}
section.sec-event a.event-cm-btn span::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -2em;
  transform: translateY(-50%);
  border: 0.32em solid transparent;
  border-left: 0.6em solid #fff;
}
section.sec-event div.event-title-wrap {
  position: relative;
  margin: 0 0 10%;
}
section.sec-event div.event-title-wrap h2 {
  background: #ca2328;
}
section.sec-event div.event-title-wrap a {
  display: block;
  position: absolute;
  width: 88%;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 2;
  transform: translate(0, 50%);
}
@media screen and (min-width: 768px) {
  section.sec-event div.event-title-wrap a {
    width: 27%;
  }
}
section.sec-event h3.event-title02 {
  width: 94%;
  margin: 0 auto;
}
section.sec-event h3.event-title02 span {
  display: none;
}
@media screen and (min-width: 768px) {
  section.sec-event h3.event-title02 {
    max-width: 900px;
    position: relative;
    z-index: 1;
  }
  section.sec-event h3.event-title02 span {
    display: block;
  }
  section.sec-event h3.event-title02 span.bg01-pc {
    width: 187px;
    position: absolute;
    left: 0;
    bottom: 0;
    transform: translate(-65%, 10%);
    z-index: -1;
  }
  section.sec-event h3.event-title02 span.bg02-pc {
    width: 134px;
    position: absolute;
    right: 0;
    bottom: 0;
    transform: translate(70%, 0);
    z-index: -1;
  }
}
section.sec-event div.event-area01 {
  width: 96%;
  margin: 0 auto;
  box-sizing: border-box;
  padding: 5% 3%;
  /**/
}
@media screen and (min-width: 768px) {
  section.sec-event div.event-area01 {
    max-width: 1000px;
    margin-top: 60px;
    padding: 50px;
  }
}
section.sec-event div.event-area01 h4 {
  width: 64%;
  margin: 0 auto;
  margin-bottom: 4%;
}
@media screen and (min-width: 768px) {
  section.sec-event div.event-area01 h4 {
    max-width: 400px;
    margin-bottom: 30px;
  }
}
@media screen and (min-width: 768px) {
  section.sec-event div.event-area01 ul.event-cont-list {
    margin-top: 30px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
}
section.sec-event div.event-area01 ul.event-cont-list li {
  position: relative;
  margin-top: 10%;
}
section.sec-event div.event-area01 ul.event-cont-list li span.icon {
  display: none;
  width: 36%;
  position: absolute;
  right: 0;
  top: 0;
  transform: translate(15%, -20%);
}
@media screen and (min-width: 768px) {
  section.sec-event div.event-area01 ul.event-cont-list li span.icon {
    display: block;
  }
}
@media screen and (min-width: 768px) {
  section.sec-event div.event-area01 ul.event-cont-list li {
    width: calc((100% - 20px) / 2);
    margin-top: 0;
    margin-bottom: 20px;
  }
  section.sec-event div.event-area01 ul.event-cont-list li:nth-child(odd) {
    margin-right: 20px;
  }
  section.sec-event div.event-area01 ul.event-cont-list li span.icon {
    max-width: 105px;
  }
}
section.sec-event div.event-area01 p.caution {
  margin-top: 5%;
  font-size: 0.76em;
  line-height: 1.5em;
}
@media screen and (min-width: 768px) {
  section.sec-event div.event-area01 p.caution {
    font-size: 11px;
    margin-top: 20px;
  }
}
section.sec-event div.event-area02 {
  width: 93.2%;
  margin: auto;
  background: #fff;
  padding: 0 0 10%;
}
@media screen and (min-width: 768px) {
  section.sec-event div.event-area02 {
    width: 90%;
    max-width: 1000px;
    padding: 0 0 53px;
  }
}
section.sec-event div.event-area02 div.event-area02-box02 {
  background: #111;
  width: 97.8%;
  margin: auto;
  padding: 5% 0 10%;
}
@media screen and (min-width: 768px) {
  section.sec-event div.event-area02 div.event-area02-box02 {
    padding: 45px 0 50px;
  }
}
section.sec-event div.event-area02 div.event-area02-box02 div.event-area02-box02-inner {
  width: 93.6%;
  margin: auto;
}
@media screen and (min-width: 768px) {
  section.sec-event div.event-area02 div.event-area02-box02 div.flex-box {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
@media screen and (min-width: 768px) {
  section.sec-event div.event-area02 div.event-area02-box02 div.event-area02-box02-img01 {
    width: 48%;
  }
}
section.sec-event div.event-area02 div.event-area02-box02 div.img-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (min-width: 768px) {
  section.sec-event div.event-area02 div.event-area02-box02 div.img-wrap {
    width: 48.6%;
  }
}
section.sec-event div.event-area02 div.event-area02-box02 div.img-wrap p {
  color: #fff;
  text-align: center;
  font-size: 1.12em;
  line-height: 1.4em;
  letter-spacing: 0;
  padding: 1.6em 0;
  width: 100%;
}
@media screen and (min-width: 768px) {
  section.sec-event div.event-area02 div.event-area02-box02 div.img-wrap p {
    text-align: left;
    padding: 0 0 1em;
    font-size: 16px;
  }
}
section.sec-event div.event-area02 div.event-area02-box02 div.img-wrap div.event-area02-box02-img02 {
  margin-bottom: 5%;
}
@media screen and (min-width: 768px) {
  section.sec-event div.event-area02 div.event-area02-box02 div.img-wrap div.event-area02-box02-img02 {
    width: 48%;
    margin-bottom: 2%;
  }
}
section.sec-event div.event-area02 div.event-area02-box02 p.txt01 {
  text-align: center;
  background: #594f49;
  text-align: center;
  color: #fff;
  position: relative;
  font-size: 1.12em;
  letter-spacing: 0;
  line-height: 1.4em;
  padding: 0.8em 0;
  margin-top: 10%;
}
@media screen and (min-width: 768px) {
  section.sec-event div.event-area02 div.event-area02-box02 p.txt01 {
    font-size: 18px;
    margin-top: 30px;
  }
}
section.sec-event div.event-area02 div.event-area02-box02 p.txt01::after, section.sec-event div.event-area02 div.event-area02-box02 p.txt01::before {
  content: "";
  display: block;
  width: 0.32em;
  height: 100%;
  position: absolute;
  background-image: linear-gradient(150deg, rgb(150, 107, 32), rgb(181, 156, 76) 57%, rgb(186, 142, 69));
  top: 0;
}
section.sec-event div.event-area02 div.event-area02-box02 p.txt01::after {
  left: 0;
}
section.sec-event div.event-area02 div.event-area02-box02 p.txt01::before {
  right: 0;
}
section.sec-event div.event-area02 div.event-area02-box02 a.event-cm-btn {
  background-image: linear-gradient(150deg, rgb(150, 107, 32), rgb(181, 156, 76) 57%, rgb(186, 142, 69));
  border: solid 1px #fff;
  margin-top: 7%;
}
@media screen and (min-width: 768px) {
  section.sec-event div.event-area02 div.event-area02-box02 a.event-cm-btn {
    margin-top: 45px;
  }
}
section.sec-event div.event-area02 div.event-area02-box03 {
  width: 91.4%;
  margin: auto;
  padding: 5% 0 0;
}
@media screen and (min-width: 768px) {
  section.sec-event div.event-area02 div.event-area02-box03 {
    padding: 0;
    width: 100%;
  }
}
section.sec-event div.event-area02 div.event-area02-box03 a {
  margin: 4% 0 0;
}
@media screen and (min-width: 768px) {
  section.sec-event div.event-area02 div.event-area02-box03 a {
    margin: 36px auto 0;
  }
}
section.sec-event div.event-area02 div.event-area02-box03 div.txt-wrap {
  margin: 7% 0 0;
}
@media screen and (min-width: 768px) {
  section.sec-event div.event-area02 div.event-area02-box03 div.txt-wrap {
    margin: 46px auto 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 90%;
    max-width: 900px;
  }
}
section.sec-event div.event-area02 div.event-area02-box03 div.txt-wrap p {
  margin-bottom: 2%;
}
@media screen and (min-width: 768px) {
  section.sec-event div.event-area02 div.event-area02-box03 div.txt-wrap p {
    margin: 0;
  }
  section.sec-event div.event-area02 div.event-area02-box03 div.txt-wrap p:nth-of-type(1) {
    width: 57%;
  }
  section.sec-event div.event-area02 div.event-area02-box03 div.txt-wrap p:nth-of-type(2) {
    width: 41%;
  }
}
section.sec-event p.event-btm-txt {
  text-align: center;
  color: #fff;
  letter-spacing: 0;
  margin: 10% 0 5%;
}
@media screen and (min-width: 768px) {
  section.sec-event p.event-btm-txt {
    font-size: 24px;
    margin: 45px 0 20px;
  }
}
section.sec-event a.event-cm-btn.btm {
  width: 85%;
  margin: auto;
}
@media screen and (min-width: 768px) {
  section.sec-event a.event-cm-btn.btm {
    width: 411px;
  }
}
section.sec-event a.event-cm-btn.btm span::after {
  top: 42%;
  border: 0.32em solid transparent;
  border-bottom: 0.6em solid #fff;
}

p.kengaku-txt {
  text-align: center;
  font-size: 1.2em;
  line-height: 1.6em;
  letter-spacing: 0;
  padding: 10% 0;
  background: repeating-linear-gradient(90deg, #fff, #fff 1px, #f6f4e4 1px, #f6f4e4 10px);
}
@media screen and (min-width: 768px) {
  p.kengaku-txt {
    font-size: 29px;
    padding: 75px 0;
  }
}
@media screen and (min-width: 1000px) {
  p.kengaku-txt {
    font-size: 33px;
  }
}

footer {
  padding: 10% 0 20%;
}
@media screen and (min-width: 768px) {
  footer {
    padding: 40px 0 60px;
  }
}
footer div.footer-inner {
  width: 90%;
  margin: auto;
}
footer p.footer-txt01 {
  font-size: 0.72em;
  letter-spacing: 0;
  line-height: 1.4em;
  text-align: justify;
  word-break: break-all;
  padding-bottom: 15px;
  border-bottom: solid 1px #333;
}
footer p.footer-txt01 span {
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  footer p.footer-txt01 {
    max-width: 745px;
    margin: auto;
  }
}
footer p.footer-txt02 {
  text-align: center;
  margin-top: 5%;
}
@media screen and (min-width: 768px) {
  footer p.footer-txt02 {
    width: 355px;
    margin: 30px auto 0;
  }
}
footer div.footer-txt03 {
  margin: 5% 0 7%;
}
@media screen and (min-width: 768px) {
  footer div.footer-txt03 {
    width: 367px;
    margin: 20px auto 30px;
  }
}
footer p.footer-txt03 {
  text-align: center;
  font-size: 0.8em;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.8em;
  margin: 0 0 5%;
}
@media screen and (min-width: 768px) {
  footer p.footer-txt03 {
    font-size: 12px;
    margin: 0 0 20px;
  }
}
footer p.footer-txt04 {
  text-align: center;
  background: #111;
  font-size: 0.8em;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.6em;
  color: #fff;
  letter-spacing: 0;
  padding: 0.4em 0;
  position: relative;
  margin: 0 0 10%;
}
@media screen and (min-width: 768px) {
  footer p.footer-txt04 {
    width: 450px;
    font-size: 10px;
    margin: 0 auto 20px;
  }
}
footer p.footer-txt04::after {
  content: "";
  position: absolute;
  bottom: -100%;
  left: 50%;
  transform: translate(-50%, 0);
  border: 2.6em solid transparent;
  border-top: 1.8em solid #111;
}
@media screen and (min-width: 768px) {
  footer p.footer-txt04::after {
    bottom: -40px;
  }
}
footer a.footer-txt05 {
  display: block;
}
@media screen and (min-width: 768px) {
  footer a.footer-txt05 {
    width: 272px;
    margin: auto;
  }
}
footer p.footer-txt06 {
  text-align: center;
  font-size: 0.72em;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.6em;
  margin: 1em 0 0;
}
@media screen and (min-width: 768px) {
  footer p.footer-txt06 {
    font-size: 10px;
  }
}/*# sourceMappingURL=style.css.map */