
#kv{
	margin: 0px auto;
	padding: 0 0 0 0;
	position:relative;
	min-width: auto;
	min-height: 650px;
	background-size:cover;
	overflow: hidden;
}

#kv_inner{
	margin: 0 auto ;
	padding: 0 0 0 0;
	width: auto;
	position:relative;
	min-height: 650px;
}

img.sp_kv_bg{
	width: 100%;
	height: auto;
	vertical-align:top;
}


img.kv_cloud{
	position: absolute;
	top: 5vw;
	left: -1%;
	right: -1%;
	text-align:center;
	margin:auto;
	
	width: 102%;
	height: auto;
}

img.kv_confetti{
	position: absolute;
	top: 0vw;
	left: -3%;
	right: -3%;
	text-align:center;
	margin:auto;
	
	width: 106%;
	height: auto;
}

img.kv_caramel1{
	position: absolute;
	top: 56vw;
	left: 4vw;
	width: 35vw;
	height: auto;
	z-index:1;
}

img.kv_caramel2{
	position: absolute;
	top: 64vw;
	right: 12vw;
	width: 32vw;
	height: auto;
}

img.kv_tit{
	position: absolute;
	top: 17vw;
	left: 5vw;
	right: 0;
	margin:auto;
	text-align: center;
	width: 83%;
	height: auto;
}

img.kv_child1{
	position: absolute;
	top: 30vw;
	left: -6vw;

	width: 30vw;
	height: auto;
}

img.kv_child2{
	position: absolute;
	top: 28vw;
	right: -6vw;

	width: 29vw;
	height: auto;
}

img.kv_free{
	position: absolute;
	top: 13vw;
	right: 16vw;

	width: 14vw;
	height: auto;
}

img.kv_catch{
	position: absolute;
	top: 11.5vw;
	left: 11vw;
	width: 58vw;
	height: auto;
}
img.kv_illust1{
	position: absolute;
	top: 14vw;
	left: 1vw;
	width: 10vw;
	height: auto;
}

img.kv_illust2{
	position: absolute;
	top: 23vw;
	left: 21vw;

	width: 11vw;
	height: auto;
}

img.kv_illust3{
	position: absolute;
	top: 64vw;
	left: 46vw;
	width: 9vw;
	height: auto;
}

img.kv_illust4{
	position: absolute;
	top: 78vw;
	left: 36vw;
	width: 12vw;
	height: auto;
}

img.kv_illust5{
	position: absolute;
	top: 61vw;
	right: 5vw;
	width: 10vw;
	height: auto;
}

img.kv_illust6{
	position: absolute;
	top: 62vw;
	right: 21.5vw;
	width: 6vw;
	height: auto;
}

img.kv_date{
	position: absolute;
	bottom: 21vw;
	left: 0;
	right: 0;
	
	margin:auto;
	text-align: center;
	width: 85%;
	height: auto;
	vertical-align:top;
}

.kv_btn{
	position: absolute;
	bottom: 5vw;
	left: 0;
	right: 0;
	
	margin:auto;
	text-align: center;
}

.kv_btn img{
	width: 90%;
	height: auto;
	vertical-align:top;
}





h2.h2_style1{
	margin: 0 auto;
	padding: 12px 0 12px 0;
	position:relative;
	min-width: auto;


font-weight: bold;
font-size: 23px;
letter-spacing: -0.02em;
line-height: 32px;
text-align: center;
color: #fff;
text-shadow: 0px 3px 0px rgba(0, 0, 0, 0.16);

	background:  url(../../images/top/bg1.png) center center;
	background-size:30px;
}




.section1{
	margin: 0 auto;
	padding: 20px 0 20px 0;
	position:relative;
	min-width: auto;
	overflow: hidden;
}
.section1 h4.h4_guardian{
	margin-top:1.5em;
	line-height:1.4;
	text-align:center;
	white-space:nowrap;
}

.h4_guardian::before,
.h4_guardian::after {
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 24px; /* 画像の幅 */
    height: 35px; /* 画像の高さ */
    background-size: cover;
    background-repeat: no-repeat;
}
/*
.h4_guardian::before {
    left: -4px;
    background-image: url('../../images/top/guardian_tit_img.png');
}
.h4_guardian::after {
    right: -4px;
    background-image: url('../../images/top/guardian_tit_img.png');
    transform: translateY(-50%) scaleX(-1);
}
*/
.section_inner{
	margin: 0 auto;
	padding: 0 0 0 0;
	position:relative;
	width: auto;

	background-color:rgba(0,0,0,0.0);
}

h3.section1_h3{
	margin: 0 0 30px 10px;
	padding: 0 0 0 0;
	position:relative;
}

img.section1_h3_img{
	width:59vw;
	height:auto;
}


img.section1_illust1{
	position: absolute;
	top:0px;
	left:0px;
	width:11vw;
	height:auto;
}

img.section1_illust2{
	position: absolute;
	top:24vw;
	left:50vw;
	width:8vw;
	height:auto;
}

img.section1_illust3{
	position: absolute;
	bottom:0vw;
	left:38vw;
	width:12vw;
	height:auto;
}

img.section1_illust4{
	position: absolute;
	top:5vw;
	left:68vw;
	width:12vw;
	height:auto;
}

.section1_txt{
	margin: 0 20px 0;
	padding: 0 0 0 0;
	position:relative;
	text-align: justify;
}

.section1_txt h4{
	margin: 0 0 10px;
	padding: 0 0 0 0;
	position:relative;

font-weight: bold;
font-size: 16px;
text-align: justify;
color: #4ab311;
}

.section1_txt p{
	margin: 0 0;
	padding: 0 0 0 0;
	position:relative;

font-weight: normal;
font-size: 12px;
line-height: 20px;
text-align: justify;
color: #000;
}
.section1_txt div.guardian_txt{
	margin: 0 0;
	position:relative;
	font-weight: normal;
	font-size: 12px;
	line-height: 20px;
	text-align: justify;
	color: #000;
	margin-bottom:1em;
	padding: 0.8em 1em 0.6em;
	border:2px #4AB311 solid;
	border-radius: 12px
}
.section1_txt div.guardian_txt.h62{
	height:45px;
}
.section1_txt div.guardian_txt .parent_img{
	float:left;
	width:34px;
	height:auto;
	padding:0 1em 2em 0;
}
img.section1_img{
	position: absolute;
	top:18vw;
	right:-67vw;
	width:116vw;
	height:auto;
}










.section2{
	margin: 0 auto;
	padding: 20px 0 20px 0;
	position:relative;
	min-width: auto;

	background:  url(../../images/top/bg2.png) center center;
	background-size:30px;
	overflow: hidden;
}

h2.section2_h2{
	margin: 0 auto 10px ;
	padding: 0 0 0 0;
	position:relative;
	text-align: center;
}

h2.section2_h2 img{
	width:90%;
	height:auto;
}


.section2_box{
	margin: 0 20px 0px ;
	padding: 15px 0px 10px;
	position:relative;
	text-align: center;

	background-color:#FCFCEE;
	border-radius: 15px;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
}

h3.section2_h3{
	margin: 14px auto 40px ;
	padding: 0 0 0 0;
	position:relative;
	text-align: center;
}

h3.section2_h3 img{
	width:100%;
	height:auto;
	vertical-align:top;
}

.section2_block1{
	margin: 20px 0 60px ;
	padding: 0 0 0;
	position:relative;
	text-align: center;
}

.section2_block1 .section2_txt{
margin-bottom:10vw;
}

img.section2_img1{
	width:78%;
	height:auto;
	vertical-align:top;
}
img.section2_illust1{
	position: absolute;
	top:14vw;
	left:8vw;

	width:35vw;
	height:auto;

}

.section2_block2{
	margin: 0 0 60px ;
	padding: 0 0 0;
	position:relative;
	text-align: center;
}

.section2_block2 .section2_txt{
margin-bottom:14vw;
}

img.section2_img2{
	width:78%;
	height:auto;
	vertical-align:top;
}
img.section2_illust2{
	position: absolute;
	top:10vw;
	right:10vw;

	width:34vw;
	height:auto;
}
img.section2_illust4{
	position: absolute;
	top:40vw;
	right:20vw;

	width:26vw;
	height:auto;
}

.section2_block3{
	margin: 0 0 20px ;
	padding: 0 0 0;
	position:relative;
	text-align: center;
}

.section2_block3 .section2_txt{
margin-bottom:3vw;
}

.section2_block3 .section2_txt h4{
text-align: center;
}

img.section2_img3{
	width:68%;
	height:auto;
	vertical-align:top;
	margin-right:20vw;
}
img.section2_illust5{
	position: absolute;
	top:13vw;
	right:3vw;

	width:37vw;
	height:auto;
}
img.section2_illust3{
	position: absolute;
	bottom:0vw;
	right:2vw;

	width:34vw;
	height:auto;
}
.attention_txt {
	position: absolute;
	bottom:6px;
	right:10px;
	font-size:12px;
	display:inline-block;
}

.section2_block4{
	margin: 0 0 0 ;
	padding: 0 0 0;
	position:relative;
	text-align: center;
}

img.section2_illust6{
	width:65%;
	height:auto;
}

.section2_block4 h4{
	margin-top:-15px;
}
.section2_block4 h4 img{
	width:70%;
	height:auto;
}

img.section2_illust8{
	position: absolute;
	bottom:0vw;
	left:4vw;

	width:9vw;
	height:auto;

}
img.section2_illust9{
	position: absolute;
	bottom:0vw;
	right:3vw;

	width:11vw;
	height:auto;
}


.section2_txt{
	margin: 0 auto;
	padding: 0 0 0 0;
	position:relative;
	width: auto;
	text-align: justify;
	display:inline-block;
	vertical-align:top;
}

.section2_txt h4{
	margin: 0 0 10px;
	padding: 0 0 0 0;
	position:relative;

font-weight: bold;
font-size: 19px;
letter-spacing: -0.02em;
line-height: 24px;
text-align: justify;
color: #000;
}
.section2_txt h4.sp{
line-height: 30px;
}

.section2_txt p{
	margin: 0 0;
	padding: 0 0 0 0;
	position:relative;

font-weight: normal;
font-size: 18px;
letter-spacing: -0.02em;
line-height: 27px;
text-align: justify;
color: #000;
}


[data-ruby] {
	position: relative;
}
[data-ruby]::before {
	content: attr(data-ruby);
	position: absolute;
	top: -1.8em;
	left: 0;
	right: 0;
	margin: auto;

font-weight: normal;
font-size: 9px;

text-align: center;
color: #000;
white-space:nowrap;
}
.section2_txt h4.sp [data-ruby]::before {
	top: -2.0em;
}
.section2_btn{
	position: absolute;
	top:-15px;
	right:-5px;
}

.section2_btn img{
	width:18vw;
	height:auto;
}







.section3{
	margin: 0 auto;
	padding: 0px 0 0px 0;
	position:relative;
	min-width: auto;

	background:  url(../../images/top/bg1.png) center center;
	background-size:30px;
	overflow: hidden;
}

.section3 .section_inner{
display: flex;
align-items:stretch;
}

.section3:before {
	top: 0;
	left: 50%;
	width: 50%;
	height: 100%;
	content: '';
	position: absolute;
	background-color: #fff;
}

.section3_l{
	margin: 0 0 0;
	padding: 25px 0 25px;
	position:relative;
	width: 50%;
	text-align: center;

}

img.section3_txt{
	margin-bottom:2vw;

	width:50vw;
	height:auto;
}


img.section3_caramel1{
	width:52vw;
	height:auto;
}


.section3_r{
	margin: 0 0 0;
	padding: 0px 15px;
	position:relative;
	width: 50%;
	text-align: justify;

	
	box-sizing: border-box;
}

h2.section3_h2{
	margin: 0 0 10px;
	padding: 26px 0 0 0;
	position:relative;

font-weight: bold;
font-size: 18px;
letter-spacing: -0.02em;
line-height: 24px;
text-align: center;
color: #000;
}

h2.section3_h2 small{

font-weight: bold;
font-size: 14px;
text-align: center;
color: #4ab311;
display:block;
}

h2.section3_h2 strong{

font-weight: bold;
font-size: 23px;
letter-spacing: -0.02em;
line-height: 32px;
text-align: center;
color: #000;
display:block;
}

.section3_r p{
	margin: 0 0;
	padding: 0 0 0 0;
	position:relative;

font-weight: normal;
font-size: 12px;
line-height: 18px;
text-align: justify;
color: #000;
}

.section3_r p strong{
font-weight: bold;
}

img.section3_caramel2{
	position: absolute;
	bottom:-2px;
	right:-45px;
width:330px;
height:auto;
vertical-align:top;
display:none;
}









.section4{
	margin: 0 auto;
	padding: 0 0 20px 0;
	position:relative;
	min-width: auto;

	background:  url(../../images/top/bg2.png) center center;
	background-size:30px;
	overflow: hidden;
}


h2.section4_h2{
	margin: 0 auto;
	padding: 20px 0 20px 0;
	position:relative;


font-weight: bold;
font-size: 23px;
letter-spacing: -0.02em;
line-height: 32px;
text-align: center;
color: #fff;
text-shadow: 0px 3px 0px rgba(0, 0, 0, 0.16);
}

.section4_box{
	margin: 0 20px 20px ;
	padding: 20px 0px 20px;
	position:relative;
	text-align: center;

	background-color:#FCFCEE;
	border-radius: 15px;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
}

h3.section4_h3{
	margin: 10px auto 0 ;
	padding: 0 0 0 0;
	position:relative;


font-weight: bold;
font-size: 18px;
letter-spacing: -0.02em;
line-height: 24px;
text-align: center;
color: #000;

}

img.section4_illust1{
	position: absolute;
	top:-4vw;
	left:-4vw;

	width:110px;
	height:auto;
}

img.section4_illust2{
	position: absolute;
	top:-6vw;
	right:-4vw;
	width:130px;
	height:auto;
}

table.table_style{
	width:auto;
	margin: 0 20px 40px ;
	padding: 0 0 0 0;
text-align: justify;
}

table.table_style th{

font-weight: normal;
font-size: 12px;
line-height: 20px;
text-align: justify;
color: #000;
white-space:nowrap;
padding-right:2px;
}

table.table_style td{
	padding-bottom:6px;
font-weight: normal;
font-size: 12px;
line-height: 20px;
text-align: justify;
color: #000;
}
table.table_style th small{
	display:inline-block;
	padding:0 0.5em;
	color: #4ab311;
}
table.table_style td small{
color: #4ab311;
}
table.table_style td span{
color: #CC0000;
}
table.table_style td span.img_sp{
color: #000;
}
table.table_style td a.map_link{
margin: 0 0 0 10px;
padding: 1px 5px;
position:relative;


font-weight: bold;
font-size: 12px;
text-align: center;
color: #fff;
line-height: 12px;

border-radius: 2px;
background: #1ec0e9;
box-shadow: 2px 3px 0px rgba(0, 0, 0, 0.16);

display:inline-block;
}

table.table_style td a.map_link:hover{
	text-decoration:none;
	filter: saturate(200%);
}


h4.section4_h4{
	margin: 0 auto 10px ;
	padding: 0 0 0 0;
	position:relative;

font-weight: bold;
font-size: 16px;
text-align: center;
color: #4ab311;
}

.section4_box p{
	width:auto;
	margin: 0 20px 20px ;
	padding: 0 0 0 0;
	position:relative;
font-weight: normal;
font-size: 12px;
text-align: justify;
color: #000;
line-height: 1.6;
}
.section4_box p.tab_txt{
	margin: 0 auto 4px ;
	text-align: center;
	line-height: 1.0;
	color:#4ab311;
	font-weight:bold;
}

.table_block {
	position:relative;
}
img.section4_illust3{
	position: absolute;
	bottom:-24px;
	right:8vw;
	width:70px;
	height:auto;
}

img.section4_illust4{
	position: absolute;
	bottom:50px;
	left:6vw;
	width:45px;
	height:auto;
}


.section4_btn{
	margin: 20px auto 0;
	padding: 0 0 0 0;
	position:relative;
text-align: center;
}

.section4_btn img{
width:90%;
height:auto;
vertical-align:top;
}






/* タブ切替ブロックCSS */

.tabs {
	margin:20px 0 0 0;
}
.tab_item {
  width:calc(50% - 10px);
  padding:10px 0 7px;
  border-bottom: 3px solid #4ab311;
  background-color: #e6e6e6;
  line-height: 1.0;
  font-size: 14px;
  color: #565656;
  display: block;
  float: left;
  text-align: center;
  font-weight: bold;
  transition: all 0.2s ease;
  cursor: pointer;
}
.tab_item.left {
  margin-left:10px;
}
.tab_item.right {
  margin-right:10px;
}
.tab_item:hover {
  opacity: 0.75;
}

/*ラジオボタンを全て消す*/
input[name="tab_item"] {
  display: none;
}
/*タブ切り替えの中身のスタイル*/
.tab_content {
  display: none;
  padding-top:20px;
  clear: both;
  overflow: hidden;
}
/*選択されているタブのコンテンツのみを表示*/
#niigata:checked ~ #niigata_content,
#nagaoka:checked ~ #nagaoka_content {
  display: block;
}

/*選択されているタブのスタイルを変える*/
.tabs input:checked + .tab_item {
  background-color: #4ab311;
  color: #fff;
}







.section5{
	margin: 0 auto;
	padding: 0 0 30px 0;
	position:relative;
	min-width: auto;

	background:  url(../../images/top/bg1.png) center center;
	background-size:30px;
	overflow: hidden;
}


h2.section5_h2{
	margin: 0 auto;
	padding: 20px 0 20px 0;
	position:relative;


font-weight: bold;
font-size: 23px;
letter-spacing: -0.02em;
line-height: 32px;
text-align: center;
color: #fff;
text-shadow: 0px 3px 0px rgba(0, 0, 0, 0.16);
}

.section5_box{
	margin: 0 20px 20px ;
	padding: 20px 0px 20px;
	position:relative;
	text-align: center;

	border-radius: 15px;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
background: #fff;
border: 1px solid #707070;

}

h3.section5_h3{
	margin: 0 auto 20px ;
	padding: 0 0 0 0;
	position:relative;


font-weight: bold;
font-size: 14px;
letter-spacing: -0.02em;
line-height: 20px;
text-align: center;
color: #000;

}

img.section5_illust1{
	position: absolute;
	top:-65px;
	left:10px;

	width:40px;
	height:auto;
}

img.section5_illust2{
	position: absolute;
	top:-73px;
	right:0px;

	width:75px;
	height:auto;
}

ul.p_list{
	margin: 0 0 10px ;
	padding: 0 0;
	position:relative;
	letter-spacing:normal;
	text-align:center;
}

ul.p_list li{
	margin: 0 5px 15px;
	padding: 0 0;
	position:relative;
	letter-spacing:normal;
	width: 40%;
	letter-spacing:0px;
	display:inline-block;
	vertical-align:top;
	text-align:center;
}


ul.p_list li img{
	width:100%;
	height:auto;
	vertical-align:top;
	box-shadow: 3px 6px 0px rgba(0, 0, 0, 0.16);
}

.section5_btn{
	margin: 0 auto 0px ;
	padding: 0 0 0 0;
	position:relative;
text-align: center;
}

.section5_btn img{
	width:90%;
	height:auto;
}



.line_box{
	margin: 0 20px 40px ;
	padding: 10px 0px 6px;
	position:relative;
	text-align: center;
	border-radius: 15px;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
background: #fff;
border: 1px solid #000;
width: auto;
}
.line_box a img{
	width: 90%;
	height: auto;
}

.line_box p{
	margin: 0 auto ;
	padding: 0px;
	position:relative;
	text-align: center;
	

font-weight: normal;
font-size: 10px;
letter-spacing: -0.02em;

text-align: center;
color: #000;
}

.center{
	text-align:center;
}

.pc_only{
	display:none;
}
.img_pc {
	display:none;
}
.br_pc {
	display:none;
}

/* add 2026.5.7
========================*/
small.fs12 {
	display:inline-block;
	padding:0.6em 0;
	font-size:10px;
	line-height:1.4;
}
.mb0 {
	margin:0 !important;
}
p.mb0 {
	margin:0 20px !important;
}
ul.kome {
    margin: 8px 20px 1em;
    padding:0;
    position: relative;
    font-weight: normal;
    font-size: 12px;
    text-align: justify;
    color: #000;
    line-height: 1.6;
}

ul.kome li {
  position: relative;
  padding-left: 1.2em;
}

ul.kome li::before {
  content: "※";
  position: absolute;
  left: 0;
  top: 0;
}
a.link {
   color: blue;
   text-decoration: underline;
}
