
/*全体・リセット---------------------*/
html,body {
  overflow-x: hidden;
}
header, nav, article, aside, section, footer {
	display:block;
}
.st2-page-title {
	padding: 0.5rem 20px 0;
	margin-bottom: 0.5rem;
}
.st2-page-title__heading__txt {
	font-size: 1.3rem;
	font-weight: normal;
}
.st2-main-container {
	padding-top: 0;
}
.st2-contents-wrapper>div>div {
	padding: 0;
}
h2{
	margin:0;
}
h3{
	margin:0;
}
h4{
	margin:0;
}

p,ul,li,dl,dt,dd{
	margin: 0;
	padding: 0;
}
ul{
	list-style: none;
}
a:hover  {
	text-decoration: none;
	opacity:0.9;
	transition:0.3s;
}
.red{
	color: #cd0808;
}
.yellow{
	color: #fffc1e;
}
.L01 {
	font-size: 150%;
}
.L02 {
	font-size: 120%;
}
.S01 {
	font-size: 80%;
}
.coupon-cau .S01 {
	font-size: 87%;
	line-height: 1.75;
	margin-top: 0.5rem;
}
.S02 {
	font-size: 70%;
	padding-left: 1rem;
}
.pa04 {
	padding-top: 4rem;
}

@media (min-width: 737px) {
	.pc_none{
		display:none;
	}
}

@media (max-width: 736px) {
	.sp_none{
		display:none;
	}
	.st2-page-title__heading__txt {
		font-size: 1.1rem;
		font-weight: normal;
	}
}
/*全体---------------------*/
.pcnone {
    display: none;
}
@media (max-width: 736px) {
	.pcnone {
		display: block;
	}
}
/*MV---------------------*/
#top_img img {
	text-align: center;
	width: 100%;
	display: block;
	margin: 0 auto;
}
#hokkaido {
    background: #4abbf9;
	padding-bottom: 6rem;

}
#blk01 {
	margin: 0 -2rem 4rem;
}
@media (max-width: 736px) {
	#hokkaido  {
        padding: 0 2.9891304348% 4rem;
	}
}
/*h共通---------------------*/
h2,
h3,
.st2-heading-lv3,
.st2-heading-lv4 {
   font-family: "M PLUS 1 Code", monospace;
   font-optical-sizing: auto;
   font-style: normal;
}
h2,
h3,
.st2-heading-lv3 {
   font-weight: 500;
}
.st2-heading-lv4 {
   font-weight: 400;
}
/*h2---------------------*/
section h2 {
   max-width: 1100px;
   margin: 8rem auto 1rem;
   font-size: 4rem;
   line-height: 1.4;
   display: flex;              
   align-items: center;        
   justify-content: center;  
   gap: 1rem;                  
    text-align: center;  
    color: #fff;
}
section　h2 img {
    vertical-align: middle;
}
.h2_sub_txt {
    font-size: 1.8rem;
    font-weight: normal;
    display: block;
}
section  h2 > span {
    display: inline-block;
    vertical-align: middle;
}
@media (max-width: 736px) {
    section h2 { 
        font-size: 2rem;
		gap: 0;
    }
}

/*yokoku---------------------*/
.yokoku {
    padding-top: 3rem;
}

.yokoku em {
    font-size: 4rem;
	padding: 2rem;
	background: #fcffcf;
}
@media (max-width: 736px) {
	.yokoku em {
		font-size: 2rem;
		padding: 1rem;
	}
	.yokoku {
		padding-top: 1rem;
	}
	section h2 {
		margin-top: 3rem;
	}
}



