/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Feb 16 2026 | 07:30:54 */
/* 
@media (max-width: 640px) 
@media (min-width: 960px) 
var(--color_main)
サブカラーの設定
var(--color_deep01)
var(--color_deep02)〇
var(--color_deep03)〇
var(--color_deep04)
*/
/* -------------
○○〇の設定
-----------------------------*/
/* ======================================
   共通：スマホ（600px以下）
====================================== */
@media (max-width: 600px) {
	/* テーブル調整 */
	.sp-table td,
	.sp-table th,
	.price-table td,
	.price-table th {
		padding: 10px !important;
		font-size: 13px !important;
	}
	/* フォントサイズ汎用 */
	.sp-fs-14 span{ font-size: 14px !important; }
	.sp-fs-16 span { font-size: 16px !important; }
	.sp-fs-20 span { font-size: 20px !important; }
	.sp-fs-22 span { font-size: 22px !important; }
}
/* -------------
ボタンアニメーションの追加
-----------------------------*/
.btn_anime a{
margin: 0 auto;
animation: anime 2s ease 0s infinite alternate;
transform-origin:center;
cursor: pointer;
}
@keyframes anime {
from {transform: scale(0.95,0.95);}
to {transform: scale(1,1);}
}
.btn_anime img{
margin: 0 auto;
animation: anime 2s ease 0s infinite alternate;
transform-origin:center;
cursor: pointer;
}
@keyframes anime {
from {transform: scale(0.95,0.95);}
to {transform: scale(1,1);}
}

@media (min-width: 960px) {
.swell-block-button .swell-block-button__link[data-has-icon] {
    padding: 0.8em 2em;
}
}
.contact-area .is-style-btn_line a:hover{
	color:var(--color_main) !important;
}
.contact-area .swell-block-button__link svg:not([fill]):hover {
    fill:var(--color_main) !importan;
}
/* CTAボタンの調整 */
.cta-btn-pad .swell-block-button__link[data-has-icon]{
padding: 1.2em;
}
.line-color svg{
fill: var(--color_deep03) !important;	
}
.contact-color svg{
fill:#333 !important;	
}
/*----------------------------*/
/*テキスト配置*/
/*----------------------------*/
/*960px以下は右寄せを左寄せ*/
@media (max-width: 960px) {
.has-text-align-right.sp_left,.sp_left{
	text-align:left !important;
}
}
/*PCでは中央揃え*/
@media (min-width: 960px){
.pc_center.has-text-align-left {
    text-align: center;
}
}
/*スマホでは左揃え*/
@media (max-width: 959px){
.sp_left {
    text-align: left;
}
}
/* ----------------------------------- */
/*余白調整*/
/* ----------------------------------- */
.w-beforeFooter {
    margin: 0 auto 3em;
}
}
/* ----------------------------------- */
/* スマホ時に文章を左寄せ or センター合わせ*/
/* ----------------------------------- */
@media (max-width: 480px) {
  .sp-left-alignment {
    text-align: left!important;
  }
}
@media (max-width: 480px) {
  .sp-center-alignment {
    text-align: center!important;
  }
}
/* ----------------------------------- */
/* 幅の設定 */
/* ----------------------------------- */
@media (min-width: 960px){ 
.post_content .margin-1em{
	margin: 0 1em;
}
}
.post_content .padding-yx-02em {
  padding:0.2em;
}
.post_content .padding-yx-03em {
  padding:0.3em;
}
.post_content .padding-yx-05em {
  padding:0.5em;
}
.post_content .padding-yx-1em {
  padding:1em;
}
.padding-lr-1em {
  padding: 0 1em;
}
.padding-lr-10em-lg {
  padding: 0 2em;
}
.padding-y05-x1 mark{
  padding: 0.5em 1em;
}
.padding-lr-4em-lg {
    padding: 0 2em;
}
@media (min-width: 960px) {
	  .padding-lr-4em-lg {
    padding: 0 4em;
  }
  .padding-lr-6em-lg {
    padding: 0 6em;
  }
  .padding-lr-10em-lg {
    padding: 0 10em;
  }
}
/* ----------------------------------- */
/*黄色のマーカーの調整 */
/* ----------------------------------- */
.mark_yellow {
    background: -webkit-linear-gradient(transparent 80%, var(--color_mark_yellow) 0%);
    background: linear-gradient(transparent 80%, var(--color_mark_yellow) 0%);
}
/* ----------------------------------- */
/*黄色下線(オリジナル) */
/* ----------------------------------- */
.y_under_original {
    border-bottom: 10px solid #FFD900;
    padding-bottom: 0;
}
/* ----------------------------------- */
/*boder設定 */
/* ----------------------------------- */
.-radius5 {
  border-radius: 5px;
}
.-radius10 {
  border-radius: 10px;
}
.-radius10 img{
  border-radius: 10px;
}
.-radius20 {
  border-radius: 20px;
}
.-radius20 img{
  border-radius: 20px;
}
/* shadow */
.-box-shadow {
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
/* ----------------------------------- */
/* 横幅設定 */
/* ----------------------------------- */
.w-700 {
  max-width: 700px;
  margin: 0 auto;
}
.w-700-m {
  max-width: 700px;
}
.w-800 {
  max-width: 800px;
  margin: 0 auto;
}

.w-900 {
  max-width: 900px;
  margin: 0 auto;
}
.w-1000 {
  max-width: 1000px;
  margin: 0 auto;
}
/*----------その他 */
.relative-box{
position:relative;
}
.absolute-center{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.justify-content-c .swell-block-columns__inner{
justify-content: center;
}
.post_content .eight-line {
    border-bottom: 5px solid rgba(0, 0, 0, .1);
}
.eight-bg-bottom .wp-block-cover__image-background, .eight-bg-bottom .wp-block-cover__background{
    bottom: -40px;
    height: 40%;
    top: initial;
}
@media (max-width: 640px) {
	.eight-bg-bottom .wp-block-cover__image-background, .eight-bg-bottom .wp-block-cover__background {
    bottom: 0px;
    height: 47%;
    top: initial;
}
}	
.rounded-top mark{
  padding: 0.5em 1.2em;
}
.rounded-radius mark{
padding: 0.2em 1em;
    border-radius: 100px;
    display: inline-block;
}
.wp-block-table .has-fixed-layout {
    line-height: 2;
}
.ark-block-slider__inner .swiper-wrapper {
    padding: 0 0 2em;
}
.ark-block-slider__inner .swiper-pagination{
    bottom: 10px;
}
.edge-text{
-webkit-text-stroke: 2px #fff;
  text-stroke: 2px #fff;
  paint-order: stroke;
}
.-list-under-dashed>li, .border_bottom>li {
    border-bottom: 1px dashed #707070;
}
.overflow-y {
    height: 700px;
    margin: 50px auto;
    padding: 20px;
    overflow-y: scroll;
}
@media (max-width: 640px) {
	.overflow-y {
    height: 500px;;
}
}
.ark-block-slider .swiper.-thumb {
    height: 150px;
}
.post_content .map{
margin:0;
}
.rounded-radius td{
	    box-shadow: inset 0 0 0 1px var(--color_main);
}
.p-spMenu__bottom {
    margin-top:0;
}
/*  */
.ark-block-slider {
    --arkb-slider-height: auto;
    --arkb-padding: 2rem;
    --swiper-navigation-size: 58px;
    --swiper-theme-color: #000;
}
/* 4つ並びのカラムの高さ合わせる */
/* カラムの高さ合わせる */
@media (min-width: 960px){
.eight-28-arrange-main .swell-block-column{
display: flex;
justify-content: center;
flex-direction: column;
}
.eight-28-arrange-main .flex-arrange{
display: flex;
flex-grow: 1;
justify-content: center;
width: 100%;
}
.eight-28-arrange-main .flex-arrange .wp-block-group__inner-container{
display: flex;
flex-direction: column;
width: 100%;
}
.eight-28-arrange-main .flex-arrange .wp-block-group__inner-container .flex-arrange-text{
flex-grow: 1;
}
}
.eight-28-arrange-main .swell-block-button{
    display: flex;
    width: 100%;
    justify-content: center;
}
/* vk左右のライン */
/* eight-heading の H2 をリセット（最重要） */
.post_content h2.is-style-eight-heading-both_ends {
    position: relative;
    background: none !important;
    overflow: visible !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
}

/* SWELL の上下ライン装飾を完全に無効化 */
.post_content h2.is-style-eight-heading-both_ends::before,
.post_content h2.is-style-eight-heading-both_ends::after {
    content: none !important;
    border: none !important;
}


/* ★ ここから左右ラインを再定義（必ず出る） ------------------- */
.post_content h2.is-style-eight-heading-both_ends {
    --line-height: 1px;
    --line-color: currentColor;
}

.post_content h2.is-style-eight-heading-both_ends::before,
.post_content h2.is-style-eight-heading-both_ends::after {
    content: "" !important;
    display: block;
    height: var(--line-height);
    background: var(--line-color);
    flex-grow: 1;
	position: relative;
	    width: auto;
}

/* 左右の余白 */
.post_content h2.is-style-eight-heading-both_ends::before {
    margin-right: 15px;
}
.post_content h2.is-style-eight-heading-both_ends::after {
    margin-left: 15px;
}

/* テキストが疑似要素に重ならないように */
.post_content h2.is-style-eight-heading-both_ends > * {
    position: relative;
    z-index: 2;
}

/* -------------------オレンジボタン------------------- */
.orange_btn a {
    display: flex;
    justify-content: center;
    align-items: center;
	margin:auto;
    height: 80px;
	min-width:320px;
    color: #fff;
    border-radius: 50px;
    border: 3px solid #fff;
    position: relative;
    background-image: linear-gradient(180deg, rgba(255, 146, 0, 1), rgba(245, 118, 0, 1) 31%, rgba(244, 115, 0, 1) 48%, rgba(243, 112, 0, 1) 66%, rgba(255, 192, 109, 1));
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    z-index: 1;
}
/* -------------------グリーンボタン------------------- */
.green_btn a {
    display: flex;
    justify-content: center;
    align-items: center;
	margin:auto;
    height: 80px;
	min-width:320px;
    color: #fff;
    border-radius: 50px;
    border: 3px solid #fff;
    position: relative;
    background-image: linear-gradient(180deg, rgba(123, 255, 57, 1), rgba(39, 204, 0, 1) 31%, rgba(97, 183, 45, 1) 52%, rgba(102, 197, 47, 1) 70%, rgba(123, 255, 57, 1));
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    z-index: 1;
}
/* カラムの高さ合わせる設定 */
@media (min-width: 960px){

/* column_fixed 内の swell-block-column を除外 */
.eight-frame-main .swell-block-column:not(.column_fixed .swell-block-column){
  display: flex;
  justify-content: center;
}

.eight-frame-arrange{
  display: flex;
  flex-grow: 1;
}

.eight-frame-arrange .wp-block-group__inner-container{
  display: flex;
  flex-direction: column;
}

.eight-frame-arrange .wp-block-group__inner-container .eight-frame-arrange-text{
  flex-grow: 1;
}
}
/* -------------------緑の背景・背景画像------------------- */
.green_back{
   background-image: url("https://xmobile-tag.co.jp/mobile/wp-content/uploads/2026/01/green_back-1.png");
}
/* -------------------下層ページタイトル------------------- */
.c-pageTitle {
        font-size: 1.7em;
}
@media (min-width: 600px) {
    .c-pageTitle {
        font-size: 2.5em;
    }
}
/* -------------
ヘッダーのPCエリアの設定
-----------------------------*/
.l-header__customBtn, .l-header__menuBtn {
    width: 77px;
}
@media (min-width: 960px) {
	.l-header__logo {
		display: none;
	}
}
.flex-end {
  justify-content: end;
  display: flex;
  margin: 0 0.8rem 0 0;
}
.h-original>.swell-block-columns__inner {
  justify-content: space-between;
}
.h-original .swell-block-columns .swell-block-column {
  width: auto;
}
@media (max-width: 1150px) {
  .original-pc-none {
    display: none;
  }
}
/* -------------
ヘッダーメニュー設定
-----------------------------*/
ul.c-gnav span.ttl {
  padding-left: 15px;
  padding-right: 15px;
  font-weight: bold;
}
.c-gnav>li:hover>a, .c-gnav>.-current>a {
  background: var(--color_main);
  color: #ffffff;
}
.c-gnav>.menu-item>a .ttl {
  display: block;
  font-size: 16px;
  font-weight: bold;
}
@media (max-width: 960px) {
  .l-header .w-header {
    display: block !important;
    width: 40%;
    align-items: center;
    display: flex;
  }
  .l-header__customBtn {
    display: none;
  }
}
@media (min-width: 960px) {
  .-parallel-bottom .l-header__gnav {
    margin-top: 0;
  }
  .-parallel-bottom .l-header__inner {
    padding-top: 0;
  }
}

/* ▼ サブメニューを持つ親メニューのみに矢印を表示 */
.menu-item-has-children a > .ttl {
  position: relative;
  padding-right: 1.2em;
}
.menu-item-has-children > a >.ttl::after {
  content: "\f078";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  font-size: 0.8em;
  color: currentColor;
  pointer-events: none;
}
.menu-item-has-children:hover a > .ttl::after {
  transform: translateY(-50%) rotate(180deg);
  transition: transform 0.3s ease;
}
/*--------------------------*/
/*フッター*/
/*--------------------------*/
.w-footer .c-listMenu a{
 border-bottom: 1px solid #aaaaaa;
 font-size: 15px;
 padding: .6em .2em;
}
.w-footer .c-gnav .sub-menu a:before, .w-footer .c-listMenu a:before{
	display:none;
}
.w-footer .c-listMenu a:hover {
    padding-left: 0.5em;
    padding-right: 0.75em;
}
@media not all and (min-width: 960px) {
    .w-footer__box+.w-footer__box {
        margin-top: 0em;
    }
}
@media not all and (min-width: 960px) {
    .w-footer__box {
        padding: 0em 0;
    }
}
/*--------------------------*/
/*スマホメニュー*/
/*--------------------------*/
.p-spMenu__nav .c-listMenu a {
    border-bottom: 1px solid #aaaaaa;
}

[data-scrolled=true] #fix_bottom_menu {
    bottom: 10px;
    box-shadow: none;
}
#fix_bottom_menu::before {
    background: #fff;
    opacity: 0;
}
#fix_bottom_menu .menu_list {
    width: 300px;
    margin: 0 auto;
    border-radius: 100px;
    background: linear-gradient(135deg, #28a745, #218838);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    position: relative;
}
#fix_bottom_menu .menu_list::before {
    content: "ホリエのWIFI";
    position: absolute;
    top: -40px;
    left: 50%;
    transform: translateX(-50%);
    background: #ffffff;
    color: #28a745;
    font-size: 14px;
    font-weight: bold;
    padding: 8px 12px;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
    white-space: nowrap;
}
#fix_bottom_menu .menu-item {
    flex: 1 1 100%;
    margin: 0;
    padding: 0;
    text-align: center;
}
#fix_bottom_menu .menu_list::after {
    content: '';
    position: absolute;
    top: -10px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 10px solid #ffffff;
}
#fix_bottom_menu .menu_list a {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #333;
    font-size: 16px;
    font-weight: bold;
    padding: 15px 0;
    border-top: 2px solid rgba(255, 255, 255, 0.2);
    border-radius: 100px;
    background: var(--color_deep02);
    transition: all 0.3s ease;
}
#fix_bottom_menu span {
    font-size: 14px;
    margin: 0.3em;
    width: auto;
}