/*
Theme Name: kokutai3
Theme URI: https://afterimagedesigns.com/wp-bootstrap-starter/
Author: Afterimage Designs
Author URI: https://afterimagedesigns.com/
Description:  The best WordPress starter theme based on the most powerful frameworks in the world: "_s" (by Automattic, the main people behind WordPress development), Twitter Bootstrap (the most popular HTML, CSS, and JS framework for developing responsive, mobile first projects on the web) and Font Awesome (or Fontawesome, a full suite of 675+ pictographic icons for easy scalable vector graphics on websites). This theme, like WordPress, is licensed under the GPL. You can use this theme as base for your next WordPress theme project and you are allowed to remove the link at the footer or do whatever you want. Your feedback on how we can continuously improve this WordPress Starter Theme Bootstrap will be highly appreciated. Page templates includes Right-sidebar (default page template), Left-Sidebar, Full-Width, Blank with container, Blank without container Page. Other features - Currently using Bootstrap v4.0.0-beta.2 , Widgetized footer area, WooCommerce ready, Compatible with Contact Form 7, Compatible with Visual Composer, Compatible with Elementor Page Builder. This theme will be an active project which we will update from time to time. Check this page regularly for the updates.
Version: 3.0.4
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: wp-bootstrap-starter
Tags: blog, custom-menu, featured-images, threaded-comments, translation-ready, right-sidebar, custom-background, e-commerce, theme-options, sticky-post, full-width-template
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
	## Posts and pages
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
# Woocommerce
# Footer
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
body {
  margin: 0;
  padding:0;
  -webkit-font-smoothing: auto;
  font-family: "Sawarabi Gothic";
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  display: block;
}

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden],
template {
  display: none;
}

a {
  color:#097FAD;
  background-color: transparent;
}

a:active,
a:hover {
  color:#014d6b;
  outline: 0;
  text-decoration: none;
}

dfn {
  font-style: italic;
}

mark {
  background: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 1em 2.5rem;
}

hr {
  box-sizing: content-box;
  height: 0;
}

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
h1, h2, h3, h4, h5, h6 {
  clear: both;
  color: #24292e;
  font-weight: 600;
  margin-top: 24px;
  margin-bottom: 15px;
}
h1 {
  border-bottom: #eaecef;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  font-size: 32px;
  padding-bottom: 10px;
}
h2 {
  font-size: 24px;
  padding-bottom: 0.3em;
  border-bottom: 1px solid #eaecef;
  line-height: 1.25;
}
h3 {
  font-size: 18px;
  line-height: 25px;
}
h4 {
  font-size: 16px;
  line-height: 20px;
}
#primary h4 {
    background: url(/images/h3_bg.gif) repeat-x bottom;
    padding: 12px 5px;
    color: #111;
    font-weight: bold;
    font-size: 1.1em;
}
h5 {
  font-size: 14px;
  line-height: 17.5px;
}

p {
  margin-bottom: 1.5em;
}
h1.entry-title {
  font-size: 21px;
}
h3.widget-title {
  font-size: 1.2rem;
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
body {
  background: #fff;
  /* Fallback for when there is no custom background color defined. */
}

img {
  height: auto;
  /* Make sure images are scaled correctly. */
  max-width: 100%;
  /* Adhere to container width. */
}

figure {
  margin: 1em 0;
  /* Extra wide images within figure tags don't overflow the content area. */
}

table {
  margin: 0 0 1.5em;
  width: 100%;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
header#masthead {
  width:100%;
  margin-bottom: 0;
  background-color: #fff;
  padding: 0;
  position:fixed;
  left:0; top:0;
  z-index:100;
  border-bottom:1px solid #fff;
  box-shadow: 0 0 2px #999;
}

.navbar-brand > a {
  color: rgba(0, 0, 0, 0.9);
  font-size: 1.1rem;
  outline: medium none;
  text-decoration: none;
  color: #fff;
  font-weight: 700;
}

.navbar-brand > a:visited, .navbar-brand > a:hover {
  text-decoration: none;
}

#page-sub-header {
  position: relative;
  padding-top: 5rem;
  padding-bottom: 0;
  text-align: center;
  font-size: 1.25rem;
  background-size: cover !important;
}

#page-sub-header h1 {
  line-height: 1;
  font-size: 4rem;
  color: #563e7c;
  margin: 0 0 1rem;
  border: 0;
  padding: 0;
}

#page-sub-header p {
  margin-bottom: 0;
  line-height: 1.4;
  font-size: 1.25rem;
  font-weight: 300;
  color: #212529;
}
a.page-scroller {
  color: #333;
  font-size: 2.6rem;
  display: inline-block;
  margin-top: 2rem;
}

@media screen and (min-width: 768px) {
  #page-sub-header h1 {
    font-size: 3.750rem;
    line-height: 1;
  }

  #page-sub-header {
    font-size: 1.25rem;
  }
}
@media screen and (min-width: 992px) {
  #page-sub-header p {
    max-width: 43rem;
    margin: 0 auto;
  }
}
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
#masthead nav {
  padding-left: 0;
  padding-right: 0;
}

#masthead .navbar-nav > li > a {
  color: #cdbfe3;
  padding: 0.5rem;
  font-weight: 500;
  font-size: 14px;
}

#masthead .navbar-nav > li > a:hover {
  color: #fff;
  font-weight: 600;
  /*background: #f9f9f9;*/
}

.navbar-brand {
  height: auto;
}

.navbar-toggle .icon-bar {
  background: #000 none repeat scroll 0 0;
}

.dropdown-menu .dropdown-toggle::after {
  border-bottom: 0.3em solid transparent;
  border-left: 0.3em solid;
  border-top: 0.3em solid transparent;
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
  display: block;
}

.dropdown-item {
  line-height: 1.2;
  padding-bottom: 0.313rem;
  padding-top: 0.313rem;
}

.dropdown-menu {
  min-width: 12.500rem;
}

.dropdown .open .dropdown-menu {
  display: block;
  left: 12.250em;
  top: 0;
}

.dropdown-menu .dropdown-item {
  white-space: normal;
  font-size: 14px;
}

@media screen and (min-width: 37.5em) {
  .menu-toggle {
    display: none;
  }
}
@media screen and (min-width: 769px) {
  .dropdown-menu li > .dropdown-menu {
    right: -9.875rem;
    top: 1.375rem;
  }
}
@media screen and (max-width: 991px) {
  .dropdown-menu {
    border: medium none;
    margin-left: 1.250rem;
    padding: 0;
  }

  .dropdown-menu li a {
    padding: 0;
  }

  #masthead .navbar-nav > li > a {
    padding-bottom: 0.625rem;
    padding-top: 0.313rem;
  }

  .navbar-light .navbar-toggler {
    border: medium none;
    outline: none;
  }
}
.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
  margin: 0 0 1.5em;
  overflow: hidden;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
  float: left;
  width: 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
  float: right;
  text-align: right;
  width: 50%;
}
.comment-content.card-block {
  padding: 20px;
}

.navigation.post-navigation {
  padding-top: 1.875rem;
}

.post-navigation .nav-previous a,
.post-navigation .nav-next a {
  border: 1px solid #ddd;
  border-radius: 0.938rem;
  display: inline-block;
  padding: 0.313rem 0.875rem;
  text-decoration: none;
}

.post-navigation .nav-next a::after {
  content: " \2192";
}

.post-navigation .nav-previous a::before {
  content: "\2190 ";
}

.post-navigation .nav-previous a:hover,
.post-navigation .nav-next a:hover {
  background: #eee none repeat scroll 0 0;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
  word-wrap: normal !important;
  /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}
.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 0.313rem;
  line-height: normal;
  padding: 0.938rem 1.438rem 0.875rem;
  text-decoration: none;
  top: 0.313rem;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
  outline: 0;
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
  display: inline;
  float: left;
  margin-right: 1.5em;
}

.alignright {
  display: inline;
  float: right;
  margin-left: 1.5em;
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

a img.alignright {
  float: right;
  margin: 0.313rem 0 1.25rem 1.25rem;
}

a img.alignnone {
  margin: 0.313rem 1.25rem 1.25rem 0;
}

a img.alignleft {
  float: left;
  margin: 0.313rem 1.25rem 1.25rem 0;
}

a img.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.wp-caption.alignnone {
  margin: 0.313rem 1.25rem 1.25rem 0;
}

.wp-caption.alignleft {
  margin: 0.313rem 1.25rem 1.25rem 0;
}

.wp-caption.alignright {
  margin: 0.313rem 0 1.25rem 1.25rem;
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
  content: "";
  display: table;
  table-layout: fixed;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
  clear: both;
}

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget {
  margin: 0 0 1.5em;
  font-size: 14px;
  /* Make sure select elements fit in widgets. */
}
.widget select {
  max-width: 100%;
}

.widget_search .search-form input[type="submit"] {
  display: none;
}

.nav > li > a:focus,
.nav > li > a:hover {
  background-color: #eee;
  text-decoration: none;
}
.half-rule {
  width: 6rem;
  margin: 2.5rem 0;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
#content.site-content {
  margin-top:150px;
  padding-bottom: 0;
  padding-top: 0;
}

.sticky .entry-title::before {
  content: '\f08d';
  font-family: fontawesome;
  font-size: 1.563rem;
  left: -2.5rem;
  position: absolute;
  top: 0.375rem;
}

.sticky .entry-title {
  position: relative;
}

.single .byline,
.group-blog .byline {
  display: inline;
}

.page-content,
.entry-content,
.entry-summary {
  margin: 1.5em 0 0;
}

.page-links {
  clear: both;
  margin: 0 0 1.5em;
}

.page-template-blank-page .entry-content,
.blank-page-with-container .entry-content {
  margin-top: 0;
}

.post.hentry {
  margin-bottom: 4rem;
}

.posted-on, .byline, .comments-link {
  color: #9a9a9a;
}

.entry-title > a {
  color: inherit;
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
  word-wrap: break-word;
}

.bypostauthor {
  display: block;
}

.comment-body .pull-left {
  padding-right: 0.625rem;
}

.comment-list .comment {
  display: block;
}

.comment-list {
  padding-left: 0;
}

.comments-title {
  font-size: 1.125rem;
}

.comment-list .pingback {
  border-top: 1px solid rgba(0, 0, 0, 0.125);
  padding: 0.563rem 0;
}

.comment-list .pingback:first-child {
  border: medium none;
}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
  /* Theme Footer (when set to scrolling) */
  display: none;
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {
  display: block;
}

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
  max-width: 100%;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
  background: #f1f1f1 none repeat scroll 0 0;
  border: 1px solid #f0f0f0;
  max-width: 96%;
  padding: 0.313rem 0.313rem 0;
  text-align: center;
}
.wp-caption img[class*="wp-image-"] {
  border: 0 none;
  height: auto;
  margin: 0;
  max-width: 100%;
  padding: 0;
  width: auto;
}
.wp-caption .wp-caption-text {
  font-size: 0.688rem;
  line-height: 1.063rem;
  margin: 0;
  padding: 0.625rem;
}

.wp-caption-text {
  text-align: center;
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
  margin-bottom: 1.5em;
}

.gallery-item {
  display: inline-block;
  text-align: center;
  vertical-align: top;
  width: 100%;
}
.gallery-item .gallery-columns-2 {
  max-width: 50%;
}
.gallery-item .gallery-columns-3 {
  max-width: 33.33333%;
}
.gallery-item .gallery-columns-4 {
  max-width: 25%;
}
.gallery-item .gallery-columns-5 {
  max-width: 20%;
}
.gallery-item .gallery-columns-6 {
  max-width: 16.66667%;
}
.gallery-item .gallery-columns-7 {
  max-width: 14.28571%;
}
.gallery-item .gallery-columns-8 {
  max-width: 12.5%;
}
.gallery-item .gallery-columns-9 {
  max-width: 11.11111%;
}

.gallery-caption {
  display: block;
}

/*--------------------------------------------------------------
# Plugin Compatibility
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Woocommerce
--------------------------------------------------------------*/
.woocommerce-cart-form .shop_table .coupon .input-text {
  width: 8.313rem !important;
}

.variations_form .variations .value > select {
  margin-bottom: 0.625rem;
}

.woocommerce-MyAccount-content .col-1,
.woocommerce-MyAccount-content .col-2 {
  max-width: 100%;
}

/*--------------------------------------------------------------
## Elementor
--------------------------------------------------------------*/
.elementor-page article .entry-footer {
  display: none;
}

.elementor-page.page-template-fullwidth #content.site-content {
  padding-bottom: 0;
  padding-top: 0;
}

.elementor-page .entry-content {
  margin-top: 0;
}

/*--------------------------------------------------------------
## Visual Composer
--------------------------------------------------------------*/
.vc_desktop article .entry-footer {
  display: none;
}

.vc_desktop #content.site-content {
  padding-bottom: 0;
  padding-top: 0;
}

.vc_desktop .entry-content {
  margin-top: 0;
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
footer#colophon {
  color: #99979c;
  background-color: #f7f7f7;
  font-size: 85%;
}

.copyright {
  font-size: 0.875rem;
  margin-bottom: 0;
  text-align: center;
}

.copyright a, footer#colophon a {
  color: inherit;
}

@media screen and (max-width: 767px) {
  #masthead .navbar-nav > li > a {
    padding-bottom: 0.938rem;
    padding-top: 0.938rem;
  }
}
/*--------------------------------------------------------------
# Media Query
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Notebook
--------------------------------------------------------------*/
@media only screen and (max-width: 1280px) {
  html {
    font-size: 95%;
  }
}
/*--------------------------------------------------------------
## Netbook
--------------------------------------------------------------*/
@media only screen and (max-width: 1024px) {
  html {
    font-size: 93%;
  }
}
/*--------------------------------------------------------------
## iPad
--------------------------------------------------------------*/
@media only screen and (max-width: 960px) {
  html {
    font-size: 90%;
  }
}
/*--------------------------------------------------------------
## iPad
--------------------------------------------------------------*/
@media only screen and (max-width: 768px) {
  html {
    font-size: 88%;
  }
}
/*--------------------------------------------------------------
## iPad
--------------------------------------------------------------*/
@media only screen and (max-width: 480px) {
  html {
    font-size: 86%;
  }
}

/*-----------------------
---- 新着とお知らせのバッジ ----
-------------------------*/
.badge { font-weight: normal; border-radius: 0; font-size:.85rem; margin-right:1px; color:#fff; padding:.5rem; background:#999;}
.badge6 {   background-color:#196f5b; display:none;  }   /* お知らせ */
.badge7 {  background-color:#DD832A; }    /* 募集情報 */
.badge8 {    background-color:#23AC0E; }  /* イベント */
.badge9 {    background-color:#7274B4; }  /* 入札 */
.badge10 {    background-color:#00688A; } /* メディア */
.badge11 {  background-color:#E38692; }   /* トピックス */
.badge12 {    background-color:#999; }    /* 委員会 */
.badge13 {    background-color:#d9534f; } /* */
.badge30 {    background-color:#008BCE; } /* 太陽国体 */
.badge36 {    background-color:#d9534f; } /* 国体*/
.badge37 {    background-color:#75B650; } /* 大会 */
.badge38 {    background-color:#5D639E; } /* 応援メッセージ */

.badge_new {    background-color: #c32121;}



.wrapper {  padding: 5px; border:1px solid #CCC; background-color: #fff;}
.impactB{    font-weight: bold;}
.impact1{    font-size:1.2em;}
.impact2{    font-size:1.5em;}
.impact3{    font-size:2em;}
.impact4{    font-size:3em;}
.impact5 {   font-size:4em; }
.small8 {   font-size:.5em;}
.small9 {   font-size:.55em;}
.small10 {   font-size:.62em;}
.small12 {   font-size:.75em;}
.mg0 {  margin:0;}
.mgb {  margin-bottom: 30px;}
.mgb1 {  margin-bottom: 10px;}
.mgb5 {  margin-bottom: 50px;}
.mgb8 {  margin-bottom: 80px;}
.w100 { width:100%;}
.center { text-align: center; }
.left { text-align: left; }
.right { text-align: right; }
.imghover:hover { opacity:.8;}
.line2 {    line-height: 2em;}
.red { color: #ff0000;}
.gray { color: #888;}
.orange { color: #ff7f00;}
.doubleB { border:3px double #333;}
.pd1 {  padding: 10px; }
.pd2 {  padding: 20px; }
.f-xs { font-size:.8rem; }
.f-sm { font-size:.9rem; }
.f-lg { font-size:1.2rem; }
.f-xl { font-size:1.5rem; }
.f-xl2 { font-size:2rem; }

.bg_white { background-color:white; }

#pagetop { position:fixed; right:20px; bottom: -260px; }
.impact_btn { width: 100%; border: 1px solid #111; text-align:center; display:block; padding: 1rem; color:#111; position:relative; text-indent: .2rem; letter-spacing: .2rem; margin:.5rem 0;}
.impact_btn:after { position: absolute; right: 1rem; content:"\f105"; font-family: "fontawesome" }
.impact_btn:hover { background-color:#333; color:#fff; }
.w300px { width:300px; margin:0 auto; }
.impact_btn2 { width: 90%; border: 1px solid #111; text-align:center; display:inline-block; padding: .3rem 1rem; color:#111; position:relative; margin:.5rem 0; border-radius: 2rem; font-size:.9rem; background:#fff;}
.impact_btn2:after { position: absolute; right: 1rem; content:"\f105"; font-family: "fontawesome" }
.impact_btn2:hover { background-color:#333; color:#fff; }


/* message popup */

#popup { display:none; position:fixed; left:0; top:0; width:100%; height: 100%; background:rgba(0,0,0,.8); z-index:1000; }
#popup >div {    position: fixed; left: 0; right: 0; text-align: center; top: 3%; }
#popup >div >div { display:inline-block; background-color:#fff; padding:1rem; max-height:80vh; overflow-y: auto; width:530px; }
#popup >div >div >p { margin:0; max-width:500px; text-align: left;}
@media(max-width:500px){
  #popup > div >div { width: 90%; }
}

/* header custom */
h1.entry-title {
  font-size:1.7rem;
    font-weight: bold;
    color: #464637;
    background: url(/images/h1_under.png) repeat-x bottom;
    padding-bottom: 15px;
    border: none;
    padding-top: 15px;
}
h1.entry-title:before {
    content: "";
    width: 36px;
    height: 23px;
    display: inline-block;
    margin-right: .5em;
    background: url(/images/h1_hana.png);
}
h2 {
    font-weight: bold;
    color: #333;
    background: url(/images/h2_under.png) repeat-x bottom;
    padding-bottom: 15px;
    font-size: 1.5rem;
    margin: 70px 0 20px 0;
    border:none;
}
.entry-content >h2:nth-of-type(1) { margin-top:20px; }
h3 {
    background: url(/images/h3_bg.gif) repeat;
    padding: 12px 5px;
    font-size: 1.2em;
    font-weight: bold;
    color: #111;
    margin: 50px 0 20px 0;
}


/* table custom */
.tbl1 {
    border-collapse: collapse;
    width: 100%;
    font-size: .9em;
}
.tbl1 th {
    text-align: center;
    color: #111;
    background-color: #CFE283;
}
.tbl1 th, .tbl1 td {
    border: 1px solid #333;
    padding: 12px 5px;
}

/* link custom */
a[target="_blank"]:after{
  margin-left: .5rem;
  content: "\f08e";
  font-family: fontawesome;
}
a[target="_blank"].no_icon:after {
  content: "";
}
a[href$=".pdf"]:before{
    font-family:fontawesome;
    content: "\f1c1";
    color: #ff0000;
    margin-right:.5rem;
}
a[href$=".xlsx"]:before, a[href$=".xls"]:before{
    font-family:fontawesome;
    content: "\f1c3";
    color: #107C41;
    margin-right:.5rem;
}
a[href$=".docx"]:before, a[href$=".doc"]:before{
    font-family:fontawesome;
    content: "\f1c2";
    color: #185ABD;
    margin-right:.5rem;
}

/* pankuzu */
.pankuzu {padding-top: 15px; position:relative; display:inline-block; margin-bottom:12px; }
.pankuzu:before { width:100%; background-color:#F5E5E5; position:absolute; height: .5rem; content:" "; bottom:0; left:0; z-index:-1;}

/* table */
#primary table {
    border-collapse: collapse;
}
#primary table th {
    font-weight:bold;
    text-align: center;
}
#primary table th, #primary table td {
    padding: 7px;
    border: 1px solid #CCC;
}

/* child links */
.child_area > div { position:relative; }
.child_area a { display:  flex; background-color: #f0f0e1; border:1px solid #ccc; text-align:  center; height: 3rem; }
.child_area a > span { display: flex; flex-direction:column; justify-content: center; align-items: center; padding: 0 2px 0 25px; }
.child_area a > span b { font-weight:normal; font-size:.6em; }
.child_area a:before { font-family:"fontawesome"; content:"\f150"; position:absolute; left: 8px; top:25%; }
.child_area a.active { color:#fff; background: #333; }


/*
 * header
 */
#totalCenter { font-size:1rem; text-align: center; display: flex;}
#totalCenter a { display: inline-flex; width:33%; text-align: center; border-bottom: 3px solid #ccc;margin:0 1px; position:relative; align-items: center;}
#totalCenter a:hover { text-decoration: none; }
#totalCenter a:nth-child(1){border-color:#D67878; }
#totalCenter a:nth-child(1):hover, #totalCenter a:nth-child(1).active{ background-color:rgba(214,120,120, .3);}
#totalCenter a:nth-child(2){border-color:#018CCF;}
#totalCenter a:nth-child(2):hover, #totalCenter a:nth-child(2).active{ background-color: rgba(1,140,207, .3); }
#totalCenter a:nth-child(3){border-color:#62A933;}
#totalCenter a:nth-child(3):hover, #totalCenter a:nth-child(3).active{ background-color: rgba(98,169,51, .3); }
#totalCenter a>span { width:100%; color:#111; font-weight: 800; }
#totalCenter a>span>img {padding:0 1rem;}
#totalCenter a:after { font-family: "fontawesome"; content:"\f0DD"; position: absolute; left:0; right:0; bottom:0; color: transparent; }
#totalCenter a.active:after {color: #999;}
#totalLeft a{ position:absolute; left:0; bottom:0;}
#totalRight { display:flex;}
#totalRight .hover_link { display:block; font-size:9px; padding:7px 5px; margin-top: 12px; text-align: center; color:#fff;}
#totalRight .hover_link > p { display:none; position:absolute; left:0; top:29px; width:100%; z-index:3; border-top:1px dotted #fff;}
#totalRight .hover_link > p > a { width: 100%; display:block; padding: .3rem 0; color:#fff; font-size:1rem;}
#font_size_change { background-color:#434250; border-right:1px solid #fff; }
#font_size_change > p { background-color:#434250;}
#font_size_change > p > a:hover { background: #777;}
#color_change { background-color:#2893FD; border-left:1px solid #fff;}
#color_change > p {  background-color:#2893FD; }
#color_change > p > a:nth-of-type(1){background-color:#f0f0e1; color:#111!important;}
#color_change > p > a:nth-of-type(2){background-color:#000; color:#ff0!important;}
#color_change > p > a:nth-of-type(3){background-color:#ff0; color:#000!important;}
#color_change > p > a:nth-of-type(4){background-color:#009; color:#ff0!important;}
#google_search { padding:8px 0 0; position:relative; }
#google_search input { width:100%; border-radius: 5px; border:1px solid #777; padding: 5px; }
#google_search a { position:absolute; right:.5rem; top:0; top:calc(50% - .6rem);font-family:'fontawesome'; content:"\f002"; color:#f1848e; }


#sub_header1 { background:#D47978; margin-top:5px; }
#sub_header1 a { display:block; text-align:center; padding: 15px 2px; color:#fff; font-size:.9rem; }
#sub_header1 a:hover, #sub_header1 a.active { background-color: #9a5656; }

#sub_header2 { background:#75B650; margin-top:5px; }
#sub_header2 a { display:block; text-align:center; padding: 15px 2px; color:#fff; font-size:.9rem; }
#sub_header2 a:hover, #sub_header2 a.active { background-color: #4d7934; }
@media( min-width:768px) and ( max-width:991px ){
  #sub_header1 a, #sub_header2 a { font-size:.7rem; }
}

/*
 * footer
 */

#footer_img { padding:0; }
#footer_img > img { width:100%; }
footer h3 { font-size:1.3rem; margin-top:50px;}
footer h4 { font-size:1.1rem; font-weight: normal; margin-top:0; }
footer address a { text-decoration: underline; }
#footer-links{ background: #333; padding: 20px 0; }
#footer-links a { display: inline-block; margin-right:1.5rem; color:#fff; font-size:.9rem; }
#footer-copyright { background: #111; color:#fff; padding:10px 0; text-align:center; font-size:.8rem; }

/*
 * Sidebar
 */
#secondary h5 { color: #fff;
  margin: 0;
    font-size: 1.1rem;
    text-align: left;
    padding: 1rem .5rem;
    line-height: 1.3rem;
    letter-spacing: 0;
}
.frames { border-radius: 7px; border:1px solid #EDAE0B; margin: 20px 0 10px; position:relative; padding-bottom: 7px;}
.frames2 a { display:block; padding:.2rem .8rem; color:#111; background: #fff;margin-bottom:1px; border:1px solid #fff;}
.frames2 a:after { position: absolute; right: .5rem; content:"\f105"; font-family: "fontawesome" }
.frames2 a:hover,
.frames2 li.active a { background-color:transparent; color:#fff;}
.frames2 li {list-style: none;}
#sidebanner { margin-top: -180px; display:flex; justify-content: center; margin-bottom:20px; }
#message_f { margin-top: -60px; background: #5D639E; border:1px solid #5D639E; }
#message_f p { font-size:1rem; text-align: center; margin-bottom: 3px; color:#fff; }
#message_f p span { color: #fff; font-size:1.9rem; }
#message_f >a { width:100%; height: 150px; background-position: center center;background-size: cover; display: block; }
#dance_f{ background-color: #EDAE0B; border-color:#EDAE0B; padding-bottom:0; margin-top:0px; border-radius:7px; }
#dance_f>h5 {background:url(/img2018/cctr_dance.png) no-repeat right center; background-size: contain;}
#movie_f{ background-color: #C7243A; border-color:#C7243A; padding-bottom:0; margin-top:0px; border-radius:7px; }
#movie_f>h5 {background:url(/img2021/movie_image.png) no-repeat right center; background-size: contain; padding:25px 20px;}
/*#movie_f>h5 {padding:15px 20px; text-align: center;}*/
#kokutai_menu { background-color:#D47978; border-color:#D47978;}
#kokutai_menu > img { position:absolute; right:0; top: -10px; height: 60px;}
#taikai_menu { background-color:#22AC0E; border-color:#22AC0E;}
#taikai_menu > img { position:absolute; right:0; top: -10px; height: 60px;}
#kyotsu_menu { background-color:#008BCE; border-color:#008BCE;}
#kyotsu_menu h5 { text-align: center; }
.close_area { background: transparent ; text-align: right;  }
.close_area > a { font-size:18px; color:#fff; }
@media screen and (max-width:992px){
  #sidebanner { margin-top: 20px; }
  #message_f { margin-top:0; }
  #dance_f {margin-top: 20px;}
}
@media screen and (max-width:767px){
  #sidebar_menus { display:none; position:fixed; top:0px; bottom:0; left:0; right:0; padding:10px; background:rgba(0,0,0,.8); z-index:2000; overflow-y: auto; }
}


/* SP PC ONLY */
.sp_only { display:none!important ; }
.pc_only { display:block!important  ; }
@media screen and (max-width: 767px) {
  .sp_only { display:block!important  ; }
  .pc_only { display:none!important ; }
  #pagetop img { width: 80px; }
  #content.site-content { margin-top: 40px; }
}

.side_bnr { display:block; margin-bottom:10px;}
.side_bnr:after { content:none!important;}


.p1 { text-indent:-1em; padding-left:1em; }
.p2 { text-indent:-2em; padding-left:2em; }
.p3 { text-indent:-3em; padding-left:3em; }
.p4 { text-indent:-4em; padding-left:4em; }


.grecaptcha-badge { display:none; }

pre {white-space: pre-wrap;}