@charset "UTF-8";

/* =========================================================
   content
========================================================= */

/* category page
----------------------------------------------- */
/* index */
.dir-categories-bunya-kurashi .contentGpCategoryCategory > section,
.dir-categories-bunya-jigyosha .contentGpCategoryCategory > section,
.dir-categories-bunya-bunka .contentGpCategoryCategory > section,
.dir-categories-bunya-shisei .contentGpCategoryCategory > section,
.dir-categories-bunya-shigikai .contentGpCategoryCategory > section,
.contentGpCategoryCategory > section.docs-shinchaku,
.contentGpCategoryCategory > section.docs,
.contentGpCategoryCategoryTypes section,
.contentGpCategoryCategoryType section {
  margin: 0 0 20px;
  border: 1px solid #ccc;
  border-radius: 10px;
  overflow: hidden;
}
.contentGpCategoryCategory section.category {
  border: none;
}
.contentGpCategoryCategory > section.docs,
.contentGpCategoryCategoryTypes section {
  padding: 15px;
}
.contentGpCategoryCategory section h2,
.contentGpCategoryCategoryType section h2 {
  padding: 10px 5px 13px 10px;
  background-color: #7AB3ED;
}
.contentGpCategoryCategory > section > ul,
.contentGpCategoryCategoryTypes section ul,
.contentGpCategoryCategoryType section ul {
  padding: 15px;
}
.contentGpCategoryCategory > section > ul.feed {
  margin: -5px 0 0;
  padding: 0;
  border: 0;
}
.contentGpCategoryCategory > section.docs-all > ul,
.contentGpCategoryCategory > section.docs > ul,
.contentGpCategoryCategoryTypes section ul ul,
.contentGpCategoryCategoryType section ul ul {
  margin: 0;
  padding: 0;
  border: 0;
}
.contentGpCategoryCategoryTypes section ul,
.contentGpCategoryCategoryType section ul {
  padding-bottom: 0;
}
.contentGpCategoryCategoryTypes section ul li,
.contentGpCategoryCategoryType section ul li {
  margin-bottom: 1.5em;
}
.contentGpCategoryCategoryType section ul ul li {
  display: inline;
  margin: 0 1em 3px 0;
  padding: 0;
  background: none;
}
.contentGpCategoryCategory > section > ul li {
  display: inline-block;
  /display: inline;
  zoom: 1;
  width: 31.7%;
}
.contentGpCategoryCategory > section > ul.feed li {
  width: auto;
}
.contentGpCategoryCategory > section.docs > ul li,
.contentGpCategoryCategory > section.docs-all > ul li {
  display: block;
  width: auto;
}
.contentGpCategoryCategoryTypes section ul ul li {
  margin-left: 0.5em;
}
.contentGpCategoryCategoryTypes section ul ul ul li {
  display: inline;
  margin: 0 1em 3px 0;
  padding: 0;
  background: none;
}

/* docs-shinchaku */
.contentGpCategory .docs-shinchaku {
  margin-bottom: 20px;
}
.contentGpCategory .docs-shinchaku .header h2 {
  background-color: #BFD736;
}
.contentGpCategory .docs-shinchaku .shinchaku {
  padding: 15px;
}
.contentGpCategory .docs-shinchaku .shinchaku li {
  background: url("./images/ic-list_green.png") no-repeat left 0.35em;
}
.contentGpArticleDocs .docs h2.date {
  margin-bottom: 10px;
  padding: 6px 12px 4px;
  background: #eef6c9;
}
.contentGpArticleDocs .docs h2 + ul {
  margin: 0 15px 15px;
}
.contentGpArticleDocs .docs li,
.contentGpCategoryDoc .docs li,
.contentGpCategory ul li {
  margin-bottom: 3px;
  padding-left: 10px;
  background: url("./images/ic-list_blue.png") no-repeat left 0.35em;
}

.contentGpCategory ul.feed li {
  margin-bottom: 0;
  padding: 0;
  background: none;
}

.contentGpCategory .docs-category:before, .contentGpCategory .docs-category:after {
  content: "";
  display: table;
}
.contentGpCategory .docs-category:after {
  clear: both;
}
.contentGpCategory .docs-category {
  zoom: 1;
}
.contentGpCategory .docs-category section {
  float: left;
}
.contentGpCategory .docs-category section {
  width: 48.1%;
  margin: 0 20px 20px 0;
  border: 1px solid #ccc;
  border-radius: 10px;
  overflow: hidden;
}
.contentGpCategory .docs-category section:nth-child(even) {
  float: right;
  margin-right: 0;
}
.contentGpCategory .docs-category section h2 {
}
.contentGpCategory .docs-category section ul {
  padding: 10px;
}

@media screen and (max-width: 768px) {
  .contentGpCategory .docs-category section,
  .contentGpCategory .docs-category section:nth-child(2n) {
    display: block;
    float: none;
    width: auto;
    margin: 0 0 20px;
  }
  .contentGpCategoryDoc .docs,
  .contentGpCategory .docs-all, .contentGpCategoryCategory .docs {
    padding: 0 10px 10px;
  }
  .contentGpCategoryCategoryTypes .sports_shisetsu ul {
    padding: 0 15px 10px;
  }
  .contentGpCategoryCategory > section > ul li {
    display: block;
    width: auto;
  }
}

/* midashi
----------------------------------------------- */
.body h2 {
  clear: both;
  padding: 6px 12px 4px;
  border: 3px solid #BFD736;
  border-radius: 10px;
  background-color: #EEF7CF;
  font-size: 130%;
}
.body h2 + p img {
  margin-bottom: 10px;
}
.body h3:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 10px;
  background-color: #BFD736;
}
.body h3 {
  position: relative;
  padding: 6px 10px 4px 17px;
  border: 1px solid #ccc;
  border-radius: 10px;
  overflow: hidden;
}
.body h4 {
  padding: 5px 5px 5px 8px;
  border-left: 10px solid #BFD736;
  border-bottom: 2px solid #ccc;
  font-size: 100%;
}
.body th {
  background: #ffff99;
}
.maps h2, .rels h2, .tags h2 {
  padding: 6px 15px 4px;
  border-radius: 10px;
  background: #7AB3ED;
  font-weight: normal;
}
.maps h3 {
  padding: 5px 0;
  font-weight: normal;
}
.rels ul {
  margin: 0 10px;
  list-style-type: none;
}
.rels ul li {
  margin-bottom: 3px;
  padding-left: 10px;
  background: url("./images/ic-list_blue.png") no-repeat left 0.35em;
}

@media screen and (max-width: 768px) {
  .rels ul, .tags ul {
    margin-left: 25px;
  }
  .maps h3 {
    padding: 5px 10px;
  }
}

/* old google map for convert
----------------------------------------------- */
.body #map_canvas {
  position: relative;
  max-width: 100%;
  background-color: #ccc;
}
.body #map_canvas:after {
  content: "地図タブでGoogleマップを設定してください。";
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
  width: 100%;
  margin-top: -0.5em;
  font-size: 130%;
  text-align: center;
}

/* content tag, contentRankLastMonth
----------------------------------------------- */
.contentTagTag {
  margin: 0 0 20px;
  border-radius: 10px;
  border: 1px solid #ccc;
  overflow: hidden;
}
.contentTagTag h2 {
  padding: 10px 5px 13px 10px;
  border-bottom: none;
  border-radius: 10px 10px 0 0;
  background-color: #7AB3ED;
}
.contentTagTag ul {
  padding: 10px;
}
.contentTagTag ul li {
  margin-bottom: 3px;
  padding-left: 10px;
  background: url("./images/ic-list_blue.png") no-repeat left 0.35em;
}

@media screen and (max-width: 768px) {
  .contentTagTag ul, 
  .contentRankLastMonth ul {
    margin: 0 15px 20px;
  }
}

/* sitemap
----------------------------------------------- */
ul.sitemap:before, ul.sitemap:after {
  content: "";
  display: table;
}
ul.sitemap:after {
  clear: both;
}
ul.sitemap {
  zoom: 1;
  margin-bottom: 20px;
}
ul.sitemap ul.level1 {
  border-bottom: 1px dotted #888;
}
ul.sitemap li.level1 {
  padding: 8px 0;
  border-top: 1px dotted #aaa;
}
ul.sitemap li.level1 a {
  padding-left: 10px;
}
ul.sitemap ul.level2 {
  margin-top: 5px;
  padding: 10px 0px 10px 50px;
  border-top: 1px dotted #888;
}
ul.sitemap ul.level2 ul {
  padding: 10px 0 10px 50px;
}
ul.sitemap li.level2 {
  padding: 8px 0;
  border-bottom: 1px dotted #888;
}
ul.sitemap li.level2 a {
  margin-bottom: 3px;
  padding-left: 10px;
  background: url("./images/ic-list_blue.png") no-repeat left 0.35em;
}
ul.sitemap li.inquiry {
  margin: 0;
  border-bottom: none;
}
ul.sitemap ul.level2 ul {
  padding: 10px 0 10px 50px;
}

@media screen and (max-width: 768px) {
  ul.sitemap {
    padding: 0 10px;
  }
}

/* enquete
----------------------------------------------- */
.surveyForms .form {
  margin: 0 0 20px;
  padding: 15px;
  border: 1px solid #ccc;
  border-radius: 10px;
}
.new_survey_form_answer .questions .question {
  margin: 0 0 10px;
}
.new_survey_form_answer .questions .question .body p {
  text-indent: 0;
}
.questions .question select, .questions .question input[type="text"], .questions .question textarea {
  border: 1px solid #ccc;
}
.questions .question input[type="text"] {
  width: 600px;
}
.questions .question input[type="text"], .questions .question textarea {
  padding: 5px;
}
.new_survey_form_answer .questions .question input[type="radio"] {
  margin: 0;
  vertical-align: baseline;
}
.questions .question .note {
  color: #ee0000;
  font-weight: bold;
}
.new_survey_form_answer .submit {
  margin: 20px 0;
  text-align: center;
}
.new_survey_form_answer .submit input {
  margin: 0 5px;
  padding: 10px 15px 13px;
  border: none;
  border-radius: 10px;
  background-color: #e6e6e6;
  color: #000;
  cursor: pointer;
  text-decoration: none;
}
#errorExplanation {
  margin-bottom: 15px;
  padding: 10px;
  border: 1px solid #ffaaaa;
  border-radius: 7px;
  background-color: #fff3f3;
}
#errorExplanation h2 {
  color: #ee0000;
}
#errorExplanation ul {
  list-style-type: disc;
  margin: 0 10px 0 25px;
}
.surveyForm .back {
  margin: 20px 0;
  text-align: center;
}
.surveyForm .back a {
  display: block;
  width: 100px;
  margin: 0 auto;
  padding: 10px 15px 13px;
  border-radius: 10px;
  background-color: #e6e6e6;
  color: #000;
  text-decoration: none;
}

@media screen and (max-width: 768px) {
  .new_survey_form_answer .questions .question {
    padding: 0 10px;
  }
  .questions .question select, .questions .question input[type="text"], .questions .question textarea {
    max-width: 100%;
  }
  .questions .question input[type="text"], .questions .question textarea {
    padding: 5px 0;
  }
  .questions .question .body {
    padding: 0;
  }
  #errorExplanation {
    margin: 0 10px 15px;
  }
}


/* event calendar
----------------------------------------------- */
.calendarEvents h2 {
  margin-bottom: 10px;
  padding: 6px 15px 4px;
  background-color: #c7e3f7;
}
.upperPagination, .lowerPagination {
  margin: 10px 0;
}
.calendarEvents table {
  width: 100%;
  margin: 0 0 20px;
  border: 1px solid #ccc;
}
.calendarEvents table th,
.calendarEvents table td {
  padding: 5px 15px;
  border: 1px solid #ccc;
}
.calendarCalendarEvents table th,
.calendarCalendarEvents table td {
  width: 14%;
}
.calendarEvents table th {
  background: #ffff99;
  vertical-align: middle;
}
.calendarEvents table td {
  vertical-align: top;
}
.calendarMonthlyEvents table td,
.calendarTodayEvents table td {
  vertical-align: middle;
}
.calendarEvents table td.image {
  width: 130px;
  padding: 5px 0;
  text-align: center;
}
.calendarEvents table .image img {
  max-width: 120px;
  height: auto;
}
.calendarEvents table .event p {
  display: inline;
}
.calendarEvents table .event p.category {
  margin-left: 5px;
}
.calendarEvents table .date .closeDate {
  display: block;
}
.calendarEvents table .sun,
.calendarEvents table .holiday {
  color: #ee0000;
}
.calendarEvents table .sat {
  color: #3366ff;
}
.calendarCalendarEvents table p.category span {
  display: block;
}

/* schoolList
----------------------------------------------- */
.schoolList > div {
  width: 50%;
}
.schoolList div.leftCol {
  float: left;
}
.schoolList div.rightCol {
  float: right;
}

@media screen and (max-width: 768px) {
  .schoolList > div {
    float: none !important;
    width: auto !important;
  }
}