@import url("https://fonts.googleapis.com/css2?family=Jost:ital,wght@0,100..900;1,100..900&family=Noto+Sans+JP:wght@100..900&display=swap");
/*$color1: #0094e3;*/
@media (min-width: 767px) { #sec-location { margin-bottom: 2px; } }
.block_main { margin-bottom: 4rem; }

.block01_img1 { max-width: 800px; margin: 0 auto 4rem; }
.block01_img1 .note { left: 3px; right: auto; }

.block01_02 { align-items: center; margin: 3rem auto; }
.block01_02 .txtArea { width: 45%; }
.block01_02 .picArea { width: 50%; }

.block01_03 { align-items: center; margin: 3rem auto 5rem; }
.block01_03 .txtArea { width: 45%; order: 2; }
.block01_03 .picArea { width: 50%; order: 1; }
.block01_03 .picArea .img { margin-bottom: 10px; }
.block01_03 .picArea .img:nth-of-type(1) { width: 100%; }
.block01_03 .picArea .img:nth-of-type(2), .block01_03 .picArea .img:nth-of-type(3) { width: 49%; }

.block01_04 { margin-bottom: 4rem; }

@media (max-width: 767px) { .block01_02 .txtArea { width: 100%; }
  .block01_02 .picArea { width: 100%; }
  .block01_03 .txtArea { width: 100%; order: 1; }
  .block01_03 .picArea { width: 100%; order: 2; }
  .block01_04.flexBox.box2 > li { width: 100%; margin-bottom: 2rem; } }
#block02 { padding-bottom: 4rem; }

.block02_1 { position: relative; margin-top: 4rem; }
.block02_1 .pic { width: 60%; }
.block02_1 .txtArea { background: rgba(255, 255, 255, 0.8); padding: 2rem; position: absolute; bottom: -2rem; right: 0; width: 52%; }

.block02_2 { position: relative; margin: 4rem auto 4rem; }
.block02_2 .pic { width: 60%; margin-left: 40%; }
.block02_2 .txtArea { background: rgba(255, 255, 255, 0.8); padding: 2rem; position: absolute; bottom: -2rem; left: 0; width: 52%; }

@media (max-width: 767px) { #block02 .flexBox.box2 li { width: 100%; margin-bottom: 1rem; }
  .block02_1 .pic { width: 100%; }
  .block02_1 .txtArea { width: 90%; position: static; margin: 1rem auto 0; padding: 0; }
  .block02_2 .pic { width: 100%; margin-left: auto; }
  .block02_2 .txtArea { width: 90%; position: static; margin: auto; margin: 1rem auto 0; padding: 0; } }
#block03 { padding-bottom: 3rem; background: #f8f5f0; }
#block03 h4 + .read { margin: 3rem auto; }
#block03 .flexBox .pic { margin-bottom: 2rem; }
@media (max-width: 767px) { #block03 .flexBox.box2 li { width: 100%; margin-bottom: 1rem; } }

#block04 { padding-bottom: 3rem; background: #f8f5f0; }
#block04 .flexBox { margin-top: 3rem; }
#block04 .flexBox li { /*&:nth-of-type(1) { width: 68%;
}
&:nth-of-type(2) { width: 31.3%;
}*/ }
#block04 .flexBox .pic { margin-bottom: 2%; }
@media (max-width: 767px) { #block04 .flexBox li:nth-of-type(1) { width: 100%; }
  #block04 .flexBox li:nth-of-type(2) { width: 100%; } }

#block05 { padding-bottom: 3rem; }

.block05_1 { margin-top: 3rem; }
.block05_1 li:nth-of-type(1) { width: 68%; }
.block05_1 li:nth-of-type(2) { width: 31.3%; }
.block05_1 .pic { margin-bottom: 2%; }

.block05_1 + h4 { margin-top: 5rem; }

.block05_2 { margin-top: 3rem; margin-bottom: 1rem; }
.block05_2 li:nth-of-type(2) { width: 68%; }
.block05_2 li:nth-of-type(1) { width: 31.3%; }
.block05_2 .pic { margin-bottom: 2%; }

@media (max-width: 767px) { .block05_1 li:nth-of-type(1) { width: 100%; }
  .block05_1 li:nth-of-type(2) { width: 100%; display: -webkit-box; display: flex; flex-wrap: wrap; -webkit-box-pack: justify; justify-content: space-between; -webkit-box-align: start; align-items: flex-start; }
  .block05_1 li:nth-of-type(2) * { min-height: 0%; }
  .block05_1 li:nth-of-type(2) .pic { width: 49%; }
  .block05_2 li:nth-of-type(2) { width: 100%; }
  .block05_2 li:nth-of-type(1) { width: 100%; display: -webkit-box; display: flex; flex-wrap: wrap; -webkit-box-pack: justify; justify-content: space-between; -webkit-box-align: start; align-items: flex-start; }
  .block05_2 li:nth-of-type(1) * { min-height: 0%; }
  .block05_2 li:nth-of-type(1) .pic { width: 49%; } }
#block06 { padding-top: 5rem; padding-bottom: 6rem; background: #f8f5f0; }
#block06 .map_img { margin: 3rem auto; }
#block06 .flexBox .item { width: 48%; margin-bottom: 4rem; }
#block06 .flexBox .item h5 { color: #ba9a7b; font-size: 1.1rem; margin-bottom: 1rem; /*padding-left: 15px;*/ }
#block06 .flexBox .item h5::before { content: ""; display: inline-block; vertical-align: middle; width: 15px; height: 15px; background: #ba9a7b; margin-right: 10px; }
#block06 .flexBox .item ul { width: 100%; }
#block06 .flexBox .item li { display: -webkit-box; display: flex; flex-wrap: wrap; -webkit-box-pack: justify; justify-content: space-between; -webkit-box-align: stretch; align-items: stretch; border-bottom: 1px solid #ccc; font-size: 0.8rem; padding: 1rem 10rem 1rem 0; position: relative; }
#block06 .flexBox .item li * { min-height: 0%; }
#block06 .flexBox .item li .time { position: absolute; top: 1rem; right: 0; width: 10rem; text-align: right; }
@media (max-width: 767px) { #block06 .flexBox .item { width: 100%; } }
