@charset "utf-8";

@media only screen and (max-width:1280px) {}
@media only screen and (max-width:768px) {}
@media only screen and (max-width:480px) {}

/*---------------------------------------------------------------

 commonKeyvisual

--------------------------------------------------------------- */
sup {
	vertical-align:text-top;
	font-size:small;
	}


/* ------ caption ------ */
figcaption {
	position: absolute;
  bottom: 0;
  right: 0;
  padding: 10px;
  color: #fff;
  font-size: 10px;
  line-height: 1;
  text-align: right;
  text-shadow:0px 0px 1px #000, 
							0 0 5px #000,
							0 0 6px #000,
							0 0 7px #000,
							0 0 8px #000,
							0 0 9px #000,
							0 0 10px #000;
  z-index: 5;
}

figcaption.cap_b {
	position: absolute;
  bottom: -30px;
  right: 0;
  padding: 10px;
  color: #000;
  font-size: 10px;
  line-height: 1;
  text-align: right;
  text-shadow: none;
  z-index: 5;
}

.mvCap {
  position: absolute;
  bottom: 0;
  right: 0;
  padding: 10px;
  color: #fff;
  font-size: 10px;
  line-height: 1;
  text-align: right;
  text-shadow:0px 0px 1px #000, 
							0 0 5px #000,
							0 0 6px #000,
							0 0 7px #000,
							0 0 8px #000,
							0 0 9px #000,
							0 0 10px #000;
  z-index: 5;
}

/* ------ inner ------ */
.inner {
	max-width: 1000px;
	margin: 0 auto;
	padding: 0 20px;
}
@media only screen and (max-width:768px) {
	.inner {
		max-width: 710px;
		margin: 0 auto;
	}
}

.sans-serif {
    font-family: "こぶりなゴシック W1 JIS2004", "Koburina Gothic W1 JIS2004", sans-serif;
}
.sans-serif-w3 {
    font-family: "こぶりなゴシック W3 JIS2004", "Koburina Gothic W3 JIS2004", sans-serif;
}
.sans-serif-w6 {
    font-family: "こぶりなゴシック W6 JIS2004", "Koburina Gothic W6 JIS2004", sans-serif;
}
.din {
    font-family: din-condensed, sans-serif;
    font-weight: 400;
    font-style: normal;
}
.section01, .section02, .section03, .section04{
  background-color: #fff;
}


/*---------------------------------------------------------------
main_ttl
--------------------------------------------------------------- */
.main_ttl{
    padding: 100px 0;
    background-color: #fff;
}
.main_ttl h2{
    text-align: center;
    font-size: 2.4rem;
    line-height: 1.6;
    font-weight: 600;
}
.main_ttl ul{
    display: flex;
    justify-content: center;
    text-align: center;
    gap: 30px;
}
.main_ttl li{flex-basis: 36%;}
.main_ttl li a{transition: .3s;}
.main_ttl li a:hover{opacity: .7;}


@media only screen and (max-width:768px) {

.main_ttl{
    padding: 60px 0;

}
.main_ttl h2{
    font-size: 1.8rem;
    padding-top: 12%;
}
.main_ttl ul{
    display: flex;
    justify-content: center;
    gap: 10px;
}
.main_ttl li{flex-basis: 48%; margin-bottom: 8px;}
	
}


/*---------------------------------------------------------------
section01
--------------------------------------------------------------- */
.section01 {
    text-align: center;
}
.section01 .ttl {
    margin: 80px auto 45px;
    color: #554a36;
	font-size: 40px;
	line-height: 1.6;
    letter-spacing: .4rem;
    font-style: italic;
}
.section01 .text {
    margin: 0 auto;
    margin-top: 80px;
    padding-bottom: 95px;
    color: #554a36;
	font-size: 20px;
	line-height: 2.1;
}

.wide_img img {
	width: 100%;
}

@media only screen and (max-width:768px) {

tion01 .ttl {
        width: 95%;
        margin: 100px auto 30px;
        font-size: 22px;
        text-align: left;
        line-height: 1.6;
    }
	.section01 .text {
		width: 95%;
		font-size: 16px;
		line-height: 1.6;
		margin: 0 auto;
        margin-top: 40px;
        padding-bottom: 39px;
        text-align: left;
	}
	
}

/*---------------------------------------------------------------
section02
--------------------------------------------------------------- */
.section02 {
    text-align: center;
}

.section02 img.last {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

@media only screen and (max-width:768px) {

  .section02 img {
      width: 100%;
      margin-bottom: 0;
      border-bottom: none;
  }
}


/*---------------------------------------------------------------
section03
--------------------------------------------------------------- */
.section03 {
    text-align: center;
}

.section03 img.last {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

@media only screen and (max-width:768px) {

  .section03 img {
      width: 100%;
      margin-bottom: 0;
      border-bottom: none;
  }
}


/*---------------------------------------------------------------

 endCaps

--------------------------------------------------------------- */
.endCaps {
	max-width: 1200px;
	margin: 90px auto 140px;
	padding: 0 15px;
	font-size: 12px;
	line-height: 1.5;
}
@media only screen and (max-width:768px) {
	.endCaps  {
		margin: 20px auto 50px;
		font-size: 9px;
	}
}

