@charset "UTF-8";



/* =============================================
SP
============================================= */

@media only screen and (max-width : 640px){



/* =============================================
ヘッダー
============================================= */

header {
background-color: #fff;
width: 100%;
height: 65px;
margin-left: auto;
margin-right: auto;
border-radius: 0;
box-shadow: none;
/*box-shadow: rgba(175, 175, 175, 0.25) 0px 50px 100px -20px, rgba(175, 175, 175, 0.3) 0px 30px 60px -30px;*/
position: fixed;
z-index: 100000000000;
}

.header__wrap {
width: 100%;
margin-left:auto;
margin-right:auto;
/*  display: flex;
flex-direction:row;
justify-content:space-between;
flex-wrap: nowrap;
align-items: center;*/
padding: 4px 10px;
}
.header__wrap a.btn-line:after {
top: 1px;
right: 5px;
}
.header__top {
width: 140px;
padding: 0;
}

.header__top__logo img {
width: 170px;
height: auto;
margin: 5px auto;
display: block;
}
.header__top__logo:hover{
opacity: 1 !important;
}

.header__top__text {
color: #b6b8c3;
font-size: 12px;
line-height: 1.6;
font-weight: normal;
position: absolute;
width: calc(100% - 200px);
top: 24px;
left: 190px;
}

.header__top__text {
color: #b6b8c3;
font-size: 12px;
font-weight: 600;
}

.header__right{
width: 100%;
display: flex;
justify-content:flex-start;
flex-direction: column;
flex-wrap: nowrap;
align-items: center;
padding-left: 10px;
}

h1.header-text{
width: 100%;
font-size: 12px;
text-align: center;
color: #b6b8c3;
padding: 0;
}


/* カテゴリ */
.header__cat {
display: none;
width: 100%;
}

ul.header__cat-list {
flex-flow: row wrap;
justify-content: space-between;
width: 100%;
font-size: 16px;
color: #42210b;
font-weight: bold;
line-height: 1;
margin: 8px 0 0 0;
padding: 2px;
}
.header__cat-list li {
width: fit-content;
}

.header__cat-list li a{
color: #42210b;
display: inline-block;
font-weight: bold;
padding: 2px 10px;
font-size: 12px;
height:fit-content;
line-height:25px;
}


.header__cat-list li a::before{
content:"\00A0";
display:inline-block;
width:25px;
height:25px;
background-color: #55bccd;
border-radius: 4px;
margin-right:2px;
position:relative;
top:0px;
left:0;
}

.header__cat-list li a:hover {
opacity: 0.8;
} 

.header__cat .pc-display{
display: block !important;
}

.header__cat {
display: none;
}

.search-form_inputXX {
display: flex;
justify-content: flex-start;
align-items: center;
width: 100%;
overflow: visible;
border-radius: 25px;
margin: 4px 0 0 0;
}


.search-form_inputXX form{
width: 100%;
display: flex;
justify-content: space-between;
align-items: center;
}

.search-form_inputXX input[type=text],
.search-form_inputXX input[type=text]#search-form-box {
width: 95%;
height: 40px;
padding: 2px;
margin-left: 10px !important;
border: none;
box-sizing: border-box;
background-color: #f1f5f9;
font-size: 14px;
outline: none;
color: #2A323F;
font-family: 'Roboto','Noto Sans JP', sans-serif;

}

.search-form_inputXX input[type=text]::placeholder,
.search-form_inputXX input[type=text]#search-form-box::placeholder {
color: #777777;
}

.search-form_inputXX button.css-button {
display: flex;
justify-content: center;
align-items: center;
width: 40px;
height: 40px;
border: none;
background-color: transparent;
cursor: pointer;
}

.search-form_inputXX button.css-button::after {
width: 20px;
height: 20px;
background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%20%3Cpath%20d%3D%22M23.7%2020.8%2019%2016.1c-.2-.2-.5-.3-.8-.3h-.8c1.3-1.7%202-3.7%202-6C19.5%204.4%2015.1%200%209.7%200S0%204.4%200%209.7s4.4%209.7%209.7%209.7c2.3%200%204.3-.8%206-2v.8c0%20.3.1.6.3.8l4.7%204.7c.4.4%201.2.4%201.6%200l1.3-1.3c.5-.5.5-1.2.1-1.6zm-14-5.1c-3.3%200-6-2.7-6-6s2.7-6%206-6%206%202.7%206%206-2.6%206-6%206z%22%20fill%3D%22%23777777%22%3E%3C%2Fpath%3E%20%3C%2Fsvg%3E');
background-repeat: no-repeat;
content: '';
}

.tab-fixed {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 65px;
background: #fff;
z-index: 100000000001;
transform: translateZ(0);

}

#breadcrumbs{
padding-top: 75px;
}


/* =============================================
フッター
============================================= */

footer {
width: 100%;
}

.footer__wrap {
width: 100%;
max-width: 100%;
margin: 0 auto;
}

.area-footer{
width: 100%;
display: block;
}

.footer-left{
width: 100%;
text-align: center;
}
.footer__logo {
display: block;
width: 240px;
height: auto;
margin: auto;
}
.footer__logo img {
width: 100%;
}

.footer__copyright {
width: 100%;
text-align: center;
}

.footer-right{
width: 100%;
display: block;
justify-content:flex-end;
margin-top: 50px;
padding: 0 20px;
}

.footer-right .footer-list{
width: 100%;
margin-left: 0px;
}

.footer-right .footer-list p{
font-size: 21px;
margin-bottom: 16px;
margin-top: 32px;
font-weight: bold;
}


.footer-right .footer-list ul li{
font-size: 13px;
margin-bottom: 0px;
display: inline-block;
padding-bottom: 16px;
}

.footer-right .footer-list ul li a{
display: inline-block;
}


.footer-bottom{
padding: 16px 20px;
}




/*------------------------------------------------------------
東証スタンダード上場
-------------------------------------------------------------*/

.tosho{
display: flex;
width: 100%;
flex-wrap: nowrap;
justify-content: center;
color: #fff;
text-align: left;
font-size: 12px;
font-weight: normal;
line-height: 1.5;
margin-bottom: 16px;
align-items: center;
padding: 8px 0;

}

.tosho img{
width: 50px;
margin-right: 8px;
}

/*
======================================
サイドメニュー
======================================
*/

.area-sidemenu .area-popular,
.area-sidemenu .area-newpost,
.area-sidemenu .area-category{
background-image: none;
margin-top: 20px;
padding-bottom:  20px;
}


/*
======================================
記事内装飾
======================================
*/

main article a,
main article a:visited{
color: #429ac4 ;
text-decoration: underline;
}

main article img.imgBorder{
border: 1px solid #b3b3b3;
}

.b-red{
font-weight: bold;
color: #111!important;
padding: 0 1px 2px
}

.error-new-box{
width: 100%;
margin-bottom: 80px;
text-align: center;
}

.error-new-box img{
width: 100%;
margin-bottom: 56px;
}

.error-new-box a{
color: #429ac4 ;
font-weight: bold;
text-decoration: underline;
}

.post table tr th{
padding: 6px 6px !important;
} 

.post table tr td{
padding: 6px 6px !important;
} 

main article .contents table th:first-child {
max-width: 40%;
}


main article .contents .list-normal, main article .contents .list-no, main article .contents .list-check {
font-size: 15px;
margin: 0 auto 32px !important;
background-color:#edf1f4 ;
}
main article .list-normal li, .list-no li, .list-check li {
position: relative;
border-bottom: 1px solid #dde4e6;
background: none;
padding: 8px 24px !important;
margin: 8px 0!important;
font-weight: bold;
}
main article .list-normal,  main article .list-no,  main article .list-check {
border: 1px solid #e3eaec;
background: #f9f9f9;
border-radius: 3px;
padding: 16px 16px !important;
margin: 10px 0!important;
}

main article .list-normal li:before {
content: "";
position: absolute;
background: #c7d0d2;
border: 1px solid #acb6b9;
width: 8px;
height: 8px;
border-radius: 50px;
top: 0px;
bottom: 0px;
left: 4px;
margin: auto ;
box-sizing: border-box;
}

main#main-lower .cta-link-box02{
background-color: #fcffe4;
}

main#main-lower .cta-link-box02 .b{
color: #1f1d1d !important;
font-weight: bold !important;
margin: 10px 0 16px 0;
}

main#main-lower .cta-link-button02 {
width: 100%;
font-size: 15px;
display: block;
margin: 10px auto 15px auto;
padding: 22px 4px 22px 30px;
border: 0;
background: #22BA4F;
color: #FFF !important;
font-weight: bold;
cursor: pointer;
text-align: center;
transition: 0.3s;
box-sizing: border-box;
border-radius: 50px;
box-shadow: 0px 5px #1D502C;
line-height: 1.5;
text-decoration: none !important;
}

main#main-lower .cta-link-button02::before{
content: "無料";
background: #fff;
color: #1D502C;
padding: 2px 8px 3px 8px;
border-radius: 60px;
font-weight: bold;
font-size: 14px;
margin-left: -2px;
/*position: absolute;
top: 50%;
transform: translateY(-50%);
left: 4%;*/
}

main#main-lower .cta-link-button02::after{
content: '';
width: 10px;
height: 10px;
border: 0;
border-top: solid 2px #fff;
border-right: solid 2px #fff;
transform: rotate(45deg);
position: absolute;
top: 0;
right: 4%;
bottom: 0;
margin: auto;
}

main#main-lower .cta-link-button03 {
width: 90%;
font-size: 16px;
display: block;
margin: 10px auto 15px auto;
padding: 8px;
border: 0;
/* background: #f96378; */
background: #f84e59;
color: #FFF !important;
font-weight: bold;
cursor: pointer;
text-align: center;
transition: 0.3s;
box-sizing: border-box;
border-radius: 4px;
/* box-shadow: 0px 5px #bf4c60; */
box-shadow: 0px 5px #a20f28;
position: relative;
line-height: 1.5;
text-decoration: none !important;
}

.article .btn-dl {
width: 100%;
max-width: auto;
font-size: 13px;
display: block;
margin: 10px auto 15px auto;
padding: 12px 4px 12px 35px;
border: 0;
background: #f6633d;
color: #FFF !important;
font-weight: bold;
cursor: pointer;
text-align: center;
transition: 0.3s;
box-sizing: border-box;
border-radius: 50px;
/* box-shadow: 0px 5px #bf4c60; */
box-shadow: 0px 3px #bd1911;
position: relative;
line-height: 1.5;
text-decoration: none !important;
position: relative;
}
.article .btn-dl::before{
content: "無料";
background: #fff;
color: #f6633d;
padding: 2px 6px 3px 6px;
border-radius: 60px;
font-weight: bold;
position: absolute;
font-size: 12px;
top: 50%;
transform: translateY(-50%);
left: 5%;
}

.article .btn-dl::after{
content: '';
width: 7px;
height: 7px;
border: 0;
border-top: solid 2px #fff;
border-right: solid 2px #fff;
transform: rotate(45deg);
position: absolute;
top: 0;
right: 5%;
bottom: 0;
margin: auto;
}

.article .btn-dl::before{
content: "無料";
background: #fff;
color: #f6633d;
padding: 2px 6px 3px 6px;
border-radius: 60px;
font-weight: bold;
position: absolute;
font-size: 12px;
top: 50%;
transform: translateY(-50%);
left: 5%;
}



.article table tr th:first-child .btn-dl{
width: 100%;
font-size: 12px;
display: block;
margin: 10px auto 15px auto;
padding: 8px 2px 8px 18px;
border: 0;
background: #f6633d;
color: #FFF !important;
font-weight: bold;
cursor: pointer;
text-align: center;
transition: 0.3s;
box-sizing: border-box;
border-radius: 6px;
box-shadow: 0px 4px #bd1911;
line-height: 1.5;
text-decoration: none !important;
}

/*.article table tr th:first-child .btn-dl::before{
content: "無料";
background: #fff;
color: #f6633d;
padding: 1px 3px 3px 3px;
border-radius: 5px;
font-weight: bold;
font-size: 12px;
margin-left: -1px;

}*/


.article table tr th:first-child .btn-dl::before{
content: "無料";
background: transparent;
color: #fff;
padding: 0px;
border-radius: 0px;
font-weight: bold;
font-size: 12px;
margin-left: 0px;

}

.article table tr th:first-child .btn-dl::after{
content: '';
width: 5px;
height: 5px;
border: 0;
border-top: solid 2px #fff;
border-right: solid 2px #fff;
transform: rotate(45deg);
position: absolute;
top: 0;
right: 5%;
bottom: 0;
margin: auto;
}



.article .btn-dl-simple,
.article .btn-dl-simple2 {
width: 100%;
max-width: 100%;
font-size: 13px;
display: block;
margin: 10px auto 15px auto;
padding: 6px 2px;
border: 0;
color: #FFF !important;
font-weight: bold;
cursor: pointer;
text-align: center;
transition: 0.3s;
box-sizing: border-box;
border-radius: 60px;
background-color: #F98332;
box-shadow: 0 5px 0 #e8500e;
position: relative;
line-height: 1.5;
text-decoration: none !important;
}

.article .btn-dl-simple::after{
display: none;
}


.osusume-user_box .cta-link-box{
margin-top: 24px;
}


main article .ninki-ranking dl{
display: flex;
flex-flow: row nowrap;
justify-content: space-between;
align-items: center;
width: 100%;
border-bottom: 1px solid #b3b3b3;
padding: 16px 0;
}

main article .post.article-ranking dl .article-ranking__eyecatch, 
main article dl .article-new-post__eyecatch {
position: relative;
width: 140px;
height: fit-content;
overflow: hidden;
z-index: 1;
}

main article .post.article-ranking dl .article-ranking__eyecatch img, 
main article  dl .article-new-post__eyecatch img {
width: 140px;
}


main article .post.article-ranking dl .ranking-ttl,
main article  dl .article-new-post-ttl {
display: -webkit-box;
text-overflow: ellipsis;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
overflow: hidden;
color: #448acb;
width: calc(100% - (140px + 24px));
font-size: 16px;
font-weight: 600;
line-height: 1.7;
}



main article .post .ninki-ranking dl img{
width: 140px;
margin-right: 24px;
}

main article .post .ninki-ranking dd{
width: calc(100% - 164px);
}

main article .post .ninki-ranking dl a{
display: -webkit-box;
text-overflow: ellipsis;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
overflow: hidden;
color: #448acb;
width: 100%;
font-size: 16px;
font-weight: 600;
line-height: 1.7;
display: list-item;
}


#main-lower article .post .category-list{
display: flex;
justify-content:space-between;
align-items:center;
flex-wrap: wrap;
width: 100%;
border-bottom: 1px solid #b3b3b3;
}

#main-lower article .post .category-list a{
width: 100%;
padding: 8px 0;
display: block;
}


#main-lower article .post .category-list img{
margin-right: 8px;
position: relative;
width: 100px;
height: fit-content;
max-height: 80px;
display: inline-block;
float: left;
}


#main-lower article .post .category-list p{
font-size: 14px;
font-weight: bold;
}

#main-lower article .post .category-list p::after{
clear: both;
}

#main-lower article .post .category-list p.categorytext{
font-weight: normal;
font-size: 14px;
padding: 8px 0px ;
}


.article-pagenavi ul{
display: flex;
justify-content: center;
align-items: center;
gap: 0 8px;
list-style-type: none;
padding: 0;
margin: 32px 0 64px 0;
}

.article-pagenavi a {
box-sizing: border-box;
display: flex;
justify-content: center;
align-items: center;
min-width: 40px;
height: 30px;
border-bottom: 2px solid #e6e6e6;
color: #333;
text-decoration: none;
}

.article-pagenavi .current a {
border-bottom: 2px solid #b3ec00;
pointer-events: none;
}




/*-- アコーディオンメニュー --*/
main article .article_content .acMenu{
margin-top: 5px;
margin-bottom: 5px;
}
main article .article_content > .acMenu{
margin-top: 20px;
margin-bottom: 40px;
}
.acMenu dt{
border: 1px solid #bbb;
border-radius: 3px;
padding: 16px 5px;
text-align: center;
display: block;
box-shadow: none;
background: #fff;
color: #666;
cursor: pointer;
position:relative;
margin-top: 32px;
margin-bottom: 64px;
}
.acMenu dt:before{
content:"";
position:absolute;
bottom:-4px;
left:0;
right:0;
margin:auto;
z-index:5px;
width:99%;
height:2px;
border-bottom:1px solid #bbb;
border-left:1px solid #bbb;
border-right:1px solid #bbb;
}
.acMenu dt:after{
content:"";
position:absolute;
bottom:-7px;
left:0;
right:0;
margin:auto;
z-index:5px;
width:98%;
height:1px;
border-bottom:1px solid #bbb;
border-left:1px solid #bbb;
border-right:1px solid #bbb;
}
.acMenu dd{
display:none;
margin:0 0 5px!important;
box-sizing:border-box;
}
.acMenu dt.active{
border: 1px solid #ffeea1;
background:#fff2b7;
margin:0 0 5px!important;
box-shadow: 0 2px 0 0 #bbb;
border-radius:4px 4px 0 0;
color:#444;
}
.acMenu dt.active:before{
border:none;
}
.acMenu dt.active:after{
border:none;
}
.acMenu dt.active + dd{
display: block!important;
}
main article .article_content .acMenu dd > *:not(:last-child) {
margin-bottom: 10px;
}


/*
======================================
メディア運用
======================================
*/

main article .cop-company-medialist {
display: -webkit-flex;
display: flex;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
justify-content: space-between;
}
main article .cop-company-medialist dl {
text-align: center;
width: 49%;
margin: 0 0 20px 0;
background: #fff;
border: 1px solid #ebebeb;
}
main article .cop-company-medialist dl:nth-of-type(3n) {
margin-right: 0;
}
main article .cop-company-medialist dl dt {
position: relative;
}
main article .cop-company-medialist dl dt img {
width: 80%;
display: block !important;
margin: 16px auto;
}
main article .cop-company-medialist dt a {
display: block;
font-size: 13px;
line-height: 1.5;
}
main article .cop-company-medialist dl dt span:first-of-type {
display: block;
text-align: center;
font-size: 2.1px;
font-weight: bold;
}
main article .cop-company-medialist dl dt span:last-of-type {
display: block;
text-align: center;
font-size: 12px;
}
main article .cop-company-medialist dl dd {
padding: 10px 14px 10px;
text-align: left;
background: #f4f4f4;
margin: 10px;
border-radius: 6px;
min-height: 110px;
line-height: 1.5;
font-size: 13px;
}

/*-- アコーディオンメニュー --*/
main article .article_content .acMenu{
margin-top: 5px;
margin-bottom: 5px;
}
main article .article_content > .acMenu{
margin-top: 20px;
margin-bottom: 40px;
}
.acMenu dt{
border: 1px solid #bbb;
border-radius: 3px;
padding: 16px 5px;
text-align: center;
display: block;
box-shadow: none;
background: #fff;
color: #666;
cursor: pointer;
position:relative;
margin-top: 32px;
margin-bottom: 64px;
}
.acMenu dt:before{
content:"";
position:absolute;
bottom:-4px;
left:0;
right:0;
margin:auto;
z-index:5px;
width:99%;
height:2px;
border-bottom:1px solid #bbb;
border-left:1px solid #bbb;
border-right:1px solid #bbb;
}
.acMenu dt:after{
content:"";
position:absolute;
bottom:-7px;
left:0;
right:0;
margin:auto;
z-index:5px;
width:98%;
height:1px;
border-bottom:1px solid #bbb;
border-left:1px solid #bbb;
border-right:1px solid #bbb;
}
.acMenu dd{
display:none;
margin:0 0 5px!important;
box-sizing:border-box;
}
.acMenu dt.active{
border: 1px solid #ffeea1;
background:#fff2b7;
margin:0 0 5px!important;
box-shadow: 0 2px 0 0 #bbb;
border-radius:4px 4px 0 0;
color:#444;
}
.acMenu dt.active:before{
border:none;
}
.acMenu dt.active:after{
border:none;
}
.acMenu dt.active + dd{
display: block!important;
}
main article .article_content .acMenu dd > *:not(:last-child) {
margin-bottom: 10px;
}


.lead {
font-size: 11px;
color: #777;
line-height: 1.4;
}

/* =============================================
下層 / 記事中 / 会社概要
============================================= */

.cop-company-jyusyou {
margin-bottom: 30px;
}
.cop-company-jyusyou .cop-company-jyusyou-slider-wrap {
height: 182px;
}
.cop-company-jyusyou ul {
-webkit-box-pack: start;
-ms-flex-pack: start;
justify-content: flex-start;
}
.cop-company-jyusyou li {
width: 49%;
margin: 0 2% 10px 0;
}
.cop-company-jyusyou li:nth-of-type(3n) {
margin-right: 2%;
}
.cop-company-jyusyou li:nth-of-type(4) {
margin-bottom: 10px;
}
.cop-company-jyusyou li:nth-of-type(2n) {
margin-right: 0;
}
.cop-company-jyusyou li p {
font-size: 13px;
height: 95px;
}
.company-media .cop-company-medialist dl,
.company-media .cop-company-medialist dl:nth-of-type(3n) {
width: 100%;
margin-right: 0;
}
.company-media .cop-company-medialist dl dd {
padding: 10px;
min-height: auto;
}
.cop-company-jyusyou .sp {
display: block;
}
.cop-company-jyusyou .pc {
display: none;
}
.cop-company-jyusyou .cop-company-jyusyou-slider-area {
position: relative;
height: 182px;
margin-bottom: 0;
}
.cop-company-jyusyou-slider-area .slider-prev,
.cop-company-jyusyou-slider-area .slider-next {
position: absolute;
font-weight: normal;
font-size: 200% !important;
z-index: 999999;
color: #fff;
text-align: center;
width: 30px;
line-height: 30px !important;
height: 30px;
border-radius: 0;
top: 0;
bottom: 0;
margin: auto;
cursor: pointer;
}
.cop-company-jyusyou-slider-area .slider-prev {
left: 0;
}
.cop-company-jyusyou-slider-area .slider-next {
right: 0;
}
.cop-company-jyusyou-slider-wrap {
margin: 0 40px;
}
.cop-company-jyusyou .sd-message-01 {
margin: 0 10px;
text-align: left;
background: #fff;
position: relative;
border: 1px solid #ededed;
}
.cop-company-jyusyou .sd-message-01 img {
width: 100%;
height: 100px;
padding: 15px;
box-sizing: border-box;
object-fit: contain;
}
.cop-company-jyusyou .sd-message-01 p {
height: 80px;
}
.cop-company-jyusyou .sd-message-01 p:empty {
display: none;
margin: 0;
}


/* =============================================
下層 / 記事中 / インサート
============================================= */
.kasou-cont-wrap #main-lower .post .gaiko-insert {
border-radius: 6px;
border: 1px solid #0091ff;
/* margin: 0 auto 32px; */
margin: 0 auto 20px;
}
.kasou-cont-wrap #main-lower .post .gaiko-insert dl dt {
background: #0091ff;
color: var(--color-yellow-light);
text-align: center;
font-size: 16px;
padding: 8px 0;
font-weight: 600;
}
.kasou-cont-wrap #main-lower .post .gaiko-insert dl dd {
padding: 24px;
}
.kasou-cont-wrap #main-lower .post .gaiko-insert dl dd p {
margin: 0 auto 16px;
}
.kasou-cont-wrap #main-lower .post .gaiko-insert dl dd p:last-of-type {
margin: 0 auto;
}
.kasou-cont-wrap #main-lower .post .gaiko-insert dl dd .gaiko-insert-ctaText {
margin: 0 auto 4px;
color: #de4c4c;
text-align: center;
font-weight: 600;
}
.kasou-cont-wrap #main-lower .post .gaiko-insert dl dd a.get-text-cta {
display: block;
width: calc(100% - 32px);
background: #de4c4c;
border-radius: 4px;
border-bottom: 5px solid #b30b0b;
color: var(--color-white);
text-align: center;
font-weight: 600;
margin: 0 auto;
padding: 16px 0;
}
.kasou-cont-wrap #main-lower .post .gaiko-insert {
margin: 0 auto 24px;
}
.kasou-cont-wrap #main-lower .post .gaiko-insert dl dd {
padding: 16px;
}
.kasou-cont-wrap #main-lower .post .gaiko-insert dl dd a.get-text-cta {
width: 100%;
}


/*------------------------------------------------------------
オーバーレイ
-------------------------------------------------------------*/

.overrayBox_second{
background: rgba(87,89,100,0.8);
padding: 5px 0 ;
position: fixed;
z-index: 10000;
bottom: 0;
left: 0;
margin: 0!important;
width:100%;
}
.overrayBox_second .overrayInner{
margin:0 auto;
width:100%;
text-align: center;
}
.overrayBox_second .overrayBtn{
width: auto;
min-width: 90%;
font-size: 13px;
border-radius:5px;
height:auto;
padding: 0;
position: relative;
overflow: hidden;
display: inline-flex;
align-items: center;
flex-wrap: nowrap;
background: #FB983B;
box-shadow:#A84909 0px 4px 0px;
margin-left: auto;
margin-right: auto;
margin-bottom: 5px;
}

.overrayBox_second .overrayBtn a.article{
width: 100%;
margin: 0;
color: #fff;
text-decoration:none;
}

.overrayBox_second .overrayBtn::after{
background-color: #fff;
display: inline-block;
position: absolute;
width: 40px;
height: 100%;
background-repeat:no-repeat;
vertical-align: middle;
color:#FB983B;
font-family: 'Material Symbols Rounded';
content: '\f090';
font-size: 35px;
top: 50%;
transform: translateY(-50%);
padding-top: 10px;
right: 0;
}

.app_icon{
padding: 5px 0 5px 5px ;
width: 40px;
text-align: center;
}

.btn_text{
width: calc(100% - 75px);
padding: 5px 5px 5px 5px;
text-align: center;
line-height: 1.4;
color: #fff;
}

.overrayBox_second .overrayBtn .app_icon img{
width: 47px;
border-radius: 5px;
margin-left: auto;
margin-right: auto;
}

.overrayBox_second .overrayBtn .btn_text span,
.overrayBox_second .overrayBtn .btn_text span.bld{
font-size: 17px;
font-weight: bold;
}


/*------------------------------------------------------------
オーバーレイ（2列）
-------------------------------------------------------------*/

.overrayBox_3rd{
padding: 6px 6px 8px 6px !important;
}

.overrayBox_3rd .ov_headline{
width: fit-content;
margin-left: auto;
margin-right: auto;
position: relative;
color: #EDFF92;
font-size: 13px;
padding-left: 10px;
padding-right: 10px;
margin-bottom: 6px;
}

.overrayBox_3rd .ov_headline:before {
position: absolute;
left: 0;
top: 0;
content: "";
width: 1px;
height: 100%;
background: #EDFF92;
border-radius: 3px;
transform: rotate(-25deg);
}

.overrayBox_3rd .ov_headline:after {
position: absolute;
content: "";
right: 0;
top: 0;
width: 1px;
height: 100%;
background: #EDFF92;
border-radius: 3px;
transform: rotate(25deg);
}

.overrayBox_3rd .ov_wrapper{
width: 100%;
display: flex;
flex-wrap: nowrap;
justify-content: center;
gap: 8px;
}

.overrayBox_3rd .overrayBtn{
width: 48%;
text-align: center;
max-width: auto;
font-size: 14px;
border-radius:5px;
line-height: 1.5;
height:auto;
font-weight: bold;
color: #fff;
padding: 6px 4px 3px 4px;
position: relative;
display: block;
}



.overrayBox_3rd .go::after{
display: none;
transform: none;
}

.overrayBox_3rd .didi::after{
display: none;
transform: none;
}

.overrayBox_3rd .overrayBtn::after {
content: '';
width: 0;
height: 0;
border-style: solid;
border-width: 4px 0 4px 6px;
border-color: transparent transparent transparent #fff;
position: absolute;
top: 0px;
right: 10px;
bottom: 0;
margin: auto;
display: block;
}


.overrayBox_3rd span.micro_headline{

font-size: 11px;
line-height: 1.2;
padding: 2px 8px;
margin-bottom: 2px;
}



.overrayBox_3rd .overrayBtn img.app_icon {
display: none;
}

.overrayBox_3rd .overrayBtn .app_icon img{
display: none;
}

.overrayBox_3rd .overrayBtn .btn_text{
width: 100%;
padding: 0;
margin: 0;
line-height: 1.5;
}


/*------------------------------------------------------------
目次調整（mokujiInfo_ac）
-------------------------------------------------------------*/
.mokujiInfo_ac {
width: 100%;
background: #fff;
border: 1px solid #b3b3b3;
padding: 16px;
font-size: 14px;
line-height: 1.5;
margin: 40px 0;
}
#main-lower article .post .mokujiInfo_ac .mokujiTitle {
position: relative;
font-size: 19px;
font-weight: 600;
margin: 0 auto 16px auto;
padding:0 0 8px 32px;
border-bottom: 1px solid #b3b3b3;
}
#main-lower article .post .mokujiInfo_ac .mokujiTitle:before {
display: inline-block;
font-family: 'Material Symbols Rounded';
content: '\e896';
font-size: 25px;
margin: 0 16px 0 0;
top: 0;
left:0;
margin:auto;
display:block;
position:absolute;

}
.mokujiInfo_ac ul {
counter-reset: listnum; /* カウンターをリセット */
list-style: none;
margin: 0 16px;

}
.mokujiInfo_ac ul li {
margin-bottom: 16px;
font-weight: bold;
}
/*.mokujiInfo_ac ul li::before{
counter-increment: listnum;
content: counter(listnum) "."; 
color: #4add00;
font-size: 20px;
}*/

.mokujiInfo_ac ul li:last-child {
margin-bottom: 32px;
}
.mokujiInfo_ac ul li a {
display: inline-block;
position: relative;
text-decoration: none;
font-weight: normal;
/*  padding-left: 24px;*/
}


/*------------------------------------------------------------
/*お問い合わせフォーム*/
-------------------------------------------------------------*/

#form-area{
}

#form-area div[id^=form-elements-]{
background:#f3f3f3;
padding:10px 10px;
}
#form-area div[id^=form-elements-] p{
padding:5px 0;
margin:0!important;
font-weight:bold;
}
#form-area div[id^=form-elements-] span#form-control-your-name{
margin:5px 0;
display:block;
position:relative;
}
#form-area div[id^=form-elements-] span#form-control-your-name:after{
content:"※";
color:rgb(247 15 69);
position:absolute;
top:-29px;
left:100px;
}
#form-area div[id^=form-elements-] span#form-control-your-name input{
border:1px solid #ccc;
width:60%;
max-width:100%;
padding:8px;
}
#form-area div[id^=form-elements-] span#form-control-your-email{
margin:5px 0;
display:block;
position:relative;
}
#form-area div[id^=form-elements-] span#form-control-your-email:after{
content:"※";
color:rgb(247 15 69);
position:absolute;
top:-29px;
left:165px;
}
#form-area div[id^=form-elements-] span#form-control-your-email input{
border:1px solid #ccc;
border-radius:10x;
width:60%;
max-width:100%;
padding:8px;
}
#form-area div[id^=form-elements-] span#form-control-your-subject{
margin:5px 0;
display:block;
}
#form-area div[id^=form-elements-] span#form-control-your-subject input{
border:1px solid #ccc;
border-radius:10x;
width:100%;
max-width:100%;
padding:8px;
}
#form-area div[id^=form-elements-] span#form-control-your-message{
margin:5px 0;
display:block;
}
#form-area div[id^=form-elements-] span#form-control-your-message textarea{
border:1px solid #ccc;
border-radius:10x;
width:100%;
max-width:100%;
padding:8px;
font-size: 16px;
}
#form-area form{
margin-top:-27px;
}
#form-control- input.form-control.form-submit{
width:100%;
display:block;
margin:10px auto;
height:60px;
font-weight: bold;
line-height:normal;
border:0px;
box-shadow:0 2px 0 0 #a21944;
background:#ff3171;
color:#FFF;
cursor: pointer;
}

#form-control- input.form-control.form-submit:hover{
opacity: 0.8;
}



/*====================================
追加調整
====================================*/

.kasou-cont-wrap {
width:100%;
max-width: 100%;
flex-flow: column;
margin: 0 auto 80px;
padding: 16px;
}




main article .contents table tr td{
word-break : break-all;
}

/*====================================
通常移行デザイン
====================================*/

.pc-display{
display: none !important;
}

.sp-display{
display: block !important;
}

.pcnone{
display: block;
}


/*----------------------------------
オーバーレイ
----------------------------------*/
.overrayBox_third {
background: rgb(255, 255, 226, 0.7);
padding: 8px 0;
position: fixed;
z-index: 10000;
bottom: 0;
left: 0;
margin: 0 !important;
width: 100%;
box-sizing: border-box;
text-align: center;
}

.overrayBox_third .overrayBtn{
width: 95%;
min-width: max-content;
font-size: 14px;
border-radius: 5px;
padding: 8px 16px;
background: #00b9c0;
box-shadow: #00959b 0px 4px 0px;
margin-left: auto;
margin-right: auto;
display: block;
}

.overrayBox_third .overrayInner a {
text-decoration: none;
display: inline-block;
max-width: 100%;
zoom: 1.13;
line-height: 1.5;
}

.overrayBox_third .top {
position: relative;
display: flex;
justify-content: center;
align-items: center;
width: max-content;
margin: 0 auto;
color: #ffeb7b;
}

.overrayBox_third .top:before {
margin-right: 8px;
}

.overrayBox_third .top:before, .overrayBox_third .top:after {
content: '';
display: block;
width: 20px;
height: 16px;
background: url(https://sales.mersenne.co.jp/btoc/img/btoc/uploads/2024/05/2024y05m09d_1238278536.png) no-repeat center / contain;
position: relative;
bottom: 1px;
}

.overrayBox_third .top:after {
margin-left: 8px;
}

.overrayBox_third .top:before, .overrayBox_third .top:after {
content: '';
display: block;
width: 20px;
height: 16px;
background: url(https://sales.mersenne.co.jp/btoc/img/btoc/uploads/2024/05/2024y05m09d_1238278536.png) no-repeat center / contain;
position: relative;
bottom: 1px;
}

.overrayBox_third .bottom {
font-size: 15px;
font-weight: bold;
color: #fff;
}

/*----------------------------------
オーバーレイ2
----------------------------------*/
.overrayBox_hudousan {
background: rgb(226 243 255 / 70%);
padding: 8px 0;
position: fixed;
z-index: 10000;
bottom: 0;
left: 0;
margin: 0 !important;
width: 100%;
box-sizing: border-box;
}

.overrayBox_hudousan .overrayInner {
margin: 0 auto;
width: 100%;
text-align: center;
}

.overrayBox_hudousan .overrayInner a {
max-width: 98%;
zoom: normal;
}

.overrayBox_hudousan .overrayBtn {
width: 100%;
min-width: 100%;
font-size: 14px;
border-radius: 5px;
height: auto;
padding: 6px;
position: relative;
display: inline-flex;
align-items: center;
flex-wrap: nowrap;
background: #30a5ff;
box-shadow: #2684cc 0px 4px 0px;
margin-left: auto;
margin-right: auto;
}

.overrayBox_hudousan .app_icon {
background: #fff;
max-width: 80px;
min-height: 40px;
border-radius: 6px;
display: flex;
justify-content: center;
align-items: center;
padding: 0;
}

.overrayBox_hudousan .overrayBtn .app_icon img {
width: 98%;
}

.overrayBox_hudousan .btn_text {
width: auto;
flex-grow: 1;
text-align: center;
line-height: 1.4;
color: #fff;
position: relative;
margin-bottom: -3px;
padding: 0 0 0 8px;
}

.overrayBox_hudousan br {
display: none;
}

.overrayBox_hudousan .btn_text .bottom br {
display: block;
}

.overrayBox_hudousan .btn_text .top {
position: relative;
display: block;
width: max-content;
margin: 0 auto;
font-size: 12px;
color: #fff600;
}

.overrayBox_hudousan .btn_text .top:before {
content: '';
display: block;
width: 30px;
height: 30px;
background: url(https://sales.mersenne.co.jp/btoc/img/btoc/uploads/2024/05/2024y05m10d_1535403553.png) no-repeat center / contain;
position: absolute;
left: -30px;
top: -19px;
}

.overrayBox_hudousan .btn_text .bottom {
font-size: 15px;
font-weight: bold;
}


/*----------------------------------
テーブル内CVボタン
----------------------------------*/

a.button-medium__ctatable.cta_mail {
background-color: #F98332;
box-shadow: 0 5px 0 #e8500e;
width: 100%;
max-width: 100%;
font-size: 14px;
display: block;
margin: 11px auto 15px auto !important;
padding: 10px 4px 10px 4px;
border: 0;
color: #FFF !important;
font-weight: bold;
cursor: pointer;
text-align: center;
transition: 0.3s;
box-sizing: border-box;
border-radius: 60px;
position: relative;
line-height: 1.5;
text-decoration: none !important;
}


a.button-medium__ctatable.cta_mail:before {
display: block;
content: "\E0BE";
font-family: "Material Icons Round";
font-size: 20px;
position: absolute;
left: 10px;
-webkit-font-smoothing: antialiased;
text-rendering: optimizeLegibility;
-moz-osx-font-smoothing: grayscale;
font-feature-settings: "liga";
font-weight: 100;
top: 50%;
transform: translateY(-50%);
}

a.button-medium__ctatable.cta_mail:after {
display: block;
font-size: 12px;
content: "無料";
position: absolute;
top: 50%;
transform: translateY(-50%);
right: 5px;
background: #fff82d;
color: var(--color-text);
padding: 2px 4px 2px 4px;
border-radius: 8px;
-webkit-font-smoothing: antialiased;
text-rendering: optimizeLegibility;
-moz-osx-font-smoothing: grayscale;
font-feature-settings: "liga";
}


a.button-medium__ctatable {
background-color: #296BCC;
box-shadow: 0 5px 0 #2147ac;
font-size: 13px;
position: relative;
width: 100% !important;
max-width: 100%;
font-size: 14px;
display: block;
margin: 10px auto 15px auto !important;
padding: 10px 4px 10px 4px;
border: 0;
color: #FFF !important;
font-weight: bold;
cursor: pointer;
text-align: center;
transition: 0.3s;
box-sizing: border-box;
border-radius: 60px;
position: relative;
line-height: 1.5;
text-decoration: none !important;
}


a.button-medium__ctatable::before {
display: block;
content: "\e0b0";
font-family: "Material Icons Round";
font-size: 20px;
position: absolute;
left: 10px;
-webkit-font-smoothing: antialiased;
text-rendering: optimizeLegibility;
-moz-osx-font-smoothing: grayscale;
font-feature-settings: "liga";
font-weight: 100;
top: 50%;
transform: translateY(-50%);
}


a.cta_line{
background-color: #00CC0E !important;
box-shadow: 0 5px 0 #007d56 !important;
margin-bottom: 24px !important;
}

a.cta_line::before{
display: none !important;
content: "" !important;
}

span.samplemidashi {
padding-left: 19px;
color: #F75151;
}

/*----------------------------------
強調エリア
----------------------------------*/

.otf-wrap {
width: 100%;
margin: 24px 0 ;
box-sizing: border-box;
}

.otf-wrap .otf-midashi {
background: #55bccd;
display: inline-block;
color: #fff; 
width: auto;
text-align: center;
margin: 0 !important;
padding: 8px 16px;
border-radius: 5px 5px 0 0;
font-size: 15px;
border: none;
font-weight: bold;
}

.otf-wrap p {
display: block;
border: 2px solid #55bccd;
border-radius: 0 4px 4px;
background: #fff;
font-size: 15px;
margin: 0;
padding: 16px;
}

.otf-wrap .osusume-user_box .midasi p{
display: block;
border-radius: 0;
border: none;
background: #fff;
font-size: 17px !important;
margin: 0;
padding: 16px;
}

/*----------------------------------
記事内CVボタン
----------------------------------*/
.btn-midasi {
display: block;
text-align: center;
font-size: 18px;
margin: 24px 0px -12px 0px;
font-weight: bold;
color: #DE4C4C;
}

a.button-medium_tell {
background-color: #296BCC;
box-shadow: 0 5px 0 #2147ac;
margin-top: 24px !important;
}

a.button-medium_mail {
background-color: #F98332;
box-shadow: 0 5px 0 #e8500e;
margin-bottom: 24px !important;
}

a.button-medium_line {
background-color: #00CC0E;
box-shadow: 0 5px 0 #007d56;
margin-bottom: 24px !important;
}



a.button-medium_tell, a.button-medium_line, a.button-medium_mail {
color: #fff !important;
text-align: center;
text-decoration: none !important;
border-radius: 50px;
position: relative;
padding: 24px ;
font-weight: 800;
width: 98%;
margin: 0 auto 16px auto;
font-size: 20px;
display: block;
}

a.button-medium_mail:before {
display: block;
content: "\E0BE";
font-family: "Material Icons Round";
font-size: 24px;
position: absolute;
left: 20px;
-webkit-font-smoothing: antialiased;
text-rendering: optimizeLegibility;
-moz-osx-font-smoothing: grayscale;
font-feature-settings: "liga";
font-weight: 100;
top: 50%;
transform: translateY(-50%);
}

a.button-medium_tell:before {
display: block;
content: "\e0b0";
font-family: "Material Icons Round";
font-size: 24px;
position: absolute;
left: 20px;
-webkit-font-smoothing: antialiased;
text-rendering: optimizeLegibility;
-moz-osx-font-smoothing: grayscale;
font-feature-settings: "liga";
font-weight: 100;
top: 50%;
transform: translateY(-50%);
}

.button-medium_mail::after {
padding: 4px 8px 5px 8px;
}


a.button-medium_line::after{
display: none;
}

/*----------------------------------
装飾
----------------------------------*/
b, strong {
font-weight: bold;
}

/*----------------------------------
引用コメント
----------------------------------*/
.post blockquote {
padding: 48px 24px 24px 24px !important;
border-left-style: none !important;
width: 100% !important;
margin: 0 auto 24px !important;
border-radius: 20px;
background-color: #f3f3f3;
position: relative;
}

.post blockquote:before {
display: block;
font-family: "Material Icons Round";
content: "\e244";
font-size: 30px;
position: absolute;
top: 10px;
left: 20px;
-webkit-font-smoothing: antialiased;
text-rendering: optimizeLegibility;
-moz-osx-font-smoothing: grayscale;
font-feature-settings: "liga";
font-weight: 100;
color: #CCCCCC;
}

/*----------------------------------
画像スクロール
----------------------------------*/
.scroll-img-wrap {
width: 100%;
overflow-x: scroll;
overflow-scrolling: touch;
padding: 0;
margin: 0;
}

.scroll-img-wrap img{
width: 300px;
height: 250px;
object-fit: cover;
border-radius: 16px;
}

ul.scroll-list {
margin-bottom: 10px;
}

/*----------------------------------
アコーディオン
----------------------------------*/
.hidden_box {
margin-bottom: 0px !important;
}

.hidden_box label {
font-weight: 600;
text-align: left !important;
border: 1px solid #55bccd;
border-radius: 3px;
cursor: pointer;
display: block;
box-shadow: none;
padding: 16px;
margin: 4px auto ;
color: #265464 !important;
position: relative;
font-size: 16px;
text-decoration: none !important;
}

.hidden_box label:after {
content: "▼";
position: absolute;
display: block;
width: 15px;
height: 15px;
top: -2px;
bottom: 0;
right: 16px;
margin: auto;
color: #2b9aaf;
}

.hidden_box {
margin: 0em 0;
padding: 0;
}
.hidden_box label {
width: 100%;
font-weight: 600;
text-align: center;
border: solid 2px #2b9aaf;
border-radius: 8px;
cursor: pointer;
display: block;
/*box-shadow: 0 3px #2b9aaf;*/
padding: 16px;
margin: auto;
}
.hidden_box label:hover {
background: #d8f3f5;
transition: 0.2s ease-in-out;
}
.hidden_box input {
display: none;
}
.hidden_box .hidden_show {
height: 0;
padding: 0;
overflow: hidden;
opacity: 0;
transition: none;
background: #f6f7f8;
border-radius: 16px;
margin-bottom: 16px;
}


.hidden_box input:checked ~ .hidden_show {
padding: 0px 0;
height: auto;
opacity: 1;
}
.hidden_box p {
margin-bottom: 0px;
}

.hidden_box .mail-inquiry-button {
margin-bottom: 15px;
}
.hidden_box input:checked ~ .hidden_show {
padding: 16px;
}


.hidden_show p {
font-size: 15px;
padding: 5px 10px !important;
margin-bottom: 0px !important;
}

label.hyouka {
background: #fbfde9 !important;
}

label.hyouka:hover {
background: #d8f3f5 !important;
transition: 0.2s ease-in-out;
}

table.table_fudousanHyouka {
width: 100%;
border-top: initial;
border-right: initial;
border: 1px solid #55BCCD;
margin-bottom: initial;
margin: 0 auto 0px;
}


table.table_fudousanHyouka tbody tr th{
width: 70%;
color: #265464;
text-align: left;
background-color: #b5e5ec;
border-right: 1px solid #fff !important;
border-bottom: 1px solid #fff !important;
}

table.table_fudousanHyouka tbody tr th:first-child {
max-width: 70%;
}


/*
table.table_fudousanHyouka tbody tr:nth-child(even) th {
background: #b5e5ec;
}*/

table.table_fudousanHyouka tbody tr td{
text-align: center;
background-color: #fff;
}


/*table.table_fudousanHyouka tbody tr:nth-child(odd) td {
background: #E1E1E1;
}

table.table_fudousanHyouka tbody tr:nth-child(even) td {
background-color: #fff;
}*/

/*----------------------------------
聞いてみた
----------------------------------*/

.fudousan-interview {
width: 100%;
margin: 0 auto !important;
}

.fudousan_question {
border-radius: 4px;
padding: 16px;
display: block;
font-weight: 800;
font-size: 16px;
line-height: 1.6;
}

.interview-speech-bubble {
margin: 24px 0 48px 0px !important;
font-size: 0;
display: flex;
flex-wrap: nowrap;
justify-content: center;
}

.interview-speech-bubble_information {
margin-right: 20px !important;
display: inline-block;
margin-bottom: 0px !important;
}

.interview-speech-img {
width: 70px;
height: 70px;
border-radius: 50%;
background-size: cover;
margin: 0 auto 10px auto !important;

}

.interview-speech-name p.interview_name{
text-align: center;
margin-bottom: 0px !important;
color: #2b9aaf;
font-size: 12px !important;
line-height: 1.3 !important;
}

.interview_balloon {
padding: 16px 16px;
border-radius: 4px;
position: relative;
display: inline-block;
margin: 0px 0 0 8px !important;
box-sizing: border-box;
word-break: break-all;
overflow-wrap: normal;
text-align: justify;
vertical-align: top;
width: 80% !important;
font-size: 14px;
line-height: 1.6;
}

.interview_balloon:before {
top: 5%;
}

.interview_balloon:after {
top: 5%;
}
.uniq-quote{
margin-top:-14px!important;
}
.kasou-cont-wrap #main-lower .fontsize-test-box h2:first-child{
margin:-22px 0 5px 0!important;
}



#form-control-{
margin: 24px auto;
position: relative;
width: 98%;
height: 64px;
text-align: center;
display: block;
}

#form-control- input.form-control.form-submit {
width: 98%;
padding: 24px ;
font-size: 20px;
line-height: 14px;
font-family: 'Roboto','Noto Sans JP', sans-serif;
background-color: #F98332;
box-shadow: 0 5px 0 #e8500e;
height:65px;
}


/*----------------------------------
オーバーレイボタン（マイクロコピー）
----------------------------------*/

div.overlay-oneBtn {
background: none;
box-shadow: none;
}


.floating-banner {
z-index: 105;
position: fixed;
left: 0;
bottom: -1px;
box-shadow: 0px 0px 7px #666666;
-moz-box-shadow: 0px 0px 7px #666666;
-webkit-box-shadow: 0px 0px 7px #666666;
width: 100%;
}

.overlay-oneBtn2-in {
box-shadow: 0 2px 8px 0 rgba(32, 33, 36, 0.2);
background: rgb(255 255 255 / 90%);
padding: 6px 10px 8px;
}

.overlay-oneBtn2 .oneBtn2-wrap {
padding-bottom: 3px;
}

.overlay-oneBtn2 .oneBtn2-wrap a, .modal .oneBtn2-wrap a {
background: #ed842f;
box-shadow: 0 4px 0 #c9681e;
}


.overlay-oneBtn2 .oneBtn2-wrap a {
display: block;
position: relative;
border-radius: 5px;
color: #fff;
text-decoration: none;
font-weight: bold;
font-size: 16px;
padding: 14px 36px;
line-height: 1.3;
margin: 10px auto 14px;
text-align: center;
}

.overlay-oneBtn2 .micro-top {
display: block;
width: fit-content;
position: relative;
margin: 0 auto 6px auto;
color: #DE4C4C;
font-weight: bold;
font-size: 15px;
}

.overlay-oneBtn2 .micro-copy-bottom {
margin-top: 6px;
text-align: center;
font-size: 12px;
}




/*------------------------------------------------------------
広告枠
-------------------------------------------------------------*/

.cta-box .cta-box_ttl {
padding: 0 0 0 0px;
}


.cta-box .cta-box_company {
width: 100%;
padding: 0;
display: flex;
flex-direction:column;
height: auto;
align-items:center;
}

.cta-box_company .cta-box_img{
max-width: 100%;
padding: 8px;
}

.cta-box_recommend {
width: 100%;
padding: 8px;
}

.cta-box .cta-box_recommend_ttl {
color: #ff0000;
font-weight: bold;
display: inline-block;
margin-bottom: 10px;
}

.cta-box .cta-box_bottom {
width: 100%;
padding: 16px 8px 8px 8px;
}

.cta-box .cta-box_bottom:before {
position: absolute;
content: '';
top: 8px;
left: 0px;
width: 100%;
border-bottom: dashed 2px #E3EEEF;
}

.cta-box .button-fukidashi_line {
color: #09B24D;
padding: 8px 0;
font-weight: bold;
}

.cta-box .button-fukidashi_line p{
font-size: 16px !important;
position: relative;
width: fit-content;
color: #09B24D;
font-weight: bold;
margin: 0 auto!important;
}

.cta-box .button-fukidashi_line p::before {
content: "＼";
top: 0px;
left: -24px;
position: absolute;
width: 20px;
height: 20px;
font-weight: bold;
}

.cta-box .button-fukidashi_line p::after {
content: "／";
top: 0px;
right: -24px;
position: absolute;
width: 20px;
height: 20px;
font-weight: bold;
}

.cta-box .cta-box_btn_line {
width: 100%;
text-align: center;
display: block;
}

.cta-box a.button-line {
background-color: #06C755;
box-shadow: 0 5px 0 #007B08;
color: #fff;
text-align: center;
text-decoration: none;
border-radius: 60px;
position: relative;
width: 100% !important;
padding: 16px !important;
margin: 0 auto 0 !important;
font-weight: 800;
font-size: 17px;
display: block;
}

.cta-box .cta-box_btn_line span{
margin-left: 24px;
}


.cta-box a.button-line:after {
font-family: 'Material Symbols Rounded';
content: '\e5df';
top: 47%;
transform: translateY(-47%);
right: 10px;
position: absolute;
z-index: 100;
width: 20px;
height: 20px;
font-size: 25px;
color: #fff;
}


/*--------------------------------------------------------
住みやすさ
-------------------------------------------------------*/

.area-sumiyasusa{
width: 100%;
margin: 24px auto;
}


.area-sumiyasusa ul.sumiyasusa li{
background-color: #F6F7F8;
padding: 18px 18px 18px 45px;
position: relative;
}

.area-sumiyasusa ul.sumiyasusa li::before{
content: "";
display: block;
border-radius: 50%;
position: absolute;
transform: translateY(-50%);
background-color: #fff;
border: 4px solid #2B9AAF;
border-radius: 50%;
width: 20px;
height: 20px;
top: 26px;
left: 10px;
z-index: 2;
}

.area-sumiyasusa ul.sumiyasusa li::after{
display: inline-block;
position: absolute;
width: 6px;
height: 100%;
top:0px;
left: 17px;
background-color: #2B9AAF;
content: '';
z-index: 1;
}

.area-sumiyasusa ul.sumiyasusa li:first-child::after{
top:20px;
}
.area-sumiyasusa ul.sumiyasusa li:last-child::after{
height: 20px;
}

.area-sumiyasusa ul.sumiyasusa li:nth-child(odd){
background-color: #EDEFF1;
}

.area-sumiyasusa ul.sumiyasusa li .station a{
font-size: 18px;
font-weight: bold;
text-decoration: none;
color: #2a769f;
}

.area-sumiyasusa ul.sumiyasusa li .yachinsouba{
width: 100%;
background-color: #fff;
margin: 16px 0 8px 0;
display: flex;
flex-wrap: nowrap;
align-content:flex-start;
}

.area-sumiyasusa ul.sumiyasusa li .yachinsouba p.subheading{
background-color:#47B6C9;
color: #fff;
text-align: center;
width: 90px;
padding: 4px 8px!important;
}

.area-sumiyasusa ul.sumiyasusa li .yachinsouba p{
width: calc(100% - 90px);
padding: 4px 16px!important;
margin: 0 auto !important;
}

.area-sumiyasusa ul.sumiyasusa li .info p{
margin-bottom: 8px !important;
}

.area-sumiyasusa ul.sumiyasusa li .info p.infolink{
text-align: right; 
margin: 0 !important;
}

.area-sumiyasusa ul.sumiyasusa li .info p.infolink a{
font-size: 14px;
position: relative;
padding-right: 10px;
text-decoration: none !important;
color: #2a769f;
}

.area-sumiyasusa ul.sumiyasusa li .info p.infolink a::before {
content: "";
transition: all 0.2s ease-in;
position: absolute;
right: 0px;
width: 0;
height: 0;
bottom: 46%;
transform: translate(0, 50%);
border-left: 5px solid #2a769f;
border-top: 5px solid transparent;
border-bottom: 5px solid transparent;
transition: all .3s;
}



/*------------------------------------------------------------
受賞履歴　仮
-------------------------------------------------------------*/

.jusho-kari_area{
width: 100%;
margin-bottom: 40px;
}

.jusho-kari_area ul.jusho-kari {
display: flex;
flex-wrap: wrap; /* 回り込みを有効にする */
list-style: none;
padding: 0;
margin: 0;
gap: 5px; /* 要素間の隙間 */
}

.jusho-kari_area ul.jusho-kari li {
flex: 1 1 calc(100% - 5px); /* 1列に2個配置 */
max-width: calc(50% - 10px); /* 最大幅を指定 */
box-sizing: border-box;
background-color: #fff;
text-align: center;
border: 1px solid #ededed;
border-radius: 5px;
display: flex;
justify-content: center;
align-items: center; /* 中央揃え */
}

.jusho-kari_area ul.jusho-kari li a{
display: block;
padding: 10px;
}

.jusho-kari_area ul.jusho-kari li .card-kari{
width: 100%;
display: flex;
flex-direction:column;
justify-content: center;
text-align: center;
}


.jusho-kari_area ul.jusho-kari li .card-kari .card-kari-img{
width: 100%;
height: 120px;
margin-left: auto;
margin-right: auto;
display: flex;
align-items: center;
justify-content:center;
}

.jusho-kari_area ul.jusho-kari li img{
max-width: 80%;
max-height: 80px;
margin: auto;
display: block;

}

.jusho-kari_area ul.jusho-kari li p{
display: block;
width: 100%;
margin-top: 20px;
font-size: 12px !important;
margin-bottom: 0 !important;
text-align: left;
background-color: #FCFFE4;
}


/*------------------------------------------------------------
監修者
-------------------------------------------------------------*/

/* メインカード */
.supervisor-card {
background-size: 100px;
}

.bar-sub {
width: 100px;
}

.card-inner {
padding: 5px;
}

/* ヘッダーエリア */
.profile-header {
padding: 10px;
gap: 16px;
}


/* 写真部分 */
.photo-wrapper {
position: relative;
flex-shrink: 0;
flex: 0 0 96px;

}

.photo-frame {
width: 80px;
height: 80px;
border: 2px solid #ffffff;
box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1);
z-index: 10;
}

/* テキスト部分 */
.name-block {
text-align: left;
flex: 1;
padding-top: 10px;
display: flex;
flex-direction: column;
flex: 1 1 auto;
}

.name-row {
display: flex;
gap:10px;
margin-bottom: 10px;
flex-direction: row;
align-items: center;
}

.name-text {
font-size: 24px;
font-weight: 900;
color: #0f172a;
margin: 0;
}

.name-en {
font-size: 13px;
text-transform: uppercase;
padding-top: 5px;
}

.title-badge {
display: inline-flex;
align-items: center;
padding: 6px 10px 6px 28px;
background-color: #F8FAFC;
border-radius: 3px;
border: 1px solid #E6EAED;
position: relative;
width: fit-content;
}

.title-text {
font-size: 12px;
font-weight: 500;
color: #575757;
}

.title-text:before{
margin-bottom: 14px;
margin-right: 4px; 
color: #D5363B;
position: absolute;
top: 9px;
left: 4px;
}



/* 紹介文 */

.description-area{
margin-top: 16px;
}

/* ボタンエリア */
.button-area {
margin-top: 16px;
}

.line-button {
width: 100%;
padding: 14px 10px 16px 4px;
font-size: 14px;
margin: 8px auto 0 auto;
}


.line-button::after {
content: "\e315";
font-family: 'Material Icons Round';
font-size: 15px;
margin-bottom: 14px;
margin-right: 0px; 
color: #fff;
position: absolute;
right: 0px;
}


.profile-header{
display: grid;
grid-template-columns: 86px 1fr;
grid-template-rows: 16px auto auto auto; /* 必要な行数だけ確保 */
column-gap: 12px;
align-items: start;
}

.name-block{ display: contents; }

/* 写真を上2行分に跨がせ、name-row と title-badge を写真の右に配置する */
.photo-wrapper{ grid-column: 1; grid-row: 1 / span 2; }

.name-row{ grid-column: 2; grid-row: 1; }
.title-badge{ grid-column: 2; grid-row: 2; }

.description-area{ grid-column: 1 / -1; grid-row: 3; margin-top: 8px; }
.button-area{ grid-column: 1 / -1; grid-row: 4; margin-top: 12px; }

/*------------------------------------------------------------
CTA：LINEで相談ボタン
-------------------------------------------------------------*/

.btn-line{
width: 90%;
line-height: 50px;
font-size: 20px;
box-shadow: 0 5px 0 #1D502C;
}

.btn-line:after{
font-family: 'Material Symbols Rounded';
content: "\e5e1";
font-size: 18px !important;
color: #fff;
font-variation-settings: 'FILL' 1, 'wght' 500,'GRAD' 0,'opsz' 24;
position: absolute;
right: 10px;
top: 0;
bottom: 0;
margin: auto;
height: fit-content;
}

.btn-line .free{
font-size: 16px;
width: 70px;
}


.img-btn-wrap {
width: 100%;
padding: 22px 0;
}

.img-btn-wrap:before {
width: calc(100% - 12px);
height: calc(100% - 12px);
}



.img-btn-wrap .mc-btn-top {
font-size: 15px;
}

.img-btn-wrap .btn-line {
width: 84%;
line-height: 50px;
font-size: 20px;
box-shadow: 0 5px 0 #1D502C;
}

.img-btn-wrap .btn-line .free{
font-size: 16px;
width: 70px;
}
.img-btn-wrap:after {
width: 90px;
top: -100px;
left: -15px;
}

.img-btn-wrap .mc-btn-top{
transform: translateX(26px);
}

.img-btn-wrap .mc-btn-top:before,
.img-btn-wrap .mc-btn-top:after {
display: none;
}


}
