@charset "UTF-8";
/**
 *	@file
 *	Additional styles for GCPJ ver. 5.x.
 *	@author	Tamaki 玉木
 *	@date	2016-09-08
 *	@memo	5.5.0	2021-05-17
 */
.devy {
  display: none;
}

#comments {
  margin-top: 32px;
}
#comments h2 {
  border-top: 4px #bfccd9 solid;
  padding-top: 1em;
}
#comments .comment {
  background: #fff;
  border: #ccc 1px solid;
  margin-bottom: 24px;
  padding: 16px;
}
#comments .comment h3 {
  font-size: 150%;
  margin: 0 0 8px;
}
#comments .comment .field-items {
  padding: 8px 0;
}
#comments .comment .submitted .permalink:before {
  content: "\f064";
  padding-right: .25em;
  font-family: "FontAwesome";
}
#comments .comment .nasu-submitted:before {
  color: #aaa;
  padding-right: .25em;
  font-family: "FontAwesome";
}
#comments .comment .nasu-submitted.nasu-comment-by:before {
  content: "\f007";
}
#comments .comment .nasu-submitted.nasu-comment-by.official:before {
  color: #960;
}
#comments .comment .nasu-submitted.nasu-comment-at:before {
  content: "\f017";
}

form.comment-form input.form-submit {
  margin-right: 1em;
}

/*** 	since ver. 5.2.4 - 161217 */
/*** 	since ver. 5.2.5 - 161219 
@for	Table contents of OpenData 100.
*/
table.cases th {
  border-bottom: none;
}
table.cases th, table.cases td {
  padding: 1em;
  vertical-align: top;
}
table.cases .case-number {
  text-align: right;
}
table.cases tbody {
  border-top: #aaa 1px solid;
}
table.cases tbody tr + tr {
  border-top: #aaa 1px dashed;
}

/*** 	since ver. 5.2.7 - 170509-170510 
@for	Responsive layout for page header and global navigation.
*/
#jumper a {
  width: 36px;
  height: 36px;
}

#navbar,
#tongues {
  display: none;
}

/**
 *	Responsives
 *		since ver. 5.2.9 - 170917
 *		Styles using media query (include for printing) has been integrated and reformed into lines below.
 *		ver. 5.5.0 210517
 *		Threshold width replaced from 768 to 1200
 */
@media print, (min-width: 1200px) {
  .tapple {
    display: none;
    font-size: 0;
    line-height: 0;
  }

  #gnb {
    line-height: 0;
  }
  #gnb ul.nav-lev0 {
    line-height: 110%;
  }
  #gnb ul.nav-lev0 > li > a {
    position: relative;
    padding: 1.5em 1em;
    opacity: .7;
  }
  #gnb ul.nav-lev0 > li:not(.home) {
    margin-top: -6px;
  }
  #gnb ul.nav-lev0 > li.home {
    display: inline-block;
  }
  #gnb ul.nav-lev0 > li.home a {
    padding: 1.25em 1em;
  }
  #gnb ul.nav-lev0 > li.home span {
    display: none;
  }
  #gnb ul.nav-lev0 > li.home a:before {
    display: inline-block;
    content: "\e636";
    font-family: 'Material-Design-Icons';
    font-size: 150%;
  }
  #gnb ul.nav-lev0 > li.active > a {
    background: rgba(0, 0, 0, 0.25);
    opacity: 1;
  }
  #gnb ul.nav-lev0 > li.open > a {
    background: #369;
    opacity: 1;
  }
  #gnb .menu-g1.open .nav-lev1 {
    display: block;
  }

  #keyvis {
    height: auto;
  }

  #boiler .nav-lev0 {
    columns: 4;
    /* ver. 5.2.6 */
    -moz-columns: auto 4;
    -webkit-columns: auto 4;
    -o-columns: auto 4;
    -ms-columns: auto 4;
  }

  #boiler .home {
    column-span: all;
    -moz-column-span: 4;
    -webkit-column-span: all;
    -o-column-span: all;
    -ms-column-span: all;
  }

  #boiler .colpos-1 + .colpos-2, #boiler .colpos-2 + .colpos-3, #boiler .colpos-3 + .colpos-4 {
    break-before: column;
    -moz-column-break-before: always;
    -webkit-column-break-before: always;
    -o-column-break-before: always;
    -ms-column-break-before: always;
  }

  #tiler ul {
    columns: 4;
    /* ver. 5.2.6 */
    -moz-columns: auto 4;
    -webkit-columns: auto 4;
    -o-columns: auto 4;
    -ms-columns: auto 4;
  }

  #tiler li {
    break-inside: avoid;
    -moz-column-break-inside: avoid;
    -webkit-column-break-inside: avoid;
    -o-column-break-inside: avoid;
    -ms-column-break-inside: avoid;
  }

  #block-views-topics-block .inform.created, #block-views-topics-block h3 {
    display: inline-block;
  }
}
@media (min-width: 1200px) {
  /* ### for Larger Screen ==> */
  #keyvis {
    height: 362px;
  }

  /* <== Larger Screen ### */
}
@media screen and (max-width: 1199px) {
  /* ### for Smaller Screen ==> */
  #tiler li {
    display: block;
    width: auto;
    margin: 0 0 8px;
  }

  #tiler li + li {
    margin-left: 0;
  }

  table.cases {
    display: block;
    margin-bottom: 2em;
  }
  table.cases thead {
    display: none;
  }
  table.cases tbody {
    display: block;
  }
  table.cases tbody tr {
    display: block;
    margin-bottom: 1em;
  }
  table.cases tbody tr + tr {
    border-top: none;
  }
  table.cases tbody th {
    display: inline-block;
    text-align: left;
  }
  table.cases tbody th.case-number:after {
    content: ".";
  }
  table.cases tbody td {
    display: block;
    margin-left: 2em;
  }
  table.cases tbody td.case-organizers:before {
    content: "事業者・自治体等";
    display: inline-block;
    font-size: 85%;
    background: #ddd;
    margin: 0 .5em 0 0;
    padding: .25em .5em;
    border-radius: 2px;
  }
  table.cases tbody th, table.cases tbody td {
    padding: .25em 0;
  }

  #crown {
    margin-top: 48px;
  }
  #crown .occidental {
    position: static;
  }

  #jumper, #lingo {
    display: none;
  }

  #utility {
    height: 0;
  }

  img#logo {
    width: 240px;
    height: auto;
  }

  #navbar {
    position: fixed;
    display: flex;
    justify-content: space-between;
    width: 100%;
    height: 48px;
    top: 0;
    left: 0;
    background: #036;
    box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.15);
    z-index: 100;
  }
  #navbar button, #navbar a {
    color: rgba(255, 255, 255, 0.69);
    display: block;
    padding: .25em .5em;
    border: none;
    background: transparent;
  }
  #navbar button::before, #navbar a::before {
    font-family: "Material-Design-Icons";
    font-size: 200%;
  }
  #navbar button:hover, #navbar a:hover {
    text-decoration: none;
  }
  #navbar button span, #navbar a span {
    display: none;
  }

  #detect::before {
    content: "\e65f";
  }

  #triumph::before {
    content: "\e636";
  }

  #burger::before {
    content: "\e8a1";
  }
  #burger.open::before {
    content: "\e89c";
  }

  #tongue::before {
    content: "\e63e";
  }

  #gnb,
  #tongues,
  #search-block-form {
    position: absolute;
    display: none;
    background: #369;
    width: 100%;
    top: 47px;
    left: 0;
    margin: 0;
    box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.15);
    z-index: 50;
  }
  #gnb.open,
  #tongues.open,
  #search-block-form.open {
    display: block;
  }

  nav#gnb li.home {
    display: none;
  }
  nav#gnb .tapple,
  nav#gnb .nav-lev0 > li:not(.whirlpool) > a {
    position: relative;
    display: block;
    color: #fff;
    background: #258;
    vertical-align: middle;
    border-top: #738fab 1px solid;
    padding: 1em;
    opacity: 1;
  }
  nav#gnb .tapple::after,
  nav#gnb .nav-lev0 > li:not(.whirlpool) > a::after {
    position: absolute;
    right: .5em;
    bottom: .5em;
    font-size: 150%;
    font-family: "Material-Design-Icons";
    line-height: 110%;
  }
  nav#gnb .tapple::after {
    content: "\e89e";
  }
  nav#gnb .nav-lev0 > li:not(.whirlpool) > a::after {
    content: "\e89b";
  }
  nav#gnb li.menu-g1 {
    display: block;
    /*
    			&.whirlpool {
    				> a {
    					display: none;
    				}
    			}
    */
  }
  nav#gnb li.menu-g1 > a {
    display: block;
    position: relative;
    font-size: 100%;
    line-height: 110%;
    padding: 1em;
    opacity: 1;
  }
  nav#gnb li.menu-g1 > a::before {
    display: none;
  }
  nav#gnb li.menu-g1 > a::after {
    position: absolute;
    right: 1em;
    font-family: "Material-Design-Icons";
    content: "\e89b";
  }
  nav#gnb li.menu-g1.open .tapple, nav#gnb li.menu-g1.open .nav-lev0 > li:not(.whirlpool) > a {
    color: #738fab;
  }
  nav#gnb li.menu-g1.open .tapple::after, nav#gnb li.menu-g1.open .nav-lev0 > li:not(.whirlpool) > a::after {
    color: #fff;
  }
  nav#gnb li.menu-g1.open .tapple {
    box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.45);
  }
  nav#gnb li.menu-g1.open .tapple::after {
    content: "\e89d";
  }
  nav#gnb li.menu-g1.whirlpool > a {
    display: block;
    position: relative;
    font-size: 100%;
    line-height: 110%;
    padding: 1em;
    opacity: 1;
  }
  nav#gnb li.menu-g1.whirlpool > a::before {
    display: none;
  }
  nav#gnb li.menu-g1.whirlpool > a::after {
    position: absolute;
    right: 1em;
    font-family: "Material-Design-Icons";
    content: "\e89b";
  }
  nav#gnb li.menu-g1.whirlpool > a, nav#gnb li.menu-g1.whirlpool > ul {
    display: none;
  }
  nav#gnb li.menu-g1.whirlpool.open > a, nav#gnb li.menu-g1.whirlpool.open > ul {
    display: block;
  }
  nav#gnb ul.nav-lev1, nav#gnb ul.nav-lev2 {
    position: static;
  }
  nav#gnb ul.nav-lev1 > li.menu-g2, nav#gnb ul.nav-lev1 > li.menu-g3, nav#gnb ul.nav-lev2 > li.menu-g2, nav#gnb ul.nav-lev2 > li.menu-g3 {
    display: block;
  }
  nav#gnb ul.nav-lev1 {
    box-shadow: 0 -8px 8px 0 rgba(0, 0, 0, 0.45) inset;
    background: #47a;
    padding: 0;
  }
  nav#gnb ul.nav-lev1 li.menu-g2 {
    margin: 0;
  }
  nav#gnb ul.nav-lev1 li.menu-g2 > a {
    display: block;
    position: relative;
    font-size: 100%;
    line-height: 110%;
    padding: 1em;
    opacity: 1;
  }
  nav#gnb ul.nav-lev1 li.menu-g2 > a::before {
    display: none;
  }
  nav#gnb ul.nav-lev1 li.menu-g2 > a::after {
    position: absolute;
    right: 1em;
    font-family: "Material-Design-Icons";
    content: "\e89b";
  }
  nav#gnb ul.nav-lev1 li.menu-g2 + li.menu-g2 {
    border-top: #69c 1px solid;
  }
  nav#gnb ul.nav-lev2 {
    border-left: none;
    background: rgba(255, 255, 255, 0.69);
    margin: 0;
    padding: 0;
  }
  nav#gnb ul.nav-lev2 li.menu-g3 > a {
    display: block;
    position: relative;
    font-size: 100%;
    line-height: 110%;
    padding: 1em;
    opacity: 1;
    color: #036;
    padding: .5em 1em;
  }
  nav#gnb ul.nav-lev2 li.menu-g3 > a::before {
    display: none;
  }
  nav#gnb ul.nav-lev2 li.menu-g3 > a::after {
    position: absolute;
    right: 1em;
    font-family: "Material-Design-Icons";
    content: "\e89b";
  }
  nav#gnb ul.nav-lev2 li.menu-g3 + li.menu-g3 {
    border-top: #69c 1px solid;
  }

  #tongues {
    list-style-type: none;
    padding: 0;
  }
  #tongues li {
    margin: 0;
  }
  #tongues li a {
    display: block;
    color: #fff;
    text-align: center;
    padding: 1em;
    opacity: 1;
  }
  #tongues li + li {
    border-top: #69c 1px solid;
  }

  form#search-block-form {
    padding: .5em;
  }

  /* <== Smaller Screen ### */
}
