@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

/* フォント */
/* * {
  font-family: 'Osaka', sans-serif;
} */

/* ヘッダーロゴ部分のみにリンクを設定 */
.c-headLogo__link {
  display: inline-block;
}

/* グローバルナビのホバー回転 */
.c-gnav>li:hover>a,
.c-gnav>.-current>a {
  /* color: #183a8e; */
  color: #00a0e9;
  background: transparent;
  transition: 1s;
  transform: rotateX(0deg);
}

.c-gnav>li:hover>a,
.c-gnav>.-current>a:hover {
  /* opacity: 0.7; */
  background: transparent;
  transition: 1s;
  transform: rotateX(360deg);
}

.-body-solid .l-fixHeader {
  box-shadow: none;
}

/* ナビのパディングとサイズ */
.c-gnav>.menu-item>a .ttl {
  padding: 0 15px;
  font-size: 17px;
}

/* メインビジュアルのキャッチコピーのマージン */
.alignleft{
	margin-left:16px!important;
}

/* フッターをセンター寄せ */
/* .l-footer__foot,
.l-footer__widgetArea {
  text-align: center;
} */

/* フッターのレイアウト崩れ修正 */
.w-footer {
  display: block;
}

/* パンくずリスト非表示 */
/* #breadcrumb {
 display: none;
} */

/* パンくずリストのシャドウなしと背景色白 */
.-body-solid .p-breadcrumb.-bg-on {
  box-shadow: none;
  background-color: #fff;
}

/* サブメインビジュアル高さ */
.l-topTitleArea {
  min-height: 500px;
  padding: 1em 0;
}

/* スマホ時の改行 */
.isSp {
  display: none;
}

@media print,
screen and (max-width: 768px) {
  .isSp {
    display: block;
  }
}

/* 追従バナー */
.follow-banner {
  position: fixed;
  bottom: 0;
  right: 0;
  transform: translateY(-50%);
  z-index: 20;
}

.follow-banner a {
  display: flex;
  align-items: center;
  gap: 0.5em;
  writing-mode: vertical-rl;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.1em;
  padding: 0 1em;
  border-radius: 10px 0 0 10px;
  transition: opacity 0.25s;
}

.follow-banner a:hover {
  /* color: rgba(255, 255, 255, 0.7); */
  opacity: 0.7;
}

.follow-banner .swl-inline-icon::after {
  left: 50%;
  transform: translateX(-50%);
}

/* 追従バナースマホでは非表示に */
@media screen and (max-width: 599px) {
  .follow-banner {
    display: none;
  }
}


/* 無限にループするスライダー(TOP) */

.loop-slider {
  display: flex;
  overflow: hidden;
  gap: 0; /* 画像間の余白を指定 */
}

.loop-slider .wp-block-group__inner-container,
.loop-slider .swell-block-columns {
  display: contents;
}

.loop-slider .swell-block-columns__inner {
  flex-wrap: nowrap;
  animation: infinity-scroll-left 25s infinite linear; /* アニメーションの時間を指定 */
}

.loop-slider .swell-block-column figure {
  width: 500px; /* 画像の横幅を指定（パソコン） */
  position: relative;
}

.loop-slider .swell-block-column figure::before {
  padding-top: 65%; /* 画像の縦横比を指定 */
  display: block;
  content: "";
}

.loop-slider .swell-block-column figure img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  object-position: center;
}

@media screen and (max-width: 959px) {
  .loop-slider .swell-block-column figure {
      width: 200px; /* 画像の横幅を指定（スマホ） */
  }
}

@keyframes infinity-scroll-left {
  from {
      transform: translateX(0);
  }

  to {
      transform: translateX(-100%);
  }
}

/* スマホでスペーサー非表示 */
@media screen and (max-width: 599px){
.spNone{
  display: none;
}
}

/* 画像と画像の隙間をなくす */
.wp-block-image.alignfull img, .wp-block-image.alignwide img{
	margin-bottom:-3px;
	margin-top:-3px;
}

/* ホバーで沈むヘッダーボタン */
.mouseover{
	transition: all 0.3s ease 0s;
  display: inline-block;
}
.mouseover:hover {
	transform: translateX(0.1875em);
}

