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


/* 260115_全体共有 */
.weight-600{
	font-weight: 600;
}

/* 260121_フォントサイズ調整 */
/*html{
	font-size: 62.5%;
}*/

/* 子テーマの style.css か［外観 › 追加 CSS］の最終行にコピペ */
:root{
  /* 1vw = ビューポート幅 × 1% なので
     100vw ÷ 144 ＝ 0.694444…vw と同義                       */
  --vw: 100vw;                               /* なくても OK。可読性用 */
  --swl-fz--root: calc(var(--vw) / 144);     /* = 0.694444vw */
}

/* ────────────────────────────────────────────
   モバイル基準（幅 767px 以下は 750px デザイン幅を採用）
   750px で 1rem = 10px → 式 = 100vw ÷ 75
   ────────────────────────────────────────────*/
@media (max-width: 600px){
  :root{
    --swl-fz--root: calc(100vw / 75);
  }
}

/* テーマパネルがあとから上書きする場合は !important を付ける */
html{ font-size: var(--swl-fz--root) !important; }

/* フォントサイズ調整ここまで */

/* h2デザイン調整 */
.page h2,.single h2{
	background: #f1101312;
}

/* カテゴリーマーク調整 */
.c-categoryList__link{
	color: #f11013;
    border: 1px solid #f11013;
    border-radius: 10px;
    background: #f1101312;
}

/* 全体共通ここまで*/



/* 260121_パンくず */
.p-breadcrumb__list {
    flex-wrap: wrap; //記事名が長い場合は折り返す
}

.single .p-breadcrumb__item:last-child>span.p-breadcrumb__text {
    display: block!important; //記事名の表示
    opacity: 1; //記事名を半透明にしない
    white-space: pre-wrap;//記事名が長い場合は折り返す
}
/* パンくずここまで */


/* 260118_ヘッダー */
.header_button_red>a{
	white-space: nowrap;
}

.c-gnav{
	font-weight: 600;
}
/* ヘッダーここまで */


/* 260118_ハンバーガーメニュー */
./* ===================
ハンバーガーメニュー
====================== */
/* メニューアイコン（デフォルト時） */
.-menuBtn .c-iconBtn__icon {
	width: 24px;
	height: 2px;
	background-color: #333;
	display: grid;
	place-items: center;
	transition: transform .3s;
	
	&::before,
	&::after {
		grid-area: 1 / 1;
		content: '';
		display: block;
		inset: 0;
		width: 24px;
		height: 2px;
		background-color: #333;
		transition: transform .3s;
	}
	
	&::before {
		transform: translateY(-8px);
	}
	
	&::after {
		transform: translateY(8px);
	}
}

/* メニューアイコン（オープン時） */
[data-spmenu=opened] {
	
	.-menuBtn .c-iconBtn__icon::before {
			padding-top: 12px;
	}
	
	.-menuBtn .c-iconBtn__icon {
		background-color: transparent;
	}
	
	.-menuBtn .c-iconBtn__icon::after {
		transform: rotate(-45deg);
	}
}

/* ボタンラベル */
.l-header__menuBtn .c-iconBtn::after,
.p-spMenu__closeBtn .c-iconBtn::after {
	font-size: 10px;
	line-height: 10px;
	transform: translateY(12px);
}

/* ボタンラベル（開くボタン） */
.l-header__menuBtn .c-iconBtn::after {
/* 	content: 'MENU'; */
}

/* ボタンラベル（閉じるボタン） */
.p-spMenu__closeBtn .c-iconBtn::after {
/* 	content: 'CLOSE'; */
}

/* メニュー */
.p-spMenu__inner {
  width: 100%;
  height: 100%;
  transform: translateX(0)!important;
  opacity: 0;
  transition: opacity .5s ease-out!important;
}

/* メニュー（オープン時） */
[data-spmenu="opened"] .p-spMenu__inner {
  opacity: 1;
}

/* 背景色をぼかす */
.p-spMenu__inner::before {
	background: rgb(255 255 255 / .8);
	backdrop-filter: blur(5px);
	-webkit-backdrop-filter: blur(5px);
}

/* メニューをフェードイン */
.p-spMenu__body {
	opacity: 0;
	transform: translateY(20px);
}

[data-spmenu="opened"] .p-spMenu__body {
	opacity: 1;
	transform: translateY(0);
	transition: opacity 1s ease-in, transform .7s ease-out;
}

/* 既存のメニューを削除 */
.c-widget__title.-spmenu,
.p-spMenu__nav {
  display:none;
}

/* リンクリストメニュー余白 */
.p-spMenu__body .swell-block-linkList {
	gap: 2em;
}

.hb_link{
	font-weight: 600;
}

.l-header__customBtn.sp_{
	width: auto;
	margin: 8px 0;
	border-radius: 24px;
}

.l-header__customBtn.sp_ span{
	padding: 10px 24px;
	font-size: 14px;
}

.c-iconBtn__icon.icon-search{
	display: none;
}

.c-iconBtn__label{
	font-size: 14px;
}

.l-header__inner.l-container{
	padding: 0 1em;
}

/*　ハンバーガーメニューここまで */



/* 260115_Top調整 */
/* 260121_FV調整 */
.fv_text-1{
	font-size: 4.8rem;
}

.fv_button{
	font-size: 2.4rem;
}

@media(min-width: 1440px){
	.fv_text-1{
	font-size: 48px;
}

.fv_button{
	font-size: 24px;
}
}

@media(max-width: 600px){
	.p-mainVisual__slideTitle{
	text-align: center;
		font-size: 32px;
		font-weight: 900;
	}
}

.top_merit_full,.top_account_full,.top_type_full,.top_process_full{
	padding: 4em 7.625em!important;
}

.top_merit_full>.swell-block-fullWide__inner.l-container,.top_account_full>.swell-block-fullWide__inner.l-container,.top_type_full>.swell-block-fullWide__inner.l-container,.top_process_full>.swell-block-fullWide__inner.l-container{
	max-width: 1440px;
	padding: 0;
}
/* FVここまで、以下セクション*/
/* 人気の理由セクション */
.top_merit_wrap{
	margin-bottom: 3.2em;
}

.top_merit_sub{
	margin-bottom: 0px;
	display: flex;
	align-items: center;
}

.top_merit_sub::before{
	content: "";
	width: 80px;
	height: 1px;
	background: #f11013;
	margin-right: 4px;
}

.top_merit_title-box{
	margin-bottom: 16px;
}

.top_merit_title-box:nth-of-type(3){
	margin-bottom: 0;
}

.top_merit_img-right img{
	display: block;
	margin-right: 0;
	margin-left: auto;
}

.top_merit_img-left img{
	display: block;
	margin-right: 0;
}
/* 人気の理由セクション */

/* 口座タイプセクション */
.top_account_box{
	width: 330px!important;
	background: #fff;
	margin-left: 1em!important;
	padding: 60px 16px!important;
}

.top_account_box-title{
	margin-bottom: 8px;
}

.top_account_name-gp{
	margin-bottom: 2.5em!important;
}

.top_account_name-gp hr{
	margin: 2em auto!important;
}

.top_account_line{
	margin: 1.5em 0!important;
}

.c-scrollHint{
	display: none;
}
/* 口座タイプセクションここまで */

/* 入出金方法セクション */
.top_type_table-left{
	padding: 4em;
    border-collapse: separate;
    background: #F3F7FF;
    border: 1px solid #0051FF;
	box-shadow: 0px 0px 16px -6px rgba(0,0,0,0.37);
}

.top_type_button{
	padding-bottom: 1em!important;
}
/* 入出金方法セクションここまで */

/* 口座開設手順セクション */
.swell-block-columns__inner:has(.top_process_wrap){
	justify-content: space-evenly;
}

.top_process_wrap{
	background: #fff;
	padding: 1.3em 1.3em!important;
	width: 283px!important;
}

@media(min-width: 1441px){
	.top_process_wrap{
	flex: 1!important;
	}
}

.top_process_wrap-title{
	margin-bottom: .5em;
}

.top_process_wrap-gp{
	position: relative;
}

.top_process_wrap-nb{
	position: absolute;
	left: 0;
}
/* 口座開設セクションここまで */

/* SPサイズ調整 */
@media(max-width: 660px){
	.top_merit_full,.top_account_full,.top_type_full,.top_process_full{
		padding: 2em 1.3em!important;
	}
	.top_merit_wrap>.swell-block-columns__inner{
		gap: 0.8em;
	}
	.top_merit_title-box{
	margin-bottom: .6em;
	}
	.top_merit_sub::before{
	content: "";
	width: 60px;
	height: 1px;
	background: #f11013;
	margin-right: 4px;
	}
	.top_merit_wrap{
		margin-bottom: 2.2em;
	}
	.top_account_box{
	width: 266px!important;
	}
	.top_account_slide>.swell-block-columns__inner>.top_account_box:nth-of-type(1){
		margin-left: 0!important;
	}
	.top_type_tab>.c-tabBody{
		background: #F3F7FF;
		padding: 2em 1em;
		border: 1px solid #0051ff45;
		box-shadow: 0px 0px 16px -6px rgba(0,0,0,0.37);
	}
	.top_process_wrap{
		width: auto!important;
	}
}
/* SPサイズ調整ここまで */
/* TOP調整ここまで */


/* 260121_フローティングバナー調整*/
/* フローティングバナー本体 */
#before_footer_widget{
	margin: 0;
}

#before_footer_widget .l-container{
	padding: 0;
}

.floating-banner {
  position: fixed;
  bottom: 20px;
  right: 20px;
  max-width: 300px;
  z-index: 9999;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
  transition: opacity 0.3s ease, transform 0.3s ease;
}

/* 非表示状態 */
.floating-banner.is-hidden {
  opacity: 0;
  transform: translateY(20px);
  pointer-events: none;
}

/* 閉じるボタン */
.floating-banner-close {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 32px;
  height: 32px;
  background: rgba(0, 0, 0, 0.6);
  color: #fff;
  border: none;
  border-radius: 50%;
  font-size: 24px;
  line-height: 1;
  cursor: pointer;
  z-index: 10;
  transition: background 0.2s ease;
  display: flex;
  align-items: center;
  justify-content: center;
}

.floating-banner-close:hover {
  background: rgba(0, 0, 0, 0.8);
}

/* 画像の調整 */
.floating-banner img {
  display: block;
  width: 100%;
  height: auto;
}

/* スマホ対応 */
@media (max-width: 960px) {
  .floating-banner {
    display: none !important;
  }
}

/* SP：フローティングバナー */
.top_banner-sp{
	position: fixed;
    bottom: 0;
    width: 100%;
	background: #000000b3;
    z-index: 10;
}

.top_banner-sp img{
	width: 65%;
}
/* フローティングバナーここまで */


/* 260118_フッター調整*/
.l-container.w-footer.-col1,.l-footer__widgetArea,.w-footer__box{
	margin: 0;
	padding: 0;
}

#footer .swell-block-fullWide__inner.l-container{
	max-width: 1440px;
}

.footer_full{
	padding-right: 122px;
	padding-left: 122px;
}

.footer_black_right{
	border-left: 1px solid #fff;
    padding-left: 1.3em !important;
}

.footer_link{
	justify-content: flex-end;
}

.footer_link a:hover{
	text-decoration: none!important;
}

.footer_link_privacy{
	border-right: 1px solid #333;
    border-left: 1px solid #333;
    padding: 0 0.5em;
}

.l-footer__foot{
	display: none;
}

.footer_top_full-sp{
	padding-top: 4em!important;
}

.footer_top_full-sp,.footer_black_full-sp,.footer_name_full-sp,.footer_under_full-sp{
	padding-left: 15px!important;
	padding-right: 15px!important;
}

@media(max-width: 600px){
	.footer_black_right{
	border-left: none;
    padding-left: 0!important;
	}
	.footer_link_privacy{
	border-right: none;
    border-left: none;
    padding: 0;
	}
}
/* footerここまで */


/* 260118_よくあるご質問のみ専用サイドバー調整 */
/*#body_wrap:not(.page-id-297) aside{
	display:none;
}*/
.faq_side_title{
	background: #e11618;
	color: #fff;
	padding: 1em 0;
	font-size: 18px;
	font-weight: 600;
	margin-bottom: 0;
}

.faq_side_category{
	padding-top: .5em;
	background: #f8f8f8;
}


.faq_side_category>.cat-item{
	font-size: 16px;
	padding: .5em 1em 0;
}

.faq_side_category>.cat-item.>a{
	padding-bottom: 1em;
}

.faq_side_category>.cat-item.cat-item-1{
	padding-bottom: .5em;
}

.faq_side_category>.cat-item.cat-item-1>a{
	border: none;
}
/* よくあるご質問のみ専用サイドバー表示、ここまで */


/* 260120_カテゴリー記事一覧ページ調整 */
.archive.category .c-pageTitle>.c-pageTitle__inner>small.archive.category .p-postList__thumb.c-postThumb{
	display: none!important;
}

.archive.category .c-pageTitle{
	font-size: 64px
}

.archive.category .c-pageTitle__inner{
padding-left: 0!important;
padding-bottom: 1.4em!important;
	padding-top: 1em;
}

.archive.category .c-pageTitle[data-style=b_bottom] .c-pageTitle__inner,.-type-simple .p-postList__link{
	border: none;
}

.archive.category .c-pageTitle{
	border-bottom: 4px solid #B3B3B3!important;
}

.archive.category .c-pageTitle::before{
  content: '';
  position: absolute;
  bottom: -4px;
  width: 20%;
  height: 4px;
  background: #0051FF;
}

.archive.category .l-mainContent__inner>.post_content{
	margin-top: 2em!important;
}

.archive.category .faq_article_list .p-postList__item{
	margin-bottom: 1.3em;
}

.archive.category .p-postList__item a{
	padding: 2.5em 1.3em;
    background: #f8f8f8;
	flex-direction: column;
}

.archive.category .p-postList__thumb.c-postThumb{
	display: none;
}

.archive.category .p-postList__body{
	width: 100%;
}

.archive.category .c-postTitle{
	font-size: 18px;
	color: #0051ff;
	padding-left: 1.5em;
	margin-bottom: 0;
}

.archive.category .c-postTitle>.c-postTitle__ttl{
	font-size: 18px;
}

.archive.category .c-postTitle::before{
	content: "Q";
	color: #0051ff;
	position: absolute;
	left: 0;
	top: 0;
}

.archive.category .p-postList__excerpt{
	font-size: 16px;
	padding-left: 1.5em;
	font-weight: 500;
	margin-top: 1em;
}

.archive.category .p-postList__excerpt::before{
	content: "A";
	color: #F41112;
	position: absolute;
	left: 0;
  font-weight: 500;
  font-size: 18px;
}

.archive.category .p-postList__body{
	display: flex;
	flex-direction: column;
}

.archive.category .p-postList__excerpt{
	order: 1;
}


.archive.category .p-postList__meta{
	order: 2;
	justify-content: flex-end;
}

.archive.category .-type-big .p-postList__body::after,.archive.category .p-postList__link:hover .p-postList__body:after{
	display: none;
}


.archive.category

.archive.category .p-postList__meta{
	margin-top: 1.5em;
	justify-content: flex-end;
}

.archive.category #sidebar{
	padding-top: 19em;
}

.archive.category .-type-big .p-postList__item:not(:last-child){
	border: none;
	padding-bottom: 0;
	margin-bottom: 20px;
}

@media(max-width: 600px){
	.archive.category .c-pageTitle{
	font-size: 32px!important;
}
.archive.category .p-postList__item a{
	padding: 20px 10px!important;
    background: #f8f8f8;
	flex-direction: column;
}
.archive.category #sidebar{
  margin: 0;
  padding: 0;
}
}
/* カテゴリー記事一覧ページ調整ここまで */


/* 260122_固定ページ調整 */
.c-pageTitle{
	font-size: 40px;
}


@media(min-width: 1440px){
	.l-topTitleArea {
        min-height: 240px;
        padding: 12em 0;
    }
}

/* SP調整 */
@media (max-width: 600px) {
	.c-pageTitle{
	font-size: 4rem;
	}
	.l-topTitleArea{
		padding: 10em 0;
	}
}