@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/

/*グーグルマップ*/
.button-map{
border:1px solid #000;
padding:5px;
margin:5px;
font-size: 90%;
}

.button-map a{
text-decoration:none;
opacity: 0.8;
color:inherit;
}


.button-map a hover{
text-decoration:none;
}

/*カテゴリーページのカテゴリ表示と投稿日の非表示*/
.archive .entry-category{
	display:none;
}

.archive .post-date{
	display:none;	
}

/*各カテゴリーの人気雀荘一覧*/
.category-name{
background-color: #292929;
    color: #fff;
    padding: 10px 10px 10px 10px;
    font-size: 170%;	
}

.category-name-waku{
border:solid 1px #444;
margin-bottom: 60px;
}

.category-name-waku ul{
margin-top: 1.5em;
margin-bottom: 1.5em;
}

.category-name-waku p{
	margin-bottom:0;
	text-align: center;
}

.waku{
	border:solid 1px #000;
}

.waku ul{
	margin-top: 1.8em;
}

/*全国エリア　TOPページ*/

.area-list {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
}

.area-list a {
    flex-basis: calc(20% - 10px); 
    background-color: #fff;
    border: solid 1px;
    padding: 10px;
    text-align: center;
	text-decoration: none;
    font-size: 90%;
    border: 1px solid #333;
    position: relative;
    margin: 5px;
}


.area-list a.voice-button {
    display: inline-block;
    margin-top: 15px;
    padding: 10px 20px;
    background-color: #0073aa;
    color: #ffffff;
    text-decoration: none;
    border-radius: 5px;
    transition: background-color 0.2s;
    text-align:center;
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
}

.area-list .inner {
	width: calc(100% - 50px);
	max-width: 1000px;
	margin: 0 auto;
	padding: 0px 0;
}

.area-list .title {
    color: #444;
    font-weight: 700;
    text-align: left;
    font-size: 125%;
    line-height: 1.6;
    margin: 0;
}

.area-list .area-text {
    display: inline-block;
    text-align:left;
    font-size: 90%;
	margin-bottom: 70px;
}

.area-list .sub {
	color: #444;
	text-align: center;
	font-size: 90%;
	line-height: 1.6;
}

.area-list .list {
	margin-top: 40px;
}
.area-list .list ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.6;
	margin: 0;
	padding: 0;
}
.area-list .list ul:after {
	content: '';
	display: block;
	width: calc(100% / 3 - 6px);
}
.area-list .list li {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	width: calc(100% / 3 - 5px);
	padding: 20px 10px;
	background: rgba(255,255,255,.77);
	border: 3px solid #2ca9e1;
}
.area-list .list li:nth-child(n+4) {
	margin-top: 30px;
}

.area-list h3 {
    position: relative;
	padding: 70px 0px 10px 0px;
    text-align: center;
	font-size: 2vw;
	font-family: source-han-serif-japanese,serif;
}

.area-list a.voice-button {
display: inline-block;
margin-top: 15px;
padding: 10px 20px;
background-color: #0073aa;
color: #ffffff;
text-decoration: none;
border-radius: 5px;
transition: background-color 0.2s;
text-align:center;
}


@media screen and (max-width: 768px){
    .area-list .title {
        color: #444;
        font-weight: bold;
        text-align: center;
        font-size: 100%;
        line-height: 1.6;
    }

    .area-list .sub {
        color: #444;
        text-align: center;
        font-size: 90%;
        line-height: 1.6;
    }

.area-list a {
	flex-basis: calc(30% - 3px); 
    background-color: #fff;
    border: solid 1px;
    padding: 4px;
    text-align: center;
    font-size: 90%;
    border: 1px solid #333;
    position: relative;
    margin: 5px;
}
	
.area-list a.voice-button {
        padding: 5px 4px;
        width: 85%;
}
}

.widget_nav_menu ul {
    padding-left: 10px;
    padding-right: 10px;
}

.widget-sidebar ul li a::before {
    font-family: "Font Awesome 5 Free";
    content: "\f105";
    font-weight: 900;
    font-size: 18px;
    list-style: none;
    padding-left: 10px;
    padding-right: 3px;
    color: #3f3f3f;
    margin-left: -1.3em;
    text-indent: -1.4em;
}

.widget_block ul li a {
	padding-left: 25px;
}

.custom-html-widget li,li a{
	list-style:none;
	text-decoration:none;
}





/*横向き棒グラフ*/
/* 棒グラフ3 CSS Only */
.bar-graph .title {
  -webkit-animation: fade-in-text 2.2s 0.1s forwards;
  -moz-animation: fade-in-text 2.2s 0.1s forwards;
  animation: fade-in-text 2.2s 0.1s forwards;
  opacity: 0;
}

.bar-graph-horizontal {
  max-width: 100%;
}

.bar-graph-horizontal > div {
  float: left;
  margin-bottom: 8px;
  width: 100%;
}

.bar-graph-horizontal .title {
  float: left;
  margin-top: 47px;
  width: 50px;
}

.bar-graph-horizontal .bar {
  border-radius: 3px;
  height: 55px;
  float: left;
  overflow: hidden;
  position: relative;
  width: 0;
}

.bar-graph-one .bar::after {
  -webkit-animation: fade-in-text 2.2s 0.1s forwards;
  -moz-animation: fade-in-text 2.2s 0.1s forwards;
  animation: fade-in-text 2.2s 0.1s forwards;
  color: #fff;
  content: attr(data-percentage);
  font-weight: 700;
  position: absolute;
  right: 16px;
  top: 12px;
}

.bar-graph-one .bar-one .bar {
  background-color: #6bb6ff;
  -webkit-animation: show-bar-one 1.2s 0.1s forwards;
  -moz-animation: show-bar-one 1.2s 0.1s forwards;
  animation: show-bar-one 1.2s 0.1s forwards;
}

.bar-graph-one .bar-two .bar {
  background-color: #6bb6ff;
  -webkit-animation: show-bar-two 1.2s 0.2s forwards;
  -moz-animation: show-bar-two 1.2s 0.2s forwards;
  animation: show-bar-two 1.2s 0.2s forwards;
}

.bar-graph-one .bar-three .bar {
  background-color: #6bb6ff;
  -webkit-animation: show-bar-three 1.2s 0.3s forwards;
  -moz-animation: show-bar-three 1.2s 0.3s forwards;
  animation: show-bar-three 1.2s 0.3s forwards;
}

.bar-graph-one .bar-four .bar {
  background-color: #59b3fc;
  -webkit-animation: show-bar-four 1.2s 0.4s forwards;
  -moz-animation: show-bar-four 1.2s 0.4s forwards;
  animation: show-bar-four 1.2s 0.4s forwards;
}

.article h1 {
    background-color: #292929;
    color: #fff;
    padding: 10px 10px 10px 10px;
    font-size: 170%;
}

/*各教科の一覧ページ専用*/

.kamokubetu-list{
	padding-top:30px;
}

.new-grid-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 20px;
  margin: 0 auto;
  max-width: 100%;
  padding: 0 1em;
	padding-top: 30px;
}

.new-grid-item {
  border: 0px solid #ccc;
  padding: 5px;
  box-sizing: border-box;
  text-align: left;
}

.new-title {
  margin-top: 0;
  margin-bottom: 15px;
  line-height: 1.2em;
}

.new-title a{
  text-decoration:none;
}

.new-title:before {
    font-family: "Font Awesome 5 Free";
    content: "\f105";
    font-weight: 900;
    color: #00a3af;
    padding-right: 5px;
    font-size: 18px;
    list-style: none;
}

@media (max-width: 769px) {
.new-grid-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 0px;
  margin: 0 auto;
  max-width: 100%;
  padding: 0;
}
.new-title{
	font-size:90%;
	margin-bottom: 4px;
	line-height: 0.2em;
	}
	
	
	.new-grid-container {
grid-template-columns: repeat(2, 1fr);
  }
}

/* Pager */
.page-numbers {
  display: inline-block;
  margin: 0 5px;
  padding: 5px 10px;
  border: 1px solid #ccc;
  text-decoration: none;
  color: #333;
}

.page-numbers.current {
  background: #0073aa;
  color: #fff;
}

.page-numbers:hover {
  border-color: #0073aa;
}

.pagination-container .page-numbers {
    display: inline-block;
    margin: 0 3px;
}

/* Add these styles */
ul.page-numbers {
  list-style-type: none;
  display: flex;
  justify-content: center;
  padding: 0;
	border: none;
}





  /*ニュース関連*/
 
.newsmaintitle {
	padding-bottom: 25px;
}

.newstitle {
	font-size: 25px;
	font-weight: bold;
}

.newsline {
	text-align: left;
}

.blog-list-area , .top-news a{
    text-decoration:none;
}
  
.top-news-area span.date {
    color: #444;
}
  
.top-news-area .top-news {
    border: 2px solid #edebf0;
    border-radius: 6px;
    padding: 16px;
    margin-bottom: 30px;
	text-align:center;
	margin-top: 50px;
	font-size: 90%;
}
  
  .blog-list-area .blog-list {
    border: 2px solid #edebf0;
    border-radius: 6px;
    padding: 16px;
    margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
.blog-list a{
	padding: 0px 0px 3px 0px;
    display: inline-block;
    padding-left: 3px;
}
	
.blog-list :hover{
	color: #000;
}	
	
}







/* 絞り込み検索フォーム */
.my_searchform input, .my_searchform select {
	margin-bottom: 0.5em;
}


/*横2列ボックス*/
.grid-container {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 40px;
}

.grid-item {
border: 1px solid #ccc;
padding: 15px;
box-sizing: border-box;
text-align: left;
grid-template-rows: auto 1fr auto;
display: flex;
flex-direction: column;
}

.content-wrapper {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

.thumbnail-container {
flex-grow: 0;
}

.thumbnail-image {
width: 100%;
height: 150px;
object-fit: cover;
}

.grid-item h3 {
margin-top: 0;
margin-bottom: 15px;
line-height: 1.2em;
border: 0;
padding: 10px 0px;
}

.grid-item a.button {
display: inline-block;
margin-top: 15px;
padding: 10px 20px;
background-color: #0073aa;
color: #ffffff;
text-decoration: none;
border-radius: 5px;
transition: background-color 0.2s;
text-align:center;
}

.grid-item a.button:hover {
background-color: #005a87;
}

@media (max-width: 769px) {
.grid-container {
grid-template-columns: 1fr;
}
}




/*目次*/
.article .toc {
	width: 100%;
	max-width:600px;/*外枠の最大幅を指定*/
	border-color: #f0f0f0;/*外枠の線の色*/
	font-size: 85%;
	box-sizing: border-box;
	margin: 30px auto;/*上下に30pxマージン・左右中央寄せ*/
	padding: 1em 2em;
	line-height: 1.8;
}

.article .toc ul {
	margin: 0;
	padding-left: 0;
	line-height: 1.5;
}

.article .toc ul li {
	margin:1px;
	text-indent: 0;
}

.article .toc ul a {
	display: block;
	padding: 10px 0;
	text-decoration: none;
	color: #777; /*リンク色*/
	border-bottom: 1px dotted #ddd; /*リンク下線*/
}

.article .toc li > ul {
	padding-left: 5%; /*hタグの種類で先頭左スペースのサイズが変わる*/
}
/*目次*/

/*大学一覧ボックス*/

.list-uni .inner {
	width: calc(100% - 50px);
	max-width: 1000px;
	margin: 0 auto;
	padding: 0px 0;
}
.list-uni .title {
	color: #fff;
	text-shadow: 0 0 12px #000;
	font-weight: bold;
	text-align: center;
	font-size: 36px;
	line-height: 1.6;
}
.list-uni .list {
	margin-top: 40px;
}
.list-uni .list ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.6;
	margin: 0;
	padding: 0;
}
.list-uni .list ul:after {
	content: '';
	display: block;
	width: calc(100% / 3 - 6px);
}
.list-uni .list li {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	width: calc(100% / 3 - 20px);
	padding: 38px 20px;
	background: rgba(255,255,255,.77);
	border: 1px solid #ccc;
	border-radius: 5px;
}
.list-uni .list li:nth-child(n+4) {
	margin-top: 30px;
}

@media screen and (max-width: 1400px) {
	.list-uni .title {
		font-size: 27px;
	}
}

@media screen and (max-width: 1270px) {
	.list-uni .list ul {
		font-size: 16px;
	}
	.list-uni .list li {
		width: calc(100% / 3 - 10px);
		padding: 20px 5px;
	}
	.list-uni .list li:nth-child(n+4) {
		margin-top: 13px;
	}
}

@media screen and (max-width: 767px) {
	.list-uni .inner {
		width: calc(100% - 5px);
		padding: 10px 0;
	}
	.list-uni .title {
		font-size: 18px;
	}
	.list-uni .title br {
		display: none;
	}
	.list-uni .list {
		margin-top: 20px;
	}
	.list-uni .list ul {
		font-size: 100%;
	}
	.list-uni .list ul:after {
		display: none;
	}
	.list-uni .list li {
		width: calc(47% - 2px);
		padding: 15px 7px;
		text-align: left;
	}
	.list-uni .list li:nth-child(n+3) {
		margin-top: 4px;
	}
}


@media screen and (max-width: 480px) {
	.list-uni .list li {
		width: calc(47% - 2px);
		padding: 15px 7px;
		text-align: left;
	}
}

@media screen and (max-width: 767px) {
.about h3,.features h3,.list-uni h3 {
	padding: 50px 0px 15px 0px;
    text-align: center;
    font-size: 120%;
    line-height: 30px;
    font-weight: bold;
}

.list-uni h3 {
    position: relative;
	padding: 70px 0px 10px 0px;
    text-align: center;
	font-size: 170%;
	font-family: source-han-serif-japanese,serif;
}
/*大学一覧ボックス*/

	
	
	
	
/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}
