@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700:900&display=swap');

sup {
	font-size: 70%;
	vertical-align: text-top;
}

header {
    transition: .5s;
}

.page_osusume3 .fv{
    position: relative;
}	
.page_osusume3 .fv p {
    position: absolute;
    text-align: center;
    margin: 0 auto;
    top: 32%;
    width: 100%;
    font-size: 1.2rem;
    line-height: 1.3;
    color: #fff;
    font-weight: bold;
    z-index:10;
}	
.page_osusume3 .fv p span {
    font-weight: bold;
    color: #ff0;
    font-size: 1.5rem;
    line-height: 1.1;
}
.fv .date {
    color: #fff;
    font-weight: bold;
    font-size: 3vw;
    position: absolute;
    top: 3%;
    left: 3%;
    text-align: center;
    z-index: 3;
}

.ribbon {
    background: url("../img/osusume3/ribon_bg.png") center / 100% 100% no-repeat;
    height: 45px;
    padding: 8px 0 0;
    margin: 0 0 5px;
    color: #fff;
}
.ribbon.rbn01 {
    background: url("../img/osusume3/ribon_bg01.png") center / 100% 100% no-repeat;
    color: #fff000;
}
.ribbon p {
    font-size: 12px;
    font-weight: bold;
    line-height: 1.2;
}
 .ribbon p span {
    font-size: 1.1em!important;
    font-weight: bold!important;
}

.spacer {
    padding-top: 65px;
}

.hide {
    transform: translateY(-100%);
}

.client_box .heading {
	text-align: center!important;
}

#anchor {
    content: "";
    margin-top: -70px;
	padding-top: 70px;
    vertical-align: top;
}

.page_osusume3 .anchor {
    margin-top: -80px;
    padding-top: 80px;
}

.page_osusume3 .section03 .ttl {
    background-color: #ffeda4;
    margin: 0 auto;
    color: #bd1f39;
    text-align: center;
    font-weight: bold;
}

.page_osusume3 .section04 .client_box > li {
    margin-top: 10px;
}

.page_osusume3 .section04 .client_box li .inner_{
    position:relative;
}
/*.page_osusume3 .section04 .client_box li .inner_::before{
    content: "";
    width: 63px;
    height: 77px;
    background: transparent url(../../img/osusume3/btn_side_marutaka.png) 0 0 no-repeat;
    bottom: 0;
    left: -5px;
    position: absolute;
    z-index: 100;
    background-size: 100%;
}*/
.page_osusume3 .section04 .client_box #fxbroadnet h3::before {
    background-image: url(../../img/osusume2/bar_rank6.png);
}
.page_osusume3 .section04 .client_box .fifth_company h3::before {
    background-image: url(../../img/osusume2/bar_rank5.png);
}
.page_osusume3 .section04 .client_box .importantpoints {
    font-size: 12px;
    line-height: 1.2em;
	padding-top: 2px;
}
/* 口座開設の流れ非表示＋公式ページボタン中央揃え */
.page_osusume3 .section04 .flow{
    display: none;
}

.page_osusume3 .section05 .ttl p {
    text-align: center;
    font-size: 0.7rem;
    line-height: 1.3;
    color: #fff;
}
.page_osusume3 .section05 .ttl p span {
    font-weight: bold;
    color: #ff0;
    font-size: 1rem;
}
.page_osusume3 .section05 table th,
.page_osusume3 .section05 table td {
	vertical-align: middle;
}
.page_osusume3 .section05 table tbody td:nth-child(2),
.page_osusume3 .section05 table tbody td:nth-child(3),
.page_osusume3 .section05 table tbody td:nth-child(4),
.page_osusume3 .section05 table tbody td:nth-child(5),
.page_osusume3 .section05 table tbody td:nth-child(6),
.page_osusume3 .section05 table tbody td:nth-child(7) {
    padding-top: 8px!important;
    align-content: unset!important;
    vertical-align: top;
}

.page_osusume3 .section06 {
    margin-top: 10px;
    background: #e7e2db;
    padding: 10px;
    position: relative;
}
.page_osusume3 .section06 .inner {
    background: #fff;
    padding: 10px;
}
.page_osusume3 .section06 .heading {
    position: relative;
    text-align: center;
    height: 70px;
    padding-top: 9px;
    font-size: 4.5vw;
    font-weight: bold;
    background: #f43434;
    color: #FFF;
    box-sizing: border-box;
}
.page_osusume3 .section06 .heading:before,
.page_osusume3 .section06 .heading:after {
    position: absolute;
    content: '';
    width: 0px;
    height: 0px;
    z-index: 1;
}
.page_osusume3 .section06 .heading:before {
    top: 0;
    left: 0;
    border-width: 35px 0px 35px 15px;
    border-color: transparent transparent transparent #fff;
    border-style: solid;
}
.page_osusume3 .section06 .heading:after {
    top: 0;
    right: 0;
    border-width: 35px 15px 35px 0px;
    border-color: transparent #fff transparent transparent;
    border-style: solid;
}
.page_osusume3 .section06 .inner .name {
    margin-top: 10px;
    background: url(../../img/osusume2/ttl_bg.png) repeat center top;
    padding: 10px 10px 10px 30px;
    color: #fff;
    font-size: 4.5vw;
    font-weight: bold;
}
.page_osusume3 .section06 .inner .wrap {
    margin-top: 20px;
    width: 100%;
    display: table;
    table-layout: fixed;
}
.page_osusume3 .section06 .inner .wrap .txt {
    padding-left: 10px;
}
.page_osusume3 .section06 .inner .btn {
    margin-top: 10px;
}
.page_osusume3 .section06 .inner .btn a {
    transition: 0s;
    display: block;
    text-decoration: none;
    color: #fff;
    font-size: 4vw;
    font-weight: bold;
    background: #e4233a;
    border-radius: 5px;
    padding: 12px 10px 10px;
    text-align: center;
    line-height: 1.4;
    border: none;
    border-bottom: 5px solid #b4222b;
    webkit-box-shadow: none;
    box-shadow: none;
}
.page_osusume3 .section06 .inner .wrap p span {
    color: #e51d37;
    font-weight: bold;
}

.cp_menu {
	margin-top: 20px;
}
.acd-label {
    position: relative;
    cursor: pointer;
}
.acd-label {
    background: #609e06;
    color: #fff;
    display: block;
    margin-bottom: 1px;
    padding: 14px;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
}
.acd-label span {
    position: absolute;
    width: 30px;
    height: 30px;
    right: 20px;
    top: 50%;
    margin-top: -15px;
    background: #fff;
    border-radius: 50%;
}
.acd-label span::before {
    width: 14px;
    height: 2px;
    top: 14px;
    left: 8px;
}
.acd-label span::after {
    width: 2px;
    height: 14px;
    top: 8px;
    left: 14px;
}
.acd-label:active span::after {
	display: none;
}

.acd-label span::before, .acd-label span::after {
    content: "";
    position: absolute;
    background: #609e06;
}
.acd-check{
    display: none;
}
.acd-label {
	position: relative;
	cursor: pointer;
}
.acd-label{
    background: #609e06;
    color: #fff;
    display: block;
    margin-bottom: 1px;
    padding: 14px;
    font-size:18px;
    font-weight: bold;
    text-align: center;
}

.page_osusume3 .section_top_client .inner {
	padding: 0px 5px;
}
.page_osusume3 .section_top_client ul li {
	padding: 4px;
}

.step_image {
	text-align: center;
}

.exchangerate{
	margin: 40px auto;
    position: relative;
}
.exchangerate .ttl{
	background: url(../../img/osusume2/ttl_bg.png) repeat center top;
}
.exchangerate .ttl .ttl_inner {
    margin: 0 auto;
    padding:20px 10px;
    position: relative;
	display: flex;
    justify-content: center;
    align-items: center;
	text-align: center;
	color:#fff; 
	line-height: 1.4;
	font-size: 0.7rem;
}
.exchangerate .ttl .ttl_inner strong {
	font-weight: bold;
	color: #ffee35;
	font-size: 1rem;
}
.exchangerate .ttl .ttl_inner span {
	display: inline-block;
    margin: 0 5px;
    vertical-align: -5px;
}
.exchangerate .inner{
	background: #fff;
	margin: 0 10px;
    padding: 20px 10px;
	font-size: 14px;
    box-shadow: 0 0 10px #e4e4e4;
}
.exchangerate .inner .flex .img .heading {
    margin-bottom: 10px;
    padding: 10px 10px 7px;
    background: #184092;
    font-size: 15px;
    text-align: center;
    line-height: 1.4;
    font-weight: 700;
    color: #fff;
}
.exchangerate .inner .flex .img{
    margin-bottom: 20px;
}
.exchangerate .inner .text p{
    text-align: left;
    margin-bottom: 20px;
}
.exchangerate .inner .text .marker{
	background: linear-gradient(transparent 60%, #ffff66 60%);
	font-weight: 700;
}
.exchangerate .inner .text .red {
    color: red;
    font-weight: 700;
}

#acMenu dt{
	display:block;
	text-align:left;
	cursor:pointer;
	font-size: 12px;
}
#acMenu dd{
	text-align:left;
	display:none;
	font-size: 12px;
}
#acMenu .open_btn {
	text-decoration: underline;
	color: #0070C0;
}

.page_osusume3 .client_archive_table2 table thead th.sticky:nth-child(2),
.page_osusume3 .client_archive_table2 table tbody th.sticky {
	left: 40px;
}
.page_osusume3 .section05 .client_archive_table2 table tbody th.sticky {
	left: 0;
}
.page_osusume3 .client_archive_table2 table thead th.sticky:nth-child(2)::before,
.page_osusume3 .client_archive_table2 table tbody th.sticky::before,
.page_osusume3 .client_archive_table2 table thead th.sticky:nth-child(2)::after,
.page_osusume3 .client_archive_table2 table tbody th.sticky::after {
	content: '';
	position: absolute;
	top: 0;
	left: -1px;
	width: 0.5px;
	height: 100%;
	background: #bfbfbf;
}
.page_osusume3 .client_archive_table2 table thead th.sticky:nth-child(2)::after,
.page_osusume3 .client_archive_table2 table tbody th.sticky::after {
	right: 0;
	left: auto;
}

.page_osusume3 .section_recommend .recommend .cta_btn a {
    background: #e8344b;
    border-bottom: 3px solid #a81124;
}

/* 3社掲載 ピックアップ */
.page_osusume3 .pickup_top3 * {
    font-family: "Noto Sans JP", sans-serif;
}
.page_osusume3 .pickup_top3 .tab_section {
    margin-top: 15px;
}
.page_osusume3 .pickup_top3 .tab_section .tabs {
    display: flex;
    justify-content: space-between;
}
.page_osusume3 .pickup_top3 .tab_section .tabs li {
    width: 33%;
}
.page_osusume3 .pickup_top3 .tab_section .tabs li + li {
    margin-left: 1%;
}
.page_osusume3 .pickup_top3 .tab_section .tabs li a {
    display: block;
    padding: 13px 5px 11px;
    text-align: center;
    text-decoration: none;
    border-radius: 10px 10px 0 0;
    background: #afafaf;
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    pointer-events: none;
    transition: 0;
}
.page_osusume3 .pickup_top3 .tab_section .tabs li a:hover {
    background: #184092;
    color: #fddc25;
}
.page_osusume3 .pickup_top3 .tab_section .tabs li.active a {
    background: #184092;
    color: #fddc25;
}
.page_osusume3 .pickup_top3 .tab_section .tab_content {
    display: none;
    padding: 15px 35px;
    border: #184092 1px solid;
}
.page_osusume3 .pickup_top3 .tab_section .tab_content.active {
    display: block;
    background: #fffeeb;
}
.page_osusume3 .pickup_top3 .tab_section .tab_content a {
    text-decoration: underline;
}
.page_osusume3 .pickup_top3 .tab_section .tab_content .c_name {
    margin-bottom: 5px;
    color: #0973a8;
    font-size: 16px;
    text-align: center;
    font-weight: 700;
}
.page_osusume3 .pickup_top3 .tab_section .tab_content .img {
    width: 100%;
    margin: 0 auto
}
.page_osusume3 .pickup_top3 .tab_section .tab_content ul {
    margin: 10px 0;
}
.page_osusume3 .pickup_top3 .tab_section .tab_content ul li {
    position: relative;
    padding-left: 20px;
    font-size: 14px;
}
.page_osusume3 .pickup_top3 .tab_section .tab_content ul li::before {
    content: '';
    position: absolute;
    top: 6px;
    left: 0;
    width: 16px;
    height: 16px;
    background: url("../../img/osusume3/ico_check.png") no-repeat left top / 100% auto;
}
.page_osusume3 .pickup_top3 .tab_section .tab_content ul li strong {
    color: #e8344b;
    font-weight: 700;
}
.page_osusume3 .pickup_top3 .tab_section .tab_content .btn a {
    padding: 15px 5px;
    font-size: 16px;
    text-decoration: none;
}

.footer {
    margin-bottom: 80px;
}
.ft_btn {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 10;
    background-color: #333333;
    padding: 0;
}
.ft_btn_area {
    width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}
.ft_btn_area .txt_img {
    width: 500px;
    display: inline-block;
}
.ft_btn_area .official_btn {
    width: 100%;
    display: inline-block;
    padding-top:1px;
}

.exitProtection_overlay {
  background: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99; 
}
.modal_close {
    background: #666666db;
    color: #fff;
    width: 40px;
    line-height: 40px;
    display: block;
    font-size: 20px;
    font-weight: bold;
    position: absolute;
    top: -40px;
    right: -1px;
    text-align: center;
    cursor: pointer;
    text-decoration: none;
}
.exitProtection {
    z-index: 100;
    width:80% !important;
    margin:0 auto;
    position: fixed;
    left:0;
    right:0;
    top: 25%;
    box-sizing: border-box;
}
.exitProtection .huyouhin_info {
    position: relative;
}
.huyouhin_info_btn {
    position: absolute;
    top: 76%;
    padding: 0 10px;
}

/* 離脱ポップ1社掲載 */
.exitProtection2 {
  width: 300px !important;
  margin: 0 auto;
  position: fixed;
  left: 0;
  right: 0;
  top: 13%;
  border: none;
  z-index: 1000;
}
 .exitProtection2 .wrap {
    position: relative;
    padding-top: 40px;
    height: 390px;
    background-image: url("/img/automatic/matsui_fx_exitProtection_bg.png");
    background-size: 100%;
    background-repeat: no-repeat;
    background-position-y: bottom;
}
.exitProtection2 .wrap div{
    position: absolute;
    display:flex;
    justify-content: center;
    left: 50%;
    transform: translateX(-50%);
    bottom: 13px;
}
.exitProtection2 .wrap .image{
    top: 150px;
}	
.exitProtection2 .wrap .image img {
    width: 70%;
    border: 2px solid #fff;
}
.exitProtection2 .wrap div.tel{
    position: absolute;
    display:flex;
    justify-content: center;
    left: 50%;
    transform: translateX(-50%);
    bottom: 120px;
}
.exitProtection2 .wrap div a{
    width:270px;
    display:block;
    outline: none;
    text-align: center;
}
.exitProtection2 .modal_close {
    top: 0;
}
.exitProtection2 a {
    outline: none;
}
.exitProtection2 * {
    box-sizing: border-box;
}


/* ====================================================
   新規デザイン (page_osusume2 section02 用)
==================================================== */
/* 枠線や背景などのベース指定（既存のスタイルがある場合は不要なら削除） */
.page_osusume2 .section02 .inner.custom_ad {
    border: 6px solid #ede8db; /* ベージュ枠 */
    background: #fff;
}

/* コンテンツエリア */
.page_osusume2 .section02 .inner.custom_ad .wrap {
    padding: 20px 10px;
    margin-top: 0;
}
.page_osusume2 .section02 .inner.custom_ad .overview_flex {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 20px;
}
.page_osusume2 .section02 .inner.custom_ad .overview_flex .image {
    width: 45%;
}
.page_osusume2 .section02 .inner.custom_ad .overview_flex .image img {
    width: 100%;
    height: auto;
}
.page_osusume2 .section02 .inner.custom_ad .overview_flex .txt {
    width: 52%;
}
.page_osusume2 .section02 .inner.custom_ad .overview_flex .txt p {
    font-size: 3.5vw;
    line-height: 1.5;
    color: #333;
    margin: 0;
}
.page_osusume2 .section02 .inner.custom_ad .overview_flex .txt p strong {
    font-weight: bold;
}

/* 黄色のバッジ */
.page_osusume2 .section02 .inner.custom_ad .badge {
    background: #ffdb17;
    color: #2b4594;
    font-weight: bold;
    font-size: 3.8vw;
    text-align: center;
    padding: 6px 0;
    width: 85%;
    margin: 0 auto 15px;
    position: relative;
    border-radius: 4px;
}
.page_osusume2 .section02 .inner.custom_ad .badge::after {
    content: '';
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
    border-width: 10px 8px 0;
    border-style: solid;
    border-color: #ffdb17 transparent transparent transparent;
}

/* 特徴テーブル */
.page_osusume2 .section02 .inner.custom_ad .feature_table {
    width: 100%;
    table-layout: fixed;
    border-collapse: collapse;
    margin-bottom: 20px;
}
.page_osusume2 .section02 .inner.custom_ad .feature_table th {
    background: #e2e9f6;
    color: #2b4594;
    font-size: 2.5vw;
    font-weight: normal;
    text-align: center;
    padding: 6px 2px;
    border: 1px solid #f0f0f0;
}
.page_osusume2 .section02 .inner.custom_ad .feature_table td {
    text-align: center;
    padding: 8px 0;
    border: 1px solid #f0f0f0;
    font-size: 2.8vw;
    vertical-align: middle;
    line-height: 1.4;
}
.page_osusume2 .section02 .inner.custom_ad .feature_table td.ft_ico img {
    width: 22px; /* 画像のサイズ。必要に応じて調整してください */
    height: auto;
    vertical-align: middle;
}

/* キャンペーンボックス */
.page_osusume2 .section02 .inner.custom_ad .campaign_box {
    background: #fcf9eb;
    padding: 15px;
    border-radius: 4px;
}
.page_osusume2 .section02 .inner.custom_ad .campaign_box ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.page_osusume2 .section02 .inner.custom_ad .campaign_box ul li {
    position: relative;
    padding-left: 28px;
    font-size: 3.5vw;
    line-height: 1.5;
    margin-bottom: 10px;
    font-weight: bold;
    color: #333;
}
.page_osusume2 .section02 .inner.custom_ad .campaign_box ul li:last-child {
    margin-bottom: 0;
}
/* 青背景の白チェックマーク */
.page_osusume2 .section02 .inner.custom_ad .campaign_box ul li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 2px;
    width: 18px;
    height: 18px;
    background: #2b4594;
    border-radius: 50%;
}
.page_osusume2 .section02 .inner.custom_ad .campaign_box ul li::after {
    content: '';
    position: absolute;
    left: 5px;
    top: 6px;
    width: 7px;
    height: 4px;
    border-left: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(-45deg);
}
.page_osusume2 .section02 .inner.custom_ad .campaign_box .red_txt {
    color: #e51d37;
    font-size: 4vw;
    font-weight: bold;
}

/* ボタン周りの余白 */
.page_osusume2 .section02 .inner.custom_ad .btn {
    text-align: center;
    padding-bottom: 15px;
}
.page_osusume2 .section02 .inner.custom_ad .btn .shiny_btn a {
    display: block;
    width: 90%;
    margin: 0 auto;
    padding: 15px 0;
    border-radius: 5px;
    text-decoration: none;
}