section {
 position: relative;
 width: 100%;
}
section p.tag.main {
 padding-left: 9%;
}
@media screen and (max-width: 1024px) {
 section p.tag.main {
  padding-left: 5%;
 }
}
section .inner {
 position: relative;
 width: 90%;
 max-width: 1000px;
 margin: 0 auto;
}
section.concept,section.museum,section.usable,section.park {
 margin-bottom: 150px;
}
@media screen and (max-width: 768px) {
 section.concept,section.museum,section.usable,section.park {
  margin-bottom: 68px;
 }
}
section.concept picture:first-child,section.museum picture:first-child,section.usable picture:first-child,section.park picture:first-child {
 display: flex;
 width: 90%;
 max-width: 1000px;
 overflow: hidden;
 margin: 0 auto -18px;
 border-radius: 10px;
}
@media screen and (max-width: 768px) {
 section.concept picture:first-child,section.museum picture:first-child,section.usable picture:first-child,section.park picture:first-child {
  border-radius: 10px 10px 0 0;
 }
}
section.concept .video,section.museum .video,section.usable .video,section.park .video {
 display: block;
 margin-top: 100px;
}
@media screen and (max-width: 1024px) {
 section.concept .video,section.museum .video,section.usable .video,section.park .video {
  margin-top: 50px;
 }
}
section.concept .cloud,section.museum .cloud,section.usable .cloud,section.park .cloud {
 position: relative;
 width: 100%;
}
section.concept .cloud img,section.museum .cloud img,section.usable .cloud img,section.park .cloud img {
 position: absolute;
 top: 10px;
 right: 0;
 width: 100%;
 translate: 0 -50%;
}
section.concept p.tag,section.museum p.tag,section.usable p.tag,section.park p.tag {
 margin-bottom: 25px;
 border-radius: 0 3px 3px 0;
}
section.concept .inner hgroup,section.museum .inner hgroup,section.usable .inner hgroup,section.park .inner hgroup {
 display: flex;
 flex-direction: column;
 align-items: flex-start;
 gap: 10px 0;
}
section.concept .inner hgroup p,section.museum .inner hgroup p,section.usable .inner hgroup p,section.park .inner hgroup p {
 line-height: 1.1666666667;
 color: var(--blue);
 font-family: var(--ff_mincho);
 font-weight: 300;
 font-size: 24px;
 letter-spacing: 0.12em;
}
@media screen and (max-width: 768px) {
 section.concept .inner hgroup p,section.museum .inner hgroup p,section.usable .inner hgroup p,section.park .inner hgroup p {
  font-size: 20px;
 }
}
section.concept .inner h2,section.museum .inner h2,section.usable .inner h2,section.park .inner h2 {
 margin-bottom: 30px;
}
@media screen and (max-width: 1024px) {
 section.concept .inner h2,section.museum .inner h2,section.usable .inner h2,section.park .inner h2 {
  margin-bottom: 25px;
 }
}
@media screen and (max-width: 768px) {
 section.concept .inner h2,section.museum .inner h2,section.usable .inner h2,section.park .inner h2 {
  margin-bottom: 20px;
 }
}
section.concept .inner .lead,section.museum .inner .lead,section.usable .inner .lead,section.park .inner .lead {
 width: 100%;
 max-width: 800px;
 line-height: 1.875;
 letter-spacing: 0.12em;
}
section.concept .inner .lead .btn_bl,section.museum .inner .lead .btn_bl,section.usable .inner .lead .btn_bl,section.park .inner .lead .btn_bl {
 line-height: 1.15;
}
section.concept .btn,section.museum .btn,section.usable .btn,section.park .btn {
 margin-top: 40px;
}
@media screen and (max-width: 768px) {
 section.concept .btn,section.museum .btn,section.usable .btn,section.park .btn {
  margin-top: 28px;
 }
}
section.concept {
 margin-bottom: 180px;
 padding: 70px 0 min(2.666vw, 40px);
 background: url(../img/concept_cloud01.png) no-repeat right top/contain;
}
@media screen and (max-width: 1024px) {
 section.concept {
  margin-bottom: 70px;
  padding: 50px 0 2.5vw;
 }
}
@media screen and (max-width: 600px) {
 section.concept {
  background-size: 600px auto;
 }
}
section.concept .img_box {
 position: absolute;
 bottom: 0;
 left: 0;
 width: 100%;
 padding-top: 77.05%;
 background: url(../img/concept_cloud02.png) no-repeat center bottom/contain;
 pointer-events: none;
}
@media screen and (max-width: 600px) {
 section.concept .img_box {
  padding-top: 465px;
  background-size: 600px auto;
 }
}
section.concept .img_box img {
 display: none;
}
section.concept p.tag {
 position: absolute;
 top: 0;
 left: 0;
}
section.concept .inner h2 {
 line-height: 1.8;
}
@media screen and (max-width: 1024px) {
 section.concept .inner h2 {
  line-height: 1.6;
 }
}
@media screen and (max-width: 768px) {
 section.concept .inner h2 {
  font-size: 25px;
 }
}
section.concept .inner dl.lead dt {
 line-height: 1.8;
 margin-bottom: 20px;
 color: var(--blue);
 font-weight: 400;
 font-size: 24px;
}
@media screen and (max-width: 768px) {
 section.concept .inner dl.lead dt {
  line-height: 1.6;
  margin-bottom: 14px;
  font-size: 18px;
 }
}
section.sustainability {
 margin-bottom: 150px;
 padding: 100px 0;
 background: url(../img/sustainability_cloud.png) no-repeat center/100% auto;
}
@media screen and (max-width: 1024px) {
 section.sustainability {
  margin-bottom: 68px;
  padding: 45px 0;
 }
}
@media screen and (max-width: 768px) {
 section.sustainability {
  background-repeat: repeat-y;
  background-size: contain;
 }
}
section.sustainability .inner {
 display: flex;
 position: relative;
 justify-content: space-between;
 align-items: flex-start;
 padding: 60px min(5%, 50px);
 border-radius: 10px;
 background-color: #ffffff;
}
@media screen and (max-width: 1024px) {
 section.sustainability .inner {
  padding: 30px 5%;
 }
}
@media screen and (max-width: 768px) {
 section.sustainability .inner {
  flex-direction: column;
  gap: 24px 0;
 }
}
section.sustainability .inner p.tag {
 position: absolute;
 top: -10px;
 right: -30px;
 padding-right: 30px;
}
@media screen and (max-width: 768px) {
 section.sustainability .inner p.tag {
  right: -5vw;
  padding-right: 5vw;
  border-radius: 3px 0 0 3px;
 }
}
section.sustainability .inner .txt {
 width: calc(95% - 360px);
 letter-spacing: 0.12em;
}
@media screen and (max-width: 768px) {
 section.sustainability .inner .txt {
  width: 100%;
 }
}
section.sustainability .inner .txt h2 {
 line-height: 1;
 margin-bottom: 30px;
 color: var(--blue);
 font-family: var(--ff_main);
 font-weight: 400;
 font-size: 24px;
}
@media screen and (max-width: 768px) {
 section.sustainability .inner .txt h2 {
  margin-bottom: 18px;
  font-size: 20px;
 }
}
section.sustainability .inner .txt p {
 line-height: 1.875;
}
section.sustainability .inner img {
 max-width: 360px;
 border-radius: 5px;
}
@media screen and (max-width: 768px) {
 section.sustainability .inner img {
  max-width: 100%;
  margin: 0 auto;
 }
}
section.park .lead {
 margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
 section.park .lead {
  margin-bottom: 28px;
 }
}
section.park .cntWrap {
 display: flex;
 flex-direction: column;
 border-top: 1px solid #d9d9d9;
}
section.park .cntWrap .cntBox {
 display: flex;
 justify-content: space-between;
 padding: 30px 0;
 border-bottom: 1px solid #d9d9d9;
}
@media screen and (max-width: 768px) {
 section.park .cntWrap .cntBox {
  flex-direction: column-reverse;
  align-items: center;
  gap: 24px 0;
 }
}
section.park .cntWrap .cntBox .txt {
 display: flex;
 width: calc(95% - 360px);
 max-width: 580px;
 flex-direction: column;
 justify-content: center;
 gap: 25px 0;
}
@media screen and (max-width: 768px) {
 section.park .cntWrap .cntBox .txt {
  width: 100%;
  max-width: 100%;
  gap: 16px 0;
 }
}
section.park .cntWrap .cntBox .txt h3 {
 line-height: 1;
 color: var(--blue);
 font-size: 24px;
}
@media screen and (max-width: 768px) {
 section.park .cntWrap .cntBox .txt h3 {
  font-size: 18px;
 }
}
section.park .cntWrap .cntBox .txt h3::before {
 content: "";
 display: inline-block;
 width: 10px;
 vertical-align: middle;
 clip-path: polygon(50% 0%, 85% 15%, 100% 50%, 85% 85%, 50% 100%, 15% 85%, 0% 50%, 15% 15%);
 margin-right: 10px;
 border-radius: 50%;
 background-color: var(--blue);

 aspect-ratio: 1;
}
section.park .cntWrap .cntBox .txt h3 span {
 font-size: 16px;
}
section.park .cntWrap .cntBox .txt p {
 line-height: 1.875;
 letter-spacing: 0.12em;
}
section.park .cntWrap .cntBox .txt .profile {
 padding: 30px 40px;
 border: 1px solid var(--blue);
 border-radius: 6px;
}
@media screen and (max-width: 1024px) {
 section.park .cntWrap .cntBox .txt .profile {
  padding: 20px 4%;
 }
}
section.park .cntWrap .cntBox .txt .profile .name_area {
 display: grid;
 align-items: center;
 grid-template-columns: 100px 1fr;
 gap: 20px;
}
section.park .cntWrap .cntBox .txt .profile .name_area:not(:has(.pic)) {
 grid-template-columns: 1fr;
}
@media screen and (max-width: 600px) {
 section.park .cntWrap .cntBox .txt .profile .name_area {
  grid-template-columns: 80px 1fr;
  gap: 10px;
 }
}
section.park .cntWrap .cntBox .txt .profile .name_area .pic {
 overflow: hidden;
 border-radius: 6px;
}
section.park .cntWrap .cntBox .txt .profile .name_area p.name {
 display: flex;
 line-height: 1.875;
 flex-direction: column;
 align-items: flex-start;
 font-size: 16px;
 letter-spacing: 0.12em;
}
@media screen and (max-width: 1024px) {
 section.park .cntWrap .cntBox .txt .profile .name_area p.name {
  font-size: 14px;
 }
}
section.park .cntWrap .cntBox .txt .profile .name_area p.name a {
 display: inline-block;
 position: relative;
 padding-right: 1em;
 color: var(--blue);
 text-decoration: underline;
}
section.park .cntWrap .cntBox .txt .profile .name_area p.name a img {
 position: absolute;
 top: 60%;
 right: 0;
 width: 10px;
 translate: 0 -50%;
}
section.park .cntWrap .cntBox .txt .profile .name_area p.name a span {
 font-size: 0.875em;
}
section.park .cntWrap .cntBox .txt .profile .career {
 margin-top: 20px;
}
section.park .cntWrap .cntBox .txt .profile .career p.ttl {
 line-height: 2;
 margin-bottom: 5px;
 font-size: 14px;
 letter-spacing: 0.12em;
}
section.park .cntWrap .cntBox .txt .profile .career dl {
 display: grid;
 line-height: 1.4285714286;
 grid-template-columns: auto 1fr;
 gap: 10px 15px;
 font-size: 14px;
 letter-spacing: 0.12em;
}
section.park .cntWrap .cntBox .txt .profile .career dl dt {
 font-weight: 400;
}
section.park .cntWrap .cntBox figure {
 position: relative;
 max-width: 360px;
}
section.park .cntWrap .cntBox figure img {
 border-radius: 5px;
}
section.park .cntWrap .cntBox figure img +img {
 margin-top: 10px;
}
section.park .cntWrap .cntBox figure figcaption {
 display: block;
 position: absolute;
 top: -10px;
 right: -30px;
 line-height: 30px;
 padding: 0 30px 0 10px;
 border-radius: 2px;
 color: #ffffff;
 background-color: var(--blue);
 font-size: 14px;
 letter-spacing: 0.12em;
}
section.operate {
 padding-bottom: min(60px + 9.333vw, 200px);
 background: url(../img/operate_cloud.png) no-repeat right bottom/contain;
}
@media screen and (max-width: 768px) {
 section.operate {
  padding-bottom: calc(38px + 9.333vw);
 }
}
section.operate .inner {
 display: flex;
 flex-direction: column;
}
section.operate .inner h2 {
 line-height: 1;
 margin-bottom: 30px;
 color: var(--c_txt);
 font-family: var(--ff_mincho);
 font-size: 32px;
}
@media screen and (max-width: 768px) {
 section.operate .inner h2 {
  font-size: 24px;
 }
}
section.operate .inner .cntWrap {
 display: flex;
 align-items: center;
 gap: 24px 10%;
}
@media screen and (max-width: 768px) {
 section.operate .inner .cntWrap {
  flex-direction: column;
  align-items: flex-start;
 }
}
section.operate .inner .cntWrap a {
 display: flex;
 align-items: center;
 gap: 0 30px;
}
@media screen and (max-width: 768px) {
 section.operate .inner .cntWrap a {
  gap: 0 20px;
 }
 section.operate .inner .cntWrap a img[width="70"] {
  width: 52px;
 }
 section.operate .inner .cntWrap a img[width="200"] {
  width: 150px;
 }
}
section.operate .inner .cntWrap a:hover span {
 text-decoration: underline;
}
section.operate .inner .cntWrap a span {
 color: var(--blue);
 font-size: 20px;
}
@media screen and (max-width: 768px) {
 section.operate .inner .cntWrap a span {
  font-size: 18px;
 }
}
section.operate .inner .cntWrap a span::after {
 content: "";
 display: inline-block;
 width: 16px;
 vertical-align: middle;
 -webkit-mask-image: url(/wp-content/themes/toseki/common/img/icon_arrow_r.png);
         mask-image: url(/wp-content/themes/toseki/common/img/icon_arrow_r.png);
 -webkit-mask-repeat: no-repeat;
         mask-repeat: no-repeat;
 -webkit-mask-position: center;
         mask-position: center;
 -webkit-mask-size: cover;
         mask-size: cover;
 margin-left: 15px;
 background-color: var(--blue);
 rotate: -45deg;

 aspect-ratio: 1;
}
@media screen and (max-width: 768px) {
 section.operate .inner .cntWrap a span::after {
  margin-left: 10px;
 }
}
/*# sourceMappingURL=layout.css.map */