@charset "utf-8";

img {
	vertical-align: bottom;
}

picture {
	display: inline-block;
}

@media print, screen and (max-width: 768px) {
	img {
	    width: 100%;
	}
}
@media screen and (max-width: 599px) {
	#wrapper {
		padding: 0;
	}
}
/*-------- main-title --------*/
.main-title {
	width: 1280px;
	margin: 0 auto;
}

.main-title h1 {
	margin: 47.8px 0 11.3px;
	text-align: center;
}

@media print, screen and (max-width: 768px) {
    .main-title {
        width: 100%;
    }
    .main-title h1 {
        width: 90%;
        margin: 7vw auto 0.9vw;
    }
}

/*-------- second-title --------*/
.second-title {
	width: 1280px;
	margin: 57px auto 0;

	position: relative;
}

.second-title h2 {
	position: absolute;

	top: 299px;
	left: 189px;

	z-index: 1;
}

.second-title .illust {
	position: absolute;

	left: 160px;
	bottom: 0;
}

.second-title .bottom {
	height: 40px;
	background-color: #fff100;
}

@media print, screen and (max-width: 768px) {
	.second-title {
		width: 100%;
		margin: 13.411vw auto 0;
	}
	.second-title h2 {
		width: 70.313vw;
	    top: 23.307vw;
	    left: 14.844vw;
	}
	.second-title .illust {
		left: 12.44vw;
	    width: 75.26vw;
	}
	.second-title .bottom {
	    height: 3.125vw;
	}

}
/*-------- content-area --------*/

article.first-area {
	margin-top: 92.6px;
}

article.second-area {
	margin-top: 55px;
}
article {
	width: 1100px;
	margin: 0 auto;
}

article .inner {
	width: 874px;
	margin-left: 137px;
}

.child-box .inner {
	margin-left: 75px;
}

.column {
	display: flex;
	justify-content: space-between;
}

@media print, screen and (max-width: 768px) {
	article.first-area {
		margin-top: 8.5vw;
	}

	article.second-area {
		margin-top: 5.469vw;
	}
	article {
		width: 73.958vw;
		/*width: 80.469vw;*/
		margin: 0 auto;
	}
	article section h3 {
		margin-right: -5.729vw;
	}
	article .inner {
		width: 100%;
		margin-left: 0;
	}

	.child-box .inner {
		margin-left: 0;
	}
	.column {
	    flex-direction: column;
	    justify-content: normal;
	}
}

/* sec01 */
#sec01 h3 {
	margin-bottom: 40px;
}
#sec01 .step h4 {
	margin-top: 60px;
	margin-bottom: 7px;
}
#sec01 .step dl dt,#sec01 .step dl dd {
	font-size: 16px;
	font-weight: bold;
	line-height: 1.75;
}

#sec01 .step dl {
	display: flex;
}
#sec01 .step ul {
	display: flex;
	margin-top: 25px;
}
#sec01 .step ul:first-child {
	margin-top: 13px;
	margin-bottom: 10px;
}
#sec01 .step ul:first-child li + li {
	margin-left: 10px;
}
#sec01 .step ul li + li {
	margin-left: 30px;
}

#sec01 .step ul.app-img li img {
	width: 246px;
}

#sec01 .point {
	margin-top: 70px;
}

#sec01 .point .shop {
	font-size: 22px;
	line-height: 1.13;
	font-weight: bold;
}

#sec01 .point .address {
	font-size: 16px;
	line-height: 1.56;
	font-weight: bold;
}

#sec01 .point .note {
	font-size: 14px;
}


@media print, screen and (max-width: 768px) {
	#sec01 h3 {
		margin-bottom: 4vw;
	}
	#sec01 div.inner > picture img {
		width: 75vw;
	}
	#sec01 .step h4 {
		margin-top: 4.4vw;
		margin-bottom: 2vw;
	}

	#sec01 .step h4 {
		width: 58vw;
	}
	#sec01 .step dl dt, #sec01 .step dl dd {
		/*font-size: 8px;*/
		font-size: 2.083vw;
	}
	#sec01 .step dl:nth-of-type(2) dd {
	    white-space: nowrap;
	}

	#sec01 .step ul:first-child {
		margin-top: 1.042vw;
		margin-bottom: 1.302vw;
	}
	#sec01 .step ul {
		margin-top: 3.776vw;
	}
	#sec01 .step ul:first-child li:first-child img {
		width: 14.193vw;
	}
	#sec01 .step ul:first-child li:last-child img {
		width: 17.578vw;
	}
	#sec01 .step ul:first-child li + li {
		margin-left: 1.172vw;
	}
	#sec01 .step ul li + li {
		margin-left: 2.865vw;
	}

	#sec01 .step ul.app-img li {
		width: 22.656vw;
	}

	#sec01 .step ul.app-img li img {
		width: 22.656vw;
	}
	#sec01 .point {
		margin-top: 3.906vw;
	}
	#sec01 .point h4 {
		width: 35.677vw;
		margin-bottom: 1.563vw;
	}
	#sec01 .point .inner {
	    width: 64.063vw;
		margin-left: 9.766vw;
	}
	#sec01 .point .shop {
		/*font-size: 13px;*/
		font-size: 2.865vw;
	}

	#sec01 .point .address {
		/*font-size: 8px;*/
		font-size: 2.083vw;
	}

	#sec01 .point .note {
		font-size: 1.823vw;
		text-indent: -1.823vw;
		padding-left: 1.823vw;
	}
}
/* sec02 */
#sec02 {
	margin-top: 110px;
}

#sec02 h3 {
	margin-bottom: 32px;
}

#sec02 .column div:first-child {
	width: 470px;
	margin-right: 66px;
}
#sec02 .column {
	justify-content: flex-start;
}

#sec02 p {
	font-size: 16px;
	font-weight: bold;
	line-height: 1.75;

	margin-top: 35px;
}
#sec02 .map-img img {
	width: 246px;
}

@media print, screen and (max-width: 768px) {
	#sec02 {
		margin-top: 9.635vw;
	}
	#sec02 h3 {
		margin-bottom: 4.557vw;
	}
	#sec02 .column div:first-child {
		width: 100%;
		margin-right: 0;
	}
	#sec02 div.inner > picture img {
		width: 73.307vw;
	}
	#sec02 p {
		/*font-size: 8px;*/
		font-size: 2.083vw;
		margin-top: 5.339vw;
		margin-right: -9.766vw;
	}
	#sec02 .map-img {
		text-align: center;
		margin-top: 4.557vw;
	}
	#sec02 .map-img img {
		width: 22.786vw;
	}

}
/* sec03 */
#sec03 {
	margin-top: 92px;
}

#sec03 h3 {
	margin-bottom: 32px;
}
#sec03 .column {
	margin-top: 45px;
}

#sec03 p {
	font-size: 16px;
	font-weight: bold;
	line-height: 1.75;
}

#sec03 p + p {
	margin-top: 41px;
}
@media print, screen and (max-width: 768px) {
	#sec03 {
		margin-top: 6.771vw;
	}
	#sec03 h3 {
		margin-bottom: 4.557vw;
	}
	#sec03 div.inner > picture img {
		width: 57.813vw;
	}
	#sec03 .column {
		margin-top: 5.339vw;
	}
	#sec03 p {
		/*font-size: 8px;*/
		font-size: 2.083vw;
	}
	#sec03 p + p {
		margin-top: 5.208vw;
	}
	#sec03 .column div + div {
		margin: 2.604vw auto 0;
		width: 60.938vw;
	}
}
/* sec04 */
#sec04 {
	margin-top: 85px;
}
#sec04 h3 {
	margin-bottom: 32px;
}

#sec04 p {
	font-size: 16px;
	font-weight: bold;
	line-height: 1.75;

	margin-top: 45px;
}

#sec04 p + p {
	margin-top: 38px;
}

#sec04 a {
	font-size: 16px;
	font-weight: bold;
	line-height: 1.75;
	color: #000;
	text-decoration: none;
}

#sec04 .poster-img img {
	width: 308px;
}
@media print, screen and (max-width: 768px) {
	#sec04 {
		margin-top: 6.38vw;
	}
	#sec04 h3 {
		margin-bottom: 4.297vw;
	}

	#sec04 div.inner .column div > picture img {
		width: 59.635vw;
	}

	#sec04 p {
		/*font-size: 8px;*/
		font-size: 2.083vw;
		margin-top: 5.339vw;
	}
	#sec04 p + p {
		margin-top: 5.078vw;	
	}
	#sec04 a {
		/*font-size: 8px;*/
		font-size: 2.083vw;
	}

	#sec04 .column div + div {
		margin: 3.646vw auto 0;
		width: 60.938vw;
	}
	#sec04 .poster-img img {
		width: 100%;
	}
}
/* sec05 */
#sec05 {
	margin-top: 100px;
}
#sec05 h3 {
	margin-bottom: 32px;
}

#sec05 .child-box {
	margin-top: 50px;
}

#sec05 .date {
	margin-top: 11px;

	font-size: 22px;
	font-weight: bold;
	line-height: 1.13;
}

#sec05 .images {
	margin-top: 50px;
	display: flex;
	justify-content: space-between;
}

#sec05 .images + picture {
	margin-top: 50px;
}

#sec05 .access dl {
	display: flex;
    align-items: center;
}
#sec05 .access dl + dl {
	margin-top: 6px;
}
#sec05 .access dl dt {
	color: #fff;
	font-size: 15px;
	background-color: #583c32;
	font-weight: bold;
	width: 76px;
	height: 20px;
	padding: 5px 0;
	margin-right: 13px;
	text-align: center;
}

#sec05 .access dl dd {
	font-size: 22px;
	font-weight: bold;
}

#sec05 .access dl.time dd {
	display: flex;
	align-items: center;
}

#sec05 .access dl.time dd span {
	font-size: 12px;
	line-height: 1.1;
	margin-left: 11px;
	font-weight: normal;
}

#sec05 .access dl.holiday dd span {
	font-size: 16px;
	line-height: 2;
}
#sec05 .access dl.price {
    align-items: flex-start;
}
#sec05 .access dl.price dd {
	line-height: 1;
}
#sec05 .access dl.price dd .icon {
	font-size: 23px;
	color: #583c32;
}

#sec05 .access dl.price dd .small {
	font-size: 16px;
	line-height: 1.1;
}

#sec05 .access dl.price dd .note {
	font-size: 11px;
	line-height: 1.3;
	font-weight: normal;
}
#sec05 .access p {
	margin-top: 27px;
}
#sec05 .access p a {
	font-size: 22px;
	color: #e60012;
/*    text-decoration: none;
	border-bottom: 1px solid #e60012;*/
}
@media print, screen and (max-width: 768px) {
	#sec05 {
		margin-top: 6.38vw;
	}
	#sec05 h3 {
		margin-bottom: 4.167vw;
	}

	#sec05 div.inner > picture img {
		width: 67.057vw;
	}
	#sec05 .child-box {
		margin-top: 4.036vw;
	}
	#sec05 h4 {
		width: 22.656vw;
	}
	#sec05 .date {
		font-size: 2.865vw;
		margin-top: 1.432vw;
		margin-left: 9.766vw;
	}
	#sec05 .images {
	    margin-top: 4.427vw;
	    flex-wrap: wrap;
        justify-content: center;
	}
	#sec05 .images li {
		width: 35.807vw;
	}

	#sec05 .images li:nth-child(2) {
		margin-left: 1.5vw;
	}
	#sec05 .images li:nth-child(3) {
		margin-top: 1.5vw;
	} 
	#sec05 .images + picture {
		margin-top: 2.344vw;
	}
	#sec05 .images + picture img {
		width: 100% !important;
	}
	#sec05 .access dl dt {
		font-size: 1.953vw;
		width: 9.766vw;
		padding: 0.651vw 0 0;
		margin-right: 1.953vw;

		box-sizing: border-box;
	}
	#sec05 .access dl dd {
		font-size: 2.865vw;
		flex: 1;
	}
	#sec05 .access dl.time dd span {
		font-size: 1.563vw;
		margin-left: 1.432vw;
	}
	#sec05 .access dl.holiday dd span,
	#sec05 .access dl.price dd .small {
		font-size: 2.604vw;
	}
	#sec05 .access dl.price dd {
		line-height: 1.36;
	}
	#sec05 .access dl.price dd .icon {
		font-size: 2.865vw;
	}
	#sec05 .access dl.price dd .note {
		font-size: 1.563vw;
	}
	#sec05 .access p {
	    margin-top: 2.604vw;
	}
	#sec05 .access p a {
		font-size: 2.865vw;
	}
}
/* sec06 */
#sec06 {
	margin-top: 69px;
}

#sec06 h3 {
	margin-bottom: 32px;
}
@media print, screen and (max-width: 768px) {
	#sec06 {
	    margin-top: 5.469vw;
	}
	#sec06 h3 {
		margin-bottom: 4.167vw;
		margin-left: -4.948vw;
	}
	#sec06 div.inner > picture img {
		width: 81.51vw;
	}
}

/* sec07 */
#sec07 {
	margin-top: 86px;
}

#sec07 h3 {
	margin-bottom: 32px;
}
#sec07 .child-box {
	margin-top: 44px;
}

#sec07 .child-box h4 {

}
#sec07 .child-box .inner {
	display: flex;
	margin-left: 0;
}
#sec07 .child-box .list {
    margin-left: 75px;
}
#sec07 .child-box .list ul li {
	font-size: 20px;
	/*font-weight: bold;*/
	line-height: 1.6;
}

#sec07 .child-box .list ul li::before {
	content: "・";
	color: #e8380d;
}
#sec07 .child-box .colab {
	margin-left: 100px;
}
#sec07 .child-box .colab ul {
	display: flex;
}
#sec07 .child-box .colab ul li + li {
	margin-left: 33px;
}

#sec07 .child-box .colab ul p {
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	margin-top: 15px;
}
#sec07 .child-box + .child-box {
	margin-top: 0;
}

#sec07 .child-box + .child-box p,
#sec07 .child-box + .child-box ul li {
	font-size: 20px;
	line-height: 1.6;
}
#sec07 .child-box + .child-box .inner {
    margin-left: 75px;
}

#sec07 .child-box + .child-box .inner + h4 {
	margin-top: 28px;
}
@media print, screen and (max-width: 768px) {
	#sec07 {
	    margin-top: 7.422vw;
	}
	#sec07 h3 {
		margin-bottom: 4.167vw;
	}
	#sec07 div.inner > picture img {
		width: 63.281vw;
	}
	#sec07 .child-box {
		margin-top: 5.208vw;
	}

	#sec07 .child-box h4 {
		width: 22.656vw;
	}
	#sec07 .child-box .inner {
		flex-direction: column;
	}
	#sec07 .child-box .list {
		margin-left: 0;
	}
	#sec07 .child-box .list ul {
		display: flex;
	    flex-wrap: wrap;

	    width: 64.063vw;
	    margin-left: 9.766vw;
	}
	#sec07 .child-box .list ul li {
		font-size: 2.604vw;
		width: 20vw;
	}
	#sec07 .child-box .colab {
		margin-top: 4.557vw;
		margin-left: 0;
	}
	#sec07 .child-box .colab ul li + li {
		margin-left: 4.557vw;
	}
	#sec07 .child-box .colab ul p {
		font-size: 2.474vw;
		margin-top: 2.539vw;
	}
	#sec07 .child-box + .child-box {
	    margin-top: 3.125vw;
	}
	#sec07 .child-box + .child-box p,
	#sec07 .child-box + .child-box ul li {
		font-size: 2.604vw;
	}
	#sec07 .child-box + .child-box .inner {
        margin-left: 9.766vw;
	}

	#sec07 .child-box + .child-box .inner + h4 {
		width: 19.401vw;
		margin-top: 3.125vw;
	}
}
/* sec08 */
#sec08 h3 {
	margin-bottom: 45px;
}
#sec08 .date {
	margin-top: 28px;
}
#sec08 ul li {
	font-size: 25px;
	line-height: 1.375;
	font-weight: bold;
}

#sec08 ul li span {
	font-size: 21px;
	line-height: 1.65;
} 
@media print, screen and (max-width: 768px) {
	#sec08 h3 {
		margin-bottom: 7.161vw;
		margin-right: 0;
	}
	#sec08 div.inner h3 > picture img {
		width: 73.958vw;
	}
	#sec08 div.inner > picture img {
	    width: 73.828vw;
	}
	#sec08 .date {
		margin-top: 3.255vw;
	}
	#sec08 ul li {
		font-size: 2.865vw;
	}
	#sec08 ul li:first-child {
		white-space: nowrap;
	}
	#sec08 ul li span {
	    font-size: 2.734vw;
	    margin-top: 2.995vw;
	    text-indent: -2.734vw;
	    padding-left: 2.734vw;
	    display: inline-block;
	}
}
/* sec09 */
#sec09 {
	margin-top: 74px;
}
#sec09 h3 {
	margin-bottom: 32px;
}
#sec09 p {
	font-size: 21px;
	line-height: 1.65;
	font-weight: bold;

	margin-top: 34px;
}
@media print, screen and (max-width: 768px) {
	#sec09 {
	    margin-top: 6.641vw;
	}
	#sec09 h3 {
	    margin-bottom: 4.297vw;
	}
	#sec09 div.inner > picture img {
	    width: 47.135vw;
	}
	#sec09 p {
	    font-size: 2.734vw;
	    margin-top: 4.297vw;
	    text-indent: -2.734vw;
	    padding-left: 2.734vw;
	}
}
/* sec10 */
#sec10 {
	margin-top: 125px;
}

#sec10 h3 {
	margin-bottom: 32px;
}

#sec10 .date {
	margin-top: 29px;
}

#sec10 ul li, #sec10 dl dt, #sec10 dl dd {
	font-size: 25px;
	line-height: 1.375;
	font-weight: bold;
}

#sec10 dl {
	display: flex;
}

#sec10 dl + dl {
	margin-top: 8px;
}

#sec10 p.note {
	margin-top: 33px;

	font-size: 14px;
}
@media print, screen and (max-width: 768px) {
	#sec10 {
		margin-top: 6.51vw;
	}

	#sec10 h3 {
		margin-bottom: 4.297vw;
	}
	#sec10 div.inner > picture img {
	    width: 73.828vw;
	}
	#sec10 .date {
		margin-top: 5.99vw;
		margin-right: -5vw;
	}
	#sec10 ul li, #sec10 dl dt, #sec10 dl dd {
		font-size: 2.995vw;
	}
	#sec10 dl dd {
		flex: 1;
	}
	#sec10 p.note {
		font-size: 2.734vw;
		font-weight: bold;
		margin-top: 2.865vw;
		/*margin-right: -9vw;*/
		text-indent: -2.734vw;
	    padding-left: 2.734vw;
	}
}
/*-------- footer --------*/
footer {
	margin-top: 87px;
	padding: 0;
	background-color: #fffbc7;
}
footer .inner {
	width: 823px;
	margin: 0 auto;
	padding: 0;
}
footer .text {
	padding: 46px 0;
}
footer .text p ,footer .text p a {
	font-size: 18px;
	line-height: 1.9;
	color: #000;
	font-weight: bold;
	text-decoration: none;
}

footer .text p {
	padding-left: 3em;
    text-indent: -3em;
}

footer .text p.link {
	margin-top: 42px;
}
footer .copyright {
	font-size: 10px;
	color: #fff;
	text-align: center;
	background-color: #e60012;
	padding: 0 0 11px;
}

@media print, screen and (max-width: 768px) {
	footer {
		margin-top: 12.24vw;
	}
	footer .inner {
		width: 100%;
	}
	footer .text {
	    padding: 5.99vw 0;
	    width: 50vw;
	    margin: 0 auto;
	    text-align: left;
	}
	footer .text p ,footer .text p a {
		font-size: 2.344vw;
	}
	footer .text p {
	    padding-left: 3.3em;
	    text-indent: -3.3em;
	}
	footer .text p.link {
	    margin-top: 5.208vw;
	    text-align: center;
	}
	footer .copyright p {
		font-size: 1.042vw;
		text-align: center;
	}
}