﻿/*--------------------------------------------
 色 ・　文字
----------------------------------------------*/
:root{
    --color1: #008BD6;
    --color2: #008BD6;
    --color3: #E94F6B;
    --color4: #e2f5ff;
	--text: #111111;
	--black: #111111;
	--red: #C12326;
    --base: #ffffff;
    
    --font1: 16px;
    --font-jp: 'M PLUS Rounded 1c', sans-serif;
}
.marker{background: linear-gradient(transparent 60%, #ffe2e9 60%);}
/* --------------------------------------------
タブレット以下のアニメーション
---------------------------------------------*/
@media screen and (max-width: 768px){
    .top_loader .loader_txt span,.scroll_anime span{
    	display: inline-block;
    	opacity: 1;
    	transform: translateY(0px);
    }
    
    .loader_txt span.active,.scroll_anime span.active{
    -webkit-animation: fw 0s ease 0s 1 forwards;
        animation: fw 0s ease 0s 1 forwards;
    }
    @-webkit-keyframes fw {
    	100%{
    		opacity: 1;
    		transform: translateY(0);
    	}
    }
    @keyframes fw {
    	100%{
    		opacity: 1;
    		transform: translateY(0);
    	}
    }
}


/* --------------------------------------------
 バナー
---------------------------------------------*/
.cms_link_box a{
    border-radius: 15px 0 0 15px;
    border: 2px solid ;
    box-sizing: border-box;
}
/* スマホ */
@media screen and (max-width: 667px){
    .cms_link_box a{
        border-radius: 15px 15px 0 0;
        border-bottom: 0px;
    }
    .page-top{
        bottom: 56px;
        right: 2px;
    }
    
    .cms_link .cms_link_box1 a{
        padding: 13.5px 0;
    }
    .cms_link_box1{
        width: calc(100% - 52px);
        margin-right: 52px;
    }
    .cms_link_box2 a,.cms_link_box3 a{
        border-radius: 0;
    }
    #copyright{
        padding-bottom: 120px!important;
    }
}
@media screen and (max-width: 350px){
    .cms_link div a{letter-spacing: -0.03em;}
}
/* --------------------------------------------
 ローディング後にポヨン
---------------------------------------------*/
.poyoyon2{opacity:0;}
.poyoyon2.is-animated{
    opacity:1;
    animation: poyoyon2 1s ease-out 1 forwards;
}

@keyframes poyoyon2 {
    0% {
        opacity: 0;
        transform: scale(1.0, 1.0) translate(-50%, calc(-50% + 20px));
    }
    30% {
        opacity: 0.5;
        transform: scale(1.03, 1.03) translate(-50%, -50%);
    }
    55% {
        opacity: 1;
    }
    
    80% {
        opacity: 1;
        transform: scale(0.99, 0.99) translate(-50%, -50%);
    }
    
    100% {
        opacity: 1;
        transform: scale(1.0, 1.0) translate(-50%, -50%);
    }
}
/* --------------------------------------------
 メインイメージ 
---------------------------------------------*/
#question{
    padding-top: 100vh;
    margin-top: 0;
}

.main_img_wrap{
    background-color: transparent!important;
    height:95vh;
    position: absolute;
    top: 0;
}

.menu .logo{
    background-color: var(--base);
    padding: 15px 10px;
}

.menu{
    top: 0px;
    left: 0px;
    transform: translateY(0%) translateX(0%);
    -webkit- transform: translateY(0%) translateX(0%);
    z-index: 5;
}
.main_img1{
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX( -50%);
    z-index: 1;
    width: 100%;
}
.main_img_img{
    width: 100%;
    height: auto;
}
.catch{
    position: absolute;
    width: min(50%, 800px);
    /*width: 50%;*/
    top: 42%;
    /*right: 50%;*/
    /*transform: translate(0%, -50%);*/
    left: 55%;
    transform: translate(-50%, -50%);
    z-index: 3;
}

/* タブレット */
@media screen and (max-width: 768px){
    #question{
    padding-top: calc(100vw + 30px);
    }
    .main_img_wrap{
        height:80vw;
    }
    .catch{
        width: 70vw;
        top: 35%;
        left: 54%;
    }
}
/* スマホ */
@media screen and (max-width: 667px){
    #question{
    padding-top: calc(120vw + 30px);
    }
    .main_img_wrap{
        height:100vw;
    }
    .catch {
        width: 80vw;
        top: 37%;
    }
}

/*--------------------------------------------
 TOPの箇条書き
----------------------------------------------*/
#question .box_item {position: relative;}
#question .box_item::before{
    content: "";
    background-image: url(./Dup/img/top_dec1.png);
    width: 150px;
    height: 150px;
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: -150px;
    right: 5%;
}
#question .txt{
    width: 48%;
    margin-right: 4%;
}
#question .txt:before{background-color: var(--color4)!important;}
#question .txt:before{top: auto;}
#question .txt .check{width: 40px;}
#question .txt .text{
    width: calc(100% - 60px);
    font-size: max(calc(var(--font1) + 10px), calc(1rem + 10px));
    letter-spacing: 0em;
}

/*イラストの調整*/
@media screen and (max-width: 1300px){
    #question .box_item::before{
        /*top: 0;*/
        left: 50%;
        right: auto;
        transform: translateX(-50%);
    }
    #question .box_item{
        margin-top: 170px;
    }
}
/* タブレット */
@media screen and (max-width: 768px){
    #question .txt{
        justify-content: space-between;
        width: 100%;
        margin: 0 auto 40px;
    }
    #question .txt .text{
        letter-spacing: -0.07em;
        width: calc(100% - 50px);
        font-size: 1.5rem;
    }
    #question .txt .check{width: 35px;padding-right: 0;}
    #contents .box .box_item{
        margin-top: 30px;
    }
}
/* スマートフォン */
@media screen and (max-width: 667px){
    #question .box{width: 96%!important;}
    #question .box .box_item{
        padding: 30px 13px;
    }
    #question .title{
        width: 310px;
        margin: 0 auto;
    }
    
    #question .txt{width: 100%;margin-right: 0;}
    #question .txt .text{
        width: calc(100% - 40px);
        font-size: max(calc(var(--font1) + 4px), calc(1rem + 4px));
    }
    
    #contents .box h3{font-size: 1.5rem;}
    #contents .box .box_item{
        margin: 20px auto 0;
        padding: 20px 12px;
    }
}

/* --------------------------------------------
 TOPコンテンツ
---------------------------------------------*/
#contents .box:nth-child(even) figure{
    margin-left: 54%;
    width: 45%!important;
    margin-top: 100px;
}
#contents .box.con1 .box_item{
    width: 53%!important;
    margin-top: -460px;
}
#contents .box.con2 figure{
    border-radius: 15px;
}

/* タブレット */
@media screen and (max-width: 768px){
    #contents .box.con1 .box_item{
        width: 90%!important;
        margin: 30px auto 0;
    }
    #contents .box:nth-child(even) figure{
        width: 100%!important;
        margin-left: 0%;
        margin-top: 30px;
    }
}
/*--------------------------------------------
 svg
----------------------------------------------*/
.mask {
  mask-image: url("./Dup/img/ie.svg");
  mask-repeat: no-repeat;
  mask-position: 50% 50%;
  mask-size: 100%;

    -webkit-mask-image: url("./Dup/img/ie.svg");
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: 50% 50%;
  -webkit-mask-size: 96%;
}

/*--------------------------------------------
 初めて売却を
----------------------------------------------*/
#cms_2-g .cate_img1{
    max-height: 400px;
}

/*--------------------------------------------
 下層ページ強み
----------------------------------------------*/
#cms_2-g.tuyomi .cate{counter-reset: box;}
#cms_2-g.tuyomi .cate_box{counter-increment: box;}
#cms_2-g.tuyomi .box_title1{position:relative;}
#cms_2-g.tuyomi .box_title1::before {
	content: "ポイント0"counter(box);
    position: absolute;
    top: -45px;
    font-size: 23px;
    letter-spacing: -0.03em;
    background-color: var(--color1);
    color: var(--base);
    padding: 0px 20px;
    border-radius: 70px;
	
}
/*スマホ*/
@media screen and (max-width: 667px){
    #cms_2-g.tuyomi .box_title1::before {
        top: -40px;
        border-radius: 0 70px 70px 0;
    }
}
/*--------------------------------------------
 TOP強み
----------------------------------------------*/
.topcms_about_type1 {counter-reset: box 0;padding-top: 35px;}
.topcms_about_type1 .cate_box {
	width: 31%!important;
	padding: 55px 25px 25px;
	background-color: var(--base);
	border-radius: 10px;
	box-sizing: border-box;
}
.topcms_about_type1 .number {
	top: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: 90px;
}
.topcms_about_type1 .number::before {
	counter-increment: box 1;
	content: "0"counter(box);
	font-size: 67px;
	line-height: 1;
	text-align: center;
	color: var(--color3);
	display: inline-block;
	position: absolute;
	right: 0;
	left: 0;
	top: -42px;
	margin: auto;
	z-index: 0;
}
.topcms_about_type1 .number::after {
	content: "";
	position: absolute;
	display: block;
	width: 73%;
	height: 2px;
	background: var(--color1);
	left: 0;
	right: 0;
	margin: auto;
	top: 22px;
}
.topcms_about_type1 .cate_box .box_title1{
    font-size: 1.5rem;
    line-height: 1.6;
    z-index: 1;
    color: var(--color1);
}

/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
.topcms_about_type1 .cate_box {
	margin: 0 auto 80px;
	width: 80%!important;
}
.topcms_about_type1 .cate_box:last-of-type {
	margin-bottom: 0;
}
}
/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
    .topcms_about_type1 .cate_box {
    	width: 90%!important;
    	padding: 50px 0px 25px;
    }
    .topcms_about_type1 .number::before{
    	font-size: 59px;
    	top: -34px;
    }
    .topcms_about_type1 .number::after{
    	width: 72%;
    }
    .topcms_about_type1 .cate_box .box_title1{
        letter-spacing: 0em;
    }
}

/*--------------------------------------------
 QA
----------------------------------------------*/
.qa_type3 .con_no{
	left: 15px;
	top: 5px
}
.qa_type3 .cate_box .box_title1, .qa_type3 .cate_box .box_txt1{
        font-family: "Noto Sans JP","游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	min-height: 1.5em
}
.qa_type3 .box_q{
	background-image: url(./Dup/img/icon_q1.png);
	background-repeat: no-repeat;
	background-position: top -2px left;
	background-size: 70px
}
.qa_type3 .cate_box:nth-child(odd) .box_q{
    background-image: url(./Dup/img/icon_q2.png);
}
.qa_type3 .box_a{
	background-image: url(./Dup/img/icon_a.png);
	background-repeat: no-repeat;
	background-position: top -2px right;
	background-size: 70px
}
.qa_type3 .box_q, .qa_type3 .box_a{
	padding: 0 90px
}
.qa_type3 .box_q .box_title1::before, .qa_type3 .box_a .box_txt1::before{
    border: solid transparent;
    content: '';
    height: 0;
    width: 0;
    pointer-events: none;
    position: absolute;
    border-color: rgba(0, 0, 0, 0);
}
.qa_type3 .box_q .box_title1::before{
    border-top-width: 7px;
    border-bottom-width: 7px;
    border-left-width: 10px;
    border-right-width: 15px;
    margin-top: -10px;
    border-right-color: var(--color1);
    right: 100%;
    top: 34px;
}
.qa_type3 .box_a .box_txt1::before{
    border-top-width: 7px;
    border-bottom-width: 7px;
    border-left-width: 15px;
    border-right-width: 10px;
    margin-top: -10px;
    border-left-color:  var(--color4);
    left: 100%;
    top: 35px;
}
/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
.qa_type3 .box_q{
	padding-right: 0
}
.qa_type3 .box_a{
	padding-left: 0
}
.qa_type3 .con_no{
    top: 13px;
}
}



/*--------------------------------------------
 TOPのイントロダクション
----------------------------------------------*/
#catch .box{
    border-radius: 10px;
    margin:  0 8% 0 12%;;
    width: 80%!important;
}
#catch .box .title{
    background-color: transparent;
    color: var(--color1);
    border-bottom: 2px solid;
    font-weight: bold;
}

/* タブレット */
@media screen and (max-width: 768px){
    #catch .box{margin: 0 auto;}
}

/* スマートフォン */
@media screen and (max-width: 667px){
    #catch .box{width: 90%!important;}
    #catch .box .title{
        font-size: 1.4rem;
        width: 96%;
        letter-spacing: -0.05em;
        
    }
}

/*--------------------------------------------
 おしらせTOP
----------------------------------------------*/
.topcms_news_type4 .cate_box:hover{
    transform: translate(0px, -10px);
}
.topcms_news_type4 .cate_box{
    transition: all 0.5s;
	width: 30.33333%!important;
	margin-right: 1.5%;
	margin-left: 1.5%;
	border-radius: 15px;
	background-color: #fff;
	padding: 0;
	box-sizing:border-box;
}
.topcms_news_type4 .cate_box .box_img1{
    border-radius: 15px;

}
.topcms_news_type4 .txt_height{
	height: 3em
}
.topcms_news_type4 .box_title1:empty{
	display: block!important;
}
/* タブレット */
@media screen and (max-width: 768px){
}
/* スマートフォン */
@media screen and (max-width: 667px){
.topcms_news_type4 .cate_box {
    width: 100%!important;
    margin-bottom: 15px;
}
}



/*--------------------------------------------
 色 ・　文字・全体
----------------------------------------------*/
h1, h2, h3, h4, h5, h6{line-height: 1.5;}
html,body,.font_10,.font_11,.font_12,.font_13,.font_14,.font_15{font-size: var(--font1);}
.font_2up{font-size: max(calc(var(--font1) + 4px), calc(1rem  + 4px));}
.font_4up{font-size: max(calc(var(--font1) + 8px), calc(1rem  + 8px));}
.font_6up{font-size: max(calc(var(--font1) + 16px), calc(1rem  + 16px));}
.font_2dw,.font_2dw_tb{font-size: max(calc(var(--font1) - 0px), calc(1rem  - 2px));}
.font_4dw,.font_4dw_tb{font-size: max(calc(var(--font1) - 0px), calc(1rem  - 4px));}
.font_6dw,.font_6dw_tb{font-size: max(calc(var(--font1) - 0px), calc(1rem  - 6px));}
#page_title h2, #contents .box h3,#cms_2-g.tuyomi .box_title1{font-size: max(calc(var(--font1) + 12px), calc(1rem  + 12px));}


.linkStyle{
	color: var(--color1);
	text-decoration: underline;
	transition: all 0.5s;
}
.linkStyle:hover{
	opacity: 0.7;
	text-decoration: none;
}

.top_loader .logo{max-width: 400px;}

header.clone-nav{
    background-color: var(--base);
}
.header ul li{
    position:relative;
    transition: all 0.3s;
    border-bottom: 1px solid transparent;
}
.header ul li:hover{
    transform: translateY(-5px);
    border-bottom: 1px solid var(--color1);
}
.header ul li a{
    color: var(--color1);
}
.header ul li a:hover{
    color: var(--color1);
}

.cms_link{
    top: 50%;
    transform: translateY(-50%);
}

.top_cms_box.cms1 .top_cms_box_wrap{}

#contents .box h3:first-letter{
    font-size: 3rem;
    color: var(--color1);
}

#contents .box .box_item{
    border-radius: 15px;
}
#contents .box .box_item:before{
    display: none;
}

#page_title{
    height: 210px;
    background-color: var(--color4);
    background-image: none;
    /*background-repeat: repeat;*/
    /*background-size: 500px;*/
}
#page_title:before {
    background: -webkit-repeating-linear-gradient(-45deg,transparent 0,transparent 10px,#fff 10px,#fff 20px);
    background: -o-repeating-linear-gradient(-45deg,transparent 0,transparent 10px,#fff 10px,#fff 20px);
    background: repeating-linear-gradient(-45deg,transparent 0,transparent 6px,#fff 6px,#fff 8px);
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
}
#page_title .title{
    border-radius: 15px;
}

.cate_list li a{
    background-color: var(--color1);
    color: #fff;
    border-radius: 5px;
}
.cate_list li a:hover{
    background-color: var(--color3);
}

.box_title1,.cate_title{
    font-family: var(--font-jp);
    line-height: 1.7;
    letter-spacing: 0.07em;
}
#footer .box a{
    border-radius: 5px;
}
#footer .more_txt1{
    color: var(--base);
}

#footer .f_link{
    background-color: var(--color4);
}
#footer .f_logo{
    background-color: var(--color4);
}
footer .sns_link li a{
    border-color: var(--color4);
}

/* タブレット */
@media screen and (max-width: 768px){
    .button_container span{
        background-color: var(--color1);
    }
    #question .title span{letter-spacing: 0em;}
    #page_title{height: 170px;}
}

/* スマホ */
@media screen and (max-width: 667px){
    body, .txt_color_nomal, .hvr_txt_color_nomal:hover{
        letter-spacing: 0.05em;
        line-height: 1.7;
    }
    #page_title h2, #contents .box h3, #cms_2-g.tuyomi .box_title1{
            font-size: max(calc(var(--font1) + 6px), calc(1rem + 6px));
    }
    
    .overlay ul{width: 77%;}
    
    
    .top_loader .logo{width: 70%!important;}
    .cms_link{
        top: auto;
        bottom: 0;
        transform: translateY(0%);
    }
    #contents .box h3:first-letter{
    font-size: 2rem;
    }
    .more_box{
        margin: 20px auto;
    }
    #page_title{
        height: 150px;
    }
    #page_title .title{
        width: 85%!important;
        padding: 15px 0;
    }
    #page_title h2{
        line-height: 1.6;
        letter-spacing: 0em;
    }
    
    
    #footer .more_txt1{
        line-height: 3;
    }
    #footer .more_box{
        margin: auto;
    }
    .page8 #tel_contact h3{
        font-size: max(calc(var(--font1) + 4px), calc(1rem + 4px));
        letter-spacing: 0em;
    }
    
    
    .page10 .more_box{
        margin: 0;
    }
    .page10 .more_box .more_txt1{
        margin: 0 auto;
        font-size: 1.1rem;
        letter-spacing: 0em;
    }
    .page10 .more_box:hover .more_txt1{
        margin: 0 auto;
    }
    .page10 .more_box:hover .hover{
        display: none;
    }
    .page10 .more_box:hover{
        background-color: var(--color3);
    }
    .page10 .content_wrap .more{
        margin-bottom: 20px;
    }
}


/* color */
body, .txt_color_nomal, .hvr_txt_color_nomal:hover{color: var(--text);}
.linkStyle{transition: 0.5s;color: var(--text)}
.linkStyle:hover{opacity: 0.7}

.txt_white, .hvr_txt_white:hover{color: white;}
.txt_red, .hvr_txt_red:hover{color: var(--red);}
.txt_color1, .hvr_txt_color1:hover{color: var(--color1)} /* メインカラー */
.txt_color2, .hvr_txt_color2:hover{color: var(--color2)} /* サブカラー */
.txt_color3, .hvr_txt_color3:hover{color: var(--color3)} /* アクセントカラー1 */
.txt_color4, .hvr_txt_color4:hover{color: var(--color4)} /* アクセントカラー2 */

/* background-color */
.bg_white, .hvr_bg_white:hover{background-color: white} /* 白背景 */
.bg_black, .hvr_bg_black:hover{background-color: var(--black)} /* 黒背景 */
.bg_color1, .hvr_bg_color1:hover{background-color: var(--color1)} /* メインカラー */
.bg_color2, .hvr_bg_color2:hover{background-color: var(--color2)} /* サブカラー */
.bg_color3, .hvr_bg_color3:hover{background-color: var(--color3)} /* アクセントカラー1 */
.bg_color4, .hvr_bg_color4:hover{background-color: var(--color4)} /* アクセントカラー2 */
.bg_color_clear, .hvr_bg_color_clear:hover{background-color: transparent!important}


/* border-color ※!important */
.border_white, .hvr_border_white:hover{border-color: white}
.border_black, .hvr_border_black:hover{border-color: var(--black)}
.border_color1, .hvr_border_color1:hover{border-color: var(--color1)}
.border_color2, .hvr_border_color2:hover{border-color: var(--color2)}
.border_color3, .hvr_border_color3:hover{border-color: var(--color3)}
.border_color4, .hvr_border_color4:hover{border-color: var(--color4)}

.d_block_m{display: none;}
@media screen and (max-width: 340px){
    .d_block_m{display:block;}
}

/*--------------------------------------------
 問い合わせフォーム
----------------------------------------------*/
#mail_CONTACT{
    margin-bottom: 80px;
}

.radio_wrap .radio-input {
    display: none;
}
.radio_wrap .radio-input + label {
    padding-left: 23px;
    position: relative;
    margin-right: 20px;
    cursor: pointer;
}
.radio_wrap .radio-input + label::before {
    content: "";
    display: block;
    position: absolute;
    top: 1px;
    left: 0;
    width: 15px;
    height: 15px;
    border: 1px solid #9e9e9e;
    border-radius: 50%;
}
.radio_wrap .radio-input:checked + label::after {
    content: "";
    display: block;
    position: absolute;
    top: 4px;
    left: 3px;
    width: 11px;
    height: 11px;
    background: #4690a1;
    border-radius: 50%;
}
#mail_CONTACT::placeholder {
  color: #ccc;
}
/* 旧Edge対応 */
#mail_CONTACT::-ms-input-placeholder {
  color: #ccc;
}
/* IE対応 */
#mail_CONTACT:-ms-input-placeholder {
  color: #ccc;
}
/* スマホ */
@media screen and (max-width: 667px){
    #mail_CONTACT{
        margin-bottom: 40px;
    }

}
@media screen and (max-width: 370px){
    #mail_CONTACT .title{
        letter-spacing: -0.03em;
        font-size: 28px;
    }
}