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

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

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

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

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}
グローバルナビ
/***************************
** グローバルナビのカスタマイズ
****************************/
/* ナビメニュー 文字*/
#navi {
	font-family: '○○', sans-serif;/*〇〇にはお好きなGoogleフォントを入力*/
	font-weight: bold; /* 太文字 */
	letter-spacing: 0.12em;/*字間を広げる*/
	color: #333;
}
.navi-in a {
	font-size: 13px;/*文字サイズ*/
}

/* safari文字の太さ指定 */
_::-webkit-full-page-media, _:future, :root  
#navi {
	-webkit-text-stroke-width: .1px !important; 
}

 /* ブラウザChromeのみ太文字にする */
@media screen and (-webkit-min-device-pixel-ratio:0){
  #navi {
	-webkit-text-stroke-width: .4px !important;
}
}

/* ナビメニュー 下線*/
#navi .navi-in a::after {
	position: absolute;/*線の位置を絶対配置に*/
	bottom: 12px;/*線の位置*/
	left: 0;
	content: '';
	width: 100%;
	height: 2px;/*線の太さ*/
	background: #e3a02e;/*線の色*/
	transform: scale(0, 1);
	transform-origin: center top;
	transition: transform 0.3s;/*変形の時間*/
}

#navi .navi-in a:hover::after {
	transform: scale(1, 1);
}

/* タブレットメニュー中央寄せ */
@media screen and (max-width: 768px){
#navi-in{
	display: flex;
	justify-content: center;
}
}

/*スマホメニューを横スクロール*/
@media screen and (max-width: 480px){
#header-container .navi-in > ul li {
   height: auto;
   font-weight: 600;
   line-height:1.3;
}
#header-container #navi a{
   color:#222; /* 文字色 */
   padding:0.8em 1em;
}
#header-container #navi a:hover{
   color:#222; /* マウスホバー時の文字色 */
}
#header-container .navi-in > ul > .menu-item-has-children > a::after {
   top: 0.8em;
   font-size: 1.2em;
   font-weight: 600;
}
#header-container .sub-menu .caption-wrap{
   padding-left:1em;
}
.navi-in > ul .menu-item-has-description > a > .caption-wrap{
   height:auto;
}
}	
@media screen and (max-width: 1030px){
  #header-container .menu-mobile{
    display:none;
  }
  .navi-in > .menu-mobile{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    overflow-x: scroll;
    white-space: nowrap;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
  }
  #header-container #navi a{
    font-size:0.8em;
    padding: 1em 1.2em;
  }
  #header-container .navi-in > ul > .menu-item-has-children > a::after{
    display:none;
  }
  #navi .navi-in > .menu-mobile li {
    height: auto;
    line-height: 1.8;
  }
  .mblt-header-mobile-buttons {
    margin-top: 53px;
  }
}

/* サイトタイトルのフォントとサイズ */
.site-title {
  font-family: 'Noto Serif JP', serif;
  font-size: 2.2rem;
  font-weight: normal;
  color: #333;
  margin: 0;
}

/* キャッチコピーは非表示 */
.site-description {
  display: none;
}

/* メニュー非表示（必要に応じて） */
#header .navi {
  display: none;
}
	@media screen and (max-width: 600px) {
  .site-title {
    font-size: 1.6rem;
  }
}
	/*グローバルナビ設定*/
	/* メニューの文字を少し小さく */
#header-menu a {
  font-size: 14px; /* お好みで調整してください（例:14px→13pxなど） */
  transition: color 0.3s ease; /* 色変化をスムーズに */
}
/* ホバー時の文字色変更 */
#header-menu a:hover {
  color: #ff6600; /* お好きな色に変更してください */
}
	/*フッター設定*/
.footer {
  margin-top: 5px; /*フッターとコンテンツの間に余白追加*/
  background: #ffffff; /*フッター背景色*/
  border-top: 4px solid #ffffff; /*上部にボーダー追加*/
}
.footer-bottom {
  margin-top: 14px; /*フッター内上部の余白を詰める*/
}
.footer-bottom-logo { /*ロゴの位置調整*/
  float: none;
  bottom: auto;
  position: static;
  margin-bottom: 10px;
}
.footer-bottom-logo .logo-image {
  padding: 0;
  max-width: 160px; /*ロゴ画像を少し大きく*/
  margin: 0 auto;
}
.footer-bottom-content { /*メニュー＆クレジットの位置調整*/
  float: none;
  text-align: center;
}
.navi-footer-in > .menu-footer { /*メニューの位置調整*/
  justify-content: center;
  margin-bottom: 1em;
}
.navi-footer-in a {
  color: #333333; /*メニューの文字色*/
}
.navi-footer-in a:hover { /*メニューのマウスホバー時の指定*/
  color: #aab3b9; /*文字色を通常時と同じに*/
  background: none; /*背景色をなしに*/
  text-decoration: underline; /*アンダーラインを追加*/
}
.footer-bottom.fnm-text-width .menu-footer li {
  line-height: 1; /*メニューの区切りボーダーの高さを1文字分にする*/
}
.copyright {
  color: #333333; /*クレジットの文字色*/
}
@media screen and (max-width: 834px) {
  .navi-footer-in > .menu-footer li.menu-item {
    border: none; /*モバイルでメニューのボーダーを消す*/
  }
}
@media screen and (max-width: 460px) {
  .navi-footer-in > .menu-footer li.menu-item { /*モバイルでメニューを1カラムにする*/
    width: 100%;
    display: block;
    flex: auto;
    padding: 0.3em 0;
  }
}

/* 点滅効果 */
.new-txt {
   animation: blinking 1s ease-in-out infinite alternate;
}

@keyframes blinking {
   0% { opacity: 0; }
   100% { opacity: 1; }
}

/* 通知エリアの流れるテキスト */
.notice-area {
   overflow: hidden; /* はみ出た部分を隠す */
   white-space: nowrap; /* 文字を折り返さず1行で表示 */
}

/* 通知メッセージのスタイル */
.notice-area-message {
   display: inline-block;
   padding-left: 100%; /* 初期位置を画面の右端に設定 */
   animation: slideMessage 12s linear infinite; /* アニメーション適用 */
}

/* スライドアニメーションの定義 */
@keyframes slideMessage {
   to {
   transform: translateX(-100%); /* 左へ移動 */
   }
}

/* 1023px以上（PC） */
@media screen and (min-width: 1023px) {
   .notice-area-message {
   animation-duration: 24s; /* PCでのスライド速度 */
   }
}



