@charset "UTF-8";
/*
    Template: nagareyama
    Theme Name: nagareyama CHILD

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

@import url('https://fonts.googleapis.com/css2?family=Satisfy&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+Antique:wght@700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@600;700;800&display=swap');

/* Span Tag */
#gnav a span{
	font-weight:600;
	font-size:16px;
	letter-spacing:2px;
}


.midashi01 {
  padding: 1rem 2rem;
  background: #f4f4f4;
}

import url('https://fonts.googleapis.com/css2?family=Zen+Antique&display=swap');

/* Division */
.c-filterLayer .u-ta-c .p-mainVisual__slideTitle{
	letter-spacing:34px;
	font-weight:500;
}

/* Division */
.c-filterLayer .u-ta-c .p-mainVisual__slideText{
	letter-spacing:4.3px;
	animation-fill-mode:both;
}

	/* Division */
	.c-filterLayer .u-ta-c .p-mainVisual__slideTitle{
		font-size:45px;
	}
	
	/* Division */
	.c-filterLayer .u-ta-c .p-mainVisual__slideText{
		font-size:21px;
	}
	
.heading2{
	position: relative;
	padding-top: 50px;
	padding-bottom: 50px;
	font-size: 26px;
	text-align: center;
}

.heading2 span{
	position: relative;
	z-index: 2;
}

.heading2::before{
	content: attr(data-en);
	position: absolute;
	top: -20px;
	left: 50%;
	transform: translateX(-50%);
	color: rgba(81, 82, 230,0.1);
	font-size: 80px;
	font-style: italic;
	letter-spacing: 0px;
	font-weight: bold;
	font-family: 'Share Tech', sans-serif;
}

.c-widget__title {
  font-size: 20px;
  letter-spacing: 2px;
}

.img_wrap img{
  width: 100%;
  cursor: pointer;
  transition-duration: 0.3s;
}
.img_wrap:hover img{
  opacity: 0.6;
  transition-duration: 0.3s;
}

.p-toc.-capbox .p-toc__ttl {
    background-color: #000000;
    color: #fff;
    padding: 0.5em;
    font-weight: bold;
}

ol.is-style-index>li, ol.is-style-index ol>li {
    font-weight: 800;
 }

ol.is-style-index>li:before, ol.is-style-index ol>li:before {
    border-right: 0px;
}

.p-toc__ttl:before {
    content: "\e91a";
    display: inline-block;
    font-family: icomoon;
    margin-right: 0.5em;
    padding-bottom: 2px;
    vertical-align: middle;
}

.container {
  text-align: center; /* 親要素を中央揃えにする */
}

.center-image {
  display: inline-block; /* 縦横比を維持するためにinline-blockにする */
  margin: 0 auto; /* 上下左右に自動マージンを与えることで中央に寄せる */
	height: 55px;
}

.l-footer .copyright {
    font-size: 14px;
    letter-spacing: 4px;
    text-align: center;
}

@media only screen and (max-width: 1300px) {
  /* ここにスマートフォン用のCSSを記述 */
.c-filterLayer .u-ta-c .p-mainVisual__slideTitle {
    font-size: 32px;
}
}

@media only screen and (max-width: 767pxpx) {
  /* ここにスマートフォン用のCSSを記述 */
.c-filterLayer{
    font-size: 28px;
}
}

.c-smallNavTitle {
    opacity: 0.8;
    font-family: 'Satisfy', cursive;
}


/* 下記はトップページ用 */

  @media (min-width: 600px)
.p-mainVisual__slideTitle {
  font-size: 40px;
}

.p-postList__meta {
    font-size: 12px;
    color: #05081c;
    font-weight: bold;
}

.wp-block-columns {
    font-family: 'Roboto Condensed', sans-serif;
}

/* ブログ記事の見出し用 */
.blog-midashi {
	background: #f2f2f2;
	padding: 1rem 1rem 1rem 2.5rem;
	position: relative;
	border-radius: 10px;
}
.blog-midashi:before {
    position: absolute;
    top: 20%;
    left: 20px;
    width: 6px;
    height: 60%;
    content: '';
    border-radius: 3px;
    background: #183160;
}

.blog_midashi {
	background: #f2f2f2;
	padding: 1rem 1rem 1rem 2.5rem;
	position: relative;
	border-radius: 10px;
}
.blog_midashi:before {
    position: absolute;
    top: 20%;
    left: 20px;
    width: 6px;
    height: 60%;
    content: '';
    border-radius: 3px;
    background: #183160;
}

.cform th {
	font-size: 14px;
	width: 20%; /*変なところで改行される場合はここの数字を変更します。*/
	border-bottom: solid 1px #d6d6d6;
	padding: 10px 0 10px 15px;
	font-weight: normal;
}

.cform td {
	font-size: 14px;
	line-height: 150%;
	border-bottom: solid 1px #d6d6d6;
	padding: 10px 5px;
}

.cform {
	width: 100%;
	margin: auto;
}

.cform [type=submit] {
	display: inline-block;
	font-size: 20px;
	padding: 10px 30px;
	text-decoration: none;
	background: #ff8f00;
	color: #FFF;
	border-bottom: solid 4px #B17C00;
	border-radius: 3px;
}

.cform option,
.cform textarea,
.cform input[type=text],
.cform input[type=email],
.cform input[type=search],
.cform input[type=url] {
	width: 100%;
}

.required-srt {
	font-size: 8pt;
	padding: 5px;
	background: #ce0000;
	color: #fff;
	border-radius: 3px;
	margin-left: 10px;
	vertical-align: middle;
}

@media only screen and (max-width:767px) {
	.cform th,
	.cform td {
		width: 100%;
		display: block;
		border-top: none;
	}
}

.submit-btn input {
	background: #0b2624;
	width: 60%;
	max-width: 550px;
	min-width: 220px;
	margin: 30px auto;
	display: block;
	border: 1px #00142c solid;
	text-align: center;
	padding: 12px;
	color: #fff;
	transition: all 0.4s ease;
	font-weight:bold;
	border-radius:32px;
	letter-spacing:2px
}

.submit-btn input:hover {
	background: #fff;
	color: #00142c;
}

@media (min-width: 1300px) {
.-sidebar-off .-type-card.-pc-col3 .p-postList__item, .-sidebar-off .-type-thumb.-pc-col3 .p-postList__item {
    width: 25%;
}
}

@media (min-width: 600px) {
.c-postTitle__ttl {
    font-size: 30px;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
}
}

.c-filterLayer .u-ta-c .p-mainVisual__slideTitle {
    font-family: 'Zen Kaku Gothic';
    font-weight: 700;
}

.c-listMenu a {
    /* padding: 0.75em 0.5em; */
    position: relative;
    letter-spacing: 5px;
}

  @media (min-width: 600px)
.p-mainVisual__slideTitle {
  font-size: 40px;
}

/* 投稿リストブロックのカード型とサムネイル型を4列表示にする */
@media (min-width: 960px) {
  .-col4 .-type-card.-pc-col3 .p-postList__item, .-col4 .-type-thumb.-pc-col3 .p-postList__item{
    width: calc(100% / 5);
  }
}

.saido {
  filter: hue-rotate(50deg) saturate(65%);	
}

.p-postList__meta {
    font-size: 12px;
    color: #05081c;
    font-weight: bold;
}

.wp-block-columns {
    font-family: 'Roboto Condensed', sans-serif;
}

.c-pageTitle {
    font-family: 'Shippori Mincho', serif;
    font-weight: 900;
}

.post_content h2 {
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    letter-spacing: 1px;
}


.sticky-banner {
  position: fixed;
  bottom: 50px;
  left: 30px;
  z-index: 1000;
  width: 350px; /* 横幅を250ピクセルに設定 */
  height: 211px; /* 縦幅を100ピクセルに設定 */
  background-image: url('画像のURL'); /* 画像のURLを指定してください */
  background-size: cover;
  background-position: center;
  cursor: pointer;
  transition: transform 0.3s, opacity 0.3s;
  animation: float 2s infinite ease-in-out;
  opacity: 0.9;
}

.sticky-banner:hover {
  transform: translateY(-5px);
  opacity: 1; /* カーソルを合わせると画像が白くなる不透明度が上がる */
}

@keyframes float {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-5px);
  }
  100% {
    transform: translateY(0);
  }
}

/* 追加するCSSコード */
@media (max-width: 768px) {
  .sticky-banner {
    display: none;
  }
}

.linkfooter{
  position: relative;
  text-decoration: none;/*デフォルトで下線を非表示*/
}

/** 下線を左から引く **/
.linkfooter:after{
  position: absolute;
  bottom: -2px;
  left: 0;
  content: '';
  width: 70%;
  height: 1.5px; /*下線の太さ*/
  background-color: #000000; /*下線の色*/
  transition: all .5s; /*アニメーション速度*/
  transform: scaleX(0);
}
.linkfooter:hover:after {
  width:100%;
  transform: scaleX(1);
}

.sp-banner {
  display: none; /* デフォルトで非表示にしておく */
  position: fixed;
  bottom: -19px;
  left: 0;
  width: 100%;
  height: 45px;
  background-color: rgba(237, 90, 40, 1); /* 通常時は半透明 */
  z-index: 1000;
  text-align: center;
  line-height: 45px;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  cursor: pointer;
  transition: opacity 0.3s;
  animation: float 2s infinite ease-in-out;
}

.sp-banner a {
  color: #fff;
  text-decoration: none;
}

.sp-banner:hover {
  background-color: rgba(76, 175, 80, 1); /* カーソルを合わせると不透明度100%にする */
}

.close-btn {
  position: absolute;
  top: 0;
  right: 10px;
  font-size: 20px;
  font-weight: bold;
  color: #fff;
  cursor: pointer;
  user-select: none;
}

.close-btn:hover {
  color: #ccc;
}

@keyframes float {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-3px);
  }
  100% {
    transform: translateY(0);
  }
}

/* スマホ用のメディアクエリ */
@media (max-width: 768px) {
  .sp-banner {
    display: block; /* スマホ画面で表示 */
  }
}

/* PC用のメディアクエリ */
@media (min-width: 769px) {
  .sp-banner {
    display: none; /* PC画面では非表示 */
  }
}

@media (max-width: 768px) {
.p-fixBtnWrap {
    bottom: 4.25em;
  }
}

.l-topTitleArea {
    min-height: 400px;
    padding: 1em 0;
}

.c-ttl-boxes > span:not(:first-child) {
    margin-left: 2px;
    text-align: center;
}
.c-ttl-boxes > span {
    display: inline-block;
    width: 1.4em;
    height: 1.4em;
    background-color: #183160;
    color: #fff;
    line-height: 1.4;
    text-align: center;
    font-size: 20px;
    text-align: center;
}

.p-authorBox__desc {
    font-weight: bold;
    color: #000000;
}

.w-beforeFooter {
    margin: -4em auto 3em;
    overflow: hidden
}
