/*-------------------------------
フォント指定
高速化のためWebフォントを無効（「ベースとなるフォント」を「游ゴシック」）に変更したので"Noto Sans JP"を手動で優先指定する。
-------------------------------*/
body {
  --swl-font_family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
}

/*-------------------------------
投稿ページのみ横幅制御
-------------------------------*/

.single-post .l-content {
	max-width: 1000px;
}

.-frame-on .l-mainContent {
	background: none;
}

/*-------------------------------
グローバルナビお問い合わせボタン
-------------------------------*/

@media (min-width: 960px) {
	.-frame-on .l-mainContent {
		padding: 32px 0;
	}

	.global_contact a {
		min-width: 160px;
		font-size: 14px;
	}
}

/*-------------------------------
グローバルナビ現在地
-------------------------------*/
@media (min-width: 960px) {

	c-gnav>li:hover>a,
	.c-gnav>.-current>a span {
		background: #115bfb;
		color: #fff;
		padding: 7px;
		border-radius: 4px;
	}
}

/*-------------------------------
グローバルナビ現在地-子ぺーじ
-------------------------------*/
@media (min-width: 960px) {

	c-gnav>li:hover>a,
	.c-gnav>.current-page-ancestor>a span {
		background: #115bfb;
		color: #fff;
		padding: 7px;
		border-radius: 4px;
	}
}

/*-------------------------------
お知らせバー左よせ
-------------------------------*/
@media (min-width: 960px) {
	.c-infoBar__text.-flow-off {
		align-items: none;
		display: block;
		flex-wrap: wrap;
		justify-content: center;
		text-align: left;
		width: 1200px;
		margin: 0 auto;
	}
}

/*-------------------------------
メールフォーム
-------------------------------*/

.wpcf7-form-control-wrap {
	display: block;
	padding-bottom: 15px;
}

.wpcf7 input[type=text],
.wpcf7 input[type=tel],
.wpcf7 input[type=email] {
	width: 100%;
	border-radius: 4px;
	margin-top: 5px;
}

.wpcf7 textarea {
	width: 100%;
	border-radius: 4px;
	margin-top: 5px;
}

.wpcf7 select {
	width: 100%;
	border-radius: 4px;
	padding: .45em .5em;
	margin-top: 5px;
}

.wpcf7 br {
	display: none;
}

.wpcf7-checkbox {
	display: block;
	margin-top: 5px;
}

.wpcf7-list-item {
	display: block;
}

.wpcf7-acceptance {
	margin-top: 5px;
}

.wpcf7 .ninni {
	padding: 2px 6px;
	font-size: 10px;
	background: #999999;
	color: #FFFFFF;
	border-radius: 4px;
	margin-right: 5px;
}

.wpcf7 .hissu {
	padding: 2px 6px;
	font-size: 10px;
	background: #aa0000;
	color: #FFFFFF;
	border-radius: 4px;
	margin-right: 5px;
}

input[type="submit"] {
	display: block;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	font-weight: bold;
	width: 250px;
	padding: 10px;
	border-radius: 150px;
	background-color: #0205D4;
	border: none;
	color: #fff;
	cursor: pointer;
	align-content padding: 2px 10px;
	margin-top: 20px;
	margin-left: auto;
	margin-right: auto;
}


/*-------------------------------
フローティングボタン（SP）
-------------------------------*/

@media (max-width: 959px) {
	body {
		padding-bottom: 65px;
		/* 固定メニューの高さに合わせて余白を設定 */
	}

	.p-fixBtnWrap {
		bottom: 5.5em;
		/* 上に戻るボタンの位置を上に */
	}

	#before_footer_widget {
		display: block;
		position: fixed;
		left: 0;
		bottom: 0;
		width: 100%;
		z-index: 99;
		background-color: #142241;
		padding: .9em .3em;
		border-top: solid 1px #303e5e;
	}

	#before_footer_widget a {
		width: 100%;
	}

}

@media (min-width: 960px) {
	#before_footer_widget {
		display: none;
		/* PCでは非表示にする */
	}
}

/*-------------------------------
TOPメインビジュアル
-------------------------------*/

.p-mainVisual__slideTitle {
	font-size: 4.8vw;
	line-height: 1.5;
}

.p-mainVisual__slideTitle span {
	display: inline-block;
	font-size: 5.5vw;
	font-weight: bold;
	padding-top: 10px;
}

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

	.p-mainVisual__slideTitle span {
		font-size: 40px;
	}
}

/*-------------------------------
フッター余白
-------------------------------*/

@media (max-width: 959px) {
	.w-footer__box {
		padding: 0;
		margin: 0 !important;
	}
}

.l-footer__foot {
	border-top: solid 1px #303e5e;
}

/*-------------------------------
タイトル高さ
-------------------------------*/
@media (min-width: 600px) {
	.l-topTitleArea {
		min-height: 10em;
	}
}

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

.l-footer .copyright a {
	color: #08c9ff;
}
/* ヘッダー固定＋影＋高さ調整 */
.fixed-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
    background-color: #ffffff;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    
    /* ▼ ここで高さを調整します ▼ */
    padding-top: 20px;    /* 上の隙間（数字を小さくすると狭くなります） */
    padding-bottom: 20px; /* 下の隙間 */
}
/* 角丸と影のデザイン */
.styled-box {
    border-radius: 20px; /* ←角の丸み具合。数字が大きいほど丸くなります */
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15); /* ←影の設定 */
    overflow: hidden; /* ←中身が角丸からはみ出さないようにするおまじない */
}
/* オレンジ色の影がついたボックス */
.orange-shadow-box {
    /* 影の設定：横方向 縦方向 ぼかし具合 色（薄いオレンジ赤） */
    box-shadow: 0 5px 15px rgba(255, 165, 0, 0.15);
    /* 角を少し丸くする設定（見本に近づけるため） */
    border-radius: 8px;
}
/* 3つの成功事例ボックス（角丸・影） */
.success-box {
    border-radius: 15px; /* 角を丸くする */
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1); /* ふんわりした影 */
    overflow: hidden; /* はみ出し防止 */
}

/* 下の引用ボックス（角丸・青い左線） */
.quote-box-rounded {
    border-radius: 12px; /* 角を丸くする */
    /* もし左の線の色や太さを変えたい場合は下を調整 */
    border-left-color: #2b6cb0 !important; /* 線の色を濃い青に（見本合わせ） */
    border-left-width: 5px !important;    /* 線の太さを少し太く */
}
/* フォーム内の注釈テキストのデザイン */
.form-notes {
    font-size: 12px;       /* 文字を小さくする */
    color: #666666;       /* グレーにする */
    margin-top: 20px;     /* 上に余白を作る */
    margin-bottom: 5px;   /* チェックボックスとの距離を縮める */
    line-height: 1.5;     /* 行間を整える */
}