@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
*/

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

/* 全体 */
body {
  overflow-x: hidden;
}

.no-sidebar .content .main{
  padding-bottom:0;
}
.body .article {
  margin-bottom: 0;
}
.entry-content {
  margin-top: 1em;
  margin-bottom: 0;
}


/* 見出し */
.article h2 {
  color: #333;
  background-color: transparent;
  margin-top: 0;
  padding: 0 0 20px;
  text-align: center;
  font-size: 17px;
  font-weight: normal;
  position: relative;
}
.article h2::after {
  position: absolute;
  content: '';
  width: 70px;
  bottom: 0;
  height: 1px;
  background-color: #333;
  right: 50%;
  transform: translateX(50%) translateY(0%);
}
.article h3 {
  background-color: transparent;
  font-size: 16px;
  font-weight: normal;
  position: relative;
  border: none;
  border-left: double #333;
  padding: 3px 0 3px 15px;
}

/* 定義リスト */
.article dl {
  border-top: dotted 1px #c8c8c8;
  padding: 1.5%;
  display: flex;
  margin-bottom: 0;
}
dl:first-of-type {
  border-top: solid 1px #c8c8c8;
}
dl:last-of-type {
  border-bottom: solid 1px #c8c8c8;
}
dt, dd {
  line-height: 1.8;
}
dd {
  margin: 0;
}

/* ページ送り */
.page-numbers {
  border-radius: 0;
  border-color: #c8c8c8;
}
.pagination .current {
  background-color: #eed8de;
}

/* ヘッダー */
.header {
  height: unset;
}
.header-container-in.hlt-top-menu .tagline {
  display: block;
  font-size: 10px;
  margin: 0 0 .6em;
}
#header .tagline {
  display: none;
}
.logo-text {
  padding: .6em 0;
  font-size: 1em;
  line-height: 1;
}

/* ナビゲーションメニュー */
.navi {
  border-top: solid 1px #c8c8c8;
  border-bottom: solid 1px #c8c8c8;
}
.navi-in > ul {
  justify-content: left;
}
.navi-in > ul li {
  width: 20%;
  line-height: unset;
}
.navi-in > ul li a {
  border-bottom: solid 1px #c8c8c8;
  border-right: solid 1px #c8c8c8;
  height: 61px;  display: flex;
  text-align: center;
  justify-content: center;
  align-items: center;
}
.navi-in > ul > li:nth-of-type(5n+1) a,.navi-in > ul > li ul li a {
  border-left: solid 1px #c8c8c8;
}
.navi-in > ul li a:hover {
  background: #eed8de;
}

/* 各ページ・投稿 題名 */
.article h1, .entry-title, .archive-title {
  color: #bc153e;
  margin: 25px 0 69px;
  padding: 0;
  text-align: center;
  font-size: 24px;
  font-weight: normal;
  position: relative;
  display: block;
}
.article h1::before, .entry-title::before, .archive-title::before {
  position: absolute;
  content: '';
  width: 100%;
  top: 50%;
  height: 1px;
  background-color: #bc153e;
  left: 0;
  z-index: -1;
}
.article h1 span, .entry-title span, .archive-title span {
  background: #fff;
  padding: 0 10px;
}
.page .post-date {
  display: none;
}

/* 各ページ・投稿 背景 */
.entry-content > section.wp-block-group {
  margin: 0;
  border-top: solid 1px #c8c8c8;
  padding: 50px 0;
  position: relative;
}
.entry-content > section.wp-block-group::before {
  position: absolute;
  content: '';
  width: 100vw;
  height: 100%;
  top: 0;
  left: calc(50% - 50vw);
  z-index: -1;
}
.entry-content > section:nth-of-type(2n+1)::before {
  background-color: #f8f8f8;
}
.entry-content > section:last-of-type {
  border-bottom: solid 1px #c8c8c8;
}

/* リンクバナー */
.linkbnr-wrap {
  display: flex;
  justify-content: space-between;
  gap: 30px;
  flex-wrap: wrap;
}
.linkbnr {
  height: 180px;
  border: solid 1px #c8c8c8;
  flex-grow: 0;
  flex-basis: calc(50% - 15px);
  background: #fff;
  margin-bottom: 0 !important;
}
.linkbnr a {
  width: 100%;
  height: 100%;
  display: flex;
  text-align: center;
  justify-content: center;
  align-items: center;
}
.linkbnr-bgon {
  position: relative;
  background-position: center;
  background-size: cover;
  background-blend-mode: luminosity;
  background-image: url(http://www.college-festa.com/wp2/wp-content/uploads/2022/04/linkbnr-bg.png);
  background-color: #ffe6f9;
}
.linkbnr-bgon::before {
  content: '';
  width: 10px;
  height: 100%;
  left: 10px;
  position: absolute;
  background-color: #fff;
}
.link-collefes-achieves::before {
  background-color:  #333;
}
.link-collefes-forcommittee::before {
  background-color:  #333;
}
.link-cftalent-audition::before {
  background-color:  #333;
}
.linkbnr-bgon a {
  color: #333;
  font-size: 28px;
  text-decoration: none;
  transform: rotate(0deg);
}
.linkbnr-bgon a span {
  transform: rotate(-7deg);
}
.linkbnr-bgon a:hover span {
  transform: rotateZ( 353deg );
  transition: 0.6s;
}

/* 問合せバナー */
.contactbnr-wrap {
  display: flex;
  justify-content: center;
  gap: 30px;
  flex-wrap: wrap;
}
.contactbnr {
  height: 180px;
  border: solid 1px #c8c8c8;
  width: 100%;
  background-image: url(http://www.college-festa.com/wp2/wp-content/uploads/2022/03/icatch-contact.jpg);
  background-position: center;
  background-size: cover;
  background-color: rgba(255, 255, 255, 0.5);
  background-blend-mode: color;
}
.contactbnr-sns {
  font-size: 20px;
  margin: 0 20px;
}
.contactbnr a {
  width: 100%;
  height: 100%;
  display: flex;
  text-align: center;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  font-size: 24px;
  color: #000;
}
.fab.fa-twitter {
  color: #1DA1F2;
}
.fab.fa-instagram {
  color: #000;
}

/* リンクボタン */
.linkbtn a {
  border: solid 1px #c8c8c8;
  padding: 5px 30px;
}

/* イベント等サムネイル */
.item-tmb-wrap {
  display: flex;
  justify-content: left;
  gap: 30px;
  flex-wrap: wrap;
}
.item-tmb {
  flex-basis: calc((100% - 60px) / 3);
  margin-bottom: 0 !important;
}
.item-tmb figure.wp-block-image {
  margin-bottom: 10px;
  border: solid 1px #c8c8c8;
  position: relative;
  /* width: calc((100vw - 140px)/3);
  max-width: 313.333px;
  height: calc((70.71vw - 107.994px)/3);
  max-height: 222.133px; */
  box-sizing: border-box;
  background: #fff;

  display: inline-flex;
}
.item-tmb figure.wp-block-image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/* フッター */
#footer {
  margin-top: 0;
}
.footer-bottom-logo {
  float: none;
  position: relative;
}
.footer-bottom-content {
  float: none;
  text-align: center;
}

/* HP */
/* アピールエリア */
.appeal {
  height: 50vw;
  background-size: cover;
  background-position: center;
}

/* 題名非表示 */
.front-top-page .entry-title {
  display: none;
}
.front-top-page .content,.front-top-page .entry-content {
  margin-top: 0;
}
.front-top-page .main {
  padding-top: 0;
}
.front-top-page .date-tags {
  margin-bottom: 0;
}
.front-top-page .entry-content > section.wp-block-group:first-of-type {
  padding-top: 100px;
  border-top: none;
}

/* IHCNとは */
.hp-ihcn {
  border: solid 1px #c8c8c8;
  padding: 30px;
  background: #fff;
}

/* イベント情報 新着 */
.newevents .list.ect-entry-card {
  border-top: solid 1px #c8c8c8;
  border-bottom: solid 1px #c8c8c8;
  margin-bottom: 50px;
  row-gap: 0;
}
.newevents .entry-card-wrap.a-wrap {
  border-bottom: dotted 1px #c8c8c8;
  margin: 0;
}
.newevents .entry-card-wrap.a-wrap:last-of-type {
  border: none;
}
.newevents .entry-card-thumb {
  display: none;
}
.newevents .entry-card-content {
  margin: 0;
  padding: 0;
}
.newevents .entry-card-title, .newevents .rerated-entry-card-title {
  font-size: 16px;
  margin: 0;
  line-height: 1;
  font-weight: normal;
}
.newevents .entry-card-title .post_time, .newevents .rerated-entry-card-title .post_time {
  font-size: 12px;
  margin-right: 15px;
}

/* Instagram feed */
.article #sb_instagram h3 {
  border: none;
}

/* Youtubeチャンネル */
.bnr-ytchannel figure {
  border: solid 1px #c8c8c8;
  background-color: #fff;
}
/* 画像枠あり */
.bnr-about figure {
  border: solid 1px #c8c8c8;
  background-color: #fff;
  padding: 10px;
}

/* リンクバナー */
.link-ihcn {
  background-color: #c080ff;
}
.link-collefes {
  background-color: #ff8080;
}
.link-cftalent {
  background-color: #ffdf80;
}
.link-gakusai {
  background-color: #80a0ff;
}
.link-youtubech {
  background-color: #ff80df;
}
.link-company {
  background-color: #85f2a0;
}
.page.home .linkbnr.linkbnr-bgon a {
  font-family: 'RocknRoll One', sans-serif;
}

/* 下層P アイキャッチ */
.eye-catch, .eye-catch img {
  width: 100vw;
  margin-bottom: 0;
}

/* 下層P MEMO */
.txt-memo-wrap {
  background: #fff;
  padding: 10px 20px 10px 40px;
  position: relative;
  border: solid 1px #ccc;
}
.txt-memo-wrap::before {
  content: '';
  width: 20px;
  height: 90%;
  background-image: radial-gradient(circle, #F9EBB8 5px ,transparent 5px);
  background-repeat: repeat-y;
  background-size: 20px 40px;
  display: inline-block;
  position: absolute;
  left: 10px;
  top: 0;
  bottom: 0;
  margin: auto;
}
.txt-memo {
  background-image: linear-gradient(180deg, rgba(100, 100, 100, 0) 0%, rgba(100, 100, 100, 0) 96%, #ccc 96%);
  background-size: 100% 2em;
  line-height: 2em;
  border: none;
  width: 100%;
  height: 100%;
  resize: none;
  padding-left: 30px;
}
.article ul.txt-memo li, .article ol.txt-memo li, .article p.txt-memo {
  margin: 0;
}

/* 〜とはP */
/* 会社概要 */
.profile dt {
  width: 130px;
}
.profile dd {
  width: calc(100% - 130px);
}

/* 決算報告 */
.finstatebnr-wrap {
  display: flex;
  justify-content: left;
  gap: 30px;
  flex-wrap: wrap;
}
.finstatebnr {
  height: 50px;
  border: solid 1px #c8c8c8;
  flex-basis: calc((100% - 60px) / 3);
  background: #fff;
  margin-bottom: 0 !important;
}
.finstatebnr a {
  width: 100%;
  height: 100%;
  display: flex;
  text-align: center;
  justify-content: center;
  align-items: center;
}

/* カスタム投稿「過去のカレフェスイベント」 */
#pas table {
  margin: 0 auto;
}
#pas table tr {
  background-color: #fff;
}
#pas table th, #pas table td {
  border: none;
  padding: 5px 5px;
  font-size: small;
}
.single-pastcf .wp-block-group {
  text-align: center;
}
.single-pastcf p {
  display: inline-block;
  margin: 0 6.5px;
  font-size: small;
}

/* 芸能部活部 部員一覧 */
.talent-tmb-wrap {
  display: flex;
  justify-content: left;
  gap: 30px;
  flex-wrap: wrap;
}
.talent-tmb {
  flex-basis: calc(20% - 24px);
  margin-bottom: 0 !important;
}
.talent-tmb figure.wp-block-image {
  margin-bottom: 10px;
  border: solid 1px #c8c8c8;
  position: relative;
  box-sizing: border-box;
  background: #fff;
  width: calc((100vw - 180px)/5);
  max-width: 161.2px;
  height: calc((100vw - 180px)/5);
  max-height: 161.2px;
}
.talent-tmb figure.wp-block-image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.talent-tmb figure.wp-block-image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: top;
}

/* 問い合わせP */
.cf7-wrap {
  display: flex;
  flex-wrap: wrap;
}
.cf7-title {
  width: 150px;
  display: flex;
  align-items: center;
}
.required {
  color: #fff;
  background: #bc153e;
  font-size: 10px;
  margin-left: 5px;
  padding: 3px;
  line-height: 1;
}
.cf7-form {
  width: calc(100% - 150px);
}
.search-edit, input[type="text"], input[type="password"], input[type="date"], input[type="datetime"], input[type="email"], input[type="number"], input[type="search"], input[type="tel"], input[type="time"], input[type="url"], textarea, select {
  padding: 7px;
  border: solid 1px #c8c8c8;
  border-radius: 0;
}
input[type="submit"], #bbp_reply_submit, .bp-login-widget-register-link a {
  width: 200px;
  margin: 0 auto;
  display: block;
  font-size: 100%;
  background: #bc153e;
  border: solid 1px #c8c8c8;
  color: #fff;
}
input[type="submit"]:hover, #bbp_reply_submit:hover, .bp-login-widget-register-link a:hover {
  background: #fff;
  color: #bc153e;
}

/* イベント情報 アーカイブP */
.post-type-archive-events #list {
  border-top: solid 1px #c8c8c8;
  border-bottom: solid 1px #c8c8c8;
}
.post-type-archive-events .entry-card-wrap.a-wrap {
  border-bottom: dotted 1px #c8c8c8;
  margin: 0;
}
.post-type-archive-events .entry-card-wrap.a-wrap:last-of-type {
  border: none;
}
.post-type-archive-events .entry-card-thumb {
  display: none;
}
.post-type-archive-events .entry-card-content {
  margin: 0;
  padding: 0;
}
.post-type-archive-events .entry-card-title, .post-type-archive-events .rerated-entry-card-title {
  font-size: 16px;
  margin: 0;
  line-height: 1;
  font-weight: normal;
}
.post-type-archive-events .entry-card-title .post_time {
  font-size: 12px;
  margin-right: 15px;
}

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

/*834px以下*/
@media screen and (max-width: 834px){

/* ヘッダー */
.header-in {
  display: flex !important;
}
/* ナビゲーションメニュー */
.navi {
  border: none;
}

/* 各ページ・投稿 題名 */
.article h1, .entry-title, .archive-title{
  font-size: 20px;
  margin: 0 0 26px;
}

/* 各ページ・投稿 左右余白 */
.entry-content > section.wp-block-group {
  padding: 30px 0;
}
/* .entry-content > section {
  width: calc(100% - 20px);
} */

/* リンクバナー・問合せバナー */
.linkbnr-wrap,.contactbnr-wrap {
  gap: 10px;
}
.linkbnr,.contactbnr {
  height: 80px;
  flex-basis: 100%;
}

/* イベント等サムネイル */
.item-tmb-wrap {
  gap: 10px;
}
.item-tmb {
  flex-basis: calc((100% - 20px) / 3);
}
.item-tmb figure.wp-block-image {
  margin-bottom: 0;
  width: 100%;
  /* height: calc((70.71vw - 28.286px) / 3); */
}

/* IHCNとは */
.hp-ihcn {
  padding: 10px;
}

/* 〜とはP */
/* 会社概要 */
.profile dd {
  width: calc(100% - 100px);
  margin-left: 10px;
}
/* 決算報告 */
.finstatebnr-wrap {
  gap: 10px;
}
.finstatebnr {
  flex-basis: 100%;
}

/* 芸能部活部 部員一覧 */
.talent-tmb-wrap {
  gap: 10px;
}
.talent-tmb {
  flex-basis: calc(50% - 5px);
}
.talent-tmb figure.wp-block-image {
  width: 100%;
  max-width: unset;
  height: unset;
  max-height: unset;
  display: inline-flex;
}

}

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

/* リンクバナー・問合せバナー */
.linkbnr-bgon a,.contactbnr a {
  font-size: 20px;
}

/* イベント情報 新着 */
.newevents .entry-card-title .post_time, .newevents .rerated-entry-card-title .post_time {
  display: block;
  margin-bottom: 5px;
}

/* イベント等サムネイル */
.item-tmb {
  flex-basis: 100%;
}
.item-tmb figure.wp-block-image {
  max-width: unset;
  height: calc((100vw - 22px) / 1.4142);
  max-height: unset;
}
.item-tmb figure.wp-block-image a {
  margin: 0 auto;
}
	
/* HP */
/* アピールエリア */
.appeal {
  height: calc(200vw / 3);
}

/* 〜とはP */
.logo-founap {
  width: 120px;
  margin: .5em 0 10px 10px !important;
  float: right;
}
.logo-founap.wp-block-image .alignright {
  margin: 0;
}

/* 問い合わせP */
.cf7-title, .cf7-form {
  width: 100%;
}
.article p.cf7-title {
  margin-bottom: 0;
}
.article p.cf7-form {
  margin-bottom: 10px;
}

/* イベント情報 アーカイブP */
.post-type-archive-events .entry-card-title .post_time {
  display: block;
  margin-bottom: 5px;
}

}
