@charset "UTF-8";

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
  }


  html {
    font-family: "Zen Kaku Gothic New", serif;
    font-weight: 400;
    font-style: normal;
    font-size: 62.5%;
    color: #20486E;
    width: 100%;
    background-color: #f7faf0;
  }

  a {
    text-decoration: none;
    color: #20486E;
    transition: all 0.2s ease; 
  }

h1 img{
  max-width: 135px;
  height: auto;
}

h1 a {
  display: block;
}

  h2 {
    font-size: 2.0rem;
   font-weight: 500;
   line-height: 2;
   margin: 16px auto;
   text-align: center;
   width: 100%;
  }
   
  h3 {
    font-size:2.4rem;
    font-weight: 500;
    line-height: 4.8rem;
    padding: 16px;
  }

  p,li{
    font-size: 1.6rem;
    line-height: 3.2rem;
    padding: 0 16px;
  }

li {
  text-align: center;
}

  section {
    margin: 120px auto;
    padding: 64px 16px;
  }

img {
  width: 100%;
  height: auto;
}

span {
  display: inline-block
}

a.link_botan {
  background-color: #F8B500;
  color: #fff;
  display: block;
  max-width: 200px;
  width: 100%;
  text-align: center;
  font-size: 1.6rem;
  line-height: 3.2rem;
  border-radius: 30px;
  padding: 10px 0;
  margin:16px auto;
} 

a.link_botan:hover {
  background-color: #20486E;
}

div.logo {
  max-width: 375px;
  width: 100%;
  margin: 0 auto;
}

div.flex {
  display: flex;
  justify-content: space-around;
  width: 100%;
}

/*================================================= header */


header .pc_header {
  display: flex;
  width: 100%;
  max-width: 1000px;
  justify-content: center;
 position: fixed;
 top: 16px; 
 left: 50%;
 transform: translateX(-50%);
 z-index: 9999;
}

header h1 {
  max-width: 220px;
  width: 100%;
  background-color: #fff;
  text-align: center;
  padding: 16px 32px 32px 32px  ;
  border-radius: 90px 0 90px 90px;
  margin-right: -5px;
}

.rp_header  {
  display: none;
}

div.rp_header nav li {
  padding: 0;
}

div.rp_header nav li p {
  font-size: 1.6rem;
  background-color: #ABCD03;
  color: #fff;
  text-align: start;
  line-height: 5.0rem;
  position: relative;
  padding-left: 16px;
  border-bottom: 2px dotted #fff;
}

div.rp_header nav li nav.inside_ul {
  display: none;
}

nav.inside_ul ul li {
  text-align: start;
  background-color: #ABCD03b0;
  padding: 0 16px;
  border-bottom: 2px dotted #fff;
} 

nav.inside_ul ul li a {
  display: block;
  padding-left: 66px;
  color: #fff;

}
/* nav.inside_ul ul li a::before{
    content: '';
    display: block;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background-color: #fff;
    margin-right: 5px;
} */

.nav-open::before{/* 閉じている時 */
	content: url(../images/down.svg);
	position: absolute;
	right: 20px;
  width: 20px;
  height: 20px;
  top: 5px;
}
.nav-open.active::before{/* 開いている時 */
	content: url(../images/up.svg);
}


.p-header {
  width: 100%;
  height: 60px;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 999;
  background: #f7faf0;
}

.p-header__inner {
  padding: 0 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: inherit;
  position: relative;
}

.p-header__title {
  z-index: 997;
}

.p-header__title a {
  text-decoration: none;
  color: #FFFFFF;
}

.p-header__hamburger {
  width: 24px;
}

.hamburger {
  background-color: #20486E;
  border-color: transparent;
  z-index: 9999;
  cursor: pointer;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
}

.hamburger span {
  width: 24px;
  height: 1px;
  background-color: #FFFFFF;
  position: relative;
  transition: ease .4s;
  display: block;
}

.hamburger span:nth-child(1) {
  top: 0;
}

.hamburger span:nth-child(2) {
  margin: 8px 0;
}


.hamburger span:nth-child(3) {
  top: 0;
}

.p-header__nav {
  position: absolute;
  right: 0;
  top: 0;
  width: 75%;
  height: 100vh;
  transition: ease .4s;
  z-index: 999;
}

.p-header__nav-items {
  padding-top: 60px;
}

.p-header__nav-item {
  margin-right: auto;
  margin-left: auto;
  text-align: center;
}

/* .p-header__nav-item a {
  color: #FFFFFF;
  display: inline-block;
  text-align: center;
  margin-bottom: 24px;
} */

.p-header__nav-item:last-child a {
  margin-bottom: 0;
}

.hamburger.active span:nth-child(1) {
  top: 5px;
  transform: rotate(45deg);
}


.hamburger.active span:nth-child(2) {
  opacity: 0;
}


.hamburger.active span:nth-child(3) {
  top: -13px;
  transform: rotate(-45deg);
}

.p-header__nav-box-mask.active {
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 998;
  background: rgba(255,255,255,0.55);
  transition: ease .4s;
  backdrop-filter: blur(1px);
}

.p-header__nav {
  transform: translateX(100%);
}

.p-header__nav.active {
 transform: translateX(0);
}



.pc_header li img {
  display: block;
  margin: 0 auto;
  background-color: #fff;
  width: 50px;
}

.pc_header nav {
  max-width: 900px;
  width: 100%;
}

.pc_header ul {
  display: flex;
  width: 100%;
  justify-content: space-around;
  background-color: #fff;
  border-radius: 0 60px 60px 0;
}

.pc_header ul li {
  width: 20%;
  text-align: center;
  font-weight: 500;
  padding-bottom: 9px;
  line-height: 1;
}

div.contact {
  width: 120px;
  position: fixed;
 bottom:20px;
right: 20px;
 z-index: 9999;
 transition-duration: 1s;
}

div.contact:hover {
  width: 140px;
}

#top_visual {
  position: relative;
}

#top_visual p.top_info {
  position: absolute;
  bottom: 80px;
  left: 130px;
  z-index: 9997;
  background-color: #fff;
  border-radius: 45px;
  max-width: 450px;
  width: 100%;
  line-height: 2.4rem;
  padding: 8px 16px 8px 32px;
}

#top_visual div.top_catch {
  position: absolute;
  max-width: 1000px;
  width: 100%;
  top: 130px;
  left: 50%;
 transform: translateX(-50%)
}

#top_visual div.top_catch p {
  margin-top: 32px;
  margin-left: auto;
  width: fit-content;
  background-color: #fff;
  font-size: 2.4rem;
  line-height: 4.8rem;
  width: 300px;
}

div#top_visual_rp {
  display:none ;
}
/*================================================= sec1 */

.bg_bottom {
  position: absolute;
  z-index: 9996;
  bottom: 0;
}

div.wrapper01 {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  margin-top: 64px;
  background-image: url(../images/deco_illust1fff.png),url(../images/deco_illust1fff.png);
background-repeat: no-repeat,no-repeat;
background-size: 35%,30%;
background-position: bottom right,top left;
}

.sec1_left,.sec1_right {
  width: 15%;
  max-width: 277px;
}

#sec1 {
    margin-top: 32px;
}

#sec1 h2 {
  font-weight: 500;
}
#sec1_center {
  width: 50%;
}

#sec1 .sec1_flex {
  display: flex;
  justify-content: center;
  align-items: center;
}

#sec1 p {
  text-align: center;
}
/*================================================= sec2 */
#sec2 {
  max-width: 600px;
  background-color: #fff;
  border-radius: 10px;
}
#sec2 h2 {
  line-height: 1;
  margin-top: 0;
}
#sec2 ul li a {
  display: block;
  display: flex;
  width: 100%;
  
}
 
#sec2 ul li {
  width: 100%;
  display: flex;
  justify-content: space-between;
  border-bottom: 1px dotted #666;
  padding: 8px;
}

#sec2 .info_time {
  
  width: 20%;
  padding: 0;
}

#sec2 .info_time time {
  display: block;
  width: 100%;
  text-align: justify;
}

#sec2 .info_text {
  text-align: start;
  width: 75%;
  padding: 0;
}

/*================================================= sec3 */
.sec3_left {
  max-width: 800px;
  width: 55%;
}

#sec3 {
  max-width: 1400px;
  width: 100%;
}

#sec3 h2 {
  margin-top: -16px;
}

.sec_right {
  width: 45%;
  max-width:640px;
  text-align: center;
} 


#sec3 div.flex {
  justify-content: space-between;
  align-items: center;
}

#sec3 ul {
  display: flex;
  align-items: center;
  justify-content: space-around;
  flex-wrap: wrap;
  margin: 96px auto;
  margin-bottom: 0;
  width: 100%;
}

#sec3 ul li {
  height: 560px;
  max-width: 350px;
  width: 30%;
  padding: 0;
}

#sec3 ul li p {
  padding: 0;
}
/*================================================= sec4 */

#sec4 #sec4_main {
  width:100%;
  max-width: 800px;
  margin: 0 auto;
}

#sec4_main p {
  width: 65%;
  padding: 56px 0 56px 72px;
  background-image: 
  url(../images/mokumoku.png);
  background-size: contain;
  background-repeat: no-repeat;
}

#sec4 div.qrcord {
  width: 25%;
  margin: 0 auto;
}

#sec4 #sec4_main .qrcord img {
  margin-bottom: 16px;
}

#sec4 {
  width: 100%;
  max-width: 1100px;
}

#sec4 h2 {
  margin-top: -16px;
}

#sec4 .flex {
  align-items: center;
}

.sec4_slider {
margin-top: 32px;

}

.sec4_slider img {
  width: 90%;
}

/*================================================= sec5 */
#sec5 h2 {
  margin-top: -16px;
}

#sec5 p {
  text-align: center;
}

#sec5_left {
  max-width: 450px;
  width: 40%;
}

#sec5_right {
  display: flex;
  width: 60%;
  flex-direction: column;
  justify-content: space-around;
}

#sec5 img {
  display: block;
}

#sec5 {
  width: 100%;
  background-color: #ABCD03;
}

#sec5 div.flex {
  max-width: 800px;
  margin: 0 auto;
  padding: 32px 0;
  align-items: center;
}

/*================================================= sec6 */
#sec6 {

  width: 100%;
  max-width: 800px;
  margin-bottom: 0;
  padding-bottom: 32px;
}

#sec6 h2 {
  margin-top: -16px;
}

#sec6_left {
  width: 50%;
}

#sec6_right{
  width: 50%;
}

.tel p.tel_number {
  font-size: 3.6rem;
  line-height: 1.2;
  font-weight :600;
}

iframe {
  width: 100%;
}
/*================================================= fotter */
footer::before{
  content: url(../images/bg_footer_top.svg);
  display: block;
  margin: 0;
  padding: 0;
  font-size: 0;
}

footer nav ul#footer_ul{
  display: flex;
  justify-content: center;
  gap: 16px;
  width: 100%;
  max-width: 1280px;
  padding: 32px 0;
  margin: 0 auto; 
}

footer {
  width: 100%;
}

footer nav {
  
  background-color: #ABCD03;
}

.footer_ul_li  {
  width: 21%;
  padding: 0;
}

.footer_ul_li p a {
  color: #fff;
}
.footer_ul_li p {
  padding: 0;
  text-align: start;
  font-size: 2.0rem;
}

.footer_ul_li p img {
  width: 40px;
}

.footer_ul_li li a {
  color: #fff;
  text-align: start;
  display: block;
  padding-left: 24px;
}

.footer_ul_li li {
  font-size: 1.6rem;
  text-align: start;
}

div.footer_bottom {
  background-color: #20486E;
 color: #fff;
}

.footer_bottom_ul {
  display: flex;
  justify-content: center;
  width: 50%;
  margin: 0 auto;
 
}

.footer_bottom_ul li  {
  font-size: 1.2rem;
  line-height: 2.4rem;
  color: #fff;
}

.footer_bottom_ul li a {
  display: block;
  padding: 8px 16px;
  color: #fff;
}

div.rp_footer {
  display: none;
}

div.pc_footer {
  width: 90px;
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 9998;
}

div.pc_footer img {
  width: 25px;
  display: block;
  margin: 0 auto;
}

div.pc_footer a {
  font-size: 1.6rem;
  display: block;
  color: #fff;
  line-height: 2;
  text-align: center;
  font-size: 1.4rem;
}

div.button_contact{
  background-color: #ABCD03;
}

div.button_acsess{
  background-color: #F8B500;
}

.pc_footer div.button_contact,
.pc_footer div.button_acsess {
  padding: 8px 0 8px 16px;
  border-radius: 60px 0 0 60px;
  border: 2px solid #fff;
  transition: all 0.2s ease;
}

.pc_footer div.button_contact:hover,
.pc_footer div.button_acsess:hover {
  background-color: #20486E;
}

small {
  display: block;
  text-align: center;
  padding: 6px;
}
/*=================================================about.html
/* /*=================================================#about_sec1 */

.ab_sec1_wrapper {
  background-image: url(../images/ab_sec1_wrapper.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

#about_sec1 {
  max-width: 800px;
  margin: 0 auto;
  height: 640px;
  display: flex;
  flex-wrap: wrap;
  align-content: flex-end;
  /* background-color: rgb(255, 255 , 255, 0.8); */
  text-align: center;
}

#about_sec1 h2,#about_sec1 p{
  background-color: rgb(255, 255 , 255, 0.8);
  width: 100%;
  margin: 0;
  padding: 16px 0;
  backdrop-filter: blur(5px);
}

#about_sec1 p {
  padding-top: 0;
}


#about_sec1 .flex {
  justify-content: center;
}
/* /*=================================================##about_sec2 */
#about_sec2 {
max-width: 700px;
width: 100%;
background-color: #fff;
}

#about_sec2 h2 {
  text-align: center;
  margin-bottom: 0;
}

#about_sec2 ul {
  max-width: 650px;
  width: 100%;
}

#about_sec2 li {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 10%;
  border-bottom:2px dotted #20486E;
width: 100%;
}

#about_sec2 li h3 {
  width: 30%;
  font-size: 1.6rem;
  line-height: 3.2rem;
  text-align: start;
}

#about_sec2 li p {
  width: 70%;
  text-align: start;
}

#map {
  display: inline;
  background-color: #20486E;
  border-radius: 30px;
  color: #fff;
  padding: 0 16px;
  line-height: 32px;
  margin-left: 16px;
}

a#map:hover {
  background-color: #F8B500;
}

/* /*=================================================##about_sec3 */
div.about_sec3_wrapper {
  width: 100%;
  background-color: #ABCD03;
 background-image: url(../images/bg_f7faf0_bottom.png);
    background-repeat: no-repeat;
    background-position:center bottom;
    background-size: contain;
    padding-bottom: 132px ;
}

#about_sec3 {
  max-width: 1296px;
  margin: 0 auto;
  padding-top: 32px;
}

div.bg_top {
  background-image: url(../images/bg_abcd03_top.png
  );
  background-repeat: no-repeat;
  background-size: cover;
  height: 100px;
}

#about_sec3 h2 {
  text-align: center;
}

#about_sec3 ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  width: 100%;
  gap: 32px 16px;
}

#about_sec3 li {
  width: 30%;
}

#about_sec3 h3 {
  width: 100%;
}

.about_sec3_img img {
  width: 100%;
}

/* /*=================================================##about_sec4 */

#about_sec4 p:first-child {
  background-color: #20486E;
  color: #fff;
  width: 240px;
  border-radius: 30px;
  margin: 0 auto;
  text-align: center;
}

#about_sec4 h2 {
  text-align: center;
  line-height: 1.5;
}

#about_sec4 {
  max-width: 800px;
  width: 100%;
  border-radius: 10px;
  box-sizing: border-box;
  background-color: #FFEF8F;
  padding: 64px 0;
}

#about_sec4 p,#about_sec4 h3 {
  text-align: start;
  padding: 0;
}

h3.attention {
  padding-bottom: 0;
}

#about_sec4 ul li {
  width: 70%;
  border-bottom:2px dotted #20486E;
  padding: 16px;
  margin: 0 auto;
}


#about_sec4 ul li:last-child {
  border-bottom: 0;
  margin-bottom: 0;
}

#about_sec4 ul li:first-child h3.attention {
  padding-top: 0;
}

#about_sec4 h3 a:hover {
  border-bottom: 2px dotted #20486E;
  color: #F8B500;
}

/* /*=================================================##about_link */

#about_link {
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
  max-width: 800px;
  width: 100%;
}

.about_link {
  background-color: #fff;
  border-radius: 5px;
  margin: 64px 32px;
  width: 40%;
}

#about_link p {
  font-size: 2.4rem;
  margin: 32px 0;
  text-align: center;
}
 
/* #about_link a {
  display: block;
  width: 320px;
  text-align: center;
  padding: 32px 0;
} */


/* /*=================================================##approach_sec */
#approach_sec1 h2,#approach_sec1 p,#approach_sec1 h3 {
  text-align: center;
}

#approach_sec1 {
  width: 100%;
  height: 640px;
  margin: 0;
  background-image: url(../images/approach_top.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

div.approach_sec1_in {
  background-color: rgb(255, 255 , 255, 0.8);
  width: 80%;
  max-width: 800px; 
  margin: 112px auto;
  padding: 32px 0;
  border-radius: 5px;
  backdrop-filter: blur(5px);
}

div.approach_sec1_in h2 {
  padding: 0;
  margin: 0;
}

.approach_sec .sec_left_img {
  width:90%;
  border-radius: 30px;
}


.approach_sec .sec_left p {
  font-size: 1.8rem;
  line-height: 4.8rem;
  text-align: center;
  font-weight: 500;
  margin-top: 32px;
}

.approach_sec .sec_right p {
  text-align: justify;
  padding: 0 32px;
  line-height: 2.4rem;
}


.approach_sec .sec_right,.approach_sec .sec_left {
  width: 50%;
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  align-items: center;
  padding: 16px 0;
}

.approach_sec_text {
  display: flex;
  align-self: start;
  width: 100%;
  max-width: 1000px;
}

.approach_sec {
  padding: 32px 0;
  max-width: 800px;
  margin: 0 auto;
}

.approach_sec_title p.point {
  color: #fff;
  width: 160px;
  font-weight: 500;
  font-size: 3.2rem;
  text-align: center;
  background-color: #ABCD03;
  border-radius: 60px;
  padding: 16px 32px;
  margin: 0 auto; 
  margin-top: 32px;
}

.sec_right_img {
  width: 100%;
  padding: 16px;
}

.sec_right_img div:first-child {
  text-align: start;
}
.sec_right_img div:last-child {
  text-align: end;
}

.sec_right_img div img {
  max-width: 200px;
}
/* /*=================================================##approach_1日の流れ */
#day_sec {
  max-width: 800px;
  width: 100%;
  background-color: #fff;
}

#day_center {
  width: 100%
}

#day_sec h2 {
  text-align: center;
  margin-top: -16px;
}

table {
  font-size: 1.6rem;
  width: 100%;

}

th img {
  width: 50px;

}

table tr {
  border-bottom: 1px dotted #666;
}

table tr th {
  padding: 32px 0;
  text-align: center;
}

table tr td {
  padding: 32px 0;
  text-align: center;
}

table tr td:nth-child(1),table tr td:nth-child(3) {
  width: 40%;
}
table tr td:nth-child(2) {
  width: 20%;
  background-color: #fff;
  color: #fff;
 background-image: url(../images/day_time_bg.gif);
 background-position: center;
  padding: 0;
}

table tr td time {
  background-color: #ABCD03;
  display: block;
  width: 80px;
  line-height: 40px;
  margin: 0 auto;
  border-radius: 30px;
}


/* /*=================================================##approach_めばえの一年 */
#year h2 {
  text-align: center;
  width: 50%;
  margin: 32px auto;
  margin-top: -16px;
}

#year {
  max-width: 800px;
  width: 100%;
}

.year_img {
  width: 100%;
}

#year ul li .year_flex {
  display: flex;
  justify-content: space-evenly;
  width: 80%;
  margin: 0 auto;
}

#spring {
  border: 10px solid #E9BFD0;
}

#spring h3 {
  background-color: #E9BFD0;
}
#summer {
  border: 10px solid #f5e167;
}

#summer h3 {
  background-color: #f5e167;
}
#autumn {
  border: 10px solid #d0bc95;
}

#autumn h3 {
  background-color: #d0bc95;
}

#winter {
  border: 10px solid #a3d3e8;
}

#winter h3 {
  background-color: #a3d3e8;
}

#year ul li h3 {
  color: #fff;
  margin: 24px auto;
  width: 50px;
  border-radius: 30px;
  padding: 0;
}
#year ul {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 48px;
  justify-content: center;
}

/* レスポンシブ
width="100%"
display:block;
*/

#year ul li {
  width: 350px;
  border-radius: 10px;
  padding:0 0 32px 0;
  background-color: #fff;
}

#year ul li p {
  text-align: start;
  width: 70%;
  padding: 0;
}

#year ul li p img {
  width: 32px;
}

#year ul li p.month {
  width: 30%;
  text-align: start;
}

#year_last_p {
background-color: #fff;
border: 5px solid #ABCD03;
width: 100%;  
max-width: 350px;
  padding: 32px ;
  margin: 32px auto;
  border-radius: 10px;
  line-height: 3.2rem;
}

#year_last_p img {
  width: 32px;
}

.contact_form {
  font-size: 1.6rem;
  width: 100%;
  max-width: 800px;
  background-color: #fff;
  padding: 32px;
  margin: 0 auto;
  margin-top: 120px;
}

form {
  max-width: 500px;
  margin: 0 auto;
}


input[type="text"],input[type="email"],input[type="tel"] 
{
  width: 100%;
  max-width: 400px;
  margin-top: 8px;
  padding: 8px;
}

textarea {
  width: 100%;
  max-width: 500px;
  height: 200px;
  padding: 8px;
}

input[type="submit"] {
  display: block;
  background-color: #20486E;
  font-size: 1.6rem;
  font-weight: 400;
  color: #fff;
  text-align: center;
  border-radius: 30px;
  padding: 4px 32px;
  box-shadow: 3px 3px 0 0 #666;
  margin: 32px auto;
  border: none;
  transition: 0.3s;
}

input[type="submit"]:hover {
  background-color: #ABCD03;
}


@media screen and (max-width: 768px){

div#top_visual {
display: none;
}

header .pc_header {
  display: none;
}

 header div.rp_header {
  display: block;
  position: fixed;
  z-index: 10003;
  width: 100%;
}

.rp_header h1 {
  display: block;
max-width: 66px;
padding: 0;
margin-left: 0;
background-color: transparent;
}

div.rp_header nav ul {
 display: block; 
 /* background-color: #fff; */
}

div.rp_header nav img{
  width: 50px;
  margin-right: 16px;
}

.rp_header h1 img {
  width: 250px;
  height: auto;
}

div#top_visual_rp {
  display: block;
  margin-top: 60px;
}

#top_visual_rp {
  position: relative;
}

#top_visual_rp p.top_info {
  position: absolute;
  bottom: 30px;
  left: 16px;
  background-color: #fff;
  border-radius: 45px;
  max-width: 450px;
  width: 90%;
  line-height: 2.4rem;
  padding: 8px 16px 8px 32px;
}

#top_visual_rp div.top_catch {
  position: absolute;
  top: 150px;
  right: 8px;
}

#top_visual_rp div.top_catch p {
  margin-top: 32px;
  background-color: #fff;
  font-size: 1.6rem;
  line-height: 3.2rem;
  padding: 0 8px;
}

div.flex {
  display: block;
}

.sec_left,.sec_right {
  width: 100%;
  margin: 16px auto;
}

#sec2 ul li{
  display: block;
}
#sec2 ul li p {
  font-size: 1.6rem;
}
#sec2 p.info_time,#sec2 p.info_text{
  width: 100%;
  font-size: 1.4rem;
}


  #sec3 ul li {
    margin: 0 auto;
    height: 450px;
  }

  #sec3 ul li h3 {
    margin-top: 16px;
    font-size: 2.4rem;
    line-height: 2;
  }

#sec4_main .flex p {
  width: 100%;
  max-width: 495px;
  margin: 32px auto;
  background-image: url(../images/mokumoku2.png);
}

#sec4_main .flex .qrcord {
  width: 100%;
  height: 200px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 32px;
  margin: 32px auto;
}

#sec4_main .flex .qrcord img {
  display: block;
  width: 40%;
  max-width: 200px;
}
#sec5_left {
  margin: 0 auto;
}

#sec5_right {
  margin: 0 auto;
  margin-top: 16px;
}

  #sec6 {
    display: block;
  }

  #sec6_right {
    width: 100%;
  }

  .tel p {
    padding: 0;
  }

  footer nav ul#footer_ul {
    display: none;
  }

footer ul.footer_bottom_ul {
  display: none;
}

#about_sec2 li  {
  padding: 16px;
}
#about_sec3 ul li {
  width: 50%;
}


.ab_sec1_wrapper {
  margin-top: 60px;
  background-image: url(../images/ab_sec1_wrapper_sp.jpg);
  padding: 0;
}

.ab_sec1_wrapper h2 {
  font-size: 2.0rem;
}
.ab_sec1_wrapper p {
  font-size: 1.2rem;
  line-height: 1.8;
}

#approach_sec1 {
  height: auto;
}
  
div.approach_sec1_in {
  margin-top: 64px;
  width: 100%;
}

div.approach_sec1_in h2 {
  font-size: 2.0rem;
}

div.approach_sec1_in h3 {
 line-height: 1.8;
 margin-bottom: 1.6rem;
}

div.approach_sec1_in p {
  font-size: 1.2rem;
  line-height: 1.8;
}

  div.approach_sec1_in {
    width: 90%;
    margin: 0 auto;
    margin-top: 32px;
  }


#sec5_left,#sec5_right {
width: 100%;
max-width: 375px;
}

#sec5 {
  border-radius:0 ;
}

  #sec6_left {
    width: 100%;
    margin-bottom:32px ;
  }

#sec6_left div.acsess {
  display: flex;
  justify-content: space-between;
}

#sec6_left div.adress {
  width: 40%;
}
#sec6_left div.tel {
  width: 55%;
}

h2 {
  font-size: 2.4rem;
  line-height: 3.6rem;
}

h3 {
  font-size: 1.6rem;
  line-height: 3.2rem;
  font-weight: 500;
  padding: 0;
}

p {
  font-size: 1.4rem;
  line-height: 2.8rem;
  padding: 0;
}

section {
  margin: 64px auto;
}

} 


@media screen and (max-width: 450px){ 
div.flex {
  display: block;
}

#sec3 div.sec_left,#sec3 div.sec_right {
  width: 100%;
}

#about_sec1 .sec_right,#about_sec1 .sec_left {
  width: 100%;
}

#about_sec1 {
  margin-top: 64px;
}

#top_info {
  width: 100%;
  max-width: 375px;
} 


#sec1_center {
  width: 70%;
} 

footer {
  margin-bottom: 64px;
}

  #sec3 ul {
    display: block;
  }

  #sec3 ul li {
    width: 100%;
    height: 560px;
    margin: 16px auto;
  }

#sec4_main .flex p {
  padding: 45px 0 43px 30px;
}

  #sec4_main .flex .qrcord {
    gap: 16px;
  }

.tel p.tel_number {
  font-size: 2.8rem
}

div.pc_footer {
  display: none;
}

div.rp_footer {
  display: block;
  display: flex;
  width: 100%;
  position: fixed;
  bottom: 0;
  z-index: 999;
}

div.rp_footer img {
  width: 32px;
  margin-right: 32px;
}

div.rp_footer a {
  font-size: 1.6rem;
  display: block;
  color: #fff;
  line-height: 2;
}

div.button_contact{
  background-color: #ABCD03;
}

div.button_acsess{
  background-color: #F8B500;
}

div.rp_footer div.button_contact,
div.rp_footer div.button_acsess {
  width: 50%;
  padding: 16px;
}

  #about_sec3 ul li {
    width: 100%;
  }


  .approach_sec_text {
    display: block;
  }

  .approach_sec .sec_right,.approach_sec .sec_left {
    width: 100%;
    max-width: 375px;
    margin: 32px auto;
  } 

#day_sec {
  padding: 0;
}

  #year ul {
    display:block;
    max-width: 375px;
    box-sizing: border-box;
    margin: 0 auto;
  }

  #year ul li {
    width: 100%;
    margin-bottom: 32px;
  }
}

