@charset "UTF-8";
/* CSS Document */

img { -ms-interpolation-mode: bicubic; }

.sp{
display: none;
}

.hamburger-menu{
display: none;
}


/*ヘッダーここから*/

header{
position: relative;
overflow: hidden;

padding: 50px;
}


.top_copy{
width: 35%;
padding: 2% 0% 10% 5%;
z-index: 9;
position: relative;
}

.top_data{
width: 30%;
padding: 5% 0% 4% 5%;
z-index: 9;
position: relative;
}

.free{
width: 13%;
position: absolute;
top: 43%;
left: 17%;
}



.top_ec{
width: 75%;
position: absolute;
top: -24%;
right: -15%;
}

.top_ec img{
position: absolute;
top: 0;
left: 0;
}

.rotate{
animation: rotate_anime 40s linear infinite;
}
@keyframes rotate_anime {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/*ヘッダーここまで*/


.img_01{
width: 15%;
position: absolute;
top: 0;
left: 0;
}

.form_link_01{
width: 30%;
position: fixed;
right: 15%;
bottom: -1%;
/*background: #C1282D;*/
z-index: 999999999;
/*border-radius: 20px 20px 0 0;*/
transition: all 0.5s;/*アニメーション設定*/
}



.form_link_02{
width: 35%;
position: fixed;
left: 2%;
bottom: -3%;
z-index: 999999999;
transition: all 0.5s;/*アニメーション設定*/
}

.eyecatching02{
width: 100px;
position: absolute;
top: -100px;
left: -100px;
}

.eyecatching03{
width: 120px;
position: absolute;
top: -80px;
right: -100px;
}

.main_navi_01{
background: #fff;
width: 100%;
position: -webkit-sticky;
position: sticky;
top: 0;
z-index: 99999999;
}

.main_navi_01 ul{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
width: 100%;
margin: 0 auto;
border-bottom: #000000 5px solid;
border-top: #000000 2px solid;
}

.main_navi_01 ul li{
text-align: center;
width: 19%;
}

.line_01{
width: 1.5px !important;
}

.main_navi_01 ul li a{
font-size: 2.0rem;
line-height: 1.2em;
font-weight: bold;
}

.copy_01{
font-size: 2.3rem;
font-weight: bold;
text-align: center;
line-height: 250%;
margin: 5% 0;
}

.top_section_01{
background: #F5C94E;
width: 100%;
padding: 4% 0;
}

.midashi_01{
font-size: 4.0rem;
font-weight: 700;
margin: 0 auto 4% auto;
text-align: center;
}

.list_01{
width: 1100px;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.list_01 li{
width: 19%;
padding: 2%;
background: #fff;
border-radius: 20px;
text-align: center;
}

.list_01 li p{
font-size: 1.7rem;
line-height: 170%;
margin-bottom: 8%;
font-weight: bold;
}

.list_01 li img{
width: auto;
height: 124px;
}

.top_section_02{
padding: 5% 0;
}

.midashi_02{
width: 429px;
margin: 0 auto 4% auto;
}

.list_02{
width: 1100px;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.list_02 li{
width: 32%;
margin-bottom: 1%;
transition: all 0.5s;/*アニメーション設定*/
}

.list_02 li:hover{
opacity: 1;
margin-bottom: 0;
padding-top: 1%;
}

.list_02 li a:hover{
opacity: 1;
}

.top_section_03{
padding: 5% 0;
}

.width1100{
width: 1100px;
margin: 0 auto;
position: relative;
}

.day_01{
width: 182px;
margin-left: -30px;
margin-bottom: 2%;
}

.midashi_03{
width: 824px;
margin: 0 0 2% 0;
}

.img_07{
width: 230px;
position: absolute;
top: 20px;
right: 0;
}

.honbun_01{
font-size: 1.7rem;
line-height: 250%;
font-weight: bold;
}

.img_08{
margin: 4% 0;
}

.link_btn_02{
width: 734px;
margin: 0 auto;
display: block;
position: relative;
}

.eyecatching01{
width: 190px;
position: absolute;
top: -100px;
right: -60px;
}

.top_section_04{
padding: 5% 0;
}

.day_02{
width: 464px;
margin-left: -30px;
margin-bottom: 2%;
}

.midashi_04{
width: 698px;
margin: 0 0 2% 0;
}

.img_10{
width: 270px;
position: absolute;
top: 35px;
right: 0;
}

.midashi_05{
width: 128px;
margin: 6% auto 2% auto;
}

.guests_two_column_01{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.guests_two_column_01 div{
width: 41.5%;
padding: 3% 3%;
background: #fff;
border-radius: 20px;
position: relative;
}

.day_03{
width: 90%;
position: absolute;
top: -20px;
left: 4%;
}

.margintop01{
margin-top: 4%;
}

.guests_dl_01{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 3% 0;
}

.guests_dl_01 dt{
width: 28%;
}

.guests_dl_01 dd{
width: 68%;
}

.guests01{
width: 73px;
margin-bottom: 2%;
}

.name01{
font-size: 1.9rem;
font-weight: bold;
margin-bottom: 2%;
}

.name01 b{
font-size: 3.0rem;
}

.name01 span{
font-size: 1.6rem;
}

.honbun_02{
font-size: 1.3rem;
line-height: 180%;
}

.line01{
display: block;
border-bottom: #000000 1px dotted;
padding-top: 2%;
margin-bottom: 2%;
}

.comingsoon{
width: 100%;
margin: 4% auto 2% auto;
display: block;
}

.midashi_06{
width: 624px;
margin: 0 0 2% 0;
}

.img_20{
width: 222px;
position: absolute;
top: 35px;
right: 0;
}

.section_two_column_01{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.section_two_column_01 div{
width: 49%;
}

.top_section_05{
padding: 4% 0;
text-align: center;
}

.midashi_07{
width: 400px;
display: block;
margin: 0 auto;
margin-bottom: 4%;
margin-top: 10%;
}

.map_01{
width: 921px;
margin: 0 auto;
}

.municipal{
width: 145px;
margin: 4% auto 2% auto;
position: relative;
z-index: 9;
}

.municipal_list_01{
width: 1000px;
margin: 0 auto 5% auto;
display: flex;
flex-wrap: wrap;
justify-content: center;
}

.municipal_list_01 li{
font-size: 2.3rem;
margin-bottom: 4%;
}

.municipal_list_01 li a{
font-size: 2.3rem;
margin: 0 1em;
border-bottom: #FFF9B1 10px solid;
}

.honbun_03{
font-size: 2.5rem;
font-weight: bold;
text-align: center;
}

.midashi_12{
font-size: 4.0rem;
font-weight: bold;
margin-bottom: 2%;
}

.img_23{
width: 543px;
position: absolute;
top: -30px;
right: 0;
}

.list_03{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin-top: 12%;
}

.list_03 li{
background: #EECF4D;
width: 27%;
padding: 4% 2%;
position: relative;
}

.chiku{
width: 92px;
margin-top: -100px;
}

.img_24{
width: 113px;
position: absolute;
top: -30px;
right: 10px;
}

.dl_01{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin-top: 2%;
margin-top: -4%;
}

.dl_01 dt{
width: 15%;
padding-top: 4px;
margin-top: 8%;
}

.dl_01 dd{
width: 82%;
font-size: 1.4rem;
line-height: 200%;
margin-top: 8%;
}

.img_31{
width: 150px;
position: absolute;
top: -30px;
right: 10px;
}

.img_32{
width: 140px;
position: absolute;
top: -30px;
right: 10px;
}

.midashi_13{
width: 290px;
margin: 0 auto 2% auto;
}

.qa_section_01{
margin-top: 5%;
position: relative;
}

.qa_section_01 div{
/*margin: 3% 0;*/
padding: 0% 2% 2% 2%;
background: #f6e686;
}

.img_34{
width: 887px;
margin: 0 auto;
}

.qa_dl_01{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
padding: 2% 0;
padding-left: 2%;
}

.qa_dl_01 dt{
width: 4%;
}

.qa_dl_01 dd{
width: 95%;
font-size: 2.3rem;
text-align: left;
font-weight: bold;
color: #c1272d;
}

.qa_dl_02{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding-left: 0;
}

.qa_dl_02 dt{
width: 4%;
}

.qa_dl_02 dd{
width: 95%;
font-size: 1.5rem;
text-align: left;
font-weight: bold;
line-height: 200%;
padding-top: 0.5%;
}

.qa_dl_02 dd b{
font-size: 2.8rem;
font-weight: bold;
color: #c1272d;
}

.qa_dl_02 dd a{
font-size: 1.5rem;
text-align: left;
font-weight: bold;
background: #BF312C;
color: #fff;
padding: 0.1em 0.5em 0.2em 0.5em;
border-radius: 5px;
}

.line02{
width: 100%;
border-bottom: #000000 2px dotted;
}

.img_37{
width: 872px;
position: absolute;
top: -40px;
left: 50%;
transform: translateX(-50%);
-webkit-transform: translateX(-50%);
-ms-transform: translateX(-50%);
}

.img_38{
width: 931px;
position: absolute;
top: -60px;
left: 50%;
transform: translateX(-50%);
-webkit-transform: translateX(-50%);
-ms-transform: translateX(-50%);
}

.banner_list{
display: flex;
flex-wrap: wrap;
justify-content: center;
margin: 0 auto;
margin-bottom: 5%;
width: 1400px;
}

.banner_list li{
margin: 10px;
}

.banner_list li img{
width: auto;
height: 100px;
}

footer{
background: #EDB21E;
padding: 2% 0 5% 0;
text-align: center;
}

.f_midashi{
font-size: 2.0rem;
margin-bottom: 0.3%;
font-weight: bold;
margin-top: 2%;
}

.f_data{
font-size: 1.4rem;
line-height: 150%;
font-weight: bold;
}

.contents_innner {
    padding-top: 120px;
    margin-top:-120px;
}

.municipal_section_01{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin-top: 2%;
}

.municipal_section_01 div{
width: 44%;
padding: 2%;
text-align: left;
margin-bottom: 4%;
}

.aizu_c div{
border: #C1272D 1px solid;
}

.nak_c div{
border: #8CC11D 1px solid;
}

.hama_c div{
border: #32A3F3 1px solid;
}

.sonota_c div{
border: #656565 1px solid;
}

.name02{
font-size: 2.7rem;
font-weight: bold;
line-height: 1.3em;
}

.name02 span{
font-size: 70%;
}

.list_04{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 2% 0;
}

.list_04 li:first-child{
width: 42%;
}

.list_04 li:last-child{
width: 55%;
}

.honbun_04{
font-size: 1.4rem;
line-height: 180%;
}

.dl_02{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: flex-start;
margin-top: 6%;
margin-bottom: 2%;
}

.dl_02 dt{
background: #C1272D;
color: #fff;
text-align: center;
width: 20%;
font-size: 0.9rem;
line-height: 100%;
padding: 2% 0;
}

.dl_02 dd{
width: 78%;
font-size: 1.2rem;
}

.honbun_05{
font-size: 1.2rem;
}

.in_line_section{
border: #000000 1px solid;
padding: 4%;
margin-top: 40px;
}

.midashi_sodan{
width: 257px;
margin-top: -100px;
margin-left: -30px;
}

.honbun_06{
font-size: 1.3rem;
line-height: 180%;
}

.link_btn_03{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin-top: 3%;
}

.link_btn_03 li{
margin-bottom: 2%;
line-height: 3.3em;
}

.aizu_b li a{
background: #C1272D;
color: #fff;
}

.naka_b li a{
background: #8CC11E;
color: #fff;
}

.hama_b li a{
background: #36A5F4;
color: #fff;
}

.sonota_b li a{
background: #656565;
color: #fff;
}


.link_btn_03 li{
width: 48%;
text-align: center;
}

.link_btn_03 li a{
font-size: 2.0rem;
display: block;
width: 100%;
padding: 4% 0;
border-radius: 20px;
}



.hidden_box {
    margin: 1em 0;/*前後の余白*/
    padding: 0;
}

/*ボタン装飾*/
.hidden_box label {
}

/*ボタンホバー時*/
.hidden_box label:hover {
    background: #efefef;
}

/*チェックは見えなくする*/
.hidden_box input {
    display: none;
}

/*中身を非表示にしておく*/
.hidden_box .hidden_show {
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: 0.8s;
}

/*クリックで中身表示*/
.hidden_box input:checked ~ .hidden_show {
    padding: 10px 0;
    height: auto;
    opacity: 1;
}

.open_close_aizu{
font-size: 1.8rem;
background: #BF2329;
color: #fff;
padding: 3% 0 2% 0;
width: 100%;
display: block;
cursor: pointer;
margin-top: -50px;
border-radius: 20px;
}

.open_close_naka{
font-size: 1.8rem;
background: #8DC11F;
color: #fff;
padding: 3% 0 2% 0;
width: 100%;
display: block;
cursor: pointer;
margin-top: -50px;
border-radius: 20px;
}

.open_close_hama{
font-size: 1.8rem;
background: #3FA9F4;
color: #fff;
padding: 3% 0 2% 0;
width: 100%;
display: block;
cursor: pointer;
margin-top: -50px;
border-radius: 20px;
}

.open_close_sonota{
font-size: 1.8rem;
background: #656565;
color: #fff;
padding: 3% 0 2% 0;
width: 100%;
display: block;
cursor: pointer;
margin-top: -50px;
border-radius: 20px;
}


.btnol::before{
content: "クリックでブース出展一覧が開きます"
}

.btnol.open::before {
  content: "クリックで一覧を閉じます";
}






.img_51{
display: block;
width: 600px;
margin: 120px auto 0 auto;
}

.online_list_01{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin-top: 3%;
}

.online_list_01 li{
width: 48%;
margin-bottom: 5%;
}

.dl_03{
display: flex;
flex-wrap: wrap;
font-size: 1.7rem;
color: #0071BC;
}

.dl_03 dt{
width: 55px;
}

.dl_03 dd{
width: 445px;
margin-bottom: 2%;
}

.dl_03 dd span{
font-size: 85%;
}

.img_57{
width: 70%;
margin: 0 auto;
display: block;
margin-top: 3%;
}




.erea_section_02{
}

.erea_section_02 > li{
margin: 2% 0;
}

div.erea_midashi_02 {
cursor: pointer;
padding: 1% 0;
position: relative;
/*margin-bottom: 2%;*/
}

div.erea_midashi_02::after{
font-size: 2.0rem;
font-family: "Font Awesome 5 Free";
font-weight: 900;
content: "\f067";
color: #fff;
position: absolute;
top: 50%;
right: 2%;
transform: translateY(-50%);
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
}

div.one_02::after{
font-family: "Font Awesome 5 Free";
font-weight: 900;
content: "\f068";
color: #fff;
position: absolute;
top: 50%;
right: 2%;
transform: translateY(-50%);
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
}

div.erea_midashi:hover {

}

div.erea_content_02 {
display: none;
}

.aizu_ba{
background: #BF2329;
color: #fff;
font-size: 2.8rem;
font-weight: bold;
}

.nakadori_ba{
background: #8DC11F;
color: #fff;
font-size: 2.8rem;
font-weight: bold;
}

.hama_ba{
background: #3FA9F4;
color: #fff;
font-size: 2.8rem;
font-weight: bold;
}

.sonota_ba{
background: #999999;
color: #fff;
font-size: 2.8rem;
font-weight: bold;
}

.midashi_copy_01{
font-size: 2.4rem;
font-weight: bold;
}

.center{
text-align: center;
}

.list_05{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 1150px;
margin: 0 auto;
}

.list_05 li{
width: 45%;
margin-bottom: 3%;
background: #fff;
border: #000000 1px solid;
padding: 1% 2% 2% 2%;
}

.list_05 li h2{
font-size: 3.4rem;
color: #C1272D;
text-align: center;
font-weight: bold;
}

.name03{
font-size: 2.7rem;
font-weight: bold;
text-align: center;
}

.name03 span{
font-size: 60%;
font-weight: bold;
margin-right: 0.5em;
letter-spacing: -0.1em;
}

.name03 b{
background: #000000;
color: #fff;
font-size: 50%;
padding: 1%;
margin-right: 0.5em;
}

.list_05 li dl{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.list_05 li dl dt{
width: 40%;
}

.list_05 li dl dd{
width: 55%;
font-size: 1.4rem;
}

.img_2201{
width: 182px;
position: absolute;
top: -30px;
right: -20px;
}

.img_2202{
width: 170px;
position: absolute;
top: 450px;
left: -100px;
}

.img_2203{
width: 192px;
position: absolute;
top: -50px;
left: 80px;
}

.img_2204{
width: 57px;
position: absolute;
top: 220px;
right: 80px;
}

.img_2205{
width: 116px;
position: absolute;
bottom: 220px;
right: 10px;
}

.img_2206{
width: 57px;
position: absolute;
bottom: 50px;
left: 50px;
}

.img_2207{
width: 116px;
position: absolute;
top: 0px;
left: 100px;
}

.img_2208{
width: 57px;
position: absolute;
top: 150px;
right: 100px;
}

.img_2209{
width: 57px;
position: absolute;
top: 600px;
left: 50px;
}

.img_2210{
width: 57px;
position: absolute;
top: -100px;
left: 150px;
}

.img_2211{
width: 119px;
position: absolute;
top: -50px;
right: 50px;
}

.fukushimalogo{
width: 7%;
position: absolute;
top: -3%;
right: -0%;
}

.naruhafont02{
font-family: honoka-maru-gothic,sans-serif;
font-weight: 400;
font-style: normal;
font-weight: bold;
}

.naruhafont{
font-family: honoka-maru-gothic,sans-serif;
font-weight: 400;
font-style: normal;
}

.naruhafont03{
font-family: honoka-maru-gothic,sans-serif;
font-weight: 200;
font-style: normal;
}

.hashtag_01{
font-size: 2.0rem;
color: #C1272D;
font-weight: bold;
margin-top: 2%;
}

.btn_03{
width: 12%;
position: fixed;
bottom: -2px;
right: 0;
z-index: 999999999;
}

.list_06{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 1100px;
margin: 0 auto;
margin-bottom: 10%;
}

.list_06 li{
width: 48%;
border: #000000 1px solid;
}

.novelty{
width: 11%;
position: absolute;
top: 45%;
left: 5%;
z-index: 99;
}


.c3_list_01{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 1100px;
margin: 0 auto;
margin-bottom: 50px;
}
.c3_list_01 li{
width: 33%;
text-align: center;
border-left: rgba(0,0,0,1.00) 1px solid;
}

.c3_list_01 li:first-child{
border-left: none;
}

.c3_list_01 li p{
font-size: 2.2rem;
font-weight: bold;
line-height: 1.7em;
}

.c3_list_01 li img{
width: 70%;
margin-bottom: 30px;
}

.voice01{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: flex-start;
width: 1100px;
margin: 0 auto;
margin-bottom: 50px;
}

.voice01 dt{
width: 15%;
}

.voice01 dd{
width: 80%;
background: rgba(199,215,85,1.00);
text-align: left;
border-radius: 20px;
margin-top: 70px;
position: relative;
}

.voice01 dd p{
font-size: 1.8rem;
font-weight: 500;
padding: 2% 3%;
position: relative;
}

.voice01 dd img{
width: 45px;
position: absolute;
bottom: 20px;
left: -4%;
}

.voice02{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: flex-start;
flex-direction: row-reverse;
width: 1100px;
margin: 0 auto;
margin-bottom: 50px;
}

.voice02 dt{
width: 15%;
}

.voice02 dd{
width: 80%;
background: #F8CD00;
text-align: left;
border-radius: 20px;
margin-top: 70px;
position: relative;
}

.voice02 dd p{
font-size: 1.8rem;
font-weight: 500;
padding: 2% 3%;
position: relative;
}

.voice02 dd img{
width: 45px;
position: absolute;
bottom: 20px;
right: -4%;
}

.case{
width: 1100px;
margin: 0 auto;
background: #fff;
border-radius: 20px;
position: relative;
margin-bottom: 70px;
}

.case img{
width: 120px;
position: absolute;
top: -10px;
left: -40px;
}

.case dl{
padding: 3% 3% 3% 8%;
}

.case dl dt{
margin-bottom: 10px;
}

.case dl dt h3{
font-size: 4.0rem;
font-weight: bold;
color: #00508D;
}

.case dl dd ul{
display: flex;
flex-wrap: wrap;
}

.case dl dd ul li{
background: #317337;
color: #fff;
font-size: 2.0rem;
padding: 6px 1em 7px 1em;
margin-right: 40px;
position: relative;
margin-bottom: 15px;
}

.case dl dd ul li::before{
content: " ";
position: absolute;
width: 27px;
height: 27px;
display: block;
background: url("../img/top2024/arrow.png") no-repeat;
background-size: 100% 100%;
top: 8px;
left: -33px;
}

.case dl dd ul li:first-child::before{
content: none;
}

.endnews{
background: #C0272D;
color: #fff;
position: relative;
z-index: 999;
font-size: 3.5rem;
font-weight: 900;
text-align: left;
padding-left: 1em;
}

.comingsoon_txt{
font-size: 6.0rem;
font-weight: 900;
text-align: center;
margin-bottom: 20%;
}



.header_section{
position: relative;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
/*background: #D6D6D6;*/
}


.header_section > div:nth-of-type(1){
width: 60%;
}

.header_section > div:nth-of-type(2){
width: 35%;
}


.header_section > div:nth-of-type(2) img:nth-of-type(1){
width: 80%;
padding-top: 0;
}
.header_section > div:nth-of-type(2) img:nth-of-type(3){
width: 75%;
padding: 5% 0 2% 0;
}
.header_section > div:nth-of-type(2) a{
width: 94%;
display: block;
margin-bottom: 2%;
}


.header_main_visual{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.header_main_visual > div{
width: 50%;
position: relative;
}

.header_main_visual > div:nth-of-type(3){
background: #51824D;
order: 1;
}

.header_main_visual > div:nth-of-type(1){
background: #E8BF4B;
order: 2;
}

.header_main_visual > div:nth-of-type(4){
background: #3A5D86;
order: 3;
}

.header_main_visual > div:nth-of-type(2){
background: #80B9CA;
order: 4;
}

.fukushimanokurashi{
width: 26%;
position: absolute;
top: -5%;
right: -2%;
}

.shigotomaruwakari{
width: 26%;
position: absolute;
top: -5%;
right: 2%;
}

.title{
position: absolute;
width: 70%;
top: 22%;
left: 7%;
}

.beko1{
position: absolute;
width: 42%;
bottom: -6%;
left: 25%;
}

.img_01_2025{
position: absolute;
width: 30%;
bottom: -10%;
right: 2%;
}

.beko2{
position: absolute;
width: 60%;
top: 20%;
left: 10%;
}

.img_02_2025{
position: absolute;
width: 20%;
bottom: 10%;
right: 25%;
}

.beko3{
position: absolute;
width: 60%;
top: 20%;
left: 10%;
}


.img_03_2025{
position: absolute;
width: 75%;
bottom: 3%;
left: -5%;
}

/* 全ての画像を初期状態で非表示にする */
.header_main_visual img {
  opacity: 0;
  transition: opacity 1.0s ease-in-out; /* 1秒かけてゆっくりとフェードイン */
}

/* 'visible'クラスが付いた画像を可視状態にする */
.header_main_visual img.visible {
  opacity: 1;
}

/* 既存のCSSはそのまま */
.header_main_visual img {
  opacity: 0;
  transition: opacity 1.0s ease-in-out;
}

.header_main_visual img.visible {
  opacity: 1;
}

/* bekoクラスを持つ要素に共通のスタイル */
.beko {
  transform-origin: bottom center; /* 回転の中心を底面中央に設定 */
  animation-play-state: paused; /* 初期状態ではアニメーションを停止 */
}

/* 揺れるアニメーションの定義 */
@keyframes seesaw {
  0% { transform: rotate(-5deg); }
  50% { transform: rotate(5deg); }
  100% { transform: rotate(-5deg); }
}

/* bekoクラスを持ち、seesawアニメーションを適用 */
.beko.seesawing {
  animation-name: seesaw;
  animation-duration: 1.5s; /* 1.5秒かけてゆっくりと */
  animation-iteration-count: infinite; /* 無限に繰り返す */
  animation-direction: alternate; /* 逆再生も行う */
  animation-play-state: running; /* アニメーションを開始 */
}

.yoyaku_btn{
width: 7%;
position: fixed;
top: 13%;
right: 0;
z-index: 999999999999;
}






/* その他のスタイルはそのまま */
.mySwiper {
  width: 100%;
  padding-bottom: 50px;
  /* 左右に余白を設ける場合 */
  /* padding: 0 20px; */
  margin: 0% 0 10% 0;
}

.swiper-slide img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.swiper-button-next,
.swiper-button-prev {
  color: white;
  background-color: rgba(0, 0, 0, 0.5);
  border-radius: 50%;
  padding: 25px;
}

.swiper-pagination-bullet-active {
  background-color: #BF312C !important;
}

.mySwiper .swiper-pagination {
    position: static;  /* 位置指定を解除 */
    top: auto;         /* top指定を無効化 */
    padding-top: 20px; /* スライダー本体との間に余白を追加 */
}

/*
  もし、ページネーションの位置がうまく調整できない場合は
  親要素にflexboxを設定して、中央揃えにすることも可能です。
*/
.swiper-pagination-container {
    display: flex;
    justify-content: center;
    align-items: center;
    padding-top: 20px;
}

/* ナビゲーションボタンの共通スタイル */
.swiper-button-next,
.swiper-button-prev {
  color: white !important; /* 矢印の色 */
  top: 38% !important; /* デフォルトの50%から45%に変更して上に移動 */
}

/* ボタンの背景色や大きさを変える */
.swiper-button-next,
.swiper-button-prev {
  width: 20px !important; /* ボタンの幅 */
  height: 20px !important; /* ボタンの高さ */
  background-color: #BF312C !important; /* ボタンの背景色 */
  border-radius: 50%;
}

.swiper-button-prev{
left: 22% !important;
}

.swiper-button-next{
right: 22% !important;
}

/* 矢印のサイズを変える */
.swiper-button-next::after,
.swiper-button-prev::after {
  font-size: 24px; /* 矢印のフォントサイズ */
}


.online_section{
width: 1000px;
padding: 20px 100px 50px 100px;
margin: 10% auto;
background: #E8BF4B;
border-radius: 50px;
position: relative;
}

.online_section h3{
text-align: center;
font-size: 5.6rem;
font-weight: 700;
}

.online_section h3 span{
font-size: 3.0rem;
font-weight: 700;
color: #b01e23;
}

.online_section ul{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
margin: 2% 0;
}

.online_section ul li{
width: 47%;
}

.online_section ul li p{
font-size: 2.0rem;
font-weight: 500;
line-height: 190%;
}

.online_section dl{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: flex-start;
margin: 0 auto;
width: 80%;
margin-top: 5%;
}

.online_section dl dt{
background: #000000;
color: #fff;
font-size: 2.6rem;
font-weight: 700;
width: 15%;
text-align: center;
border-radius: 10px;
padding-bottom: 2px;
}

.online_section dl dd{
font-size: 3.9rem;
font-weight: 500;
width: 83%;
line-height: 90%;
margin-bottom: 3%;
}

.online_section dl dd span{
font-size: 2.6rem;
font-weight: 500;
}


.online_section a{
background: #b01e23;
color: #fff;
font-size: 4.0rem;
font-weight: 700;
text-align: center;
width: 450px;
margin: 0 auto;
display: block;
border-radius: 20px;
padding-top: 8px;
padding-bottom: 15px;
margin-top: 20px;
}

.otameshi{
width: 1100px;
margin: 5% auto;
display: block;
}

.img_05{
width: 400px;
position: absolute;
bottom: -30px;
right: -110px;
}

.honbun_07{
font-size: 1.8rem;
font-weight: 500;
text-align: center;
margin-top: 30px;
}

.end_01{
width: 400px;
margin: 0 auto;
display: block;
margin-top: 20px;
}

/* --- CSS全体 --- */

/* 共通のキーフレーム (1度だけ定義) */
@keyframes sway_base {
  0% {
    transform: rotate(3deg);
  }
  50% {
    transform: rotate(-4deg);
  }
  100% {
    transform: rotate(3deg);
  }
}

.sp_img_01 {
  width: 45%;
  position: fixed;
  bottom: -2%;
  left: -10%;
  z-index: 99999999999;
    
  /* 揺れの中心を要素の底辺に設定 */
  transform-origin: 50% 100%;
    
  /* アニメーションの適用 */
  /* スピード: 4秒, 遅延: 0秒 */
  animation: sway_base 4s ease-in-out infinite alternate;
}

.sp_img_02 {
  width: 25%;
  position: fixed;
  bottom: -3%;
  left: 28%;
  z-index: 99999999999;
    
  /* 揺れの中心を要素の底辺に設定 */
  transform-origin: 50% 100%;
    
  /* アニメーションの適用 */
  /* スピード: 3.5秒, 遅延: 0.5秒 */
  animation: sway_base 3.5s ease-in-out infinite alternate;
  animation-delay: 0.5s; /* ⭐ 開始タイミングを遅らせる */
}

.sp_img_03{
  width: 45%;
  position: fixed;
  bottom: -3%;
  right: 2%;
  z-index: 99999999999;
    
  /* 揺れの中心を要素の底辺に設定 */
  transform-origin: 50% 100%;
    
  /* アニメーションの適用 */
  /* スピード: 3.5秒, 遅延: 0.5秒 */
  animation: sway_base 3.5s ease-in-out infinite alternate;
  animation-delay: 0.8s; /* ⭐ 開始タイミングを遅らせる */

}



/* --- ここからCSS --- */
    .accordion-section {
        border-radius: 8px;
        margin-bottom: 1rem;
    }

    .accordion-title {
        cursor: pointer;
        display: block; /* summaryのデフォルトの矢印を消すため */
        position: relative;
        font-weight: bold;
    }



    /* プラス・マイナス記号のスタイル */
    .accordion-title::before,
    .accordion-title::after {
        content: '';
        width: 40px;
        height: 6px;
        background-color: #B01E23;
        position: absolute;
        top: 50%;
        right: -40px;
        transform: translateY(-50%);
        transition: transform 0.3s ease;
    }

    .accordion-title::after {
        transform: translateY(-50%) rotate(90deg);
    }

    /* 開いた時のマイナス記号 */
    details[open] .accordion-title::after {
        transform: translateY(-50%) rotate(0deg);
    }

    /* デフォルトの矢印を非表示にする */
    .accordion-title::-webkit-details-marker {
        display: none;
    }

    .accordion-content {
    }
    
    /* --- 画像やテキストのスタイル（元のCSSに合わせて調整してください） --- */
    .wow {
        /* 必要に応じてスタイルを調整 */
    }
    .end_01, .img_05 {
        max-width: 100%;
        height: auto;
        display: block;
        margin: 1rem auto;
    }
    .accordion-content ul {
        list-style: none;
        padding: 0;
    }
    .accordion-content li {
        display: flex;
        align-items: flex-start;
        gap: 1rem;
        margin-bottom: 1rem;
    }

    .accordion-content dl {
    }
    .accordion-content dt {
        font-weight: bold;
        margin-top: 1rem;
    }
    .accordion-content dd {
        margin-left: 0;
        margin-bottom: 1rem;
    }
    /* --- ここまでCSS --- */
    
    
    

.list_07{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 1200px;
margin: 0 auto;
}

.list_07 li{
width: 29%;
position: relative;
}

.list_07 li::after{
content: "　";
background: url("../img/top2025/yajirushi.png") no-repeat center center;
background-size: 100% 100%;
width: 50px;
height: 50px;
display: block;
position: absolute;
top: 30%;
right: -60px;
}

.list_07 li:last-child::after{
display: none;
}

.list_07 li img{
width: auto;
height: 250px;
}

.list_07 li h3{
font-size: 3.0rem;
font-weight: bold;
color: #C1272D;
margin-bottom: 20px;
}

.list_07 li p{
font-size: 2.0rem;
text-align: left;
font-weight: 500;
line-height: 200%;
margin-top: 10px;
}

.btn_04{
background: #C1272D;
color: #fff;
font-size: 3.0rem;
font-weight: 500;
text-align: center;
border-radius: 10px;
padding: 0.5em 1em;
display: inline-block;
margin-top: 10px;
}