@charset "UTF-8";
/*--------------------------------------------------------------
# ビューポイントごと表示非表示
-------------------------------------------------------------- */
.off1200,
.off1170,
.off1100,
.off991,
.off850,
.off767,
.off640,
.off480,
.off375,
.off360,
.off320 {
		display: block !important;
}

.on1200,
.on1170,
.on1100,
.on991,
.on850,
.on767,
.on640,
.on480,
.on375,
.on360,
.on320 {
		display: none !important;
}

@media (max-width: 1200px) {
		.off1200 {
				display: none !important;
		}
		.on1200 {
				display: block !important;
		}
}

@media (max-width: 1170px) {
		.off1170 {
				display: none !important;
		}
		.on1170 {
				display: block !important;
		}
}

@media (max-width: 1100px) {
		.off1100 {
				display: none !important;
		}
		.on1100 {
				display: block !important;
		}
}

@media (max-width: 991px) {
		.off991 {
				display: none !important;
		}
		.on991 {
				display: block !important;
		}
}

@media (max-width: 850px) {
		.off850 {
				display: none !important;
		}
		.on850 {
				display: block !important;
		}
}

@media (max-width: 767px) {
		.off767 {
				display: none !important;
		}
		.on767 {
				display: block !important;
		}
}

@media (max-width: 640px) {
		.off640 {
				display: none !important;
		}
		.on640 {
				display: block !important;
		}
}

@media (max-width: 480px) {
		.off480 {
				display: none !important;
		}
		.on480 {
				display: block !important;
		}
}

@media (max-width: 375px) {
		.off375 {
				display: none !important;
		}
		.on375 {
				display: block !important;
		}
}

@media (max-width: 360px) {
		.off360 {
				display: none !important;
		}
		.on360 {
				display: block !important;
		}
}

@media (max-width: 320px) {
		.off320 {
				display: none !important;
		}
		.on320 {
				display: block !important;
		}
}

/*--------------------------------------------------------------
# 基本設定
-------------------------------------------------------------- */
.campaign {
		animation-name: fadein;
		animation-duration: 1s;
		animation-iteration-count: 1;
		overflow-x: hidden;
}

@keyframes fadein {
		from {
				opacity: 0;
		}
		to {
				opacity: 1;
		}
}

@-webkit-keyframes fadeIn {
		from {
				opacity: 0;
		}
		to {
				opacity: 1;
		}
}

/*--------------------------------------------------------------
# コンテンツ
-------------------------------------------------------------- */
.campaign * {
		box-sizing: border-box;
}

section {
		margin: 80px 0;
}

section .section-inner {
		width: 100%;
		max-width: 1230px;
		padding: 0 15px;
		margin: auto;
}

section .section-inner .page-head {
		display: flex;
		flex-wrap: wrap;
		width: 100%;
		max-width: 320px;
		margin: auto;
		position: relative;
		justify-content: center;
		padding: 20px 0;
		color: #fff;
		text-align: center;
		border: double 4px;
		/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#eab92d+0,c79810+100;Yellow+3D+%232 */
		background: #eab92d;
		/* Old browsers */
		background: -moz-linear-gradient(-45deg, #eab92d 0%, #c79810 100%);
		/* FF3.6-15 */
		background: -webkit-linear-gradient(-45deg, #eab92d 0%, #c79810 100%);
		/* Chrome10-25,Safari5.1-6 */
		background: linear-gradient(135deg, #eab92d 0%, #c79810 100%);
		/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eab92d', endColorstr='#c79810',GradientType=1 );
		/* IE6-9 fallback on horizontal gradient */
		margin-bottom: 50px;
}

section .section-inner .page-head span.mahou {
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0.2;
		background: url(../img/mahou.png);
		background-position: 160% -40%;
		background-size: 60%;
		background-repeat: no-repeat;
}

section .section-inner .page-head span.label {
		position: absolute;
		background: #e91e63;
		color: #fff;
		padding: 0 10px;
		transform: rotate(-35deg);
		left: -20px;
		top: 5px;
		box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.3);
		z-index: 1;
}

section .section-inner .page-head p {
		font-size: 18px;
		line-height: 1.5;
		color: #fff;
		z-index: 1;
		text-shadow: 0 0 6px #000;
}

section .section-inner .page-head h2 {
		line-height: 1.3;
		margin-top: 10px;
		font-size: 20px;
		color: #fff;
		font-weight: 800;
		text-shadow: 0px 0px 10px #e91e63,0px 0px 10px #e91e63,0px 0px 10px #e91e63;
		z-index: 1;
}

section .section-inner .text {
		width: 100%;
		max-width: 800px;
		margin: auto;
		border: double 4px #ddd;
		padding: 40px;
		text-align: center;
}

@media (max-width: 640px) {
		section .section-inner .text {
				padding: 40px 30px;
		}
}

@media (max-width: 480px) {
		section .section-inner .text {
				padding: 30px 15px;
		}
}

section .section-inner .text ul {
		text-align: left;
}

section .section-inner h3 {
		position: absolute;
		text-align: center;
		width: 250px;
		top: -40px;
		left: 0;
		right: 0;
		margin: auto;
}

section .section-inner h3::before, section .section-inner h3::after {
		position: absolute;
		z-index: 0;
		bottom: -10px;
		display: block;
		content: '';
		border: 1em solid #b21249;
}

section .section-inner h3::before {
		left: -20px;
		border-left-width: 15px;
		border-left-color: transparent;
}

section .section-inner h3::after {
		right: -20px;
		border-right-width: 15px;
		border-right-color: transparent;
}

section .section-inner h3 span {
		position: relative;
		z-index: 1;
		display: block;
		padding: 10px 20px;
		color: #fff;
		/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#e8638f+0,e91e63+100 */
		background: #e8638f;
		/* Old browsers */
		background: -moz-linear-gradient(-45deg, #e8638f 0%, #e91e63 100%);
		/* FF3.6-15 */
		background: -webkit-linear-gradient(-45deg, #e8638f 0%, #e91e63 100%);
		/* Chrome10-25,Safari5.1-6 */
		background: linear-gradient(135deg, #e8638f 0%, #e91e63 100%);
		/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e8638f', endColorstr='#e91e63',GradientType=1 );
		/* IE6-9 fallback on horizontal gradient */
}

section .section-inner h3 span::before, section .section-inner h3 span::after {
		position: absolute;
		bottom: -18px;
		display: block;
		width: 1px;
		height: 10px;
		content: '';
		border-style: solid;
		border-color: #710a2d transparent transparent transparent;
}

section .section-inner h3 span::before {
		left: 0;
		border-width: 10px 0 0 10px;
}

section .section-inner h3 span::after {
		right: 0;
		border-width: 10px 10px 0 0;
}

section .text {
		position: relative;
}

section .text .bg {
		z-index: -1;
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0.2;
}

section .text ul li.indent {
		text-indent: -15px;
		padding-left: 15px;
}

section .text ul li.no-mb {
		margin-bottom: 0 !important;
}

section .text ul li h4 {
		font-weight: 800;
		font-size: 120%;
		color: #e91e63;
}

section .text ul li span.line {
		display: block;
		width: 100%;
		height: 1px;
		background: #00bcd4;
		margin: 10px 0;
}

section .text ul li span.bold {
		font-weight: 800;
}

section .text ul li.hashtag {
		border: solid 1px #197480;
		background: rgba(0, 188, 212, 0.3);
		padding: 10px 20px;
		border-radius: 10px;
}

section .text ul li span.star {
		color: #00bcd4;
}

section .text ul li a.instalink {
		display: block;
		cursor: pointer;
		transition: 0.8s all ease 0s;
}

section .text ul li a.instalink img {
		width: 100%;
		max-width: 290px;
		margin: 10px auto;
}

section .text ul li a.instalink:hover {
		opacity: 0.5;
}

section .text ul li:not(:last-child) {
		margin-bottom: 20px;
}

section .text .img {
		display: flex;
		flex-wrap: wrap;
		gap: 20px;
		justify-content: center;
		margin-top: 30px;
}

section.area1 .text .bg {
		background: url(../img/d.jpg);
		background-position: center;
		background-size: cover;
}

section.area2 .text .bg {
		background: url(../img/3.jpg);
		background-position: center;
		background-size: cover;
}

section.area3 .text .bg {
		background: url(../img/4.jpg);
		background-position: center;
		background-size: cover;
}

section.area4 .text .bg {
		background: url(../img/a.jpg);
		background-position: center;
		background-size: cover;
}

section.area5 .text .bg {
		background: url(../img/presents.jpg);
		background-position: center;
		background-size: cover;
}

section.area5 h3::before, section.area5 h3::after {
		border: 1em solid #2792e6;
}

section.area5 h3::before {
		border-left-width: 15px;
		border-left-color: transparent;
}

section.area5 h3::after {
		border-right-width: 15px;
		border-right-color: transparent;
}

section.area5 h3 span {
		/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#03a9f4+0,e91e63+100 */
		background: #00bcd4;
		/* Old browsers */
		background: -moz-linear-gradient(-45deg, #03a9f4 0%, #00bcd4 100%);
		/* FF3.6-15 */
		background: -webkit-linear-gradient(-45deg, #03a9f4 0%, #00bcd4 100%);
		/* Chrome10-25,Safari5.1-6 */
		background: linear-gradient(135deg, #03a9f4 0%, #00bcd4 100%);
		/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#03a9f4', endColorstr='#00bcd4',GradientType=1 );
		/* IE6-9 fallback on horizontal gradient */
}

section.area5 h3 span::before, section.area5 h3 span::after {
		border-color: #27689c transparent transparent transparent;
}

section.area5 h3 span::before {
		left: 0;
		border-width: 10px 0 0 10px;
}

section.area5 h3 span::after {
		right: 0;
		border-width: 10px 10px 0 0;
}

.off {
		opacity: 0;
		transform: translate(0, 30px);
		transition: 0.8s all ease 0s;
}

.off.on {
		opacity: 1;
		transform: translate(0, 0);
}
