.brandBox .listUl {
gap: 10px;
margin: 0 -10px;
}
}
/*----------------------------------------------------
実績
-----------------------------------------------------*/

.outLinkBox {
position: relative;
z-index: 5;
}
.outLinkBox .linkUl {
display: flex;
flex-wrap: wrap;
}
.outLinkBox .linkUl li {
width: calc(100% / 3);
}
.outLinkBox .linkUl li a {
padding-bottom: 7px;
min-height: 33.33vw;
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: center;
position: relative;
box-sizing: border-box;
}

.outLinkBox .linkUl li .pho {
display: block;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
overflow: hidden;
}

.outLinkBox .linkUl li .pho img {
width: 100%;
height: 100%;
object-fit: cover;
transition: 0.3s;
}
.outLinkBox .linkUl li .subBox {
position: relative;
z-index: 5;
color: #000;
text-align: center;
margin-top: 40px;
margin-bottom: 40px;
}
.outLinkBox .linkUl li .subBox > span {
display: block;
}


@media only screen and (min-width: 1220px) {
.outLinkBox .linkUl li .subBox .ttl {
margin-bottom: 16px;
font-size: 2.0rem;
font-weight: bold;
}
}
@media only screen and (min-width: 1125px) and (max-width: 1219px) {
.outLinkBox .linkUl li .subBox .ttl {
font-size: 1.9rem;
font-weight: bold;
}
}
@media only screen and (min-width: 950px) and (max-width: 1124px) {
.outLinkBox .linkUl li .subBox .ttl {
font-size: 1.8rem;
font-weight: bold;
}
}
@media only screen and (min-width: 860px) and (max-width: 949px) {
.outLinkBox .linkUl li .subBox .ttl {
font-size: 1.6rem;
font-weight: bold;
}
}
@media only screen and (min-width: 770px) and (max-width: 859px) {
.outLinkBox .linkUl li .subBox .ttl {
font-size: 1.5rem;
font-weight: bold;
}
}
@media only screen and (min-width: 751px) and (max-width: 769px) {
.outLinkBox .linkUl li .subBox .ttl {
font-size: 1.4rem;
font-weight: bold;
}
}
@media only screen and (max-width: 750px) {
.outLinkBox .linkUl li .subBox .ttl {
font-size: 2.0rem;
font-weight: bold;
}
}

.outLinkBox .linkUl li .subBox .txt {
font-size: 1.6rem;
}
.outLinkBox .linkUl li .subBox .txt.mb01 {
margin: -5px 0 23px;
}
.outLinkBox .linkUl li .subBox .txt .big {
margin-right: 5px;
color: #FFF;
font-size: 4.8rem;
font-weight: 700;
font-family: "Ubuntu";
font-style: italic;
line-height: 1;
}
.outLinkBox .linkUl li .subBox .price {
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
}
.outLinkBox .linkUl li .subBox .price .num {
font-style: italic;
font-family: "Ubuntu";
}
.outLinkBox .linkUl li .subBox .price .lSub {
padding: 6px 32px 0 0;
font-size: 2rem;
position: relative;
}
.outLinkBox .linkUl li .subBox .price .lSub::before {
margin-top: 4px;
position: absolute;
top: 50%;
right: 0;
width: 24px;
height: 16px;
transform: translateY(-50%);
background: url(../images/top/top_icon01.png) no-repeat left top / 100%;
content: '';
}
.outLinkBox .linkUl li .subBox .price .lSub .num {
margin-right: 5px;
font-size: 2.4rem;
}
.outLinkBox .linkUl li .subBox .price .rSub {
font-size: 2.2rem;
font-weight: bold;
}
.outLinkBox .linkUl li .subBox .price .rSub .num {
margin-right: 5px;
font-size: 3.2rem;
font-weight: bold;
}
@media only screen and (min-width: 751px) {
.outLinkBox .linkUl li a:hover .pho img,
.sec02 .linkUl li a:hover .pho img {
transform: scale(1.05);
}
.pageTop a:hover,
.sec01 .imgBox .textBox .text a:hover {
opacity: 0.7;
}
.sp {
display: none !important;
}
}

@media only screen and (max-width: 750px) {
.outLinkBox .linkUl li {
width: calc(100% / 2);
}
.outLinkBox .linkUl li a {
padding-bottom: 0;
min-height: 50vw;
display: flex !important;
}
.outLinkBox .linkUl li a::before {
}
.outLinkBox .linkUl li .subBox .ttl {
margin-bottom: 12px;
font-size: 1rem;
}
.outLinkBox .linkUl li .subBox .txt {
font-size: 1rem;
}
.outLinkBox .linkUl li .subBox .txt.mb01 {
margin: -3px 0 17px;
}
.outLinkBox .linkUl li .subBox .txt .big {
margin-right: 5px;
font-size: 3.4rem;
}
.outLinkBox .linkUl li .subBox .price .lSub {
margin-right: 3px;
padding: 2px 24px 0 0;
font-size: 1.4rem;
}
.outLinkBox .linkUl li .subBox .price .lSub::before {
margin-top: 2px;
width: 17px;
height: 11px;
background: url(../images/top/top_icon01_sp.png) no-repeat left top / 100%;
}
.outLinkBox .linkUl li .subBox .price .lSub .num {
margin-right: 5px;
font-size: 1.7rem;
}
.outLinkBox .linkUl li .subBox .price .rSub {
font-size: 1.5rem;
}
.outLinkBox .linkUl li .subBox .price .rSub .num {
margin: 2px 5px 0 0;
font-size: 2.1rem;
display: inline-block;
}
}
@media only screen and (max-width: 359px) {
.outLinkBox .linkUl li .subBox .price .lSub .num {
font-size: 1.5rem;
}
.outLinkBox .linkUl li .subBox .price .lSub {
font-size: 1.2rem;
}
.outLinkBox .linkUl li .subBox .price .rSub .num {
font-size: 1.9rem;
}
.outLinkBox .linkUl li .subBox .price .rSub {
font-size: 1.3rem;
}
}
/* stickBox */
.stickBox .stickInner {
position: absolute;
width: 100%;
left: 0;
top: 0;
}
.stickBox.isStick .stickInner {
position: fixed;
}
.stickBox.isBottom .stickInner {
top: auto;
bottom: 0;
}
/*----------------------------------------------------
実績　テキスト
-----------------------------------------------------*/
.leadtxt.purple{
color: #3a0057; /* 文字色 */
}
.leadtxt.yellow{
color: #3c3100; /* 文字色 */
}
.leadtxt.green{
color: #003200; /* 文字色 */
}
.leadtxt.orange{
color: #520000; /* 文字色 */
}
.leadtxt.blue{
color: #000050; /* 文字色 */
}
.leadtxt.magenta{
color: #490014; /* 文字色 */
}
@media only screen and (min-width: 1220px) {
.leadtxt{
font-size: 2.6rem;
font-weight: 700;
line-height: 1.8em;
letter-spacing: 0em;
margin: 30px 0 40px 0;
}
}
@media only screen and (min-width: 1125px) and (max-width: 1219px) {
.leadtxt{
font-size: 2.4rem;
font-weight: 700;
line-height: 1.6em;
letter-spacing: 0em;
margin: 30px 0 40px 0;
}
}
@media only screen and (min-width: 950px) and (max-width: 1124px) {
.leadtxt{
font-size: 2.0rem;
font-weight: 700;
line-height: 1.6em;
letter-spacing: 0em;
margin: 30px 0 40px 0;
}
}
@media only screen and (min-width: 860px) and (max-width: 949px) {
.leadtxt{
font-size: 1.8rem;
font-weight: 700;
line-height: 1.6em;
letter-spacing: 0em;
margin: 30px 0 40px 0;
}
}
@media only screen and (min-width: 770px) and (max-width: 859px) {
.leadtxt{
font-size: 1.6rem;
font-weight: 700;
line-height: 1.6em;
letter-spacing: 0em;
margin: 30px 0 40px 0;
}
}
@media only screen and (min-width: 701px) and (max-width: 769px) {
.leadtxt{
font-size: 1.5rem;
font-weight: 700;
line-height: 1.6em;
letter-spacing: 0em;
margin: 30px 0 40px 0;
}
}
@media only screen and (max-width: 700px) {
.leadtxt{
font-size: 1.0rem;
font-weight: 700;
line-height: 1.8em;
letter-spacing: 0em;
margin: 30px 0 40px 0;
}
}

.leadtxt span{
background-color: #fff;
padding: 12px 8px 12px 8px;
opacity: 1;
}
@media only screen and (min-width: 770px) and (max-width: 859px) {
.leadtxt span{
background-color: #fff;
padding: 10px 8px 10px 8px;
opacity: 1;
}
}
@media only screen and (min-width: 701px) and (max-width: 769px) {
.leadtxt span{
background-color: #fff;
padding: 8px 8px 8px 8px;
opacity: 1;
}
}
@media only screen and (max-width: 700px) {
.leadtxt span{
background-color: #fff;
padding: 8px 8px 8px 8px;
opacity: 1;
}
}


/*----------------------------------------------------
微調整
-----------------------------------------------------*/
.brandBox.brandBox03 .pubHeading02 {
margin-bottom: 20px;
}
.brandBox.brandBox03 .subTxt {
margin-bottom: 30px;
}
.brandBox.brandBox03 .pubBtn {
margin-top: 48px;
justify-items: center;
}
.brandBox.brandBox03 .pubBtn a {
height: 50px;
margin: auto;
}
.brandBox.brandBox03 .listUl .pubBtn.tel a {
font-size: 26px !important;
font-weight: 400;
font-family: "Ubuntu";
}
}
.brandBox.brandBox03 .subTxt {
margin-bottom: 30px;
}
@media only screen and (min-width: 751px) and (max-width: 1049px) {
.brandBox.brandBox03 .listUl {
gap: 35px !important;
margin: 0 -20px;
}
.brandBox.brandBox03 .listUl li {
width: 210px;
}
}
@media only screen and (max-width: 700px) {
.brandBox .listUl {
gap: 10px;
margin: 0 -10px;
}
.brandBox .listUl li {
width: 108px;
}
}
.brandBox02 .subTxt {
    text-align: center;
}
/*----------------------------------------------------
CTAエリアのレイアウト調整 gemini
-----------------------------------------------------*/
/* PC・共通設定 */
p.text-banner-top {
display: block;
width: 100%;
margin: 0 auto;
word-break: break-word;
}
/* 改行コントロール用のクラス */
p.text-banner-top br {
display: block;
}
/* スマホ版（750px以下）の微調整 */
@media screen and (max-width: 750px) {
p.text-banner-top {
font-size: 1.4rem; /* 少し大きくして可読性アップ */
line-height: 1.8;
padding: 0 10px;
box-sizing: border-box;
}
/* スマホで改行を維持したい箇所の制御 */
.sp-br {
display: block;
content: "";
margin-top: 0.5em;
}
}
/*----------------------------------------------------
CTA LP 資料請求のみ
-----------------------------------------------------*/
/* 親の箱：上下中央揃えを強制する */
.lp-brand-layout .pubBox {
display: flex !important;
align-items: center !important; /* これで上下中央になります */
justify-content: space-between !important;
padding: 58px 0 60px !important;
gap: 20px !important;
height: auto !important; /* 高さを自動にして中身に合わせる */
}
/* タイトル自体の余計な上マージンを消す */
.lp-brand-layout .pubHeading02 {
margin-top: 0 !important;
margin-bottom: 0 !important;
line-height: 1.4 !important; /* 行間を整えて中央感を出す */
flex-shrink: 0 !important;
}
/* 右側のリスト：余計な余白を消し、中身を中央に寄せる */
.lp-brand-layout .listUl {
display: flex !important;
margin: 0 !important;
padding: 0 !important;
list-style: none !important;
}
/* アイコンとボタンを包む li：ここを縦並び・中央揃えにする */
.lp-brand-layout .listUl li {
display: flex !important;
flex-direction: column !important; /* 縦に並べる */
align-items: center !important; /* 中央揃え（これでボタンも中央に来ます） */
gap: 15px !important; /* アイコンとボタンの間隔 */
width: 280px !important; /* ここで右側エリアの幅を確保 */
}
/* アイコン画像のサイズ固定 */
.lp-brand-layout .listUl .image {
width: 110px !important;
margin: 0 auto !important;
}
/* ボタンの修正：幅を「修正前」に近いサイズに固定 */
.lp-brand-layout .pubBtn {
margin: 0 auto !important; /* 中央配置 */
width: 240px !important; /* ボタンの横幅（お好みで調整してください） */
float: none !important; /* 万が一の回り込み解除 */
}
.lp-brand-layout .pubBtn a {
display: block !important;
width: 100% !important;
padding: 15px 10px !important; /* 上下パディングで高さを出す */
height: auto !important;
text-align: center !important;
}
/* スマホ用：縦並びに戻す */
@media only screen and (max-width: 750px) {
.lp-brand-layout .pubBox {
display: block !important;
}
.lp-brand-layout .listUl {
justify-content: center !important;
margin-top: 30px !important;
}
.lp-brand-layout .listUl li {
width: 100% !important;
}
}
/*----------------------------------------------------
レスポンシブ CTA
-----------------------------------------------------*/
@media only screen and (max-width: 700px) {
.brandBox .pubHeading02 {
text-align: center;
}
}
/*----------------------------------------------------
cta
-----------------------------------------------------*/
.brandBox .listUl .pubBtn a {
margin: 0 auto;
width: 100%;
height: 65px;
color: #000;
background-color: #fff !important;
border: none;
font-size: 2.2rem;
font-weight: 500;
}
@media only screen and (min-width: 1051px) {
.pubBtn.large a {
width: 100%;
height: 66px;
display: flex;
align-items: center;
justify-content: center;
color: #000;
font-size: 2.2rem;
font-weight: 500;
border: 1px solid #000;
background-color: #e6ff00;
border-radius: 50px;
transition: .3s;
position: relative;
gap: 14px;
}
}
@media only screen and (min-width: 751px) and (max-width: 1050px) {
.pubBtn.large a {
width: 708px;
height: 66px;
display: flex;
align-items: center;
justify-content: center;
color: #000;
font-size: 2.2rem;
font-weight: 500;
border: 1px solid #000;
background-color: #e6ff00;
border-radius: 50px;
transition: .3s;
position: relative;
gap: 14px;
}
}
@media only screen and (min-width: 701px) and (max-width: 750px) {
.pubBtn.large a {
width: 708px;
height: 50px;
display: flex;
align-items: center;
justify-content: center;
color: #000;
font-size: 2.2rem;
font-weight: 500;
border: 1px solid #000;
background-color: #e6ff00;
border-radius: 50px;
transition: .3s;
position: relative;
gap: 14px;
}
}
@media only screen and (max-width: 700px) {
.pubBtn.large a {
width: 88%;
height: 40px;
display: flex;
align-items: center;
justify-content: center;
color: #000;
font-size: 1.4rem;
font-weight: 500;
border: 1px solid #000;
background-color: #e6ff00;
border-radius: 50px;
transition: .3s;
position: relative;
gap: 14px;
margin: auto;
}
}
.brandBox.brandBox03 .pubBtn.large a:hover {
background-color: #938853 !important;
color: #fff !important;
}
/*----------------------------------------------------
cta チェックリスト
-----------------------------------------------------*/
.problems .whiteBox {
width: 490px;
margin-top: 48px;
margin-bottom: 40px;
padding: 30px 39px 30px;
color: #000;
background: #fff;
justify-self: center;
}
.problems .sub01 .textList li::before {
width: 26px;
height: 26px;
position: absolute;
left: 0;
top: 10px;
background: url(../images/lp/icon01.png) no-repeat center center / auto 100%;
content: '';
}
@media only screen and (max-width: 950px) {
.problems .sub01 .textList li::before {
width: 26px;
height: 26px;
position: absolute;
left: 0;
top: 3px;
background: url(../images/lp/icon01.png) no-repeat center center / auto 100%;
content: '';
}
}
.problems .sub01 .textList li {
margin-bottom: 15px;
margin-right: -3em;
padding-left: 34px;
position: relative;
font-size: 2rem;
line-height: 1.55;
font-weight: 500;
}
.problems .sub01 .textList li:last-child {
margin-bottom: 0px;
}
.problems .bold {
font-size: 2.8rem;
line-height: 1.55;
font-weight: 700;
color: #b1a648;
padding-left: 8px;
}
/*----------------------------------------------------
cta レスポンシブ
-----------------------------------------------------*/
@media only screen and (max-width: 950px) {
.problems .content {
width: auto;
max-width: inherit;
}
.problems .whiteBox{
margin-bottom: 30px;
width: 360px;
padding: 16px 10px 16px min(2.6vw,22px);
}
.problems .whiteBox .textList {
width: fit-content;
margin: 0 auto;
}
.problems .sub01 .textList li {
margin-right: 0;
font-size: min(3.6vw,14px);
padding-left: min(7.5vw,29px);
margin-bottom: 8px;
}
.problems .bold {
font-size: min(5.4vw,21px);
}
.brandBox .listUl .pubBtn.tel a {
font-size: 16px !important;
}
}
@media only screen and (max-width: 700px) {
.problems .whiteBox{
margin-bottom: 30px;
width: 360px;
padding: 16px 10px 16px min(2.6vw,22px);
}
}
.brandBox .listUl .pubBtn.tel-sp a {
font-family: "Ubuntu";
font-weight: 400;
font-size: 24px;
}
/*----------------------------------------------------
cta レスポンシブ 電話番号　仮のこし
-----------------------------------------------------*/

.brandBox .listUl .pubBtn.tel-sp a {
font-family: "Ubuntu";
font-weight: 400;
font-size: 16px;
}

/*----------------------------------------------------
branding company　から移植
-----------------------------------------------------*/

.brandBox.brandBox03 .pubBox {
padding: 60px 0 80px;
}

/*----------------------------------------------------
イラスト
-----------------------------------------------------*/
.brandBox02 .featuredImg {
    width: 190px !important;
    top: -63px !important;
    right: -50px !important;
}

@media only screen and (max-width: 700px) {
.brandBox02 .featuredImg {
        width: 116px !important;
        top: -39px !important;
        right: -1px !important;
    }
}
/*----------------------------------------------------
不足分
-----------------------------------------------------*/

.brandBox {
    background-color: #3e4445;
    position: relative;
    z-index: 30;
}
.brandBox .pubHeading02 {
    font-size: 2.8rem;
}
.pubBox {
    margin: 0 auto;
    width: calc(100% - 60px);
    max-width: 996px;
    position: relative;
}
.brandBox.brandBox03 .subTxt {
    margin-bottom: 30px;
}
.brandBox02 .subTxt {
    text-align: center;
}
.white_txt {
    color: #fff !important;
}
.brandBox.brandBox03 .subTxt {
    margin-bottom: 30px;
}
.brandBox .listUl .image img {
    width: 62px;
}
@media only screen and (min-width: 751px) {
    .brandBox.brandBox03 .listUl .pubBtn a {
        font-size: min(2.6vw, 22px) !important;
    }
}
.brandBox.brandBox03 .subTxt {
    margin-bottom: 30px;
}
.brandBox.brandBox03 .subTxt {
    margin-bottom: 30px;
}

.brandBox02 .subTxt {
    margin-bottom: 60px;
    font-size: 2.2rem;
}
.brandBox02 .subTxt {
    margin-bottom: 60px;
    font-size: 2.2rem;
    text-align: center;
}
.brandBox02 .subTxt {
    margin-bottom: 57px;
    line-height: 1.5em;
}
.brandBox02 .subTxt {
    margin-bottom: 60px;
    font-size: 2.2rem;
}
.brandBox02 .subTxt {
    margin-bottom: 57px;
    line-height: 1.5em;
}
.brandBox02 .subTxt {
    margin-bottom: 60px;
    font-size: 2.2rem;
}
.white_txt {
    color: #fff !important;
}
.brandBox .listUl {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    text-align: center;
    gap: 80px;
}
index .brandBox02 .listUl .txt {
    margin-top: 35px;
    font-size: 1.7rem;
    line-height: 1.58;
    font-weight: 300;
}

.brandBox02 .listUl .txt {
    margin: 35px -10px 0 !important;
}
@media only screen and (min-width: 750px) {
    .pubSp {
        display: none !important;
    }
}
@media only screen and (min-width: 751px) {
    .pubSp {
        display: none !important;
    }
}
@media only screen and (min-width: 751px) {
    .pubSp {
        display: none !important;
    }
}
* {
    font-size: 14px;
    font-size: 1.4rem;
    box-sizing: border-box;
}
.brandBox02 .listUl .txt {
    margin-top: 35px;
    font-size: 1.7rem;
    line-height: 1.58;
    font-weight: 300;
}

@media only screen and (min-width: 751px) {
    .brandBox.brandBox03 .pubBtn a {
        height: 50px;
        margin: auto;
    }
}
.brandBox.brandBox03 .pubBtn {
    margin-top: 48px;
    justify-items: center;
}
@media only screen and (min-width: 1051px) {
    .pubBtn.large a {
        width: 100%;
        height: 66px;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #000;
        font-size: 2.2rem;
        font-weight: 500;
        border: 1px solid #000;
        background-color: #e6ff00;
        border-radius: 50px;
        transition: .3s;
        position: relative;
        gap: 14px;
    }
}
.brandBox .listUl {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    text-align: center;
    gap: 80px;
}
.brandBox .listUl li {
    width: 276px;
}
.brandBox .listUl .pubBtn a {
    margin: 0 auto;
    width: 100%;
    height: 65px;
    color: #000;
    background-color: #e6ff00;
    border: none;
    font-size: 2.2rem;
    font-weight: 500;
}
@media only screen and (min-width: 701px) {
	.brandBox .listUl .pubBtn a:hover {
		background-color: #424647;
		color: #fff;
	}
}
.brandBox .listUl .pubBtn a:hover {
    background-color: #e6ff00 !important;
    color: #000 !important;
  }
