@charset "UTF-8";

/* base font-size 18px: */

main{ color: #083a4e;}
img{ display: block;}

.section_title{ font-size: 196%; text-align: center; font-weight: 600;}
.place_title{ font-size: 148%; font-weight: 600; border-bottom: solid 1px #083a4e; text-align: left;}
.line_title{ font-size: 148%; font-weight: 600; display: flex; justify-content: center; align-items: center; gap: 0 1.0em; letter-spacing: 0.15em;}
.line_title::before{ content: ''; display: block; margin: 0 0; padding: 0; width: 6.0rem; height: 1.0rem; background: url("../img/line_title_left.svg") no-repeat center right / contain; }
.line_title::after{ content: ''; display: block; margin: 0 0; padding: 0; width: 6.0rem; height: 1.0rem; background: url("../img/line_title_right.svg") no-repeat center right / contain; }
.row{ display: grid; gap: 1.5rem;}
.row>*{ margin-top: 0;}
.row>*>*:first-child{ margin-top: 0;}


.hc{ margin: 0; padding: 0;}
.hc *{ margin:0;}
.hc img{ display: block; width: 100%;}
@media screen and ( max-width: 480px ) {
}

.section_hcopy{ background: url("../img/hcopy.bg.webp") no-repeat center top / contain; margin: -13.5% 0 0 0;}
.section_hcopy .mb{ text-align: center; }
.section_hcopy .copy{ font-size: 148%; font-weight: 600;}
.section_hcopy .ttl01{ background: #083a4e; line-height: 1.5; color: #fff; font-size: 196%; padding: 0.5rem 1.0rem;}
.section_hcopy .row01{ grid-template-columns: 64% 36%;}
.section_hcopy .row01_02{ background: #e3eef1; padding: 2.0rem;  display: grid; align-content: center;}
.section_hcopy .row02{ grid-template-columns: 50% 50%; text-align: left;}
.section_hcopy .row03{ grid-template-columns: 50% 50%; text-align: left;}
.section_hcopy .row03 .aside img{ width: 40%; float: right; margin-left: 1.0rem;}
@media screen and ( max-width: 480px ) {
  .section_hcopy .row01,
  .section_hcopy .row02,
  .section_hcopy .row03{ grid-template-columns: 1fr;}
}

.section_yume{ margin: 0; padding: 0; background: #e3eef1 url("../img/yume02.webp") no-repeat center 20% / contain;}
.section_yume .ttl01{ background: #083a4e; line-height: 1.5; color: #fff; font-size: 196%; padding: 0.5rem 1.0rem; text-align: center;}
.section_yume .row01{ grid-template-columns: 64% 36%;}
.section_yume .catlist{ display:grid; gap: 1.0rem; grid-template-columns: repeat(6,1fr);}
.section_yume .shoplist{ background: #fff; border: solid 1px #083a4e; padding: 1.0rem 1.5rem 2.0rem 1.5rem; margin: 2.0rem 0 0 0;}
.section_yume .shoplist h3{ margin: 0; text-align: center; font-size: 116%;}
.section_yume .shoplist .content{ display: grid; gap: 1.5rem; grid-template-columns: repeat(4,1fr); margin: 0;}
.section_yume .shoplist .content p{ border-left: solid 1px #083a4e; padding-left: 1.0em; font-size: 93%;}
@media screen and ( max-width: 480px ) {
  .section_yume .row01{ grid-template-columns: 1fr;}
  .section_yume .catlist{grid-template-columns: repeat(3,1fr);}
  .section_yume .shoplist .content{ grid-template-columns: repeat(2,1fr);}
  .section_yume .shoplist .content p{ font-size: 73%;}
}


.section_env{ margin: 0; padding: 0; background: url("../img/env00.webp") no-repeat center top /cover;}

.section_acc{ background: #083a4e; color: #fff;}
.section_acc .row01{ grid-template-columns: 37% 63%;}
@media screen and ( max-width: 480px ) {
  .section_acc .row01{ grid-template-columns: 1fr;}
}

.section_pg {}
.section_pg h3{ font-size: 196%; font-weight: 600;}
.section_pg .copy{ font-size: 128%; line-height: 1.5; margin: 0;}
.section_pg .photo_items{ display:grid; gap: 1.0rem; grid-template-columns: repeat(2, 1fr);}
.section_pg .photo_items li{ margin: 0; padding: 0;}
.section_pg .photo_items figure{ margin: 0; padding: 0;}
.section_pg .photo_items figcaption{ margin: 0; font-size: 86%;}

.section_life{ background: #afaa8f;}

/*

.section_project{ background: url("../img/asset21.svg") repeat center top;}
.section_project .mb{ display: flex; gap: 0 4%;}
.section_project img{ display: block;}
.section_project .content{ margin: 0; flex: 0 0 33%; }
.section_project .content p{ font-size: 86%; line-height: 1.7;}
.section_project .figure{ margin: 0; flex: 1 0;}
@media screen and ( max-width: 480px ) {
  .section_project .mb{ display: block;}
}

.loc{ margin: 1.5rem 0 0 0;}
.loc figure{ margin: 0;}
.loc figure img{ display: block;}
.loc h3{ font-size: 93%; border-bottom: solid 1px #fecf17; font-weight: 600; margin-top: 0.7rem; padding-bottom: 0.7rem;}
.loc p{ font-size: 86%; line-height: 1.7; margin-top: 0.7rem;}

.section_shop{ background: #e6f4f5;}
.section_shop h2{ display: flex; justify-content: center; gap: 2%;}
.section_shop h2 img{ width: 440px;}
.section_shop span{ display: block; flex-grow: 1; align-self: stretch; background: url("../img/asset22.svg") repeat left top;}

.shop{ margin: 1.5rem 0 0 0; padding: 0;}
.shop img{ display: block;}
.shop h3{ font-weight: bold;}
.shop p{ font-size: 86%; margin: 0.5rem 0 0 0; line-height: 1.5;}
.shop ul{ border-left: solid 4px #00ab96; font-size: 68%; line-height: 1.5; padding: 0 0 0 1.0em; margin: 1.0rem 0 0 0;}
.shop li{ padding-left: 1.0em; text-indent: -1.0em; margin: 0; white-space: normal; word-break: break-all; }
.shop a{ word-break: break-all; }
.shop01 .content{ display: flex; gap: 2%; margin: 0;}
.shop01 .content .body{ margin: 0;}
.shop01 .content .figure{ flex: 0 0 30%; margin: 0;}
.shop01 .content .figure figure{ margin: 0;}
.shop01 .content .figure img{ display: block; border: solid 2px #FFF;}

.shop02 .col,
.shop02 .col >*{ margin-top: 0;}

*/

.section_form{ font-family: 'Noto Sans JP','游ゴシック', YuGothic, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", arial, helvetica, sans-serif; }
.section_form .lead{ background: #83ccd2; padding: 1.0rem 0; }
.section_form .lead h3{ background: #FFFFFF; margin: 0 1.0rem; padding: 0.5rem 1.0rem; text-align: center; font-size: 250%; font-weight: bold;}
.section_form .lead .copy{ margin: 0; padding: 1.0rem; color: #FFFF00; font-size: 250%; font-weight: bold; line-height: 1.5; text-align: center;}
.section_form .lead .body{ margin: 0; padding: 1.0rem; background: #000000; color: #FFFFFF; text-align: center; font-size: 200%; font-weight: bold;}

.table_form{ width: 100%;}
.table_form th{ border-top: dotted 1px #a8a8a8; border-right: dotted 1px #a8a8a8; padding: 1.5rem 1.0rem;}
.table_form td{ border-top: dotted 1px #a8a8a8; padding: 1.5rem 1.0rem;}

@media screen and ( max-width: 480px ) {
  .section_form{ line-height: 1.5;}
  .section_form .lead h3{ font-size: 128%;}
  .section_form .lead .copy{ font-size: 128%;}
  .section_form .lead .body{ font-size: 100%;}
}

.btn_group{ display: flex; justify-content: center; gap: 0 1.5em; font-size: 86%;}
@media screen and ( max-width: 480px ) {
  .btn_group{ display: block; text-align: center;}
}

.fc{ background: #000000; color: #FFFFFF;}
.fc *{ margin-top: 0;}
.fc .fc01{ display: flex; justify-content: center; align-items: center; gap: 0 2%;}
.fc .fc01 .logo{ flex: 0 0 12%;}
.fc .fc01 .content{ font-size: 77%; line-height: 1.5;}
.fc .fc01 .content h2 img{ height: 1.5em;}

.fc_navi{ display: block; margin: 0; padding: 0; position: sticky; bottom: 0;}
.fc_navi a{ display: block; padding: 1.3em 0.5em; text-align: center; background: #076483; color: #FFFFFF; text-decoration: none; font-weight: bold; font-size: 108%;}
@media screen and ( max-width: 480px ) {
  .fc_navi a{ font-size: 93%; padding: 1.0em 0;}
}







