@charset "UTF-8";
/* CSS Document */


/* Reset */
#mainVisual.main4 { min-height: auto !important; }

#mainContents .container { padding-top: 1em; }
#mainContents .container > .contentsWrapper > .wrapper { padding-bottom: 3em; }
#cpcontainer { width: 100%; max-width: 950px; margin: 1em auto; line-height: 1.4em; color: #333; -webkit-text-size-adjust: 100%; }
#cpcontainer h1, #cpcontainer h2, #cpcontainer h3, #cpcontainer h4, #cpcontainer h5, #cpcontainer h6, #cpcontainer p, #cpcontainer ul, #cpcontainer ol, #cpcontainer li, #cpcontainer dl, #cpcontainer dt, #cpcontainer dd, #cpcontainer em, #cpcontainer img { margin: 0; padding: 0; border: none; font-style: normal; font-weight: normal; font-size: 100%; text-align: left; list-style-type: none; }
#cpcontainer img { vertical-align: bottom; }
#cpcontainer hr { display: none; }
#cpcontainer img.blank { width: auto; height: 1.1em; vertical-align: top; padding-left: .2em; }


/* Header */
#fcbus-head { width: 100%; margin-bottom: 4em; }
#fcbus-head img { width: 100%; height: auto; }
#fcbus-menu { background: #519F35; }
#fcbus-menu ul { width: 94%; max-width: 1130px; margin: 0 auto; padding: 1em 0; display: flex; justify-content: space-between; }
#fcbus-menu ul li { width: calc(94% / 5); }
#fcbus-menu ul li a { border-radius: 1.5em; box-shadow: 0 0 0 2px #FFF inset; display: block; }
#fcbus-menu ul li a:hover { background: rgba(255,255,0,0.4); }
#keyvisual { width: 100%; height: auto; position: relative; }
#keyvisual h2 { width: 52%; height: auto; position: absolute; top: 32%; left: 50%; transform: translateX(-50%); }
#keyvisual h3 { width: 48%; height: auto; position: absolute; bottom: 8%; left: 50%; transform: translateX(-50%); }
#keyvisual h3 img#sub-sp { display: none; }
#keyvisual h4 { width: 7%; height: auto; position: absolute; bottom: 5%; right: 4%; }
#fcbus-head p { font-size: 123%; line-height: 1.8; text-align: center; width: 94%; max-width: 950px; margin: 1.5em auto 0 auto; }
#fcbus-head p small { font-size: 60%; }
#fcbus-head p span::before, #fcbus-head p span::after { content: "\A"; white-space: pre; }
@media only screen and (max-width: 896px) and (orientation: portrait) {
  #fcbus-menu { display: none; }
  #keyvisual { overflow: hidden; }
  #keyvisual div { width: 120% !important; height: auto; margin-left: -10%; }
  #keyvisual h2 { width: 84%; height: auto; }
  #keyvisual h3 { width: 94%; margin-top: 1em; position: relative; }
  #keyvisual h3 img#sub-pc { display: none; }
  #keyvisual h3 img#sub-sp { display: block; }
  #keyvisual h4 { width: 10%; bottom: 15%; right: 3%; }
  #fcbus-head p { font-size: 105%; line-height: 1.6; text-align: justify; margin-top: .5em; }
  #fcbus-head p span::before, #fcbus-head p span::after { content: ""; }
}


/* Footer */
#fcbus-foot { width: 100%; height: auto; position: relative; }
#fcbus-foot img { width: 100%; height: auto; }
#fcbus-foot h2 { width: 64%; height: auto; position: absolute; top: 25%; left: 50%; transform: translateX(-50%); }
#fcbus-foot h3 { width: 42%; height: auto; position: absolute; bottom: 15%; left: 50%; transform: translateX(-50%); }
#fcbus-foot p { font-size: 105%; line-height: 1.2; font-weight: bold; color: #FFF; position: absolute; bottom: 5%; left: 50%; transform: translateX(-50%); }
@media only screen and (max-width: 896px) and (orientation: portrait) {
  #fcbus-foot { overflow: hidden; }
  #fcbus-foot div { width: 140% !important; height: auto; margin: -5% 0 0 -20%; }
  #fcbus-foot h2 { width: 94%; top: 12%; }
  #fcbus-foot h3 { width: 84%; bottom: 25%; }
  #fcbus-foot p { font-size: 85%; line-height: 1.2; font-weight: normal; text-align: center; color: #333; padding: .5em 0 1em 0; position: relative; bottom: 0; }
}


/* Common */
.column { margin-bottom: 4em; }
.column h2 { margin-bottom: 2em; }
.column h2 span { display: none; }
.column p { font-size: 105%; line-height: 1.8; }
.column p small { font-size: 60%; }
.inner-box { width: 90%; margin: 0 auto; }
@media only screen and (max-width: 896px) and (orientation: portrait) {
  .column h2 { margin-bottom: 1em; }
  .column h2 strong { display: none; }
  .column h2 span { display: block; }
  .column p { font-size: 100%; line-height: 1.6; }
  .inner-box { width: 100%; }
}


/* Zero Carbon */
#zc-map { padding: 2em 0; }
#zerocarbon dl { margin-bottom: 2em; display: flex; flex-direction: row-reverse; align-items: center; justify-content: space-between;  }
#zerocarbon dl dt { width: 32%; }
#zerocarbon dl dd { width: 62%; }
#zerocarbon dl dd p { text-indent: 1em; }
#zerocarbon dl dd p span::before { content: "\A"; white-space: pre; }
#zerocarbon ul { margin-bottom: 2em; display: flex; flex-wrap: wrap; justify-content: space-between; }
#zerocarbon ul li { width: 23%; }
#zerocarbon ul li span { font-size: 93%; line-height: 1.4; text-align: center; padding-top: .3em; display: block; }
#linkage { padding: 2em; border: dotted 5px #54C3F1;}
#linkage h3 { width: 60%; height: auto; margin: 0 auto 1.5em auto; }
#linkage p#linkage-read { font-size: 115%; line-height: 1.8; text-align: center; }
#linkage p span::before { content: "\A"; white-space: pre; }
#linkage div { margin: 1.5em 0; }
@media only screen and (max-width: 896px) and (orientation: portrait) {
  #zc-map { padding: 0 0 1em 0; }
  #zerocarbon dl { flex-direction: column-reverse; }
  #zerocarbon dl dt { width: 60%; }
  #zerocarbon dl dd { width: 100%; padding-bottom: 1em; }
  #zerocarbon dl dd p { text-indent: 0; }
  #zerocarbon dl dd p span::before { content: ""; }
  #zerocarbon ul li { width: 49%; margin-bottom: .5em; }
  #zerocarbon ul li span { font-size: 75%; line-height: 1.4; }
  #linkage { padding: 1em; border-width: 3px;}
  #linkage h3 { width: 100%; height: auto; margin-bottom: .8em; }
  #linkage p#linkage-read { font-size: 100%; line-height: 1.6; }
  #linkage p span::before { content: ""; }
  #linkage div { margin: 0.8em 0; }
  #linkage p.attention { font-size: 93%; line-height: 1.6; }
}


/* Overview */
#ov-icon { display: flex; flex-wrap: wrap; justify-content: space-between; }
#ov-icon li { width: 30%; margin-bottom: 5%; }
#ov-icon li span { display: none; }
#overview h3 { font-size: 135%; line-height: 1.4; font-weight: bold; color: #27C; margin-bottom: 1em; padding-bottom: .1em; border-bottom: solid 2px #27C; }
#overview dl { margin-top: 2em; }
#overview dl dt { font-size: 135%; line-height: 1.4; font-weight: bold; color: #27C; }
#overview dl dt::before { content: "●"; }
#overview dl dd p { padding: 0 0 1em 1.35em; }
.bus-design { display: flex; justify-content: space-between; }
.bus-design li:first-child { width: 62%; order: 2; }
.bus-design li:nth-child(n+2) { width: 18%; }
.bus-design li:last-child { order: 3; }
.bus-design li span { display: none; }
#overview dl dd dl { margin-top: 1em; }
#overview dl dd dl dt { font-size: 100%; line-height: 1.4; font-weight: normal; color: #333; padding-left: 1em; }
#overview dl dd dl dt::before { content: ""; }
#overview dl dd dl dd ul { padding: .5em 0 0 1em; display: flex; }
#overview dl dd dl dd ul li { width: 30%; margin-right: 2%; }
#overview dl dd dl dd ul li:first-child { width: 48%; }
@media only screen and (max-width: 896px) and (orientation: portrait) {
  #ov-icon li { width: 48%; margin-bottom: 4%; }
  #ov-icon li strong { display: none; }
  #ov-icon li span { display: block; }
  #overview h3 { font-size: 115%; line-height: 1.4; text-align: center; margin-bottom: .5em; }
  #overview p#ov-read { text-align: center; }
  #overview dl dt { font-size: 115%; line-height: 1.4; }
  #overview dl dd p { padding: 0 0 1em 0; }
  .bus-design { flex-wrap: wrap; justify-content: center; }
  .bus-design li:first-child { width: 100%; order: 0; }
  .bus-design li:nth-child(n+2) { width: 40%; margin: 2% 5%; }
  .bus-design li span { font-display: 93%; line-height: 1.2; text-align: center; display: block; }
  #overview dl dd dl dt { text-align: center; padding-left: 0; }
  #overview dl dd dl dd ul { flex-direction: column; padding-left: 0; }
  #overview dl dd dl dd ul li { width: 63%; margin: 0 0 3% 0; }
  #overview dl dd dl dd ul li:first-child { width: 100%; }
}


/* Place */
#place-read { display: flex; align-items: center; justify-content: space-between; }
#place-read dt { width: 50%; }
#place-read dd { width: 46%; }
.place-column { margin-top: 2em; }
.place-column h3 { font-size: 135%; line-height: 1.4; font-weight: bold; color: #27C; margin-bottom: 1em; padding-bottom: .1em; border-bottom: solid 2px #27C; }
.place-inner { width: 95%; margin: 0 auto; }

#place-landmark dl { margin-bottom: 2em; }
#place-landmark dl dt { font-size: 135%; line-height: 1.4; font-weight: bold; color: #27C; padding: 0 0 .1em 1.2em; position: relative; }
#place-landmark dl dt span { position: absolute; left: 0; }
#place-landmark dl dd { padding-left: 1.6em; }
#place-landmark dl dd ul { padding-top: 1em; display: flex; flex-wrap: wrap; justify-content: space-between; }
#place-landmark dl dd ul li { width: 24%; }
#place-landmark dl dd ul li span { font-size: 93%; line-height: 1.4; padding-top: .4em; display: block; }
#place-landmark dl dd ul.landmark-one li:last-child { width: calc(24% * 3); }

#place-route ul { display: flex; flex-wrap: wrap; justify-content: space-between; position: relative; }
#place-route ul li {width: 90%;margin: 0 auto;}
#place-route ul li:first-child, #place-route ul li:last-child {/* width: 36%; */}
#place-route ul li:last-child {/* position: absolute; *//* left: 0; *//* bottom: 0; */}
#place-time .place-inner > ul { display: flex; flex-wrap: wrap; justify-content: space-between; position: relative; }
#place-time .place-inner > ul li { width: 48%; }
#place-time .place-inner > ul li:last-child { position: absolute; left: 0; bottom: 0; }
#place-time .place-inner > ul li dl dt { font-weight: bold; }
#place-time .place-inner > ul li dl dd ul { display: block; }
#place-time .place-inner > ul li dl dd ul li { font-size: 93%; line-height: 1.6; text-indent: -1em; width: 100%; padding: .2em 0 0 1em; }
#place-time .place-inner > ul li dl dd ul li:last-child { position: relative; }
#place-time .place-time_txtNote {
  text-indent: -1em !important;
  padding-left: 1em !important;
  margin-bottom: 30px;
  text-align: right;
}
#place-time .place-inner .place-time_dl {
	margin-top: 10px;
}
#place-time .place-inner .place-time_dl dt {font-weight: bold; }
#place-time .place-inner .place-time_dl dd ul { display: block; }
#place-time .place-inner .place-time_dl dd ul li { font-size: 93%; line-height: 1.6; text-indent: -1em; width: 100%; padding: .2em 0 0 1em; }
#place-time .place-inner .place-time_dl dd ul li:last-child { position: relative; }



#place-goal p strong { font-size: 135%; line-height: 1.4; font-weight: normal; padding-right: 2em; }
#place-goal p a { color: #333; }
#place-goal p a img { width: auto; height: .9em; vertical-align: middle; padding-right: .2em; }
@media only screen and (max-width: 896px) and (orientation: portrait) {
  #place-read { flex-direction: column; }
  #place-read dt { width: 100%; margin-bottom: 1em; }
  #place-read dd { width: 100%; }
  #place-read dd p { text-align: center; }
  .place-column h3 { font-size: 115%; line-height: 1.4; text-align: center; }
  .place-inner { width: 100%; }
  #place-landmark dl { margin-bottom: .5em; }
  #place-landmark dl dt { font-size: 115%; line-height: 1.4; text-align: center; padding-left: 0; }
  #place-landmark dl dt span { display: none; }
  #place-landmark dl dd { padding-left: 0; }
  #place-landmark dl dd p { text-align: center; }
  #place-landmark dl dd ul li { width: 49%; margin-bottom: 4%; }
  #place-landmark dl dd ul li span { text-align: center; }
  #place-landmark dl dd ul.landmark-one { justify-content: center; }
  #place-landmark dl dd ul.landmark-one li:last-child { display: none; }
  #place-route ul { flex-direction: column; }
  #place-route ul li { width: 100%; padding-bottom: 1em; }
  #place-route ul li:first-child, #place-route ul li:last-child { width: 100%; margin: 0 auto; }
  #place-route ul li:last-child { position: relative; padding-bottom: 0; }
  #place-time .place-inner > ul { flex-direction: column; }
  #place-time .place-inner > ul li { width: 100%; padding-bottom: 1em; }
  #place-time .place-inner > ul li:last-child { position: relative; padding-bottom: 0; }
  #place-time .place-time_txtNote{
    margin-bottom: 10px;
    text-align: left;
  }
  #place-goal p { font-size: 93%; line-height: 1.6; text-align: center; word-break: break-all; }
  #place-goal p strong { padding-right: 0; display: block; }
}


/* Movie */
#movie div { width: 100%; padding-top: 56.25%; position: relative; }
#movie div iframe { width: 100% !important; height: 100% !important; position: absolute; top: 0; right: 0; }


/* Download */
#download dl { display: flex; justify-content: space-between; }
#download dl dt { width: 64%; }
#download dl dd { width: 32%; }
#download dl dd ul { display: flex; flex-direction: column-reverse; }
#download dl dd ul li { min-height: 0%; }
#download dl dd ul li:first-child { margin-top: 6%; }
#download dl dd ul li span { display: none; }
#download dl dd ul li a:hover { opacity: .8; }
#nurie { display: flex; flex-wrap: wrap; justify-content: space-between; }
#nurie li { width: 32%; margin-top: 3%; }
@media only screen and (max-width: 896px) and (orientation: portrait) {
  #download dl { flex-direction: column; }
  #download dl dt { width: 100%; }
  #download dl dd { width: 100%; margin: 0 auto; }
  #download dl dd ul { flex-direction: column; }
  #download dl dd ul li:last-child { width: 80%; margin: 4% auto 0 auto; } 
  #download dl dd ul li strong { display: none; }
  #download dl dd ul li span { display: block; }
  #nurie li { width: 48%; margin-top: 4%; }
}

