@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 .wp-block {
	color: #111111!important;
}
.block-editor input[type="text"], .block-editor textarea {
	color: #111111!important;
}
/*背景色*/
body {
	background-color: #111111;
}
.skin-grayish.front-top-page .content {
    background-color: #111111;
}
.main {
	background-color: #111111;
}

body.public-page {
    background-color: #111111;
}

/*フロントページ中央ロゴをフェードイン*/
.header-site-logo-image, .tagline, .skinadd-topmv-scroll {
    animation: fadeIn 3s ease 0.5s 1 normal;
}

@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

/*ハンバーガーメニュー-----------------*/
.mobile-header-menu-buttons {
	box-shadow: none!important;
}

.mobile-menu-buttons{
	background: none;
	box-shadow: none;
	left: inherit;
}

.mobile-menu-buttons .menu-icon {
	font-size: 30px;
	margin-top: 30px;
}
.mobile-menu-buttons .menu-button {
	width: 100px;
}
@media screen and (max-width: 1023px) {
    .skin-grayish .navi-menu-content {
        background-color: #111111;
    }
}
/*メニューを右側に変更*/
.navi-menu-content {
	right: 0;
	left: auto;
	-webkit-transform: translateX(105%);
	transform: translateX(105%);
	padding-top: 30px;
}
/*メニューhover色*/
.menu-drawer a:hover {
  background-color: #444455;
}


/*常時ハンバーメニューを表示*/
@media screen and (max-width: 10000px) {
/*
  .navi-footer {
    float: none;
    margin: 0;
    width: 100%;
  }
  .copyright {
    width: 100%;
  }
  .navi-footer-in > ul {
    justify-content: center;
    padding: 1em;
  }
*/
/*
  .footer-widgets {
    display: block;
  }
  .footer-widgets > div {
    width: 100%;
  }
  .content-in {
    display: block;
  }
*/
  main.main,
  div.sidebar {
    display: block;
    margin: 10px;
    width: auto;
  }
/*
  .footer-bottom-logo,
  .footer-bottom-content {
    float: none;
  }
  .footer-bottom-logo {
    line-height: 1;
  }
  .footer-bottom-content {
    text-align: center;
  }
*/
  .fb-like-message {
    font-size: 0.8em;
    line-height: 1.4;
  }
  .sidebar-scroll {
    position: static;
  }
  .ba-fixed.header {
    background-position: top center;
  }
  .ba-fixed.header,
  .ba-fixed.appeal {
    background-attachment: scroll;
  }
  .header,
  .appeal {
    background-size: cover;
  }
/*
  .footer-bottom-logo {
    position: relative;
    bottom: auto;
  }
  .logo-footer {
    margin: 8px auto;
  }
*/
  .mobile-menu-buttons {
    display: flex;
    align-items: stretch;
	  flex-direction: row-reverse;
	  justify-content: space-between;
  }
  .mobile-header-menu-buttons {
    top: 0;
    bottom: auto;
	  left: 0;
    justify-content: space-between;
    min-width: 46px;
    box-shadow: 0 0 5px darkgrey;
  }
  .skin-grayish:not(.front-top-page) .logo-menu-button {
    flex-grow: 1;
	  display: block!important;
  }
  .mobile-footer-menu-buttons {
    justify-content: space-around;
	  display: none;
  }
  .mobile-footer-menu-buttons .menu-button {
    width: 100%;
  }
  .no-mobile-sidebar .sidebar,
  .mobile-button-fmb .go-to-top-button,
  .no-mobile-header-logo #header .logo-header {
    display: none;
  }
  .mblt-footer-mobile-buttons,
  .mblt-header-and-footer-mobile-buttons {
    margin-bottom: 50px;
  }
  .scrollable-mobile-buttons {
    margin-bottom: 0;
  }
  .navi-footer-in > .menu-footer {
    justify-content: center;
  }
/*
  .footer-bottom.fdt-left-and-right .footer-bottom-content {
    flex-direction: column;
  }
*/
  .header-container-in.hlt-top-menu {
    flex-direction: column;
  }
  .mblt-footer-mobile-buttons .go-to-top-button,
  .mblt-header-and-footer-mobile-buttons .go-to-top-button {
    display: none;
  }
  .navi-in .menu-pc {
    display: none;
  }
  .no-mobile-header-logo .header .header-in {
    min-height: auto;
  }
  #navi .navi-in > .menu-mobile {
    display: flex;
  }
  #navi .navi-in > .menu-mobile > .menu-item-has-description > a > .caption-wrap {
    height: 40px;
    line-height: 16px;
  }
  #navi .navi-in > .menu-mobile li {
    width: 50%;
    height: 40px;
    line-height: 40px;
  }
  #navi .navi-in > .menu-mobile li a {
    font-size: 14px;
  }
  #navi .navi-in > .menu-mobile li a:after {
    display: none;
  }
  .slicknav_menu {
    display: block;
  }

  body:where(.mblt-header-mobile-buttons, .mblt-header-and-footer-mobile-buttons) {
    margin-top: 0px;
  }

  .admin-bar:where(.mblt-header-mobile-buttons, .mblt-header-and-footer-mobile-buttons) {
    margin-top: calc(50px - var(--wp-admin--admin-bar--height));
  }
}

.mobile-menu-buttons .menu-button > a img{
	height: 50px;
}

.skin-grayish:not(.front-top-page) .header-container {
    display: none;
}

.logo-menu-button img {
	margin: 27px auto 0 33px;
}

.search-menu-button {
	display: none!important;
}
.breadcrumb {
	display: none;
}
.navi-menu-caption {
	display: none!important;
}

/*フロントページ余白*/
.skin-grayish.front-top-page .content .main {
	padding-top: 0px;
	margin-top: 0px;
}
.skin-grayish.front-top-page .content  {
	margin-top: 0px;
}
/*フロントページのヘッダーロゴを非表示*/
.skin-grayish.front-top-page .logo-menu-button {
	display: none;
}
/*フロントページお知らせを中央に*/
.new-entry-cards {
	display: flex;
	justify-content: center;
}
/*トップページ送信フォーム*/
.wpcf7-form input[type="text"], .wpcf7-form input[type="email"], .wpcf7-form input[type="tel"], .wpcf7-form textarea {
	color: #111111;
}
.wpcf7-form textarea {
	margin-bottom: 15px!important;
}
.wpcf7-form h6 {
	font-size: 18px;
	border-bottom: none;
	margin: 0;
}
.wpcf7-form p {
	margin: 0;
}
.wpcf7-form input[type="submit"] {
	font-size: 18px;
}

/*recaptcha非表示*/
.grecaptcha-badge { visibility: hidden; }

/*子ページ余白*/
.skin-grayish:not(.front-top-page) .main {
	padding-top:90px;
}
.skin-grayish.page-id-2163 .main, .skin-grayish.page-id-2508 .main {
	padding-top:50px;
}

.search-menu-content,
.share-menu-content,
.follow-menu-content {
  transition: 0.3s ease-in-out;
  position: fixed;
  top: 40%;
  z-index: 99;
  width: 90%;
  left: 5%;
  right: 5%;
  -webkit-transform: translateY(500%);
  transform: translateY(500%);
  opacity: 0;
}


/*横メニュー背景色*/
.menu-content {
	background-color: #111111;
}
/*背景色*/
.bg-01 {
	background-color: #203744;
}
/*左右にはみ出させる*/
.fullscreen {
	width: 100vw;
	padding: 20px;
	margin-left: calc(49% - 50vw);
}
.fullscreen-inner {
	max-width: 1200px;
	margin: 0px auto!important;
}

/*左側をはみ出させる*/
.column-outside-left {
    flex: 1;
    margin-left: calc(50% - 50vw) !important;
}
/*bogo*/
.bogo-language-switcher {
	padding: 0px;
	margin-bottom: 0!important;
	text-align: right;
}
.bogo-language-switcher li {
	display: inline;
    border-radius: 19px;
    padding: 3px 10px !important;
    background-color: #555566;
}
/*日本語ページのスイッチャー色*/
.page-id-86 .bogo-language-switcher li:nth-of-type(2), .page-id-2163 .bogo-language-switcher li:nth-of-type(2) {
    background-color: #19448e;
}
/*英語ページのスイッチャー色*/
.page-id-2486 .bogo-language-switcher li:nth-of-type(1), .page-id-2508 .bogo-language-switcher li:nth-of-type(1) {
    background-color: #19448e;
}
.bogo-language-switcher li a {
    text-decoration: none;
	font-size: 16px;
	font-family: "Helvetica Neue",
    Arial,
    "Hiragino Kaku Gothic ProN",
    "Hiragino Sans",
    Meiryo,
    sans-serif;
}

/*見出し*/
.article h2.midashi-01 {
	font-size: 48px;
	border-bottom: none!important;
}
.article h2.midashi-01::before {
	border-bottom: none!important;
}

.article h2.midashi-02 {
	font-size: 24px;
	border-bottom: none!important;
}
.article h2.midashi-02::before {
	border-bottom: none!important;
}

.midashi-03 {
	border-bottom: none!important;
}

/*NEWS*/
.eye-catch-wrap {
	display: none;
}
.pagination-next a {
	background-color: #203744!important;
}
.skin-grayish .pagination .page-numbers, .skin-grayish .pager-links.pager-numbers .post-page-numbers .page-numbers {
	background-color: #203744!important;
}

/*カレンダー*/
.xo-event-calendar table {
	background-color: #203644;
}
.xo-event-calendar table.xo-month .month-event-space td {
	background-color: transparent;
}
.xo-event-calendar table.xo-month th {
	background-color: #222222;
}
.xo-event-calendar table.xo-month td {
    background-color: transparent;
}
table tr:nth-of-type(2n+1) {
	background-color: transparent;
}
.xo-event-calendar table.xo-month>thead th {
	color: inherit;
}
.xo-event-calendar table.xo-month>thead th.sunday {
	color: #992222;
}
.xo-event-calendar table.xo-month>thead th.saturday {
	color: #3333bb;
}
.xo-event-calendar table {
	color: inherit;
}
.xo-event-calendar table.xo-month .month-dayname td div.other-month {
    opacity: 1;
}

.xo-event-calendar table.xo-month>thead th.saturday {
    color: #3399ff;
}
.xo-event-calendar table.xo-month .month-dayname td div.today {
    color: #3399ff;
}
.xo-event-calendar table.xo-month button>span {
	color: #eeeeee;
}
/*休日に斜線を*/
.holiday-all::before {
	/*
    position: absolute;
    content: "";
    display: block;
    background-color: rgba(255, 255, 255, 1);
    height: 1px;
    width: 100%;
    top: 1.7rem;
    right: -0.4rem;
    transform: rotate(20deg);
	*/
}
/*ららんぐ----------------------------*/
.lalangue-backnumber {
	font-family: sans-serif;
	font-size: 0.9rem;
}
.article .lalangue-backnumber h2 {
	font-size: 1.0rem!important;
	border-bottom: 1px solid #ffffff;
	padding: 0px;
}
.article .lalangue-backnumber h2::before {
	border-bottom: none;
}
/*フッター*/
.footer {
	padding: 0;
}
.footer-in {
	background-color: #111111;
}
/* デバイス幅834px以下でも通常のフッターを表示 */
@media screen and (max-width: 834px) {
	* {
		font-size: 1.1rem;
	}
    .footer-widgets {
        display: block;
    }
	.footer-sns {
		margin-bottom:100px;
	}
}

.footer-widgets, .footer-widgets-mobile {
    margin: 0;
	width: 100vw;
	padding: 0;
	margin-left: calc(50% - 50vw);
	margin-bottom: 0;
	background-color: #203744;
	border: 0;
}
.skin-grayish .footer-widgets::before {
	background: none;
}
.footer-left {
	width: 40%;
	padding: 0;
	margin-bottom: 0;
}
.footer-left .widget {
	margin-bottom: 0;
}
.footer-center {
	display: none;
}
.footer-right {
	width: 60%;
}
.footer-bottom {
	display: none!important;
}
.footer-sns {
	display: flex;
    justify-content: flex-end;
}
.footer-sns a{
	padding: 0 10px
}

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
	.logo-menu-button img {
		margin: 19px auto 0 33px!important;
	}
	.fa-bars:before {
		color: #D9E7E9!important;
	}
	.skin-grayish .mobile-header-menu-buttons.mobile-menu-buttons {
        height: 60px;
    }
}

/*834px以下*/
@media screen and (max-width: 834px){
	.fa-bars:before {
		font-size: 1.5rem;
	}
}

/*480px以下*/
@media screen and (max-width: 480px){
	.fa-bars:before {
	}
}
