@charset "UTF-8";

/* 共通部分
------------------------------- */
html {
    font-size: 100%;
}
body{
    font-family: "Noto Sans JP", sans-serif;
    line-height: 1.7;
    color: #151515;
    margin: 0;
}
a {
    font-family: "Noto Sans JP", sans-serif;
    text-decoration: none;
}
img {
    object-fit: fill;
    object-position: center center;
    width: 100%;
}

.logo{
    object-fit: contain;
}

p{
    font-family: "Noto Sans JP", sans-serif;
    font-size: 18px;
    font-weight: 500;
}

.text{
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    letter-spacing: 0.05em;
}

a {
    text-decoration-color: none;  /*リンクの色を消す*/
  }

  html,body {
    overflow-x: hidden;
  }

/*追従*/

.form{
    position: fixed;
    z-index: 99999;
    bottom: 50px;
    right: 50px;
    width: 350px;
}

.inner {
    width: 1000px;
}

.pc {
    display: block;
}

.sp {
    display: none;
}

/*画像の下の隙間を消すコード*/


div{
	text-align:center;
}
img{
	vertical-align:top;
}



/* HEADER
------------------------------- */

.pc_header {
    display: block;
}

.top_sp {
    display: none;
}

.pc_header {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.top_icon {
    width: 70px;
    height: auto;
    margin: 0 0 0 20px;
}

.pc_menu {
    display: flex;
    align-items: center;
    gap: 60px;
}

.pc_menu p{
    font-size: 15px;
    color: #ffff;
    font-weight: 700;
}

.pc_menu a {
    font-size: 18px;
    height: max-content;
    color: #3E3C3C;
    font-weight: 700;
}

.moushikomi {
    background-color: #00459B;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 20px;
}

.moushikomi img {
    width: 35px;
    height: auto;
}


/* top_ga------------------------------- */

.top_text {
    background-color: #FF1462;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 25px;
    padding: 10px 0;
}

.top_text p {
    color: #ffff;
    font-weight: 700;
    font-size: 30px;
}

.top_text img {
    width: auto;
    height: 40px;
}

.top_ga {
    background-image: url(../images/26886043_m.svg);
    background-color:rgba(255,255,255,0.4);
    background-blend-mode:lighten;
    background-position: center;
    background-size: cover;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 30px 0;
}


.top_ga .text_box {
    margin-bottom: 20px;
}



.top_ga .no1 {
    font-weight: 700;
    font-size: 65px;
    color: #FF0000;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
    display: inline;
    padding: 0.2em;
    line-height: 2.2;
}

.top_ga .no2 {
    font-weight: 700;
    font-size: 30px;
    color: #3c3c3c;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
    display: inline;
    padding: 0.2em;
    line-height: 2.2;
    background: linear-gradient(transparent 40%, #ffee00 30%);
}

.top_ga .inner {
    display: flex;
    justify-content: space-between;
}

.top_ga .l {
    width: 35%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
}

.top_ga .r {
    width: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
}

.top_ga .l img {
    width: 80%;
    height: auto;
}



/* area3------------------------------- */


.area3 {
    background-image: url(../images/contact01.svg);
    background-size: cover;
    background-position: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 60px 0;
}

.area3 .cta_box {
    display: flex;
    flex-direction: column;
    align-items: center;
}


.area3 .no2 {
    font-size: 25px;
    font-weight: 700;
    color: #ffff;
    margin-bottom: 20px;
}

.area3 img {
    top: 58px;
    left: 720px;
}

.area3 .button_box {
    display: flex;
    gap: 30px;
}


/* area4------------------------------- */

.area4 {
    background-image: url(../images/1819561.svg);
    background-size: cover;
}

.area4 .inner {
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 80px 0 0px 0;
}

.ribbon {
    background-image: url(../images/20241004_1657.svg);
    background-size: contain;
    width: 710px;
    padding: 16px;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: -70px;
    margin-bottom: 20px;
}

.ribbon p {
    color: #ffff;
    font-weight: 700;
    font-size: 25px;
}

.ribbon_box {
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: #ffff;
    border-radius: 30px;
    border: 6px dashed #EF492A;
    padding: 40px;
    width: 100%;
}

.ribbon_box .text_box {
    font-size: 35px;
    font-weight: 700;
    color: #EF492A;
    text-align: center;
    font-size: 35px;
}



.area4 .box1 {
    background-color: #800B0B;
    border-radius: 30px 30px 0 0;
    padding: 40px;
    width: 100%;
    margin-top: 60px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.area4 .box1 .midasi {
    border-top: 2px solid #ffff;
    border-bottom: 2px solid #ffff;
    margin-bottom: 30px;
    width: 80%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.area4 .box1 .midasi p {
    font-size: 35px;
    font-weight: 700;
    color: #ffff;
}

.area4 .box1 .text_box {
    color: #ffff;
}



.area4 .box2 {
    background-color: #ffff;
    border-radius: 0 0 30px 30px;
    padding: 0px 40px 40px 40px ;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.area4 .box2 .midasi {
    border-top: 2px solid #EF492A;
    border-bottom: 2px solid #EF492A;
    margin-bottom: 30px;
    width: 80%;
    display: flex;
    flex-direction: column;
    align-items: center;

}

.area4 .box2 .midasi p {
    font-size: 35px;
    font-weight: 700;
    color: #EF492A;
}

.area4 .box2 .text_box {
    color: #EF492A;
}

.triangle{
    width: 0;
  height: 0;
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
  border-top: 30px solid #800B0B;
  margin-bottom: 30px;
}

.area4 img {
    width: 100%;
    margin: 60px 0;
}


.triangle2 {
    width: 0;
    height: 0;
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    border-bottom: 30px solid #EF492A;
}


/* area5------------------------------- */

.area5 .text_box{
    background-color: #EF492A;
    padding: 30px 0;
}

.area5 .text_box p{
    text-align: center;
    color: #ffff;
    font-size: 35px;
    font-weight: 700;
}



/* area6------------------------------- */

.area6 .title_box {
    background-color: #00459B;
    padding: 30px 0;

}

.area6 .back {
    background-image: url(../images/20241104_2009.svg);
    background-size: cover;
    padding: 60px 0;
}

.area6 .title_box p {
    color: #ffff;
    font-weight: 700;
    font-size: 45px;
    text-align: center;
}

.area6 .sannkaku {
    height: 80px;
}

.area6 .triangle {
    border-top: 30px solid #EF492A;
    margin: 0 auto;
}

.area6 .inner {
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}



.area6 .box {
    width: 100%;
    display: flex;
    justify-content: space-evenly;
    align-items: center;
}

.area6 .box .l{
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.area6 .box .l .list {
    display: flex;
    align-items: center;
}

.area6 .list img {
    width: 45px;
    height: auto;
    margin-right: 10px;
}

.area6 .list p {
    font-size: 25px;
    font-weight: 700;
    color: #ffff;
}

.area6 .r img {
    width: 310px;
}

.area6 .tokuten {
    background-color: #EF492A;
    border-radius: 50px;
    width: fit-content;
    padding: 5px 70px;
}

.area6 .tokuten_box {
    width: fit-content;
}

.area6 .tokuten p {
    color: #ffff;
    font-size: 35px;
    font-weight: 700;
}

.area6 .box2 .text_box p {
    font-size: 45px;
    font-weight: 700;
    color: #7E7B7B;
    border-bottom: solid 9px #EF492A;
    width: fit-content;
}

.area6 .box2 span {
    color: #EF492A;
    font-size: 55px;
}

/* area7------------------------------- */


.area7 .title_box {
    background-color: #EF492A;
    padding: 30px 0;

}

.area7 .title_box p {
    color: #ffff;
    font-weight: 700;
    font-size: 35px;
    text-align: center;
}

.area7 .sannkaku {
    height: 80px;
}

.area7 .triangle {
    border-top: 30px solid #EF492A;
    margin: 0 auto;
}

.area7 .inner {
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 60px;
}

.area7 .midasi_box {
    background-color: #4A2424;
    padding: 5px 70px;
    border-radius: 100px;
    margin-bottom: 30px;
}

.area7 .midasi_box p {
    color: #ffff;
    font-weight: 700;
    font-size: 45px;
}

.area7 .midasi_box p .y {
    color: #FEDC49;
}

.area7 .midasi_box p .yb {
    font-size: 55px;
    color: #FEDC49;
}

.area7 .box {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 30px;
}

.area7 .box .list {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.area7 .box .number {
    font-size: 55px;
    color: #EF492A;
    font-weight: 700;
}

.area7 .box .maru {
    background-color: #EF492A;
    height: 250px;
    width: 250px;
    border-radius: 300px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    padding: 30px 30px 50px 30px;
}

.area7 .box .midasi {
    font-size: 35px;
    font-weight: 700;
    color: #FEDC49;
    margin-bottom: 10px;
}

.area7 .box .text_box {
    font-weight: 700;
    color: #ffff;
    text-align: center;
}

.area7 .box img {
    margin-top: 100px;
    width: 100px;
    height: auto;
}
.area7 .box2 {
    width: 100%;
    display: flex;
    justify-content: space-between;
}

.area7 .box2 .img_box {
    width: 250px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.area7 .box2 .no1 {
    width: 100px;
    height: auto;
}

.area7 .box2 .no2 {
    width: 200px;
    height: auto;
}

.area7 .box2 .no3 {
    width: 110px;
    height: auto;
}

.area7 .box .maru .no1 {
    display: none;
}

.area7 .box .maru .no2 {
    display: none;
}

.area7 .box .maru .no3 {
    display: none;
}


/* area8------------------------------- */

.area8 {
    position: relative;
}

.area8 .title_box {
    background-color: #EF492A;
    padding: 30px 0;

}

.area8 .title_box .midasi {
    color: #ffff;
    font-weight: 700;
    font-size: 55px;
    text-align: center;
}

.area8 .title_box .text {
    color: #ffff;
    font-weight: 700;
    font-size: 25px;
    text-align: center;
}

.area8 .sannkaku {
    height: 80px;
    margin-bottom: 30px;
}

.area8 .triangle {
    border-top: 30px solid #EF492A;
    margin: 0 auto;
}

.area8 .inner {
    margin: 0 auto;
}

.area8 .back {
    background-image: url(../images/1819561.svg);
    background-size: cover;
}

.area8 .box {
    display: flex;
    margin-bottom: 60px;
}

.area8 .box .l {
    background-color: #EF492A;
    height: 150px;
    padding: 0 30px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.area8 .box .l p{
    font-size: 25px;
    color: #ffff;
    font-weight: 700;
}

.area8 .box .r {
    height: 150px;
    padding: 0 30px;
    background-color: #ffff;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.area8 .box .r img {
    width: 200px;
    height: auto;
}

.area8 .box2 {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 60px;
    padding-bottom: 390px;
}


.area8 .box2 .list{
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: #ffff;
    border-radius: 30px;
    padding: 45px;
}

.area8 .box2 .list .img_box {
    width: 360px;
    height: auto;
}

.area8 .box2 .list .setmenu {
    width: 50%;
}

.area8 .box2 .list .setmenu img {
    width: 370px;
    margin-bottom: 20px;
}

.area8 .box2 .list .setmenu p {
    font-size: 25px;
    font-weight: 700;
}

.area8 .box2 .list .setmenu .sub_text {
    font-size: 18px;
}

.area8 .box2 .list .setmenu .menu_name {
    font-size: 35px;
    color: #EF492A;
}

.area8 .obi {
    position: absolute;
    bottom: -280px;
    left: 0px;
    width: 100%;
    min-width: 1600px;
}



/* area9------------------------------- */


.area9 {
    position: relative;
}

.area9 .title_box {
    background-color: #00459B;
    padding: 30px 0;

}

.area9 .title_box .midasi {
    color: #ffff;
    font-weight: 700;
    font-size: 55px;
    text-align: center;
}

.area9 .title_box .text {
    color: #ffff;
    font-weight: 700;
    font-size: 25px;
    text-align: center;
}

.area9 .inner {
    margin: 0 auto;
    padding: 60px 0;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.area9 .inner img {
    width: 60%;
    height: auto;
}


/* area10------------------------------- */



.area10 .title_box {
    background-color: #00459B;
    padding: 30px 0;

}

.area10 .title_box .midasi {
    color: #ffff;
    font-weight: 700;
    font-size: 55px;
    text-align: center;
}

.area10 .back {
    background-color: rgba(0, 69, 155, 0.1);
}

.area10 .inner {
    margin: 0 auto;
    padding: 60px 0;
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: 680px;
}

.area10 .list .q_box {
    display: flex;
    align-items: center;
    margin: 20px;
}

.area10 .q_box .q {
    font-size: 35px;
    color: #E6202D;
    font-weight: 700;
    margin-right: 10px;
}

.area10 .q_box .q_text {
    font-size: 25px;
    font-weight: 700;

}

.area10 .a_box {
    margin-left: 30px;
}

.area10 .a_box p {
    font-size: 18px;
}



/* area11------------------------------- */

.area11 {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 30px 0;
}

.area11 img {
    width: 60px;
    height: auto;
}




/* area12------------------------------- */



.area12 .title_box {
    background-color: #00459B;
    padding: 30px 0;
}

.area12 .back {
    background-image: url(../images/12343.png);
    background-size: cover;
    padding: 60px 0;
}

.area12 .inner {
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 30px;
    width: fit-content;
}

.area12 .title_box p {
    color: #ffff;
    font-weight: 700;
    font-size: 45px;
    text-align: center;
    line-height: normal;
}

.area12 .list {
    display: flex;
    align-items: center;
}

.area12 .list .l {
    margin-left: 30px;
}

.area12 .list .komidasi {
    color: #00459B;
    font-weight: 700;
    font-size: 30px;
    margin-bottom: 20px;
}

.area12 .list img {
    height: 310px;
    width: auto;
}



/* area13------------------------------- */



.area13 .title_box {
    background-color: #00459B;
    padding: 30px 0;
}

.area13 .title_box p {
    color: #ffff;
    font-weight: 700;
    font-size: 45px;
    text-align: center;
    line-height: normal;
}

.area13 .back {
    background-image: url(../images/26886043_m.svg);
    background-color:rgba(255,255,255,0.4);
    background-blend-mode:lighten;
    background-size: cover;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 60px 0;
}

.area13 img {
    width: 850px;
}



/* area14------------------------------- */



.area14 .title_box {
    background-color: #00459B;
    padding: 30px 0;
}

.area14 .back {
    background-image: url(../images/20241106_1421.svg);
    background-size: cover;
    padding: 60px 0;
}

.area14 .inner {
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 30px;
    width: fit-content;
}

.area14 .title_box p {
    color: #ffff;
    font-weight: 700;
    font-size: 45px;
    text-align: center;
    line-height: normal;
}

.area14 .list {
    display: flex;
    align-items: center;
}

.area14 .list .l {
    margin-left: 30px;
}

.area14 .list .komidasi {
    color: #00459B;
    font-weight: 700;
    font-size: 30px;
    margin-bottom: 20px;
}

.area14 .list img {
    height: 270px;
    width: auto;
}


/* area15------------------------------- */



.area15 .title_box {
    background-color: #00459B;
    padding: 30px 0;
}

.area15 .back {
    padding: 60px 0;
}

.area15 .inner {
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 30px;
    width: 1000px;
}

.area15 .title_box p {
    color: #ffff;
    font-weight: 700;
    font-size: 45px;
    text-align: center;
    line-height: normal;
}

.area15 .list {
    display: flex;
    align-items: center;
}

.area15 .list .l {
    margin-left: 30px;
}

.area15 .list .r {
    position: relative;
}

.area15 .list .komidasi {
    color: #00459B;
    font-weight: 700;
    font-size: 30px;
    margin-bottom: 20px;
}

.area15 .list .main {
    height: 300px;
    width: auto;
}

.area15 .list .sub {
    position: absolute;
    top: -20px;
    left: -20px;
    width: 120px;
    height: auto;
}




/* area3_1------------------------------- */


.area3_1 {
    background: repeating-linear-gradient(135deg, #FEDC49, #FEDC49 40px, #fff 20px, #fff 80px);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 60px;
    padding: 100px 0;
}

.area3_1 a {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 800px;
    background-color: rgb(239, 73, 43);
    padding: 30px 0;
    border-radius: 100px;
    color: #ffff;
}

.area3_1 .tel_a {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 800px;
    background-color: rgb(239, 73, 43);
    padding: 30px 0;
    border-radius: 100px;
    color: #ffff;
}

.area3_1 a .no2 {
    font-size: 25px;
    font-weight: 700;
}

.area3_1 .tel_a .no2 {
    font-size: 25px;
    font-weight: 700;
}

.area3_1 .tel_box {
    display: flex;
    align-items: center;
    padding-top: 5px;
}

.area3_1 .tel_box .tel_icon {
    width: 35px;
}

.area3_1 .tel_box .tel {
    font-size: 45px;
    padding: 0 10px 0 10px;
    line-height: 1em;
}

.area3_1 .yajirusi {
    position: absolute;
    top: 58px;
    left: 720px;
    width: 20px;
    height: auto;
}

.area3_1 .tel_box .yajirusi {
    position: absolute;
    top: 68px;
    left: 720px;
    width: 20px;
    height: auto;
}







/* footer------------------------------- */

.page-fotter {
    display: flex;
    justify-content: space-evenly;
    align-items: flex-end;
    background-color: #00459B;
    height: 100px;
    padding-bottom: 15px;
}

.page-fotter p ,
.page-fotter a {
    color: #ffff;
}

.page-fotter .r {
    display: flex;
    align-items: center;
    gap: 20px;
}

.page-fotter span {
    width: 1px;
    height: 20px;
    background-color: #ffff;
}




/* contact------------------------------- */



.contact {
    background-image: url(../images/924117.svg);
    background-size: cover;
    padding: 150px 0;
}

.contact .inner {
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: #ffff;
    background-color: rgba(255, 255, 255, 0.562);
    padding: 100px 0;
}

.contact .title {
    margin-bottom: 60px;
    display: flex;
    gap: 15px;
    flex-direction: column;
    align-items: center;
}

.contact .title div {
    height: 2px;
    width: 100%;
    background-color: #3E3C3C;
}
.contact .title p {
    color: #00459B;
}


.contact h1 {
    color: #00459B;
    font-size: 38px;
    font-weight: 500;
}

.contact .required {
    background-color: #FF0000;
    border-radius: 5px;
    color: #ffff;
    margin-left: 15px;
    padding: 3px;
    font-size: 10px;
}


.contact p {
    font-weight: 700;
}

.underbutton a {
    color: #85AC3C;
    font-weight: 700;
}

form {
    width: 600px;
    display: flex;
    flex-direction: column;
    align-items: center;
}


form div{
    margin-bottom: 30px;
    width: 100%;
    display: flex;
    justify-content: space-between;
}

label{
    font-size: 16px;
    margin-bottom: 20px;
    display: block;
    color: #3E3C3C;
    font-weight: 700;
}

input[type="submit"]{
    background-image: url(../images/20241104_1903.png);
    background-size: cover;
    width: 350px;
    height: 72px;
}

input[type="text"],
input[type="email"],
input[type="tel"],
textarea,
select{
    background: #ffff;
    padding: 10px;
    font-size: 1rem;
    height: 40px;
    border: solid 1px #B9B9B9;
}

input[type="text"],
input[type="email"],
input[type="tel"],
select{
    width: 65%;
}

textarea{
    width: 65%;
    height: 12rem;
    border: solid 1px #B9B9B9;
}

input[type="submit"]{
    border: none;
    cursor: pointer;
    line-height: 1;
}

form .required {
    margin-bottom: 30px;
    font-size: 20px;
}

form .button {
    width: 100%;
    background-color: #ffff;
    padding: 10px 30px;
    border-radius: 50px;
    border: solid 4px #85AC3C;
    font-weight: 700;
    font-size: 20px;
}

.select_wrapper {
    position: relative;
}

.select_wrapper::after {
    content: "";
    position: absolute;
    top: 58px;
    right: 16px;
    width: 12px;
    height: 12px;
    border-right: 2px solid #333;
    border-bottom: 2px solid #333;
    transform: rotate(45deg);
}

select {
    -webkit-appearance: none;
    appearance: none;
}

.underbutton {
    width: 350px;
    margin: 50px 0 30px 0;
    color: #ffff;
}

.checkbox {
    display: flex;
    align-items: baseline;
}

.checkbox label {
    margin-left: 10px;
}







/*モバイル版
--------------------------------------------------------------------------モバイル版*/
@media (max-width: 600px) {


    .inner {
        width: 90%;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    p {
        line-height: 1.5em;
    }

    .pc {
        display: none;
    }

    .sp {
        display: block;
    }


    /* top_text------------------------------- */

    .top_text p{
        font-size: 16px;
        text-align: center;
    }
    


    /* ヘッダー------------------------------- */

    .pc_header {
        display: none;
    }
   

    .top_ga {
        background-size: cover;
        background-position: -330px 0px ;
    }

    .top_ga .inner {
        flex-direction: column-reverse;
        gap: 30px;
    }

    .top_ga .inner p {
        font-size: 16px;
        text-align: center;
    }

    .top_ga .l {
        width: 80%;
    }

    .top_ga .r {
        width: 80%;
    }

    .top_ga .text_box {
        width: 90%;
    }

    .top_ga .no1 {
        font-size: 35px;
        line-height: normal;
    }
    .top_ga .no2 {
        font-size: 16px;
    }

    .pc_menu {
        display: none;
    }

    .header {
        height: 90px;
    }


    .top_sp{
        display: block;
        background-size: cover;
        padding-top: 10px;
        height: 70px;
        position: relative;

    }

    .top_sp .topga {
        position: absolute;
        top: 60px;
        left: 0px;
        width: 100%;
        height: auto;
        z-index: -1;
    }

    .top_sp h1 {
        margin-top: 520px;
        margin-left: 5%;
        font-size: 32px;
        line-height: 1.5em;
    }

    .top_sp .contactbutton_sp {
        background-color: #85AC3C;
        border-radius: 50px;
        padding: 5px 10px;
        color: #ffff;
        margin-top: 8px;
        margin-right: -50px;
    }

    .header {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        margin: 0 10px 0 10px;
    }

    .logo{
        width: 50px;
        height: auto;
    }

    .header .menu {
        display: flex;
        justify-content: flex-end;
        align-items: center;
        gap: 20px;
    }

    .header .menu a {
        border-bottom: 1px solid #1F7344;
        display: inline-block;
    }





    /* ハンバーガーボタンのデザイン */
    .drawer__button {
        position: relative;
        width: 50px;
        height: 50px;
        border: none;
        cursor: pointer;
        z-index: 999; /* メニューを開いている時もクリックできるよう設定 */
    }
    /* ハンバーガーボタン内の線 */
    .drawer__button > span {
        display: block;
        position: absolute;
        top: 50%;
        left: 50%;
        width: 2rem;
        height: 3px;
        background-color: #393636;
        transform: translateX(-50%);
    }
    .drawer__button > span:first-child {
        transform: translate(-50%, calc(-50% - 0.5rem));
        transition: transform 0.3s ease;
    }
    .drawer__button > span:nth-child(2) {
        transform: translate(-50%, -50%);
        transition: opacity 0.3s ease;
    }
    .drawer__button > span:last-child {
        transform: translate(-50%, calc(-50% + 0.5rem));
        transition: transform 0.3s ease;
    }
    /* 展開時のデザイン */
    .drawer__button.active > span:first-child {
        transform: translate(-50%, -50%) rotate(-45deg);
    }
    .drawer__button.active > span:nth-child(2) {
        opacity: 0;
    }
    .drawer__button.active > span:last-child {
        transform: translate(-50%, -50%) rotate(45deg);
    }
    /* メニューのデザイン */
    .drawer__nav {
        position: fixed; /* 追従ヘッダーなどでも表示できるよう設定しておく */
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        background-color: rgba(0, 0, 0, 0.5);
        transition: opacity 0.3s ease;
        opacity: 0;
        visibility: hidden;
    }

    .drawer__nav.active {
        opacity: 1;
        visibility: visible;
        z-index: 10;
    }

    .drawer__nav__inner {
        position: relative;
        width: 100%;
        height: 100%;
        background-color: white;
        padding: 3rem 0rem;
        margin: 0 0 0 auto;
        overflow: scroll;
        transform: translateX(100%);
        transition: transform 0.3s ease;
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    .drawer__nav.active .drawer__nav__inner {
        transform: translateX(0);
    }

    .drawer__nav__inner img {
        margin-bottom: 20px;
    }

    .drawer__nav__menu {
        list-style: none;
        padding-left: 0;
        width: 100%;
        margin-bottom: 20px;
    }

    .drawer__nav__link {
        display: block;
        color: black;
        text-decoration: none;
        padding: 1rem 1rem;
        border-bottom: solid 1px lightgray;
        text-align: center;
    }

    /* ハンバーガーメニュー展開時、背景を固定 */
    body.active {
        height: 100%;
        overflow: hidden;
    }




    .drawer__nav__inner .tel_a {
        position: relative;
        display: flex;
        flex-direction: column;
        align-items: center;
        width: 90%;
        background-color: #222222;
        padding: 15px 0;
        border-radius: 100px;
        color: #ffff;
    }

    .drawer__nav__inner .tel_a .no2 {
        font-size: 20px;
    }

    .drawer__nav__inner .tel_box {
        display: flex;
        align-items: center;
        padding-top: 5px;
        flex-direction: column;
        position: relative;
    }

    .drawer__nav__inner .tel_box .tel {
        font-size: 35px;
        padding: 0 10px 0 10px;
        line-height: 1em;
        margin-left: 25px;
    }

    .drawer__nav__inner .tel_box .tel_icon {
        position: absolute;
        top: 10px;
        left: 0px;
        width: 25px;
    }

    .drawer__nav__inner .yajirusi {
        position: absolute;
        top: 10px;
        left: 295px;
        width: 20px;
        height: auto;
    }

    .drawer__nav__inner .page-fotter {
        width: 100%;
        position: fixed;
        bottom: 0;
    }





    



    /* area2------------------------------- */

    .area2 .inner {
        gap: 60px;
    }
    .area2 .l {
        width: 100%;
    }

    .area2 .r {
        width: 100%;
    }

    .area2 img{
        width: 250px;
        height: auto;
    }

    /* area3------------------------------- */


    .area3 .button_box {
        display: flex;
        gap: 20px;
        flex-direction: column;
        width: 300px;
    }

    .area3 .no1 {
        font-size: 15px;
    }

    .area3 a .no2 {
        font-size: 20px;
        text-align: center;
    }


    /* area4------------------------------- */


    .ribbon {
        background-image: url(../images/20241004_1657.svg);
        background-size: contain;
        width: 390px;
        padding: 5px;
        display: flex;
        flex-direction: column;
        align-items: center;
        margin-top: -56px;
        margin-bottom: 20px;
    }

    .ribbon p {
        font-size: 20px;
    }

    .area4 .inner {
        padding: 60px 0 0px 0;
    }

    .ribbon_box .text_box {
        font-size: 20px;
    }

    .ribbon_box {
        padding: 30px;
    }

    .area4 .box1 .midasi {
        width: 100%;
    }

    .area4 .box2 .midasi {
        width: 100%;
    }

    .area4 .box1 .midasi p {
        font-size: 25px;
        text-align: center;
    }

    .area4 .box2 .midasi p {
        font-size: 25px;
        text-align: center;
    }


    /* area5------------------------------- */

    .area5 .text_box p {
        font-size: 20px;
    }

    .area5 img {
        height: 390px;
        width: auto;
        margin: 0 auto;
    }


    /* area6------------------------------- */

    .area6 .title_box p {
        font-size: 30px;
        text-align: center;
    }

    .area6 .list p {
        font-size: 18px;
    }

    .area6 .list img {
        width: 35px;
    }

    .area6 .box {
        width: 100%;
        display: flex;
        align-items: center;
        flex-direction: column;
        gap: 60px;
    }

    .area6 .r img {
        width: 250px;
    }

    .area6 .box2 {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .area6 .box2 .text_box p {
        font-size: 35px;
        font-weight: 700;
        color: #7E7B7B;
        border-bottom: solid 9px #EF492A;
        width: fit-content;
        text-align: center;
    }


    /* area7------------------------------- */

    .area7 .title_box p {
        color: #ffff;
        font-weight: 700;
        font-size: 30px;
        text-align: center;
    }

    .area7 .midasi_box p {
        color: #ffff;
        font-weight: 700;
        font-size: 30px;
    }

    .area7 .box {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-bottom: 30px;
        flex-direction: column;
    }

    .area7 .box .maru {
        justify-content: center;
        position: relative;
    }

    .area7 .box img {
        margin: 40px 0;
        width: 100px;
        height: auto;
        transform: rotate(90deg);
    }

    .area7 .box .maru .no1 {
        display: block;
        transform: rotate(0deg);
        position: absolute;
        top: 60px;
        left: -50px;
    }

    .area7 .box .maru .no2 {
        display: block;
        transform: rotate(0deg);
        position: absolute;
        top: 140px;
        left: 170px;
        width: 150px;
    }

    .area7 .box .maru .no3 {
        display: block;
        transform: rotate(0deg);
        position: absolute;
        top: 140px;
        left: -30px;
        width: 86px;
    }

    .area7 .box2 {
        display: none;
    }

    


    /* area8------------------------------- */


    .area8 .title_box .midasi {
        font-size: 30px;
        margin-bottom: 20px;
    }

    .area8 .title_box .text {
        color: #ffff;
        font-weight: 700;
        font-size: 15px;
        text-align: center;
    }

    .area8 .box .l {
        height: 120px;
        padding: 0 15px;
    }

    .area8 .box .r {
        height: 120px;
        padding: 0 30px;
        background-color: #ffff;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    .area8 .sannkaku {
        height: 40px;
        margin-bottom: 30px;
    }

    .area8 .box .l p {
        font-size: 15px;
        color: #ffff;
        font-weight: 700;
    }

    .area8 .box2 .list {
        width: 100%;
        display: flex;
        align-items: center;
        background-color: #ffff;
        border-radius: 30px;
        padding: 45px;
        flex-direction: column;
    }

    .area8 .box2 .list .img_box {
        width: 270px;
    }

    .area8 .box2 .list .setmenu {
        width: 100%;
    }

    .area8 .box2 {
        width: 100%;
    }

    .area8 .box2 .list .setmenu img {
        width: 320px;
        margin-bottom: 20px;
        margin-top: 30px;
    }

    .area8 .box2 .list .setmenu p {
        font-size: 20px;
        font-weight: 700;
    }

    .area8 .box2 .list .setmenu .menu_name {
        font-size: 25px;
    }

    .area8 .box2 .list .setmenu .sub_text {
        font-size: 15px;
    }

    .area8 .box2 {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 40px;
        padding-bottom: 100px;
    }

    .area8 .obi {
        position: absolute;
        bottom: -80px;
        left: 0px;
        width: 100%;
        min-width: 435px;
    }


    /* area9------------------------------- */



    .area9 .title_box .midasi {
        font-size: 30px;
        margin-bottom: 20px;
    }

    .area9 .title_box .text {
        font-size: 15px;
    }

    .area9 .inner img {
        width: 90%;
    }


 
    /* area10------------------------------- */

    .area10 .title_box .midasi {
        font-size: 30px;
    }

    .area10 .inner {
        margin: 0 auto;
        padding: 60px 0;
        display: flex;
        flex-direction: column;
        gap: 20px;
        width: 90%;
        align-items: flex-start;
    }

    .area10 .q_box .q_text {
        font-size: 20px;
    }

    .area10 .a_box p {
        font-size: 15px;
    }

    .area10 .q_box .q {
        font-size: 30px;
        color: #E6202D;
        font-weight: 700;
        margin-right: 10px;
    }

    .area10 .list .q_box {
        display: flex;
        margin: 20px;
        align-items: baseline;
    }



    /* area12------------------------------- */

    .area12 .title_box p {
        font-size: 25px;
    }

    .area12 .list {
        flex-direction: column;
        width: 90%;
    }

    .area12 .inner {
        align-items: center;
    }

    .area12 .list .komidasi {
        font-size: 25px;
    }

    .area12 .list .l {
        margin-left: 0px;
    }

    .area12 .list img {
        height: auto;
        width: 100%;
        margin-bottom: 20px;
    }


    /* area13------------------------------- */

    .area13 .title_box p {
        font-size: 25px;
    }

    .area13 img {
        width: 350px;
    }

    /* area14------------------------------- */

    .area14 .title_box p {
        font-size: 25px;
    }

    .area14 .list {
        flex-direction: column;
        width: 90%;
    }

    .area14 .inner {
        align-items: center;
    }

    .area14 .list .komidasi {
        font-size: 25px;
    }

    .area14 .list .l {
        margin-left: 0px;
    }

    .area14 .list img {
        height: auto;
        width: 100%;
        margin-bottom: 20px;
    }

    /* area15------------------------------- */

    .area15 .back {
        padding: 80px 0 60px 0;
    }

    .area15 .title_box p {
        font-size: 25px;
    }

    .area15 .list {
        flex-direction: column;
        width: 90%;
    }

    .area15 .inner {
        align-items: center;
        width: 100%;
        gap: 80px;
    }

    .area15 .list .komidasi {
        font-size: 20px;
    }

    .area15 .list .l {
        margin-left: 0px;
    }

    .area15 .list .main {
        height: auto;
        width: 100%;
        margin-bottom: 20px;
    }

    .area15 .list .sub {
        top: -55px;
        right: 0;
        left: 0;
        margin: 0 auto;
    }

 
    /* area3_1------------------------------- */

    .area3_1 a {
        display: flex;
        flex-direction: column;
        align-items: center;
        width: 90%;
        background-color: rgb(239, 73, 43);
        margin: 20px 0;
        padding: 15px 0;
        border-radius: 100px;
        color: #ffff;
        position: relative;
    }

    .area3_1 .yajirusi {
        position: absolute;
        top: 50px;
        left: 345px;
        width: 20px;
        height: auto;
    }

    .area3_1 .no1 {
        font-size: 15px;
    }

    .area3_1 a .no2 {
        font-size: 20px;
        text-align: center;
    }

    .area3_1 .tel_a {
        position: relative;
        display: flex;
        flex-direction: column;
        align-items: center;
        width: 90%;
        background-color: rgb(239, 73, 43);
        padding: 15px 0;
        border-radius: 100px;
        color: #ffff;
    }

    .area3_1 .tel_a .no2 {
        font-size: 20px;
    }

    .area3_1 .tel_box {
        display: flex;
        align-items: center;
        padding-top: 5px;
        flex-direction: column;
        position: relative;
    }

    .area3_1 .tel_box .tel {
        font-size: 35px;
        padding: 0 10px 0 10px;
        line-height: 1em;
        margin-left: 25px;
    }

    .area3_1 .tel_box .tel_icon {
        position: absolute;
        top: 10px;
        left: 0px;
        width: 25px;
    }

    .area3_1 {
        gap: 0px;
        padding: 60px 0;
    }



    /* footer------------------------------- */


    .page-fotter {
        display: flex;
        justify-content: center;
        align-items: center;
        height: 100px;
        padding-bottom: 0px;
        flex-direction: column;
    }

    .page-fotter .r a {
        display: flex;
        align-items: center;
        gap: 10px;
        font-size: 15px;
    }


    /* contact------------------------------- */

    .contact {
        padding: 30px 0;
    }

    .contact .inner {
        width: 90%;
        padding: 60px 0;
    }

    form {
        width: 90%;
    }

    form div {
        flex-direction: column;
        margin-bottom: 10px;
    }

    .contact label {
        margin-bottom: 10px;
    }

    input[type="text"], input[type="email"], input[type="tel"], select {
        width: 100%;
    }

    textarea {
        width: 100%;
    }

    input[type="image"]{
        width: 100%;
        margin-top: 20px;
    }


}
